[permissions] Adapt FE to non-readable fields (#13440)

Fixes https://github.com/twentyhq/core-team-issues/issues/1261 and
https://github.com/twentyhq/core-team-issues/issues/1153

In this PR we
- remove fields user do not have read access on from queries (findMany,
findDuplicates, returned fields from create or update etc.)
- remove fields user do not have read access on from views 

This is behind a feature flag
This commit is contained in:
Marie
2025-07-28 18:24:08 +02:00
committed by GitHub
parent 4131be2a68
commit 16ba72edab
52 changed files with 394 additions and 95 deletions
@@ -23,6 +23,7 @@ type MapFieldMetadataToGraphQLQueryArgs = {
relationRecordGqlFields?: RecordGqlFields;
computeReferences?: boolean;
objectPermissionsByObjectMetadataId: Record<string, ObjectPermission>;
isFieldsPermissionsEnabled?: boolean;
};
// TODO: change ObjectMetadataItems mock before refactoring with relation computed field
export const mapFieldMetadataToGraphQLQuery = ({
@@ -32,6 +33,7 @@ export const mapFieldMetadataToGraphQLQuery = ({
relationRecordGqlFields,
computeReferences = false,
objectPermissionsByObjectMetadataId,
isFieldsPermissionsEnabled,
}: MapFieldMetadataToGraphQLQueryArgs): string => {
const fieldType = fieldMetadata.type;
@@ -81,6 +83,7 @@ ${mapObjectMetadataToGraphQLQuery({
computeReferences: computeReferences,
isRootLevel: false,
objectPermissionsByObjectMetadataId,
isFieldsPermissionsEnabled,
})}`;
}
@@ -117,6 +120,7 @@ ${mapObjectMetadataToGraphQLQuery({
computeReferences,
isRootLevel: false,
objectPermissionsByObjectMetadataId,
isFieldsPermissionsEnabled,
})}
}
}`;