From 9f62188ba652b93c3034e64c6fa10e7d1e746435 Mon Sep 17 00:00:00 2001 From: Paul Rastoin <45004772+prastoin@users.noreply.github.com> Date: Fri, 28 Nov 2025 18:06:44 +0100 Subject: [PATCH] Field and object metadata naming does not refer to v2 (#16187) Related https://github.com/twentyhq/core-team-issues/issues/1911 --- ...sure-dashboard-naming-available.command.ts | 6 ++-- .../__tests__/workspace.factory.spec.ts | 4 +-- .../application/application-sync.service.ts | 22 ++++++------- .../open-api/open-api.service.spec.ts | 4 +-- .../ai-chat-router/ai-chat-router.service.ts | 4 +-- .../field-metadata/field-metadata.module.ts | 10 +++--- .../field-metadata/field-metadata.resolver.ts | 31 +++++++++---------- ...ervice-v2.ts => field-metadata.service.ts} | 2 +- .../object-metadata/object-metadata.module.ts | 10 +++--- .../object-metadata.resolver.ts | 10 +++--- ....service.ts => object-metadata.service.ts} | 2 +- .../remote-table/remote-table.service.ts | 8 ++--- .../workspace-manager.service.spec.ts | 12 +++---- .../data/services/dev-seeder-data.service.ts | 4 +-- .../timeline-activity-seeder.service.ts | 6 ++-- .../services/dev-seeder-metadata.service.ts | 16 +++++----- .../workspace-manager.service.ts | 6 ++-- .../agent/utils/agent-tool-test-utils.ts | 10 +++--- 18 files changed, 81 insertions(+), 86 deletions(-) rename packages/twenty-server/src/engine/metadata-modules/field-metadata/services/{field-metadata.service-v2.ts => field-metadata.service.ts} (99%) rename packages/twenty-server/src/engine/metadata-modules/object-metadata/{object-metadata-v2.service.ts => object-metadata.service.ts} (99%) diff --git a/packages/twenty-server/src/database/commands/upgrade-version-command/1-10/1-10-make-sure-dashboard-naming-available.command.ts b/packages/twenty-server/src/database/commands/upgrade-version-command/1-10/1-10-make-sure-dashboard-naming-available.command.ts index b9030de9c3..e328f1318c 100644 --- a/packages/twenty-server/src/database/commands/upgrade-version-command/1-10/1-10-make-sure-dashboard-naming-available.command.ts +++ b/packages/twenty-server/src/database/commands/upgrade-version-command/1-10/1-10-make-sure-dashboard-naming-available.command.ts @@ -8,8 +8,8 @@ import { ActiveOrSuspendedWorkspacesMigrationCommandRunner } from 'src/database/ import { RunOnWorkspaceArgs } from 'src/database/commands/command-runners/workspaces-migration.command-runner'; import { WorkspaceEntity } from 'src/engine/core-modules/workspace/workspace.entity'; import { DataSourceService } from 'src/engine/metadata-modules/data-source/data-source.service'; -import { ObjectMetadataServiceV2 } from 'src/engine/metadata-modules/object-metadata/object-metadata-v2.service'; import { ObjectMetadataEntity } from 'src/engine/metadata-modules/object-metadata/object-metadata.entity'; +import { ObjectMetadataService } from 'src/engine/metadata-modules/object-metadata/object-metadata.service'; import { TwentyORMGlobalManager } from 'src/engine/twenty-orm/twenty-orm-global.manager'; @Command({ @@ -24,7 +24,7 @@ export class MakeSureDashboardNamingAvailableCommand extends ActiveOrSuspendedWo protected readonly dataSourceService: DataSourceService, @InjectRepository(ObjectMetadataEntity) private readonly objectMetadataRepository: Repository, - private readonly objectMetadataServiceV2: ObjectMetadataServiceV2, + private readonly objectMetadataService: ObjectMetadataService, ) { super(workspaceRepository, twentyORMGlobalManager, dataSourceService); } @@ -62,7 +62,7 @@ export class MakeSureDashboardNamingAvailableCommand extends ActiveOrSuspendedWo `Updating the dashboard object metadata for workspace ${workspaceId}...`, ); - await this.objectMetadataServiceV2.updateOneObject({ + await this.objectMetadataService.updateOneObject({ workspaceId, updateObjectInput: { id: potentialCustomDashboardObjectMetadata.id, diff --git a/packages/twenty-server/src/engine/api/graphql/__tests__/workspace.factory.spec.ts b/packages/twenty-server/src/engine/api/graphql/__tests__/workspace.factory.spec.ts index b18c2afb61..627eeb9974 100644 --- a/packages/twenty-server/src/engine/api/graphql/__tests__/workspace.factory.spec.ts +++ b/packages/twenty-server/src/engine/api/graphql/__tests__/workspace.factory.spec.ts @@ -7,8 +7,8 @@ import { WorkspaceSchemaFactory } from 'src/engine/api/graphql/workspace-schema. import { FeatureFlagService } from 'src/engine/core-modules/feature-flag/services/feature-flag.service'; import { TwentyConfigService } from 'src/engine/core-modules/twenty-config/twenty-config.service'; import { DataSourceService } from 'src/engine/metadata-modules/data-source/data-source.service'; -import { ObjectMetadataServiceV2 } from 'src/engine/metadata-modules/object-metadata/object-metadata-v2.service'; import { WorkspaceManyOrAllFlatEntityMapsCacheService } from 'src/engine/metadata-modules/flat-entity/services/workspace-many-or-all-flat-entity-maps-cache.service'; +import { ObjectMetadataService } from 'src/engine/metadata-modules/object-metadata/object-metadata.service'; import { WorkspaceCacheStorageService } from 'src/engine/workspace-cache-storage/workspace-cache-storage.service'; describe('WorkspaceSchemaFactory', () => { @@ -23,7 +23,7 @@ describe('WorkspaceSchemaFactory', () => { useValue: {}, }, { - provide: ObjectMetadataServiceV2, + provide: ObjectMetadataService, useValue: {}, }, { diff --git a/packages/twenty-server/src/engine/core-modules/application/application-sync.service.ts b/packages/twenty-server/src/engine/core-modules/application/application-sync.service.ts index 7f8999ef3f..92c1b3e5b4 100644 --- a/packages/twenty-server/src/engine/core-modules/application/application-sync.service.ts +++ b/packages/twenty-server/src/engine/core-modules/application/application-sync.service.ts @@ -25,13 +25,13 @@ import { DataSourceService } from 'src/engine/metadata-modules/data-source/data- import { DatabaseEventTriggerV2Service } from 'src/engine/metadata-modules/database-event-trigger/services/database-event-trigger-v2.service'; import { FlatDatabaseEventTrigger } from 'src/engine/metadata-modules/database-event-trigger/types/flat-database-event-trigger.type'; import { CreateFieldInput } from 'src/engine/metadata-modules/field-metadata/dtos/create-field.input'; -import { FieldMetadataServiceV2 } from 'src/engine/metadata-modules/field-metadata/services/field-metadata.service-v2'; +import { FieldMetadataService } from 'src/engine/metadata-modules/field-metadata/services/field-metadata.service'; import { createEmptyFlatEntityMaps } from 'src/engine/metadata-modules/flat-entity/constant/create-empty-flat-entity-maps.constant'; import { WorkspaceManyOrAllFlatEntityMapsCacheService } from 'src/engine/metadata-modules/flat-entity/services/workspace-many-or-all-flat-entity-maps-cache.service'; import { getFlatEntitiesByApplicationId } from 'src/engine/metadata-modules/flat-entity/utils/get-flat-entities-by-application-id.util'; import { getSubFlatEntityMapsOrThrow } from 'src/engine/metadata-modules/flat-entity/utils/get-sub-flat-entity-maps-or-throw.util'; import { FlatFieldMetadata } from 'src/engine/metadata-modules/flat-field-metadata/types/flat-field-metadata.type'; -import { ObjectMetadataServiceV2 } from 'src/engine/metadata-modules/object-metadata/object-metadata-v2.service'; +import { ObjectMetadataService } from 'src/engine/metadata-modules/object-metadata/object-metadata.service'; import { RouteTriggerV2Service } from 'src/engine/metadata-modules/route-trigger/services/route-trigger-v2.service'; import { FlatRouteTrigger } from 'src/engine/metadata-modules/route-trigger/types/flat-route-trigger.type'; import { ServerlessFunctionLayerService } from 'src/engine/metadata-modules/serverless-function-layer/serverless-function-layer.service'; @@ -48,8 +48,8 @@ export class ApplicationSyncService { private readonly applicationService: ApplicationService, private readonly applicationVariableService: ApplicationVariableEntityService, private readonly serverlessFunctionLayerService: ServerlessFunctionLayerService, - private readonly objectMetadataServiceV2: ObjectMetadataServiceV2, - private readonly fieldMetadataServiceV2: FieldMetadataServiceV2, + private readonly objectMetadataService: ObjectMetadataService, + private readonly fieldMetadataService: FieldMetadataService, private readonly serverlessFunctionV2Service: ServerlessFunctionV2Service, private readonly flatEntityMapsCacheService: WorkspaceManyOrAllFlatEntityMapsCacheService, private readonly dataSourceService: DataSourceService, @@ -219,14 +219,14 @@ export class ApplicationSyncService { ); for (const fieldToDelete of fieldsToDelete) { - await this.fieldMetadataServiceV2.updateOneField({ + await this.fieldMetadataService.updateOneField({ updateFieldInput: { id: fieldToDelete.id, isActive: false, }, workspaceId, }); - await this.fieldMetadataServiceV2.deleteOneField({ + await this.fieldMetadataService.deleteOneField({ deleteOneFieldInput: { id: fieldToDelete.id }, workspaceId, }); @@ -256,7 +256,7 @@ export class ApplicationSyncService { isNullable: fieldToSync.isNullable ?? true, }; - await this.fieldMetadataServiceV2.updateOneField({ + await this.fieldMetadataService.updateOneField({ updateFieldInput, workspaceId, }); @@ -281,7 +281,7 @@ export class ApplicationSyncService { workspaceId, }; - await this.fieldMetadataServiceV2.createOneField({ + await this.fieldMetadataService.createOneField({ createFieldInput, workspaceId, applicationId, @@ -342,7 +342,7 @@ export class ApplicationSyncService { ); for (const objectToDelete of objectsToDelete) { - await this.objectMetadataServiceV2.deleteOneObject({ + await this.objectMetadataService.deleteOneObject({ deleteObjectInput: { id: objectToDelete.id }, workspaceId, isSystemBuild: true, @@ -373,7 +373,7 @@ export class ApplicationSyncService { }, }; - await this.objectMetadataServiceV2.updateOneObject({ + await this.objectMetadataService.updateOneObject({ updateObjectInput, workspaceId, }); @@ -405,7 +405,7 @@ export class ApplicationSyncService { applicationId, }; - const createdObject = await this.objectMetadataServiceV2.createOneObject({ + const createdObject = await this.objectMetadataService.createOneObject({ createObjectInput, applicationId, workspaceId, diff --git a/packages/twenty-server/src/engine/core-modules/open-api/open-api.service.spec.ts b/packages/twenty-server/src/engine/core-modules/open-api/open-api.service.spec.ts index 24a562d4e6..ecf8d97703 100644 --- a/packages/twenty-server/src/engine/core-modules/open-api/open-api.service.spec.ts +++ b/packages/twenty-server/src/engine/core-modules/open-api/open-api.service.spec.ts @@ -5,7 +5,7 @@ import { FeatureFlagService } from 'src/engine/core-modules/feature-flag/service import { OpenApiService } from 'src/engine/core-modules/open-api/open-api.service'; import { TwentyConfigService } from 'src/engine/core-modules/twenty-config/twenty-config.service'; import { WorkspaceManyOrAllFlatEntityMapsCacheService } from 'src/engine/metadata-modules/flat-entity/services/workspace-many-or-all-flat-entity-maps-cache.service'; -import { ObjectMetadataServiceV2 } from 'src/engine/metadata-modules/object-metadata/object-metadata-v2.service'; +import { ObjectMetadataService } from 'src/engine/metadata-modules/object-metadata/object-metadata.service'; describe('OpenApiService', () => { let service: OpenApiService; @@ -19,7 +19,7 @@ describe('OpenApiService', () => { useValue: {}, }, { - provide: ObjectMetadataServiceV2, + provide: ObjectMetadataService, useValue: {}, }, { diff --git a/packages/twenty-server/src/engine/metadata-modules/ai/ai-chat-router/ai-chat-router.service.ts b/packages/twenty-server/src/engine/metadata-modules/ai/ai-chat-router/ai-chat-router.service.ts index 5b2296de9a..e6c2d94aa2 100644 --- a/packages/twenty-server/src/engine/metadata-modules/ai/ai-chat-router/ai-chat-router.service.ts +++ b/packages/twenty-server/src/engine/metadata-modules/ai/ai-chat-router/ai-chat-router.service.ts @@ -7,7 +7,7 @@ import { IsNull, type Repository } from 'typeorm'; import { AgentEntity } from 'src/engine/metadata-modules/ai/ai-agent/entities/agent.entity'; import { isWorkflowRelatedObject } from 'src/engine/metadata-modules/ai/ai-agent/utils/is-workflow-related-object.util'; import { type ModelId } from 'src/engine/metadata-modules/ai/ai-models/constants/ai-models.const'; -import { ObjectMetadataServiceV2 } from 'src/engine/metadata-modules/object-metadata/object-metadata-v2.service'; +import { ObjectMetadataService } from 'src/engine/metadata-modules/object-metadata/object-metadata.service'; import { HELPER_AGENT } from 'src/engine/workspace-manager/workspace-sync-metadata/standard-agents/agents/helper-agent'; import { AiChatRouterPlanGeneratorService } from './services/ai-chat-router-plan-generator.service'; @@ -37,7 +37,7 @@ export class AiChatRouterService { private readonly agentRepository: Repository, private readonly strategyDecider: AiChatRouterStrategyDeciderService, private readonly planGenerator: AiChatRouterPlanGeneratorService, - private readonly objectMetadataService: ObjectMetadataServiceV2, + private readonly objectMetadataService: ObjectMetadataService, ) {} async routeMessage( diff --git a/packages/twenty-server/src/engine/metadata-modules/field-metadata/field-metadata.module.ts b/packages/twenty-server/src/engine/metadata-modules/field-metadata/field-metadata.module.ts index 47b50a5d9a..69a36eb98e 100644 --- a/packages/twenty-server/src/engine/metadata-modules/field-metadata/field-metadata.module.ts +++ b/packages/twenty-server/src/engine/metadata-modules/field-metadata/field-metadata.module.ts @@ -20,7 +20,7 @@ import { FieldMetadataEnumValidationService } from 'src/engine/metadata-modules/ import { FieldMetadataMorphRelationService } from 'src/engine/metadata-modules/field-metadata/services/field-metadata-morph-relation.service'; import { FieldMetadataRelationService } from 'src/engine/metadata-modules/field-metadata/services/field-metadata-relation.service'; import { FieldMetadataValidationService } from 'src/engine/metadata-modules/field-metadata/services/field-metadata-validation.service'; -import { FieldMetadataServiceV2 } from 'src/engine/metadata-modules/field-metadata/services/field-metadata.service-v2'; +import { FieldMetadataService } from 'src/engine/metadata-modules/field-metadata/services/field-metadata.service'; import { IsFieldMetadataDefaultValue } from 'src/engine/metadata-modules/field-metadata/validators/is-field-metadata-default-value.validator'; import { IsFieldMetadataOptions } from 'src/engine/metadata-modules/field-metadata/validators/is-field-metadata-options.validator'; import { WorkspaceManyOrAllFlatEntityMapsCacheModule } from 'src/engine/metadata-modules/flat-entity/services/workspace-many-or-all-flat-entity-maps-cache.module'; @@ -74,7 +74,7 @@ import { UpdateFieldInput } from './dtos/update-field.input'; ], services: [ IsFieldMetadataDefaultValue, - FieldMetadataServiceV2, + FieldMetadataService, FieldMetadataMorphRelationService, FieldMetadataRelationService, FieldMetadataValidationService, @@ -86,7 +86,7 @@ import { UpdateFieldInput } from './dtos/update-field.input'; DTOClass: FieldMetadataDTO, CreateDTOClass: CreateFieldInput, UpdateDTOClass: UpdateFieldInput, - ServiceClass: FieldMetadataServiceV2, + ServiceClass: FieldMetadataService, pagingStrategy: PagingStrategies.CURSOR, read: { defaultSort: [{ field: 'id', direction: SortDirection.DESC }], @@ -107,7 +107,7 @@ import { UpdateFieldInput } from './dtos/update-field.input'; providers: [ IsFieldMetadataDefaultValue, IsFieldMetadataOptions, - FieldMetadataServiceV2, + FieldMetadataService, FieldMetadataRelationService, FieldMetadataMorphRelationService, FieldMetadataValidationService, @@ -115,7 +115,7 @@ import { UpdateFieldInput } from './dtos/update-field.input'; FieldMetadataResolver, ], exports: [ - FieldMetadataServiceV2, + FieldMetadataService, FieldMetadataRelationService, FieldMetadataMorphRelationService, FieldMetadataEnumValidationService, diff --git a/packages/twenty-server/src/engine/metadata-modules/field-metadata/field-metadata.resolver.ts b/packages/twenty-server/src/engine/metadata-modules/field-metadata/field-metadata.resolver.ts index 9e96408516..d227477ea4 100644 --- a/packages/twenty-server/src/engine/metadata-modules/field-metadata/field-metadata.resolver.ts +++ b/packages/twenty-server/src/engine/metadata-modules/field-metadata/field-metadata.resolver.ts @@ -25,7 +25,7 @@ import { DeleteOneFieldInput } from 'src/engine/metadata-modules/field-metadata/ import { FieldMetadataDTO } from 'src/engine/metadata-modules/field-metadata/dtos/field-metadata.dto'; import { RelationDTO } from 'src/engine/metadata-modules/field-metadata/dtos/relation.dto'; import { UpdateOneFieldMetadataInput } from 'src/engine/metadata-modules/field-metadata/dtos/update-field.input'; -import { FieldMetadataServiceV2 } from 'src/engine/metadata-modules/field-metadata/services/field-metadata.service-v2'; +import { FieldMetadataService } from 'src/engine/metadata-modules/field-metadata/services/field-metadata.service'; import { fieldMetadataGraphqlApiExceptionHandler } from 'src/engine/metadata-modules/field-metadata/utils/field-metadata-graphql-api-exception-handler.util'; import { fromFlatFieldMetadataToFieldMetadataDto } from 'src/engine/metadata-modules/flat-field-metadata/utils/from-flat-field-metadata-to-field-metadata-dto.util'; import { PermissionFlagType } from 'src/engine/metadata-modules/permissions/constants/permission-flag-type.constants'; @@ -40,7 +40,7 @@ import { PermissionsGraphqlApiExceptionFilter } from 'src/engine/metadata-module ) export class FieldMetadataResolver { constructor( - private readonly fieldMetadataServiceV2: FieldMetadataServiceV2, + private readonly fieldMetadataService: FieldMetadataService, private readonly i18nService: I18nService, ) {} @@ -52,11 +52,10 @@ export class FieldMetadataResolver { @Context() context: I18nContext, ) { try { - const flatFieldMetadata = - await this.fieldMetadataServiceV2.createOneField({ - createFieldInput: input.field, - workspaceId, - }); + const flatFieldMetadata = await this.fieldMetadataService.createOneField({ + createFieldInput: input.field, + workspaceId, + }); return fromFlatFieldMetadataToFieldMetadataDto(flatFieldMetadata); } catch (error) { @@ -75,11 +74,10 @@ export class FieldMetadataResolver { @Context() context: I18nContext, ) { try { - const flatFieldMetadata = - await this.fieldMetadataServiceV2.updateOneField({ - updateFieldInput: { ...input.update, id: input.id }, - workspaceId, - }); + const flatFieldMetadata = await this.fieldMetadataService.updateOneField({ + updateFieldInput: { ...input.update, id: input.id }, + workspaceId, + }); return fromFlatFieldMetadataToFieldMetadataDto(flatFieldMetadata); } catch (error) { @@ -102,11 +100,10 @@ export class FieldMetadataResolver { } try { - const flatFieldMetadata = - await this.fieldMetadataServiceV2.deleteOneField({ - deleteOneFieldInput, - workspaceId, - }); + const flatFieldMetadata = await this.fieldMetadataService.deleteOneField({ + deleteOneFieldInput, + workspaceId, + }); return fromFlatFieldMetadataToFieldMetadataDto(flatFieldMetadata); } catch (error) { diff --git a/packages/twenty-server/src/engine/metadata-modules/field-metadata/services/field-metadata.service-v2.ts b/packages/twenty-server/src/engine/metadata-modules/field-metadata/services/field-metadata.service.ts similarity index 99% rename from packages/twenty-server/src/engine/metadata-modules/field-metadata/services/field-metadata.service-v2.ts rename to packages/twenty-server/src/engine/metadata-modules/field-metadata/services/field-metadata.service.ts index 4a3c153ce1..7cfbc4670d 100644 --- a/packages/twenty-server/src/engine/metadata-modules/field-metadata/services/field-metadata.service-v2.ts +++ b/packages/twenty-server/src/engine/metadata-modules/field-metadata/services/field-metadata.service.ts @@ -27,7 +27,7 @@ import { WorkspaceMigrationBuilderExceptionV2 } from 'src/engine/workspace-manag import { WorkspaceMigrationValidateBuildAndRunService } from 'src/engine/workspace-manager/workspace-migration-v2/services/workspace-migration-validate-build-and-run-service'; @Injectable() -export class FieldMetadataServiceV2 extends TypeOrmQueryService { +export class FieldMetadataService extends TypeOrmQueryService { constructor( @InjectRepository(FieldMetadataEntity) private readonly fieldMetadataRepository: Repository, diff --git a/packages/twenty-server/src/engine/metadata-modules/object-metadata/object-metadata.module.ts b/packages/twenty-server/src/engine/metadata-modules/object-metadata/object-metadata.module.ts index 4cb1c2514c..c806476b94 100644 --- a/packages/twenty-server/src/engine/metadata-modules/object-metadata/object-metadata.module.ts +++ b/packages/twenty-server/src/engine/metadata-modules/object-metadata/object-metadata.module.ts @@ -22,9 +22,9 @@ import { CreateObjectInput } from 'src/engine/metadata-modules/object-metadata/d import { ObjectMetadataDTO } from 'src/engine/metadata-modules/object-metadata/dtos/object-metadata.dto'; import { UpdateObjectPayload } from 'src/engine/metadata-modules/object-metadata/dtos/update-object.input'; import { ObjectMetadataGraphqlApiExceptionInterceptor } from 'src/engine/metadata-modules/object-metadata/interceptors/object-metadata-graphql-api-exception.interceptor'; -import { ObjectMetadataServiceV2 } from 'src/engine/metadata-modules/object-metadata/object-metadata-v2.service'; import { ObjectMetadataEntity } from 'src/engine/metadata-modules/object-metadata/object-metadata.entity'; import { ObjectMetadataResolver } from 'src/engine/metadata-modules/object-metadata/object-metadata.resolver'; +import { ObjectMetadataService } from 'src/engine/metadata-modules/object-metadata/object-metadata.service'; import { PermissionsModule } from 'src/engine/metadata-modules/permissions/permissions.module'; import { PermissionsGraphqlApiExceptionFilter } from 'src/engine/metadata-modules/permissions/utils/permissions-graphql-api-exception.filter'; import { RemoteTableRelationsModule } from 'src/engine/metadata-modules/remote-server/remote-table/remote-table-relations/remote-table-relations.module'; @@ -68,7 +68,7 @@ import { WorkspaceMigrationV2Module } from 'src/engine/workspace-manager/workspa WorkspaceManyOrAllFlatEntityMapsCacheModule, ], services: [ - ObjectMetadataServiceV2, + ObjectMetadataService, FlatFieldMetadataValidatorService, FlatFieldMetadataTypeValidatorService, ], @@ -78,7 +78,7 @@ import { WorkspaceMigrationV2Module } from 'src/engine/workspace-manager/workspa DTOClass: ObjectMetadataDTO, CreateDTOClass: CreateObjectInput, UpdateDTOClass: UpdateObjectPayload, - ServiceClass: ObjectMetadataServiceV2, + ServiceClass: ObjectMetadataService, pagingStrategy: PagingStrategies.CURSOR, read: { defaultSort: [{ field: 'id', direction: SortDirection.DESC }], @@ -95,7 +95,7 @@ import { WorkspaceMigrationV2Module } from 'src/engine/workspace-manager/workspa ], }), ], - providers: [ObjectMetadataServiceV2, ObjectMetadataResolver], - exports: [ObjectMetadataServiceV2], + providers: [ObjectMetadataService, ObjectMetadataResolver], + exports: [ObjectMetadataService], }) export class ObjectMetadataModule {} diff --git a/packages/twenty-server/src/engine/metadata-modules/object-metadata/object-metadata.resolver.ts b/packages/twenty-server/src/engine/metadata-modules/object-metadata/object-metadata.resolver.ts index 6bd7010460..10fb1ee149 100644 --- a/packages/twenty-server/src/engine/metadata-modules/object-metadata/object-metadata.resolver.ts +++ b/packages/twenty-server/src/engine/metadata-modules/object-metadata/object-metadata.resolver.ts @@ -24,7 +24,7 @@ import { CreateOneObjectInput } from 'src/engine/metadata-modules/object-metadat import { DeleteOneObjectInput } from 'src/engine/metadata-modules/object-metadata/dtos/delete-object.input'; import { ObjectMetadataDTO } from 'src/engine/metadata-modules/object-metadata/dtos/object-metadata.dto'; import { UpdateOneObjectInput } from 'src/engine/metadata-modules/object-metadata/dtos/update-object.input'; -import { ObjectMetadataServiceV2 } from 'src/engine/metadata-modules/object-metadata/object-metadata-v2.service'; +import { ObjectMetadataService } from 'src/engine/metadata-modules/object-metadata/object-metadata.service'; import { objectMetadataGraphqlApiExceptionHandler } from 'src/engine/metadata-modules/object-metadata/utils/object-metadata-graphql-api-exception-handler.util'; import { resolveObjectMetadataStandardOverride } from 'src/engine/metadata-modules/object-metadata/utils/resolve-object-metadata-standard-override.util'; import { PermissionFlagType } from 'src/engine/metadata-modules/permissions/constants/permission-flag-type.constants'; @@ -39,7 +39,7 @@ import { PermissionsGraphqlApiExceptionFilter } from 'src/engine/metadata-module ) export class ObjectMetadataResolver { constructor( - private readonly objectMetadataServiceV2: ObjectMetadataServiceV2, + private readonly objectMetadataService: ObjectMetadataService, private readonly i18nService: I18nService, ) {} @@ -113,7 +113,7 @@ export class ObjectMetadataResolver { ) { try { const flatobjectMetadata = - await this.objectMetadataServiceV2.createOneObject({ + await this.objectMetadataService.createOneObject({ createObjectInput: input.object, workspaceId, }); @@ -136,7 +136,7 @@ export class ObjectMetadataResolver { ) { try { const flatobjectMetadata = - await this.objectMetadataServiceV2.deleteOneObject({ + await this.objectMetadataService.deleteOneObject({ deleteObjectInput, workspaceId, }); @@ -159,7 +159,7 @@ export class ObjectMetadataResolver { ) { try { const flatobjectMetadata = - await this.objectMetadataServiceV2.updateOneObject({ + await this.objectMetadataService.updateOneObject({ updateObjectInput, workspaceId, }); diff --git a/packages/twenty-server/src/engine/metadata-modules/object-metadata/object-metadata-v2.service.ts b/packages/twenty-server/src/engine/metadata-modules/object-metadata/object-metadata.service.ts similarity index 99% rename from packages/twenty-server/src/engine/metadata-modules/object-metadata/object-metadata-v2.service.ts rename to packages/twenty-server/src/engine/metadata-modules/object-metadata/object-metadata.service.ts index 8c3d3dc600..914230fdc8 100644 --- a/packages/twenty-server/src/engine/metadata-modules/object-metadata/object-metadata-v2.service.ts +++ b/packages/twenty-server/src/engine/metadata-modules/object-metadata/object-metadata.service.ts @@ -36,7 +36,7 @@ import { WorkspaceMigrationValidateBuildAndRunService } from 'src/engine/workspa import { FavoriteWorkspaceEntity } from 'src/modules/favorite/standard-objects/favorite.workspace-entity'; @Injectable() -export class ObjectMetadataServiceV2 extends TypeOrmQueryService { +export class ObjectMetadataService extends TypeOrmQueryService { constructor( @InjectRepository(ObjectMetadataEntity) private readonly objectMetadataRepository: Repository, diff --git a/packages/twenty-server/src/engine/metadata-modules/remote-server/remote-table/remote-table.service.ts b/packages/twenty-server/src/engine/metadata-modules/remote-server/remote-table/remote-table.service.ts index b077b30718..bbad6ed48b 100644 --- a/packages/twenty-server/src/engine/metadata-modules/remote-server/remote-table/remote-table.service.ts +++ b/packages/twenty-server/src/engine/metadata-modules/remote-server/remote-table/remote-table.service.ts @@ -6,9 +6,9 @@ import { plural } from 'pluralize'; import { DataSource, Repository } from 'typeorm'; import { DataSourceService } from 'src/engine/metadata-modules/data-source/data-source.service'; -import { FieldMetadataServiceV2 } from 'src/engine/metadata-modules/field-metadata/services/field-metadata.service-v2'; +import { FieldMetadataService } from 'src/engine/metadata-modules/field-metadata/services/field-metadata.service'; import { FlatFieldMetadata } from 'src/engine/metadata-modules/flat-field-metadata/types/flat-field-metadata.type'; -import { ObjectMetadataServiceV2 } from 'src/engine/metadata-modules/object-metadata/object-metadata-v2.service'; +import { ObjectMetadataService } from 'src/engine/metadata-modules/object-metadata/object-metadata.service'; import { RemoteServerEntity, type RemoteServerType, @@ -55,8 +55,8 @@ export class RemoteTableService { >, private readonly workspaceMetadataVersionService: WorkspaceMetadataVersionService, private readonly dataSourceService: DataSourceService, - private readonly objectMetadataService: ObjectMetadataServiceV2, - private readonly fieldMetadataService: FieldMetadataServiceV2, + private readonly objectMetadataService: ObjectMetadataService, + private readonly fieldMetadataService: FieldMetadataService, private readonly distantTableService: DistantTableService, private readonly foreignTableService: ForeignTableService, private readonly workspaceDataSourceService: WorkspaceDataSourceService, diff --git a/packages/twenty-server/src/engine/workspace-manager/__tests__/workspace-manager.service.spec.ts b/packages/twenty-server/src/engine/workspace-manager/__tests__/workspace-manager.service.spec.ts index 406ed5fa50..2ecbfe4406 100644 --- a/packages/twenty-server/src/engine/workspace-manager/__tests__/workspace-manager.service.spec.ts +++ b/packages/twenty-server/src/engine/workspace-manager/__tests__/workspace-manager.service.spec.ts @@ -12,8 +12,8 @@ import { DataSourceEntity } from 'src/engine/metadata-modules/data-source/data-s import { DataSourceService } from 'src/engine/metadata-modules/data-source/data-source.service'; import { FieldMetadataEntity } from 'src/engine/metadata-modules/field-metadata/field-metadata.entity'; import { WorkspaceManyOrAllFlatEntityMapsCacheService } from 'src/engine/metadata-modules/flat-entity/services/workspace-many-or-all-flat-entity-maps-cache.service'; -import { ObjectMetadataServiceV2 } from 'src/engine/metadata-modules/object-metadata/object-metadata-v2.service'; import { ObjectMetadataEntity } from 'src/engine/metadata-modules/object-metadata/object-metadata.entity'; +import { ObjectMetadataService } from 'src/engine/metadata-modules/object-metadata/object-metadata.service'; import { PermissionsService } from 'src/engine/metadata-modules/permissions/permissions.service'; import { RoleTargetsEntity } from 'src/engine/metadata-modules/role/role-targets.entity'; import { RoleEntity } from 'src/engine/metadata-modules/role/role.entity'; @@ -34,7 +34,7 @@ describe('WorkspaceManagerService', () => { let roleTargetsRepository: Repository; let roleRepository: Repository; let mockDataSource: jest.Mocked; - let objectMetadataServiceV2: ObjectMetadataServiceV2; + let objectMetadataService: ObjectMetadataService; beforeEach(async () => { mockDataSource = { @@ -125,7 +125,7 @@ describe('WorkspaceManagerService', () => { useValue: {}, }, { - provide: ObjectMetadataServiceV2, + provide: ObjectMetadataService, useValue: { deleteWorkspaceAllObjectMetadata: jest.fn(), }, @@ -171,8 +171,8 @@ describe('WorkspaceManagerService', () => { roleRepository = module.get>( getRepositoryToken(RoleEntity), ); - objectMetadataServiceV2 = module.get( - ObjectMetadataServiceV2, + objectMetadataService = module.get( + ObjectMetadataService, ); }); @@ -184,7 +184,7 @@ describe('WorkspaceManagerService', () => { it('should delete all the workspace metadata tables and workspace schema', async () => { await service.delete('workspace-id'); expect( - objectMetadataServiceV2.deleteWorkspaceAllObjectMetadata, + objectMetadataService.deleteWorkspaceAllObjectMetadata, ).toHaveBeenCalled(); expect(workspaceMigrationRepository.delete).toHaveBeenCalledWith({ workspaceId: 'workspace-id', diff --git a/packages/twenty-server/src/engine/workspace-manager/dev-seeder/data/services/dev-seeder-data.service.ts b/packages/twenty-server/src/engine/workspace-manager/dev-seeder/data/services/dev-seeder-data.service.ts index edd78a63c1..b6ba1cd9ab 100644 --- a/packages/twenty-server/src/engine/workspace-manager/dev-seeder/data/services/dev-seeder-data.service.ts +++ b/packages/twenty-server/src/engine/workspace-manager/dev-seeder/data/services/dev-seeder-data.service.ts @@ -10,7 +10,7 @@ import { FeatureFlagKey } from 'src/engine/core-modules/feature-flag/enums/featu import { FileStorageService } from 'src/engine/core-modules/file-storage/file-storage.service'; import { WorkspaceManyOrAllFlatEntityMapsCacheService } from 'src/engine/metadata-modules/flat-entity/services/workspace-many-or-all-flat-entity-maps-cache.service'; import { FlatObjectMetadata } from 'src/engine/metadata-modules/flat-object-metadata/types/flat-object-metadata.type'; -import { ObjectMetadataServiceV2 } from 'src/engine/metadata-modules/object-metadata/object-metadata-v2.service'; +import { ObjectMetadataService } from 'src/engine/metadata-modules/object-metadata/object-metadata.service'; import { type WorkspaceEntityManager } from 'src/engine/twenty-orm/entity-manager/workspace-entity-manager'; import { computeTableName } from 'src/engine/utils/compute-table-name.util'; import { @@ -266,7 +266,7 @@ export class DevSeederDataService { constructor( @InjectDataSource() private readonly coreDataSource: DataSource, - private readonly objectMetadataService: ObjectMetadataServiceV2, + private readonly objectMetadataService: ObjectMetadataService, private readonly timelineActivitySeederService: TimelineActivitySeederService, private readonly fileStorageService: FileStorageService, private readonly flatEntityMapsCacheService: WorkspaceManyOrAllFlatEntityMapsCacheService, diff --git a/packages/twenty-server/src/engine/workspace-manager/dev-seeder/data/services/timeline-activity-seeder.service.ts b/packages/twenty-server/src/engine/workspace-manager/dev-seeder/data/services/timeline-activity-seeder.service.ts index 047e390745..4d3a297287 100644 --- a/packages/twenty-server/src/engine/workspace-manager/dev-seeder/data/services/timeline-activity-seeder.service.ts +++ b/packages/twenty-server/src/engine/workspace-manager/dev-seeder/data/services/timeline-activity-seeder.service.ts @@ -3,7 +3,7 @@ import { Injectable } from '@nestjs/common'; import chunk from 'lodash.chunk'; import { ObjectRecord } from 'twenty-shared/types'; -import { ObjectMetadataServiceV2 } from 'src/engine/metadata-modules/object-metadata/object-metadata-v2.service'; +import { ObjectMetadataService } from 'src/engine/metadata-modules/object-metadata/object-metadata.service'; import { type WorkspaceEntityManager } from 'src/engine/twenty-orm/entity-manager/workspace-entity-manager'; import { CALENDAR_EVENT_DATA_SEEDS } from 'src/engine/workspace-manager/dev-seeder/data/constants/calendar-event-data-seeds.constant'; import { @@ -107,9 +107,7 @@ export class TimelineActivitySeederService { 'message', ]); - constructor( - private readonly objectMetadataService: ObjectMetadataServiceV2, - ) {} + constructor(private readonly objectMetadataService: ObjectMetadataService) {} private getLinkedActivityName(activityType: string): string { // Notes and tasks use the legacy format: linked-{type}.created diff --git a/packages/twenty-server/src/engine/workspace-manager/dev-seeder/metadata/services/dev-seeder-metadata.service.ts b/packages/twenty-server/src/engine/workspace-manager/dev-seeder/metadata/services/dev-seeder-metadata.service.ts index ef79e12307..5bff6ac8b0 100644 --- a/packages/twenty-server/src/engine/workspace-manager/dev-seeder/metadata/services/dev-seeder-metadata.service.ts +++ b/packages/twenty-server/src/engine/workspace-manager/dev-seeder/metadata/services/dev-seeder-metadata.service.ts @@ -7,10 +7,10 @@ import { DataSource } from 'typeorm'; import { FlatApplication } from 'src/engine/core-modules/application/types/flat-application.type'; import { type DataSourceEntity } from 'src/engine/metadata-modules/data-source/data-source.entity'; import { CreateFieldInput } from 'src/engine/metadata-modules/field-metadata/dtos/create-field.input'; -import { FieldMetadataServiceV2 } from 'src/engine/metadata-modules/field-metadata/services/field-metadata.service-v2'; +import { FieldMetadataService } from 'src/engine/metadata-modules/field-metadata/services/field-metadata.service'; import { WorkspaceManyOrAllFlatEntityMapsCacheService } from 'src/engine/metadata-modules/flat-entity/services/workspace-many-or-all-flat-entity-maps-cache.service'; import { buildObjectIdByNameMaps } from 'src/engine/metadata-modules/flat-object-metadata/utils/build-object-id-by-name-maps.util'; -import { ObjectMetadataServiceV2 } from 'src/engine/metadata-modules/object-metadata/object-metadata-v2.service'; +import { ObjectMetadataService } from 'src/engine/metadata-modules/object-metadata/object-metadata.service'; import { SEED_APPLE_WORKSPACE_ID, SEED_YCOMBINATOR_WORKSPACE_ID, @@ -30,8 +30,8 @@ import { prefillCoreViews } from 'src/engine/workspace-manager/standard-objects- @Injectable() export class DevSeederMetadataService { constructor( - private readonly objectMetadataServiceV2: ObjectMetadataServiceV2, - private readonly fieldMetadataServiceV2: FieldMetadataServiceV2, + private readonly objectMetadataService: ObjectMetadataService, + private readonly fieldMetadataService: FieldMetadataService, private readonly flatEntityMapsCacheService: WorkspaceManyOrAllFlatEntityMapsCacheService, @InjectDataSource() private readonly coreDataSource: DataSource, @@ -143,7 +143,7 @@ export class DevSeederMetadataService { workspaceId: string; objectMetadataSeed: ObjectMetadataSeed; }): Promise { - await this.objectMetadataServiceV2.createOneObject({ + await this.objectMetadataService.createOneObject({ createObjectInput: { ...objectMetadataSeed, dataSourceId, @@ -162,7 +162,7 @@ export class DevSeederMetadataService { fieldMetadataSeeds: FieldMetadataSeed[]; }): Promise { const objectMetadata = - await this.objectMetadataServiceV2.findOneWithinWorkspace(workspaceId, { + await this.objectMetadataService.findOneWithinWorkspace(workspaceId, { where: { nameSingular: objectMetadataNameSingular }, }); @@ -176,7 +176,7 @@ export class DevSeederMetadataService { objectMetadataId: objectMetadata.id, })); - await this.fieldMetadataServiceV2.createManyFields({ + await this.fieldMetadataService.createManyFields({ createFieldInputs, workspaceId, }); @@ -259,7 +259,7 @@ export class DevSeederMetadataService { objectIdByNameSingular, }); - await this.fieldMetadataServiceV2.createManyFields({ + await this.fieldMetadataService.createManyFields({ createFieldInputs, workspaceId, }); diff --git a/packages/twenty-server/src/engine/workspace-manager/workspace-manager.service.ts b/packages/twenty-server/src/engine/workspace-manager/workspace-manager.service.ts index aedf8f86bd..0f104615a1 100644 --- a/packages/twenty-server/src/engine/workspace-manager/workspace-manager.service.ts +++ b/packages/twenty-server/src/engine/workspace-manager/workspace-manager.service.ts @@ -11,7 +11,7 @@ import { WorkspaceEntity } from 'src/engine/core-modules/workspace/workspace.ent import { type DataSourceEntity } from 'src/engine/metadata-modules/data-source/data-source.entity'; import { DataSourceService } from 'src/engine/metadata-modules/data-source/data-source.service'; import { WorkspaceManyOrAllFlatEntityMapsCacheService } from 'src/engine/metadata-modules/flat-entity/services/workspace-many-or-all-flat-entity-maps-cache.service'; -import { ObjectMetadataServiceV2 } from 'src/engine/metadata-modules/object-metadata/object-metadata-v2.service'; +import { ObjectMetadataService } from 'src/engine/metadata-modules/object-metadata/object-metadata.service'; import { RoleTargetsEntity } from 'src/engine/metadata-modules/role/role-targets.entity'; import { RoleEntity } from 'src/engine/metadata-modules/role/role.entity'; import { RoleService } from 'src/engine/metadata-modules/role/role.service'; @@ -33,7 +33,7 @@ export class WorkspaceManagerService { private readonly coreDataSource: DataSource, private readonly workspaceDataSourceService: WorkspaceDataSourceService, private readonly workspaceMigrationService: WorkspaceMigrationService, - private readonly objectMetadataServiceV2: ObjectMetadataServiceV2, + private readonly objectMetadataService: ObjectMetadataService, private readonly dataSourceService: DataSourceService, private readonly workspaceSyncMetadataService: WorkspaceSyncMetadataService, @InjectRepository(UserWorkspaceEntity) @@ -171,7 +171,7 @@ export class WorkspaceManagerService { workspaceId, }); - await this.objectMetadataServiceV2.deleteWorkspaceAllObjectMetadata({ + await this.objectMetadataService.deleteWorkspaceAllObjectMetadata({ workspaceId, }); diff --git a/packages/twenty-server/test/integration/metadata/suites/agent/utils/agent-tool-test-utils.ts b/packages/twenty-server/test/integration/metadata/suites/agent/utils/agent-tool-test-utils.ts index 24c7bc6e2b..963602edf4 100644 --- a/packages/twenty-server/test/integration/metadata/suites/agent/utils/agent-tool-test-utils.ts +++ b/packages/twenty-server/test/integration/metadata/suites/agent/utils/agent-tool-test-utils.ts @@ -19,8 +19,8 @@ import { AgentToolGeneratorService } from 'src/engine/metadata-modules/ai/ai-age import { ToolAdapterService } from 'src/engine/metadata-modules/ai/ai-tools/services/tool-adapter.service'; import { ToolService } from 'src/engine/metadata-modules/ai/ai-tools/services/tool.service'; import { WorkspaceManyOrAllFlatEntityMapsCacheService } from 'src/engine/metadata-modules/flat-entity/services/workspace-many-or-all-flat-entity-maps-cache.service'; -import { ObjectMetadataServiceV2 } from 'src/engine/metadata-modules/object-metadata/object-metadata-v2.service'; import { type ObjectMetadataEntity } from 'src/engine/metadata-modules/object-metadata/object-metadata.entity'; +import { ObjectMetadataService } from 'src/engine/metadata-modules/object-metadata/object-metadata.service'; import { PermissionsService } from 'src/engine/metadata-modules/permissions/permissions.service'; import { RoleEntity } from 'src/engine/metadata-modules/role/role.entity'; import { WorkspacePermissionsCacheService } from 'src/engine/metadata-modules/workspace-permissions-cache/workspace-permissions-cache.service'; @@ -34,7 +34,7 @@ export interface AgentToolTestContext { module: TestingModule; agentToolService: AgentToolGeneratorService; agentService: AgentService; - objectMetadataService: ObjectMetadataServiceV2; + objectMetadataService: ObjectMetadataService; roleRepository: Repository; workspacePermissionsCacheService: WorkspacePermissionsCacheService; twentyORMGlobalManager: TwentyORMGlobalManager; @@ -76,7 +76,7 @@ export const createAgentToolTestModule = }, }, { - provide: ObjectMetadataServiceV2, + provide: ObjectMetadataService, useValue: { findManyWithinWorkspace: jest.fn(), findOneWithinWorkspace: jest.fn(), @@ -199,8 +199,8 @@ export const createAgentToolTestModule = AgentToolGeneratorService, ); const agentService = module.get(AgentService); - const objectMetadataService = module.get( - ObjectMetadataServiceV2, + const objectMetadataService = module.get( + ObjectMetadataService, ); const roleRepository = module.get>( getRepositoryToken(RoleEntity),