diff --git a/packages/twenty-server/jest.config.ts b/packages/twenty-server/jest.config.ts index 53d10fd3ec7..2a5ea0df632 100644 --- a/packages/twenty-server/jest.config.ts +++ b/packages/twenty-server/jest.config.ts @@ -4,7 +4,7 @@ module.exports = { clearMocks: true, preset: 'ts-jest', testEnvironment: 'node', - + modulePathIgnorePatterns: ['/dist'], moduleFileExtensions: ['js', 'json', 'ts'], moduleNameMapper: { '^src/(.*)': '/src/$1', diff --git a/packages/twenty-server/package.json b/packages/twenty-server/package.json index 79f40dc71f2..5330a9569bc 100644 --- a/packages/twenty-server/package.json +++ b/packages/twenty-server/package.json @@ -28,8 +28,8 @@ "database:seed:dev": "npx nx command -- workspace:seed:dev", "database:seed:demo": "npx nx command -- workspace:seed:demo", "database:reset": "npx nx database:truncate && npx nx database:init", - "command": "node dist/src/command", - "queue:work": "node dist/src/queue-worker" + "command": "node dist/src/command/command", + "queue:work": "node dist/src/queue-worker/queue-worker" }, "dependencies": { "@graphql-yoga/nestjs": "patch:@graphql-yoga/nestjs@2.1.0#./patches/@graphql-yoga+nestjs+2.1.0.patch", diff --git a/packages/twenty-server/project.json b/packages/twenty-server/project.json index c3e44979982..358c38cb503 100644 --- a/packages/twenty-server/project.json +++ b/packages/twenty-server/project.json @@ -22,7 +22,7 @@ ], "options": { "cwd": "packages/twenty-server", - "command": "node dist/src/command.js" + "command": "node dist/src/command/command.js" } }, "test:debug": { diff --git a/packages/twenty-server/src/api/rest/api-rest-query-builder/factories/factories.ts b/packages/twenty-server/src/api/rest/api-rest-query-builder/factories/factories.ts deleted file mode 100644 index e6f4f822f65..00000000000 --- a/packages/twenty-server/src/api/rest/api-rest-query-builder/factories/factories.ts +++ /dev/null @@ -1,29 +0,0 @@ -import { DeleteQueryFactory } from 'src/api/rest/api-rest-query-builder/factories/delete-query.factory'; -import { CreateQueryFactory } from 'src/api/rest/api-rest-query-builder/factories/create-query.factory'; -import { UpdateQueryFactory } from 'src/api/rest/api-rest-query-builder/factories/update-query.factory'; -import { FindOneQueryFactory } from 'src/api/rest/api-rest-query-builder/factories/find-one-query.factory'; -import { FindManyQueryFactory } from 'src/api/rest/api-rest-query-builder/factories/find-many-query.factory'; -import { DeleteVariablesFactory } from 'src/api/rest/api-rest-query-builder/factories/delete-variables.factory'; -import { CreateVariablesFactory } from 'src/api/rest/api-rest-query-builder/factories/create-variables.factory'; -import { UpdateVariablesFactory } from 'src/api/rest/api-rest-query-builder/factories/update-variables.factory'; -import { GetVariablesFactory } from 'src/api/rest/api-rest-query-builder/factories/get-variables.factory'; -import { LastCursorInputFactory } from 'src/api/rest/api-rest-query-builder/factories/input-factories/last-cursor-input.factory'; -import { LimitInputFactory } from 'src/api/rest/api-rest-query-builder/factories/input-factories/limit-input.factory'; -import { OrderByInputFactory } from 'src/api/rest/api-rest-query-builder/factories/input-factories/order-by-input.factory'; -import { FilterInputFactory } from 'src/api/rest/api-rest-query-builder/factories/input-factories/filter-input.factory'; - -export const apiRestQueryBuilderFactories = [ - DeleteQueryFactory, - CreateQueryFactory, - UpdateQueryFactory, - FindOneQueryFactory, - FindManyQueryFactory, - DeleteVariablesFactory, - CreateVariablesFactory, - UpdateVariablesFactory, - GetVariablesFactory, - LastCursorInputFactory, - LimitInputFactory, - OrderByInputFactory, - FilterInputFactory, -]; diff --git a/packages/twenty-server/src/api/rest/api-rest-query-builder/factories/input-factories/filter-input.factory.ts b/packages/twenty-server/src/api/rest/api-rest-query-builder/factories/input-factories/filter-input.factory.ts deleted file mode 100644 index 355ccce52cb..00000000000 --- a/packages/twenty-server/src/api/rest/api-rest-query-builder/factories/input-factories/filter-input.factory.ts +++ /dev/null @@ -1,25 +0,0 @@ -import { Injectable } from '@nestjs/common'; - -import { Request } from 'express'; - -import { addDefaultConjunctionIfMissing } from 'src/api/rest/api-rest-query-builder/factories/input-factories/filter-utils/add-default-conjunction.utils'; -import { checkFilterQuery } from 'src/api/rest/api-rest-query-builder/factories/input-factories/filter-utils/check-filter-query.utils'; -import { parseFilter } from 'src/api/rest/api-rest-query-builder/factories/input-factories/filter-utils/parse-filter.utils'; -import { FieldValue } from 'src/api/rest/types/api-rest-field-value.type'; - -@Injectable() -export class FilterInputFactory { - create(request: Request, objectMetadata): Record { - let filterQuery = request.query.filter; - - if (typeof filterQuery !== 'string') { - return {}; - } - - checkFilterQuery(filterQuery); - - filterQuery = addDefaultConjunctionIfMissing(filterQuery); - - return parseFilter(filterQuery, objectMetadata.objectMetadataItem); - } -} diff --git a/packages/twenty-server/src/api/rest/api-rest-query-builder/utils/__tests__/map-field-metadata-to-graphql-query.utils.spec.ts b/packages/twenty-server/src/api/rest/api-rest-query-builder/utils/__tests__/map-field-metadata-to-graphql-query.utils.spec.ts deleted file mode 100644 index d4ce695a191..00000000000 --- a/packages/twenty-server/src/api/rest/api-rest-query-builder/utils/__tests__/map-field-metadata-to-graphql-query.utils.spec.ts +++ /dev/null @@ -1,35 +0,0 @@ -import { - fieldCurrency, - fieldLink, - fieldNumber, - fieldString, - objectMetadataItem, -} from 'src/utils/utils-test/object-metadata-item'; -import { mapFieldMetadataToGraphqlQuery } from 'src/api/rest/api-rest-query-builder/utils/map-field-metadata-to-graphql-query.utils'; - -describe('mapFieldMetadataToGraphqlQuery', () => { - it('should map properly', () => { - expect( - mapFieldMetadataToGraphqlQuery(objectMetadataItem, fieldNumber), - ).toEqual('fieldNumber'); - expect( - mapFieldMetadataToGraphqlQuery(objectMetadataItem, fieldString), - ).toEqual('fieldString'); - expect(mapFieldMetadataToGraphqlQuery(objectMetadataItem, fieldLink)) - .toEqual(` - fieldLink - { - label - url - } - `); - expect(mapFieldMetadataToGraphqlQuery(objectMetadataItem, fieldCurrency)) - .toEqual(` - fieldCurrency - { - amountMicros - currencyCode - } - `); - }); -}); diff --git a/packages/twenty-server/src/api/rest/api-rest.module.ts b/packages/twenty-server/src/api/rest/api-rest.module.ts deleted file mode 100644 index 6e337129479..00000000000 --- a/packages/twenty-server/src/api/rest/api-rest.module.ts +++ /dev/null @@ -1,17 +0,0 @@ -import { Module } from '@nestjs/common'; -import { HttpModule } from '@nestjs/axios'; - -import { ApiRestController } from 'src/api/rest/api-rest.controller'; -import { ApiRestService } from 'src/api/rest/api-rest.service'; -import { ApiRestQueryBuilderModule } from 'src/api/rest/api-rest-query-builder/api-rest-query-builder.module'; -import { AuthModule } from 'src/engine/modules/auth/auth.module'; -import { ApiRestMetadataController } from 'src/api/rest/metadata-rest.controller'; -import { ApiRestMetadataService } from 'src/api/rest/metadata-rest.service'; - -@Module({ - imports: [ApiRestQueryBuilderModule, AuthModule, HttpModule], - controllers: [ApiRestMetadataController, ApiRestController], - providers: [ApiRestMetadataService, ApiRestService], - exports: [ApiRestMetadataService], -}) -export class ApiRestModule {} diff --git a/packages/twenty-server/src/app.module.ts b/packages/twenty-server/src/app.module.ts index dbc019e2944..04025def2de 100644 --- a/packages/twenty-server/src/app.module.ts +++ b/packages/twenty-server/src/app.module.ts @@ -9,12 +9,12 @@ import { join } from 'path'; import { YogaDriver, YogaDriverConfig } from '@graphql-yoga/nestjs'; import { GraphQLConfigService } from 'src/engine-graphql-config/graphql-config.service'; -import { ApiRestModule } from 'src/api/rest/api-rest.module'; -import { BusinessModule } from 'src/business/modules/business.module'; +import { ApiRestModule } from 'src/engine/api/rest/api-rest.module'; +import { ModulesModule } from 'src/modules/modules.module'; -import { FoundationModule } from './engine/modules/foundation.module'; -import { IntegrationsModule } from './integrations/integrations.module'; -import { WorkspaceModule } from './engine/graphql/workspace.module'; +import { EngineModulesModule } from './engine/modules/engine-modules.module'; +import { IntegrationsModule } from './engine/integrations/integrations.module'; +import { CoreGraphqlApiModule } from './engine/api/graphql/core-graphql-api.module'; import { GraphQLConfigModule } from './engine-graphql-config/graphql-config.module'; @Module({ @@ -27,14 +27,14 @@ import { GraphQLConfigModule } from './engine-graphql-config/graphql-config.modu }), GraphQLModule.forRootAsync({ driver: YogaDriver, - imports: [FoundationModule, GraphQLConfigModule], + imports: [EngineModulesModule, GraphQLConfigModule], useClass: GraphQLConfigService, }), IntegrationsModule, - FoundationModule, - BusinessModule, + EngineModulesModule, + ModulesModule, ApiRestModule, - WorkspaceModule, + CoreGraphqlApiModule, ...AppModule.getConditionalModules(), ], }) diff --git a/packages/twenty-server/src/business/modules/business.module.ts b/packages/twenty-server/src/business/modules/business.module.ts deleted file mode 100644 index d3e41e2c35a..00000000000 --- a/packages/twenty-server/src/business/modules/business.module.ts +++ /dev/null @@ -1,11 +0,0 @@ -import { Module } from '@nestjs/common'; - -import { CalendarModule } from 'src/business/modules/calendar/calendar.module'; -import { MessagingModule } from 'src/business/modules/message/messaging.module'; - -@Module({ - imports: [MessagingModule, CalendarModule], - providers: [], - exports: [], -}) -export class BusinessModule {} diff --git a/packages/twenty-server/src/business/modules/calendar/calendar.module.ts b/packages/twenty-server/src/business/modules/calendar/calendar.module.ts deleted file mode 100644 index be3037d1392..00000000000 --- a/packages/twenty-server/src/business/modules/calendar/calendar.module.ts +++ /dev/null @@ -1,41 +0,0 @@ -import { Module } from '@nestjs/common'; -import { TypeOrmModule } from '@nestjs/typeorm'; - -import { FeatureFlagEntity } from 'src/engine/modules/feature-flag/feature-flag.entity'; -import { EnvironmentModule } from 'src/integrations/environment/environment.module'; -import { CreateCompaniesAndContactsModule } from 'src/engine-workspace/auto-companies-and-contacts-creation/create-company-and-contact/create-company-and-contact.module'; -import { BlocklistModule } from 'src/business/modules/calendar-and-messaging/repositories/blocklist/blocklist.module'; -import { ConnectedAccountModule } from 'src/business/modules/calendar-and-messaging/repositories/connected-account/connected-account.module'; -import { CalendarChannelEventAssociationModule } from 'src/business/modules/calendar/repositories/calendar-channel-event-association/calendar-channel-event-assocation.module'; -import { CalendarChannelModule } from 'src/business/modules/calendar/repositories/calendar-channel/calendar-channel.module'; -import { CalendarEventAttendeeModule } from 'src/business/modules/calendar/repositories/calendar-event-attendee/calendar-event-attendee.module'; -import { CalendarEventModule } from 'src/business/modules/calendar/repositories/calendar-event/calendar-event.module'; -import { CalendarEventCleanerModule } from 'src/business/modules/calendar/services/calendar-event-cleaner/calendar-event-cleaner.module'; -import { GoogleCalendarFullSyncService } from 'src/business/modules/calendar/services/google-calendar-full-sync.service'; -import { GoogleCalendarClientProvider } from 'src/business/modules/calendar/services/providers/google-calendar/google-calendar.provider'; -import { CompanyModule } from 'src/business/modules/message/repositories/company/company.module'; -import { PersonModule } from 'src/engine-workspace/repositories/person/person.module'; -import { WorkspaceMemberModule } from 'src/engine-workspace/repositories/workspace-member/workspace-member.module'; -import { WorkspaceDataSourceModule } from 'src/engine/workspace-datasource/workspace-datasource.module'; - -@Module({ - imports: [ - EnvironmentModule, - WorkspaceDataSourceModule, - ConnectedAccountModule, - CalendarChannelModule, - CalendarChannelEventAssociationModule, - CalendarEventModule, - CalendarEventAttendeeModule, - CreateCompaniesAndContactsModule, - WorkspaceMemberModule, - TypeOrmModule.forFeature([FeatureFlagEntity], 'core'), - CompanyModule, - PersonModule, - BlocklistModule, - CalendarEventCleanerModule, - ], - providers: [GoogleCalendarFullSyncService, GoogleCalendarClientProvider], - exports: [GoogleCalendarFullSyncService], -}) -export class CalendarModule {} diff --git a/packages/twenty-server/src/business/modules/calendar/services/providers/calendar-providers.module.ts b/packages/twenty-server/src/business/modules/calendar/services/providers/calendar-providers.module.ts deleted file mode 100644 index 49b3cc4ab34..00000000000 --- a/packages/twenty-server/src/business/modules/calendar/services/providers/calendar-providers.module.ts +++ /dev/null @@ -1,11 +0,0 @@ -import { Module } from '@nestjs/common'; - -import { EnvironmentModule } from 'src/integrations/environment/environment.module'; -import { GoogleCalendarClientProvider } from 'src/business/modules/calendar/services/providers/google-calendar/google-calendar.provider'; - -@Module({ - imports: [EnvironmentModule], - providers: [GoogleCalendarClientProvider], - exports: [GoogleCalendarClientProvider], -}) -export class CalendarProvidersModule {} diff --git a/packages/twenty-server/src/business/modules/message/messaging.module.ts b/packages/twenty-server/src/business/modules/message/messaging.module.ts deleted file mode 100644 index e42a706d6a1..00000000000 --- a/packages/twenty-server/src/business/modules/message/messaging.module.ts +++ /dev/null @@ -1,76 +0,0 @@ -import { Module } from '@nestjs/common'; -import { TypeOrmModule } from '@nestjs/typeorm'; -import { HttpModule } from '@nestjs/axios'; - -import { ConnectedAccountModule } from 'src/business/modules/calendar-and-messaging/repositories/connected-account/connected-account.module'; -import { MessageChannelMessageAssociationModule } from 'src/business/modules/message/repositories/message-channel-message-association/message-channel-message-assocation.module'; -import { MessageChannelModule } from 'src/business/modules/message/repositories/message-channel/message-channel.module'; -import { MessageThreadModule } from 'src/business/modules/message/repositories/message-thread/message-thread.module'; -import { EnvironmentModule } from 'src/integrations/environment/environment.module'; -import { MessagingPersonListener } from 'src/business/modules/message/listeners/messaging-person.listener'; -import { MessageModule } from 'src/business/modules/message/repositories/message/message.module'; -import { GmailClientProvider } from 'src/business/modules/message/services/providers/gmail/gmail-client.provider'; -import { CreateContactService } from 'src/engine-workspace/auto-companies-and-contacts-creation/create-contact/create-contact.service'; -import { CreateCompanyService } from 'src/engine-workspace/auto-companies-and-contacts-creation/create-company/create-company.service'; -import { FetchMessagesByBatchesService } from 'src/business/modules/message/services/fetch-messages-by-batches.service'; -import { GmailFullSyncService } from 'src/business/modules/message/services/gmail-full-sync.service'; -import { GmailPartialSyncService } from 'src/business/modules/message/services/gmail-partial-sync.service'; -import { GoogleAPIsRefreshAccessTokenService } from 'src/business/modules/calendar-and-messaging/services/google-apis-refresh-access-token.service'; -import { WorkspaceDataSourceModule } from 'src/engine/workspace-datasource/workspace-datasource.module'; -import { MessageParticipantModule } from 'src/business/modules/message/repositories/message-participant/message-participant.module'; -import { MessagingWorkspaceMemberListener } from 'src/business/modules/message/listeners/messaging-workspace-member.listener'; -import { MessagingMessageChannelListener } from 'src/business/modules/message/listeners/messaging-message-channel.listener'; -import { MessageService } from 'src/business/modules/message/repositories/message/message.service'; -import { WorkspaceMemberModule } from 'src/engine-workspace/repositories/workspace-member/workspace-member.module'; -import { FeatureFlagEntity } from 'src/engine/modules/feature-flag/feature-flag.entity'; -import { CreateCompaniesAndContactsModule } from 'src/engine-workspace/auto-companies-and-contacts-creation/create-company-and-contact/create-company-and-contact.module'; -import { CompanyModule } from 'src/business/modules/message/repositories/company/company.module'; -import { PersonModule } from 'src/engine-workspace/repositories/person/person.module'; -import { SaveMessagesAndCreateContactsService } from 'src/business/modules/message/services/save-messages-and-create-contacts.service'; -import { MessagingConnectedAccountListener } from 'src/business/modules/message/listeners/messaging-connected-account.listener'; -import { BlocklistModule } from 'src/business/modules/calendar-and-messaging/repositories/blocklist/blocklist.module'; -import { FetchByBatchesService } from 'src/business/modules/message/services/fetch-by-batch.service'; -@Module({ - imports: [ - EnvironmentModule, - WorkspaceDataSourceModule, - ConnectedAccountModule, - MessageChannelModule, - MessageChannelMessageAssociationModule, - MessageModule, - MessageThreadModule, - MessageParticipantModule, - CreateCompaniesAndContactsModule, - WorkspaceMemberModule, - TypeOrmModule.forFeature([FeatureFlagEntity], 'core'), - CompanyModule, - PersonModule, - BlocklistModule, - HttpModule.register({ - baseURL: 'https://www.googleapis.com/batch/gmail/v1', - }), - ], - providers: [ - GmailFullSyncService, - GmailPartialSyncService, - FetchMessagesByBatchesService, - GoogleAPIsRefreshAccessTokenService, - GmailClientProvider, - CreateContactService, - CreateCompanyService, - MessagingPersonListener, - MessagingWorkspaceMemberListener, - MessagingMessageChannelListener, - MessageService, - SaveMessagesAndCreateContactsService, - MessagingConnectedAccountListener, - FetchByBatchesService, - ], - exports: [ - GmailPartialSyncService, - GmailFullSyncService, - GoogleAPIsRefreshAccessTokenService, - FetchByBatchesService, - ], -}) -export class MessagingModule {} diff --git a/packages/twenty-server/src/business/modules/message/query-hooks/messaging-query-hook.module.ts b/packages/twenty-server/src/business/modules/message/query-hooks/messaging-query-hook.module.ts deleted file mode 100644 index 14293b38c61..00000000000 --- a/packages/twenty-server/src/business/modules/message/query-hooks/messaging-query-hook.module.ts +++ /dev/null @@ -1,28 +0,0 @@ -import { Module } from '@nestjs/common'; - -import { MessageFindManyPreQueryHook } from 'src/business/modules/message/query-hooks/message/message-find-many.pre-query.hook'; -import { MessageFindOnePreQueryHook } from 'src/business/modules/message/query-hooks/message/message-find-one.pre-query-hook'; -import { ConnectedAccountModule } from 'src/business/modules/calendar-and-messaging/repositories/connected-account/connected-account.module'; -import { MessageChannelMessageAssociationModule } from 'src/business/modules/message/repositories/message-channel-message-association/message-channel-message-assocation.module'; -import { MessageChannelModule } from 'src/business/modules/message/repositories/message-channel/message-channel.module'; -import { WorkspaceMemberModule } from 'src/engine-workspace/repositories/workspace-member/workspace-member.module'; - -@Module({ - imports: [ - MessageChannelMessageAssociationModule, - MessageChannelModule, - ConnectedAccountModule, - WorkspaceMemberModule, - ], - providers: [ - { - provide: MessageFindOnePreQueryHook.name, - useClass: MessageFindOnePreQueryHook, - }, - { - provide: MessageFindManyPreQueryHook.name, - useClass: MessageFindManyPreQueryHook, - }, - ], -}) -export class MessagingQueryHookModule {} diff --git a/packages/twenty-server/src/business/modules/message/repositories/message/message.module.ts b/packages/twenty-server/src/business/modules/message/repositories/message/message.module.ts deleted file mode 100644 index cfe909ae7c1..00000000000 --- a/packages/twenty-server/src/business/modules/message/repositories/message/message.module.ts +++ /dev/null @@ -1,23 +0,0 @@ -import { Module, forwardRef } from '@nestjs/common'; - -import { MessageChannelModule } from 'src/business/modules/message/repositories/message-channel/message-channel.module'; -import { MessageChannelMessageAssociationModule } from 'src/business/modules/message/repositories/message-channel-message-association/message-channel-message-assocation.module'; -import { MessageParticipantModule } from 'src/business/modules/message/repositories/message-participant/message-participant.module'; -import { MessageThreadModule } from 'src/business/modules/message/repositories/message-thread/message-thread.module'; -import { MessageService } from 'src/business/modules/message/repositories/message/message.service'; -import { WorkspaceDataSourceModule } from 'src/engine/workspace-datasource/workspace-datasource.module'; -import { CreateCompaniesAndContactsModule } from 'src/engine-workspace/auto-companies-and-contacts-creation/create-company-and-contact/create-company-and-contact.module'; - -@Module({ - imports: [ - WorkspaceDataSourceModule, - forwardRef(() => MessageThreadModule), - MessageParticipantModule, - MessageChannelMessageAssociationModule, - MessageChannelModule, - CreateCompaniesAndContactsModule, - ], - providers: [MessageService], - exports: [MessageService], -}) -export class MessageModule {} diff --git a/packages/twenty-server/src/business/modules/message/services/providers/messaging-providers.module.ts b/packages/twenty-server/src/business/modules/message/services/providers/messaging-providers.module.ts deleted file mode 100644 index cbe4c1c0fb9..00000000000 --- a/packages/twenty-server/src/business/modules/message/services/providers/messaging-providers.module.ts +++ /dev/null @@ -1,11 +0,0 @@ -import { Module } from '@nestjs/common'; - -import { EnvironmentModule } from 'src/integrations/environment/environment.module'; -import { GmailClientProvider } from 'src/business/modules/message/services/providers/gmail/gmail-client.provider'; - -@Module({ - imports: [EnvironmentModule], - providers: [GmailClientProvider], - exports: [GmailClientProvider], -}) -export class MessagingProvidersModule {} diff --git a/packages/twenty-server/src/commands/command-logger.ts b/packages/twenty-server/src/command/command-logger.ts similarity index 100% rename from packages/twenty-server/src/commands/command-logger.ts rename to packages/twenty-server/src/command/command-logger.ts diff --git a/packages/twenty-server/src/command.module.ts b/packages/twenty-server/src/command/command.module.ts similarity index 53% rename from packages/twenty-server/src/command.module.ts rename to packages/twenty-server/src/command/command.module.ts index 4ed9b4d4eb7..6926124aa1b 100644 --- a/packages/twenty-server/src/command.module.ts +++ b/packages/twenty-server/src/command/command.module.ts @@ -1,15 +1,13 @@ import { Module } from '@nestjs/common'; import { DatabaseCommandModule } from 'src/database/commands/database-command.module'; -import { FetchWorkspaceMessagesCommandsModule } from 'src/business/modules/message/commands/fetch-workspace-messages-commands.module'; +import { FetchWorkspaceMessagesCommandsModule } from 'src/modules/messaging/commands/fetch-workspace-messages-commands.module'; import { WorkspaceHealthCommandModule } from 'src/engine/workspace-manager/workspace-health/commands/workspace-health-command.module'; import { WorkspaceCleanerModule } from 'src/engine/workspace-manager/workspace-cleaner/workspace-cleaner.module'; -import { WorkspaceCalendarSyncCommandsModule } from 'src/business/modules/calendar/commands/workspace-calendar-sync-commands.module'; - -import { AppModule } from './app.module'; - -import { WorkspaceSyncMetadataCommandsModule } from './engine/workspace-manager/workspace-sync-metadata/commands/workspace-sync-metadata-commands.module'; -import { WorkspaceMigrationRunnerCommandsModule } from './engine/workspace-manager/workspace-migration-runner/commands/workspace-sync-metadata-commands.module'; +import { WorkspaceCalendarSyncCommandsModule } from 'src/modules/calendar/commands/workspace-calendar-sync-commands.module'; +import { AppModule } from 'src/app.module'; +import { WorkspaceMigrationRunnerCommandsModule } from 'src/engine/workspace-manager/workspace-migration-runner/commands/workspace-sync-metadata-commands.module'; +import { WorkspaceSyncMetadataCommandsModule } from 'src/engine/workspace-manager/workspace-sync-metadata/commands/workspace-sync-metadata-commands.module'; @Module({ imports: [ diff --git a/packages/twenty-server/src/command.ts b/packages/twenty-server/src/command/command.ts similarity index 73% rename from packages/twenty-server/src/command.ts rename to packages/twenty-server/src/command/command.ts index 5281c14c8f3..bf1774bbe3e 100644 --- a/packages/twenty-server/src/command.ts +++ b/packages/twenty-server/src/command/command.ts @@ -1,10 +1,10 @@ import { CommandFactory } from 'nest-commander'; -import { CommandModule } from './command.module'; +import { filterException } from 'src/engine/filters/utils/global-exception-handler.util'; +import { ExceptionHandlerService } from 'src/engine/integrations/exception-handler/exception-handler.service'; +import { LoggerService } from 'src/engine/integrations/logger/logger.service'; -import { LoggerService } from './integrations/logger/logger.service'; -import { ExceptionHandlerService } from './integrations/exception-handler/exception-handler.service'; -import { filterException } from './engine/filters/utils/global-exception-handler.util'; +import { CommandModule } from './command.module'; async function bootstrap() { const errorHandler = (err: Error) => { diff --git a/packages/twenty-server/src/database/commands/data-seed-demo-workspace/crons/start-data-seed-demo-workspace.cron.command.ts b/packages/twenty-server/src/database/commands/data-seed-demo-workspace/crons/start-data-seed-demo-workspace.cron.command.ts index cfc1196e262..1bcf5c58d7f 100644 --- a/packages/twenty-server/src/database/commands/data-seed-demo-workspace/crons/start-data-seed-demo-workspace.cron.command.ts +++ b/packages/twenty-server/src/database/commands/data-seed-demo-workspace/crons/start-data-seed-demo-workspace.cron.command.ts @@ -4,8 +4,8 @@ import { Command, CommandRunner } from 'nest-commander'; import { dataSeedDemoWorkspaceCronPattern } from 'src/database/commands/data-seed-demo-workspace/crons/data-seed-demo-workspace-cron-pattern'; import { DataSeedDemoWorkspaceJob } from 'src/database/commands/data-seed-demo-workspace/jobs/data-seed-demo-workspace.job'; -import { MessageQueue } from 'src/integrations/message-queue/message-queue.constants'; -import { MessageQueueService } from 'src/integrations/message-queue/services/message-queue.service'; +import { MessageQueue } from 'src/engine/integrations/message-queue/message-queue.constants'; +import { MessageQueueService } from 'src/engine/integrations/message-queue/services/message-queue.service'; @Command({ name: 'workspace-seed-demo:cron:start', diff --git a/packages/twenty-server/src/database/commands/data-seed-demo-workspace/crons/stop-data-seed-demo-workspace.cron.command.ts b/packages/twenty-server/src/database/commands/data-seed-demo-workspace/crons/stop-data-seed-demo-workspace.cron.command.ts index 844424a0f29..84cd4a28df1 100644 --- a/packages/twenty-server/src/database/commands/data-seed-demo-workspace/crons/stop-data-seed-demo-workspace.cron.command.ts +++ b/packages/twenty-server/src/database/commands/data-seed-demo-workspace/crons/stop-data-seed-demo-workspace.cron.command.ts @@ -4,8 +4,8 @@ import { Command, CommandRunner } from 'nest-commander'; import { dataSeedDemoWorkspaceCronPattern } from 'src/database/commands/data-seed-demo-workspace/crons/data-seed-demo-workspace-cron-pattern'; import { DataSeedDemoWorkspaceJob } from 'src/database/commands/data-seed-demo-workspace/jobs/data-seed-demo-workspace.job'; -import { MessageQueue } from 'src/integrations/message-queue/message-queue.constants'; -import { MessageQueueService } from 'src/integrations/message-queue/services/message-queue.service'; +import { MessageQueue } from 'src/engine/integrations/message-queue/message-queue.constants'; +import { MessageQueueService } from 'src/engine/integrations/message-queue/services/message-queue.service'; @Command({ name: 'workspace-seed-demo:cron:stop', diff --git a/packages/twenty-server/src/database/commands/data-seed-demo-workspace/data-seed-demo-workspace.module.ts b/packages/twenty-server/src/database/commands/data-seed-demo-workspace/data-seed-demo-workspace.module.ts index 1a3bc3e2ee7..10d644c03f4 100644 --- a/packages/twenty-server/src/database/commands/data-seed-demo-workspace/data-seed-demo-workspace.module.ts +++ b/packages/twenty-server/src/database/commands/data-seed-demo-workspace/data-seed-demo-workspace.module.ts @@ -1,6 +1,6 @@ import { Module } from '@nestjs/common'; -import { EnvironmentModule } from 'src/integrations/environment/environment.module'; +import { EnvironmentModule } from 'src/engine/integrations/environment/environment.module'; import { WorkspaceManagerModule } from 'src/engine/workspace-manager/workspace-manager.module'; import { DataSeedDemoWorkspaceService } from 'src/database/commands/data-seed-demo-workspace/services/data-seed-demo-workspace.service'; diff --git a/packages/twenty-server/src/database/commands/data-seed-demo-workspace/jobs/data-seed-demo-workspace.job.ts b/packages/twenty-server/src/database/commands/data-seed-demo-workspace/jobs/data-seed-demo-workspace.job.ts index f4e33fa20ed..e7b963d6200 100644 --- a/packages/twenty-server/src/database/commands/data-seed-demo-workspace/jobs/data-seed-demo-workspace.job.ts +++ b/packages/twenty-server/src/database/commands/data-seed-demo-workspace/jobs/data-seed-demo-workspace.job.ts @@ -1,6 +1,6 @@ import { Injectable } from '@nestjs/common'; -import { MessageQueueJob } from 'src/integrations/message-queue/interfaces/message-queue-job.interface'; +import { MessageQueueJob } from 'src/engine/integrations/message-queue/interfaces/message-queue-job.interface'; import { DataSeedDemoWorkspaceService } from 'src/database/commands/data-seed-demo-workspace/services/data-seed-demo-workspace.service'; diff --git a/packages/twenty-server/src/database/commands/data-seed-demo-workspace/services/data-seed-demo-workspace.service.ts b/packages/twenty-server/src/database/commands/data-seed-demo-workspace/services/data-seed-demo-workspace.service.ts index fbf959cd10b..adc84e67789 100644 --- a/packages/twenty-server/src/database/commands/data-seed-demo-workspace/services/data-seed-demo-workspace.service.ts +++ b/packages/twenty-server/src/database/commands/data-seed-demo-workspace/services/data-seed-demo-workspace.service.ts @@ -2,7 +2,7 @@ import { Injectable } from '@nestjs/common'; import { DataSource } from 'typeorm'; -import { EnvironmentService } from 'src/integrations/environment/environment.service'; +import { EnvironmentService } from 'src/engine/integrations/environment/environment.service'; import { WorkspaceManagerService } from 'src/engine/workspace-manager/workspace-manager.service'; import { deleteCoreSchema, diff --git a/packages/twenty-server/src/database/commands/data-seed-dev-workspace.command.ts b/packages/twenty-server/src/database/commands/data-seed-dev-workspace.command.ts index 669177abb66..b038227318e 100644 --- a/packages/twenty-server/src/database/commands/data-seed-dev-workspace.command.ts +++ b/packages/twenty-server/src/database/commands/data-seed-dev-workspace.command.ts @@ -10,11 +10,11 @@ import { seedPipelineStep } from 'src/database/typeorm-seeds/workspace/pipeline- import { seedWorkspaceMember } from 'src/database/typeorm-seeds/workspace/workspaceMember'; import { seedPeople } from 'src/database/typeorm-seeds/workspace/people'; import { seedCoreSchema } from 'src/database/typeorm-seeds/core'; -import { EnvironmentService } from 'src/integrations/environment/environment.service'; -import { seedCalendarEvents } from 'src/database/typeorm-seeds/workspace/calendar-events'; import { ObjectMetadataService } from 'src/engine-metadata/object-metadata/object-metadata.service'; import { WorkspaceDataSourceService } from 'src/engine/workspace-datasource/workspace-datasource.service'; import { WorkspaceSyncMetadataService } from 'src/engine/workspace-manager/workspace-sync-metadata/workspace-sync-metadata.service'; +import { seedCalendarEvents } from 'src/database/typeorm-seeds/workspace/calendar-events'; +import { EnvironmentService } from 'src/engine/integrations/environment/environment.service'; // TODO: implement dry-run @Command({ diff --git a/packages/twenty-server/src/database/typeorm/typeorm.module.ts b/packages/twenty-server/src/database/typeorm/typeorm.module.ts index 6866a6d4a0d..b24fe05bad9 100644 --- a/packages/twenty-server/src/database/typeorm/typeorm.module.ts +++ b/packages/twenty-server/src/database/typeorm/typeorm.module.ts @@ -2,7 +2,7 @@ import { Module } from '@nestjs/common'; import { TypeOrmModule, TypeOrmModuleOptions } from '@nestjs/typeorm'; import { typeORMCoreModuleOptions } from 'src/database/typeorm/core/core.datasource'; -import { EnvironmentModule } from 'src/integrations/environment/environment.module'; +import { EnvironmentModule } from 'src/engine/integrations/environment/environment.module'; import { TypeORMService } from './typeorm.service'; diff --git a/packages/twenty-server/src/database/typeorm/typeorm.service.ts b/packages/twenty-server/src/database/typeorm/typeorm.service.ts index 893a6abc0ab..595e0a3d929 100644 --- a/packages/twenty-server/src/database/typeorm/typeorm.service.ts +++ b/packages/twenty-server/src/database/typeorm/typeorm.service.ts @@ -2,7 +2,7 @@ import { Injectable, OnModuleDestroy, OnModuleInit } from '@nestjs/common'; import { DataSource } from 'typeorm'; -import { EnvironmentService } from 'src/integrations/environment/environment.service'; +import { EnvironmentService } from 'src/engine/integrations/environment/environment.service'; import { DataSourceEntity } from 'src/engine-metadata/data-source/data-source.entity'; import { User } from 'src/engine/modules/user/user.entity'; import { Workspace } from 'src/engine/modules/workspace/workspace.entity'; diff --git a/packages/twenty-server/src/engine-graphql-config/graphql-config.module.ts b/packages/twenty-server/src/engine-graphql-config/graphql-config.module.ts index 6604f6412cc..4106ae69a2f 100644 --- a/packages/twenty-server/src/engine-graphql-config/graphql-config.module.ts +++ b/packages/twenty-server/src/engine-graphql-config/graphql-config.module.ts @@ -1,10 +1,10 @@ import { Module } from '@nestjs/common'; -import { FoundationModule } from 'src/engine/modules/foundation.module'; +import { EngineModulesModule } from 'src/engine/modules/engine-modules.module'; import { graphQLFactories } from 'src/engine-graphql-config/factories'; @Module({ - imports: [FoundationModule], + imports: [EngineModulesModule], providers: [...graphQLFactories], exports: [...graphQLFactories], }) diff --git a/packages/twenty-server/src/engine-graphql-config/graphql-config.service.ts b/packages/twenty-server/src/engine-graphql-config/graphql-config.service.ts index 994024cd56d..fb9212e3671 100644 --- a/packages/twenty-server/src/engine-graphql-config/graphql-config.service.ts +++ b/packages/twenty-server/src/engine-graphql-config/graphql-config.service.ts @@ -13,18 +13,18 @@ import { GraphQLSchemaWithContext, YogaInitialContext } from 'graphql-yoga'; import * as Sentry from '@sentry/node'; import { TokenService } from 'src/engine/modules/auth/services/token.service'; -import { FoundationModule } from 'src/engine/modules/foundation.module'; +import { EngineModulesModule } from 'src/engine/modules/engine-modules.module'; import { Workspace } from 'src/engine/modules/workspace/workspace.entity'; -import { WorkspaceFactory } from 'src/engine/graphql/workspace.factory'; -import { ExceptionHandlerService } from 'src/integrations/exception-handler/exception-handler.service'; +import { WorkspaceFactory } from 'src/engine/api/graphql/workspace.factory'; +import { ExceptionHandlerService } from 'src/engine/integrations/exception-handler/exception-handler.service'; import { handleExceptionAndConvertToGraphQLError } from 'src/engine/filters/utils/global-exception-handler.util'; -import { renderApolloPlayground } from 'src/engine-workspace/utils/render-apollo-playground.util'; -import { EnvironmentService } from 'src/integrations/environment/environment.service'; -import { useExceptionHandler } from 'src/integrations/exception-handler/hooks/use-exception-handler.hook'; +import { renderApolloPlayground } from 'src/engine/utils/render-apollo-playground.util'; +import { EnvironmentService } from 'src/engine/integrations/environment/environment.service'; +import { useExceptionHandler } from 'src/engine/integrations/exception-handler/hooks/use-exception-handler.hook'; import { User } from 'src/engine/modules/user/user.entity'; -import { useThrottler } from 'src/integrations/throttler/hooks/use-throttler'; +import { useThrottler } from 'src/engine-graphql-config/hooks/use-throttler'; import { JwtData } from 'src/engine/modules/auth/types/jwt-data.type'; -import { useSentryTracing } from 'src/integrations/tracing/useSentryTracing'; +import { useSentryTracing } from 'src/engine/integrations/exception-handler/hooks/use-sentry-tracing'; import { CreateContextFactory } from './factories/create-context.factory'; @@ -67,7 +67,7 @@ export class GraphQLConfigService const config: YogaDriverConfig = { context: (context) => this.createContextFactory.create(context), autoSchemaFile: true, - include: [FoundationModule], + include: [EngineModulesModule], conditionalSchema: async (context) => { let user: User | undefined; let workspace: Workspace | undefined; diff --git a/packages/twenty-server/src/integrations/throttler/hooks/use-throttler.ts b/packages/twenty-server/src/engine-graphql-config/hooks/use-throttler.ts similarity index 100% rename from packages/twenty-server/src/integrations/throttler/hooks/use-throttler.ts rename to packages/twenty-server/src/engine-graphql-config/hooks/use-throttler.ts diff --git a/packages/twenty-server/src/engine-metadata/field-metadata/field-metadata.service.ts b/packages/twenty-server/src/engine-metadata/field-metadata/field-metadata.service.ts index e4fcfec4bbc..038b0a83c5d 100644 --- a/packages/twenty-server/src/engine-metadata/field-metadata/field-metadata.service.ts +++ b/packages/twenty-server/src/engine-metadata/field-metadata/field-metadata.service.ts @@ -23,7 +23,7 @@ import { TypeORMService } from 'src/database/typeorm/typeorm.service'; import { DataSourceService } from 'src/engine-metadata/data-source/data-source.service'; import { UpdateFieldInput } from 'src/engine-metadata/field-metadata/dtos/update-field.input'; import { WorkspaceMigrationFactory } from 'src/engine-metadata/workspace-migration/workspace-migration.factory'; -import { computeObjectTargetTable } from 'src/engine-workspace/utils/compute-object-target-table.util'; +import { computeObjectTargetTable } from 'src/engine/utils/compute-object-target-table.util'; import { generateMigrationName } from 'src/engine-metadata/workspace-migration/utils/generate-migration-name.util'; import { generateNullable } from 'src/engine-metadata/field-metadata/utils/generate-nullable'; import { FieldMetadataDTO } from 'src/engine-metadata/field-metadata/dtos/field-metadata.dto'; diff --git a/packages/twenty-server/src/engine-metadata/metadata.module-factory.ts b/packages/twenty-server/src/engine-metadata/metadata.module-factory.ts index 882dd492a7d..a11c05e71d4 100644 --- a/packages/twenty-server/src/engine-metadata/metadata.module-factory.ts +++ b/packages/twenty-server/src/engine-metadata/metadata.module-factory.ts @@ -2,12 +2,12 @@ import { YogaDriverConfig } from '@graphql-yoga/nestjs'; import GraphQLJSON from 'graphql-type-json'; import { CreateContextFactory } from 'src/engine-graphql-config/factories/create-context.factory'; -import { EnvironmentService } from 'src/integrations/environment/environment.service'; -import { ExceptionHandlerService } from 'src/integrations/exception-handler/exception-handler.service'; -import { useExceptionHandler } from 'src/integrations/exception-handler/hooks/use-exception-handler.hook'; -import { useThrottler } from 'src/integrations/throttler/hooks/use-throttler'; +import { EnvironmentService } from 'src/engine/integrations/environment/environment.service'; +import { ExceptionHandlerService } from 'src/engine/integrations/exception-handler/exception-handler.service'; +import { useExceptionHandler } from 'src/engine/integrations/exception-handler/hooks/use-exception-handler.hook'; +import { useThrottler } from 'src/engine-graphql-config/hooks/use-throttler'; import { MetadataModule } from 'src/engine-metadata/metadata.module'; -import { renderApolloPlayground } from 'src/engine-workspace/utils/render-apollo-playground.util'; +import { renderApolloPlayground } from 'src/engine/utils/render-apollo-playground.util'; export const metadataModuleFactory = async ( environmentService: EnvironmentService, diff --git a/packages/twenty-server/src/engine-metadata/metadata.module.ts b/packages/twenty-server/src/engine-metadata/metadata.module.ts index f012d1ab55d..8702088754c 100644 --- a/packages/twenty-server/src/engine-metadata/metadata.module.ts +++ b/packages/twenty-server/src/engine-metadata/metadata.module.ts @@ -6,8 +6,8 @@ import { YogaDriverConfig, YogaDriver } from '@graphql-yoga/nestjs'; import { WorkspaceMigrationRunnerModule } from 'src/engine/workspace-manager/workspace-migration-runner/workspace-migration-runner.module'; import { WorkspaceMigrationModule } from 'src/engine-metadata/workspace-migration/workspace-migration.module'; import { metadataModuleFactory } from 'src/engine-metadata/metadata.module-factory'; -import { EnvironmentService } from 'src/integrations/environment/environment.service'; -import { ExceptionHandlerService } from 'src/integrations/exception-handler/exception-handler.service'; +import { EnvironmentService } from 'src/engine/integrations/environment/environment.service'; +import { ExceptionHandlerService } from 'src/engine/integrations/exception-handler/exception-handler.service'; import { GraphQLConfigModule } from 'src/engine-graphql-config/graphql-config.module'; import { CreateContextFactory } from 'src/engine-graphql-config/factories/create-context.factory'; diff --git a/packages/twenty-server/src/engine-metadata/object-metadata/object-metadata.service.ts b/packages/twenty-server/src/engine-metadata/object-metadata/object-metadata.service.ts index 7090aa4def8..6fde2aca992 100644 --- a/packages/twenty-server/src/engine-metadata/object-metadata/object-metadata.service.ts +++ b/packages/twenty-server/src/engine-metadata/object-metadata/object-metadata.service.ts @@ -30,8 +30,8 @@ import { RelationMetadataType, RelationOnDeleteAction, } from 'src/engine-metadata/relation-metadata/relation-metadata.entity'; -import { computeCustomName } from 'src/engine-workspace/utils/compute-custom-name.util'; -import { computeObjectTargetTable } from 'src/engine-workspace/utils/compute-object-target-table.util'; +import { computeCustomName } from 'src/engine/utils/compute-custom-name.util'; +import { computeObjectTargetTable } from 'src/engine/utils/compute-object-target-table.util'; import { DeleteOneObjectInput } from 'src/engine-metadata/object-metadata/dtos/delete-object.input'; import { RelationToDelete } from 'src/engine-metadata/relation-metadata/types/relation-to-delete'; import { generateMigrationName } from 'src/engine-metadata/workspace-migration/utils/generate-migration-name.util'; diff --git a/packages/twenty-server/src/engine-metadata/relation-metadata/relation-metadata.service.ts b/packages/twenty-server/src/engine-metadata/relation-metadata/relation-metadata.service.ts index 78da0048666..3620989390e 100644 --- a/packages/twenty-server/src/engine-metadata/relation-metadata/relation-metadata.service.ts +++ b/packages/twenty-server/src/engine-metadata/relation-metadata/relation-metadata.service.ts @@ -20,7 +20,7 @@ import { FieldMetadataType } from 'src/engine-metadata/field-metadata/field-meta import { WorkspaceMigrationColumnActionType } from 'src/engine-metadata/workspace-migration/workspace-migration.entity'; import { ObjectMetadataEntity } from 'src/engine-metadata/object-metadata/object-metadata.entity'; import { createCustomColumnName } from 'src/engine-metadata/utils/create-custom-column-name.util'; -import { computeObjectTargetTable } from 'src/engine-workspace/utils/compute-object-target-table.util'; +import { computeObjectTargetTable } from 'src/engine/utils/compute-object-target-table.util'; import { createRelationForeignKeyColumnName } from 'src/engine-metadata/relation-metadata/utils/create-relation-foreign-key-column-name.util'; import { generateMigrationName } from 'src/engine-metadata/workspace-migration/utils/generate-migration-name.util'; diff --git a/packages/twenty-server/src/engine-workspace/auto-companies-and-contacts-creation/create-company-and-contact/create-company-and-contact.module.ts b/packages/twenty-server/src/engine-workspace/auto-companies-and-contacts-creation/create-company-and-contact/create-company-and-contact.module.ts deleted file mode 100644 index f8f32010e55..00000000000 --- a/packages/twenty-server/src/engine-workspace/auto-companies-and-contacts-creation/create-company-and-contact/create-company-and-contact.module.ts +++ /dev/null @@ -1,21 +0,0 @@ -import { Module } from '@nestjs/common'; - -import { PersonModule } from 'src/engine-workspace/repositories/person/person.module'; -import { WorkspaceMemberModule } from 'src/engine-workspace/repositories/workspace-member/workspace-member.module'; -import { CreateCompanyAndContactService } from 'src/engine-workspace/auto-companies-and-contacts-creation/create-company-and-contact/create-company-and-contact.service'; -import { CreateCompanyModule } from 'src/engine-workspace/auto-companies-and-contacts-creation/create-company/create-company.module'; -import { CreateContactModule } from 'src/engine-workspace/auto-companies-and-contacts-creation/create-contact/create-contact.module'; -import { WorkspaceDataSourceModule } from 'src/engine/workspace-datasource/workspace-datasource.module'; - -@Module({ - imports: [ - WorkspaceDataSourceModule, - CreateContactModule, - CreateCompanyModule, - WorkspaceMemberModule, - PersonModule, - ], - providers: [CreateCompanyAndContactService], - exports: [CreateCompanyAndContactService], -}) -export class CreateCompaniesAndContactsModule {} diff --git a/packages/twenty-server/src/engine-workspace/utils/compute-field-target-column.util.ts b/packages/twenty-server/src/engine-workspace/utils/compute-field-target-column.util.ts deleted file mode 100644 index b60b6da640b..00000000000 --- a/packages/twenty-server/src/engine-workspace/utils/compute-field-target-column.util.ts +++ /dev/null @@ -1,21 +0,0 @@ -import { FieldMetadataInterface } from 'src/engine-metadata/field-metadata/interfaces/field-metadata.interface'; - -import { FieldMetadataEntity } from 'src/engine-metadata/field-metadata/field-metadata.entity'; -import { isCompositeFieldMetadataType } from 'src/engine-metadata/field-metadata/utils/is-composite-field-metadata-type.util'; -import { BasicFieldMetadataType } from 'src/engine-metadata/workspace-migration/factories/basic-column-action.factory'; - -import { computeCustomName } from './compute-custom-name.util'; - -export const computeFieldTargetColumn = ( - fieldMetadata: - | FieldMetadataEntity - | FieldMetadataInterface, -) => { - if (isCompositeFieldMetadataType(fieldMetadata.type)) { - throw new Error( - "Composite field metadata should not be computed here, as they're split into multiple fields.", - ); - } - - return computeCustomName(fieldMetadata.name, fieldMetadata.isCustom ?? false); -}; diff --git a/packages/twenty-server/src/utils/utils-test/object-metadata-item.ts b/packages/twenty-server/src/engine/api/__mocks__/object-metadata-item.mock.ts similarity index 77% rename from packages/twenty-server/src/utils/utils-test/object-metadata-item.ts rename to packages/twenty-server/src/engine/api/__mocks__/object-metadata-item.mock.ts index 7bb0881b721..04860d38203 100644 --- a/packages/twenty-server/src/utils/utils-test/object-metadata-item.ts +++ b/packages/twenty-server/src/engine/api/__mocks__/object-metadata-item.mock.ts @@ -1,7 +1,7 @@ import { FieldMetadataType } from 'src/engine-metadata/field-metadata/field-metadata.entity'; import { ObjectMetadataEntity } from 'src/engine-metadata/object-metadata/object-metadata.entity'; -export const fieldNumber = { +export const fieldNumberMock = { name: 'fieldNumber', type: FieldMetadataType.NUMBER, isNullable: false, @@ -9,7 +9,7 @@ export const fieldNumber = { targetColumnMap: { value: 'fieldNumber' }, }; -export const fieldString = { +export const fieldStringMock = { name: 'fieldString', type: FieldMetadataType.TEXT, isNullable: true, @@ -17,7 +17,7 @@ export const fieldString = { targetColumnMap: { value: 'fieldString' }, }; -export const fieldLink = { +export const fieldLinkMock = { name: 'fieldLink', type: FieldMetadataType.LINK, isNullable: false, @@ -25,7 +25,7 @@ export const fieldLink = { targetColumnMap: { label: 'fieldLinkLabel', url: 'fieldLinkUrl' }, }; -export const fieldCurrency = { +export const fieldCurrencyMock = { name: 'fieldCurrency', type: FieldMetadataType.CURRENCY, isNullable: true, @@ -36,9 +36,9 @@ export const fieldCurrency = { }, }; -export const objectMetadataItem: DeepPartial = { +export const objectMetadataItemMock: DeepPartial = { targetTableName: 'testingObject', nameSingular: 'objectName', namePlural: 'objectsName', - fields: [fieldNumber, fieldString, fieldLink, fieldCurrency], + fields: [fieldNumberMock, fieldStringMock, fieldLinkMock, fieldCurrencyMock], }; diff --git a/packages/twenty-server/src/engine/graphql/workspace.factory.spec.ts b/packages/twenty-server/src/engine/api/graphql/__tests__/workspace.factory.spec.ts similarity index 67% rename from packages/twenty-server/src/engine/graphql/workspace.factory.spec.ts rename to packages/twenty-server/src/engine/api/graphql/__tests__/workspace.factory.spec.ts index 05cfa2fcb2b..3883c85e178 100644 --- a/packages/twenty-server/src/engine/graphql/workspace.factory.spec.ts +++ b/packages/twenty-server/src/engine/api/graphql/__tests__/workspace.factory.spec.ts @@ -2,12 +2,11 @@ import { Test, TestingModule } from '@nestjs/testing'; import { DataSourceService } from 'src/engine-metadata/data-source/data-source.service'; import { ObjectMetadataService } from 'src/engine-metadata/object-metadata/object-metadata.service'; -import { WorkspaceSchemaStorageService } from 'src/engine/graphql/workspace-schema-storage/workspace-schema-storage.service'; -import { ScalarsExplorerService } from 'src/engine-workspace/services/scalars-explorer.service'; -import { WorkspaceResolverFactory } from 'src/engine/graphql/workspace-resolver-builder/workspace-resolver.factory'; -import { WorkspaceGraphQLSchemaFactory } from 'src/engine/graphql/workspace-schema-builder/workspace-graphql-schema.factory'; - -import { WorkspaceFactory } from './workspace.factory'; +import { WorkspaceSchemaStorageService } from 'src/engine/api/graphql/workspace-schema-storage/workspace-schema-storage.service'; +import { ScalarsExplorerService } from 'src/engine/api/graphql/services/scalars-explorer.service'; +import { WorkspaceResolverFactory } from 'src/engine/api/graphql/workspace-resolver-builder/workspace-resolver.factory'; +import { WorkspaceGraphQLSchemaFactory } from 'src/engine/api/graphql/workspace-schema-builder/workspace-graphql-schema.factory'; +import { WorkspaceFactory } from 'src/engine/api/graphql/workspace.factory'; describe('WorkspaceFactory', () => { let service: WorkspaceFactory; diff --git a/packages/twenty-server/src/engine/graphql/workspace.module.ts b/packages/twenty-server/src/engine/api/graphql/core-graphql-api.module.ts similarity index 55% rename from packages/twenty-server/src/engine/graphql/workspace.module.ts rename to packages/twenty-server/src/engine/api/graphql/core-graphql-api.module.ts index 143d06a8ad7..8bbcda97452 100644 --- a/packages/twenty-server/src/engine/graphql/workspace.module.ts +++ b/packages/twenty-server/src/engine/api/graphql/core-graphql-api.module.ts @@ -2,11 +2,11 @@ import { Module } from '@nestjs/common'; import { MetadataModule } from 'src/engine-metadata/metadata.module'; import { DataSourceModule } from 'src/engine-metadata/data-source/data-source.module'; -import { WorkspaceSchemaStorageModule } from 'src/engine/graphql/workspace-schema-storage/workspace-schema-storage.module'; +import { WorkspaceSchemaStorageModule } from 'src/engine/api/graphql/workspace-schema-storage/workspace-schema-storage.module'; import { ObjectMetadataModule } from 'src/engine-metadata/object-metadata/object-metadata.module'; -import { ScalarsExplorerService } from 'src/engine-workspace/services/scalars-explorer.service'; -import { WorkspaceSchemaBuilderModule } from 'src/engine/graphql/workspace-schema-builder/workspace-schema-builder.module'; -import { WorkspaceResolverBuilderModule } from 'src/engine/graphql/workspace-resolver-builder/workspace-resolver-builder.module'; +import { ScalarsExplorerService } from 'src/engine/api/graphql/services/scalars-explorer.service'; +import { WorkspaceSchemaBuilderModule } from 'src/engine/api/graphql/workspace-schema-builder/workspace-schema-builder.module'; +import { WorkspaceResolverBuilderModule } from 'src/engine/api/graphql/workspace-resolver-builder/workspace-resolver-builder.module'; import { WorkspaceFactory } from './workspace.factory'; @@ -22,4 +22,4 @@ import { WorkspaceFactory } from './workspace.factory'; providers: [WorkspaceFactory, ScalarsExplorerService], exports: [WorkspaceFactory], }) -export class WorkspaceModule {} +export class CoreGraphqlApiModule {} diff --git a/packages/twenty-server/src/engine-workspace/services/scalars-explorer.service.ts b/packages/twenty-server/src/engine/api/graphql/services/scalars-explorer.service.ts similarity index 93% rename from packages/twenty-server/src/engine-workspace/services/scalars-explorer.service.ts rename to packages/twenty-server/src/engine/api/graphql/services/scalars-explorer.service.ts index c8a958cbabf..84460fe5d7b 100644 --- a/packages/twenty-server/src/engine-workspace/services/scalars-explorer.service.ts +++ b/packages/twenty-server/src/engine/api/graphql/services/scalars-explorer.service.ts @@ -2,7 +2,7 @@ import { Injectable } from '@nestjs/common'; import { GraphQLScalarType, GraphQLSchema, isScalarType } from 'graphql'; -import { scalars } from 'src/engine/graphql/workspace-schema-builder/graphql-types/scalars'; +import { scalars } from 'src/engine/api/graphql/workspace-schema-builder/graphql-types/scalars'; @Injectable() export class ScalarsExplorerService { diff --git a/packages/twenty-server/src/engine/api/graphql/workspace-query-builder/__mocks__/workspace-query-builder-options.mock.ts b/packages/twenty-server/src/engine/api/graphql/workspace-query-builder/__mocks__/workspace-query-builder-options.mock.ts new file mode 100644 index 00000000000..1f1f4fdb800 --- /dev/null +++ b/packages/twenty-server/src/engine/api/graphql/workspace-query-builder/__mocks__/workspace-query-builder-options.mock.ts @@ -0,0 +1,13 @@ +import { GraphQLResolveInfo } from 'graphql'; + +import { ObjectMetadataInterface } from 'src/engine-metadata/field-metadata/interfaces/object-metadata.interface'; +import { WorkspaceQueryBuilderOptions } from 'src/engine/api/graphql/workspace-query-builder/interfaces/workspace-query-builder-options.interface'; + +import { objectMetadataItemMock } from 'src/engine/api/__mocks__/object-metadata-item.mock'; + +export const workspaceQueryBuilderOptionsMock: WorkspaceQueryBuilderOptions = { + fieldMetadataCollection: [], + info: {} as GraphQLResolveInfo, + objectMetadataCollection: [], + objectMetadataItem: objectMetadataItemMock as ObjectMetadataInterface, +}; diff --git a/packages/twenty-server/src/engine/graphql/workspace-query-builder/factories/__tests__/args-string.factory.spec.ts b/packages/twenty-server/src/engine/api/graphql/workspace-query-builder/factories/__tests__/args-string.factory.spec.ts similarity index 92% rename from packages/twenty-server/src/engine/graphql/workspace-query-builder/factories/__tests__/args-string.factory.spec.ts rename to packages/twenty-server/src/engine/api/graphql/workspace-query-builder/factories/__tests__/args-string.factory.spec.ts index 8049ff73767..4cc9394e1ad 100644 --- a/packages/twenty-server/src/engine/graphql/workspace-query-builder/factories/__tests__/args-string.factory.spec.ts +++ b/packages/twenty-server/src/engine/api/graphql/workspace-query-builder/factories/__tests__/args-string.factory.spec.ts @@ -1,7 +1,7 @@ import { TestingModule, Test } from '@nestjs/testing'; -import { ArgsAliasFactory } from 'src/engine/graphql/workspace-query-builder/factories/args-alias.factory'; -import { ArgsStringFactory } from 'src/engine/graphql/workspace-query-builder/factories/args-string.factory'; +import { ArgsAliasFactory } from 'src/engine/api/graphql/workspace-query-builder/factories/args-alias.factory'; +import { ArgsStringFactory } from 'src/engine/api/graphql/workspace-query-builder/factories/args-string.factory'; describe('ArgsStringFactory', () => { let service: ArgsStringFactory; diff --git a/packages/twenty-server/src/engine/graphql/workspace-query-builder/factories/__tests__/find-duplicates-query.factory.spec.ts b/packages/twenty-server/src/engine/api/graphql/workspace-query-builder/factories/__tests__/find-duplicates-query.factory.spec.ts similarity index 76% rename from packages/twenty-server/src/engine/graphql/workspace-query-builder/factories/__tests__/find-duplicates-query.factory.spec.ts rename to packages/twenty-server/src/engine/api/graphql/workspace-query-builder/factories/__tests__/find-duplicates-query.factory.spec.ts index 17dbade3edd..27610b802f9 100644 --- a/packages/twenty-server/src/engine/graphql/workspace-query-builder/factories/__tests__/find-duplicates-query.factory.spec.ts +++ b/packages/twenty-server/src/engine/api/graphql/workspace-query-builder/factories/__tests__/find-duplicates-query.factory.spec.ts @@ -1,12 +1,12 @@ import { Test, TestingModule } from '@nestjs/testing'; -import { RecordFilter } from 'src/engine/graphql/workspace-query-builder/interfaces/record.interface'; -import { FindDuplicatesResolverArgs } from 'src/engine/graphql/workspace-resolver-builder/interfaces/workspace-resolvers-builder.interface'; +import { RecordFilter } from 'src/engine/api/graphql/workspace-query-builder/interfaces/record.interface'; +import { FindDuplicatesResolverArgs } from 'src/engine/api/graphql/workspace-resolver-builder/interfaces/workspace-resolvers-builder.interface'; -import { ArgsAliasFactory } from 'src/engine/graphql/workspace-query-builder/factories/args-alias.factory'; -import { FieldsStringFactory } from 'src/engine/graphql/workspace-query-builder/factories/fields-string.factory'; -import { FindDuplicatesQueryFactory } from 'src/engine/graphql/workspace-query-builder/factories/find-duplicates-query.factory'; -import { workspaceQueryBuilderOptions } from 'src/engine/graphql/workspace-query-builder/utils-test/workspace-query-builder-options'; +import { ArgsAliasFactory } from 'src/engine/api/graphql/workspace-query-builder/factories/args-alias.factory'; +import { FieldsStringFactory } from 'src/engine/api/graphql/workspace-query-builder/factories/fields-string.factory'; +import { FindDuplicatesQueryFactory } from 'src/engine/api/graphql/workspace-query-builder/factories/find-duplicates-query.factory'; +import { workspaceQueryBuilderOptionsMock } from 'src/engine/api/graphql/workspace-query-builder/__mocks__/workspace-query-builder-options.mock'; describe('FindDuplicatesQueryFactory', () => { let service: FindDuplicatesQueryFactory; @@ -48,7 +48,10 @@ describe('FindDuplicatesQueryFactory', () => { it('should return (first: 0) as a filter when args are missing', async () => { const args: FindDuplicatesResolverArgs = {}; - const query = await service.create(args, workspaceQueryBuilderOptions); + const query = await service.create( + args, + workspaceQueryBuilderOptionsMock, + ); expect(query.trim()).toEqual(`query { objectNameCollection(first: 0) { @@ -73,9 +76,9 @@ describe('FindDuplicatesQueryFactory', () => { }; const query = await service.create(args, { - ...workspaceQueryBuilderOptions, + ...workspaceQueryBuilderOptionsMock, objectMetadataItem: { - ...workspaceQueryBuilderOptions.objectMetadataItem, + ...workspaceQueryBuilderOptionsMock.objectMetadataItem, nameSingular: 'person', }, }); @@ -101,9 +104,9 @@ describe('FindDuplicatesQueryFactory', () => { }; const query = await service.create(args, { - ...workspaceQueryBuilderOptions, + ...workspaceQueryBuilderOptionsMock, objectMetadataItem: { - ...workspaceQueryBuilderOptions.objectMetadataItem, + ...workspaceQueryBuilderOptionsMock.objectMetadataItem, nameSingular: 'person', }, }); @@ -129,9 +132,9 @@ describe('FindDuplicatesQueryFactory', () => { }; const query = await service.create(args, { - ...workspaceQueryBuilderOptions, + ...workspaceQueryBuilderOptionsMock, objectMetadataItem: { - ...workspaceQueryBuilderOptions.objectMetadataItem, + ...workspaceQueryBuilderOptionsMock.objectMetadataItem, nameSingular: 'person', }, }); @@ -155,9 +158,9 @@ describe('FindDuplicatesQueryFactory', () => { const query = await service.create( args, { - ...workspaceQueryBuilderOptions, + ...workspaceQueryBuilderOptionsMock, objectMetadataItem: { - ...workspaceQueryBuilderOptions.objectMetadataItem, + ...workspaceQueryBuilderOptionsMock.objectMetadataItem, nameSingular: 'person', }, }, @@ -178,9 +181,9 @@ describe('FindDuplicatesQueryFactory', () => { describe('buildQueryForExistingRecord', () => { it(`should include all the fields that exist for person inside "duplicateCriteriaCollection" constant`, async () => { const query = service.buildQueryForExistingRecord('uuid', { - ...workspaceQueryBuilderOptions, + ...workspaceQueryBuilderOptionsMock, objectMetadataItem: { - ...workspaceQueryBuilderOptions.objectMetadataItem, + ...workspaceQueryBuilderOptionsMock.objectMetadataItem, nameSingular: 'person', }, }); diff --git a/packages/twenty-server/src/engine/graphql/workspace-query-builder/factories/__tests__/record-position-query.factory.spec.ts b/packages/twenty-server/src/engine/api/graphql/workspace-query-builder/factories/__tests__/record-position-query.factory.spec.ts similarity index 96% rename from packages/twenty-server/src/engine/graphql/workspace-query-builder/factories/__tests__/record-position-query.factory.spec.ts rename to packages/twenty-server/src/engine/api/graphql/workspace-query-builder/factories/__tests__/record-position-query.factory.spec.ts index 7c701045278..455e5186425 100644 --- a/packages/twenty-server/src/engine/graphql/workspace-query-builder/factories/__tests__/record-position-query.factory.spec.ts +++ b/packages/twenty-server/src/engine/api/graphql/workspace-query-builder/factories/__tests__/record-position-query.factory.spec.ts @@ -1,7 +1,7 @@ import { RecordPositionQueryFactory, RecordPositionQueryType, -} from 'src/engine/graphql/workspace-query-builder/factories/record-position-query.factory'; +} from 'src/engine/api/graphql/workspace-query-builder/factories/record-position-query.factory'; describe('RecordPositionQueryFactory', () => { const objectMetadataItem = { diff --git a/packages/twenty-server/src/engine/graphql/workspace-query-builder/factories/args-alias.factory.ts b/packages/twenty-server/src/engine/api/graphql/workspace-query-builder/factories/args-alias.factory.ts similarity index 100% rename from packages/twenty-server/src/engine/graphql/workspace-query-builder/factories/args-alias.factory.ts rename to packages/twenty-server/src/engine/api/graphql/workspace-query-builder/factories/args-alias.factory.ts diff --git a/packages/twenty-server/src/engine/graphql/workspace-query-builder/factories/args-string.factory.ts b/packages/twenty-server/src/engine/api/graphql/workspace-query-builder/factories/args-string.factory.ts similarity index 94% rename from packages/twenty-server/src/engine/graphql/workspace-query-builder/factories/args-string.factory.ts rename to packages/twenty-server/src/engine/api/graphql/workspace-query-builder/factories/args-string.factory.ts index d51c121aad3..df11f1611bb 100644 --- a/packages/twenty-server/src/engine/graphql/workspace-query-builder/factories/args-string.factory.ts +++ b/packages/twenty-server/src/engine/api/graphql/workspace-query-builder/factories/args-string.factory.ts @@ -2,7 +2,7 @@ import { Injectable } from '@nestjs/common'; import { FieldMetadataInterface } from 'src/engine-metadata/field-metadata/interfaces/field-metadata.interface'; -import { stringifyWithoutKeyQuote } from 'src/engine/graphql/workspace-query-builder/utils/stringify-without-key-quote.util'; +import { stringifyWithoutKeyQuote } from 'src/engine/api/graphql/workspace-query-builder/utils/stringify-without-key-quote.util'; import { ArgsAliasFactory } from './args-alias.factory'; diff --git a/packages/twenty-server/src/engine/graphql/workspace-query-builder/factories/create-many-query.factory.ts b/packages/twenty-server/src/engine/api/graphql/workspace-query-builder/factories/create-many-query.factory.ts similarity index 67% rename from packages/twenty-server/src/engine/graphql/workspace-query-builder/factories/create-many-query.factory.ts rename to packages/twenty-server/src/engine/api/graphql/workspace-query-builder/factories/create-many-query.factory.ts index 5b552670806..b667472a3d3 100644 --- a/packages/twenty-server/src/engine/graphql/workspace-query-builder/factories/create-many-query.factory.ts +++ b/packages/twenty-server/src/engine/api/graphql/workspace-query-builder/factories/create-many-query.factory.ts @@ -2,12 +2,12 @@ import { Injectable, Logger } from '@nestjs/common'; import { v4 as uuidv4 } from 'uuid'; -import { WorkspaceQueryBuilderOptions } from 'src/engine/graphql/workspace-query-builder/interfaces/workspace-query-builder-options.interface'; -import { Record as IRecord } from 'src/engine/graphql/workspace-query-builder/interfaces/record.interface'; -import { CreateManyResolverArgs } from 'src/engine/graphql/workspace-resolver-builder/interfaces/workspace-resolvers-builder.interface'; +import { WorkspaceQueryBuilderOptions } from 'src/engine/api/graphql/workspace-query-builder/interfaces/workspace-query-builder-options.interface'; +import { Record as IRecord } from 'src/engine/api/graphql/workspace-query-builder/interfaces/record.interface'; +import { CreateManyResolverArgs } from 'src/engine/api/graphql/workspace-resolver-builder/interfaces/workspace-resolvers-builder.interface'; -import { stringifyWithoutKeyQuote } from 'src/engine/graphql/workspace-query-builder/utils/stringify-without-key-quote.util'; -import { computeObjectTargetTable } from 'src/engine-workspace/utils/compute-object-target-table.util'; +import { stringifyWithoutKeyQuote } from 'src/engine/api/graphql/workspace-query-builder/utils/stringify-without-key-quote.util'; +import { computeObjectTargetTable } from 'src/engine/utils/compute-object-target-table.util'; import { FieldsStringFactory } from './fields-string.factory'; import { ArgsAliasFactory } from './args-alias.factory'; diff --git a/packages/twenty-server/src/engine/graphql/workspace-query-builder/factories/delete-many-query.factory.ts b/packages/twenty-server/src/engine/api/graphql/workspace-query-builder/factories/delete-many-query.factory.ts similarity index 65% rename from packages/twenty-server/src/engine/graphql/workspace-query-builder/factories/delete-many-query.factory.ts rename to packages/twenty-server/src/engine/api/graphql/workspace-query-builder/factories/delete-many-query.factory.ts index 8581537e43d..f24090c6654 100644 --- a/packages/twenty-server/src/engine/graphql/workspace-query-builder/factories/delete-many-query.factory.ts +++ b/packages/twenty-server/src/engine/api/graphql/workspace-query-builder/factories/delete-many-query.factory.ts @@ -1,10 +1,10 @@ import { Injectable } from '@nestjs/common'; -import { WorkspaceQueryBuilderOptions } from 'src/engine/graphql/workspace-query-builder/interfaces/workspace-query-builder-options.interface'; -import { DeleteManyResolverArgs } from 'src/engine/graphql/workspace-resolver-builder/interfaces/workspace-resolvers-builder.interface'; +import { WorkspaceQueryBuilderOptions } from 'src/engine/api/graphql/workspace-query-builder/interfaces/workspace-query-builder-options.interface'; +import { DeleteManyResolverArgs } from 'src/engine/api/graphql/workspace-resolver-builder/interfaces/workspace-resolvers-builder.interface'; -import { stringifyWithoutKeyQuote } from 'src/engine/graphql/workspace-query-builder/utils/stringify-without-key-quote.util'; -import { computeObjectTargetTable } from 'src/engine-workspace/utils/compute-object-target-table.util'; +import { stringifyWithoutKeyQuote } from 'src/engine/api/graphql/workspace-query-builder/utils/stringify-without-key-quote.util'; +import { computeObjectTargetTable } from 'src/engine/utils/compute-object-target-table.util'; import { FieldsStringFactory } from './fields-string.factory'; diff --git a/packages/twenty-server/src/engine/graphql/workspace-query-builder/factories/delete-one-query.factory.ts b/packages/twenty-server/src/engine/api/graphql/workspace-query-builder/factories/delete-one-query.factory.ts similarity index 69% rename from packages/twenty-server/src/engine/graphql/workspace-query-builder/factories/delete-one-query.factory.ts rename to packages/twenty-server/src/engine/api/graphql/workspace-query-builder/factories/delete-one-query.factory.ts index d6f12e8abca..690621b78ac 100644 --- a/packages/twenty-server/src/engine/graphql/workspace-query-builder/factories/delete-one-query.factory.ts +++ b/packages/twenty-server/src/engine/api/graphql/workspace-query-builder/factories/delete-one-query.factory.ts @@ -1,9 +1,9 @@ import { Injectable, Logger } from '@nestjs/common'; -import { WorkspaceQueryBuilderOptions } from 'src/engine/graphql/workspace-query-builder/interfaces/workspace-query-builder-options.interface'; -import { DeleteOneResolverArgs } from 'src/engine/graphql/workspace-resolver-builder/interfaces/workspace-resolvers-builder.interface'; +import { WorkspaceQueryBuilderOptions } from 'src/engine/api/graphql/workspace-query-builder/interfaces/workspace-query-builder-options.interface'; +import { DeleteOneResolverArgs } from 'src/engine/api/graphql/workspace-resolver-builder/interfaces/workspace-resolvers-builder.interface'; -import { computeObjectTargetTable } from 'src/engine-workspace/utils/compute-object-target-table.util'; +import { computeObjectTargetTable } from 'src/engine/utils/compute-object-target-table.util'; import { FieldsStringFactory } from './fields-string.factory'; diff --git a/packages/twenty-server/src/engine/graphql/workspace-query-builder/factories/factories.ts b/packages/twenty-server/src/engine/api/graphql/workspace-query-builder/factories/factories.ts similarity index 100% rename from packages/twenty-server/src/engine/graphql/workspace-query-builder/factories/factories.ts rename to packages/twenty-server/src/engine/api/graphql/workspace-query-builder/factories/factories.ts diff --git a/packages/twenty-server/src/engine/graphql/workspace-query-builder/factories/field-alias.factory.ts b/packages/twenty-server/src/engine/api/graphql/workspace-query-builder/factories/field-alias.factory.ts similarity index 100% rename from packages/twenty-server/src/engine/graphql/workspace-query-builder/factories/field-alias.factory.ts rename to packages/twenty-server/src/engine/api/graphql/workspace-query-builder/factories/field-alias.factory.ts diff --git a/packages/twenty-server/src/engine/graphql/workspace-query-builder/factories/fields-string.factory.ts b/packages/twenty-server/src/engine/api/graphql/workspace-query-builder/factories/fields-string.factory.ts similarity index 96% rename from packages/twenty-server/src/engine/graphql/workspace-query-builder/factories/fields-string.factory.ts rename to packages/twenty-server/src/engine/api/graphql/workspace-query-builder/factories/fields-string.factory.ts index 636efe8f560..2dfc3eba88a 100644 --- a/packages/twenty-server/src/engine/graphql/workspace-query-builder/factories/fields-string.factory.ts +++ b/packages/twenty-server/src/engine/api/graphql/workspace-query-builder/factories/fields-string.factory.ts @@ -7,7 +7,7 @@ import isEmpty from 'lodash.isempty'; import { FieldMetadataInterface } from 'src/engine-metadata/field-metadata/interfaces/field-metadata.interface'; import { ObjectMetadataInterface } from 'src/engine-metadata/field-metadata/interfaces/object-metadata.interface'; -import { isRelationFieldMetadataType } from 'src/engine-workspace/utils/is-relation-field-metadata-type.util'; +import { isRelationFieldMetadataType } from 'src/engine/utils/is-relation-field-metadata-type.util'; import { FieldAliasFactory } from './field-alias.factory'; import { RelationFieldAliasFactory } from './relation-field-alias.factory'; diff --git a/packages/twenty-server/src/engine/graphql/workspace-query-builder/factories/find-duplicates-query.factory.ts b/packages/twenty-server/src/engine/api/graphql/workspace-query-builder/factories/find-duplicates-query.factory.ts similarity index 82% rename from packages/twenty-server/src/engine/graphql/workspace-query-builder/factories/find-duplicates-query.factory.ts rename to packages/twenty-server/src/engine/api/graphql/workspace-query-builder/factories/find-duplicates-query.factory.ts index 9c3ca711fbe..c8f8bff1366 100644 --- a/packages/twenty-server/src/engine/graphql/workspace-query-builder/factories/find-duplicates-query.factory.ts +++ b/packages/twenty-server/src/engine/api/graphql/workspace-query-builder/factories/find-duplicates-query.factory.ts @@ -2,15 +2,15 @@ import { Injectable, Logger } from '@nestjs/common'; import isEmpty from 'lodash.isempty'; -import { WorkspaceQueryBuilderOptions } from 'src/engine/graphql/workspace-query-builder/interfaces/workspace-query-builder-options.interface'; -import { RecordFilter } from 'src/engine/graphql/workspace-query-builder/interfaces/record.interface'; -import { FindDuplicatesResolverArgs } from 'src/engine/graphql/workspace-resolver-builder/interfaces/workspace-resolvers-builder.interface'; +import { WorkspaceQueryBuilderOptions } from 'src/engine/api/graphql/workspace-query-builder/interfaces/workspace-query-builder-options.interface'; +import { RecordFilter } from 'src/engine/api/graphql/workspace-query-builder/interfaces/record.interface'; +import { FindDuplicatesResolverArgs } from 'src/engine/api/graphql/workspace-resolver-builder/interfaces/workspace-resolvers-builder.interface'; import { ObjectMetadataInterface } from 'src/engine-metadata/field-metadata/interfaces/object-metadata.interface'; -import { computeObjectTargetTable } from 'src/engine-workspace/utils/compute-object-target-table.util'; -import { stringifyWithoutKeyQuote } from 'src/engine/graphql/workspace-query-builder/utils/stringify-without-key-quote.util'; -import { ArgsAliasFactory } from 'src/engine/graphql/workspace-query-builder/factories/args-alias.factory'; -import { duplicateCriteriaCollection } from 'src/engine/graphql/workspace-resolver-builder/constants/duplicate-criteria.constants'; +import { computeObjectTargetTable } from 'src/engine/utils/compute-object-target-table.util'; +import { stringifyWithoutKeyQuote } from 'src/engine/api/graphql/workspace-query-builder/utils/stringify-without-key-quote.util'; +import { ArgsAliasFactory } from 'src/engine/api/graphql/workspace-query-builder/factories/args-alias.factory'; +import { duplicateCriteriaCollection } from 'src/engine/api/graphql/workspace-resolver-builder/constants/duplicate-criteria.constants'; import { settings } from 'src/engine/constants/settings'; import { FieldsStringFactory } from './fields-string.factory'; diff --git a/packages/twenty-server/src/engine/graphql/workspace-query-builder/factories/find-many-query.factory.ts b/packages/twenty-server/src/engine/api/graphql/workspace-query-builder/factories/find-many-query.factory.ts similarity index 72% rename from packages/twenty-server/src/engine/graphql/workspace-query-builder/factories/find-many-query.factory.ts rename to packages/twenty-server/src/engine/api/graphql/workspace-query-builder/factories/find-many-query.factory.ts index eb1f029efc8..ec8420abb43 100644 --- a/packages/twenty-server/src/engine/graphql/workspace-query-builder/factories/find-many-query.factory.ts +++ b/packages/twenty-server/src/engine/api/graphql/workspace-query-builder/factories/find-many-query.factory.ts @@ -1,13 +1,13 @@ import { Injectable, Logger } from '@nestjs/common'; -import { WorkspaceQueryBuilderOptions } from 'src/engine/graphql/workspace-query-builder/interfaces/workspace-query-builder-options.interface'; +import { WorkspaceQueryBuilderOptions } from 'src/engine/api/graphql/workspace-query-builder/interfaces/workspace-query-builder-options.interface'; import { RecordFilter, RecordOrderBy, -} from 'src/engine/graphql/workspace-query-builder/interfaces/record.interface'; -import { FindManyResolverArgs } from 'src/engine/graphql/workspace-resolver-builder/interfaces/workspace-resolvers-builder.interface'; +} from 'src/engine/api/graphql/workspace-query-builder/interfaces/record.interface'; +import { FindManyResolverArgs } from 'src/engine/api/graphql/workspace-resolver-builder/interfaces/workspace-resolvers-builder.interface'; -import { computeObjectTargetTable } from 'src/engine-workspace/utils/compute-object-target-table.util'; +import { computeObjectTargetTable } from 'src/engine/utils/compute-object-target-table.util'; import { ArgsStringFactory } from './args-string.factory'; import { FieldsStringFactory } from './fields-string.factory'; diff --git a/packages/twenty-server/src/engine/graphql/workspace-query-builder/factories/find-one-query.factory.ts b/packages/twenty-server/src/engine/api/graphql/workspace-query-builder/factories/find-one-query.factory.ts similarity index 70% rename from packages/twenty-server/src/engine/graphql/workspace-query-builder/factories/find-one-query.factory.ts rename to packages/twenty-server/src/engine/api/graphql/workspace-query-builder/factories/find-one-query.factory.ts index 727f9d55336..80bbf3c9eea 100644 --- a/packages/twenty-server/src/engine/graphql/workspace-query-builder/factories/find-one-query.factory.ts +++ b/packages/twenty-server/src/engine/api/graphql/workspace-query-builder/factories/find-one-query.factory.ts @@ -1,10 +1,10 @@ import { Injectable, Logger } from '@nestjs/common'; -import { WorkspaceQueryBuilderOptions } from 'src/engine/graphql/workspace-query-builder/interfaces/workspace-query-builder-options.interface'; -import { RecordFilter } from 'src/engine/graphql/workspace-query-builder/interfaces/record.interface'; -import { FindOneResolverArgs } from 'src/engine/graphql/workspace-resolver-builder/interfaces/workspace-resolvers-builder.interface'; +import { WorkspaceQueryBuilderOptions } from 'src/engine/api/graphql/workspace-query-builder/interfaces/workspace-query-builder-options.interface'; +import { RecordFilter } from 'src/engine/api/graphql/workspace-query-builder/interfaces/record.interface'; +import { FindOneResolverArgs } from 'src/engine/api/graphql/workspace-resolver-builder/interfaces/workspace-resolvers-builder.interface'; -import { computeObjectTargetTable } from 'src/engine-workspace/utils/compute-object-target-table.util'; +import { computeObjectTargetTable } from 'src/engine/utils/compute-object-target-table.util'; import { ArgsStringFactory } from './args-string.factory'; import { FieldsStringFactory } from './fields-string.factory'; diff --git a/packages/twenty-server/src/engine/graphql/workspace-query-builder/factories/record-position-query.factory.ts b/packages/twenty-server/src/engine/api/graphql/workspace-query-builder/factories/record-position-query.factory.ts similarity index 100% rename from packages/twenty-server/src/engine/graphql/workspace-query-builder/factories/record-position-query.factory.ts rename to packages/twenty-server/src/engine/api/graphql/workspace-query-builder/factories/record-position-query.factory.ts diff --git a/packages/twenty-server/src/engine/graphql/workspace-query-builder/factories/relation-field-alias.factory.ts b/packages/twenty-server/src/engine/api/graphql/workspace-query-builder/factories/relation-field-alias.factory.ts similarity index 92% rename from packages/twenty-server/src/engine/graphql/workspace-query-builder/factories/relation-field-alias.factory.ts rename to packages/twenty-server/src/engine/api/graphql/workspace-query-builder/factories/relation-field-alias.factory.ts index df767655ed3..c58b071ad26 100644 --- a/packages/twenty-server/src/engine/graphql/workspace-query-builder/factories/relation-field-alias.factory.ts +++ b/packages/twenty-server/src/engine/api/graphql/workspace-query-builder/factories/relation-field-alias.factory.ts @@ -5,15 +5,15 @@ import { GraphQLResolveInfo } from 'graphql'; import { FieldMetadataInterface } from 'src/engine-metadata/field-metadata/interfaces/field-metadata.interface'; import { ObjectMetadataInterface } from 'src/engine-metadata/field-metadata/interfaces/object-metadata.interface'; -import { isRelationFieldMetadataType } from 'src/engine-workspace/utils/is-relation-field-metadata-type.util'; +import { isRelationFieldMetadataType } from 'src/engine/utils/is-relation-field-metadata-type.util'; import { RelationMetadataType } from 'src/engine-metadata/relation-metadata/relation-metadata.entity'; import { deduceRelationDirection, RelationDirection, -} from 'src/engine-workspace/utils/deduce-relation-direction.util'; -import { getFieldArgumentsByKey } from 'src/engine/graphql/workspace-query-builder/utils/get-field-arguments-by-key.util'; +} from 'src/engine/utils/deduce-relation-direction.util'; +import { getFieldArgumentsByKey } from 'src/engine/api/graphql/workspace-query-builder/utils/get-field-arguments-by-key.util'; import { ObjectMetadataService } from 'src/engine-metadata/object-metadata/object-metadata.service'; -import { computeObjectTargetTable } from 'src/engine-workspace/utils/compute-object-target-table.util'; +import { computeObjectTargetTable } from 'src/engine/utils/compute-object-target-table.util'; import { FieldsStringFactory } from './fields-string.factory'; import { ArgsStringFactory } from './args-string.factory'; diff --git a/packages/twenty-server/src/engine/graphql/workspace-query-builder/factories/update-many-query.factory.ts b/packages/twenty-server/src/engine/api/graphql/workspace-query-builder/factories/update-many-query.factory.ts similarity index 62% rename from packages/twenty-server/src/engine/graphql/workspace-query-builder/factories/update-many-query.factory.ts rename to packages/twenty-server/src/engine/api/graphql/workspace-query-builder/factories/update-many-query.factory.ts index a767c206fb3..936013110d3 100644 --- a/packages/twenty-server/src/engine/graphql/workspace-query-builder/factories/update-many-query.factory.ts +++ b/packages/twenty-server/src/engine/api/graphql/workspace-query-builder/factories/update-many-query.factory.ts @@ -3,14 +3,14 @@ import { Injectable } from '@nestjs/common'; import { Record as IRecord, RecordFilter, -} from 'src/engine/graphql/workspace-query-builder/interfaces/record.interface'; -import { WorkspaceQueryBuilderOptions } from 'src/engine/graphql/workspace-query-builder/interfaces/workspace-query-builder-options.interface'; -import { UpdateManyResolverArgs } from 'src/engine/graphql/workspace-resolver-builder/interfaces/workspace-resolvers-builder.interface'; +} from 'src/engine/api/graphql/workspace-query-builder/interfaces/record.interface'; +import { WorkspaceQueryBuilderOptions } from 'src/engine/api/graphql/workspace-query-builder/interfaces/workspace-query-builder-options.interface'; +import { UpdateManyResolverArgs } from 'src/engine/api/graphql/workspace-resolver-builder/interfaces/workspace-resolvers-builder.interface'; -import { stringifyWithoutKeyQuote } from 'src/engine/graphql/workspace-query-builder/utils/stringify-without-key-quote.util'; -import { FieldsStringFactory } from 'src/engine/graphql/workspace-query-builder/factories/fields-string.factory'; -import { ArgsAliasFactory } from 'src/engine/graphql/workspace-query-builder/factories/args-alias.factory'; -import { computeObjectTargetTable } from 'src/engine-workspace/utils/compute-object-target-table.util'; +import { stringifyWithoutKeyQuote } from 'src/engine/api/graphql/workspace-query-builder/utils/stringify-without-key-quote.util'; +import { FieldsStringFactory } from 'src/engine/api/graphql/workspace-query-builder/factories/fields-string.factory'; +import { ArgsAliasFactory } from 'src/engine/api/graphql/workspace-query-builder/factories/args-alias.factory'; +import { computeObjectTargetTable } from 'src/engine/utils/compute-object-target-table.util'; export interface UpdateManyQueryFactoryOptions extends WorkspaceQueryBuilderOptions { diff --git a/packages/twenty-server/src/engine/graphql/workspace-query-builder/factories/update-one-query.factory.ts b/packages/twenty-server/src/engine/api/graphql/workspace-query-builder/factories/update-one-query.factory.ts similarity index 67% rename from packages/twenty-server/src/engine/graphql/workspace-query-builder/factories/update-one-query.factory.ts rename to packages/twenty-server/src/engine/api/graphql/workspace-query-builder/factories/update-one-query.factory.ts index 4b8b6072f61..ba86a60fcdb 100644 --- a/packages/twenty-server/src/engine/graphql/workspace-query-builder/factories/update-one-query.factory.ts +++ b/packages/twenty-server/src/engine/api/graphql/workspace-query-builder/factories/update-one-query.factory.ts @@ -1,11 +1,11 @@ import { Injectable, Logger } from '@nestjs/common'; -import { WorkspaceQueryBuilderOptions } from 'src/engine/graphql/workspace-query-builder/interfaces/workspace-query-builder-options.interface'; -import { Record as IRecord } from 'src/engine/graphql/workspace-query-builder/interfaces/record.interface'; -import { UpdateOneResolverArgs } from 'src/engine/graphql/workspace-resolver-builder/interfaces/workspace-resolvers-builder.interface'; +import { WorkspaceQueryBuilderOptions } from 'src/engine/api/graphql/workspace-query-builder/interfaces/workspace-query-builder-options.interface'; +import { Record as IRecord } from 'src/engine/api/graphql/workspace-query-builder/interfaces/record.interface'; +import { UpdateOneResolverArgs } from 'src/engine/api/graphql/workspace-resolver-builder/interfaces/workspace-resolvers-builder.interface'; -import { stringifyWithoutKeyQuote } from 'src/engine/graphql/workspace-query-builder/utils/stringify-without-key-quote.util'; -import { computeObjectTargetTable } from 'src/engine-workspace/utils/compute-object-target-table.util'; +import { stringifyWithoutKeyQuote } from 'src/engine/api/graphql/workspace-query-builder/utils/stringify-without-key-quote.util'; +import { computeObjectTargetTable } from 'src/engine/utils/compute-object-target-table.util'; import { FieldsStringFactory } from './fields-string.factory'; import { ArgsAliasFactory } from './args-alias.factory'; diff --git a/packages/twenty-server/src/engine/graphql/workspace-query-builder/interfaces/record.interface.ts b/packages/twenty-server/src/engine/api/graphql/workspace-query-builder/interfaces/record.interface.ts similarity index 100% rename from packages/twenty-server/src/engine/graphql/workspace-query-builder/interfaces/record.interface.ts rename to packages/twenty-server/src/engine/api/graphql/workspace-query-builder/interfaces/record.interface.ts diff --git a/packages/twenty-server/src/engine/graphql/workspace-query-builder/interfaces/workspace-query-builder-options.interface.ts b/packages/twenty-server/src/engine/api/graphql/workspace-query-builder/interfaces/workspace-query-builder-options.interface.ts similarity index 100% rename from packages/twenty-server/src/engine/graphql/workspace-query-builder/interfaces/workspace-query-builder-options.interface.ts rename to packages/twenty-server/src/engine/api/graphql/workspace-query-builder/interfaces/workspace-query-builder-options.interface.ts diff --git a/packages/twenty-server/src/engine/graphql/workspace-query-builder/utils/__tests__/stringify-without-key-quote.spec.ts b/packages/twenty-server/src/engine/api/graphql/workspace-query-builder/utils/__tests__/stringify-without-key-quote.spec.ts similarity index 92% rename from packages/twenty-server/src/engine/graphql/workspace-query-builder/utils/__tests__/stringify-without-key-quote.spec.ts rename to packages/twenty-server/src/engine/api/graphql/workspace-query-builder/utils/__tests__/stringify-without-key-quote.spec.ts index 66dd4517a40..ec52852ea50 100644 --- a/packages/twenty-server/src/engine/graphql/workspace-query-builder/utils/__tests__/stringify-without-key-quote.spec.ts +++ b/packages/twenty-server/src/engine/api/graphql/workspace-query-builder/utils/__tests__/stringify-without-key-quote.spec.ts @@ -1,4 +1,4 @@ -import { stringifyWithoutKeyQuote } from 'src/engine/graphql/workspace-query-builder/utils/stringify-without-key-quote.util'; +import { stringifyWithoutKeyQuote } from 'src/engine/api/graphql/workspace-query-builder/utils/stringify-without-key-quote.util'; describe('stringifyWithoutKeyQuote', () => { test('should stringify object correctly without quotes around keys', () => { diff --git a/packages/twenty-server/src/engine/graphql/workspace-query-builder/utils/get-field-arguments-by-key.util.ts b/packages/twenty-server/src/engine/api/graphql/workspace-query-builder/utils/get-field-arguments-by-key.util.ts similarity index 100% rename from packages/twenty-server/src/engine/graphql/workspace-query-builder/utils/get-field-arguments-by-key.util.ts rename to packages/twenty-server/src/engine/api/graphql/workspace-query-builder/utils/get-field-arguments-by-key.util.ts diff --git a/packages/twenty-server/src/engine/graphql/workspace-query-builder/utils/stringify-without-key-quote.util.ts b/packages/twenty-server/src/engine/api/graphql/workspace-query-builder/utils/stringify-without-key-quote.util.ts similarity index 100% rename from packages/twenty-server/src/engine/graphql/workspace-query-builder/utils/stringify-without-key-quote.util.ts rename to packages/twenty-server/src/engine/api/graphql/workspace-query-builder/utils/stringify-without-key-quote.util.ts diff --git a/packages/twenty-server/src/engine/graphql/workspace-query-builder/workspace-query-builder.factory.ts b/packages/twenty-server/src/engine/api/graphql/workspace-query-builder/workspace-query-builder.factory.ts similarity index 92% rename from packages/twenty-server/src/engine/graphql/workspace-query-builder/workspace-query-builder.factory.ts rename to packages/twenty-server/src/engine/api/graphql/workspace-query-builder/workspace-query-builder.factory.ts index 65abfa013fd..451821dc8b4 100644 --- a/packages/twenty-server/src/engine/graphql/workspace-query-builder/workspace-query-builder.factory.ts +++ b/packages/twenty-server/src/engine/api/graphql/workspace-query-builder/workspace-query-builder.factory.ts @@ -1,11 +1,11 @@ import { Injectable, Logger } from '@nestjs/common'; -import { WorkspaceQueryBuilderOptions } from 'src/engine/graphql/workspace-query-builder/interfaces/workspace-query-builder-options.interface'; +import { WorkspaceQueryBuilderOptions } from 'src/engine/api/graphql/workspace-query-builder/interfaces/workspace-query-builder-options.interface'; import { Record as IRecord, RecordFilter, RecordOrderBy, -} from 'src/engine/graphql/workspace-query-builder/interfaces/record.interface'; +} from 'src/engine/api/graphql/workspace-query-builder/interfaces/record.interface'; import { FindManyResolverArgs, FindOneResolverArgs, @@ -15,7 +15,7 @@ import { UpdateManyResolverArgs, DeleteManyResolverArgs, FindDuplicatesResolverArgs, -} from 'src/engine/graphql/workspace-resolver-builder/interfaces/workspace-resolvers-builder.interface'; +} from 'src/engine/api/graphql/workspace-resolver-builder/interfaces/workspace-resolvers-builder.interface'; import { FindManyQueryFactory } from './factories/find-many-query.factory'; import { FindOneQueryFactory } from './factories/find-one-query.factory'; diff --git a/packages/twenty-server/src/engine/graphql/workspace-query-builder/workspace-query-builder.module.ts b/packages/twenty-server/src/engine/api/graphql/workspace-query-builder/workspace-query-builder.module.ts similarity index 69% rename from packages/twenty-server/src/engine/graphql/workspace-query-builder/workspace-query-builder.module.ts rename to packages/twenty-server/src/engine/api/graphql/workspace-query-builder/workspace-query-builder.module.ts index 1ae38791c17..0325af39e03 100644 --- a/packages/twenty-server/src/engine/graphql/workspace-query-builder/workspace-query-builder.module.ts +++ b/packages/twenty-server/src/engine/api/graphql/workspace-query-builder/workspace-query-builder.module.ts @@ -1,8 +1,8 @@ import { Module } from '@nestjs/common'; import { ObjectMetadataModule } from 'src/engine-metadata/object-metadata/object-metadata.module'; -import { FieldsStringFactory } from 'src/engine/graphql/workspace-query-builder/factories/fields-string.factory'; -import { RecordPositionQueryFactory } from 'src/engine/graphql/workspace-query-builder/factories/record-position-query.factory'; +import { FieldsStringFactory } from 'src/engine/api/graphql/workspace-query-builder/factories/fields-string.factory'; +import { RecordPositionQueryFactory } from 'src/engine/api/graphql/workspace-query-builder/factories/record-position-query.factory'; import { WorkspaceQueryBuilderFactory } from './workspace-query-builder.factory'; diff --git a/packages/twenty-server/src/engine/graphql/workspace-query-runner/factories/__tests__/query-runner-args.factory.spec.ts b/packages/twenty-server/src/engine/api/graphql/workspace-query-runner/factories/__tests__/query-runner-args.factory.spec.ts similarity index 81% rename from packages/twenty-server/src/engine/graphql/workspace-query-runner/factories/__tests__/query-runner-args.factory.spec.ts rename to packages/twenty-server/src/engine/api/graphql/workspace-query-runner/factories/__tests__/query-runner-args.factory.spec.ts index 8e1f4b8a2cf..ea9076a2c9c 100644 --- a/packages/twenty-server/src/engine/graphql/workspace-query-runner/factories/__tests__/query-runner-args.factory.spec.ts +++ b/packages/twenty-server/src/engine/api/graphql/workspace-query-runner/factories/__tests__/query-runner-args.factory.spec.ts @@ -1,11 +1,11 @@ import { Test, TestingModule } from '@nestjs/testing'; -import { WorkspaceQueryRunnerOptions } from 'src/engine/graphql/workspace-query-runner/interfaces/query-runner-option.interface'; +import { WorkspaceQueryRunnerOptions } from 'src/engine/api/graphql/workspace-query-runner/interfaces/query-runner-option.interface'; import { FieldMetadataInterface } from 'src/engine-metadata/field-metadata/interfaces/field-metadata.interface'; -import { QueryRunnerArgsFactory } from 'src/engine/graphql/workspace-query-runner/factories/query-runner-args.factory'; +import { QueryRunnerArgsFactory } from 'src/engine/api/graphql/workspace-query-runner/factories/query-runner-args.factory'; import { FieldMetadataType } from 'src/engine-metadata/field-metadata/field-metadata.entity'; -import { RecordPositionFactory } from 'src/engine/graphql/workspace-query-runner/factories/record-position.factory'; +import { RecordPositionFactory } from 'src/engine/api/graphql/workspace-query-runner/factories/record-position.factory'; describe('QueryRunnerArgsFactory', () => { const recordPositionFactory = { diff --git a/packages/twenty-server/src/engine/graphql/workspace-query-runner/factories/__tests__/record-position.factory.spec.ts b/packages/twenty-server/src/engine/api/graphql/workspace-query-runner/factories/__tests__/record-position.factory.spec.ts similarity index 88% rename from packages/twenty-server/src/engine/graphql/workspace-query-runner/factories/__tests__/record-position.factory.spec.ts rename to packages/twenty-server/src/engine/api/graphql/workspace-query-runner/factories/__tests__/record-position.factory.spec.ts index 2daa76157e1..e556e1514d3 100644 --- a/packages/twenty-server/src/engine/graphql/workspace-query-runner/factories/__tests__/record-position.factory.spec.ts +++ b/packages/twenty-server/src/engine/api/graphql/workspace-query-runner/factories/__tests__/record-position.factory.spec.ts @@ -1,8 +1,8 @@ import { TestingModule, Test } from '@nestjs/testing'; import { WorkspaceDataSourceService } from 'src/engine/workspace-datasource/workspace-datasource.service'; -import { RecordPositionQueryFactory } from 'src/engine/graphql/workspace-query-builder/factories/record-position-query.factory'; -import { RecordPositionFactory } from 'src/engine/graphql/workspace-query-runner/factories/record-position.factory'; +import { RecordPositionQueryFactory } from 'src/engine/api/graphql/workspace-query-builder/factories/record-position-query.factory'; +import { RecordPositionFactory } from 'src/engine/api/graphql/workspace-query-runner/factories/record-position.factory'; describe('RecordPositionFactory', () => { const recordPositionQueryFactory = { diff --git a/packages/twenty-server/src/engine/graphql/workspace-query-runner/factories/index.ts b/packages/twenty-server/src/engine/api/graphql/workspace-query-runner/factories/index.ts similarity index 100% rename from packages/twenty-server/src/engine/graphql/workspace-query-runner/factories/index.ts rename to packages/twenty-server/src/engine/api/graphql/workspace-query-runner/factories/index.ts diff --git a/packages/twenty-server/src/engine/graphql/workspace-query-runner/factories/query-runner-args.factory.ts b/packages/twenty-server/src/engine/api/graphql/workspace-query-runner/factories/query-runner-args.factory.ts similarity index 93% rename from packages/twenty-server/src/engine/graphql/workspace-query-runner/factories/query-runner-args.factory.ts rename to packages/twenty-server/src/engine/api/graphql/workspace-query-runner/factories/query-runner-args.factory.ts index 80c6f8b6127..8bc5df46320 100644 --- a/packages/twenty-server/src/engine/graphql/workspace-query-runner/factories/query-runner-args.factory.ts +++ b/packages/twenty-server/src/engine/api/graphql/workspace-query-runner/factories/query-runner-args.factory.ts @@ -1,7 +1,7 @@ import { Injectable } from '@nestjs/common'; import { FieldMetadataInterface } from 'src/engine-metadata/field-metadata/interfaces/field-metadata.interface'; -import { WorkspaceQueryRunnerOptions } from 'src/engine/graphql/workspace-query-runner/interfaces/query-runner-option.interface'; +import { WorkspaceQueryRunnerOptions } from 'src/engine/api/graphql/workspace-query-runner/interfaces/query-runner-option.interface'; import { FieldMetadataType } from 'src/engine-metadata/field-metadata/field-metadata.entity'; diff --git a/packages/twenty-server/src/engine/graphql/workspace-query-runner/factories/record-position.factory.ts b/packages/twenty-server/src/engine/api/graphql/workspace-query-runner/factories/record-position.factory.ts similarity index 92% rename from packages/twenty-server/src/engine/graphql/workspace-query-runner/factories/record-position.factory.ts rename to packages/twenty-server/src/engine/api/graphql/workspace-query-runner/factories/record-position.factory.ts index 97ab15c20f9..1548977144e 100644 --- a/packages/twenty-server/src/engine/graphql/workspace-query-runner/factories/record-position.factory.ts +++ b/packages/twenty-server/src/engine/api/graphql/workspace-query-runner/factories/record-position.factory.ts @@ -4,7 +4,7 @@ import { WorkspaceDataSourceService } from 'src/engine/workspace-datasource/work import { RecordPositionQueryFactory, RecordPositionQueryType, -} from 'src/engine/graphql/workspace-query-builder/factories/record-position-query.factory'; +} from 'src/engine/api/graphql/workspace-query-builder/factories/record-position-query.factory'; @Injectable() export class RecordPositionFactory { diff --git a/packages/twenty-server/src/utils/pagination/interfaces/connection.interface.ts b/packages/twenty-server/src/engine/api/graphql/workspace-query-runner/interfaces/connection.interface.ts similarity index 100% rename from packages/twenty-server/src/utils/pagination/interfaces/connection.interface.ts rename to packages/twenty-server/src/engine/api/graphql/workspace-query-runner/interfaces/connection.interface.ts index 95fa6d5db86..9f5ae3b9ed7 100644 --- a/packages/twenty-server/src/utils/pagination/interfaces/connection.interface.ts +++ b/packages/twenty-server/src/engine/api/graphql/workspace-query-runner/interfaces/connection.interface.ts @@ -1,5 +1,5 @@ -import { IEdge } from './edge.interface'; import { IPageInfo } from './page-info.interface'; +import { IEdge } from './edge.interface'; export interface IConnection = IEdge> { edges: Array; diff --git a/packages/twenty-server/src/utils/pagination/interfaces/edge.interface.ts b/packages/twenty-server/src/engine/api/graphql/workspace-query-runner/interfaces/edge.interface.ts similarity index 100% rename from packages/twenty-server/src/utils/pagination/interfaces/edge.interface.ts rename to packages/twenty-server/src/engine/api/graphql/workspace-query-runner/interfaces/edge.interface.ts diff --git a/packages/twenty-server/src/utils/pagination/interfaces/page-info.interface.ts b/packages/twenty-server/src/engine/api/graphql/workspace-query-runner/interfaces/page-info.interface.ts similarity index 100% rename from packages/twenty-server/src/utils/pagination/interfaces/page-info.interface.ts rename to packages/twenty-server/src/engine/api/graphql/workspace-query-runner/interfaces/page-info.interface.ts diff --git a/packages/twenty-server/src/engine/graphql/workspace-query-runner/interfaces/pg-graphql.interface.ts b/packages/twenty-server/src/engine/api/graphql/workspace-query-runner/interfaces/pg-graphql.interface.ts similarity index 71% rename from packages/twenty-server/src/engine/graphql/workspace-query-runner/interfaces/pg-graphql.interface.ts rename to packages/twenty-server/src/engine/api/graphql/workspace-query-runner/interfaces/pg-graphql.interface.ts index 98c71a1209c..c015f34a3b8 100644 --- a/packages/twenty-server/src/engine/graphql/workspace-query-runner/interfaces/pg-graphql.interface.ts +++ b/packages/twenty-server/src/engine/api/graphql/workspace-query-runner/interfaces/pg-graphql.interface.ts @@ -1,4 +1,4 @@ -import { Record as IRecord } from 'src/engine/graphql/workspace-query-builder/interfaces/record.interface'; +import { Record as IRecord } from 'src/engine/api/graphql/workspace-query-builder/interfaces/record.interface'; export interface PGGraphQLResponse { resolve: { diff --git a/packages/twenty-server/src/engine/graphql/workspace-query-runner/interfaces/query-runner-option.interface.ts b/packages/twenty-server/src/engine/api/graphql/workspace-query-runner/interfaces/query-runner-option.interface.ts similarity index 100% rename from packages/twenty-server/src/engine/graphql/workspace-query-runner/interfaces/query-runner-option.interface.ts rename to packages/twenty-server/src/engine/api/graphql/workspace-query-runner/interfaces/query-runner-option.interface.ts diff --git a/packages/twenty-server/src/engine/graphql/workspace-query-runner/jobs/call-webhook-jobs.job.ts b/packages/twenty-server/src/engine/api/graphql/workspace-query-runner/jobs/call-webhook-jobs.job.ts similarity index 88% rename from packages/twenty-server/src/engine/graphql/workspace-query-runner/jobs/call-webhook-jobs.job.ts rename to packages/twenty-server/src/engine/api/graphql/workspace-query-runner/jobs/call-webhook-jobs.job.ts index 45108bca4d2..c05e094e47d 100644 --- a/packages/twenty-server/src/engine/graphql/workspace-query-runner/jobs/call-webhook-jobs.job.ts +++ b/packages/twenty-server/src/engine/api/graphql/workspace-query-runner/jobs/call-webhook-jobs.job.ts @@ -1,17 +1,17 @@ import { Inject, Injectable, Logger } from '@nestjs/common'; -import { MessageQueueJob } from 'src/integrations/message-queue/interfaces/message-queue-job.interface'; +import { MessageQueueJob } from 'src/engine/integrations/message-queue/interfaces/message-queue-job.interface'; import { ObjectMetadataInterface } from 'src/engine-metadata/field-metadata/interfaces/object-metadata.interface'; import { WorkspaceDataSourceService } from 'src/engine/workspace-datasource/workspace-datasource.service'; import { ObjectMetadataService } from 'src/engine-metadata/object-metadata/object-metadata.service'; import { DataSourceService } from 'src/engine-metadata/data-source/data-source.service'; -import { MessageQueueService } from 'src/integrations/message-queue/services/message-queue.service'; -import { MessageQueue } from 'src/integrations/message-queue/message-queue.constants'; +import { MessageQueueService } from 'src/engine/integrations/message-queue/services/message-queue.service'; +import { MessageQueue } from 'src/engine/integrations/message-queue/message-queue.constants'; import { CallWebhookJob, CallWebhookJobData, -} from 'src/engine/graphql/workspace-query-runner/jobs/call-webhook.job'; +} from 'src/engine/api/graphql/workspace-query-runner/jobs/call-webhook.job'; export enum CallWebhookJobsJobOperation { create = 'create', diff --git a/packages/twenty-server/src/engine/graphql/workspace-query-runner/jobs/call-webhook.job.ts b/packages/twenty-server/src/engine/api/graphql/workspace-query-runner/jobs/call-webhook.job.ts similarity index 89% rename from packages/twenty-server/src/engine/graphql/workspace-query-runner/jobs/call-webhook.job.ts rename to packages/twenty-server/src/engine/api/graphql/workspace-query-runner/jobs/call-webhook.job.ts index 5945b68c198..5ce75b717f4 100644 --- a/packages/twenty-server/src/engine/graphql/workspace-query-runner/jobs/call-webhook.job.ts +++ b/packages/twenty-server/src/engine/api/graphql/workspace-query-runner/jobs/call-webhook.job.ts @@ -1,7 +1,7 @@ import { Injectable, Logger } from '@nestjs/common'; import { HttpService } from '@nestjs/axios'; -import { MessageQueueJob } from 'src/integrations/message-queue/interfaces/message-queue-job.interface'; +import { MessageQueueJob } from 'src/engine/integrations/message-queue/interfaces/message-queue-job.interface'; export type CallWebhookJobData = { targetUrl: string; diff --git a/packages/twenty-server/src/engine/graphql/workspace-query-runner/jobs/record-position-backfill.job.ts b/packages/twenty-server/src/engine/api/graphql/workspace-query-runner/jobs/record-position-backfill.job.ts similarity index 71% rename from packages/twenty-server/src/engine/graphql/workspace-query-runner/jobs/record-position-backfill.job.ts rename to packages/twenty-server/src/engine/api/graphql/workspace-query-runner/jobs/record-position-backfill.job.ts index dcc5ab8bf40..bbd777e35dc 100644 --- a/packages/twenty-server/src/engine/graphql/workspace-query-runner/jobs/record-position-backfill.job.ts +++ b/packages/twenty-server/src/engine/api/graphql/workspace-query-runner/jobs/record-position-backfill.job.ts @@ -1,8 +1,8 @@ import { Injectable } from '@nestjs/common'; -import { MessageQueueJob } from 'src/integrations/message-queue/interfaces/message-queue-job.interface'; +import { MessageQueueJob } from 'src/engine/integrations/message-queue/interfaces/message-queue-job.interface'; -import { RecordPositionBackfillService } from 'src/engine/graphql/workspace-query-runner/services/record-position-backfill-service'; +import { RecordPositionBackfillService } from 'src/engine/api/graphql/workspace-query-runner/services/record-position-backfill-service'; export type RecordPositionBackfillJobData = { workspaceId: string; diff --git a/packages/twenty-server/src/engine/graphql/workspace-query-runner/listeners/record-position.listener.ts b/packages/twenty-server/src/engine/api/graphql/workspace-query-runner/listeners/record-position.listener.ts similarity index 77% rename from packages/twenty-server/src/engine/graphql/workspace-query-runner/listeners/record-position.listener.ts rename to packages/twenty-server/src/engine/api/graphql/workspace-query-runner/listeners/record-position.listener.ts index 3ea32791ab8..c3fc08c61e0 100644 --- a/packages/twenty-server/src/engine/graphql/workspace-query-runner/listeners/record-position.listener.ts +++ b/packages/twenty-server/src/engine/api/graphql/workspace-query-runner/listeners/record-position.listener.ts @@ -4,13 +4,13 @@ import { OnEvent } from '@nestjs/event-emitter'; import { CreatedObjectMetadata, ObjectRecordCreateEvent, -} from 'src/integrations/event-emitter/types/object-record-create.event'; -import { MessageQueue } from 'src/integrations/message-queue/message-queue.constants'; -import { MessageQueueService } from 'src/integrations/message-queue/services/message-queue.service'; +} from 'src/engine/integrations/event-emitter/types/object-record-create.event'; +import { MessageQueue } from 'src/engine/integrations/message-queue/message-queue.constants'; +import { MessageQueueService } from 'src/engine/integrations/message-queue/services/message-queue.service'; import { RecordPositionBackfillJob, RecordPositionBackfillJobData, -} from 'src/engine/graphql/workspace-query-runner/jobs/record-position-backfill.job'; +} from 'src/engine/api/graphql/workspace-query-runner/jobs/record-position-backfill.job'; @Injectable() export class RecordPositionListener { diff --git a/packages/twenty-server/src/engine/graphql/workspace-query-runner/services/record-position-backfill-module.ts b/packages/twenty-server/src/engine/api/graphql/workspace-query-runner/services/record-position-backfill-module.ts similarity index 50% rename from packages/twenty-server/src/engine/graphql/workspace-query-runner/services/record-position-backfill-module.ts rename to packages/twenty-server/src/engine/api/graphql/workspace-query-runner/services/record-position-backfill-module.ts index a56ccb85b85..1a058a46ed3 100644 --- a/packages/twenty-server/src/engine/graphql/workspace-query-runner/services/record-position-backfill-module.ts +++ b/packages/twenty-server/src/engine/api/graphql/workspace-query-runner/services/record-position-backfill-module.ts @@ -1,9 +1,9 @@ import { Module } from '@nestjs/common'; import { WorkspaceDataSourceModule } from 'src/engine/workspace-datasource/workspace-datasource.module'; -import { RecordPositionQueryFactory } from 'src/engine/graphql/workspace-query-builder/factories/record-position-query.factory'; -import { RecordPositionFactory } from 'src/engine/graphql/workspace-query-runner/factories/record-position.factory'; -import { RecordPositionBackfillService } from 'src/engine/graphql/workspace-query-runner/services/record-position-backfill-service'; +import { RecordPositionQueryFactory } from 'src/engine/api/graphql/workspace-query-builder/factories/record-position-query.factory'; +import { RecordPositionFactory } from 'src/engine/api/graphql/workspace-query-runner/factories/record-position.factory'; +import { RecordPositionBackfillService } from 'src/engine/api/graphql/workspace-query-runner/services/record-position-backfill-service'; @Module({ imports: [WorkspaceDataSourceModule], diff --git a/packages/twenty-server/src/engine/graphql/workspace-query-runner/services/record-position-backfill-service.ts b/packages/twenty-server/src/engine/api/graphql/workspace-query-runner/services/record-position-backfill-service.ts similarity index 86% rename from packages/twenty-server/src/engine/graphql/workspace-query-runner/services/record-position-backfill-service.ts rename to packages/twenty-server/src/engine/api/graphql/workspace-query-runner/services/record-position-backfill-service.ts index 13b7b0e9a47..a8fb36582c0 100644 --- a/packages/twenty-server/src/engine/graphql/workspace-query-runner/services/record-position-backfill-service.ts +++ b/packages/twenty-server/src/engine/api/graphql/workspace-query-runner/services/record-position-backfill-service.ts @@ -6,8 +6,8 @@ import { WorkspaceDataSourceService } from 'src/engine/workspace-datasource/work import { RecordPositionQueryFactory, RecordPositionQueryType, -} from 'src/engine/graphql/workspace-query-builder/factories/record-position-query.factory'; -import { RecordPositionFactory } from 'src/engine/graphql/workspace-query-runner/factories/record-position.factory'; +} from 'src/engine/api/graphql/workspace-query-builder/factories/record-position-query.factory'; +import { RecordPositionFactory } from 'src/engine/api/graphql/workspace-query-runner/factories/record-position.factory'; @Injectable() export class RecordPositionBackfillService { diff --git a/packages/twenty-server/src/engine/graphql/workspace-query-runner/utils/__tests__/parse-result.spec.ts b/packages/twenty-server/src/engine/api/graphql/workspace-query-runner/utils/__tests__/parse-result.spec.ts similarity index 96% rename from packages/twenty-server/src/engine/graphql/workspace-query-runner/utils/__tests__/parse-result.spec.ts rename to packages/twenty-server/src/engine/api/graphql/workspace-query-runner/utils/__tests__/parse-result.spec.ts index 0ec0a5d65a8..3b731d627b6 100644 --- a/packages/twenty-server/src/engine/graphql/workspace-query-runner/utils/__tests__/parse-result.spec.ts +++ b/packages/twenty-server/src/engine/api/graphql/workspace-query-runner/utils/__tests__/parse-result.spec.ts @@ -2,7 +2,7 @@ import { isSpecialKey, handleSpecialKey, parseResult, -} from 'src/engine/graphql/workspace-query-runner/utils/parse-result.util'; +} from 'src/engine/api/graphql/workspace-query-runner/utils/parse-result.util'; describe('isSpecialKey', () => { test('should return true if the key starts with "___"', () => { diff --git a/packages/twenty-server/src/engine/graphql/workspace-query-runner/utils/compute-pg-graphql-error.util.ts b/packages/twenty-server/src/engine/api/graphql/workspace-query-runner/utils/compute-pg-graphql-error.util.ts similarity index 100% rename from packages/twenty-server/src/engine/graphql/workspace-query-runner/utils/compute-pg-graphql-error.util.ts rename to packages/twenty-server/src/engine/api/graphql/workspace-query-runner/utils/compute-pg-graphql-error.util.ts diff --git a/packages/twenty-server/src/engine/graphql/workspace-query-runner/utils/parse-result.util.ts b/packages/twenty-server/src/engine/api/graphql/workspace-query-runner/utils/parse-result.util.ts similarity index 100% rename from packages/twenty-server/src/engine/graphql/workspace-query-runner/utils/parse-result.util.ts rename to packages/twenty-server/src/engine/api/graphql/workspace-query-runner/utils/parse-result.util.ts diff --git a/packages/twenty-server/src/engine/graphql/workspace-query-runner/workspace-pre-query-hook/interfaces/workspace-pre-query-hook.interface.ts b/packages/twenty-server/src/engine/api/graphql/workspace-query-runner/workspace-pre-query-hook/interfaces/workspace-pre-query-hook.interface.ts similarity index 54% rename from packages/twenty-server/src/engine/graphql/workspace-query-runner/workspace-pre-query-hook/interfaces/workspace-pre-query-hook.interface.ts rename to packages/twenty-server/src/engine/api/graphql/workspace-query-runner/workspace-pre-query-hook/interfaces/workspace-pre-query-hook.interface.ts index 7ab7f16465b..60a782e8c44 100644 --- a/packages/twenty-server/src/engine/graphql/workspace-query-runner/workspace-pre-query-hook/interfaces/workspace-pre-query-hook.interface.ts +++ b/packages/twenty-server/src/engine/api/graphql/workspace-query-runner/workspace-pre-query-hook/interfaces/workspace-pre-query-hook.interface.ts @@ -1,4 +1,4 @@ -import { ResolverArgs } from 'src/engine/graphql/workspace-resolver-builder/interfaces/workspace-resolvers-builder.interface'; +import { ResolverArgs } from 'src/engine/api/graphql/workspace-resolver-builder/interfaces/workspace-resolvers-builder.interface'; export interface WorkspacePreQueryHook { execute( diff --git a/packages/twenty-server/src/engine/graphql/workspace-query-runner/workspace-pre-query-hook/types/workspace-query-hook.type.ts b/packages/twenty-server/src/engine/api/graphql/workspace-query-runner/workspace-pre-query-hook/types/workspace-query-hook.type.ts similarity index 92% rename from packages/twenty-server/src/engine/graphql/workspace-query-runner/workspace-pre-query-hook/types/workspace-query-hook.type.ts rename to packages/twenty-server/src/engine/api/graphql/workspace-query-runner/workspace-pre-query-hook/types/workspace-query-hook.type.ts index 55e731b5360..84d75b1358b 100644 --- a/packages/twenty-server/src/engine/graphql/workspace-query-runner/workspace-pre-query-hook/types/workspace-query-hook.type.ts +++ b/packages/twenty-server/src/engine/api/graphql/workspace-query-runner/workspace-pre-query-hook/types/workspace-query-hook.type.ts @@ -8,7 +8,7 @@ import { FindOneResolverArgs, UpdateManyResolverArgs, UpdateOneResolverArgs, -} from 'src/engine/graphql/workspace-resolver-builder/interfaces/workspace-resolvers-builder.interface'; +} from 'src/engine/api/graphql/workspace-resolver-builder/interfaces/workspace-resolvers-builder.interface'; export type ExecutePreHookMethod = | 'createMany' diff --git a/packages/twenty-server/src/engine/api/graphql/workspace-query-runner/workspace-pre-query-hook/workspace-pre-query-hook.config.ts b/packages/twenty-server/src/engine/api/graphql/workspace-query-runner/workspace-pre-query-hook/workspace-pre-query-hook.config.ts new file mode 100644 index 00000000000..c0472264fe8 --- /dev/null +++ b/packages/twenty-server/src/engine/api/graphql/workspace-query-runner/workspace-pre-query-hook/workspace-pre-query-hook.config.ts @@ -0,0 +1,11 @@ +import { MessageFindManyPreQueryHook } from 'src/modules/messaging/query-hooks/message/message-find-many.pre-query.hook'; +import { MessageFindOnePreQueryHook } from 'src/modules/messaging/query-hooks/message/message-find-one.pre-query-hook'; +import { WorkspaceQueryHook } from 'src/engine/api/graphql/workspace-query-runner/workspace-pre-query-hook/types/workspace-query-hook.type'; + +// TODO: move to a decorator +export const workspacePreQueryHooks: WorkspaceQueryHook = { + message: { + findOne: [MessageFindOnePreQueryHook.name], + findMany: [MessageFindManyPreQueryHook.name], + }, +}; diff --git a/packages/twenty-server/src/engine/api/graphql/workspace-query-runner/workspace-pre-query-hook/workspace-pre-query-hook.module.ts b/packages/twenty-server/src/engine/api/graphql/workspace-query-runner/workspace-pre-query-hook/workspace-pre-query-hook.module.ts new file mode 100644 index 00000000000..3887e39e56f --- /dev/null +++ b/packages/twenty-server/src/engine/api/graphql/workspace-query-runner/workspace-pre-query-hook/workspace-pre-query-hook.module.ts @@ -0,0 +1,11 @@ +import { Module } from '@nestjs/common'; + +import { MessagingQueryHookModule } from 'src/modules/messaging/query-hooks/messaging-query-hook.module'; +import { WorkspacePreQueryHookService } from 'src/engine/api/graphql/workspace-query-runner/workspace-pre-query-hook/workspace-pre-query-hook.service'; + +@Module({ + imports: [MessagingQueryHookModule], + providers: [WorkspacePreQueryHookService], + exports: [WorkspacePreQueryHookService], +}) +export class WorkspacePreQueryHookModule {} diff --git a/packages/twenty-server/src/engine/graphql/workspace-query-runner/workspace-pre-query-hook/workspace-pre-query-hook.service.ts b/packages/twenty-server/src/engine/api/graphql/workspace-query-runner/workspace-pre-query-hook/workspace-pre-query-hook.service.ts similarity index 67% rename from packages/twenty-server/src/engine/graphql/workspace-query-runner/workspace-pre-query-hook/workspace-pre-query-hook.service.ts rename to packages/twenty-server/src/engine/api/graphql/workspace-query-runner/workspace-pre-query-hook/workspace-pre-query-hook.service.ts index e18fc942f5a..28681e0b965 100644 --- a/packages/twenty-server/src/engine/graphql/workspace-query-runner/workspace-pre-query-hook/workspace-pre-query-hook.service.ts +++ b/packages/twenty-server/src/engine/api/graphql/workspace-query-runner/workspace-pre-query-hook/workspace-pre-query-hook.service.ts @@ -1,13 +1,13 @@ import { Injectable } from '@nestjs/common'; import { ModuleRef } from '@nestjs/core'; -import { WorkspacePreQueryHook } from 'src/engine/graphql/workspace-query-runner/workspace-pre-query-hook/interfaces/workspace-pre-query-hook.interface'; +import { WorkspacePreQueryHook } from 'src/engine/api/graphql/workspace-query-runner/workspace-pre-query-hook/interfaces/workspace-pre-query-hook.interface'; import { ExecutePreHookMethod, WorkspacePreQueryHookPayload, -} from 'src/engine/graphql/workspace-query-runner/workspace-pre-query-hook/types/workspace-query-hook.type'; -import { workspacePreQueryHooks } from 'src/engine/graphql/workspace-query-runner/workspace-pre-query-hook/workspace-pre-query-hook.config'; +} from 'src/engine/api/graphql/workspace-query-runner/workspace-pre-query-hook/types/workspace-query-hook.type'; +import { workspacePreQueryHooks } from 'src/engine/api/graphql/workspace-query-runner/workspace-pre-query-hook/workspace-pre-query-hook.config'; @Injectable() export class WorkspacePreQueryHookService { diff --git a/packages/twenty-server/src/engine/graphql/workspace-query-runner/workspace-query-runner.module.ts b/packages/twenty-server/src/engine/api/graphql/workspace-query-runner/workspace-query-runner.module.ts similarity index 52% rename from packages/twenty-server/src/engine/graphql/workspace-query-runner/workspace-query-runner.module.ts rename to packages/twenty-server/src/engine/api/graphql/workspace-query-runner/workspace-query-runner.module.ts index 4399fc492a5..86384c7b142 100644 --- a/packages/twenty-server/src/engine/graphql/workspace-query-runner/workspace-query-runner.module.ts +++ b/packages/twenty-server/src/engine/api/graphql/workspace-query-runner/workspace-query-runner.module.ts @@ -1,10 +1,10 @@ import { Module } from '@nestjs/common'; -import { WorkspaceQueryBuilderModule } from 'src/engine/graphql/workspace-query-builder/workspace-query-builder.module'; +import { WorkspaceQueryBuilderModule } from 'src/engine/api/graphql/workspace-query-builder/workspace-query-builder.module'; import { WorkspaceDataSourceModule } from 'src/engine/workspace-datasource/workspace-datasource.module'; -import { WorkspacePreQueryHookModule } from 'src/engine/graphql/workspace-query-runner/workspace-pre-query-hook/workspace-pre-query-hook.module'; -import { workspaceQueryRunnerFactories } from 'src/engine/graphql/workspace-query-runner/factories'; -import { RecordPositionListener } from 'src/engine/graphql/workspace-query-runner/listeners/record-position.listener'; +import { WorkspacePreQueryHookModule } from 'src/engine/api/graphql/workspace-query-runner/workspace-pre-query-hook/workspace-pre-query-hook.module'; +import { workspaceQueryRunnerFactories } from 'src/engine/api/graphql/workspace-query-runner/factories'; +import { RecordPositionListener } from 'src/engine/api/graphql/workspace-query-runner/listeners/record-position.listener'; import { WorkspaceQueryRunnerService } from './workspace-query-runner.service'; diff --git a/packages/twenty-server/src/engine/graphql/workspace-query-runner/workspace-query-runner.service.ts b/packages/twenty-server/src/engine/api/graphql/workspace-query-runner/workspace-query-runner.service.ts similarity index 89% rename from packages/twenty-server/src/engine/graphql/workspace-query-runner/workspace-query-runner.service.ts rename to packages/twenty-server/src/engine/api/graphql/workspace-query-runner/workspace-query-runner.service.ts index 6206bcf09bd..cc757357148 100644 --- a/packages/twenty-server/src/engine/graphql/workspace-query-runner/workspace-query-runner.service.ts +++ b/packages/twenty-server/src/engine/api/graphql/workspace-query-runner/workspace-query-runner.service.ts @@ -8,12 +8,12 @@ import { EventEmitter2 } from '@nestjs/event-emitter'; import isEmpty from 'lodash.isempty'; -import { IConnection } from 'src/utils/pagination/interfaces/connection.interface'; +import { IConnection } from 'src/engine/api/graphql/workspace-query-runner/interfaces/connection.interface'; import { Record as IRecord, RecordFilter, RecordOrderBy, -} from 'src/engine/graphql/workspace-query-builder/interfaces/record.interface'; +} from 'src/engine/api/graphql/workspace-query-builder/interfaces/record.interface'; import { CreateManyResolverArgs, CreateOneResolverArgs, @@ -24,27 +24,27 @@ import { FindOneResolverArgs, UpdateManyResolverArgs, UpdateOneResolverArgs, -} from 'src/engine/graphql/workspace-resolver-builder/interfaces/workspace-resolvers-builder.interface'; +} from 'src/engine/api/graphql/workspace-resolver-builder/interfaces/workspace-resolvers-builder.interface'; import { ObjectMetadataInterface } from 'src/engine-metadata/field-metadata/interfaces/object-metadata.interface'; -import { WorkspaceQueryBuilderFactory } from 'src/engine/graphql/workspace-query-builder/workspace-query-builder.factory'; +import { WorkspaceQueryBuilderFactory } from 'src/engine/api/graphql/workspace-query-builder/workspace-query-builder.factory'; import { WorkspaceDataSourceService } from 'src/engine/workspace-datasource/workspace-datasource.service'; -import { MessageQueueService } from 'src/integrations/message-queue/services/message-queue.service'; -import { MessageQueue } from 'src/integrations/message-queue/message-queue.constants'; +import { MessageQueueService } from 'src/engine/integrations/message-queue/services/message-queue.service'; +import { MessageQueue } from 'src/engine/integrations/message-queue/message-queue.constants'; import { CallWebhookJobsJob, CallWebhookJobsJobData, CallWebhookJobsJobOperation, -} from 'src/engine/graphql/workspace-query-runner/jobs/call-webhook-jobs.job'; -import { parseResult } from 'src/engine/graphql/workspace-query-runner/utils/parse-result.util'; -import { computeObjectTargetTable } from 'src/engine-workspace/utils/compute-object-target-table.util'; -import { ObjectRecordDeleteEvent } from 'src/integrations/event-emitter/types/object-record-delete.event'; -import { ObjectRecordCreateEvent } from 'src/integrations/event-emitter/types/object-record-create.event'; -import { ObjectRecordUpdateEvent } from 'src/integrations/event-emitter/types/object-record-update.event'; -import { WorkspacePreQueryHookService } from 'src/engine/graphql/workspace-query-runner/workspace-pre-query-hook/workspace-pre-query-hook.service'; -import { EnvironmentService } from 'src/integrations/environment/environment.service'; +} from 'src/engine/api/graphql/workspace-query-runner/jobs/call-webhook-jobs.job'; +import { parseResult } from 'src/engine/api/graphql/workspace-query-runner/utils/parse-result.util'; +import { computeObjectTargetTable } from 'src/engine/utils/compute-object-target-table.util'; +import { ObjectRecordDeleteEvent } from 'src/engine/integrations/event-emitter/types/object-record-delete.event'; +import { ObjectRecordCreateEvent } from 'src/engine/integrations/event-emitter/types/object-record-create.event'; +import { ObjectRecordUpdateEvent } from 'src/engine/integrations/event-emitter/types/object-record-update.event'; +import { WorkspacePreQueryHookService } from 'src/engine/api/graphql/workspace-query-runner/workspace-pre-query-hook/workspace-pre-query-hook.service'; +import { EnvironmentService } from 'src/engine/integrations/environment/environment.service'; import { NotFoundError } from 'src/engine/filters/utils/graphql-errors.util'; -import { QueryRunnerArgsFactory } from 'src/engine/graphql/workspace-query-runner/factories/query-runner-args.factory'; +import { QueryRunnerArgsFactory } from 'src/engine/api/graphql/workspace-query-runner/factories/query-runner-args.factory'; import { WorkspaceQueryRunnerOptions } from './interfaces/query-runner-option.interface'; import { diff --git a/packages/twenty-server/src/engine/graphql/workspace-resolver-builder/constants/duplicate-criteria.constants.ts b/packages/twenty-server/src/engine/api/graphql/workspace-resolver-builder/constants/duplicate-criteria.constants.ts similarity index 87% rename from packages/twenty-server/src/engine/graphql/workspace-resolver-builder/constants/duplicate-criteria.constants.ts rename to packages/twenty-server/src/engine/api/graphql/workspace-resolver-builder/constants/duplicate-criteria.constants.ts index dd7193745c1..1ca7d55dcce 100644 --- a/packages/twenty-server/src/engine/graphql/workspace-resolver-builder/constants/duplicate-criteria.constants.ts +++ b/packages/twenty-server/src/engine/api/graphql/workspace-resolver-builder/constants/duplicate-criteria.constants.ts @@ -1,4 +1,4 @@ -import { RecordDuplicateCriteria } from 'src/engine/graphql/workspace-query-builder/interfaces/record.interface'; +import { RecordDuplicateCriteria } from 'src/engine/api/graphql/workspace-query-builder/interfaces/record.interface'; /** * objectName: directly reference the name of the object from the metadata tables. diff --git a/packages/twenty-server/src/engine/graphql/workspace-resolver-builder/factories/create-many-resolver.factory.ts b/packages/twenty-server/src/engine/api/graphql/workspace-resolver-builder/factories/create-many-resolver.factory.ts similarity index 67% rename from packages/twenty-server/src/engine/graphql/workspace-resolver-builder/factories/create-many-resolver.factory.ts rename to packages/twenty-server/src/engine/api/graphql/workspace-resolver-builder/factories/create-many-resolver.factory.ts index 53f3f90491a..dc1942eccc1 100644 --- a/packages/twenty-server/src/engine/graphql/workspace-resolver-builder/factories/create-many-resolver.factory.ts +++ b/packages/twenty-server/src/engine/api/graphql/workspace-resolver-builder/factories/create-many-resolver.factory.ts @@ -3,11 +3,11 @@ import { Injectable } from '@nestjs/common'; import { CreateManyResolverArgs, Resolver, -} from 'src/engine/graphql/workspace-resolver-builder/interfaces/workspace-resolvers-builder.interface'; -import { WorkspaceSchemaBuilderContext } from 'src/engine/graphql/workspace-schema-builder/interfaces/workspace-schema-builder-context.interface'; -import { WorkspaceResolverBuilderFactoryInterface } from 'src/engine/graphql/workspace-resolver-builder/interfaces/workspace-resolver-builder-factory.interface'; +} from 'src/engine/api/graphql/workspace-resolver-builder/interfaces/workspace-resolvers-builder.interface'; +import { WorkspaceSchemaBuilderContext } from 'src/engine/api/graphql/workspace-schema-builder/interfaces/workspace-schema-builder-context.interface'; +import { WorkspaceResolverBuilderFactoryInterface } from 'src/engine/api/graphql/workspace-resolver-builder/interfaces/workspace-resolver-builder-factory.interface'; -import { WorkspaceQueryRunnerService } from 'src/engine/graphql/workspace-query-runner/workspace-query-runner.service'; +import { WorkspaceQueryRunnerService } from 'src/engine/api/graphql/workspace-query-runner/workspace-query-runner.service'; @Injectable() export class CreateManyResolverFactory diff --git a/packages/twenty-server/src/engine/graphql/workspace-resolver-builder/factories/create-one-resolver.factory.ts b/packages/twenty-server/src/engine/api/graphql/workspace-resolver-builder/factories/create-one-resolver.factory.ts similarity index 67% rename from packages/twenty-server/src/engine/graphql/workspace-resolver-builder/factories/create-one-resolver.factory.ts rename to packages/twenty-server/src/engine/api/graphql/workspace-resolver-builder/factories/create-one-resolver.factory.ts index 37845421bf5..01583f0de9b 100644 --- a/packages/twenty-server/src/engine/graphql/workspace-resolver-builder/factories/create-one-resolver.factory.ts +++ b/packages/twenty-server/src/engine/api/graphql/workspace-resolver-builder/factories/create-one-resolver.factory.ts @@ -3,11 +3,11 @@ import { Injectable } from '@nestjs/common'; import { CreateOneResolverArgs, Resolver, -} from 'src/engine/graphql/workspace-resolver-builder/interfaces/workspace-resolvers-builder.interface'; -import { WorkspaceSchemaBuilderContext } from 'src/engine/graphql/workspace-schema-builder/interfaces/workspace-schema-builder-context.interface'; -import { WorkspaceResolverBuilderFactoryInterface } from 'src/engine/graphql/workspace-resolver-builder/interfaces/workspace-resolver-builder-factory.interface'; +} from 'src/engine/api/graphql/workspace-resolver-builder/interfaces/workspace-resolvers-builder.interface'; +import { WorkspaceSchemaBuilderContext } from 'src/engine/api/graphql/workspace-schema-builder/interfaces/workspace-schema-builder-context.interface'; +import { WorkspaceResolverBuilderFactoryInterface } from 'src/engine/api/graphql/workspace-resolver-builder/interfaces/workspace-resolver-builder-factory.interface'; -import { WorkspaceQueryRunnerService } from 'src/engine/graphql/workspace-query-runner/workspace-query-runner.service'; +import { WorkspaceQueryRunnerService } from 'src/engine/api/graphql/workspace-query-runner/workspace-query-runner.service'; @Injectable() export class CreateOneResolverFactory diff --git a/packages/twenty-server/src/engine/graphql/workspace-resolver-builder/factories/delete-many-resolver.factory.ts b/packages/twenty-server/src/engine/api/graphql/workspace-resolver-builder/factories/delete-many-resolver.factory.ts similarity index 67% rename from packages/twenty-server/src/engine/graphql/workspace-resolver-builder/factories/delete-many-resolver.factory.ts rename to packages/twenty-server/src/engine/api/graphql/workspace-resolver-builder/factories/delete-many-resolver.factory.ts index 6f55c211026..e74685bb12d 100644 --- a/packages/twenty-server/src/engine/graphql/workspace-resolver-builder/factories/delete-many-resolver.factory.ts +++ b/packages/twenty-server/src/engine/api/graphql/workspace-resolver-builder/factories/delete-many-resolver.factory.ts @@ -3,11 +3,11 @@ import { Injectable } from '@nestjs/common'; import { DeleteManyResolverArgs, Resolver, -} from 'src/engine/graphql/workspace-resolver-builder/interfaces/workspace-resolvers-builder.interface'; -import { WorkspaceSchemaBuilderContext } from 'src/engine/graphql/workspace-schema-builder/interfaces/workspace-schema-builder-context.interface'; -import { WorkspaceResolverBuilderFactoryInterface } from 'src/engine/graphql/workspace-resolver-builder/interfaces/workspace-resolver-builder-factory.interface'; +} from 'src/engine/api/graphql/workspace-resolver-builder/interfaces/workspace-resolvers-builder.interface'; +import { WorkspaceSchemaBuilderContext } from 'src/engine/api/graphql/workspace-schema-builder/interfaces/workspace-schema-builder-context.interface'; +import { WorkspaceResolverBuilderFactoryInterface } from 'src/engine/api/graphql/workspace-resolver-builder/interfaces/workspace-resolver-builder-factory.interface'; -import { WorkspaceQueryRunnerService } from 'src/engine/graphql/workspace-query-runner/workspace-query-runner.service'; +import { WorkspaceQueryRunnerService } from 'src/engine/api/graphql/workspace-query-runner/workspace-query-runner.service'; @Injectable() export class DeleteManyResolverFactory diff --git a/packages/twenty-server/src/engine/graphql/workspace-resolver-builder/factories/delete-one-resolver.factory.ts b/packages/twenty-server/src/engine/api/graphql/workspace-resolver-builder/factories/delete-one-resolver.factory.ts similarity index 67% rename from packages/twenty-server/src/engine/graphql/workspace-resolver-builder/factories/delete-one-resolver.factory.ts rename to packages/twenty-server/src/engine/api/graphql/workspace-resolver-builder/factories/delete-one-resolver.factory.ts index 6d3ff14adb5..f0267618291 100644 --- a/packages/twenty-server/src/engine/graphql/workspace-resolver-builder/factories/delete-one-resolver.factory.ts +++ b/packages/twenty-server/src/engine/api/graphql/workspace-resolver-builder/factories/delete-one-resolver.factory.ts @@ -3,11 +3,11 @@ import { Injectable } from '@nestjs/common'; import { DeleteOneResolverArgs, Resolver, -} from 'src/engine/graphql/workspace-resolver-builder/interfaces/workspace-resolvers-builder.interface'; -import { WorkspaceSchemaBuilderContext } from 'src/engine/graphql/workspace-schema-builder/interfaces/workspace-schema-builder-context.interface'; -import { WorkspaceResolverBuilderFactoryInterface } from 'src/engine/graphql/workspace-resolver-builder/interfaces/workspace-resolver-builder-factory.interface'; +} from 'src/engine/api/graphql/workspace-resolver-builder/interfaces/workspace-resolvers-builder.interface'; +import { WorkspaceSchemaBuilderContext } from 'src/engine/api/graphql/workspace-schema-builder/interfaces/workspace-schema-builder-context.interface'; +import { WorkspaceResolverBuilderFactoryInterface } from 'src/engine/api/graphql/workspace-resolver-builder/interfaces/workspace-resolver-builder-factory.interface'; -import { WorkspaceQueryRunnerService } from 'src/engine/graphql/workspace-query-runner/workspace-query-runner.service'; +import { WorkspaceQueryRunnerService } from 'src/engine/api/graphql/workspace-query-runner/workspace-query-runner.service'; @Injectable() export class DeleteOneResolverFactory diff --git a/packages/twenty-server/src/engine/graphql/workspace-resolver-builder/factories/execute-quick-action-on-one-resolver.factory.ts b/packages/twenty-server/src/engine/api/graphql/workspace-resolver-builder/factories/execute-quick-action-on-one-resolver.factory.ts similarity index 74% rename from packages/twenty-server/src/engine/graphql/workspace-resolver-builder/factories/execute-quick-action-on-one-resolver.factory.ts rename to packages/twenty-server/src/engine/api/graphql/workspace-resolver-builder/factories/execute-quick-action-on-one-resolver.factory.ts index c99f023c4c0..6ab4c61be6e 100644 --- a/packages/twenty-server/src/engine/graphql/workspace-resolver-builder/factories/execute-quick-action-on-one-resolver.factory.ts +++ b/packages/twenty-server/src/engine/api/graphql/workspace-resolver-builder/factories/execute-quick-action-on-one-resolver.factory.ts @@ -5,13 +5,13 @@ import { FindOneResolverArgs, ExecuteQuickActionOnOneResolverArgs, DeleteOneResolverArgs, -} from 'src/engine/graphql/workspace-resolver-builder/interfaces/workspace-resolvers-builder.interface'; -import { Record as IRecord } from 'src/engine/graphql/workspace-query-builder/interfaces/record.interface'; -import { WorkspaceSchemaBuilderContext } from 'src/engine/graphql/workspace-schema-builder/interfaces/workspace-schema-builder-context.interface'; -import { WorkspaceResolverBuilderFactoryInterface } from 'src/engine/graphql/workspace-resolver-builder/interfaces/workspace-resolver-builder-factory.interface'; -import { WorkspaceQueryRunnerOptions } from 'src/engine/graphql/workspace-query-runner/interfaces/query-runner-option.interface'; +} from 'src/engine/api/graphql/workspace-resolver-builder/interfaces/workspace-resolvers-builder.interface'; +import { Record as IRecord } from 'src/engine/api/graphql/workspace-query-builder/interfaces/record.interface'; +import { WorkspaceSchemaBuilderContext } from 'src/engine/api/graphql/workspace-schema-builder/interfaces/workspace-schema-builder-context.interface'; +import { WorkspaceResolverBuilderFactoryInterface } from 'src/engine/api/graphql/workspace-resolver-builder/interfaces/workspace-resolver-builder-factory.interface'; +import { WorkspaceQueryRunnerOptions } from 'src/engine/api/graphql/workspace-query-runner/interfaces/query-runner-option.interface'; -import { WorkspaceQueryRunnerService } from 'src/engine/graphql/workspace-query-runner/workspace-query-runner.service'; +import { WorkspaceQueryRunnerService } from 'src/engine/api/graphql/workspace-query-runner/workspace-query-runner.service'; import { QuickActionsService } from 'src/engine/modules/quick-actions/quick-actions.service'; @Injectable() diff --git a/packages/twenty-server/src/engine/graphql/workspace-resolver-builder/factories/factories.ts b/packages/twenty-server/src/engine/api/graphql/workspace-resolver-builder/factories/factories.ts similarity index 92% rename from packages/twenty-server/src/engine/graphql/workspace-resolver-builder/factories/factories.ts rename to packages/twenty-server/src/engine/api/graphql/workspace-resolver-builder/factories/factories.ts index da369eedddf..9bd0f4432e7 100644 --- a/packages/twenty-server/src/engine/graphql/workspace-resolver-builder/factories/factories.ts +++ b/packages/twenty-server/src/engine/api/graphql/workspace-resolver-builder/factories/factories.ts @@ -1,4 +1,4 @@ -import { UpdateManyResolverFactory } from 'src/engine/graphql/workspace-resolver-builder/factories/update-many-resolver.factory'; +import { UpdateManyResolverFactory } from 'src/engine/api/graphql/workspace-resolver-builder/factories/update-many-resolver.factory'; import { FindDuplicatesResolverFactory } from './find-duplicates-resolver.factory'; import { FindManyResolverFactory } from './find-many-resolver.factory'; diff --git a/packages/twenty-server/src/engine/graphql/workspace-resolver-builder/factories/find-duplicates-resolver.factory.ts b/packages/twenty-server/src/engine/api/graphql/workspace-resolver-builder/factories/find-duplicates-resolver.factory.ts similarity index 67% rename from packages/twenty-server/src/engine/graphql/workspace-resolver-builder/factories/find-duplicates-resolver.factory.ts rename to packages/twenty-server/src/engine/api/graphql/workspace-resolver-builder/factories/find-duplicates-resolver.factory.ts index edb4edcf957..ee288c708ef 100644 --- a/packages/twenty-server/src/engine/graphql/workspace-resolver-builder/factories/find-duplicates-resolver.factory.ts +++ b/packages/twenty-server/src/engine/api/graphql/workspace-resolver-builder/factories/find-duplicates-resolver.factory.ts @@ -3,11 +3,11 @@ import { Injectable } from '@nestjs/common'; import { FindDuplicatesResolverArgs, Resolver, -} from 'src/engine/graphql/workspace-resolver-builder/interfaces/workspace-resolvers-builder.interface'; -import { WorkspaceSchemaBuilderContext } from 'src/engine/graphql/workspace-schema-builder/interfaces/workspace-schema-builder-context.interface'; -import { WorkspaceResolverBuilderFactoryInterface } from 'src/engine/graphql/workspace-resolver-builder/interfaces/workspace-resolver-builder-factory.interface'; +} from 'src/engine/api/graphql/workspace-resolver-builder/interfaces/workspace-resolvers-builder.interface'; +import { WorkspaceSchemaBuilderContext } from 'src/engine/api/graphql/workspace-schema-builder/interfaces/workspace-schema-builder-context.interface'; +import { WorkspaceResolverBuilderFactoryInterface } from 'src/engine/api/graphql/workspace-resolver-builder/interfaces/workspace-resolver-builder-factory.interface'; -import { WorkspaceQueryRunnerService } from 'src/engine/graphql/workspace-query-runner/workspace-query-runner.service'; +import { WorkspaceQueryRunnerService } from 'src/engine/api/graphql/workspace-query-runner/workspace-query-runner.service'; @Injectable() export class FindDuplicatesResolverFactory diff --git a/packages/twenty-server/src/engine/graphql/workspace-resolver-builder/factories/find-many-resolver.factory.ts b/packages/twenty-server/src/engine/api/graphql/workspace-resolver-builder/factories/find-many-resolver.factory.ts similarity index 67% rename from packages/twenty-server/src/engine/graphql/workspace-resolver-builder/factories/find-many-resolver.factory.ts rename to packages/twenty-server/src/engine/api/graphql/workspace-resolver-builder/factories/find-many-resolver.factory.ts index 686dd4b0f2a..deead28be2e 100644 --- a/packages/twenty-server/src/engine/graphql/workspace-resolver-builder/factories/find-many-resolver.factory.ts +++ b/packages/twenty-server/src/engine/api/graphql/workspace-resolver-builder/factories/find-many-resolver.factory.ts @@ -3,11 +3,11 @@ import { Injectable } from '@nestjs/common'; import { FindManyResolverArgs, Resolver, -} from 'src/engine/graphql/workspace-resolver-builder/interfaces/workspace-resolvers-builder.interface'; -import { WorkspaceSchemaBuilderContext } from 'src/engine/graphql/workspace-schema-builder/interfaces/workspace-schema-builder-context.interface'; -import { WorkspaceResolverBuilderFactoryInterface } from 'src/engine/graphql/workspace-resolver-builder/interfaces/workspace-resolver-builder-factory.interface'; +} from 'src/engine/api/graphql/workspace-resolver-builder/interfaces/workspace-resolvers-builder.interface'; +import { WorkspaceSchemaBuilderContext } from 'src/engine/api/graphql/workspace-schema-builder/interfaces/workspace-schema-builder-context.interface'; +import { WorkspaceResolverBuilderFactoryInterface } from 'src/engine/api/graphql/workspace-resolver-builder/interfaces/workspace-resolver-builder-factory.interface'; -import { WorkspaceQueryRunnerService } from 'src/engine/graphql/workspace-query-runner/workspace-query-runner.service'; +import { WorkspaceQueryRunnerService } from 'src/engine/api/graphql/workspace-query-runner/workspace-query-runner.service'; @Injectable() export class FindManyResolverFactory diff --git a/packages/twenty-server/src/engine/graphql/workspace-resolver-builder/factories/find-one-resolver.factory.ts b/packages/twenty-server/src/engine/api/graphql/workspace-resolver-builder/factories/find-one-resolver.factory.ts similarity index 67% rename from packages/twenty-server/src/engine/graphql/workspace-resolver-builder/factories/find-one-resolver.factory.ts rename to packages/twenty-server/src/engine/api/graphql/workspace-resolver-builder/factories/find-one-resolver.factory.ts index 83d4294a109..1e8ce6d52da 100644 --- a/packages/twenty-server/src/engine/graphql/workspace-resolver-builder/factories/find-one-resolver.factory.ts +++ b/packages/twenty-server/src/engine/api/graphql/workspace-resolver-builder/factories/find-one-resolver.factory.ts @@ -3,11 +3,11 @@ import { Injectable } from '@nestjs/common'; import { FindOneResolverArgs, Resolver, -} from 'src/engine/graphql/workspace-resolver-builder/interfaces/workspace-resolvers-builder.interface'; -import { WorkspaceSchemaBuilderContext } from 'src/engine/graphql/workspace-schema-builder/interfaces/workspace-schema-builder-context.interface'; -import { WorkspaceResolverBuilderFactoryInterface } from 'src/engine/graphql/workspace-resolver-builder/interfaces/workspace-resolver-builder-factory.interface'; +} from 'src/engine/api/graphql/workspace-resolver-builder/interfaces/workspace-resolvers-builder.interface'; +import { WorkspaceSchemaBuilderContext } from 'src/engine/api/graphql/workspace-schema-builder/interfaces/workspace-schema-builder-context.interface'; +import { WorkspaceResolverBuilderFactoryInterface } from 'src/engine/api/graphql/workspace-resolver-builder/interfaces/workspace-resolver-builder-factory.interface'; -import { WorkspaceQueryRunnerService } from 'src/engine/graphql/workspace-query-runner/workspace-query-runner.service'; +import { WorkspaceQueryRunnerService } from 'src/engine/api/graphql/workspace-query-runner/workspace-query-runner.service'; @Injectable() export class FindOneResolverFactory diff --git a/packages/twenty-server/src/engine/graphql/workspace-resolver-builder/factories/update-many-resolver.factory.ts b/packages/twenty-server/src/engine/api/graphql/workspace-resolver-builder/factories/update-many-resolver.factory.ts similarity index 67% rename from packages/twenty-server/src/engine/graphql/workspace-resolver-builder/factories/update-many-resolver.factory.ts rename to packages/twenty-server/src/engine/api/graphql/workspace-resolver-builder/factories/update-many-resolver.factory.ts index 4f4904bafdd..470f4e79353 100644 --- a/packages/twenty-server/src/engine/graphql/workspace-resolver-builder/factories/update-many-resolver.factory.ts +++ b/packages/twenty-server/src/engine/api/graphql/workspace-resolver-builder/factories/update-many-resolver.factory.ts @@ -3,11 +3,11 @@ import { Injectable } from '@nestjs/common'; import { Resolver, UpdateManyResolverArgs, -} from 'src/engine/graphql/workspace-resolver-builder/interfaces/workspace-resolvers-builder.interface'; -import { WorkspaceSchemaBuilderContext } from 'src/engine/graphql/workspace-schema-builder/interfaces/workspace-schema-builder-context.interface'; -import { WorkspaceResolverBuilderFactoryInterface } from 'src/engine/graphql/workspace-resolver-builder/interfaces/workspace-resolver-builder-factory.interface'; +} from 'src/engine/api/graphql/workspace-resolver-builder/interfaces/workspace-resolvers-builder.interface'; +import { WorkspaceSchemaBuilderContext } from 'src/engine/api/graphql/workspace-schema-builder/interfaces/workspace-schema-builder-context.interface'; +import { WorkspaceResolverBuilderFactoryInterface } from 'src/engine/api/graphql/workspace-resolver-builder/interfaces/workspace-resolver-builder-factory.interface'; -import { WorkspaceQueryRunnerService } from 'src/engine/graphql/workspace-query-runner/workspace-query-runner.service'; +import { WorkspaceQueryRunnerService } from 'src/engine/api/graphql/workspace-query-runner/workspace-query-runner.service'; @Injectable() export class UpdateManyResolverFactory diff --git a/packages/twenty-server/src/engine/graphql/workspace-resolver-builder/factories/update-one-resolver.factory.ts b/packages/twenty-server/src/engine/api/graphql/workspace-resolver-builder/factories/update-one-resolver.factory.ts similarity index 67% rename from packages/twenty-server/src/engine/graphql/workspace-resolver-builder/factories/update-one-resolver.factory.ts rename to packages/twenty-server/src/engine/api/graphql/workspace-resolver-builder/factories/update-one-resolver.factory.ts index 751963e9fe4..0851c54c800 100644 --- a/packages/twenty-server/src/engine/graphql/workspace-resolver-builder/factories/update-one-resolver.factory.ts +++ b/packages/twenty-server/src/engine/api/graphql/workspace-resolver-builder/factories/update-one-resolver.factory.ts @@ -3,11 +3,11 @@ import { Injectable } from '@nestjs/common'; import { Resolver, UpdateOneResolverArgs, -} from 'src/engine/graphql/workspace-resolver-builder/interfaces/workspace-resolvers-builder.interface'; -import { WorkspaceSchemaBuilderContext } from 'src/engine/graphql/workspace-schema-builder/interfaces/workspace-schema-builder-context.interface'; -import { WorkspaceResolverBuilderFactoryInterface } from 'src/engine/graphql/workspace-resolver-builder/interfaces/workspace-resolver-builder-factory.interface'; +} from 'src/engine/api/graphql/workspace-resolver-builder/interfaces/workspace-resolvers-builder.interface'; +import { WorkspaceSchemaBuilderContext } from 'src/engine/api/graphql/workspace-schema-builder/interfaces/workspace-schema-builder-context.interface'; +import { WorkspaceResolverBuilderFactoryInterface } from 'src/engine/api/graphql/workspace-resolver-builder/interfaces/workspace-resolver-builder-factory.interface'; -import { WorkspaceQueryRunnerService } from 'src/engine/graphql/workspace-query-runner/workspace-query-runner.service'; +import { WorkspaceQueryRunnerService } from 'src/engine/api/graphql/workspace-query-runner/workspace-query-runner.service'; @Injectable() export class UpdateOneResolverFactory diff --git a/packages/twenty-server/src/engine/graphql/workspace-resolver-builder/interfaces/pg-graphql.interface.ts b/packages/twenty-server/src/engine/api/graphql/workspace-resolver-builder/interfaces/pg-graphql.interface.ts similarity index 69% rename from packages/twenty-server/src/engine/graphql/workspace-resolver-builder/interfaces/pg-graphql.interface.ts rename to packages/twenty-server/src/engine/api/graphql/workspace-resolver-builder/interfaces/pg-graphql.interface.ts index f5f72566228..4a3f3e13fa1 100644 --- a/packages/twenty-server/src/engine/graphql/workspace-resolver-builder/interfaces/pg-graphql.interface.ts +++ b/packages/twenty-server/src/engine/api/graphql/workspace-resolver-builder/interfaces/pg-graphql.interface.ts @@ -1,4 +1,4 @@ -import { Record as IRecord } from 'src/engine/graphql/workspace-query-builder/interfaces/record.interface'; +import { Record as IRecord } from 'src/engine/api/graphql/workspace-query-builder/interfaces/record.interface'; export interface PGGraphQLResponse { resolve: { diff --git a/packages/twenty-server/src/engine/graphql/workspace-resolver-builder/interfaces/workspace-resolver-builder-factory.interface.ts b/packages/twenty-server/src/engine/api/graphql/workspace-resolver-builder/interfaces/workspace-resolver-builder-factory.interface.ts similarity index 55% rename from packages/twenty-server/src/engine/graphql/workspace-resolver-builder/interfaces/workspace-resolver-builder-factory.interface.ts rename to packages/twenty-server/src/engine/api/graphql/workspace-resolver-builder/interfaces/workspace-resolver-builder-factory.interface.ts index 848847abee7..709e99ff76b 100644 --- a/packages/twenty-server/src/engine/graphql/workspace-resolver-builder/interfaces/workspace-resolver-builder-factory.interface.ts +++ b/packages/twenty-server/src/engine/api/graphql/workspace-resolver-builder/interfaces/workspace-resolver-builder-factory.interface.ts @@ -1,4 +1,4 @@ -import { WorkspaceSchemaBuilderContext } from 'src/engine/graphql/workspace-schema-builder/interfaces/workspace-schema-builder-context.interface'; +import { WorkspaceSchemaBuilderContext } from 'src/engine/api/graphql/workspace-schema-builder/interfaces/workspace-schema-builder-context.interface'; import { Resolver } from './workspace-resolvers-builder.interface'; diff --git a/packages/twenty-server/src/engine/graphql/workspace-resolver-builder/interfaces/workspace-resolvers-builder.interface.ts b/packages/twenty-server/src/engine/api/graphql/workspace-resolver-builder/interfaces/workspace-resolvers-builder.interface.ts similarity index 93% rename from packages/twenty-server/src/engine/graphql/workspace-resolver-builder/interfaces/workspace-resolvers-builder.interface.ts rename to packages/twenty-server/src/engine/api/graphql/workspace-resolver-builder/interfaces/workspace-resolvers-builder.interface.ts index 78355c86b99..20cae32749e 100644 --- a/packages/twenty-server/src/engine/graphql/workspace-resolver-builder/interfaces/workspace-resolvers-builder.interface.ts +++ b/packages/twenty-server/src/engine/api/graphql/workspace-resolver-builder/interfaces/workspace-resolvers-builder.interface.ts @@ -4,9 +4,9 @@ import { Record, RecordFilter, RecordOrderBy, -} from 'src/engine/graphql/workspace-query-builder/interfaces/record.interface'; +} from 'src/engine/api/graphql/workspace-query-builder/interfaces/record.interface'; -import { workspaceResolverBuilderMethodNames } from 'src/engine/graphql/workspace-resolver-builder/factories/factories'; +import { workspaceResolverBuilderMethodNames } from 'src/engine/api/graphql/workspace-resolver-builder/factories/factories'; export type Resolver = GraphQLFieldResolver; diff --git a/packages/twenty-server/src/engine/graphql/workspace-resolver-builder/workspace-resolver-builder.module.ts b/packages/twenty-server/src/engine/api/graphql/workspace-resolver-builder/workspace-resolver-builder.module.ts similarity index 81% rename from packages/twenty-server/src/engine/graphql/workspace-resolver-builder/workspace-resolver-builder.module.ts rename to packages/twenty-server/src/engine/api/graphql/workspace-resolver-builder/workspace-resolver-builder.module.ts index 34eed955d0e..3cbef4cf4c0 100644 --- a/packages/twenty-server/src/engine/graphql/workspace-resolver-builder/workspace-resolver-builder.module.ts +++ b/packages/twenty-server/src/engine/api/graphql/workspace-resolver-builder/workspace-resolver-builder.module.ts @@ -1,6 +1,6 @@ import { Module } from '@nestjs/common'; -import { WorkspaceQueryRunnerModule } from 'src/engine/graphql/workspace-query-runner/workspace-query-runner.module'; +import { WorkspaceQueryRunnerModule } from 'src/engine/api/graphql/workspace-query-runner/workspace-query-runner.module'; import { QuickActionsModule } from 'src/engine/modules/quick-actions/quick-actions.module'; import { WorkspaceResolverFactory } from './workspace-resolver.factory'; diff --git a/packages/twenty-server/src/engine/graphql/workspace-resolver-builder/workspace-resolver.factory.ts b/packages/twenty-server/src/engine/api/graphql/workspace-resolver-builder/workspace-resolver.factory.ts similarity index 91% rename from packages/twenty-server/src/engine/graphql/workspace-resolver-builder/workspace-resolver.factory.ts rename to packages/twenty-server/src/engine/api/graphql/workspace-resolver-builder/workspace-resolver.factory.ts index 096aae9b75f..8e2a548d897 100644 --- a/packages/twenty-server/src/engine/graphql/workspace-resolver-builder/workspace-resolver.factory.ts +++ b/packages/twenty-server/src/engine/api/graphql/workspace-resolver-builder/workspace-resolver.factory.ts @@ -4,10 +4,10 @@ import { IResolvers } from '@graphql-tools/utils'; import { ObjectMetadataInterface } from 'src/engine-metadata/field-metadata/interfaces/object-metadata.interface'; -import { getResolverName } from 'src/engine-workspace/utils/get-resolver-name.util'; -import { UpdateManyResolverFactory } from 'src/engine/graphql/workspace-resolver-builder/factories/update-many-resolver.factory'; -import { DeleteManyResolverFactory } from 'src/engine/graphql/workspace-resolver-builder/factories/delete-many-resolver.factory'; -import { ExecuteQuickActionOnOneResolverFactory } from 'src/engine/graphql/workspace-resolver-builder/factories/execute-quick-action-on-one-resolver.factory'; +import { getResolverName } from 'src/engine/utils/get-resolver-name.util'; +import { UpdateManyResolverFactory } from 'src/engine/api/graphql/workspace-resolver-builder/factories/update-many-resolver.factory'; +import { DeleteManyResolverFactory } from 'src/engine/api/graphql/workspace-resolver-builder/factories/delete-many-resolver.factory'; +import { ExecuteQuickActionOnOneResolverFactory } from 'src/engine/api/graphql/workspace-resolver-builder/factories/execute-quick-action-on-one-resolver.factory'; import { FindDuplicatesResolverFactory } from './factories/find-duplicates-resolver.factory'; import { FindManyResolverFactory } from './factories/find-many-resolver.factory'; diff --git a/packages/twenty-server/src/engine/graphql/workspace-schema-builder/factories/args.factory.ts b/packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/factories/args.factory.ts similarity index 82% rename from packages/twenty-server/src/engine/graphql/workspace-schema-builder/factories/args.factory.ts rename to packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/factories/args.factory.ts index 5940e3b64a1..7f316119cc2 100644 --- a/packages/twenty-server/src/engine/graphql/workspace-schema-builder/factories/args.factory.ts +++ b/packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/factories/args.factory.ts @@ -2,11 +2,11 @@ import { Injectable, Logger } from '@nestjs/common'; import { GraphQLFieldConfigArgumentMap } from 'graphql'; -import { WorkspaceBuildSchemaOptions } from 'src/engine/graphql/workspace-schema-builder/interfaces/workspace-build-schema-optionts.interface'; -import { ArgsMetadata } from 'src/engine/graphql/workspace-schema-builder/interfaces/param-metadata.interface'; +import { WorkspaceBuildSchemaOptions } from 'src/engine/api/graphql/workspace-schema-builder/interfaces/workspace-build-schema-optionts.interface'; +import { ArgsMetadata } from 'src/engine/api/graphql/workspace-schema-builder/interfaces/param-metadata.interface'; -import { TypeDefinitionsStorage } from 'src/engine/graphql/workspace-schema-builder/storages/type-definitions.storage'; -import { TypeMapperService } from 'src/engine/graphql/workspace-schema-builder/services/type-mapper.service'; +import { TypeDefinitionsStorage } from 'src/engine/api/graphql/workspace-schema-builder/storages/type-definitions.storage'; +import { TypeMapperService } from 'src/engine/api/graphql/workspace-schema-builder/services/type-mapper.service'; @Injectable() export class ArgsFactory { diff --git a/packages/twenty-server/src/engine/graphql/workspace-schema-builder/factories/connection-type-definition.factory.ts b/packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/factories/connection-type-definition.factory.ts similarity index 93% rename from packages/twenty-server/src/engine/graphql/workspace-schema-builder/factories/connection-type-definition.factory.ts rename to packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/factories/connection-type-definition.factory.ts index beecc865ac7..ef9d8854805 100644 --- a/packages/twenty-server/src/engine/graphql/workspace-schema-builder/factories/connection-type-definition.factory.ts +++ b/packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/factories/connection-type-definition.factory.ts @@ -2,7 +2,7 @@ import { Injectable, Logger } from '@nestjs/common'; import { GraphQLFieldConfigMap, GraphQLInt, GraphQLObjectType } from 'graphql'; -import { WorkspaceBuildSchemaOptions } from 'src/engine/graphql/workspace-schema-builder/interfaces/workspace-build-schema-optionts.interface'; +import { WorkspaceBuildSchemaOptions } from 'src/engine/api/graphql/workspace-schema-builder/interfaces/workspace-build-schema-optionts.interface'; import { ObjectMetadataInterface } from 'src/engine-metadata/field-metadata/interfaces/object-metadata.interface'; import { pascalCase } from 'src/utils/pascal-case'; diff --git a/packages/twenty-server/src/engine/graphql/workspace-schema-builder/factories/connection-type.factory.ts b/packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/factories/connection-type.factory.ts similarity index 78% rename from packages/twenty-server/src/engine/graphql/workspace-schema-builder/factories/connection-type.factory.ts rename to packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/factories/connection-type.factory.ts index 13ea80d2363..41919c7157a 100644 --- a/packages/twenty-server/src/engine/graphql/workspace-schema-builder/factories/connection-type.factory.ts +++ b/packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/factories/connection-type.factory.ts @@ -2,15 +2,15 @@ import { Injectable, Logger } from '@nestjs/common'; import { GraphQLOutputType } from 'graphql'; -import { WorkspaceBuildSchemaOptions } from 'src/engine/graphql/workspace-schema-builder/interfaces/workspace-build-schema-optionts.interface'; +import { WorkspaceBuildSchemaOptions } from 'src/engine/api/graphql/workspace-schema-builder/interfaces/workspace-build-schema-optionts.interface'; import { ObjectMetadataInterface } from 'src/engine-metadata/field-metadata/interfaces/object-metadata.interface'; import { TypeMapperService, TypeOptions, -} from 'src/engine/graphql/workspace-schema-builder/services/type-mapper.service'; -import { TypeDefinitionsStorage } from 'src/engine/graphql/workspace-schema-builder/storages/type-definitions.storage'; -import { PageInfoType } from 'src/engine/graphql/workspace-schema-builder/graphql-types/object'; +} from 'src/engine/api/graphql/workspace-schema-builder/services/type-mapper.service'; +import { TypeDefinitionsStorage } from 'src/engine/api/graphql/workspace-schema-builder/storages/type-definitions.storage'; +import { PageInfoType } from 'src/engine/api/graphql/workspace-schema-builder/graphql-types/object'; import { ConnectionTypeDefinitionKind } from './connection-type-definition.factory'; import { ObjectTypeDefinitionKind } from './object-type-definition.factory'; diff --git a/packages/twenty-server/src/engine/graphql/workspace-schema-builder/factories/edge-type-definition.factory.ts b/packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/factories/edge-type-definition.factory.ts similarity index 92% rename from packages/twenty-server/src/engine/graphql/workspace-schema-builder/factories/edge-type-definition.factory.ts rename to packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/factories/edge-type-definition.factory.ts index 61e2dab4492..877a6e9b22d 100644 --- a/packages/twenty-server/src/engine/graphql/workspace-schema-builder/factories/edge-type-definition.factory.ts +++ b/packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/factories/edge-type-definition.factory.ts @@ -2,7 +2,7 @@ import { Injectable, Logger } from '@nestjs/common'; import { GraphQLFieldConfigMap, GraphQLObjectType } from 'graphql'; -import { WorkspaceBuildSchemaOptions } from 'src/engine/graphql/workspace-schema-builder/interfaces/workspace-build-schema-optionts.interface'; +import { WorkspaceBuildSchemaOptions } from 'src/engine/api/graphql/workspace-schema-builder/interfaces/workspace-build-schema-optionts.interface'; import { ObjectMetadataInterface } from 'src/engine-metadata/field-metadata/interfaces/object-metadata.interface'; import { pascalCase } from 'src/utils/pascal-case'; diff --git a/packages/twenty-server/src/engine/graphql/workspace-schema-builder/factories/edge-type.factory.ts b/packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/factories/edge-type.factory.ts similarity index 77% rename from packages/twenty-server/src/engine/graphql/workspace-schema-builder/factories/edge-type.factory.ts rename to packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/factories/edge-type.factory.ts index 65b7fe94a93..ea1bdaafdbd 100644 --- a/packages/twenty-server/src/engine/graphql/workspace-schema-builder/factories/edge-type.factory.ts +++ b/packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/factories/edge-type.factory.ts @@ -2,15 +2,15 @@ import { Injectable, Logger } from '@nestjs/common'; import { GraphQLOutputType } from 'graphql'; -import { WorkspaceBuildSchemaOptions } from 'src/engine/graphql/workspace-schema-builder/interfaces/workspace-build-schema-optionts.interface'; +import { WorkspaceBuildSchemaOptions } from 'src/engine/api/graphql/workspace-schema-builder/interfaces/workspace-build-schema-optionts.interface'; import { ObjectMetadataInterface } from 'src/engine-metadata/field-metadata/interfaces/object-metadata.interface'; import { TypeMapperService, TypeOptions, -} from 'src/engine/graphql/workspace-schema-builder/services/type-mapper.service'; -import { TypeDefinitionsStorage } from 'src/engine/graphql/workspace-schema-builder/storages/type-definitions.storage'; -import { CursorScalarType } from 'src/engine/graphql/workspace-schema-builder/graphql-types/scalars'; +} from 'src/engine/api/graphql/workspace-schema-builder/services/type-mapper.service'; +import { TypeDefinitionsStorage } from 'src/engine/api/graphql/workspace-schema-builder/storages/type-definitions.storage'; +import { CursorScalarType } from 'src/engine/api/graphql/workspace-schema-builder/graphql-types/scalars'; import { ObjectTypeDefinitionKind } from './object-type-definition.factory'; import { EdgeTypeDefinitionKind } from './edge-type-definition.factory'; diff --git a/packages/twenty-server/src/engine/graphql/workspace-schema-builder/factories/enum-type-definition.factory.ts b/packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/factories/enum-type-definition.factory.ts similarity index 94% rename from packages/twenty-server/src/engine/graphql/workspace-schema-builder/factories/enum-type-definition.factory.ts rename to packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/factories/enum-type-definition.factory.ts index 1a2cd5889c4..def7d1095a4 100644 --- a/packages/twenty-server/src/engine/graphql/workspace-schema-builder/factories/enum-type-definition.factory.ts +++ b/packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/factories/enum-type-definition.factory.ts @@ -2,7 +2,7 @@ import { Injectable, Logger } from '@nestjs/common'; import { GraphQLEnumType } from 'graphql'; -import { WorkspaceBuildSchemaOptions } from 'src/engine/graphql/workspace-schema-builder/interfaces/workspace-build-schema-optionts.interface'; +import { WorkspaceBuildSchemaOptions } from 'src/engine/api/graphql/workspace-schema-builder/interfaces/workspace-build-schema-optionts.interface'; import { ObjectMetadataInterface } from 'src/engine-metadata/field-metadata/interfaces/object-metadata.interface'; import { FieldMetadataInterface } from 'src/engine-metadata/field-metadata/interfaces/field-metadata.interface'; diff --git a/packages/twenty-server/src/engine/graphql/workspace-schema-builder/factories/extend-object-type-definition.factory.ts b/packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/factories/extend-object-type-definition.factory.ts similarity index 86% rename from packages/twenty-server/src/engine/graphql/workspace-schema-builder/factories/extend-object-type-definition.factory.ts rename to packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/factories/extend-object-type-definition.factory.ts index 2a66698099c..98766740b62 100644 --- a/packages/twenty-server/src/engine/graphql/workspace-schema-builder/factories/extend-object-type-definition.factory.ts +++ b/packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/factories/extend-object-type-definition.factory.ts @@ -6,17 +6,17 @@ import { GraphQLObjectType, } from 'graphql'; -import { WorkspaceBuildSchemaOptions } from 'src/engine/graphql/workspace-schema-builder/interfaces/workspace-build-schema-optionts.interface'; +import { WorkspaceBuildSchemaOptions } from 'src/engine/api/graphql/workspace-schema-builder/interfaces/workspace-build-schema-optionts.interface'; import { ObjectMetadataInterface } from 'src/engine-metadata/field-metadata/interfaces/object-metadata.interface'; -import { TypeDefinitionsStorage } from 'src/engine/graphql/workspace-schema-builder/storages/type-definitions.storage'; -import { objectContainsRelationField } from 'src/engine/graphql/workspace-schema-builder/utils/object-contains-relation-field'; -import { getResolverArgs } from 'src/engine/graphql/workspace-schema-builder/utils/get-resolver-args.util'; -import { isRelationFieldMetadataType } from 'src/engine-workspace/utils/is-relation-field-metadata-type.util'; +import { TypeDefinitionsStorage } from 'src/engine/api/graphql/workspace-schema-builder/storages/type-definitions.storage'; +import { objectContainsRelationField } from 'src/engine/api/graphql/workspace-schema-builder/utils/object-contains-relation-field'; +import { getResolverArgs } from 'src/engine/api/graphql/workspace-schema-builder/utils/get-resolver-args.util'; +import { isRelationFieldMetadataType } from 'src/engine/utils/is-relation-field-metadata-type.util'; import { RelationDirection, deduceRelationDirection, -} from 'src/engine-workspace/utils/deduce-relation-direction.util'; +} from 'src/engine/utils/deduce-relation-direction.util'; import { RelationMetadataType } from 'src/engine-metadata/relation-metadata/relation-metadata.entity'; import { RelationTypeFactory } from './relation-type.factory'; diff --git a/packages/twenty-server/src/engine/graphql/workspace-schema-builder/factories/factories.ts b/packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/factories/factories.ts similarity index 93% rename from packages/twenty-server/src/engine/graphql/workspace-schema-builder/factories/factories.ts rename to packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/factories/factories.ts index 65fafba8dc9..71663a0d0b7 100644 --- a/packages/twenty-server/src/engine/graphql/workspace-schema-builder/factories/factories.ts +++ b/packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/factories/factories.ts @@ -1,4 +1,4 @@ -import { EnumTypeDefinitionFactory } from 'src/engine/graphql/workspace-schema-builder/factories/enum-type-definition.factory'; +import { EnumTypeDefinitionFactory } from 'src/engine/api/graphql/workspace-schema-builder/factories/enum-type-definition.factory'; import { ArgsFactory } from './args.factory'; import { InputTypeFactory } from './input-type.factory'; diff --git a/packages/twenty-server/src/engine/graphql/workspace-schema-builder/factories/filter-type-definition.factory.ts b/packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/factories/filter-type-definition.factory.ts similarity index 87% rename from packages/twenty-server/src/engine/graphql/workspace-schema-builder/factories/filter-type-definition.factory.ts rename to packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/factories/filter-type-definition.factory.ts index 46aff0b726c..c2c558e5d55 100644 --- a/packages/twenty-server/src/engine/graphql/workspace-schema-builder/factories/filter-type-definition.factory.ts +++ b/packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/factories/filter-type-definition.factory.ts @@ -2,12 +2,12 @@ import { Injectable } from '@nestjs/common'; import { GraphQLInputFieldConfigMap, GraphQLInputObjectType } from 'graphql'; -import { WorkspaceBuildSchemaOptions } from 'src/engine/graphql/workspace-schema-builder/interfaces/workspace-build-schema-optionts.interface'; +import { WorkspaceBuildSchemaOptions } from 'src/engine/api/graphql/workspace-schema-builder/interfaces/workspace-build-schema-optionts.interface'; import { ObjectMetadataInterface } from 'src/engine-metadata/field-metadata/interfaces/object-metadata.interface'; import { pascalCase } from 'src/utils/pascal-case'; -import { TypeMapperService } from 'src/engine/graphql/workspace-schema-builder/services/type-mapper.service'; -import { isRelationFieldMetadataType } from 'src/engine-workspace/utils/is-relation-field-metadata-type.util'; +import { TypeMapperService } from 'src/engine/api/graphql/workspace-schema-builder/services/type-mapper.service'; +import { isRelationFieldMetadataType } from 'src/engine/utils/is-relation-field-metadata-type.util'; import { FilterTypeFactory } from './filter-type.factory'; import { diff --git a/packages/twenty-server/src/engine/graphql/workspace-schema-builder/factories/filter-type.factory.ts b/packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/factories/filter-type.factory.ts similarity index 85% rename from packages/twenty-server/src/engine/graphql/workspace-schema-builder/factories/filter-type.factory.ts rename to packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/factories/filter-type.factory.ts index cd621fd757f..19477e8cb30 100644 --- a/packages/twenty-server/src/engine/graphql/workspace-schema-builder/factories/filter-type.factory.ts +++ b/packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/factories/filter-type.factory.ts @@ -7,17 +7,17 @@ import { GraphQLScalarType, } from 'graphql'; -import { WorkspaceBuildSchemaOptions } from 'src/engine/graphql/workspace-schema-builder/interfaces/workspace-build-schema-optionts.interface'; +import { WorkspaceBuildSchemaOptions } from 'src/engine/api/graphql/workspace-schema-builder/interfaces/workspace-build-schema-optionts.interface'; import { FieldMetadataInterface } from 'src/engine-metadata/field-metadata/interfaces/field-metadata.interface'; import { TypeMapperService, TypeOptions, -} from 'src/engine/graphql/workspace-schema-builder/services/type-mapper.service'; -import { TypeDefinitionsStorage } from 'src/engine/graphql/workspace-schema-builder/storages/type-definitions.storage'; +} from 'src/engine/api/graphql/workspace-schema-builder/services/type-mapper.service'; +import { TypeDefinitionsStorage } from 'src/engine/api/graphql/workspace-schema-builder/storages/type-definitions.storage'; import { isCompositeFieldMetadataType } from 'src/engine-metadata/field-metadata/utils/is-composite-field-metadata-type.util'; import { isEnumFieldMetadataType } from 'src/engine-metadata/field-metadata/utils/is-enum-field-metadata-type.util'; -import { FilterIs } from 'src/engine/graphql/workspace-schema-builder/graphql-types/input/filter-is.input-type'; +import { FilterIs } from 'src/engine/api/graphql/workspace-schema-builder/graphql-types/input/filter-is.input-type'; import { InputTypeDefinitionKind } from './input-type-definition.factory'; diff --git a/packages/twenty-server/src/engine/graphql/workspace-schema-builder/factories/input-type-definition.factory.ts b/packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/factories/input-type-definition.factory.ts similarity index 89% rename from packages/twenty-server/src/engine/graphql/workspace-schema-builder/factories/input-type-definition.factory.ts rename to packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/factories/input-type-definition.factory.ts index 4f8bc56463f..9511b44280a 100644 --- a/packages/twenty-server/src/engine/graphql/workspace-schema-builder/factories/input-type-definition.factory.ts +++ b/packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/factories/input-type-definition.factory.ts @@ -2,11 +2,11 @@ import { Injectable } from '@nestjs/common'; import { GraphQLInputFieldConfigMap, GraphQLInputObjectType } from 'graphql'; -import { WorkspaceBuildSchemaOptions } from 'src/engine/graphql/workspace-schema-builder/interfaces/workspace-build-schema-optionts.interface'; +import { WorkspaceBuildSchemaOptions } from 'src/engine/api/graphql/workspace-schema-builder/interfaces/workspace-build-schema-optionts.interface'; import { ObjectMetadataInterface } from 'src/engine-metadata/field-metadata/interfaces/object-metadata.interface'; import { pascalCase } from 'src/utils/pascal-case'; -import { isRelationFieldMetadataType } from 'src/engine-workspace/utils/is-relation-field-metadata-type.util'; +import { isRelationFieldMetadataType } from 'src/engine/utils/is-relation-field-metadata-type.util'; import { FieldMetadataType } from 'src/engine-metadata/field-metadata/field-metadata.entity'; import { InputTypeFactory } from './input-type.factory'; diff --git a/packages/twenty-server/src/engine/graphql/workspace-schema-builder/factories/input-type.factory.ts b/packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/factories/input-type.factory.ts similarity index 82% rename from packages/twenty-server/src/engine/graphql/workspace-schema-builder/factories/input-type.factory.ts rename to packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/factories/input-type.factory.ts index 8b387861885..7a5a5e10f74 100644 --- a/packages/twenty-server/src/engine/graphql/workspace-schema-builder/factories/input-type.factory.ts +++ b/packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/factories/input-type.factory.ts @@ -2,14 +2,14 @@ import { Injectable, Logger } from '@nestjs/common'; import { GraphQLInputType } from 'graphql'; -import { WorkspaceBuildSchemaOptions } from 'src/engine/graphql/workspace-schema-builder/interfaces/workspace-build-schema-optionts.interface'; +import { WorkspaceBuildSchemaOptions } from 'src/engine/api/graphql/workspace-schema-builder/interfaces/workspace-build-schema-optionts.interface'; import { FieldMetadataInterface } from 'src/engine-metadata/field-metadata/interfaces/field-metadata.interface'; import { TypeMapperService, TypeOptions, -} from 'src/engine/graphql/workspace-schema-builder/services/type-mapper.service'; -import { TypeDefinitionsStorage } from 'src/engine/graphql/workspace-schema-builder/storages/type-definitions.storage'; +} from 'src/engine/api/graphql/workspace-schema-builder/services/type-mapper.service'; +import { TypeDefinitionsStorage } from 'src/engine/api/graphql/workspace-schema-builder/storages/type-definitions.storage'; import { isCompositeFieldMetadataType } from 'src/engine-metadata/field-metadata/utils/is-composite-field-metadata-type.util'; import { InputTypeDefinitionKind } from './input-type-definition.factory'; diff --git a/packages/twenty-server/src/engine/graphql/workspace-schema-builder/factories/mutation-type.factory.ts b/packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/factories/mutation-type.factory.ts similarity index 77% rename from packages/twenty-server/src/engine/graphql/workspace-schema-builder/factories/mutation-type.factory.ts rename to packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/factories/mutation-type.factory.ts index b5273112522..dbcb506cd74 100644 --- a/packages/twenty-server/src/engine/graphql/workspace-schema-builder/factories/mutation-type.factory.ts +++ b/packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/factories/mutation-type.factory.ts @@ -2,8 +2,8 @@ import { Injectable } from '@nestjs/common'; import { GraphQLObjectType } from 'graphql'; -import { WorkspaceBuildSchemaOptions } from 'src/engine/graphql/workspace-schema-builder/interfaces/workspace-build-schema-optionts.interface'; -import { WorkspaceResolverBuilderMutationMethodNames } from 'src/engine/graphql/workspace-resolver-builder/interfaces/workspace-resolvers-builder.interface'; +import { WorkspaceBuildSchemaOptions } from 'src/engine/api/graphql/workspace-schema-builder/interfaces/workspace-build-schema-optionts.interface'; +import { WorkspaceResolverBuilderMutationMethodNames } from 'src/engine/api/graphql/workspace-resolver-builder/interfaces/workspace-resolvers-builder.interface'; import { ObjectMetadataInterface } from 'src/engine-metadata/field-metadata/interfaces/object-metadata.interface'; import { ObjectTypeName, RootTypeFactory } from './root-type.factory'; diff --git a/packages/twenty-server/src/engine/graphql/workspace-schema-builder/factories/object-type-definition.factory.ts b/packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/factories/object-type-definition.factory.ts similarity index 89% rename from packages/twenty-server/src/engine/graphql/workspace-schema-builder/factories/object-type-definition.factory.ts rename to packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/factories/object-type-definition.factory.ts index c97632e29f1..343df7faae9 100644 --- a/packages/twenty-server/src/engine/graphql/workspace-schema-builder/factories/object-type-definition.factory.ts +++ b/packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/factories/object-type-definition.factory.ts @@ -2,11 +2,11 @@ import { Injectable } from '@nestjs/common'; import { GraphQLFieldConfigMap, GraphQLObjectType } from 'graphql'; -import { WorkspaceBuildSchemaOptions } from 'src/engine/graphql/workspace-schema-builder/interfaces/workspace-build-schema-optionts.interface'; +import { WorkspaceBuildSchemaOptions } from 'src/engine/api/graphql/workspace-schema-builder/interfaces/workspace-build-schema-optionts.interface'; import { ObjectMetadataInterface } from 'src/engine-metadata/field-metadata/interfaces/object-metadata.interface'; import { pascalCase } from 'src/utils/pascal-case'; -import { isRelationFieldMetadataType } from 'src/engine-workspace/utils/is-relation-field-metadata-type.util'; +import { isRelationFieldMetadataType } from 'src/engine/utils/is-relation-field-metadata-type.util'; import { FieldMetadataType } from 'src/engine-metadata/field-metadata/field-metadata.entity'; import { OutputTypeFactory } from './output-type.factory'; diff --git a/packages/twenty-server/src/engine/graphql/workspace-schema-builder/factories/order-by-type-definition.factory.ts b/packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/factories/order-by-type-definition.factory.ts similarity index 88% rename from packages/twenty-server/src/engine/graphql/workspace-schema-builder/factories/order-by-type-definition.factory.ts rename to packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/factories/order-by-type-definition.factory.ts index fc079c31c54..0b10df54c1a 100644 --- a/packages/twenty-server/src/engine/graphql/workspace-schema-builder/factories/order-by-type-definition.factory.ts +++ b/packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/factories/order-by-type-definition.factory.ts @@ -2,11 +2,11 @@ import { Injectable } from '@nestjs/common'; import { GraphQLInputFieldConfigMap, GraphQLInputObjectType } from 'graphql'; -import { WorkspaceBuildSchemaOptions } from 'src/engine/graphql/workspace-schema-builder/interfaces/workspace-build-schema-optionts.interface'; +import { WorkspaceBuildSchemaOptions } from 'src/engine/api/graphql/workspace-schema-builder/interfaces/workspace-build-schema-optionts.interface'; import { ObjectMetadataInterface } from 'src/engine-metadata/field-metadata/interfaces/object-metadata.interface'; import { pascalCase } from 'src/utils/pascal-case'; -import { isRelationFieldMetadataType } from 'src/engine-workspace/utils/is-relation-field-metadata-type.util'; +import { isRelationFieldMetadataType } from 'src/engine/utils/is-relation-field-metadata-type.util'; import { InputTypeDefinition, diff --git a/packages/twenty-server/src/engine/graphql/workspace-schema-builder/factories/order-by-type.factory.ts b/packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/factories/order-by-type.factory.ts similarity index 81% rename from packages/twenty-server/src/engine/graphql/workspace-schema-builder/factories/order-by-type.factory.ts rename to packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/factories/order-by-type.factory.ts index 0175c9b03ab..d452538a26a 100644 --- a/packages/twenty-server/src/engine/graphql/workspace-schema-builder/factories/order-by-type.factory.ts +++ b/packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/factories/order-by-type.factory.ts @@ -2,14 +2,14 @@ import { Injectable, Logger } from '@nestjs/common'; import { GraphQLInputType } from 'graphql'; -import { WorkspaceBuildSchemaOptions } from 'src/engine/graphql/workspace-schema-builder/interfaces/workspace-build-schema-optionts.interface'; +import { WorkspaceBuildSchemaOptions } from 'src/engine/api/graphql/workspace-schema-builder/interfaces/workspace-build-schema-optionts.interface'; import { FieldMetadataInterface } from 'src/engine-metadata/field-metadata/interfaces/field-metadata.interface'; import { TypeMapperService, TypeOptions, -} from 'src/engine/graphql/workspace-schema-builder/services/type-mapper.service'; -import { TypeDefinitionsStorage } from 'src/engine/graphql/workspace-schema-builder/storages/type-definitions.storage'; +} from 'src/engine/api/graphql/workspace-schema-builder/services/type-mapper.service'; +import { TypeDefinitionsStorage } from 'src/engine/api/graphql/workspace-schema-builder/storages/type-definitions.storage'; import { isCompositeFieldMetadataType } from 'src/engine-metadata/field-metadata/utils/is-composite-field-metadata-type.util'; import { InputTypeDefinitionKind } from './input-type-definition.factory'; diff --git a/packages/twenty-server/src/engine/graphql/workspace-schema-builder/factories/orphaned-types.factory.ts b/packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/factories/orphaned-types.factory.ts similarity index 82% rename from packages/twenty-server/src/engine/graphql/workspace-schema-builder/factories/orphaned-types.factory.ts rename to packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/factories/orphaned-types.factory.ts index 6cff06f660a..4cb29d234e4 100644 --- a/packages/twenty-server/src/engine/graphql/workspace-schema-builder/factories/orphaned-types.factory.ts +++ b/packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/factories/orphaned-types.factory.ts @@ -2,7 +2,7 @@ import { Injectable } from '@nestjs/common'; import { GraphQLNamedType } from 'graphql'; -import { TypeDefinitionsStorage } from 'src/engine/graphql/workspace-schema-builder/storages/type-definitions.storage'; +import { TypeDefinitionsStorage } from 'src/engine/api/graphql/workspace-schema-builder/storages/type-definitions.storage'; @Injectable() export class OrphanedTypesFactory { diff --git a/packages/twenty-server/src/engine/graphql/workspace-schema-builder/factories/output-type.factory.ts b/packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/factories/output-type.factory.ts similarity index 82% rename from packages/twenty-server/src/engine/graphql/workspace-schema-builder/factories/output-type.factory.ts rename to packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/factories/output-type.factory.ts index 127f8e30e84..7ba617ebfc8 100644 --- a/packages/twenty-server/src/engine/graphql/workspace-schema-builder/factories/output-type.factory.ts +++ b/packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/factories/output-type.factory.ts @@ -2,14 +2,14 @@ import { Injectable, Logger } from '@nestjs/common'; import { GraphQLOutputType } from 'graphql'; -import { WorkspaceBuildSchemaOptions } from 'src/engine/graphql/workspace-schema-builder/interfaces/workspace-build-schema-optionts.interface'; +import { WorkspaceBuildSchemaOptions } from 'src/engine/api/graphql/workspace-schema-builder/interfaces/workspace-build-schema-optionts.interface'; import { FieldMetadataInterface } from 'src/engine-metadata/field-metadata/interfaces/field-metadata.interface'; import { TypeMapperService, TypeOptions, -} from 'src/engine/graphql/workspace-schema-builder/services/type-mapper.service'; -import { TypeDefinitionsStorage } from 'src/engine/graphql/workspace-schema-builder/storages/type-definitions.storage'; +} from 'src/engine/api/graphql/workspace-schema-builder/services/type-mapper.service'; +import { TypeDefinitionsStorage } from 'src/engine/api/graphql/workspace-schema-builder/storages/type-definitions.storage'; import { isCompositeFieldMetadataType } from 'src/engine-metadata/field-metadata/utils/is-composite-field-metadata-type.util'; import { ObjectTypeDefinitionKind } from './object-type-definition.factory'; diff --git a/packages/twenty-server/src/engine/graphql/workspace-schema-builder/factories/query-type.factory.ts b/packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/factories/query-type.factory.ts similarity index 77% rename from packages/twenty-server/src/engine/graphql/workspace-schema-builder/factories/query-type.factory.ts rename to packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/factories/query-type.factory.ts index 981a4becae5..2275cdca344 100644 --- a/packages/twenty-server/src/engine/graphql/workspace-schema-builder/factories/query-type.factory.ts +++ b/packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/factories/query-type.factory.ts @@ -2,8 +2,8 @@ import { Injectable } from '@nestjs/common'; import { GraphQLObjectType } from 'graphql'; -import { WorkspaceBuildSchemaOptions } from 'src/engine/graphql/workspace-schema-builder/interfaces/workspace-build-schema-optionts.interface'; -import { WorkspaceResolverBuilderQueryMethodNames } from 'src/engine/graphql/workspace-resolver-builder/interfaces/workspace-resolvers-builder.interface'; +import { WorkspaceBuildSchemaOptions } from 'src/engine/api/graphql/workspace-schema-builder/interfaces/workspace-build-schema-optionts.interface'; +import { WorkspaceResolverBuilderQueryMethodNames } from 'src/engine/api/graphql/workspace-resolver-builder/interfaces/workspace-resolvers-builder.interface'; import { ObjectMetadataInterface } from 'src/engine-metadata/field-metadata/interfaces/object-metadata.interface'; import { ObjectTypeName, RootTypeFactory } from './root-type.factory'; diff --git a/packages/twenty-server/src/engine/graphql/workspace-schema-builder/factories/relation-type.factory.ts b/packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/factories/relation-type.factory.ts similarity index 89% rename from packages/twenty-server/src/engine/graphql/workspace-schema-builder/factories/relation-type.factory.ts rename to packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/factories/relation-type.factory.ts index b93ae26a546..c4a68a6b2d1 100644 --- a/packages/twenty-server/src/engine/graphql/workspace-schema-builder/factories/relation-type.factory.ts +++ b/packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/factories/relation-type.factory.ts @@ -6,8 +6,8 @@ import { FieldMetadataInterface } from 'src/engine-metadata/field-metadata/inter import { RelationMetadataInterface } from 'src/engine-metadata/field-metadata/interfaces/relation-metadata.interface'; import { RelationMetadataType } from 'src/engine-metadata/relation-metadata/relation-metadata.entity'; -import { TypeDefinitionsStorage } from 'src/engine/graphql/workspace-schema-builder/storages/type-definitions.storage'; -import { RelationDirection } from 'src/engine-workspace/utils/deduce-relation-direction.util'; +import { TypeDefinitionsStorage } from 'src/engine/api/graphql/workspace-schema-builder/storages/type-definitions.storage'; +import { RelationDirection } from 'src/engine/utils/deduce-relation-direction.util'; import { ObjectTypeDefinitionKind } from './object-type-definition.factory'; diff --git a/packages/twenty-server/src/engine/graphql/workspace-schema-builder/factories/root-type.factory.ts b/packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/factories/root-type.factory.ts similarity index 83% rename from packages/twenty-server/src/engine/graphql/workspace-schema-builder/factories/root-type.factory.ts rename to packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/factories/root-type.factory.ts index ae2a768ff34..b5ec6550792 100644 --- a/packages/twenty-server/src/engine/graphql/workspace-schema-builder/factories/root-type.factory.ts +++ b/packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/factories/root-type.factory.ts @@ -2,14 +2,14 @@ import { Injectable, Logger } from '@nestjs/common'; import { GraphQLFieldConfigMap, GraphQLObjectType } from 'graphql'; -import { WorkspaceBuildSchemaOptions } from 'src/engine/graphql/workspace-schema-builder/interfaces/workspace-build-schema-optionts.interface'; -import { WorkspaceResolverBuilderMethodNames } from 'src/engine/graphql/workspace-resolver-builder/interfaces/workspace-resolvers-builder.interface'; +import { WorkspaceBuildSchemaOptions } from 'src/engine/api/graphql/workspace-schema-builder/interfaces/workspace-build-schema-optionts.interface'; +import { WorkspaceResolverBuilderMethodNames } from 'src/engine/api/graphql/workspace-resolver-builder/interfaces/workspace-resolvers-builder.interface'; import { ObjectMetadataInterface } from 'src/engine-metadata/field-metadata/interfaces/object-metadata.interface'; -import { TypeDefinitionsStorage } from 'src/engine/graphql/workspace-schema-builder/storages/type-definitions.storage'; -import { getResolverName } from 'src/engine-workspace/utils/get-resolver-name.util'; -import { getResolverArgs } from 'src/engine/graphql/workspace-schema-builder/utils/get-resolver-args.util'; -import { TypeMapperService } from 'src/engine/graphql/workspace-schema-builder/services/type-mapper.service'; +import { TypeDefinitionsStorage } from 'src/engine/api/graphql/workspace-schema-builder/storages/type-definitions.storage'; +import { getResolverName } from 'src/engine/utils/get-resolver-name.util'; +import { getResolverArgs } from 'src/engine/api/graphql/workspace-schema-builder/utils/get-resolver-args.util'; +import { TypeMapperService } from 'src/engine/api/graphql/workspace-schema-builder/services/type-mapper.service'; import { ArgsFactory } from './args.factory'; import { ObjectTypeDefinitionKind } from './object-type-definition.factory'; diff --git a/packages/twenty-server/src/engine/graphql/workspace-schema-builder/graphql-types/enum/index.ts b/packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/graphql-types/enum/index.ts similarity index 100% rename from packages/twenty-server/src/engine/graphql/workspace-schema-builder/graphql-types/enum/index.ts rename to packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/graphql-types/enum/index.ts diff --git a/packages/twenty-server/src/engine/graphql/workspace-schema-builder/graphql-types/enum/order-by-direction.enum-type.ts b/packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/graphql-types/enum/order-by-direction.enum-type.ts similarity index 100% rename from packages/twenty-server/src/engine/graphql/workspace-schema-builder/graphql-types/enum/order-by-direction.enum-type.ts rename to packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/graphql-types/enum/order-by-direction.enum-type.ts diff --git a/packages/twenty-server/src/engine/graphql/workspace-schema-builder/graphql-types/input/big-float-filter.input-type.ts b/packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/graphql-types/input/big-float-filter.input-type.ts similarity index 70% rename from packages/twenty-server/src/engine/graphql/workspace-schema-builder/graphql-types/input/big-float-filter.input-type.ts rename to packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/graphql-types/input/big-float-filter.input-type.ts index 895e9981ee4..b9db4a6a4ae 100644 --- a/packages/twenty-server/src/engine/graphql/workspace-schema-builder/graphql-types/input/big-float-filter.input-type.ts +++ b/packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/graphql-types/input/big-float-filter.input-type.ts @@ -1,7 +1,7 @@ import { GraphQLInputObjectType, GraphQLList, GraphQLNonNull } from 'graphql'; -import { FilterIs } from 'src/engine/graphql/workspace-schema-builder/graphql-types/input/filter-is.input-type'; -import { BigFloatScalarType } from 'src/engine/graphql/workspace-schema-builder/graphql-types/scalars'; +import { FilterIs } from 'src/engine/api/graphql/workspace-schema-builder/graphql-types/input/filter-is.input-type'; +import { BigFloatScalarType } from 'src/engine/api/graphql/workspace-schema-builder/graphql-types/scalars'; export const BigFloatFilterType = new GraphQLInputObjectType({ name: 'BigFloatFilter', diff --git a/packages/twenty-server/src/engine/graphql/workspace-schema-builder/graphql-types/input/big-int-filter.input-type.ts b/packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/graphql-types/input/big-int-filter.input-type.ts similarity index 80% rename from packages/twenty-server/src/engine/graphql/workspace-schema-builder/graphql-types/input/big-int-filter.input-type.ts rename to packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/graphql-types/input/big-int-filter.input-type.ts index fe0254f4e94..fed62dc16f2 100644 --- a/packages/twenty-server/src/engine/graphql/workspace-schema-builder/graphql-types/input/big-int-filter.input-type.ts +++ b/packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/graphql-types/input/big-int-filter.input-type.ts @@ -5,7 +5,7 @@ import { GraphQLInt, } from 'graphql'; -import { FilterIs } from 'src/engine/graphql/workspace-schema-builder/graphql-types/input/filter-is.input-type'; +import { FilterIs } from 'src/engine/api/graphql/workspace-schema-builder/graphql-types/input/filter-is.input-type'; export const BigIntFilterType = new GraphQLInputObjectType({ name: 'BigIntFilter', diff --git a/packages/twenty-server/src/engine/graphql/workspace-schema-builder/graphql-types/input/boolean-filter.input-type.ts b/packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/graphql-types/input/boolean-filter.input-type.ts similarity index 67% rename from packages/twenty-server/src/engine/graphql/workspace-schema-builder/graphql-types/input/boolean-filter.input-type.ts rename to packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/graphql-types/input/boolean-filter.input-type.ts index ba3bfb04022..1ea6346481b 100644 --- a/packages/twenty-server/src/engine/graphql/workspace-schema-builder/graphql-types/input/boolean-filter.input-type.ts +++ b/packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/graphql-types/input/boolean-filter.input-type.ts @@ -1,6 +1,6 @@ import { GraphQLBoolean, GraphQLInputObjectType } from 'graphql'; -import { FilterIs } from 'src/engine/graphql/workspace-schema-builder/graphql-types/input/filter-is.input-type'; +import { FilterIs } from 'src/engine/api/graphql/workspace-schema-builder/graphql-types/input/filter-is.input-type'; export const BooleanFilterType = new GraphQLInputObjectType({ name: 'BooleanFilter', diff --git a/packages/twenty-server/src/engine/graphql/workspace-schema-builder/graphql-types/input/date-filter.input-type.ts b/packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/graphql-types/input/date-filter.input-type.ts similarity index 68% rename from packages/twenty-server/src/engine/graphql/workspace-schema-builder/graphql-types/input/date-filter.input-type.ts rename to packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/graphql-types/input/date-filter.input-type.ts index 159e530adae..43499e96e43 100644 --- a/packages/twenty-server/src/engine/graphql/workspace-schema-builder/graphql-types/input/date-filter.input-type.ts +++ b/packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/graphql-types/input/date-filter.input-type.ts @@ -1,7 +1,7 @@ import { GraphQLInputObjectType, GraphQLList, GraphQLNonNull } from 'graphql'; -import { FilterIs } from 'src/engine/graphql/workspace-schema-builder/graphql-types/input/filter-is.input-type'; -import { DateScalarType } from 'src/engine/graphql/workspace-schema-builder/graphql-types/scalars'; +import { FilterIs } from 'src/engine/api/graphql/workspace-schema-builder/graphql-types/input/filter-is.input-type'; +import { DateScalarType } from 'src/engine/api/graphql/workspace-schema-builder/graphql-types/scalars'; export const DateFilterType = new GraphQLInputObjectType({ name: 'DateFilter', diff --git a/packages/twenty-server/src/engine/graphql/workspace-schema-builder/graphql-types/input/date-time-filter.input-type.ts b/packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/graphql-types/input/date-time-filter.input-type.ts similarity index 70% rename from packages/twenty-server/src/engine/graphql/workspace-schema-builder/graphql-types/input/date-time-filter.input-type.ts rename to packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/graphql-types/input/date-time-filter.input-type.ts index 18b85d36838..278eff46dbd 100644 --- a/packages/twenty-server/src/engine/graphql/workspace-schema-builder/graphql-types/input/date-time-filter.input-type.ts +++ b/packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/graphql-types/input/date-time-filter.input-type.ts @@ -1,7 +1,7 @@ import { GraphQLInputObjectType, GraphQLList, GraphQLNonNull } from 'graphql'; -import { FilterIs } from 'src/engine/graphql/workspace-schema-builder/graphql-types/input/filter-is.input-type'; -import { DateTimeScalarType } from 'src/engine/graphql/workspace-schema-builder/graphql-types/scalars'; +import { FilterIs } from 'src/engine/api/graphql/workspace-schema-builder/graphql-types/input/filter-is.input-type'; +import { DateTimeScalarType } from 'src/engine/api/graphql/workspace-schema-builder/graphql-types/scalars'; export const DatetimeFilterType = new GraphQLInputObjectType({ name: 'DateTimeFilter', diff --git a/packages/twenty-server/src/engine/graphql/workspace-schema-builder/graphql-types/input/filter-is.input-type.ts b/packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/graphql-types/input/filter-is.input-type.ts similarity index 100% rename from packages/twenty-server/src/engine/graphql/workspace-schema-builder/graphql-types/input/filter-is.input-type.ts rename to packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/graphql-types/input/filter-is.input-type.ts diff --git a/packages/twenty-server/src/engine/graphql/workspace-schema-builder/graphql-types/input/float-filter.input-type.ts b/packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/graphql-types/input/float-filter.input-type.ts similarity index 81% rename from packages/twenty-server/src/engine/graphql/workspace-schema-builder/graphql-types/input/float-filter.input-type.ts rename to packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/graphql-types/input/float-filter.input-type.ts index 82da74d3d20..24be95056c4 100644 --- a/packages/twenty-server/src/engine/graphql/workspace-schema-builder/graphql-types/input/float-filter.input-type.ts +++ b/packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/graphql-types/input/float-filter.input-type.ts @@ -5,7 +5,7 @@ import { GraphQLNonNull, } from 'graphql'; -import { FilterIs } from 'src/engine/graphql/workspace-schema-builder/graphql-types/input/filter-is.input-type'; +import { FilterIs } from 'src/engine/api/graphql/workspace-schema-builder/graphql-types/input/filter-is.input-type'; export const FloatFilterType = new GraphQLInputObjectType({ name: 'FloatFilter', diff --git a/packages/twenty-server/src/engine/graphql/workspace-schema-builder/graphql-types/input/index.ts b/packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/graphql-types/input/index.ts similarity index 100% rename from packages/twenty-server/src/engine/graphql/workspace-schema-builder/graphql-types/input/index.ts rename to packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/graphql-types/input/index.ts diff --git a/packages/twenty-server/src/engine/graphql/workspace-schema-builder/graphql-types/input/int-filter.input-type.ts b/packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/graphql-types/input/int-filter.input-type.ts similarity index 80% rename from packages/twenty-server/src/engine/graphql/workspace-schema-builder/graphql-types/input/int-filter.input-type.ts rename to packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/graphql-types/input/int-filter.input-type.ts index b0022af2f29..4b2d1dc8009 100644 --- a/packages/twenty-server/src/engine/graphql/workspace-schema-builder/graphql-types/input/int-filter.input-type.ts +++ b/packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/graphql-types/input/int-filter.input-type.ts @@ -5,7 +5,7 @@ import { GraphQLInt, } from 'graphql'; -import { FilterIs } from 'src/engine/graphql/workspace-schema-builder/graphql-types/input/filter-is.input-type'; +import { FilterIs } from 'src/engine/api/graphql/workspace-schema-builder/graphql-types/input/filter-is.input-type'; export const IntFilterType = new GraphQLInputObjectType({ name: 'IntFilter', diff --git a/packages/twenty-server/src/engine/graphql/workspace-schema-builder/graphql-types/input/string-filter.input-type.ts b/packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/graphql-types/input/string-filter.input-type.ts similarity index 85% rename from packages/twenty-server/src/engine/graphql/workspace-schema-builder/graphql-types/input/string-filter.input-type.ts rename to packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/graphql-types/input/string-filter.input-type.ts index 3a7c9197dbf..3ea34f85b0d 100644 --- a/packages/twenty-server/src/engine/graphql/workspace-schema-builder/graphql-types/input/string-filter.input-type.ts +++ b/packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/graphql-types/input/string-filter.input-type.ts @@ -5,7 +5,7 @@ import { GraphQLString, } from 'graphql'; -import { FilterIs } from 'src/engine/graphql/workspace-schema-builder/graphql-types/input/filter-is.input-type'; +import { FilterIs } from 'src/engine/api/graphql/workspace-schema-builder/graphql-types/input/filter-is.input-type'; export const StringFilterType = new GraphQLInputObjectType({ name: 'StringFilter', diff --git a/packages/twenty-server/src/engine/graphql/workspace-schema-builder/graphql-types/input/time-filter.input-type.ts b/packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/graphql-types/input/time-filter.input-type.ts similarity index 68% rename from packages/twenty-server/src/engine/graphql/workspace-schema-builder/graphql-types/input/time-filter.input-type.ts rename to packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/graphql-types/input/time-filter.input-type.ts index bc08a3eb941..58d1b7bab1a 100644 --- a/packages/twenty-server/src/engine/graphql/workspace-schema-builder/graphql-types/input/time-filter.input-type.ts +++ b/packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/graphql-types/input/time-filter.input-type.ts @@ -1,7 +1,7 @@ import { GraphQLInputObjectType, GraphQLList, GraphQLNonNull } from 'graphql'; -import { FilterIs } from 'src/engine/graphql/workspace-schema-builder/graphql-types/input/filter-is.input-type'; -import { TimeScalarType } from 'src/engine/graphql/workspace-schema-builder/graphql-types/scalars'; +import { FilterIs } from 'src/engine/api/graphql/workspace-schema-builder/graphql-types/input/filter-is.input-type'; +import { TimeScalarType } from 'src/engine/api/graphql/workspace-schema-builder/graphql-types/scalars'; export const TimeFilterType = new GraphQLInputObjectType({ name: 'TimeFilter', diff --git a/packages/twenty-server/src/engine/graphql/workspace-schema-builder/graphql-types/input/uuid-filter.input-type.ts b/packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/graphql-types/input/uuid-filter.input-type.ts similarity index 58% rename from packages/twenty-server/src/engine/graphql/workspace-schema-builder/graphql-types/input/uuid-filter.input-type.ts rename to packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/graphql-types/input/uuid-filter.input-type.ts index 3eebe14b7e7..4935e4d9440 100644 --- a/packages/twenty-server/src/engine/graphql/workspace-schema-builder/graphql-types/input/uuid-filter.input-type.ts +++ b/packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/graphql-types/input/uuid-filter.input-type.ts @@ -1,7 +1,7 @@ import { GraphQLInputObjectType, GraphQLList } from 'graphql'; -import { FilterIs } from 'src/engine/graphql/workspace-schema-builder/graphql-types/input/filter-is.input-type'; -import { UUIDScalarType } from 'src/engine/graphql/workspace-schema-builder/graphql-types/scalars'; +import { FilterIs } from 'src/engine/api/graphql/workspace-schema-builder/graphql-types/input/filter-is.input-type'; +import { UUIDScalarType } from 'src/engine/api/graphql/workspace-schema-builder/graphql-types/scalars'; export const UUIDFilterType = new GraphQLInputObjectType({ name: 'UUIDFilter', diff --git a/packages/twenty-server/src/engine/graphql/workspace-schema-builder/graphql-types/object/index.ts b/packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/graphql-types/object/index.ts similarity index 100% rename from packages/twenty-server/src/engine/graphql/workspace-schema-builder/graphql-types/object/index.ts rename to packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/graphql-types/object/index.ts diff --git a/packages/twenty-server/src/engine/graphql/workspace-schema-builder/graphql-types/object/page-into.object-type.ts b/packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/graphql-types/object/page-into.object-type.ts similarity index 100% rename from packages/twenty-server/src/engine/graphql/workspace-schema-builder/graphql-types/object/page-into.object-type.ts rename to packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/graphql-types/object/page-into.object-type.ts diff --git a/packages/twenty-server/src/engine/graphql/workspace-schema-builder/graphql-types/scalars/big-float.scalar.ts b/packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/graphql-types/scalars/big-float.scalar.ts similarity index 100% rename from packages/twenty-server/src/engine/graphql/workspace-schema-builder/graphql-types/scalars/big-float.scalar.ts rename to packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/graphql-types/scalars/big-float.scalar.ts diff --git a/packages/twenty-server/src/engine/graphql/workspace-schema-builder/graphql-types/scalars/big-int.scalar.ts b/packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/graphql-types/scalars/big-int.scalar.ts similarity index 100% rename from packages/twenty-server/src/engine/graphql/workspace-schema-builder/graphql-types/scalars/big-int.scalar.ts rename to packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/graphql-types/scalars/big-int.scalar.ts diff --git a/packages/twenty-server/src/engine/graphql/workspace-schema-builder/graphql-types/scalars/cursor.scalar.ts b/packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/graphql-types/scalars/cursor.scalar.ts similarity index 100% rename from packages/twenty-server/src/engine/graphql/workspace-schema-builder/graphql-types/scalars/cursor.scalar.ts rename to packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/graphql-types/scalars/cursor.scalar.ts diff --git a/packages/twenty-server/src/engine/graphql/workspace-schema-builder/graphql-types/scalars/date-time.scalar.ts b/packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/graphql-types/scalars/date-time.scalar.ts similarity index 100% rename from packages/twenty-server/src/engine/graphql/workspace-schema-builder/graphql-types/scalars/date-time.scalar.ts rename to packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/graphql-types/scalars/date-time.scalar.ts diff --git a/packages/twenty-server/src/engine/graphql/workspace-schema-builder/graphql-types/scalars/date.scalar.ts b/packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/graphql-types/scalars/date.scalar.ts similarity index 100% rename from packages/twenty-server/src/engine/graphql/workspace-schema-builder/graphql-types/scalars/date.scalar.ts rename to packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/graphql-types/scalars/date.scalar.ts diff --git a/packages/twenty-server/src/engine/graphql/workspace-schema-builder/graphql-types/scalars/index.ts b/packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/graphql-types/scalars/index.ts similarity index 100% rename from packages/twenty-server/src/engine/graphql/workspace-schema-builder/graphql-types/scalars/index.ts rename to packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/graphql-types/scalars/index.ts diff --git a/packages/twenty-server/src/engine/graphql/workspace-schema-builder/graphql-types/scalars/position.scalar.ts b/packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/graphql-types/scalars/position.scalar.ts similarity index 100% rename from packages/twenty-server/src/engine/graphql/workspace-schema-builder/graphql-types/scalars/position.scalar.ts rename to packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/graphql-types/scalars/position.scalar.ts diff --git a/packages/twenty-server/src/engine/graphql/workspace-schema-builder/graphql-types/scalars/time.scalar.ts b/packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/graphql-types/scalars/time.scalar.ts similarity index 100% rename from packages/twenty-server/src/engine/graphql/workspace-schema-builder/graphql-types/scalars/time.scalar.ts rename to packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/graphql-types/scalars/time.scalar.ts diff --git a/packages/twenty-server/src/engine/graphql/workspace-schema-builder/graphql-types/scalars/uuid.scalar.ts b/packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/graphql-types/scalars/uuid.scalar.ts similarity index 100% rename from packages/twenty-server/src/engine/graphql/workspace-schema-builder/graphql-types/scalars/uuid.scalar.ts rename to packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/graphql-types/scalars/uuid.scalar.ts diff --git a/packages/twenty-server/src/engine/graphql/workspace-schema-builder/interfaces/param-metadata.interface.ts b/packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/interfaces/param-metadata.interface.ts similarity index 74% rename from packages/twenty-server/src/engine/graphql/workspace-schema-builder/interfaces/param-metadata.interface.ts rename to packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/interfaces/param-metadata.interface.ts index 9fd1e13f995..d117c560eeb 100644 --- a/packages/twenty-server/src/engine/graphql/workspace-schema-builder/interfaces/param-metadata.interface.ts +++ b/packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/interfaces/param-metadata.interface.ts @@ -1,4 +1,4 @@ -import { InputTypeDefinitionKind } from 'src/engine/graphql/workspace-schema-builder/factories/input-type-definition.factory'; +import { InputTypeDefinitionKind } from 'src/engine/api/graphql/workspace-schema-builder/factories/input-type-definition.factory'; import { FieldMetadataType } from 'src/engine-metadata/field-metadata/field-metadata.entity'; export interface ArgMetadata { diff --git a/packages/twenty-server/src/engine/graphql/workspace-schema-builder/interfaces/workspace-build-schema-optionts.interface.ts b/packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/interfaces/workspace-build-schema-optionts.interface.ts similarity index 100% rename from packages/twenty-server/src/engine/graphql/workspace-schema-builder/interfaces/workspace-build-schema-optionts.interface.ts rename to packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/interfaces/workspace-build-schema-optionts.interface.ts diff --git a/packages/twenty-server/src/engine/graphql/workspace-schema-builder/interfaces/workspace-schema-builder-context.interface.ts b/packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/interfaces/workspace-schema-builder-context.interface.ts similarity index 100% rename from packages/twenty-server/src/engine/graphql/workspace-schema-builder/interfaces/workspace-schema-builder-context.interface.ts rename to packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/interfaces/workspace-schema-builder-context.interface.ts diff --git a/packages/twenty-server/src/engine/graphql/workspace-schema-builder/services/type-mapper.service.ts b/packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/services/type-mapper.service.ts similarity index 90% rename from packages/twenty-server/src/engine/graphql/workspace-schema-builder/services/type-mapper.service.ts rename to packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/services/type-mapper.service.ts index 82badbf68dc..d2df890aaf8 100644 --- a/packages/twenty-server/src/engine/graphql/workspace-schema-builder/services/type-mapper.service.ts +++ b/packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/services/type-mapper.service.ts @@ -19,7 +19,7 @@ import { import { DateScalarMode, NumberScalarMode, -} from 'src/engine/graphql/workspace-schema-builder/interfaces/workspace-build-schema-optionts.interface'; +} from 'src/engine/api/graphql/workspace-schema-builder/interfaces/workspace-build-schema-optionts.interface'; import { FieldMetadataType } from 'src/engine-metadata/field-metadata/field-metadata.entity'; import { @@ -31,10 +31,10 @@ import { IntFilterType, BooleanFilterType, BigFloatFilterType, -} from 'src/engine/graphql/workspace-schema-builder/graphql-types/input'; -import { OrderByDirectionType } from 'src/engine/graphql/workspace-schema-builder/graphql-types/enum'; -import { BigFloatScalarType } from 'src/engine/graphql/workspace-schema-builder/graphql-types/scalars'; -import { PositionScalarType } from 'src/engine/graphql/workspace-schema-builder/graphql-types/scalars/position.scalar'; +} from 'src/engine/api/graphql/workspace-schema-builder/graphql-types/input'; +import { OrderByDirectionType } from 'src/engine/api/graphql/workspace-schema-builder/graphql-types/enum'; +import { BigFloatScalarType } from 'src/engine/api/graphql/workspace-schema-builder/graphql-types/scalars'; +import { PositionScalarType } from 'src/engine/api/graphql/workspace-schema-builder/graphql-types/scalars/position.scalar'; export interface TypeOptions { nullable?: boolean; diff --git a/packages/twenty-server/src/engine/graphql/workspace-schema-builder/storages/type-definitions.storage.ts b/packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/storages/type-definitions.storage.ts similarity index 87% rename from packages/twenty-server/src/engine/graphql/workspace-schema-builder/storages/type-definitions.storage.ts rename to packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/storages/type-definitions.storage.ts index 3a2045c37e0..9e539bc5d44 100644 --- a/packages/twenty-server/src/engine/graphql/workspace-schema-builder/storages/type-definitions.storage.ts +++ b/packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/storages/type-definitions.storage.ts @@ -7,15 +7,15 @@ import { } from 'graphql'; import { FieldMetadataType } from 'src/engine-metadata/field-metadata/field-metadata.entity'; -import { EnumTypeDefinition } from 'src/engine/graphql/workspace-schema-builder/factories/enum-type-definition.factory'; +import { EnumTypeDefinition } from 'src/engine/api/graphql/workspace-schema-builder/factories/enum-type-definition.factory'; import { InputTypeDefinition, InputTypeDefinitionKind, -} from 'src/engine/graphql/workspace-schema-builder/factories/input-type-definition.factory'; +} from 'src/engine/api/graphql/workspace-schema-builder/factories/input-type-definition.factory'; import { ObjectTypeDefinition, ObjectTypeDefinitionKind, -} from 'src/engine/graphql/workspace-schema-builder/factories/object-type-definition.factory'; +} from 'src/engine/api/graphql/workspace-schema-builder/factories/object-type-definition.factory'; // Must be scoped on REQUEST level @Injectable({ scope: Scope.REQUEST }) diff --git a/packages/twenty-server/src/engine/graphql/workspace-schema-builder/type-definitions.generator.ts b/packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/type-definitions.generator.ts similarity index 98% rename from packages/twenty-server/src/engine/graphql/workspace-schema-builder/type-definitions.generator.ts rename to packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/type-definitions.generator.ts index fa227d1c05d..595db1c6bd6 100644 --- a/packages/twenty-server/src/engine/graphql/workspace-schema-builder/type-definitions.generator.ts +++ b/packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/type-definitions.generator.ts @@ -8,7 +8,7 @@ import { customTableDefaultColumns } from 'src/engine/workspace-manager/workspac import { fullNameObjectDefinition } from 'src/engine-metadata/field-metadata/composite-types/full-name.composite-type'; import { currencyObjectDefinition } from 'src/engine-metadata/field-metadata/composite-types/currency.composite-type'; import { linkObjectDefinition } from 'src/engine-metadata/field-metadata/composite-types/link.composite-type'; -import { EnumTypeDefinitionFactory } from 'src/engine/graphql/workspace-schema-builder/factories/enum-type-definition.factory'; +import { EnumTypeDefinitionFactory } from 'src/engine/api/graphql/workspace-schema-builder/factories/enum-type-definition.factory'; import { TypeDefinitionsStorage } from './storages/type-definitions.storage'; import { diff --git a/packages/twenty-server/src/engine/graphql/workspace-schema-builder/utils/__tests__/clean-entity-name.spec.ts b/packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/utils/__tests__/clean-entity-name.spec.ts similarity index 86% rename from packages/twenty-server/src/engine/graphql/workspace-schema-builder/utils/__tests__/clean-entity-name.spec.ts rename to packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/utils/__tests__/clean-entity-name.spec.ts index 8069715d060..3b95a01eb4b 100644 --- a/packages/twenty-server/src/engine/graphql/workspace-schema-builder/utils/__tests__/clean-entity-name.spec.ts +++ b/packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/utils/__tests__/clean-entity-name.spec.ts @@ -1,4 +1,4 @@ -import { cleanEntityName } from 'src/engine/graphql/workspace-schema-builder/utils/clean-entity-name.util'; +import { cleanEntityName } from 'src/engine/api/graphql/workspace-schema-builder/utils/clean-entity-name.util'; describe('cleanEntityName', () => { test('should camelCase strings', () => { diff --git a/packages/twenty-server/src/engine/graphql/workspace-schema-builder/utils/__tests__/get-field-metadata-type.spec.ts b/packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/utils/__tests__/get-field-metadata-type.spec.ts similarity index 83% rename from packages/twenty-server/src/engine/graphql/workspace-schema-builder/utils/__tests__/get-field-metadata-type.spec.ts rename to packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/utils/__tests__/get-field-metadata-type.spec.ts index 8d5f1899179..459140af68d 100644 --- a/packages/twenty-server/src/engine/graphql/workspace-schema-builder/utils/__tests__/get-field-metadata-type.spec.ts +++ b/packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/utils/__tests__/get-field-metadata-type.spec.ts @@ -1,5 +1,5 @@ import { FieldMetadataType } from 'src/engine-metadata/field-metadata/field-metadata.entity'; -import { getFieldMetadataType } from 'src/engine/graphql/workspace-schema-builder/utils/get-field-metadata-type.util'; +import { getFieldMetadataType } from 'src/engine/api/graphql/workspace-schema-builder/utils/get-field-metadata-type.util'; describe('getFieldMetadataType', () => { it.each([ diff --git a/packages/twenty-server/src/engine/graphql/workspace-schema-builder/utils/__tests__/get-resolver-args.spec.ts b/packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/utils/__tests__/get-resolver-args.spec.ts similarity index 85% rename from packages/twenty-server/src/engine/graphql/workspace-schema-builder/utils/__tests__/get-resolver-args.spec.ts rename to packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/utils/__tests__/get-resolver-args.spec.ts index d5ed07f98d3..60d569aa815 100644 --- a/packages/twenty-server/src/engine/graphql/workspace-schema-builder/utils/__tests__/get-resolver-args.spec.ts +++ b/packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/utils/__tests__/get-resolver-args.spec.ts @@ -1,8 +1,8 @@ -import { WorkspaceResolverBuilderMethodNames } from 'src/engine/graphql/workspace-resolver-builder/interfaces/workspace-resolvers-builder.interface'; +import { WorkspaceResolverBuilderMethodNames } from 'src/engine/api/graphql/workspace-resolver-builder/interfaces/workspace-resolvers-builder.interface'; import { FieldMetadataType } from 'src/engine-metadata/field-metadata/field-metadata.entity'; -import { InputTypeDefinitionKind } from 'src/engine/graphql/workspace-schema-builder/factories/input-type-definition.factory'; -import { getResolverArgs } from 'src/engine/graphql/workspace-schema-builder/utils/get-resolver-args.util'; +import { InputTypeDefinitionKind } from 'src/engine/api/graphql/workspace-schema-builder/factories/input-type-definition.factory'; +import { getResolverArgs } from 'src/engine/api/graphql/workspace-schema-builder/utils/get-resolver-args.util'; describe('getResolverArgs', () => { const expectedOutputs = { diff --git a/packages/twenty-server/src/engine/graphql/workspace-schema-builder/utils/clean-entity-name.util.ts b/packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/utils/clean-entity-name.util.ts similarity index 100% rename from packages/twenty-server/src/engine/graphql/workspace-schema-builder/utils/clean-entity-name.util.ts rename to packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/utils/clean-entity-name.util.ts diff --git a/packages/twenty-server/src/engine/graphql/workspace-schema-builder/utils/get-field-metadata-type.util.ts b/packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/utils/get-field-metadata-type.util.ts similarity index 100% rename from packages/twenty-server/src/engine/graphql/workspace-schema-builder/utils/get-field-metadata-type.util.ts rename to packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/utils/get-field-metadata-type.util.ts diff --git a/packages/twenty-server/src/engine/graphql/workspace-schema-builder/utils/get-resolver-args.util.ts b/packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/utils/get-resolver-args.util.ts similarity index 88% rename from packages/twenty-server/src/engine/graphql/workspace-schema-builder/utils/get-resolver-args.util.ts rename to packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/utils/get-resolver-args.util.ts index 35022548279..8d1dc453791 100644 --- a/packages/twenty-server/src/engine/graphql/workspace-schema-builder/utils/get-resolver-args.util.ts +++ b/packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/utils/get-resolver-args.util.ts @@ -1,8 +1,8 @@ -import { WorkspaceResolverBuilderMethodNames } from 'src/engine/graphql/workspace-resolver-builder/interfaces/workspace-resolvers-builder.interface'; -import { ArgMetadata } from 'src/engine/graphql/workspace-schema-builder/interfaces/param-metadata.interface'; +import { WorkspaceResolverBuilderMethodNames } from 'src/engine/api/graphql/workspace-resolver-builder/interfaces/workspace-resolvers-builder.interface'; +import { ArgMetadata } from 'src/engine/api/graphql/workspace-schema-builder/interfaces/param-metadata.interface'; import { FieldMetadataType } from 'src/engine-metadata/field-metadata/field-metadata.entity'; -import { InputTypeDefinitionKind } from 'src/engine/graphql/workspace-schema-builder/factories/input-type-definition.factory'; +import { InputTypeDefinitionKind } from 'src/engine/api/graphql/workspace-schema-builder/factories/input-type-definition.factory'; export const getResolverArgs = ( type: WorkspaceResolverBuilderMethodNames, diff --git a/packages/twenty-server/src/engine/graphql/workspace-schema-builder/utils/object-contains-relation-field.ts b/packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/utils/object-contains-relation-field.ts similarity index 74% rename from packages/twenty-server/src/engine/graphql/workspace-schema-builder/utils/object-contains-relation-field.ts rename to packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/utils/object-contains-relation-field.ts index e529a5e944c..b705b2bb4bb 100644 --- a/packages/twenty-server/src/engine/graphql/workspace-schema-builder/utils/object-contains-relation-field.ts +++ b/packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/utils/object-contains-relation-field.ts @@ -1,6 +1,6 @@ import { ObjectMetadataInterface } from 'src/engine-metadata/field-metadata/interfaces/object-metadata.interface'; -import { isRelationFieldMetadataType } from 'src/engine-workspace/utils/is-relation-field-metadata-type.util'; +import { isRelationFieldMetadataType } from 'src/engine/utils/is-relation-field-metadata-type.util'; export const objectContainsRelationField = ( objectMetadata: ObjectMetadataInterface, diff --git a/packages/twenty-server/src/engine/graphql/workspace-schema-builder/workspace-graphql-schema.factory.ts b/packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/workspace-graphql-schema.factory.ts similarity index 92% rename from packages/twenty-server/src/engine/graphql/workspace-schema-builder/workspace-graphql-schema.factory.ts rename to packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/workspace-graphql-schema.factory.ts index 12e09a16ba5..eb25eaa1d66 100644 --- a/packages/twenty-server/src/engine/graphql/workspace-schema-builder/workspace-graphql-schema.factory.ts +++ b/packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/workspace-graphql-schema.factory.ts @@ -2,7 +2,7 @@ import { Injectable, Logger } from '@nestjs/common'; import { GraphQLSchema } from 'graphql'; -import { WorkspaceResolverBuilderMethods } from 'src/engine/graphql/workspace-resolver-builder/interfaces/workspace-resolvers-builder.interface'; +import { WorkspaceResolverBuilderMethods } from 'src/engine/api/graphql/workspace-resolver-builder/interfaces/workspace-resolvers-builder.interface'; import { ObjectMetadataInterface } from 'src/engine-metadata/field-metadata/interfaces/object-metadata.interface'; import { TypeDefinitionsGenerator } from './type-definitions.generator'; diff --git a/packages/twenty-server/src/engine/graphql/workspace-schema-builder/workspace-schema-builder.module.ts b/packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/workspace-schema-builder.module.ts similarity index 100% rename from packages/twenty-server/src/engine/graphql/workspace-schema-builder/workspace-schema-builder.module.ts rename to packages/twenty-server/src/engine/api/graphql/workspace-schema-builder/workspace-schema-builder.module.ts diff --git a/packages/twenty-server/src/engine/graphql/workspace-schema-storage/workspace-schema-storage.module.ts b/packages/twenty-server/src/engine/api/graphql/workspace-schema-storage/workspace-schema-storage.module.ts similarity index 78% rename from packages/twenty-server/src/engine/graphql/workspace-schema-storage/workspace-schema-storage.module.ts rename to packages/twenty-server/src/engine/api/graphql/workspace-schema-storage/workspace-schema-storage.module.ts index 5370a89cbb4..a24c410f48b 100644 --- a/packages/twenty-server/src/engine/graphql/workspace-schema-storage/workspace-schema-storage.module.ts +++ b/packages/twenty-server/src/engine/api/graphql/workspace-schema-storage/workspace-schema-storage.module.ts @@ -2,7 +2,7 @@ import { Module } from '@nestjs/common'; import { ObjectMetadataModule } from 'src/engine-metadata/object-metadata/object-metadata.module'; import { WorkspaceCacheVersionModule } from 'src/engine-metadata/workspace-cache-version/workspace-cache-version.module'; -import { WorkspaceSchemaStorageService } from 'src/engine/graphql/workspace-schema-storage/workspace-schema-storage.service'; +import { WorkspaceSchemaStorageService } from 'src/engine/api/graphql/workspace-schema-storage/workspace-schema-storage.service'; @Module({ imports: [ObjectMetadataModule, WorkspaceCacheVersionModule], diff --git a/packages/twenty-server/src/engine/graphql/workspace-schema-storage/workspace-schema-storage.service.ts b/packages/twenty-server/src/engine/api/graphql/workspace-schema-storage/workspace-schema-storage.service.ts similarity index 93% rename from packages/twenty-server/src/engine/graphql/workspace-schema-storage/workspace-schema-storage.service.ts rename to packages/twenty-server/src/engine/api/graphql/workspace-schema-storage/workspace-schema-storage.service.ts index dfef2ce705f..0ab8433db15 100644 --- a/packages/twenty-server/src/engine/graphql/workspace-schema-storage/workspace-schema-storage.service.ts +++ b/packages/twenty-server/src/engine/api/graphql/workspace-schema-storage/workspace-schema-storage.service.ts @@ -1,7 +1,7 @@ import { Inject, Injectable } from '@nestjs/common'; -import { CacheStorageService } from 'src/integrations/cache-storage/cache-storage.service'; -import { CacheStorageNamespace } from 'src/integrations/cache-storage/types/cache-storage-namespace.enum'; +import { CacheStorageService } from 'src/engine/integrations/cache-storage/cache-storage.service'; +import { CacheStorageNamespace } from 'src/engine/integrations/cache-storage/types/cache-storage-namespace.enum'; import { ObjectMetadataEntity } from 'src/engine-metadata/object-metadata/object-metadata.entity'; import { WorkspaceCacheVersionService } from 'src/engine-metadata/workspace-cache-version/workspace-cache-version.service'; diff --git a/packages/twenty-server/src/engine/graphql/workspace.factory.ts b/packages/twenty-server/src/engine/api/graphql/workspace.factory.ts similarity index 86% rename from packages/twenty-server/src/engine/graphql/workspace.factory.ts rename to packages/twenty-server/src/engine/api/graphql/workspace.factory.ts index 19eaa4556aa..2951eaf5ee9 100644 --- a/packages/twenty-server/src/engine/graphql/workspace.factory.ts +++ b/packages/twenty-server/src/engine/api/graphql/workspace.factory.ts @@ -5,12 +5,12 @@ import { makeExecutableSchema } from '@graphql-tools/schema'; import { gql } from 'graphql-tag'; import { DataSourceService } from 'src/engine-metadata/data-source/data-source.service'; -import { WorkspaceSchemaStorageService } from 'src/engine/graphql/workspace-schema-storage/workspace-schema-storage.service'; +import { WorkspaceSchemaStorageService } from 'src/engine/api/graphql/workspace-schema-storage/workspace-schema-storage.service'; import { ObjectMetadataService } from 'src/engine-metadata/object-metadata/object-metadata.service'; -import { ScalarsExplorerService } from 'src/engine-workspace/services/scalars-explorer.service'; -import { WorkspaceGraphQLSchemaFactory } from 'src/engine/graphql/workspace-schema-builder/workspace-graphql-schema.factory'; -import { workspaceResolverBuilderMethodNames } from 'src/engine/graphql/workspace-resolver-builder/factories/factories'; -import { WorkspaceResolverFactory } from 'src/engine/graphql/workspace-resolver-builder/workspace-resolver.factory'; +import { ScalarsExplorerService } from 'src/engine/api/graphql/services/scalars-explorer.service'; +import { WorkspaceGraphQLSchemaFactory } from 'src/engine/api/graphql/workspace-schema-builder/workspace-graphql-schema.factory'; +import { workspaceResolverBuilderMethodNames } from 'src/engine/api/graphql/workspace-resolver-builder/factories/factories'; +import { WorkspaceResolverFactory } from 'src/engine/api/graphql/workspace-resolver-builder/workspace-resolver.factory'; @Injectable() export class WorkspaceFactory { diff --git a/packages/twenty-server/src/api/rest/api-rest.controller.utils.spec.ts b/packages/twenty-server/src/engine/api/rest/__tests__/api-rest.controller.utils.spec.ts similarity index 93% rename from packages/twenty-server/src/api/rest/api-rest.controller.utils.spec.ts rename to packages/twenty-server/src/engine/api/rest/__tests__/api-rest.controller.utils.spec.ts index de19dd91a99..4655a731fcb 100644 --- a/packages/twenty-server/src/api/rest/api-rest.controller.utils.spec.ts +++ b/packages/twenty-server/src/engine/api/rest/__tests__/api-rest.controller.utils.spec.ts @@ -1,4 +1,4 @@ -import { cleanGraphQLResponse } from 'src/api/rest/api-rest.controller.utils'; +import { cleanGraphQLResponse } from 'src/engine/api/rest/api-rest.controller.utils'; describe('cleanGraphQLResponse', () => { it('should remove edges/node from results', () => { diff --git a/packages/twenty-server/src/api/rest/api-rest.service.spec.ts b/packages/twenty-server/src/engine/api/rest/__tests__/api-rest.service.spec.ts similarity index 75% rename from packages/twenty-server/src/api/rest/api-rest.service.spec.ts rename to packages/twenty-server/src/engine/api/rest/__tests__/api-rest.service.spec.ts index e1522b6d952..3427d320ed0 100644 --- a/packages/twenty-server/src/api/rest/api-rest.service.spec.ts +++ b/packages/twenty-server/src/engine/api/rest/__tests__/api-rest.service.spec.ts @@ -1,10 +1,10 @@ import { Test, TestingModule } from '@nestjs/testing'; import { HttpService } from '@nestjs/axios'; -import { ApiRestService } from 'src/api/rest/api-rest.service'; -import { EnvironmentService } from 'src/integrations/environment/environment.service'; +import { ApiRestService } from 'src/engine/api/rest/api-rest.service'; +import { EnvironmentService } from 'src/engine/integrations/environment/environment.service'; import { TokenService } from 'src/engine/modules/auth/services/token.service'; -import { ApiRestQueryBuilderFactory } from 'src/api/rest/api-rest-query-builder/api-rest-query-builder.factory'; +import { ApiRestQueryBuilderFactory } from 'src/engine/api/rest/api-rest-query-builder/api-rest-query-builder.factory'; describe('ApiRestService', () => { let service: ApiRestService; diff --git a/packages/twenty-server/src/api/rest/api-rest-query-builder/api-rest-query-builder.factory.spec.ts b/packages/twenty-server/src/engine/api/rest/api-rest-query-builder/__tests__/api-rest-query-builder.factory.spec.ts similarity index 51% rename from packages/twenty-server/src/api/rest/api-rest-query-builder/api-rest-query-builder.factory.spec.ts rename to packages/twenty-server/src/engine/api/rest/api-rest-query-builder/__tests__/api-rest-query-builder.factory.spec.ts index 7ad9de1fcc4..3ba00609192 100644 --- a/packages/twenty-server/src/api/rest/api-rest-query-builder/api-rest-query-builder.factory.spec.ts +++ b/packages/twenty-server/src/engine/api/rest/api-rest-query-builder/__tests__/api-rest-query-builder.factory.spec.ts @@ -1,18 +1,18 @@ import { Test, TestingModule } from '@nestjs/testing'; -import { ApiRestQueryBuilderFactory } from 'src/api/rest/api-rest-query-builder/api-rest-query-builder.factory'; -import { DeleteQueryFactory } from 'src/api/rest/api-rest-query-builder/factories/delete-query.factory'; -import { CreateQueryFactory } from 'src/api/rest/api-rest-query-builder/factories/create-query.factory'; -import { UpdateQueryFactory } from 'src/api/rest/api-rest-query-builder/factories/update-query.factory'; -import { FindOneQueryFactory } from 'src/api/rest/api-rest-query-builder/factories/find-one-query.factory'; -import { FindManyQueryFactory } from 'src/api/rest/api-rest-query-builder/factories/find-many-query.factory'; -import { DeleteVariablesFactory } from 'src/api/rest/api-rest-query-builder/factories/delete-variables.factory'; -import { CreateVariablesFactory } from 'src/api/rest/api-rest-query-builder/factories/create-variables.factory'; -import { UpdateVariablesFactory } from 'src/api/rest/api-rest-query-builder/factories/update-variables.factory'; -import { GetVariablesFactory } from 'src/api/rest/api-rest-query-builder/factories/get-variables.factory'; +import { ApiRestQueryBuilderFactory } from 'src/engine/api/rest/api-rest-query-builder/api-rest-query-builder.factory'; +import { DeleteQueryFactory } from 'src/engine/api/rest/api-rest-query-builder/factories/delete-query.factory'; +import { CreateQueryFactory } from 'src/engine/api/rest/api-rest-query-builder/factories/create-query.factory'; +import { UpdateQueryFactory } from 'src/engine/api/rest/api-rest-query-builder/factories/update-query.factory'; +import { FindOneQueryFactory } from 'src/engine/api/rest/api-rest-query-builder/factories/find-one-query.factory'; +import { FindManyQueryFactory } from 'src/engine/api/rest/api-rest-query-builder/factories/find-many-query.factory'; +import { DeleteVariablesFactory } from 'src/engine/api/rest/api-rest-query-builder/factories/delete-variables.factory'; +import { CreateVariablesFactory } from 'src/engine/api/rest/api-rest-query-builder/factories/create-variables.factory'; +import { UpdateVariablesFactory } from 'src/engine/api/rest/api-rest-query-builder/factories/update-variables.factory'; +import { GetVariablesFactory } from 'src/engine/api/rest/api-rest-query-builder/factories/get-variables.factory'; import { ObjectMetadataService } from 'src/engine-metadata/object-metadata/object-metadata.service'; import { TokenService } from 'src/engine/modules/auth/services/token.service'; -import { EnvironmentService } from 'src/integrations/environment/environment.service'; +import { EnvironmentService } from 'src/engine/integrations/environment/environment.service'; describe('ApiRestQueryBuilderFactory', () => { let service: ApiRestQueryBuilderFactory; diff --git a/packages/twenty-server/src/api/rest/api-rest-query-builder/api-rest-query-builder.factory.ts b/packages/twenty-server/src/engine/api/rest/api-rest-query-builder/api-rest-query-builder.factory.ts similarity index 76% rename from packages/twenty-server/src/api/rest/api-rest-query-builder/api-rest-query-builder.factory.ts rename to packages/twenty-server/src/engine/api/rest/api-rest-query-builder/api-rest-query-builder.factory.ts index 4dc97f7ed00..74bfe7e0908 100644 --- a/packages/twenty-server/src/api/rest/api-rest-query-builder/api-rest-query-builder.factory.ts +++ b/packages/twenty-server/src/engine/api/rest/api-rest-query-builder/api-rest-query-builder.factory.ts @@ -2,22 +2,22 @@ import { BadRequestException, Injectable } from '@nestjs/common'; import { Request } from 'express'; -import { DeleteQueryFactory } from 'src/api/rest/api-rest-query-builder/factories/delete-query.factory'; +import { DeleteQueryFactory } from 'src/engine/api/rest/api-rest-query-builder/factories/delete-query.factory'; import { ObjectMetadataService } from 'src/engine-metadata/object-metadata/object-metadata.service'; import { TokenService } from 'src/engine/modules/auth/services/token.service'; -import { CreateQueryFactory } from 'src/api/rest/api-rest-query-builder/factories/create-query.factory'; -import { UpdateQueryFactory } from 'src/api/rest/api-rest-query-builder/factories/update-query.factory'; -import { FindOneQueryFactory } from 'src/api/rest/api-rest-query-builder/factories/find-one-query.factory'; -import { FindManyQueryFactory } from 'src/api/rest/api-rest-query-builder/factories/find-many-query.factory'; -import { DeleteVariablesFactory } from 'src/api/rest/api-rest-query-builder/factories/delete-variables.factory'; -import { CreateVariablesFactory } from 'src/api/rest/api-rest-query-builder/factories/create-variables.factory'; -import { UpdateVariablesFactory } from 'src/api/rest/api-rest-query-builder/factories/update-variables.factory'; -import { GetVariablesFactory } from 'src/api/rest/api-rest-query-builder/factories/get-variables.factory'; -import { parsePath } from 'src/api/rest/api-rest-query-builder/utils/parse-path.utils'; -import { computeDepth } from 'src/api/rest/api-rest-query-builder/utils/compute-depth.utils'; +import { CreateQueryFactory } from 'src/engine/api/rest/api-rest-query-builder/factories/create-query.factory'; +import { UpdateQueryFactory } from 'src/engine/api/rest/api-rest-query-builder/factories/update-query.factory'; +import { FindOneQueryFactory } from 'src/engine/api/rest/api-rest-query-builder/factories/find-one-query.factory'; +import { FindManyQueryFactory } from 'src/engine/api/rest/api-rest-query-builder/factories/find-many-query.factory'; +import { DeleteVariablesFactory } from 'src/engine/api/rest/api-rest-query-builder/factories/delete-variables.factory'; +import { CreateVariablesFactory } from 'src/engine/api/rest/api-rest-query-builder/factories/create-variables.factory'; +import { UpdateVariablesFactory } from 'src/engine/api/rest/api-rest-query-builder/factories/update-variables.factory'; +import { GetVariablesFactory } from 'src/engine/api/rest/api-rest-query-builder/factories/get-variables.factory'; +import { parsePath } from 'src/engine/api/rest/api-rest-query-builder/utils/parse-path.utils'; +import { computeDepth } from 'src/engine/api/rest/api-rest-query-builder/utils/compute-depth.utils'; import { ObjectMetadataEntity } from 'src/engine-metadata/object-metadata/object-metadata.entity'; -import { ApiRestQuery } from 'src/api/rest/types/api-rest-query.type'; -import { EnvironmentService } from 'src/integrations/environment/environment.service'; +import { ApiRestQuery } from 'src/engine/api/rest/types/api-rest-query.type'; +import { EnvironmentService } from 'src/engine/integrations/environment/environment.service'; @Injectable() export class ApiRestQueryBuilderFactory { diff --git a/packages/twenty-server/src/api/rest/api-rest-query-builder/api-rest-query-builder.module.ts b/packages/twenty-server/src/engine/api/rest/api-rest-query-builder/api-rest-query-builder.module.ts similarity index 64% rename from packages/twenty-server/src/api/rest/api-rest-query-builder/api-rest-query-builder.module.ts rename to packages/twenty-server/src/engine/api/rest/api-rest-query-builder/api-rest-query-builder.module.ts index cb86544a0e0..f647be1d633 100644 --- a/packages/twenty-server/src/api/rest/api-rest-query-builder/api-rest-query-builder.module.ts +++ b/packages/twenty-server/src/engine/api/rest/api-rest-query-builder/api-rest-query-builder.module.ts @@ -1,7 +1,7 @@ import { Module } from '@nestjs/common'; -import { ApiRestQueryBuilderFactory } from 'src/api/rest/api-rest-query-builder/api-rest-query-builder.factory'; -import { apiRestQueryBuilderFactories } from 'src/api/rest/api-rest-query-builder/factories/factories'; +import { ApiRestQueryBuilderFactory } from 'src/engine/api/rest/api-rest-query-builder/api-rest-query-builder.factory'; +import { apiRestQueryBuilderFactories } from 'src/engine/api/rest/api-rest-query-builder/factories/factories'; import { ObjectMetadataModule } from 'src/engine-metadata/object-metadata/object-metadata.module'; import { AuthModule } from 'src/engine/modules/auth/auth.module'; diff --git a/packages/twenty-server/src/api/rest/api-rest-query-builder/factories/create-query.factory.ts b/packages/twenty-server/src/engine/api/rest/api-rest-query-builder/factories/create-query.factory.ts similarity index 84% rename from packages/twenty-server/src/api/rest/api-rest-query-builder/factories/create-query.factory.ts rename to packages/twenty-server/src/engine/api/rest/api-rest-query-builder/factories/create-query.factory.ts index 238d8365fa7..731567e162e 100644 --- a/packages/twenty-server/src/api/rest/api-rest-query-builder/factories/create-query.factory.ts +++ b/packages/twenty-server/src/engine/api/rest/api-rest-query-builder/factories/create-query.factory.ts @@ -1,7 +1,7 @@ import { Injectable } from '@nestjs/common'; import { capitalize } from 'src/utils/capitalize'; -import { mapFieldMetadataToGraphqlQuery } from 'src/api/rest/api-rest-query-builder/utils/map-field-metadata-to-graphql-query.utils'; +import { mapFieldMetadataToGraphqlQuery } from 'src/engine/api/rest/api-rest-query-builder/utils/map-field-metadata-to-graphql-query.utils'; @Injectable() export class CreateQueryFactory { diff --git a/packages/twenty-server/src/api/rest/api-rest-query-builder/factories/create-variables.factory.ts b/packages/twenty-server/src/engine/api/rest/api-rest-query-builder/factories/create-variables.factory.ts similarity index 67% rename from packages/twenty-server/src/api/rest/api-rest-query-builder/factories/create-variables.factory.ts rename to packages/twenty-server/src/engine/api/rest/api-rest-query-builder/factories/create-variables.factory.ts index b7186628e70..190d50fd9b3 100644 --- a/packages/twenty-server/src/api/rest/api-rest-query-builder/factories/create-variables.factory.ts +++ b/packages/twenty-server/src/engine/api/rest/api-rest-query-builder/factories/create-variables.factory.ts @@ -1,6 +1,6 @@ import { Injectable } from '@nestjs/common'; -import { ApiRestQueryVariables } from 'src/api/rest/types/api-rest-query-variables.type'; +import { ApiRestQueryVariables } from 'src/engine/api/rest/types/api-rest-query-variables.type'; @Injectable() export class CreateVariablesFactory { diff --git a/packages/twenty-server/src/api/rest/api-rest-query-builder/factories/delete-query.factory.ts b/packages/twenty-server/src/engine/api/rest/api-rest-query-builder/factories/delete-query.factory.ts similarity index 100% rename from packages/twenty-server/src/api/rest/api-rest-query-builder/factories/delete-query.factory.ts rename to packages/twenty-server/src/engine/api/rest/api-rest-query-builder/factories/delete-query.factory.ts diff --git a/packages/twenty-server/src/api/rest/api-rest-query-builder/factories/delete-variables.factory.ts b/packages/twenty-server/src/engine/api/rest/api-rest-query-builder/factories/delete-variables.factory.ts similarity index 65% rename from packages/twenty-server/src/api/rest/api-rest-query-builder/factories/delete-variables.factory.ts rename to packages/twenty-server/src/engine/api/rest/api-rest-query-builder/factories/delete-variables.factory.ts index c0a7a4a59a3..4cd89b77955 100644 --- a/packages/twenty-server/src/api/rest/api-rest-query-builder/factories/delete-variables.factory.ts +++ b/packages/twenty-server/src/engine/api/rest/api-rest-query-builder/factories/delete-variables.factory.ts @@ -1,6 +1,6 @@ import { Injectable } from '@nestjs/common'; -import { ApiRestQueryVariables } from 'src/api/rest/types/api-rest-query-variables.type'; +import { ApiRestQueryVariables } from 'src/engine/api/rest/types/api-rest-query-variables.type'; @Injectable() export class DeleteVariablesFactory { diff --git a/packages/twenty-server/src/engine/api/rest/api-rest-query-builder/factories/factories.ts b/packages/twenty-server/src/engine/api/rest/api-rest-query-builder/factories/factories.ts new file mode 100644 index 00000000000..a2e3951a993 --- /dev/null +++ b/packages/twenty-server/src/engine/api/rest/api-rest-query-builder/factories/factories.ts @@ -0,0 +1,29 @@ +import { DeleteQueryFactory } from 'src/engine/api/rest/api-rest-query-builder/factories/delete-query.factory'; +import { CreateQueryFactory } from 'src/engine/api/rest/api-rest-query-builder/factories/create-query.factory'; +import { UpdateQueryFactory } from 'src/engine/api/rest/api-rest-query-builder/factories/update-query.factory'; +import { FindOneQueryFactory } from 'src/engine/api/rest/api-rest-query-builder/factories/find-one-query.factory'; +import { FindManyQueryFactory } from 'src/engine/api/rest/api-rest-query-builder/factories/find-many-query.factory'; +import { DeleteVariablesFactory } from 'src/engine/api/rest/api-rest-query-builder/factories/delete-variables.factory'; +import { CreateVariablesFactory } from 'src/engine/api/rest/api-rest-query-builder/factories/create-variables.factory'; +import { UpdateVariablesFactory } from 'src/engine/api/rest/api-rest-query-builder/factories/update-variables.factory'; +import { GetVariablesFactory } from 'src/engine/api/rest/api-rest-query-builder/factories/get-variables.factory'; +import { LastCursorInputFactory } from 'src/engine/api/rest/api-rest-query-builder/factories/input-factories/last-cursor-input.factory'; +import { LimitInputFactory } from 'src/engine/api/rest/api-rest-query-builder/factories/input-factories/limit-input.factory'; +import { OrderByInputFactory } from 'src/engine/api/rest/api-rest-query-builder/factories/input-factories/order-by-input.factory'; +import { FilterInputFactory } from 'src/engine/api/rest/api-rest-query-builder/factories/input-factories/filter-input.factory'; + +export const apiRestQueryBuilderFactories = [ + DeleteQueryFactory, + CreateQueryFactory, + UpdateQueryFactory, + FindOneQueryFactory, + FindManyQueryFactory, + DeleteVariablesFactory, + CreateVariablesFactory, + UpdateVariablesFactory, + GetVariablesFactory, + LastCursorInputFactory, + LimitInputFactory, + OrderByInputFactory, + FilterInputFactory, +]; diff --git a/packages/twenty-server/src/api/rest/api-rest-query-builder/factories/find-many-query.factory.ts b/packages/twenty-server/src/engine/api/rest/api-rest-query-builder/factories/find-many-query.factory.ts similarity index 90% rename from packages/twenty-server/src/api/rest/api-rest-query-builder/factories/find-many-query.factory.ts rename to packages/twenty-server/src/engine/api/rest/api-rest-query-builder/factories/find-many-query.factory.ts index 83ef66dba1f..2f5a6b36daa 100644 --- a/packages/twenty-server/src/api/rest/api-rest-query-builder/factories/find-many-query.factory.ts +++ b/packages/twenty-server/src/engine/api/rest/api-rest-query-builder/factories/find-many-query.factory.ts @@ -1,7 +1,7 @@ import { Injectable } from '@nestjs/common'; import { capitalize } from 'src/utils/capitalize'; -import { mapFieldMetadataToGraphqlQuery } from 'src/api/rest/api-rest-query-builder/utils/map-field-metadata-to-graphql-query.utils'; +import { mapFieldMetadataToGraphqlQuery } from 'src/engine/api/rest/api-rest-query-builder/utils/map-field-metadata-to-graphql-query.utils'; @Injectable() export class FindManyQueryFactory { diff --git a/packages/twenty-server/src/api/rest/api-rest-query-builder/factories/find-one-query.factory.ts b/packages/twenty-server/src/engine/api/rest/api-rest-query-builder/factories/find-one-query.factory.ts similarity index 84% rename from packages/twenty-server/src/api/rest/api-rest-query-builder/factories/find-one-query.factory.ts rename to packages/twenty-server/src/engine/api/rest/api-rest-query-builder/factories/find-one-query.factory.ts index 47a980b148c..0ab363e409f 100644 --- a/packages/twenty-server/src/api/rest/api-rest-query-builder/factories/find-one-query.factory.ts +++ b/packages/twenty-server/src/engine/api/rest/api-rest-query-builder/factories/find-one-query.factory.ts @@ -1,7 +1,7 @@ import { Injectable } from '@nestjs/common'; import { capitalize } from 'src/utils/capitalize'; -import { mapFieldMetadataToGraphqlQuery } from 'src/api/rest/api-rest-query-builder/utils/map-field-metadata-to-graphql-query.utils'; +import { mapFieldMetadataToGraphqlQuery } from 'src/engine/api/rest/api-rest-query-builder/utils/map-field-metadata-to-graphql-query.utils'; @Injectable() export class FindOneQueryFactory { diff --git a/packages/twenty-server/src/api/rest/api-rest-query-builder/factories/get-variables.factory.ts b/packages/twenty-server/src/engine/api/rest/api-rest-query-builder/factories/get-variables.factory.ts similarity index 58% rename from packages/twenty-server/src/api/rest/api-rest-query-builder/factories/get-variables.factory.ts rename to packages/twenty-server/src/engine/api/rest/api-rest-query-builder/factories/get-variables.factory.ts index f9078a212bc..dfe87ce77d5 100644 --- a/packages/twenty-server/src/api/rest/api-rest-query-builder/factories/get-variables.factory.ts +++ b/packages/twenty-server/src/engine/api/rest/api-rest-query-builder/factories/get-variables.factory.ts @@ -2,11 +2,11 @@ import { Injectable } from '@nestjs/common'; import { Request } from 'express'; -import { LastCursorInputFactory } from 'src/api/rest/api-rest-query-builder/factories/input-factories/last-cursor-input.factory'; -import { LimitInputFactory } from 'src/api/rest/api-rest-query-builder/factories/input-factories/limit-input.factory'; -import { OrderByInputFactory } from 'src/api/rest/api-rest-query-builder/factories/input-factories/order-by-input.factory'; -import { FilterInputFactory } from 'src/api/rest/api-rest-query-builder/factories/input-factories/filter-input.factory'; -import { ApiRestQueryVariables } from 'src/api/rest/types/api-rest-query-variables.type'; +import { LastCursorInputFactory } from 'src/engine/api/rest/api-rest-query-builder/factories/input-factories/last-cursor-input.factory'; +import { LimitInputFactory } from 'src/engine/api/rest/api-rest-query-builder/factories/input-factories/limit-input.factory'; +import { OrderByInputFactory } from 'src/engine/api/rest/api-rest-query-builder/factories/input-factories/order-by-input.factory'; +import { FilterInputFactory } from 'src/engine/api/rest/api-rest-query-builder/factories/input-factories/filter-input.factory'; +import { ApiRestQueryVariables } from 'src/engine/api/rest/types/api-rest-query-variables.type'; @Injectable() export class GetVariablesFactory { diff --git a/packages/twenty-server/src/api/rest/api-rest-query-builder/factories/input-factories/__tests__/filter-input.factory.spec.ts b/packages/twenty-server/src/engine/api/rest/api-rest-query-builder/factories/input-factories/__tests__/filter-input.factory.spec.ts similarity index 93% rename from packages/twenty-server/src/api/rest/api-rest-query-builder/factories/input-factories/__tests__/filter-input.factory.spec.ts rename to packages/twenty-server/src/engine/api/rest/api-rest-query-builder/factories/input-factories/__tests__/filter-input.factory.spec.ts index dddc306b32e..d4e9e3cf85c 100644 --- a/packages/twenty-server/src/api/rest/api-rest-query-builder/factories/input-factories/__tests__/filter-input.factory.spec.ts +++ b/packages/twenty-server/src/engine/api/rest/api-rest-query-builder/factories/input-factories/__tests__/filter-input.factory.spec.ts @@ -1,10 +1,10 @@ import { Test, TestingModule } from '@nestjs/testing'; -import { objectMetadataItem } from 'src/utils/utils-test/object-metadata-item'; -import { FilterInputFactory } from 'src/api/rest/api-rest-query-builder/factories/input-factories/filter-input.factory'; +import { objectMetadataItemMock } from 'src/engine/api/__mocks__/object-metadata-item.mock'; +import { FilterInputFactory } from 'src/engine/api/rest/api-rest-query-builder/factories/input-factories/filter-input.factory'; describe('FilterInputFactory', () => { - const objectMetadata = { objectMetadataItem: objectMetadataItem }; + const objectMetadata = { objectMetadataItem: objectMetadataItemMock }; let service: FilterInputFactory; diff --git a/packages/twenty-server/src/api/rest/api-rest-query-builder/factories/input-factories/__tests__/last-cursor-input.factory.spec.ts b/packages/twenty-server/src/engine/api/rest/api-rest-query-builder/factories/input-factories/__tests__/last-cursor-input.factory.spec.ts similarity index 85% rename from packages/twenty-server/src/api/rest/api-rest-query-builder/factories/input-factories/__tests__/last-cursor-input.factory.spec.ts rename to packages/twenty-server/src/engine/api/rest/api-rest-query-builder/factories/input-factories/__tests__/last-cursor-input.factory.spec.ts index 9a8532ea244..58a7f143282 100644 --- a/packages/twenty-server/src/api/rest/api-rest-query-builder/factories/input-factories/__tests__/last-cursor-input.factory.spec.ts +++ b/packages/twenty-server/src/engine/api/rest/api-rest-query-builder/factories/input-factories/__tests__/last-cursor-input.factory.spec.ts @@ -1,6 +1,6 @@ import { Test, TestingModule } from '@nestjs/testing'; -import { LastCursorInputFactory } from 'src/api/rest/api-rest-query-builder/factories/input-factories/last-cursor-input.factory'; +import { LastCursorInputFactory } from 'src/engine/api/rest/api-rest-query-builder/factories/input-factories/last-cursor-input.factory'; describe('LastCursorInputFactory', () => { let service: LastCursorInputFactory; diff --git a/packages/twenty-server/src/api/rest/api-rest-query-builder/factories/input-factories/__tests__/limit-input.factory.spec.ts b/packages/twenty-server/src/engine/api/rest/api-rest-query-builder/factories/input-factories/__tests__/limit-input.factory.spec.ts similarity index 90% rename from packages/twenty-server/src/api/rest/api-rest-query-builder/factories/input-factories/__tests__/limit-input.factory.spec.ts rename to packages/twenty-server/src/engine/api/rest/api-rest-query-builder/factories/input-factories/__tests__/limit-input.factory.spec.ts index e9005f52b61..a3e0fcdf6bd 100644 --- a/packages/twenty-server/src/api/rest/api-rest-query-builder/factories/input-factories/__tests__/limit-input.factory.spec.ts +++ b/packages/twenty-server/src/engine/api/rest/api-rest-query-builder/factories/input-factories/__tests__/limit-input.factory.spec.ts @@ -1,6 +1,6 @@ import { Test, TestingModule } from '@nestjs/testing'; -import { LimitInputFactory } from 'src/api/rest/api-rest-query-builder/factories/input-factories/limit-input.factory'; +import { LimitInputFactory } from 'src/engine/api/rest/api-rest-query-builder/factories/input-factories/limit-input.factory'; describe('LimitInputFactory', () => { let service: LimitInputFactory; diff --git a/packages/twenty-server/src/api/rest/api-rest-query-builder/factories/input-factories/__tests__/order-by-input.factory.spec.ts b/packages/twenty-server/src/engine/api/rest/api-rest-query-builder/factories/input-factories/__tests__/order-by-input.factory.spec.ts similarity index 90% rename from packages/twenty-server/src/api/rest/api-rest-query-builder/factories/input-factories/__tests__/order-by-input.factory.spec.ts rename to packages/twenty-server/src/engine/api/rest/api-rest-query-builder/factories/input-factories/__tests__/order-by-input.factory.spec.ts index a8446defc80..7e09cbc73a4 100644 --- a/packages/twenty-server/src/api/rest/api-rest-query-builder/factories/input-factories/__tests__/order-by-input.factory.spec.ts +++ b/packages/twenty-server/src/engine/api/rest/api-rest-query-builder/factories/input-factories/__tests__/order-by-input.factory.spec.ts @@ -1,12 +1,12 @@ import { Test, TestingModule } from '@nestjs/testing'; -import { OrderByDirection } from 'src/engine/graphql/workspace-query-builder/interfaces/record.interface'; +import { OrderByDirection } from 'src/engine/api/graphql/workspace-query-builder/interfaces/record.interface'; -import { objectMetadataItem } from 'src/utils/utils-test/object-metadata-item'; -import { OrderByInputFactory } from 'src/api/rest/api-rest-query-builder/factories/input-factories/order-by-input.factory'; +import { objectMetadataItemMock } from 'src/engine/api/__mocks__/object-metadata-item.mock'; +import { OrderByInputFactory } from 'src/engine/api/rest/api-rest-query-builder/factories/input-factories/order-by-input.factory'; describe('OrderByInputFactory', () => { - const objectMetadata = { objectMetadataItem: objectMetadataItem }; + const objectMetadata = { objectMetadataItem: objectMetadataItemMock }; let service: OrderByInputFactory; diff --git a/packages/twenty-server/src/engine/api/rest/api-rest-query-builder/factories/input-factories/filter-input.factory.ts b/packages/twenty-server/src/engine/api/rest/api-rest-query-builder/factories/input-factories/filter-input.factory.ts new file mode 100644 index 00000000000..be2efdfbbd5 --- /dev/null +++ b/packages/twenty-server/src/engine/api/rest/api-rest-query-builder/factories/input-factories/filter-input.factory.ts @@ -0,0 +1,25 @@ +import { Injectable } from '@nestjs/common'; + +import { Request } from 'express'; + +import { addDefaultConjunctionIfMissing } from 'src/engine/api/rest/api-rest-query-builder/factories/input-factories/filter-utils/add-default-conjunction.utils'; +import { checkFilterQuery } from 'src/engine/api/rest/api-rest-query-builder/factories/input-factories/filter-utils/check-filter-query.utils'; +import { parseFilter } from 'src/engine/api/rest/api-rest-query-builder/factories/input-factories/filter-utils/parse-filter.utils'; +import { FieldValue } from 'src/engine/api/rest/types/api-rest-field-value.type'; + +@Injectable() +export class FilterInputFactory { + create(request: Request, objectMetadata): Record { + let filterQuery = request.query.filter; + + if (typeof filterQuery !== 'string') { + return {}; + } + + checkFilterQuery(filterQuery); + + filterQuery = addDefaultConjunctionIfMissing(filterQuery); + + return parseFilter(filterQuery, objectMetadata.objectMetadataItem); + } +} diff --git a/packages/twenty-server/src/api/rest/api-rest-query-builder/factories/input-factories/filter-utils/__tests__/add-default-conjunction.utils.spec.ts b/packages/twenty-server/src/engine/api/rest/api-rest-query-builder/factories/input-factories/filter-utils/__tests__/add-default-conjunction.utils.spec.ts similarity index 71% rename from packages/twenty-server/src/api/rest/api-rest-query-builder/factories/input-factories/filter-utils/__tests__/add-default-conjunction.utils.spec.ts rename to packages/twenty-server/src/engine/api/rest/api-rest-query-builder/factories/input-factories/filter-utils/__tests__/add-default-conjunction.utils.spec.ts index 683c82eb921..90a58f59caf 100644 --- a/packages/twenty-server/src/api/rest/api-rest-query-builder/factories/input-factories/filter-utils/__tests__/add-default-conjunction.utils.spec.ts +++ b/packages/twenty-server/src/engine/api/rest/api-rest-query-builder/factories/input-factories/filter-utils/__tests__/add-default-conjunction.utils.spec.ts @@ -1,4 +1,4 @@ -import { addDefaultConjunctionIfMissing } from 'src/api/rest/api-rest-query-builder/factories/input-factories/filter-utils/add-default-conjunction.utils'; +import { addDefaultConjunctionIfMissing } from 'src/engine/api/rest/api-rest-query-builder/factories/input-factories/filter-utils/add-default-conjunction.utils'; describe('addDefaultConjunctionIfMissing', () => { it('should add default conjunction if missing', () => { diff --git a/packages/twenty-server/src/api/rest/api-rest-query-builder/factories/input-factories/filter-utils/__tests__/check-filter-query.utils.spec.ts b/packages/twenty-server/src/engine/api/rest/api-rest-query-builder/factories/input-factories/filter-utils/__tests__/check-filter-query.utils.spec.ts similarity index 86% rename from packages/twenty-server/src/api/rest/api-rest-query-builder/factories/input-factories/filter-utils/__tests__/check-filter-query.utils.spec.ts rename to packages/twenty-server/src/engine/api/rest/api-rest-query-builder/factories/input-factories/filter-utils/__tests__/check-filter-query.utils.spec.ts index b720f77bd7a..88d08c661ce 100644 --- a/packages/twenty-server/src/api/rest/api-rest-query-builder/factories/input-factories/filter-utils/__tests__/check-filter-query.utils.spec.ts +++ b/packages/twenty-server/src/engine/api/rest/api-rest-query-builder/factories/input-factories/filter-utils/__tests__/check-filter-query.utils.spec.ts @@ -1,4 +1,4 @@ -import { checkFilterQuery } from 'src/api/rest/api-rest-query-builder/factories/input-factories/filter-utils/check-filter-query.utils'; +import { checkFilterQuery } from 'src/engine/api/rest/api-rest-query-builder/factories/input-factories/filter-utils/check-filter-query.utils'; describe('checkFilterQuery', () => { it('should check filter query', () => { diff --git a/packages/twenty-server/src/api/rest/api-rest-query-builder/factories/input-factories/filter-utils/__tests__/format-field-values.utils.spec.ts b/packages/twenty-server/src/engine/api/rest/api-rest-query-builder/factories/input-factories/filter-utils/__tests__/format-field-values.utils.spec.ts similarity index 92% rename from packages/twenty-server/src/api/rest/api-rest-query-builder/factories/input-factories/filter-utils/__tests__/format-field-values.utils.spec.ts rename to packages/twenty-server/src/engine/api/rest/api-rest-query-builder/factories/input-factories/filter-utils/__tests__/format-field-values.utils.spec.ts index 8ac0fd878e3..f012684d762 100644 --- a/packages/twenty-server/src/api/rest/api-rest-query-builder/factories/input-factories/filter-utils/__tests__/format-field-values.utils.spec.ts +++ b/packages/twenty-server/src/engine/api/rest/api-rest-query-builder/factories/input-factories/filter-utils/__tests__/format-field-values.utils.spec.ts @@ -1,5 +1,5 @@ import { FieldMetadataType } from 'src/engine-metadata/field-metadata/field-metadata.entity'; -import { formatFieldValue } from 'src/api/rest/api-rest-query-builder/factories/input-factories/filter-utils/format-field-values.utils'; +import { formatFieldValue } from 'src/engine/api/rest/api-rest-query-builder/factories/input-factories/filter-utils/format-field-values.utils'; describe('formatFieldValue', () => { it('should format fieldNumber value', () => { diff --git a/packages/twenty-server/src/api/rest/api-rest-query-builder/factories/input-factories/filter-utils/__tests__/parse-base-filter.utils.spec.ts b/packages/twenty-server/src/engine/api/rest/api-rest-query-builder/factories/input-factories/filter-utils/__tests__/parse-base-filter.utils.spec.ts similarity index 90% rename from packages/twenty-server/src/api/rest/api-rest-query-builder/factories/input-factories/filter-utils/__tests__/parse-base-filter.utils.spec.ts rename to packages/twenty-server/src/engine/api/rest/api-rest-query-builder/factories/input-factories/filter-utils/__tests__/parse-base-filter.utils.spec.ts index e7497231125..d335485abbe 100644 --- a/packages/twenty-server/src/api/rest/api-rest-query-builder/factories/input-factories/filter-utils/__tests__/parse-base-filter.utils.spec.ts +++ b/packages/twenty-server/src/engine/api/rest/api-rest-query-builder/factories/input-factories/filter-utils/__tests__/parse-base-filter.utils.spec.ts @@ -1,4 +1,4 @@ -import { parseBaseFilter } from 'src/api/rest/api-rest-query-builder/factories/input-factories/filter-utils/parse-base-filter.utils'; +import { parseBaseFilter } from 'src/engine/api/rest/api-rest-query-builder/factories/input-factories/filter-utils/parse-base-filter.utils'; describe('parseBaseFilter', () => { it('should parse simple filter string test 1', () => { diff --git a/packages/twenty-server/src/api/rest/api-rest-query-builder/factories/input-factories/filter-utils/__tests__/parse-filter-content.utils.spec.ts b/packages/twenty-server/src/engine/api/rest/api-rest-query-builder/factories/input-factories/filter-utils/__tests__/parse-filter-content.utils.spec.ts similarity index 91% rename from packages/twenty-server/src/api/rest/api-rest-query-builder/factories/input-factories/filter-utils/__tests__/parse-filter-content.utils.spec.ts rename to packages/twenty-server/src/engine/api/rest/api-rest-query-builder/factories/input-factories/filter-utils/__tests__/parse-filter-content.utils.spec.ts index 9ca181b3a9c..fc08fc400df 100644 --- a/packages/twenty-server/src/api/rest/api-rest-query-builder/factories/input-factories/filter-utils/__tests__/parse-filter-content.utils.spec.ts +++ b/packages/twenty-server/src/engine/api/rest/api-rest-query-builder/factories/input-factories/filter-utils/__tests__/parse-filter-content.utils.spec.ts @@ -1,4 +1,4 @@ -import { parseFilterContent } from 'src/api/rest/api-rest-query-builder/factories/input-factories/filter-utils/parse-filter-content.utils'; +import { parseFilterContent } from 'src/engine/api/rest/api-rest-query-builder/factories/input-factories/filter-utils/parse-filter-content.utils'; describe('parseFilterContent', () => { it('should parse query filter test 1', () => { diff --git a/packages/twenty-server/src/api/rest/api-rest-query-builder/factories/input-factories/filter-utils/__tests__/parse-filter.utils.spec.ts b/packages/twenty-server/src/engine/api/rest/api-rest-query-builder/factories/input-factories/filter-utils/__tests__/parse-filter.utils.spec.ts similarity index 85% rename from packages/twenty-server/src/api/rest/api-rest-query-builder/factories/input-factories/filter-utils/__tests__/parse-filter.utils.spec.ts rename to packages/twenty-server/src/engine/api/rest/api-rest-query-builder/factories/input-factories/filter-utils/__tests__/parse-filter.utils.spec.ts index 45b88a6a60c..a5c36b91dcf 100644 --- a/packages/twenty-server/src/api/rest/api-rest-query-builder/factories/input-factories/filter-utils/__tests__/parse-filter.utils.spec.ts +++ b/packages/twenty-server/src/engine/api/rest/api-rest-query-builder/factories/input-factories/filter-utils/__tests__/parse-filter.utils.spec.ts @@ -1,12 +1,12 @@ -import { objectMetadataItem } from 'src/utils/utils-test/object-metadata-item'; -import { parseFilter } from 'src/api/rest/api-rest-query-builder/factories/input-factories/filter-utils/parse-filter.utils'; +import { objectMetadataItemMock } from 'src/engine/api/__mocks__/object-metadata-item.mock'; +import { parseFilter } from 'src/engine/api/rest/api-rest-query-builder/factories/input-factories/filter-utils/parse-filter.utils'; describe('parseFilter', () => { it('should parse string filter test 1', () => { expect( parseFilter( 'and(fieldNumber[eq]:1,fieldNumber[eq]:2)', - objectMetadataItem, + objectMetadataItemMock, ), ).toEqual({ and: [{ fieldNumber: { eq: 1 } }, { fieldNumber: { eq: 2 } }], @@ -17,7 +17,7 @@ describe('parseFilter', () => { expect( parseFilter( 'and(fieldNumber[eq]:1,or(fieldNumber[eq]:2,fieldNumber[eq]:3))', - objectMetadataItem, + objectMetadataItemMock, ), ).toEqual({ and: [ @@ -31,7 +31,7 @@ describe('parseFilter', () => { expect( parseFilter( 'and(fieldNumber[eq]:1,or(fieldNumber[eq]:2,fieldNumber[eq]:3,and(fieldNumber[eq]:6,fieldNumber[eq]:7)),or(fieldNumber[eq]:4,fieldNumber[eq]:5))', - objectMetadataItem, + objectMetadataItemMock, ), ).toEqual({ and: [ @@ -52,7 +52,7 @@ describe('parseFilter', () => { expect( parseFilter( 'and(fieldString[gt]:"val,ue",or(fieldNumber[is]:NOT_NULL,not(fieldString[startsWith]:"val"),and(fieldNumber[eq]:6,fieldString[ilike]:"%val%")),or(fieldNumber[eq]:4,fieldString[is]:NULL))', - objectMetadataItem, + objectMetadataItemMock, ), ).toEqual({ and: [ @@ -78,7 +78,7 @@ describe('parseFilter', () => { expect( parseFilter( 'and(fieldNumber[eq]:1,not(fieldNumber[eq]:2))', - objectMetadataItem, + objectMetadataItemMock, ), ).toEqual({ and: [ diff --git a/packages/twenty-server/src/api/rest/api-rest-query-builder/factories/input-factories/filter-utils/add-default-conjunction.utils.ts b/packages/twenty-server/src/engine/api/rest/api-rest-query-builder/factories/input-factories/filter-utils/add-default-conjunction.utils.ts similarity index 68% rename from packages/twenty-server/src/api/rest/api-rest-query-builder/factories/input-factories/filter-utils/add-default-conjunction.utils.ts rename to packages/twenty-server/src/engine/api/rest/api-rest-query-builder/factories/input-factories/filter-utils/add-default-conjunction.utils.ts index 2c9599d963e..61606bb10b4 100644 --- a/packages/twenty-server/src/api/rest/api-rest-query-builder/factories/input-factories/filter-utils/add-default-conjunction.utils.ts +++ b/packages/twenty-server/src/engine/api/rest/api-rest-query-builder/factories/input-factories/filter-utils/add-default-conjunction.utils.ts @@ -1,4 +1,4 @@ -import { Conjunctions } from 'src/api/rest/api-rest-query-builder/factories/input-factories/filter-utils/parse-filter.utils'; +import { Conjunctions } from 'src/engine/api/rest/api-rest-query-builder/factories/input-factories/filter-utils/parse-filter.utils'; export const DEFAULT_CONJUNCTION = Conjunctions.and; diff --git a/packages/twenty-server/src/api/rest/api-rest-query-builder/factories/input-factories/filter-utils/check-filter-query.utils.ts b/packages/twenty-server/src/engine/api/rest/api-rest-query-builder/factories/input-factories/filter-utils/check-filter-query.utils.ts similarity index 100% rename from packages/twenty-server/src/api/rest/api-rest-query-builder/factories/input-factories/filter-utils/check-filter-query.utils.ts rename to packages/twenty-server/src/engine/api/rest/api-rest-query-builder/factories/input-factories/filter-utils/check-filter-query.utils.ts diff --git a/packages/twenty-server/src/api/rest/api-rest-query-builder/factories/input-factories/filter-utils/format-field-values.utils.ts b/packages/twenty-server/src/engine/api/rest/api-rest-query-builder/factories/input-factories/filter-utils/format-field-values.utils.ts similarity index 93% rename from packages/twenty-server/src/api/rest/api-rest-query-builder/factories/input-factories/filter-utils/format-field-values.utils.ts rename to packages/twenty-server/src/engine/api/rest/api-rest-query-builder/factories/input-factories/filter-utils/format-field-values.utils.ts index 442ecd77703..5a7c1e976df 100644 --- a/packages/twenty-server/src/api/rest/api-rest-query-builder/factories/input-factories/filter-utils/format-field-values.utils.ts +++ b/packages/twenty-server/src/engine/api/rest/api-rest-query-builder/factories/input-factories/filter-utils/format-field-values.utils.ts @@ -1,7 +1,7 @@ import { BadRequestException } from '@nestjs/common'; import { FieldMetadataType } from 'src/engine-metadata/field-metadata/field-metadata.entity'; -import { FieldValue } from 'src/api/rest/types/api-rest-field-value.type'; +import { FieldValue } from 'src/engine/api/rest/types/api-rest-field-value.type'; export const formatFieldValue = ( value: string, diff --git a/packages/twenty-server/src/api/rest/api-rest-query-builder/factories/input-factories/filter-utils/parse-base-filter.utils.ts b/packages/twenty-server/src/engine/api/rest/api-rest-query-builder/factories/input-factories/filter-utils/parse-base-filter.utils.ts similarity index 100% rename from packages/twenty-server/src/api/rest/api-rest-query-builder/factories/input-factories/filter-utils/parse-base-filter.utils.ts rename to packages/twenty-server/src/engine/api/rest/api-rest-query-builder/factories/input-factories/filter-utils/parse-base-filter.utils.ts diff --git a/packages/twenty-server/src/api/rest/api-rest-query-builder/factories/input-factories/filter-utils/parse-filter-content.utils.ts b/packages/twenty-server/src/engine/api/rest/api-rest-query-builder/factories/input-factories/filter-utils/parse-filter-content.utils.ts similarity index 100% rename from packages/twenty-server/src/api/rest/api-rest-query-builder/factories/input-factories/filter-utils/parse-filter-content.utils.ts rename to packages/twenty-server/src/engine/api/rest/api-rest-query-builder/factories/input-factories/filter-utils/parse-filter-content.utils.ts diff --git a/packages/twenty-server/src/api/rest/api-rest-query-builder/factories/input-factories/filter-utils/parse-filter.utils.ts b/packages/twenty-server/src/engine/api/rest/api-rest-query-builder/factories/input-factories/filter-utils/parse-filter.utils.ts similarity index 71% rename from packages/twenty-server/src/api/rest/api-rest-query-builder/factories/input-factories/filter-utils/parse-filter.utils.ts rename to packages/twenty-server/src/engine/api/rest/api-rest-query-builder/factories/input-factories/filter-utils/parse-filter.utils.ts index 6eb4eeb88df..3329d2c5d80 100644 --- a/packages/twenty-server/src/api/rest/api-rest-query-builder/factories/input-factories/filter-utils/parse-filter.utils.ts +++ b/packages/twenty-server/src/engine/api/rest/api-rest-query-builder/factories/input-factories/filter-utils/parse-filter.utils.ts @@ -1,13 +1,13 @@ import { BadRequestException } from '@nestjs/common'; -import { parseFilterContent } from 'src/api/rest/api-rest-query-builder/factories/input-factories/filter-utils/parse-filter-content.utils'; -import { parseBaseFilter } from 'src/api/rest/api-rest-query-builder/factories/input-factories/filter-utils/parse-base-filter.utils'; +import { parseFilterContent } from 'src/engine/api/rest/api-rest-query-builder/factories/input-factories/filter-utils/parse-filter-content.utils'; +import { parseBaseFilter } from 'src/engine/api/rest/api-rest-query-builder/factories/input-factories/filter-utils/parse-base-filter.utils'; import { checkFields, getFieldType, -} from 'src/api/rest/api-rest-query-builder/utils/fields.utils'; -import { formatFieldValue } from 'src/api/rest/api-rest-query-builder/factories/input-factories/filter-utils/format-field-values.utils'; -import { FieldValue } from 'src/api/rest/types/api-rest-field-value.type'; +} from 'src/engine/api/rest/api-rest-query-builder/utils/fields.utils'; +import { formatFieldValue } from 'src/engine/api/rest/api-rest-query-builder/factories/input-factories/filter-utils/format-field-values.utils'; +import { FieldValue } from 'src/engine/api/rest/types/api-rest-field-value.type'; export enum Conjunctions { or = 'or', diff --git a/packages/twenty-server/src/api/rest/api-rest-query-builder/factories/input-factories/last-cursor-input.factory.ts b/packages/twenty-server/src/engine/api/rest/api-rest-query-builder/factories/input-factories/last-cursor-input.factory.ts similarity index 100% rename from packages/twenty-server/src/api/rest/api-rest-query-builder/factories/input-factories/last-cursor-input.factory.ts rename to packages/twenty-server/src/engine/api/rest/api-rest-query-builder/factories/input-factories/last-cursor-input.factory.ts diff --git a/packages/twenty-server/src/api/rest/api-rest-query-builder/factories/input-factories/limit-input.factory.ts b/packages/twenty-server/src/engine/api/rest/api-rest-query-builder/factories/input-factories/limit-input.factory.ts similarity index 100% rename from packages/twenty-server/src/api/rest/api-rest-query-builder/factories/input-factories/limit-input.factory.ts rename to packages/twenty-server/src/engine/api/rest/api-rest-query-builder/factories/input-factories/limit-input.factory.ts diff --git a/packages/twenty-server/src/api/rest/api-rest-query-builder/factories/input-factories/order-by-input.factory.ts b/packages/twenty-server/src/engine/api/rest/api-rest-query-builder/factories/input-factories/order-by-input.factory.ts similarity index 91% rename from packages/twenty-server/src/api/rest/api-rest-query-builder/factories/input-factories/order-by-input.factory.ts rename to packages/twenty-server/src/engine/api/rest/api-rest-query-builder/factories/input-factories/order-by-input.factory.ts index 81d604129e7..56720b1208f 100644 --- a/packages/twenty-server/src/api/rest/api-rest-query-builder/factories/input-factories/order-by-input.factory.ts +++ b/packages/twenty-server/src/engine/api/rest/api-rest-query-builder/factories/input-factories/order-by-input.factory.ts @@ -5,9 +5,9 @@ import { Request } from 'express'; import { OrderByDirection, RecordOrderBy, -} from 'src/engine/graphql/workspace-query-builder/interfaces/record.interface'; +} from 'src/engine/api/graphql/workspace-query-builder/interfaces/record.interface'; -import { checkFields } from 'src/api/rest/api-rest-query-builder/utils/fields.utils'; +import { checkFields } from 'src/engine/api/rest/api-rest-query-builder/utils/fields.utils'; export const DEFAULT_ORDER_DIRECTION = OrderByDirection.AscNullsFirst; diff --git a/packages/twenty-server/src/api/rest/api-rest-query-builder/factories/update-query.factory.ts b/packages/twenty-server/src/engine/api/rest/api-rest-query-builder/factories/update-query.factory.ts similarity index 85% rename from packages/twenty-server/src/api/rest/api-rest-query-builder/factories/update-query.factory.ts rename to packages/twenty-server/src/engine/api/rest/api-rest-query-builder/factories/update-query.factory.ts index 05f964e2141..e289c94f228 100644 --- a/packages/twenty-server/src/api/rest/api-rest-query-builder/factories/update-query.factory.ts +++ b/packages/twenty-server/src/engine/api/rest/api-rest-query-builder/factories/update-query.factory.ts @@ -1,7 +1,7 @@ import { Injectable } from '@nestjs/common'; import { capitalize } from 'src/utils/capitalize'; -import { mapFieldMetadataToGraphqlQuery } from 'src/api/rest/api-rest-query-builder/utils/map-field-metadata-to-graphql-query.utils'; +import { mapFieldMetadataToGraphqlQuery } from 'src/engine/api/rest/api-rest-query-builder/utils/map-field-metadata-to-graphql-query.utils'; @Injectable() export class UpdateQueryFactory { diff --git a/packages/twenty-server/src/api/rest/api-rest-query-builder/factories/update-variables.factory.ts b/packages/twenty-server/src/engine/api/rest/api-rest-query-builder/factories/update-variables.factory.ts similarity index 69% rename from packages/twenty-server/src/api/rest/api-rest-query-builder/factories/update-variables.factory.ts rename to packages/twenty-server/src/engine/api/rest/api-rest-query-builder/factories/update-variables.factory.ts index ca38e0b948a..2d1bca67ef5 100644 --- a/packages/twenty-server/src/api/rest/api-rest-query-builder/factories/update-variables.factory.ts +++ b/packages/twenty-server/src/engine/api/rest/api-rest-query-builder/factories/update-variables.factory.ts @@ -1,6 +1,6 @@ import { Injectable } from '@nestjs/common'; -import { ApiRestQueryVariables } from 'src/api/rest/types/api-rest-query-variables.type'; +import { ApiRestQueryVariables } from 'src/engine/api/rest/types/api-rest-query-variables.type'; @Injectable() export class UpdateVariablesFactory { diff --git a/packages/twenty-server/src/api/rest/api-rest-query-builder/utils/__tests__/compute-depth.utils.spec.ts b/packages/twenty-server/src/engine/api/rest/api-rest-query-builder/utils/__tests__/compute-depth.utils.spec.ts similarity index 85% rename from packages/twenty-server/src/api/rest/api-rest-query-builder/utils/__tests__/compute-depth.utils.spec.ts rename to packages/twenty-server/src/engine/api/rest/api-rest-query-builder/utils/__tests__/compute-depth.utils.spec.ts index c5bd0f4e355..3fc57097f5a 100644 --- a/packages/twenty-server/src/api/rest/api-rest-query-builder/utils/__tests__/compute-depth.utils.spec.ts +++ b/packages/twenty-server/src/engine/api/rest/api-rest-query-builder/utils/__tests__/compute-depth.utils.spec.ts @@ -1,4 +1,4 @@ -import { computeDepth } from 'src/api/rest/api-rest-query-builder/utils/compute-depth.utils'; +import { computeDepth } from 'src/engine/api/rest/api-rest-query-builder/utils/compute-depth.utils'; describe('computeDepth', () => { it('should compute depth from query', () => { diff --git a/packages/twenty-server/src/api/rest/api-rest-query-builder/utils/__tests__/fields.utils.spec.ts b/packages/twenty-server/src/engine/api/rest/api-rest-query-builder/utils/__tests__/fields.utils.spec.ts similarity index 50% rename from packages/twenty-server/src/api/rest/api-rest-query-builder/utils/__tests__/fields.utils.spec.ts rename to packages/twenty-server/src/engine/api/rest/api-rest-query-builder/utils/__tests__/fields.utils.spec.ts index 6a6049ba06c..474a1a203b5 100644 --- a/packages/twenty-server/src/api/rest/api-rest-query-builder/utils/__tests__/fields.utils.spec.ts +++ b/packages/twenty-server/src/engine/api/rest/api-rest-query-builder/utils/__tests__/fields.utils.spec.ts @@ -1,14 +1,14 @@ -import { objectMetadataItem } from 'src/utils/utils-test/object-metadata-item'; +import { objectMetadataItemMock } from 'src/engine/api/__mocks__/object-metadata-item.mock'; import { checkFields, getFieldType, -} from 'src/api/rest/api-rest-query-builder/utils/fields.utils'; +} from 'src/engine/api/rest/api-rest-query-builder/utils/fields.utils'; import { FieldMetadataType } from 'src/engine-metadata/field-metadata/field-metadata.entity'; describe('FieldUtils', () => { describe('getFieldType', () => { it('should get field type', () => { - expect(getFieldType(objectMetadataItem, 'fieldNumber')).toEqual( + expect(getFieldType(objectMetadataItemMock, 'fieldNumber')).toEqual( FieldMetadataType.NUMBER, ); }); @@ -17,13 +17,13 @@ describe('FieldUtils', () => { describe('checkFields', () => { it('should check field types', () => { expect(() => - checkFields(objectMetadataItem, ['fieldNumber']), + checkFields(objectMetadataItemMock, ['fieldNumber']), ).not.toThrow(); - expect(() => checkFields(objectMetadataItem, ['wrongField'])).toThrow(); + expect(() => checkFields(objectMetadataItemMock, ['wrongField'])).toThrow(); expect(() => - checkFields(objectMetadataItem, ['fieldNumber', 'wrongField']), + checkFields(objectMetadataItemMock, ['fieldNumber', 'wrongField']), ).toThrow(); }); }); diff --git a/packages/twenty-server/src/engine/api/rest/api-rest-query-builder/utils/__tests__/map-field-metadata-to-graphql-query.utils.spec.ts b/packages/twenty-server/src/engine/api/rest/api-rest-query-builder/utils/__tests__/map-field-metadata-to-graphql-query.utils.spec.ts new file mode 100644 index 00000000000..fea18cb63bb --- /dev/null +++ b/packages/twenty-server/src/engine/api/rest/api-rest-query-builder/utils/__tests__/map-field-metadata-to-graphql-query.utils.spec.ts @@ -0,0 +1,37 @@ +import { + fieldCurrencyMock, + fieldLinkMock, + fieldNumberMock, + fieldStringMock, + objectMetadataItemMock, +} from 'src/engine/api/__mocks__/object-metadata-item.mock'; +import { mapFieldMetadataToGraphqlQuery } from 'src/engine/api/rest/api-rest-query-builder/utils/map-field-metadata-to-graphql-query.utils'; + +describe('mapFieldMetadataToGraphqlQuery', () => { + it('should map properly', () => { + expect( + mapFieldMetadataToGraphqlQuery(objectMetadataItemMock, fieldNumberMock), + ).toEqual('fieldNumber'); + expect( + mapFieldMetadataToGraphqlQuery(objectMetadataItemMock, fieldStringMock), + ).toEqual('fieldString'); + expect( + mapFieldMetadataToGraphqlQuery(objectMetadataItemMock, fieldLinkMock), + ).toEqual(` + fieldLink + { + label + url + } + `); + expect( + mapFieldMetadataToGraphqlQuery(objectMetadataItemMock, fieldCurrencyMock), + ).toEqual(` + fieldCurrency + { + amountMicros + currencyCode + } + `); + }); +}); diff --git a/packages/twenty-server/src/api/rest/api-rest-query-builder/utils/__tests__/parse-path.utils.spec.ts b/packages/twenty-server/src/engine/api/rest/api-rest-query-builder/utils/__tests__/parse-path.utils.spec.ts similarity index 82% rename from packages/twenty-server/src/api/rest/api-rest-query-builder/utils/__tests__/parse-path.utils.spec.ts rename to packages/twenty-server/src/engine/api/rest/api-rest-query-builder/utils/__tests__/parse-path.utils.spec.ts index 36ff6de233b..b81a46d5d03 100644 --- a/packages/twenty-server/src/api/rest/api-rest-query-builder/utils/__tests__/parse-path.utils.spec.ts +++ b/packages/twenty-server/src/engine/api/rest/api-rest-query-builder/utils/__tests__/parse-path.utils.spec.ts @@ -1,4 +1,4 @@ -import { parsePath } from 'src/api/rest/api-rest-query-builder/utils/parse-path.utils'; +import { parsePath } from 'src/engine/api/rest/api-rest-query-builder/utils/parse-path.utils'; describe('parsePath', () => { it('should parse object from request path', () => { diff --git a/packages/twenty-server/src/api/rest/api-rest-query-builder/utils/compute-depth.utils.ts b/packages/twenty-server/src/engine/api/rest/api-rest-query-builder/utils/compute-depth.utils.ts similarity index 100% rename from packages/twenty-server/src/api/rest/api-rest-query-builder/utils/compute-depth.utils.ts rename to packages/twenty-server/src/engine/api/rest/api-rest-query-builder/utils/compute-depth.utils.ts diff --git a/packages/twenty-server/src/api/rest/api-rest-query-builder/utils/fields.utils.ts b/packages/twenty-server/src/engine/api/rest/api-rest-query-builder/utils/fields.utils.ts similarity index 90% rename from packages/twenty-server/src/api/rest/api-rest-query-builder/utils/fields.utils.ts rename to packages/twenty-server/src/engine/api/rest/api-rest-query-builder/utils/fields.utils.ts index a9aca515c3c..13a28bb7c59 100644 --- a/packages/twenty-server/src/api/rest/api-rest-query-builder/utils/fields.utils.ts +++ b/packages/twenty-server/src/engine/api/rest/api-rest-query-builder/utils/fields.utils.ts @@ -1,7 +1,7 @@ import { BadRequestException } from '@nestjs/common'; import { FieldMetadataType } from 'src/engine-metadata/field-metadata/field-metadata.entity'; -import { computeObjectTargetTable } from 'src/engine-workspace/utils/compute-object-target-table.util'; +import { computeObjectTargetTable } from 'src/engine/utils/compute-object-target-table.util'; export const getFieldType = ( objectMetadataItem, diff --git a/packages/twenty-server/src/api/rest/api-rest-query-builder/utils/map-field-metadata-to-graphql-query.utils.ts b/packages/twenty-server/src/engine/api/rest/api-rest-query-builder/utils/map-field-metadata-to-graphql-query.utils.ts similarity index 100% rename from packages/twenty-server/src/api/rest/api-rest-query-builder/utils/map-field-metadata-to-graphql-query.utils.ts rename to packages/twenty-server/src/engine/api/rest/api-rest-query-builder/utils/map-field-metadata-to-graphql-query.utils.ts diff --git a/packages/twenty-server/src/api/rest/api-rest-query-builder/utils/parse-path.utils.ts b/packages/twenty-server/src/engine/api/rest/api-rest-query-builder/utils/parse-path.utils.ts similarity index 100% rename from packages/twenty-server/src/api/rest/api-rest-query-builder/utils/parse-path.utils.ts rename to packages/twenty-server/src/engine/api/rest/api-rest-query-builder/utils/parse-path.utils.ts diff --git a/packages/twenty-server/src/api/rest/api-rest.controller.ts b/packages/twenty-server/src/engine/api/rest/api-rest.controller.ts similarity index 85% rename from packages/twenty-server/src/api/rest/api-rest.controller.ts rename to packages/twenty-server/src/engine/api/rest/api-rest.controller.ts index ffdd9ac3610..f1eee2cc306 100644 --- a/packages/twenty-server/src/api/rest/api-rest.controller.ts +++ b/packages/twenty-server/src/engine/api/rest/api-rest.controller.ts @@ -2,8 +2,8 @@ import { Controller, Delete, Get, Post, Put, Req, Res } from '@nestjs/common'; import { Request, Response } from 'express'; -import { ApiRestService } from 'src/api/rest/api-rest.service'; -import { handleResult } from 'src/api/rest/api-rest.controller.utils'; +import { ApiRestService } from 'src/engine/api/rest/api-rest.service'; +import { handleResult } from 'src/engine/api/rest/api-rest.controller.utils'; @Controller('rest/*') export class ApiRestController { diff --git a/packages/twenty-server/src/api/rest/api-rest.controller.utils.ts b/packages/twenty-server/src/engine/api/rest/api-rest.controller.utils.ts similarity index 91% rename from packages/twenty-server/src/api/rest/api-rest.controller.utils.ts rename to packages/twenty-server/src/engine/api/rest/api-rest.controller.utils.ts index 5af175eb0ef..a45efb8a5fd 100644 --- a/packages/twenty-server/src/api/rest/api-rest.controller.utils.ts +++ b/packages/twenty-server/src/engine/api/rest/api-rest.controller.utils.ts @@ -1,6 +1,6 @@ import { Response } from 'express'; -import { ApiRestResponse } from 'src/api/rest/types/api-rest-response.type'; +import { ApiRestResponse } from 'src/engine/api/rest/types/api-rest-response.type'; // https://gist.github.com/ManUtopiK/469aec75b655d6a4d912aeb3b75af3c9 export const cleanGraphQLResponse = (input) => { diff --git a/packages/twenty-server/src/engine/api/rest/api-rest.module.ts b/packages/twenty-server/src/engine/api/rest/api-rest.module.ts new file mode 100644 index 00000000000..f064ac0cfcb --- /dev/null +++ b/packages/twenty-server/src/engine/api/rest/api-rest.module.ts @@ -0,0 +1,17 @@ +import { Module } from '@nestjs/common'; +import { HttpModule } from '@nestjs/axios'; + +import { ApiRestController } from 'src/engine/api/rest/api-rest.controller'; +import { ApiRestService } from 'src/engine/api/rest/api-rest.service'; +import { ApiRestQueryBuilderModule } from 'src/engine/api/rest/api-rest-query-builder/api-rest-query-builder.module'; +import { AuthModule } from 'src/engine/modules/auth/auth.module'; +import { ApiRestMetadataController } from 'src/engine/api/rest/metadata-rest.controller'; +import { ApiRestMetadataService } from 'src/engine/api/rest/metadata-rest.service'; + +@Module({ + imports: [ApiRestQueryBuilderModule, AuthModule, HttpModule], + controllers: [ApiRestMetadataController, ApiRestController], + providers: [ApiRestMetadataService, ApiRestService], + exports: [ApiRestMetadataService], +}) +export class ApiRestModule {} diff --git a/packages/twenty-server/src/api/rest/api-rest.service.ts b/packages/twenty-server/src/engine/api/rest/api-rest.service.ts similarity index 85% rename from packages/twenty-server/src/api/rest/api-rest.service.ts rename to packages/twenty-server/src/engine/api/rest/api-rest.service.ts index 867c8c231b1..f5306b55ec1 100644 --- a/packages/twenty-server/src/api/rest/api-rest.service.ts +++ b/packages/twenty-server/src/engine/api/rest/api-rest.service.ts @@ -3,11 +3,11 @@ import { HttpService } from '@nestjs/axios'; import { Request } from 'express'; -import { EnvironmentService } from 'src/integrations/environment/environment.service'; -import { ApiRestQueryBuilderFactory } from 'src/api/rest/api-rest-query-builder/api-rest-query-builder.factory'; +import { EnvironmentService } from 'src/engine/integrations/environment/environment.service'; +import { ApiRestQueryBuilderFactory } from 'src/engine/api/rest/api-rest-query-builder/api-rest-query-builder.factory'; import { TokenService } from 'src/engine/modules/auth/services/token.service'; -import { ApiRestResponse } from 'src/api/rest/types/api-rest-response.type'; -import { ApiRestQuery } from 'src/api/rest/types/api-rest-query.type'; +import { ApiRestResponse } from 'src/engine/api/rest/types/api-rest-response.type'; +import { ApiRestQuery } from 'src/engine/api/rest/types/api-rest-query.type'; @Injectable() export class ApiRestService { diff --git a/packages/twenty-server/src/api/rest/metadata-rest.controller.ts b/packages/twenty-server/src/engine/api/rest/metadata-rest.controller.ts similarity index 84% rename from packages/twenty-server/src/api/rest/metadata-rest.controller.ts rename to packages/twenty-server/src/engine/api/rest/metadata-rest.controller.ts index d6d1f6b02c1..ea9728b86fc 100644 --- a/packages/twenty-server/src/api/rest/metadata-rest.controller.ts +++ b/packages/twenty-server/src/engine/api/rest/metadata-rest.controller.ts @@ -2,8 +2,8 @@ import { Controller, Get, Delete, Post, Put, Req, Res } from '@nestjs/common'; import { Request, Response } from 'express'; -import { handleResult } from 'src/api/rest/api-rest.controller.utils'; -import { ApiRestMetadataService } from 'src/api/rest/metadata-rest.service'; +import { handleResult } from 'src/engine/api/rest/api-rest.controller.utils'; +import { ApiRestMetadataService } from 'src/engine/api/rest/metadata-rest.service'; @Controller('rest/metadata/*') export class ApiRestMetadataController { diff --git a/packages/twenty-server/src/api/rest/metadata-rest.service.ts b/packages/twenty-server/src/engine/api/rest/metadata-rest.service.ts similarity index 95% rename from packages/twenty-server/src/api/rest/metadata-rest.service.ts rename to packages/twenty-server/src/engine/api/rest/metadata-rest.service.ts index 2f83b08b2c7..4b460236d5b 100644 --- a/packages/twenty-server/src/api/rest/metadata-rest.service.ts +++ b/packages/twenty-server/src/engine/api/rest/metadata-rest.service.ts @@ -1,11 +1,11 @@ import { BadRequestException, Injectable } from '@nestjs/common'; import { HttpService } from '@nestjs/axios'; -import { EnvironmentService } from 'src/integrations/environment/environment.service'; -import { ApiRestQueryBuilderFactory } from 'src/api/rest/api-rest-query-builder/api-rest-query-builder.factory'; -import { ApiRestQuery } from 'src/api/rest/types/api-rest-query.type'; +import { EnvironmentService } from 'src/engine/integrations/environment/environment.service'; +import { ApiRestQueryBuilderFactory } from 'src/engine/api/rest/api-rest-query-builder/api-rest-query-builder.factory'; +import { ApiRestQuery } from 'src/engine/api/rest/types/api-rest-query.type'; import { TokenService } from 'src/engine/modules/auth/services/token.service'; -import { parseMetadataPath } from 'src/api/rest/api-rest-query-builder/utils/parse-path.utils'; +import { parseMetadataPath } from 'src/engine/api/rest/api-rest-query-builder/utils/parse-path.utils'; import { capitalize } from 'src/utils/capitalize'; @Injectable() diff --git a/packages/twenty-server/src/api/rest/types/api-rest-field-value.type.ts b/packages/twenty-server/src/engine/api/rest/types/api-rest-field-value.type.ts similarity index 100% rename from packages/twenty-server/src/api/rest/types/api-rest-field-value.type.ts rename to packages/twenty-server/src/engine/api/rest/types/api-rest-field-value.type.ts diff --git a/packages/twenty-server/src/api/rest/types/api-rest-query-variables.type.ts b/packages/twenty-server/src/engine/api/rest/types/api-rest-query-variables.type.ts similarity index 100% rename from packages/twenty-server/src/api/rest/types/api-rest-query-variables.type.ts rename to packages/twenty-server/src/engine/api/rest/types/api-rest-query-variables.type.ts diff --git a/packages/twenty-server/src/api/rest/types/api-rest-query.type.ts b/packages/twenty-server/src/engine/api/rest/types/api-rest-query.type.ts similarity index 100% rename from packages/twenty-server/src/api/rest/types/api-rest-query.type.ts rename to packages/twenty-server/src/engine/api/rest/types/api-rest-query.type.ts diff --git a/packages/twenty-server/src/api/rest/types/api-rest-response.type.ts b/packages/twenty-server/src/engine/api/rest/types/api-rest-response.type.ts similarity index 100% rename from packages/twenty-server/src/api/rest/types/api-rest-response.type.ts rename to packages/twenty-server/src/engine/api/rest/types/api-rest-response.type.ts diff --git a/packages/twenty-server/src/engine/filters/utils/global-exception-handler.util.ts b/packages/twenty-server/src/engine/filters/utils/global-exception-handler.util.ts index 51739c32c10..cae610a89c3 100644 --- a/packages/twenty-server/src/engine/filters/utils/global-exception-handler.util.ts +++ b/packages/twenty-server/src/engine/filters/utils/global-exception-handler.util.ts @@ -1,6 +1,6 @@ import { HttpException } from '@nestjs/common'; -import { ExceptionHandlerUser } from 'src/integrations/exception-handler/interfaces/exception-handler-user.interface'; +import { ExceptionHandlerUser } from 'src/engine/integrations/exception-handler/interfaces/exception-handler-user.interface'; import { AuthenticationError, @@ -10,7 +10,7 @@ import { NotFoundError, ConflictError, } from 'src/engine/filters/utils/graphql-errors.util'; -import { ExceptionHandlerService } from 'src/integrations/exception-handler/exception-handler.service'; +import { ExceptionHandlerService } from 'src/engine/integrations/exception-handler/exception-handler.service'; const graphQLPredefinedExceptions = { 400: ValidationError, diff --git a/packages/twenty-server/src/engine/graphql/workspace-query-builder/utils-test/workspace-query-builder-options.ts b/packages/twenty-server/src/engine/graphql/workspace-query-builder/utils-test/workspace-query-builder-options.ts deleted file mode 100644 index b57b755db28..00000000000 --- a/packages/twenty-server/src/engine/graphql/workspace-query-builder/utils-test/workspace-query-builder-options.ts +++ /dev/null @@ -1,13 +0,0 @@ -import { GraphQLResolveInfo } from 'graphql'; - -import { ObjectMetadataInterface } from 'src/engine-metadata/field-metadata/interfaces/object-metadata.interface'; -import { WorkspaceQueryBuilderOptions } from 'src/engine/graphql/workspace-query-builder/interfaces/workspace-query-builder-options.interface'; - -import { objectMetadataItem } from 'src/utils/utils-test/object-metadata-item'; - -export const workspaceQueryBuilderOptions: WorkspaceQueryBuilderOptions = { - fieldMetadataCollection: [], - info: {} as GraphQLResolveInfo, - objectMetadataCollection: [], - objectMetadataItem: objectMetadataItem as ObjectMetadataInterface, -}; diff --git a/packages/twenty-server/src/engine/graphql/workspace-query-runner/workspace-pre-query-hook/workspace-pre-query-hook.config.ts b/packages/twenty-server/src/engine/graphql/workspace-query-runner/workspace-pre-query-hook/workspace-pre-query-hook.config.ts deleted file mode 100644 index b3adbf44aca..00000000000 --- a/packages/twenty-server/src/engine/graphql/workspace-query-runner/workspace-pre-query-hook/workspace-pre-query-hook.config.ts +++ /dev/null @@ -1,11 +0,0 @@ -import { MessageFindManyPreQueryHook } from 'src/business/modules/message/query-hooks/message/message-find-many.pre-query.hook'; -import { MessageFindOnePreQueryHook } from 'src/business/modules/message/query-hooks/message/message-find-one.pre-query-hook'; -import { WorkspaceQueryHook } from 'src/engine/graphql/workspace-query-runner/workspace-pre-query-hook/types/workspace-query-hook.type'; - -// TODO: move to a decorator -export const workspacePreQueryHooks: WorkspaceQueryHook = { - message: { - findOne: [MessageFindOnePreQueryHook.name], - findMany: [MessageFindManyPreQueryHook.name], - }, -}; diff --git a/packages/twenty-server/src/engine/graphql/workspace-query-runner/workspace-pre-query-hook/workspace-pre-query-hook.module.ts b/packages/twenty-server/src/engine/graphql/workspace-query-runner/workspace-pre-query-hook/workspace-pre-query-hook.module.ts deleted file mode 100644 index a62b0781291..00000000000 --- a/packages/twenty-server/src/engine/graphql/workspace-query-runner/workspace-pre-query-hook/workspace-pre-query-hook.module.ts +++ /dev/null @@ -1,11 +0,0 @@ -import { Module } from '@nestjs/common'; - -import { MessagingQueryHookModule } from 'src/business/modules/message/query-hooks/messaging-query-hook.module'; -import { WorkspacePreQueryHookService } from 'src/engine/graphql/workspace-query-runner/workspace-pre-query-hook/workspace-pre-query-hook.service'; - -@Module({ - imports: [MessagingQueryHookModule], - providers: [WorkspacePreQueryHookService], - exports: [WorkspacePreQueryHookService], -}) -export class WorkspacePreQueryHookModule {} diff --git a/packages/twenty-server/src/integrations/cache-storage/__tests__/cache-storage.service.spec.ts b/packages/twenty-server/src/engine/integrations/cache-storage/__tests__/cache-storage.service.spec.ts similarity index 90% rename from packages/twenty-server/src/integrations/cache-storage/__tests__/cache-storage.service.spec.ts rename to packages/twenty-server/src/engine/integrations/cache-storage/__tests__/cache-storage.service.spec.ts index c68233c5fad..d8ee9c8a58c 100644 --- a/packages/twenty-server/src/integrations/cache-storage/__tests__/cache-storage.service.spec.ts +++ b/packages/twenty-server/src/engine/integrations/cache-storage/__tests__/cache-storage.service.spec.ts @@ -1,7 +1,7 @@ import { Cache } from '@nestjs/cache-manager'; -import { CacheStorageService } from 'src/integrations/cache-storage/cache-storage.service'; -import { CacheStorageNamespace } from 'src/integrations/cache-storage/types/cache-storage-namespace.enum'; +import { CacheStorageService } from 'src/engine/integrations/cache-storage/cache-storage.service'; +import { CacheStorageNamespace } from 'src/engine/integrations/cache-storage/types/cache-storage-namespace.enum'; const cacheStorageNamespace = CacheStorageNamespace.Messaging; diff --git a/packages/twenty-server/src/integrations/cache-storage/cache-storage.module-factory.ts b/packages/twenty-server/src/engine/integrations/cache-storage/cache-storage.module-factory.ts similarity index 85% rename from packages/twenty-server/src/integrations/cache-storage/cache-storage.module-factory.ts rename to packages/twenty-server/src/engine/integrations/cache-storage/cache-storage.module-factory.ts index b6957c808da..79dedaf6bdc 100644 --- a/packages/twenty-server/src/integrations/cache-storage/cache-storage.module-factory.ts +++ b/packages/twenty-server/src/engine/integrations/cache-storage/cache-storage.module-factory.ts @@ -2,8 +2,8 @@ import { CacheModuleOptions } from '@nestjs/common'; import { redisStore } from 'cache-manager-redis-yet'; -import { CacheStorageType } from 'src/integrations/cache-storage/types/cache-storage-type.enum'; -import { EnvironmentService } from 'src/integrations/environment/environment.service'; +import { CacheStorageType } from 'src/engine/integrations/cache-storage/types/cache-storage-type.enum'; +import { EnvironmentService } from 'src/engine/integrations/environment/environment.service'; export const cacheStorageModuleFactory = ( environmentService: EnvironmentService, diff --git a/packages/twenty-server/src/integrations/cache-storage/cache-storage.module.ts b/packages/twenty-server/src/engine/integrations/cache-storage/cache-storage.module.ts similarity index 65% rename from packages/twenty-server/src/integrations/cache-storage/cache-storage.module.ts rename to packages/twenty-server/src/engine/integrations/cache-storage/cache-storage.module.ts index 32c31e7615c..581919555d9 100644 --- a/packages/twenty-server/src/integrations/cache-storage/cache-storage.module.ts +++ b/packages/twenty-server/src/engine/integrations/cache-storage/cache-storage.module.ts @@ -2,10 +2,10 @@ import { Module, Global } from '@nestjs/common'; import { CacheModule, CACHE_MANAGER, Cache } from '@nestjs/cache-manager'; import { ConfigModule } from '@nestjs/config'; -import { CacheStorageService } from 'src/integrations/cache-storage/cache-storage.service'; -import { EnvironmentService } from 'src/integrations/environment/environment.service'; -import { cacheStorageModuleFactory } from 'src/integrations/cache-storage/cache-storage.module-factory'; -import { CacheStorageNamespace } from 'src/integrations/cache-storage/types/cache-storage-namespace.enum'; +import { CacheStorageService } from 'src/engine/integrations/cache-storage/cache-storage.service'; +import { EnvironmentService } from 'src/engine/integrations/environment/environment.service'; +import { cacheStorageModuleFactory } from 'src/engine/integrations/cache-storage/cache-storage.module-factory'; +import { CacheStorageNamespace } from 'src/engine/integrations/cache-storage/types/cache-storage-namespace.enum'; @Global() @Module({ diff --git a/packages/twenty-server/src/integrations/cache-storage/cache-storage.service.ts b/packages/twenty-server/src/engine/integrations/cache-storage/cache-storage.service.ts similarity index 85% rename from packages/twenty-server/src/integrations/cache-storage/cache-storage.service.ts rename to packages/twenty-server/src/engine/integrations/cache-storage/cache-storage.service.ts index fdc44ff1ff4..e0b6fba9af0 100644 --- a/packages/twenty-server/src/integrations/cache-storage/cache-storage.service.ts +++ b/packages/twenty-server/src/engine/integrations/cache-storage/cache-storage.service.ts @@ -1,7 +1,7 @@ import { Inject, Injectable } from '@nestjs/common'; import { CACHE_MANAGER, Cache } from '@nestjs/cache-manager'; -import { CacheStorageNamespace } from 'src/integrations/cache-storage/types/cache-storage-namespace.enum'; +import { CacheStorageNamespace } from 'src/engine/integrations/cache-storage/types/cache-storage-namespace.enum'; @Injectable() export class CacheStorageService { diff --git a/packages/twenty-server/src/integrations/cache-storage/types/cache-storage-namespace.enum.ts b/packages/twenty-server/src/engine/integrations/cache-storage/types/cache-storage-namespace.enum.ts similarity index 100% rename from packages/twenty-server/src/integrations/cache-storage/types/cache-storage-namespace.enum.ts rename to packages/twenty-server/src/engine/integrations/cache-storage/types/cache-storage-namespace.enum.ts diff --git a/packages/twenty-server/src/integrations/cache-storage/types/cache-storage-type.enum.ts b/packages/twenty-server/src/engine/integrations/cache-storage/types/cache-storage-type.enum.ts similarity index 100% rename from packages/twenty-server/src/integrations/cache-storage/types/cache-storage-type.enum.ts rename to packages/twenty-server/src/engine/integrations/cache-storage/types/cache-storage-type.enum.ts diff --git a/packages/twenty-server/src/integrations/email/drivers/interfaces/email-driver.interface.ts b/packages/twenty-server/src/engine/integrations/email/drivers/interfaces/email-driver.interface.ts similarity index 100% rename from packages/twenty-server/src/integrations/email/drivers/interfaces/email-driver.interface.ts rename to packages/twenty-server/src/engine/integrations/email/drivers/interfaces/email-driver.interface.ts diff --git a/packages/twenty-server/src/integrations/email/drivers/logger.driver.ts b/packages/twenty-server/src/engine/integrations/email/drivers/logger.driver.ts similarity index 84% rename from packages/twenty-server/src/integrations/email/drivers/logger.driver.ts rename to packages/twenty-server/src/engine/integrations/email/drivers/logger.driver.ts index 90ca586b91d..a3138de0bd3 100644 --- a/packages/twenty-server/src/integrations/email/drivers/logger.driver.ts +++ b/packages/twenty-server/src/engine/integrations/email/drivers/logger.driver.ts @@ -2,7 +2,7 @@ import { Logger } from '@nestjs/common'; import { SendMailOptions } from 'nodemailer'; -import { EmailDriver } from 'src/integrations/email/drivers/interfaces/email-driver.interface'; +import { EmailDriver } from 'src/engine/integrations/email/drivers/interfaces/email-driver.interface'; export class LoggerDriver implements EmailDriver { private readonly logger = new Logger(LoggerDriver.name); diff --git a/packages/twenty-server/src/integrations/email/drivers/smtp.driver.ts b/packages/twenty-server/src/engine/integrations/email/drivers/smtp.driver.ts similarity index 88% rename from packages/twenty-server/src/integrations/email/drivers/smtp.driver.ts rename to packages/twenty-server/src/engine/integrations/email/drivers/smtp.driver.ts index c4dfd77fb05..94445854ec0 100644 --- a/packages/twenty-server/src/integrations/email/drivers/smtp.driver.ts +++ b/packages/twenty-server/src/engine/integrations/email/drivers/smtp.driver.ts @@ -3,7 +3,7 @@ import { Logger } from '@nestjs/common'; import { createTransport, Transporter, SendMailOptions } from 'nodemailer'; import SMTPConnection from 'nodemailer/lib/smtp-connection'; -import { EmailDriver } from 'src/integrations/email/drivers/interfaces/email-driver.interface'; +import { EmailDriver } from 'src/engine/integrations/email/drivers/interfaces/email-driver.interface'; export class SmtpDriver implements EmailDriver { private readonly logger = new Logger(SmtpDriver.name); diff --git a/packages/twenty-server/src/integrations/email/email-sender.job.ts b/packages/twenty-server/src/engine/integrations/email/email-sender.job.ts similarity index 64% rename from packages/twenty-server/src/integrations/email/email-sender.job.ts rename to packages/twenty-server/src/engine/integrations/email/email-sender.job.ts index 1162f4ca064..7b284d4b26c 100644 --- a/packages/twenty-server/src/integrations/email/email-sender.job.ts +++ b/packages/twenty-server/src/engine/integrations/email/email-sender.job.ts @@ -2,9 +2,9 @@ import { Injectable } from '@nestjs/common'; import { SendMailOptions } from 'nodemailer'; -import { MessageQueueJob } from 'src/integrations/message-queue/interfaces/message-queue-job.interface'; +import { MessageQueueJob } from 'src/engine/integrations/message-queue/interfaces/message-queue-job.interface'; -import { EmailSenderService } from 'src/integrations/email/email-sender.service'; +import { EmailSenderService } from 'src/engine/integrations/email/email-sender.service'; @Injectable() export class EmailSenderJob implements MessageQueueJob { diff --git a/packages/twenty-server/src/integrations/email/email-sender.service.ts b/packages/twenty-server/src/engine/integrations/email/email-sender.service.ts similarity index 66% rename from packages/twenty-server/src/integrations/email/email-sender.service.ts rename to packages/twenty-server/src/engine/integrations/email/email-sender.service.ts index 58b6c4a9c18..96ec2196f03 100644 --- a/packages/twenty-server/src/integrations/email/email-sender.service.ts +++ b/packages/twenty-server/src/engine/integrations/email/email-sender.service.ts @@ -2,9 +2,9 @@ import { Inject, Injectable } from '@nestjs/common'; import { SendMailOptions } from 'nodemailer'; -import { EmailDriver } from 'src/integrations/email/drivers/interfaces/email-driver.interface'; +import { EmailDriver } from 'src/engine/integrations/email/drivers/interfaces/email-driver.interface'; -import { EMAIL_DRIVER } from 'src/integrations/email/email.constants'; +import { EMAIL_DRIVER } from 'src/engine/integrations/email/email.constants'; @Injectable() export class EmailSenderService implements EmailDriver { diff --git a/packages/twenty-server/src/integrations/email/email.constants.ts b/packages/twenty-server/src/engine/integrations/email/email.constants.ts similarity index 100% rename from packages/twenty-server/src/integrations/email/email.constants.ts rename to packages/twenty-server/src/engine/integrations/email/email.constants.ts diff --git a/packages/twenty-server/src/integrations/email/email.module-factory.ts b/packages/twenty-server/src/engine/integrations/email/email.module-factory.ts similarity index 86% rename from packages/twenty-server/src/integrations/email/email.module-factory.ts rename to packages/twenty-server/src/engine/integrations/email/email.module-factory.ts index 6b9a52d1ad1..870f30db2fa 100644 --- a/packages/twenty-server/src/integrations/email/email.module-factory.ts +++ b/packages/twenty-server/src/engine/integrations/email/email.module-factory.ts @@ -1,9 +1,9 @@ import { EmailDriver, EmailModuleOptions, -} from 'src/integrations/email/interfaces/email.interface'; +} from 'src/engine/integrations/email/interfaces/email.interface'; -import { EnvironmentService } from 'src/integrations/environment/environment.service'; +import { EnvironmentService } from 'src/engine/integrations/environment/environment.service'; export const emailModuleFactory = ( environmentService: EnvironmentService, diff --git a/packages/twenty-server/src/integrations/email/email.module.ts b/packages/twenty-server/src/engine/integrations/email/email.module.ts similarity index 54% rename from packages/twenty-server/src/integrations/email/email.module.ts rename to packages/twenty-server/src/engine/integrations/email/email.module.ts index d18fa71fdbc..f97c246ab66 100644 --- a/packages/twenty-server/src/integrations/email/email.module.ts +++ b/packages/twenty-server/src/engine/integrations/email/email.module.ts @@ -1,12 +1,12 @@ import { DynamicModule, Global } from '@nestjs/common'; -import { EmailModuleAsyncOptions } from 'src/integrations/email/interfaces/email.interface'; +import { EmailModuleAsyncOptions } from 'src/engine/integrations/email/interfaces/email.interface'; -import { EMAIL_DRIVER } from 'src/integrations/email/email.constants'; -import { LoggerDriver } from 'src/integrations/email/drivers/logger.driver'; -import { SmtpDriver } from 'src/integrations/email/drivers/smtp.driver'; -import { EmailService } from 'src/integrations/email/email.service'; -import { EmailSenderService } from 'src/integrations/email/email-sender.service'; +import { EMAIL_DRIVER } from 'src/engine/integrations/email/email.constants'; +import { LoggerDriver } from 'src/engine/integrations/email/drivers/logger.driver'; +import { SmtpDriver } from 'src/engine/integrations/email/drivers/smtp.driver'; +import { EmailService } from 'src/engine/integrations/email/email.service'; +import { EmailSenderService } from 'src/engine/integrations/email/email-sender.service'; @Global() export class EmailModule { diff --git a/packages/twenty-server/src/integrations/email/email.service.ts b/packages/twenty-server/src/engine/integrations/email/email.service.ts similarity index 62% rename from packages/twenty-server/src/integrations/email/email.service.ts rename to packages/twenty-server/src/engine/integrations/email/email.service.ts index 8963ce74d9c..a149c78023b 100644 --- a/packages/twenty-server/src/integrations/email/email.service.ts +++ b/packages/twenty-server/src/engine/integrations/email/email.service.ts @@ -2,9 +2,9 @@ import { Inject, Injectable } from '@nestjs/common'; import { SendMailOptions } from 'nodemailer'; -import { MessageQueue } from 'src/integrations/message-queue/message-queue.constants'; -import { MessageQueueService } from 'src/integrations/message-queue/services/message-queue.service'; -import { EmailSenderJob } from 'src/integrations/email/email-sender.job'; +import { MessageQueue } from 'src/engine/integrations/message-queue/message-queue.constants'; +import { MessageQueueService } from 'src/engine/integrations/message-queue/services/message-queue.service'; +import { EmailSenderJob } from 'src/engine/integrations/email/email-sender.job'; @Injectable() export class EmailService { diff --git a/packages/twenty-server/src/integrations/email/interfaces/email.interface.ts b/packages/twenty-server/src/engine/integrations/email/interfaces/email.interface.ts similarity index 100% rename from packages/twenty-server/src/integrations/email/interfaces/email.interface.ts rename to packages/twenty-server/src/engine/integrations/email/interfaces/email.interface.ts diff --git a/packages/twenty-server/src/integrations/environment/decorators/__tests__/cast-to-log-level-array.decorator.spec.ts b/packages/twenty-server/src/engine/integrations/environment/decorators/__tests__/cast-to-log-level-array.decorator.spec.ts similarity index 94% rename from packages/twenty-server/src/integrations/environment/decorators/__tests__/cast-to-log-level-array.decorator.spec.ts rename to packages/twenty-server/src/engine/integrations/environment/decorators/__tests__/cast-to-log-level-array.decorator.spec.ts index 26ba667e4e9..43447e2de1e 100644 --- a/packages/twenty-server/src/integrations/environment/decorators/__tests__/cast-to-log-level-array.decorator.spec.ts +++ b/packages/twenty-server/src/engine/integrations/environment/decorators/__tests__/cast-to-log-level-array.decorator.spec.ts @@ -1,6 +1,6 @@ import { plainToClass } from 'class-transformer'; -import { CastToLogLevelArray } from 'src/integrations/environment/decorators/cast-to-log-level-array.decorator'; +import { CastToLogLevelArray } from 'src/engine/integrations/environment/decorators/cast-to-log-level-array.decorator'; class TestClass { @CastToLogLevelArray() diff --git a/packages/twenty-server/src/integrations/environment/decorators/__tests__/cast-to-positive-number.decorator.spec.ts b/packages/twenty-server/src/engine/integrations/environment/decorators/__tests__/cast-to-positive-number.decorator.spec.ts similarity index 92% rename from packages/twenty-server/src/integrations/environment/decorators/__tests__/cast-to-positive-number.decorator.spec.ts rename to packages/twenty-server/src/engine/integrations/environment/decorators/__tests__/cast-to-positive-number.decorator.spec.ts index b829404936e..f3f77fb4c33 100644 --- a/packages/twenty-server/src/integrations/environment/decorators/__tests__/cast-to-positive-number.decorator.spec.ts +++ b/packages/twenty-server/src/engine/integrations/environment/decorators/__tests__/cast-to-positive-number.decorator.spec.ts @@ -1,6 +1,6 @@ import { plainToClass } from 'class-transformer'; -import { CastToPositiveNumber } from 'src/integrations/environment/decorators/cast-to-positive-number.decorator'; +import { CastToPositiveNumber } from 'src/engine/integrations/environment/decorators/cast-to-positive-number.decorator'; class TestClass { @CastToPositiveNumber() diff --git a/packages/twenty-server/src/integrations/environment/decorators/cast-to-boolean.decorator.ts b/packages/twenty-server/src/engine/integrations/environment/decorators/cast-to-boolean.decorator.ts similarity index 100% rename from packages/twenty-server/src/integrations/environment/decorators/cast-to-boolean.decorator.ts rename to packages/twenty-server/src/engine/integrations/environment/decorators/cast-to-boolean.decorator.ts diff --git a/packages/twenty-server/src/integrations/environment/decorators/cast-to-log-level-array.decorator.ts b/packages/twenty-server/src/engine/integrations/environment/decorators/cast-to-log-level-array.decorator.ts similarity index 100% rename from packages/twenty-server/src/integrations/environment/decorators/cast-to-log-level-array.decorator.ts rename to packages/twenty-server/src/engine/integrations/environment/decorators/cast-to-log-level-array.decorator.ts diff --git a/packages/twenty-server/src/integrations/environment/decorators/cast-to-positive-number.decorator.ts b/packages/twenty-server/src/engine/integrations/environment/decorators/cast-to-positive-number.decorator.ts similarity index 100% rename from packages/twenty-server/src/integrations/environment/decorators/cast-to-positive-number.decorator.ts rename to packages/twenty-server/src/engine/integrations/environment/decorators/cast-to-positive-number.decorator.ts diff --git a/packages/twenty-server/src/integrations/environment/decorators/cast-to-string-array.decorator.ts b/packages/twenty-server/src/engine/integrations/environment/decorators/cast-to-string-array.decorator.ts similarity index 100% rename from packages/twenty-server/src/integrations/environment/decorators/cast-to-string-array.decorator.ts rename to packages/twenty-server/src/engine/integrations/environment/decorators/cast-to-string-array.decorator.ts diff --git a/packages/twenty-server/src/integrations/environment/decorators/is-aws-region.decorator.ts b/packages/twenty-server/src/engine/integrations/environment/decorators/is-aws-region.decorator.ts similarity index 100% rename from packages/twenty-server/src/integrations/environment/decorators/is-aws-region.decorator.ts rename to packages/twenty-server/src/engine/integrations/environment/decorators/is-aws-region.decorator.ts diff --git a/packages/twenty-server/src/integrations/environment/decorators/is-duration.decorator.ts b/packages/twenty-server/src/engine/integrations/environment/decorators/is-duration.decorator.ts similarity index 100% rename from packages/twenty-server/src/integrations/environment/decorators/is-duration.decorator.ts rename to packages/twenty-server/src/engine/integrations/environment/decorators/is-duration.decorator.ts diff --git a/packages/twenty-server/src/integrations/environment/decorators/is-strictly-lower-than.decorator.ts b/packages/twenty-server/src/engine/integrations/environment/decorators/is-strictly-lower-than.decorator.ts similarity index 100% rename from packages/twenty-server/src/integrations/environment/decorators/is-strictly-lower-than.decorator.ts rename to packages/twenty-server/src/engine/integrations/environment/decorators/is-strictly-lower-than.decorator.ts diff --git a/packages/twenty-server/src/integrations/environment/environment-variables.ts b/packages/twenty-server/src/engine/integrations/environment/environment-variables.ts similarity index 91% rename from packages/twenty-server/src/integrations/environment/environment-variables.ts rename to packages/twenty-server/src/engine/integrations/environment/environment-variables.ts index 7aad5e72210..62cc97c896a 100644 --- a/packages/twenty-server/src/integrations/environment/environment-variables.ts +++ b/packages/twenty-server/src/engine/integrations/environment/environment-variables.ts @@ -13,14 +13,14 @@ import { IsDefined, } from 'class-validator'; -import { EmailDriver } from 'src/integrations/email/interfaces/email.interface'; +import { EmailDriver } from 'src/engine/integrations/email/interfaces/email.interface'; import { assert } from 'src/utils/assert'; -import { CastToStringArray } from 'src/integrations/environment/decorators/cast-to-string-array.decorator'; -import { ExceptionHandlerDriver } from 'src/integrations/exception-handler/interfaces'; -import { StorageDriverType } from 'src/integrations/file-storage/interfaces'; -import { LoggerDriverType } from 'src/integrations/logger/interfaces'; -import { IsStrictlyLowerThan } from 'src/integrations/environment/decorators/is-strictly-lower-than.decorator'; +import { CastToStringArray } from 'src/engine/integrations/environment/decorators/cast-to-string-array.decorator'; +import { ExceptionHandlerDriver } from 'src/engine/integrations/exception-handler/interfaces'; +import { StorageDriverType } from 'src/engine/integrations/file-storage/interfaces'; +import { LoggerDriverType } from 'src/engine/integrations/logger/interfaces'; +import { IsStrictlyLowerThan } from 'src/engine/integrations/environment/decorators/is-strictly-lower-than.decorator'; import { IsDuration } from './decorators/is-duration.decorator'; import { AwsRegion } from './interfaces/aws-region.interface'; diff --git a/packages/twenty-server/src/integrations/environment/environment.default.ts b/packages/twenty-server/src/engine/integrations/environment/environment.default.ts similarity index 84% rename from packages/twenty-server/src/integrations/environment/environment.default.ts rename to packages/twenty-server/src/engine/integrations/environment/environment.default.ts index 18dea008420..9c724584d2b 100644 --- a/packages/twenty-server/src/integrations/environment/environment.default.ts +++ b/packages/twenty-server/src/engine/integrations/environment/environment.default.ts @@ -1,11 +1,11 @@ -import { EmailDriver } from 'src/integrations/email/interfaces/email.interface'; -import { SupportDriver } from 'src/integrations/environment/interfaces/support.interface'; +import { EmailDriver } from 'src/engine/integrations/email/interfaces/email.interface'; +import { SupportDriver } from 'src/engine/integrations/environment/interfaces/support.interface'; -import { ExceptionHandlerDriver } from 'src/integrations/exception-handler/interfaces'; -import { StorageDriverType } from 'src/integrations/file-storage/interfaces'; -import { LoggerDriverType } from 'src/integrations/logger/interfaces'; -import { MessageQueueDriverType } from 'src/integrations/message-queue/interfaces'; -import { EnvironmentVariables } from 'src/integrations/environment/environment-variables'; +import { ExceptionHandlerDriver } from 'src/engine/integrations/exception-handler/interfaces'; +import { StorageDriverType } from 'src/engine/integrations/file-storage/interfaces'; +import { LoggerDriverType } from 'src/engine/integrations/logger/interfaces'; +import { MessageQueueDriverType } from 'src/engine/integrations/message-queue/interfaces'; +import { EnvironmentVariables } from 'src/engine/integrations/environment/environment-variables'; const EnvironmentDefault = new EnvironmentVariables(); diff --git a/packages/twenty-server/src/integrations/environment/environment.module-definition.ts b/packages/twenty-server/src/engine/integrations/environment/environment.module-definition.ts similarity index 100% rename from packages/twenty-server/src/integrations/environment/environment.module-definition.ts rename to packages/twenty-server/src/engine/integrations/environment/environment.module-definition.ts diff --git a/packages/twenty-server/src/integrations/environment/environment.module.ts b/packages/twenty-server/src/engine/integrations/environment/environment.module.ts similarity index 100% rename from packages/twenty-server/src/integrations/environment/environment.module.ts rename to packages/twenty-server/src/engine/integrations/environment/environment.module.ts diff --git a/packages/twenty-server/src/integrations/environment/environment.service.spec.ts b/packages/twenty-server/src/engine/integrations/environment/environment.service.spec.ts similarity index 100% rename from packages/twenty-server/src/integrations/environment/environment.service.spec.ts rename to packages/twenty-server/src/engine/integrations/environment/environment.service.spec.ts diff --git a/packages/twenty-server/src/integrations/environment/environment.service.ts b/packages/twenty-server/src/engine/integrations/environment/environment.service.ts similarity index 86% rename from packages/twenty-server/src/integrations/environment/environment.service.ts rename to packages/twenty-server/src/engine/integrations/environment/environment.service.ts index 2dc8d48c768..275671a054a 100644 --- a/packages/twenty-server/src/integrations/environment/environment.service.ts +++ b/packages/twenty-server/src/engine/integrations/environment/environment.service.ts @@ -4,8 +4,8 @@ import { ConfigService } from '@nestjs/config'; import { Request } from 'express'; -import { EnvironmentVariables } from 'src/integrations/environment/environment-variables'; -import { EnvironmentDefault } from 'src/integrations/environment/environment.default'; +import { EnvironmentVariables } from 'src/engine/integrations/environment/environment-variables'; +import { EnvironmentDefault } from 'src/engine/integrations/environment/environment.default'; @Injectable() export class EnvironmentService { diff --git a/packages/twenty-server/src/integrations/environment/interfaces/aws-region.interface.ts b/packages/twenty-server/src/engine/integrations/environment/interfaces/aws-region.interface.ts similarity index 100% rename from packages/twenty-server/src/integrations/environment/interfaces/aws-region.interface.ts rename to packages/twenty-server/src/engine/integrations/environment/interfaces/aws-region.interface.ts diff --git a/packages/twenty-server/src/integrations/environment/interfaces/support.interface.ts b/packages/twenty-server/src/engine/integrations/environment/interfaces/support.interface.ts similarity index 100% rename from packages/twenty-server/src/integrations/environment/interfaces/support.interface.ts rename to packages/twenty-server/src/engine/integrations/environment/interfaces/support.interface.ts diff --git a/packages/twenty-server/src/integrations/event-emitter/types/object-record-create.event.ts b/packages/twenty-server/src/engine/integrations/event-emitter/types/object-record-create.event.ts similarity index 100% rename from packages/twenty-server/src/integrations/event-emitter/types/object-record-create.event.ts rename to packages/twenty-server/src/engine/integrations/event-emitter/types/object-record-create.event.ts diff --git a/packages/twenty-server/src/integrations/event-emitter/types/object-record-delete.event.ts b/packages/twenty-server/src/engine/integrations/event-emitter/types/object-record-delete.event.ts similarity index 100% rename from packages/twenty-server/src/integrations/event-emitter/types/object-record-delete.event.ts rename to packages/twenty-server/src/engine/integrations/event-emitter/types/object-record-delete.event.ts diff --git a/packages/twenty-server/src/integrations/event-emitter/types/object-record-update.event.ts b/packages/twenty-server/src/engine/integrations/event-emitter/types/object-record-update.event.ts similarity index 100% rename from packages/twenty-server/src/integrations/event-emitter/types/object-record-update.event.ts rename to packages/twenty-server/src/engine/integrations/event-emitter/types/object-record-update.event.ts diff --git a/packages/twenty-server/src/integrations/event-emitter/utils/object-record-changed-properties.util.ts b/packages/twenty-server/src/engine/integrations/event-emitter/utils/object-record-changed-properties.util.ts similarity index 100% rename from packages/twenty-server/src/integrations/event-emitter/utils/object-record-changed-properties.util.ts rename to packages/twenty-server/src/engine/integrations/event-emitter/utils/object-record-changed-properties.util.ts diff --git a/packages/twenty-server/src/integrations/exception-handler/exception-handler.service.spec.ts b/packages/twenty-server/src/engine/integrations/exception-handler/__tests__/exception-handler.service.spec.ts similarity index 71% rename from packages/twenty-server/src/integrations/exception-handler/exception-handler.service.spec.ts rename to packages/twenty-server/src/engine/integrations/exception-handler/__tests__/exception-handler.service.spec.ts index f9d1e19b969..bae07ba6487 100644 --- a/packages/twenty-server/src/integrations/exception-handler/exception-handler.service.spec.ts +++ b/packages/twenty-server/src/engine/integrations/exception-handler/__tests__/exception-handler.service.spec.ts @@ -1,8 +1,7 @@ import { Test, TestingModule } from '@nestjs/testing'; -import { ExceptionHandlerService } from 'src/integrations/exception-handler/exception-handler.service'; - -import { EXCEPTION_HANDLER_DRIVER } from './exception-handler.constants'; +import { EXCEPTION_HANDLER_DRIVER } from 'src/engine/integrations/exception-handler/exception-handler.constants'; +import { ExceptionHandlerService } from 'src/engine/integrations/exception-handler/exception-handler.service'; describe('ExceptionHandlerService', () => { let service: ExceptionHandlerService; diff --git a/packages/twenty-server/src/integrations/exception-handler/drivers/console.driver.ts b/packages/twenty-server/src/engine/integrations/exception-handler/drivers/console.driver.ts similarity index 59% rename from packages/twenty-server/src/integrations/exception-handler/drivers/console.driver.ts rename to packages/twenty-server/src/engine/integrations/exception-handler/drivers/console.driver.ts index cd38ef827a0..9f60db644eb 100644 --- a/packages/twenty-server/src/integrations/exception-handler/drivers/console.driver.ts +++ b/packages/twenty-server/src/engine/integrations/exception-handler/drivers/console.driver.ts @@ -1,7 +1,7 @@ -import { ExceptionHandlerUser } from 'src/integrations/exception-handler/interfaces/exception-handler-user.interface'; -import { ExceptionHandlerOptions } from 'src/integrations/exception-handler/interfaces/exception-handler-options.interface'; +import { ExceptionHandlerUser } from 'src/engine/integrations/exception-handler/interfaces/exception-handler-user.interface'; +import { ExceptionHandlerOptions } from 'src/engine/integrations/exception-handler/interfaces/exception-handler-options.interface'; -import { ExceptionHandlerDriverInterface } from 'src/integrations/exception-handler/interfaces'; +import { ExceptionHandlerDriverInterface } from 'src/engine/integrations/exception-handler/interfaces'; export class ExceptionHandlerConsoleDriver implements ExceptionHandlerDriverInterface diff --git a/packages/twenty-server/src/integrations/exception-handler/drivers/sentry.driver.ts b/packages/twenty-server/src/engine/integrations/exception-handler/drivers/sentry.driver.ts similarity index 90% rename from packages/twenty-server/src/integrations/exception-handler/drivers/sentry.driver.ts rename to packages/twenty-server/src/engine/integrations/exception-handler/drivers/sentry.driver.ts index 81a5fb43487..fb8e1e2d6cf 100644 --- a/packages/twenty-server/src/integrations/exception-handler/drivers/sentry.driver.ts +++ b/packages/twenty-server/src/engine/integrations/exception-handler/drivers/sentry.driver.ts @@ -1,13 +1,13 @@ import * as Sentry from '@sentry/node'; import { ProfilingIntegration } from '@sentry/profiling-node'; -import { ExceptionHandlerUser } from 'src/integrations/exception-handler/interfaces/exception-handler-user.interface'; -import { ExceptionHandlerOptions } from 'src/integrations/exception-handler/interfaces/exception-handler-options.interface'; +import { ExceptionHandlerUser } from 'src/engine/integrations/exception-handler/interfaces/exception-handler-user.interface'; +import { ExceptionHandlerOptions } from 'src/engine/integrations/exception-handler/interfaces/exception-handler-options.interface'; import { ExceptionHandlerDriverInterface, ExceptionHandlerSentryDriverFactoryOptions, -} from 'src/integrations/exception-handler/interfaces'; +} from 'src/engine/integrations/exception-handler/interfaces'; export class ExceptionHandlerSentryDriver implements ExceptionHandlerDriverInterface diff --git a/packages/twenty-server/src/integrations/exception-handler/exception-handler.constants.ts b/packages/twenty-server/src/engine/integrations/exception-handler/exception-handler.constants.ts similarity index 100% rename from packages/twenty-server/src/integrations/exception-handler/exception-handler.constants.ts rename to packages/twenty-server/src/engine/integrations/exception-handler/exception-handler.constants.ts diff --git a/packages/twenty-server/src/integrations/exception-handler/exception-handler.module-definition.ts b/packages/twenty-server/src/engine/integrations/exception-handler/exception-handler.module-definition.ts similarity index 100% rename from packages/twenty-server/src/integrations/exception-handler/exception-handler.module-definition.ts rename to packages/twenty-server/src/engine/integrations/exception-handler/exception-handler.module-definition.ts diff --git a/packages/twenty-server/src/integrations/exception-handler/exception-handler.module-factory.ts b/packages/twenty-server/src/engine/integrations/exception-handler/exception-handler.module-factory.ts similarity index 77% rename from packages/twenty-server/src/integrations/exception-handler/exception-handler.module-factory.ts rename to packages/twenty-server/src/engine/integrations/exception-handler/exception-handler.module-factory.ts index 0b08aebd303..70a4f4546dc 100644 --- a/packages/twenty-server/src/integrations/exception-handler/exception-handler.module-factory.ts +++ b/packages/twenty-server/src/engine/integrations/exception-handler/exception-handler.module-factory.ts @@ -1,8 +1,8 @@ import { HttpAdapterHost } from '@nestjs/core'; -import { EnvironmentService } from 'src/integrations/environment/environment.service'; -import { OPTIONS_TYPE } from 'src/integrations/exception-handler/exception-handler.module-definition'; -import { ExceptionHandlerDriver } from 'src/integrations/exception-handler/interfaces'; +import { EnvironmentService } from 'src/engine/integrations/environment/environment.service'; +import { OPTIONS_TYPE } from 'src/engine/integrations/exception-handler/exception-handler.module-definition'; +import { ExceptionHandlerDriver } from 'src/engine/integrations/exception-handler/interfaces'; /** * ExceptionHandler Module factory diff --git a/packages/twenty-server/src/integrations/exception-handler/exception-handler.module.ts b/packages/twenty-server/src/engine/integrations/exception-handler/exception-handler.module.ts similarity index 88% rename from packages/twenty-server/src/integrations/exception-handler/exception-handler.module.ts rename to packages/twenty-server/src/engine/integrations/exception-handler/exception-handler.module.ts index e1221bcd2cb..8c4ae87a831 100644 --- a/packages/twenty-server/src/integrations/exception-handler/exception-handler.module.ts +++ b/packages/twenty-server/src/engine/integrations/exception-handler/exception-handler.module.ts @@ -1,7 +1,7 @@ import { DynamicModule, Global, Module } from '@nestjs/common'; -import { ExceptionHandlerSentryDriver } from 'src/integrations/exception-handler/drivers/sentry.driver'; -import { ExceptionHandlerConsoleDriver } from 'src/integrations/exception-handler/drivers/console.driver'; +import { ExceptionHandlerSentryDriver } from 'src/engine/integrations/exception-handler/drivers/sentry.driver'; +import { ExceptionHandlerConsoleDriver } from 'src/engine/integrations/exception-handler/drivers/console.driver'; import { ExceptionHandlerService } from './exception-handler.service'; import { ExceptionHandlerDriver } from './interfaces'; diff --git a/packages/twenty-server/src/integrations/exception-handler/exception-handler.service.ts b/packages/twenty-server/src/engine/integrations/exception-handler/exception-handler.service.ts similarity index 53% rename from packages/twenty-server/src/integrations/exception-handler/exception-handler.service.ts rename to packages/twenty-server/src/engine/integrations/exception-handler/exception-handler.service.ts index 3dc02cad828..ac46ae3465d 100644 --- a/packages/twenty-server/src/integrations/exception-handler/exception-handler.service.ts +++ b/packages/twenty-server/src/engine/integrations/exception-handler/exception-handler.service.ts @@ -1,9 +1,9 @@ import { Inject, Injectable } from '@nestjs/common'; -import { ExceptionHandlerOptions } from 'src/integrations/exception-handler/interfaces/exception-handler-options.interface'; +import { ExceptionHandlerOptions } from 'src/engine/integrations/exception-handler/interfaces/exception-handler-options.interface'; -import { ExceptionHandlerDriverInterface } from 'src/integrations/exception-handler/interfaces'; -import { EXCEPTION_HANDLER_DRIVER } from 'src/integrations/exception-handler/exception-handler.constants'; +import { ExceptionHandlerDriverInterface } from 'src/engine/integrations/exception-handler/interfaces'; +import { EXCEPTION_HANDLER_DRIVER } from 'src/engine/integrations/exception-handler/exception-handler.constants'; @Injectable() export class ExceptionHandlerService { diff --git a/packages/twenty-server/src/integrations/exception-handler/hooks/use-exception-handler.hook.ts b/packages/twenty-server/src/engine/integrations/exception-handler/hooks/use-exception-handler.hook.ts similarity index 97% rename from packages/twenty-server/src/integrations/exception-handler/hooks/use-exception-handler.hook.ts rename to packages/twenty-server/src/engine/integrations/exception-handler/hooks/use-exception-handler.hook.ts index 0ab641fec56..76212bacacd 100644 --- a/packages/twenty-server/src/integrations/exception-handler/hooks/use-exception-handler.hook.ts +++ b/packages/twenty-server/src/engine/integrations/exception-handler/hooks/use-exception-handler.hook.ts @@ -8,7 +8,7 @@ import { import { GraphQLContext } from 'src/engine-graphql-config/interfaces/graphql-context.interface'; -import { ExceptionHandlerService } from 'src/integrations/exception-handler/exception-handler.service'; +import { ExceptionHandlerService } from 'src/engine/integrations/exception-handler/exception-handler.service'; import { convertExceptionToGraphQLError, filterException, diff --git a/packages/twenty-server/src/integrations/tracing/useSentryTracing.ts b/packages/twenty-server/src/engine/integrations/exception-handler/hooks/use-sentry-tracing.ts similarity index 100% rename from packages/twenty-server/src/integrations/tracing/useSentryTracing.ts rename to packages/twenty-server/src/engine/integrations/exception-handler/hooks/use-sentry-tracing.ts diff --git a/packages/twenty-server/src/integrations/exception-handler/interfaces/exception-handler-driver.interface.ts b/packages/twenty-server/src/engine/integrations/exception-handler/interfaces/exception-handler-driver.interface.ts similarity index 100% rename from packages/twenty-server/src/integrations/exception-handler/interfaces/exception-handler-driver.interface.ts rename to packages/twenty-server/src/engine/integrations/exception-handler/interfaces/exception-handler-driver.interface.ts diff --git a/packages/twenty-server/src/integrations/exception-handler/interfaces/exception-handler-options.interface.ts b/packages/twenty-server/src/engine/integrations/exception-handler/interfaces/exception-handler-options.interface.ts similarity index 100% rename from packages/twenty-server/src/integrations/exception-handler/interfaces/exception-handler-options.interface.ts rename to packages/twenty-server/src/engine/integrations/exception-handler/interfaces/exception-handler-options.interface.ts diff --git a/packages/twenty-server/src/integrations/exception-handler/interfaces/exception-handler-user.interface.ts b/packages/twenty-server/src/engine/integrations/exception-handler/interfaces/exception-handler-user.interface.ts similarity index 100% rename from packages/twenty-server/src/integrations/exception-handler/interfaces/exception-handler-user.interface.ts rename to packages/twenty-server/src/engine/integrations/exception-handler/interfaces/exception-handler-user.interface.ts diff --git a/packages/twenty-server/src/integrations/exception-handler/interfaces/exception-handler.interface.ts b/packages/twenty-server/src/engine/integrations/exception-handler/interfaces/exception-handler.interface.ts similarity index 100% rename from packages/twenty-server/src/integrations/exception-handler/interfaces/exception-handler.interface.ts rename to packages/twenty-server/src/engine/integrations/exception-handler/interfaces/exception-handler.interface.ts diff --git a/packages/twenty-server/src/integrations/exception-handler/interfaces/index.ts b/packages/twenty-server/src/engine/integrations/exception-handler/interfaces/index.ts similarity index 100% rename from packages/twenty-server/src/integrations/exception-handler/interfaces/index.ts rename to packages/twenty-server/src/engine/integrations/exception-handler/interfaces/index.ts diff --git a/packages/twenty-server/src/integrations/file-storage/file-storage.service.spec.ts b/packages/twenty-server/src/engine/integrations/file-storage/__tests__/file-storage.service.spec.ts similarity index 73% rename from packages/twenty-server/src/integrations/file-storage/file-storage.service.spec.ts rename to packages/twenty-server/src/engine/integrations/file-storage/__tests__/file-storage.service.spec.ts index cc30e564b2f..4ef268cf6ca 100644 --- a/packages/twenty-server/src/integrations/file-storage/file-storage.service.spec.ts +++ b/packages/twenty-server/src/engine/integrations/file-storage/__tests__/file-storage.service.spec.ts @@ -1,7 +1,7 @@ import { Test, TestingModule } from '@nestjs/testing'; -import { FileStorageService } from './file-storage.service'; -import { STORAGE_DRIVER } from './file-storage.constants'; +import { STORAGE_DRIVER } from 'src/engine/integrations/file-storage/file-storage.constants'; +import { FileStorageService } from 'src/engine/integrations/file-storage/file-storage.service'; describe('FileStorageService', () => { let service: FileStorageService; diff --git a/packages/twenty-server/src/integrations/file-storage/drivers/interfaces/storage-driver.interface.ts b/packages/twenty-server/src/engine/integrations/file-storage/drivers/interfaces/storage-driver.interface.ts similarity index 100% rename from packages/twenty-server/src/integrations/file-storage/drivers/interfaces/storage-driver.interface.ts rename to packages/twenty-server/src/engine/integrations/file-storage/drivers/interfaces/storage-driver.interface.ts diff --git a/packages/twenty-server/src/integrations/file-storage/drivers/local.driver.ts b/packages/twenty-server/src/engine/integrations/file-storage/drivers/local.driver.ts similarity index 100% rename from packages/twenty-server/src/integrations/file-storage/drivers/local.driver.ts rename to packages/twenty-server/src/engine/integrations/file-storage/drivers/local.driver.ts diff --git a/packages/twenty-server/src/integrations/file-storage/drivers/s3.driver.ts b/packages/twenty-server/src/engine/integrations/file-storage/drivers/s3.driver.ts similarity index 100% rename from packages/twenty-server/src/integrations/file-storage/drivers/s3.driver.ts rename to packages/twenty-server/src/engine/integrations/file-storage/drivers/s3.driver.ts diff --git a/packages/twenty-server/src/integrations/file-storage/file-storage.constants.ts b/packages/twenty-server/src/engine/integrations/file-storage/file-storage.constants.ts similarity index 100% rename from packages/twenty-server/src/integrations/file-storage/file-storage.constants.ts rename to packages/twenty-server/src/engine/integrations/file-storage/file-storage.constants.ts diff --git a/packages/twenty-server/src/integrations/file-storage/file-storage.module-definition.ts b/packages/twenty-server/src/engine/integrations/file-storage/file-storage.module-definition.ts similarity index 100% rename from packages/twenty-server/src/integrations/file-storage/file-storage.module-definition.ts rename to packages/twenty-server/src/engine/integrations/file-storage/file-storage.module-definition.ts diff --git a/packages/twenty-server/src/integrations/file-storage/file-storage.module-factory.ts b/packages/twenty-server/src/engine/integrations/file-storage/file-storage.module-factory.ts similarity index 90% rename from packages/twenty-server/src/integrations/file-storage/file-storage.module-factory.ts rename to packages/twenty-server/src/engine/integrations/file-storage/file-storage.module-factory.ts index 22c1ee1af60..fc625ce89ee 100644 --- a/packages/twenty-server/src/integrations/file-storage/file-storage.module-factory.ts +++ b/packages/twenty-server/src/engine/integrations/file-storage/file-storage.module-factory.ts @@ -1,10 +1,10 @@ import { fromNodeProviderChain } from '@aws-sdk/credential-providers'; -import { EnvironmentService } from 'src/integrations/environment/environment.service'; +import { EnvironmentService } from 'src/engine/integrations/environment/environment.service'; import { FileStorageModuleOptions, StorageDriverType, -} from 'src/integrations/file-storage/interfaces'; +} from 'src/engine/integrations/file-storage/interfaces'; /** * FileStorage Module factory diff --git a/packages/twenty-server/src/integrations/file-storage/file-storage.module.ts b/packages/twenty-server/src/engine/integrations/file-storage/file-storage.module.ts similarity index 100% rename from packages/twenty-server/src/integrations/file-storage/file-storage.module.ts rename to packages/twenty-server/src/engine/integrations/file-storage/file-storage.module.ts diff --git a/packages/twenty-server/src/integrations/file-storage/file-storage.service.ts b/packages/twenty-server/src/engine/integrations/file-storage/file-storage.service.ts similarity index 100% rename from packages/twenty-server/src/integrations/file-storage/file-storage.service.ts rename to packages/twenty-server/src/engine/integrations/file-storage/file-storage.service.ts diff --git a/packages/twenty-server/src/integrations/file-storage/interfaces/file-storage.interface.ts b/packages/twenty-server/src/engine/integrations/file-storage/interfaces/file-storage.interface.ts similarity index 78% rename from packages/twenty-server/src/integrations/file-storage/interfaces/file-storage.interface.ts rename to packages/twenty-server/src/engine/integrations/file-storage/interfaces/file-storage.interface.ts index 81151323a7c..9d85a83ec55 100644 --- a/packages/twenty-server/src/integrations/file-storage/interfaces/file-storage.interface.ts +++ b/packages/twenty-server/src/engine/integrations/file-storage/interfaces/file-storage.interface.ts @@ -1,7 +1,7 @@ import { FactoryProvider, ModuleMetadata } from '@nestjs/common'; -import { S3DriverOptions } from 'src/integrations/file-storage/drivers/s3.driver'; -import { LocalDriverOptions } from 'src/integrations/file-storage/drivers/local.driver'; +import { S3DriverOptions } from 'src/engine/integrations/file-storage/drivers/s3.driver'; +import { LocalDriverOptions } from 'src/engine/integrations/file-storage/drivers/local.driver'; export enum StorageDriverType { S3 = 's3', diff --git a/packages/twenty-server/src/integrations/file-storage/interfaces/index.ts b/packages/twenty-server/src/engine/integrations/file-storage/interfaces/index.ts similarity index 100% rename from packages/twenty-server/src/integrations/file-storage/interfaces/index.ts rename to packages/twenty-server/src/engine/integrations/file-storage/interfaces/index.ts diff --git a/packages/twenty-server/src/integrations/integrations.module.ts b/packages/twenty-server/src/engine/integrations/integrations.module.ts similarity index 62% rename from packages/twenty-server/src/integrations/integrations.module.ts rename to packages/twenty-server/src/engine/integrations/integrations.module.ts index 04f23918e6c..0f056fdf9e2 100644 --- a/packages/twenty-server/src/integrations/integrations.module.ts +++ b/packages/twenty-server/src/engine/integrations/integrations.module.ts @@ -2,14 +2,14 @@ import { Module } from '@nestjs/common'; import { HttpAdapterHost } from '@nestjs/core'; import { EventEmitterModule } from '@nestjs/event-emitter'; -import { ExceptionHandlerModule } from 'src/integrations/exception-handler/exception-handler.module'; -import { exceptionHandlerModuleFactory } from 'src/integrations/exception-handler/exception-handler.module-factory'; -import { fileStorageModuleFactory } from 'src/integrations/file-storage/file-storage.module-factory'; -import { loggerModuleFactory } from 'src/integrations/logger/logger.module-factory'; -import { messageQueueModuleFactory } from 'src/integrations/message-queue/message-queue.module-factory'; -import { EmailModule } from 'src/integrations/email/email.module'; -import { emailModuleFactory } from 'src/integrations/email/email.module-factory'; -import { CacheStorageModule } from 'src/integrations/cache-storage/cache-storage.module'; +import { ExceptionHandlerModule } from 'src/engine/integrations/exception-handler/exception-handler.module'; +import { exceptionHandlerModuleFactory } from 'src/engine/integrations/exception-handler/exception-handler.module-factory'; +import { fileStorageModuleFactory } from 'src/engine/integrations/file-storage/file-storage.module-factory'; +import { loggerModuleFactory } from 'src/engine/integrations/logger/logger.module-factory'; +import { messageQueueModuleFactory } from 'src/engine/integrations/message-queue/message-queue.module-factory'; +import { EmailModule } from 'src/engine/integrations/email/email.module'; +import { emailModuleFactory } from 'src/engine/integrations/email/email.module-factory'; +import { CacheStorageModule } from 'src/engine/integrations/cache-storage/cache-storage.module'; import { EnvironmentModule } from './environment/environment.module'; import { EnvironmentService } from './environment/environment.service'; diff --git a/packages/twenty-server/src/integrations/logger/logger.service.spec.ts b/packages/twenty-server/src/engine/integrations/logger/__tests__/logger.service.spec.ts similarity index 76% rename from packages/twenty-server/src/integrations/logger/logger.service.spec.ts rename to packages/twenty-server/src/engine/integrations/logger/__tests__/logger.service.spec.ts index 319e2a46d8b..b5d6f94c897 100644 --- a/packages/twenty-server/src/integrations/logger/logger.service.spec.ts +++ b/packages/twenty-server/src/engine/integrations/logger/__tests__/logger.service.spec.ts @@ -1,7 +1,7 @@ import { Test, TestingModule } from '@nestjs/testing'; -import { LoggerService } from './logger.service'; -import { LOGGER_DRIVER } from './logger.constants'; +import { LOGGER_DRIVER } from 'src/engine/integrations/logger/logger.constants'; +import { LoggerService } from 'src/engine/integrations/logger/logger.service'; describe('LoggerService', () => { let service: LoggerService; diff --git a/packages/twenty-server/src/integrations/logger/interfaces/index.ts b/packages/twenty-server/src/engine/integrations/logger/interfaces/index.ts similarity index 100% rename from packages/twenty-server/src/integrations/logger/interfaces/index.ts rename to packages/twenty-server/src/engine/integrations/logger/interfaces/index.ts diff --git a/packages/twenty-server/src/integrations/logger/interfaces/logger.interface.ts b/packages/twenty-server/src/engine/integrations/logger/interfaces/logger.interface.ts similarity index 100% rename from packages/twenty-server/src/integrations/logger/interfaces/logger.interface.ts rename to packages/twenty-server/src/engine/integrations/logger/interfaces/logger.interface.ts diff --git a/packages/twenty-server/src/integrations/logger/logger.constants.ts b/packages/twenty-server/src/engine/integrations/logger/logger.constants.ts similarity index 100% rename from packages/twenty-server/src/integrations/logger/logger.constants.ts rename to packages/twenty-server/src/engine/integrations/logger/logger.constants.ts diff --git a/packages/twenty-server/src/integrations/logger/logger.module-definition.ts b/packages/twenty-server/src/engine/integrations/logger/logger.module-definition.ts similarity index 100% rename from packages/twenty-server/src/integrations/logger/logger.module-definition.ts rename to packages/twenty-server/src/engine/integrations/logger/logger.module-definition.ts diff --git a/packages/twenty-server/src/integrations/logger/logger.module-factory.ts b/packages/twenty-server/src/engine/integrations/logger/logger.module-factory.ts similarity index 82% rename from packages/twenty-server/src/integrations/logger/logger.module-factory.ts rename to packages/twenty-server/src/engine/integrations/logger/logger.module-factory.ts index bed4bdc3b85..93701802a68 100644 --- a/packages/twenty-server/src/integrations/logger/logger.module-factory.ts +++ b/packages/twenty-server/src/engine/integrations/logger/logger.module-factory.ts @@ -1,8 +1,8 @@ -import { EnvironmentService } from 'src/integrations/environment/environment.service'; +import { EnvironmentService } from 'src/engine/integrations/environment/environment.service'; import { LoggerModuleOptions, LoggerDriverType, -} from 'src/integrations/logger/interfaces'; +} from 'src/engine/integrations/logger/interfaces'; /** * Logger Module factory diff --git a/packages/twenty-server/src/integrations/logger/logger.module.ts b/packages/twenty-server/src/engine/integrations/logger/logger.module.ts similarity index 95% rename from packages/twenty-server/src/integrations/logger/logger.module.ts rename to packages/twenty-server/src/engine/integrations/logger/logger.module.ts index 1cd4a4ed8b6..778dbbf54d1 100644 --- a/packages/twenty-server/src/integrations/logger/logger.module.ts +++ b/packages/twenty-server/src/engine/integrations/logger/logger.module.ts @@ -1,6 +1,6 @@ import { DynamicModule, Global, ConsoleLogger, Module } from '@nestjs/common'; -import { LoggerDriverType } from 'src/integrations/logger/interfaces'; +import { LoggerDriverType } from 'src/engine/integrations/logger/interfaces'; import { LoggerService } from './logger.service'; import { LOGGER_DRIVER } from './logger.constants'; diff --git a/packages/twenty-server/src/integrations/logger/logger.service.ts b/packages/twenty-server/src/engine/integrations/logger/logger.service.ts similarity index 100% rename from packages/twenty-server/src/integrations/logger/logger.service.ts rename to packages/twenty-server/src/engine/integrations/logger/logger.service.ts diff --git a/packages/twenty-server/src/integrations/message-queue/drivers/bullmq.driver.ts b/packages/twenty-server/src/engine/integrations/message-queue/drivers/bullmq.driver.ts similarity index 92% rename from packages/twenty-server/src/integrations/message-queue/drivers/bullmq.driver.ts rename to packages/twenty-server/src/engine/integrations/message-queue/drivers/bullmq.driver.ts index 0ea7857de2e..988f8716ddc 100644 --- a/packages/twenty-server/src/integrations/message-queue/drivers/bullmq.driver.ts +++ b/packages/twenty-server/src/engine/integrations/message-queue/drivers/bullmq.driver.ts @@ -1,8 +1,8 @@ import { Queue, QueueOptions, Worker } from 'bullmq'; -import { QueueJobOptions } from 'src/integrations/message-queue/drivers/interfaces/job-options.interface'; +import { QueueJobOptions } from 'src/engine/integrations/message-queue/drivers/interfaces/job-options.interface'; -import { MessageQueue } from 'src/integrations/message-queue/message-queue.constants'; +import { MessageQueue } from 'src/engine/integrations/message-queue/message-queue.constants'; import { MessageQueueDriver } from './interfaces/message-queue-driver.interface'; diff --git a/packages/twenty-server/src/integrations/message-queue/drivers/interfaces/job-options.interface.ts b/packages/twenty-server/src/engine/integrations/message-queue/drivers/interfaces/job-options.interface.ts similarity index 100% rename from packages/twenty-server/src/integrations/message-queue/drivers/interfaces/job-options.interface.ts rename to packages/twenty-server/src/engine/integrations/message-queue/drivers/interfaces/job-options.interface.ts diff --git a/packages/twenty-server/src/integrations/message-queue/drivers/interfaces/message-queue-driver.interface.ts b/packages/twenty-server/src/engine/integrations/message-queue/drivers/interfaces/message-queue-driver.interface.ts similarity index 67% rename from packages/twenty-server/src/integrations/message-queue/drivers/interfaces/message-queue-driver.interface.ts rename to packages/twenty-server/src/engine/integrations/message-queue/drivers/interfaces/message-queue-driver.interface.ts index a0136672ac9..517125503ee 100644 --- a/packages/twenty-server/src/integrations/message-queue/drivers/interfaces/message-queue-driver.interface.ts +++ b/packages/twenty-server/src/engine/integrations/message-queue/drivers/interfaces/message-queue-driver.interface.ts @@ -1,7 +1,7 @@ -import { QueueJobOptions } from 'src/integrations/message-queue/drivers/interfaces/job-options.interface'; -import { MessageQueueJobData } from 'src/integrations/message-queue/interfaces/message-queue-job.interface'; +import { QueueJobOptions } from 'src/engine/integrations/message-queue/drivers/interfaces/job-options.interface'; +import { MessageQueueJobData } from 'src/engine/integrations/message-queue/interfaces/message-queue-job.interface'; -import { MessageQueue } from 'src/integrations/message-queue/message-queue.constants'; +import { MessageQueue } from 'src/engine/integrations/message-queue/message-queue.constants'; export interface MessageQueueDriver { add( diff --git a/packages/twenty-server/src/integrations/message-queue/drivers/pg-boss.driver.ts b/packages/twenty-server/src/engine/integrations/message-queue/drivers/pg-boss.driver.ts similarity index 87% rename from packages/twenty-server/src/integrations/message-queue/drivers/pg-boss.driver.ts rename to packages/twenty-server/src/engine/integrations/message-queue/drivers/pg-boss.driver.ts index fc306b6f411..8911f2409ff 100644 --- a/packages/twenty-server/src/integrations/message-queue/drivers/pg-boss.driver.ts +++ b/packages/twenty-server/src/engine/integrations/message-queue/drivers/pg-boss.driver.ts @@ -1,8 +1,8 @@ import PgBoss from 'pg-boss'; -import { QueueJobOptions } from 'src/integrations/message-queue/drivers/interfaces/job-options.interface'; +import { QueueJobOptions } from 'src/engine/integrations/message-queue/drivers/interfaces/job-options.interface'; -import { MessageQueue } from 'src/integrations/message-queue/message-queue.constants'; +import { MessageQueue } from 'src/engine/integrations/message-queue/message-queue.constants'; import { MessageQueueDriver } from './interfaces/message-queue-driver.interface'; diff --git a/packages/twenty-server/src/integrations/message-queue/drivers/sync.driver.ts b/packages/twenty-server/src/engine/integrations/message-queue/drivers/sync.driver.ts similarity index 76% rename from packages/twenty-server/src/integrations/message-queue/drivers/sync.driver.ts rename to packages/twenty-server/src/engine/integrations/message-queue/drivers/sync.driver.ts index 03515a10347..ec6d070be0b 100644 --- a/packages/twenty-server/src/integrations/message-queue/drivers/sync.driver.ts +++ b/packages/twenty-server/src/engine/integrations/message-queue/drivers/sync.driver.ts @@ -1,15 +1,15 @@ import { ModuleRef } from '@nestjs/core'; import { Logger } from '@nestjs/common'; -import { MessageQueueDriver } from 'src/integrations/message-queue/drivers/interfaces/message-queue-driver.interface'; +import { MessageQueueDriver } from 'src/engine/integrations/message-queue/drivers/interfaces/message-queue-driver.interface'; import { MessageQueueCronJobData, MessageQueueJob, MessageQueueJobData, -} from 'src/integrations/message-queue/interfaces/message-queue-job.interface'; +} from 'src/engine/integrations/message-queue/interfaces/message-queue-job.interface'; -import { MessageQueue } from 'src/integrations/message-queue/message-queue.constants'; -import { getJobClassName } from 'src/integrations/message-queue/utils/get-job-class-name.util'; +import { MessageQueue } from 'src/engine/integrations/message-queue/message-queue.constants'; +import { getJobClassName } from 'src/engine/integrations/message-queue/utils/get-job-class-name.util'; export class SyncDriver implements MessageQueueDriver { private readonly logger = new Logger(SyncDriver.name); diff --git a/packages/twenty-server/src/integrations/message-queue/interfaces/index.ts b/packages/twenty-server/src/engine/integrations/message-queue/interfaces/index.ts similarity index 100% rename from packages/twenty-server/src/integrations/message-queue/interfaces/index.ts rename to packages/twenty-server/src/engine/integrations/message-queue/interfaces/index.ts diff --git a/packages/twenty-server/src/integrations/message-queue/interfaces/message-queue-job.interface.ts b/packages/twenty-server/src/engine/integrations/message-queue/interfaces/message-queue-job.interface.ts similarity index 100% rename from packages/twenty-server/src/integrations/message-queue/interfaces/message-queue-job.interface.ts rename to packages/twenty-server/src/engine/integrations/message-queue/interfaces/message-queue-job.interface.ts diff --git a/packages/twenty-server/src/integrations/message-queue/interfaces/message-queue.interface.ts b/packages/twenty-server/src/engine/integrations/message-queue/interfaces/message-queue.interface.ts similarity index 81% rename from packages/twenty-server/src/integrations/message-queue/interfaces/message-queue.interface.ts rename to packages/twenty-server/src/engine/integrations/message-queue/interfaces/message-queue.interface.ts index 91d910f6abb..568e0819fc8 100644 --- a/packages/twenty-server/src/integrations/message-queue/interfaces/message-queue.interface.ts +++ b/packages/twenty-server/src/engine/integrations/message-queue/interfaces/message-queue.interface.ts @@ -1,7 +1,7 @@ import { FactoryProvider, ModuleMetadata } from '@nestjs/common'; -import { BullMQDriverOptions } from 'src/integrations/message-queue/drivers/bullmq.driver'; -import { PgBossDriverOptions } from 'src/integrations/message-queue/drivers/pg-boss.driver'; +import { BullMQDriverOptions } from 'src/engine/integrations/message-queue/drivers/bullmq.driver'; +import { PgBossDriverOptions } from 'src/engine/integrations/message-queue/drivers/pg-boss.driver'; export enum MessageQueueDriverType { PgBoss = 'pg-boss', diff --git a/packages/twenty-server/src/integrations/message-queue/jobs.module.ts b/packages/twenty-server/src/engine/integrations/message-queue/jobs.module.ts similarity index 62% rename from packages/twenty-server/src/integrations/message-queue/jobs.module.ts rename to packages/twenty-server/src/engine/integrations/message-queue/jobs.module.ts index 800a389cd91..f0dfa9a1efa 100644 --- a/packages/twenty-server/src/integrations/message-queue/jobs.module.ts +++ b/packages/twenty-server/src/engine/integrations/message-queue/jobs.module.ts @@ -3,43 +3,43 @@ import { ModuleRef } from '@nestjs/core'; import { HttpModule } from '@nestjs/axios'; import { TypeOrmModule } from '@nestjs/typeorm'; -import { GmailFullSyncJob } from 'src/business/modules/message/jobs/gmail-full-sync.job'; -import { CallWebhookJobsJob } from 'src/engine/graphql/workspace-query-runner/jobs/call-webhook-jobs.job'; -import { CallWebhookJob } from 'src/engine/graphql/workspace-query-runner/jobs/call-webhook.job'; +import { GmailFullSyncJob } from 'src/modules/messaging/jobs/gmail-full-sync.job'; +import { CallWebhookJobsJob } from 'src/engine/api/graphql/workspace-query-runner/jobs/call-webhook-jobs.job'; +import { CallWebhookJob } from 'src/engine/api/graphql/workspace-query-runner/jobs/call-webhook.job'; import { WorkspaceDataSourceModule } from 'src/engine/workspace-datasource/workspace-datasource.module'; import { ObjectMetadataModule } from 'src/engine-metadata/object-metadata/object-metadata.module'; import { DataSourceModule } from 'src/engine-metadata/data-source/data-source.module'; import { CleanInactiveWorkspaceJob } from 'src/engine/workspace-manager/workspace-cleaner/crons/clean-inactive-workspace.job'; import { TypeORMModule } from 'src/database/typeorm/typeorm.module'; -import { MessagingModule } from 'src/business/modules/message/messaging.module'; -import { GmailPartialSyncJob } from 'src/business/modules/message/jobs/gmail-partial-sync.job'; -import { EmailSenderJob } from 'src/integrations/email/email-sender.job'; +import { MessagingModule } from 'src/modules/messaging/messaging.module'; +import { GmailPartialSyncJob } from 'src/modules/messaging/jobs/gmail-partial-sync.job'; +import { EmailSenderJob } from 'src/engine/integrations/email/email-sender.job'; import { UserModule } from 'src/engine/modules/user/user.module'; -import { EnvironmentModule } from 'src/integrations/environment/environment.module'; -import { FetchAllWorkspacesMessagesJob } from 'src/business/modules/message/commands/crons/fetch-all-workspaces-messages.job'; -import { ConnectedAccountModule } from 'src/business/modules/calendar-and-messaging/repositories/connected-account/connected-account.module'; -import { MatchMessageParticipantJob } from 'src/business/modules/message/jobs/match-message-participant.job'; -import { CreateCompaniesAndContactsAfterSyncJob } from 'src/business/modules/message/jobs/create-companies-and-contacts-after-sync.job'; -import { CreateCompaniesAndContactsModule } from 'src/engine-workspace/auto-companies-and-contacts-creation/create-company-and-contact/create-company-and-contact.module'; -import { MessageChannelModule } from 'src/business/modules/message/repositories/message-channel/message-channel.module'; -import { MessageParticipantModule } from 'src/business/modules/message/repositories/message-participant/message-participant.module'; +import { EnvironmentModule } from 'src/engine/integrations/environment/environment.module'; +import { FetchAllWorkspacesMessagesJob } from 'src/modules/messaging/commands/crons/fetch-all-workspaces-messages.job'; +import { ConnectedAccountModule } from 'src/modules/connected-account/repositories/connected-account/connected-account.module'; +import { MatchMessageParticipantJob } from 'src/modules/messaging/jobs/match-message-participant.job'; +import { CreateCompaniesAndContactsAfterSyncJob } from 'src/modules/messaging/jobs/create-companies-and-contacts-after-sync.job'; +import { CreateCompaniesAndContactsModule } from 'src/modules/connected-account/auto-companies-and-contacts-creation/create-company-and-contact/create-company-and-contact.module'; +import { MessageChannelModule } from 'src/modules/messaging/repositories/message-channel/message-channel.module'; +import { MessageParticipantModule } from 'src/modules/messaging/repositories/message-participant/message-participant.module'; import { DataSeedDemoWorkspaceModule } from 'src/database/commands/data-seed-demo-workspace/data-seed-demo-workspace.module'; import { DataSeedDemoWorkspaceJob } from 'src/database/commands/data-seed-demo-workspace/jobs/data-seed-demo-workspace.job'; -import { DeleteConnectedAccountAssociatedMessagingDataJob } from 'src/business/modules/message/jobs/delete-connected-account-associated-messaging-data.job'; -import { ThreadCleanerModule } from 'src/business/modules/message/services/thread-cleaner/thread-cleaner.module'; +import { DeleteConnectedAccountAssociatedMessagingDataJob } from 'src/modules/messaging/jobs/delete-connected-account-associated-messaging-data.job'; +import { ThreadCleanerModule } from 'src/modules/messaging/services/thread-cleaner/thread-cleaner.module'; import { UpdateSubscriptionJob } from 'src/engine/modules/billing/jobs/update-subscription.job'; import { BillingModule } from 'src/engine/modules/billing/billing.module'; import { UserWorkspaceModule } from 'src/engine/modules/user-workspace/user-workspace.module'; import { StripeModule } from 'src/engine/modules/billing/stripe/stripe.module'; import { Workspace } from 'src/engine/modules/workspace/workspace.entity'; import { FeatureFlagEntity } from 'src/engine/modules/feature-flag/feature-flag.entity'; -import { CalendarModule } from 'src/business/modules/calendar/calendar.module'; +import { CalendarModule } from 'src/modules/calendar/calendar.module'; import { DataSourceEntity } from 'src/engine-metadata/data-source/data-source.entity'; -import { GoogleCalendarFullSyncJob } from 'src/business/modules/calendar/jobs/google-calendar-full-sync.job'; -import { CalendarEventCleanerModule } from 'src/business/modules/calendar/services/calendar-event-cleaner/calendar-event-cleaner.module'; -import { RecordPositionBackfillJob } from 'src/engine/graphql/workspace-query-runner/jobs/record-position-backfill.job'; -import { RecordPositionBackfillModule } from 'src/engine/graphql/workspace-query-runner/services/record-position-backfill-module'; -import { DeleteConnectedAccountAssociatedCalendarDataJob } from 'src/business/modules/message/jobs/delete-connected-account-associated-calendar-data.job'; +import { GoogleCalendarFullSyncJob } from 'src/modules/calendar/jobs/google-calendar-full-sync.job'; +import { CalendarEventCleanerModule } from 'src/modules/calendar/services/calendar-event-cleaner/calendar-event-cleaner.module'; +import { RecordPositionBackfillJob } from 'src/engine/api/graphql/workspace-query-runner/jobs/record-position-backfill.job'; +import { RecordPositionBackfillModule } from 'src/engine/api/graphql/workspace-query-runner/services/record-position-backfill-module'; +import { DeleteConnectedAccountAssociatedCalendarDataJob } from 'src/modules/messaging/jobs/delete-connected-account-associated-calendar-data.job'; @Module({ imports: [ diff --git a/packages/twenty-server/src/integrations/message-queue/message-queue.constants.ts b/packages/twenty-server/src/engine/integrations/message-queue/message-queue.constants.ts similarity index 100% rename from packages/twenty-server/src/integrations/message-queue/message-queue.constants.ts rename to packages/twenty-server/src/engine/integrations/message-queue/message-queue.constants.ts diff --git a/packages/twenty-server/src/integrations/message-queue/message-queue.module-factory.ts b/packages/twenty-server/src/engine/integrations/message-queue/message-queue.module-factory.ts similarity index 89% rename from packages/twenty-server/src/integrations/message-queue/message-queue.module-factory.ts rename to packages/twenty-server/src/engine/integrations/message-queue/message-queue.module-factory.ts index 8829c1dab1d..603f550c39c 100644 --- a/packages/twenty-server/src/integrations/message-queue/message-queue.module-factory.ts +++ b/packages/twenty-server/src/engine/integrations/message-queue/message-queue.module-factory.ts @@ -1,8 +1,8 @@ -import { EnvironmentService } from 'src/integrations/environment/environment.service'; +import { EnvironmentService } from 'src/engine/integrations/environment/environment.service'; import { MessageQueueDriverType, MessageQueueModuleOptions, -} from 'src/integrations/message-queue/interfaces'; +} from 'src/engine/integrations/message-queue/interfaces'; /** * MessageQueue Module factory diff --git a/packages/twenty-server/src/integrations/message-queue/message-queue.module.ts b/packages/twenty-server/src/engine/integrations/message-queue/message-queue.module.ts similarity index 65% rename from packages/twenty-server/src/integrations/message-queue/message-queue.module.ts rename to packages/twenty-server/src/engine/integrations/message-queue/message-queue.module.ts index 29f86895b37..7381c0ee96c 100644 --- a/packages/twenty-server/src/integrations/message-queue/message-queue.module.ts +++ b/packages/twenty-server/src/engine/integrations/message-queue/message-queue.module.ts @@ -1,20 +1,20 @@ import { DynamicModule, Global } from '@nestjs/common'; -import { MessageQueueDriver } from 'src/integrations/message-queue/drivers/interfaces/message-queue-driver.interface'; +import { MessageQueueDriver } from 'src/engine/integrations/message-queue/drivers/interfaces/message-queue-driver.interface'; import { MessageQueueDriverType, MessageQueueModuleAsyncOptions, -} from 'src/integrations/message-queue/interfaces'; +} from 'src/engine/integrations/message-queue/interfaces'; import { MessageQueue, QUEUE_DRIVER, -} from 'src/integrations/message-queue/message-queue.constants'; -import { PgBossDriver } from 'src/integrations/message-queue/drivers/pg-boss.driver'; -import { MessageQueueService } from 'src/integrations/message-queue/services/message-queue.service'; -import { BullMQDriver } from 'src/integrations/message-queue/drivers/bullmq.driver'; -import { SyncDriver } from 'src/integrations/message-queue/drivers/sync.driver'; -import { JobsModule } from 'src/integrations/message-queue/jobs.module'; +} from 'src/engine/integrations/message-queue/message-queue.constants'; +import { PgBossDriver } from 'src/engine/integrations/message-queue/drivers/pg-boss.driver'; +import { MessageQueueService } from 'src/engine/integrations/message-queue/services/message-queue.service'; +import { BullMQDriver } from 'src/engine/integrations/message-queue/drivers/bullmq.driver'; +import { SyncDriver } from 'src/engine/integrations/message-queue/drivers/sync.driver'; +import { JobsModule } from 'src/engine/integrations/message-queue/jobs.module'; @Global() export class MessageQueueModule { diff --git a/packages/twenty-server/src/integrations/message-queue/services/message-queue-task-assigned.service.spec.ts b/packages/twenty-server/src/engine/integrations/message-queue/services/__tests__/message-queue-task-assigned.service.spec.ts similarity index 77% rename from packages/twenty-server/src/integrations/message-queue/services/message-queue-task-assigned.service.spec.ts rename to packages/twenty-server/src/engine/integrations/message-queue/services/__tests__/message-queue-task-assigned.service.spec.ts index 03d7dfcb4cd..31e2b66ae97 100644 --- a/packages/twenty-server/src/integrations/message-queue/services/message-queue-task-assigned.service.spec.ts +++ b/packages/twenty-server/src/engine/integrations/message-queue/services/__tests__/message-queue-task-assigned.service.spec.ts @@ -1,12 +1,12 @@ import { Test, TestingModule } from '@nestjs/testing'; -import { MessageQueueDriver } from 'src/integrations/message-queue/drivers/interfaces/message-queue-driver.interface'; +import { MessageQueueDriver } from 'src/engine/integrations/message-queue/drivers/interfaces/message-queue-driver.interface'; import { QUEUE_DRIVER, MessageQueue, -} from 'src/integrations/message-queue/message-queue.constants'; -import { MessageQueueService } from 'src/integrations/message-queue/services/message-queue.service'; +} from 'src/engine/integrations/message-queue/message-queue.constants'; +import { MessageQueueService } from 'src/engine/integrations/message-queue/services/message-queue.service'; describe('MessageQueueTaskAssigned queue', () => { let service: MessageQueueService; diff --git a/packages/twenty-server/src/integrations/message-queue/services/message-queue.service.ts b/packages/twenty-server/src/engine/integrations/message-queue/services/message-queue.service.ts similarity index 75% rename from packages/twenty-server/src/integrations/message-queue/services/message-queue.service.ts rename to packages/twenty-server/src/engine/integrations/message-queue/services/message-queue.service.ts index 44c2d512110..b082ec7cefc 100644 --- a/packages/twenty-server/src/integrations/message-queue/services/message-queue.service.ts +++ b/packages/twenty-server/src/engine/integrations/message-queue/services/message-queue.service.ts @@ -1,13 +1,13 @@ import { Inject, Injectable, OnModuleDestroy } from '@nestjs/common'; -import { QueueJobOptions } from 'src/integrations/message-queue/drivers/interfaces/job-options.interface'; -import { MessageQueueDriver } from 'src/integrations/message-queue/drivers/interfaces/message-queue-driver.interface'; -import { MessageQueueJobData } from 'src/integrations/message-queue/interfaces/message-queue-job.interface'; +import { QueueJobOptions } from 'src/engine/integrations/message-queue/drivers/interfaces/job-options.interface'; +import { MessageQueueDriver } from 'src/engine/integrations/message-queue/drivers/interfaces/message-queue-driver.interface'; +import { MessageQueueJobData } from 'src/engine/integrations/message-queue/interfaces/message-queue-job.interface'; import { MessageQueue, QUEUE_DRIVER, -} from 'src/integrations/message-queue/message-queue.constants'; +} from 'src/engine/integrations/message-queue/message-queue.constants'; @Injectable() export class MessageQueueService implements OnModuleDestroy { diff --git a/packages/twenty-server/src/integrations/message-queue/utils/get-job-class-name.util.ts b/packages/twenty-server/src/engine/integrations/message-queue/utils/get-job-class-name.util.ts similarity index 100% rename from packages/twenty-server/src/integrations/message-queue/utils/get-job-class-name.util.ts rename to packages/twenty-server/src/engine/integrations/message-queue/utils/get-job-class-name.util.ts diff --git a/packages/twenty-server/src/engine/modules/analytics/analytics.resolver.spec.ts b/packages/twenty-server/src/engine/modules/analytics/analytics.resolver.spec.ts index 5015f09df6d..f6f1e07d422 100644 --- a/packages/twenty-server/src/engine/modules/analytics/analytics.resolver.spec.ts +++ b/packages/twenty-server/src/engine/modules/analytics/analytics.resolver.spec.ts @@ -1,7 +1,7 @@ import { Test, TestingModule } from '@nestjs/testing'; import { HttpService } from '@nestjs/axios'; -import { EnvironmentService } from 'src/integrations/environment/environment.service'; +import { EnvironmentService } from 'src/engine/integrations/environment/environment.service'; import { AnalyticsResolver } from './analytics.resolver'; import { AnalyticsService } from './analytics.service'; diff --git a/packages/twenty-server/src/engine/modules/analytics/analytics.service.spec.ts b/packages/twenty-server/src/engine/modules/analytics/analytics.service.spec.ts index aecd70a70b2..c2cbd7a2f67 100644 --- a/packages/twenty-server/src/engine/modules/analytics/analytics.service.spec.ts +++ b/packages/twenty-server/src/engine/modules/analytics/analytics.service.spec.ts @@ -1,7 +1,7 @@ import { Test, TestingModule } from '@nestjs/testing'; import { HttpService } from '@nestjs/axios'; -import { EnvironmentService } from 'src/integrations/environment/environment.service'; +import { EnvironmentService } from 'src/engine/integrations/environment/environment.service'; import { AnalyticsService } from './analytics.service'; diff --git a/packages/twenty-server/src/engine/modules/analytics/analytics.service.ts b/packages/twenty-server/src/engine/modules/analytics/analytics.service.ts index f0a6fdf4259..dfb9477a05b 100644 --- a/packages/twenty-server/src/engine/modules/analytics/analytics.service.ts +++ b/packages/twenty-server/src/engine/modules/analytics/analytics.service.ts @@ -4,7 +4,7 @@ import { HttpService } from '@nestjs/axios'; import { Request } from 'express'; import { anonymize } from 'src/utils/anonymize'; -import { EnvironmentService } from 'src/integrations/environment/environment.service'; +import { EnvironmentService } from 'src/engine/integrations/environment/environment.service'; import { User } from 'src/engine/modules/user/user.entity'; import { Workspace } from 'src/engine/modules/workspace/workspace.entity'; diff --git a/packages/twenty-server/src/engine/modules/auth/auth.module.ts b/packages/twenty-server/src/engine/modules/auth/auth.module.ts index 241b375c0f6..5d7995fd316 100644 --- a/packages/twenty-server/src/engine/modules/auth/auth.module.ts +++ b/packages/twenty-server/src/engine/modules/auth/auth.module.ts @@ -4,7 +4,7 @@ import { JwtModule } from '@nestjs/jwt'; import { TypeOrmModule } from '@nestjs/typeorm'; import { HttpModule } from '@nestjs/axios'; -import { EnvironmentService } from 'src/integrations/environment/environment.service'; +import { EnvironmentService } from 'src/engine/integrations/environment/environment.service'; import { FileModule } from 'src/engine/modules/file/file.module'; import { Workspace } from 'src/engine/modules/workspace/workspace.entity'; import { User } from 'src/engine/modules/user/user.entity'; diff --git a/packages/twenty-server/src/engine/modules/auth/controllers/google-apis-auth.controller.ts b/packages/twenty-server/src/engine/modules/auth/controllers/google-apis-auth.controller.ts index 2f699b86f8f..7cdb6279e81 100644 --- a/packages/twenty-server/src/engine/modules/auth/controllers/google-apis-auth.controller.ts +++ b/packages/twenty-server/src/engine/modules/auth/controllers/google-apis-auth.controller.ts @@ -7,7 +7,7 @@ import { GoogleAPIsOauthGuard } from 'src/engine/modules/auth/guards/google-apis import { GoogleAPIsRequest } from 'src/engine/modules/auth/strategies/google-apis.auth.strategy'; import { GoogleAPIsService } from 'src/engine/modules/auth/services/google-apis.service'; import { TokenService } from 'src/engine/modules/auth/services/token.service'; -import { EnvironmentService } from 'src/integrations/environment/environment.service'; +import { EnvironmentService } from 'src/engine/integrations/environment/environment.service'; @Controller('auth/google-apis') export class GoogleAPIsAuthController { diff --git a/packages/twenty-server/src/engine/modules/auth/controllers/google-auth.controller.ts b/packages/twenty-server/src/engine/modules/auth/controllers/google-auth.controller.ts index 6e956aec991..df736e6fa23 100644 --- a/packages/twenty-server/src/engine/modules/auth/controllers/google-auth.controller.ts +++ b/packages/twenty-server/src/engine/modules/auth/controllers/google-auth.controller.ts @@ -12,7 +12,7 @@ import { User } from 'src/engine/modules/user/user.entity'; import { Workspace } from 'src/engine/modules/workspace/workspace.entity'; import { AuthService } from 'src/engine/modules/auth/services/auth.service'; import { TypeORMService } from 'src/database/typeorm/typeorm.service'; -import { EnvironmentService } from 'src/integrations/environment/environment.service'; +import { EnvironmentService } from 'src/engine/integrations/environment/environment.service'; @Controller('auth/google') export class GoogleAuthController { diff --git a/packages/twenty-server/src/engine/modules/auth/controllers/google-gmail-auth.controller.ts b/packages/twenty-server/src/engine/modules/auth/controllers/google-gmail-auth.controller.ts index 21682154d8e..18e15db3739 100644 --- a/packages/twenty-server/src/engine/modules/auth/controllers/google-gmail-auth.controller.ts +++ b/packages/twenty-server/src/engine/modules/auth/controllers/google-gmail-auth.controller.ts @@ -7,7 +7,7 @@ import { GoogleAPIsProviderEnabledGuard } from 'src/engine/modules/auth/guards/g import { GoogleAPIsService } from 'src/engine/modules/auth/services/google-apis.service'; import { TokenService } from 'src/engine/modules/auth/services/token.service'; import { GoogleAPIsRequest } from 'src/engine/modules/auth/strategies/google-apis.auth.strategy'; -import { EnvironmentService } from 'src/integrations/environment/environment.service'; +import { EnvironmentService } from 'src/engine/integrations/environment/environment.service'; @Controller('auth/google-gmail') export class GoogleGmailAuthController { diff --git a/packages/twenty-server/src/engine/modules/auth/guards/google-apis-provider-enabled.guard.ts b/packages/twenty-server/src/engine/modules/auth/guards/google-apis-provider-enabled.guard.ts index 81bfd12d1f5..50792c44d02 100644 --- a/packages/twenty-server/src/engine/modules/auth/guards/google-apis-provider-enabled.guard.ts +++ b/packages/twenty-server/src/engine/modules/auth/guards/google-apis-provider-enabled.guard.ts @@ -3,7 +3,7 @@ import { Injectable, CanActivate, NotFoundException } from '@nestjs/common'; import { Observable } from 'rxjs'; import { GoogleAPIsStrategy } from 'src/engine/modules/auth/strategies/google-apis.auth.strategy'; -import { EnvironmentService } from 'src/integrations/environment/environment.service'; +import { EnvironmentService } from 'src/engine/integrations/environment/environment.service'; @Injectable() export class GoogleAPIsProviderEnabledGuard implements CanActivate { diff --git a/packages/twenty-server/src/engine/modules/auth/guards/google-gmail-provider-enabled.guard.ts b/packages/twenty-server/src/engine/modules/auth/guards/google-gmail-provider-enabled.guard.ts index 8fdca62a890..a6c88275d4c 100644 --- a/packages/twenty-server/src/engine/modules/auth/guards/google-gmail-provider-enabled.guard.ts +++ b/packages/twenty-server/src/engine/modules/auth/guards/google-gmail-provider-enabled.guard.ts @@ -3,7 +3,7 @@ import { Injectable, CanActivate, NotFoundException } from '@nestjs/common'; import { Observable } from 'rxjs'; import { GoogleAPIsStrategy } from 'src/engine/modules/auth/strategies/google-apis.auth.strategy'; -import { EnvironmentService } from 'src/integrations/environment/environment.service'; +import { EnvironmentService } from 'src/engine/integrations/environment/environment.service'; @Injectable() export class GoogleGmailProviderEnabledGuard implements CanActivate { diff --git a/packages/twenty-server/src/engine/modules/auth/guards/google-provider-enabled.guard.ts b/packages/twenty-server/src/engine/modules/auth/guards/google-provider-enabled.guard.ts index 9f016d6c9c5..feedac845fe 100644 --- a/packages/twenty-server/src/engine/modules/auth/guards/google-provider-enabled.guard.ts +++ b/packages/twenty-server/src/engine/modules/auth/guards/google-provider-enabled.guard.ts @@ -2,7 +2,7 @@ import { Injectable, CanActivate, NotFoundException } from '@nestjs/common'; import { Observable } from 'rxjs'; -import { EnvironmentService } from 'src/integrations/environment/environment.service'; +import { EnvironmentService } from 'src/engine/integrations/environment/environment.service'; import { GoogleStrategy } from 'src/engine/modules/auth/strategies/google.auth.strategy'; @Injectable() diff --git a/packages/twenty-server/src/engine/modules/auth/services/auth.service.spec.ts b/packages/twenty-server/src/engine/modules/auth/services/auth.service.spec.ts index 0fa78b16b23..70ce4b8ebcb 100644 --- a/packages/twenty-server/src/engine/modules/auth/services/auth.service.spec.ts +++ b/packages/twenty-server/src/engine/modules/auth/services/auth.service.spec.ts @@ -5,8 +5,8 @@ import { UserService } from 'src/engine/modules/user/services/user.service'; import { WorkspaceManagerService } from 'src/engine/workspace-manager/workspace-manager.service'; import { Workspace } from 'src/engine/modules/workspace/workspace.entity'; import { User } from 'src/engine/modules/user/user.entity'; -import { EnvironmentService } from 'src/integrations/environment/environment.service'; -import { EmailService } from 'src/integrations/email/email.service'; +import { EnvironmentService } from 'src/engine/integrations/environment/environment.service'; +import { EmailService } from 'src/engine/integrations/email/email.service'; import { SignUpService } from 'src/engine/modules/auth/services/sign-up.service'; import { AuthService } from './auth.service'; diff --git a/packages/twenty-server/src/engine/modules/auth/services/auth.service.ts b/packages/twenty-server/src/engine/modules/auth/services/auth.service.ts index 8503b91ffdd..ad16d1d4f8a 100644 --- a/packages/twenty-server/src/engine/modules/auth/services/auth.service.ts +++ b/packages/twenty-server/src/engine/modules/auth/services/auth.service.ts @@ -23,8 +23,8 @@ import { WorkspaceInviteHashValid } from 'src/engine/modules/auth/dto/workspace- import { User } from 'src/engine/modules/user/user.entity'; import { Workspace } from 'src/engine/modules/workspace/workspace.entity'; import { UserService } from 'src/engine/modules/user/services/user.service'; -import { EnvironmentService } from 'src/integrations/environment/environment.service'; -import { EmailService } from 'src/integrations/email/email.service'; +import { EnvironmentService } from 'src/engine/integrations/environment/environment.service'; +import { EmailService } from 'src/engine/integrations/email/email.service'; import { UpdatePassword } from 'src/engine/modules/auth/dto/update-password.entity'; import { SignUpService } from 'src/engine/modules/auth/services/sign-up.service'; diff --git a/packages/twenty-server/src/engine/modules/auth/services/google-apis.service.ts b/packages/twenty-server/src/engine/modules/auth/services/google-apis.service.ts index bf0cb71cecb..19fd0aab175 100644 --- a/packages/twenty-server/src/engine/modules/auth/services/google-apis.service.ts +++ b/packages/twenty-server/src/engine/modules/auth/services/google-apis.service.ts @@ -7,17 +7,17 @@ import { Repository } from 'typeorm'; import { DataSourceService } from 'src/engine-metadata/data-source/data-source.service'; import { TypeORMService } from 'src/database/typeorm/typeorm.service'; import { SaveConnectedAccountInput } from 'src/engine/modules/auth/dto/save-connected-account'; -import { MessageQueue } from 'src/integrations/message-queue/message-queue.constants'; -import { MessageQueueService } from 'src/integrations/message-queue/services/message-queue.service'; +import { MessageQueue } from 'src/engine/integrations/message-queue/message-queue.constants'; +import { MessageQueueService } from 'src/engine/integrations/message-queue/services/message-queue.service'; import { GmailFullSyncJob, GmailFullSyncJobData, -} from 'src/business/modules/message/jobs/gmail-full-sync.job'; +} from 'src/modules/messaging/jobs/gmail-full-sync.job'; import { GoogleCalendarFullSyncJob, GoogleCalendarFullSyncJobData, -} from 'src/business/modules/calendar/jobs/google-calendar-full-sync.job'; -import { EnvironmentService } from 'src/integrations/environment/environment.service'; +} from 'src/modules/calendar/jobs/google-calendar-full-sync.job'; +import { EnvironmentService } from 'src/engine/integrations/environment/environment.service'; import { FeatureFlagEntity, FeatureFlagKeys, diff --git a/packages/twenty-server/src/engine/modules/auth/services/sign-up.service.spec.ts b/packages/twenty-server/src/engine/modules/auth/services/sign-up.service.spec.ts index 529d2acf47a..2fe72ca9694 100644 --- a/packages/twenty-server/src/engine/modules/auth/services/sign-up.service.spec.ts +++ b/packages/twenty-server/src/engine/modules/auth/services/sign-up.service.spec.ts @@ -4,7 +4,7 @@ import { HttpService } from '@nestjs/axios'; import { Workspace } from 'src/engine/modules/workspace/workspace.entity'; import { User } from 'src/engine/modules/user/user.entity'; -import { EnvironmentService } from 'src/integrations/environment/environment.service'; +import { EnvironmentService } from 'src/engine/integrations/environment/environment.service'; import { SignUpService } from 'src/engine/modules/auth/services/sign-up.service'; import { FileUploadService } from 'src/engine/modules/file/services/file-upload.service'; import { UserWorkspaceService } from 'src/engine/modules/user-workspace/user-workspace.service'; diff --git a/packages/twenty-server/src/engine/modules/auth/services/sign-up.service.ts b/packages/twenty-server/src/engine/modules/auth/services/sign-up.service.ts index f58334cedcb..f19f5cadd95 100644 --- a/packages/twenty-server/src/engine/modules/auth/services/sign-up.service.ts +++ b/packages/twenty-server/src/engine/modules/auth/services/sign-up.service.ts @@ -20,7 +20,7 @@ import { import { User } from 'src/engine/modules/user/user.entity'; import { Workspace } from 'src/engine/modules/workspace/workspace.entity'; import { FileUploadService } from 'src/engine/modules/file/services/file-upload.service'; -import { EnvironmentService } from 'src/integrations/environment/environment.service'; +import { EnvironmentService } from 'src/engine/integrations/environment/environment.service'; import { getImageBufferFromUrl } from 'src/utils/image'; import { UserWorkspaceService } from 'src/engine/modules/user-workspace/user-workspace.service'; diff --git a/packages/twenty-server/src/engine/modules/auth/services/token.service.spec.ts b/packages/twenty-server/src/engine/modules/auth/services/token.service.spec.ts index 18287d1f403..5fc239cae1d 100644 --- a/packages/twenty-server/src/engine/modules/auth/services/token.service.spec.ts +++ b/packages/twenty-server/src/engine/modules/auth/services/token.service.spec.ts @@ -2,11 +2,11 @@ import { Test, TestingModule } from '@nestjs/testing'; import { JwtService } from '@nestjs/jwt'; import { getRepositoryToken } from '@nestjs/typeorm'; -import { EnvironmentService } from 'src/integrations/environment/environment.service'; +import { EnvironmentService } from 'src/engine/integrations/environment/environment.service'; import { RefreshToken } from 'src/engine/modules/refresh-token/refresh-token.entity'; import { User } from 'src/engine/modules/user/user.entity'; import { JwtAuthStrategy } from 'src/engine/modules/auth/strategies/jwt.auth.strategy'; -import { EmailService } from 'src/integrations/email/email.service'; +import { EmailService } from 'src/engine/integrations/email/email.service'; import { UserWorkspaceService } from 'src/engine/modules/user-workspace/user-workspace.service'; import { Workspace } from 'src/engine/modules/workspace/workspace.entity'; diff --git a/packages/twenty-server/src/engine/modules/auth/services/token.service.ts b/packages/twenty-server/src/engine/modules/auth/services/token.service.ts index 55af71123b3..30a573be4bf 100644 --- a/packages/twenty-server/src/engine/modules/auth/services/token.service.ts +++ b/packages/twenty-server/src/engine/modules/auth/services/token.service.ts @@ -32,11 +32,11 @@ import { AuthTokens, PasswordResetToken, } from 'src/engine/modules/auth/dto/token.entity'; -import { EnvironmentService } from 'src/integrations/environment/environment.service'; +import { EnvironmentService } from 'src/engine/integrations/environment/environment.service'; import { User } from 'src/engine/modules/user/user.entity'; import { RefreshToken } from 'src/engine/modules/refresh-token/refresh-token.entity'; import { ValidatePasswordResetToken } from 'src/engine/modules/auth/dto/validate-password-reset-token.entity'; -import { EmailService } from 'src/integrations/email/email.service'; +import { EmailService } from 'src/engine/integrations/email/email.service'; import { InvalidatePassword } from 'src/engine/modules/auth/dto/invalidate-password.entity'; import { EmailPasswordResetLink } from 'src/engine/modules/auth/dto/email-password-reset-link.entity'; import { JwtData } from 'src/engine/modules/auth/types/jwt-data.type'; diff --git a/packages/twenty-server/src/engine/modules/auth/strategies/google-apis.auth.strategy.ts b/packages/twenty-server/src/engine/modules/auth/strategies/google-apis.auth.strategy.ts index e0633e0722e..2a389774ece 100644 --- a/packages/twenty-server/src/engine/modules/auth/strategies/google-apis.auth.strategy.ts +++ b/packages/twenty-server/src/engine/modules/auth/strategies/google-apis.auth.strategy.ts @@ -4,7 +4,7 @@ import { Injectable } from '@nestjs/common'; import { Strategy, VerifyCallback } from 'passport-google-oauth20'; import { Request } from 'express'; -import { EnvironmentService } from 'src/integrations/environment/environment.service'; +import { EnvironmentService } from 'src/engine/integrations/environment/environment.service'; export type GoogleAPIsRequest = Request & { user: { diff --git a/packages/twenty-server/src/engine/modules/auth/strategies/google.auth.strategy.ts b/packages/twenty-server/src/engine/modules/auth/strategies/google.auth.strategy.ts index 670307ec864..1b2ea68d27f 100644 --- a/packages/twenty-server/src/engine/modules/auth/strategies/google.auth.strategy.ts +++ b/packages/twenty-server/src/engine/modules/auth/strategies/google.auth.strategy.ts @@ -4,7 +4,7 @@ import { Injectable } from '@nestjs/common'; import { Strategy, VerifyCallback } from 'passport-google-oauth20'; import { Request } from 'express'; -import { EnvironmentService } from 'src/integrations/environment/environment.service'; +import { EnvironmentService } from 'src/engine/integrations/environment/environment.service'; export type GoogleRequest = Request & { user: { diff --git a/packages/twenty-server/src/engine/modules/auth/strategies/jwt.auth.strategy.ts b/packages/twenty-server/src/engine/modules/auth/strategies/jwt.auth.strategy.ts index 3d20de2cff2..f097a6513b7 100644 --- a/packages/twenty-server/src/engine/modules/auth/strategies/jwt.auth.strategy.ts +++ b/packages/twenty-server/src/engine/modules/auth/strategies/jwt.auth.strategy.ts @@ -10,7 +10,7 @@ import { Strategy, ExtractJwt } from 'passport-jwt'; import { Repository } from 'typeorm'; import { assert } from 'src/utils/assert'; -import { EnvironmentService } from 'src/integrations/environment/environment.service'; +import { EnvironmentService } from 'src/engine/integrations/environment/environment.service'; import { Workspace } from 'src/engine/modules/workspace/workspace.entity'; import { User } from 'src/engine/modules/user/user.entity'; import { TypeORMService } from 'src/database/typeorm/typeorm.service'; diff --git a/packages/twenty-server/src/engine/modules/billing/billing.service.ts b/packages/twenty-server/src/engine/modules/billing/billing.service.ts index 00852acc165..705c6e0aadc 100644 --- a/packages/twenty-server/src/engine/modules/billing/billing.service.ts +++ b/packages/twenty-server/src/engine/modules/billing/billing.service.ts @@ -4,7 +4,7 @@ import { InjectRepository } from '@nestjs/typeorm'; import Stripe from 'stripe'; import { Not, Repository } from 'typeorm'; -import { EnvironmentService } from 'src/integrations/environment/environment.service'; +import { EnvironmentService } from 'src/engine/integrations/environment/environment.service'; import { StripeService } from 'src/engine/modules/billing/stripe/stripe.service'; import { BillingSubscription } from 'src/engine/modules/billing/entities/billing-subscription.entity'; import { BillingSubscriptionItem } from 'src/engine/modules/billing/entities/billing-subscription-item.entity'; diff --git a/packages/twenty-server/src/engine/modules/billing/jobs/update-subscription.job.ts b/packages/twenty-server/src/engine/modules/billing/jobs/update-subscription.job.ts index 528a801be0e..486d289fd39 100644 --- a/packages/twenty-server/src/engine/modules/billing/jobs/update-subscription.job.ts +++ b/packages/twenty-server/src/engine/modules/billing/jobs/update-subscription.job.ts @@ -1,6 +1,6 @@ import { Injectable, Logger } from '@nestjs/common'; -import { MessageQueueJob } from 'src/integrations/message-queue/interfaces/message-queue-job.interface'; +import { MessageQueueJob } from 'src/engine/integrations/message-queue/interfaces/message-queue-job.interface'; import { BillingService } from 'src/engine/modules/billing/billing.service'; import { UserWorkspaceService } from 'src/engine/modules/user-workspace/user-workspace.service'; diff --git a/packages/twenty-server/src/engine/modules/billing/listeners/billing-workspace-member.listener.ts b/packages/twenty-server/src/engine/modules/billing/listeners/billing-workspace-member.listener.ts index e6808d9365d..e9f982c4f7f 100644 --- a/packages/twenty-server/src/engine/modules/billing/listeners/billing-workspace-member.listener.ts +++ b/packages/twenty-server/src/engine/modules/billing/listeners/billing-workspace-member.listener.ts @@ -1,10 +1,10 @@ import { Inject, Injectable } from '@nestjs/common'; import { OnEvent } from '@nestjs/event-emitter'; -import { MessageQueue } from 'src/integrations/message-queue/message-queue.constants'; -import { MessageQueueService } from 'src/integrations/message-queue/services/message-queue.service'; -import { ObjectRecordCreateEvent } from 'src/integrations/event-emitter/types/object-record-create.event'; -import { WorkspaceMemberObjectMetadata } from 'src/business/modules/workspace/workspace-member.object-metadata'; +import { MessageQueue } from 'src/engine/integrations/message-queue/message-queue.constants'; +import { MessageQueueService } from 'src/engine/integrations/message-queue/services/message-queue.service'; +import { ObjectRecordCreateEvent } from 'src/engine/integrations/event-emitter/types/object-record-create.event'; +import { WorkspaceMemberObjectMetadata } from 'src/modules/workspace-member/standard-objects/workspace-member.object-metadata'; import { UpdateSubscriptionJob, UpdateSubscriptionJobData, diff --git a/packages/twenty-server/src/engine/modules/billing/stripe/stripe.service.ts b/packages/twenty-server/src/engine/modules/billing/stripe/stripe.service.ts index 4e5cc08ffe8..c4e0cefec54 100644 --- a/packages/twenty-server/src/engine/modules/billing/stripe/stripe.service.ts +++ b/packages/twenty-server/src/engine/modules/billing/stripe/stripe.service.ts @@ -2,7 +2,7 @@ import { Injectable, Logger } from '@nestjs/common'; import Stripe from 'stripe'; -import { EnvironmentService } from 'src/integrations/environment/environment.service'; +import { EnvironmentService } from 'src/engine/integrations/environment/environment.service'; import { User } from 'src/engine/modules/user/user.entity'; @Injectable() diff --git a/packages/twenty-server/src/engine/modules/client-config/client-config.resolver.spec.ts b/packages/twenty-server/src/engine/modules/client-config/client-config.resolver.spec.ts index 3004995e158..a723405b285 100644 --- a/packages/twenty-server/src/engine/modules/client-config/client-config.resolver.spec.ts +++ b/packages/twenty-server/src/engine/modules/client-config/client-config.resolver.spec.ts @@ -1,6 +1,6 @@ import { Test, TestingModule } from '@nestjs/testing'; -import { EnvironmentService } from 'src/integrations/environment/environment.service'; +import { EnvironmentService } from 'src/engine/integrations/environment/environment.service'; import { ClientConfigResolver } from './client-config.resolver'; diff --git a/packages/twenty-server/src/engine/modules/client-config/client-config.resolver.ts b/packages/twenty-server/src/engine/modules/client-config/client-config.resolver.ts index 70e0aedbcd1..0891de7085d 100644 --- a/packages/twenty-server/src/engine/modules/client-config/client-config.resolver.ts +++ b/packages/twenty-server/src/engine/modules/client-config/client-config.resolver.ts @@ -1,6 +1,6 @@ import { Resolver, Query } from '@nestjs/graphql'; -import { EnvironmentService } from 'src/integrations/environment/environment.service'; +import { EnvironmentService } from 'src/engine/integrations/environment/environment.service'; import { ClientConfig } from './client-config.entity'; diff --git a/packages/twenty-server/src/engine/modules/foundation.module.ts b/packages/twenty-server/src/engine/modules/engine-modules.module.ts similarity index 97% rename from packages/twenty-server/src/engine/modules/foundation.module.ts rename to packages/twenty-server/src/engine/modules/engine-modules.module.ts index 378a4dbc662..aa23a0f5221 100644 --- a/packages/twenty-server/src/engine/modules/foundation.module.ts +++ b/packages/twenty-server/src/engine/modules/engine-modules.module.ts @@ -38,4 +38,4 @@ import { ClientConfigModule } from './client-config/client-config.module'; WorkspaceModule, ], }) -export class FoundationModule {} +export class EngineModulesModule {} diff --git a/packages/twenty-server/src/engine/modules/file/services/file-upload.service.spec.ts b/packages/twenty-server/src/engine/modules/file/services/file-upload.service.spec.ts index 52219e25d69..c972a27c434 100644 --- a/packages/twenty-server/src/engine/modules/file/services/file-upload.service.spec.ts +++ b/packages/twenty-server/src/engine/modules/file/services/file-upload.service.spec.ts @@ -1,7 +1,7 @@ import { Test, TestingModule } from '@nestjs/testing'; -import { EnvironmentService } from 'src/integrations/environment/environment.service'; -import { FileStorageService } from 'src/integrations/file-storage/file-storage.service'; +import { EnvironmentService } from 'src/engine/integrations/environment/environment.service'; +import { FileStorageService } from 'src/engine/integrations/file-storage/file-storage.service'; import { FileUploadService } from './file-upload.service'; diff --git a/packages/twenty-server/src/engine/modules/file/services/file-upload.service.ts b/packages/twenty-server/src/engine/modules/file/services/file-upload.service.ts index 53399ea219c..10d70bf0859 100644 --- a/packages/twenty-server/src/engine/modules/file/services/file-upload.service.ts +++ b/packages/twenty-server/src/engine/modules/file/services/file-upload.service.ts @@ -7,7 +7,7 @@ import { FileFolder } from 'src/engine/modules/file/interfaces/file-folder.inter import { getCropSize } from 'src/utils/image'; import { settings } from 'src/engine/constants/settings'; -import { FileStorageService } from 'src/integrations/file-storage/file-storage.service'; +import { FileStorageService } from 'src/engine/integrations/file-storage/file-storage.service'; @Injectable() export class FileUploadService { diff --git a/packages/twenty-server/src/engine/modules/file/services/file.service.spec.ts b/packages/twenty-server/src/engine/modules/file/services/file.service.spec.ts index 89e8d98bddf..da68c62a442 100644 --- a/packages/twenty-server/src/engine/modules/file/services/file.service.spec.ts +++ b/packages/twenty-server/src/engine/modules/file/services/file.service.spec.ts @@ -1,7 +1,7 @@ import { Test, TestingModule } from '@nestjs/testing'; -import { EnvironmentService } from 'src/integrations/environment/environment.service'; -import { FileStorageService } from 'src/integrations/file-storage/file-storage.service'; +import { EnvironmentService } from 'src/engine/integrations/environment/environment.service'; +import { FileStorageService } from 'src/engine/integrations/file-storage/file-storage.service'; import { FileService } from './file.service'; diff --git a/packages/twenty-server/src/engine/modules/file/services/file.service.ts b/packages/twenty-server/src/engine/modules/file/services/file.service.ts index f2fe510cd50..290a13f8bd9 100644 --- a/packages/twenty-server/src/engine/modules/file/services/file.service.ts +++ b/packages/twenty-server/src/engine/modules/file/services/file.service.ts @@ -1,6 +1,6 @@ import { Injectable } from '@nestjs/common'; -import { FileStorageService } from 'src/integrations/file-storage/file-storage.service'; +import { FileStorageService } from 'src/engine/integrations/file-storage/file-storage.service'; @Injectable() export class FileService { diff --git a/packages/twenty-server/src/engine/modules/open-api/open-api.service.spec.ts b/packages/twenty-server/src/engine/modules/open-api/open-api.service.spec.ts index 290e4659d04..eb277a13511 100644 --- a/packages/twenty-server/src/engine/modules/open-api/open-api.service.spec.ts +++ b/packages/twenty-server/src/engine/modules/open-api/open-api.service.spec.ts @@ -3,7 +3,7 @@ import { Test, TestingModule } from '@nestjs/testing'; import { OpenApiService } from 'src/engine/modules/open-api/open-api.service'; import { ObjectMetadataService } from 'src/engine-metadata/object-metadata/object-metadata.service'; import { TokenService } from 'src/engine/modules/auth/services/token.service'; -import { EnvironmentService } from 'src/integrations/environment/environment.service'; +import { EnvironmentService } from 'src/engine/integrations/environment/environment.service'; describe('OpenApiService', () => { let service: OpenApiService; diff --git a/packages/twenty-server/src/engine/modules/open-api/open-api.service.ts b/packages/twenty-server/src/engine/modules/open-api/open-api.service.ts index a257b64b789..40f5378e804 100644 --- a/packages/twenty-server/src/engine/modules/open-api/open-api.service.ts +++ b/packages/twenty-server/src/engine/modules/open-api/open-api.service.ts @@ -25,7 +25,7 @@ import { getSingleResultSuccessResponse, } from 'src/engine/modules/open-api/utils/responses.utils'; import { getRequestBody } from 'src/engine/modules/open-api/utils/request-body.utils'; -import { EnvironmentService } from 'src/integrations/environment/environment.service'; +import { EnvironmentService } from 'src/engine/integrations/environment/environment.service'; @Injectable() export class OpenApiService { diff --git a/packages/twenty-server/src/engine/modules/open-api/utils/__tests__/components.utils.spec.ts b/packages/twenty-server/src/engine/modules/open-api/utils/__tests__/components.utils.spec.ts index be315563277..5995f0a0e93 100644 --- a/packages/twenty-server/src/engine/modules/open-api/utils/__tests__/components.utils.spec.ts +++ b/packages/twenty-server/src/engine/modules/open-api/utils/__tests__/components.utils.spec.ts @@ -1,11 +1,13 @@ import { computeSchemaComponents } from 'src/engine/modules/open-api/utils/components.utils'; -import { objectMetadataItem } from 'src/utils/utils-test/object-metadata-item'; +import { objectMetadataItemMock } from 'src/engine/api/__mocks__/object-metadata-item.mock'; import { ObjectMetadataEntity } from 'src/engine-metadata/object-metadata/object-metadata.entity'; describe('computeSchemaComponents', () => { it('should compute schema components', () => { expect( - computeSchemaComponents([objectMetadataItem] as ObjectMetadataEntity[]), + computeSchemaComponents([ + objectMetadataItemMock, + ] as ObjectMetadataEntity[]), ).toEqual({ ObjectName: { type: 'object', diff --git a/packages/twenty-server/src/engine/modules/open-api/utils/__tests__/parameters.utils.spec.ts b/packages/twenty-server/src/engine/modules/open-api/utils/__tests__/parameters.utils.spec.ts index d2a2106a2a7..b5d496a0722 100644 --- a/packages/twenty-server/src/engine/modules/open-api/utils/__tests__/parameters.utils.spec.ts +++ b/packages/twenty-server/src/engine/modules/open-api/utils/__tests__/parameters.utils.spec.ts @@ -1,4 +1,4 @@ -import { OrderByDirection } from 'src/engine/graphql/workspace-query-builder/interfaces/record.interface'; +import { OrderByDirection } from 'src/engine/api/graphql/workspace-query-builder/interfaces/record.interface'; import { computeDepthParameters, @@ -8,10 +8,10 @@ import { computeLimitParameters, computeOrderByParameters, } from 'src/engine/modules/open-api/utils/parameters.utils'; -import { DEFAULT_ORDER_DIRECTION } from 'src/api/rest/api-rest-query-builder/factories/input-factories/order-by-input.factory'; -import { FilterComparators } from 'src/api/rest/api-rest-query-builder/factories/input-factories/filter-utils/parse-base-filter.utils'; -import { Conjunctions } from 'src/api/rest/api-rest-query-builder/factories/input-factories/filter-utils/parse-filter.utils'; -import { DEFAULT_CONJUNCTION } from 'src/api/rest/api-rest-query-builder/factories/input-factories/filter-utils/add-default-conjunction.utils'; +import { DEFAULT_ORDER_DIRECTION } from 'src/engine/api/rest/api-rest-query-builder/factories/input-factories/order-by-input.factory'; +import { FilterComparators } from 'src/engine/api/rest/api-rest-query-builder/factories/input-factories/filter-utils/parse-base-filter.utils'; +import { Conjunctions } from 'src/engine/api/rest/api-rest-query-builder/factories/input-factories/filter-utils/parse-filter.utils'; +import { DEFAULT_CONJUNCTION } from 'src/engine/api/rest/api-rest-query-builder/factories/input-factories/filter-utils/add-default-conjunction.utils'; describe('computeParameters', () => { describe('computeLimit', () => { diff --git a/packages/twenty-server/src/engine/modules/open-api/utils/parameters.utils.ts b/packages/twenty-server/src/engine/modules/open-api/utils/parameters.utils.ts index 559ab795d6a..03f7319e7cd 100644 --- a/packages/twenty-server/src/engine/modules/open-api/utils/parameters.utils.ts +++ b/packages/twenty-server/src/engine/modules/open-api/utils/parameters.utils.ts @@ -1,11 +1,11 @@ import { OpenAPIV3_1 } from 'openapi-types'; -import { OrderByDirection } from 'src/engine/graphql/workspace-query-builder/interfaces/record.interface'; +import { OrderByDirection } from 'src/engine/api/graphql/workspace-query-builder/interfaces/record.interface'; -import { FilterComparators } from 'src/api/rest/api-rest-query-builder/factories/input-factories/filter-utils/parse-base-filter.utils'; -import { Conjunctions } from 'src/api/rest/api-rest-query-builder/factories/input-factories/filter-utils/parse-filter.utils'; -import { DEFAULT_ORDER_DIRECTION } from 'src/api/rest/api-rest-query-builder/factories/input-factories/order-by-input.factory'; -import { DEFAULT_CONJUNCTION } from 'src/api/rest/api-rest-query-builder/factories/input-factories/filter-utils/add-default-conjunction.utils'; +import { FilterComparators } from 'src/engine/api/rest/api-rest-query-builder/factories/input-factories/filter-utils/parse-base-filter.utils'; +import { Conjunctions } from 'src/engine/api/rest/api-rest-query-builder/factories/input-factories/filter-utils/parse-filter.utils'; +import { DEFAULT_ORDER_DIRECTION } from 'src/engine/api/rest/api-rest-query-builder/factories/input-factories/order-by-input.factory'; +import { DEFAULT_CONJUNCTION } from 'src/engine/api/rest/api-rest-query-builder/factories/input-factories/filter-utils/add-default-conjunction.utils'; export const computeLimitParameters = (): OpenAPIV3_1.ParameterObject => { return { diff --git a/packages/twenty-server/src/engine/modules/quick-actions/intelligence.service.ts b/packages/twenty-server/src/engine/modules/quick-actions/intelligence.service.ts index a508adc24d9..e56c2e2f069 100644 --- a/packages/twenty-server/src/engine/modules/quick-actions/intelligence.service.ts +++ b/packages/twenty-server/src/engine/modules/quick-actions/intelligence.service.ts @@ -3,7 +3,7 @@ import { Injectable } from '@nestjs/common'; import { CompanyInteface } from 'src/engine/modules/quick-actions/interfaces/company.interface'; -import { EnvironmentService } from 'src/integrations/environment/environment.service'; +import { EnvironmentService } from 'src/engine/integrations/environment/environment.service'; @Injectable() export class IntelligenceService { diff --git a/packages/twenty-server/src/engine/modules/quick-actions/quick-actions.module.ts b/packages/twenty-server/src/engine/modules/quick-actions/quick-actions.module.ts index 03a58166ac1..14e4bc82a1c 100644 --- a/packages/twenty-server/src/engine/modules/quick-actions/quick-actions.module.ts +++ b/packages/twenty-server/src/engine/modules/quick-actions/quick-actions.module.ts @@ -3,7 +3,7 @@ import { HttpModule } from '@nestjs/axios'; import { IntelligenceService } from 'src/engine/modules/quick-actions/intelligence.service'; import { QuickActionsService } from 'src/engine/modules/quick-actions/quick-actions.service'; -import { WorkspaceQueryRunnerModule } from 'src/engine/graphql/workspace-query-runner/workspace-query-runner.module'; +import { WorkspaceQueryRunnerModule } from 'src/engine/api/graphql/workspace-query-runner/workspace-query-runner.module'; @Module({ imports: [WorkspaceQueryRunnerModule, HttpModule], diff --git a/packages/twenty-server/src/engine/modules/quick-actions/quick-actions.service.ts b/packages/twenty-server/src/engine/modules/quick-actions/quick-actions.service.ts index c2b55d17bf3..6ec86bb1cd6 100644 --- a/packages/twenty-server/src/engine/modules/quick-actions/quick-actions.service.ts +++ b/packages/twenty-server/src/engine/modules/quick-actions/quick-actions.service.ts @@ -2,12 +2,12 @@ import { Injectable } from '@nestjs/common'; import { v4 as uuidv4 } from 'uuid'; -import { Record as IRecord } from 'src/engine/graphql/workspace-query-builder/interfaces/record.interface'; +import { Record as IRecord } from 'src/engine/api/graphql/workspace-query-builder/interfaces/record.interface'; import { ObjectMetadataInterface } from 'src/engine-metadata/field-metadata/interfaces/object-metadata.interface'; import { isWorkEmail } from 'src/utils/is-work-email'; -import { stringifyWithoutKeyQuote } from 'src/engine/graphql/workspace-query-builder/utils/stringify-without-key-quote.util'; -import { WorkspaceQueryRunnerService } from 'src/engine/graphql/workspace-query-runner/workspace-query-runner.service'; +import { stringifyWithoutKeyQuote } from 'src/engine/api/graphql/workspace-query-builder/utils/stringify-without-key-quote.util'; +import { WorkspaceQueryRunnerService } from 'src/engine/api/graphql/workspace-query-runner/workspace-query-runner.service'; import { IntelligenceService } from 'src/engine/modules/quick-actions/intelligence.service'; import { capitalize } from 'src/utils/capitalize'; diff --git a/packages/twenty-server/src/engine/modules/user-workspace/user-workspace.service.ts b/packages/twenty-server/src/engine/modules/user-workspace/user-workspace.service.ts index 269a75c7691..e6cacc139a6 100644 --- a/packages/twenty-server/src/engine/modules/user-workspace/user-workspace.service.ts +++ b/packages/twenty-server/src/engine/modules/user-workspace/user-workspace.service.ts @@ -9,8 +9,8 @@ import { TypeORMService } from 'src/database/typeorm/typeorm.service'; import { DataSourceService } from 'src/engine-metadata/data-source/data-source.service'; import { User } from 'src/engine/modules/user/user.entity'; import { WorkspaceDataSourceService } from 'src/engine/workspace-datasource/workspace-datasource.service'; -import { ObjectRecordCreateEvent } from 'src/integrations/event-emitter/types/object-record-create.event'; -import { WorkspaceMemberObjectMetadata } from 'src/business/modules/workspace/workspace-member.object-metadata'; +import { ObjectRecordCreateEvent } from 'src/engine/integrations/event-emitter/types/object-record-create.event'; +import { WorkspaceMemberObjectMetadata } from 'src/modules/workspace-member/standard-objects/workspace-member.object-metadata'; import { assert } from 'src/utils/assert'; export class UserWorkspaceService extends TypeOrmQueryService { diff --git a/packages/twenty-server/src/engine/modules/user/user.resolver.ts b/packages/twenty-server/src/engine/modules/user/user.resolver.ts index 8f0096b2f94..a909829f2f4 100644 --- a/packages/twenty-server/src/engine/modules/user/user.resolver.ts +++ b/packages/twenty-server/src/engine/modules/user/user.resolver.ts @@ -14,11 +14,11 @@ import crypto from 'crypto'; import { FileUpload, GraphQLUpload } from 'graphql-upload'; import { Repository } from 'typeorm'; -import { SupportDriver } from 'src/integrations/environment/interfaces/support.interface'; +import { SupportDriver } from 'src/engine/integrations/environment/interfaces/support.interface'; import { FileFolder } from 'src/engine/modules/file/interfaces/file-folder.interface'; import { AuthUser } from 'src/engine/decorators/auth/auth-user.decorator'; -import { EnvironmentService } from 'src/integrations/environment/environment.service'; +import { EnvironmentService } from 'src/engine/integrations/environment/environment.service'; import { streamToBuffer } from 'src/utils/stream-to-buffer'; import { FileUploadService } from 'src/engine/modules/file/services/file-upload.service'; import { assert } from 'src/utils/assert'; diff --git a/packages/twenty-server/src/engine/modules/workspace/workspace.resolver.ts b/packages/twenty-server/src/engine/modules/workspace/workspace.resolver.ts index 266b7e50228..b83cad9f2e8 100644 --- a/packages/twenty-server/src/engine/modules/workspace/workspace.resolver.ts +++ b/packages/twenty-server/src/engine/modules/workspace/workspace.resolver.ts @@ -18,7 +18,7 @@ import { AuthWorkspace } from 'src/engine/decorators/auth/auth-workspace.decorat import { assert } from 'src/utils/assert'; import { JwtAuthGuard } from 'src/engine/guards/jwt.auth.guard'; import { UpdateWorkspaceInput } from 'src/engine/modules/workspace/dtos/update-workspace-input'; -import { EnvironmentService } from 'src/integrations/environment/environment.service'; +import { EnvironmentService } from 'src/engine/integrations/environment/environment.service'; import { User } from 'src/engine/modules/user/user.entity'; import { AuthUser } from 'src/engine/decorators/auth/auth-user.decorator'; import { ActivateWorkspaceInput } from 'src/engine/modules/workspace/dtos/activate-workspace-input'; diff --git a/packages/twenty-server/src/engine-workspace/utils/__tests__/deduce-relation-direction.spec.ts b/packages/twenty-server/src/engine/utils/__tests__/deduce-relation-direction.spec.ts similarity index 98% rename from packages/twenty-server/src/engine-workspace/utils/__tests__/deduce-relation-direction.spec.ts rename to packages/twenty-server/src/engine/utils/__tests__/deduce-relation-direction.spec.ts index 764320b4911..fb8261818e5 100644 --- a/packages/twenty-server/src/engine-workspace/utils/__tests__/deduce-relation-direction.spec.ts +++ b/packages/twenty-server/src/engine/utils/__tests__/deduce-relation-direction.spec.ts @@ -6,7 +6,7 @@ import { RelationMetadataType } from 'src/engine-metadata/relation-metadata/rela import { deduceRelationDirection, RelationDirection, -} from 'src/engine-workspace/utils/deduce-relation-direction.util'; +} from 'src/engine/utils/deduce-relation-direction.util'; describe('deduceRelationDirection', () => { it('should return FROM when the current object Metadata ID matches fromObjectMetadataId and id matches fromFieldMetadataId', () => { diff --git a/packages/twenty-server/src/engine-workspace/utils/__tests__/get-resolver-name.spec.ts b/packages/twenty-server/src/engine/utils/__tests__/get-resolver-name.spec.ts similarity index 84% rename from packages/twenty-server/src/engine-workspace/utils/__tests__/get-resolver-name.spec.ts rename to packages/twenty-server/src/engine/utils/__tests__/get-resolver-name.spec.ts index ebb8d7f7634..16560a4e63d 100644 --- a/packages/twenty-server/src/engine-workspace/utils/__tests__/get-resolver-name.spec.ts +++ b/packages/twenty-server/src/engine/utils/__tests__/get-resolver-name.spec.ts @@ -1,6 +1,6 @@ -import { WorkspaceResolverBuilderMethodNames } from 'src/engine/graphql/workspace-resolver-builder/interfaces/workspace-resolvers-builder.interface'; +import { WorkspaceResolverBuilderMethodNames } from 'src/engine/api/graphql/workspace-resolver-builder/interfaces/workspace-resolvers-builder.interface'; -import { getResolverName } from 'src/engine-workspace/utils/get-resolver-name.util'; +import { getResolverName } from 'src/engine/utils/get-resolver-name.util'; describe('getResolverName', () => { const metadata = { diff --git a/packages/twenty-server/src/engine-workspace/utils/compute-custom-name.util.ts b/packages/twenty-server/src/engine/utils/compute-custom-name.util.ts similarity index 100% rename from packages/twenty-server/src/engine-workspace/utils/compute-custom-name.util.ts rename to packages/twenty-server/src/engine/utils/compute-custom-name.util.ts diff --git a/packages/twenty-server/src/engine-workspace/utils/compute-object-target-table.util.ts b/packages/twenty-server/src/engine/utils/compute-object-target-table.util.ts similarity index 100% rename from packages/twenty-server/src/engine-workspace/utils/compute-object-target-table.util.ts rename to packages/twenty-server/src/engine/utils/compute-object-target-table.util.ts diff --git a/packages/twenty-server/src/engine-workspace/utils/deduce-relation-direction.util.ts b/packages/twenty-server/src/engine/utils/deduce-relation-direction.util.ts similarity index 100% rename from packages/twenty-server/src/engine-workspace/utils/deduce-relation-direction.util.ts rename to packages/twenty-server/src/engine/utils/deduce-relation-direction.util.ts diff --git a/packages/twenty-server/src/engine-workspace/utils/get-resolver-name.util.ts b/packages/twenty-server/src/engine/utils/get-resolver-name.util.ts similarity index 94% rename from packages/twenty-server/src/engine-workspace/utils/get-resolver-name.util.ts rename to packages/twenty-server/src/engine/utils/get-resolver-name.util.ts index 6440fbceb6e..25ac725369b 100644 --- a/packages/twenty-server/src/engine-workspace/utils/get-resolver-name.util.ts +++ b/packages/twenty-server/src/engine/utils/get-resolver-name.util.ts @@ -1,4 +1,4 @@ -import { WorkspaceResolverBuilderMethodNames } from 'src/engine/graphql/workspace-resolver-builder/interfaces/workspace-resolvers-builder.interface'; +import { WorkspaceResolverBuilderMethodNames } from 'src/engine/api/graphql/workspace-resolver-builder/interfaces/workspace-resolvers-builder.interface'; import { ObjectMetadataInterface } from 'src/engine-metadata/field-metadata/interfaces/object-metadata.interface'; import { camelCase } from 'src/utils/camel-case'; diff --git a/packages/twenty-server/src/engine-workspace/utils/is-relation-field-metadata-type.util.ts b/packages/twenty-server/src/engine/utils/is-relation-field-metadata-type.util.ts similarity index 100% rename from packages/twenty-server/src/engine-workspace/utils/is-relation-field-metadata-type.util.ts rename to packages/twenty-server/src/engine/utils/is-relation-field-metadata-type.util.ts diff --git a/packages/twenty-server/src/engine-workspace/utils/render-apollo-playground.util.ts b/packages/twenty-server/src/engine/utils/render-apollo-playground.util.ts similarity index 100% rename from packages/twenty-server/src/engine-workspace/utils/render-apollo-playground.util.ts rename to packages/twenty-server/src/engine/utils/render-apollo-playground.util.ts diff --git a/packages/twenty-server/src/engine/workspace-manager/workspace-cleaner/commands/clean-inactive-workspaces.command.ts b/packages/twenty-server/src/engine/workspace-manager/workspace-cleaner/commands/clean-inactive-workspaces.command.ts index 1c08a9adf59..822fd2e94fd 100644 --- a/packages/twenty-server/src/engine/workspace-manager/workspace-cleaner/commands/clean-inactive-workspaces.command.ts +++ b/packages/twenty-server/src/engine/workspace-manager/workspace-cleaner/commands/clean-inactive-workspaces.command.ts @@ -2,8 +2,8 @@ import { Inject } from '@nestjs/common'; import { Command, CommandRunner, Option } from 'nest-commander'; -import { MessageQueue } from 'src/integrations/message-queue/message-queue.constants'; -import { MessageQueueService } from 'src/integrations/message-queue/services/message-queue.service'; +import { MessageQueue } from 'src/engine/integrations/message-queue/message-queue.constants'; +import { MessageQueueService } from 'src/engine/integrations/message-queue/services/message-queue.service'; import { CleanInactiveWorkspaceJob } from 'src/engine/workspace-manager/workspace-cleaner/crons/clean-inactive-workspace.job'; export type CleanInactiveWorkspacesCommandOptions = { diff --git a/packages/twenty-server/src/engine/workspace-manager/workspace-cleaner/commands/start-clean-inactive-workspaces.cron.command.ts b/packages/twenty-server/src/engine/workspace-manager/workspace-cleaner/commands/start-clean-inactive-workspaces.cron.command.ts index e17beb2ebd3..6188b7faf00 100644 --- a/packages/twenty-server/src/engine/workspace-manager/workspace-cleaner/commands/start-clean-inactive-workspaces.cron.command.ts +++ b/packages/twenty-server/src/engine/workspace-manager/workspace-cleaner/commands/start-clean-inactive-workspaces.cron.command.ts @@ -2,8 +2,8 @@ import { Inject } from '@nestjs/common'; import { Command, CommandRunner } from 'nest-commander'; -import { MessageQueue } from 'src/integrations/message-queue/message-queue.constants'; -import { MessageQueueService } from 'src/integrations/message-queue/services/message-queue.service'; +import { MessageQueue } from 'src/engine/integrations/message-queue/message-queue.constants'; +import { MessageQueueService } from 'src/engine/integrations/message-queue/services/message-queue.service'; import { cleanInactiveWorkspaceCronPattern } from 'src/engine/workspace-manager/workspace-cleaner/crons/clean-inactive-workspace.cron.pattern'; import { CleanInactiveWorkspaceJob } from 'src/engine/workspace-manager/workspace-cleaner/crons/clean-inactive-workspace.job'; diff --git a/packages/twenty-server/src/engine/workspace-manager/workspace-cleaner/commands/stop-clean-inactive-workspaces.cron.command.ts b/packages/twenty-server/src/engine/workspace-manager/workspace-cleaner/commands/stop-clean-inactive-workspaces.cron.command.ts index 8c61a5a3789..1dd6dd85e65 100644 --- a/packages/twenty-server/src/engine/workspace-manager/workspace-cleaner/commands/stop-clean-inactive-workspaces.cron.command.ts +++ b/packages/twenty-server/src/engine/workspace-manager/workspace-cleaner/commands/stop-clean-inactive-workspaces.cron.command.ts @@ -2,8 +2,8 @@ import { Inject } from '@nestjs/common'; import { Command, CommandRunner } from 'nest-commander'; -import { MessageQueue } from 'src/integrations/message-queue/message-queue.constants'; -import { MessageQueueService } from 'src/integrations/message-queue/services/message-queue.service'; +import { MessageQueue } from 'src/engine/integrations/message-queue/message-queue.constants'; +import { MessageQueueService } from 'src/engine/integrations/message-queue/services/message-queue.service'; import { cleanInactiveWorkspaceCronPattern } from 'src/engine/workspace-manager/workspace-cleaner/crons/clean-inactive-workspace.cron.pattern'; import { CleanInactiveWorkspaceJob } from 'src/engine/workspace-manager/workspace-cleaner/crons/clean-inactive-workspace.job'; diff --git a/packages/twenty-server/src/engine/workspace-manager/workspace-cleaner/crons/clean-inactive-workspace.job.ts b/packages/twenty-server/src/engine/workspace-manager/workspace-cleaner/crons/clean-inactive-workspace.job.ts index 4c9f71eddb3..af75e69bb23 100644 --- a/packages/twenty-server/src/engine/workspace-manager/workspace-cleaner/crons/clean-inactive-workspace.job.ts +++ b/packages/twenty-server/src/engine/workspace-manager/workspace-cleaner/crons/clean-inactive-workspace.job.ts @@ -7,17 +7,17 @@ import { DeleteInactiveWorkspaceEmail, } from 'twenty-emails'; -import { MessageQueueJob } from 'src/integrations/message-queue/interfaces/message-queue-job.interface'; +import { MessageQueueJob } from 'src/engine/integrations/message-queue/interfaces/message-queue-job.interface'; import { ObjectMetadataService } from 'src/engine-metadata/object-metadata/object-metadata.service'; import { DataSourceService } from 'src/engine-metadata/data-source/data-source.service'; import { TypeORMService } from 'src/database/typeorm/typeorm.service'; import { DataSourceEntity } from 'src/engine-metadata/data-source/data-source.entity'; import { UserService } from 'src/engine/modules/user/services/user.service'; -import { EmailService } from 'src/integrations/email/email.service'; -import { EnvironmentService } from 'src/integrations/environment/environment.service'; +import { EmailService } from 'src/engine/integrations/email/email.service'; +import { EnvironmentService } from 'src/engine/integrations/environment/environment.service'; import { ObjectMetadataEntity } from 'src/engine-metadata/object-metadata/object-metadata.entity'; -import { computeObjectTargetTable } from 'src/engine-workspace/utils/compute-object-target-table.util'; +import { computeObjectTargetTable } from 'src/engine/utils/compute-object-target-table.util'; import { CleanInactiveWorkspacesCommandOptions } from 'src/engine/workspace-manager/workspace-cleaner/commands/clean-inactive-workspaces.command'; import { getDryRunLogHeader } from 'src/utils/get-dry-run-log-header'; diff --git a/packages/twenty-server/src/engine/workspace-manager/workspace-health/commands/workspace-health.command.ts b/packages/twenty-server/src/engine/workspace-manager/workspace-health/commands/workspace-health.command.ts index 6d9bc0fcf6f..a54366e6bda 100644 --- a/packages/twenty-server/src/engine/workspace-manager/workspace-health/commands/workspace-health.command.ts +++ b/packages/twenty-server/src/engine/workspace-manager/workspace-health/commands/workspace-health.command.ts @@ -7,7 +7,7 @@ import { WorkspaceHealthMode } from 'src/engine/workspace-manager/workspace-heal import { WorkspaceHealthFixKind } from 'src/engine/workspace-manager/workspace-health/interfaces/workspace-health-fix-kind.interface'; import { WorkspaceHealthService } from 'src/engine/workspace-manager/workspace-health/workspace-health.service'; -import { CommandLogger } from 'src/commands/command-logger'; +import { CommandLogger } from 'src/command/command-logger'; interface WorkspaceHealthCommandOptions { workspaceId: string; diff --git a/packages/twenty-server/src/engine/workspace-manager/workspace-health/fixer/workspace-target-column-map.fixer.ts b/packages/twenty-server/src/engine/workspace-manager/workspace-health/fixer/workspace-target-column-map.fixer.ts index 649df369efb..57286171af1 100644 --- a/packages/twenty-server/src/engine/workspace-manager/workspace-health/fixer/workspace-target-column-map.fixer.ts +++ b/packages/twenty-server/src/engine/workspace-manager/workspace-health/fixer/workspace-target-column-map.fixer.ts @@ -13,7 +13,7 @@ import { ObjectMetadataEntity } from 'src/engine-metadata/object-metadata/object import { generateTargetColumnMap } from 'src/engine-metadata/field-metadata/utils/generate-target-column-map.util'; import { FieldMetadataEntity } from 'src/engine-metadata/field-metadata/field-metadata.entity'; import { WorkspaceMigrationEntity } from 'src/engine-metadata/workspace-migration/workspace-migration.entity'; -import { computeObjectTargetTable } from 'src/engine-workspace/utils/compute-object-target-table.util'; +import { computeObjectTargetTable } from 'src/engine/utils/compute-object-target-table.util'; import { DataSourceEntity } from 'src/engine-metadata/data-source/data-source.entity'; import { DatabaseStructureService } from 'src/engine/workspace-manager/workspace-health/services/database-structure.service'; import { WorkspaceMigrationFieldFactory } from 'src/engine/workspace-manager/workspace-migration-builder/factories/workspace-migration-field.factory'; diff --git a/packages/twenty-server/src/engine/workspace-manager/workspace-health/services/database-structure.service.ts b/packages/twenty-server/src/engine/workspace-manager/workspace-health/services/database-structure.service.ts index 44e0b472be1..65a2971c7a1 100644 --- a/packages/twenty-server/src/engine/workspace-manager/workspace-health/services/database-structure.service.ts +++ b/packages/twenty-server/src/engine/workspace-manager/workspace-health/services/database-structure.service.ts @@ -17,7 +17,7 @@ import { import { fieldMetadataTypeToColumnType } from 'src/engine-metadata/workspace-migration/utils/field-metadata-type-to-column-type.util'; import { serializeTypeDefaultValue } from 'src/engine-metadata/field-metadata/utils/serialize-type-default-value.util'; import { isCompositeFieldMetadataType } from 'src/engine-metadata/field-metadata/utils/is-composite-field-metadata-type.util'; -import { isRelationFieldMetadataType } from 'src/engine-workspace/utils/is-relation-field-metadata-type.util'; +import { isRelationFieldMetadataType } from 'src/engine/utils/is-relation-field-metadata-type.util'; @Injectable() export class DatabaseStructureService { diff --git a/packages/twenty-server/src/engine/workspace-manager/workspace-health/services/field-metadata-health.service.ts b/packages/twenty-server/src/engine/workspace-manager/workspace-health/services/field-metadata-health.service.ts index 1b4d4500997..098aac67a46 100644 --- a/packages/twenty-server/src/engine/workspace-manager/workspace-health/services/field-metadata-health.service.ts +++ b/packages/twenty-server/src/engine/workspace-manager/workspace-health/services/field-metadata-health.service.ts @@ -27,8 +27,8 @@ import { validateOptionsForType } from 'src/engine-metadata/field-metadata/utils import { serializeDefaultValue } from 'src/engine-metadata/field-metadata/utils/serialize-default-value'; import { computeCompositeFieldMetadata } from 'src/engine/workspace-manager/workspace-health/utils/compute-composite-field-metadata.util'; import { generateTargetColumnMap } from 'src/engine-metadata/field-metadata/utils/generate-target-column-map.util'; -import { customNamePrefix } from 'src/engine-workspace/utils/compute-custom-name.util'; -import { isRelationFieldMetadataType } from 'src/engine-workspace/utils/is-relation-field-metadata-type.util'; +import { customNamePrefix } from 'src/engine/utils/compute-custom-name.util'; +import { isRelationFieldMetadataType } from 'src/engine/utils/is-relation-field-metadata-type.util'; @Injectable() export class FieldMetadataHealthService { diff --git a/packages/twenty-server/src/engine/workspace-manager/workspace-health/services/object-metadata-health.service.ts b/packages/twenty-server/src/engine/workspace-manager/workspace-health/services/object-metadata-health.service.ts index 921b10e8bae..2d730b1ab4f 100644 --- a/packages/twenty-server/src/engine/workspace-manager/workspace-health/services/object-metadata-health.service.ts +++ b/packages/twenty-server/src/engine/workspace-manager/workspace-health/services/object-metadata-health.service.ts @@ -9,7 +9,7 @@ import { WorkspaceHealthOptions } from 'src/engine/workspace-manager/workspace-h import { ObjectMetadataEntity } from 'src/engine-metadata/object-metadata/object-metadata.entity'; import { validName } from 'src/engine/workspace-manager/workspace-health/utils/valid-name.util'; import { TypeORMService } from 'src/database/typeorm/typeorm.service'; -import { computeObjectTargetTable } from 'src/engine-workspace/utils/compute-object-target-table.util'; +import { computeObjectTargetTable } from 'src/engine/utils/compute-object-target-table.util'; @Injectable() export class ObjectMetadataHealthService { diff --git a/packages/twenty-server/src/engine/workspace-manager/workspace-health/services/relation-metadata.health.service.ts b/packages/twenty-server/src/engine/workspace-manager/workspace-health/services/relation-metadata.health.service.ts index 73597592a17..8433cc2e541 100644 --- a/packages/twenty-server/src/engine/workspace-manager/workspace-health/services/relation-metadata.health.service.ts +++ b/packages/twenty-server/src/engine/workspace-manager/workspace-health/services/relation-metadata.health.service.ts @@ -18,11 +18,11 @@ import { import { RelationDirection, deduceRelationDirection, -} from 'src/engine-workspace/utils/deduce-relation-direction.util'; +} from 'src/engine/utils/deduce-relation-direction.util'; import { ObjectMetadataEntity } from 'src/engine-metadata/object-metadata/object-metadata.entity'; import { createRelationForeignKeyColumnName } from 'src/engine-metadata/relation-metadata/utils/create-relation-foreign-key-column-name.util'; import { createRelationForeignKeyFieldMetadataName } from 'src/engine-metadata/relation-metadata/utils/create-relation-foreign-key-field-metadata-name.util'; -import { isRelationFieldMetadataType } from 'src/engine-workspace/utils/is-relation-field-metadata-type.util'; +import { isRelationFieldMetadataType } from 'src/engine/utils/is-relation-field-metadata-type.util'; import { convertOnDeleteActionToOnDelete } from 'src/engine/workspace-manager/workspace-migration-runner/utils/convert-on-delete-action-to-on-delete.util'; @Injectable() diff --git a/packages/twenty-server/src/engine/workspace-manager/workspace-health/workspace-health.service.ts b/packages/twenty-server/src/engine/workspace-manager/workspace-health/workspace-health.service.ts index 896d71560e3..70c3cd316a1 100644 --- a/packages/twenty-server/src/engine/workspace-manager/workspace-health/workspace-health.service.ts +++ b/packages/twenty-server/src/engine/workspace-manager/workspace-health/workspace-health.service.ts @@ -18,7 +18,7 @@ import { ObjectMetadataHealthService } from 'src/engine/workspace-manager/worksp import { FieldMetadataHealthService } from 'src/engine/workspace-manager/workspace-health/services/field-metadata-health.service'; import { RelationMetadataHealthService } from 'src/engine/workspace-manager/workspace-health/services/relation-metadata.health.service'; import { DatabaseStructureService } from 'src/engine/workspace-manager/workspace-health/services/database-structure.service'; -import { computeObjectTargetTable } from 'src/engine-workspace/utils/compute-object-target-table.util'; +import { computeObjectTargetTable } from 'src/engine/utils/compute-object-target-table.util'; import { WorkspaceMigrationEntity } from 'src/engine-metadata/workspace-migration/workspace-migration.entity'; import { WorkspaceMigrationRunnerService } from 'src/engine/workspace-manager/workspace-migration-runner/workspace-migration-runner.service'; import { WorkspaceFixService } from 'src/engine/workspace-manager/workspace-health/services/workspace-fix.service'; diff --git a/packages/twenty-server/src/engine/workspace-manager/workspace-migration-builder/factories/workspace-migration-field.factory.ts b/packages/twenty-server/src/engine/workspace-manager/workspace-migration-builder/factories/workspace-migration-field.factory.ts index 2ea64c3844f..7608cbb862b 100644 --- a/packages/twenty-server/src/engine/workspace-manager/workspace-migration-builder/factories/workspace-migration-field.factory.ts +++ b/packages/twenty-server/src/engine/workspace-manager/workspace-migration-builder/factories/workspace-migration-field.factory.ts @@ -12,7 +12,7 @@ import { WorkspaceMigrationEntity, WorkspaceMigrationTableAction, } from 'src/engine-metadata/workspace-migration/workspace-migration.entity'; -import { computeObjectTargetTable } from 'src/engine-workspace/utils/compute-object-target-table.util'; +import { computeObjectTargetTable } from 'src/engine/utils/compute-object-target-table.util'; import { WorkspaceMigrationFactory } from 'src/engine-metadata/workspace-migration/workspace-migration.factory'; import { generateMigrationName } from 'src/engine-metadata/workspace-migration/utils/generate-migration-name.util'; diff --git a/packages/twenty-server/src/engine/workspace-manager/workspace-migration-builder/factories/workspace-migration-object.factory.ts b/packages/twenty-server/src/engine/workspace-manager/workspace-migration-builder/factories/workspace-migration-object.factory.ts index 4ea31bbd38a..e4118ddac00 100644 --- a/packages/twenty-server/src/engine/workspace-manager/workspace-migration-builder/factories/workspace-migration-object.factory.ts +++ b/packages/twenty-server/src/engine/workspace-manager/workspace-migration-builder/factories/workspace-migration-object.factory.ts @@ -9,7 +9,7 @@ import { WorkspaceMigrationEntity, WorkspaceMigrationTableAction, } from 'src/engine-metadata/workspace-migration/workspace-migration.entity'; -import { computeObjectTargetTable } from 'src/engine-workspace/utils/compute-object-target-table.util'; +import { computeObjectTargetTable } from 'src/engine/utils/compute-object-target-table.util'; import { WorkspaceMigrationFactory } from 'src/engine-metadata/workspace-migration/workspace-migration.factory'; import { generateMigrationName } from 'src/engine-metadata/workspace-migration/utils/generate-migration-name.util'; diff --git a/packages/twenty-server/src/engine/workspace-manager/workspace-migration-builder/factories/workspace-migration-relation.factory.ts b/packages/twenty-server/src/engine/workspace-manager/workspace-migration-builder/factories/workspace-migration-relation.factory.ts index dc0136aaa87..980d9172346 100644 --- a/packages/twenty-server/src/engine/workspace-manager/workspace-migration-builder/factories/workspace-migration-relation.factory.ts +++ b/packages/twenty-server/src/engine/workspace-manager/workspace-migration-builder/factories/workspace-migration-relation.factory.ts @@ -8,7 +8,7 @@ import { WorkspaceMigrationEntity, WorkspaceMigrationTableAction, } from 'src/engine-metadata/workspace-migration/workspace-migration.entity'; -import { computeObjectTargetTable } from 'src/engine-workspace/utils/compute-object-target-table.util'; +import { computeObjectTargetTable } from 'src/engine/utils/compute-object-target-table.util'; import { RelationMetadataEntity, RelationMetadataType, diff --git a/packages/twenty-server/src/engine/workspace-manager/workspace-sync-metadata/commands/services/sync-workspace-logger.service.ts b/packages/twenty-server/src/engine/workspace-manager/workspace-sync-metadata/commands/services/sync-workspace-logger.service.ts index 4ac081335a4..397834ff623 100644 --- a/packages/twenty-server/src/engine/workspace-manager/workspace-sync-metadata/commands/services/sync-workspace-logger.service.ts +++ b/packages/twenty-server/src/engine/workspace-manager/workspace-sync-metadata/commands/services/sync-workspace-logger.service.ts @@ -2,7 +2,7 @@ import { Injectable } from '@nestjs/common'; import { WorkspaceSyncStorage } from 'src/engine/workspace-manager/workspace-sync-metadata/storage/workspace-sync.storage'; import { WorkspaceMigrationEntity } from 'src/engine-metadata/workspace-migration/workspace-migration.entity'; -import { CommandLogger } from 'src/commands/command-logger'; +import { CommandLogger } from 'src/command/command-logger'; @Injectable() export class SyncWorkspaceLoggerService { diff --git a/packages/twenty-server/src/engine/workspace-manager/workspace-sync-metadata/custom-objects/custom.object-metadata.ts b/packages/twenty-server/src/engine/workspace-manager/workspace-sync-metadata/custom-objects/custom.object-metadata.ts index 86d727c1417..d1baad13c78 100644 --- a/packages/twenty-server/src/engine/workspace-manager/workspace-sync-metadata/custom-objects/custom.object-metadata.ts +++ b/packages/twenty-server/src/engine/workspace-manager/workspace-sync-metadata/custom-objects/custom.object-metadata.ts @@ -8,10 +8,10 @@ import { RelationMetadataType, RelationOnDeleteAction, } from 'src/engine-metadata/relation-metadata/relation-metadata.entity'; -import { ActivityTargetObjectMetadata } from 'src/business/modules/activity/activity-target.object-metadata'; +import { ActivityTargetObjectMetadata } from 'src/modules/activity/standard-objects/activity-target.object-metadata'; import { RelationMetadata } from 'src/engine/workspace-manager/workspace-sync-metadata/decorators/relation-metadata.decorator'; -import { FavoriteObjectMetadata } from 'src/business/modules/favorite/favorite.object-metadata'; -import { AttachmentObjectMetadata } from 'src/business/modules/attachment/attachment.object-metadata'; +import { FavoriteObjectMetadata } from 'src/modules/favorite/standard-objects/favorite.object-metadata'; +import { AttachmentObjectMetadata } from 'src/modules/attachment/standard-objects/attachment.object-metadata'; import { customObjectStandardFieldIds } from 'src/engine/workspace-manager/workspace-sync-metadata/constants/standard-field-ids'; @BaseCustomObjectMetadata() diff --git a/packages/twenty-server/src/engine/workspace-manager/workspace-sync-metadata/standard-objects/index.ts b/packages/twenty-server/src/engine/workspace-manager/workspace-sync-metadata/standard-objects/index.ts index e1ff8a4b257..0c3cfe2e024 100644 --- a/packages/twenty-server/src/engine/workspace-manager/workspace-sync-metadata/standard-objects/index.ts +++ b/packages/twenty-server/src/engine/workspace-manager/workspace-sync-metadata/standard-objects/index.ts @@ -1,30 +1,30 @@ -import { ActivityTargetObjectMetadata } from 'src/business/modules/activity/activity-target.object-metadata'; -import { ActivityObjectMetadata } from 'src/business/modules/activity/activity.object-metadata'; -import { ApiKeyObjectMetadata } from 'src/business/modules/api-key/api-key.object-metadata'; -import { AttachmentObjectMetadata } from 'src/business/modules/attachment/attachment.object-metadata'; -import { BlocklistObjectMetadata } from 'src/business/modules/calendar/blocklist.object-metadata'; -import { CalendarEventObjectMetadata } from 'src/business/modules/calendar/calendar-event.object-metadata'; -import { CalendarChannelObjectMetadata } from 'src/business/modules/calendar/calendar-channel.object-metadata'; -import { CalendarEventAttendeeObjectMetadata } from 'src/business/modules/calendar/calendar-event-attendee.object-metadata'; -import { CommentObjectMetadata } from 'src/business/modules/comment/comment.object-metadata'; -import { CompanyObjectMetadata } from 'src/business/modules/company/company.object-metadata'; -import { ConnectedAccountObjectMetadata } from 'src/business/modules/connected-account/connected-account.object-metadata'; -import { FavoriteObjectMetadata } from 'src/business/modules/favorite/favorite.object-metadata'; -import { MessageChannelMessageAssociationObjectMetadata } from 'src/business/modules/message/message-channel-message-association.object-metadata'; -import { MessageChannelObjectMetadata } from 'src/business/modules/message/message-channel.object-metadata'; -import { MessageParticipantObjectMetadata } from 'src/business/modules/message/message-participant.object-metadata'; -import { MessageThreadObjectMetadata } from 'src/business/modules/message/message-thread.object-metadata'; -import { MessageObjectMetadata } from 'src/business/modules/message/message.object-metadata'; -import { OpportunityObjectMetadata } from 'src/business/modules/opportunity/opportunity.object-metadata'; -import { PersonObjectMetadata } from 'src/business/modules/person/person.object-metadata'; -import { PipelineStepObjectMetadata } from 'src/business/modules/pipeline-step/pipeline-step.object-metadata'; -import { ViewFieldObjectMetadata } from 'src/business/modules/view/view-field.object-metadata'; -import { ViewFilterObjectMetadata } from 'src/business/modules/view/view-filter.object-metadata'; -import { ViewSortObjectMetadata } from 'src/business/modules/view/view-sort.object-metadata'; -import { ViewObjectMetadata } from 'src/business/modules/view/view.object-metadata'; -import { WebhookObjectMetadata } from 'src/business/modules/webhook/webhook.object-metadata'; -import { WorkspaceMemberObjectMetadata } from 'src/business/modules/workspace/workspace-member.object-metadata'; -import { CalendarChannelEventAssociationObjectMetadata } from 'src/business/modules/calendar/calendar-channel-event-association.object-metadata'; +import { ActivityTargetObjectMetadata } from 'src/modules/activity/standard-objects/activity-target.object-metadata'; +import { ActivityObjectMetadata } from 'src/modules/activity/standard-objects/activity.object-metadata'; +import { ApiKeyObjectMetadata } from 'src/modules/api-key/standard-objects/api-key.object-metadata'; +import { AttachmentObjectMetadata } from 'src/modules/attachment/standard-objects/attachment.object-metadata'; +import { BlocklistObjectMetadata } from 'src/modules/connected-account/standard-objects/blocklist.object-metadata'; +import { CalendarEventObjectMetadata } from 'src/modules/calendar/standard-objects/calendar-event.object-metadata'; +import { CalendarChannelObjectMetadata } from 'src/modules/calendar/standard-objects/calendar-channel.object-metadata'; +import { CalendarEventAttendeeObjectMetadata } from 'src/modules/calendar/standard-objects/calendar-event-attendee.object-metadata'; +import { CommentObjectMetadata } from 'src/modules/activity/standard-objects/comment.object-metadata'; +import { CompanyObjectMetadata } from 'src/modules/company/standard-objects/company.object-metadata'; +import { ConnectedAccountObjectMetadata } from 'src/modules/connected-account/standard-objects/connected-account.object-metadata'; +import { FavoriteObjectMetadata } from 'src/modules/favorite/standard-objects/favorite.object-metadata'; +import { MessageChannelMessageAssociationObjectMetadata } from 'src/modules/messaging/standard-objects/message-channel-message-association.object-metadata'; +import { MessageChannelObjectMetadata } from 'src/modules/messaging/standard-objects/message-channel.object-metadata'; +import { MessageParticipantObjectMetadata } from 'src/modules/messaging/standard-objects/message-participant.object-metadata'; +import { MessageThreadObjectMetadata } from 'src/modules/messaging/standard-objects/message-thread.object-metadata'; +import { MessageObjectMetadata } from 'src/modules/messaging/standard-objects/message.object-metadata'; +import { OpportunityObjectMetadata } from 'src/modules/opportunity/standard-objects/opportunity.object-metadata'; +import { PersonObjectMetadata } from 'src/modules/person/standard-objects/person.object-metadata'; +import { PipelineStepObjectMetadata } from 'src/modules/pipeline-step/standard-objects/pipeline-step.object-metadata'; +import { ViewFieldObjectMetadata } from 'src/modules/view/standard-objects/view-field.object-metadata'; +import { ViewFilterObjectMetadata } from 'src/modules/view/standard-objects/view-filter.object-metadata'; +import { ViewSortObjectMetadata } from 'src/modules/view/standard-objects/view-sort.object-metadata'; +import { ViewObjectMetadata } from 'src/modules/view/standard-objects/view.object-metadata'; +import { WebhookObjectMetadata } from 'src/modules/webhook/standard-objects/webhook.object-metadata'; +import { WorkspaceMemberObjectMetadata } from 'src/modules/workspace-member/standard-objects/workspace-member.object-metadata'; +import { CalendarChannelEventAssociationObjectMetadata } from 'src/modules/calendar/standard-objects/calendar-channel-event-association.object-metadata'; export const standardObjectMetadataDefinitions = [ ActivityTargetObjectMetadata, diff --git a/packages/twenty-server/src/main.ts b/packages/twenty-server/src/main.ts index 7beec44acd5..80b0543e481 100644 --- a/packages/twenty-server/src/main.ts +++ b/packages/twenty-server/src/main.ts @@ -11,8 +11,8 @@ import '@sentry/tracing'; import { AppModule } from './app.module'; import { settings } from './engine/constants/settings'; -import { LoggerService } from './integrations/logger/logger.service'; -import { EnvironmentService } from './integrations/environment/environment.service'; +import { LoggerService } from './engine/integrations/logger/logger.service'; +import { EnvironmentService } from './engine/integrations/environment/environment.service'; const bootstrap = async () => { const app = await NestFactory.create(AppModule, { diff --git a/packages/twenty-server/src/business/modules/activity/activity-target.object-metadata.ts b/packages/twenty-server/src/modules/activity/standard-objects/activity-target.object-metadata.ts similarity index 88% rename from packages/twenty-server/src/business/modules/activity/activity-target.object-metadata.ts rename to packages/twenty-server/src/modules/activity/standard-objects/activity-target.object-metadata.ts index 7bae811c474..1a39445b047 100644 --- a/packages/twenty-server/src/business/modules/activity/activity-target.object-metadata.ts +++ b/packages/twenty-server/src/modules/activity/standard-objects/activity-target.object-metadata.ts @@ -7,11 +7,11 @@ import { FieldMetadata } from 'src/engine/workspace-manager/workspace-sync-metad import { IsNullable } from 'src/engine/workspace-manager/workspace-sync-metadata/decorators/is-nullable.decorator'; import { IsSystem } from 'src/engine/workspace-manager/workspace-sync-metadata/decorators/is-system.decorator'; import { ObjectMetadata } from 'src/engine/workspace-manager/workspace-sync-metadata/decorators/object-metadata.decorator'; -import { ActivityObjectMetadata } from 'src/business/modules/activity/activity.object-metadata'; +import { ActivityObjectMetadata } from 'src/modules/activity/standard-objects/activity.object-metadata'; import { BaseObjectMetadata } from 'src/engine/workspace-manager/workspace-sync-metadata/standard-objects/base.object-metadata'; -import { CompanyObjectMetadata } from 'src/business/modules/company/company.object-metadata'; -import { OpportunityObjectMetadata } from 'src/business/modules/opportunity/opportunity.object-metadata'; -import { PersonObjectMetadata } from 'src/business/modules/person/person.object-metadata'; +import { CompanyObjectMetadata } from 'src/modules/company/standard-objects/company.object-metadata'; +import { OpportunityObjectMetadata } from 'src/modules/opportunity/standard-objects/opportunity.object-metadata'; +import { PersonObjectMetadata } from 'src/modules/person/standard-objects/person.object-metadata'; @ObjectMetadata({ standardId: standardObjectIds.activityTarget, diff --git a/packages/twenty-server/src/business/modules/activity/activity.object-metadata.ts b/packages/twenty-server/src/modules/activity/standard-objects/activity.object-metadata.ts similarity index 90% rename from packages/twenty-server/src/business/modules/activity/activity.object-metadata.ts rename to packages/twenty-server/src/modules/activity/standard-objects/activity.object-metadata.ts index 78f26dcad7b..d22cc6d267d 100644 --- a/packages/twenty-server/src/business/modules/activity/activity.object-metadata.ts +++ b/packages/twenty-server/src/modules/activity/standard-objects/activity.object-metadata.ts @@ -7,11 +7,11 @@ import { IsNullable } from 'src/engine/workspace-manager/workspace-sync-metadata import { IsSystem } from 'src/engine/workspace-manager/workspace-sync-metadata/decorators/is-system.decorator'; import { ObjectMetadata } from 'src/engine/workspace-manager/workspace-sync-metadata/decorators/object-metadata.decorator'; import { RelationMetadata } from 'src/engine/workspace-manager/workspace-sync-metadata/decorators/relation-metadata.decorator'; -import { ActivityTargetObjectMetadata } from 'src/business/modules/activity/activity-target.object-metadata'; -import { AttachmentObjectMetadata } from 'src/business/modules/attachment/attachment.object-metadata'; +import { ActivityTargetObjectMetadata } from 'src/modules/activity/standard-objects/activity-target.object-metadata'; +import { AttachmentObjectMetadata } from 'src/modules/attachment/standard-objects/attachment.object-metadata'; import { BaseObjectMetadata } from 'src/engine/workspace-manager/workspace-sync-metadata/standard-objects/base.object-metadata'; -import { CommentObjectMetadata } from 'src/business/modules/comment/comment.object-metadata'; -import { WorkspaceMemberObjectMetadata } from 'src/business/modules/workspace/workspace-member.object-metadata'; +import { CommentObjectMetadata } from 'src/modules/activity/standard-objects/comment.object-metadata'; +import { WorkspaceMemberObjectMetadata } from 'src/modules/workspace-member/standard-objects/workspace-member.object-metadata'; @ObjectMetadata({ standardId: standardObjectIds.activity, diff --git a/packages/twenty-server/src/business/modules/comment/comment.object-metadata.ts b/packages/twenty-server/src/modules/activity/standard-objects/comment.object-metadata.ts similarity index 88% rename from packages/twenty-server/src/business/modules/comment/comment.object-metadata.ts rename to packages/twenty-server/src/modules/activity/standard-objects/comment.object-metadata.ts index a0b964416b2..7fdb4595da7 100644 --- a/packages/twenty-server/src/business/modules/comment/comment.object-metadata.ts +++ b/packages/twenty-server/src/modules/activity/standard-objects/comment.object-metadata.ts @@ -4,9 +4,9 @@ import { standardObjectIds } from 'src/engine/workspace-manager/workspace-sync-m import { FieldMetadata } from 'src/engine/workspace-manager/workspace-sync-metadata/decorators/field-metadata.decorator'; import { IsSystem } from 'src/engine/workspace-manager/workspace-sync-metadata/decorators/is-system.decorator'; import { ObjectMetadata } from 'src/engine/workspace-manager/workspace-sync-metadata/decorators/object-metadata.decorator'; -import { ActivityObjectMetadata } from 'src/business/modules/activity/activity.object-metadata'; +import { ActivityObjectMetadata } from 'src/modules/activity/standard-objects/activity.object-metadata'; import { BaseObjectMetadata } from 'src/engine/workspace-manager/workspace-sync-metadata/standard-objects/base.object-metadata'; -import { WorkspaceMemberObjectMetadata } from 'src/business/modules/workspace/workspace-member.object-metadata'; +import { WorkspaceMemberObjectMetadata } from 'src/modules/workspace-member/standard-objects/workspace-member.object-metadata'; @ObjectMetadata({ standardId: standardObjectIds.comment, diff --git a/packages/twenty-server/src/business/modules/api-key/api-key.object-metadata.ts b/packages/twenty-server/src/modules/api-key/standard-objects/api-key.object-metadata.ts similarity index 100% rename from packages/twenty-server/src/business/modules/api-key/api-key.object-metadata.ts rename to packages/twenty-server/src/modules/api-key/standard-objects/api-key.object-metadata.ts diff --git a/packages/twenty-server/src/business/modules/attachment/attachment.object-metadata.ts b/packages/twenty-server/src/modules/attachment/standard-objects/attachment.object-metadata.ts similarity index 87% rename from packages/twenty-server/src/business/modules/attachment/attachment.object-metadata.ts rename to packages/twenty-server/src/modules/attachment/standard-objects/attachment.object-metadata.ts index d86d03c4735..470abe7a5c7 100644 --- a/packages/twenty-server/src/business/modules/attachment/attachment.object-metadata.ts +++ b/packages/twenty-server/src/modules/attachment/standard-objects/attachment.object-metadata.ts @@ -7,12 +7,12 @@ import { FieldMetadata } from 'src/engine/workspace-manager/workspace-sync-metad import { IsNullable } from 'src/engine/workspace-manager/workspace-sync-metadata/decorators/is-nullable.decorator'; import { IsSystem } from 'src/engine/workspace-manager/workspace-sync-metadata/decorators/is-system.decorator'; import { ObjectMetadata } from 'src/engine/workspace-manager/workspace-sync-metadata/decorators/object-metadata.decorator'; -import { ActivityObjectMetadata } from 'src/business/modules/activity/activity.object-metadata'; +import { ActivityObjectMetadata } from 'src/modules/activity/standard-objects/activity.object-metadata'; import { BaseObjectMetadata } from 'src/engine/workspace-manager/workspace-sync-metadata/standard-objects/base.object-metadata'; -import { CompanyObjectMetadata } from 'src/business/modules/company/company.object-metadata'; -import { OpportunityObjectMetadata } from 'src/business/modules/opportunity/opportunity.object-metadata'; -import { PersonObjectMetadata } from 'src/business/modules/person/person.object-metadata'; -import { WorkspaceMemberObjectMetadata } from 'src/business/modules/workspace/workspace-member.object-metadata'; +import { CompanyObjectMetadata } from 'src/modules/company/standard-objects/company.object-metadata'; +import { OpportunityObjectMetadata } from 'src/modules/opportunity/standard-objects/opportunity.object-metadata'; +import { PersonObjectMetadata } from 'src/modules/person/standard-objects/person.object-metadata'; +import { WorkspaceMemberObjectMetadata } from 'src/modules/workspace-member/standard-objects/workspace-member.object-metadata'; @ObjectMetadata({ standardId: standardObjectIds.attachment, diff --git a/packages/twenty-server/src/modules/calendar/calendar.module.ts b/packages/twenty-server/src/modules/calendar/calendar.module.ts new file mode 100644 index 00000000000..6d688c6c861 --- /dev/null +++ b/packages/twenty-server/src/modules/calendar/calendar.module.ts @@ -0,0 +1,41 @@ +import { Module } from '@nestjs/common'; +import { TypeOrmModule } from '@nestjs/typeorm'; + +import { FeatureFlagEntity } from 'src/engine/modules/feature-flag/feature-flag.entity'; +import { EnvironmentModule } from 'src/engine/integrations/environment/environment.module'; +import { CreateCompaniesAndContactsModule } from 'src/modules/connected-account/auto-companies-and-contacts-creation/create-company-and-contact/create-company-and-contact.module'; +import { BlocklistModule } from 'src/modules/connected-account/repositories/blocklist/blocklist.module'; +import { ConnectedAccountModule } from 'src/modules/connected-account/repositories/connected-account/connected-account.module'; +import { CalendarChannelEventAssociationModule } from 'src/modules/calendar/repositories/calendar-channel-event-association/calendar-channel-event-assocation.module'; +import { CalendarChannelModule } from 'src/modules/calendar/repositories/calendar-channel/calendar-channel.module'; +import { CalendarEventAttendeeModule } from 'src/modules/calendar/repositories/calendar-event-attendee/calendar-event-attendee.module'; +import { CalendarEventModule } from 'src/modules/calendar/repositories/calendar-event/calendar-event.module'; +import { CalendarEventCleanerModule } from 'src/modules/calendar/services/calendar-event-cleaner/calendar-event-cleaner.module'; +import { GoogleCalendarFullSyncService } from 'src/modules/calendar/services/google-calendar-full-sync.service'; +import { GoogleCalendarClientProvider } from 'src/modules/calendar/services/providers/google-calendar/google-calendar.provider'; +import { CompanyModule } from 'src/modules/messaging/repositories/company/company.module'; +import { PersonModule } from 'src/modules/person/repositories/person/person.module'; +import { WorkspaceMemberModule } from 'src/modules/workspace-member/repositories/workspace-member/workspace-member.module'; +import { WorkspaceDataSourceModule } from 'src/engine/workspace-datasource/workspace-datasource.module'; + +@Module({ + imports: [ + EnvironmentModule, + WorkspaceDataSourceModule, + ConnectedAccountModule, + CalendarChannelModule, + CalendarChannelEventAssociationModule, + CalendarEventModule, + CalendarEventAttendeeModule, + CreateCompaniesAndContactsModule, + WorkspaceMemberModule, + TypeOrmModule.forFeature([FeatureFlagEntity], 'core'), + CompanyModule, + PersonModule, + BlocklistModule, + CalendarEventCleanerModule, + ], + providers: [GoogleCalendarFullSyncService, GoogleCalendarClientProvider], + exports: [GoogleCalendarFullSyncService], +}) +export class CalendarModule {} diff --git a/packages/twenty-server/src/business/modules/calendar/commands/google-calendar-full-sync.command.ts b/packages/twenty-server/src/modules/calendar/commands/google-calendar-full-sync.command.ts similarity index 79% rename from packages/twenty-server/src/business/modules/calendar/commands/google-calendar-full-sync.command.ts rename to packages/twenty-server/src/modules/calendar/commands/google-calendar-full-sync.command.ts index 0ef73ee8fd0..4401d58f2ff 100644 --- a/packages/twenty-server/src/business/modules/calendar/commands/google-calendar-full-sync.command.ts +++ b/packages/twenty-server/src/modules/calendar/commands/google-calendar-full-sync.command.ts @@ -2,13 +2,13 @@ import { Inject } from '@nestjs/common'; import { Command, CommandRunner, Option } from 'nest-commander'; -import { MessageQueue } from 'src/integrations/message-queue/message-queue.constants'; -import { MessageQueueService } from 'src/integrations/message-queue/services/message-queue.service'; -import { ConnectedAccountService } from 'src/business/modules/calendar-and-messaging/repositories/connected-account/connected-account.service'; +import { MessageQueue } from 'src/engine/integrations/message-queue/message-queue.constants'; +import { MessageQueueService } from 'src/engine/integrations/message-queue/services/message-queue.service'; +import { ConnectedAccountService } from 'src/modules/connected-account/repositories/connected-account/connected-account.service'; import { GoogleCalendarFullSyncJobData, GoogleCalendarFullSyncJob, -} from 'src/business/modules/calendar/jobs/google-calendar-full-sync.job'; +} from 'src/modules/calendar/jobs/google-calendar-full-sync.job'; interface GoogleCalendarFullSyncOptions { workspaceId: string; diff --git a/packages/twenty-server/src/business/modules/calendar/commands/workspace-calendar-sync-commands.module.ts b/packages/twenty-server/src/modules/calendar/commands/workspace-calendar-sync-commands.module.ts similarity index 69% rename from packages/twenty-server/src/business/modules/calendar/commands/workspace-calendar-sync-commands.module.ts rename to packages/twenty-server/src/modules/calendar/commands/workspace-calendar-sync-commands.module.ts index a4ca0fc3a31..bcaa654bb3d 100644 --- a/packages/twenty-server/src/business/modules/calendar/commands/workspace-calendar-sync-commands.module.ts +++ b/packages/twenty-server/src/modules/calendar/commands/workspace-calendar-sync-commands.module.ts @@ -4,8 +4,8 @@ import { TypeOrmModule } from '@nestjs/typeorm'; import { FeatureFlagEntity } from 'src/engine/modules/feature-flag/feature-flag.entity'; import { TypeORMModule } from 'src/database/typeorm/typeorm.module'; import { DataSourceModule } from 'src/engine-metadata/data-source/data-source.module'; -import { ConnectedAccountModule } from 'src/business/modules/calendar-and-messaging/repositories/connected-account/connected-account.module'; -import { GoogleCalendarFullSyncCommand } from 'src/business/modules/calendar/commands/google-calendar-full-sync.command'; +import { ConnectedAccountModule } from 'src/modules/connected-account/repositories/connected-account/connected-account.module'; +import { GoogleCalendarFullSyncCommand } from 'src/modules/calendar/commands/google-calendar-full-sync.command'; @Module({ imports: [ diff --git a/packages/twenty-server/src/business/modules/calendar/jobs/google-calendar-full-sync.job.ts b/packages/twenty-server/src/modules/calendar/jobs/google-calendar-full-sync.job.ts similarity index 78% rename from packages/twenty-server/src/business/modules/calendar/jobs/google-calendar-full-sync.job.ts rename to packages/twenty-server/src/modules/calendar/jobs/google-calendar-full-sync.job.ts index 66066db5571..9759bbf6b77 100644 --- a/packages/twenty-server/src/business/modules/calendar/jobs/google-calendar-full-sync.job.ts +++ b/packages/twenty-server/src/modules/calendar/jobs/google-calendar-full-sync.job.ts @@ -1,9 +1,9 @@ import { Injectable, Logger } from '@nestjs/common'; -import { MessageQueueJob } from 'src/integrations/message-queue/interfaces/message-queue-job.interface'; +import { MessageQueueJob } from 'src/engine/integrations/message-queue/interfaces/message-queue-job.interface'; -import { GoogleAPIsRefreshAccessTokenService } from 'src/business/modules/calendar-and-messaging/services/google-apis-refresh-access-token.service'; -import { GoogleCalendarFullSyncService } from 'src/business/modules/calendar/services/google-calendar-full-sync.service'; +import { GoogleAPIsRefreshAccessTokenService } from 'src/modules/connected-account/services/google-apis-refresh-access-token.service'; +import { GoogleCalendarFullSyncService } from 'src/modules/calendar/services/google-calendar-full-sync.service'; export type GoogleCalendarFullSyncJobData = { workspaceId: string; diff --git a/packages/twenty-server/src/business/modules/calendar/repositories/calendar-channel-event-association/calendar-channel-event-assocation.module.ts b/packages/twenty-server/src/modules/calendar/repositories/calendar-channel-event-association/calendar-channel-event-assocation.module.ts similarity index 66% rename from packages/twenty-server/src/business/modules/calendar/repositories/calendar-channel-event-association/calendar-channel-event-assocation.module.ts rename to packages/twenty-server/src/modules/calendar/repositories/calendar-channel-event-association/calendar-channel-event-assocation.module.ts index 7c71211912b..2b044c87f6d 100644 --- a/packages/twenty-server/src/business/modules/calendar/repositories/calendar-channel-event-association/calendar-channel-event-assocation.module.ts +++ b/packages/twenty-server/src/modules/calendar/repositories/calendar-channel-event-association/calendar-channel-event-assocation.module.ts @@ -1,6 +1,6 @@ import { Module } from '@nestjs/common'; -import { CalendarChannelEventAssociationService } from 'src/business/modules/calendar/repositories/calendar-channel-event-association/calendar-channel-event-association.service'; +import { CalendarChannelEventAssociationService } from 'src/modules/calendar/repositories/calendar-channel-event-association/calendar-channel-event-association.service'; import { WorkspaceDataSourceModule } from 'src/engine/workspace-datasource/workspace-datasource.module'; @Module({ diff --git a/packages/twenty-server/src/business/modules/calendar/repositories/calendar-channel-event-association/calendar-channel-event-association.service.ts b/packages/twenty-server/src/modules/calendar/repositories/calendar-channel-event-association/calendar-channel-event-association.service.ts similarity index 96% rename from packages/twenty-server/src/business/modules/calendar/repositories/calendar-channel-event-association/calendar-channel-event-association.service.ts rename to packages/twenty-server/src/modules/calendar/repositories/calendar-channel-event-association/calendar-channel-event-association.service.ts index af8050d45c0..8ea4b89806c 100644 --- a/packages/twenty-server/src/business/modules/calendar/repositories/calendar-channel-event-association/calendar-channel-event-association.service.ts +++ b/packages/twenty-server/src/modules/calendar/repositories/calendar-channel-event-association/calendar-channel-event-association.service.ts @@ -4,8 +4,8 @@ import { EntityManager } from 'typeorm'; import { WorkspaceDataSourceService } from 'src/engine/workspace-datasource/workspace-datasource.service'; import { ObjectRecord } from 'src/engine/workspace-manager/workspace-sync-metadata/types/object-record'; -import { CalendarChannelEventAssociationObjectMetadata } from 'src/business/modules/calendar/calendar-channel-event-association.object-metadata'; -import { getFlattenedValuesAndValuesStringForBatchRawQuery } from 'src/business/modules/calendar-and-messaging/utils/getFlattenedValuesAndValuesStringForBatchRawQuery.util'; +import { CalendarChannelEventAssociationObjectMetadata } from 'src/modules/calendar/standard-objects/calendar-channel-event-association.object-metadata'; +import { getFlattenedValuesAndValuesStringForBatchRawQuery } from 'src/modules/calendar/utils/getFlattenedValuesAndValuesStringForBatchRawQuery.util'; @Injectable() export class CalendarChannelEventAssociationService { diff --git a/packages/twenty-server/src/business/modules/calendar/repositories/calendar-channel/calendar-channel.module.ts b/packages/twenty-server/src/modules/calendar/repositories/calendar-channel/calendar-channel.module.ts similarity index 71% rename from packages/twenty-server/src/business/modules/calendar/repositories/calendar-channel/calendar-channel.module.ts rename to packages/twenty-server/src/modules/calendar/repositories/calendar-channel/calendar-channel.module.ts index be0468f0604..3640b098400 100644 --- a/packages/twenty-server/src/business/modules/calendar/repositories/calendar-channel/calendar-channel.module.ts +++ b/packages/twenty-server/src/modules/calendar/repositories/calendar-channel/calendar-channel.module.ts @@ -1,6 +1,6 @@ import { Module } from '@nestjs/common'; -import { CalendarChannelService } from 'src/business/modules/calendar/repositories/calendar-channel/calendar-channel.service'; +import { CalendarChannelService } from 'src/modules/calendar/repositories/calendar-channel/calendar-channel.service'; import { WorkspaceDataSourceModule } from 'src/engine/workspace-datasource/workspace-datasource.module'; @Module({ diff --git a/packages/twenty-server/src/business/modules/calendar/repositories/calendar-channel/calendar-channel.service.ts b/packages/twenty-server/src/modules/calendar/repositories/calendar-channel/calendar-channel.service.ts similarity index 95% rename from packages/twenty-server/src/business/modules/calendar/repositories/calendar-channel/calendar-channel.service.ts rename to packages/twenty-server/src/modules/calendar/repositories/calendar-channel/calendar-channel.service.ts index 152e8c345eb..85921f68c54 100644 --- a/packages/twenty-server/src/business/modules/calendar/repositories/calendar-channel/calendar-channel.service.ts +++ b/packages/twenty-server/src/modules/calendar/repositories/calendar-channel/calendar-channel.service.ts @@ -3,7 +3,7 @@ import { Injectable } from '@nestjs/common'; import { EntityManager } from 'typeorm'; import { WorkspaceDataSourceService } from 'src/engine/workspace-datasource/workspace-datasource.service'; -import { CalendarChannelObjectMetadata } from 'src/business/modules/calendar/calendar-channel.object-metadata'; +import { CalendarChannelObjectMetadata } from 'src/modules/calendar/standard-objects/calendar-channel.object-metadata'; import { ObjectRecord } from 'src/engine/workspace-manager/workspace-sync-metadata/types/object-record'; @Injectable() diff --git a/packages/twenty-server/src/business/modules/calendar/repositories/calendar-event-attendee/calendar-event-attendee.module.ts b/packages/twenty-server/src/modules/calendar/repositories/calendar-event-attendee/calendar-event-attendee.module.ts similarity index 69% rename from packages/twenty-server/src/business/modules/calendar/repositories/calendar-event-attendee/calendar-event-attendee.module.ts rename to packages/twenty-server/src/modules/calendar/repositories/calendar-event-attendee/calendar-event-attendee.module.ts index 95ee36ceb89..64e015520cd 100644 --- a/packages/twenty-server/src/business/modules/calendar/repositories/calendar-event-attendee/calendar-event-attendee.module.ts +++ b/packages/twenty-server/src/modules/calendar/repositories/calendar-event-attendee/calendar-event-attendee.module.ts @@ -1,6 +1,6 @@ import { Module } from '@nestjs/common'; -import { CalendarEventAttendeeService } from 'src/business/modules/calendar/repositories/calendar-event-attendee/calendar-event-attendee.service'; +import { CalendarEventAttendeeService } from 'src/modules/calendar/repositories/calendar-event-attendee/calendar-event-attendee.service'; import { WorkspaceDataSourceModule } from 'src/engine/workspace-datasource/workspace-datasource.module'; @Module({ diff --git a/packages/twenty-server/src/business/modules/calendar/repositories/calendar-event-attendee/calendar-event-attendee.service.ts b/packages/twenty-server/src/modules/calendar/repositories/calendar-event-attendee/calendar-event-attendee.service.ts similarity index 93% rename from packages/twenty-server/src/business/modules/calendar/repositories/calendar-event-attendee/calendar-event-attendee.service.ts rename to packages/twenty-server/src/modules/calendar/repositories/calendar-event-attendee/calendar-event-attendee.service.ts index b5d168b9089..737604d6684 100644 --- a/packages/twenty-server/src/business/modules/calendar/repositories/calendar-event-attendee/calendar-event-attendee.service.ts +++ b/packages/twenty-server/src/modules/calendar/repositories/calendar-event-attendee/calendar-event-attendee.service.ts @@ -4,9 +4,9 @@ import { EntityManager } from 'typeorm'; import { WorkspaceDataSourceService } from 'src/engine/workspace-datasource/workspace-datasource.service'; import { ObjectRecord } from 'src/engine/workspace-manager/workspace-sync-metadata/types/object-record'; -import { CalendarEventAttendeeObjectMetadata } from 'src/business/modules/calendar/calendar-event-attendee.object-metadata'; -import { getFlattenedValuesAndValuesStringForBatchRawQuery } from 'src/business/modules/calendar-and-messaging/utils/getFlattenedValuesAndValuesStringForBatchRawQuery.util'; -import { CalendarEventAttendee } from 'src/business/modules/calendar/types/calendar-event'; +import { CalendarEventAttendeeObjectMetadata } from 'src/modules/calendar/standard-objects/calendar-event-attendee.object-metadata'; +import { getFlattenedValuesAndValuesStringForBatchRawQuery } from 'src/modules/calendar/utils/getFlattenedValuesAndValuesStringForBatchRawQuery.util'; +import { CalendarEventAttendee } from 'src/modules/calendar/types/calendar-event'; @Injectable() export class CalendarEventAttendeeService { diff --git a/packages/twenty-server/src/business/modules/calendar/repositories/calendar-event/calendar-event.module.ts b/packages/twenty-server/src/modules/calendar/repositories/calendar-event/calendar-event.module.ts similarity index 71% rename from packages/twenty-server/src/business/modules/calendar/repositories/calendar-event/calendar-event.module.ts rename to packages/twenty-server/src/modules/calendar/repositories/calendar-event/calendar-event.module.ts index 5285bfb0443..7d501958f86 100644 --- a/packages/twenty-server/src/business/modules/calendar/repositories/calendar-event/calendar-event.module.ts +++ b/packages/twenty-server/src/modules/calendar/repositories/calendar-event/calendar-event.module.ts @@ -1,6 +1,6 @@ import { Module } from '@nestjs/common'; -import { CalendarEventService } from 'src/business/modules/calendar/repositories/calendar-event/calendar-event.service'; +import { CalendarEventService } from 'src/modules/calendar/repositories/calendar-event/calendar-event.service'; import { WorkspaceDataSourceModule } from 'src/engine/workspace-datasource/workspace-datasource.module'; @Module({ diff --git a/packages/twenty-server/src/business/modules/calendar/repositories/calendar-event/calendar-event.service.ts b/packages/twenty-server/src/modules/calendar/repositories/calendar-event/calendar-event.service.ts similarity index 93% rename from packages/twenty-server/src/business/modules/calendar/repositories/calendar-event/calendar-event.service.ts rename to packages/twenty-server/src/modules/calendar/repositories/calendar-event/calendar-event.service.ts index 3316d12e98b..2a0d8101463 100644 --- a/packages/twenty-server/src/business/modules/calendar/repositories/calendar-event/calendar-event.service.ts +++ b/packages/twenty-server/src/modules/calendar/repositories/calendar-event/calendar-event.service.ts @@ -4,10 +4,10 @@ import { EntityManager } from 'typeorm'; import { WorkspaceDataSourceService } from 'src/engine/workspace-datasource/workspace-datasource.service'; import { ObjectRecord } from 'src/engine/workspace-manager/workspace-sync-metadata/types/object-record'; -import { CalendarEventObjectMetadata } from 'src/business/modules/calendar/calendar-event.object-metadata'; -import { getFlattenedValuesAndValuesStringForBatchRawQuery } from 'src/business/modules/calendar-and-messaging/utils/getFlattenedValuesAndValuesStringForBatchRawQuery.util'; -import { CalendarEvent } from 'src/business/modules/calendar/types/calendar-event'; -import { CalendarEventAttendeeObjectMetadata } from 'src/business/modules/calendar/calendar-event-attendee.object-metadata'; +import { CalendarEventObjectMetadata } from 'src/modules/calendar/standard-objects/calendar-event.object-metadata'; +import { getFlattenedValuesAndValuesStringForBatchRawQuery } from 'src/modules/calendar/utils/getFlattenedValuesAndValuesStringForBatchRawQuery.util'; +import { CalendarEvent } from 'src/modules/calendar/types/calendar-event'; +import { CalendarEventAttendeeObjectMetadata } from 'src/modules/calendar/standard-objects/calendar-event-attendee.object-metadata'; @Injectable() export class CalendarEventService { diff --git a/packages/twenty-server/src/business/modules/calendar/services/calendar-event-cleaner/calendar-event-cleaner.module.ts b/packages/twenty-server/src/modules/calendar/services/calendar-event-cleaner/calendar-event-cleaner.module.ts similarity index 61% rename from packages/twenty-server/src/business/modules/calendar/services/calendar-event-cleaner/calendar-event-cleaner.module.ts rename to packages/twenty-server/src/modules/calendar/services/calendar-event-cleaner/calendar-event-cleaner.module.ts index b76f322d5dc..98c1df1fb18 100644 --- a/packages/twenty-server/src/business/modules/calendar/services/calendar-event-cleaner/calendar-event-cleaner.module.ts +++ b/packages/twenty-server/src/modules/calendar/services/calendar-event-cleaner/calendar-event-cleaner.module.ts @@ -2,8 +2,8 @@ import { Module } from '@nestjs/common'; import { TypeORMModule } from 'src/database/typeorm/typeorm.module'; import { DataSourceModule } from 'src/engine-metadata/data-source/data-source.module'; -import { CalendarEventModule } from 'src/business/modules/calendar/repositories/calendar-event/calendar-event.module'; -import { CalendarEventCleanerService } from 'src/business/modules/calendar/services/calendar-event-cleaner/calendar-event-cleaner.service'; +import { CalendarEventModule } from 'src/modules/calendar/repositories/calendar-event/calendar-event.module'; +import { CalendarEventCleanerService } from 'src/modules/calendar/services/calendar-event-cleaner/calendar-event-cleaner.service'; @Module({ imports: [DataSourceModule, TypeORMModule, CalendarEventModule], diff --git a/packages/twenty-server/src/business/modules/calendar/services/calendar-event-cleaner/calendar-event-cleaner.service.ts b/packages/twenty-server/src/modules/calendar/services/calendar-event-cleaner/calendar-event-cleaner.service.ts similarity index 67% rename from packages/twenty-server/src/business/modules/calendar/services/calendar-event-cleaner/calendar-event-cleaner.service.ts rename to packages/twenty-server/src/modules/calendar/services/calendar-event-cleaner/calendar-event-cleaner.service.ts index 12a299541fc..c3128a326e5 100644 --- a/packages/twenty-server/src/business/modules/calendar/services/calendar-event-cleaner/calendar-event-cleaner.service.ts +++ b/packages/twenty-server/src/modules/calendar/services/calendar-event-cleaner/calendar-event-cleaner.service.ts @@ -1,7 +1,7 @@ import { Injectable } from '@nestjs/common'; -import { CalendarEventService } from 'src/business/modules/calendar/repositories/calendar-event/calendar-event.service'; -import { deleteUsingPagination } from 'src/business/modules/message/services/thread-cleaner/utils/delete-using-pagination.util'; +import { CalendarEventService } from 'src/modules/calendar/repositories/calendar-event/calendar-event.service'; +import { deleteUsingPagination } from 'src/modules/messaging/services/thread-cleaner/utils/delete-using-pagination.util'; @Injectable() export class CalendarEventCleanerService { diff --git a/packages/twenty-server/src/business/modules/calendar/services/google-calendar-full-sync.service.ts b/packages/twenty-server/src/modules/calendar/services/google-calendar-full-sync.service.ts similarity index 84% rename from packages/twenty-server/src/business/modules/calendar/services/google-calendar-full-sync.service.ts rename to packages/twenty-server/src/modules/calendar/services/google-calendar-full-sync.service.ts index 714dc8f3513..a5f10af877e 100644 --- a/packages/twenty-server/src/business/modules/calendar/services/google-calendar-full-sync.service.ts +++ b/packages/twenty-server/src/modules/calendar/services/google-calendar-full-sync.service.ts @@ -3,23 +3,23 @@ import { InjectRepository } from '@nestjs/typeorm'; import { Repository } from 'typeorm'; -import { ConnectedAccountService } from 'src/business/modules/calendar-and-messaging/repositories/connected-account/connected-account.service'; -import { BlocklistService } from 'src/business/modules/calendar-and-messaging/repositories/blocklist/blocklist.service'; +import { ConnectedAccountService } from 'src/modules/connected-account/repositories/connected-account/connected-account.service'; +import { BlocklistService } from 'src/modules/connected-account/repositories/blocklist/blocklist.service'; import { FeatureFlagEntity, FeatureFlagKeys, } from 'src/engine/modules/feature-flag/feature-flag.entity'; -import { GoogleCalendarClientProvider } from 'src/business/modules/calendar/services/providers/google-calendar/google-calendar.provider'; -import { googleCalendarSearchFilterExcludeEmails } from 'src/business/modules/calendar/utils/google-calendar-search-filter.util'; -import { CalendarChannelEventAssociationService } from 'src/business/modules/calendar/repositories/calendar-channel-event-association/calendar-channel-event-association.service'; -import { CalendarChannelService } from 'src/business/modules/calendar/repositories/calendar-channel/calendar-channel.service'; -import { MessageQueue } from 'src/integrations/message-queue/message-queue.constants'; -import { MessageQueueService } from 'src/integrations/message-queue/services/message-queue.service'; +import { GoogleCalendarClientProvider } from 'src/modules/calendar/services/providers/google-calendar/google-calendar.provider'; +import { googleCalendarSearchFilterExcludeEmails } from 'src/modules/calendar/utils/google-calendar-search-filter.util'; +import { CalendarChannelEventAssociationService } from 'src/modules/calendar/repositories/calendar-channel-event-association/calendar-channel-event-association.service'; +import { CalendarChannelService } from 'src/modules/calendar/repositories/calendar-channel/calendar-channel.service'; +import { MessageQueue } from 'src/engine/integrations/message-queue/message-queue.constants'; +import { MessageQueueService } from 'src/engine/integrations/message-queue/services/message-queue.service'; import { WorkspaceDataSourceService } from 'src/engine/workspace-datasource/workspace-datasource.service'; -import { CalendarEventService } from 'src/business/modules/calendar/repositories/calendar-event/calendar-event.service'; -import { formatGoogleCalendarEvent } from 'src/business/modules/calendar/utils/format-google-calendar-event.util'; -import { GoogleCalendarFullSyncJobData } from 'src/business/modules/calendar/jobs/google-calendar-full-sync.job'; -import { CalendarEventAttendeeService } from 'src/business/modules/calendar/repositories/calendar-event-attendee/calendar-event-attendee.service'; +import { CalendarEventService } from 'src/modules/calendar/repositories/calendar-event/calendar-event.service'; +import { formatGoogleCalendarEvent } from 'src/modules/calendar/utils/format-google-calendar-event.util'; +import { GoogleCalendarFullSyncJobData } from 'src/modules/calendar/jobs/google-calendar-full-sync.job'; +import { CalendarEventAttendeeService } from 'src/modules/calendar/repositories/calendar-event-attendee/calendar-event-attendee.service'; @Injectable() export class GoogleCalendarFullSyncService { diff --git a/packages/twenty-server/src/modules/calendar/services/providers/calendar-providers.module.ts b/packages/twenty-server/src/modules/calendar/services/providers/calendar-providers.module.ts new file mode 100644 index 00000000000..67f8064f7ad --- /dev/null +++ b/packages/twenty-server/src/modules/calendar/services/providers/calendar-providers.module.ts @@ -0,0 +1,11 @@ +import { Module } from '@nestjs/common'; + +import { EnvironmentModule } from 'src/engine/integrations/environment/environment.module'; +import { GoogleCalendarClientProvider } from 'src/modules/calendar/services/providers/google-calendar/google-calendar.provider'; + +@Module({ + imports: [EnvironmentModule], + providers: [GoogleCalendarClientProvider], + exports: [GoogleCalendarClientProvider], +}) +export class CalendarProvidersModule {} diff --git a/packages/twenty-server/src/business/modules/calendar/services/providers/google-calendar/google-calendar.provider.ts b/packages/twenty-server/src/modules/calendar/services/providers/google-calendar/google-calendar.provider.ts similarity index 92% rename from packages/twenty-server/src/business/modules/calendar/services/providers/google-calendar/google-calendar.provider.ts rename to packages/twenty-server/src/modules/calendar/services/providers/google-calendar/google-calendar.provider.ts index d93f7e9f869..6e2faa04e61 100644 --- a/packages/twenty-server/src/business/modules/calendar/services/providers/google-calendar/google-calendar.provider.ts +++ b/packages/twenty-server/src/modules/calendar/services/providers/google-calendar/google-calendar.provider.ts @@ -3,7 +3,7 @@ import { Injectable } from '@nestjs/common'; import { OAuth2Client } from 'google-auth-library'; import { calendar_v3 as calendarV3, google } from 'googleapis'; -import { EnvironmentService } from 'src/integrations/environment/environment.service'; +import { EnvironmentService } from 'src/engine/integrations/environment/environment.service'; @Injectable() export class GoogleCalendarClientProvider { diff --git a/packages/twenty-server/src/business/modules/calendar/calendar-channel-event-association.object-metadata.ts b/packages/twenty-server/src/modules/calendar/standard-objects/calendar-channel-event-association.object-metadata.ts similarity index 95% rename from packages/twenty-server/src/business/modules/calendar/calendar-channel-event-association.object-metadata.ts rename to packages/twenty-server/src/modules/calendar/standard-objects/calendar-channel-event-association.object-metadata.ts index 2aa9fefcb7b..01557560eba 100644 --- a/packages/twenty-server/src/business/modules/calendar/calendar-channel-event-association.object-metadata.ts +++ b/packages/twenty-server/src/modules/calendar/standard-objects/calendar-channel-event-association.object-metadata.ts @@ -7,7 +7,7 @@ import { Gate } from 'src/engine/workspace-manager/workspace-sync-metadata/decor import { IsSystem } from 'src/engine/workspace-manager/workspace-sync-metadata/decorators/is-system.decorator'; import { ObjectMetadata } from 'src/engine/workspace-manager/workspace-sync-metadata/decorators/object-metadata.decorator'; import { BaseObjectMetadata } from 'src/engine/workspace-manager/workspace-sync-metadata/standard-objects/base.object-metadata'; -import { CalendarEventObjectMetadata } from 'src/business/modules/calendar/calendar-event.object-metadata'; +import { CalendarEventObjectMetadata } from 'src/modules/calendar/standard-objects/calendar-event.object-metadata'; @ObjectMetadata({ standardId: standardObjectIds.calendarChannelEventAssociation, diff --git a/packages/twenty-server/src/business/modules/calendar/calendar-channel.object-metadata.ts b/packages/twenty-server/src/modules/calendar/standard-objects/calendar-channel.object-metadata.ts similarity index 95% rename from packages/twenty-server/src/business/modules/calendar/calendar-channel.object-metadata.ts rename to packages/twenty-server/src/modules/calendar/standard-objects/calendar-channel.object-metadata.ts index dbbc8529f06..dfeb0a2b522 100644 --- a/packages/twenty-server/src/business/modules/calendar/calendar-channel.object-metadata.ts +++ b/packages/twenty-server/src/modules/calendar/standard-objects/calendar-channel.object-metadata.ts @@ -11,8 +11,8 @@ import { Gate } from 'src/engine/workspace-manager/workspace-sync-metadata/decor import { IsSystem } from 'src/engine/workspace-manager/workspace-sync-metadata/decorators/is-system.decorator'; import { ObjectMetadata } from 'src/engine/workspace-manager/workspace-sync-metadata/decorators/object-metadata.decorator'; import { BaseObjectMetadata } from 'src/engine/workspace-manager/workspace-sync-metadata/standard-objects/base.object-metadata'; -import { ConnectedAccountObjectMetadata } from 'src/business/modules/connected-account/connected-account.object-metadata'; -import { CalendarChannelEventAssociationObjectMetadata } from 'src/business/modules/calendar/calendar-channel-event-association.object-metadata'; +import { ConnectedAccountObjectMetadata } from 'src/modules/connected-account/standard-objects/connected-account.object-metadata'; +import { CalendarChannelEventAssociationObjectMetadata } from 'src/modules/calendar/standard-objects/calendar-channel-event-association.object-metadata'; import { RelationMetadata } from 'src/engine/workspace-manager/workspace-sync-metadata/decorators/relation-metadata.decorator'; export enum CalendarChannelVisibility { diff --git a/packages/twenty-server/src/business/modules/calendar/calendar-event-attendee.object-metadata.ts b/packages/twenty-server/src/modules/calendar/standard-objects/calendar-event-attendee.object-metadata.ts similarity index 92% rename from packages/twenty-server/src/business/modules/calendar/calendar-event-attendee.object-metadata.ts rename to packages/twenty-server/src/modules/calendar/standard-objects/calendar-event-attendee.object-metadata.ts index 8507d5c3b94..2ba5c28789a 100644 --- a/packages/twenty-server/src/business/modules/calendar/calendar-event-attendee.object-metadata.ts +++ b/packages/twenty-server/src/modules/calendar/standard-objects/calendar-event-attendee.object-metadata.ts @@ -7,9 +7,9 @@ import { IsNullable } from 'src/engine/workspace-manager/workspace-sync-metadata import { IsSystem } from 'src/engine/workspace-manager/workspace-sync-metadata/decorators/is-system.decorator'; import { ObjectMetadata } from 'src/engine/workspace-manager/workspace-sync-metadata/decorators/object-metadata.decorator'; import { BaseObjectMetadata } from 'src/engine/workspace-manager/workspace-sync-metadata/standard-objects/base.object-metadata'; -import { CalendarEventObjectMetadata } from 'src/business/modules/calendar/calendar-event.object-metadata'; -import { PersonObjectMetadata } from 'src/business/modules/person/person.object-metadata'; -import { WorkspaceMemberObjectMetadata } from 'src/business/modules/workspace/workspace-member.object-metadata'; +import { CalendarEventObjectMetadata } from 'src/modules/calendar/standard-objects/calendar-event.object-metadata'; +import { PersonObjectMetadata } from 'src/modules/person/standard-objects/person.object-metadata'; +import { WorkspaceMemberObjectMetadata } from 'src/modules/workspace-member/standard-objects/workspace-member.object-metadata'; export enum CalendarEventAttendeeResponseStatus { NEEDS_ACTION = 'NEEDS_ACTION', diff --git a/packages/twenty-server/src/business/modules/calendar/calendar-event.object-metadata.ts b/packages/twenty-server/src/modules/calendar/standard-objects/calendar-event.object-metadata.ts similarity index 96% rename from packages/twenty-server/src/business/modules/calendar/calendar-event.object-metadata.ts rename to packages/twenty-server/src/modules/calendar/standard-objects/calendar-event.object-metadata.ts index 8eb6a7467a7..968c83c3cb5 100644 --- a/packages/twenty-server/src/business/modules/calendar/calendar-event.object-metadata.ts +++ b/packages/twenty-server/src/modules/calendar/standard-objects/calendar-event.object-metadata.ts @@ -10,8 +10,8 @@ import { Gate } from 'src/engine/workspace-manager/workspace-sync-metadata/decor import { IsSystem } from 'src/engine/workspace-manager/workspace-sync-metadata/decorators/is-system.decorator'; import { ObjectMetadata } from 'src/engine/workspace-manager/workspace-sync-metadata/decorators/object-metadata.decorator'; import { BaseObjectMetadata } from 'src/engine/workspace-manager/workspace-sync-metadata/standard-objects/base.object-metadata'; -import { CalendarChannelEventAssociationObjectMetadata } from 'src/business/modules/calendar/calendar-channel-event-association.object-metadata'; -import { CalendarEventAttendeeObjectMetadata } from 'src/business/modules/calendar/calendar-event-attendee.object-metadata'; +import { CalendarChannelEventAssociationObjectMetadata } from 'src/modules/calendar/standard-objects/calendar-channel-event-association.object-metadata'; +import { CalendarEventAttendeeObjectMetadata } from 'src/modules/calendar/standard-objects/calendar-event-attendee.object-metadata'; import { IsNullable } from 'src/engine/workspace-manager/workspace-sync-metadata/decorators/is-nullable.decorator'; import { standardObjectIds } from 'src/engine/workspace-manager/workspace-sync-metadata/constants/standard-object-ids'; import { calendarEventStandardFieldIds } from 'src/engine/workspace-manager/workspace-sync-metadata/constants/standard-field-ids'; diff --git a/packages/twenty-server/src/business/modules/calendar/types/calendar-event.ts b/packages/twenty-server/src/modules/calendar/types/calendar-event.ts similarity index 73% rename from packages/twenty-server/src/business/modules/calendar/types/calendar-event.ts rename to packages/twenty-server/src/modules/calendar/types/calendar-event.ts index e273ba67cb5..83db8d0d8b9 100644 --- a/packages/twenty-server/src/business/modules/calendar/types/calendar-event.ts +++ b/packages/twenty-server/src/modules/calendar/types/calendar-event.ts @@ -1,5 +1,5 @@ -import { CalendarEventAttendeeObjectMetadata } from 'src/business/modules/calendar/calendar-event-attendee.object-metadata'; -import { CalendarEventObjectMetadata } from 'src/business/modules/calendar/calendar-event.object-metadata'; +import { CalendarEventAttendeeObjectMetadata } from 'src/modules/calendar/standard-objects/calendar-event-attendee.object-metadata'; +import { CalendarEventObjectMetadata } from 'src/modules/calendar/standard-objects/calendar-event.object-metadata'; import { ObjectRecord } from 'src/engine/workspace-manager/workspace-sync-metadata/types/object-record'; export type CalendarEvent = Omit< diff --git a/packages/twenty-server/src/business/modules/calendar/utils/format-google-calendar-event.util.ts b/packages/twenty-server/src/modules/calendar/utils/format-google-calendar-event.util.ts similarity index 88% rename from packages/twenty-server/src/business/modules/calendar/utils/format-google-calendar-event.util.ts rename to packages/twenty-server/src/modules/calendar/utils/format-google-calendar-event.util.ts index 795aad17e8d..e99234263c2 100644 --- a/packages/twenty-server/src/business/modules/calendar/utils/format-google-calendar-event.util.ts +++ b/packages/twenty-server/src/modules/calendar/utils/format-google-calendar-event.util.ts @@ -1,8 +1,8 @@ import { calendar_v3 } from 'googleapis'; import { v4 } from 'uuid'; -import { CalendarEventWithAttendees } from 'src/business/modules/calendar/types/calendar-event'; -import { CalendarEventAttendeeResponseStatus } from 'src/business/modules/calendar/calendar-event-attendee.object-metadata'; +import { CalendarEventWithAttendees } from 'src/modules/calendar/types/calendar-event'; +import { CalendarEventAttendeeResponseStatus } from 'src/modules/calendar/standard-objects/calendar-event-attendee.object-metadata'; export const formatGoogleCalendarEvent = ( event: calendar_v3.Schema$Event, diff --git a/packages/twenty-server/src/business/modules/calendar-and-messaging/utils/getFlattenedValuesAndValuesStringForBatchRawQuery.util.ts b/packages/twenty-server/src/modules/calendar/utils/getFlattenedValuesAndValuesStringForBatchRawQuery.util.ts similarity index 100% rename from packages/twenty-server/src/business/modules/calendar-and-messaging/utils/getFlattenedValuesAndValuesStringForBatchRawQuery.util.ts rename to packages/twenty-server/src/modules/calendar/utils/getFlattenedValuesAndValuesStringForBatchRawQuery.util.ts diff --git a/packages/twenty-server/src/business/modules/calendar/utils/google-calendar-search-filter.util.ts b/packages/twenty-server/src/modules/calendar/utils/google-calendar-search-filter.util.ts similarity index 100% rename from packages/twenty-server/src/business/modules/calendar/utils/google-calendar-search-filter.util.ts rename to packages/twenty-server/src/modules/calendar/utils/google-calendar-search-filter.util.ts diff --git a/packages/twenty-server/src/business/modules/company/company.object-metadata.ts b/packages/twenty-server/src/modules/company/standard-objects/company.object-metadata.ts similarity index 90% rename from packages/twenty-server/src/business/modules/company/company.object-metadata.ts rename to packages/twenty-server/src/modules/company/standard-objects/company.object-metadata.ts index bd561c8e8e2..f951c066e72 100644 --- a/packages/twenty-server/src/business/modules/company/company.object-metadata.ts +++ b/packages/twenty-server/src/modules/company/standard-objects/company.object-metadata.ts @@ -12,13 +12,13 @@ import { IsNullable } from 'src/engine/workspace-manager/workspace-sync-metadata import { IsSystem } from 'src/engine/workspace-manager/workspace-sync-metadata/decorators/is-system.decorator'; import { ObjectMetadata } from 'src/engine/workspace-manager/workspace-sync-metadata/decorators/object-metadata.decorator'; import { RelationMetadata } from 'src/engine/workspace-manager/workspace-sync-metadata/decorators/relation-metadata.decorator'; -import { ActivityTargetObjectMetadata } from 'src/business/modules/activity/activity-target.object-metadata'; -import { AttachmentObjectMetadata } from 'src/business/modules/attachment/attachment.object-metadata'; +import { ActivityTargetObjectMetadata } from 'src/modules/activity/standard-objects/activity-target.object-metadata'; +import { AttachmentObjectMetadata } from 'src/modules/attachment/standard-objects/attachment.object-metadata'; import { BaseObjectMetadata } from 'src/engine/workspace-manager/workspace-sync-metadata/standard-objects/base.object-metadata'; -import { FavoriteObjectMetadata } from 'src/business/modules/favorite/favorite.object-metadata'; -import { OpportunityObjectMetadata } from 'src/business/modules/opportunity/opportunity.object-metadata'; -import { PersonObjectMetadata } from 'src/business/modules/person/person.object-metadata'; -import { WorkspaceMemberObjectMetadata } from 'src/business/modules/workspace/workspace-member.object-metadata'; +import { FavoriteObjectMetadata } from 'src/modules/favorite/standard-objects/favorite.object-metadata'; +import { OpportunityObjectMetadata } from 'src/modules/opportunity/standard-objects/opportunity.object-metadata'; +import { PersonObjectMetadata } from 'src/modules/person/standard-objects/person.object-metadata'; +import { WorkspaceMemberObjectMetadata } from 'src/modules/workspace-member/standard-objects/workspace-member.object-metadata'; @ObjectMetadata({ standardId: standardObjectIds.company, diff --git a/packages/twenty-server/src/modules/connected-account/auto-companies-and-contacts-creation/create-company-and-contact/create-company-and-contact.module.ts b/packages/twenty-server/src/modules/connected-account/auto-companies-and-contacts-creation/create-company-and-contact/create-company-and-contact.module.ts new file mode 100644 index 00000000000..a6877df0fd9 --- /dev/null +++ b/packages/twenty-server/src/modules/connected-account/auto-companies-and-contacts-creation/create-company-and-contact/create-company-and-contact.module.ts @@ -0,0 +1,21 @@ +import { Module } from '@nestjs/common'; + +import { PersonModule } from 'src/modules/person/repositories/person/person.module'; +import { WorkspaceMemberModule } from 'src/modules/workspace-member/repositories/workspace-member/workspace-member.module'; +import { CreateCompanyAndContactService } from 'src/modules/connected-account/auto-companies-and-contacts-creation/create-company-and-contact/create-company-and-contact.service'; +import { CreateCompanyModule } from 'src/modules/connected-account/auto-companies-and-contacts-creation/create-company/create-company.module'; +import { CreateContactModule } from 'src/modules/connected-account/auto-companies-and-contacts-creation/create-contact/create-contact.module'; +import { WorkspaceDataSourceModule } from 'src/engine/workspace-datasource/workspace-datasource.module'; + +@Module({ + imports: [ + WorkspaceDataSourceModule, + CreateContactModule, + CreateCompanyModule, + WorkspaceMemberModule, + PersonModule, + ], + providers: [CreateCompanyAndContactService], + exports: [CreateCompanyAndContactService], +}) +export class CreateCompaniesAndContactsModule {} diff --git a/packages/twenty-server/src/engine-workspace/auto-companies-and-contacts-creation/create-company-and-contact/create-company-and-contact.service.ts b/packages/twenty-server/src/modules/connected-account/auto-companies-and-contacts-creation/create-company-and-contact/create-company-and-contact.service.ts similarity index 77% rename from packages/twenty-server/src/engine-workspace/auto-companies-and-contacts-creation/create-company-and-contact/create-company-and-contact.service.ts rename to packages/twenty-server/src/modules/connected-account/auto-companies-and-contacts-creation/create-company-and-contact/create-company-and-contact.service.ts index db386ef7e53..0462bc07564 100644 --- a/packages/twenty-server/src/engine-workspace/auto-companies-and-contacts-creation/create-company-and-contact/create-company-and-contact.service.ts +++ b/packages/twenty-server/src/modules/connected-account/auto-companies-and-contacts-creation/create-company-and-contact/create-company-and-contact.service.ts @@ -3,14 +3,14 @@ import { Injectable } from '@nestjs/common'; import { EntityManager } from 'typeorm'; import compact from 'lodash/compact'; -import { Participant } from 'src/business/modules/message/types/gmail-message'; -import { getDomainNameFromHandle } from 'src/business/modules/message/utils/get-domain-name-from-handle.util'; -import { CreateCompanyService } from 'src/engine-workspace/auto-companies-and-contacts-creation/create-company/create-company.service'; -import { CreateContactService } from 'src/engine-workspace/auto-companies-and-contacts-creation/create-contact/create-contact.service'; -import { PersonService } from 'src/engine-workspace/repositories/person/person.service'; -import { WorkspaceMemberService } from 'src/engine-workspace/repositories/workspace-member/workspace-member.service'; -import { getUniqueParticipantsAndHandles } from 'src/business/modules/message/utils/get-unique-participants-and-handles.util'; -import { filterOutParticipantsFromCompanyOrWorkspace } from 'src/business/modules/message/utils/filter-out-participants-from-company-or-workspace.util'; +import { Participant } from 'src/modules/messaging/types/gmail-message'; +import { getDomainNameFromHandle } from 'src/modules/messaging/utils/get-domain-name-from-handle.util'; +import { CreateCompanyService } from 'src/modules/connected-account/auto-companies-and-contacts-creation/create-company/create-company.service'; +import { CreateContactService } from 'src/modules/connected-account/auto-companies-and-contacts-creation/create-contact/create-contact.service'; +import { PersonService } from 'src/modules/person/repositories/person/person.service'; +import { WorkspaceMemberService } from 'src/modules/workspace-member/repositories/workspace-member/workspace-member.service'; +import { getUniqueParticipantsAndHandles } from 'src/modules/messaging/utils/get-unique-participants-and-handles.util'; +import { filterOutParticipantsFromCompanyOrWorkspace } from 'src/modules/messaging/utils/filter-out-participants-from-company-or-workspace.util'; import { isWorkEmail } from 'src/utils/is-work-email'; @Injectable() diff --git a/packages/twenty-server/src/engine-workspace/auto-companies-and-contacts-creation/create-company/create-company.module.ts b/packages/twenty-server/src/modules/connected-account/auto-companies-and-contacts-creation/create-company/create-company.module.ts similarity index 57% rename from packages/twenty-server/src/engine-workspace/auto-companies-and-contacts-creation/create-company/create-company.module.ts rename to packages/twenty-server/src/modules/connected-account/auto-companies-and-contacts-creation/create-company/create-company.module.ts index e413edeadbb..31e2e68c74d 100644 --- a/packages/twenty-server/src/engine-workspace/auto-companies-and-contacts-creation/create-company/create-company.module.ts +++ b/packages/twenty-server/src/modules/connected-account/auto-companies-and-contacts-creation/create-company/create-company.module.ts @@ -1,8 +1,8 @@ import { Module } from '@nestjs/common'; import { WorkspaceDataSourceModule } from 'src/engine/workspace-datasource/workspace-datasource.module'; -import { CreateCompanyService } from 'src/engine-workspace/auto-companies-and-contacts-creation/create-company/create-company.service'; -import { CompanyModule } from 'src/business/modules/message/repositories/company/company.module'; +import { CreateCompanyService } from 'src/modules/connected-account/auto-companies-and-contacts-creation/create-company/create-company.service'; +import { CompanyModule } from 'src/modules/messaging/repositories/company/company.module'; @Module({ imports: [WorkspaceDataSourceModule, CompanyModule], diff --git a/packages/twenty-server/src/engine-workspace/auto-companies-and-contacts-creation/create-company/create-company.service.ts b/packages/twenty-server/src/modules/connected-account/auto-companies-and-contacts-creation/create-company/create-company.service.ts similarity index 92% rename from packages/twenty-server/src/engine-workspace/auto-companies-and-contacts-creation/create-company/create-company.service.ts rename to packages/twenty-server/src/modules/connected-account/auto-companies-and-contacts-creation/create-company/create-company.service.ts index cc755090f3a..4052b1cbea6 100644 --- a/packages/twenty-server/src/engine-workspace/auto-companies-and-contacts-creation/create-company/create-company.service.ts +++ b/packages/twenty-server/src/modules/connected-account/auto-companies-and-contacts-creation/create-company/create-company.service.ts @@ -4,8 +4,8 @@ import { EntityManager } from 'typeorm'; import { v4 } from 'uuid'; import axios, { AxiosInstance } from 'axios'; -import { CompanyService } from 'src/business/modules/message/repositories/company/company.service'; -import { getCompanyNameFromDomainName } from 'src/business/modules/message/utils/get-company-name-from-domain-name.util'; +import { CompanyService } from 'src/modules/messaging/repositories/company/company.service'; +import { getCompanyNameFromDomainName } from 'src/modules/messaging/utils/get-company-name-from-domain-name.util'; @Injectable() export class CreateCompanyService { private readonly httpService: AxiosInstance; diff --git a/packages/twenty-server/src/engine-workspace/auto-companies-and-contacts-creation/create-contact/create-contact.module.ts b/packages/twenty-server/src/modules/connected-account/auto-companies-and-contacts-creation/create-contact/create-contact.module.ts similarity index 58% rename from packages/twenty-server/src/engine-workspace/auto-companies-and-contacts-creation/create-contact/create-contact.module.ts rename to packages/twenty-server/src/modules/connected-account/auto-companies-and-contacts-creation/create-contact/create-contact.module.ts index 612877ec578..faa9404258a 100644 --- a/packages/twenty-server/src/engine-workspace/auto-companies-and-contacts-creation/create-contact/create-contact.module.ts +++ b/packages/twenty-server/src/modules/connected-account/auto-companies-and-contacts-creation/create-contact/create-contact.module.ts @@ -1,8 +1,8 @@ import { Module } from '@nestjs/common'; import { WorkspaceDataSourceModule } from 'src/engine/workspace-datasource/workspace-datasource.module'; -import { CreateContactService } from 'src/engine-workspace/auto-companies-and-contacts-creation/create-contact/create-contact.service'; -import { PersonModule } from 'src/engine-workspace/repositories/person/person.module'; +import { CreateContactService } from 'src/modules/connected-account/auto-companies-and-contacts-creation/create-contact/create-contact.service'; +import { PersonModule } from 'src/modules/person/repositories/person/person.module'; @Module({ imports: [WorkspaceDataSourceModule, PersonModule], diff --git a/packages/twenty-server/src/engine-workspace/auto-companies-and-contacts-creation/create-contact/create-contact.service.ts b/packages/twenty-server/src/modules/connected-account/auto-companies-and-contacts-creation/create-contact/create-contact.service.ts similarity index 87% rename from packages/twenty-server/src/engine-workspace/auto-companies-and-contacts-creation/create-contact/create-contact.service.ts rename to packages/twenty-server/src/modules/connected-account/auto-companies-and-contacts-creation/create-contact/create-contact.service.ts index 03e4dfe91fb..c96bbc2fda8 100644 --- a/packages/twenty-server/src/engine-workspace/auto-companies-and-contacts-creation/create-contact/create-contact.service.ts +++ b/packages/twenty-server/src/modules/connected-account/auto-companies-and-contacts-creation/create-contact/create-contact.service.ts @@ -3,8 +3,8 @@ import { Injectable } from '@nestjs/common'; import { EntityManager } from 'typeorm'; import { v4 } from 'uuid'; -import { PersonService } from 'src/engine-workspace/repositories/person/person.service'; -import { getFirstNameAndLastNameFromHandleAndDisplayName } from 'src/business/modules/message/utils/get-first-name-and-last-name-from-handle-and-display-name.util'; +import { PersonService } from 'src/modules/person/repositories/person/person.service'; +import { getFirstNameAndLastNameFromHandleAndDisplayName } from 'src/modules/messaging/utils/get-first-name-and-last-name-from-handle-and-display-name.util'; type ContactToCreate = { handle: string; diff --git a/packages/twenty-server/src/business/modules/calendar-and-messaging/repositories/blocklist/blocklist.module.ts b/packages/twenty-server/src/modules/connected-account/repositories/blocklist/blocklist.module.ts similarity index 71% rename from packages/twenty-server/src/business/modules/calendar-and-messaging/repositories/blocklist/blocklist.module.ts rename to packages/twenty-server/src/modules/connected-account/repositories/blocklist/blocklist.module.ts index 875ae222342..08e62307468 100644 --- a/packages/twenty-server/src/business/modules/calendar-and-messaging/repositories/blocklist/blocklist.module.ts +++ b/packages/twenty-server/src/modules/connected-account/repositories/blocklist/blocklist.module.ts @@ -1,6 +1,6 @@ import { Module } from '@nestjs/common'; -import { BlocklistService } from 'src/business/modules/calendar-and-messaging/repositories/blocklist/blocklist.service'; +import { BlocklistService } from 'src/modules/connected-account/repositories/blocklist/blocklist.service'; import { WorkspaceDataSourceModule } from 'src/engine/workspace-datasource/workspace-datasource.module'; @Module({ diff --git a/packages/twenty-server/src/business/modules/calendar-and-messaging/repositories/blocklist/blocklist.service.ts b/packages/twenty-server/src/modules/connected-account/repositories/blocklist/blocklist.service.ts similarity index 89% rename from packages/twenty-server/src/business/modules/calendar-and-messaging/repositories/blocklist/blocklist.service.ts rename to packages/twenty-server/src/modules/connected-account/repositories/blocklist/blocklist.service.ts index 433f02da6d4..f8ff607e83c 100644 --- a/packages/twenty-server/src/business/modules/calendar-and-messaging/repositories/blocklist/blocklist.service.ts +++ b/packages/twenty-server/src/modules/connected-account/repositories/blocklist/blocklist.service.ts @@ -4,7 +4,7 @@ import { EntityManager } from 'typeorm'; import { WorkspaceDataSourceService } from 'src/engine/workspace-datasource/workspace-datasource.service'; import { ObjectRecord } from 'src/engine/workspace-manager/workspace-sync-metadata/types/object-record'; -import { BlocklistObjectMetadata } from 'src/business/modules/calendar/blocklist.object-metadata'; +import { BlocklistObjectMetadata } from 'src/modules/connected-account/standard-objects/blocklist.object-metadata'; @Injectable() export class BlocklistService { diff --git a/packages/twenty-server/src/business/modules/calendar-and-messaging/repositories/connected-account/connected-account.module.ts b/packages/twenty-server/src/modules/connected-account/repositories/connected-account/connected-account.module.ts similarity index 68% rename from packages/twenty-server/src/business/modules/calendar-and-messaging/repositories/connected-account/connected-account.module.ts rename to packages/twenty-server/src/modules/connected-account/repositories/connected-account/connected-account.module.ts index 36b9514843d..736d2e303c3 100644 --- a/packages/twenty-server/src/business/modules/calendar-and-messaging/repositories/connected-account/connected-account.module.ts +++ b/packages/twenty-server/src/modules/connected-account/repositories/connected-account/connected-account.module.ts @@ -1,6 +1,6 @@ import { Module } from '@nestjs/common'; -import { ConnectedAccountService } from 'src/business/modules/calendar-and-messaging/repositories/connected-account/connected-account.service'; +import { ConnectedAccountService } from 'src/modules/connected-account/repositories/connected-account/connected-account.service'; import { WorkspaceDataSourceModule } from 'src/engine/workspace-datasource/workspace-datasource.module'; @Module({ diff --git a/packages/twenty-server/src/business/modules/calendar-and-messaging/repositories/connected-account/connected-account.service.ts b/packages/twenty-server/src/modules/connected-account/repositories/connected-account/connected-account.service.ts similarity index 97% rename from packages/twenty-server/src/business/modules/calendar-and-messaging/repositories/connected-account/connected-account.service.ts rename to packages/twenty-server/src/modules/connected-account/repositories/connected-account/connected-account.service.ts index e6f766cb21a..739da879afc 100644 --- a/packages/twenty-server/src/business/modules/calendar-and-messaging/repositories/connected-account/connected-account.service.ts +++ b/packages/twenty-server/src/modules/connected-account/repositories/connected-account/connected-account.service.ts @@ -3,7 +3,7 @@ import { Injectable, NotFoundException } from '@nestjs/common'; import { EntityManager } from 'typeorm'; import { WorkspaceDataSourceService } from 'src/engine/workspace-datasource/workspace-datasource.service'; -import { ConnectedAccountObjectMetadata } from 'src/business/modules/connected-account/connected-account.object-metadata'; +import { ConnectedAccountObjectMetadata } from 'src/modules/connected-account/standard-objects/connected-account.object-metadata'; import { ObjectRecord } from 'src/engine/workspace-manager/workspace-sync-metadata/types/object-record'; @Injectable() diff --git a/packages/twenty-server/src/business/modules/calendar-and-messaging/services/google-apis-refresh-access-token.service.ts b/packages/twenty-server/src/modules/connected-account/services/google-apis-refresh-access-token.service.ts similarity index 87% rename from packages/twenty-server/src/business/modules/calendar-and-messaging/services/google-apis-refresh-access-token.service.ts rename to packages/twenty-server/src/modules/connected-account/services/google-apis-refresh-access-token.service.ts index 6ae56784cb9..88ba8c3d7ee 100644 --- a/packages/twenty-server/src/business/modules/calendar-and-messaging/services/google-apis-refresh-access-token.service.ts +++ b/packages/twenty-server/src/modules/connected-account/services/google-apis-refresh-access-token.service.ts @@ -2,8 +2,8 @@ import { Injectable } from '@nestjs/common'; import axios from 'axios'; -import { EnvironmentService } from 'src/integrations/environment/environment.service'; -import { ConnectedAccountService } from 'src/business/modules/calendar-and-messaging/repositories/connected-account/connected-account.service'; +import { EnvironmentService } from 'src/engine/integrations/environment/environment.service'; +import { ConnectedAccountService } from 'src/modules/connected-account/repositories/connected-account/connected-account.service'; @Injectable() export class GoogleAPIsRefreshAccessTokenService { diff --git a/packages/twenty-server/src/business/modules/calendar/blocklist.object-metadata.ts b/packages/twenty-server/src/modules/connected-account/standard-objects/blocklist.object-metadata.ts similarity index 92% rename from packages/twenty-server/src/business/modules/calendar/blocklist.object-metadata.ts rename to packages/twenty-server/src/modules/connected-account/standard-objects/blocklist.object-metadata.ts index 16bce3ff814..fb47bddfa8e 100644 --- a/packages/twenty-server/src/business/modules/calendar/blocklist.object-metadata.ts +++ b/packages/twenty-server/src/modules/connected-account/standard-objects/blocklist.object-metadata.ts @@ -5,7 +5,7 @@ import { FieldMetadata } from 'src/engine/workspace-manager/workspace-sync-metad import { IsSystem } from 'src/engine/workspace-manager/workspace-sync-metadata/decorators/is-system.decorator'; import { ObjectMetadata } from 'src/engine/workspace-manager/workspace-sync-metadata/decorators/object-metadata.decorator'; import { BaseObjectMetadata } from 'src/engine/workspace-manager/workspace-sync-metadata/standard-objects/base.object-metadata'; -import { WorkspaceMemberObjectMetadata } from 'src/business/modules/workspace/workspace-member.object-metadata'; +import { WorkspaceMemberObjectMetadata } from 'src/modules/workspace-member/standard-objects/workspace-member.object-metadata'; @ObjectMetadata({ standardId: standardObjectIds.blocklist, diff --git a/packages/twenty-server/src/business/modules/connected-account/connected-account.object-metadata.ts b/packages/twenty-server/src/modules/connected-account/standard-objects/connected-account.object-metadata.ts similarity index 91% rename from packages/twenty-server/src/business/modules/connected-account/connected-account.object-metadata.ts rename to packages/twenty-server/src/modules/connected-account/standard-objects/connected-account.object-metadata.ts index 68ca1cd67cd..1044708e4ea 100644 --- a/packages/twenty-server/src/business/modules/connected-account/connected-account.object-metadata.ts +++ b/packages/twenty-server/src/modules/connected-account/standard-objects/connected-account.object-metadata.ts @@ -12,9 +12,9 @@ import { IsSystem } from 'src/engine/workspace-manager/workspace-sync-metadata/d import { ObjectMetadata } from 'src/engine/workspace-manager/workspace-sync-metadata/decorators/object-metadata.decorator'; import { RelationMetadata } from 'src/engine/workspace-manager/workspace-sync-metadata/decorators/relation-metadata.decorator'; import { BaseObjectMetadata } from 'src/engine/workspace-manager/workspace-sync-metadata/standard-objects/base.object-metadata'; -import { CalendarChannelObjectMetadata } from 'src/business/modules/calendar/calendar-channel.object-metadata'; -import { MessageChannelObjectMetadata } from 'src/business/modules/message/message-channel.object-metadata'; -import { WorkspaceMemberObjectMetadata } from 'src/business/modules/workspace/workspace-member.object-metadata'; +import { CalendarChannelObjectMetadata } from 'src/modules/calendar/standard-objects/calendar-channel.object-metadata'; +import { MessageChannelObjectMetadata } from 'src/modules/messaging/standard-objects/message-channel.object-metadata'; +import { WorkspaceMemberObjectMetadata } from 'src/modules/workspace-member/standard-objects/workspace-member.object-metadata'; @ObjectMetadata({ standardId: standardObjectIds.connectedAccount, diff --git a/packages/twenty-server/src/business/modules/favorite/favorite.object-metadata.ts b/packages/twenty-server/src/modules/favorite/standard-objects/favorite.object-metadata.ts similarity index 88% rename from packages/twenty-server/src/business/modules/favorite/favorite.object-metadata.ts rename to packages/twenty-server/src/modules/favorite/standard-objects/favorite.object-metadata.ts index b3712e90017..3081099b96a 100644 --- a/packages/twenty-server/src/business/modules/favorite/favorite.object-metadata.ts +++ b/packages/twenty-server/src/modules/favorite/standard-objects/favorite.object-metadata.ts @@ -8,10 +8,10 @@ import { IsNullable } from 'src/engine/workspace-manager/workspace-sync-metadata import { IsSystem } from 'src/engine/workspace-manager/workspace-sync-metadata/decorators/is-system.decorator'; import { ObjectMetadata } from 'src/engine/workspace-manager/workspace-sync-metadata/decorators/object-metadata.decorator'; import { BaseObjectMetadata } from 'src/engine/workspace-manager/workspace-sync-metadata/standard-objects/base.object-metadata'; -import { CompanyObjectMetadata } from 'src/business/modules/company/company.object-metadata'; -import { OpportunityObjectMetadata } from 'src/business/modules/opportunity/opportunity.object-metadata'; -import { PersonObjectMetadata } from 'src/business/modules/person/person.object-metadata'; -import { WorkspaceMemberObjectMetadata } from 'src/business/modules/workspace/workspace-member.object-metadata'; +import { CompanyObjectMetadata } from 'src/modules/company/standard-objects/company.object-metadata'; +import { OpportunityObjectMetadata } from 'src/modules/opportunity/standard-objects/opportunity.object-metadata'; +import { PersonObjectMetadata } from 'src/modules/person/standard-objects/person.object-metadata'; +import { WorkspaceMemberObjectMetadata } from 'src/modules/workspace-member/standard-objects/workspace-member.object-metadata'; @ObjectMetadata({ standardId: standardObjectIds.favorite, diff --git a/packages/twenty-server/src/business/modules/message/commands/crons/fetch-all-workspaces-messages.cron.pattern.ts b/packages/twenty-server/src/modules/messaging/commands/crons/fetch-all-workspaces-messages.cron.pattern.ts similarity index 100% rename from packages/twenty-server/src/business/modules/message/commands/crons/fetch-all-workspaces-messages.cron.pattern.ts rename to packages/twenty-server/src/modules/messaging/commands/crons/fetch-all-workspaces-messages.cron.pattern.ts diff --git a/packages/twenty-server/src/business/modules/message/commands/crons/fetch-all-workspaces-messages.job.ts b/packages/twenty-server/src/modules/messaging/commands/crons/fetch-all-workspaces-messages.job.ts similarity index 81% rename from packages/twenty-server/src/business/modules/message/commands/crons/fetch-all-workspaces-messages.job.ts rename to packages/twenty-server/src/modules/messaging/commands/crons/fetch-all-workspaces-messages.job.ts index 15363abdc27..2867fa1b09d 100644 --- a/packages/twenty-server/src/business/modules/message/commands/crons/fetch-all-workspaces-messages.job.ts +++ b/packages/twenty-server/src/modules/messaging/commands/crons/fetch-all-workspaces-messages.job.ts @@ -3,16 +3,16 @@ import { InjectRepository } from '@nestjs/typeorm'; import { Repository, In } from 'typeorm'; -import { MessageQueueJob } from 'src/integrations/message-queue/interfaces/message-queue-job.interface'; +import { MessageQueueJob } from 'src/engine/integrations/message-queue/interfaces/message-queue-job.interface'; -import { MessageQueue } from 'src/integrations/message-queue/message-queue.constants'; -import { MessageQueueService } from 'src/integrations/message-queue/services/message-queue.service'; -import { ConnectedAccountService } from 'src/business/modules/calendar-and-messaging/repositories/connected-account/connected-account.service'; +import { MessageQueue } from 'src/engine/integrations/message-queue/message-queue.constants'; +import { MessageQueueService } from 'src/engine/integrations/message-queue/services/message-queue.service'; +import { ConnectedAccountService } from 'src/modules/connected-account/repositories/connected-account/connected-account.service'; import { Workspace } from 'src/engine/modules/workspace/workspace.entity'; import { GmailPartialSyncJobData, GmailPartialSyncJob, -} from 'src/business/modules/message/jobs/gmail-partial-sync.job'; +} from 'src/modules/messaging/jobs/gmail-partial-sync.job'; import { DataSourceEntity } from 'src/engine-metadata/data-source/data-source.entity'; @Injectable() diff --git a/packages/twenty-server/src/business/modules/message/commands/fetch-workspace-messages-commands.module.ts b/packages/twenty-server/src/modules/messaging/commands/fetch-workspace-messages-commands.module.ts similarity index 57% rename from packages/twenty-server/src/business/modules/message/commands/fetch-workspace-messages-commands.module.ts rename to packages/twenty-server/src/modules/messaging/commands/fetch-workspace-messages-commands.module.ts index 59708b47265..cd0936e1b6f 100644 --- a/packages/twenty-server/src/business/modules/message/commands/fetch-workspace-messages-commands.module.ts +++ b/packages/twenty-server/src/modules/messaging/commands/fetch-workspace-messages-commands.module.ts @@ -4,11 +4,11 @@ import { TypeOrmModule } from '@nestjs/typeorm'; import { FeatureFlagEntity } from 'src/engine/modules/feature-flag/feature-flag.entity'; import { TypeORMModule } from 'src/database/typeorm/typeorm.module'; import { DataSourceModule } from 'src/engine-metadata/data-source/data-source.module'; -import { GmailFullSyncCommand } from 'src/business/modules/message/commands/gmail-full-sync.command'; -import { GmailPartialSyncCommand } from 'src/business/modules/message/commands/gmail-partial-sync.command'; -import { ConnectedAccountModule } from 'src/business/modules/calendar-and-messaging/repositories/connected-account/connected-account.module'; -import { StartFetchAllWorkspacesMessagesCronCommand } from 'src/business/modules/message/commands/start-fetch-all-workspaces-messages.cron.command'; -import { StopFetchAllWorkspacesMessagesCronCommand } from 'src/business/modules/message/commands/stop-fetch-all-workspaces-messages.cron.command'; +import { GmailFullSyncCommand } from 'src/modules/messaging/commands/gmail-full-sync.command'; +import { GmailPartialSyncCommand } from 'src/modules/messaging/commands/gmail-partial-sync.command'; +import { ConnectedAccountModule } from 'src/modules/connected-account/repositories/connected-account/connected-account.module'; +import { StartFetchAllWorkspacesMessagesCronCommand } from 'src/modules/messaging/commands/start-fetch-all-workspaces-messages.cron.command'; +import { StopFetchAllWorkspacesMessagesCronCommand } from 'src/modules/messaging/commands/stop-fetch-all-workspaces-messages.cron.command'; @Module({ imports: [ diff --git a/packages/twenty-server/src/business/modules/message/commands/gmail-full-sync.command.ts b/packages/twenty-server/src/modules/messaging/commands/gmail-full-sync.command.ts similarity index 78% rename from packages/twenty-server/src/business/modules/message/commands/gmail-full-sync.command.ts rename to packages/twenty-server/src/modules/messaging/commands/gmail-full-sync.command.ts index b3632a4a56a..375986cb13c 100644 --- a/packages/twenty-server/src/business/modules/message/commands/gmail-full-sync.command.ts +++ b/packages/twenty-server/src/modules/messaging/commands/gmail-full-sync.command.ts @@ -2,13 +2,13 @@ import { Inject } from '@nestjs/common'; import { Command, CommandRunner, Option } from 'nest-commander'; -import { MessageQueue } from 'src/integrations/message-queue/message-queue.constants'; -import { MessageQueueService } from 'src/integrations/message-queue/services/message-queue.service'; +import { MessageQueue } from 'src/engine/integrations/message-queue/message-queue.constants'; +import { MessageQueueService } from 'src/engine/integrations/message-queue/services/message-queue.service'; import { GmailFullSyncJobData, GmailFullSyncJob, -} from 'src/business/modules/message/jobs/gmail-full-sync.job'; -import { ConnectedAccountService } from 'src/business/modules/calendar-and-messaging/repositories/connected-account/connected-account.service'; +} from 'src/modules/messaging/jobs/gmail-full-sync.job'; +import { ConnectedAccountService } from 'src/modules/connected-account/repositories/connected-account/connected-account.service'; interface GmailFullSyncOptions { workspaceId: string; diff --git a/packages/twenty-server/src/business/modules/message/commands/gmail-partial-sync.command.ts b/packages/twenty-server/src/modules/messaging/commands/gmail-partial-sync.command.ts similarity index 78% rename from packages/twenty-server/src/business/modules/message/commands/gmail-partial-sync.command.ts rename to packages/twenty-server/src/modules/messaging/commands/gmail-partial-sync.command.ts index a819c5a97d6..0511a9ad0b4 100644 --- a/packages/twenty-server/src/business/modules/message/commands/gmail-partial-sync.command.ts +++ b/packages/twenty-server/src/modules/messaging/commands/gmail-partial-sync.command.ts @@ -2,13 +2,13 @@ import { Inject } from '@nestjs/common'; import { Command, CommandRunner, Option } from 'nest-commander'; -import { MessageQueue } from 'src/integrations/message-queue/message-queue.constants'; -import { MessageQueueService } from 'src/integrations/message-queue/services/message-queue.service'; +import { MessageQueue } from 'src/engine/integrations/message-queue/message-queue.constants'; +import { MessageQueueService } from 'src/engine/integrations/message-queue/services/message-queue.service'; import { GmailPartialSyncJob, GmailPartialSyncJobData, -} from 'src/business/modules/message/jobs/gmail-partial-sync.job'; -import { ConnectedAccountService } from 'src/business/modules/calendar-and-messaging/repositories/connected-account/connected-account.service'; +} from 'src/modules/messaging/jobs/gmail-partial-sync.job'; +import { ConnectedAccountService } from 'src/modules/connected-account/repositories/connected-account/connected-account.service'; interface GmailPartialSyncOptions { workspaceId: string; diff --git a/packages/twenty-server/src/business/modules/message/commands/start-fetch-all-workspaces-messages.cron.command.ts b/packages/twenty-server/src/modules/messaging/commands/start-fetch-all-workspaces-messages.cron.command.ts similarity index 58% rename from packages/twenty-server/src/business/modules/message/commands/start-fetch-all-workspaces-messages.cron.command.ts rename to packages/twenty-server/src/modules/messaging/commands/start-fetch-all-workspaces-messages.cron.command.ts index 994403f7d5c..4da6824a23f 100644 --- a/packages/twenty-server/src/business/modules/message/commands/start-fetch-all-workspaces-messages.cron.command.ts +++ b/packages/twenty-server/src/modules/messaging/commands/start-fetch-all-workspaces-messages.cron.command.ts @@ -2,10 +2,10 @@ import { Inject } from '@nestjs/common'; import { Command, CommandRunner } from 'nest-commander'; -import { MessageQueue } from 'src/integrations/message-queue/message-queue.constants'; -import { MessageQueueService } from 'src/integrations/message-queue/services/message-queue.service'; -import { fetchAllWorkspacesMessagesCronPattern } from 'src/business/modules/message/commands/crons/fetch-all-workspaces-messages.cron.pattern'; -import { FetchAllWorkspacesMessagesJob } from 'src/business/modules/message/commands/crons/fetch-all-workspaces-messages.job'; +import { MessageQueue } from 'src/engine/integrations/message-queue/message-queue.constants'; +import { MessageQueueService } from 'src/engine/integrations/message-queue/services/message-queue.service'; +import { fetchAllWorkspacesMessagesCronPattern } from 'src/modules/messaging/commands/crons/fetch-all-workspaces-messages.cron.pattern'; +import { FetchAllWorkspacesMessagesJob } from 'src/modules/messaging/commands/crons/fetch-all-workspaces-messages.job'; @Command({ name: 'fetch-all-workspaces-messages:cron:start', diff --git a/packages/twenty-server/src/business/modules/message/commands/stop-fetch-all-workspaces-messages.cron.command.ts b/packages/twenty-server/src/modules/messaging/commands/stop-fetch-all-workspaces-messages.cron.command.ts similarity index 57% rename from packages/twenty-server/src/business/modules/message/commands/stop-fetch-all-workspaces-messages.cron.command.ts rename to packages/twenty-server/src/modules/messaging/commands/stop-fetch-all-workspaces-messages.cron.command.ts index 825b96ed69f..3b87c84d3b3 100644 --- a/packages/twenty-server/src/business/modules/message/commands/stop-fetch-all-workspaces-messages.cron.command.ts +++ b/packages/twenty-server/src/modules/messaging/commands/stop-fetch-all-workspaces-messages.cron.command.ts @@ -2,10 +2,10 @@ import { Inject } from '@nestjs/common'; import { Command, CommandRunner } from 'nest-commander'; -import { MessageQueue } from 'src/integrations/message-queue/message-queue.constants'; -import { MessageQueueService } from 'src/integrations/message-queue/services/message-queue.service'; -import { fetchAllWorkspacesMessagesCronPattern } from 'src/business/modules/message/commands/crons/fetch-all-workspaces-messages.cron.pattern'; -import { FetchAllWorkspacesMessagesJob } from 'src/business/modules/message/commands/crons/fetch-all-workspaces-messages.job'; +import { MessageQueue } from 'src/engine/integrations/message-queue/message-queue.constants'; +import { MessageQueueService } from 'src/engine/integrations/message-queue/services/message-queue.service'; +import { fetchAllWorkspacesMessagesCronPattern } from 'src/modules/messaging/commands/crons/fetch-all-workspaces-messages.cron.pattern'; +import { FetchAllWorkspacesMessagesJob } from 'src/modules/messaging/commands/crons/fetch-all-workspaces-messages.job'; @Command({ name: 'fetch-all-workspaces-messages:cron:stop', diff --git a/packages/twenty-server/src/business/modules/message/jobs/create-companies-and-contacts-after-sync.job.ts b/packages/twenty-server/src/modules/messaging/jobs/create-companies-and-contacts-after-sync.job.ts similarity index 78% rename from packages/twenty-server/src/business/modules/message/jobs/create-companies-and-contacts-after-sync.job.ts rename to packages/twenty-server/src/modules/messaging/jobs/create-companies-and-contacts-after-sync.job.ts index 2658a28f387..650828b45fe 100644 --- a/packages/twenty-server/src/business/modules/message/jobs/create-companies-and-contacts-after-sync.job.ts +++ b/packages/twenty-server/src/modules/messaging/jobs/create-companies-and-contacts-after-sync.job.ts @@ -1,10 +1,10 @@ import { Injectable, Logger } from '@nestjs/common'; -import { MessageQueueJob } from 'src/integrations/message-queue/interfaces/message-queue-job.interface'; +import { MessageQueueJob } from 'src/engine/integrations/message-queue/interfaces/message-queue-job.interface'; -import { CreateCompanyAndContactService } from 'src/engine-workspace/auto-companies-and-contacts-creation/create-company-and-contact/create-company-and-contact.service'; -import { MessageChannelService } from 'src/business/modules/message/repositories/message-channel/message-channel.service'; -import { MessageParticipantService } from 'src/business/modules/message/repositories/message-participant/message-participant.service'; +import { CreateCompanyAndContactService } from 'src/modules/connected-account/auto-companies-and-contacts-creation/create-company-and-contact/create-company-and-contact.service'; +import { MessageChannelService } from 'src/modules/messaging/repositories/message-channel/message-channel.service'; +import { MessageParticipantService } from 'src/modules/messaging/repositories/message-participant/message-participant.service'; export type CreateCompaniesAndContactsAfterSyncJobData = { workspaceId: string; diff --git a/packages/twenty-server/src/business/modules/message/jobs/delete-connected-account-associated-calendar-data.job.ts b/packages/twenty-server/src/modules/messaging/jobs/delete-connected-account-associated-calendar-data.job.ts similarity index 81% rename from packages/twenty-server/src/business/modules/message/jobs/delete-connected-account-associated-calendar-data.job.ts rename to packages/twenty-server/src/modules/messaging/jobs/delete-connected-account-associated-calendar-data.job.ts index 606e13f2084..2d41ada2fa4 100644 --- a/packages/twenty-server/src/business/modules/message/jobs/delete-connected-account-associated-calendar-data.job.ts +++ b/packages/twenty-server/src/modules/messaging/jobs/delete-connected-account-associated-calendar-data.job.ts @@ -1,8 +1,8 @@ import { Injectable, Logger } from '@nestjs/common'; -import { MessageQueueJob } from 'src/integrations/message-queue/interfaces/message-queue-job.interface'; +import { MessageQueueJob } from 'src/engine/integrations/message-queue/interfaces/message-queue-job.interface'; -import { CalendarEventCleanerService } from 'src/business/modules/calendar/services/calendar-event-cleaner/calendar-event-cleaner.service'; +import { CalendarEventCleanerService } from 'src/modules/calendar/services/calendar-event-cleaner/calendar-event-cleaner.service'; export type DeleteConnectedAccountAssociatedCalendarDataJobData = { workspaceId: string; diff --git a/packages/twenty-server/src/business/modules/message/jobs/delete-connected-account-associated-messaging-data.job.ts b/packages/twenty-server/src/modules/messaging/jobs/delete-connected-account-associated-messaging-data.job.ts similarity index 82% rename from packages/twenty-server/src/business/modules/message/jobs/delete-connected-account-associated-messaging-data.job.ts rename to packages/twenty-server/src/modules/messaging/jobs/delete-connected-account-associated-messaging-data.job.ts index f5dc33ab7d1..eacef905ba1 100644 --- a/packages/twenty-server/src/business/modules/message/jobs/delete-connected-account-associated-messaging-data.job.ts +++ b/packages/twenty-server/src/modules/messaging/jobs/delete-connected-account-associated-messaging-data.job.ts @@ -1,8 +1,8 @@ import { Injectable, Logger } from '@nestjs/common'; -import { MessageQueueJob } from 'src/integrations/message-queue/interfaces/message-queue-job.interface'; +import { MessageQueueJob } from 'src/engine/integrations/message-queue/interfaces/message-queue-job.interface'; -import { ThreadCleanerService } from 'src/business/modules/message/services/thread-cleaner/thread-cleaner.service'; +import { ThreadCleanerService } from 'src/modules/messaging/services/thread-cleaner/thread-cleaner.service'; export type DeleteConnectedAccountAssociatedMessagingDataJobData = { workspaceId: string; diff --git a/packages/twenty-server/src/business/modules/message/jobs/gmail-full-sync.job.ts b/packages/twenty-server/src/modules/messaging/jobs/gmail-full-sync.job.ts similarity index 78% rename from packages/twenty-server/src/business/modules/message/jobs/gmail-full-sync.job.ts rename to packages/twenty-server/src/modules/messaging/jobs/gmail-full-sync.job.ts index 82a92a13a8d..c721f1752d0 100644 --- a/packages/twenty-server/src/business/modules/message/jobs/gmail-full-sync.job.ts +++ b/packages/twenty-server/src/modules/messaging/jobs/gmail-full-sync.job.ts @@ -1,9 +1,9 @@ import { Injectable, Logger } from '@nestjs/common'; -import { MessageQueueJob } from 'src/integrations/message-queue/interfaces/message-queue-job.interface'; +import { MessageQueueJob } from 'src/engine/integrations/message-queue/interfaces/message-queue-job.interface'; -import { GoogleAPIsRefreshAccessTokenService } from 'src/business/modules/calendar-and-messaging/services/google-apis-refresh-access-token.service'; -import { GmailFullSyncService } from 'src/business/modules/message/services/gmail-full-sync.service'; +import { GoogleAPIsRefreshAccessTokenService } from 'src/modules/connected-account/services/google-apis-refresh-access-token.service'; +import { GmailFullSyncService } from 'src/modules/messaging/services/gmail-full-sync.service'; export type GmailFullSyncJobData = { workspaceId: string; diff --git a/packages/twenty-server/src/business/modules/message/jobs/gmail-partial-sync.job.ts b/packages/twenty-server/src/modules/messaging/jobs/gmail-partial-sync.job.ts similarity index 76% rename from packages/twenty-server/src/business/modules/message/jobs/gmail-partial-sync.job.ts rename to packages/twenty-server/src/modules/messaging/jobs/gmail-partial-sync.job.ts index 0b045de1de2..b96ca955f10 100644 --- a/packages/twenty-server/src/business/modules/message/jobs/gmail-partial-sync.job.ts +++ b/packages/twenty-server/src/modules/messaging/jobs/gmail-partial-sync.job.ts @@ -1,9 +1,9 @@ import { Injectable, Logger } from '@nestjs/common'; -import { MessageQueueJob } from 'src/integrations/message-queue/interfaces/message-queue-job.interface'; +import { MessageQueueJob } from 'src/engine/integrations/message-queue/interfaces/message-queue-job.interface'; -import { GoogleAPIsRefreshAccessTokenService } from 'src/business/modules/calendar-and-messaging/services/google-apis-refresh-access-token.service'; -import { GmailPartialSyncService } from 'src/business/modules/message/services/gmail-partial-sync.service'; +import { GoogleAPIsRefreshAccessTokenService } from 'src/modules/connected-account/services/google-apis-refresh-access-token.service'; +import { GmailPartialSyncService } from 'src/modules/messaging/services/gmail-partial-sync.service'; export type GmailPartialSyncJobData = { workspaceId: string; diff --git a/packages/twenty-server/src/business/modules/message/jobs/match-message-participant.job.ts b/packages/twenty-server/src/modules/messaging/jobs/match-message-participant.job.ts similarity index 83% rename from packages/twenty-server/src/business/modules/message/jobs/match-message-participant.job.ts rename to packages/twenty-server/src/modules/messaging/jobs/match-message-participant.job.ts index fb6f7728658..2b058b7e55d 100644 --- a/packages/twenty-server/src/business/modules/message/jobs/match-message-participant.job.ts +++ b/packages/twenty-server/src/modules/messaging/jobs/match-message-participant.job.ts @@ -1,8 +1,8 @@ import { Injectable } from '@nestjs/common'; -import { MessageQueueJob } from 'src/integrations/message-queue/interfaces/message-queue-job.interface'; +import { MessageQueueJob } from 'src/engine/integrations/message-queue/interfaces/message-queue-job.interface'; -import { MessageParticipantService } from 'src/business/modules/message/repositories/message-participant/message-participant.service'; +import { MessageParticipantService } from 'src/modules/messaging/repositories/message-participant/message-participant.service'; export type MatchMessageParticipantsJobData = { workspaceId: string; diff --git a/packages/twenty-server/src/business/modules/message/listeners/messaging-connected-account.listener.ts b/packages/twenty-server/src/modules/messaging/listeners/messaging-connected-account.listener.ts similarity index 67% rename from packages/twenty-server/src/business/modules/message/listeners/messaging-connected-account.listener.ts rename to packages/twenty-server/src/modules/messaging/listeners/messaging-connected-account.listener.ts index 9ad45b96966..bb352d61215 100644 --- a/packages/twenty-server/src/business/modules/message/listeners/messaging-connected-account.listener.ts +++ b/packages/twenty-server/src/modules/messaging/listeners/messaging-connected-account.listener.ts @@ -1,18 +1,18 @@ import { Injectable, Inject } from '@nestjs/common'; import { OnEvent } from '@nestjs/event-emitter'; -import { ObjectRecordDeleteEvent } from 'src/integrations/event-emitter/types/object-record-delete.event'; -import { MessageQueue } from 'src/integrations/message-queue/message-queue.constants'; -import { MessageQueueService } from 'src/integrations/message-queue/services/message-queue.service'; +import { ObjectRecordDeleteEvent } from 'src/engine/integrations/event-emitter/types/object-record-delete.event'; +import { MessageQueue } from 'src/engine/integrations/message-queue/message-queue.constants'; +import { MessageQueueService } from 'src/engine/integrations/message-queue/services/message-queue.service'; import { DeleteConnectedAccountAssociatedCalendarDataJobData, DeleteConnectedAccountAssociatedCalendarDataJob, -} from 'src/business/modules/message/jobs/delete-connected-account-associated-calendar-data.job'; +} from 'src/modules/messaging/jobs/delete-connected-account-associated-calendar-data.job'; import { DeleteConnectedAccountAssociatedMessagingDataJobData, DeleteConnectedAccountAssociatedMessagingDataJob, -} from 'src/business/modules/message/jobs/delete-connected-account-associated-messaging-data.job'; -import { ConnectedAccountObjectMetadata } from 'src/business/modules/connected-account/connected-account.object-metadata'; +} from 'src/modules/messaging/jobs/delete-connected-account-associated-messaging-data.job'; +import { ConnectedAccountObjectMetadata } from 'src/modules/connected-account/standard-objects/connected-account.object-metadata'; @Injectable() export class MessagingConnectedAccountListener { diff --git a/packages/twenty-server/src/business/modules/message/listeners/messaging-message-channel.listener.ts b/packages/twenty-server/src/modules/messaging/listeners/messaging-message-channel.listener.ts similarity index 61% rename from packages/twenty-server/src/business/modules/message/listeners/messaging-message-channel.listener.ts rename to packages/twenty-server/src/modules/messaging/listeners/messaging-message-channel.listener.ts index acc25f3acca..3176e245b84 100644 --- a/packages/twenty-server/src/business/modules/message/listeners/messaging-message-channel.listener.ts +++ b/packages/twenty-server/src/modules/messaging/listeners/messaging-message-channel.listener.ts @@ -1,15 +1,15 @@ import { Inject, Injectable } from '@nestjs/common'; import { OnEvent } from '@nestjs/event-emitter'; -import { ObjectRecordUpdateEvent } from 'src/integrations/event-emitter/types/object-record-update.event'; -import { objectRecordChangedProperties } from 'src/integrations/event-emitter/utils/object-record-changed-properties.util'; -import { MessageQueue } from 'src/integrations/message-queue/message-queue.constants'; -import { MessageQueueService } from 'src/integrations/message-queue/services/message-queue.service'; +import { ObjectRecordUpdateEvent } from 'src/engine/integrations/event-emitter/types/object-record-update.event'; +import { objectRecordChangedProperties } from 'src/engine/integrations/event-emitter/utils/object-record-changed-properties.util'; +import { MessageQueue } from 'src/engine/integrations/message-queue/message-queue.constants'; +import { MessageQueueService } from 'src/engine/integrations/message-queue/services/message-queue.service'; import { CreateCompaniesAndContactsAfterSyncJobData, CreateCompaniesAndContactsAfterSyncJob, -} from 'src/business/modules/message/jobs/create-companies-and-contacts-after-sync.job'; -import { MessageChannelObjectMetadata } from 'src/business/modules/message/message-channel.object-metadata'; +} from 'src/modules/messaging/jobs/create-companies-and-contacts-after-sync.job'; +import { MessageChannelObjectMetadata } from 'src/modules/messaging/standard-objects/message-channel.object-metadata'; @Injectable() export class MessagingMessageChannelListener { diff --git a/packages/twenty-server/src/business/modules/message/listeners/messaging-person.listener.ts b/packages/twenty-server/src/modules/messaging/listeners/messaging-person.listener.ts similarity index 67% rename from packages/twenty-server/src/business/modules/message/listeners/messaging-person.listener.ts rename to packages/twenty-server/src/modules/messaging/listeners/messaging-person.listener.ts index d12582eeeed..fa45120a1cf 100644 --- a/packages/twenty-server/src/business/modules/message/listeners/messaging-person.listener.ts +++ b/packages/twenty-server/src/modules/messaging/listeners/messaging-person.listener.ts @@ -1,16 +1,16 @@ import { Inject, Injectable } from '@nestjs/common'; import { OnEvent } from '@nestjs/event-emitter'; -import { ObjectRecordCreateEvent } from 'src/integrations/event-emitter/types/object-record-create.event'; -import { ObjectRecordUpdateEvent } from 'src/integrations/event-emitter/types/object-record-update.event'; -import { objectRecordChangedProperties as objectRecordUpdateEventChangedProperties } from 'src/integrations/event-emitter/utils/object-record-changed-properties.util'; -import { MessageQueue } from 'src/integrations/message-queue/message-queue.constants'; -import { MessageQueueService } from 'src/integrations/message-queue/services/message-queue.service'; +import { ObjectRecordCreateEvent } from 'src/engine/integrations/event-emitter/types/object-record-create.event'; +import { ObjectRecordUpdateEvent } from 'src/engine/integrations/event-emitter/types/object-record-update.event'; +import { objectRecordChangedProperties as objectRecordUpdateEventChangedProperties } from 'src/engine/integrations/event-emitter/utils/object-record-changed-properties.util'; +import { MessageQueue } from 'src/engine/integrations/message-queue/message-queue.constants'; +import { MessageQueueService } from 'src/engine/integrations/message-queue/services/message-queue.service'; import { MatchMessageParticipantJob, MatchMessageParticipantsJobData, -} from 'src/business/modules/message/jobs/match-message-participant.job'; -import { PersonObjectMetadata } from 'src/business/modules/person/person.object-metadata'; +} from 'src/modules/messaging/jobs/match-message-participant.job'; +import { PersonObjectMetadata } from 'src/modules/person/standard-objects/person.object-metadata'; @Injectable() export class MessagingPersonListener { diff --git a/packages/twenty-server/src/business/modules/message/listeners/messaging-workspace-member.listener.ts b/packages/twenty-server/src/modules/messaging/listeners/messaging-workspace-member.listener.ts similarity index 67% rename from packages/twenty-server/src/business/modules/message/listeners/messaging-workspace-member.listener.ts rename to packages/twenty-server/src/modules/messaging/listeners/messaging-workspace-member.listener.ts index 7ebb028252c..d220f35abc6 100644 --- a/packages/twenty-server/src/business/modules/message/listeners/messaging-workspace-member.listener.ts +++ b/packages/twenty-server/src/modules/messaging/listeners/messaging-workspace-member.listener.ts @@ -1,16 +1,16 @@ import { Inject, Injectable } from '@nestjs/common'; import { OnEvent } from '@nestjs/event-emitter'; -import { ObjectRecordCreateEvent } from 'src/integrations/event-emitter/types/object-record-create.event'; -import { ObjectRecordUpdateEvent } from 'src/integrations/event-emitter/types/object-record-update.event'; -import { objectRecordChangedProperties as objectRecordUpdateEventChangedProperties } from 'src/integrations/event-emitter/utils/object-record-changed-properties.util'; -import { MessageQueue } from 'src/integrations/message-queue/message-queue.constants'; -import { MessageQueueService } from 'src/integrations/message-queue/services/message-queue.service'; +import { ObjectRecordCreateEvent } from 'src/engine/integrations/event-emitter/types/object-record-create.event'; +import { ObjectRecordUpdateEvent } from 'src/engine/integrations/event-emitter/types/object-record-update.event'; +import { objectRecordChangedProperties as objectRecordUpdateEventChangedProperties } from 'src/engine/integrations/event-emitter/utils/object-record-changed-properties.util'; +import { MessageQueue } from 'src/engine/integrations/message-queue/message-queue.constants'; +import { MessageQueueService } from 'src/engine/integrations/message-queue/services/message-queue.service'; import { MatchMessageParticipantJob, MatchMessageParticipantsJobData, -} from 'src/business/modules/message/jobs/match-message-participant.job'; -import { WorkspaceMemberObjectMetadata } from 'src/business/modules/workspace/workspace-member.object-metadata'; +} from 'src/modules/messaging/jobs/match-message-participant.job'; +import { WorkspaceMemberObjectMetadata } from 'src/modules/workspace-member/standard-objects/workspace-member.object-metadata'; @Injectable() export class MessagingWorkspaceMemberListener { diff --git a/packages/twenty-server/src/modules/messaging/messaging.module.ts b/packages/twenty-server/src/modules/messaging/messaging.module.ts new file mode 100644 index 00000000000..d2da63b31d8 --- /dev/null +++ b/packages/twenty-server/src/modules/messaging/messaging.module.ts @@ -0,0 +1,76 @@ +import { Module } from '@nestjs/common'; +import { TypeOrmModule } from '@nestjs/typeorm'; +import { HttpModule } from '@nestjs/axios'; + +import { ConnectedAccountModule } from 'src/modules/connected-account/repositories/connected-account/connected-account.module'; +import { MessageChannelMessageAssociationModule } from 'src/modules/messaging/repositories/message-channel-message-association/message-channel-message-assocation.module'; +import { MessageChannelModule } from 'src/modules/messaging/repositories/message-channel/message-channel.module'; +import { MessageThreadModule } from 'src/modules/messaging/repositories/message-thread/message-thread.module'; +import { EnvironmentModule } from 'src/engine/integrations/environment/environment.module'; +import { MessagingPersonListener } from 'src/modules/messaging/listeners/messaging-person.listener'; +import { MessageModule } from 'src/modules/messaging/repositories/message/message.module'; +import { GmailClientProvider } from 'src/modules/messaging/services/providers/gmail/gmail-client.provider'; +import { CreateContactService } from 'src/modules/connected-account/auto-companies-and-contacts-creation/create-contact/create-contact.service'; +import { CreateCompanyService } from 'src/modules/connected-account/auto-companies-and-contacts-creation/create-company/create-company.service'; +import { FetchMessagesByBatchesService } from 'src/modules/messaging/services/fetch-messages-by-batches.service'; +import { GmailFullSyncService } from 'src/modules/messaging/services/gmail-full-sync.service'; +import { GmailPartialSyncService } from 'src/modules/messaging/services/gmail-partial-sync.service'; +import { GoogleAPIsRefreshAccessTokenService } from 'src/modules/connected-account/services/google-apis-refresh-access-token.service'; +import { WorkspaceDataSourceModule } from 'src/engine/workspace-datasource/workspace-datasource.module'; +import { MessageParticipantModule } from 'src/modules/messaging/repositories/message-participant/message-participant.module'; +import { MessagingWorkspaceMemberListener } from 'src/modules/messaging/listeners/messaging-workspace-member.listener'; +import { MessagingMessageChannelListener } from 'src/modules/messaging/listeners/messaging-message-channel.listener'; +import { MessageService } from 'src/modules/messaging/repositories/message/message.service'; +import { WorkspaceMemberModule } from 'src/modules/workspace-member/repositories/workspace-member/workspace-member.module'; +import { FeatureFlagEntity } from 'src/engine/modules/feature-flag/feature-flag.entity'; +import { CreateCompaniesAndContactsModule } from 'src/modules/connected-account/auto-companies-and-contacts-creation/create-company-and-contact/create-company-and-contact.module'; +import { CompanyModule } from 'src/modules/messaging/repositories/company/company.module'; +import { PersonModule } from 'src/modules/person/repositories/person/person.module'; +import { SaveMessagesAndCreateContactsService } from 'src/modules/messaging/services/save-messages-and-create-contacts.service'; +import { MessagingConnectedAccountListener } from 'src/modules/messaging/listeners/messaging-connected-account.listener'; +import { BlocklistModule } from 'src/modules/connected-account/repositories/blocklist/blocklist.module'; +import { FetchByBatchesService } from 'src/modules/messaging/services/fetch-by-batch.service'; +@Module({ + imports: [ + EnvironmentModule, + WorkspaceDataSourceModule, + ConnectedAccountModule, + MessageChannelModule, + MessageChannelMessageAssociationModule, + MessageModule, + MessageThreadModule, + MessageParticipantModule, + CreateCompaniesAndContactsModule, + WorkspaceMemberModule, + TypeOrmModule.forFeature([FeatureFlagEntity], 'core'), + CompanyModule, + PersonModule, + BlocklistModule, + HttpModule.register({ + baseURL: 'https://www.googleapis.com/batch/gmail/v1', + }), + ], + providers: [ + GmailFullSyncService, + GmailPartialSyncService, + FetchMessagesByBatchesService, + GoogleAPIsRefreshAccessTokenService, + GmailClientProvider, + CreateContactService, + CreateCompanyService, + MessagingPersonListener, + MessagingWorkspaceMemberListener, + MessagingMessageChannelListener, + MessageService, + SaveMessagesAndCreateContactsService, + MessagingConnectedAccountListener, + FetchByBatchesService, + ], + exports: [ + GmailPartialSyncService, + GmailFullSyncService, + GoogleAPIsRefreshAccessTokenService, + FetchByBatchesService, + ], +}) +export class MessagingModule {} diff --git a/packages/twenty-server/src/business/modules/message/query-hooks/message/message-find-many.pre-query.hook.ts b/packages/twenty-server/src/modules/messaging/query-hooks/message/message-find-many.pre-query.hook.ts similarity index 73% rename from packages/twenty-server/src/business/modules/message/query-hooks/message/message-find-many.pre-query.hook.ts rename to packages/twenty-server/src/modules/messaging/query-hooks/message/message-find-many.pre-query.hook.ts index 14de89bc537..b5fb45c3f86 100644 --- a/packages/twenty-server/src/business/modules/message/query-hooks/message/message-find-many.pre-query.hook.ts +++ b/packages/twenty-server/src/modules/messaging/query-hooks/message/message-find-many.pre-query.hook.ts @@ -7,13 +7,13 @@ import { import { groupBy } from 'lodash'; -import { WorkspacePreQueryHook } from 'src/engine/graphql/workspace-query-runner/workspace-pre-query-hook/interfaces/workspace-pre-query-hook.interface'; -import { FindManyResolverArgs } from 'src/engine/graphql/workspace-resolver-builder/interfaces/workspace-resolvers-builder.interface'; +import { WorkspacePreQueryHook } from 'src/engine/api/graphql/workspace-query-runner/workspace-pre-query-hook/interfaces/workspace-pre-query-hook.interface'; +import { FindManyResolverArgs } from 'src/engine/api/graphql/workspace-resolver-builder/interfaces/workspace-resolvers-builder.interface'; -import { MessageChannelMessageAssociationService } from 'src/business/modules/message/repositories/message-channel-message-association/message-channel-message-association.service'; -import { MessageChannelService } from 'src/business/modules/message/repositories/message-channel/message-channel.service'; -import { ConnectedAccountService } from 'src/business/modules/calendar-and-messaging/repositories/connected-account/connected-account.service'; -import { WorkspaceMemberService } from 'src/engine-workspace/repositories/workspace-member/workspace-member.service'; +import { MessageChannelMessageAssociationService } from 'src/modules/messaging/repositories/message-channel-message-association/message-channel-message-association.service'; +import { MessageChannelService } from 'src/modules/messaging/repositories/message-channel/message-channel.service'; +import { ConnectedAccountService } from 'src/modules/connected-account/repositories/connected-account/connected-account.service'; +import { WorkspaceMemberService } from 'src/modules/workspace-member/repositories/workspace-member/workspace-member.service'; @Injectable() export class MessageFindManyPreQueryHook implements WorkspacePreQueryHook { diff --git a/packages/twenty-server/src/business/modules/message/query-hooks/message/message-find-one.pre-query-hook.ts b/packages/twenty-server/src/modules/messaging/query-hooks/message/message-find-one.pre-query-hook.ts similarity index 57% rename from packages/twenty-server/src/business/modules/message/query-hooks/message/message-find-one.pre-query-hook.ts rename to packages/twenty-server/src/modules/messaging/query-hooks/message/message-find-one.pre-query-hook.ts index a23663404f5..fb8585815d7 100644 --- a/packages/twenty-server/src/business/modules/message/query-hooks/message/message-find-one.pre-query-hook.ts +++ b/packages/twenty-server/src/modules/messaging/query-hooks/message/message-find-one.pre-query-hook.ts @@ -1,8 +1,8 @@ /* eslint-disable @typescript-eslint/no-unused-vars */ import { BadRequestException, Injectable } from '@nestjs/common'; -import { WorkspacePreQueryHook } from 'src/engine/graphql/workspace-query-runner/workspace-pre-query-hook/interfaces/workspace-pre-query-hook.interface'; -import { FindOneResolverArgs } from 'src/engine/graphql/workspace-resolver-builder/interfaces/workspace-resolvers-builder.interface'; +import { WorkspacePreQueryHook } from 'src/engine/api/graphql/workspace-query-runner/workspace-pre-query-hook/interfaces/workspace-pre-query-hook.interface'; +import { FindOneResolverArgs } from 'src/engine/api/graphql/workspace-resolver-builder/interfaces/workspace-resolvers-builder.interface'; @Injectable() export class MessageFindOnePreQueryHook implements WorkspacePreQueryHook { diff --git a/packages/twenty-server/src/modules/messaging/query-hooks/messaging-query-hook.module.ts b/packages/twenty-server/src/modules/messaging/query-hooks/messaging-query-hook.module.ts new file mode 100644 index 00000000000..0b47c48ff9f --- /dev/null +++ b/packages/twenty-server/src/modules/messaging/query-hooks/messaging-query-hook.module.ts @@ -0,0 +1,28 @@ +import { Module } from '@nestjs/common'; + +import { MessageFindManyPreQueryHook } from 'src/modules/messaging/query-hooks/message/message-find-many.pre-query.hook'; +import { MessageFindOnePreQueryHook } from 'src/modules/messaging/query-hooks/message/message-find-one.pre-query-hook'; +import { ConnectedAccountModule } from 'src/modules/connected-account/repositories/connected-account/connected-account.module'; +import { MessageChannelMessageAssociationModule } from 'src/modules/messaging/repositories/message-channel-message-association/message-channel-message-assocation.module'; +import { MessageChannelModule } from 'src/modules/messaging/repositories/message-channel/message-channel.module'; +import { WorkspaceMemberModule } from 'src/modules/workspace-member/repositories/workspace-member/workspace-member.module'; + +@Module({ + imports: [ + MessageChannelMessageAssociationModule, + MessageChannelModule, + ConnectedAccountModule, + WorkspaceMemberModule, + ], + providers: [ + { + provide: MessageFindOnePreQueryHook.name, + useClass: MessageFindOnePreQueryHook, + }, + { + provide: MessageFindManyPreQueryHook.name, + useClass: MessageFindManyPreQueryHook, + }, + ], +}) +export class MessagingQueryHookModule {} diff --git a/packages/twenty-server/src/business/modules/message/repositories/company/company.module.ts b/packages/twenty-server/src/modules/messaging/repositories/company/company.module.ts similarity index 77% rename from packages/twenty-server/src/business/modules/message/repositories/company/company.module.ts rename to packages/twenty-server/src/modules/messaging/repositories/company/company.module.ts index eb82ec64f29..61460d6bf87 100644 --- a/packages/twenty-server/src/business/modules/message/repositories/company/company.module.ts +++ b/packages/twenty-server/src/modules/messaging/repositories/company/company.module.ts @@ -1,6 +1,6 @@ import { Module } from '@nestjs/common'; -import { CompanyService } from 'src/business/modules/message/repositories/company/company.service'; +import { CompanyService } from 'src/modules/messaging/repositories/company/company.service'; import { WorkspaceDataSourceModule } from 'src/engine/workspace-datasource/workspace-datasource.module'; // TODO: Move outside of the messaging module diff --git a/packages/twenty-server/src/business/modules/message/repositories/company/company.service.ts b/packages/twenty-server/src/modules/messaging/repositories/company/company.service.ts similarity index 100% rename from packages/twenty-server/src/business/modules/message/repositories/company/company.service.ts rename to packages/twenty-server/src/modules/messaging/repositories/company/company.service.ts diff --git a/packages/twenty-server/src/business/modules/message/repositories/message-channel-message-association/message-channel-message-assocation.module.ts b/packages/twenty-server/src/modules/messaging/repositories/message-channel-message-association/message-channel-message-assocation.module.ts similarity index 66% rename from packages/twenty-server/src/business/modules/message/repositories/message-channel-message-association/message-channel-message-assocation.module.ts rename to packages/twenty-server/src/modules/messaging/repositories/message-channel-message-association/message-channel-message-assocation.module.ts index 9019827de82..7c9f4de8f5a 100644 --- a/packages/twenty-server/src/business/modules/message/repositories/message-channel-message-association/message-channel-message-assocation.module.ts +++ b/packages/twenty-server/src/modules/messaging/repositories/message-channel-message-association/message-channel-message-assocation.module.ts @@ -1,6 +1,6 @@ import { Module } from '@nestjs/common'; -import { MessageChannelMessageAssociationService } from 'src/business/modules/message/repositories/message-channel-message-association/message-channel-message-association.service'; +import { MessageChannelMessageAssociationService } from 'src/modules/messaging/repositories/message-channel-message-association/message-channel-message-association.service'; import { WorkspaceDataSourceModule } from 'src/engine/workspace-datasource/workspace-datasource.module'; @Module({ diff --git a/packages/twenty-server/src/business/modules/message/repositories/message-channel-message-association/message-channel-message-association.service.ts b/packages/twenty-server/src/modules/messaging/repositories/message-channel-message-association/message-channel-message-association.service.ts similarity index 98% rename from packages/twenty-server/src/business/modules/message/repositories/message-channel-message-association/message-channel-message-association.service.ts rename to packages/twenty-server/src/modules/messaging/repositories/message-channel-message-association/message-channel-message-association.service.ts index 83aefc1717e..17454e6027b 100644 --- a/packages/twenty-server/src/business/modules/message/repositories/message-channel-message-association/message-channel-message-association.service.ts +++ b/packages/twenty-server/src/modules/messaging/repositories/message-channel-message-association/message-channel-message-association.service.ts @@ -3,7 +3,7 @@ import { Injectable } from '@nestjs/common'; import { EntityManager } from 'typeorm'; import { WorkspaceDataSourceService } from 'src/engine/workspace-datasource/workspace-datasource.service'; -import { MessageChannelMessageAssociationObjectMetadata } from 'src/business/modules/message/message-channel-message-association.object-metadata'; +import { MessageChannelMessageAssociationObjectMetadata } from 'src/modules/messaging/standard-objects/message-channel-message-association.object-metadata'; import { ObjectRecord } from 'src/engine/workspace-manager/workspace-sync-metadata/types/object-record'; @Injectable() diff --git a/packages/twenty-server/src/business/modules/message/repositories/message-channel/message-channel.module.ts b/packages/twenty-server/src/modules/messaging/repositories/message-channel/message-channel.module.ts similarity index 71% rename from packages/twenty-server/src/business/modules/message/repositories/message-channel/message-channel.module.ts rename to packages/twenty-server/src/modules/messaging/repositories/message-channel/message-channel.module.ts index 9524ca82287..90661ee6b50 100644 --- a/packages/twenty-server/src/business/modules/message/repositories/message-channel/message-channel.module.ts +++ b/packages/twenty-server/src/modules/messaging/repositories/message-channel/message-channel.module.ts @@ -1,6 +1,6 @@ import { Module } from '@nestjs/common'; -import { MessageChannelService } from 'src/business/modules/message/repositories/message-channel/message-channel.service'; +import { MessageChannelService } from 'src/modules/messaging/repositories/message-channel/message-channel.service'; import { WorkspaceDataSourceModule } from 'src/engine/workspace-datasource/workspace-datasource.module'; @Module({ diff --git a/packages/twenty-server/src/business/modules/message/repositories/message-channel/message-channel.service.ts b/packages/twenty-server/src/modules/messaging/repositories/message-channel/message-channel.service.ts similarity index 95% rename from packages/twenty-server/src/business/modules/message/repositories/message-channel/message-channel.service.ts rename to packages/twenty-server/src/modules/messaging/repositories/message-channel/message-channel.service.ts index 9723f52cd78..71712ea6788 100644 --- a/packages/twenty-server/src/business/modules/message/repositories/message-channel/message-channel.service.ts +++ b/packages/twenty-server/src/modules/messaging/repositories/message-channel/message-channel.service.ts @@ -3,7 +3,7 @@ import { Injectable } from '@nestjs/common'; import { EntityManager } from 'typeorm'; import { WorkspaceDataSourceService } from 'src/engine/workspace-datasource/workspace-datasource.service'; -import { MessageChannelObjectMetadata } from 'src/business/modules/message/message-channel.object-metadata'; +import { MessageChannelObjectMetadata } from 'src/modules/messaging/standard-objects/message-channel.object-metadata'; import { ObjectRecord } from 'src/engine/workspace-manager/workspace-sync-metadata/types/object-record'; @Injectable() diff --git a/packages/twenty-server/src/business/modules/message/repositories/message-participant/message-participant.module.ts b/packages/twenty-server/src/modules/messaging/repositories/message-participant/message-participant.module.ts similarity index 60% rename from packages/twenty-server/src/business/modules/message/repositories/message-participant/message-participant.module.ts rename to packages/twenty-server/src/modules/messaging/repositories/message-participant/message-participant.module.ts index eab29afbf1c..e8754fe547b 100644 --- a/packages/twenty-server/src/business/modules/message/repositories/message-participant/message-participant.module.ts +++ b/packages/twenty-server/src/modules/messaging/repositories/message-participant/message-participant.module.ts @@ -1,8 +1,8 @@ import { Module } from '@nestjs/common'; -import { MessageParticipantService } from 'src/business/modules/message/repositories/message-participant/message-participant.service'; +import { MessageParticipantService } from 'src/modules/messaging/repositories/message-participant/message-participant.service'; import { WorkspaceDataSourceModule } from 'src/engine/workspace-datasource/workspace-datasource.module'; -import { PersonModule } from 'src/engine-workspace/repositories/person/person.module'; +import { PersonModule } from 'src/modules/person/repositories/person/person.module'; @Module({ imports: [WorkspaceDataSourceModule, PersonModule], diff --git a/packages/twenty-server/src/business/modules/message/repositories/message-participant/message-participant.service.ts b/packages/twenty-server/src/modules/messaging/repositories/message-participant/message-participant.service.ts similarity index 96% rename from packages/twenty-server/src/business/modules/message/repositories/message-participant/message-participant.service.ts rename to packages/twenty-server/src/modules/messaging/repositories/message-participant/message-participant.service.ts index 0c4d093ae45..71b9635f648 100644 --- a/packages/twenty-server/src/business/modules/message/repositories/message-participant/message-participant.service.ts +++ b/packages/twenty-server/src/modules/messaging/repositories/message-participant/message-participant.service.ts @@ -3,13 +3,13 @@ import { Injectable } from '@nestjs/common'; import { EntityManager } from 'typeorm'; import { WorkspaceDataSourceService } from 'src/engine/workspace-datasource/workspace-datasource.service'; -import { MessageParticipantObjectMetadata } from 'src/business/modules/message/message-participant.object-metadata'; +import { MessageParticipantObjectMetadata } from 'src/modules/messaging/standard-objects/message-participant.object-metadata'; import { ObjectRecord } from 'src/engine/workspace-manager/workspace-sync-metadata/types/object-record'; import { ParticipantWithId, ParticipantWithMessageId, -} from 'src/business/modules/message/types/gmail-message'; -import { PersonService } from 'src/engine-workspace/repositories/person/person.service'; +} from 'src/modules/messaging/types/gmail-message'; +import { PersonService } from 'src/modules/person/repositories/person/person.service'; @Injectable() export class MessageParticipantService { diff --git a/packages/twenty-server/src/business/modules/message/repositories/message-thread/message-thread.module.ts b/packages/twenty-server/src/modules/messaging/repositories/message-thread/message-thread.module.ts similarity index 50% rename from packages/twenty-server/src/business/modules/message/repositories/message-thread/message-thread.module.ts rename to packages/twenty-server/src/modules/messaging/repositories/message-thread/message-thread.module.ts index 6502cbfe5d9..d08c2358bac 100644 --- a/packages/twenty-server/src/business/modules/message/repositories/message-thread/message-thread.module.ts +++ b/packages/twenty-server/src/modules/messaging/repositories/message-thread/message-thread.module.ts @@ -1,8 +1,8 @@ import { Module, forwardRef } from '@nestjs/common'; -import { MessageChannelMessageAssociationModule } from 'src/business/modules/message/repositories/message-channel-message-association/message-channel-message-assocation.module'; -import { MessageThreadService } from 'src/business/modules/message/repositories/message-thread/message-thread.service'; -import { MessageModule } from 'src/business/modules/message/repositories/message/message.module'; +import { MessageChannelMessageAssociationModule } from 'src/modules/messaging/repositories/message-channel-message-association/message-channel-message-assocation.module'; +import { MessageThreadService } from 'src/modules/messaging/repositories/message-thread/message-thread.service'; +import { MessageModule } from 'src/modules/messaging/repositories/message/message.module'; import { WorkspaceDataSourceModule } from 'src/engine/workspace-datasource/workspace-datasource.module'; @Module({ diff --git a/packages/twenty-server/src/business/modules/message/repositories/message-thread/message-thread.service.ts b/packages/twenty-server/src/modules/messaging/repositories/message-thread/message-thread.service.ts similarity index 92% rename from packages/twenty-server/src/business/modules/message/repositories/message-thread/message-thread.service.ts rename to packages/twenty-server/src/modules/messaging/repositories/message-thread/message-thread.service.ts index 823fc74ceb8..b4196940964 100644 --- a/packages/twenty-server/src/business/modules/message/repositories/message-thread/message-thread.service.ts +++ b/packages/twenty-server/src/modules/messaging/repositories/message-thread/message-thread.service.ts @@ -5,8 +5,8 @@ import { v4 } from 'uuid'; import { WorkspaceDataSourceService } from 'src/engine/workspace-datasource/workspace-datasource.service'; import { DataSourceEntity } from 'src/engine-metadata/data-source/data-source.entity'; -import { MessageChannelMessageAssociationService } from 'src/business/modules/message/repositories/message-channel-message-association/message-channel-message-association.service'; -import { MessageService } from 'src/business/modules/message/repositories/message/message.service'; +import { MessageChannelMessageAssociationService } from 'src/modules/messaging/repositories/message-channel-message-association/message-channel-message-association.service'; +import { MessageService } from 'src/modules/messaging/repositories/message/message.service'; @Injectable() export class MessageThreadService { diff --git a/packages/twenty-server/src/modules/messaging/repositories/message/message.module.ts b/packages/twenty-server/src/modules/messaging/repositories/message/message.module.ts new file mode 100644 index 00000000000..d6cbaab6d81 --- /dev/null +++ b/packages/twenty-server/src/modules/messaging/repositories/message/message.module.ts @@ -0,0 +1,23 @@ +import { Module, forwardRef } from '@nestjs/common'; + +import { MessageChannelModule } from 'src/modules/messaging/repositories/message-channel/message-channel.module'; +import { MessageChannelMessageAssociationModule } from 'src/modules/messaging/repositories/message-channel-message-association/message-channel-message-assocation.module'; +import { MessageParticipantModule } from 'src/modules/messaging/repositories/message-participant/message-participant.module'; +import { MessageThreadModule } from 'src/modules/messaging/repositories/message-thread/message-thread.module'; +import { MessageService } from 'src/modules/messaging/repositories/message/message.service'; +import { WorkspaceDataSourceModule } from 'src/engine/workspace-datasource/workspace-datasource.module'; +import { CreateCompaniesAndContactsModule } from 'src/modules/connected-account/auto-companies-and-contacts-creation/create-company-and-contact/create-company-and-contact.module'; + +@Module({ + imports: [ + WorkspaceDataSourceModule, + forwardRef(() => MessageThreadModule), + MessageParticipantModule, + MessageChannelMessageAssociationModule, + MessageChannelModule, + CreateCompaniesAndContactsModule, + ], + providers: [MessageService], + exports: [MessageService], +}) +export class MessageModule {} diff --git a/packages/twenty-server/src/business/modules/message/repositories/message/message.service.ts b/packages/twenty-server/src/modules/messaging/repositories/message/message.service.ts similarity index 93% rename from packages/twenty-server/src/business/modules/message/repositories/message/message.service.ts rename to packages/twenty-server/src/modules/messaging/repositories/message/message.service.ts index 405076cd279..1dd039ac146 100644 --- a/packages/twenty-server/src/business/modules/message/repositories/message/message.service.ts +++ b/packages/twenty-server/src/modules/messaging/repositories/message/message.service.ts @@ -4,14 +4,14 @@ import { DataSource, EntityManager } from 'typeorm'; import { v4 } from 'uuid'; import { WorkspaceDataSourceService } from 'src/engine/workspace-datasource/workspace-datasource.service'; -import { MessageObjectMetadata } from 'src/business/modules/message/message.object-metadata'; +import { MessageObjectMetadata } from 'src/modules/messaging/standard-objects/message.object-metadata'; import { ObjectRecord } from 'src/engine/workspace-manager/workspace-sync-metadata/types/object-record'; import { DataSourceEntity } from 'src/engine-metadata/data-source/data-source.entity'; -import { GmailMessage } from 'src/business/modules/message/types/gmail-message'; -import { ConnectedAccountObjectMetadata } from 'src/business/modules/connected-account/connected-account.object-metadata'; -import { MessageChannelMessageAssociationService } from 'src/business/modules/message/repositories/message-channel-message-association/message-channel-message-association.service'; -import { MessageThreadService } from 'src/business/modules/message/repositories/message-thread/message-thread.service'; -import { MessageChannelService } from 'src/business/modules/message/repositories/message-channel/message-channel.service'; +import { GmailMessage } from 'src/modules/messaging/types/gmail-message'; +import { ConnectedAccountObjectMetadata } from 'src/modules/connected-account/standard-objects/connected-account.object-metadata'; +import { MessageChannelMessageAssociationService } from 'src/modules/messaging/repositories/message-channel-message-association/message-channel-message-association.service'; +import { MessageThreadService } from 'src/modules/messaging/repositories/message-thread/message-thread.service'; +import { MessageChannelService } from 'src/modules/messaging/repositories/message-channel/message-channel.service'; @Injectable() export class MessageService { diff --git a/packages/twenty-server/src/business/modules/message/services/fetch-by-batch.service.ts b/packages/twenty-server/src/modules/messaging/services/fetch-by-batch.service.ts similarity index 93% rename from packages/twenty-server/src/business/modules/message/services/fetch-by-batch.service.ts rename to packages/twenty-server/src/modules/messaging/services/fetch-by-batch.service.ts index 0e1af2b8e74..4d12b306b01 100644 --- a/packages/twenty-server/src/business/modules/message/services/fetch-by-batch.service.ts +++ b/packages/twenty-server/src/modules/messaging/services/fetch-by-batch.service.ts @@ -3,8 +3,8 @@ import { Injectable } from '@nestjs/common'; import { AxiosResponse } from 'axios'; -import { BatchQueries } from 'src/business/modules/calendar-and-messaging/types/batch-queries'; -import { GmailMessageParsedResponse } from 'src/business/modules/message/types/gmail-message-parsed-response'; +import { BatchQueries } from 'src/modules/messaging/types/batch-queries'; +import { GmailMessageParsedResponse } from 'src/modules/messaging/types/gmail-message-parsed-response'; @Injectable() export class FetchByBatchesService { diff --git a/packages/twenty-server/src/business/modules/message/services/fetch-messages-by-batches.service.ts b/packages/twenty-server/src/modules/messaging/services/fetch-messages-by-batches.service.ts similarity index 89% rename from packages/twenty-server/src/business/modules/message/services/fetch-messages-by-batches.service.ts rename to packages/twenty-server/src/modules/messaging/services/fetch-messages-by-batches.service.ts index 9ba6ce853cf..9fb5badbf3b 100644 --- a/packages/twenty-server/src/business/modules/message/services/fetch-messages-by-batches.service.ts +++ b/packages/twenty-server/src/modules/messaging/services/fetch-messages-by-batches.service.ts @@ -4,11 +4,11 @@ import { AxiosResponse } from 'axios'; import { simpleParser } from 'mailparser'; import planer from 'planer'; -import { GmailMessage } from 'src/business/modules/message/types/gmail-message'; -import { MessageQuery } from 'src/business/modules/message/types/message-or-thread-query'; -import { GmailMessageParsedResponse } from 'src/business/modules/message/types/gmail-message-parsed-response'; -import { FetchByBatchesService } from 'src/business/modules/message/services/fetch-by-batch.service'; -import { formatAddressObjectAsParticipants } from 'src/business/modules/message/services/utils/format-address-object-as-participants.util'; +import { GmailMessage } from 'src/modules/messaging/types/gmail-message'; +import { MessageQuery } from 'src/modules/messaging/types/message-or-thread-query'; +import { GmailMessageParsedResponse } from 'src/modules/messaging/types/gmail-message-parsed-response'; +import { FetchByBatchesService } from 'src/modules/messaging/services/fetch-by-batch.service'; +import { formatAddressObjectAsParticipants } from 'src/modules/messaging/services/utils/format-address-object-as-participants.util'; @Injectable() export class FetchMessagesByBatchesService { diff --git a/packages/twenty-server/src/business/modules/message/services/gmail-full-sync.service.ts b/packages/twenty-server/src/modules/messaging/services/gmail-full-sync.service.ts similarity index 83% rename from packages/twenty-server/src/business/modules/message/services/gmail-full-sync.service.ts rename to packages/twenty-server/src/modules/messaging/services/gmail-full-sync.service.ts index a3d67f4d458..cfcfe9171ff 100644 --- a/packages/twenty-server/src/business/modules/message/services/gmail-full-sync.service.ts +++ b/packages/twenty-server/src/modules/messaging/services/gmail-full-sync.service.ts @@ -3,21 +3,21 @@ import { InjectRepository } from '@nestjs/typeorm'; import { Repository } from 'typeorm'; -import { FetchMessagesByBatchesService } from 'src/business/modules/message/services/fetch-messages-by-batches.service'; -import { GmailClientProvider } from 'src/business/modules/message/services/providers/gmail/gmail-client.provider'; -import { MessageQueue } from 'src/integrations/message-queue/message-queue.constants'; -import { MessageQueueService } from 'src/integrations/message-queue/services/message-queue.service'; +import { FetchMessagesByBatchesService } from 'src/modules/messaging/services/fetch-messages-by-batches.service'; +import { GmailClientProvider } from 'src/modules/messaging/services/providers/gmail/gmail-client.provider'; +import { MessageQueue } from 'src/engine/integrations/message-queue/message-queue.constants'; +import { MessageQueueService } from 'src/engine/integrations/message-queue/services/message-queue.service'; import { GmailFullSyncJobData, GmailFullSyncJob, -} from 'src/business/modules/message/jobs/gmail-full-sync.job'; -import { ConnectedAccountService } from 'src/business/modules/calendar-and-messaging/repositories/connected-account/connected-account.service'; -import { MessageChannelService } from 'src/business/modules/message/repositories/message-channel/message-channel.service'; -import { MessageChannelMessageAssociationService } from 'src/business/modules/message/repositories/message-channel-message-association/message-channel-message-association.service'; -import { createQueriesFromMessageIds } from 'src/business/modules/message/utils/create-queries-from-message-ids.util'; -import { gmailSearchFilterExcludeEmails } from 'src/business/modules/message/utils/gmail-search-filter.util'; -import { BlocklistService } from 'src/business/modules/calendar-and-messaging/repositories/blocklist/blocklist.service'; -import { SaveMessagesAndCreateContactsService } from 'src/business/modules/message/services/save-messages-and-create-contacts.service'; +} from 'src/modules/messaging/jobs/gmail-full-sync.job'; +import { ConnectedAccountService } from 'src/modules/connected-account/repositories/connected-account/connected-account.service'; +import { MessageChannelService } from 'src/modules/messaging/repositories/message-channel/message-channel.service'; +import { MessageChannelMessageAssociationService } from 'src/modules/messaging/repositories/message-channel-message-association/message-channel-message-association.service'; +import { createQueriesFromMessageIds } from 'src/modules/messaging/utils/create-queries-from-message-ids.util'; +import { gmailSearchFilterExcludeEmails } from 'src/modules/messaging/utils/gmail-search-filter.util'; +import { BlocklistService } from 'src/modules/connected-account/repositories/blocklist/blocklist.service'; +import { SaveMessagesAndCreateContactsService } from 'src/modules/messaging/services/save-messages-and-create-contacts.service'; import { FeatureFlagEntity, FeatureFlagKeys, diff --git a/packages/twenty-server/src/business/modules/message/services/gmail-partial-sync.service.ts b/packages/twenty-server/src/modules/messaging/services/gmail-partial-sync.service.ts similarity index 89% rename from packages/twenty-server/src/business/modules/message/services/gmail-partial-sync.service.ts rename to packages/twenty-server/src/modules/messaging/services/gmail-partial-sync.service.ts index 0649b0ee522..a9698b63cee 100644 --- a/packages/twenty-server/src/business/modules/message/services/gmail-partial-sync.service.ts +++ b/packages/twenty-server/src/modules/messaging/services/gmail-partial-sync.service.ts @@ -4,22 +4,22 @@ import { InjectRepository } from '@nestjs/typeorm'; import { gmail_v1 } from 'googleapis'; import { Repository } from 'typeorm'; -import { FetchMessagesByBatchesService } from 'src/business/modules/message/services/fetch-messages-by-batches.service'; -import { GmailClientProvider } from 'src/business/modules/message/services/providers/gmail/gmail-client.provider'; -import { MessageQueueService } from 'src/integrations/message-queue/services/message-queue.service'; -import { MessageQueue } from 'src/integrations/message-queue/message-queue.constants'; +import { FetchMessagesByBatchesService } from 'src/modules/messaging/services/fetch-messages-by-batches.service'; +import { GmailClientProvider } from 'src/modules/messaging/services/providers/gmail/gmail-client.provider'; +import { MessageQueueService } from 'src/engine/integrations/message-queue/services/message-queue.service'; +import { MessageQueue } from 'src/engine/integrations/message-queue/message-queue.constants'; import { GmailFullSyncJob, GmailFullSyncJobData, -} from 'src/business/modules/message/jobs/gmail-full-sync.job'; -import { ConnectedAccountService } from 'src/business/modules/calendar-and-messaging/repositories/connected-account/connected-account.service'; -import { MessageChannelService } from 'src/business/modules/message/repositories/message-channel/message-channel.service'; -import { MessageService } from 'src/business/modules/message/repositories/message/message.service'; -import { createQueriesFromMessageIds } from 'src/business/modules/message/utils/create-queries-from-message-ids.util'; -import { GmailMessage } from 'src/business/modules/message/types/gmail-message'; -import { isPersonEmail } from 'src/business/modules/message/utils/is-person-email.util'; -import { BlocklistService } from 'src/business/modules/calendar-and-messaging/repositories/blocklist/blocklist.service'; -import { SaveMessagesAndCreateContactsService } from 'src/business/modules/message/services/save-messages-and-create-contacts.service'; +} from 'src/modules/messaging/jobs/gmail-full-sync.job'; +import { ConnectedAccountService } from 'src/modules/connected-account/repositories/connected-account/connected-account.service'; +import { MessageChannelService } from 'src/modules/messaging/repositories/message-channel/message-channel.service'; +import { MessageService } from 'src/modules/messaging/repositories/message/message.service'; +import { createQueriesFromMessageIds } from 'src/modules/messaging/utils/create-queries-from-message-ids.util'; +import { GmailMessage } from 'src/modules/messaging/types/gmail-message'; +import { isPersonEmail } from 'src/modules/messaging/utils/is-person-email.util'; +import { BlocklistService } from 'src/modules/connected-account/repositories/blocklist/blocklist.service'; +import { SaveMessagesAndCreateContactsService } from 'src/modules/messaging/services/save-messages-and-create-contacts.service'; import { FeatureFlagEntity, FeatureFlagKeys, diff --git a/packages/twenty-server/src/business/modules/message/services/providers/gmail/gmail-client.provider.ts b/packages/twenty-server/src/modules/messaging/services/providers/gmail/gmail-client.provider.ts similarity index 91% rename from packages/twenty-server/src/business/modules/message/services/providers/gmail/gmail-client.provider.ts rename to packages/twenty-server/src/modules/messaging/services/providers/gmail/gmail-client.provider.ts index a8e397d349f..3b5e591ac54 100644 --- a/packages/twenty-server/src/business/modules/message/services/providers/gmail/gmail-client.provider.ts +++ b/packages/twenty-server/src/modules/messaging/services/providers/gmail/gmail-client.provider.ts @@ -3,7 +3,7 @@ import { Injectable } from '@nestjs/common'; import { OAuth2Client } from 'google-auth-library'; import { gmail_v1, google } from 'googleapis'; -import { EnvironmentService } from 'src/integrations/environment/environment.service'; +import { EnvironmentService } from 'src/engine/integrations/environment/environment.service'; @Injectable() export class GmailClientProvider { diff --git a/packages/twenty-server/src/modules/messaging/services/providers/messaging-providers.module.ts b/packages/twenty-server/src/modules/messaging/services/providers/messaging-providers.module.ts new file mode 100644 index 00000000000..fc0cb1c178d --- /dev/null +++ b/packages/twenty-server/src/modules/messaging/services/providers/messaging-providers.module.ts @@ -0,0 +1,11 @@ +import { Module } from '@nestjs/common'; + +import { EnvironmentModule } from 'src/engine/integrations/environment/environment.module'; +import { GmailClientProvider } from 'src/modules/messaging/services/providers/gmail/gmail-client.provider'; + +@Module({ + imports: [EnvironmentModule], + providers: [GmailClientProvider], + exports: [GmailClientProvider], +}) +export class MessagingProvidersModule {} diff --git a/packages/twenty-server/src/business/modules/message/services/save-messages-and-create-contacts.service.ts b/packages/twenty-server/src/modules/messaging/services/save-messages-and-create-contacts.service.ts similarity index 88% rename from packages/twenty-server/src/business/modules/message/services/save-messages-and-create-contacts.service.ts rename to packages/twenty-server/src/modules/messaging/services/save-messages-and-create-contacts.service.ts index 138c3932cf0..87669c8cfe9 100644 --- a/packages/twenty-server/src/business/modules/message/services/save-messages-and-create-contacts.service.ts +++ b/packages/twenty-server/src/modules/messaging/services/save-messages-and-create-contacts.service.ts @@ -2,16 +2,16 @@ import { Injectable, Logger } from '@nestjs/common'; import { EntityManager } from 'typeorm'; -import { MessageChannelService } from 'src/business/modules/message/repositories/message-channel/message-channel.service'; -import { MessageParticipantService } from 'src/business/modules/message/repositories/message-participant/message-participant.service'; -import { MessageService } from 'src/business/modules/message/repositories/message/message.service'; -import { CreateCompanyAndContactService } from 'src/engine-workspace/auto-companies-and-contacts-creation/create-company-and-contact/create-company-and-contact.service'; +import { MessageChannelService } from 'src/modules/messaging/repositories/message-channel/message-channel.service'; +import { MessageParticipantService } from 'src/modules/messaging/repositories/message-participant/message-participant.service'; +import { MessageService } from 'src/modules/messaging/repositories/message/message.service'; +import { CreateCompanyAndContactService } from 'src/modules/connected-account/auto-companies-and-contacts-creation/create-company-and-contact/create-company-and-contact.service'; import { GmailMessage, ParticipantWithMessageId, -} from 'src/business/modules/message/types/gmail-message'; +} from 'src/modules/messaging/types/gmail-message'; import { WorkspaceDataSourceService } from 'src/engine/workspace-datasource/workspace-datasource.service'; -import { ConnectedAccountObjectMetadata } from 'src/business/modules/connected-account/connected-account.object-metadata'; +import { ConnectedAccountObjectMetadata } from 'src/modules/connected-account/standard-objects/connected-account.object-metadata'; import { ObjectRecord } from 'src/engine/workspace-manager/workspace-sync-metadata/types/object-record'; @Injectable() diff --git a/packages/twenty-server/src/business/modules/message/services/thread-cleaner/thread-cleaner.module.ts b/packages/twenty-server/src/modules/messaging/services/thread-cleaner/thread-cleaner.module.ts similarity index 56% rename from packages/twenty-server/src/business/modules/message/services/thread-cleaner/thread-cleaner.module.ts rename to packages/twenty-server/src/modules/messaging/services/thread-cleaner/thread-cleaner.module.ts index 80b969eabf1..722c3b0092b 100644 --- a/packages/twenty-server/src/business/modules/message/services/thread-cleaner/thread-cleaner.module.ts +++ b/packages/twenty-server/src/modules/messaging/services/thread-cleaner/thread-cleaner.module.ts @@ -2,9 +2,9 @@ import { Module } from '@nestjs/common'; import { TypeORMModule } from 'src/database/typeorm/typeorm.module'; import { DataSourceModule } from 'src/engine-metadata/data-source/data-source.module'; -import { MessageThreadModule } from 'src/business/modules/message/repositories/message-thread/message-thread.module'; -import { MessageModule } from 'src/business/modules/message/repositories/message/message.module'; -import { ThreadCleanerService } from 'src/business/modules/message/services/thread-cleaner/thread-cleaner.service'; +import { MessageThreadModule } from 'src/modules/messaging/repositories/message-thread/message-thread.module'; +import { MessageModule } from 'src/modules/messaging/repositories/message/message.module'; +import { ThreadCleanerService } from 'src/modules/messaging/services/thread-cleaner/thread-cleaner.service'; @Module({ imports: [ diff --git a/packages/twenty-server/src/business/modules/message/services/thread-cleaner/thread-cleaner.service.ts b/packages/twenty-server/src/modules/messaging/services/thread-cleaner/thread-cleaner.service.ts similarity index 75% rename from packages/twenty-server/src/business/modules/message/services/thread-cleaner/thread-cleaner.service.ts rename to packages/twenty-server/src/modules/messaging/services/thread-cleaner/thread-cleaner.service.ts index 8219e5b9c6b..3374882b634 100644 --- a/packages/twenty-server/src/business/modules/message/services/thread-cleaner/thread-cleaner.service.ts +++ b/packages/twenty-server/src/modules/messaging/services/thread-cleaner/thread-cleaner.service.ts @@ -2,9 +2,9 @@ import { Injectable } from '@nestjs/common'; import { TypeORMService } from 'src/database/typeorm/typeorm.service'; import { DataSourceService } from 'src/engine-metadata/data-source/data-source.service'; -import { MessageThreadService } from 'src/business/modules/message/repositories/message-thread/message-thread.service'; -import { MessageService } from 'src/business/modules/message/repositories/message/message.service'; -import { deleteUsingPagination } from 'src/business/modules/message/services/thread-cleaner/utils/delete-using-pagination.util'; +import { MessageThreadService } from 'src/modules/messaging/repositories/message-thread/message-thread.service'; +import { MessageService } from 'src/modules/messaging/repositories/message/message.service'; +import { deleteUsingPagination } from 'src/modules/messaging/services/thread-cleaner/utils/delete-using-pagination.util'; @Injectable() export class ThreadCleanerService { diff --git a/packages/twenty-server/src/business/modules/message/services/thread-cleaner/utils/delete-using-pagination.util.spec.ts b/packages/twenty-server/src/modules/messaging/services/thread-cleaner/utils/delete-using-pagination.util.spec.ts similarity index 100% rename from packages/twenty-server/src/business/modules/message/services/thread-cleaner/utils/delete-using-pagination.util.spec.ts rename to packages/twenty-server/src/modules/messaging/services/thread-cleaner/utils/delete-using-pagination.util.spec.ts diff --git a/packages/twenty-server/src/business/modules/message/services/thread-cleaner/utils/delete-using-pagination.util.ts b/packages/twenty-server/src/modules/messaging/services/thread-cleaner/utils/delete-using-pagination.util.ts similarity index 100% rename from packages/twenty-server/src/business/modules/message/services/thread-cleaner/utils/delete-using-pagination.util.ts rename to packages/twenty-server/src/modules/messaging/services/thread-cleaner/utils/delete-using-pagination.util.ts diff --git a/packages/twenty-server/src/business/modules/message/services/utils/__tests__/format-address-object-as-participants.util.spec.ts b/packages/twenty-server/src/modules/messaging/services/utils/__tests__/format-address-object-as-participants.util.spec.ts similarity index 86% rename from packages/twenty-server/src/business/modules/message/services/utils/__tests__/format-address-object-as-participants.util.spec.ts rename to packages/twenty-server/src/modules/messaging/services/utils/__tests__/format-address-object-as-participants.util.spec.ts index cb1ffd49570..03d52b91d03 100644 --- a/packages/twenty-server/src/business/modules/message/services/utils/__tests__/format-address-object-as-participants.util.spec.ts +++ b/packages/twenty-server/src/modules/messaging/services/utils/__tests__/format-address-object-as-participants.util.spec.ts @@ -1,4 +1,4 @@ -import { formatAddressObjectAsParticipants } from 'src/business/modules/message/services/utils/format-address-object-as-participants.util'; +import { formatAddressObjectAsParticipants } from 'src/modules/messaging/services/utils/format-address-object-as-participants.util'; describe('formatAddressObjectAsParticipants', () => { it('should format address object as participants', () => { diff --git a/packages/twenty-server/src/business/modules/message/services/utils/format-address-object-as-participants.util.ts b/packages/twenty-server/src/modules/messaging/services/utils/format-address-object-as-participants.util.ts similarity index 92% rename from packages/twenty-server/src/business/modules/message/services/utils/format-address-object-as-participants.util.ts rename to packages/twenty-server/src/modules/messaging/services/utils/format-address-object-as-participants.util.ts index c9baa38ca91..674bfa2c7d4 100644 --- a/packages/twenty-server/src/business/modules/message/services/utils/format-address-object-as-participants.util.ts +++ b/packages/twenty-server/src/modules/messaging/services/utils/format-address-object-as-participants.util.ts @@ -1,6 +1,6 @@ import { AddressObject } from 'mailparser'; -import { Participant } from 'src/business/modules/message/types/gmail-message'; +import { Participant } from 'src/modules/messaging/types/gmail-message'; const formatAddressObjectAsArray = ( addressObject: AddressObject | AddressObject[], diff --git a/packages/twenty-server/src/business/modules/message/message-channel-message-association.object-metadata.ts b/packages/twenty-server/src/modules/messaging/standard-objects/message-channel-message-association.object-metadata.ts similarity index 89% rename from packages/twenty-server/src/business/modules/message/message-channel-message-association.object-metadata.ts rename to packages/twenty-server/src/modules/messaging/standard-objects/message-channel-message-association.object-metadata.ts index 290de139a0c..47e6169020e 100644 --- a/packages/twenty-server/src/business/modules/message/message-channel-message-association.object-metadata.ts +++ b/packages/twenty-server/src/modules/messaging/standard-objects/message-channel-message-association.object-metadata.ts @@ -6,9 +6,9 @@ import { IsNullable } from 'src/engine/workspace-manager/workspace-sync-metadata import { IsSystem } from 'src/engine/workspace-manager/workspace-sync-metadata/decorators/is-system.decorator'; import { ObjectMetadata } from 'src/engine/workspace-manager/workspace-sync-metadata/decorators/object-metadata.decorator'; import { BaseObjectMetadata } from 'src/engine/workspace-manager/workspace-sync-metadata/standard-objects/base.object-metadata'; -import { MessageChannelObjectMetadata } from 'src/business/modules/message/message-channel.object-metadata'; -import { MessageThreadObjectMetadata } from 'src/business/modules/message/message-thread.object-metadata'; -import { MessageObjectMetadata } from 'src/business/modules/message/message.object-metadata'; +import { MessageChannelObjectMetadata } from 'src/modules/messaging/standard-objects/message-channel.object-metadata'; +import { MessageThreadObjectMetadata } from 'src/modules/messaging/standard-objects/message-thread.object-metadata'; +import { MessageObjectMetadata } from 'src/modules/messaging/standard-objects/message.object-metadata'; @ObjectMetadata({ standardId: standardObjectIds.messageChannelMessageAssociation, diff --git a/packages/twenty-server/src/business/modules/message/message-channel.object-metadata.ts b/packages/twenty-server/src/modules/messaging/standard-objects/message-channel.object-metadata.ts similarity index 94% rename from packages/twenty-server/src/business/modules/message/message-channel.object-metadata.ts rename to packages/twenty-server/src/modules/messaging/standard-objects/message-channel.object-metadata.ts index ac6f880a9a4..39ee80fa605 100644 --- a/packages/twenty-server/src/business/modules/message/message-channel.object-metadata.ts +++ b/packages/twenty-server/src/modules/messaging/standard-objects/message-channel.object-metadata.ts @@ -11,8 +11,8 @@ import { IsSystem } from 'src/engine/workspace-manager/workspace-sync-metadata/d import { ObjectMetadata } from 'src/engine/workspace-manager/workspace-sync-metadata/decorators/object-metadata.decorator'; import { RelationMetadata } from 'src/engine/workspace-manager/workspace-sync-metadata/decorators/relation-metadata.decorator'; import { BaseObjectMetadata } from 'src/engine/workspace-manager/workspace-sync-metadata/standard-objects/base.object-metadata'; -import { ConnectedAccountObjectMetadata } from 'src/business/modules/connected-account/connected-account.object-metadata'; -import { MessageChannelMessageAssociationObjectMetadata } from 'src/business/modules/message/message-channel-message-association.object-metadata'; +import { ConnectedAccountObjectMetadata } from 'src/modules/connected-account/standard-objects/connected-account.object-metadata'; +import { MessageChannelMessageAssociationObjectMetadata } from 'src/modules/messaging/standard-objects/message-channel-message-association.object-metadata'; @ObjectMetadata({ standardId: standardObjectIds.messageChannel, diff --git a/packages/twenty-server/src/business/modules/message/message-participant.object-metadata.ts b/packages/twenty-server/src/modules/messaging/standard-objects/message-participant.object-metadata.ts similarity index 90% rename from packages/twenty-server/src/business/modules/message/message-participant.object-metadata.ts rename to packages/twenty-server/src/modules/messaging/standard-objects/message-participant.object-metadata.ts index b0b917f60c0..49fdaf291b5 100644 --- a/packages/twenty-server/src/business/modules/message/message-participant.object-metadata.ts +++ b/packages/twenty-server/src/modules/messaging/standard-objects/message-participant.object-metadata.ts @@ -6,9 +6,9 @@ import { IsNullable } from 'src/engine/workspace-manager/workspace-sync-metadata import { IsSystem } from 'src/engine/workspace-manager/workspace-sync-metadata/decorators/is-system.decorator'; import { ObjectMetadata } from 'src/engine/workspace-manager/workspace-sync-metadata/decorators/object-metadata.decorator'; import { BaseObjectMetadata } from 'src/engine/workspace-manager/workspace-sync-metadata/standard-objects/base.object-metadata'; -import { MessageObjectMetadata } from 'src/business/modules/message/message.object-metadata'; -import { PersonObjectMetadata } from 'src/business/modules/person/person.object-metadata'; -import { WorkspaceMemberObjectMetadata } from 'src/business/modules/workspace/workspace-member.object-metadata'; +import { MessageObjectMetadata } from 'src/modules/messaging/standard-objects/message.object-metadata'; +import { PersonObjectMetadata } from 'src/modules/person/standard-objects/person.object-metadata'; +import { WorkspaceMemberObjectMetadata } from 'src/modules/workspace-member/standard-objects/workspace-member.object-metadata'; @ObjectMetadata({ standardId: standardObjectIds.messageParticipant, diff --git a/packages/twenty-server/src/business/modules/message/message-thread.object-metadata.ts b/packages/twenty-server/src/modules/messaging/standard-objects/message-thread.object-metadata.ts similarity index 92% rename from packages/twenty-server/src/business/modules/message/message-thread.object-metadata.ts rename to packages/twenty-server/src/modules/messaging/standard-objects/message-thread.object-metadata.ts index a6d03242a04..d35b3aff862 100644 --- a/packages/twenty-server/src/business/modules/message/message-thread.object-metadata.ts +++ b/packages/twenty-server/src/modules/messaging/standard-objects/message-thread.object-metadata.ts @@ -11,8 +11,8 @@ import { IsSystem } from 'src/engine/workspace-manager/workspace-sync-metadata/d import { ObjectMetadata } from 'src/engine/workspace-manager/workspace-sync-metadata/decorators/object-metadata.decorator'; import { RelationMetadata } from 'src/engine/workspace-manager/workspace-sync-metadata/decorators/relation-metadata.decorator'; import { BaseObjectMetadata } from 'src/engine/workspace-manager/workspace-sync-metadata/standard-objects/base.object-metadata'; -import { MessageChannelMessageAssociationObjectMetadata } from 'src/business/modules/message/message-channel-message-association.object-metadata'; -import { MessageObjectMetadata } from 'src/business/modules/message/message.object-metadata'; +import { MessageChannelMessageAssociationObjectMetadata } from 'src/modules/messaging/standard-objects/message-channel-message-association.object-metadata'; +import { MessageObjectMetadata } from 'src/modules/messaging/standard-objects/message.object-metadata'; @ObjectMetadata({ standardId: standardObjectIds.messageThread, diff --git a/packages/twenty-server/src/business/modules/message/message.object-metadata.ts b/packages/twenty-server/src/modules/messaging/standard-objects/message.object-metadata.ts similarity index 92% rename from packages/twenty-server/src/business/modules/message/message.object-metadata.ts rename to packages/twenty-server/src/modules/messaging/standard-objects/message.object-metadata.ts index 2fb054a2953..1c2aa129abe 100644 --- a/packages/twenty-server/src/business/modules/message/message.object-metadata.ts +++ b/packages/twenty-server/src/modules/messaging/standard-objects/message.object-metadata.ts @@ -11,9 +11,9 @@ import { IsSystem } from 'src/engine/workspace-manager/workspace-sync-metadata/d import { ObjectMetadata } from 'src/engine/workspace-manager/workspace-sync-metadata/decorators/object-metadata.decorator'; import { RelationMetadata } from 'src/engine/workspace-manager/workspace-sync-metadata/decorators/relation-metadata.decorator'; import { BaseObjectMetadata } from 'src/engine/workspace-manager/workspace-sync-metadata/standard-objects/base.object-metadata'; -import { MessageChannelMessageAssociationObjectMetadata } from 'src/business/modules/message/message-channel-message-association.object-metadata'; -import { MessageParticipantObjectMetadata } from 'src/business/modules/message/message-participant.object-metadata'; -import { MessageThreadObjectMetadata } from 'src/business/modules/message/message-thread.object-metadata'; +import { MessageChannelMessageAssociationObjectMetadata } from 'src/modules/messaging/standard-objects/message-channel-message-association.object-metadata'; +import { MessageParticipantObjectMetadata } from 'src/modules/messaging/standard-objects/message-participant.object-metadata'; +import { MessageThreadObjectMetadata } from 'src/modules/messaging/standard-objects/message-thread.object-metadata'; @ObjectMetadata({ standardId: standardObjectIds.message, diff --git a/packages/twenty-server/src/business/modules/calendar-and-messaging/types/batch-queries.ts b/packages/twenty-server/src/modules/messaging/types/batch-queries.ts similarity index 100% rename from packages/twenty-server/src/business/modules/calendar-and-messaging/types/batch-queries.ts rename to packages/twenty-server/src/modules/messaging/types/batch-queries.ts diff --git a/packages/twenty-server/src/business/modules/message/types/gmail-message-parsed-response.ts b/packages/twenty-server/src/modules/messaging/types/gmail-message-parsed-response.ts similarity index 100% rename from packages/twenty-server/src/business/modules/message/types/gmail-message-parsed-response.ts rename to packages/twenty-server/src/modules/messaging/types/gmail-message-parsed-response.ts diff --git a/packages/twenty-server/src/business/modules/message/types/gmail-message.ts b/packages/twenty-server/src/modules/messaging/types/gmail-message.ts similarity index 100% rename from packages/twenty-server/src/business/modules/message/types/gmail-message.ts rename to packages/twenty-server/src/modules/messaging/types/gmail-message.ts diff --git a/packages/twenty-server/src/business/modules/message/types/gmail-thread.ts b/packages/twenty-server/src/modules/messaging/types/gmail-thread.ts similarity index 100% rename from packages/twenty-server/src/business/modules/message/types/gmail-thread.ts rename to packages/twenty-server/src/modules/messaging/types/gmail-thread.ts diff --git a/packages/twenty-server/src/business/modules/message/types/message-or-thread-query.ts b/packages/twenty-server/src/modules/messaging/types/message-or-thread-query.ts similarity index 100% rename from packages/twenty-server/src/business/modules/message/types/message-or-thread-query.ts rename to packages/twenty-server/src/modules/messaging/types/message-or-thread-query.ts diff --git a/packages/twenty-server/src/business/modules/message/utils/create-queries-from-message-ids.util.ts b/packages/twenty-server/src/modules/messaging/utils/create-queries-from-message-ids.util.ts similarity index 71% rename from packages/twenty-server/src/business/modules/message/utils/create-queries-from-message-ids.util.ts rename to packages/twenty-server/src/modules/messaging/utils/create-queries-from-message-ids.util.ts index 936ee787322..304454488f1 100644 --- a/packages/twenty-server/src/business/modules/message/utils/create-queries-from-message-ids.util.ts +++ b/packages/twenty-server/src/modules/messaging/utils/create-queries-from-message-ids.util.ts @@ -1,4 +1,4 @@ -import { MessageQuery } from 'src/business/modules/message/types/message-or-thread-query'; +import { MessageQuery } from 'src/modules/messaging/types/message-or-thread-query'; export const createQueriesFromMessageIds = ( messageExternalIds: string[], diff --git a/packages/twenty-server/src/business/modules/message/utils/filter-out-participants-from-company-or-workspace.util.ts b/packages/twenty-server/src/modules/messaging/utils/filter-out-participants-from-company-or-workspace.util.ts similarity index 70% rename from packages/twenty-server/src/business/modules/message/utils/filter-out-participants-from-company-or-workspace.util.ts rename to packages/twenty-server/src/modules/messaging/utils/filter-out-participants-from-company-or-workspace.util.ts index 076efa26b29..ec569804ef0 100644 --- a/packages/twenty-server/src/business/modules/message/utils/filter-out-participants-from-company-or-workspace.util.ts +++ b/packages/twenty-server/src/modules/messaging/utils/filter-out-participants-from-company-or-workspace.util.ts @@ -1,6 +1,6 @@ -import { Participant } from 'src/business/modules/message/types/gmail-message'; -import { getDomainNameFromHandle } from 'src/business/modules/message/utils/get-domain-name-from-handle.util'; -import { WorkspaceMemberObjectMetadata } from 'src/business/modules/workspace/workspace-member.object-metadata'; +import { Participant } from 'src/modules/messaging/types/gmail-message'; +import { getDomainNameFromHandle } from 'src/modules/messaging/utils/get-domain-name-from-handle.util'; +import { WorkspaceMemberObjectMetadata } from 'src/modules/workspace-member/standard-objects/workspace-member.object-metadata'; import { ObjectRecord } from 'src/engine/workspace-manager/workspace-sync-metadata/types/object-record'; export function filterOutParticipantsFromCompanyOrWorkspace( diff --git a/packages/twenty-server/src/business/modules/message/utils/get-company-name-from-domain-name.util.ts b/packages/twenty-server/src/modules/messaging/utils/get-company-name-from-domain-name.util.ts similarity index 100% rename from packages/twenty-server/src/business/modules/message/utils/get-company-name-from-domain-name.util.ts rename to packages/twenty-server/src/modules/messaging/utils/get-company-name-from-domain-name.util.ts diff --git a/packages/twenty-server/src/business/modules/message/utils/get-domain-name-from-handle.util.ts b/packages/twenty-server/src/modules/messaging/utils/get-domain-name-from-handle.util.ts similarity index 100% rename from packages/twenty-server/src/business/modules/message/utils/get-domain-name-from-handle.util.ts rename to packages/twenty-server/src/modules/messaging/utils/get-domain-name-from-handle.util.ts diff --git a/packages/twenty-server/src/business/modules/message/utils/get-first-name-and-last-name-from-handle-and-display-name.util.ts b/packages/twenty-server/src/modules/messaging/utils/get-first-name-and-last-name-from-handle-and-display-name.util.ts similarity index 100% rename from packages/twenty-server/src/business/modules/message/utils/get-first-name-and-last-name-from-handle-and-display-name.util.ts rename to packages/twenty-server/src/modules/messaging/utils/get-first-name-and-last-name-from-handle-and-display-name.util.ts diff --git a/packages/twenty-server/src/business/modules/message/utils/get-unique-participants-and-handles.util.ts b/packages/twenty-server/src/modules/messaging/utils/get-unique-participants-and-handles.util.ts similarity index 86% rename from packages/twenty-server/src/business/modules/message/utils/get-unique-participants-and-handles.util.ts rename to packages/twenty-server/src/modules/messaging/utils/get-unique-participants-and-handles.util.ts index 340839badc2..78e7587ed45 100644 --- a/packages/twenty-server/src/business/modules/message/utils/get-unique-participants-and-handles.util.ts +++ b/packages/twenty-server/src/modules/messaging/utils/get-unique-participants-and-handles.util.ts @@ -1,6 +1,6 @@ import { uniq, uniqBy } from 'lodash'; -import { Participant } from 'src/business/modules/message/types/gmail-message'; +import { Participant } from 'src/modules/messaging/types/gmail-message'; export function getUniqueParticipantsAndHandles(participants: Participant[]): { uniqueParticipants: Participant[]; uniqueHandles: string[]; diff --git a/packages/twenty-server/src/business/modules/message/utils/gmail-search-filter.util.ts b/packages/twenty-server/src/modules/messaging/utils/gmail-search-filter.util.ts similarity index 100% rename from packages/twenty-server/src/business/modules/message/utils/gmail-search-filter.util.ts rename to packages/twenty-server/src/modules/messaging/utils/gmail-search-filter.util.ts diff --git a/packages/twenty-server/src/business/modules/message/utils/is-person-email.util.ts b/packages/twenty-server/src/modules/messaging/utils/is-person-email.util.ts similarity index 100% rename from packages/twenty-server/src/business/modules/message/utils/is-person-email.util.ts rename to packages/twenty-server/src/modules/messaging/utils/is-person-email.util.ts diff --git a/packages/twenty-server/src/modules/modules.module.ts b/packages/twenty-server/src/modules/modules.module.ts new file mode 100644 index 00000000000..2d966e07329 --- /dev/null +++ b/packages/twenty-server/src/modules/modules.module.ts @@ -0,0 +1,11 @@ +import { Module } from '@nestjs/common'; + +import { CalendarModule } from 'src/modules/calendar/calendar.module'; +import { MessagingModule } from 'src/modules/messaging/messaging.module'; + +@Module({ + imports: [MessagingModule, CalendarModule], + providers: [], + exports: [], +}) +export class ModulesModule {} diff --git a/packages/twenty-server/src/business/modules/opportunity/opportunity.object-metadata.ts b/packages/twenty-server/src/modules/opportunity/standard-objects/opportunity.object-metadata.ts similarity index 89% rename from packages/twenty-server/src/business/modules/opportunity/opportunity.object-metadata.ts rename to packages/twenty-server/src/modules/opportunity/standard-objects/opportunity.object-metadata.ts index 070bd1e45f8..13ac4f326b2 100644 --- a/packages/twenty-server/src/business/modules/opportunity/opportunity.object-metadata.ts +++ b/packages/twenty-server/src/modules/opportunity/standard-objects/opportunity.object-metadata.ts @@ -11,13 +11,13 @@ import { IsNullable } from 'src/engine/workspace-manager/workspace-sync-metadata import { IsSystem } from 'src/engine/workspace-manager/workspace-sync-metadata/decorators/is-system.decorator'; import { ObjectMetadata } from 'src/engine/workspace-manager/workspace-sync-metadata/decorators/object-metadata.decorator'; import { RelationMetadata } from 'src/engine/workspace-manager/workspace-sync-metadata/decorators/relation-metadata.decorator'; -import { ActivityTargetObjectMetadata } from 'src/business/modules/activity/activity-target.object-metadata'; -import { AttachmentObjectMetadata } from 'src/business/modules/attachment/attachment.object-metadata'; +import { ActivityTargetObjectMetadata } from 'src/modules/activity/standard-objects/activity-target.object-metadata'; +import { AttachmentObjectMetadata } from 'src/modules/attachment/standard-objects/attachment.object-metadata'; import { BaseObjectMetadata } from 'src/engine/workspace-manager/workspace-sync-metadata/standard-objects/base.object-metadata'; -import { CompanyObjectMetadata } from 'src/business/modules/company/company.object-metadata'; -import { FavoriteObjectMetadata } from 'src/business/modules/favorite/favorite.object-metadata'; -import { PersonObjectMetadata } from 'src/business/modules/person/person.object-metadata'; -import { PipelineStepObjectMetadata } from 'src/business/modules/pipeline-step/pipeline-step.object-metadata'; +import { CompanyObjectMetadata } from 'src/modules/company/standard-objects/company.object-metadata'; +import { FavoriteObjectMetadata } from 'src/modules/favorite/standard-objects/favorite.object-metadata'; +import { PersonObjectMetadata } from 'src/modules/person/standard-objects/person.object-metadata'; +import { PipelineStepObjectMetadata } from 'src/modules/pipeline-step/standard-objects/pipeline-step.object-metadata'; @ObjectMetadata({ standardId: standardObjectIds.opportunity, diff --git a/packages/twenty-server/src/engine-workspace/repositories/person/person.module.ts b/packages/twenty-server/src/modules/person/repositories/person/person.module.ts similarity index 76% rename from packages/twenty-server/src/engine-workspace/repositories/person/person.module.ts rename to packages/twenty-server/src/modules/person/repositories/person/person.module.ts index fc501bab62f..adf359cf792 100644 --- a/packages/twenty-server/src/engine-workspace/repositories/person/person.module.ts +++ b/packages/twenty-server/src/modules/person/repositories/person/person.module.ts @@ -1,6 +1,6 @@ import { Module } from '@nestjs/common'; -import { PersonService } from 'src/engine-workspace/repositories/person/person.service'; +import { PersonService } from 'src/modules/person/repositories/person/person.service'; import { WorkspaceDataSourceModule } from 'src/engine/workspace-datasource/workspace-datasource.module'; @Module({ diff --git a/packages/twenty-server/src/engine-workspace/repositories/person/person.service.ts b/packages/twenty-server/src/modules/person/repositories/person/person.service.ts similarity index 95% rename from packages/twenty-server/src/engine-workspace/repositories/person/person.service.ts rename to packages/twenty-server/src/modules/person/repositories/person/person.service.ts index 1438d3a7740..502b12f654b 100644 --- a/packages/twenty-server/src/engine-workspace/repositories/person/person.service.ts +++ b/packages/twenty-server/src/modules/person/repositories/person/person.service.ts @@ -4,7 +4,7 @@ import { EntityManager } from 'typeorm'; import { WorkspaceDataSourceService } from 'src/engine/workspace-datasource/workspace-datasource.service'; import { ObjectRecord } from 'src/engine/workspace-manager/workspace-sync-metadata/types/object-record'; -import { PersonObjectMetadata } from 'src/business/modules/person/person.object-metadata'; +import { PersonObjectMetadata } from 'src/modules/person/standard-objects/person.object-metadata'; // TODO: Move outside of the messaging module @Injectable() diff --git a/packages/twenty-server/src/business/modules/person/person.object-metadata.ts b/packages/twenty-server/src/modules/person/standard-objects/person.object-metadata.ts similarity index 89% rename from packages/twenty-server/src/business/modules/person/person.object-metadata.ts rename to packages/twenty-server/src/modules/person/standard-objects/person.object-metadata.ts index e499e6fe718..3e84b9f961c 100644 --- a/packages/twenty-server/src/business/modules/person/person.object-metadata.ts +++ b/packages/twenty-server/src/modules/person/standard-objects/person.object-metadata.ts @@ -13,14 +13,14 @@ import { IsNullable } from 'src/engine/workspace-manager/workspace-sync-metadata import { IsSystem } from 'src/engine/workspace-manager/workspace-sync-metadata/decorators/is-system.decorator'; import { ObjectMetadata } from 'src/engine/workspace-manager/workspace-sync-metadata/decorators/object-metadata.decorator'; import { RelationMetadata } from 'src/engine/workspace-manager/workspace-sync-metadata/decorators/relation-metadata.decorator'; -import { ActivityTargetObjectMetadata } from 'src/business/modules/activity/activity-target.object-metadata'; -import { AttachmentObjectMetadata } from 'src/business/modules/attachment/attachment.object-metadata'; +import { ActivityTargetObjectMetadata } from 'src/modules/activity/standard-objects/activity-target.object-metadata'; +import { AttachmentObjectMetadata } from 'src/modules/attachment/standard-objects/attachment.object-metadata'; import { BaseObjectMetadata } from 'src/engine/workspace-manager/workspace-sync-metadata/standard-objects/base.object-metadata'; -import { CalendarEventAttendeeObjectMetadata } from 'src/business/modules/calendar/calendar-event-attendee.object-metadata'; -import { CompanyObjectMetadata } from 'src/business/modules/company/company.object-metadata'; -import { FavoriteObjectMetadata } from 'src/business/modules/favorite/favorite.object-metadata'; -import { MessageParticipantObjectMetadata } from 'src/business/modules/message/message-participant.object-metadata'; -import { OpportunityObjectMetadata } from 'src/business/modules/opportunity/opportunity.object-metadata'; +import { CalendarEventAttendeeObjectMetadata } from 'src/modules/calendar/standard-objects/calendar-event-attendee.object-metadata'; +import { CompanyObjectMetadata } from 'src/modules/company/standard-objects/company.object-metadata'; +import { FavoriteObjectMetadata } from 'src/modules/favorite/standard-objects/favorite.object-metadata'; +import { MessageParticipantObjectMetadata } from 'src/modules/messaging/standard-objects/message-participant.object-metadata'; +import { OpportunityObjectMetadata } from 'src/modules/opportunity/standard-objects/opportunity.object-metadata'; @ObjectMetadata({ standardId: standardObjectIds.person, diff --git a/packages/twenty-server/src/business/modules/pipeline-step/pipeline-step.object-metadata.ts b/packages/twenty-server/src/modules/pipeline-step/standard-objects/pipeline-step.object-metadata.ts similarity index 95% rename from packages/twenty-server/src/business/modules/pipeline-step/pipeline-step.object-metadata.ts rename to packages/twenty-server/src/modules/pipeline-step/standard-objects/pipeline-step.object-metadata.ts index 1794961f690..b1a6ea25330 100644 --- a/packages/twenty-server/src/business/modules/pipeline-step/pipeline-step.object-metadata.ts +++ b/packages/twenty-server/src/modules/pipeline-step/standard-objects/pipeline-step.object-metadata.ts @@ -8,7 +8,7 @@ import { IsSystem } from 'src/engine/workspace-manager/workspace-sync-metadata/d import { ObjectMetadata } from 'src/engine/workspace-manager/workspace-sync-metadata/decorators/object-metadata.decorator'; import { RelationMetadata } from 'src/engine/workspace-manager/workspace-sync-metadata/decorators/relation-metadata.decorator'; import { BaseObjectMetadata } from 'src/engine/workspace-manager/workspace-sync-metadata/standard-objects/base.object-metadata'; -import { OpportunityObjectMetadata } from 'src/business/modules/opportunity/opportunity.object-metadata'; +import { OpportunityObjectMetadata } from 'src/modules/opportunity/standard-objects/opportunity.object-metadata'; @ObjectMetadata({ standardId: standardObjectIds.pipelineStep, diff --git a/packages/twenty-server/src/business/modules/view/view-field.object-metadata.ts b/packages/twenty-server/src/modules/view/standard-objects/view-field.object-metadata.ts similarity index 96% rename from packages/twenty-server/src/business/modules/view/view-field.object-metadata.ts rename to packages/twenty-server/src/modules/view/standard-objects/view-field.object-metadata.ts index 6a96954fe14..e2771474c03 100644 --- a/packages/twenty-server/src/business/modules/view/view-field.object-metadata.ts +++ b/packages/twenty-server/src/modules/view/standard-objects/view-field.object-metadata.ts @@ -6,7 +6,7 @@ import { IsNullable } from 'src/engine/workspace-manager/workspace-sync-metadata import { IsSystem } from 'src/engine/workspace-manager/workspace-sync-metadata/decorators/is-system.decorator'; import { ObjectMetadata } from 'src/engine/workspace-manager/workspace-sync-metadata/decorators/object-metadata.decorator'; import { BaseObjectMetadata } from 'src/engine/workspace-manager/workspace-sync-metadata/standard-objects/base.object-metadata'; -import { ViewObjectMetadata } from 'src/business/modules/view/view.object-metadata'; +import { ViewObjectMetadata } from 'src/modules/view/standard-objects/view.object-metadata'; @ObjectMetadata({ standardId: standardObjectIds.viewField, diff --git a/packages/twenty-server/src/business/modules/view/view-filter.object-metadata.ts b/packages/twenty-server/src/modules/view/standard-objects/view-filter.object-metadata.ts similarity index 96% rename from packages/twenty-server/src/business/modules/view/view-filter.object-metadata.ts rename to packages/twenty-server/src/modules/view/standard-objects/view-filter.object-metadata.ts index bf68a32fc65..8f8479893b6 100644 --- a/packages/twenty-server/src/business/modules/view/view-filter.object-metadata.ts +++ b/packages/twenty-server/src/modules/view/standard-objects/view-filter.object-metadata.ts @@ -6,7 +6,7 @@ import { IsNullable } from 'src/engine/workspace-manager/workspace-sync-metadata import { IsSystem } from 'src/engine/workspace-manager/workspace-sync-metadata/decorators/is-system.decorator'; import { ObjectMetadata } from 'src/engine/workspace-manager/workspace-sync-metadata/decorators/object-metadata.decorator'; import { BaseObjectMetadata } from 'src/engine/workspace-manager/workspace-sync-metadata/standard-objects/base.object-metadata'; -import { ViewObjectMetadata } from 'src/business/modules/view/view.object-metadata'; +import { ViewObjectMetadata } from 'src/modules/view/standard-objects/view.object-metadata'; @ObjectMetadata({ standardId: standardObjectIds.viewFilter, diff --git a/packages/twenty-server/src/business/modules/view/view-sort.object-metadata.ts b/packages/twenty-server/src/modules/view/standard-objects/view-sort.object-metadata.ts similarity index 95% rename from packages/twenty-server/src/business/modules/view/view-sort.object-metadata.ts rename to packages/twenty-server/src/modules/view/standard-objects/view-sort.object-metadata.ts index 7aea069db74..8380ff7ac37 100644 --- a/packages/twenty-server/src/business/modules/view/view-sort.object-metadata.ts +++ b/packages/twenty-server/src/modules/view/standard-objects/view-sort.object-metadata.ts @@ -6,7 +6,7 @@ import { IsNullable } from 'src/engine/workspace-manager/workspace-sync-metadata import { IsSystem } from 'src/engine/workspace-manager/workspace-sync-metadata/decorators/is-system.decorator'; import { ObjectMetadata } from 'src/engine/workspace-manager/workspace-sync-metadata/decorators/object-metadata.decorator'; import { BaseObjectMetadata } from 'src/engine/workspace-manager/workspace-sync-metadata/standard-objects/base.object-metadata'; -import { ViewObjectMetadata } from 'src/business/modules/view/view.object-metadata'; +import { ViewObjectMetadata } from 'src/modules/view/standard-objects/view.object-metadata'; @ObjectMetadata({ standardId: standardObjectIds.viewSort, diff --git a/packages/twenty-server/src/business/modules/view/view.object-metadata.ts b/packages/twenty-server/src/modules/view/standard-objects/view.object-metadata.ts similarity index 92% rename from packages/twenty-server/src/business/modules/view/view.object-metadata.ts rename to packages/twenty-server/src/modules/view/standard-objects/view.object-metadata.ts index 514ccdf6a06..b1055cda419 100644 --- a/packages/twenty-server/src/business/modules/view/view.object-metadata.ts +++ b/packages/twenty-server/src/modules/view/standard-objects/view.object-metadata.ts @@ -8,9 +8,9 @@ import { IsSystem } from 'src/engine/workspace-manager/workspace-sync-metadata/d import { ObjectMetadata } from 'src/engine/workspace-manager/workspace-sync-metadata/decorators/object-metadata.decorator'; import { RelationMetadata } from 'src/engine/workspace-manager/workspace-sync-metadata/decorators/relation-metadata.decorator'; import { BaseObjectMetadata } from 'src/engine/workspace-manager/workspace-sync-metadata/standard-objects/base.object-metadata'; -import { ViewFieldObjectMetadata } from 'src/business/modules/view/view-field.object-metadata'; -import { ViewFilterObjectMetadata } from 'src/business/modules/view/view-filter.object-metadata'; -import { ViewSortObjectMetadata } from 'src/business/modules/view/view-sort.object-metadata'; +import { ViewFieldObjectMetadata } from 'src/modules/view/standard-objects/view-field.object-metadata'; +import { ViewFilterObjectMetadata } from 'src/modules/view/standard-objects/view-filter.object-metadata'; +import { ViewSortObjectMetadata } from 'src/modules/view/standard-objects/view-sort.object-metadata'; @ObjectMetadata({ standardId: standardObjectIds.view, diff --git a/packages/twenty-server/src/business/modules/webhook/webhook.object-metadata.ts b/packages/twenty-server/src/modules/webhook/standard-objects/webhook.object-metadata.ts similarity index 100% rename from packages/twenty-server/src/business/modules/webhook/webhook.object-metadata.ts rename to packages/twenty-server/src/modules/webhook/standard-objects/webhook.object-metadata.ts diff --git a/packages/twenty-server/src/engine-workspace/repositories/workspace-member/workspace-member.module.ts b/packages/twenty-server/src/modules/workspace-member/repositories/workspace-member/workspace-member.module.ts similarity index 71% rename from packages/twenty-server/src/engine-workspace/repositories/workspace-member/workspace-member.module.ts rename to packages/twenty-server/src/modules/workspace-member/repositories/workspace-member/workspace-member.module.ts index 587f62c9dc4..54465e4132f 100644 --- a/packages/twenty-server/src/engine-workspace/repositories/workspace-member/workspace-member.module.ts +++ b/packages/twenty-server/src/modules/workspace-member/repositories/workspace-member/workspace-member.module.ts @@ -1,6 +1,6 @@ import { Module } from '@nestjs/common'; -import { WorkspaceMemberService } from 'src/engine-workspace/repositories/workspace-member/workspace-member.service'; +import { WorkspaceMemberService } from 'src/modules/workspace-member/repositories/workspace-member/workspace-member.service'; import { WorkspaceDataSourceModule } from 'src/engine/workspace-datasource/workspace-datasource.module'; @Module({ diff --git a/packages/twenty-server/src/engine-workspace/repositories/workspace-member/workspace-member.service.ts b/packages/twenty-server/src/modules/workspace-member/repositories/workspace-member/workspace-member.service.ts similarity index 94% rename from packages/twenty-server/src/engine-workspace/repositories/workspace-member/workspace-member.service.ts rename to packages/twenty-server/src/modules/workspace-member/repositories/workspace-member/workspace-member.service.ts index 65a338467ae..c5d09728592 100644 --- a/packages/twenty-server/src/engine-workspace/repositories/workspace-member/workspace-member.service.ts +++ b/packages/twenty-server/src/modules/workspace-member/repositories/workspace-member/workspace-member.service.ts @@ -3,7 +3,7 @@ import { Injectable, NotFoundException } from '@nestjs/common'; import { EntityManager } from 'typeorm'; import { WorkspaceDataSourceService } from 'src/engine/workspace-datasource/workspace-datasource.service'; -import { WorkspaceMemberObjectMetadata } from 'src/business/modules/workspace/workspace-member.object-metadata'; +import { WorkspaceMemberObjectMetadata } from 'src/modules/workspace-member/standard-objects/workspace-member.object-metadata'; import { ObjectRecord } from 'src/engine/workspace-manager/workspace-sync-metadata/types/object-record'; // TODO: Move outside of the messaging module diff --git a/packages/twenty-server/src/business/modules/workspace/workspace-member.object-metadata.ts b/packages/twenty-server/src/modules/workspace-member/standard-objects/workspace-member.object-metadata.ts similarity index 88% rename from packages/twenty-server/src/business/modules/workspace/workspace-member.object-metadata.ts rename to packages/twenty-server/src/modules/workspace-member/standard-objects/workspace-member.object-metadata.ts index c1de6e5e6a2..4db6b22618e 100644 --- a/packages/twenty-server/src/business/modules/workspace/workspace-member.object-metadata.ts +++ b/packages/twenty-server/src/modules/workspace-member/standard-objects/workspace-member.object-metadata.ts @@ -11,16 +11,16 @@ import { Gate } from 'src/engine/workspace-manager/workspace-sync-metadata/decor import { IsSystem } from 'src/engine/workspace-manager/workspace-sync-metadata/decorators/is-system.decorator'; import { ObjectMetadata } from 'src/engine/workspace-manager/workspace-sync-metadata/decorators/object-metadata.decorator'; import { RelationMetadata } from 'src/engine/workspace-manager/workspace-sync-metadata/decorators/relation-metadata.decorator'; -import { ActivityObjectMetadata } from 'src/business/modules/activity/activity.object-metadata'; -import { AttachmentObjectMetadata } from 'src/business/modules/attachment/attachment.object-metadata'; +import { ActivityObjectMetadata } from 'src/modules/activity/standard-objects/activity.object-metadata'; +import { AttachmentObjectMetadata } from 'src/modules/attachment/standard-objects/attachment.object-metadata'; import { BaseObjectMetadata } from 'src/engine/workspace-manager/workspace-sync-metadata/standard-objects/base.object-metadata'; -import { BlocklistObjectMetadata } from 'src/business/modules/calendar/blocklist.object-metadata'; -import { CalendarEventAttendeeObjectMetadata } from 'src/business/modules/calendar/calendar-event-attendee.object-metadata'; -import { CommentObjectMetadata } from 'src/business/modules/comment/comment.object-metadata'; -import { CompanyObjectMetadata } from 'src/business/modules/company/company.object-metadata'; -import { ConnectedAccountObjectMetadata } from 'src/business/modules/connected-account/connected-account.object-metadata'; -import { FavoriteObjectMetadata } from 'src/business/modules/favorite/favorite.object-metadata'; -import { MessageParticipantObjectMetadata } from 'src/business/modules/message/message-participant.object-metadata'; +import { BlocklistObjectMetadata } from 'src/modules/connected-account/standard-objects/blocklist.object-metadata'; +import { CalendarEventAttendeeObjectMetadata } from 'src/modules/calendar/standard-objects/calendar-event-attendee.object-metadata'; +import { CommentObjectMetadata } from 'src/modules/activity/standard-objects/comment.object-metadata'; +import { CompanyObjectMetadata } from 'src/modules/company/standard-objects/company.object-metadata'; +import { ConnectedAccountObjectMetadata } from 'src/modules/connected-account/standard-objects/connected-account.object-metadata'; +import { FavoriteObjectMetadata } from 'src/modules/favorite/standard-objects/favorite.object-metadata'; +import { MessageParticipantObjectMetadata } from 'src/modules/messaging/standard-objects/message-participant.object-metadata'; @ObjectMetadata({ standardId: standardObjectIds.workspaceMember, diff --git a/packages/twenty-server/src/queue-worker.module.ts b/packages/twenty-server/src/queue-worker.module.ts deleted file mode 100644 index 50d93ea6251..00000000000 --- a/packages/twenty-server/src/queue-worker.module.ts +++ /dev/null @@ -1,9 +0,0 @@ -import { Module } from '@nestjs/common'; - -import { JobsModule } from 'src/integrations/message-queue/jobs.module'; -import { IntegrationsModule } from 'src/integrations/integrations.module'; - -@Module({ - imports: [IntegrationsModule, JobsModule], -}) -export class QueueWorkerModule {} diff --git a/packages/twenty-server/src/queue-worker/queue-worker.module.ts b/packages/twenty-server/src/queue-worker/queue-worker.module.ts new file mode 100644 index 00000000000..d6c87b88238 --- /dev/null +++ b/packages/twenty-server/src/queue-worker/queue-worker.module.ts @@ -0,0 +1,9 @@ +import { Module } from '@nestjs/common'; + +import { JobsModule } from 'src/engine/integrations/message-queue/jobs.module'; +import { IntegrationsModule } from 'src/engine/integrations/integrations.module'; + +@Module({ + imports: [IntegrationsModule, JobsModule], +}) +export class QueueWorkerModule {} diff --git a/packages/twenty-server/src/queue-worker.ts b/packages/twenty-server/src/queue-worker/queue-worker.ts similarity index 64% rename from packages/twenty-server/src/queue-worker.ts rename to packages/twenty-server/src/queue-worker/queue-worker.ts index 326ac9ce88f..6218a488e78 100644 --- a/packages/twenty-server/src/queue-worker.ts +++ b/packages/twenty-server/src/queue-worker/queue-worker.ts @@ -3,17 +3,16 @@ import { NestFactory } from '@nestjs/core'; import { MessageQueueJob, MessageQueueJobData, -} from 'src/integrations/message-queue/interfaces/message-queue-job.interface'; +} from 'src/engine/integrations/message-queue/interfaces/message-queue-job.interface'; -import { JobsModule } from 'src/integrations/message-queue/jobs.module'; -import { MessageQueue } from 'src/integrations/message-queue/message-queue.constants'; -import { MessageQueueService } from 'src/integrations/message-queue/services/message-queue.service'; -import { getJobClassName } from 'src/integrations/message-queue/utils/get-job-class-name.util'; -import { QueueWorkerModule } from 'src/queue-worker.module'; - -import { LoggerService } from './integrations/logger/logger.service'; -import { ExceptionHandlerService } from './integrations/exception-handler/exception-handler.service'; -import { filterException } from './engine/filters/utils/global-exception-handler.util'; +import { filterException } from 'src/engine/filters/utils/global-exception-handler.util'; +import { ExceptionHandlerService } from 'src/engine/integrations/exception-handler/exception-handler.service'; +import { LoggerService } from 'src/engine/integrations/logger/logger.service'; +import { JobsModule } from 'src/engine/integrations/message-queue/jobs.module'; +import { MessageQueue } from 'src/engine/integrations/message-queue/message-queue.constants'; +import { MessageQueueService } from 'src/engine/integrations/message-queue/services/message-queue.service'; +import { getJobClassName } from 'src/engine/integrations/message-queue/utils/get-job-class-name.util'; +import { QueueWorkerModule } from 'src/queue-worker/queue-worker.module'; async function bootstrap() { let exceptionHandlerService: ExceptionHandlerService | undefined; diff --git a/packages/twenty-server/src/utils/pagination/find-many-cursor-connection.ts b/packages/twenty-server/src/utils/pagination/find-many-cursor-connection.ts deleted file mode 100644 index d11e9b6b7c1..00000000000 --- a/packages/twenty-server/src/utils/pagination/find-many-cursor-connection.ts +++ /dev/null @@ -1,162 +0,0 @@ -import { - LessThanOrEqual, - MoreThanOrEqual, - ObjectLiteral, - SelectQueryBuilder, -} from 'typeorm'; - -import { IEdge } from './interfaces/edge.interface'; -import { IConnectionArguments } from './interfaces/connection-arguments.interface'; -import { IOptions } from './interfaces/options.interface'; -import { IConnection } from './interfaces/connection.interface'; -import { validateArgs } from './utils/validate-args'; -import { mergeDefaultOptions } from './utils/default-options'; -import { - isBackwardPagination, - isForwardPagination, -} from './utils/pagination-direction'; -import { encodeCursor, extractCursorKeyValue } from './utils/cursor'; - -/** - * Override cursors options - */ -export async function findManyCursorConnection< - Entity extends ObjectLiteral, - Record = Entity, - Cursor = { id: string }, - Node = Record, - CustomEdge extends IEdge = IEdge, ->( - query: SelectQueryBuilder, - args: IConnectionArguments = {}, - initialOptions?: IOptions, -): Promise> { - if (!validateArgs(args)) { - throw new Error('Should never happen'); - } - - const options = mergeDefaultOptions(initialOptions); - const totalCountQuery = query.clone(); - const totalCount = await totalCountQuery.getCount(); - // Only to extract cursor shape - const cursorKeys = Object.keys(options.getCursor(undefined) as any); - - let records: Array; - let hasNextPage: boolean; - let hasPreviousPage: boolean; - - // Add order by based on the cursor keys - for (const key of cursorKeys) { - query.addOrderBy(key, 'ASC'); - } - - if (isForwardPagination(args)) { - // Fetch one additional record to determine if there is a next page - const take = args.first + 1; - - // Extract cursor map based on the encoded cursor - const cursorMap = extractCursorKeyValue(args.after, options); - const skip = cursorMap ? 1 : undefined; - - if (cursorMap) { - const [keys, values] = cursorMap; - - // Add `cursor` filter in where condition - query.andWhere( - keys.reduce((acc, key, index) => { - return { - ...acc, - [key]: MoreThanOrEqual(values[index]), - }; - }, {}), - ); - } - - // Add `take` and `skip` to the query - query.take(take).skip(skip); - - // Fetch records - records = await options.getRecords(query); - - // See if we are "after" another record, indicating a previous page - hasPreviousPage = !!args.after; - - // See if we have an additional record, indicating a next page - hasNextPage = records.length > args.first; - - // Remove the extra record (last element) from the results - if (hasNextPage) records.pop(); - } else if (isBackwardPagination(args)) { - // Fetch one additional record to determine if there is a previous page - const take = -1 * (args.last + 1); - - // Extract cursor map based on the encoded cursor - const cursorMap = extractCursorKeyValue(args.before, options); - const skip = cursorMap ? 1 : undefined; - - if (cursorMap) { - const [keys, values] = cursorMap; - - // Add `cursor` filter in where condition - query.andWhere( - keys.reduce((acc, key, index) => { - return { - ...acc, - [key]: LessThanOrEqual(values[index]), - }; - }, {}), - ); - } - - // Add `take` and `skip` to the query - query.take(take).skip(skip); - - // Fetch records - records = await options.getRecords(query); - - // See if we are "before" another record, indicating a next page - hasNextPage = !!args.before; - - // See if we have an additional record, indicating a previous page - hasPreviousPage = records.length > args.last; - - // Remove the extra record (first element) from the results - if (hasPreviousPage) records.shift(); - } else { - // Fetch records - records = await options.getRecords(query); - - hasNextPage = false; - hasPreviousPage = false; - } - - // The cursors are always the first & last elements of the result set - const startCursor = - records.length > 0 ? encodeCursor(records[0], options) : undefined; - const endCursor = - records.length > 0 - ? encodeCursor(records[records.length - 1], options) - : undefined; - - // Allow the recordToEdge function to return a custom edge type which will be inferred - type EdgeExtended = typeof options.recordToEdge extends ( - record: Record, - ) => infer X - ? X extends CustomEdge - ? X & { cursor: string } - : CustomEdge - : CustomEdge; - - const edges = records.map((record) => { - return { - ...options.recordToEdge(record), - cursor: encodeCursor(record, options), - } as EdgeExtended; - }); - - return { - edges, - pageInfo: { hasNextPage, hasPreviousPage, startCursor, endCursor }, - totalCount, - }; -} diff --git a/packages/twenty-server/src/utils/pagination/index.ts b/packages/twenty-server/src/utils/pagination/index.ts deleted file mode 100644 index 7708d25c7d6..00000000000 --- a/packages/twenty-server/src/utils/pagination/index.ts +++ /dev/null @@ -1,2 +0,0 @@ -export { ConnectionCursor, ConnectionArgs, Paginated } from './paginated'; -export { findManyCursorConnection } from './find-many-cursor-connection'; diff --git a/packages/twenty-server/src/utils/pagination/interfaces/connection-arguments.interface.ts b/packages/twenty-server/src/utils/pagination/interfaces/connection-arguments.interface.ts deleted file mode 100644 index 45b24052364..00000000000 --- a/packages/twenty-server/src/utils/pagination/interfaces/connection-arguments.interface.ts +++ /dev/null @@ -1,15 +0,0 @@ -export interface IConnectionArguments { - first?: number | null; - after?: string | null; - last?: number | null; - before?: string | null; -} - -export type ConnectionArgumentsUnion = - | ForwardPaginationArguments - | BackwardPaginationArguments - | NoPaginationArguments; - -export type ForwardPaginationArguments = { first: number; after?: string }; -export type BackwardPaginationArguments = { last: number; before?: string }; -export type NoPaginationArguments = Record; diff --git a/packages/twenty-server/src/utils/pagination/interfaces/connection-cursor.type.ts b/packages/twenty-server/src/utils/pagination/interfaces/connection-cursor.type.ts deleted file mode 100644 index 91e8cffc714..00000000000 --- a/packages/twenty-server/src/utils/pagination/interfaces/connection-cursor.type.ts +++ /dev/null @@ -1 +0,0 @@ -export type ConnectionCursor = string; diff --git a/packages/twenty-server/src/utils/pagination/interfaces/find-many-aguments.interface.ts b/packages/twenty-server/src/utils/pagination/interfaces/find-many-aguments.interface.ts deleted file mode 100644 index 66063d8541d..00000000000 --- a/packages/twenty-server/src/utils/pagination/interfaces/find-many-aguments.interface.ts +++ /dev/null @@ -1,5 +0,0 @@ -export interface IFindManyArguments { - cursor?: Cursor; - take?: number; - skip?: number; -} diff --git a/packages/twenty-server/src/utils/pagination/interfaces/options.interface.ts b/packages/twenty-server/src/utils/pagination/interfaces/options.interface.ts deleted file mode 100644 index 24b430e792b..00000000000 --- a/packages/twenty-server/src/utils/pagination/interfaces/options.interface.ts +++ /dev/null @@ -1,19 +0,0 @@ -import { GraphQLResolveInfo } from 'graphql'; -import { ObjectLiteral, SelectQueryBuilder } from 'typeorm'; - -import { IEdge } from './edge.interface'; - -export interface IOptions< - Entity extends ObjectLiteral, - Record, - Cursor, - Node, - CustomEdge extends IEdge, -> { - getRecords?: (args: SelectQueryBuilder) => Promise; - getCursor?: (record: Record | undefined) => Cursor; - encodeCursor?: (cursor: Cursor) => string; - decodeCursor?: (cursorString: string) => Cursor; - recordToEdge?: (record: Record) => Omit; - resolveInfo?: GraphQLResolveInfo | null; -} diff --git a/packages/twenty-server/src/utils/pagination/page-info.ts b/packages/twenty-server/src/utils/pagination/page-info.ts deleted file mode 100644 index 0b9f35e8837..00000000000 --- a/packages/twenty-server/src/utils/pagination/page-info.ts +++ /dev/null @@ -1,19 +0,0 @@ -import { Field, ObjectType } from '@nestjs/graphql'; - -import { IPageInfo } from './interfaces/page-info.interface'; -import { ConnectionCursor } from './interfaces/connection-cursor.type'; - -@ObjectType({ isAbstract: true }) -export class PageInfo implements IPageInfo { - @Field({ nullable: true }) - public startCursor!: ConnectionCursor; - - @Field({ nullable: true }) - public endCursor!: ConnectionCursor; - - @Field(() => Boolean) - public hasPreviousPage!: boolean; - - @Field(() => Boolean) - public hasNextPage!: boolean; -} diff --git a/packages/twenty-server/src/utils/pagination/paginated.ts b/packages/twenty-server/src/utils/pagination/paginated.ts deleted file mode 100644 index 5124ad99a61..00000000000 --- a/packages/twenty-server/src/utils/pagination/paginated.ts +++ /dev/null @@ -1,77 +0,0 @@ -import { Type } from '@nestjs/common'; -import { ArgsType, Field, ObjectType } from '@nestjs/graphql'; - -import { IsNumber, IsOptional, IsString } from 'class-validator'; - -import { PageInfo } from './page-info'; - -import { IConnectionArguments } from './interfaces/connection-arguments.interface'; -import { IConnection } from './interfaces/connection.interface'; -import { IEdge } from './interfaces/edge.interface'; -import { IPageInfo } from './interfaces/page-info.interface'; - -export type ConnectionCursor = string; - -/** - * ConnectionArguments - */ -@ArgsType() -export class ConnectionArgs implements IConnectionArguments { - @Field({ nullable: true, description: 'Paginate before opaque cursor' }) - @IsString() - @IsOptional() - public before?: ConnectionCursor; - - @Field({ nullable: true, description: 'Paginate after opaque cursor' }) - @IsString() - @IsOptional() - public after?: ConnectionCursor; - - @Field({ nullable: true, description: 'Paginate first' }) - @IsNumber() - @IsOptional() - public first?: number; - - @Field({ nullable: true, description: 'Paginate last' }) - @IsNumber() - @IsOptional() - public last?: number; -} - -/** - * Paginated graphQL class inheritance - */ -export function Paginated(classRef: Type): Type> { - @ObjectType(`${classRef.name}Edge`, { isAbstract: true }) - class Edge implements IEdge { - public name = `${classRef.name}Edge`; - - @Field({ nullable: true }) - public cursor!: ConnectionCursor; - - @Field(() => classRef, { nullable: true }) - public node!: T; - } - - @ObjectType(`${classRef.name}Connection`, { isAbstract: true }) - class Connection implements IConnection { - public name = `${classRef.name}Connection`; - - @Field(() => [Edge], { nullable: true }) - public edges!: IEdge[]; - - @Field(() => PageInfo, { nullable: true }) - public pageInfo!: IPageInfo; - - @Field() - totalCount: number; - } - - return Connection as Type>; -} - -// export const encodeCursor = (cursor: Cursor) => -// Buffer.from(JSON.stringify(cursor)).toString('base64'); - -// export const decodeCursor = (cursor: string) => -// JSON.parse(Buffer.from(cursor, 'base64').toString('ascii')) as Cursor; diff --git a/packages/twenty-server/src/utils/pagination/utils/cursor.ts b/packages/twenty-server/src/utils/pagination/utils/cursor.ts deleted file mode 100644 index 30f4d61a057..00000000000 --- a/packages/twenty-server/src/utils/pagination/utils/cursor.ts +++ /dev/null @@ -1,54 +0,0 @@ -import { ObjectLiteral } from 'typeorm'; - -import { IEdge } from 'src/utils/pagination/interfaces/edge.interface'; - -import { MergedOptions } from './default-options'; - -export function decodeCursor< - Entity extends ObjectLiteral, - Record, - Cursor, - Node, - CustomEdge extends IEdge, ->( - connectionCursor: string | undefined, - options: MergedOptions, -): Cursor | undefined { - if (!connectionCursor) { - return undefined; - } - - return options.decodeCursor(connectionCursor); -} - -export function encodeCursor< - Entity extends ObjectLiteral, - Record, - Cursor, - Node, - CustomEdge extends IEdge, ->( - record: Record, - options: MergedOptions, -): string { - return options.encodeCursor(options.getCursor(record)); -} - -export function extractCursorKeyValue< - Entity extends ObjectLiteral, - Record, - Cursor, - Node, - CustomEdge extends IEdge, ->( - connectionCursor: string | undefined, - options: MergedOptions, -): [string[], unknown[]] | undefined { - const cursor = decodeCursor(connectionCursor, options); - - if (!cursor) { - return undefined; - } - - return [Object.keys(cursor), Object.values(cursor)]; -} diff --git a/packages/twenty-server/src/utils/pagination/utils/default-options.ts b/packages/twenty-server/src/utils/pagination/utils/default-options.ts deleted file mode 100644 index eefea206a03..00000000000 --- a/packages/twenty-server/src/utils/pagination/utils/default-options.ts +++ /dev/null @@ -1,42 +0,0 @@ -import { ObjectLiteral } from 'typeorm'; - -import { IEdge } from 'src/utils/pagination/interfaces/edge.interface'; -import { IOptions } from 'src/utils/pagination/interfaces/options.interface'; - -export type MergedOptions< - Entity extends ObjectLiteral, - Record, - Cursor, - Node, - CustomEdge extends IEdge, -> = Required>; - -export function mergeDefaultOptions< - Entity extends ObjectLiteral, - Record, - Cursor, - Node, - CustomEdge extends IEdge, ->( - pOptions?: IOptions, -): MergedOptions { - return { - getRecords: async (query) => { - return query.getRawMany(); - }, - getCursor: (record: Record | undefined) => - ({ id: (record as unknown as { id: string })?.id }) as unknown as Cursor, - encodeCursor: (cursor: Cursor) => - Buffer.from((cursor as unknown as { id: string }).id.toString()).toString( - 'base64', - ), - decodeCursor: (cursorString: string) => - ({ - id: Buffer.from(cursorString, 'base64').toString(), - }) as unknown as Cursor, - recordToEdge: (record: Record) => - ({ node: record }) as unknown as Omit, - resolveInfo: null, - ...pOptions, - }; -} diff --git a/packages/twenty-server/src/utils/pagination/utils/pagination-direction.ts b/packages/twenty-server/src/utils/pagination/utils/pagination-direction.ts deleted file mode 100644 index e602342b8d3..00000000000 --- a/packages/twenty-server/src/utils/pagination/utils/pagination-direction.ts +++ /dev/null @@ -1,17 +0,0 @@ -import { - BackwardPaginationArguments, - ConnectionArgumentsUnion, - ForwardPaginationArguments, -} from 'src/utils/pagination/interfaces/connection-arguments.interface'; - -export function isForwardPagination( - args: ConnectionArgumentsUnion, -): args is ForwardPaginationArguments { - return 'first' in args && args.first != null; -} - -export function isBackwardPagination( - args: ConnectionArgumentsUnion, -): args is BackwardPaginationArguments { - return 'last' in args && args.last != null; -} diff --git a/packages/twenty-server/src/utils/pagination/utils/validate-args.ts b/packages/twenty-server/src/utils/pagination/utils/validate-args.ts deleted file mode 100644 index 213c452d25c..00000000000 --- a/packages/twenty-server/src/utils/pagination/utils/validate-args.ts +++ /dev/null @@ -1,38 +0,0 @@ -import { - ConnectionArgumentsUnion, - IConnectionArguments, -} from 'src/utils/pagination/interfaces/connection-arguments.interface'; - -export function validateArgs( - args: IConnectionArguments, -): args is ConnectionArgumentsUnion { - // Only one of `first` and `last` / `after` and `before` can be set - if (args.first != null && args.last != null) { - throw new Error('Only one of "first" and "last" can be set'); - } - - if (args.after != null && args.before != null) { - throw new Error('Only one of "after" and "before" can be set'); - } - - // If `after` is set, `first` has to be set - if (args.after != null && args.first == null) { - throw new Error('"after" needs to be used with "first"'); - } - - // If `before` is set, `last` has to be set - if (args.before != null && args.last == null) { - throw new Error('"before" needs to be used with "last"'); - } - - // `first` and `last` have to be positive - if (args.first != null && args.first <= 0) { - throw new Error('"first" has to be positive'); - } - - if (args.last != null && args.last <= 0) { - throw new Error('"last" has to be positive'); - } - - return true; -}