[OBJECT_CACHE_FLUSH_REQUIRED_WHEN_RELEASED] Remove FlatObjectMetadata custom fieldMetadataIds fk aggregator property (#17438)
# Introduction Currently refactoring `flatEntity` typing, encountering some tsc errors due to this fk aggregator custom override It shall now follow generic pattern leading to be named `fieldIds` Needs to flush object cache when released
This commit is contained in:
+1
-1
@@ -61,7 +61,7 @@ const findStandardFlatFieldMetadatawOrThrow = ({
|
||||
}) => {
|
||||
const objectFlatFieldMetadata = findManyFlatEntityByIdInFlatEntityMapsOrThrow(
|
||||
{
|
||||
flatEntityIds: flatObjectMetadata.fieldMetadataIds,
|
||||
flatEntityIds: flatObjectMetadata.fieldIds,
|
||||
flatEntityMaps: flatFieldMetadataMaps,
|
||||
},
|
||||
);
|
||||
|
||||
+1
-1
@@ -78,7 +78,7 @@ export class RenameIndexNameCommand extends ActiveOrSuspendedWorkspacesMigration
|
||||
});
|
||||
|
||||
const flatFieldMetadatas = findManyFlatEntityByIdInFlatEntityMapsOrThrow({
|
||||
flatEntityIds: flatObjectMetadata.fieldMetadataIds,
|
||||
flatEntityIds: flatObjectMetadata.fieldIds,
|
||||
flatEntityMaps: flatFieldMetadataMaps,
|
||||
});
|
||||
|
||||
|
||||
+1
-1
@@ -112,7 +112,7 @@ export class BackfillUpdatedByFieldCommand extends ActiveOrSuspendedWorkspacesMi
|
||||
}
|
||||
|
||||
const flatFieldMetadatas = findManyFlatEntityByIdInFlatEntityMapsOrThrow({
|
||||
flatEntityIds: flatObjectMetadata.fieldMetadataIds,
|
||||
flatEntityIds: flatObjectMetadata.fieldIds,
|
||||
flatEntityMaps: flatFieldMetadataMaps,
|
||||
});
|
||||
|
||||
|
||||
+1
-1
@@ -96,7 +96,7 @@ export class BackfillOpportunityOwnerFieldCommand extends ActiveOrSuspendedWorks
|
||||
}
|
||||
|
||||
const flatFieldMetadatas = findManyFlatEntityByIdInFlatEntityMapsOrThrow({
|
||||
flatEntityIds: opportunityObjectMetadata.fieldMetadataIds,
|
||||
flatEntityIds: opportunityObjectMetadata.fieldIds,
|
||||
flatEntityMaps: flatFieldMetadataMaps,
|
||||
});
|
||||
|
||||
|
||||
+1
-1
@@ -81,7 +81,7 @@ export class UpdateTaskOnDeleteActionCommand extends ActiveOrSuspendedWorkspaces
|
||||
}
|
||||
|
||||
const taskTargetFields = findManyFlatEntityByIdInFlatEntityMapsOrThrow({
|
||||
flatEntityIds: taskTargetObjectMetadata.fieldMetadataIds,
|
||||
flatEntityIds: taskTargetObjectMetadata.fieldIds,
|
||||
flatEntityMaps: flatFieldMetadataMaps,
|
||||
});
|
||||
|
||||
|
||||
+1
-1
@@ -89,7 +89,7 @@ export class CommonSelectedFieldsHandler {
|
||||
| { [key: string]: boolean | { [key: string]: boolean } };
|
||||
} = {};
|
||||
|
||||
for (const fieldId of flatObjectMetadata.fieldMetadataIds) {
|
||||
for (const fieldId of flatObjectMetadata.fieldIds) {
|
||||
const field = findFlatEntityByIdInFlatEntityMapsOrThrow({
|
||||
flatEntityMaps: flatFieldMetadataMaps,
|
||||
flatEntityId: fieldId,
|
||||
|
||||
+1
-1
@@ -85,7 +85,7 @@ describe('getConflictingFields', () => {
|
||||
createdAt: new Date(),
|
||||
updatedAt: new Date(),
|
||||
universalIdentifier: objectMetadataId,
|
||||
fieldMetadataIds: fields.map((f) => f.id),
|
||||
fieldIds: fields.map((f) => f.id),
|
||||
indexMetadataIds: [],
|
||||
viewIds: [],
|
||||
applicationId: null,
|
||||
|
||||
+1
-1
@@ -154,7 +154,7 @@ export const mockPersonFlatObjectMetadata = (
|
||||
workspaceId,
|
||||
universalIdentifier: objectMetadataId,
|
||||
indexMetadataIds: [],
|
||||
fieldMetadataIds: mockFieldMetadatas.map((field) => field.id),
|
||||
fieldIds: mockFieldMetadatas.map((field) => field.id),
|
||||
viewIds: [],
|
||||
applicationId: 'test-application-id',
|
||||
isLabelSyncedWithName: false,
|
||||
|
||||
+1
-1
@@ -70,7 +70,7 @@ export class GraphqlQueryOrderGroupByParser {
|
||||
}): Record<string, OrderByClause>[] {
|
||||
const parsedOrderBy: Record<string, OrderByClause>[] = [];
|
||||
|
||||
const fields = this.flatObjectMetadata.fieldMetadataIds
|
||||
const fields = this.flatObjectMetadata.fieldIds
|
||||
.map((id) => this.flatFieldMetadataMaps.byId[id])
|
||||
.filter(isDefined);
|
||||
|
||||
|
||||
+1
-1
@@ -17,7 +17,7 @@ export class GraphqlQuerySelectedFieldsAggregateParser {
|
||||
flatFieldMetadataMaps: FlatEntityMaps<FlatFieldMetadata>,
|
||||
accumulator: GraphqlQuerySelectedFieldsResult,
|
||||
): void {
|
||||
const fields = flatObjectMetadata.fieldMetadataIds
|
||||
const fields = flatObjectMetadata.fieldIds
|
||||
.map((id) => flatFieldMetadataMaps.byId[id])
|
||||
.filter(isDefined);
|
||||
|
||||
|
||||
+1
-1
@@ -94,7 +94,7 @@ export class GraphqlQuerySelectedFieldsParser {
|
||||
accumulator: GraphqlQuerySelectedFieldsResult,
|
||||
isFromOneToManyRelation?: boolean,
|
||||
): void {
|
||||
for (const fieldMetadataId of flatObjectMetadata.fieldMetadataIds) {
|
||||
for (const fieldMetadataId of flatObjectMetadata.fieldIds) {
|
||||
const fieldMetadata = findFlatEntityByIdInFlatEntityMapsOrThrow({
|
||||
flatEntityId: fieldMetadataId,
|
||||
flatEntityMaps: this.flatFieldMetadataMaps,
|
||||
|
||||
+1
-1
@@ -173,7 +173,7 @@ export class ObjectRecordsToGraphqlConnectionHelper {
|
||||
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
||||
const processedObjectRecord: Record<string, any> = {};
|
||||
|
||||
for (const fieldId of flatObjectMetadata.fieldMetadataIds) {
|
||||
for (const fieldId of flatObjectMetadata.fieldIds) {
|
||||
const fieldMetadata = findFlatEntityByIdInFlatEntityMapsOrThrow({
|
||||
flatEntityId: fieldId,
|
||||
flatEntityMaps: this.flatFieldMetadataMaps,
|
||||
|
||||
+2
-2
@@ -106,7 +106,7 @@ describe('buildColumnsToSelect', () => {
|
||||
createdAt: new Date('2025-07-10T10:58:54.536Z'),
|
||||
updatedAt: new Date('2025-07-10T10:58:54.536Z'),
|
||||
universalIdentifier: personObjectId,
|
||||
fieldMetadataIds: fieldIds,
|
||||
fieldIds: fieldIds,
|
||||
indexMetadataIds: [],
|
||||
viewIds: [],
|
||||
applicationId: null,
|
||||
@@ -162,7 +162,7 @@ describe('buildColumnsToSelect', () => {
|
||||
id: companyObjectId,
|
||||
nameSingular: 'company',
|
||||
namePlural: 'companies',
|
||||
fieldMetadataIds: [],
|
||||
fieldIds: [],
|
||||
indexMetadataIds: [],
|
||||
viewIds: [],
|
||||
} as unknown as FlatObjectMetadata;
|
||||
|
||||
+1
-1
@@ -50,7 +50,7 @@ const getRequiredRelationColumns = (
|
||||
): string[] => {
|
||||
const requiredColumns: string[] = [];
|
||||
|
||||
for (const fieldId of flatObjectMetadata.fieldMetadataIds) {
|
||||
for (const fieldId of flatObjectMetadata.fieldIds) {
|
||||
const fieldMetadata = findFlatEntityByIdInFlatEntityMapsOrThrow({
|
||||
flatEntityId: fieldId,
|
||||
flatEntityMaps: flatFieldMetadataMaps,
|
||||
|
||||
+1
-1
@@ -8,7 +8,7 @@ export const getFlatFieldsFromFlatObjectMetadata = (
|
||||
flatObjectMetadata: FlatObjectMetadata,
|
||||
flatFieldMetadataMaps: FlatEntityMaps<FlatFieldMetadata>,
|
||||
): FlatFieldMetadata[] => {
|
||||
return flatObjectMetadata.fieldMetadataIds
|
||||
return flatObjectMetadata.fieldIds
|
||||
.map((fieldId) => flatFieldMetadataMaps.byId[fieldId])
|
||||
.filter(isDefined);
|
||||
};
|
||||
|
||||
+1
-1
@@ -72,7 +72,7 @@ export class RestToCommonSelectedFieldsHandler {
|
||||
|
||||
let relationsSelectFields: SelectFields = {};
|
||||
|
||||
for (const fieldId of flatObjectMetadata.fieldMetadataIds) {
|
||||
for (const fieldId of flatObjectMetadata.fieldIds) {
|
||||
const flatField = findFlatEntityByIdInFlatEntityMapsOrThrow({
|
||||
flatEntityMaps: flatFieldMetadataMaps,
|
||||
flatEntityId: fieldId,
|
||||
|
||||
+1
-1
@@ -67,7 +67,7 @@ describe('getAllSelectableFields', () => {
|
||||
createdAt: new Date(),
|
||||
updatedAt: new Date(),
|
||||
universalIdentifier: 'object-id',
|
||||
fieldMetadataIds: fieldIds,
|
||||
fieldIds: fieldIds,
|
||||
indexMetadataIds: [],
|
||||
viewIds: [],
|
||||
applicationId: null,
|
||||
|
||||
+1
-1
@@ -29,7 +29,7 @@ export const getAllSelectableFields = ({
|
||||
}): SelectableFieldsStructured => {
|
||||
const result: SelectableFieldsStructured = {};
|
||||
|
||||
for (const fieldId of flatObjectMetadata.fieldMetadataIds) {
|
||||
for (const fieldId of flatObjectMetadata.fieldIds) {
|
||||
const flatField = findFlatEntityByIdInFlatEntityMapsOrThrow({
|
||||
flatEntityMaps: flatFieldMetadataMaps,
|
||||
flatEntityId: fieldId,
|
||||
|
||||
+1
-1
@@ -101,7 +101,7 @@ describe('computeCursorArgFilter', () => {
|
||||
createdAt: new Date(),
|
||||
updatedAt: new Date(),
|
||||
universalIdentifier: objectMetadataId,
|
||||
fieldMetadataIds: ['name-id', 'age-id', 'fullname-id'],
|
||||
fieldIds: ['name-id', 'age-id', 'fullname-id'],
|
||||
indexMetadataIds: [],
|
||||
viewIds: [],
|
||||
applicationId: null,
|
||||
|
||||
@@ -28,7 +28,7 @@ export const mockFlatObjectMetadatas: FlatObjectMetadata[] = [
|
||||
labelIdentifierFieldMetadataId: personNameFieldId,
|
||||
imageIdentifierFieldMetadataId: null,
|
||||
workspaceId,
|
||||
fieldMetadataIds: [personNameFieldId],
|
||||
fieldIds: [personNameFieldId],
|
||||
universalIdentifier: 'person-universal-id',
|
||||
applicationId: workspaceId,
|
||||
}),
|
||||
@@ -45,7 +45,7 @@ export const mockFlatObjectMetadatas: FlatObjectMetadata[] = [
|
||||
labelIdentifierFieldMetadataId: companyNameFieldId,
|
||||
imageIdentifierFieldMetadataId: null,
|
||||
workspaceId,
|
||||
fieldMetadataIds: [companyNameFieldId, companyDomainNameFieldId],
|
||||
fieldIds: [companyNameFieldId, companyDomainNameFieldId],
|
||||
universalIdentifier: 'company-universal-id',
|
||||
applicationId: workspaceId,
|
||||
}),
|
||||
@@ -62,7 +62,7 @@ export const mockFlatObjectMetadatas: FlatObjectMetadata[] = [
|
||||
labelIdentifierFieldMetadataId: customObjectNameFieldId,
|
||||
imageIdentifierFieldMetadataId: customObjectImageFieldId,
|
||||
workspaceId,
|
||||
fieldMetadataIds: [customObjectNameFieldId, customObjectImageFieldId],
|
||||
fieldIds: [customObjectNameFieldId, customObjectImageFieldId],
|
||||
universalIdentifier: 'custom-object-universal-id',
|
||||
applicationId: workspaceId,
|
||||
}),
|
||||
@@ -80,7 +80,7 @@ export const mockFlatObjectMetadatas: FlatObjectMetadata[] = [
|
||||
labelIdentifierFieldMetadataId: null,
|
||||
imageIdentifierFieldMetadataId: null,
|
||||
workspaceId,
|
||||
fieldMetadataIds: [],
|
||||
fieldIds: [],
|
||||
universalIdentifier: 'non-searchable-object-universal-id',
|
||||
applicationId: workspaceId,
|
||||
}),
|
||||
|
||||
+4
-4
@@ -36,7 +36,7 @@ const personFlatObject = getFlatObjectMetadataMock({
|
||||
imageIdentifierFieldMetadataId: null,
|
||||
workspaceId,
|
||||
universalIdentifier: '20202020-8dec-43d5-b2ff-6eef05095bec',
|
||||
fieldMetadataIds: [personNameFieldId],
|
||||
fieldIds: [personNameFieldId],
|
||||
indexMetadataIds: [],
|
||||
viewIds: [],
|
||||
});
|
||||
@@ -61,7 +61,7 @@ const companyFlatObject = getFlatObjectMetadataMock({
|
||||
imageIdentifierFieldMetadataId: null,
|
||||
workspaceId,
|
||||
universalIdentifier: '20202020-c03c-45d6-a4b0-04afe1357c5c',
|
||||
fieldMetadataIds: [companyNameFieldId, companyDomainNameFieldId],
|
||||
fieldIds: [companyNameFieldId, companyDomainNameFieldId],
|
||||
indexMetadataIds: [],
|
||||
viewIds: [],
|
||||
});
|
||||
@@ -86,7 +86,7 @@ const customObjectFlatObject = getFlatObjectMetadataMock({
|
||||
imageIdentifierFieldMetadataId: customObjectImageFieldId,
|
||||
workspaceId,
|
||||
universalIdentifier: '20202020-3d75-4aab-bacd-ee176c5f63ca',
|
||||
fieldMetadataIds: [customObjectNameFieldId, customObjectImageFieldId],
|
||||
fieldIds: [customObjectNameFieldId, customObjectImageFieldId],
|
||||
indexMetadataIds: [],
|
||||
viewIds: [],
|
||||
});
|
||||
@@ -111,7 +111,7 @@ const nonSearchableFlatObject = getFlatObjectMetadataMock({
|
||||
imageIdentifierFieldMetadataId: null,
|
||||
workspaceId,
|
||||
universalIdentifier: '20202020-540c-4397-b872-2a90ea2fb809',
|
||||
fieldMetadataIds: [],
|
||||
fieldIds: [],
|
||||
indexMetadataIds: [],
|
||||
viewIds: [],
|
||||
});
|
||||
|
||||
+1
-1
@@ -71,7 +71,7 @@ describe('ActorFromAuthContextService', () => {
|
||||
'person-id': {
|
||||
id: 'person-id',
|
||||
nameSingular: 'person',
|
||||
fieldMetadataIds: ['createdBy-id'],
|
||||
fieldIds: ['createdBy-id'],
|
||||
},
|
||||
},
|
||||
},
|
||||
|
||||
+1
-1
@@ -20,7 +20,7 @@ const mockObjectMetadata = {
|
||||
isAuditLogged: true,
|
||||
isSearchable: true,
|
||||
indexMetadataIds: [],
|
||||
fieldMetadataIds: [],
|
||||
fieldIds: [],
|
||||
viewIds: [],
|
||||
applicationId: 'test-application-id',
|
||||
isLabelSyncedWithName: false,
|
||||
|
||||
+3
-3
@@ -13,7 +13,7 @@ describe('computeSchemaComponents', () => {
|
||||
const flatObjectMetadata: FlatObjectMetadata = {
|
||||
...objectMetadataItemMock,
|
||||
universalIdentifier: 'objectName',
|
||||
fieldMetadataIds: objectMetadataItemMock.fields.map((f) => f.id),
|
||||
fieldIds: objectMetadataItemMock.fields.map((f) => f.id),
|
||||
} as any;
|
||||
|
||||
const flatFieldMetadataMaps = {
|
||||
@@ -29,7 +29,7 @@ describe('computeSchemaComponents', () => {
|
||||
nameSingular: 'relationTargetObject',
|
||||
namePlural: 'relationTargetObjects',
|
||||
universalIdentifier: 'relationTargetObject',
|
||||
fieldMetadataIds: [],
|
||||
fieldIds: [],
|
||||
} as any;
|
||||
|
||||
const flatObjectMetadataMaps = {
|
||||
@@ -858,7 +858,7 @@ describe('computeSchemaComponents', () => {
|
||||
nameSingular: 'objectName',
|
||||
namePlural: 'objectsName',
|
||||
universalIdentifier: 'objectName',
|
||||
fieldMetadataIds: [field.id],
|
||||
fieldIds: [field.id],
|
||||
} as any;
|
||||
|
||||
const flatFieldMetadataMaps = {
|
||||
|
||||
@@ -236,7 +236,7 @@ export const computeSchemaComponents = (
|
||||
const flatFieldMetadatas =
|
||||
findManyFlatEntityByIdInFlatEntityMapsOrThrow<FlatFieldMetadata>({
|
||||
flatEntityMaps: flatFieldMetadataMaps,
|
||||
flatEntityIds: item.fieldMetadataIds,
|
||||
flatEntityIds: item.fieldIds,
|
||||
});
|
||||
|
||||
schemas[capitalize(item.nameSingular)] = computeSchemaComponent({
|
||||
|
||||
+1
-1
@@ -19,7 +19,7 @@ const mockObjectMetadata: FlatObjectMetadata = {
|
||||
createdAt: new Date(),
|
||||
updatedAt: new Date(),
|
||||
universalIdentifier: 'id',
|
||||
fieldMetadataIds: [],
|
||||
fieldIds: [],
|
||||
indexMetadataIds: [],
|
||||
viewIds: [],
|
||||
applicationId: null,
|
||||
|
||||
@@ -370,7 +370,7 @@ export class DataloaderService {
|
||||
});
|
||||
const objectFlatFieldMetadatas =
|
||||
findManyFlatEntityByIdInFlatEntityMapsOrThrow({
|
||||
flatEntityIds: flatObjectMetadata.fieldMetadataIds,
|
||||
flatEntityIds: flatObjectMetadata.fieldIds,
|
||||
flatEntityMaps: flatFieldMetadataMaps,
|
||||
});
|
||||
|
||||
|
||||
+1
-1
@@ -113,7 +113,7 @@ export const ALL_METADATA_RELATIONS = {
|
||||
manyToOne: {
|
||||
object: {
|
||||
metadataName: 'objectMetadata',
|
||||
flatEntityForeignKeyAggregator: 'fieldMetadataIds',
|
||||
flatEntityForeignKeyAggregator: 'fieldIds',
|
||||
foreignKey: 'objectMetadataId',
|
||||
},
|
||||
workspace: null,
|
||||
|
||||
+1
-1
@@ -20,7 +20,7 @@ describe('addFlatEntityToFlatEntityAndRelatedEntityMapsThroughMutationOrThrow',
|
||||
id: objectMetadataId,
|
||||
universalIdentifier: 'object-universal-1',
|
||||
viewIds: [],
|
||||
fieldMetadataIds: [],
|
||||
fieldIds: [],
|
||||
workspaceId,
|
||||
imageIdentifierFieldMetadataId: '20202020-9d65-415f-b0e1-216a2e257ea4',
|
||||
labelIdentifierFieldMetadataId: '20202020-1a62-405c-87fa-4d4fd215851b',
|
||||
|
||||
+1
-1
@@ -21,7 +21,7 @@ describe('deleteFlatEntityFromFlatEntityAndRelatedEntityMapsThroughMutationOrThr
|
||||
id: objectMetadataId,
|
||||
universalIdentifier: 'object-universal-1',
|
||||
viewIds: [viewId, 'something-else'],
|
||||
fieldMetadataIds: [],
|
||||
fieldIds: [],
|
||||
workspaceId,
|
||||
imageIdentifierFieldMetadataId: '20202020-9d65-415f-b0e1-216a2e257ea4',
|
||||
labelIdentifierFieldMetadataId: '20202020-1a62-405c-87fa-4d4fd215851b',
|
||||
|
||||
+1
-1
@@ -33,7 +33,7 @@ export const findAllOthersMorphRelationFlatFieldMetadatasOrThrow = ({
|
||||
const objectFlatFieldMetadatas =
|
||||
findManyFlatEntityByIdInFlatEntityMapsOrThrow({
|
||||
flatEntityMaps: flatFieldMetadataMaps,
|
||||
flatEntityIds: flatObjectMetadata.fieldMetadataIds,
|
||||
flatEntityIds: flatObjectMetadata.fieldIds,
|
||||
});
|
||||
|
||||
return objectFlatFieldMetadatas.filter(
|
||||
|
||||
+1
-1
@@ -143,7 +143,7 @@ export const fromDeleteFieldInputToFlatFieldMetadatasToDelete = ({
|
||||
const objectFlatFieldMetadatas =
|
||||
findManyFlatEntityByIdInFlatEntityMapsOrThrow({
|
||||
flatEntityMaps: existingFlatFieldMetadataMaps,
|
||||
flatEntityIds: flatObjectMetadata.fieldMetadataIds,
|
||||
flatEntityIds: flatObjectMetadata.fieldIds,
|
||||
});
|
||||
|
||||
const newIndex = generateFlatIndexMetadataWithNameOrThrow({
|
||||
|
||||
+1
-1
@@ -23,7 +23,7 @@ export const getObjectFieldNamesAndJoinColumnNames = ({
|
||||
const objectFlatFieldMetadatas =
|
||||
findManyFlatEntityByIdInFlatEntityMapsOrThrow({
|
||||
flatEntityMaps: flatFieldMetadataMaps,
|
||||
flatEntityIds: flatObjectMetadata.fieldMetadataIds,
|
||||
flatEntityIds: flatObjectMetadata.fieldIds,
|
||||
});
|
||||
const initialAccumulator: ObjectFieldNamesAndJoinColumnNames = {
|
||||
joinColumnNames: [],
|
||||
|
||||
+1
-1
@@ -36,7 +36,7 @@ export const handleLabelIdentifierChangesDuringFieldUpdate = ({
|
||||
const objectFlatFieldMetadatas =
|
||||
findManyFlatEntityByIdInFlatEntityMapsOrThrow({
|
||||
flatEntityMaps: flatFieldMetadataMaps,
|
||||
flatEntityIds: flatObjectMetadata.fieldMetadataIds,
|
||||
flatEntityIds: flatObjectMetadata.fieldIds,
|
||||
});
|
||||
|
||||
const searchVectorField = findOrThrow(
|
||||
|
||||
+1
-1
@@ -26,7 +26,7 @@ export const recomputeIndexOnFlatFieldMetadataNameUpdate = ({
|
||||
const objectFlatFieldMetadatas =
|
||||
findManyFlatEntityByIdInFlatEntityMapsOrThrow({
|
||||
flatEntityMaps: flatFieldMetadataMaps,
|
||||
flatEntityIds: flatObjectMetadata.fieldMetadataIds,
|
||||
flatEntityIds: flatObjectMetadata.fieldIds,
|
||||
});
|
||||
const optimisticObjectFlatFieldMetadatas = objectFlatFieldMetadatas.map(
|
||||
(flatFieldMetadata) => {
|
||||
|
||||
+1
-1
@@ -51,7 +51,7 @@ export const validateFlatFieldMetadataNameAvailability = ({
|
||||
const objectFlatFieldMetadatas =
|
||||
findManyFlatEntityByIdInFlatEntityMapsOrThrow({
|
||||
flatEntityMaps: flatFieldMetadataMaps,
|
||||
flatEntityIds: flatObjectMetadata.fieldMetadataIds,
|
||||
flatEntityIds: flatObjectMetadata.fieldIds,
|
||||
});
|
||||
const reservedCompositeFieldsNames = getReservedCompositeFieldNames(
|
||||
objectFlatFieldMetadatas,
|
||||
|
||||
+1
-1
@@ -14,7 +14,7 @@ export const getFlatObjectMetadataMock = (
|
||||
return {
|
||||
viewIds: [],
|
||||
indexMetadataIds: [],
|
||||
fieldMetadataIds: [],
|
||||
fieldIds: [],
|
||||
description: 'default flat object metadata description',
|
||||
icon: 'icon',
|
||||
id: faker.string.uuid(),
|
||||
|
||||
+2
-4
@@ -2,7 +2,5 @@ import { type FlatEntityFrom } from 'src/engine/metadata-modules/flat-entity/typ
|
||||
import { type ObjectMetadataEntity } from 'src/engine/metadata-modules/object-metadata/object-metadata.entity';
|
||||
|
||||
export type FlatObjectMetadata = FlatEntityFrom<
|
||||
Omit<ObjectMetadataEntity, 'targetRelationFields' | 'dataSourceId' | 'fields'>
|
||||
> & {
|
||||
fieldMetadataIds: string[];
|
||||
};
|
||||
Omit<ObjectMetadataEntity, 'targetRelationFields' | 'dataSourceId'>
|
||||
>;
|
||||
|
||||
+1
-1
@@ -69,7 +69,7 @@ export const fromCreateObjectInputToFlatObjectMetadataAndFlatFieldMetadatasToCre
|
||||
nameField?.id ?? defaultFlatFieldForCustomObjectMaps.fields.idField.id;
|
||||
|
||||
const flatObjectMetadataToCreate: FlatObjectMetadata = {
|
||||
fieldMetadataIds: [],
|
||||
fieldIds: [],
|
||||
viewIds: [],
|
||||
indexMetadataIds: [],
|
||||
createdAt,
|
||||
|
||||
+1
-1
@@ -55,7 +55,7 @@ export const fromDeleteObjectInputToFlatFieldMetadatasToDelete = ({
|
||||
const objectFlatFieldMetadatas =
|
||||
findManyFlatEntityByIdInFlatEntityMapsOrThrow({
|
||||
flatEntityMaps: flatFieldMetadataMaps,
|
||||
flatEntityIds: flatObjectMetadataToDelete.fieldMetadataIds,
|
||||
flatEntityIds: flatObjectMetadataToDelete.fieldIds,
|
||||
});
|
||||
const flatFieldMetadatasToDelete = objectFlatFieldMetadatas.flatMap(
|
||||
(flatFieldMetadata) => {
|
||||
|
||||
+1
-3
@@ -22,8 +22,6 @@ export const fromObjectMetadataEntityToFlatObjectMetadata = (
|
||||
indexMetadataIds: objectMetadataEntity.indexMetadatas.map(
|
||||
(indexEntity) => indexEntity.id,
|
||||
),
|
||||
fieldMetadataIds: objectMetadataEntity.fields.map(
|
||||
(fieldEntity) => fieldEntity.id,
|
||||
),
|
||||
fieldIds: objectMetadataEntity.fields.map((fieldEntity) => fieldEntity.id),
|
||||
};
|
||||
};
|
||||
|
||||
+1
-1
@@ -32,7 +32,7 @@ export const recomputeIndexAfterFlatObjectMetadataSingularNameUpdate = ({
|
||||
const objectFlatFieldMetadatas =
|
||||
findManyFlatEntityByIdInFlatEntityMapsOrThrow({
|
||||
flatEntityMaps: flatFieldMetadataMaps,
|
||||
flatEntityIds: optimisticFlatObjectMetadata.fieldMetadataIds,
|
||||
flatEntityIds: optimisticFlatObjectMetadata.fieldIds,
|
||||
});
|
||||
|
||||
return allRelatedFlatIndexMetadata.map<FlatIndexMetadata>((flatIndex) => {
|
||||
|
||||
+1
-1
@@ -29,7 +29,7 @@ export const recomputeSearchVectorFieldAfterLabelIdentifierUpdate = ({
|
||||
const objectFlatFieldMetadatas =
|
||||
findManyFlatEntityByIdInFlatEntityMapsOrThrow({
|
||||
flatEntityMaps: flatFieldMetadataMaps,
|
||||
flatEntityIds: existingFlatObjectMetadata.fieldMetadataIds,
|
||||
flatEntityIds: existingFlatObjectMetadata.fieldIds,
|
||||
});
|
||||
|
||||
const searchVectorField = findOrThrow(
|
||||
|
||||
+1
-1
@@ -85,7 +85,7 @@ export const renameRelatedMorphFieldOnObjectNamesUpdate = ({
|
||||
const objectFlatFieldMetadatas =
|
||||
findManyFlatEntityByIdInFlatEntityMapsOrThrow({
|
||||
flatEntityMaps: flatFieldMetadataMaps,
|
||||
flatEntityIds: fromFlatObjectMetadata.fieldMetadataIds,
|
||||
flatEntityIds: fromFlatObjectMetadata.fieldIds,
|
||||
});
|
||||
|
||||
const allMorphRelationFlatFieldMetadatas =
|
||||
|
||||
+2
-2
@@ -115,7 +115,7 @@ describe('ObjectPermissionService', () => {
|
||||
id: systemObjectMetadataId,
|
||||
isSystem: true,
|
||||
workspaceId,
|
||||
fieldMetadataIds: [],
|
||||
fieldIds: [],
|
||||
indexMetadataIds: [],
|
||||
viewIds: [],
|
||||
universalIdentifier: systemObjectMetadataId,
|
||||
@@ -172,7 +172,7 @@ describe('ObjectPermissionService', () => {
|
||||
id: customObjectMetadataId,
|
||||
isSystem: false,
|
||||
workspaceId,
|
||||
fieldMetadataIds: [],
|
||||
fieldIds: [],
|
||||
indexMetadataIds: [],
|
||||
viewIds: [],
|
||||
universalIdentifier: customObjectMetadataId,
|
||||
|
||||
+4
-4
@@ -154,7 +154,7 @@ describe('FieldPermissionService', () => {
|
||||
[testObjectMetadataId]: {
|
||||
...objectMetadataItemMock,
|
||||
id: testObjectMetadataId,
|
||||
fieldMetadataIds: [testFieldMetadataId],
|
||||
fieldIds: [testFieldMetadataId],
|
||||
indexMetadataIds: [],
|
||||
viewIds: [],
|
||||
universalIdentifier: testObjectMetadataId,
|
||||
@@ -163,7 +163,7 @@ describe('FieldPermissionService', () => {
|
||||
[fieldRelationMock.objectMetadataId]: {
|
||||
...objectMetadataItemMock,
|
||||
id: fieldRelationMock.objectMetadataId,
|
||||
fieldMetadataIds: [fieldRelationMock.id],
|
||||
fieldIds: [fieldRelationMock.id],
|
||||
indexMetadataIds: [],
|
||||
viewIds: [],
|
||||
universalIdentifier: fieldRelationMock.objectMetadataId,
|
||||
@@ -444,7 +444,7 @@ describe('FieldPermissionService', () => {
|
||||
[testObjectMetadataId]: {
|
||||
...systemObjectMetadata,
|
||||
id: testObjectMetadataId,
|
||||
fieldMetadataIds: [],
|
||||
fieldIds: [],
|
||||
indexMetadataIds: [],
|
||||
viewIds: [],
|
||||
universalIdentifier: testObjectMetadataId,
|
||||
@@ -490,7 +490,7 @@ describe('FieldPermissionService', () => {
|
||||
[testObjectMetadataId]: {
|
||||
...objectMetadataItemMock,
|
||||
id: testObjectMetadataId,
|
||||
fieldMetadataIds: [],
|
||||
fieldIds: [],
|
||||
indexMetadataIds: [],
|
||||
viewIds: [],
|
||||
universalIdentifier: testObjectMetadataId,
|
||||
|
||||
+1
-1
@@ -107,7 +107,7 @@ describe('WorkspaceEntityManager', () => {
|
||||
isSystem: false,
|
||||
isActive: true,
|
||||
targetTableName: 'test_entity',
|
||||
fieldMetadataIds: ['field-id'],
|
||||
fieldIds: ['field-id'],
|
||||
indexMetadataIds: [],
|
||||
viewIds: [],
|
||||
universalIdentifier: 'test-entity-id',
|
||||
|
||||
+1
-1
@@ -37,7 +37,7 @@ export class EntitySchemaColumnFactory {
|
||||
): EntitySchemaColumnMap {
|
||||
let entitySchemaColumnMap: EntitySchemaColumnMap = {};
|
||||
|
||||
const fieldMetadataCollection = objectMetadata.fieldMetadataIds
|
||||
const fieldMetadataCollection = objectMetadata.fieldIds
|
||||
.map((fieldId) => fieldMetadataMaps.byId[fieldId])
|
||||
.filter(isDefined);
|
||||
|
||||
|
||||
+1
-1
@@ -31,7 +31,7 @@ export class EntitySchemaRelationFactory {
|
||||
): EntitySchemaRelationMap {
|
||||
const entitySchemaRelationMap: EntitySchemaRelationMap = {};
|
||||
|
||||
const fieldMetadatas = objectMetadata.fieldMetadataIds
|
||||
const fieldMetadatas = objectMetadata.fieldIds
|
||||
.map((fieldId) => fieldMetadataMaps.byId[fieldId])
|
||||
.filter(isDefined);
|
||||
|
||||
|
||||
+2
-2
@@ -7,7 +7,7 @@ export type EntitySchemaObjectMetadata = Pick<
|
||||
ObjectMetadataEntity,
|
||||
'id' | 'nameSingular' | 'isCustom'
|
||||
> & {
|
||||
fieldMetadataIds: string[];
|
||||
fieldIds: string[];
|
||||
};
|
||||
|
||||
export type EntitySchemaFieldMetadata<
|
||||
@@ -60,7 +60,7 @@ export const buildEntitySchemaMetadataMaps = (
|
||||
id: object.id,
|
||||
nameSingular: object.nameSingular,
|
||||
isCustom: object.isCustom,
|
||||
fieldMetadataIds: fieldIdsByObjectId.get(object.id) ?? [],
|
||||
fieldIds: fieldIdsByObjectId.get(object.id) ?? [],
|
||||
};
|
||||
}
|
||||
|
||||
|
||||
+1
-1
@@ -167,7 +167,7 @@ describe('WorkspaceRepository', () => {
|
||||
id: 'test-metadata-id',
|
||||
nameSingular: 'test-entity',
|
||||
namePlural: 'test-entities',
|
||||
fieldMetadataIds: ['test-field-id'],
|
||||
fieldIds: ['test-field-id'],
|
||||
fieldIdByName: {
|
||||
id: 'test-field-id',
|
||||
},
|
||||
|
||||
+3
-3
@@ -206,7 +206,7 @@ describe('computeRelationConnectQueryConfigs', () => {
|
||||
partial: Partial<FlatObjectMetadata> & {
|
||||
id: string;
|
||||
nameSingular: string;
|
||||
fieldMetadataIds: string[];
|
||||
fieldIds: string[];
|
||||
indexMetadataIds: string[];
|
||||
},
|
||||
): FlatObjectMetadata =>
|
||||
@@ -244,7 +244,7 @@ describe('computeRelationConnectQueryConfigs', () => {
|
||||
id: 'person-object-metadata-id',
|
||||
nameSingular: 'person',
|
||||
indexMetadataIds: [],
|
||||
fieldMetadataIds: personFields.map((f) => f.id),
|
||||
fieldIds: personFields.map((f) => f.id),
|
||||
});
|
||||
|
||||
const companyMetadata = createFlatObjectMetadata({
|
||||
@@ -255,7 +255,7 @@ describe('computeRelationConnectQueryConfigs', () => {
|
||||
'company-domain-index-metadata-id',
|
||||
'company-composite-index-metadata-id',
|
||||
],
|
||||
fieldMetadataIds: companyFields.map((f) => f.id),
|
||||
fieldIds: companyFields.map((f) => f.id),
|
||||
});
|
||||
|
||||
const flatObjectMetadataMaps: FlatEntityMaps<FlatObjectMetadata> = {
|
||||
|
||||
+1
-1
@@ -71,7 +71,7 @@ describe('formatTwentyOrmEventToDatabaseBatchEvent', () => {
|
||||
createdAt: new Date(),
|
||||
updatedAt: new Date(),
|
||||
universalIdentifier: objectMetadataId,
|
||||
fieldMetadataIds: ['name-id'],
|
||||
fieldIds: ['name-id'],
|
||||
indexMetadataIds: [],
|
||||
viewIds: [],
|
||||
applicationId: null,
|
||||
|
||||
+2
-2
@@ -7,7 +7,7 @@ import { getColumnNameToFieldMetadataIdMap } from 'src/engine/twenty-orm/utils/g
|
||||
|
||||
describe('getColumnNameToFieldMetadataIdMap', () => {
|
||||
const createMockFlatObjectMetadata = (
|
||||
fieldMetadataIds: string[],
|
||||
fieldIds: string[],
|
||||
): FlatObjectMetadata =>
|
||||
({
|
||||
id: 'test-object-id',
|
||||
@@ -26,7 +26,7 @@ describe('getColumnNameToFieldMetadataIdMap', () => {
|
||||
workspaceId: 'test-workspace-id',
|
||||
universalIdentifier: 'test-object-id',
|
||||
indexMetadataIds: [],
|
||||
fieldMetadataIds,
|
||||
fieldIds,
|
||||
viewIds: [],
|
||||
applicationId: 'test-application-id',
|
||||
isLabelSyncedWithName: false,
|
||||
|
||||
+2
-2
@@ -7,7 +7,7 @@ import { getFieldMetadataIdToColumnNamesMap } from 'src/engine/twenty-orm/utils/
|
||||
|
||||
describe('getFieldMetadataIdToColumnNamesMap', () => {
|
||||
const createMockFlatObjectMetadata = (
|
||||
fieldMetadataIds: string[],
|
||||
fieldIds: string[],
|
||||
): FlatObjectMetadata =>
|
||||
({
|
||||
id: 'test-object-id',
|
||||
@@ -26,7 +26,7 @@ describe('getFieldMetadataIdToColumnNamesMap', () => {
|
||||
workspaceId: 'test-workspace-id',
|
||||
universalIdentifier: 'test-object-id',
|
||||
indexMetadataIds: [],
|
||||
fieldMetadataIds,
|
||||
fieldIds,
|
||||
viewIds: [],
|
||||
applicationId: 'test-application-id',
|
||||
isLabelSyncedWithName: false,
|
||||
|
||||
+2
-2
@@ -7,7 +7,7 @@ import { isRecordMatchingRLSRowLevelPermissionPredicate } from 'src/engine/twent
|
||||
|
||||
describe('isRecordMatchingRLSRowLevelPermissionPredicate', () => {
|
||||
const createMockFlatObjectMetadata = (
|
||||
fieldMetadataIds: string[],
|
||||
fieldIds: string[],
|
||||
): FlatObjectMetadata =>
|
||||
({
|
||||
id: 'test-object-id',
|
||||
@@ -26,7 +26,7 @@ describe('isRecordMatchingRLSRowLevelPermissionPredicate', () => {
|
||||
workspaceId: 'test-workspace-id',
|
||||
universalIdentifier: 'test-object-id',
|
||||
indexMetadataIds: [],
|
||||
fieldMetadataIds,
|
||||
fieldIds,
|
||||
viewIds: [],
|
||||
applicationId: 'test-application-id',
|
||||
isLabelSyncedWithName: false,
|
||||
|
||||
+1
-1
@@ -55,7 +55,7 @@ export function processFieldMetadataForColumnNameMapping(
|
||||
flatFieldMetadataMaps: FlatEntityMaps<FlatFieldMetadata>,
|
||||
processor: ColumnNameProcessor,
|
||||
) {
|
||||
for (const fieldMetadataId of flatObjectMetadata.fieldMetadataIds) {
|
||||
for (const fieldMetadataId of flatObjectMetadata.fieldIds) {
|
||||
const fieldMetadata = findFlatEntityByIdInFlatEntityMapsOrThrow({
|
||||
flatEntityMaps: flatFieldMetadataMaps,
|
||||
flatEntityId: fieldMetadataId,
|
||||
|
||||
+2
-2
@@ -50,7 +50,7 @@ type JunctionConfigSeed = {
|
||||
// Helper type for flat entity maps
|
||||
type FlatMaps = {
|
||||
fieldMaps: { byId: Record<string, { name: string; morphId?: string }> };
|
||||
objectMaps: { byId: Record<string, { fieldMetadataIds: string[] }> };
|
||||
objectMaps: { byId: Record<string, { fieldIds: string[] }> };
|
||||
objectIdByName: Record<string, string>;
|
||||
};
|
||||
|
||||
@@ -482,7 +482,7 @@ export class DevSeederMetadataService {
|
||||
throw new Error(`Object metadata not found: ${objectName}`);
|
||||
}
|
||||
|
||||
for (const fieldId of objectMetadata.fieldMetadataIds) {
|
||||
for (const fieldId of objectMetadata.fieldIds) {
|
||||
if (flatMaps.fieldMaps.byId[fieldId]?.name === fieldName) {
|
||||
return fieldId;
|
||||
}
|
||||
|
||||
+1
-1
@@ -84,7 +84,7 @@ export const createStandardObjectFlatMetadata = <
|
||||
].id
|
||||
: null,
|
||||
targetTableName: 'DEPRECATED',
|
||||
fieldMetadataIds: [],
|
||||
fieldIds: [],
|
||||
indexMetadataIds: [],
|
||||
viewIds: [],
|
||||
createdAt: now,
|
||||
|
||||
+1
-1
@@ -77,7 +77,7 @@ export class DeleteObjectActionHandlerService extends WorkspaceMigrationRunnerAc
|
||||
const objectFlatFieldMetadatas =
|
||||
findManyFlatEntityByIdInFlatEntityMapsOrThrow({
|
||||
flatEntityMaps: flatFieldMetadataMaps,
|
||||
flatEntityIds: flatObjectMetadata.fieldMetadataIds,
|
||||
flatEntityIds: flatObjectMetadata.fieldIds,
|
||||
});
|
||||
const enumOrCompositeFlatFieldMetadatas = objectFlatFieldMetadatas.filter(
|
||||
(field) =>
|
||||
|
||||
+1
-1
@@ -96,7 +96,7 @@ export class UpdateObjectActionHandlerService extends WorkspaceMigrationRunnerAc
|
||||
const objectFlatFieldMetadatas =
|
||||
findManyFlatEntityByIdInFlatEntityMapsOrThrow({
|
||||
flatEntityMaps: flatFieldMetadataMaps,
|
||||
flatEntityIds: updatedObjectMetadata.fieldMetadataIds,
|
||||
flatEntityIds: updatedObjectMetadata.fieldIds,
|
||||
});
|
||||
const enumOrCompositeFlatFieldMetadatas =
|
||||
objectFlatFieldMetadatas.filter(
|
||||
|
||||
+3
-3
@@ -23,7 +23,7 @@ const createMockObjectMetadata = (
|
||||
id: 'test-object-id',
|
||||
nameSingular: 'testObject',
|
||||
namePlural: 'testObjects',
|
||||
fieldMetadataIds: [],
|
||||
fieldIds: [],
|
||||
universalIdentifier: 'test-object-universal-id',
|
||||
...overrides,
|
||||
}) as FlatObjectMetadata;
|
||||
@@ -51,7 +51,7 @@ describe('isRelationNestedFieldDateKind', () => {
|
||||
id: companyObjectId,
|
||||
nameSingular: 'company',
|
||||
namePlural: 'companies',
|
||||
fieldMetadataIds: [createdAtFieldId, nameFieldId],
|
||||
fieldIds: [createdAtFieldId, nameFieldId],
|
||||
});
|
||||
|
||||
const relationField = createMockFieldMetadata({
|
||||
@@ -180,7 +180,7 @@ describe('isRelationNestedFieldDateKind', () => {
|
||||
id: 'object-with-date-id',
|
||||
nameSingular: 'person',
|
||||
namePlural: 'people',
|
||||
fieldMetadataIds: [dateFieldId],
|
||||
fieldIds: [dateFieldId],
|
||||
});
|
||||
|
||||
const personRelationField = createMockFieldMetadata({
|
||||
|
||||
+2
-2
@@ -43,8 +43,8 @@ export const convertChartFilterToGqlOperationFilter = ({
|
||||
return {};
|
||||
}
|
||||
|
||||
const fieldMetadataIds = flatObjectMetadata.fieldMetadataIds ?? [];
|
||||
const fields: PartialFieldMetadataItem[] = fieldMetadataIds
|
||||
const fieldIds = flatObjectMetadata.fieldIds ?? [];
|
||||
const fields: PartialFieldMetadataItem[] = fieldIds
|
||||
.map((fieldId: string) => {
|
||||
const field = flatFieldMetadataMaps.byId[fieldId];
|
||||
|
||||
|
||||
+1
-1
@@ -38,7 +38,7 @@ export const isRelationNestedFieldDateKind = ({
|
||||
|
||||
const nestedFieldName = relationNestedFieldName.split('.')[0];
|
||||
|
||||
const targetFieldIds = targetObjectMetadata.fieldMetadataIds;
|
||||
const targetFieldIds = targetObjectMetadata.fieldIds;
|
||||
|
||||
const nestedFieldMetadata = targetFieldIds
|
||||
.map((fieldId: string) => flatFieldMetadataMaps.byId[fieldId])
|
||||
|
||||
+1
-1
@@ -17,7 +17,7 @@ export const generateObjectRecordFields = ({
|
||||
|
||||
const result: Record<string, FieldOutputSchema> = {};
|
||||
|
||||
for (const fieldId of flatObjectMetadata.fieldMetadataIds) {
|
||||
for (const fieldId of flatObjectMetadata.fieldIds) {
|
||||
const field = findFlatEntityByIdInFlatEntityMapsOrThrow({
|
||||
flatEntityMaps: flatFieldMetadataMaps,
|
||||
flatEntityId: fieldId,
|
||||
|
||||
+1
-1
@@ -11,7 +11,7 @@ export const resolveRichTextFieldsInRecord = (
|
||||
): Record<string, unknown> => {
|
||||
const { flatObjectMetadata, flatFieldMetadataMaps } = objectMetadataInfo;
|
||||
|
||||
const richTextFieldNames = flatObjectMetadata.fieldMetadataIds
|
||||
const richTextFieldNames = flatObjectMetadata.fieldIds
|
||||
.map((fieldId) => flatFieldMetadataMaps.byId[fieldId])
|
||||
.filter((field) => field?.type === FieldMetadataType.RICH_TEXT_V2)
|
||||
.map((field) => field?.name)
|
||||
|
||||
+1
-1
@@ -71,7 +71,7 @@ export class FindRecordsWorkflowAction implements WorkflowAction {
|
||||
workspaceId,
|
||||
);
|
||||
|
||||
const fields = flatObjectMetadata.fieldMetadataIds
|
||||
const fields = flatObjectMetadata.fieldIds
|
||||
.map((fieldId) => {
|
||||
const field = flatFieldMetadataMaps.byId[fieldId];
|
||||
|
||||
|
||||
+1
-1
@@ -40,7 +40,7 @@ describe('WorkflowDatabaseEventTriggerListener', () => {
|
||||
updatedAt: new Date().toISOString(),
|
||||
icon: 'Icon123',
|
||||
universalIdentifier: 'test-object-metadata',
|
||||
fieldMetadataIds: [],
|
||||
fieldIds: [],
|
||||
indexMetadataIds: [],
|
||||
viewIds: [],
|
||||
applicationId: null,
|
||||
|
||||
@@ -11,7 +11,7 @@ type SimplifiedFlatObjectMetadata = {
|
||||
universalIdentifier: string;
|
||||
applicationId: string | null;
|
||||
} & {
|
||||
fieldMetadataIds: string[];
|
||||
fieldIds: string[];
|
||||
indexMetadataIds: string[];
|
||||
viewIds: string[];
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user