From 3190f4a87ba9c058756e7d3b303b5eacb188e0ea Mon Sep 17 00:00:00 2001 From: martmull Date: Thu, 12 Sep 2024 11:00:25 +0200 Subject: [PATCH] 6658 workflows add a first twenty piece email sender (#6965) --- .../src/emails/workflow-action.email.tsx | 29 +++++++ packages/twenty-emails/src/index.ts | 1 + .../src/modules/workflow/constants/Actions.ts | 2 +- .../src/modules/workflow/types/Workflow.ts | 4 +- .../__tests__/addCreateStepNodes.test.ts | 4 +- .../__tests__/generateWorkflowDiagram.test.ts | 8 +- .../getWorkflowVersionDiagram.test.ts | 2 +- .../utils/__tests__/insertStep.test.ts | 16 ++-- .../utils/__tests__/replaceStep.test.ts | 8 +- .../workflow/utils/generateWorkflowDiagram.ts | 7 -- .../utils/getStepDefaultDefinition.ts | 4 +- packages/twenty-server/package.json | 1 + packages/twenty-server/src/app.module.ts | 7 +- packages/twenty-server/src/command/command.ts | 4 +- ...t-data-seed-demo-workspace.cron.command.ts | 6 +- ...p-data-seed-demo-workspace.cron.command.ts | 6 +- .../data-seed-demo-workspace.module.ts | 2 +- .../jobs/data-seed-demo-workspace.job.ts | 6 +- .../data-seed-demo-workspace.service.ts | 2 +- .../data-seed-dev-workspace.command.ts | 6 +- .../0-24/0-24-upgrade-version.module.ts | 2 +- .../src/database/typeorm/typeorm.module.ts | 2 +- .../src/database/typeorm/typeorm.service.ts | 2 +- .../graphql-config/graphql-config.service.ts | 6 +- .../graphql/metadata-graphql-api.module.ts | 6 +- .../api/graphql/metadata.module-factory.ts | 6 +- .../0-20-record-position-backfill.command.ts | 6 +- .../jobs/call-webhook-jobs.job.ts | 10 +-- .../jobs/call-webhook.job.ts | 6 +- .../jobs/record-position-backfill.job.ts | 6 +- .../listeners/entity-events-to-db.listener.ts | 14 ++-- .../listeners/telemetry.listener.ts | 4 +- .../workspace-query-runner.service.ts | 57 +++++++++----- .../core-query-builder.factory.ts | 2 +- .../src/engine/api/rest/rest-api.service.ts | 2 +- .../ai-sql-query/ai-sql-query.module.ts | 6 +- .../ai-sql-query/ai-sql-query.service.ts | 4 +- .../analytics/analytics.resolver.spec.ts | 2 +- .../analytics/analytics.resolver.ts | 2 +- .../analytics/analytics.service.spec.ts | 2 +- .../analytics/analytics.service.ts | 2 +- .../core-modules/auth/auth.resolver.spec.ts | 2 +- .../engine/core-modules/auth/auth.resolver.ts | 2 +- .../google-apis-auth.controller.ts | 2 +- ...pis-oauth-exchange-code-for-token.guard.ts | 2 +- .../google-apis-oauth-request-code.guard.ts | 2 +- .../guards/google-provider-enabled.guard.ts | 2 +- .../microsoft-provider-enabled.guard.ts | 2 +- .../auth/services/auth.service.spec.ts | 4 +- .../auth/services/auth.service.ts | 6 +- .../auth/services/google-apis.service.ts | 8 +- .../auth/services/sign-in-up.service.spec.ts | 2 +- .../auth/services/sign-in-up.service.ts | 2 +- .../auth/services/token.service.spec.ts | 4 +- .../auth/services/token.service.ts | 4 +- .../google-apis-oauth-common.auth.strategy.ts | 2 +- ...h-exchange-code-for-token.auth.strategy.ts | 2 +- ...e-apis-oauth-request-code.auth.strategy.ts | 2 +- .../auth/strategies/google.auth.strategy.ts | 2 +- .../auth/strategies/jwt.auth.strategy.ts | 2 +- .../strategies/microsoft.auth.strategy.ts | 2 +- .../billing/jobs/update-subscription.job.ts | 6 +- .../billing-workspace-member.listener.ts | 10 +-- .../billing-portal.workspace-service.ts | 2 +- .../services/billing-subscription.service.ts | 2 +- .../billing/services/billing.service.ts | 2 +- .../billing/stripe/stripe.service.ts | 2 +- .../cache-storage.module-factory.ts | 4 +- .../cache-storage/cache-storage.module.ts | 8 +- .../cache-storage/cache-storage.service.ts | 2 +- .../decorators/cache-storage.decorator.ts | 2 +- .../types/cache-storage-namespace.enum.ts | 0 .../types/cache-storage-type.enum.ts | 0 .../captcha/captcha.constants.ts | 0 .../captcha/captcha.guard.ts | 2 +- .../captcha/captcha.module-factory.ts | 4 +- .../captcha/captcha.module.ts | 10 +-- .../captcha/captcha.service.ts | 6 +- .../drivers/google-recaptcha.driver.ts | 6 +- .../interfaces/captcha-driver.interface.ts | 2 +- .../interfaces/captcha-server-response.ts | 0 .../captcha/drivers/turnstile.driver.ts | 6 +- .../captcha/interfaces/captcha.interface.ts | 0 .../core-modules/captcha/interfaces/index.ts | 1 + .../client-config/client-config.entity.ts | 2 +- .../client-config.resolver.spec.ts | 2 +- .../client-config/client-config.resolver.ts | 2 +- .../engine/core-modules/core-engine.module.ts | 69 ++++++++++++++++- .../interfaces/email-driver.interface.ts | 0 .../email/drivers/logger.driver.ts | 2 +- .../email/drivers/smtp.driver.ts | 2 +- .../email/email-sender.job.ts | 8 +- .../email/email-sender.service.ts | 4 +- .../email/email.constants.ts | 0 .../email/email.module-factory.ts | 4 +- .../email/email.module.ts | 12 +-- .../email/email.service.ts | 8 +- .../email/interfaces/email.interface.ts | 0 .../cast-to-log-level-array.decorator.spec.ts | 2 +- .../cast-to-positive-number.decorator.spec.ts | 2 +- .../decorators/cast-to-boolean.decorator.ts | 0 .../cast-to-log-level-array.decorator.ts | 0 .../cast-to-positive-number.decorator.ts | 0 .../cast-to-string-array.decorator.ts | 0 .../decorators/is-aws-region.decorator.ts | 0 .../decorators/is-duration.decorator.ts | 0 .../is-strictly-lower-than.decorator.ts | 0 .../environment/environment-variables.ts | 41 +++++----- .../environment.module-definition.ts | 0 .../environment/environment.module.ts | 6 +- .../environment/environment.service.spec.ts | 2 +- .../environment/environment.service.ts | 2 +- .../interfaces/aws-region.interface.ts | 0 .../interfaces/node-environment.interface.ts | 0 .../interfaces/support.interface.ts | 0 .../types/object-record-create.event.ts | 2 +- .../types/object-record-delete.event.ts | 2 +- .../types/object-record-update.event.ts | 2 +- .../types/object-record.base.event.ts | 0 .../object-record-changed-values.spec.ts | 2 +- .../object-record-changed-properties.util.ts | 0 .../utils/object-record-changed-values.ts | 0 .../utils/object-record-diff-merge.ts | 0 .../exception-handler.service.spec.ts | 4 +- .../drivers/console.driver.ts | 6 +- .../drivers/sentry.driver.ts | 6 +- .../exception-handler.constants.ts | 0 .../exception-handler.module-definition.ts | 2 +- .../exception-handler.module-factory.ts | 6 +- .../exception-handler.module.ts | 13 ++-- .../exception-handler.service.ts | 6 +- .../hooks/use-sentry-tracing.ts | 0 .../exception-handler-driver.interface.ts | 10 +++ .../exception-handler-options.interface.ts | 2 +- .../exception-handler-user.interface.ts | 0 .../interfaces/exception-handler.interface.ts | 0 .../exception-handler/interfaces/index.ts | 2 + .../__tests__/file-storage.service.spec.ts | 4 +- .../interfaces/storage-driver.interface.ts | 0 .../file-storage/drivers/local.driver.ts | 5 +- .../file-storage/drivers/s3.driver.ts | 5 +- .../file-storage/file-storage.constants.ts | 0 .../file-storage.module-definition.ts | 2 +- .../file-storage.module-factory.ts | 4 +- .../file-storage/file-storage.module.ts | 11 ++- .../file-storage/file-storage.service.ts | 4 +- .../interfaces/file-storage-exception.ts | 0 .../interfaces/file-storage.interface.ts | 4 +- .../file-storage/interfaces/index.ts | 1 + .../file-storage/utils/read-file-content.ts | 0 .../file/controllers/file.controller.ts | 2 +- .../file/file-upload/file-upload.module.ts | 2 +- .../services/file-upload.service.ts | 2 +- .../engine/core-modules/file/file.module.ts | 2 +- .../file/guards/file-path-guard.ts | 2 +- .../file/services/file.service.spec.ts | 4 +- .../file/services/file.service.ts | 4 +- .../graphql/engine-graphql.module.ts | 2 +- .../hooks/use-graphql-error-handler.hook.ts | 2 +- .../src/engine/core-modules/jwt/jwt.module.ts | 4 +- .../llm-prompt-template-driver.interface.ts | 0 .../llm-chat-model/drivers/openai.driver.ts | 2 +- .../interfaces/llm-chat-model.interface.ts | 0 .../llm-chat-model.constants.ts | 0 .../llm-chat-model.module-factory.ts | 4 +- .../llm-chat-model/llm-chat-model.module.ts | 8 +- .../llm-chat-model/llm-chat-model.service.ts | 4 +- .../llm-tracing/drivers/console.driver.ts | 2 +- .../llm-tracing-driver.interface.ts | 0 .../llm-tracing/drivers/langfuse.driver.ts | 2 +- .../interfaces/llm-tracing.interface.ts | 2 +- .../llm-tracing/llm-tracing.constants.ts | 0 .../llm-tracing/llm-tracing.module-factory.ts | 4 +- .../llm-tracing/llm-tracing.module.ts | 10 +-- .../llm-tracing/llm-tracing.service.ts | 4 +- .../logger/__tests__/logger.service.spec.ts | 4 +- .../core-modules/logger/interfaces/index.ts | 1 + .../logger/interfaces/logger.interface.ts | 0 .../logger/logger.constants.ts | 0 .../logger/logger.module-definition.ts | 2 +- .../logger/logger.module-factory.ts | 4 +- .../logger/logger.module.ts | 9 +-- .../logger/logger.service.ts | 2 +- .../decorators/message-queue.decorator.ts | 4 +- .../decorators/process.decorator.ts | 2 +- .../decorators/processor.decorator.ts | 4 +- .../message-queue/drivers/bullmq.driver.ts | 11 ++- .../interfaces/job-options.interface.ts | 0 .../message-queue-driver.interface.ts | 8 +- .../message-queue/drivers/pg-boss.driver.ts | 11 ++- .../message-queue/drivers/sync.driver.ts | 7 +- .../message-queue/interfaces/index.ts | 1 + .../interfaces/message-queue-job.interface.ts | 0 .../message-queue-module-options.interface.ts | 4 +- .../message-queue-worker-options.interface.ts | 0 .../message-queue/jobs.module.ts | 4 +- .../message-queue-core.module.ts | 18 ++--- .../message-queue-metadata.accessor.ts | 6 +- .../message-queue/message-queue.constants.ts | 0 .../message-queue/message-queue.explorer.ts | 13 ++-- .../message-queue.module-definition.ts | 2 +- .../message-queue.module-factory.ts | 4 +- .../message-queue/message-queue.module.ts | 8 +- ...essage-queue-task-assigned.service.spec.ts | 6 +- .../services/message-queue.service.ts | 10 +-- .../utils/get-queue-token.util.ts | 0 .../open-api/open-api.service.spec.ts | 2 +- .../core-modules/open-api/open-api.service.ts | 2 +- .../postgres-credentials.module.ts | 2 +- .../postgres-credentials.service.ts | 2 +- .../drivers/base-serverless.driver.ts | 10 +-- .../drivers/constants/build-file-name.ts | 0 .../drivers/constants/common-layer-name.ts | 0 .../constants/serverless-tmpdir-folder.ts | 0 .../drivers/constants/source-file-name.ts | 0 .../interfaces/serverless-driver.interface.ts | 0 .../serverless/drivers/lambda.driver.ts | 14 ++-- .../serverless/drivers/layers/1/package.json | 0 .../serverless/drivers/layers/1/yarn.lock | 0 .../engine/.yarn/releases/yarn-4.4.0.cjs | 0 .../drivers/layers/engine/.yarnrc.yml | 0 .../drivers/layers/last-layer-version.ts | 0 .../serverless/drivers/local.driver.ts | 20 ++--- .../drivers/utils/compile-typescript.ts | 0 .../utils/copy-and-build-dependencies.ts | 2 +- .../drivers/utils/create-zip-file.ts | 0 .../utils/get-last-layer-dependencies.ts | 2 +- .../utils/get-layer-dependencies-dir-name.ts | 2 +- .../utils/lambda-build-directory-manager.ts | 2 +- .../serverless/serverless-module.factory.ts | 6 +- .../serverless/serverless.constants.ts | 0 .../serverless/serverless.interface.ts | 4 +- .../serverless/serverless.module.ts | 10 +-- .../serverless/serverless.service.ts | 4 +- .../utils/serverless-get-folder.utils.ts | 0 .../throttler/throttler.service.ts | 6 +- .../user-workspace/user-workspace.service.ts | 2 +- .../user/services/user.service.ts | 2 +- .../engine/core-modules/user/user.resolver.ts | 4 +- ...ow-trigger-graphql-api-exception.filter.ts | 2 +- .../workflow/workflow-trigger.resolver.ts | 2 +- .../handle-workspace-member-deleted.job.ts | 6 +- .../services/workspace.service.spec.ts | 4 +- .../workspace/services/workspace.service.ts | 4 +- .../workspace-workspace-member.listener.ts | 10 +-- .../src/engine/guards/demo.env.guard.ts | 2 +- .../integrations/captcha/interfaces/index.ts | 1 - .../exception-handler-driver.interface.ts | 10 --- .../exception-handler/interfaces/index.ts | 2 - .../file-storage/interfaces/index.ts | 1 - .../integrations/integrations.module.ts | 76 ------------------ .../integrations/logger/interfaces/index.ts | 1 - .../message-queue/interfaces/index.ts | 1 - ...-field-metadata-default-value.validator.ts | 2 +- .../remote-server/remote-server.service.ts | 2 +- .../serverless-function.module.ts | 2 +- .../serverless-function.service.ts | 20 ++--- ...l-hydrate-request-from-token.middleware.ts | 2 +- .../factories/workspace-datasource.factory.ts | 2 +- .../utils/global-exception-handler.util.ts | 4 +- .../workspace-cache-storage.service.ts | 6 +- .../clean-inactive-workspaces.command.ts | 6 +- ...-clean-inactive-workspaces.cron.command.ts | 6 +- ...-clean-inactive-workspaces.cron.command.ts | 6 +- .../crons/clean-inactive-workspace.job.ts | 10 +-- .../services/workspace-status.service.ts | 2 +- .../workspace-manager.module.ts | 2 +- packages/twenty-server/src/main.ts | 2 +- ...ocklist-item-delete-calendar-events.job.ts | 8 +- .../blocklist-reimport-calendar-events.job.ts | 8 +- .../listeners/calendar-blocklist.listener.ts | 12 +-- ...ed-account-associated-calendar-data.job.ts | 6 +- ...vent-cleaner-connected-account.listener.ts | 8 +- .../calendar-event-list-fetch.cron.command.ts | 6 +- .../calendar-ongoing-stale.cron.command.ts | 6 +- .../calendar-event-list-fetch.cron.job.ts | 12 +-- .../jobs/calendar-ongoing-stale.cron.job.ts | 12 +-- .../google-calendar-driver.module.ts | 2 +- .../jobs/calendar-event-list-fetch.job.ts | 6 +- .../jobs/calendar-ongoing-stale.job.ts | 6 +- .../services/calendar-save-events.service.ts | 6 +- ...eate-company-and-contact-after-sync.job.ts | 6 +- ...event-participant-match-participant.job.ts | 6 +- ...ent-participant-unmatch-participant.job.ts | 6 +- ...endar-event-participant-person.listener.ts | 12 +-- ...t-participant-workspace-member.listener.ts | 12 +-- .../calendar-channel-sync-status.service.ts | 6 +- .../listeners/connected-account.listener.ts | 2 +- .../google-oauth2-client-manager.service.ts | 2 +- ...ected-account-delete-one.pre-query.hook.ts | 2 +- ...google-api-refresh-access-token.service.ts | 2 +- .../jobs/create-company-and-contact.job.ts | 6 +- ...acts-creation-calendar-channel.listener.ts | 10 +-- ...tacts-creation-message-channel.listener.ts | 10 +-- .../create-company-and-contact.service.ts | 2 +- .../send-email.workflow-action.ts | 77 +++++++++++++++++++ ...ging-blocklist-item-delete-messages.job.ts | 8 +- ...ssaging-blocklist-reimport-messages.job.ts | 8 +- .../listeners/messaging-blocklist.listener.ts | 12 +-- .../message-channel-sync-status.service.ts | 6 +- ...-connected-account-deletion-cleanup.job.ts | 6 +- ...sage-cleaner-connected-account.listener.ts | 8 +- ...messaging-single-message-import.command.ts | 6 +- ...ssaging-message-list-fetch.cron.command.ts | 6 +- .../messaging-messages-import.cron.command.ts | 6 +- .../messaging-ongoing-stale.cron.command.ts | 6 +- .../messaging-message-list-fetch.cron.job.ts | 12 +-- .../messaging-messages-import.cron.job.ts | 12 +-- .../jobs/messaging-ongoing-stale.cron.job.ts | 12 +-- .../gmail/messaging-gmail-driver.module.ts | 2 +- ...-single-message-to-cache-for-import.job.ts | 12 +-- .../jobs/messaging-clean-cache.ts | 12 +-- .../jobs/messaging-message-list-fetch.job.ts | 6 +- .../jobs/messaging-messages-import.job.ts | 6 +- .../jobs/messaging-ongoing-stale.job.ts | 6 +- ...import-manager-message-channel.listener.ts | 8 +- ...ssaging-full-message-list-fetch.service.ts | 6 +- .../messaging-messages-import.service.ts | 6 +- ...ging-partial-message-list-fetch.service.ts | 6 +- ...es-and-enqueue-contact-creation.service.ts | 6 +- ...ssage-participant-match-participant.job.ts | 6 +- ...age-participant-unmatch-participant.job.ts | 6 +- ...eate-company-and-contact-after-sync.job.ts | 6 +- .../message-participant-person.listener.ts | 12 +-- ...e-participant-workspace-member.listener.ts | 12 +-- ...nel-sync-status-monitoring.cron.command.ts | 6 +- ...age-channel-sync-status-monitoring.cron.ts | 6 +- .../services/messaging-telemetry.service.ts | 2 +- .../workflow-actions/code.workflow-action.ts} | 17 ++-- .../create-audit-log-from-internal-event.ts | 8 +- ...meline-activity-from-internal-event.job.ts | 8 +- .../timeline-activity.repository.ts | 2 +- .../services/timeline-activity.service.ts | 2 +- .../workflow-query-validation.exception.ts | 0 .../workflow-create-many.pre-query.hook.ts | 2 +- .../workflow-create-one.pre-query.hook.ts | 2 +- .../query-hooks/workflow-query-hook.module.ts | 28 +++---- ...workflow-run-create-many.pre-query.hook.ts | 2 +- .../workflow-run-create-one.pre-query.hook.ts | 2 +- ...workflow-run-delete-many.pre-query.hook.ts | 2 +- .../workflow-run-delete-one.pre-query.hook.ts | 2 +- ...workflow-run-update-many.pre-query.hook.ts | 2 +- .../workflow-run-update-one.pre-query.hook.ts | 2 +- .../workflow-update-many.pre-query.hook.ts | 2 +- .../workflow-update-one.pre-query.hook.ts | 2 +- ...flow-version-create-many.pre-query.hook.ts | 2 +- ...kflow-version-create-one.pre-query.hook.ts | 2 +- ...flow-version-delete-many.pre-query.hook.ts | 2 +- ...kflow-version-delete-one.pre-query.hook.ts | 2 +- ...flow-version-update-many.pre-query.hook.ts | 2 +- ...kflow-version-update-one.pre-query.hook.ts | 2 +- .../workflow-version.workspace-entity.ts | 4 +- .../common/types/workflow-result.type.ts | 10 --- .../common/types/workflow-settings.type.ts | 14 ---- .../common/types/workflow-step.type.ts | 18 ----- ...sert-workflow-statuses-not-set-or-empty.ts | 2 +- .../utils/assert-workflow-statuses-not-set.ts | 2 +- .../assert-workflow-version-is-draft.util.ts | 4 +- .../workflow/common/workflow-common.module.ts | 2 +- .../workflow-common.workspace-service.ts | 4 +- ...ow-version-validation.workspace-service.ts | 6 +- .../workflow-executor.exception.ts | 0 .../workflow-step-executor.exception.ts | 0 .../factories/workflow-action.factory.ts | 33 ++++++++ .../interfaces/workflow-action.interface.ts | 12 +++ .../types/workflow-action-result.type.ts | 10 +++ .../types/workflow-action.type.ts | 27 +++++++ .../types/workflow-step-settings.type.ts | 24 ++++++ .../workflow-executor.module.ts | 18 ++++- .../workflow-executor.workspace-service.ts | 24 +++--- .../workflow-run.exception.ts | 0 .../workflow-runner/jobs/run-workflow.job.ts | 12 +-- .../workflow-run/workflow-run.module.ts | 11 --- .../workflow-runner/workflow-runner.module.ts | 12 ++- .../workflow-run.workspace-service.ts | 4 +- .../workflow-runner.workspace-service.ts | 8 +- .../workflow-status.constants.ts | 0 .../workflow-status.enum.ts} | 0 .../jobs/workflow-statuses-update.job.ts | 6 +- .../workflow-version-status.listener.ts | 10 +-- .../get-status-combination-from-array.util.ts | 4 +- ...get-status-combination-from-update.util.ts | 2 +- .../get-statuses-from-combination.util.ts | 4 +- .../workflow-step-executor.factory.ts | 26 ------- .../workflow-step-executor.interface.ts | 12 --- .../workflow-step-executor.module.ts | 17 ---- .../database-event-trigger.service.ts | 2 +- .../database-event-trigger.listener.ts | 12 +-- .../workflow-trigger.exception.ts | 0 .../jobs/workflow-event-trigger.job.ts | 10 +-- .../types/workflow-trigger.type.ts | 0 .../assert-version-can-be-activated.util.ts | 4 +- .../workflow-trigger.module.ts | 2 +- .../workflow-trigger.workspace-service.ts | 8 +- .../src/queue-worker/queue-worker.module.ts | 8 +- .../src/queue-worker/queue-worker.ts | 4 +- yarn.lock | 3 +- 397 files changed, 1143 insertions(+), 1037 deletions(-) create mode 100644 packages/twenty-emails/src/emails/workflow-action.email.tsx rename packages/twenty-server/src/engine/{integrations => core-modules}/cache-storage/cache-storage.module-factory.ts (91%) rename packages/twenty-server/src/engine/{integrations => core-modules}/cache-storage/cache-storage.module.ts (79%) rename packages/twenty-server/src/engine/{integrations => core-modules}/cache-storage/cache-storage.service.ts (96%) rename packages/twenty-server/src/engine/{integrations => core-modules}/cache-storage/decorators/cache-storage.decorator.ts (78%) rename packages/twenty-server/src/engine/{integrations => core-modules}/cache-storage/types/cache-storage-namespace.enum.ts (100%) rename packages/twenty-server/src/engine/{integrations => core-modules}/cache-storage/types/cache-storage-type.enum.ts (100%) rename packages/twenty-server/src/engine/{integrations => core-modules}/captcha/captcha.constants.ts (100%) rename packages/twenty-server/src/engine/{integrations => core-modules}/captcha/captcha.guard.ts (91%) rename packages/twenty-server/src/engine/{integrations => core-modules}/captcha/captcha.module-factory.ts (85%) rename packages/twenty-server/src/engine/{integrations => core-modules}/captcha/captcha.module.ts (76%) rename packages/twenty-server/src/engine/{integrations => core-modules}/captcha/captcha.service.ts (71%) rename packages/twenty-server/src/engine/{integrations => core-modules}/captcha/drivers/google-recaptcha.driver.ts (86%) rename packages/twenty-server/src/engine/{integrations => core-modules}/captcha/drivers/interfaces/captcha-driver.interface.ts (64%) rename packages/twenty-server/src/engine/{integrations => core-modules}/captcha/drivers/interfaces/captcha-server-response.ts (100%) rename packages/twenty-server/src/engine/{integrations => core-modules}/captcha/drivers/turnstile.driver.ts (86%) rename packages/twenty-server/src/engine/{integrations => core-modules}/captcha/interfaces/captcha.interface.ts (100%) create mode 100644 packages/twenty-server/src/engine/core-modules/captcha/interfaces/index.ts rename packages/twenty-server/src/engine/{integrations => core-modules}/email/drivers/interfaces/email-driver.interface.ts (100%) rename packages/twenty-server/src/engine/{integrations => core-modules}/email/drivers/logger.driver.ts (90%) rename packages/twenty-server/src/engine/{integrations => core-modules}/email/drivers/smtp.driver.ts (92%) rename packages/twenty-server/src/engine/{integrations => core-modules}/email/email-sender.job.ts (63%) rename packages/twenty-server/src/engine/{integrations => core-modules}/email/email-sender.service.ts (76%) rename packages/twenty-server/src/engine/{integrations => core-modules}/email/email.constants.ts (100%) rename packages/twenty-server/src/engine/{integrations => core-modules}/email/email.module-factory.ts (89%) rename packages/twenty-server/src/engine/{integrations => core-modules}/email/email.module.ts (65%) rename packages/twenty-server/src/engine/{integrations => core-modules}/email/email.service.ts (70%) rename packages/twenty-server/src/engine/{integrations => core-modules}/email/interfaces/email.interface.ts (100%) rename packages/twenty-server/src/engine/{integrations => core-modules}/environment/decorators/__tests__/cast-to-log-level-array.decorator.spec.ts (96%) rename packages/twenty-server/src/engine/{integrations => core-modules}/environment/decorators/__tests__/cast-to-positive-number.decorator.spec.ts (96%) rename packages/twenty-server/src/engine/{integrations => core-modules}/environment/decorators/cast-to-boolean.decorator.ts (100%) rename packages/twenty-server/src/engine/{integrations => core-modules}/environment/decorators/cast-to-log-level-array.decorator.ts (100%) rename packages/twenty-server/src/engine/{integrations => core-modules}/environment/decorators/cast-to-positive-number.decorator.ts (100%) rename packages/twenty-server/src/engine/{integrations => core-modules}/environment/decorators/cast-to-string-array.decorator.ts (100%) rename packages/twenty-server/src/engine/{integrations => core-modules}/environment/decorators/is-aws-region.decorator.ts (100%) rename packages/twenty-server/src/engine/{integrations => core-modules}/environment/decorators/is-duration.decorator.ts (100%) rename packages/twenty-server/src/engine/{integrations => core-modules}/environment/decorators/is-strictly-lower-than.decorator.ts (100%) rename packages/twenty-server/src/engine/{integrations => core-modules}/environment/environment-variables.ts (86%) rename packages/twenty-server/src/engine/{integrations => core-modules}/environment/environment.module-definition.ts (100%) rename packages/twenty-server/src/engine/{integrations => core-modules}/environment/environment.module.ts (56%) rename packages/twenty-server/src/engine/{integrations => core-modules}/environment/environment.service.spec.ts (86%) rename packages/twenty-server/src/engine/{integrations => core-modules}/environment/environment.service.ts (88%) rename packages/twenty-server/src/engine/{integrations => core-modules}/environment/interfaces/aws-region.interface.ts (100%) rename packages/twenty-server/src/engine/{integrations => core-modules}/environment/interfaces/node-environment.interface.ts (100%) rename packages/twenty-server/src/engine/{integrations => core-modules}/environment/interfaces/support.interface.ts (100%) rename packages/twenty-server/src/engine/{integrations => core-modules}/event-emitter/types/object-record-create.event.ts (70%) rename packages/twenty-server/src/engine/{integrations => core-modules}/event-emitter/types/object-record-delete.event.ts (71%) rename packages/twenty-server/src/engine/{integrations => core-modules}/event-emitter/types/object-record-update.event.ts (77%) rename packages/twenty-server/src/engine/{integrations => core-modules}/event-emitter/types/object-record.base.event.ts (100%) rename packages/twenty-server/src/engine/{integrations => core-modules}/event-emitter/utils/__tests__/object-record-changed-values.spec.ts (96%) rename packages/twenty-server/src/engine/{integrations => core-modules}/event-emitter/utils/object-record-changed-properties.util.ts (100%) rename packages/twenty-server/src/engine/{integrations => core-modules}/event-emitter/utils/object-record-changed-values.ts (100%) rename packages/twenty-server/src/engine/{integrations => core-modules}/event-emitter/utils/object-record-diff-merge.ts (100%) rename packages/twenty-server/src/engine/{integrations => core-modules}/exception-handler/__tests__/exception-handler.service.spec.ts (83%) rename packages/twenty-server/src/engine/{integrations => core-modules}/exception-handler/drivers/console.driver.ts (74%) rename packages/twenty-server/src/engine/{integrations => core-modules}/exception-handler/drivers/sentry.driver.ts (94%) rename packages/twenty-server/src/engine/{integrations => core-modules}/exception-handler/exception-handler.constants.ts (100%) rename packages/twenty-server/src/engine/{integrations => core-modules}/exception-handler/exception-handler.module-definition.ts (75%) rename packages/twenty-server/src/engine/{integrations => core-modules}/exception-handler/exception-handler.module-factory.ts (86%) rename packages/twenty-server/src/engine/{integrations => core-modules}/exception-handler/exception-handler.module.ts (70%) rename packages/twenty-server/src/engine/{integrations => core-modules}/exception-handler/exception-handler.service.ts (69%) rename packages/twenty-server/src/engine/{integrations => core-modules}/exception-handler/hooks/use-sentry-tracing.ts (100%) create mode 100644 packages/twenty-server/src/engine/core-modules/exception-handler/interfaces/exception-handler-driver.interface.ts rename packages/twenty-server/src/engine/{integrations => core-modules}/exception-handler/interfaces/exception-handler-options.interface.ts (63%) rename packages/twenty-server/src/engine/{integrations => core-modules}/exception-handler/interfaces/exception-handler-user.interface.ts (100%) rename packages/twenty-server/src/engine/{integrations => core-modules}/exception-handler/interfaces/exception-handler.interface.ts (100%) create mode 100644 packages/twenty-server/src/engine/core-modules/exception-handler/interfaces/index.ts rename packages/twenty-server/src/engine/{integrations => core-modules}/file-storage/__tests__/file-storage.service.spec.ts (82%) rename packages/twenty-server/src/engine/{integrations => core-modules}/file-storage/drivers/interfaces/storage-driver.interface.ts (100%) rename packages/twenty-server/src/engine/{integrations => core-modules}/file-storage/drivers/local.driver.ts (95%) rename packages/twenty-server/src/engine/{integrations => core-modules}/file-storage/drivers/s3.driver.ts (97%) rename packages/twenty-server/src/engine/{integrations => core-modules}/file-storage/file-storage.constants.ts (100%) rename packages/twenty-server/src/engine/{integrations => core-modules}/file-storage/file-storage.module-definition.ts (76%) rename packages/twenty-server/src/engine/{integrations => core-modules}/file-storage/file-storage.module-factory.ts (93%) rename packages/twenty-server/src/engine/{integrations => core-modules}/file-storage/file-storage.module.ts (73%) rename packages/twenty-server/src/engine/{integrations => core-modules}/file-storage/file-storage.service.ts (83%) rename packages/twenty-server/src/engine/{integrations => core-modules}/file-storage/interfaces/file-storage-exception.ts (100%) rename packages/twenty-server/src/engine/{integrations => core-modules}/file-storage/interfaces/file-storage.interface.ts (85%) create mode 100644 packages/twenty-server/src/engine/core-modules/file-storage/interfaces/index.ts rename packages/twenty-server/src/engine/{integrations => core-modules}/file-storage/utils/read-file-content.ts (100%) rename packages/twenty-server/src/engine/{integrations => core-modules}/llm-chat-model/drivers/interfaces/llm-prompt-template-driver.interface.ts (100%) rename packages/twenty-server/src/engine/{integrations => core-modules}/llm-chat-model/drivers/openai.driver.ts (89%) rename packages/twenty-server/src/engine/{integrations => core-modules}/llm-chat-model/interfaces/llm-chat-model.interface.ts (100%) rename packages/twenty-server/src/engine/{integrations => core-modules}/llm-chat-model/llm-chat-model.constants.ts (100%) rename packages/twenty-server/src/engine/{integrations => core-modules}/llm-chat-model/llm-chat-model.module-factory.ts (76%) rename packages/twenty-server/src/engine/{integrations => core-modules}/llm-chat-model/llm-chat-model.module.ts (77%) rename packages/twenty-server/src/engine/{integrations => core-modules}/llm-chat-model/llm-chat-model.service.ts (74%) rename packages/twenty-server/src/engine/{integrations => core-modules}/llm-tracing/drivers/console.driver.ts (92%) rename packages/twenty-server/src/engine/{integrations => core-modules}/llm-tracing/drivers/interfaces/llm-tracing-driver.interface.ts (100%) rename packages/twenty-server/src/engine/{integrations => core-modules}/llm-tracing/drivers/langfuse.driver.ts (91%) rename packages/twenty-server/src/engine/{integrations => core-modules}/llm-tracing/interfaces/llm-tracing.interface.ts (91%) rename packages/twenty-server/src/engine/{integrations => core-modules}/llm-tracing/llm-tracing.constants.ts (100%) rename packages/twenty-server/src/engine/{integrations => core-modules}/llm-tracing/llm-tracing.module-factory.ts (88%) rename packages/twenty-server/src/engine/{integrations => core-modules}/llm-tracing/llm-tracing.module.ts (75%) rename packages/twenty-server/src/engine/{integrations => core-modules}/llm-tracing/llm-tracing.service.ts (78%) rename packages/twenty-server/src/engine/{integrations => core-modules}/logger/__tests__/logger.service.spec.ts (80%) create mode 100644 packages/twenty-server/src/engine/core-modules/logger/interfaces/index.ts rename packages/twenty-server/src/engine/{integrations => core-modules}/logger/interfaces/logger.interface.ts (100%) rename packages/twenty-server/src/engine/{integrations => core-modules}/logger/logger.constants.ts (100%) rename packages/twenty-server/src/engine/{integrations => core-modules}/logger/logger.module-definition.ts (78%) rename packages/twenty-server/src/engine/{integrations => core-modules}/logger/logger.module-factory.ts (85%) rename packages/twenty-server/src/engine/{integrations => core-modules}/logger/logger.module.ts (83%) rename packages/twenty-server/src/engine/{integrations => core-modules}/logger/logger.service.ts (93%) rename packages/twenty-server/src/engine/{integrations => core-modules}/message-queue/decorators/message-queue.decorator.ts (63%) rename packages/twenty-server/src/engine/{integrations => core-modules}/message-queue/decorators/process.decorator.ts (90%) rename packages/twenty-server/src/engine/{integrations => core-modules}/message-queue/decorators/processor.decorator.ts (91%) rename packages/twenty-server/src/engine/{integrations => core-modules}/message-queue/drivers/bullmq.driver.ts (87%) rename packages/twenty-server/src/engine/{integrations => core-modules}/message-queue/drivers/interfaces/job-options.interface.ts (100%) rename packages/twenty-server/src/engine/{integrations => core-modules}/message-queue/drivers/interfaces/message-queue-driver.interface.ts (72%) rename packages/twenty-server/src/engine/{integrations => core-modules}/message-queue/drivers/pg-boss.driver.ts (83%) rename packages/twenty-server/src/engine/{integrations => core-modules}/message-queue/drivers/sync.driver.ts (86%) create mode 100644 packages/twenty-server/src/engine/core-modules/message-queue/interfaces/index.ts rename packages/twenty-server/src/engine/{integrations => core-modules}/message-queue/interfaces/message-queue-job.interface.ts (100%) rename packages/twenty-server/src/engine/{integrations => core-modules}/message-queue/interfaces/message-queue-module-options.interface.ts (83%) rename packages/twenty-server/src/engine/{integrations => core-modules}/message-queue/interfaces/message-queue-worker-options.interface.ts (100%) rename packages/twenty-server/src/engine/{integrations => core-modules}/message-queue/jobs.module.ts (96%) rename packages/twenty-server/src/engine/{integrations => core-modules}/message-queue/message-queue-core.module.ts (84%) rename packages/twenty-server/src/engine/{integrations => core-modules}/message-queue/message-queue-metadata.accessor.ts (77%) rename packages/twenty-server/src/engine/{integrations => core-modules}/message-queue/message-queue.constants.ts (100%) rename packages/twenty-server/src/engine/{integrations => core-modules}/message-queue/message-queue.explorer.ts (91%) rename packages/twenty-server/src/engine/{integrations => core-modules}/message-queue/message-queue.module-definition.ts (80%) rename packages/twenty-server/src/engine/{integrations => core-modules}/message-queue/message-queue.module-factory.ts (92%) rename packages/twenty-server/src/engine/{integrations => core-modules}/message-queue/message-queue.module.ts (74%) rename packages/twenty-server/src/engine/{integrations => core-modules}/message-queue/services/__tests__/message-queue-task-assigned.service.spec.ts (85%) rename packages/twenty-server/src/engine/{integrations => core-modules}/message-queue/services/message-queue.service.ts (78%) rename packages/twenty-server/src/engine/{integrations => core-modules}/message-queue/utils/get-queue-token.util.ts (100%) rename packages/twenty-server/src/engine/{integrations => core-modules}/serverless/drivers/base-serverless.driver.ts (71%) rename packages/twenty-server/src/engine/{integrations => core-modules}/serverless/drivers/constants/build-file-name.ts (100%) rename packages/twenty-server/src/engine/{integrations => core-modules}/serverless/drivers/constants/common-layer-name.ts (100%) rename packages/twenty-server/src/engine/{integrations => core-modules}/serverless/drivers/constants/serverless-tmpdir-folder.ts (100%) rename packages/twenty-server/src/engine/{integrations => core-modules}/serverless/drivers/constants/source-file-name.ts (100%) rename packages/twenty-server/src/engine/{integrations => core-modules}/serverless/drivers/interfaces/serverless-driver.interface.ts (100%) rename packages/twenty-server/src/engine/{integrations => core-modules}/serverless/drivers/lambda.driver.ts (95%) rename packages/twenty-server/src/engine/{integrations => core-modules}/serverless/drivers/layers/1/package.json (100%) rename packages/twenty-server/src/engine/{integrations => core-modules}/serverless/drivers/layers/1/yarn.lock (100%) rename packages/twenty-server/src/engine/{integrations => core-modules}/serverless/drivers/layers/engine/.yarn/releases/yarn-4.4.0.cjs (100%) rename packages/twenty-server/src/engine/{integrations => core-modules}/serverless/drivers/layers/engine/.yarnrc.yml (100%) rename packages/twenty-server/src/engine/{integrations => core-modules}/serverless/drivers/layers/last-layer-version.ts (100%) rename packages/twenty-server/src/engine/{integrations => core-modules}/serverless/drivers/local.driver.ts (90%) rename packages/twenty-server/src/engine/{integrations => core-modules}/serverless/drivers/utils/compile-typescript.ts (100%) rename packages/twenty-server/src/engine/{integrations => core-modules}/serverless/drivers/utils/copy-and-build-dependencies.ts (88%) rename packages/twenty-server/src/engine/{integrations => core-modules}/serverless/drivers/utils/create-zip-file.ts (100%) rename packages/twenty-server/src/engine/{integrations => core-modules}/serverless/drivers/utils/get-last-layer-dependencies.ts (82%) rename packages/twenty-server/src/engine/{integrations => core-modules}/serverless/drivers/utils/get-layer-dependencies-dir-name.ts (86%) rename packages/twenty-server/src/engine/{integrations => core-modules}/serverless/drivers/utils/lambda-build-directory-manager.ts (94%) rename packages/twenty-server/src/engine/{integrations => core-modules}/serverless/serverless-module.factory.ts (89%) rename packages/twenty-server/src/engine/{integrations => core-modules}/serverless/serverless.constants.ts (100%) rename packages/twenty-server/src/engine/{integrations => core-modules}/serverless/serverless.interface.ts (85%) rename packages/twenty-server/src/engine/{integrations => core-modules}/serverless/serverless.module.ts (73%) rename packages/twenty-server/src/engine/{integrations => core-modules}/serverless/serverless.service.ts (89%) rename packages/twenty-server/src/engine/{integrations => core-modules}/serverless/utils/serverless-get-folder.utils.ts (100%) delete mode 100644 packages/twenty-server/src/engine/integrations/captcha/interfaces/index.ts delete mode 100644 packages/twenty-server/src/engine/integrations/exception-handler/interfaces/exception-handler-driver.interface.ts delete mode 100644 packages/twenty-server/src/engine/integrations/exception-handler/interfaces/index.ts delete mode 100644 packages/twenty-server/src/engine/integrations/file-storage/interfaces/index.ts delete mode 100644 packages/twenty-server/src/engine/integrations/integrations.module.ts delete mode 100644 packages/twenty-server/src/engine/integrations/logger/interfaces/index.ts delete mode 100644 packages/twenty-server/src/engine/integrations/message-queue/interfaces/index.ts create mode 100644 packages/twenty-server/src/modules/mail-sender/workflow-actions/send-email.workflow-action.ts rename packages/twenty-server/src/modules/{workflow/workflow-step-executor/workflow-step-executors/code-action-executor.ts => serverless/workflow-actions/code.workflow-action.ts} (66%) rename packages/twenty-server/src/modules/workflow/common/{query-hooks => exceptions}/workflow-query-validation.exception.ts (100%) rename packages/twenty-server/src/modules/workflow/common/query-hooks/{workflow => }/workflow-create-many.pre-query.hook.ts (93%) rename packages/twenty-server/src/modules/workflow/common/query-hooks/{workflow => }/workflow-create-one.pre-query.hook.ts (92%) rename packages/twenty-server/src/modules/workflow/common/query-hooks/{workflow-run => }/workflow-run-create-many.pre-query.hook.ts (92%) rename packages/twenty-server/src/modules/workflow/common/query-hooks/{workflow-run => }/workflow-run-create-one.pre-query.hook.ts (92%) rename packages/twenty-server/src/modules/workflow/common/query-hooks/{workflow-run => }/workflow-run-delete-many.pre-query.hook.ts (92%) rename packages/twenty-server/src/modules/workflow/common/query-hooks/{workflow-run => }/workflow-run-delete-one.pre-query.hook.ts (90%) rename packages/twenty-server/src/modules/workflow/common/query-hooks/{workflow-run => }/workflow-run-update-many.pre-query.hook.ts (92%) rename packages/twenty-server/src/modules/workflow/common/query-hooks/{workflow-run => }/workflow-run-update-one.pre-query.hook.ts (92%) rename packages/twenty-server/src/modules/workflow/common/query-hooks/{workflow => }/workflow-update-many.pre-query.hook.ts (92%) rename packages/twenty-server/src/modules/workflow/common/query-hooks/{workflow => }/workflow-update-one.pre-query.hook.ts (93%) rename packages/twenty-server/src/modules/workflow/common/query-hooks/{workflow-version => }/workflow-version-create-many.pre-query.hook.ts (93%) rename packages/twenty-server/src/modules/workflow/common/query-hooks/{workflow-version => }/workflow-version-create-one.pre-query.hook.ts (92%) rename packages/twenty-server/src/modules/workflow/common/query-hooks/{workflow-version => }/workflow-version-delete-many.pre-query.hook.ts (92%) rename packages/twenty-server/src/modules/workflow/common/query-hooks/{workflow-version => }/workflow-version-delete-one.pre-query.hook.ts (91%) rename packages/twenty-server/src/modules/workflow/common/query-hooks/{workflow-version => }/workflow-version-update-many.pre-query.hook.ts (92%) rename packages/twenty-server/src/modules/workflow/common/query-hooks/{workflow-version => }/workflow-version-update-one.pre-query.hook.ts (92%) delete mode 100644 packages/twenty-server/src/modules/workflow/common/types/workflow-result.type.ts delete mode 100644 packages/twenty-server/src/modules/workflow/common/types/workflow-settings.type.ts delete mode 100644 packages/twenty-server/src/modules/workflow/common/types/workflow-step.type.ts rename packages/twenty-server/src/modules/workflow/common/{query-hooks/workflow => }/utils/assert-workflow-statuses-not-set-or-empty.ts (85%) rename packages/twenty-server/src/modules/workflow/common/{query-hooks/workflow => }/utils/assert-workflow-statuses-not-set.ts (84%) rename packages/twenty-server/src/modules/workflow/common/{query-hooks/workflow-version => }/utils/assert-workflow-version-is-draft.util.ts (77%) rename packages/twenty-server/src/modules/workflow/common/{services => workspace-services}/workflow-common.workspace-service.ts (90%) rename packages/twenty-server/src/modules/workflow/common/{query-hooks/workflow-version/services => workspace-services}/workflow-version-validation.workspace-service.ts (92%) rename packages/twenty-server/src/modules/workflow/workflow-executor/{ => exceptions}/workflow-executor.exception.ts (100%) rename packages/twenty-server/src/modules/workflow/{workflow-step-executor => workflow-executor/exceptions}/workflow-step-executor.exception.ts (100%) create mode 100644 packages/twenty-server/src/modules/workflow/workflow-executor/factories/workflow-action.factory.ts create mode 100644 packages/twenty-server/src/modules/workflow/workflow-executor/interfaces/workflow-action.interface.ts create mode 100644 packages/twenty-server/src/modules/workflow/workflow-executor/types/workflow-action-result.type.ts create mode 100644 packages/twenty-server/src/modules/workflow/workflow-executor/types/workflow-action.type.ts create mode 100644 packages/twenty-server/src/modules/workflow/workflow-executor/types/workflow-step-settings.type.ts rename packages/twenty-server/src/modules/workflow/workflow-executor/{ => workspace-services}/workflow-executor.workspace-service.ts (71%) rename packages/twenty-server/src/modules/workflow/workflow-runner/{workflow-run => exceptions}/workflow-run.exception.ts (100%) delete mode 100644 packages/twenty-server/src/modules/workflow/workflow-runner/workflow-run/workflow-run.module.ts rename packages/twenty-server/src/modules/workflow/workflow-runner/{workflow-run => workspace-services}/workflow-run.workspace-service.ts (95%) rename packages/twenty-server/src/modules/workflow/workflow-runner/{ => workspace-services}/workflow-runner.workspace-service.ts (82%) rename packages/twenty-server/src/modules/workflow/workflow-status/{ => constants}/workflow-status.constants.ts (100%) rename packages/twenty-server/src/modules/workflow/workflow-status/{workflow-status.enums.ts => enums/workflow-status.enum.ts} (100%) delete mode 100644 packages/twenty-server/src/modules/workflow/workflow-step-executor/workflow-step-executor.factory.ts delete mode 100644 packages/twenty-server/src/modules/workflow/workflow-step-executor/workflow-step-executor.interface.ts delete mode 100644 packages/twenty-server/src/modules/workflow/workflow-step-executor/workflow-step-executor.module.ts rename packages/twenty-server/src/modules/workflow/workflow-trigger/{ => exceptions}/workflow-trigger.exception.ts (100%) rename packages/twenty-server/src/modules/workflow/{common => workflow-trigger}/types/workflow-trigger.type.ts (100%) rename packages/twenty-server/src/modules/workflow/workflow-trigger/{ => workspace-services}/workflow-trigger.workspace-service.ts (97%) diff --git a/packages/twenty-emails/src/emails/workflow-action.email.tsx b/packages/twenty-emails/src/emails/workflow-action.email.tsx new file mode 100644 index 000000000..2eaa3a451 --- /dev/null +++ b/packages/twenty-emails/src/emails/workflow-action.email.tsx @@ -0,0 +1,29 @@ +import { BaseEmail } from 'src/components/BaseEmail'; +import { Title } from 'src/components/Title'; +import { CallToAction } from 'src/components/CallToAction'; + +type WorkflowActionEmailProps = { + dangerousHTML?: string; + title?: string; + callToAction?: { + value: string; + href: string; + }; +}; +export const WorkflowActionEmail = ({ + dangerousHTML, + title, + callToAction, +}: WorkflowActionEmailProps) => { + return ( + + {title && } + {dangerousHTML && ( + <div dangerouslySetInnerHTML={{ __html: dangerousHTML }} /> + )} + {callToAction && ( + <CallToAction value={callToAction.value} href={callToAction.href} /> + )} + </BaseEmail> + ); +}; diff --git a/packages/twenty-emails/src/index.ts b/packages/twenty-emails/src/index.ts index ddecb05c8..9fca13d73 100644 --- a/packages/twenty-emails/src/index.ts +++ b/packages/twenty-emails/src/index.ts @@ -3,3 +3,4 @@ export * from './emails/delete-inactive-workspaces.email'; export * from './emails/password-reset-link.email'; export * from './emails/password-update-notify.email'; export * from './emails/send-invite-link.email'; +export * from './emails/workflow-action.email'; diff --git a/packages/twenty-front/src/modules/workflow/constants/Actions.ts b/packages/twenty-front/src/modules/workflow/constants/Actions.ts index 9c094c2d6..53c988420 100644 --- a/packages/twenty-front/src/modules/workflow/constants/Actions.ts +++ b/packages/twenty-front/src/modules/workflow/constants/Actions.ts @@ -8,7 +8,7 @@ export const ACTIONS: Array<{ }> = [ { label: 'Serverless Function', - type: 'CODE_ACTION', + type: 'CODE', icon: IconSettingsAutomation, }, ]; diff --git a/packages/twenty-front/src/modules/workflow/types/Workflow.ts b/packages/twenty-front/src/modules/workflow/types/Workflow.ts index c86313588..08f240473 100644 --- a/packages/twenty-front/src/modules/workflow/types/Workflow.ts +++ b/packages/twenty-front/src/modules/workflow/types/Workflow.ts @@ -13,7 +13,7 @@ export type WorkflowCodeSettingsType = WorkflowBaseSettingsType & { serverlessFunctionId: string; }; -export type WorkflowActionType = 'CODE_ACTION'; +export type WorkflowActionType = 'CODE'; type CommonWorkflowAction = { id: string; @@ -22,7 +22,7 @@ type CommonWorkflowAction = { }; type WorkflowCodeAction = CommonWorkflowAction & { - type: 'CODE_ACTION'; + type: 'CODE'; settings: WorkflowCodeSettingsType; }; diff --git a/packages/twenty-front/src/modules/workflow/utils/__tests__/addCreateStepNodes.test.ts b/packages/twenty-front/src/modules/workflow/utils/__tests__/addCreateStepNodes.test.ts index e3326c795..d0f46dde3 100644 --- a/packages/twenty-front/src/modules/workflow/utils/__tests__/addCreateStepNodes.test.ts +++ b/packages/twenty-front/src/modules/workflow/utils/__tests__/addCreateStepNodes.test.ts @@ -14,7 +14,7 @@ describe('addCreateStepNodes', () => { { id: 'step1', name: 'Step 1', - type: 'CODE_ACTION', + type: 'CODE', valid: true, settings: { errorHandlingOptions: { @@ -27,7 +27,7 @@ describe('addCreateStepNodes', () => { { id: 'step2', name: 'Step 2', - type: 'CODE_ACTION', + type: 'CODE', valid: true, settings: { errorHandlingOptions: { diff --git a/packages/twenty-front/src/modules/workflow/utils/__tests__/generateWorkflowDiagram.test.ts b/packages/twenty-front/src/modules/workflow/utils/__tests__/generateWorkflowDiagram.test.ts index 675470915..ee4643fcb 100644 --- a/packages/twenty-front/src/modules/workflow/utils/__tests__/generateWorkflowDiagram.test.ts +++ b/packages/twenty-front/src/modules/workflow/utils/__tests__/generateWorkflowDiagram.test.ts @@ -35,7 +35,7 @@ describe('generateWorkflowDiagram', () => { { id: 'step1', name: 'Step 1', - type: 'CODE_ACTION', + type: 'CODE', valid: true, settings: { errorHandlingOptions: { @@ -48,7 +48,7 @@ describe('generateWorkflowDiagram', () => { { id: 'step2', name: 'Step 2', - type: 'CODE_ACTION', + type: 'CODE', valid: true, settings: { errorHandlingOptions: { @@ -88,7 +88,7 @@ describe('generateWorkflowDiagram', () => { { id: 'step1', name: 'Step 1', - type: 'CODE_ACTION', + type: 'CODE', valid: true, settings: { errorHandlingOptions: { @@ -101,7 +101,7 @@ describe('generateWorkflowDiagram', () => { { id: 'step2', name: 'Step 2', - type: 'CODE_ACTION', + type: 'CODE', valid: true, settings: { errorHandlingOptions: { diff --git a/packages/twenty-front/src/modules/workflow/utils/__tests__/getWorkflowVersionDiagram.test.ts b/packages/twenty-front/src/modules/workflow/utils/__tests__/getWorkflowVersionDiagram.test.ts index e7fb4ca55..c730cba29 100644 --- a/packages/twenty-front/src/modules/workflow/utils/__tests__/getWorkflowVersionDiagram.test.ts +++ b/packages/twenty-front/src/modules/workflow/utils/__tests__/getWorkflowVersionDiagram.test.ts @@ -60,7 +60,7 @@ describe('getWorkflowVersionDiagram', () => { }, serverlessFunctionId: 'a5434be2-c10b-465c-acec-46492782a997', }, - type: 'CODE_ACTION', + type: 'CODE', valid: true, }, ], diff --git a/packages/twenty-front/src/modules/workflow/utils/__tests__/insertStep.test.ts b/packages/twenty-front/src/modules/workflow/utils/__tests__/insertStep.test.ts index c9e7b3fb0..ba93aa6c3 100644 --- a/packages/twenty-front/src/modules/workflow/utils/__tests__/insertStep.test.ts +++ b/packages/twenty-front/src/modules/workflow/utils/__tests__/insertStep.test.ts @@ -27,7 +27,7 @@ describe('insertStep', () => { }, serverlessFunctionId: 'a5434be2-c10b-465c-acec-46492782a997', }, - type: 'CODE_ACTION', + type: 'CODE', valid: true, }; @@ -65,7 +65,7 @@ describe('insertStep', () => { }, serverlessFunctionId: 'a5434be2-c10b-465c-acec-46492782a997', }, - type: 'CODE_ACTION', + type: 'CODE', valid: true, }; @@ -97,7 +97,7 @@ describe('insertStep', () => { }, serverlessFunctionId: 'a5434be2-c10b-465c-acec-46492782a997', }, - type: 'CODE_ACTION', + type: 'CODE', valid: true, }, { @@ -110,7 +110,7 @@ describe('insertStep', () => { }, serverlessFunctionId: 'a5434be2-c10b-465c-acec-46492782a997', }, - type: 'CODE_ACTION', + type: 'CODE', valid: true, }, ], @@ -131,7 +131,7 @@ describe('insertStep', () => { }, serverlessFunctionId: 'a5434be2-c10b-465c-acec-46492782a997', }, - type: 'CODE_ACTION', + type: 'CODE', valid: true, }; @@ -167,7 +167,7 @@ describe('insertStep', () => { }, serverlessFunctionId: 'a5434be2-c10b-465c-acec-46492782a997', }, - type: 'CODE_ACTION', + type: 'CODE', valid: true, }, { @@ -180,7 +180,7 @@ describe('insertStep', () => { }, serverlessFunctionId: 'a5434be2-c10b-465c-acec-46492782a997', }, - type: 'CODE_ACTION', + type: 'CODE', valid: true, }, ], @@ -201,7 +201,7 @@ describe('insertStep', () => { }, serverlessFunctionId: 'a5434be2-c10b-465c-acec-46492782a997', }, - type: 'CODE_ACTION', + type: 'CODE', valid: true, }; diff --git a/packages/twenty-front/src/modules/workflow/utils/__tests__/replaceStep.test.ts b/packages/twenty-front/src/modules/workflow/utils/__tests__/replaceStep.test.ts index b40c8e8d1..93286c590 100644 --- a/packages/twenty-front/src/modules/workflow/utils/__tests__/replaceStep.test.ts +++ b/packages/twenty-front/src/modules/workflow/utils/__tests__/replaceStep.test.ts @@ -13,7 +13,7 @@ describe('replaceStep', () => { }, serverlessFunctionId: 'first', }, - type: 'CODE_ACTION', + type: 'CODE', valid: true, } satisfies WorkflowStep; const workflowVersionInitial = { @@ -59,7 +59,7 @@ describe('replaceStep', () => { }, serverlessFunctionId: 'a5434be2-c10b-465c-acec-46492782a997', }, - type: 'CODE_ACTION', + type: 'CODE', valid: true, }; const workflowVersionInitial = { @@ -79,7 +79,7 @@ describe('replaceStep', () => { }, serverlessFunctionId: 'a5434be2-c10b-465c-acec-46492782a997', }, - type: 'CODE_ACTION', + type: 'CODE', valid: true, }, stepToBeReplaced, @@ -93,7 +93,7 @@ describe('replaceStep', () => { }, serverlessFunctionId: 'a5434be2-c10b-465c-acec-46492782a997', }, - type: 'CODE_ACTION', + type: 'CODE', valid: true, }, ], diff --git a/packages/twenty-front/src/modules/workflow/utils/generateWorkflowDiagram.ts b/packages/twenty-front/src/modules/workflow/utils/generateWorkflowDiagram.ts index 80559ff94..ccc7247fe 100644 --- a/packages/twenty-front/src/modules/workflow/utils/generateWorkflowDiagram.ts +++ b/packages/twenty-front/src/modules/workflow/utils/generateWorkflowDiagram.ts @@ -50,13 +50,6 @@ export const generateWorkflowDiagram = ({ }, }); - // Recursively generate flow for the next action if it exists - if (step.type !== 'CODE_ACTION') { - // processNode(action.nextAction, nodeId, xPos + 150, yPos + 100); - - throw new Error('Other types as code actions are not supported yet.'); - } - return nodeId; }; diff --git a/packages/twenty-front/src/modules/workflow/utils/getStepDefaultDefinition.ts b/packages/twenty-front/src/modules/workflow/utils/getStepDefaultDefinition.ts index 4c831c904..9cb8b27e8 100644 --- a/packages/twenty-front/src/modules/workflow/utils/getStepDefaultDefinition.ts +++ b/packages/twenty-front/src/modules/workflow/utils/getStepDefaultDefinition.ts @@ -7,11 +7,11 @@ export const getStepDefaultDefinition = ( const newStepId = v4(); switch (type) { - case 'CODE_ACTION': { + case 'CODE': { return { id: newStepId, name: 'Code', - type: 'CODE_ACTION', + type: 'CODE', valid: false, settings: { serverlessFunctionId: '', diff --git a/packages/twenty-server/package.json b/packages/twenty-server/package.json index 3d42d5e78..958f9139b 100644 --- a/packages/twenty-server/package.json +++ b/packages/twenty-server/package.json @@ -29,6 +29,7 @@ "cache-manager-redis-yet": "^4.1.2", "class-validator": "patch:class-validator@0.14.0#./patches/class-validator+0.14.0.patch", "graphql-middleware": "^6.1.35", + "handlebars": "^4.7.8", "jsdom": "~22.1.0", "jwt-decode": "^4.0.0", "langchain": "^0.2.6", diff --git a/packages/twenty-server/src/app.module.ts b/packages/twenty-server/src/app.module.ts index 4641f3a04..35af3a3e2 100644 --- a/packages/twenty-server/src/app.module.ts +++ b/packages/twenty-server/src/app.module.ts @@ -18,15 +18,14 @@ import { GraphQLConfigModule } from 'src/engine/api/graphql/graphql-config/graph import { GraphQLConfigService } from 'src/engine/api/graphql/graphql-config/graphql-config.service'; import { MetadataGraphQLApiModule } from 'src/engine/api/graphql/metadata-graphql-api.module'; import { RestApiModule } from 'src/engine/api/rest/rest-api.module'; -import { MessageQueueDriverType } from 'src/engine/integrations/message-queue/interfaces'; -import { MessageQueueModule } from 'src/engine/integrations/message-queue/message-queue.module'; +import { MessageQueueDriverType } from 'src/engine/core-modules/message-queue/interfaces'; +import { MessageQueueModule } from 'src/engine/core-modules/message-queue/message-queue.module'; import { WorkspaceMetadataVersionModule } from 'src/engine/metadata-modules/workspace-metadata-version/workspace-metadata-version.module'; import { GraphQLHydrateRequestFromTokenMiddleware } from 'src/engine/middlewares/graphql-hydrate-request-from-token.middleware'; import { TwentyORMModule } from 'src/engine/twenty-orm/twenty-orm.module'; import { ModulesModule } from 'src/modules/modules.module'; import { CoreEngineModule } from './engine/core-modules/core-engine.module'; -import { IntegrationsModule } from './engine/integrations/integrations.module'; @Module({ imports: [ @@ -47,8 +46,6 @@ import { IntegrationsModule } from './engine/integrations/integrations.module'; useClass: GraphQLConfigService, }), TwentyORMModule, - // Integrations module, contains all the integrations with other services - IntegrationsModule, // Core engine module, contains all the core modules CoreEngineModule, // Modules module, contains all business logic modules diff --git a/packages/twenty-server/src/command/command.ts b/packages/twenty-server/src/command/command.ts index 7fbd41034..5e45fde2a 100644 --- a/packages/twenty-server/src/command/command.ts +++ b/packages/twenty-server/src/command/command.ts @@ -1,7 +1,7 @@ import { CommandFactory } from 'nest-commander'; -import { ExceptionHandlerService } from 'src/engine/integrations/exception-handler/exception-handler.service'; -import { LoggerService } from 'src/engine/integrations/logger/logger.service'; +import { ExceptionHandlerService } from 'src/engine/core-modules/exception-handler/exception-handler.service'; +import { LoggerService } from 'src/engine/core-modules/logger/logger.service'; import { shouldFilterException } from 'src/engine/utils/global-exception-handler.util'; import { CommandModule } from './command.module'; 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 bdf120095..bc2c1c395 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 @@ -2,9 +2,9 @@ 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 { InjectMessageQueue } from 'src/engine/integrations/message-queue/decorators/message-queue.decorator'; -import { MessageQueue } from 'src/engine/integrations/message-queue/message-queue.constants'; -import { MessageQueueService } from 'src/engine/integrations/message-queue/services/message-queue.service'; +import { InjectMessageQueue } from 'src/engine/core-modules/message-queue/decorators/message-queue.decorator'; +import { MessageQueue } from 'src/engine/core-modules/message-queue/message-queue.constants'; +import { MessageQueueService } from 'src/engine/core-modules/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 99dd1558b..a5fbf20dd 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 @@ -2,9 +2,9 @@ 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 { InjectMessageQueue } from 'src/engine/integrations/message-queue/decorators/message-queue.decorator'; -import { MessageQueue } from 'src/engine/integrations/message-queue/message-queue.constants'; -import { MessageQueueService } from 'src/engine/integrations/message-queue/services/message-queue.service'; +import { InjectMessageQueue } from 'src/engine/core-modules/message-queue/decorators/message-queue.decorator'; +import { MessageQueue } from 'src/engine/core-modules/message-queue/message-queue.constants'; +import { MessageQueueService } from 'src/engine/core-modules/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 10d644c03..63a808235 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/engine/integrations/environment/environment.module'; +import { EnvironmentModule } from 'src/engine/core-modules/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 14655209c..af8958518 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,7 +1,7 @@ import { DataSeedDemoWorkspaceService } from 'src/database/commands/data-seed-demo-workspace/services/data-seed-demo-workspace.service'; -import { Processor } from 'src/engine/integrations/message-queue/decorators/processor.decorator'; -import { MessageQueue } from 'src/engine/integrations/message-queue/message-queue.constants'; -import { Process } from 'src/engine/integrations/message-queue/decorators/process.decorator'; +import { Processor } from 'src/engine/core-modules/message-queue/decorators/processor.decorator'; +import { MessageQueue } from 'src/engine/core-modules/message-queue/message-queue.constants'; +import { Process } from 'src/engine/core-modules/message-queue/decorators/process.decorator'; @Processor(MessageQueue.cronQueue) export class DataSeedDemoWorkspaceJob { 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 9be19725a..316caecac 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 @@ -1,6 +1,6 @@ import { Injectable } from '@nestjs/common'; -import { EnvironmentService } from 'src/engine/integrations/environment/environment.service'; +import { EnvironmentService } from 'src/engine/core-modules/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 84277637f..4a6fda198 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 @@ -32,9 +32,9 @@ import { rawDataSource } from 'src/database/typeorm/raw/raw.datasource'; import { TypeORMService } from 'src/database/typeorm/typeorm.service'; import { FeatureFlagKey } from 'src/engine/core-modules/feature-flag/enums/feature-flag-key.enum'; import { FeatureFlagEntity } from 'src/engine/core-modules/feature-flag/feature-flag.entity'; -import { CacheStorageService } from 'src/engine/integrations/cache-storage/cache-storage.service'; -import { InjectCacheStorage } from 'src/engine/integrations/cache-storage/decorators/cache-storage.decorator'; -import { CacheStorageNamespace } from 'src/engine/integrations/cache-storage/types/cache-storage-namespace.enum'; +import { CacheStorageService } from 'src/engine/core-modules/cache-storage/cache-storage.service'; +import { InjectCacheStorage } from 'src/engine/core-modules/cache-storage/decorators/cache-storage.decorator'; +import { CacheStorageNamespace } from 'src/engine/core-modules/cache-storage/types/cache-storage-namespace.enum'; import { DataSourceService } from 'src/engine/metadata-modules/data-source/data-source.service'; import { FieldMetadataService } from 'src/engine/metadata-modules/field-metadata/field-metadata.service'; import { ObjectMetadataEntity } from 'src/engine/metadata-modules/object-metadata/object-metadata.entity'; diff --git a/packages/twenty-server/src/database/commands/upgrade-version/0-24/0-24-upgrade-version.module.ts b/packages/twenty-server/src/database/commands/upgrade-version/0-24/0-24-upgrade-version.module.ts index 689938ba3..556438046 100644 --- a/packages/twenty-server/src/database/commands/upgrade-version/0-24/0-24-upgrade-version.module.ts +++ b/packages/twenty-server/src/database/commands/upgrade-version/0-24/0-24-upgrade-version.module.ts @@ -8,7 +8,7 @@ import { TypeORMModule } from 'src/database/typeorm/typeorm.module'; import { KeyValuePair } from 'src/engine/core-modules/key-value-pair/key-value-pair.entity'; import { OnboardingModule } from 'src/engine/core-modules/onboarding/onboarding.module'; import { Workspace } from 'src/engine/core-modules/workspace/workspace.entity'; -import { FileStorageModule } from 'src/engine/integrations/file-storage/file-storage.module'; +import { FileStorageModule } from 'src/engine/core-modules/file-storage/file-storage.module'; import { DataSourceModule } from 'src/engine/metadata-modules/data-source/data-source.module'; import { FieldMetadataEntity } from 'src/engine/metadata-modules/field-metadata/field-metadata.entity'; import { FieldMetadataModule } from 'src/engine/metadata-modules/field-metadata/field-metadata.module'; diff --git a/packages/twenty-server/src/database/typeorm/typeorm.module.ts b/packages/twenty-server/src/database/typeorm/typeorm.module.ts index b24fe05ba..15733f0c6 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/engine/integrations/environment/environment.module'; +import { EnvironmentModule } from 'src/engine/core-modules/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 ca1f9c44c..a56f3580d 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/engine/integrations/environment/environment.service'; +import { EnvironmentService } from 'src/engine/core-modules/environment/environment.service'; import { DataSourceEntity } from 'src/engine/metadata-modules/data-source/data-source.entity'; import { User } from 'src/engine/core-modules/user/user.entity'; import { Workspace } from 'src/engine/core-modules/workspace/workspace.entity'; diff --git a/packages/twenty-server/src/engine/api/graphql/graphql-config/graphql-config.service.ts b/packages/twenty-server/src/engine/api/graphql/graphql-config/graphql-config.service.ts index 8c0521173..39dcda62f 100644 --- a/packages/twenty-server/src/engine/api/graphql/graphql-config/graphql-config.service.ts +++ b/packages/twenty-server/src/engine/api/graphql/graphql-config/graphql-config.service.ts @@ -20,9 +20,9 @@ import { CoreEngineModule } from 'src/engine/core-modules/core-engine.module'; import { useGraphQLErrorHandlerHook } from 'src/engine/core-modules/graphql/hooks/use-graphql-error-handler.hook'; import { User } from 'src/engine/core-modules/user/user.entity'; import { Workspace } from 'src/engine/core-modules/workspace/workspace.entity'; -import { EnvironmentService } from 'src/engine/integrations/environment/environment.service'; -import { ExceptionHandlerService } from 'src/engine/integrations/exception-handler/exception-handler.service'; -import { useSentryTracing } from 'src/engine/integrations/exception-handler/hooks/use-sentry-tracing'; +import { EnvironmentService } from 'src/engine/core-modules/environment/environment.service'; +import { ExceptionHandlerService } from 'src/engine/core-modules/exception-handler/exception-handler.service'; +import { useSentryTracing } from 'src/engine/core-modules/exception-handler/hooks/use-sentry-tracing'; import { handleExceptionAndConvertToGraphQLError } from 'src/engine/utils/global-exception-handler.util'; import { renderApolloPlayground } from 'src/engine/utils/render-apollo-playground.util'; diff --git a/packages/twenty-server/src/engine/api/graphql/metadata-graphql-api.module.ts b/packages/twenty-server/src/engine/api/graphql/metadata-graphql-api.module.ts index 3d0627ce7..f7ac4328f 100644 --- a/packages/twenty-server/src/engine/api/graphql/metadata-graphql-api.module.ts +++ b/packages/twenty-server/src/engine/api/graphql/metadata-graphql-api.module.ts @@ -7,9 +7,9 @@ import { GraphQLConfigModule } from 'src/engine/api/graphql/graphql-config/graph import { metadataModuleFactory } from 'src/engine/api/graphql/metadata.module-factory'; import { DataloaderModule } from 'src/engine/dataloaders/dataloader.module'; import { DataloaderService } from 'src/engine/dataloaders/dataloader.service'; -import { CacheStorageNamespace } from 'src/engine/integrations/cache-storage/types/cache-storage-namespace.enum'; -import { EnvironmentService } from 'src/engine/integrations/environment/environment.service'; -import { ExceptionHandlerService } from 'src/engine/integrations/exception-handler/exception-handler.service'; +import { CacheStorageNamespace } from 'src/engine/core-modules/cache-storage/types/cache-storage-namespace.enum'; +import { EnvironmentService } from 'src/engine/core-modules/environment/environment.service'; +import { ExceptionHandlerService } from 'src/engine/core-modules/exception-handler/exception-handler.service'; import { MetadataEngineModule } from 'src/engine/metadata-modules/metadata-engine.module'; import { WorkspaceMigrationModule } from 'src/engine/metadata-modules/workspace-migration/workspace-migration.module'; import { WorkspaceMigrationRunnerModule } from 'src/engine/workspace-manager/workspace-migration-runner/workspace-migration-runner.module'; diff --git a/packages/twenty-server/src/engine/api/graphql/metadata.module-factory.ts b/packages/twenty-server/src/engine/api/graphql/metadata.module-factory.ts index 5297b747b..52b75eab3 100644 --- a/packages/twenty-server/src/engine/api/graphql/metadata.module-factory.ts +++ b/packages/twenty-server/src/engine/api/graphql/metadata.module-factory.ts @@ -6,9 +6,9 @@ import { useThrottler } from 'src/engine/api/graphql/graphql-config/hooks/use-th import { MetadataGraphQLApiModule } from 'src/engine/api/graphql/metadata-graphql-api.module'; import { useGraphQLErrorHandlerHook } from 'src/engine/core-modules/graphql/hooks/use-graphql-error-handler.hook'; import { DataloaderService } from 'src/engine/dataloaders/dataloader.service'; -import { CacheStorageService } from 'src/engine/integrations/cache-storage/cache-storage.service'; -import { EnvironmentService } from 'src/engine/integrations/environment/environment.service'; -import { ExceptionHandlerService } from 'src/engine/integrations/exception-handler/exception-handler.service'; +import { CacheStorageService } from 'src/engine/core-modules/cache-storage/cache-storage.service'; +import { EnvironmentService } from 'src/engine/core-modules/environment/environment.service'; +import { ExceptionHandlerService } from 'src/engine/core-modules/exception-handler/exception-handler.service'; import { renderApolloPlayground } from 'src/engine/utils/render-apollo-playground.util'; export const metadataModuleFactory = async ( diff --git a/packages/twenty-server/src/engine/api/graphql/workspace-query-runner/commands/0-20-record-position-backfill.command.ts b/packages/twenty-server/src/engine/api/graphql/workspace-query-runner/commands/0-20-record-position-backfill.command.ts index ddc2f06a4..a5ddfc065 100644 --- a/packages/twenty-server/src/engine/api/graphql/workspace-query-runner/commands/0-20-record-position-backfill.command.ts +++ b/packages/twenty-server/src/engine/api/graphql/workspace-query-runner/commands/0-20-record-position-backfill.command.ts @@ -4,9 +4,9 @@ import { RecordPositionBackfillJob, RecordPositionBackfillJobData, } from 'src/engine/api/graphql/workspace-query-runner/jobs/record-position-backfill.job'; -import { InjectMessageQueue } from 'src/engine/integrations/message-queue/decorators/message-queue.decorator'; -import { MessageQueue } from 'src/engine/integrations/message-queue/message-queue.constants'; -import { MessageQueueService } from 'src/engine/integrations/message-queue/services/message-queue.service'; +import { InjectMessageQueue } from 'src/engine/core-modules/message-queue/decorators/message-queue.decorator'; +import { MessageQueue } from 'src/engine/core-modules/message-queue/message-queue.constants'; +import { MessageQueueService } from 'src/engine/core-modules/message-queue/services/message-queue.service'; export type RecordPositionBackfillCommandOptions = { workspaceId: string; diff --git a/packages/twenty-server/src/engine/api/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 index 74e955093..d0bbc6872 100644 --- a/packages/twenty-server/src/engine/api/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 @@ -8,11 +8,11 @@ import { CallWebhookJob, CallWebhookJobData, } from 'src/engine/api/graphql/workspace-query-runner/jobs/call-webhook.job'; -import { InjectMessageQueue } from 'src/engine/integrations/message-queue/decorators/message-queue.decorator'; -import { Process } from 'src/engine/integrations/message-queue/decorators/process.decorator'; -import { Processor } from 'src/engine/integrations/message-queue/decorators/processor.decorator'; -import { MessageQueue } from 'src/engine/integrations/message-queue/message-queue.constants'; -import { MessageQueueService } from 'src/engine/integrations/message-queue/services/message-queue.service'; +import { InjectMessageQueue } from 'src/engine/core-modules/message-queue/decorators/message-queue.decorator'; +import { Process } from 'src/engine/core-modules/message-queue/decorators/process.decorator'; +import { Processor } from 'src/engine/core-modules/message-queue/decorators/processor.decorator'; +import { MessageQueue } from 'src/engine/core-modules/message-queue/message-queue.constants'; +import { MessageQueueService } from 'src/engine/core-modules/message-queue/services/message-queue.service'; import { TwentyORMGlobalManager } from 'src/engine/twenty-orm/twenty-orm-global.manager'; import { WebhookWorkspaceEntity } from 'src/modules/webhook/standard-objects/webhook.workspace-entity'; diff --git a/packages/twenty-server/src/engine/api/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 index 6e0d7af52..bbaff49a4 100644 --- a/packages/twenty-server/src/engine/api/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,9 +1,9 @@ import { HttpService } from '@nestjs/axios'; import { Logger } from '@nestjs/common'; -import { Process } from 'src/engine/integrations/message-queue/decorators/process.decorator'; -import { Processor } from 'src/engine/integrations/message-queue/decorators/processor.decorator'; -import { MessageQueue } from 'src/engine/integrations/message-queue/message-queue.constants'; +import { Process } from 'src/engine/core-modules/message-queue/decorators/process.decorator'; +import { Processor } from 'src/engine/core-modules/message-queue/decorators/processor.decorator'; +import { MessageQueue } from 'src/engine/core-modules/message-queue/message-queue.constants'; export type CallWebhookJobData = { targetUrl: string; diff --git a/packages/twenty-server/src/engine/api/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 index 8619f1182..67cf1dd55 100644 --- a/packages/twenty-server/src/engine/api/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,7 +1,7 @@ import { RecordPositionBackfillService } from 'src/engine/api/graphql/workspace-query-runner/services/record-position-backfill-service'; -import { MessageQueue } from 'src/engine/integrations/message-queue/message-queue.constants'; -import { Processor } from 'src/engine/integrations/message-queue/decorators/processor.decorator'; -import { Process } from 'src/engine/integrations/message-queue/decorators/process.decorator'; +import { MessageQueue } from 'src/engine/core-modules/message-queue/message-queue.constants'; +import { Processor } from 'src/engine/core-modules/message-queue/decorators/processor.decorator'; +import { Process } from 'src/engine/core-modules/message-queue/decorators/process.decorator'; export type RecordPositionBackfillJobData = { workspaceId: string; diff --git a/packages/twenty-server/src/engine/api/graphql/workspace-query-runner/listeners/entity-events-to-db.listener.ts b/packages/twenty-server/src/engine/api/graphql/workspace-query-runner/listeners/entity-events-to-db.listener.ts index 48e091720..eb9ddbf06 100644 --- a/packages/twenty-server/src/engine/api/graphql/workspace-query-runner/listeners/entity-events-to-db.listener.ts +++ b/packages/twenty-server/src/engine/api/graphql/workspace-query-runner/listeners/entity-events-to-db.listener.ts @@ -1,13 +1,13 @@ import { Injectable } from '@nestjs/common'; import { OnEvent } from '@nestjs/event-emitter'; -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 { ObjectRecordBaseEvent } from 'src/engine/integrations/event-emitter/types/object-record.base.event'; -import { objectRecordChangedValues } from 'src/engine/integrations/event-emitter/utils/object-record-changed-values'; -import { InjectMessageQueue } from 'src/engine/integrations/message-queue/decorators/message-queue.decorator'; -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/core-modules/event-emitter/types/object-record-create.event'; +import { ObjectRecordUpdateEvent } from 'src/engine/core-modules/event-emitter/types/object-record-update.event'; +import { ObjectRecordBaseEvent } from 'src/engine/core-modules/event-emitter/types/object-record.base.event'; +import { objectRecordChangedValues } from 'src/engine/core-modules/event-emitter/utils/object-record-changed-values'; +import { InjectMessageQueue } from 'src/engine/core-modules/message-queue/decorators/message-queue.decorator'; +import { MessageQueue } from 'src/engine/core-modules/message-queue/message-queue.constants'; +import { MessageQueueService } from 'src/engine/core-modules/message-queue/services/message-queue.service'; import { WorkspaceEventBatch } from 'src/engine/workspace-event-emitter/workspace-event.type'; import { CreateAuditLogFromInternalEvent } from 'src/modules/timeline/jobs/create-audit-log-from-internal-event'; import { UpsertTimelineActivityFromInternalEvent } from 'src/modules/timeline/jobs/upsert-timeline-activity-from-internal-event.job'; diff --git a/packages/twenty-server/src/engine/api/graphql/workspace-query-runner/listeners/telemetry.listener.ts b/packages/twenty-server/src/engine/api/graphql/workspace-query-runner/listeners/telemetry.listener.ts index f9609794d..2afa537a6 100644 --- a/packages/twenty-server/src/engine/api/graphql/workspace-query-runner/listeners/telemetry.listener.ts +++ b/packages/twenty-server/src/engine/api/graphql/workspace-query-runner/listeners/telemetry.listener.ts @@ -2,8 +2,8 @@ import { Injectable } from '@nestjs/common'; import { OnEvent } from '@nestjs/event-emitter'; import { AnalyticsService } from 'src/engine/core-modules/analytics/analytics.service'; -import { EnvironmentService } from 'src/engine/integrations/environment/environment.service'; -import { ObjectRecordCreateEvent } from 'src/engine/integrations/event-emitter/types/object-record-create.event'; +import { EnvironmentService } from 'src/engine/core-modules/environment/environment.service'; +import { ObjectRecordCreateEvent } from 'src/engine/core-modules/event-emitter/types/object-record-create.event'; import { WorkspaceEventBatch } from 'src/engine/workspace-event-emitter/workspace-event.type'; @Injectable() diff --git a/packages/twenty-server/src/engine/api/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 index 679f636eb..59ce5ddc8 100644 --- a/packages/twenty-server/src/engine/api/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 @@ -1,7 +1,7 @@ import { Injectable, Logger } from '@nestjs/common'; import isEmpty from 'lodash.isempty'; -import { DataSource } from 'typeorm'; +import { DataSource, In } from 'typeorm'; import { Record as IRecord, @@ -45,13 +45,13 @@ import { import { DuplicateService } from 'src/engine/core-modules/duplicate/duplicate.service'; import { FeatureFlagKey } from 'src/engine/core-modules/feature-flag/enums/feature-flag-key.enum'; import { FeatureFlagService } from 'src/engine/core-modules/feature-flag/services/feature-flag.service'; -import { EnvironmentService } from 'src/engine/integrations/environment/environment.service'; -import { ObjectRecordCreateEvent } from 'src/engine/integrations/event-emitter/types/object-record-create.event'; -import { ObjectRecordDeleteEvent } from 'src/engine/integrations/event-emitter/types/object-record-delete.event'; -import { ObjectRecordUpdateEvent } from 'src/engine/integrations/event-emitter/types/object-record-update.event'; -import { InjectMessageQueue } from 'src/engine/integrations/message-queue/decorators/message-queue.decorator'; -import { MessageQueue } from 'src/engine/integrations/message-queue/message-queue.constants'; -import { MessageQueueService } from 'src/engine/integrations/message-queue/services/message-queue.service'; +import { EnvironmentService } from 'src/engine/core-modules/environment/environment.service'; +import { ObjectRecordCreateEvent } from 'src/engine/core-modules/event-emitter/types/object-record-create.event'; +import { ObjectRecordDeleteEvent } from 'src/engine/core-modules/event-emitter/types/object-record-delete.event'; +import { ObjectRecordUpdateEvent } from 'src/engine/core-modules/event-emitter/types/object-record-update.event'; +import { InjectMessageQueue } from 'src/engine/core-modules/message-queue/decorators/message-queue.decorator'; +import { MessageQueue } from 'src/engine/core-modules/message-queue/message-queue.constants'; +import { MessageQueueService } from 'src/engine/core-modules/message-queue/services/message-queue.service'; import { assertMutationNotOnRemoteObject } from 'src/engine/metadata-modules/object-metadata/utils/assert-mutation-not-on-remote-object.util'; import { TwentyORMGlobalManager } from 'src/engine/twenty-orm/twenty-orm-global.manager'; import { computeObjectTargetTable } from 'src/engine/utils/compute-object-target-table.util'; @@ -505,7 +505,7 @@ export class WorkspaceQueryRunnerService { args.filter?.id?.in?.forEach((id) => assertIsValidUuid(id)); const existingRecords = await repository.find({ - where: { id: { in: args.filter?.id?.in } }, + where: { id: In(args.filter?.id?.in) }, }); const mappedRecords = new Map( existingRecords.map((record) => [record.id, record]), @@ -625,6 +625,19 @@ export class WorkspaceQueryRunnerService { }); } + const repository = + await this.twentyORMGlobalManager.getRepositoryForWorkspace( + authContext.workspace.id, + objectMetadataItem.nameSingular, + ); + + const existingRecords = await repository.find({ + where: { id: In(args.filter?.id?.in) }, + }); + const mappedRecords = new Map( + existingRecords.map((record) => [record.id, record]), + ); + const result = await this.execute(query, authContext.workspace.id); const parsedResults = ( @@ -644,17 +657,21 @@ export class WorkspaceQueryRunnerService { this.workspaceEventEmitter.emit( `${objectMetadataItem.nameSingular}.deleted`, - parsedResults.map( - (record) => - ({ - userId: authContext.user?.id, - recordId: record.id, - objectMetadata: objectMetadataItem, - properties: { - before: this.removeNestedProperties(record), - }, - }) satisfies ObjectRecordDeleteEvent<any>, - ), + parsedResults.map((record) => { + const existingRecord = mappedRecords.get(record.id); + + return { + userId: authContext.user?.id, + recordId: record.id, + objectMetadata: objectMetadataItem, + properties: { + before: this.removeNestedProperties({ + ...existingRecord, + ...record, + }), + }, + } satisfies ObjectRecordDeleteEvent<any>; + }), authContext.workspace.id, ); diff --git a/packages/twenty-server/src/engine/api/rest/core/query-builder/core-query-builder.factory.ts b/packages/twenty-server/src/engine/api/rest/core/query-builder/core-query-builder.factory.ts index 90c3069d8..1c30fa89d 100644 --- a/packages/twenty-server/src/engine/api/rest/core/query-builder/core-query-builder.factory.ts +++ b/packages/twenty-server/src/engine/api/rest/core/query-builder/core-query-builder.factory.ts @@ -19,7 +19,7 @@ import { parseCoreBatchPath } from 'src/engine/api/rest/core/query-builder/utils import { parseCorePath } from 'src/engine/api/rest/core/query-builder/utils/path-parsers/parse-core-path.utils'; import { Query } from 'src/engine/api/rest/core/types/query.type'; import { TokenService } from 'src/engine/core-modules/auth/services/token.service'; -import { EnvironmentService } from 'src/engine/integrations/environment/environment.service'; +import { EnvironmentService } from 'src/engine/core-modules/environment/environment.service'; import { ObjectMetadataEntity } from 'src/engine/metadata-modules/object-metadata/object-metadata.entity'; import { ObjectMetadataService } from 'src/engine/metadata-modules/object-metadata/object-metadata.service'; diff --git a/packages/twenty-server/src/engine/api/rest/rest-api.service.ts b/packages/twenty-server/src/engine/api/rest/rest-api.service.ts index d6b4d2164..128df3f96 100644 --- a/packages/twenty-server/src/engine/api/rest/rest-api.service.ts +++ b/packages/twenty-server/src/engine/api/rest/rest-api.service.ts @@ -6,7 +6,7 @@ import { AxiosResponse } from 'axios'; import { Query } from 'src/engine/api/rest/core/types/query.type'; import { getServerUrl } from 'src/utils/get-server-url'; -import { EnvironmentService } from 'src/engine/integrations/environment/environment.service'; +import { EnvironmentService } from 'src/engine/core-modules/environment/environment.service'; import { RestApiException } from 'src/engine/api/rest/errors/RestApiException'; export enum GraphqlApiType { diff --git a/packages/twenty-server/src/engine/core-modules/ai-sql-query/ai-sql-query.module.ts b/packages/twenty-server/src/engine/core-modules/ai-sql-query/ai-sql-query.module.ts index f416a0898..0e0e9997c 100644 --- a/packages/twenty-server/src/engine/core-modules/ai-sql-query/ai-sql-query.module.ts +++ b/packages/twenty-server/src/engine/core-modules/ai-sql-query/ai-sql-query.module.ts @@ -7,9 +7,9 @@ import { AISQLQueryResolver } from 'src/engine/core-modules/ai-sql-query/ai-sql- import { AISQLQueryService } from 'src/engine/core-modules/ai-sql-query/ai-sql-query.service'; import { FeatureFlagEntity } from 'src/engine/core-modules/feature-flag/feature-flag.entity'; import { WorkspaceQueryRunnerModule } from 'src/engine/api/graphql/workspace-query-runner/workspace-query-runner.module'; -import { LLMChatModelModule } from 'src/engine/integrations/llm-chat-model/llm-chat-model.module'; -import { EnvironmentModule } from 'src/engine/integrations/environment/environment.module'; -import { LLMTracingModule } from 'src/engine/integrations/llm-tracing/llm-tracing.module'; +import { LLMChatModelModule } from 'src/engine/core-modules/llm-chat-model/llm-chat-model.module'; +import { EnvironmentModule } from 'src/engine/core-modules/environment/environment.module'; +import { LLMTracingModule } from 'src/engine/core-modules/llm-tracing/llm-tracing.module'; import { ObjectMetadataModule } from 'src/engine/metadata-modules/object-metadata/object-metadata.module'; import { WorkspaceSyncMetadataModule } from 'src/engine/workspace-manager/workspace-sync-metadata/workspace-sync-metadata.module'; @Module({ diff --git a/packages/twenty-server/src/engine/core-modules/ai-sql-query/ai-sql-query.service.ts b/packages/twenty-server/src/engine/core-modules/ai-sql-query/ai-sql-query.service.ts index 63809b96c..81cd32ec4 100644 --- a/packages/twenty-server/src/engine/core-modules/ai-sql-query/ai-sql-query.service.ts +++ b/packages/twenty-server/src/engine/core-modules/ai-sql-query/ai-sql-query.service.ts @@ -11,8 +11,8 @@ import { zodToJsonSchema } from 'zod-to-json-schema'; import { WorkspaceQueryRunnerService } from 'src/engine/api/graphql/workspace-query-runner/workspace-query-runner.service'; import { sqlGenerationPromptTemplate } from 'src/engine/core-modules/ai-sql-query/ai-sql-query.prompt-templates'; import { AISQLQueryResult } from 'src/engine/core-modules/ai-sql-query/dtos/ai-sql-query-result.dto'; -import { LLMChatModelService } from 'src/engine/integrations/llm-chat-model/llm-chat-model.service'; -import { LLMTracingService } from 'src/engine/integrations/llm-tracing/llm-tracing.service'; +import { LLMChatModelService } from 'src/engine/core-modules/llm-chat-model/llm-chat-model.service'; +import { LLMTracingService } from 'src/engine/core-modules/llm-tracing/llm-tracing.service'; import { DEFAULT_LABEL_IDENTIFIER_FIELD_NAME } from 'src/engine/metadata-modules/object-metadata/object-metadata.constants'; import { ObjectMetadataEntity } from 'src/engine/metadata-modules/object-metadata/object-metadata.entity'; import { WorkspaceDataSourceService } from 'src/engine/workspace-datasource/workspace-datasource.service'; diff --git a/packages/twenty-server/src/engine/core-modules/analytics/analytics.resolver.spec.ts b/packages/twenty-server/src/engine/core-modules/analytics/analytics.resolver.spec.ts index f6f1e07d4..ba23dc9a2 100644 --- a/packages/twenty-server/src/engine/core-modules/analytics/analytics.resolver.spec.ts +++ b/packages/twenty-server/src/engine/core-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/engine/integrations/environment/environment.service'; +import { EnvironmentService } from 'src/engine/core-modules/environment/environment.service'; import { AnalyticsResolver } from './analytics.resolver'; import { AnalyticsService } from './analytics.service'; diff --git a/packages/twenty-server/src/engine/core-modules/analytics/analytics.resolver.ts b/packages/twenty-server/src/engine/core-modules/analytics/analytics.resolver.ts index 7fcba0c9f..6233ce683 100644 --- a/packages/twenty-server/src/engine/core-modules/analytics/analytics.resolver.ts +++ b/packages/twenty-server/src/engine/core-modules/analytics/analytics.resolver.ts @@ -8,7 +8,7 @@ import { AuthWorkspace } from 'src/engine/decorators/auth/auth-workspace.decorat import { AuthUser } from 'src/engine/decorators/auth/auth-user.decorator'; import { Workspace } from 'src/engine/core-modules/workspace/workspace.entity'; import { User } from 'src/engine/core-modules/user/user.entity'; -import { EnvironmentService } from 'src/engine/integrations/environment/environment.service'; +import { EnvironmentService } from 'src/engine/core-modules/environment/environment.service'; import { AnalyticsService } from './analytics.service'; import { Analytics } from './analytics.entity'; diff --git a/packages/twenty-server/src/engine/core-modules/analytics/analytics.service.spec.ts b/packages/twenty-server/src/engine/core-modules/analytics/analytics.service.spec.ts index c2cbd7a2f..a22ede293 100644 --- a/packages/twenty-server/src/engine/core-modules/analytics/analytics.service.spec.ts +++ b/packages/twenty-server/src/engine/core-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/engine/integrations/environment/environment.service'; +import { EnvironmentService } from 'src/engine/core-modules/environment/environment.service'; import { AnalyticsService } from './analytics.service'; diff --git a/packages/twenty-server/src/engine/core-modules/analytics/analytics.service.ts b/packages/twenty-server/src/engine/core-modules/analytics/analytics.service.ts index 73851f71e..085f44378 100644 --- a/packages/twenty-server/src/engine/core-modules/analytics/analytics.service.ts +++ b/packages/twenty-server/src/engine/core-modules/analytics/analytics.service.ts @@ -1,7 +1,7 @@ import { Injectable, Logger } from '@nestjs/common'; import { HttpService } from '@nestjs/axios'; -import { EnvironmentService } from 'src/engine/integrations/environment/environment.service'; +import { EnvironmentService } from 'src/engine/core-modules/environment/environment.service'; type CreateEventInput = { type: string; diff --git a/packages/twenty-server/src/engine/core-modules/auth/auth.resolver.spec.ts b/packages/twenty-server/src/engine/core-modules/auth/auth.resolver.spec.ts index 30e521f7b..cca5dc1de 100644 --- a/packages/twenty-server/src/engine/core-modules/auth/auth.resolver.spec.ts +++ b/packages/twenty-server/src/engine/core-modules/auth/auth.resolver.spec.ts @@ -6,7 +6,7 @@ import { Workspace } from 'src/engine/core-modules/workspace/workspace.entity'; import { UserService } from 'src/engine/core-modules/user/services/user.service'; import { UserWorkspaceService } from 'src/engine/core-modules/user-workspace/user-workspace.service'; import { User } from 'src/engine/core-modules/user/user.entity'; -import { CaptchaGuard } from 'src/engine/integrations/captcha/captcha.guard'; +import { CaptchaGuard } from 'src/engine/core-modules/captcha/captcha.guard'; import { AuthResolver } from './auth.resolver'; diff --git a/packages/twenty-server/src/engine/core-modules/auth/auth.resolver.ts b/packages/twenty-server/src/engine/core-modules/auth/auth.resolver.ts index 298705470..6dbcd832a 100644 --- a/packages/twenty-server/src/engine/core-modules/auth/auth.resolver.ts +++ b/packages/twenty-server/src/engine/core-modules/auth/auth.resolver.ts @@ -22,7 +22,7 @@ import { Workspace } from 'src/engine/core-modules/workspace/workspace.entity'; import { AuthUser } from 'src/engine/decorators/auth/auth-user.decorator'; import { AuthWorkspace } from 'src/engine/decorators/auth/auth-workspace.decorator'; import { JwtAuthGuard } from 'src/engine/guards/jwt.auth.guard'; -import { CaptchaGuard } from 'src/engine/integrations/captcha/captcha.guard'; +import { CaptchaGuard } from 'src/engine/core-modules/captcha/captcha.guard'; import { ChallengeInput } from './dto/challenge.input'; import { ImpersonateInput } from './dto/impersonate.input'; diff --git a/packages/twenty-server/src/engine/core-modules/auth/controllers/google-apis-auth.controller.ts b/packages/twenty-server/src/engine/core-modules/auth/controllers/google-apis-auth.controller.ts index 783556dbe..330e382b2 100644 --- a/packages/twenty-server/src/engine/core-modules/auth/controllers/google-apis-auth.controller.ts +++ b/packages/twenty-server/src/engine/core-modules/auth/controllers/google-apis-auth.controller.ts @@ -20,7 +20,7 @@ import { GoogleAPIsService } from 'src/engine/core-modules/auth/services/google- import { TokenService } from 'src/engine/core-modules/auth/services/token.service'; import { GoogleAPIsRequest } from 'src/engine/core-modules/auth/types/google-api-request.type'; import { OnboardingService } from 'src/engine/core-modules/onboarding/onboarding.service'; -import { EnvironmentService } from 'src/engine/integrations/environment/environment.service'; +import { EnvironmentService } from 'src/engine/core-modules/environment/environment.service'; @Controller('auth/google-apis') @UseFilters(AuthRestApiExceptionFilter) diff --git a/packages/twenty-server/src/engine/core-modules/auth/guards/google-apis-oauth-exchange-code-for-token.guard.ts b/packages/twenty-server/src/engine/core-modules/auth/guards/google-apis-oauth-exchange-code-for-token.guard.ts index 5ef0fcf1d..77c6b41ce 100644 --- a/packages/twenty-server/src/engine/core-modules/auth/guards/google-apis-oauth-exchange-code-for-token.guard.ts +++ b/packages/twenty-server/src/engine/core-modules/auth/guards/google-apis-oauth-exchange-code-for-token.guard.ts @@ -7,7 +7,7 @@ import { } from 'src/engine/core-modules/auth/auth.exception'; import { GoogleAPIsOauthExchangeCodeForTokenStrategy } from 'src/engine/core-modules/auth/strategies/google-apis-oauth-exchange-code-for-token.auth.strategy'; import { setRequestExtraParams } from 'src/engine/core-modules/auth/utils/google-apis-set-request-extra-params.util'; -import { EnvironmentService } from 'src/engine/integrations/environment/environment.service'; +import { EnvironmentService } from 'src/engine/core-modules/environment/environment.service'; @Injectable() export class GoogleAPIsOauthExchangeCodeForTokenGuard extends AuthGuard( diff --git a/packages/twenty-server/src/engine/core-modules/auth/guards/google-apis-oauth-request-code.guard.ts b/packages/twenty-server/src/engine/core-modules/auth/guards/google-apis-oauth-request-code.guard.ts index fadeb2b1b..04d860d5e 100644 --- a/packages/twenty-server/src/engine/core-modules/auth/guards/google-apis-oauth-request-code.guard.ts +++ b/packages/twenty-server/src/engine/core-modules/auth/guards/google-apis-oauth-request-code.guard.ts @@ -7,7 +7,7 @@ import { } from 'src/engine/core-modules/auth/auth.exception'; import { GoogleAPIsOauthRequestCodeStrategy } from 'src/engine/core-modules/auth/strategies/google-apis-oauth-request-code.auth.strategy'; import { setRequestExtraParams } from 'src/engine/core-modules/auth/utils/google-apis-set-request-extra-params.util'; -import { EnvironmentService } from 'src/engine/integrations/environment/environment.service'; +import { EnvironmentService } from 'src/engine/core-modules/environment/environment.service'; @Injectable() export class GoogleAPIsOauthRequestCodeGuard extends AuthGuard('google-apis') { diff --git a/packages/twenty-server/src/engine/core-modules/auth/guards/google-provider-enabled.guard.ts b/packages/twenty-server/src/engine/core-modules/auth/guards/google-provider-enabled.guard.ts index ed1db3ac9..b78fa7f64 100644 --- a/packages/twenty-server/src/engine/core-modules/auth/guards/google-provider-enabled.guard.ts +++ b/packages/twenty-server/src/engine/core-modules/auth/guards/google-provider-enabled.guard.ts @@ -7,7 +7,7 @@ import { AuthExceptionCode, } from 'src/engine/core-modules/auth/auth.exception'; import { GoogleStrategy } from 'src/engine/core-modules/auth/strategies/google.auth.strategy'; -import { EnvironmentService } from 'src/engine/integrations/environment/environment.service'; +import { EnvironmentService } from 'src/engine/core-modules/environment/environment.service'; @Injectable() export class GoogleProviderEnabledGuard implements CanActivate { diff --git a/packages/twenty-server/src/engine/core-modules/auth/guards/microsoft-provider-enabled.guard.ts b/packages/twenty-server/src/engine/core-modules/auth/guards/microsoft-provider-enabled.guard.ts index 435c0bb04..9594c41bd 100644 --- a/packages/twenty-server/src/engine/core-modules/auth/guards/microsoft-provider-enabled.guard.ts +++ b/packages/twenty-server/src/engine/core-modules/auth/guards/microsoft-provider-enabled.guard.ts @@ -7,7 +7,7 @@ import { AuthExceptionCode, } from 'src/engine/core-modules/auth/auth.exception'; import { MicrosoftStrategy } from 'src/engine/core-modules/auth/strategies/microsoft.auth.strategy'; -import { EnvironmentService } from 'src/engine/integrations/environment/environment.service'; +import { EnvironmentService } from 'src/engine/core-modules/environment/environment.service'; @Injectable() export class MicrosoftProviderEnabledGuard implements CanActivate { diff --git a/packages/twenty-server/src/engine/core-modules/auth/services/auth.service.spec.ts b/packages/twenty-server/src/engine/core-modules/auth/services/auth.service.spec.ts index b15cdec24..7b4f1309a 100644 --- a/packages/twenty-server/src/engine/core-modules/auth/services/auth.service.spec.ts +++ b/packages/twenty-server/src/engine/core-modules/auth/services/auth.service.spec.ts @@ -5,8 +5,8 @@ import { UserService } from 'src/engine/core-modules/user/services/user.service' import { WorkspaceManagerService } from 'src/engine/workspace-manager/workspace-manager.service'; import { Workspace } from 'src/engine/core-modules/workspace/workspace.entity'; import { User } from 'src/engine/core-modules/user/user.entity'; -import { EnvironmentService } from 'src/engine/integrations/environment/environment.service'; -import { EmailService } from 'src/engine/integrations/email/email.service'; +import { EnvironmentService } from 'src/engine/core-modules/environment/environment.service'; +import { EmailService } from 'src/engine/core-modules/email/email.service'; import { SignInUpService } from 'src/engine/core-modules/auth/services/sign-in-up.service'; import { AppToken } from 'src/engine/core-modules/app-token/app-token.entity'; diff --git a/packages/twenty-server/src/engine/core-modules/auth/services/auth.service.ts b/packages/twenty-server/src/engine/core-modules/auth/services/auth.service.ts index 0830e57fb..cec729573 100644 --- a/packages/twenty-server/src/engine/core-modules/auth/services/auth.service.ts +++ b/packages/twenty-server/src/engine/core-modules/auth/services/auth.service.ts @@ -9,7 +9,7 @@ import ms from 'ms'; import { PasswordUpdateNotifyEmail } from 'twenty-emails'; import { Repository } from 'typeorm'; -import { NodeEnvironment } from 'src/engine/integrations/environment/interfaces/node-environment.interface'; +import { NodeEnvironment } from 'src/engine/core-modules/environment/interfaces/node-environment.interface'; import { AppToken, @@ -36,8 +36,8 @@ import { WorkspaceMember } from 'src/engine/core-modules/user/dtos/workspace-mem import { UserService } from 'src/engine/core-modules/user/services/user.service'; import { User } from 'src/engine/core-modules/user/user.entity'; import { Workspace } from 'src/engine/core-modules/workspace/workspace.entity'; -import { EmailService } from 'src/engine/integrations/email/email.service'; -import { EnvironmentService } from 'src/engine/integrations/environment/environment.service'; +import { EmailService } from 'src/engine/core-modules/email/email.service'; +import { EnvironmentService } from 'src/engine/core-modules/environment/environment.service'; import { TokenService } from './token.service'; diff --git a/packages/twenty-server/src/engine/core-modules/auth/services/google-apis.service.ts b/packages/twenty-server/src/engine/core-modules/auth/services/google-apis.service.ts index dcee921d2..b20072ed5 100644 --- a/packages/twenty-server/src/engine/core-modules/auth/services/google-apis.service.ts +++ b/packages/twenty-server/src/engine/core-modules/auth/services/google-apis.service.ts @@ -3,10 +3,10 @@ import { Injectable } from '@nestjs/common'; import { EntityManager } from 'typeorm'; import { v4 } from 'uuid'; -import { EnvironmentService } from 'src/engine/integrations/environment/environment.service'; -import { InjectMessageQueue } from 'src/engine/integrations/message-queue/decorators/message-queue.decorator'; -import { MessageQueue } from 'src/engine/integrations/message-queue/message-queue.constants'; -import { MessageQueueService } from 'src/engine/integrations/message-queue/services/message-queue.service'; +import { EnvironmentService } from 'src/engine/core-modules/environment/environment.service'; +import { InjectMessageQueue } from 'src/engine/core-modules/message-queue/decorators/message-queue.decorator'; +import { MessageQueue } from 'src/engine/core-modules/message-queue/message-queue.constants'; +import { MessageQueueService } from 'src/engine/core-modules/message-queue/services/message-queue.service'; import { InjectObjectMetadataRepository } from 'src/engine/object-metadata-repository/object-metadata-repository.decorator'; import { TwentyORMGlobalManager } from 'src/engine/twenty-orm/twenty-orm-global.manager'; import { diff --git a/packages/twenty-server/src/engine/core-modules/auth/services/sign-in-up.service.spec.ts b/packages/twenty-server/src/engine/core-modules/auth/services/sign-in-up.service.spec.ts index e3bb7af39..eb2974d9d 100644 --- a/packages/twenty-server/src/engine/core-modules/auth/services/sign-in-up.service.spec.ts +++ b/packages/twenty-server/src/engine/core-modules/auth/services/sign-in-up.service.spec.ts @@ -8,7 +8,7 @@ import { OnboardingService } from 'src/engine/core-modules/onboarding/onboarding import { UserWorkspaceService } from 'src/engine/core-modules/user-workspace/user-workspace.service'; import { User } from 'src/engine/core-modules/user/user.entity'; import { Workspace } from 'src/engine/core-modules/workspace/workspace.entity'; -import { EnvironmentService } from 'src/engine/integrations/environment/environment.service'; +import { EnvironmentService } from 'src/engine/core-modules/environment/environment.service'; describe('SignInUpService', () => { let service: SignInUpService; diff --git a/packages/twenty-server/src/engine/core-modules/auth/services/sign-in-up.service.ts b/packages/twenty-server/src/engine/core-modules/auth/services/sign-in-up.service.ts index 450b6e1a0..63286c372 100644 --- a/packages/twenty-server/src/engine/core-modules/auth/services/sign-in-up.service.ts +++ b/packages/twenty-server/src/engine/core-modules/auth/services/sign-in-up.service.ts @@ -25,7 +25,7 @@ import { Workspace, WorkspaceActivationStatus, } from 'src/engine/core-modules/workspace/workspace.entity'; -import { EnvironmentService } from 'src/engine/integrations/environment/environment.service'; +import { EnvironmentService } from 'src/engine/core-modules/environment/environment.service'; import { getImageBufferFromUrl } from 'src/utils/image'; export type SignInUpServiceInput = { diff --git a/packages/twenty-server/src/engine/core-modules/auth/services/token.service.spec.ts b/packages/twenty-server/src/engine/core-modules/auth/services/token.service.spec.ts index 29e2df741..777b1febd 100644 --- a/packages/twenty-server/src/engine/core-modules/auth/services/token.service.spec.ts +++ b/packages/twenty-server/src/engine/core-modules/auth/services/token.service.spec.ts @@ -14,8 +14,8 @@ import { JwtAuthStrategy } from 'src/engine/core-modules/auth/strategies/jwt.aut import { JwtWrapperService } from 'src/engine/core-modules/jwt/services/jwt-wrapper.service'; import { User } from 'src/engine/core-modules/user/user.entity'; import { Workspace } from 'src/engine/core-modules/workspace/workspace.entity'; -import { EmailService } from 'src/engine/integrations/email/email.service'; -import { EnvironmentService } from 'src/engine/integrations/environment/environment.service'; +import { EmailService } from 'src/engine/core-modules/email/email.service'; +import { EnvironmentService } from 'src/engine/core-modules/environment/environment.service'; import { TwentyORMGlobalManager } from 'src/engine/twenty-orm/twenty-orm-global.manager'; import { TokenService } from './token.service'; diff --git a/packages/twenty-server/src/engine/core-modules/auth/services/token.service.ts b/packages/twenty-server/src/engine/core-modules/auth/services/token.service.ts index 4cf18c206..2189ddb41 100644 --- a/packages/twenty-server/src/engine/core-modules/auth/services/token.service.ts +++ b/packages/twenty-server/src/engine/core-modules/auth/services/token.service.ts @@ -42,8 +42,8 @@ import { Workspace, WorkspaceActivationStatus, } from 'src/engine/core-modules/workspace/workspace.entity'; -import { EmailService } from 'src/engine/integrations/email/email.service'; -import { EnvironmentService } from 'src/engine/integrations/environment/environment.service'; +import { EmailService } from 'src/engine/core-modules/email/email.service'; +import { EnvironmentService } from 'src/engine/core-modules/environment/environment.service'; import { TwentyORMGlobalManager } from 'src/engine/twenty-orm/twenty-orm-global.manager'; import { WorkspaceMemberWorkspaceEntity } from 'src/modules/workspace-member/standard-objects/workspace-member.workspace-entity'; diff --git a/packages/twenty-server/src/engine/core-modules/auth/strategies/google-apis-oauth-common.auth.strategy.ts b/packages/twenty-server/src/engine/core-modules/auth/strategies/google-apis-oauth-common.auth.strategy.ts index 64b69bf35..863692473 100644 --- a/packages/twenty-server/src/engine/core-modules/auth/strategies/google-apis-oauth-common.auth.strategy.ts +++ b/packages/twenty-server/src/engine/core-modules/auth/strategies/google-apis-oauth-common.auth.strategy.ts @@ -3,7 +3,7 @@ import { PassportStrategy } from '@nestjs/passport'; import { Strategy } from 'passport-google-oauth20'; -import { EnvironmentService } from 'src/engine/integrations/environment/environment.service'; +import { EnvironmentService } from 'src/engine/core-modules/environment/environment.service'; export type GoogleAPIScopeConfig = { isCalendarEnabled?: boolean; diff --git a/packages/twenty-server/src/engine/core-modules/auth/strategies/google-apis-oauth-exchange-code-for-token.auth.strategy.ts b/packages/twenty-server/src/engine/core-modules/auth/strategies/google-apis-oauth-exchange-code-for-token.auth.strategy.ts index 4d5dfe5c2..244b1066d 100644 --- a/packages/twenty-server/src/engine/core-modules/auth/strategies/google-apis-oauth-exchange-code-for-token.auth.strategy.ts +++ b/packages/twenty-server/src/engine/core-modules/auth/strategies/google-apis-oauth-exchange-code-for-token.auth.strategy.ts @@ -4,7 +4,7 @@ import { VerifyCallback } from 'passport-google-oauth20'; import { GoogleAPIsOauthCommonStrategy } from 'src/engine/core-modules/auth/strategies/google-apis-oauth-common.auth.strategy'; import { GoogleAPIsRequest } from 'src/engine/core-modules/auth/types/google-api-request.type'; -import { EnvironmentService } from 'src/engine/integrations/environment/environment.service'; +import { EnvironmentService } from 'src/engine/core-modules/environment/environment.service'; export type GoogleAPIScopeConfig = { isCalendarEnabled?: boolean; diff --git a/packages/twenty-server/src/engine/core-modules/auth/strategies/google-apis-oauth-request-code.auth.strategy.ts b/packages/twenty-server/src/engine/core-modules/auth/strategies/google-apis-oauth-request-code.auth.strategy.ts index 128ba607c..f93642bc7 100644 --- a/packages/twenty-server/src/engine/core-modules/auth/strategies/google-apis-oauth-request-code.auth.strategy.ts +++ b/packages/twenty-server/src/engine/core-modules/auth/strategies/google-apis-oauth-request-code.auth.strategy.ts @@ -1,7 +1,7 @@ import { Injectable } from '@nestjs/common'; import { GoogleAPIsOauthCommonStrategy } from 'src/engine/core-modules/auth/strategies/google-apis-oauth-common.auth.strategy'; -import { EnvironmentService } from 'src/engine/integrations/environment/environment.service'; +import { EnvironmentService } from 'src/engine/core-modules/environment/environment.service'; export type GoogleAPIScopeConfig = { isCalendarEnabled?: boolean; diff --git a/packages/twenty-server/src/engine/core-modules/auth/strategies/google.auth.strategy.ts b/packages/twenty-server/src/engine/core-modules/auth/strategies/google.auth.strategy.ts index 6cf51366f..22ba14447 100644 --- a/packages/twenty-server/src/engine/core-modules/auth/strategies/google.auth.strategy.ts +++ b/packages/twenty-server/src/engine/core-modules/auth/strategies/google.auth.strategy.ts @@ -4,7 +4,7 @@ import { PassportStrategy } from '@nestjs/passport'; import { Request } from 'express'; import { Strategy, VerifyCallback } from 'passport-google-oauth20'; -import { EnvironmentService } from 'src/engine/integrations/environment/environment.service'; +import { EnvironmentService } from 'src/engine/core-modules/environment/environment.service'; export type GoogleRequest = Omit< Request, diff --git a/packages/twenty-server/src/engine/core-modules/auth/strategies/jwt.auth.strategy.ts b/packages/twenty-server/src/engine/core-modules/auth/strategies/jwt.auth.strategy.ts index 6f7436357..3a8154004 100644 --- a/packages/twenty-server/src/engine/core-modules/auth/strategies/jwt.auth.strategy.ts +++ b/packages/twenty-server/src/engine/core-modules/auth/strategies/jwt.auth.strategy.ts @@ -13,7 +13,7 @@ import { import { AuthContext } from 'src/engine/core-modules/auth/types/auth-context.type'; import { User } from 'src/engine/core-modules/user/user.entity'; import { Workspace } from 'src/engine/core-modules/workspace/workspace.entity'; -import { EnvironmentService } from 'src/engine/integrations/environment/environment.service'; +import { EnvironmentService } from 'src/engine/core-modules/environment/environment.service'; import { DataSourceService } from 'src/engine/metadata-modules/data-source/data-source.service'; import { ApiKeyWorkspaceEntity } from 'src/modules/api-key/standard-objects/api-key.workspace-entity'; diff --git a/packages/twenty-server/src/engine/core-modules/auth/strategies/microsoft.auth.strategy.ts b/packages/twenty-server/src/engine/core-modules/auth/strategies/microsoft.auth.strategy.ts index 8eae65a81..48a097734 100644 --- a/packages/twenty-server/src/engine/core-modules/auth/strategies/microsoft.auth.strategy.ts +++ b/packages/twenty-server/src/engine/core-modules/auth/strategies/microsoft.auth.strategy.ts @@ -8,7 +8,7 @@ import { AuthException, AuthExceptionCode, } from 'src/engine/core-modules/auth/auth.exception'; -import { EnvironmentService } from 'src/engine/integrations/environment/environment.service'; +import { EnvironmentService } from 'src/engine/core-modules/environment/environment.service'; export type MicrosoftRequest = Omit< Request, diff --git a/packages/twenty-server/src/engine/core-modules/billing/jobs/update-subscription.job.ts b/packages/twenty-server/src/engine/core-modules/billing/jobs/update-subscription.job.ts index 45d723329..a91446b1c 100644 --- a/packages/twenty-server/src/engine/core-modules/billing/jobs/update-subscription.job.ts +++ b/packages/twenty-server/src/engine/core-modules/billing/jobs/update-subscription.job.ts @@ -3,9 +3,9 @@ import { Logger, Scope } from '@nestjs/common'; import { BillingSubscriptionService } from 'src/engine/core-modules/billing/services/billing-subscription.service'; import { StripeService } from 'src/engine/core-modules/billing/stripe/stripe.service'; import { UserWorkspaceService } from 'src/engine/core-modules/user-workspace/user-workspace.service'; -import { Process } from 'src/engine/integrations/message-queue/decorators/process.decorator'; -import { Processor } from 'src/engine/integrations/message-queue/decorators/processor.decorator'; -import { MessageQueue } from 'src/engine/integrations/message-queue/message-queue.constants'; +import { Process } from 'src/engine/core-modules/message-queue/decorators/process.decorator'; +import { Processor } from 'src/engine/core-modules/message-queue/decorators/processor.decorator'; +import { MessageQueue } from 'src/engine/core-modules/message-queue/message-queue.constants'; export type UpdateSubscriptionJobData = { workspaceId: string }; @Processor({ diff --git a/packages/twenty-server/src/engine/core-modules/billing/listeners/billing-workspace-member.listener.ts b/packages/twenty-server/src/engine/core-modules/billing/listeners/billing-workspace-member.listener.ts index 0d6f03ef4..13d419850 100644 --- a/packages/twenty-server/src/engine/core-modules/billing/listeners/billing-workspace-member.listener.ts +++ b/packages/twenty-server/src/engine/core-modules/billing/listeners/billing-workspace-member.listener.ts @@ -5,11 +5,11 @@ import { UpdateSubscriptionJob, UpdateSubscriptionJobData, } from 'src/engine/core-modules/billing/jobs/update-subscription.job'; -import { EnvironmentService } from 'src/engine/integrations/environment/environment.service'; -import { ObjectRecordCreateEvent } from 'src/engine/integrations/event-emitter/types/object-record-create.event'; -import { InjectMessageQueue } from 'src/engine/integrations/message-queue/decorators/message-queue.decorator'; -import { MessageQueue } from 'src/engine/integrations/message-queue/message-queue.constants'; -import { MessageQueueService } from 'src/engine/integrations/message-queue/services/message-queue.service'; +import { EnvironmentService } from 'src/engine/core-modules/environment/environment.service'; +import { ObjectRecordCreateEvent } from 'src/engine/core-modules/event-emitter/types/object-record-create.event'; +import { InjectMessageQueue } from 'src/engine/core-modules/message-queue/decorators/message-queue.decorator'; +import { MessageQueue } from 'src/engine/core-modules/message-queue/message-queue.constants'; +import { MessageQueueService } from 'src/engine/core-modules/message-queue/services/message-queue.service'; import { WorkspaceEventBatch } from 'src/engine/workspace-event-emitter/workspace-event.type'; import { WorkspaceMemberWorkspaceEntity } from 'src/modules/workspace-member/standard-objects/workspace-member.workspace-entity'; diff --git a/packages/twenty-server/src/engine/core-modules/billing/services/billing-portal.workspace-service.ts b/packages/twenty-server/src/engine/core-modules/billing/services/billing-portal.workspace-service.ts index d4a7a333f..b63e1fd04 100644 --- a/packages/twenty-server/src/engine/core-modules/billing/services/billing-portal.workspace-service.ts +++ b/packages/twenty-server/src/engine/core-modules/billing/services/billing-portal.workspace-service.ts @@ -9,7 +9,7 @@ import { StripeService } from 'src/engine/core-modules/billing/stripe/stripe.ser import { UserWorkspaceService } from 'src/engine/core-modules/user-workspace/user-workspace.service'; import { User } from 'src/engine/core-modules/user/user.entity'; import { Workspace } from 'src/engine/core-modules/workspace/workspace.entity'; -import { EnvironmentService } from 'src/engine/integrations/environment/environment.service'; +import { EnvironmentService } from 'src/engine/core-modules/environment/environment.service'; import { assert } from 'src/utils/assert'; export enum WebhookEvent { diff --git a/packages/twenty-server/src/engine/core-modules/billing/services/billing-subscription.service.ts b/packages/twenty-server/src/engine/core-modules/billing/services/billing-subscription.service.ts index 15fb1df71..248d3fa6e 100644 --- a/packages/twenty-server/src/engine/core-modules/billing/services/billing-subscription.service.ts +++ b/packages/twenty-server/src/engine/core-modules/billing/services/billing-subscription.service.ts @@ -18,7 +18,7 @@ import { StripeService } from 'src/engine/core-modules/billing/stripe/stripe.ser import { FeatureFlagKey } from 'src/engine/core-modules/feature-flag/enums/feature-flag-key.enum'; import { FeatureFlagEntity } from 'src/engine/core-modules/feature-flag/feature-flag.entity'; import { Workspace } from 'src/engine/core-modules/workspace/workspace.entity'; -import { EnvironmentService } from 'src/engine/integrations/environment/environment.service'; +import { EnvironmentService } from 'src/engine/core-modules/environment/environment.service'; @Injectable() export class BillingSubscriptionService { diff --git a/packages/twenty-server/src/engine/core-modules/billing/services/billing.service.ts b/packages/twenty-server/src/engine/core-modules/billing/services/billing.service.ts index 455b30cfe..8004d46e5 100644 --- a/packages/twenty-server/src/engine/core-modules/billing/services/billing.service.ts +++ b/packages/twenty-server/src/engine/core-modules/billing/services/billing.service.ts @@ -6,7 +6,7 @@ import { SubscriptionStatus } from 'src/engine/core-modules/billing/entities/bil import { BillingSubscriptionService } from 'src/engine/core-modules/billing/services/billing-subscription.service'; import { FeatureFlagKey } from 'src/engine/core-modules/feature-flag/enums/feature-flag-key.enum'; import { FeatureFlagService } from 'src/engine/core-modules/feature-flag/services/feature-flag.service'; -import { EnvironmentService } from 'src/engine/integrations/environment/environment.service'; +import { EnvironmentService } from 'src/engine/core-modules/environment/environment.service'; @Injectable() export class BillingService { diff --git a/packages/twenty-server/src/engine/core-modules/billing/stripe/stripe.service.ts b/packages/twenty-server/src/engine/core-modules/billing/stripe/stripe.service.ts index 7dba53b26..c62eb845f 100644 --- a/packages/twenty-server/src/engine/core-modules/billing/stripe/stripe.service.ts +++ b/packages/twenty-server/src/engine/core-modules/billing/stripe/stripe.service.ts @@ -7,7 +7,7 @@ import { AvailableProduct } from 'src/engine/core-modules/billing/interfaces/ava import { ProductPriceEntity } from 'src/engine/core-modules/billing/dto/product-price.entity'; import { BillingSubscriptionItem } from 'src/engine/core-modules/billing/entities/billing-subscription-item.entity'; import { User } from 'src/engine/core-modules/user/user.entity'; -import { EnvironmentService } from 'src/engine/integrations/environment/environment.service'; +import { EnvironmentService } from 'src/engine/core-modules/environment/environment.service'; @Injectable() export class StripeService { diff --git a/packages/twenty-server/src/engine/integrations/cache-storage/cache-storage.module-factory.ts b/packages/twenty-server/src/engine/core-modules/cache-storage/cache-storage.module-factory.ts similarity index 91% rename from packages/twenty-server/src/engine/integrations/cache-storage/cache-storage.module-factory.ts rename to packages/twenty-server/src/engine/core-modules/cache-storage/cache-storage.module-factory.ts index 989469938..ce7cb740a 100644 --- a/packages/twenty-server/src/engine/integrations/cache-storage/cache-storage.module-factory.ts +++ b/packages/twenty-server/src/engine/core-modules/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/engine/integrations/cache-storage/types/cache-storage-type.enum'; -import { EnvironmentService } from 'src/engine/integrations/environment/environment.service'; +import { CacheStorageType } from 'src/engine/core-modules/cache-storage/types/cache-storage-type.enum'; +import { EnvironmentService } from 'src/engine/core-modules/environment/environment.service'; export const cacheStorageModuleFactory = ( environmentService: EnvironmentService, diff --git a/packages/twenty-server/src/engine/integrations/cache-storage/cache-storage.module.ts b/packages/twenty-server/src/engine/core-modules/cache-storage/cache-storage.module.ts similarity index 79% rename from packages/twenty-server/src/engine/integrations/cache-storage/cache-storage.module.ts rename to packages/twenty-server/src/engine/core-modules/cache-storage/cache-storage.module.ts index b2af39062..2308379d0 100644 --- a/packages/twenty-server/src/engine/integrations/cache-storage/cache-storage.module.ts +++ b/packages/twenty-server/src/engine/core-modules/cache-storage/cache-storage.module.ts @@ -2,10 +2,10 @@ import { Module, Global, Inject, OnModuleDestroy } from '@nestjs/common'; import { CacheModule, CACHE_MANAGER, Cache } from '@nestjs/cache-manager'; import { ConfigModule } from '@nestjs/config'; -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'; +import { CacheStorageService } from 'src/engine/core-modules/cache-storage/cache-storage.service'; +import { EnvironmentService } from 'src/engine/core-modules/environment/environment.service'; +import { cacheStorageModuleFactory } from 'src/engine/core-modules/cache-storage/cache-storage.module-factory'; +import { CacheStorageNamespace } from 'src/engine/core-modules/cache-storage/types/cache-storage-namespace.enum'; @Global() @Module({ diff --git a/packages/twenty-server/src/engine/integrations/cache-storage/cache-storage.service.ts b/packages/twenty-server/src/engine/core-modules/cache-storage/cache-storage.service.ts similarity index 96% rename from packages/twenty-server/src/engine/integrations/cache-storage/cache-storage.service.ts rename to packages/twenty-server/src/engine/core-modules/cache-storage/cache-storage.service.ts index 6f6bd3e1e..e5195c18a 100644 --- a/packages/twenty-server/src/engine/integrations/cache-storage/cache-storage.service.ts +++ b/packages/twenty-server/src/engine/core-modules/cache-storage/cache-storage.service.ts @@ -3,7 +3,7 @@ import { CACHE_MANAGER, Cache } from '@nestjs/cache-manager'; import { RedisCache } from 'cache-manager-redis-yet'; -import { CacheStorageNamespace } from 'src/engine/integrations/cache-storage/types/cache-storage-namespace.enum'; +import { CacheStorageNamespace } from 'src/engine/core-modules/cache-storage/types/cache-storage-namespace.enum'; @Injectable() export class CacheStorageService { diff --git a/packages/twenty-server/src/engine/integrations/cache-storage/decorators/cache-storage.decorator.ts b/packages/twenty-server/src/engine/core-modules/cache-storage/decorators/cache-storage.decorator.ts similarity index 78% rename from packages/twenty-server/src/engine/integrations/cache-storage/decorators/cache-storage.decorator.ts rename to packages/twenty-server/src/engine/core-modules/cache-storage/decorators/cache-storage.decorator.ts index 4782059b2..0cd48cce3 100644 --- a/packages/twenty-server/src/engine/integrations/cache-storage/decorators/cache-storage.decorator.ts +++ b/packages/twenty-server/src/engine/core-modules/cache-storage/decorators/cache-storage.decorator.ts @@ -1,6 +1,6 @@ import { Inject } from '@nestjs/common'; -import { CacheStorageNamespace } from 'src/engine/integrations/cache-storage/types/cache-storage-namespace.enum'; +import { CacheStorageNamespace } from 'src/engine/core-modules/cache-storage/types/cache-storage-namespace.enum'; export const InjectCacheStorage = ( cacheStorageNamespace: CacheStorageNamespace, diff --git a/packages/twenty-server/src/engine/integrations/cache-storage/types/cache-storage-namespace.enum.ts b/packages/twenty-server/src/engine/core-modules/cache-storage/types/cache-storage-namespace.enum.ts similarity index 100% rename from packages/twenty-server/src/engine/integrations/cache-storage/types/cache-storage-namespace.enum.ts rename to packages/twenty-server/src/engine/core-modules/cache-storage/types/cache-storage-namespace.enum.ts diff --git a/packages/twenty-server/src/engine/integrations/cache-storage/types/cache-storage-type.enum.ts b/packages/twenty-server/src/engine/core-modules/cache-storage/types/cache-storage-type.enum.ts similarity index 100% rename from packages/twenty-server/src/engine/integrations/cache-storage/types/cache-storage-type.enum.ts rename to packages/twenty-server/src/engine/core-modules/cache-storage/types/cache-storage-type.enum.ts diff --git a/packages/twenty-server/src/engine/integrations/captcha/captcha.constants.ts b/packages/twenty-server/src/engine/core-modules/captcha/captcha.constants.ts similarity index 100% rename from packages/twenty-server/src/engine/integrations/captcha/captcha.constants.ts rename to packages/twenty-server/src/engine/core-modules/captcha/captcha.constants.ts diff --git a/packages/twenty-server/src/engine/integrations/captcha/captcha.guard.ts b/packages/twenty-server/src/engine/core-modules/captcha/captcha.guard.ts similarity index 91% rename from packages/twenty-server/src/engine/integrations/captcha/captcha.guard.ts rename to packages/twenty-server/src/engine/core-modules/captcha/captcha.guard.ts index 46bed4fbd..dc4513621 100644 --- a/packages/twenty-server/src/engine/integrations/captcha/captcha.guard.ts +++ b/packages/twenty-server/src/engine/core-modules/captcha/captcha.guard.ts @@ -6,7 +6,7 @@ import { } from '@nestjs/common'; import { GqlExecutionContext } from '@nestjs/graphql'; -import { CaptchaService } from 'src/engine/integrations/captcha/captcha.service'; +import { CaptchaService } from 'src/engine/core-modules/captcha/captcha.service'; @Injectable() export class CaptchaGuard implements CanActivate { diff --git a/packages/twenty-server/src/engine/integrations/captcha/captcha.module-factory.ts b/packages/twenty-server/src/engine/core-modules/captcha/captcha.module-factory.ts similarity index 85% rename from packages/twenty-server/src/engine/integrations/captcha/captcha.module-factory.ts rename to packages/twenty-server/src/engine/core-modules/captcha/captcha.module-factory.ts index fc391f405..c6a1e4c23 100644 --- a/packages/twenty-server/src/engine/integrations/captcha/captcha.module-factory.ts +++ b/packages/twenty-server/src/engine/core-modules/captcha/captcha.module-factory.ts @@ -1,8 +1,8 @@ import { CaptchaDriverOptions, CaptchaModuleOptions, -} from 'src/engine/integrations/captcha/interfaces'; -import { EnvironmentService } from 'src/engine/integrations/environment/environment.service'; +} from 'src/engine/core-modules/captcha/interfaces'; +import { EnvironmentService } from 'src/engine/core-modules/environment/environment.service'; export const captchaModuleFactory = ( environmentService: EnvironmentService, diff --git a/packages/twenty-server/src/engine/integrations/captcha/captcha.module.ts b/packages/twenty-server/src/engine/core-modules/captcha/captcha.module.ts similarity index 76% rename from packages/twenty-server/src/engine/integrations/captcha/captcha.module.ts rename to packages/twenty-server/src/engine/core-modules/captcha/captcha.module.ts index 506e51f42..8c9dd1935 100644 --- a/packages/twenty-server/src/engine/integrations/captcha/captcha.module.ts +++ b/packages/twenty-server/src/engine/core-modules/captcha/captcha.module.ts @@ -1,13 +1,13 @@ import { DynamicModule, Global } from '@nestjs/common'; -import { CAPTCHA_DRIVER } from 'src/engine/integrations/captcha/captcha.constants'; -import { CaptchaService } from 'src/engine/integrations/captcha/captcha.service'; -import { GoogleRecaptchaDriver } from 'src/engine/integrations/captcha/drivers/google-recaptcha.driver'; -import { TurnstileDriver } from 'src/engine/integrations/captcha/drivers/turnstile.driver'; +import { CAPTCHA_DRIVER } from 'src/engine/core-modules/captcha/captcha.constants'; +import { CaptchaService } from 'src/engine/core-modules/captcha/captcha.service'; +import { GoogleRecaptchaDriver } from 'src/engine/core-modules/captcha/drivers/google-recaptcha.driver'; +import { TurnstileDriver } from 'src/engine/core-modules/captcha/drivers/turnstile.driver'; import { CaptchaDriverType, CaptchaModuleAsyncOptions, -} from 'src/engine/integrations/captcha/interfaces'; +} from 'src/engine/core-modules/captcha/interfaces'; @Global() export class CaptchaModule { diff --git a/packages/twenty-server/src/engine/integrations/captcha/captcha.service.ts b/packages/twenty-server/src/engine/core-modules/captcha/captcha.service.ts similarity index 71% rename from packages/twenty-server/src/engine/integrations/captcha/captcha.service.ts rename to packages/twenty-server/src/engine/core-modules/captcha/captcha.service.ts index 58af667e0..7a0c85e5d 100644 --- a/packages/twenty-server/src/engine/integrations/captcha/captcha.service.ts +++ b/packages/twenty-server/src/engine/core-modules/captcha/captcha.service.ts @@ -1,9 +1,9 @@ import { Inject, Injectable } from '@nestjs/common'; -import { CaptchaDriver } from 'src/engine/integrations/captcha/drivers/interfaces/captcha-driver.interface'; +import { CaptchaDriver } from 'src/engine/core-modules/captcha/drivers/interfaces/captcha-driver.interface'; -import { CAPTCHA_DRIVER } from 'src/engine/integrations/captcha/captcha.constants'; -import { CaptchaValidateResult } from 'src/engine/integrations/captcha/interfaces'; +import { CAPTCHA_DRIVER } from 'src/engine/core-modules/captcha/captcha.constants'; +import { CaptchaValidateResult } from 'src/engine/core-modules/captcha/interfaces'; @Injectable() export class CaptchaService implements CaptchaDriver { diff --git a/packages/twenty-server/src/engine/integrations/captcha/drivers/google-recaptcha.driver.ts b/packages/twenty-server/src/engine/core-modules/captcha/drivers/google-recaptcha.driver.ts similarity index 86% rename from packages/twenty-server/src/engine/integrations/captcha/drivers/google-recaptcha.driver.ts rename to packages/twenty-server/src/engine/core-modules/captcha/drivers/google-recaptcha.driver.ts index 85b766124..008d8705b 100644 --- a/packages/twenty-server/src/engine/integrations/captcha/drivers/google-recaptcha.driver.ts +++ b/packages/twenty-server/src/engine/core-modules/captcha/drivers/google-recaptcha.driver.ts @@ -1,12 +1,12 @@ import axios, { AxiosInstance } from 'axios'; -import { CaptchaDriver } from 'src/engine/integrations/captcha/drivers/interfaces/captcha-driver.interface'; -import { CaptchaServerResponse } from 'src/engine/integrations/captcha/drivers/interfaces/captcha-server-response'; +import { CaptchaDriver } from 'src/engine/core-modules/captcha/drivers/interfaces/captcha-driver.interface'; +import { CaptchaServerResponse } from 'src/engine/core-modules/captcha/drivers/interfaces/captcha-server-response'; import { CaptchaDriverOptions, CaptchaValidateResult, -} from 'src/engine/integrations/captcha/interfaces'; +} from 'src/engine/core-modules/captcha/interfaces'; export class GoogleRecaptchaDriver implements CaptchaDriver { private readonly siteKey: string; diff --git a/packages/twenty-server/src/engine/integrations/captcha/drivers/interfaces/captcha-driver.interface.ts b/packages/twenty-server/src/engine/core-modules/captcha/drivers/interfaces/captcha-driver.interface.ts similarity index 64% rename from packages/twenty-server/src/engine/integrations/captcha/drivers/interfaces/captcha-driver.interface.ts rename to packages/twenty-server/src/engine/core-modules/captcha/drivers/interfaces/captcha-driver.interface.ts index 532640a79..b40d6f973 100644 --- a/packages/twenty-server/src/engine/integrations/captcha/drivers/interfaces/captcha-driver.interface.ts +++ b/packages/twenty-server/src/engine/core-modules/captcha/drivers/interfaces/captcha-driver.interface.ts @@ -1,4 +1,4 @@ -import { CaptchaValidateResult } from 'src/engine/integrations/captcha/interfaces'; +import { CaptchaValidateResult } from 'src/engine/core-modules/captcha/interfaces'; export interface CaptchaDriver { validate(token: string): Promise<CaptchaValidateResult>; diff --git a/packages/twenty-server/src/engine/integrations/captcha/drivers/interfaces/captcha-server-response.ts b/packages/twenty-server/src/engine/core-modules/captcha/drivers/interfaces/captcha-server-response.ts similarity index 100% rename from packages/twenty-server/src/engine/integrations/captcha/drivers/interfaces/captcha-server-response.ts rename to packages/twenty-server/src/engine/core-modules/captcha/drivers/interfaces/captcha-server-response.ts diff --git a/packages/twenty-server/src/engine/integrations/captcha/drivers/turnstile.driver.ts b/packages/twenty-server/src/engine/core-modules/captcha/drivers/turnstile.driver.ts similarity index 86% rename from packages/twenty-server/src/engine/integrations/captcha/drivers/turnstile.driver.ts rename to packages/twenty-server/src/engine/core-modules/captcha/drivers/turnstile.driver.ts index 5dbe5d3e1..ff21d8f62 100644 --- a/packages/twenty-server/src/engine/integrations/captcha/drivers/turnstile.driver.ts +++ b/packages/twenty-server/src/engine/core-modules/captcha/drivers/turnstile.driver.ts @@ -1,12 +1,12 @@ import axios, { AxiosInstance } from 'axios'; -import { CaptchaDriver } from 'src/engine/integrations/captcha/drivers/interfaces/captcha-driver.interface'; -import { CaptchaServerResponse } from 'src/engine/integrations/captcha/drivers/interfaces/captcha-server-response'; +import { CaptchaDriver } from 'src/engine/core-modules/captcha/drivers/interfaces/captcha-driver.interface'; +import { CaptchaServerResponse } from 'src/engine/core-modules/captcha/drivers/interfaces/captcha-server-response'; import { CaptchaDriverOptions, CaptchaValidateResult, -} from 'src/engine/integrations/captcha/interfaces'; +} from 'src/engine/core-modules/captcha/interfaces'; export class TurnstileDriver implements CaptchaDriver { private readonly siteKey: string; diff --git a/packages/twenty-server/src/engine/integrations/captcha/interfaces/captcha.interface.ts b/packages/twenty-server/src/engine/core-modules/captcha/interfaces/captcha.interface.ts similarity index 100% rename from packages/twenty-server/src/engine/integrations/captcha/interfaces/captcha.interface.ts rename to packages/twenty-server/src/engine/core-modules/captcha/interfaces/captcha.interface.ts diff --git a/packages/twenty-server/src/engine/core-modules/captcha/interfaces/index.ts b/packages/twenty-server/src/engine/core-modules/captcha/interfaces/index.ts new file mode 100644 index 000000000..27ebd3e56 --- /dev/null +++ b/packages/twenty-server/src/engine/core-modules/captcha/interfaces/index.ts @@ -0,0 +1 @@ +export * from 'src/engine/core-modules/captcha/interfaces/captcha.interface'; diff --git a/packages/twenty-server/src/engine/core-modules/client-config/client-config.entity.ts b/packages/twenty-server/src/engine/core-modules/client-config/client-config.entity.ts index 478c89da0..eefb2509b 100644 --- a/packages/twenty-server/src/engine/core-modules/client-config/client-config.entity.ts +++ b/packages/twenty-server/src/engine/core-modules/client-config/client-config.entity.ts @@ -1,6 +1,6 @@ import { Field, ObjectType } from '@nestjs/graphql'; -import { CaptchaDriverType } from 'src/engine/integrations/captcha/interfaces'; +import { CaptchaDriverType } from 'src/engine/core-modules/captcha/interfaces'; @ObjectType() class AuthProviders { diff --git a/packages/twenty-server/src/engine/core-modules/client-config/client-config.resolver.spec.ts b/packages/twenty-server/src/engine/core-modules/client-config/client-config.resolver.spec.ts index a723405b2..d1ecf6935 100644 --- a/packages/twenty-server/src/engine/core-modules/client-config/client-config.resolver.spec.ts +++ b/packages/twenty-server/src/engine/core-modules/client-config/client-config.resolver.spec.ts @@ -1,6 +1,6 @@ import { Test, TestingModule } from '@nestjs/testing'; -import { EnvironmentService } from 'src/engine/integrations/environment/environment.service'; +import { EnvironmentService } from 'src/engine/core-modules/environment/environment.service'; import { ClientConfigResolver } from './client-config.resolver'; diff --git a/packages/twenty-server/src/engine/core-modules/client-config/client-config.resolver.ts b/packages/twenty-server/src/engine/core-modules/client-config/client-config.resolver.ts index c8222a341..54844671b 100644 --- a/packages/twenty-server/src/engine/core-modules/client-config/client-config.resolver.ts +++ b/packages/twenty-server/src/engine/core-modules/client-config/client-config.resolver.ts @@ -1,6 +1,6 @@ import { Resolver, Query } from '@nestjs/graphql'; -import { EnvironmentService } from 'src/engine/integrations/environment/environment.service'; +import { EnvironmentService } from 'src/engine/core-modules/environment/environment.service'; import { ClientConfig } from './client-config.entity'; diff --git a/packages/twenty-server/src/engine/core-modules/core-engine.module.ts b/packages/twenty-server/src/engine/core-modules/core-engine.module.ts index 27312a151..501afd4cb 100644 --- a/packages/twenty-server/src/engine/core-modules/core-engine.module.ts +++ b/packages/twenty-server/src/engine/core-modules/core-engine.module.ts @@ -1,4 +1,6 @@ import { Module } from '@nestjs/common'; +import { HttpAdapterHost } from '@nestjs/core'; +import { EventEmitterModule } from '@nestjs/event-emitter'; import { ActorModule } from 'src/engine/core-modules/actor/actor.module'; import { AISQLQueryModule } from 'src/engine/core-modules/ai-sql-query/ai-sql-query.module'; @@ -15,10 +17,32 @@ import { UserModule } from 'src/engine/core-modules/user/user.module'; import { WorkflowTriggerApiModule } from 'src/engine/core-modules/workflow/workflow-trigger-api.module'; import { WorkspaceModule } from 'src/engine/core-modules/workspace/workspace.module'; import { WorkspaceEventEmitterModule } from 'src/engine/workspace-event-emitter/workspace-event-emitter.module'; +import { EnvironmentModule } from 'src/engine/core-modules/environment/environment.module'; +import { FileStorageModule } from 'src/engine/core-modules/file-storage/file-storage.module'; +import { fileStorageModuleFactory } from 'src/engine/core-modules/file-storage/file-storage.module-factory'; +import { EnvironmentService } from 'src/engine/core-modules/environment/environment.service'; +import { LoggerModule } from 'src/engine/core-modules/logger/logger.module'; +import { loggerModuleFactory } from 'src/engine/core-modules/logger/logger.module-factory'; +import { MessageQueueModule } from 'src/engine/core-modules/message-queue/message-queue.module'; +import { messageQueueModuleFactory } from 'src/engine/core-modules/message-queue/message-queue.module-factory'; +import { ExceptionHandlerModule } from 'src/engine/core-modules/exception-handler/exception-handler.module'; +import { exceptionHandlerModuleFactory } from 'src/engine/core-modules/exception-handler/exception-handler.module-factory'; +import { EmailModule } from 'src/engine/core-modules/email/email.module'; +import { emailModuleFactory } from 'src/engine/core-modules/email/email.module-factory'; +import { CaptchaModule } from 'src/engine/core-modules/captcha/captcha.module'; +import { captchaModuleFactory } from 'src/engine/core-modules/captcha/captcha.module-factory'; +import { CacheStorageModule } from 'src/engine/core-modules/cache-storage/cache-storage.module'; +import { LLMChatModelModule } from 'src/engine/core-modules/llm-chat-model/llm-chat-model.module'; +import { llmChatModelModuleFactory } from 'src/engine/core-modules/llm-chat-model/llm-chat-model.module-factory'; +import { LLMTracingModule } from 'src/engine/core-modules/llm-tracing/llm-tracing.module'; +import { llmTracingModuleFactory } from 'src/engine/core-modules/llm-tracing/llm-tracing.module-factory'; +import { ServerlessModule } from 'src/engine/core-modules/serverless/serverless.module'; +import { serverlessModuleFactory } from 'src/engine/core-modules/serverless/serverless-module.factory'; +import { FileStorageService } from 'src/engine/core-modules/file-storage/file-storage.service'; -import { AnalyticsModule } from './analytics/analytics.module'; -import { ClientConfigModule } from './client-config/client-config.module'; import { FileModule } from './file/file.module'; +import { ClientConfigModule } from './client-config/client-config.module'; +import { AnalyticsModule } from './analytics/analytics.module'; @Module({ imports: [ @@ -40,6 +64,47 @@ import { FileModule } from './file/file.module'; WorkflowTriggerApiModule, WorkspaceEventEmitterModule, ActorModule, + EnvironmentModule.forRoot({}), + FileStorageModule.forRootAsync({ + useFactory: fileStorageModuleFactory, + inject: [EnvironmentService], + }), + LoggerModule.forRootAsync({ + useFactory: loggerModuleFactory, + inject: [EnvironmentService], + }), + MessageQueueModule.registerAsync({ + useFactory: messageQueueModuleFactory, + inject: [EnvironmentService], + }), + ExceptionHandlerModule.forRootAsync({ + useFactory: exceptionHandlerModuleFactory, + inject: [EnvironmentService, HttpAdapterHost], + }), + EmailModule.forRoot({ + useFactory: emailModuleFactory, + inject: [EnvironmentService], + }), + CaptchaModule.forRoot({ + useFactory: captchaModuleFactory, + inject: [EnvironmentService], + }), + EventEmitterModule.forRoot({ + wildcard: true, + }), + CacheStorageModule, + LLMChatModelModule.forRoot({ + useFactory: llmChatModelModuleFactory, + inject: [EnvironmentService], + }), + LLMTracingModule.forRoot({ + useFactory: llmTracingModuleFactory, + inject: [EnvironmentService], + }), + ServerlessModule.forRootAsync({ + useFactory: serverlessModuleFactory, + inject: [EnvironmentService, FileStorageService], + }), ], exports: [ AnalyticsModule, diff --git a/packages/twenty-server/src/engine/integrations/email/drivers/interfaces/email-driver.interface.ts b/packages/twenty-server/src/engine/core-modules/email/drivers/interfaces/email-driver.interface.ts similarity index 100% rename from packages/twenty-server/src/engine/integrations/email/drivers/interfaces/email-driver.interface.ts rename to packages/twenty-server/src/engine/core-modules/email/drivers/interfaces/email-driver.interface.ts diff --git a/packages/twenty-server/src/engine/integrations/email/drivers/logger.driver.ts b/packages/twenty-server/src/engine/core-modules/email/drivers/logger.driver.ts similarity index 90% rename from packages/twenty-server/src/engine/integrations/email/drivers/logger.driver.ts rename to packages/twenty-server/src/engine/core-modules/email/drivers/logger.driver.ts index a3138de0b..c8dd1e345 100644 --- a/packages/twenty-server/src/engine/integrations/email/drivers/logger.driver.ts +++ b/packages/twenty-server/src/engine/core-modules/email/drivers/logger.driver.ts @@ -2,7 +2,7 @@ import { Logger } from '@nestjs/common'; import { SendMailOptions } from 'nodemailer'; -import { EmailDriver } from 'src/engine/integrations/email/drivers/interfaces/email-driver.interface'; +import { EmailDriver } from 'src/engine/core-modules/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/engine/integrations/email/drivers/smtp.driver.ts b/packages/twenty-server/src/engine/core-modules/email/drivers/smtp.driver.ts similarity index 92% rename from packages/twenty-server/src/engine/integrations/email/drivers/smtp.driver.ts rename to packages/twenty-server/src/engine/core-modules/email/drivers/smtp.driver.ts index 94445854e..5f325170e 100644 --- a/packages/twenty-server/src/engine/integrations/email/drivers/smtp.driver.ts +++ b/packages/twenty-server/src/engine/core-modules/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/engine/integrations/email/drivers/interfaces/email-driver.interface'; +import { EmailDriver } from 'src/engine/core-modules/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/engine/integrations/email/email-sender.job.ts b/packages/twenty-server/src/engine/core-modules/email/email-sender.job.ts similarity index 63% rename from packages/twenty-server/src/engine/integrations/email/email-sender.job.ts rename to packages/twenty-server/src/engine/core-modules/email/email-sender.job.ts index d97117d50..85203d80b 100644 --- a/packages/twenty-server/src/engine/integrations/email/email-sender.job.ts +++ b/packages/twenty-server/src/engine/core-modules/email/email-sender.job.ts @@ -1,9 +1,9 @@ import { SendMailOptions } from 'nodemailer'; -import { EmailSenderService } from 'src/engine/integrations/email/email-sender.service'; -import { MessageQueue } from 'src/engine/integrations/message-queue/message-queue.constants'; -import { Processor } from 'src/engine/integrations/message-queue/decorators/processor.decorator'; -import { Process } from 'src/engine/integrations/message-queue/decorators/process.decorator'; +import { EmailSenderService } from 'src/engine/core-modules/email/email-sender.service'; +import { MessageQueue } from 'src/engine/core-modules/message-queue/message-queue.constants'; +import { Processor } from 'src/engine/core-modules/message-queue/decorators/processor.decorator'; +import { Process } from 'src/engine/core-modules/message-queue/decorators/process.decorator'; @Processor(MessageQueue.emailQueue) export class EmailSenderJob { diff --git a/packages/twenty-server/src/engine/integrations/email/email-sender.service.ts b/packages/twenty-server/src/engine/core-modules/email/email-sender.service.ts similarity index 76% rename from packages/twenty-server/src/engine/integrations/email/email-sender.service.ts rename to packages/twenty-server/src/engine/core-modules/email/email-sender.service.ts index 96ec2196f..05306fe54 100644 --- a/packages/twenty-server/src/engine/integrations/email/email-sender.service.ts +++ b/packages/twenty-server/src/engine/core-modules/email/email-sender.service.ts @@ -2,9 +2,9 @@ import { Inject, Injectable } from '@nestjs/common'; import { SendMailOptions } from 'nodemailer'; -import { EmailDriver } from 'src/engine/integrations/email/drivers/interfaces/email-driver.interface'; +import { EmailDriver } from 'src/engine/core-modules/email/drivers/interfaces/email-driver.interface'; -import { EMAIL_DRIVER } from 'src/engine/integrations/email/email.constants'; +import { EMAIL_DRIVER } from 'src/engine/core-modules/email/email.constants'; @Injectable() export class EmailSenderService implements EmailDriver { diff --git a/packages/twenty-server/src/engine/integrations/email/email.constants.ts b/packages/twenty-server/src/engine/core-modules/email/email.constants.ts similarity index 100% rename from packages/twenty-server/src/engine/integrations/email/email.constants.ts rename to packages/twenty-server/src/engine/core-modules/email/email.constants.ts diff --git a/packages/twenty-server/src/engine/integrations/email/email.module-factory.ts b/packages/twenty-server/src/engine/core-modules/email/email.module-factory.ts similarity index 89% rename from packages/twenty-server/src/engine/integrations/email/email.module-factory.ts rename to packages/twenty-server/src/engine/core-modules/email/email.module-factory.ts index 870f30db2..447d857e8 100644 --- a/packages/twenty-server/src/engine/integrations/email/email.module-factory.ts +++ b/packages/twenty-server/src/engine/core-modules/email/email.module-factory.ts @@ -1,9 +1,9 @@ import { EmailDriver, EmailModuleOptions, -} from 'src/engine/integrations/email/interfaces/email.interface'; +} from 'src/engine/core-modules/email/interfaces/email.interface'; -import { EnvironmentService } from 'src/engine/integrations/environment/environment.service'; +import { EnvironmentService } from 'src/engine/core-modules/environment/environment.service'; export const emailModuleFactory = ( environmentService: EnvironmentService, diff --git a/packages/twenty-server/src/engine/integrations/email/email.module.ts b/packages/twenty-server/src/engine/core-modules/email/email.module.ts similarity index 65% rename from packages/twenty-server/src/engine/integrations/email/email.module.ts rename to packages/twenty-server/src/engine/core-modules/email/email.module.ts index f97c246ab..0a6b5c3a5 100644 --- a/packages/twenty-server/src/engine/integrations/email/email.module.ts +++ b/packages/twenty-server/src/engine/core-modules/email/email.module.ts @@ -1,12 +1,12 @@ import { DynamicModule, Global } from '@nestjs/common'; -import { EmailModuleAsyncOptions } from 'src/engine/integrations/email/interfaces/email.interface'; +import { EmailModuleAsyncOptions } from 'src/engine/core-modules/email/interfaces/email.interface'; -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'; +import { EMAIL_DRIVER } from 'src/engine/core-modules/email/email.constants'; +import { LoggerDriver } from 'src/engine/core-modules/email/drivers/logger.driver'; +import { SmtpDriver } from 'src/engine/core-modules/email/drivers/smtp.driver'; +import { EmailService } from 'src/engine/core-modules/email/email.service'; +import { EmailSenderService } from 'src/engine/core-modules/email/email-sender.service'; @Global() export class EmailModule { diff --git a/packages/twenty-server/src/engine/integrations/email/email.service.ts b/packages/twenty-server/src/engine/core-modules/email/email.service.ts similarity index 70% rename from packages/twenty-server/src/engine/integrations/email/email.service.ts rename to packages/twenty-server/src/engine/core-modules/email/email.service.ts index 79217adb8..6aa24c1e6 100644 --- a/packages/twenty-server/src/engine/integrations/email/email.service.ts +++ b/packages/twenty-server/src/engine/core-modules/email/email.service.ts @@ -2,10 +2,10 @@ import { Injectable } from '@nestjs/common'; import { SendMailOptions } from 'nodemailer'; -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'; -import { InjectMessageQueue } from 'src/engine/integrations/message-queue/decorators/message-queue.decorator'; +import { MessageQueue } from 'src/engine/core-modules/message-queue/message-queue.constants'; +import { MessageQueueService } from 'src/engine/core-modules/message-queue/services/message-queue.service'; +import { EmailSenderJob } from 'src/engine/core-modules/email/email-sender.job'; +import { InjectMessageQueue } from 'src/engine/core-modules/message-queue/decorators/message-queue.decorator'; @Injectable() export class EmailService { diff --git a/packages/twenty-server/src/engine/integrations/email/interfaces/email.interface.ts b/packages/twenty-server/src/engine/core-modules/email/interfaces/email.interface.ts similarity index 100% rename from packages/twenty-server/src/engine/integrations/email/interfaces/email.interface.ts rename to packages/twenty-server/src/engine/core-modules/email/interfaces/email.interface.ts diff --git a/packages/twenty-server/src/engine/integrations/environment/decorators/__tests__/cast-to-log-level-array.decorator.spec.ts b/packages/twenty-server/src/engine/core-modules/environment/decorators/__tests__/cast-to-log-level-array.decorator.spec.ts similarity index 96% rename from packages/twenty-server/src/engine/integrations/environment/decorators/__tests__/cast-to-log-level-array.decorator.spec.ts rename to packages/twenty-server/src/engine/core-modules/environment/decorators/__tests__/cast-to-log-level-array.decorator.spec.ts index 43447e2de..a35e03676 100644 --- a/packages/twenty-server/src/engine/integrations/environment/decorators/__tests__/cast-to-log-level-array.decorator.spec.ts +++ b/packages/twenty-server/src/engine/core-modules/environment/decorators/__tests__/cast-to-log-level-array.decorator.spec.ts @@ -1,6 +1,6 @@ import { plainToClass } from 'class-transformer'; -import { CastToLogLevelArray } from 'src/engine/integrations/environment/decorators/cast-to-log-level-array.decorator'; +import { CastToLogLevelArray } from 'src/engine/core-modules/environment/decorators/cast-to-log-level-array.decorator'; class TestClass { @CastToLogLevelArray() diff --git a/packages/twenty-server/src/engine/integrations/environment/decorators/__tests__/cast-to-positive-number.decorator.spec.ts b/packages/twenty-server/src/engine/core-modules/environment/decorators/__tests__/cast-to-positive-number.decorator.spec.ts similarity index 96% rename from packages/twenty-server/src/engine/integrations/environment/decorators/__tests__/cast-to-positive-number.decorator.spec.ts rename to packages/twenty-server/src/engine/core-modules/environment/decorators/__tests__/cast-to-positive-number.decorator.spec.ts index f3f77fb4c..cf302e0fd 100644 --- a/packages/twenty-server/src/engine/integrations/environment/decorators/__tests__/cast-to-positive-number.decorator.spec.ts +++ b/packages/twenty-server/src/engine/core-modules/environment/decorators/__tests__/cast-to-positive-number.decorator.spec.ts @@ -1,6 +1,6 @@ import { plainToClass } from 'class-transformer'; -import { CastToPositiveNumber } from 'src/engine/integrations/environment/decorators/cast-to-positive-number.decorator'; +import { CastToPositiveNumber } from 'src/engine/core-modules/environment/decorators/cast-to-positive-number.decorator'; class TestClass { @CastToPositiveNumber() diff --git a/packages/twenty-server/src/engine/integrations/environment/decorators/cast-to-boolean.decorator.ts b/packages/twenty-server/src/engine/core-modules/environment/decorators/cast-to-boolean.decorator.ts similarity index 100% rename from packages/twenty-server/src/engine/integrations/environment/decorators/cast-to-boolean.decorator.ts rename to packages/twenty-server/src/engine/core-modules/environment/decorators/cast-to-boolean.decorator.ts diff --git a/packages/twenty-server/src/engine/integrations/environment/decorators/cast-to-log-level-array.decorator.ts b/packages/twenty-server/src/engine/core-modules/environment/decorators/cast-to-log-level-array.decorator.ts similarity index 100% rename from packages/twenty-server/src/engine/integrations/environment/decorators/cast-to-log-level-array.decorator.ts rename to packages/twenty-server/src/engine/core-modules/environment/decorators/cast-to-log-level-array.decorator.ts diff --git a/packages/twenty-server/src/engine/integrations/environment/decorators/cast-to-positive-number.decorator.ts b/packages/twenty-server/src/engine/core-modules/environment/decorators/cast-to-positive-number.decorator.ts similarity index 100% rename from packages/twenty-server/src/engine/integrations/environment/decorators/cast-to-positive-number.decorator.ts rename to packages/twenty-server/src/engine/core-modules/environment/decorators/cast-to-positive-number.decorator.ts diff --git a/packages/twenty-server/src/engine/integrations/environment/decorators/cast-to-string-array.decorator.ts b/packages/twenty-server/src/engine/core-modules/environment/decorators/cast-to-string-array.decorator.ts similarity index 100% rename from packages/twenty-server/src/engine/integrations/environment/decorators/cast-to-string-array.decorator.ts rename to packages/twenty-server/src/engine/core-modules/environment/decorators/cast-to-string-array.decorator.ts diff --git a/packages/twenty-server/src/engine/integrations/environment/decorators/is-aws-region.decorator.ts b/packages/twenty-server/src/engine/core-modules/environment/decorators/is-aws-region.decorator.ts similarity index 100% rename from packages/twenty-server/src/engine/integrations/environment/decorators/is-aws-region.decorator.ts rename to packages/twenty-server/src/engine/core-modules/environment/decorators/is-aws-region.decorator.ts diff --git a/packages/twenty-server/src/engine/integrations/environment/decorators/is-duration.decorator.ts b/packages/twenty-server/src/engine/core-modules/environment/decorators/is-duration.decorator.ts similarity index 100% rename from packages/twenty-server/src/engine/integrations/environment/decorators/is-duration.decorator.ts rename to packages/twenty-server/src/engine/core-modules/environment/decorators/is-duration.decorator.ts diff --git a/packages/twenty-server/src/engine/integrations/environment/decorators/is-strictly-lower-than.decorator.ts b/packages/twenty-server/src/engine/core-modules/environment/decorators/is-strictly-lower-than.decorator.ts similarity index 100% rename from packages/twenty-server/src/engine/integrations/environment/decorators/is-strictly-lower-than.decorator.ts rename to packages/twenty-server/src/engine/core-modules/environment/decorators/is-strictly-lower-than.decorator.ts diff --git a/packages/twenty-server/src/engine/integrations/environment/environment-variables.ts b/packages/twenty-server/src/engine/core-modules/environment/environment-variables.ts similarity index 86% rename from packages/twenty-server/src/engine/integrations/environment/environment-variables.ts rename to packages/twenty-server/src/engine/core-modules/environment/environment-variables.ts index ae8c304f7..c676f1539 100644 --- a/packages/twenty-server/src/engine/integrations/environment/environment-variables.ts +++ b/packages/twenty-server/src/engine/core-modules/environment/environment-variables.ts @@ -15,30 +15,29 @@ import { validateSync, } from 'class-validator'; -import { EmailDriver } from 'src/engine/integrations/email/interfaces/email.interface'; -import { NodeEnvironment } from 'src/engine/integrations/environment/interfaces/node-environment.interface'; -import { LLMChatModelDriver } from 'src/engine/integrations/llm-chat-model/interfaces/llm-chat-model.interface'; -import { LLMTracingDriver } from 'src/engine/integrations/llm-tracing/interfaces/llm-tracing.interface'; +import { EmailDriver } from 'src/engine/core-modules/email/interfaces/email.interface'; +import { NodeEnvironment } from 'src/engine/core-modules/environment/interfaces/node-environment.interface'; +import { LLMChatModelDriver } from 'src/engine/core-modules/llm-chat-model/interfaces/llm-chat-model.interface'; +import { LLMTracingDriver } from 'src/engine/core-modules/llm-tracing/interfaces/llm-tracing.interface'; +import { AwsRegion } from 'src/engine/core-modules/environment/interfaces/aws-region.interface'; +import { SupportDriver } from 'src/engine/core-modules/environment/interfaces/support.interface'; -import { CacheStorageType } from 'src/engine/integrations/cache-storage/types/cache-storage-type.enum'; -import { CaptchaDriverType } from 'src/engine/integrations/captcha/interfaces'; -import { CastToStringArray } from 'src/engine/integrations/environment/decorators/cast-to-string-array.decorator'; -import { IsStrictlyLowerThan } from 'src/engine/integrations/environment/decorators/is-strictly-lower-than.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 { MessageQueueDriverType } from 'src/engine/integrations/message-queue/interfaces'; -import { ServerlessDriverType } from 'src/engine/integrations/serverless/serverless.interface'; +import { IsDuration } from 'src/engine/core-modules/environment/decorators/is-duration.decorator'; +import { IsAWSRegion } from 'src/engine/core-modules/environment/decorators/is-aws-region.decorator'; +import { CastToPositiveNumber } from 'src/engine/core-modules/environment/decorators/cast-to-positive-number.decorator'; +import { CastToLogLevelArray } from 'src/engine/core-modules/environment/decorators/cast-to-log-level-array.decorator'; +import { CastToBoolean } from 'src/engine/core-modules/environment/decorators/cast-to-boolean.decorator'; +import { CacheStorageType } from 'src/engine/core-modules/cache-storage/types/cache-storage-type.enum'; +import { CaptchaDriverType } from 'src/engine/core-modules/captcha/interfaces'; +import { CastToStringArray } from 'src/engine/core-modules/environment/decorators/cast-to-string-array.decorator'; +import { IsStrictlyLowerThan } from 'src/engine/core-modules/environment/decorators/is-strictly-lower-than.decorator'; +import { ExceptionHandlerDriver } from 'src/engine/core-modules/exception-handler/interfaces'; +import { StorageDriverType } from 'src/engine/core-modules/file-storage/interfaces'; +import { LoggerDriverType } from 'src/engine/core-modules/logger/interfaces'; +import { MessageQueueDriverType } from 'src/engine/core-modules/message-queue/interfaces'; +import { ServerlessDriverType } from 'src/engine/core-modules/serverless/serverless.interface'; import { assert } from 'src/utils/assert'; -import { CastToBoolean } from './decorators/cast-to-boolean.decorator'; -import { CastToLogLevelArray } from './decorators/cast-to-log-level-array.decorator'; -import { CastToPositiveNumber } from './decorators/cast-to-positive-number.decorator'; -import { IsAWSRegion } from './decorators/is-aws-region.decorator'; -import { IsDuration } from './decorators/is-duration.decorator'; -import { AwsRegion } from './interfaces/aws-region.interface'; -import { SupportDriver } from './interfaces/support.interface'; - export class EnvironmentVariables { // Misc @CastToBoolean() diff --git a/packages/twenty-server/src/engine/integrations/environment/environment.module-definition.ts b/packages/twenty-server/src/engine/core-modules/environment/environment.module-definition.ts similarity index 100% rename from packages/twenty-server/src/engine/integrations/environment/environment.module-definition.ts rename to packages/twenty-server/src/engine/core-modules/environment/environment.module-definition.ts diff --git a/packages/twenty-server/src/engine/integrations/environment/environment.module.ts b/packages/twenty-server/src/engine/core-modules/environment/environment.module.ts similarity index 56% rename from packages/twenty-server/src/engine/integrations/environment/environment.module.ts rename to packages/twenty-server/src/engine/core-modules/environment/environment.module.ts index c42fd6ee9..a80214e7d 100644 --- a/packages/twenty-server/src/engine/integrations/environment/environment.module.ts +++ b/packages/twenty-server/src/engine/core-modules/environment/environment.module.ts @@ -1,9 +1,9 @@ import { Global, Module } from '@nestjs/common'; import { ConfigModule } from '@nestjs/config'; -import { EnvironmentService } from './environment.service'; -import { ConfigurableModuleClass } from './environment.module-definition'; -import { validate } from './environment-variables'; +import { EnvironmentService } from 'src/engine/core-modules/environment/environment.service'; +import { ConfigurableModuleClass } from 'src/engine/core-modules/environment/environment.module-definition'; +import { validate } from 'src/engine/core-modules/environment/environment-variables'; @Global() @Module({ diff --git a/packages/twenty-server/src/engine/integrations/environment/environment.service.spec.ts b/packages/twenty-server/src/engine/core-modules/environment/environment.service.spec.ts similarity index 86% rename from packages/twenty-server/src/engine/integrations/environment/environment.service.spec.ts rename to packages/twenty-server/src/engine/core-modules/environment/environment.service.spec.ts index 9b8c73742..49b35947d 100644 --- a/packages/twenty-server/src/engine/integrations/environment/environment.service.spec.ts +++ b/packages/twenty-server/src/engine/core-modules/environment/environment.service.spec.ts @@ -1,7 +1,7 @@ import { Test, TestingModule } from '@nestjs/testing'; import { ConfigService } from '@nestjs/config'; -import { EnvironmentService } from './environment.service'; +import { EnvironmentService } from 'src/engine/core-modules/environment/environment.service'; describe('EnvironmentService', () => { let service: EnvironmentService; diff --git a/packages/twenty-server/src/engine/integrations/environment/environment.service.ts b/packages/twenty-server/src/engine/core-modules/environment/environment.service.ts similarity index 88% rename from packages/twenty-server/src/engine/integrations/environment/environment.service.ts rename to packages/twenty-server/src/engine/core-modules/environment/environment.service.ts index 844024955..3860fdabd 100644 --- a/packages/twenty-server/src/engine/integrations/environment/environment.service.ts +++ b/packages/twenty-server/src/engine/core-modules/environment/environment.service.ts @@ -2,7 +2,7 @@ import { Injectable } from '@nestjs/common'; import { ConfigService } from '@nestjs/config'; -import { EnvironmentVariables } from 'src/engine/integrations/environment/environment-variables'; +import { EnvironmentVariables } from 'src/engine/core-modules/environment/environment-variables'; @Injectable() export class EnvironmentService { diff --git a/packages/twenty-server/src/engine/integrations/environment/interfaces/aws-region.interface.ts b/packages/twenty-server/src/engine/core-modules/environment/interfaces/aws-region.interface.ts similarity index 100% rename from packages/twenty-server/src/engine/integrations/environment/interfaces/aws-region.interface.ts rename to packages/twenty-server/src/engine/core-modules/environment/interfaces/aws-region.interface.ts diff --git a/packages/twenty-server/src/engine/integrations/environment/interfaces/node-environment.interface.ts b/packages/twenty-server/src/engine/core-modules/environment/interfaces/node-environment.interface.ts similarity index 100% rename from packages/twenty-server/src/engine/integrations/environment/interfaces/node-environment.interface.ts rename to packages/twenty-server/src/engine/core-modules/environment/interfaces/node-environment.interface.ts diff --git a/packages/twenty-server/src/engine/integrations/environment/interfaces/support.interface.ts b/packages/twenty-server/src/engine/core-modules/environment/interfaces/support.interface.ts similarity index 100% rename from packages/twenty-server/src/engine/integrations/environment/interfaces/support.interface.ts rename to packages/twenty-server/src/engine/core-modules/environment/interfaces/support.interface.ts diff --git a/packages/twenty-server/src/engine/integrations/event-emitter/types/object-record-create.event.ts b/packages/twenty-server/src/engine/core-modules/event-emitter/types/object-record-create.event.ts similarity index 70% rename from packages/twenty-server/src/engine/integrations/event-emitter/types/object-record-create.event.ts rename to packages/twenty-server/src/engine/core-modules/event-emitter/types/object-record-create.event.ts index 0e3d6e22c..62221beaa 100644 --- a/packages/twenty-server/src/engine/integrations/event-emitter/types/object-record-create.event.ts +++ b/packages/twenty-server/src/engine/core-modules/event-emitter/types/object-record-create.event.ts @@ -1,4 +1,4 @@ -import { ObjectRecordBaseEvent } from 'src/engine/integrations/event-emitter/types/object-record.base.event'; +import { ObjectRecordBaseEvent } from 'src/engine/core-modules/event-emitter/types/object-record.base.event'; export class ObjectRecordCreateEvent<T> extends ObjectRecordBaseEvent { properties: { diff --git a/packages/twenty-server/src/engine/integrations/event-emitter/types/object-record-delete.event.ts b/packages/twenty-server/src/engine/core-modules/event-emitter/types/object-record-delete.event.ts similarity index 71% rename from packages/twenty-server/src/engine/integrations/event-emitter/types/object-record-delete.event.ts rename to packages/twenty-server/src/engine/core-modules/event-emitter/types/object-record-delete.event.ts index 01e981bdc..644ab0658 100644 --- a/packages/twenty-server/src/engine/integrations/event-emitter/types/object-record-delete.event.ts +++ b/packages/twenty-server/src/engine/core-modules/event-emitter/types/object-record-delete.event.ts @@ -1,4 +1,4 @@ -import { ObjectRecordBaseEvent } from 'src/engine/integrations/event-emitter/types/object-record.base.event'; +import { ObjectRecordBaseEvent } from 'src/engine/core-modules/event-emitter/types/object-record.base.event'; export class ObjectRecordDeleteEvent<T> extends ObjectRecordBaseEvent { properties: { diff --git a/packages/twenty-server/src/engine/integrations/event-emitter/types/object-record-update.event.ts b/packages/twenty-server/src/engine/core-modules/event-emitter/types/object-record-update.event.ts similarity index 77% rename from packages/twenty-server/src/engine/integrations/event-emitter/types/object-record-update.event.ts rename to packages/twenty-server/src/engine/core-modules/event-emitter/types/object-record-update.event.ts index aa4b59e72..66d9f2645 100644 --- a/packages/twenty-server/src/engine/integrations/event-emitter/types/object-record-update.event.ts +++ b/packages/twenty-server/src/engine/core-modules/event-emitter/types/object-record-update.event.ts @@ -1,4 +1,4 @@ -import { ObjectRecordBaseEvent } from 'src/engine/integrations/event-emitter/types/object-record.base.event'; +import { ObjectRecordBaseEvent } from 'src/engine/core-modules/event-emitter/types/object-record.base.event'; export class ObjectRecordUpdateEvent<T> extends ObjectRecordBaseEvent { properties: { diff --git a/packages/twenty-server/src/engine/integrations/event-emitter/types/object-record.base.event.ts b/packages/twenty-server/src/engine/core-modules/event-emitter/types/object-record.base.event.ts similarity index 100% rename from packages/twenty-server/src/engine/integrations/event-emitter/types/object-record.base.event.ts rename to packages/twenty-server/src/engine/core-modules/event-emitter/types/object-record.base.event.ts diff --git a/packages/twenty-server/src/engine/integrations/event-emitter/utils/__tests__/object-record-changed-values.spec.ts b/packages/twenty-server/src/engine/core-modules/event-emitter/utils/__tests__/object-record-changed-values.spec.ts similarity index 96% rename from packages/twenty-server/src/engine/integrations/event-emitter/utils/__tests__/object-record-changed-values.spec.ts rename to packages/twenty-server/src/engine/core-modules/event-emitter/utils/__tests__/object-record-changed-values.spec.ts index 6772e1f87..c9c180669 100644 --- a/packages/twenty-server/src/engine/integrations/event-emitter/utils/__tests__/object-record-changed-values.spec.ts +++ b/packages/twenty-server/src/engine/core-modules/event-emitter/utils/__tests__/object-record-changed-values.spec.ts @@ -1,6 +1,6 @@ import { ObjectMetadataInterface } from 'src/engine/metadata-modules/field-metadata/interfaces/object-metadata.interface'; -import { objectRecordChangedValues } from 'src/engine/integrations/event-emitter/utils/object-record-changed-values'; +import { objectRecordChangedValues } from 'src/engine/core-modules/event-emitter/utils/object-record-changed-values'; const mockObjectMetadata: ObjectMetadataInterface = { id: '1', diff --git a/packages/twenty-server/src/engine/integrations/event-emitter/utils/object-record-changed-properties.util.ts b/packages/twenty-server/src/engine/core-modules/event-emitter/utils/object-record-changed-properties.util.ts similarity index 100% rename from packages/twenty-server/src/engine/integrations/event-emitter/utils/object-record-changed-properties.util.ts rename to packages/twenty-server/src/engine/core-modules/event-emitter/utils/object-record-changed-properties.util.ts diff --git a/packages/twenty-server/src/engine/integrations/event-emitter/utils/object-record-changed-values.ts b/packages/twenty-server/src/engine/core-modules/event-emitter/utils/object-record-changed-values.ts similarity index 100% rename from packages/twenty-server/src/engine/integrations/event-emitter/utils/object-record-changed-values.ts rename to packages/twenty-server/src/engine/core-modules/event-emitter/utils/object-record-changed-values.ts diff --git a/packages/twenty-server/src/engine/integrations/event-emitter/utils/object-record-diff-merge.ts b/packages/twenty-server/src/engine/core-modules/event-emitter/utils/object-record-diff-merge.ts similarity index 100% rename from packages/twenty-server/src/engine/integrations/event-emitter/utils/object-record-diff-merge.ts rename to packages/twenty-server/src/engine/core-modules/event-emitter/utils/object-record-diff-merge.ts diff --git a/packages/twenty-server/src/engine/integrations/exception-handler/__tests__/exception-handler.service.spec.ts b/packages/twenty-server/src/engine/core-modules/exception-handler/__tests__/exception-handler.service.spec.ts similarity index 83% rename from packages/twenty-server/src/engine/integrations/exception-handler/__tests__/exception-handler.service.spec.ts rename to packages/twenty-server/src/engine/core-modules/exception-handler/__tests__/exception-handler.service.spec.ts index bae07ba64..5255347d5 100644 --- a/packages/twenty-server/src/engine/integrations/exception-handler/__tests__/exception-handler.service.spec.ts +++ b/packages/twenty-server/src/engine/core-modules/exception-handler/__tests__/exception-handler.service.spec.ts @@ -1,7 +1,7 @@ import { Test, TestingModule } from '@nestjs/testing'; -import { EXCEPTION_HANDLER_DRIVER } from 'src/engine/integrations/exception-handler/exception-handler.constants'; -import { ExceptionHandlerService } from 'src/engine/integrations/exception-handler/exception-handler.service'; +import { EXCEPTION_HANDLER_DRIVER } from 'src/engine/core-modules/exception-handler/exception-handler.constants'; +import { ExceptionHandlerService } from 'src/engine/core-modules/exception-handler/exception-handler.service'; describe('ExceptionHandlerService', () => { let service: ExceptionHandlerService; diff --git a/packages/twenty-server/src/engine/integrations/exception-handler/drivers/console.driver.ts b/packages/twenty-server/src/engine/core-modules/exception-handler/drivers/console.driver.ts similarity index 74% rename from packages/twenty-server/src/engine/integrations/exception-handler/drivers/console.driver.ts rename to packages/twenty-server/src/engine/core-modules/exception-handler/drivers/console.driver.ts index f77e02085..8f58ebf84 100644 --- a/packages/twenty-server/src/engine/integrations/exception-handler/drivers/console.driver.ts +++ b/packages/twenty-server/src/engine/core-modules/exception-handler/drivers/console.driver.ts @@ -1,8 +1,8 @@ /* eslint-disable no-console */ -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 { ExceptionHandlerUser } from 'src/engine/core-modules/exception-handler/interfaces/exception-handler-user.interface'; +import { ExceptionHandlerOptions } from 'src/engine/core-modules/exception-handler/interfaces/exception-handler-options.interface'; -import { ExceptionHandlerDriverInterface } from 'src/engine/integrations/exception-handler/interfaces'; +import { ExceptionHandlerDriverInterface } from 'src/engine/core-modules/exception-handler/interfaces'; export class ExceptionHandlerConsoleDriver implements ExceptionHandlerDriverInterface diff --git a/packages/twenty-server/src/engine/integrations/exception-handler/drivers/sentry.driver.ts b/packages/twenty-server/src/engine/core-modules/exception-handler/drivers/sentry.driver.ts similarity index 94% rename from packages/twenty-server/src/engine/integrations/exception-handler/drivers/sentry.driver.ts rename to packages/twenty-server/src/engine/core-modules/exception-handler/drivers/sentry.driver.ts index 1ece102d3..6d252c361 100644 --- a/packages/twenty-server/src/engine/integrations/exception-handler/drivers/sentry.driver.ts +++ b/packages/twenty-server/src/engine/core-modules/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/engine/integrations/exception-handler/interfaces/exception-handler-user.interface'; -import { ExceptionHandlerOptions } from 'src/engine/integrations/exception-handler/interfaces/exception-handler-options.interface'; +import { ExceptionHandlerUser } from 'src/engine/core-modules/exception-handler/interfaces/exception-handler-user.interface'; +import { ExceptionHandlerOptions } from 'src/engine/core-modules/exception-handler/interfaces/exception-handler-options.interface'; import { ExceptionHandlerDriverInterface, ExceptionHandlerSentryDriverFactoryOptions, -} from 'src/engine/integrations/exception-handler/interfaces'; +} from 'src/engine/core-modules/exception-handler/interfaces'; export class ExceptionHandlerSentryDriver implements ExceptionHandlerDriverInterface diff --git a/packages/twenty-server/src/engine/integrations/exception-handler/exception-handler.constants.ts b/packages/twenty-server/src/engine/core-modules/exception-handler/exception-handler.constants.ts similarity index 100% rename from packages/twenty-server/src/engine/integrations/exception-handler/exception-handler.constants.ts rename to packages/twenty-server/src/engine/core-modules/exception-handler/exception-handler.constants.ts diff --git a/packages/twenty-server/src/engine/integrations/exception-handler/exception-handler.module-definition.ts b/packages/twenty-server/src/engine/core-modules/exception-handler/exception-handler.module-definition.ts similarity index 75% rename from packages/twenty-server/src/engine/integrations/exception-handler/exception-handler.module-definition.ts rename to packages/twenty-server/src/engine/core-modules/exception-handler/exception-handler.module-definition.ts index 2410d6616..fd0d3a1cc 100644 --- a/packages/twenty-server/src/engine/integrations/exception-handler/exception-handler.module-definition.ts +++ b/packages/twenty-server/src/engine/core-modules/exception-handler/exception-handler.module-definition.ts @@ -1,6 +1,6 @@ import { ConfigurableModuleBuilder } from '@nestjs/common'; -import { ExceptionHandlerModuleOptions } from './interfaces'; +import { ExceptionHandlerModuleOptions } from 'src/engine/core-modules/exception-handler/interfaces'; export const { ConfigurableModuleClass, diff --git a/packages/twenty-server/src/engine/integrations/exception-handler/exception-handler.module-factory.ts b/packages/twenty-server/src/engine/core-modules/exception-handler/exception-handler.module-factory.ts similarity index 86% rename from packages/twenty-server/src/engine/integrations/exception-handler/exception-handler.module-factory.ts rename to packages/twenty-server/src/engine/core-modules/exception-handler/exception-handler.module-factory.ts index fed287d51..006eb4c6c 100644 --- a/packages/twenty-server/src/engine/integrations/exception-handler/exception-handler.module-factory.ts +++ b/packages/twenty-server/src/engine/core-modules/exception-handler/exception-handler.module-factory.ts @@ -1,8 +1,8 @@ import { HttpAdapterHost } from '@nestjs/core'; -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'; +import { EnvironmentService } from 'src/engine/core-modules/environment/environment.service'; +import { OPTIONS_TYPE } from 'src/engine/core-modules/exception-handler/exception-handler.module-definition'; +import { ExceptionHandlerDriver } from 'src/engine/core-modules/exception-handler/interfaces'; /** * ExceptionHandler Module factory diff --git a/packages/twenty-server/src/engine/integrations/exception-handler/exception-handler.module.ts b/packages/twenty-server/src/engine/core-modules/exception-handler/exception-handler.module.ts similarity index 70% rename from packages/twenty-server/src/engine/integrations/exception-handler/exception-handler.module.ts rename to packages/twenty-server/src/engine/core-modules/exception-handler/exception-handler.module.ts index 8c4ae87a8..6760018bf 100644 --- a/packages/twenty-server/src/engine/integrations/exception-handler/exception-handler.module.ts +++ b/packages/twenty-server/src/engine/core-modules/exception-handler/exception-handler.module.ts @@ -1,16 +1,15 @@ import { DynamicModule, Global, Module } from '@nestjs/common'; -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'; -import { EXCEPTION_HANDLER_DRIVER } from './exception-handler.constants'; +import { ExceptionHandlerService } from 'src/engine/core-modules/exception-handler/exception-handler.service'; +import { ExceptionHandlerDriver } from 'src/engine/core-modules/exception-handler/interfaces'; +import { EXCEPTION_HANDLER_DRIVER } from 'src/engine/core-modules/exception-handler/exception-handler.constants'; import { ConfigurableModuleClass, OPTIONS_TYPE, ASYNC_OPTIONS_TYPE, -} from './exception-handler.module-definition'; +} from 'src/engine/core-modules/exception-handler/exception-handler.module-definition'; +import { ExceptionHandlerConsoleDriver } from 'src/engine/core-modules/exception-handler/drivers/console.driver'; +import { ExceptionHandlerSentryDriver } from 'src/engine/core-modules/exception-handler/drivers/sentry.driver'; @Global() @Module({ diff --git a/packages/twenty-server/src/engine/integrations/exception-handler/exception-handler.service.ts b/packages/twenty-server/src/engine/core-modules/exception-handler/exception-handler.service.ts similarity index 69% rename from packages/twenty-server/src/engine/integrations/exception-handler/exception-handler.service.ts rename to packages/twenty-server/src/engine/core-modules/exception-handler/exception-handler.service.ts index ac46ae346..a532587d7 100644 --- a/packages/twenty-server/src/engine/integrations/exception-handler/exception-handler.service.ts +++ b/packages/twenty-server/src/engine/core-modules/exception-handler/exception-handler.service.ts @@ -1,9 +1,9 @@ import { Inject, Injectable } from '@nestjs/common'; -import { ExceptionHandlerOptions } from 'src/engine/integrations/exception-handler/interfaces/exception-handler-options.interface'; +import { ExceptionHandlerOptions } from 'src/engine/core-modules/exception-handler/interfaces/exception-handler-options.interface'; -import { ExceptionHandlerDriverInterface } from 'src/engine/integrations/exception-handler/interfaces'; -import { EXCEPTION_HANDLER_DRIVER } from 'src/engine/integrations/exception-handler/exception-handler.constants'; +import { ExceptionHandlerDriverInterface } from 'src/engine/core-modules/exception-handler/interfaces'; +import { EXCEPTION_HANDLER_DRIVER } from 'src/engine/core-modules/exception-handler/exception-handler.constants'; @Injectable() export class ExceptionHandlerService { diff --git a/packages/twenty-server/src/engine/integrations/exception-handler/hooks/use-sentry-tracing.ts b/packages/twenty-server/src/engine/core-modules/exception-handler/hooks/use-sentry-tracing.ts similarity index 100% rename from packages/twenty-server/src/engine/integrations/exception-handler/hooks/use-sentry-tracing.ts rename to packages/twenty-server/src/engine/core-modules/exception-handler/hooks/use-sentry-tracing.ts diff --git a/packages/twenty-server/src/engine/core-modules/exception-handler/interfaces/exception-handler-driver.interface.ts b/packages/twenty-server/src/engine/core-modules/exception-handler/interfaces/exception-handler-driver.interface.ts new file mode 100644 index 000000000..361d867ff --- /dev/null +++ b/packages/twenty-server/src/engine/core-modules/exception-handler/interfaces/exception-handler-driver.interface.ts @@ -0,0 +1,10 @@ +import { ExceptionHandlerOptions } from 'src/engine/core-modules/exception-handler/interfaces/exception-handler-options.interface'; +import { ExceptionHandlerUser } from 'src/engine/core-modules/exception-handler/interfaces/exception-handler-user.interface'; + +export interface ExceptionHandlerDriverInterface { + captureExceptions( + exceptions: ReadonlyArray<any>, + options?: ExceptionHandlerOptions, + ): string[]; + captureMessage(message: string, user?: ExceptionHandlerUser): void; +} diff --git a/packages/twenty-server/src/engine/integrations/exception-handler/interfaces/exception-handler-options.interface.ts b/packages/twenty-server/src/engine/core-modules/exception-handler/interfaces/exception-handler-options.interface.ts similarity index 63% rename from packages/twenty-server/src/engine/integrations/exception-handler/interfaces/exception-handler-options.interface.ts rename to packages/twenty-server/src/engine/core-modules/exception-handler/interfaces/exception-handler-options.interface.ts index f01c7e169..73dd468ac 100644 --- a/packages/twenty-server/src/engine/integrations/exception-handler/interfaces/exception-handler-options.interface.ts +++ b/packages/twenty-server/src/engine/core-modules/exception-handler/interfaces/exception-handler-options.interface.ts @@ -1,6 +1,6 @@ import { OperationTypeNode } from 'graphql'; -import { ExceptionHandlerUser } from './exception-handler-user.interface'; +import { ExceptionHandlerUser } from 'src/engine/core-modules/exception-handler/interfaces/exception-handler-user.interface'; export interface ExceptionHandlerOptions { operation?: { diff --git a/packages/twenty-server/src/engine/integrations/exception-handler/interfaces/exception-handler-user.interface.ts b/packages/twenty-server/src/engine/core-modules/exception-handler/interfaces/exception-handler-user.interface.ts similarity index 100% rename from packages/twenty-server/src/engine/integrations/exception-handler/interfaces/exception-handler-user.interface.ts rename to packages/twenty-server/src/engine/core-modules/exception-handler/interfaces/exception-handler-user.interface.ts diff --git a/packages/twenty-server/src/engine/integrations/exception-handler/interfaces/exception-handler.interface.ts b/packages/twenty-server/src/engine/core-modules/exception-handler/interfaces/exception-handler.interface.ts similarity index 100% rename from packages/twenty-server/src/engine/integrations/exception-handler/interfaces/exception-handler.interface.ts rename to packages/twenty-server/src/engine/core-modules/exception-handler/interfaces/exception-handler.interface.ts diff --git a/packages/twenty-server/src/engine/core-modules/exception-handler/interfaces/index.ts b/packages/twenty-server/src/engine/core-modules/exception-handler/interfaces/index.ts new file mode 100644 index 000000000..7ebf9f6c7 --- /dev/null +++ b/packages/twenty-server/src/engine/core-modules/exception-handler/interfaces/index.ts @@ -0,0 +1,2 @@ +export * from 'src/engine/core-modules/exception-handler/interfaces/exception-handler.interface'; +export * from 'src/engine/core-modules/exception-handler/interfaces/exception-handler-driver.interface'; diff --git a/packages/twenty-server/src/engine/integrations/file-storage/__tests__/file-storage.service.spec.ts b/packages/twenty-server/src/engine/core-modules/file-storage/__tests__/file-storage.service.spec.ts similarity index 82% rename from packages/twenty-server/src/engine/integrations/file-storage/__tests__/file-storage.service.spec.ts rename to packages/twenty-server/src/engine/core-modules/file-storage/__tests__/file-storage.service.spec.ts index 4ef268cf6..21210726e 100644 --- a/packages/twenty-server/src/engine/integrations/file-storage/__tests__/file-storage.service.spec.ts +++ b/packages/twenty-server/src/engine/core-modules/file-storage/__tests__/file-storage.service.spec.ts @@ -1,7 +1,7 @@ import { Test, TestingModule } from '@nestjs/testing'; -import { STORAGE_DRIVER } from 'src/engine/integrations/file-storage/file-storage.constants'; -import { FileStorageService } from 'src/engine/integrations/file-storage/file-storage.service'; +import { STORAGE_DRIVER } from 'src/engine/core-modules/file-storage/file-storage.constants'; +import { FileStorageService } from 'src/engine/core-modules/file-storage/file-storage.service'; describe('FileStorageService', () => { let service: FileStorageService; diff --git a/packages/twenty-server/src/engine/integrations/file-storage/drivers/interfaces/storage-driver.interface.ts b/packages/twenty-server/src/engine/core-modules/file-storage/drivers/interfaces/storage-driver.interface.ts similarity index 100% rename from packages/twenty-server/src/engine/integrations/file-storage/drivers/interfaces/storage-driver.interface.ts rename to packages/twenty-server/src/engine/core-modules/file-storage/drivers/interfaces/storage-driver.interface.ts diff --git a/packages/twenty-server/src/engine/integrations/file-storage/drivers/local.driver.ts b/packages/twenty-server/src/engine/core-modules/file-storage/drivers/local.driver.ts similarity index 95% rename from packages/twenty-server/src/engine/integrations/file-storage/drivers/local.driver.ts rename to packages/twenty-server/src/engine/core-modules/file-storage/drivers/local.driver.ts index fdfa3943a..3bbcc5493 100644 --- a/packages/twenty-server/src/engine/integrations/file-storage/drivers/local.driver.ts +++ b/packages/twenty-server/src/engine/core-modules/file-storage/drivers/local.driver.ts @@ -6,9 +6,8 @@ import { Readable } from 'stream'; import { FileStorageException, FileStorageExceptionCode, -} from 'src/engine/integrations/file-storage/interfaces/file-storage-exception'; - -import { StorageDriver } from './interfaces/storage-driver.interface'; +} from 'src/engine/core-modules/file-storage/interfaces/file-storage-exception'; +import { StorageDriver } from 'src/engine/core-modules/file-storage/drivers/interfaces/storage-driver.interface'; export interface LocalDriverOptions { storagePath: string; diff --git a/packages/twenty-server/src/engine/integrations/file-storage/drivers/s3.driver.ts b/packages/twenty-server/src/engine/core-modules/file-storage/drivers/s3.driver.ts similarity index 97% rename from packages/twenty-server/src/engine/integrations/file-storage/drivers/s3.driver.ts rename to packages/twenty-server/src/engine/core-modules/file-storage/drivers/s3.driver.ts index 4c4adb6bb..765ded5b0 100644 --- a/packages/twenty-server/src/engine/integrations/file-storage/drivers/s3.driver.ts +++ b/packages/twenty-server/src/engine/core-modules/file-storage/drivers/s3.driver.ts @@ -18,12 +18,11 @@ import { import { FileStorageException, FileStorageExceptionCode, -} from 'src/engine/integrations/file-storage/interfaces/file-storage-exception'; +} from 'src/engine/core-modules/file-storage/interfaces/file-storage-exception'; +import { StorageDriver } from 'src/engine/core-modules/file-storage/drivers/interfaces/storage-driver.interface'; import { isDefined } from 'src/utils/is-defined'; -import { StorageDriver } from './interfaces/storage-driver.interface'; - export interface S3DriverOptions extends S3ClientConfig { bucketName: string; endpoint?: string; diff --git a/packages/twenty-server/src/engine/integrations/file-storage/file-storage.constants.ts b/packages/twenty-server/src/engine/core-modules/file-storage/file-storage.constants.ts similarity index 100% rename from packages/twenty-server/src/engine/integrations/file-storage/file-storage.constants.ts rename to packages/twenty-server/src/engine/core-modules/file-storage/file-storage.constants.ts diff --git a/packages/twenty-server/src/engine/integrations/file-storage/file-storage.module-definition.ts b/packages/twenty-server/src/engine/core-modules/file-storage/file-storage.module-definition.ts similarity index 76% rename from packages/twenty-server/src/engine/integrations/file-storage/file-storage.module-definition.ts rename to packages/twenty-server/src/engine/core-modules/file-storage/file-storage.module-definition.ts index 2b81d2cdb..4d453abf4 100644 --- a/packages/twenty-server/src/engine/integrations/file-storage/file-storage.module-definition.ts +++ b/packages/twenty-server/src/engine/core-modules/file-storage/file-storage.module-definition.ts @@ -1,6 +1,6 @@ import { ConfigurableModuleBuilder } from '@nestjs/common'; -import { FileStorageModuleOptions } from './interfaces'; +import { FileStorageModuleOptions } from 'src/engine/core-modules/file-storage/interfaces'; export const { ConfigurableModuleClass, diff --git a/packages/twenty-server/src/engine/integrations/file-storage/file-storage.module-factory.ts b/packages/twenty-server/src/engine/core-modules/file-storage/file-storage.module-factory.ts similarity index 93% rename from packages/twenty-server/src/engine/integrations/file-storage/file-storage.module-factory.ts rename to packages/twenty-server/src/engine/core-modules/file-storage/file-storage.module-factory.ts index f28597500..1683645c6 100644 --- a/packages/twenty-server/src/engine/integrations/file-storage/file-storage.module-factory.ts +++ b/packages/twenty-server/src/engine/core-modules/file-storage/file-storage.module-factory.ts @@ -1,10 +1,10 @@ import { fromNodeProviderChain } from '@aws-sdk/credential-providers'; -import { EnvironmentService } from 'src/engine/integrations/environment/environment.service'; +import { EnvironmentService } from 'src/engine/core-modules/environment/environment.service'; import { FileStorageModuleOptions, StorageDriverType, -} from 'src/engine/integrations/file-storage/interfaces'; +} from 'src/engine/core-modules/file-storage/interfaces'; import { resolveAbsolutePath } from 'src/utils/resolve-absolute-path'; /** diff --git a/packages/twenty-server/src/engine/integrations/file-storage/file-storage.module.ts b/packages/twenty-server/src/engine/core-modules/file-storage/file-storage.module.ts similarity index 73% rename from packages/twenty-server/src/engine/integrations/file-storage/file-storage.module.ts rename to packages/twenty-server/src/engine/core-modules/file-storage/file-storage.module.ts index d1f0f64de..7c8a5e683 100644 --- a/packages/twenty-server/src/engine/integrations/file-storage/file-storage.module.ts +++ b/packages/twenty-server/src/engine/core-modules/file-storage/file-storage.module.ts @@ -1,14 +1,13 @@ import { DynamicModule, Global } from '@nestjs/common'; -import { FileStorageService } from './file-storage.service'; +import { FileStorageService } from 'src/engine/core-modules/file-storage/file-storage.service'; import { FileStorageModuleAsyncOptions, FileStorageModuleOptions, -} from './interfaces'; -import { STORAGE_DRIVER } from './file-storage.constants'; - -import { LocalDriver } from './drivers/local.driver'; -import { S3Driver } from './drivers/s3.driver'; +} from 'src/engine/core-modules/file-storage/interfaces'; +import { STORAGE_DRIVER } from 'src/engine/core-modules/file-storage/file-storage.constants'; +import { LocalDriver } from 'src/engine/core-modules/file-storage/drivers/local.driver'; +import { S3Driver } from 'src/engine/core-modules/file-storage/drivers/s3.driver'; @Global() export class FileStorageModule { diff --git a/packages/twenty-server/src/engine/integrations/file-storage/file-storage.service.ts b/packages/twenty-server/src/engine/core-modules/file-storage/file-storage.service.ts similarity index 83% rename from packages/twenty-server/src/engine/integrations/file-storage/file-storage.service.ts rename to packages/twenty-server/src/engine/core-modules/file-storage/file-storage.service.ts index a6eeb6c20..f23822b8a 100644 --- a/packages/twenty-server/src/engine/integrations/file-storage/file-storage.service.ts +++ b/packages/twenty-server/src/engine/core-modules/file-storage/file-storage.service.ts @@ -2,9 +2,9 @@ import { Inject, Injectable } from '@nestjs/common'; import { Readable } from 'stream'; -import { STORAGE_DRIVER } from './file-storage.constants'; +import { StorageDriver } from 'src/engine/core-modules/file-storage/drivers/interfaces/storage-driver.interface'; -import { StorageDriver } from './drivers/interfaces/storage-driver.interface'; +import { STORAGE_DRIVER } from 'src/engine/core-modules/file-storage/file-storage.constants'; @Injectable() export class FileStorageService implements StorageDriver { diff --git a/packages/twenty-server/src/engine/integrations/file-storage/interfaces/file-storage-exception.ts b/packages/twenty-server/src/engine/core-modules/file-storage/interfaces/file-storage-exception.ts similarity index 100% rename from packages/twenty-server/src/engine/integrations/file-storage/interfaces/file-storage-exception.ts rename to packages/twenty-server/src/engine/core-modules/file-storage/interfaces/file-storage-exception.ts diff --git a/packages/twenty-server/src/engine/integrations/file-storage/interfaces/file-storage.interface.ts b/packages/twenty-server/src/engine/core-modules/file-storage/interfaces/file-storage.interface.ts similarity index 85% rename from packages/twenty-server/src/engine/integrations/file-storage/interfaces/file-storage.interface.ts rename to packages/twenty-server/src/engine/core-modules/file-storage/interfaces/file-storage.interface.ts index 9d85a83ec..cff95d736 100644 --- a/packages/twenty-server/src/engine/integrations/file-storage/interfaces/file-storage.interface.ts +++ b/packages/twenty-server/src/engine/core-modules/file-storage/interfaces/file-storage.interface.ts @@ -1,7 +1,7 @@ import { FactoryProvider, ModuleMetadata } from '@nestjs/common'; -import { S3DriverOptions } from 'src/engine/integrations/file-storage/drivers/s3.driver'; -import { LocalDriverOptions } from 'src/engine/integrations/file-storage/drivers/local.driver'; +import { S3DriverOptions } from 'src/engine/core-modules/file-storage/drivers/s3.driver'; +import { LocalDriverOptions } from 'src/engine/core-modules/file-storage/drivers/local.driver'; export enum StorageDriverType { S3 = 's3', diff --git a/packages/twenty-server/src/engine/core-modules/file-storage/interfaces/index.ts b/packages/twenty-server/src/engine/core-modules/file-storage/interfaces/index.ts new file mode 100644 index 000000000..4ab4d7061 --- /dev/null +++ b/packages/twenty-server/src/engine/core-modules/file-storage/interfaces/index.ts @@ -0,0 +1 @@ +export * from 'src/engine/core-modules/file-storage/interfaces/file-storage.interface'; diff --git a/packages/twenty-server/src/engine/integrations/file-storage/utils/read-file-content.ts b/packages/twenty-server/src/engine/core-modules/file-storage/utils/read-file-content.ts similarity index 100% rename from packages/twenty-server/src/engine/integrations/file-storage/utils/read-file-content.ts rename to packages/twenty-server/src/engine/core-modules/file-storage/utils/read-file-content.ts diff --git a/packages/twenty-server/src/engine/core-modules/file/controllers/file.controller.ts b/packages/twenty-server/src/engine/core-modules/file/controllers/file.controller.ts index 2124c2b17..967df3119 100644 --- a/packages/twenty-server/src/engine/core-modules/file/controllers/file.controller.ts +++ b/packages/twenty-server/src/engine/core-modules/file/controllers/file.controller.ts @@ -5,7 +5,7 @@ import { Response } from 'express'; import { FileStorageException, FileStorageExceptionCode, -} from 'src/engine/integrations/file-storage/interfaces/file-storage-exception'; +} from 'src/engine/core-modules/file-storage/interfaces/file-storage-exception'; import { checkFilePath, diff --git a/packages/twenty-server/src/engine/core-modules/file/file-upload/file-upload.module.ts b/packages/twenty-server/src/engine/core-modules/file/file-upload/file-upload.module.ts index d33c45f7a..d0de77e23 100644 --- a/packages/twenty-server/src/engine/core-modules/file/file-upload/file-upload.module.ts +++ b/packages/twenty-server/src/engine/core-modules/file/file-upload/file-upload.module.ts @@ -3,7 +3,7 @@ import { Module } from '@nestjs/common'; import { FileUploadResolver } from 'src/engine/core-modules/file/file-upload/resolvers/file-upload.resolver'; import { FileUploadService } from 'src/engine/core-modules/file/file-upload/services/file-upload.service'; import { FileModule } from 'src/engine/core-modules/file/file.module'; -import { EnvironmentService } from 'src/engine/integrations/environment/environment.service'; +import { EnvironmentService } from 'src/engine/core-modules/environment/environment.service'; @Module({ imports: [FileModule], diff --git a/packages/twenty-server/src/engine/core-modules/file/file-upload/services/file-upload.service.ts b/packages/twenty-server/src/engine/core-modules/file/file-upload/services/file-upload.service.ts index e408178e8..80cd2ffd9 100644 --- a/packages/twenty-server/src/engine/core-modules/file/file-upload/services/file-upload.service.ts +++ b/packages/twenty-server/src/engine/core-modules/file/file-upload/services/file-upload.service.ts @@ -9,7 +9,7 @@ import { FileFolder } from 'src/engine/core-modules/file/interfaces/file-folder. import { settings } from 'src/engine/constants/settings'; import { FileService } from 'src/engine/core-modules/file/services/file.service'; -import { FileStorageService } from 'src/engine/integrations/file-storage/file-storage.service'; +import { FileStorageService } from 'src/engine/core-modules/file-storage/file-storage.service'; import { getCropSize } from 'src/utils/image'; @Injectable() diff --git a/packages/twenty-server/src/engine/core-modules/file/file.module.ts b/packages/twenty-server/src/engine/core-modules/file/file.module.ts index c7d4c838c..73afa1559 100644 --- a/packages/twenty-server/src/engine/core-modules/file/file.module.ts +++ b/packages/twenty-server/src/engine/core-modules/file/file.module.ts @@ -2,7 +2,7 @@ import { Module } from '@nestjs/common'; import { FilePathGuard } from 'src/engine/core-modules/file/guards/file-path-guard'; import { JwtModule } from 'src/engine/core-modules/jwt/jwt.module'; -import { EnvironmentService } from 'src/engine/integrations/environment/environment.service'; +import { EnvironmentService } from 'src/engine/core-modules/environment/environment.service'; import { FileController } from './controllers/file.controller'; import { FileService } from './services/file.service'; diff --git a/packages/twenty-server/src/engine/core-modules/file/guards/file-path-guard.ts b/packages/twenty-server/src/engine/core-modules/file/guards/file-path-guard.ts index db9f466c5..890d060dd 100644 --- a/packages/twenty-server/src/engine/core-modules/file/guards/file-path-guard.ts +++ b/packages/twenty-server/src/engine/core-modules/file/guards/file-path-guard.ts @@ -7,7 +7,7 @@ import { } from '@nestjs/common'; import { JwtWrapperService } from 'src/engine/core-modules/jwt/services/jwt-wrapper.service'; -import { EnvironmentService } from 'src/engine/integrations/environment/environment.service'; +import { EnvironmentService } from 'src/engine/core-modules/environment/environment.service'; @Injectable() export class FilePathGuard implements CanActivate { diff --git a/packages/twenty-server/src/engine/core-modules/file/services/file.service.spec.ts b/packages/twenty-server/src/engine/core-modules/file/services/file.service.spec.ts index 3a6570000..ecc5ee5fa 100644 --- a/packages/twenty-server/src/engine/core-modules/file/services/file.service.spec.ts +++ b/packages/twenty-server/src/engine/core-modules/file/services/file.service.spec.ts @@ -1,8 +1,8 @@ import { Test, TestingModule } from '@nestjs/testing'; import { JwtWrapperService } from 'src/engine/core-modules/jwt/services/jwt-wrapper.service'; -import { EnvironmentService } from 'src/engine/integrations/environment/environment.service'; -import { FileStorageService } from 'src/engine/integrations/file-storage/file-storage.service'; +import { EnvironmentService } from 'src/engine/core-modules/environment/environment.service'; +import { FileStorageService } from 'src/engine/core-modules/file-storage/file-storage.service'; import { FileService } from './file.service'; diff --git a/packages/twenty-server/src/engine/core-modules/file/services/file.service.ts b/packages/twenty-server/src/engine/core-modules/file/services/file.service.ts index d56d769f9..a1c59e700 100644 --- a/packages/twenty-server/src/engine/core-modules/file/services/file.service.ts +++ b/packages/twenty-server/src/engine/core-modules/file/services/file.service.ts @@ -6,8 +6,8 @@ import { addMilliseconds } from 'date-fns'; import ms from 'ms'; import { JwtWrapperService } from 'src/engine/core-modules/jwt/services/jwt-wrapper.service'; -import { EnvironmentService } from 'src/engine/integrations/environment/environment.service'; -import { FileStorageService } from 'src/engine/integrations/file-storage/file-storage.service'; +import { EnvironmentService } from 'src/engine/core-modules/environment/environment.service'; +import { FileStorageService } from 'src/engine/core-modules/file-storage/file-storage.service'; @Injectable() export class FileService { diff --git a/packages/twenty-server/src/engine/core-modules/graphql/engine-graphql.module.ts b/packages/twenty-server/src/engine/core-modules/graphql/engine-graphql.module.ts index ae592e22c..0df672199 100644 --- a/packages/twenty-server/src/engine/core-modules/graphql/engine-graphql.module.ts +++ b/packages/twenty-server/src/engine/core-modules/graphql/engine-graphql.module.ts @@ -1,7 +1,7 @@ import { Module } from '@nestjs/common'; import { useGraphQLErrorHandlerHook } from 'src/engine/core-modules/graphql/hooks/use-graphql-error-handler.hook'; -import { ExceptionHandlerModule } from 'src/engine/integrations/exception-handler/exception-handler.module'; +import { ExceptionHandlerModule } from 'src/engine/core-modules/exception-handler/exception-handler.module'; @Module({ imports: [ExceptionHandlerModule], diff --git a/packages/twenty-server/src/engine/core-modules/graphql/hooks/use-graphql-error-handler.hook.ts b/packages/twenty-server/src/engine/core-modules/graphql/hooks/use-graphql-error-handler.hook.ts index 9785cde8a..ff466d3f3 100644 --- a/packages/twenty-server/src/engine/core-modules/graphql/hooks/use-graphql-error-handler.hook.ts +++ b/packages/twenty-server/src/engine/core-modules/graphql/hooks/use-graphql-error-handler.hook.ts @@ -11,7 +11,7 @@ import { GraphQLContext } from 'src/engine/api/graphql/graphql-config/interfaces import { generateGraphQLErrorFromError } from 'src/engine/core-modules/graphql/utils/generate-graphql-error-from-error.util'; import { BaseGraphQLError } from 'src/engine/core-modules/graphql/utils/graphql-errors.util'; import { shouldCaptureException } from 'src/engine/core-modules/graphql/utils/should-capture-exception.util'; -import { ExceptionHandlerService } from 'src/engine/integrations/exception-handler/exception-handler.service'; +import { ExceptionHandlerService } from 'src/engine/core-modules/exception-handler/exception-handler.service'; type GraphQLErrorHandlerHookOptions = { /** diff --git a/packages/twenty-server/src/engine/core-modules/jwt/jwt.module.ts b/packages/twenty-server/src/engine/core-modules/jwt/jwt.module.ts index 6acbd76a0..306f1640e 100644 --- a/packages/twenty-server/src/engine/core-modules/jwt/jwt.module.ts +++ b/packages/twenty-server/src/engine/core-modules/jwt/jwt.module.ts @@ -3,8 +3,8 @@ import { Module } from '@nestjs/common'; import { JwtModule as NestJwtModule } from '@nestjs/jwt'; import { JwtWrapperService } from 'src/engine/core-modules/jwt/services/jwt-wrapper.service'; -import { EnvironmentModule } from 'src/engine/integrations/environment/environment.module'; -import { EnvironmentService } from 'src/engine/integrations/environment/environment.service'; +import { EnvironmentModule } from 'src/engine/core-modules/environment/environment.module'; +import { EnvironmentService } from 'src/engine/core-modules/environment/environment.service'; const InternalJwtModule = NestJwtModule.registerAsync({ useFactory: async (environmentService: EnvironmentService) => { diff --git a/packages/twenty-server/src/engine/integrations/llm-chat-model/drivers/interfaces/llm-prompt-template-driver.interface.ts b/packages/twenty-server/src/engine/core-modules/llm-chat-model/drivers/interfaces/llm-prompt-template-driver.interface.ts similarity index 100% rename from packages/twenty-server/src/engine/integrations/llm-chat-model/drivers/interfaces/llm-prompt-template-driver.interface.ts rename to packages/twenty-server/src/engine/core-modules/llm-chat-model/drivers/interfaces/llm-prompt-template-driver.interface.ts diff --git a/packages/twenty-server/src/engine/integrations/llm-chat-model/drivers/openai.driver.ts b/packages/twenty-server/src/engine/core-modules/llm-chat-model/drivers/openai.driver.ts similarity index 89% rename from packages/twenty-server/src/engine/integrations/llm-chat-model/drivers/openai.driver.ts rename to packages/twenty-server/src/engine/core-modules/llm-chat-model/drivers/openai.driver.ts index 652a854ef..d1510b44d 100644 --- a/packages/twenty-server/src/engine/integrations/llm-chat-model/drivers/openai.driver.ts +++ b/packages/twenty-server/src/engine/core-modules/llm-chat-model/drivers/openai.driver.ts @@ -1,7 +1,7 @@ import { BaseChatModel } from '@langchain/core/language_models/chat_models'; import { ChatOpenAI } from '@langchain/openai'; -import { LLMChatModelDriver } from 'src/engine/integrations/llm-chat-model/drivers/interfaces/llm-prompt-template-driver.interface'; +import { LLMChatModelDriver } from 'src/engine/core-modules/llm-chat-model/drivers/interfaces/llm-prompt-template-driver.interface'; export class OpenAIDriver implements LLMChatModelDriver { private chatModel: BaseChatModel; diff --git a/packages/twenty-server/src/engine/integrations/llm-chat-model/interfaces/llm-chat-model.interface.ts b/packages/twenty-server/src/engine/core-modules/llm-chat-model/interfaces/llm-chat-model.interface.ts similarity index 100% rename from packages/twenty-server/src/engine/integrations/llm-chat-model/interfaces/llm-chat-model.interface.ts rename to packages/twenty-server/src/engine/core-modules/llm-chat-model/interfaces/llm-chat-model.interface.ts diff --git a/packages/twenty-server/src/engine/integrations/llm-chat-model/llm-chat-model.constants.ts b/packages/twenty-server/src/engine/core-modules/llm-chat-model/llm-chat-model.constants.ts similarity index 100% rename from packages/twenty-server/src/engine/integrations/llm-chat-model/llm-chat-model.constants.ts rename to packages/twenty-server/src/engine/core-modules/llm-chat-model/llm-chat-model.constants.ts diff --git a/packages/twenty-server/src/engine/integrations/llm-chat-model/llm-chat-model.module-factory.ts b/packages/twenty-server/src/engine/core-modules/llm-chat-model/llm-chat-model.module-factory.ts similarity index 76% rename from packages/twenty-server/src/engine/integrations/llm-chat-model/llm-chat-model.module-factory.ts rename to packages/twenty-server/src/engine/core-modules/llm-chat-model/llm-chat-model.module-factory.ts index 2d91f280c..e0ea03e54 100644 --- a/packages/twenty-server/src/engine/integrations/llm-chat-model/llm-chat-model.module-factory.ts +++ b/packages/twenty-server/src/engine/core-modules/llm-chat-model/llm-chat-model.module-factory.ts @@ -1,6 +1,6 @@ -import { LLMChatModelDriver } from 'src/engine/integrations/llm-chat-model/interfaces/llm-chat-model.interface'; +import { LLMChatModelDriver } from 'src/engine/core-modules/llm-chat-model/interfaces/llm-chat-model.interface'; -import { EnvironmentService } from 'src/engine/integrations/environment/environment.service'; +import { EnvironmentService } from 'src/engine/core-modules/environment/environment.service'; export const llmChatModelModuleFactory = ( environmentService: EnvironmentService, diff --git a/packages/twenty-server/src/engine/integrations/llm-chat-model/llm-chat-model.module.ts b/packages/twenty-server/src/engine/core-modules/llm-chat-model/llm-chat-model.module.ts similarity index 77% rename from packages/twenty-server/src/engine/integrations/llm-chat-model/llm-chat-model.module.ts rename to packages/twenty-server/src/engine/core-modules/llm-chat-model/llm-chat-model.module.ts index 279993f72..518c3389a 100644 --- a/packages/twenty-server/src/engine/integrations/llm-chat-model/llm-chat-model.module.ts +++ b/packages/twenty-server/src/engine/core-modules/llm-chat-model/llm-chat-model.module.ts @@ -3,11 +3,11 @@ import { DynamicModule, Global } from '@nestjs/common'; import { LLMChatModelDriver, LLMChatModelModuleAsyncOptions, -} from 'src/engine/integrations/llm-chat-model/interfaces/llm-chat-model.interface'; +} from 'src/engine/core-modules/llm-chat-model/interfaces/llm-chat-model.interface'; -import { LLM_CHAT_MODEL_DRIVER } from 'src/engine/integrations/llm-chat-model/llm-chat-model.constants'; -import { OpenAIDriver } from 'src/engine/integrations/llm-chat-model/drivers/openai.driver'; -import { LLMChatModelService } from 'src/engine/integrations/llm-chat-model/llm-chat-model.service'; +import { LLM_CHAT_MODEL_DRIVER } from 'src/engine/core-modules/llm-chat-model/llm-chat-model.constants'; +import { OpenAIDriver } from 'src/engine/core-modules/llm-chat-model/drivers/openai.driver'; +import { LLMChatModelService } from 'src/engine/core-modules/llm-chat-model/llm-chat-model.service'; @Global() export class LLMChatModelModule { diff --git a/packages/twenty-server/src/engine/integrations/llm-chat-model/llm-chat-model.service.ts b/packages/twenty-server/src/engine/core-modules/llm-chat-model/llm-chat-model.service.ts similarity index 74% rename from packages/twenty-server/src/engine/integrations/llm-chat-model/llm-chat-model.service.ts rename to packages/twenty-server/src/engine/core-modules/llm-chat-model/llm-chat-model.service.ts index 62beea8c6..9a98eeb3c 100644 --- a/packages/twenty-server/src/engine/integrations/llm-chat-model/llm-chat-model.service.ts +++ b/packages/twenty-server/src/engine/core-modules/llm-chat-model/llm-chat-model.service.ts @@ -1,8 +1,8 @@ import { Injectable, Inject } from '@nestjs/common'; -import { LLMChatModelDriver } from 'src/engine/integrations/llm-chat-model/drivers/interfaces/llm-prompt-template-driver.interface'; +import { LLMChatModelDriver } from 'src/engine/core-modules/llm-chat-model/drivers/interfaces/llm-prompt-template-driver.interface'; -import { LLM_CHAT_MODEL_DRIVER } from 'src/engine/integrations/llm-chat-model/llm-chat-model.constants'; +import { LLM_CHAT_MODEL_DRIVER } from 'src/engine/core-modules/llm-chat-model/llm-chat-model.constants'; @Injectable() export class LLMChatModelService { diff --git a/packages/twenty-server/src/engine/integrations/llm-tracing/drivers/console.driver.ts b/packages/twenty-server/src/engine/core-modules/llm-tracing/drivers/console.driver.ts similarity index 92% rename from packages/twenty-server/src/engine/integrations/llm-tracing/drivers/console.driver.ts rename to packages/twenty-server/src/engine/core-modules/llm-tracing/drivers/console.driver.ts index 6c1ae4015..754df2586 100644 --- a/packages/twenty-server/src/engine/integrations/llm-tracing/drivers/console.driver.ts +++ b/packages/twenty-server/src/engine/core-modules/llm-tracing/drivers/console.driver.ts @@ -3,7 +3,7 @@ import { BaseCallbackHandler } from '@langchain/core/callbacks/base'; import { Run } from '@langchain/core/tracers/base'; import { ConsoleCallbackHandler } from '@langchain/core/tracers/console'; -import { LLMTracingDriver } from 'src/engine/integrations/llm-tracing/drivers/interfaces/llm-tracing-driver.interface'; +import { LLMTracingDriver } from 'src/engine/core-modules/llm-tracing/drivers/interfaces/llm-tracing-driver.interface'; class WithMetadataConsoleCallbackHandler extends ConsoleCallbackHandler { private metadata: Record<string, unknown>; diff --git a/packages/twenty-server/src/engine/integrations/llm-tracing/drivers/interfaces/llm-tracing-driver.interface.ts b/packages/twenty-server/src/engine/core-modules/llm-tracing/drivers/interfaces/llm-tracing-driver.interface.ts similarity index 100% rename from packages/twenty-server/src/engine/integrations/llm-tracing/drivers/interfaces/llm-tracing-driver.interface.ts rename to packages/twenty-server/src/engine/core-modules/llm-tracing/drivers/interfaces/llm-tracing-driver.interface.ts diff --git a/packages/twenty-server/src/engine/integrations/llm-tracing/drivers/langfuse.driver.ts b/packages/twenty-server/src/engine/core-modules/llm-tracing/drivers/langfuse.driver.ts similarity index 91% rename from packages/twenty-server/src/engine/integrations/llm-tracing/drivers/langfuse.driver.ts rename to packages/twenty-server/src/engine/core-modules/llm-tracing/drivers/langfuse.driver.ts index b9b84aad0..3d44ba970 100644 --- a/packages/twenty-server/src/engine/integrations/llm-tracing/drivers/langfuse.driver.ts +++ b/packages/twenty-server/src/engine/core-modules/llm-tracing/drivers/langfuse.driver.ts @@ -1,7 +1,7 @@ import { BaseCallbackHandler } from '@langchain/core/callbacks/base'; import CallbackHandler from 'langfuse-langchain'; -import { LLMTracingDriver } from 'src/engine/integrations/llm-tracing/drivers/interfaces/llm-tracing-driver.interface'; +import { LLMTracingDriver } from 'src/engine/core-modules/llm-tracing/drivers/interfaces/llm-tracing-driver.interface'; export interface LangfuseDriverOptions { secretKey: string; diff --git a/packages/twenty-server/src/engine/integrations/llm-tracing/interfaces/llm-tracing.interface.ts b/packages/twenty-server/src/engine/core-modules/llm-tracing/interfaces/llm-tracing.interface.ts similarity index 91% rename from packages/twenty-server/src/engine/integrations/llm-tracing/interfaces/llm-tracing.interface.ts rename to packages/twenty-server/src/engine/core-modules/llm-tracing/interfaces/llm-tracing.interface.ts index a97031499..99dcdbd15 100644 --- a/packages/twenty-server/src/engine/integrations/llm-tracing/interfaces/llm-tracing.interface.ts +++ b/packages/twenty-server/src/engine/core-modules/llm-tracing/interfaces/llm-tracing.interface.ts @@ -1,6 +1,6 @@ import { ModuleMetadata, FactoryProvider } from '@nestjs/common'; -import { LangfuseDriverOptions } from 'src/engine/integrations/llm-tracing/drivers/langfuse.driver'; +import { LangfuseDriverOptions } from 'src/engine/core-modules/llm-tracing/drivers/langfuse.driver'; export enum LLMTracingDriver { Langfuse = 'langfuse', diff --git a/packages/twenty-server/src/engine/integrations/llm-tracing/llm-tracing.constants.ts b/packages/twenty-server/src/engine/core-modules/llm-tracing/llm-tracing.constants.ts similarity index 100% rename from packages/twenty-server/src/engine/integrations/llm-tracing/llm-tracing.constants.ts rename to packages/twenty-server/src/engine/core-modules/llm-tracing/llm-tracing.constants.ts diff --git a/packages/twenty-server/src/engine/integrations/llm-tracing/llm-tracing.module-factory.ts b/packages/twenty-server/src/engine/core-modules/llm-tracing/llm-tracing.module-factory.ts similarity index 88% rename from packages/twenty-server/src/engine/integrations/llm-tracing/llm-tracing.module-factory.ts rename to packages/twenty-server/src/engine/core-modules/llm-tracing/llm-tracing.module-factory.ts index 754158e2a..94abe251e 100644 --- a/packages/twenty-server/src/engine/integrations/llm-tracing/llm-tracing.module-factory.ts +++ b/packages/twenty-server/src/engine/core-modules/llm-tracing/llm-tracing.module-factory.ts @@ -1,6 +1,6 @@ -import { LLMTracingDriver } from 'src/engine/integrations/llm-tracing/interfaces/llm-tracing.interface'; +import { LLMTracingDriver } from 'src/engine/core-modules/llm-tracing/interfaces/llm-tracing.interface'; -import { EnvironmentService } from 'src/engine/integrations/environment/environment.service'; +import { EnvironmentService } from 'src/engine/core-modules/environment/environment.service'; export const llmTracingModuleFactory = ( environmentService: EnvironmentService, diff --git a/packages/twenty-server/src/engine/integrations/llm-tracing/llm-tracing.module.ts b/packages/twenty-server/src/engine/core-modules/llm-tracing/llm-tracing.module.ts similarity index 75% rename from packages/twenty-server/src/engine/integrations/llm-tracing/llm-tracing.module.ts rename to packages/twenty-server/src/engine/core-modules/llm-tracing/llm-tracing.module.ts index 9e9c452e9..045dfbd7c 100644 --- a/packages/twenty-server/src/engine/integrations/llm-tracing/llm-tracing.module.ts +++ b/packages/twenty-server/src/engine/core-modules/llm-tracing/llm-tracing.module.ts @@ -3,12 +3,12 @@ import { Global, DynamicModule } from '@nestjs/common'; import { LLMTracingModuleAsyncOptions, LLMTracingDriver, -} from 'src/engine/integrations/llm-tracing/interfaces/llm-tracing.interface'; +} from 'src/engine/core-modules/llm-tracing/interfaces/llm-tracing.interface'; -import { LangfuseDriver } from 'src/engine/integrations/llm-tracing/drivers/langfuse.driver'; -import { ConsoleDriver } from 'src/engine/integrations/llm-tracing/drivers/console.driver'; -import { LLMTracingService } from 'src/engine/integrations/llm-tracing/llm-tracing.service'; -import { LLM_TRACING_DRIVER } from 'src/engine/integrations/llm-tracing/llm-tracing.constants'; +import { LangfuseDriver } from 'src/engine/core-modules/llm-tracing/drivers/langfuse.driver'; +import { ConsoleDriver } from 'src/engine/core-modules/llm-tracing/drivers/console.driver'; +import { LLMTracingService } from 'src/engine/core-modules/llm-tracing/llm-tracing.service'; +import { LLM_TRACING_DRIVER } from 'src/engine/core-modules/llm-tracing/llm-tracing.constants'; @Global() export class LLMTracingModule { diff --git a/packages/twenty-server/src/engine/integrations/llm-tracing/llm-tracing.service.ts b/packages/twenty-server/src/engine/core-modules/llm-tracing/llm-tracing.service.ts similarity index 78% rename from packages/twenty-server/src/engine/integrations/llm-tracing/llm-tracing.service.ts rename to packages/twenty-server/src/engine/core-modules/llm-tracing/llm-tracing.service.ts index 6ff202390..87d7624fb 100644 --- a/packages/twenty-server/src/engine/integrations/llm-tracing/llm-tracing.service.ts +++ b/packages/twenty-server/src/engine/core-modules/llm-tracing/llm-tracing.service.ts @@ -2,9 +2,9 @@ import { Injectable, Inject } from '@nestjs/common'; import { BaseCallbackHandler } from '@langchain/core/callbacks/base'; -import { LLMTracingDriver } from 'src/engine/integrations/llm-tracing/drivers/interfaces/llm-tracing-driver.interface'; +import { LLMTracingDriver } from 'src/engine/core-modules/llm-tracing/drivers/interfaces/llm-tracing-driver.interface'; -import { LLM_TRACING_DRIVER } from 'src/engine/integrations/llm-tracing/llm-tracing.constants'; +import { LLM_TRACING_DRIVER } from 'src/engine/core-modules/llm-tracing/llm-tracing.constants'; @Injectable() export class LLMTracingService { diff --git a/packages/twenty-server/src/engine/integrations/logger/__tests__/logger.service.spec.ts b/packages/twenty-server/src/engine/core-modules/logger/__tests__/logger.service.spec.ts similarity index 80% rename from packages/twenty-server/src/engine/integrations/logger/__tests__/logger.service.spec.ts rename to packages/twenty-server/src/engine/core-modules/logger/__tests__/logger.service.spec.ts index b5d6f94c8..0475f386c 100644 --- a/packages/twenty-server/src/engine/integrations/logger/__tests__/logger.service.spec.ts +++ b/packages/twenty-server/src/engine/core-modules/logger/__tests__/logger.service.spec.ts @@ -1,7 +1,7 @@ import { Test, TestingModule } from '@nestjs/testing'; -import { LOGGER_DRIVER } from 'src/engine/integrations/logger/logger.constants'; -import { LoggerService } from 'src/engine/integrations/logger/logger.service'; +import { LOGGER_DRIVER } from 'src/engine/core-modules/logger/logger.constants'; +import { LoggerService } from 'src/engine/core-modules/logger/logger.service'; describe('LoggerService', () => { let service: LoggerService; diff --git a/packages/twenty-server/src/engine/core-modules/logger/interfaces/index.ts b/packages/twenty-server/src/engine/core-modules/logger/interfaces/index.ts new file mode 100644 index 000000000..b9de22413 --- /dev/null +++ b/packages/twenty-server/src/engine/core-modules/logger/interfaces/index.ts @@ -0,0 +1 @@ +export * from 'src/engine/core-modules/logger/interfaces/logger.interface'; diff --git a/packages/twenty-server/src/engine/integrations/logger/interfaces/logger.interface.ts b/packages/twenty-server/src/engine/core-modules/logger/interfaces/logger.interface.ts similarity index 100% rename from packages/twenty-server/src/engine/integrations/logger/interfaces/logger.interface.ts rename to packages/twenty-server/src/engine/core-modules/logger/interfaces/logger.interface.ts diff --git a/packages/twenty-server/src/engine/integrations/logger/logger.constants.ts b/packages/twenty-server/src/engine/core-modules/logger/logger.constants.ts similarity index 100% rename from packages/twenty-server/src/engine/integrations/logger/logger.constants.ts rename to packages/twenty-server/src/engine/core-modules/logger/logger.constants.ts diff --git a/packages/twenty-server/src/engine/integrations/logger/logger.module-definition.ts b/packages/twenty-server/src/engine/core-modules/logger/logger.module-definition.ts similarity index 78% rename from packages/twenty-server/src/engine/integrations/logger/logger.module-definition.ts rename to packages/twenty-server/src/engine/core-modules/logger/logger.module-definition.ts index d896bff74..40af6dfdd 100644 --- a/packages/twenty-server/src/engine/integrations/logger/logger.module-definition.ts +++ b/packages/twenty-server/src/engine/core-modules/logger/logger.module-definition.ts @@ -1,6 +1,6 @@ import { ConfigurableModuleBuilder } from '@nestjs/common'; -import { LoggerModuleOptions } from './interfaces'; +import { LoggerModuleOptions } from 'src/engine/core-modules/logger/interfaces'; export const { ConfigurableModuleClass, diff --git a/packages/twenty-server/src/engine/integrations/logger/logger.module-factory.ts b/packages/twenty-server/src/engine/core-modules/logger/logger.module-factory.ts similarity index 85% rename from packages/twenty-server/src/engine/integrations/logger/logger.module-factory.ts rename to packages/twenty-server/src/engine/core-modules/logger/logger.module-factory.ts index aef0bcd62..94b490fdc 100644 --- a/packages/twenty-server/src/engine/integrations/logger/logger.module-factory.ts +++ b/packages/twenty-server/src/engine/core-modules/logger/logger.module-factory.ts @@ -1,8 +1,8 @@ -import { EnvironmentService } from 'src/engine/integrations/environment/environment.service'; +import { EnvironmentService } from 'src/engine/core-modules/environment/environment.service'; import { LoggerModuleOptions, LoggerDriverType, -} from 'src/engine/integrations/logger/interfaces'; +} from 'src/engine/core-modules/logger/interfaces'; /** * Logger Module factory diff --git a/packages/twenty-server/src/engine/integrations/logger/logger.module.ts b/packages/twenty-server/src/engine/core-modules/logger/logger.module.ts similarity index 83% rename from packages/twenty-server/src/engine/integrations/logger/logger.module.ts rename to packages/twenty-server/src/engine/core-modules/logger/logger.module.ts index 778dbbf54..4822a780b 100644 --- a/packages/twenty-server/src/engine/integrations/logger/logger.module.ts +++ b/packages/twenty-server/src/engine/core-modules/logger/logger.module.ts @@ -1,14 +1,13 @@ import { DynamicModule, Global, ConsoleLogger, Module } from '@nestjs/common'; -import { LoggerDriverType } from 'src/engine/integrations/logger/interfaces'; - -import { LoggerService } from './logger.service'; -import { LOGGER_DRIVER } from './logger.constants'; +import { LoggerService } from 'src/engine/core-modules/logger/logger.service'; +import { LOGGER_DRIVER } from 'src/engine/core-modules/logger/logger.constants'; import { ASYNC_OPTIONS_TYPE, ConfigurableModuleClass, OPTIONS_TYPE, -} from './logger.module-definition'; +} from 'src/engine/core-modules/logger/logger.module-definition'; +import { LoggerDriverType } from 'src/engine/core-modules/logger/interfaces'; @Global() @Module({ diff --git a/packages/twenty-server/src/engine/integrations/logger/logger.service.ts b/packages/twenty-server/src/engine/core-modules/logger/logger.service.ts similarity index 93% rename from packages/twenty-server/src/engine/integrations/logger/logger.service.ts rename to packages/twenty-server/src/engine/core-modules/logger/logger.service.ts index 882a53c17..8d363bb32 100644 --- a/packages/twenty-server/src/engine/integrations/logger/logger.service.ts +++ b/packages/twenty-server/src/engine/core-modules/logger/logger.service.ts @@ -5,7 +5,7 @@ import { LoggerService as LoggerServiceInterface, } from '@nestjs/common'; -import { LOGGER_DRIVER } from './logger.constants'; +import { LOGGER_DRIVER } from 'src/engine/core-modules/logger/logger.constants'; @Injectable() export class LoggerService implements LoggerServiceInterface { diff --git a/packages/twenty-server/src/engine/integrations/message-queue/decorators/message-queue.decorator.ts b/packages/twenty-server/src/engine/core-modules/message-queue/decorators/message-queue.decorator.ts similarity index 63% rename from packages/twenty-server/src/engine/integrations/message-queue/decorators/message-queue.decorator.ts rename to packages/twenty-server/src/engine/core-modules/message-queue/decorators/message-queue.decorator.ts index 5a275d3d5..dd88f4cf6 100644 --- a/packages/twenty-server/src/engine/integrations/message-queue/decorators/message-queue.decorator.ts +++ b/packages/twenty-server/src/engine/core-modules/message-queue/decorators/message-queue.decorator.ts @@ -1,7 +1,7 @@ import { Inject } from '@nestjs/common'; -import { MessageQueue } from 'src/engine/integrations/message-queue/message-queue.constants'; -import { getQueueToken } from 'src/engine/integrations/message-queue/utils/get-queue-token.util'; +import { MessageQueue } from 'src/engine/core-modules/message-queue/message-queue.constants'; +import { getQueueToken } from 'src/engine/core-modules/message-queue/utils/get-queue-token.util'; export const InjectMessageQueue = (queueName: MessageQueue) => { return Inject(getQueueToken(queueName)); diff --git a/packages/twenty-server/src/engine/integrations/message-queue/decorators/process.decorator.ts b/packages/twenty-server/src/engine/core-modules/message-queue/decorators/process.decorator.ts similarity index 90% rename from packages/twenty-server/src/engine/integrations/message-queue/decorators/process.decorator.ts rename to packages/twenty-server/src/engine/core-modules/message-queue/decorators/process.decorator.ts index 214742cb0..62ec636ad 100644 --- a/packages/twenty-server/src/engine/integrations/message-queue/decorators/process.decorator.ts +++ b/packages/twenty-server/src/engine/core-modules/message-queue/decorators/process.decorator.ts @@ -1,7 +1,7 @@ import { SetMetadata } from '@nestjs/common'; import { isString } from '@nestjs/common/utils/shared.utils'; -import { PROCESS_METADATA } from 'src/engine/integrations/message-queue/message-queue.constants'; +import { PROCESS_METADATA } from 'src/engine/core-modules/message-queue/message-queue.constants'; export interface MessageQueueProcessOptions { jobName: string; diff --git a/packages/twenty-server/src/engine/integrations/message-queue/decorators/processor.decorator.ts b/packages/twenty-server/src/engine/core-modules/message-queue/decorators/processor.decorator.ts similarity index 91% rename from packages/twenty-server/src/engine/integrations/message-queue/decorators/processor.decorator.ts rename to packages/twenty-server/src/engine/core-modules/message-queue/decorators/processor.decorator.ts index a244dc4d1..07979b452 100644 --- a/packages/twenty-server/src/engine/integrations/message-queue/decorators/processor.decorator.ts +++ b/packages/twenty-server/src/engine/core-modules/message-queue/decorators/processor.decorator.ts @@ -1,13 +1,13 @@ import { Scope, SetMetadata } from '@nestjs/common'; import { SCOPE_OPTIONS_METADATA } from '@nestjs/common/constants'; -import { MessageQueueWorkerOptions } from 'src/engine/integrations/message-queue/interfaces/message-queue-worker-options.interface'; +import { MessageQueueWorkerOptions } from 'src/engine/core-modules/message-queue/interfaces/message-queue-worker-options.interface'; import { MessageQueue, PROCESSOR_METADATA, WORKER_METADATA, -} from 'src/engine/integrations/message-queue/message-queue.constants'; +} from 'src/engine/core-modules/message-queue/message-queue.constants'; export interface MessageQueueProcessorOptions { /** diff --git a/packages/twenty-server/src/engine/integrations/message-queue/drivers/bullmq.driver.ts b/packages/twenty-server/src/engine/core-modules/message-queue/drivers/bullmq.driver.ts similarity index 87% rename from packages/twenty-server/src/engine/integrations/message-queue/drivers/bullmq.driver.ts rename to packages/twenty-server/src/engine/core-modules/message-queue/drivers/bullmq.driver.ts index c3324a500..cf4c414c8 100644 --- a/packages/twenty-server/src/engine/integrations/message-queue/drivers/bullmq.driver.ts +++ b/packages/twenty-server/src/engine/core-modules/message-queue/drivers/bullmq.driver.ts @@ -6,13 +6,12 @@ import { JobsOptions, Queue, QueueOptions, Worker } from 'bullmq'; import { QueueCronJobOptions, QueueJobOptions, -} from 'src/engine/integrations/message-queue/drivers/interfaces/job-options.interface'; -import { MessageQueueJob } from 'src/engine/integrations/message-queue/interfaces/message-queue-job.interface'; -import { MessageQueueWorkerOptions } from 'src/engine/integrations/message-queue/interfaces/message-queue-worker-options.interface'; +} from 'src/engine/core-modules/message-queue/drivers/interfaces/job-options.interface'; +import { MessageQueueJob } from 'src/engine/core-modules/message-queue/interfaces/message-queue-job.interface'; +import { MessageQueueWorkerOptions } from 'src/engine/core-modules/message-queue/interfaces/message-queue-worker-options.interface'; +import { MessageQueueDriver } from 'src/engine/core-modules/message-queue/drivers/interfaces/message-queue-driver.interface'; -import { MessageQueue } from 'src/engine/integrations/message-queue/message-queue.constants'; - -import { MessageQueueDriver } from './interfaces/message-queue-driver.interface'; +import { MessageQueue } from 'src/engine/core-modules/message-queue/message-queue.constants'; export type BullMQDriverOptions = QueueOptions; diff --git a/packages/twenty-server/src/engine/integrations/message-queue/drivers/interfaces/job-options.interface.ts b/packages/twenty-server/src/engine/core-modules/message-queue/drivers/interfaces/job-options.interface.ts similarity index 100% rename from packages/twenty-server/src/engine/integrations/message-queue/drivers/interfaces/job-options.interface.ts rename to packages/twenty-server/src/engine/core-modules/message-queue/drivers/interfaces/job-options.interface.ts diff --git a/packages/twenty-server/src/engine/integrations/message-queue/drivers/interfaces/message-queue-driver.interface.ts b/packages/twenty-server/src/engine/core-modules/message-queue/drivers/interfaces/message-queue-driver.interface.ts similarity index 72% rename from packages/twenty-server/src/engine/integrations/message-queue/drivers/interfaces/message-queue-driver.interface.ts rename to packages/twenty-server/src/engine/core-modules/message-queue/drivers/interfaces/message-queue-driver.interface.ts index 1d53837d3..49647c021 100644 --- a/packages/twenty-server/src/engine/integrations/message-queue/drivers/interfaces/message-queue-driver.interface.ts +++ b/packages/twenty-server/src/engine/core-modules/message-queue/drivers/interfaces/message-queue-driver.interface.ts @@ -1,11 +1,11 @@ import { QueueCronJobOptions, 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 { MessageQueueWorkerOptions } from 'src/engine/integrations/message-queue/interfaces/message-queue-worker-options.interface'; +} from 'src/engine/core-modules/message-queue/drivers/interfaces/job-options.interface'; +import { MessageQueueJobData } from 'src/engine/core-modules/message-queue/interfaces/message-queue-job.interface'; +import { MessageQueueWorkerOptions } from 'src/engine/core-modules/message-queue/interfaces/message-queue-worker-options.interface'; -import { MessageQueue } from 'src/engine/integrations/message-queue/message-queue.constants'; +import { MessageQueue } from 'src/engine/core-modules/message-queue/message-queue.constants'; export interface MessageQueueDriver { add<T extends MessageQueueJobData>( diff --git a/packages/twenty-server/src/engine/integrations/message-queue/drivers/pg-boss.driver.ts b/packages/twenty-server/src/engine/core-modules/message-queue/drivers/pg-boss.driver.ts similarity index 83% rename from packages/twenty-server/src/engine/integrations/message-queue/drivers/pg-boss.driver.ts rename to packages/twenty-server/src/engine/core-modules/message-queue/drivers/pg-boss.driver.ts index 98631bc88..341fbc348 100644 --- a/packages/twenty-server/src/engine/integrations/message-queue/drivers/pg-boss.driver.ts +++ b/packages/twenty-server/src/engine/core-modules/message-queue/drivers/pg-boss.driver.ts @@ -5,13 +5,12 @@ import PgBoss from 'pg-boss'; import { QueueCronJobOptions, QueueJobOptions, -} from 'src/engine/integrations/message-queue/drivers/interfaces/job-options.interface'; -import { MessageQueueJob } from 'src/engine/integrations/message-queue/interfaces/message-queue-job.interface'; -import { MessageQueueWorkerOptions } from 'src/engine/integrations/message-queue/interfaces/message-queue-worker-options.interface'; +} from 'src/engine/core-modules/message-queue/drivers/interfaces/job-options.interface'; +import { MessageQueueJob } from 'src/engine/core-modules/message-queue/interfaces/message-queue-job.interface'; +import { MessageQueueWorkerOptions } from 'src/engine/core-modules/message-queue/interfaces/message-queue-worker-options.interface'; +import { MessageQueueDriver } from 'src/engine/core-modules/message-queue/drivers/interfaces/message-queue-driver.interface'; -import { MessageQueue } from 'src/engine/integrations/message-queue/message-queue.constants'; - -import { MessageQueueDriver } from './interfaces/message-queue-driver.interface'; +import { MessageQueue } from 'src/engine/core-modules/message-queue/message-queue.constants'; export type PgBossDriverOptions = PgBoss.ConstructorOptions; diff --git a/packages/twenty-server/src/engine/integrations/message-queue/drivers/sync.driver.ts b/packages/twenty-server/src/engine/core-modules/message-queue/drivers/sync.driver.ts similarity index 86% rename from packages/twenty-server/src/engine/integrations/message-queue/drivers/sync.driver.ts rename to packages/twenty-server/src/engine/core-modules/message-queue/drivers/sync.driver.ts index b65460687..1d7db2953 100644 --- a/packages/twenty-server/src/engine/integrations/message-queue/drivers/sync.driver.ts +++ b/packages/twenty-server/src/engine/core-modules/message-queue/drivers/sync.driver.ts @@ -3,11 +3,10 @@ import { Logger } from '@nestjs/common'; import { MessageQueueJobData, MessageQueueJob, -} from 'src/engine/integrations/message-queue/interfaces/message-queue-job.interface'; +} from 'src/engine/core-modules/message-queue/interfaces/message-queue-job.interface'; +import { MessageQueueDriver } from 'src/engine/core-modules/message-queue/drivers/interfaces/message-queue-driver.interface'; -import { MessageQueue } from 'src/engine/integrations/message-queue/message-queue.constants'; - -import { MessageQueueDriver } from './interfaces/message-queue-driver.interface'; +import { MessageQueue } from 'src/engine/core-modules/message-queue/message-queue.constants'; export class SyncDriver implements MessageQueueDriver { private readonly logger = new Logger(SyncDriver.name); diff --git a/packages/twenty-server/src/engine/core-modules/message-queue/interfaces/index.ts b/packages/twenty-server/src/engine/core-modules/message-queue/interfaces/index.ts new file mode 100644 index 000000000..dfeb67000 --- /dev/null +++ b/packages/twenty-server/src/engine/core-modules/message-queue/interfaces/index.ts @@ -0,0 +1 @@ +export * from 'src/engine/core-modules/message-queue/interfaces/message-queue-module-options.interface'; diff --git a/packages/twenty-server/src/engine/integrations/message-queue/interfaces/message-queue-job.interface.ts b/packages/twenty-server/src/engine/core-modules/message-queue/interfaces/message-queue-job.interface.ts similarity index 100% rename from packages/twenty-server/src/engine/integrations/message-queue/interfaces/message-queue-job.interface.ts rename to packages/twenty-server/src/engine/core-modules/message-queue/interfaces/message-queue-job.interface.ts diff --git a/packages/twenty-server/src/engine/integrations/message-queue/interfaces/message-queue-module-options.interface.ts b/packages/twenty-server/src/engine/core-modules/message-queue/interfaces/message-queue-module-options.interface.ts similarity index 83% rename from packages/twenty-server/src/engine/integrations/message-queue/interfaces/message-queue-module-options.interface.ts rename to packages/twenty-server/src/engine/core-modules/message-queue/interfaces/message-queue-module-options.interface.ts index b98990385..55027987a 100644 --- a/packages/twenty-server/src/engine/integrations/message-queue/interfaces/message-queue-module-options.interface.ts +++ b/packages/twenty-server/src/engine/core-modules/message-queue/interfaces/message-queue-module-options.interface.ts @@ -1,5 +1,5 @@ -import { BullMQDriverOptions } from 'src/engine/integrations/message-queue/drivers/bullmq.driver'; -import { PgBossDriverOptions } from 'src/engine/integrations/message-queue/drivers/pg-boss.driver'; +import { BullMQDriverOptions } from 'src/engine/core-modules/message-queue/drivers/bullmq.driver'; +import { PgBossDriverOptions } from 'src/engine/core-modules/message-queue/drivers/pg-boss.driver'; export enum MessageQueueDriverType { PgBoss = 'pg-boss', diff --git a/packages/twenty-server/src/engine/integrations/message-queue/interfaces/message-queue-worker-options.interface.ts b/packages/twenty-server/src/engine/core-modules/message-queue/interfaces/message-queue-worker-options.interface.ts similarity index 100% rename from packages/twenty-server/src/engine/integrations/message-queue/interfaces/message-queue-worker-options.interface.ts rename to packages/twenty-server/src/engine/core-modules/message-queue/interfaces/message-queue-worker-options.interface.ts diff --git a/packages/twenty-server/src/engine/integrations/message-queue/jobs.module.ts b/packages/twenty-server/src/engine/core-modules/message-queue/jobs.module.ts similarity index 96% rename from packages/twenty-server/src/engine/integrations/message-queue/jobs.module.ts rename to packages/twenty-server/src/engine/core-modules/message-queue/jobs.module.ts index 6516455d5..7c78a1fd9 100644 --- a/packages/twenty-server/src/engine/integrations/message-queue/jobs.module.ts +++ b/packages/twenty-server/src/engine/core-modules/message-queue/jobs.module.ts @@ -14,8 +14,8 @@ import { UserModule } from 'src/engine/core-modules/user/user.module'; import { HandleWorkspaceMemberDeletedJob } from 'src/engine/core-modules/workspace/handle-workspace-member-deleted.job'; import { Workspace } from 'src/engine/core-modules/workspace/workspace.entity'; import { WorkspaceModule } from 'src/engine/core-modules/workspace/workspace.module'; -import { EmailSenderJob } from 'src/engine/integrations/email/email-sender.job'; -import { EmailModule } from 'src/engine/integrations/email/email.module'; +import { EmailSenderJob } from 'src/engine/core-modules/email/email-sender.job'; +import { EmailModule } from 'src/engine/core-modules/email/email.module'; import { DataSourceModule } from 'src/engine/metadata-modules/data-source/data-source.module'; import { ObjectMetadataModule } from 'src/engine/metadata-modules/object-metadata/object-metadata.module'; import { CleanInactiveWorkspaceJob } from 'src/engine/workspace-manager/workspace-cleaner/crons/clean-inactive-workspace.job'; diff --git a/packages/twenty-server/src/engine/integrations/message-queue/message-queue-core.module.ts b/packages/twenty-server/src/engine/core-modules/message-queue/message-queue-core.module.ts similarity index 84% rename from packages/twenty-server/src/engine/integrations/message-queue/message-queue-core.module.ts rename to packages/twenty-server/src/engine/core-modules/message-queue/message-queue-core.module.ts index 6c785e235..fb4b7dd6c 100644 --- a/packages/twenty-server/src/engine/integrations/message-queue/message-queue-core.module.ts +++ b/packages/twenty-server/src/engine/core-modules/message-queue/message-queue-core.module.ts @@ -6,23 +6,23 @@ import { Provider, } from '@nestjs/common'; -import { MessageQueueDriver } from 'src/engine/integrations/message-queue/drivers/interfaces/message-queue-driver.interface'; +import { MessageQueueDriver } from 'src/engine/core-modules/message-queue/drivers/interfaces/message-queue-driver.interface'; -import { MessageQueueDriverType } from 'src/engine/integrations/message-queue/interfaces'; +import { MessageQueueDriverType } from 'src/engine/core-modules/message-queue/interfaces'; import { MessageQueue, QUEUE_DRIVER, -} 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 { getQueueToken } from 'src/engine/integrations/message-queue/utils/get-queue-token.util'; +} from 'src/engine/core-modules/message-queue/message-queue.constants'; +import { PgBossDriver } from 'src/engine/core-modules/message-queue/drivers/pg-boss.driver'; +import { MessageQueueService } from 'src/engine/core-modules/message-queue/services/message-queue.service'; +import { BullMQDriver } from 'src/engine/core-modules/message-queue/drivers/bullmq.driver'; +import { SyncDriver } from 'src/engine/core-modules/message-queue/drivers/sync.driver'; +import { getQueueToken } from 'src/engine/core-modules/message-queue/utils/get-queue-token.util'; import { ASYNC_OPTIONS_TYPE, ConfigurableModuleClass, OPTIONS_TYPE, -} from 'src/engine/integrations/message-queue/message-queue.module-definition'; +} from 'src/engine/core-modules/message-queue/message-queue.module-definition'; @Global() @Module({}) diff --git a/packages/twenty-server/src/engine/integrations/message-queue/message-queue-metadata.accessor.ts b/packages/twenty-server/src/engine/core-modules/message-queue/message-queue-metadata.accessor.ts similarity index 77% rename from packages/twenty-server/src/engine/integrations/message-queue/message-queue-metadata.accessor.ts rename to packages/twenty-server/src/engine/core-modules/message-queue/message-queue-metadata.accessor.ts index a63c3f16e..2dce32e82 100644 --- a/packages/twenty-server/src/engine/integrations/message-queue/message-queue-metadata.accessor.ts +++ b/packages/twenty-server/src/engine/core-modules/message-queue/message-queue-metadata.accessor.ts @@ -2,12 +2,12 @@ import { Injectable, Type } from '@nestjs/common'; import { Reflector } from '@nestjs/core'; -import { MessageQueueProcessOptions } from 'src/engine/integrations/message-queue/decorators/process.decorator'; -import { MessageQueueProcessorOptions } from 'src/engine/integrations/message-queue/decorators/processor.decorator'; +import { MessageQueueProcessOptions } from 'src/engine/core-modules/message-queue/decorators/process.decorator'; +import { MessageQueueProcessorOptions } from 'src/engine/core-modules/message-queue/decorators/processor.decorator'; import { PROCESSOR_METADATA, PROCESS_METADATA, -} from 'src/engine/integrations/message-queue/message-queue.constants'; +} from 'src/engine/core-modules/message-queue/message-queue.constants'; @Injectable() export class MessageQueueMetadataAccessor { diff --git a/packages/twenty-server/src/engine/integrations/message-queue/message-queue.constants.ts b/packages/twenty-server/src/engine/core-modules/message-queue/message-queue.constants.ts similarity index 100% rename from packages/twenty-server/src/engine/integrations/message-queue/message-queue.constants.ts rename to packages/twenty-server/src/engine/core-modules/message-queue/message-queue.constants.ts diff --git a/packages/twenty-server/src/engine/integrations/message-queue/message-queue.explorer.ts b/packages/twenty-server/src/engine/core-modules/message-queue/message-queue.explorer.ts similarity index 91% rename from packages/twenty-server/src/engine/integrations/message-queue/message-queue.explorer.ts rename to packages/twenty-server/src/engine/core-modules/message-queue/message-queue.explorer.ts index 30e73f6bb..6e20445eb 100644 --- a/packages/twenty-server/src/engine/integrations/message-queue/message-queue.explorer.ts +++ b/packages/twenty-server/src/engine/core-modules/message-queue/message-queue.explorer.ts @@ -9,19 +9,18 @@ import { Module } from '@nestjs/core/injector/module'; import { Injector } from '@nestjs/core/injector/injector'; import { InstanceWrapper } from '@nestjs/core/injector/instance-wrapper'; -import { MessageQueueWorkerOptions } from 'src/engine/integrations/message-queue/interfaces/message-queue-worker-options.interface'; +import { MessageQueueWorkerOptions } from 'src/engine/core-modules/message-queue/interfaces/message-queue-worker-options.interface'; import { MessageQueueJob, MessageQueueJobData, -} from 'src/engine/integrations/message-queue/interfaces/message-queue-job.interface'; +} from 'src/engine/core-modules/message-queue/interfaces/message-queue-job.interface'; -import { MessageQueueService } from 'src/engine/integrations/message-queue/services/message-queue.service'; -import { getQueueToken } from 'src/engine/integrations/message-queue/utils/get-queue-token.util'; -import { ExceptionHandlerService } from 'src/engine/integrations/exception-handler/exception-handler.service'; +import { MessageQueueMetadataAccessor } from 'src/engine/core-modules/message-queue/message-queue-metadata.accessor'; +import { MessageQueueService } from 'src/engine/core-modules/message-queue/services/message-queue.service'; +import { getQueueToken } from 'src/engine/core-modules/message-queue/utils/get-queue-token.util'; +import { ExceptionHandlerService } from 'src/engine/core-modules/exception-handler/exception-handler.service'; import { shouldFilterException } from 'src/engine/utils/global-exception-handler.util'; -import { MessageQueueMetadataAccessor } from './message-queue-metadata.accessor'; - interface ProcessorGroup { instance: object; host: Module; diff --git a/packages/twenty-server/src/engine/integrations/message-queue/message-queue.module-definition.ts b/packages/twenty-server/src/engine/core-modules/message-queue/message-queue.module-definition.ts similarity index 80% rename from packages/twenty-server/src/engine/integrations/message-queue/message-queue.module-definition.ts rename to packages/twenty-server/src/engine/core-modules/message-queue/message-queue.module-definition.ts index b7a437032..ed24da317 100644 --- a/packages/twenty-server/src/engine/integrations/message-queue/message-queue.module-definition.ts +++ b/packages/twenty-server/src/engine/core-modules/message-queue/message-queue.module-definition.ts @@ -1,6 +1,6 @@ import { ConfigurableModuleBuilder } from '@nestjs/common'; -import { MessageQueueModuleOptions } from 'src/engine/integrations/message-queue/interfaces'; +import { MessageQueueModuleOptions } from 'src/engine/core-modules/message-queue/interfaces'; export const { ConfigurableModuleClass, diff --git a/packages/twenty-server/src/engine/integrations/message-queue/message-queue.module-factory.ts b/packages/twenty-server/src/engine/core-modules/message-queue/message-queue.module-factory.ts similarity index 92% rename from packages/twenty-server/src/engine/integrations/message-queue/message-queue.module-factory.ts rename to packages/twenty-server/src/engine/core-modules/message-queue/message-queue.module-factory.ts index 4aad6714b..ad18f6cd8 100644 --- a/packages/twenty-server/src/engine/integrations/message-queue/message-queue.module-factory.ts +++ b/packages/twenty-server/src/engine/core-modules/message-queue/message-queue.module-factory.ts @@ -1,8 +1,8 @@ -import { EnvironmentService } from 'src/engine/integrations/environment/environment.service'; +import { EnvironmentService } from 'src/engine/core-modules/environment/environment.service'; import { MessageQueueDriverType, MessageQueueModuleOptions, -} from 'src/engine/integrations/message-queue/interfaces'; +} from 'src/engine/core-modules/message-queue/interfaces'; /** * MessageQueue Module factory diff --git a/packages/twenty-server/src/engine/integrations/message-queue/message-queue.module.ts b/packages/twenty-server/src/engine/core-modules/message-queue/message-queue.module.ts similarity index 74% rename from packages/twenty-server/src/engine/integrations/message-queue/message-queue.module.ts rename to packages/twenty-server/src/engine/core-modules/message-queue/message-queue.module.ts index ee7fb385b..428be7caa 100644 --- a/packages/twenty-server/src/engine/integrations/message-queue/message-queue.module.ts +++ b/packages/twenty-server/src/engine/core-modules/message-queue/message-queue.module.ts @@ -1,13 +1,13 @@ import { DynamicModule, Global, Module } from '@nestjs/common'; import { DiscoveryModule } from '@nestjs/core'; -import { MessageQueueCoreModule } from 'src/engine/integrations/message-queue/message-queue-core.module'; -import { MessageQueueMetadataAccessor } from 'src/engine/integrations/message-queue/message-queue-metadata.accessor'; -import { MessageQueueExplorer } from 'src/engine/integrations/message-queue/message-queue.explorer'; +import { MessageQueueCoreModule } from 'src/engine/core-modules/message-queue/message-queue-core.module'; +import { MessageQueueMetadataAccessor } from 'src/engine/core-modules/message-queue/message-queue-metadata.accessor'; +import { MessageQueueExplorer } from 'src/engine/core-modules/message-queue/message-queue.explorer'; import { ASYNC_OPTIONS_TYPE, OPTIONS_TYPE, -} from 'src/engine/integrations/message-queue/message-queue.module-definition'; +} from 'src/engine/core-modules/message-queue/message-queue.module-definition'; @Global() @Module({}) diff --git a/packages/twenty-server/src/engine/integrations/message-queue/services/__tests__/message-queue-task-assigned.service.spec.ts b/packages/twenty-server/src/engine/core-modules/message-queue/services/__tests__/message-queue-task-assigned.service.spec.ts similarity index 85% rename from packages/twenty-server/src/engine/integrations/message-queue/services/__tests__/message-queue-task-assigned.service.spec.ts rename to packages/twenty-server/src/engine/core-modules/message-queue/services/__tests__/message-queue-task-assigned.service.spec.ts index 31e2b66ae..f579767a0 100644 --- a/packages/twenty-server/src/engine/integrations/message-queue/services/__tests__/message-queue-task-assigned.service.spec.ts +++ b/packages/twenty-server/src/engine/core-modules/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/engine/integrations/message-queue/drivers/interfaces/message-queue-driver.interface'; +import { MessageQueueDriver } from 'src/engine/core-modules/message-queue/drivers/interfaces/message-queue-driver.interface'; import { QUEUE_DRIVER, MessageQueue, -} from 'src/engine/integrations/message-queue/message-queue.constants'; -import { MessageQueueService } from 'src/engine/integrations/message-queue/services/message-queue.service'; +} from 'src/engine/core-modules/message-queue/message-queue.constants'; +import { MessageQueueService } from 'src/engine/core-modules/message-queue/services/message-queue.service'; describe('MessageQueueTaskAssigned queue', () => { let service: MessageQueueService; diff --git a/packages/twenty-server/src/engine/integrations/message-queue/services/message-queue.service.ts b/packages/twenty-server/src/engine/core-modules/message-queue/services/message-queue.service.ts similarity index 78% rename from packages/twenty-server/src/engine/integrations/message-queue/services/message-queue.service.ts rename to packages/twenty-server/src/engine/core-modules/message-queue/services/message-queue.service.ts index 6460e112d..2030ca8dd 100644 --- a/packages/twenty-server/src/engine/integrations/message-queue/services/message-queue.service.ts +++ b/packages/twenty-server/src/engine/core-modules/message-queue/services/message-queue.service.ts @@ -3,18 +3,18 @@ import { Inject, Injectable } from '@nestjs/common'; import { QueueCronJobOptions, 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'; +} from 'src/engine/core-modules/message-queue/drivers/interfaces/job-options.interface'; +import { MessageQueueDriver } from 'src/engine/core-modules/message-queue/drivers/interfaces/message-queue-driver.interface'; import { MessageQueueJobData, MessageQueueJob, -} from 'src/engine/integrations/message-queue/interfaces/message-queue-job.interface'; -import { MessageQueueWorkerOptions } from 'src/engine/integrations/message-queue/interfaces/message-queue-worker-options.interface'; +} from 'src/engine/core-modules/message-queue/interfaces/message-queue-job.interface'; +import { MessageQueueWorkerOptions } from 'src/engine/core-modules/message-queue/interfaces/message-queue-worker-options.interface'; import { MessageQueue, QUEUE_DRIVER, -} from 'src/engine/integrations/message-queue/message-queue.constants'; +} from 'src/engine/core-modules/message-queue/message-queue.constants'; @Injectable() export class MessageQueueService { diff --git a/packages/twenty-server/src/engine/integrations/message-queue/utils/get-queue-token.util.ts b/packages/twenty-server/src/engine/core-modules/message-queue/utils/get-queue-token.util.ts similarity index 100% rename from packages/twenty-server/src/engine/integrations/message-queue/utils/get-queue-token.util.ts rename to packages/twenty-server/src/engine/core-modules/message-queue/utils/get-queue-token.util.ts diff --git a/packages/twenty-server/src/engine/core-modules/open-api/open-api.service.spec.ts b/packages/twenty-server/src/engine/core-modules/open-api/open-api.service.spec.ts index b2252b0c6..7e6f2d26e 100644 --- a/packages/twenty-server/src/engine/core-modules/open-api/open-api.service.spec.ts +++ b/packages/twenty-server/src/engine/core-modules/open-api/open-api.service.spec.ts @@ -3,7 +3,7 @@ import { Test, TestingModule } from '@nestjs/testing'; import { OpenApiService } from 'src/engine/core-modules/open-api/open-api.service'; import { ObjectMetadataService } from 'src/engine/metadata-modules/object-metadata/object-metadata.service'; import { TokenService } from 'src/engine/core-modules/auth/services/token.service'; -import { EnvironmentService } from 'src/engine/integrations/environment/environment.service'; +import { EnvironmentService } from 'src/engine/core-modules/environment/environment.service'; describe('OpenApiService', () => { let service: OpenApiService; diff --git a/packages/twenty-server/src/engine/core-modules/open-api/open-api.service.ts b/packages/twenty-server/src/engine/core-modules/open-api/open-api.service.ts index bdcd710fa..49e7ed9ac 100644 --- a/packages/twenty-server/src/engine/core-modules/open-api/open-api.service.ts +++ b/packages/twenty-server/src/engine/core-modules/open-api/open-api.service.ts @@ -33,7 +33,7 @@ import { getFindOneResponse200, getUpdateOneResponse200, } from 'src/engine/core-modules/open-api/utils/responses.utils'; -import { EnvironmentService } from 'src/engine/integrations/environment/environment.service'; +import { EnvironmentService } from 'src/engine/core-modules/environment/environment.service'; import { ObjectMetadataService } from 'src/engine/metadata-modules/object-metadata/object-metadata.service'; import { capitalize } from 'src/utils/capitalize'; import { getServerUrl } from 'src/utils/get-server-url'; diff --git a/packages/twenty-server/src/engine/core-modules/postgres-credentials/postgres-credentials.module.ts b/packages/twenty-server/src/engine/core-modules/postgres-credentials/postgres-credentials.module.ts index fcb2bbdd4..9034a9a1b 100644 --- a/packages/twenty-server/src/engine/core-modules/postgres-credentials/postgres-credentials.module.ts +++ b/packages/twenty-server/src/engine/core-modules/postgres-credentials/postgres-credentials.module.ts @@ -4,7 +4,7 @@ import { TypeOrmModule } from '@nestjs/typeorm'; import { PostgresCredentials } from 'src/engine/core-modules/postgres-credentials/postgres-credentials.entity'; import { PostgresCredentialsResolver } from 'src/engine/core-modules/postgres-credentials/postgres-credentials.resolver'; import { PostgresCredentialsService } from 'src/engine/core-modules/postgres-credentials/postgres-credentials.service'; -import { EnvironmentModule } from 'src/engine/integrations/environment/environment.module'; +import { EnvironmentModule } from 'src/engine/core-modules/environment/environment.module'; @Module({ imports: [ diff --git a/packages/twenty-server/src/engine/core-modules/postgres-credentials/postgres-credentials.service.ts b/packages/twenty-server/src/engine/core-modules/postgres-credentials/postgres-credentials.service.ts index 790c36ab2..de8e78244 100644 --- a/packages/twenty-server/src/engine/core-modules/postgres-credentials/postgres-credentials.service.ts +++ b/packages/twenty-server/src/engine/core-modules/postgres-credentials/postgres-credentials.service.ts @@ -12,7 +12,7 @@ import { import { NotFoundError } from 'src/engine/core-modules/graphql/utils/graphql-errors.util'; import { PostgresCredentialsDTO } from 'src/engine/core-modules/postgres-credentials/dtos/postgres-credentials.dto'; import { PostgresCredentials } from 'src/engine/core-modules/postgres-credentials/postgres-credentials.entity'; -import { EnvironmentService } from 'src/engine/integrations/environment/environment.service'; +import { EnvironmentService } from 'src/engine/core-modules/environment/environment.service'; export class PostgresCredentialsService { constructor( diff --git a/packages/twenty-server/src/engine/integrations/serverless/drivers/base-serverless.driver.ts b/packages/twenty-server/src/engine/core-modules/serverless/drivers/base-serverless.driver.ts similarity index 71% rename from packages/twenty-server/src/engine/integrations/serverless/drivers/base-serverless.driver.ts rename to packages/twenty-server/src/engine/core-modules/serverless/drivers/base-serverless.driver.ts index bce3c8e42..e7abc6743 100644 --- a/packages/twenty-server/src/engine/integrations/serverless/drivers/base-serverless.driver.ts +++ b/packages/twenty-server/src/engine/core-modules/serverless/drivers/base-serverless.driver.ts @@ -1,9 +1,9 @@ -import { FileStorageService } from 'src/engine/integrations/file-storage/file-storage.service'; -import { readFileContent } from 'src/engine/integrations/file-storage/utils/read-file-content'; -import { SOURCE_FILE_NAME } from 'src/engine/integrations/serverless/drivers/constants/source-file-name'; -import { compileTypescript } from 'src/engine/integrations/serverless/drivers/utils/compile-typescript'; +import { FileStorageService } from 'src/engine/core-modules/file-storage/file-storage.service'; +import { readFileContent } from 'src/engine/core-modules/file-storage/utils/read-file-content'; +import { SOURCE_FILE_NAME } from 'src/engine/core-modules/serverless/drivers/constants/source-file-name'; +import { compileTypescript } from 'src/engine/core-modules/serverless/drivers/utils/compile-typescript'; import { ServerlessFunctionEntity } from 'src/engine/metadata-modules/serverless-function/serverless-function.entity'; -import { getServerlessFolder } from 'src/engine/integrations/serverless/utils/serverless-get-folder.utils'; +import { getServerlessFolder } from 'src/engine/core-modules/serverless/utils/serverless-get-folder.utils'; export class BaseServerlessDriver { async getCompiledCode( diff --git a/packages/twenty-server/src/engine/integrations/serverless/drivers/constants/build-file-name.ts b/packages/twenty-server/src/engine/core-modules/serverless/drivers/constants/build-file-name.ts similarity index 100% rename from packages/twenty-server/src/engine/integrations/serverless/drivers/constants/build-file-name.ts rename to packages/twenty-server/src/engine/core-modules/serverless/drivers/constants/build-file-name.ts diff --git a/packages/twenty-server/src/engine/integrations/serverless/drivers/constants/common-layer-name.ts b/packages/twenty-server/src/engine/core-modules/serverless/drivers/constants/common-layer-name.ts similarity index 100% rename from packages/twenty-server/src/engine/integrations/serverless/drivers/constants/common-layer-name.ts rename to packages/twenty-server/src/engine/core-modules/serverless/drivers/constants/common-layer-name.ts diff --git a/packages/twenty-server/src/engine/integrations/serverless/drivers/constants/serverless-tmpdir-folder.ts b/packages/twenty-server/src/engine/core-modules/serverless/drivers/constants/serverless-tmpdir-folder.ts similarity index 100% rename from packages/twenty-server/src/engine/integrations/serverless/drivers/constants/serverless-tmpdir-folder.ts rename to packages/twenty-server/src/engine/core-modules/serverless/drivers/constants/serverless-tmpdir-folder.ts diff --git a/packages/twenty-server/src/engine/integrations/serverless/drivers/constants/source-file-name.ts b/packages/twenty-server/src/engine/core-modules/serverless/drivers/constants/source-file-name.ts similarity index 100% rename from packages/twenty-server/src/engine/integrations/serverless/drivers/constants/source-file-name.ts rename to packages/twenty-server/src/engine/core-modules/serverless/drivers/constants/source-file-name.ts diff --git a/packages/twenty-server/src/engine/integrations/serverless/drivers/interfaces/serverless-driver.interface.ts b/packages/twenty-server/src/engine/core-modules/serverless/drivers/interfaces/serverless-driver.interface.ts similarity index 100% rename from packages/twenty-server/src/engine/integrations/serverless/drivers/interfaces/serverless-driver.interface.ts rename to packages/twenty-server/src/engine/core-modules/serverless/drivers/interfaces/serverless-driver.interface.ts diff --git a/packages/twenty-server/src/engine/integrations/serverless/drivers/lambda.driver.ts b/packages/twenty-server/src/engine/core-modules/serverless/drivers/lambda.driver.ts similarity index 95% rename from packages/twenty-server/src/engine/integrations/serverless/drivers/lambda.driver.ts rename to packages/twenty-server/src/engine/core-modules/serverless/drivers/lambda.driver.ts index b61101b74..747a0763d 100644 --- a/packages/twenty-server/src/engine/integrations/serverless/drivers/lambda.driver.ts +++ b/packages/twenty-server/src/engine/core-modules/serverless/drivers/lambda.driver.ts @@ -25,7 +25,7 @@ import { UpdateFunctionCodeCommandInput } from '@aws-sdk/client-lambda/dist-type import { ServerlessDriver, ServerlessExecuteResult, -} from 'src/engine/integrations/serverless/drivers/interfaces/serverless-driver.interface'; +} from 'src/engine/core-modules/serverless/drivers/interfaces/serverless-driver.interface'; import { ServerlessFunctionEntity, @@ -34,18 +34,18 @@ import { import { LambdaBuildDirectoryManager, NODE_LAYER_SUBFOLDER, -} from 'src/engine/integrations/serverless/drivers/utils/lambda-build-directory-manager'; -import { FileStorageService } from 'src/engine/integrations/file-storage/file-storage.service'; -import { BaseServerlessDriver } from 'src/engine/integrations/serverless/drivers/base-serverless.driver'; -import { createZipFile } from 'src/engine/integrations/serverless/drivers/utils/create-zip-file'; +} from 'src/engine/core-modules/serverless/drivers/utils/lambda-build-directory-manager'; +import { FileStorageService } from 'src/engine/core-modules/file-storage/file-storage.service'; +import { BaseServerlessDriver } from 'src/engine/core-modules/serverless/drivers/base-serverless.driver'; +import { createZipFile } from 'src/engine/core-modules/serverless/drivers/utils/create-zip-file'; import { ServerlessFunctionExecutionStatus } from 'src/engine/metadata-modules/serverless-function/dtos/serverless-function-execution-result.dto'; import { ServerlessFunctionException, ServerlessFunctionExceptionCode, } from 'src/engine/metadata-modules/serverless-function/serverless-function.exception'; import { isDefined } from 'src/utils/is-defined'; -import { COMMON_LAYER_NAME } from 'src/engine/integrations/serverless/drivers/constants/common-layer-name'; -import { copyAndBuildDependencies } from 'src/engine/integrations/serverless/drivers/utils/copy-and-build-dependencies'; +import { COMMON_LAYER_NAME } from 'src/engine/core-modules/serverless/drivers/constants/common-layer-name'; +import { copyAndBuildDependencies } from 'src/engine/core-modules/serverless/drivers/utils/copy-and-build-dependencies'; export interface LambdaDriverOptions extends LambdaClientConfig { fileStorageService: FileStorageService; diff --git a/packages/twenty-server/src/engine/integrations/serverless/drivers/layers/1/package.json b/packages/twenty-server/src/engine/core-modules/serverless/drivers/layers/1/package.json similarity index 100% rename from packages/twenty-server/src/engine/integrations/serverless/drivers/layers/1/package.json rename to packages/twenty-server/src/engine/core-modules/serverless/drivers/layers/1/package.json diff --git a/packages/twenty-server/src/engine/integrations/serverless/drivers/layers/1/yarn.lock b/packages/twenty-server/src/engine/core-modules/serverless/drivers/layers/1/yarn.lock similarity index 100% rename from packages/twenty-server/src/engine/integrations/serverless/drivers/layers/1/yarn.lock rename to packages/twenty-server/src/engine/core-modules/serverless/drivers/layers/1/yarn.lock diff --git a/packages/twenty-server/src/engine/integrations/serverless/drivers/layers/engine/.yarn/releases/yarn-4.4.0.cjs b/packages/twenty-server/src/engine/core-modules/serverless/drivers/layers/engine/.yarn/releases/yarn-4.4.0.cjs similarity index 100% rename from packages/twenty-server/src/engine/integrations/serverless/drivers/layers/engine/.yarn/releases/yarn-4.4.0.cjs rename to packages/twenty-server/src/engine/core-modules/serverless/drivers/layers/engine/.yarn/releases/yarn-4.4.0.cjs diff --git a/packages/twenty-server/src/engine/integrations/serverless/drivers/layers/engine/.yarnrc.yml b/packages/twenty-server/src/engine/core-modules/serverless/drivers/layers/engine/.yarnrc.yml similarity index 100% rename from packages/twenty-server/src/engine/integrations/serverless/drivers/layers/engine/.yarnrc.yml rename to packages/twenty-server/src/engine/core-modules/serverless/drivers/layers/engine/.yarnrc.yml diff --git a/packages/twenty-server/src/engine/integrations/serverless/drivers/layers/last-layer-version.ts b/packages/twenty-server/src/engine/core-modules/serverless/drivers/layers/last-layer-version.ts similarity index 100% rename from packages/twenty-server/src/engine/integrations/serverless/drivers/layers/last-layer-version.ts rename to packages/twenty-server/src/engine/core-modules/serverless/drivers/layers/last-layer-version.ts diff --git a/packages/twenty-server/src/engine/integrations/serverless/drivers/local.driver.ts b/packages/twenty-server/src/engine/core-modules/serverless/drivers/local.driver.ts similarity index 90% rename from packages/twenty-server/src/engine/integrations/serverless/drivers/local.driver.ts rename to packages/twenty-server/src/engine/core-modules/serverless/drivers/local.driver.ts index 194e45f22..00772cfd2 100644 --- a/packages/twenty-server/src/engine/integrations/serverless/drivers/local.driver.ts +++ b/packages/twenty-server/src/engine/core-modules/serverless/drivers/local.driver.ts @@ -4,27 +4,27 @@ import { join } from 'path'; import { v4 } from 'uuid'; -import { FileStorageExceptionCode } from 'src/engine/integrations/file-storage/interfaces/file-storage-exception'; +import { FileStorageExceptionCode } from 'src/engine/core-modules/file-storage/interfaces/file-storage-exception'; import { ServerlessDriver, ServerlessExecuteError, ServerlessExecuteResult, -} from 'src/engine/integrations/serverless/drivers/interfaces/serverless-driver.interface'; +} from 'src/engine/core-modules/serverless/drivers/interfaces/serverless-driver.interface'; -import { FileStorageService } from 'src/engine/integrations/file-storage/file-storage.service'; -import { readFileContent } from 'src/engine/integrations/file-storage/utils/read-file-content'; -import { BaseServerlessDriver } from 'src/engine/integrations/serverless/drivers/base-serverless.driver'; -import { BUILD_FILE_NAME } from 'src/engine/integrations/serverless/drivers/constants/build-file-name'; -import { getServerlessFolder } from 'src/engine/integrations/serverless/utils/serverless-get-folder.utils'; +import { FileStorageService } from 'src/engine/core-modules/file-storage/file-storage.service'; +import { readFileContent } from 'src/engine/core-modules/file-storage/utils/read-file-content'; +import { BaseServerlessDriver } from 'src/engine/core-modules/serverless/drivers/base-serverless.driver'; +import { BUILD_FILE_NAME } from 'src/engine/core-modules/serverless/drivers/constants/build-file-name'; +import { getServerlessFolder } from 'src/engine/core-modules/serverless/utils/serverless-get-folder.utils'; import { ServerlessFunctionExecutionStatus } from 'src/engine/metadata-modules/serverless-function/dtos/serverless-function-execution-result.dto'; import { ServerlessFunctionEntity } from 'src/engine/metadata-modules/serverless-function/serverless-function.entity'; import { ServerlessFunctionException, ServerlessFunctionExceptionCode, } from 'src/engine/metadata-modules/serverless-function/serverless-function.exception'; -import { COMMON_LAYER_NAME } from 'src/engine/integrations/serverless/drivers/constants/common-layer-name'; -import { copyAndBuildDependencies } from 'src/engine/integrations/serverless/drivers/utils/copy-and-build-dependencies'; -import { SERVERLESS_TMPDIR_FOLDER } from 'src/engine/integrations/serverless/drivers/constants/serverless-tmpdir-folder'; +import { COMMON_LAYER_NAME } from 'src/engine/core-modules/serverless/drivers/constants/common-layer-name'; +import { copyAndBuildDependencies } from 'src/engine/core-modules/serverless/drivers/utils/copy-and-build-dependencies'; +import { SERVERLESS_TMPDIR_FOLDER } from 'src/engine/core-modules/serverless/drivers/constants/serverless-tmpdir-folder'; export interface LocalDriverOptions { fileStorageService: FileStorageService; diff --git a/packages/twenty-server/src/engine/integrations/serverless/drivers/utils/compile-typescript.ts b/packages/twenty-server/src/engine/core-modules/serverless/drivers/utils/compile-typescript.ts similarity index 100% rename from packages/twenty-server/src/engine/integrations/serverless/drivers/utils/compile-typescript.ts rename to packages/twenty-server/src/engine/core-modules/serverless/drivers/utils/compile-typescript.ts diff --git a/packages/twenty-server/src/engine/integrations/serverless/drivers/utils/copy-and-build-dependencies.ts b/packages/twenty-server/src/engine/core-modules/serverless/drivers/utils/copy-and-build-dependencies.ts similarity index 88% rename from packages/twenty-server/src/engine/integrations/serverless/drivers/utils/copy-and-build-dependencies.ts rename to packages/twenty-server/src/engine/core-modules/serverless/drivers/utils/copy-and-build-dependencies.ts index ab50e6a8a..0a7581bb8 100644 --- a/packages/twenty-server/src/engine/integrations/serverless/drivers/utils/copy-and-build-dependencies.ts +++ b/packages/twenty-server/src/engine/core-modules/serverless/drivers/utils/copy-and-build-dependencies.ts @@ -3,7 +3,7 @@ import { promisify } from 'util'; import { exec } from 'child_process'; import { join } from 'path'; -import { getLayerDependenciesDirName } from 'src/engine/integrations/serverless/drivers/utils/get-layer-dependencies-dir-name'; +import { getLayerDependenciesDirName } from 'src/engine/core-modules/serverless/drivers/utils/get-layer-dependencies-dir-name'; const execPromise = promisify(exec); diff --git a/packages/twenty-server/src/engine/integrations/serverless/drivers/utils/create-zip-file.ts b/packages/twenty-server/src/engine/core-modules/serverless/drivers/utils/create-zip-file.ts similarity index 100% rename from packages/twenty-server/src/engine/integrations/serverless/drivers/utils/create-zip-file.ts rename to packages/twenty-server/src/engine/core-modules/serverless/drivers/utils/create-zip-file.ts diff --git a/packages/twenty-server/src/engine/integrations/serverless/drivers/utils/get-last-layer-dependencies.ts b/packages/twenty-server/src/engine/core-modules/serverless/drivers/utils/get-last-layer-dependencies.ts similarity index 82% rename from packages/twenty-server/src/engine/integrations/serverless/drivers/utils/get-last-layer-dependencies.ts rename to packages/twenty-server/src/engine/core-modules/serverless/drivers/utils/get-last-layer-dependencies.ts index a7c484d09..75eba8888 100644 --- a/packages/twenty-server/src/engine/integrations/serverless/drivers/utils/get-last-layer-dependencies.ts +++ b/packages/twenty-server/src/engine/core-modules/serverless/drivers/utils/get-last-layer-dependencies.ts @@ -1,7 +1,7 @@ import fs from 'fs/promises'; import { join } from 'path'; -import { getLayerDependenciesDirName } from 'src/engine/integrations/serverless/drivers/utils/get-layer-dependencies-dir-name'; +import { getLayerDependenciesDirName } from 'src/engine/core-modules/serverless/drivers/utils/get-layer-dependencies-dir-name'; export type LayerDependencies = { packageJson: { dependencies: object }; diff --git a/packages/twenty-server/src/engine/integrations/serverless/drivers/utils/get-layer-dependencies-dir-name.ts b/packages/twenty-server/src/engine/core-modules/serverless/drivers/utils/get-layer-dependencies-dir-name.ts similarity index 86% rename from packages/twenty-server/src/engine/integrations/serverless/drivers/utils/get-layer-dependencies-dir-name.ts rename to packages/twenty-server/src/engine/core-modules/serverless/drivers/utils/get-layer-dependencies-dir-name.ts index ce29b7e43..3c6ee4e8b 100644 --- a/packages/twenty-server/src/engine/integrations/serverless/drivers/utils/get-layer-dependencies-dir-name.ts +++ b/packages/twenty-server/src/engine/core-modules/serverless/drivers/utils/get-layer-dependencies-dir-name.ts @@ -1,6 +1,6 @@ import path from 'path'; -import { LAST_LAYER_VERSION } from 'src/engine/integrations/serverless/drivers/layers/last-layer-version'; +import { LAST_LAYER_VERSION } from 'src/engine/core-modules/serverless/drivers/layers/last-layer-version'; // Can only be used in src/engine/integrations/serverless/drivers/utils folder export const getLayerDependenciesDirName = ( diff --git a/packages/twenty-server/src/engine/integrations/serverless/drivers/utils/lambda-build-directory-manager.ts b/packages/twenty-server/src/engine/core-modules/serverless/drivers/utils/lambda-build-directory-manager.ts similarity index 94% rename from packages/twenty-server/src/engine/integrations/serverless/drivers/utils/lambda-build-directory-manager.ts rename to packages/twenty-server/src/engine/core-modules/serverless/drivers/utils/lambda-build-directory-manager.ts index 00b150b5d..b67811f97 100644 --- a/packages/twenty-server/src/engine/integrations/serverless/drivers/utils/lambda-build-directory-manager.ts +++ b/packages/twenty-server/src/engine/core-modules/serverless/drivers/utils/lambda-build-directory-manager.ts @@ -3,7 +3,7 @@ import * as fs from 'fs/promises'; import { v4 } from 'uuid'; -import { SERVERLESS_TMPDIR_FOLDER } from 'src/engine/integrations/serverless/drivers/constants/serverless-tmpdir-folder'; +import { SERVERLESS_TMPDIR_FOLDER } from 'src/engine/core-modules/serverless/drivers/constants/serverless-tmpdir-folder'; export const NODE_LAYER_SUBFOLDER = 'nodejs'; diff --git a/packages/twenty-server/src/engine/integrations/serverless/serverless-module.factory.ts b/packages/twenty-server/src/engine/core-modules/serverless/serverless-module.factory.ts similarity index 89% rename from packages/twenty-server/src/engine/integrations/serverless/serverless-module.factory.ts rename to packages/twenty-server/src/engine/core-modules/serverless/serverless-module.factory.ts index 12bec8fe0..e8c2d7baa 100644 --- a/packages/twenty-server/src/engine/integrations/serverless/serverless-module.factory.ts +++ b/packages/twenty-server/src/engine/core-modules/serverless/serverless-module.factory.ts @@ -1,11 +1,11 @@ import { fromNodeProviderChain } from '@aws-sdk/credential-providers'; -import { EnvironmentService } from 'src/engine/integrations/environment/environment.service'; -import { FileStorageService } from 'src/engine/integrations/file-storage/file-storage.service'; +import { EnvironmentService } from 'src/engine/core-modules/environment/environment.service'; +import { FileStorageService } from 'src/engine/core-modules/file-storage/file-storage.service'; import { ServerlessDriverType, ServerlessModuleOptions, -} from 'src/engine/integrations/serverless/serverless.interface'; +} from 'src/engine/core-modules/serverless/serverless.interface'; export const serverlessModuleFactory = async ( environmentService: EnvironmentService, diff --git a/packages/twenty-server/src/engine/integrations/serverless/serverless.constants.ts b/packages/twenty-server/src/engine/core-modules/serverless/serverless.constants.ts similarity index 100% rename from packages/twenty-server/src/engine/integrations/serverless/serverless.constants.ts rename to packages/twenty-server/src/engine/core-modules/serverless/serverless.constants.ts diff --git a/packages/twenty-server/src/engine/integrations/serverless/serverless.interface.ts b/packages/twenty-server/src/engine/core-modules/serverless/serverless.interface.ts similarity index 85% rename from packages/twenty-server/src/engine/integrations/serverless/serverless.interface.ts rename to packages/twenty-server/src/engine/core-modules/serverless/serverless.interface.ts index c1c4fb661..be2cbb694 100644 --- a/packages/twenty-server/src/engine/integrations/serverless/serverless.interface.ts +++ b/packages/twenty-server/src/engine/core-modules/serverless/serverless.interface.ts @@ -1,7 +1,7 @@ import { FactoryProvider, ModuleMetadata } from '@nestjs/common'; -import { LocalDriverOptions } from 'src/engine/integrations/serverless/drivers/local.driver'; -import { LambdaDriverOptions } from 'src/engine/integrations/serverless/drivers/lambda.driver'; +import { LocalDriverOptions } from 'src/engine/core-modules/serverless/drivers/local.driver'; +import { LambdaDriverOptions } from 'src/engine/core-modules/serverless/drivers/lambda.driver'; export enum ServerlessDriverType { Lambda = 'lambda', diff --git a/packages/twenty-server/src/engine/integrations/serverless/serverless.module.ts b/packages/twenty-server/src/engine/core-modules/serverless/serverless.module.ts similarity index 73% rename from packages/twenty-server/src/engine/integrations/serverless/serverless.module.ts rename to packages/twenty-server/src/engine/core-modules/serverless/serverless.module.ts index f65034f3d..de6378807 100644 --- a/packages/twenty-server/src/engine/integrations/serverless/serverless.module.ts +++ b/packages/twenty-server/src/engine/core-modules/serverless/serverless.module.ts @@ -1,13 +1,13 @@ import { DynamicModule, Global } from '@nestjs/common'; -import { LambdaDriver } from 'src/engine/integrations/serverless/drivers/lambda.driver'; -import { LocalDriver } from 'src/engine/integrations/serverless/drivers/local.driver'; -import { SERVERLESS_DRIVER } from 'src/engine/integrations/serverless/serverless.constants'; +import { LambdaDriver } from 'src/engine/core-modules/serverless/drivers/lambda.driver'; +import { LocalDriver } from 'src/engine/core-modules/serverless/drivers/local.driver'; +import { SERVERLESS_DRIVER } from 'src/engine/core-modules/serverless/serverless.constants'; import { ServerlessDriverType, ServerlessModuleAsyncOptions, -} from 'src/engine/integrations/serverless/serverless.interface'; -import { ServerlessService } from 'src/engine/integrations/serverless/serverless.service'; +} from 'src/engine/core-modules/serverless/serverless.interface'; +import { ServerlessService } from 'src/engine/core-modules/serverless/serverless.service'; @Global() export class ServerlessModule { diff --git a/packages/twenty-server/src/engine/integrations/serverless/serverless.service.ts b/packages/twenty-server/src/engine/core-modules/serverless/serverless.service.ts similarity index 89% rename from packages/twenty-server/src/engine/integrations/serverless/serverless.service.ts rename to packages/twenty-server/src/engine/core-modules/serverless/serverless.service.ts index b83c44060..ee8fc93b4 100644 --- a/packages/twenty-server/src/engine/integrations/serverless/serverless.service.ts +++ b/packages/twenty-server/src/engine/core-modules/serverless/serverless.service.ts @@ -3,9 +3,9 @@ import { Inject, Injectable } from '@nestjs/common'; import { ServerlessDriver, ServerlessExecuteResult, -} from 'src/engine/integrations/serverless/drivers/interfaces/serverless-driver.interface'; +} from 'src/engine/core-modules/serverless/drivers/interfaces/serverless-driver.interface'; -import { SERVERLESS_DRIVER } from 'src/engine/integrations/serverless/serverless.constants'; +import { SERVERLESS_DRIVER } from 'src/engine/core-modules/serverless/serverless.constants'; import { ServerlessFunctionEntity } from 'src/engine/metadata-modules/serverless-function/serverless-function.entity'; @Injectable() diff --git a/packages/twenty-server/src/engine/integrations/serverless/utils/serverless-get-folder.utils.ts b/packages/twenty-server/src/engine/core-modules/serverless/utils/serverless-get-folder.utils.ts similarity index 100% rename from packages/twenty-server/src/engine/integrations/serverless/utils/serverless-get-folder.utils.ts rename to packages/twenty-server/src/engine/core-modules/serverless/utils/serverless-get-folder.utils.ts diff --git a/packages/twenty-server/src/engine/core-modules/throttler/throttler.service.ts b/packages/twenty-server/src/engine/core-modules/throttler/throttler.service.ts index 5805db89a..55dac4c38 100644 --- a/packages/twenty-server/src/engine/core-modules/throttler/throttler.service.ts +++ b/packages/twenty-server/src/engine/core-modules/throttler/throttler.service.ts @@ -4,9 +4,9 @@ import { ThrottlerException, ThrottlerExceptionCode, } from 'src/engine/core-modules/throttler/throttler.exception'; -import { CacheStorageService } from 'src/engine/integrations/cache-storage/cache-storage.service'; -import { InjectCacheStorage } from 'src/engine/integrations/cache-storage/decorators/cache-storage.decorator'; -import { CacheStorageNamespace } from 'src/engine/integrations/cache-storage/types/cache-storage-namespace.enum'; +import { CacheStorageService } from 'src/engine/core-modules/cache-storage/cache-storage.service'; +import { InjectCacheStorage } from 'src/engine/core-modules/cache-storage/decorators/cache-storage.decorator'; +import { CacheStorageNamespace } from 'src/engine/core-modules/cache-storage/types/cache-storage-namespace.enum'; @Injectable() export class ThrottlerService { diff --git a/packages/twenty-server/src/engine/core-modules/user-workspace/user-workspace.service.ts b/packages/twenty-server/src/engine/core-modules/user-workspace/user-workspace.service.ts index cc2727b3a..69972542b 100644 --- a/packages/twenty-server/src/engine/core-modules/user-workspace/user-workspace.service.ts +++ b/packages/twenty-server/src/engine/core-modules/user-workspace/user-workspace.service.ts @@ -8,7 +8,7 @@ import { TypeORMService } from 'src/database/typeorm/typeorm.service'; import { UserWorkspace } from 'src/engine/core-modules/user-workspace/user-workspace.entity'; import { User } from 'src/engine/core-modules/user/user.entity'; import { Workspace } from 'src/engine/core-modules/workspace/workspace.entity'; -import { ObjectRecordCreateEvent } from 'src/engine/integrations/event-emitter/types/object-record-create.event'; +import { ObjectRecordCreateEvent } from 'src/engine/core-modules/event-emitter/types/object-record-create.event'; import { DataSourceService } from 'src/engine/metadata-modules/data-source/data-source.service'; import { WorkspaceEventEmitter } from 'src/engine/workspace-event-emitter/workspace-event-emitter'; import { WorkspaceMemberWorkspaceEntity } from 'src/modules/workspace-member/standard-objects/workspace-member.workspace-entity'; diff --git a/packages/twenty-server/src/engine/core-modules/user/services/user.service.ts b/packages/twenty-server/src/engine/core-modules/user/services/user.service.ts index aec142d26..9dc75ed16 100644 --- a/packages/twenty-server/src/engine/core-modules/user/services/user.service.ts +++ b/packages/twenty-server/src/engine/core-modules/user/services/user.service.ts @@ -12,7 +12,7 @@ import { Workspace, WorkspaceActivationStatus, } from 'src/engine/core-modules/workspace/workspace.entity'; -import { ObjectRecordDeleteEvent } from 'src/engine/integrations/event-emitter/types/object-record-delete.event'; +import { ObjectRecordDeleteEvent } from 'src/engine/core-modules/event-emitter/types/object-record-delete.event'; import { DataSourceService } from 'src/engine/metadata-modules/data-source/data-source.service'; import { TwentyORMGlobalManager } from 'src/engine/twenty-orm/twenty-orm-global.manager'; import { WorkspaceEventEmitter } from 'src/engine/workspace-event-emitter/workspace-event-emitter'; diff --git a/packages/twenty-server/src/engine/core-modules/user/user.resolver.ts b/packages/twenty-server/src/engine/core-modules/user/user.resolver.ts index c77bb690b..872ab7321 100644 --- a/packages/twenty-server/src/engine/core-modules/user/user.resolver.ts +++ b/packages/twenty-server/src/engine/core-modules/user/user.resolver.ts @@ -17,7 +17,7 @@ import { FileUpload, GraphQLUpload } from 'graphql-upload'; import { Repository } from 'typeorm'; import { FileFolder } from 'src/engine/core-modules/file/interfaces/file-folder.interface'; -import { SupportDriver } from 'src/engine/integrations/environment/interfaces/support.interface'; +import { SupportDriver } from 'src/engine/core-modules/environment/interfaces/support.interface'; import { FileUploadService } from 'src/engine/core-modules/file/file-upload/services/file-upload.service'; import { FileService } from 'src/engine/core-modules/file/services/file.service'; @@ -32,7 +32,7 @@ import { AuthUser } from 'src/engine/decorators/auth/auth-user.decorator'; import { AuthWorkspace } from 'src/engine/decorators/auth/auth-workspace.decorator'; import { DemoEnvGuard } from 'src/engine/guards/demo.env.guard'; import { JwtAuthGuard } from 'src/engine/guards/jwt.auth.guard'; -import { EnvironmentService } from 'src/engine/integrations/environment/environment.service'; +import { EnvironmentService } from 'src/engine/core-modules/environment/environment.service'; import { streamToBuffer } from 'src/utils/stream-to-buffer'; const getHMACKey = (email?: string, key?: string | null) => { diff --git a/packages/twenty-server/src/engine/core-modules/workflow/filters/workflow-trigger-graphql-api-exception.filter.ts b/packages/twenty-server/src/engine/core-modules/workflow/filters/workflow-trigger-graphql-api-exception.filter.ts index 1bbfdc273..a274ccd43 100644 --- a/packages/twenty-server/src/engine/core-modules/workflow/filters/workflow-trigger-graphql-api-exception.filter.ts +++ b/packages/twenty-server/src/engine/core-modules/workflow/filters/workflow-trigger-graphql-api-exception.filter.ts @@ -7,7 +7,7 @@ import { import { WorkflowTriggerException, WorkflowTriggerExceptionCode, -} from 'src/modules/workflow/workflow-trigger/workflow-trigger.exception'; +} from 'src/modules/workflow/workflow-trigger/exceptions/workflow-trigger.exception'; @Catch(WorkflowTriggerException) export class WorkflowTriggerGraphqlApiExceptionFilter diff --git a/packages/twenty-server/src/engine/core-modules/workflow/workflow-trigger.resolver.ts b/packages/twenty-server/src/engine/core-modules/workflow/workflow-trigger.resolver.ts index 630832a18..ef2c735a3 100644 --- a/packages/twenty-server/src/engine/core-modules/workflow/workflow-trigger.resolver.ts +++ b/packages/twenty-server/src/engine/core-modules/workflow/workflow-trigger.resolver.ts @@ -8,7 +8,7 @@ import { WorkflowTriggerGraphqlApiExceptionFilter } from 'src/engine/core-module import { AuthUser } from 'src/engine/decorators/auth/auth-user.decorator'; import { AuthWorkspaceMemberId } from 'src/engine/decorators/auth/auth-workspace-member-id.decorator'; import { JwtAuthGuard } from 'src/engine/guards/jwt.auth.guard'; -import { WorkflowTriggerWorkspaceService } from 'src/modules/workflow/workflow-trigger/workflow-trigger.workspace-service'; +import { WorkflowTriggerWorkspaceService } from 'src/modules/workflow/workflow-trigger/workspace-services/workflow-trigger.workspace-service'; @Resolver() @UseGuards(JwtAuthGuard) diff --git a/packages/twenty-server/src/engine/core-modules/workspace/handle-workspace-member-deleted.job.ts b/packages/twenty-server/src/engine/core-modules/workspace/handle-workspace-member-deleted.job.ts index 7e3bce067..8d1193073 100644 --- a/packages/twenty-server/src/engine/core-modules/workspace/handle-workspace-member-deleted.job.ts +++ b/packages/twenty-server/src/engine/core-modules/workspace/handle-workspace-member-deleted.job.ts @@ -1,7 +1,7 @@ import { WorkspaceService } from 'src/engine/core-modules/workspace/services/workspace.service'; -import { Processor } from 'src/engine/integrations/message-queue/decorators/processor.decorator'; -import { MessageQueue } from 'src/engine/integrations/message-queue/message-queue.constants'; -import { Process } from 'src/engine/integrations/message-queue/decorators/process.decorator'; +import { Processor } from 'src/engine/core-modules/message-queue/decorators/processor.decorator'; +import { MessageQueue } from 'src/engine/core-modules/message-queue/message-queue.constants'; +import { Process } from 'src/engine/core-modules/message-queue/decorators/process.decorator'; export type HandleWorkspaceMemberDeletedJobData = { workspaceId: string; diff --git a/packages/twenty-server/src/engine/core-modules/workspace/services/workspace.service.spec.ts b/packages/twenty-server/src/engine/core-modules/workspace/services/workspace.service.spec.ts index 4f3bd8008..2b1c4c171 100644 --- a/packages/twenty-server/src/engine/core-modules/workspace/services/workspace.service.spec.ts +++ b/packages/twenty-server/src/engine/core-modules/workspace/services/workspace.service.spec.ts @@ -8,8 +8,8 @@ import { UserWorkspaceService } from 'src/engine/core-modules/user-workspace/use import { UserService } from 'src/engine/core-modules/user/services/user.service'; import { User } from 'src/engine/core-modules/user/user.entity'; import { Workspace } from 'src/engine/core-modules/workspace/workspace.entity'; -import { EmailService } from 'src/engine/integrations/email/email.service'; -import { EnvironmentService } from 'src/engine/integrations/environment/environment.service'; +import { EmailService } from 'src/engine/core-modules/email/email.service'; +import { EnvironmentService } from 'src/engine/core-modules/environment/environment.service'; import { WorkspaceManagerService } from 'src/engine/workspace-manager/workspace-manager.service'; import { WorkspaceService } from './workspace.service'; diff --git a/packages/twenty-server/src/engine/core-modules/workspace/services/workspace.service.ts b/packages/twenty-server/src/engine/core-modules/workspace/services/workspace.service.ts index 57344c77c..70dbdf576 100644 --- a/packages/twenty-server/src/engine/core-modules/workspace/services/workspace.service.ts +++ b/packages/twenty-server/src/engine/core-modules/workspace/services/workspace.service.ts @@ -19,8 +19,8 @@ import { Workspace, WorkspaceActivationStatus, } from 'src/engine/core-modules/workspace/workspace.entity'; -import { EmailService } from 'src/engine/integrations/email/email.service'; -import { EnvironmentService } from 'src/engine/integrations/environment/environment.service'; +import { EmailService } from 'src/engine/core-modules/email/email.service'; +import { EnvironmentService } from 'src/engine/core-modules/environment/environment.service'; import { WorkspaceManagerService } from 'src/engine/workspace-manager/workspace-manager.service'; // eslint-disable-next-line @nx/workspace-inject-workspace-repository diff --git a/packages/twenty-server/src/engine/core-modules/workspace/workspace-workspace-member.listener.ts b/packages/twenty-server/src/engine/core-modules/workspace/workspace-workspace-member.listener.ts index fbc01935d..ad3c2b7ee 100644 --- a/packages/twenty-server/src/engine/core-modules/workspace/workspace-workspace-member.listener.ts +++ b/packages/twenty-server/src/engine/core-modules/workspace/workspace-workspace-member.listener.ts @@ -6,11 +6,11 @@ import { HandleWorkspaceMemberDeletedJob, HandleWorkspaceMemberDeletedJobData, } from 'src/engine/core-modules/workspace/handle-workspace-member-deleted.job'; -import { ObjectRecordDeleteEvent } from 'src/engine/integrations/event-emitter/types/object-record-delete.event'; -import { ObjectRecordUpdateEvent } from 'src/engine/integrations/event-emitter/types/object-record-update.event'; -import { InjectMessageQueue } from 'src/engine/integrations/message-queue/decorators/message-queue.decorator'; -import { MessageQueue } from 'src/engine/integrations/message-queue/message-queue.constants'; -import { MessageQueueService } from 'src/engine/integrations/message-queue/services/message-queue.service'; +import { ObjectRecordDeleteEvent } from 'src/engine/core-modules/event-emitter/types/object-record-delete.event'; +import { ObjectRecordUpdateEvent } from 'src/engine/core-modules/event-emitter/types/object-record-update.event'; +import { InjectMessageQueue } from 'src/engine/core-modules/message-queue/decorators/message-queue.decorator'; +import { MessageQueue } from 'src/engine/core-modules/message-queue/message-queue.constants'; +import { MessageQueueService } from 'src/engine/core-modules/message-queue/services/message-queue.service'; import { WorkspaceEventBatch } from 'src/engine/workspace-event-emitter/workspace-event.type'; import { WorkspaceMemberWorkspaceEntity } from 'src/modules/workspace-member/standard-objects/workspace-member.workspace-entity'; diff --git a/packages/twenty-server/src/engine/guards/demo.env.guard.ts b/packages/twenty-server/src/engine/guards/demo.env.guard.ts index 49fe9ae47..5a64ff235 100644 --- a/packages/twenty-server/src/engine/guards/demo.env.guard.ts +++ b/packages/twenty-server/src/engine/guards/demo.env.guard.ts @@ -5,7 +5,7 @@ import { } from '@nestjs/common'; import { AuthGuard } from '@nestjs/passport'; -import { EnvironmentService } from 'src/engine/integrations/environment/environment.service'; +import { EnvironmentService } from 'src/engine/core-modules/environment/environment.service'; import { getRequest } from 'src/utils/extract-request'; @Injectable() diff --git a/packages/twenty-server/src/engine/integrations/captcha/interfaces/index.ts b/packages/twenty-server/src/engine/integrations/captcha/interfaces/index.ts deleted file mode 100644 index bd85706d7..000000000 --- a/packages/twenty-server/src/engine/integrations/captcha/interfaces/index.ts +++ /dev/null @@ -1 +0,0 @@ -export * from './captcha.interface'; diff --git a/packages/twenty-server/src/engine/integrations/exception-handler/interfaces/exception-handler-driver.interface.ts b/packages/twenty-server/src/engine/integrations/exception-handler/interfaces/exception-handler-driver.interface.ts deleted file mode 100644 index 4c8af5c20..000000000 --- a/packages/twenty-server/src/engine/integrations/exception-handler/interfaces/exception-handler-driver.interface.ts +++ /dev/null @@ -1,10 +0,0 @@ -import { ExceptionHandlerOptions } from './exception-handler-options.interface'; -import { ExceptionHandlerUser } from './exception-handler-user.interface'; - -export interface ExceptionHandlerDriverInterface { - captureExceptions( - exceptions: ReadonlyArray<any>, - options?: ExceptionHandlerOptions, - ): string[]; - captureMessage(message: string, user?: ExceptionHandlerUser): void; -} diff --git a/packages/twenty-server/src/engine/integrations/exception-handler/interfaces/index.ts b/packages/twenty-server/src/engine/integrations/exception-handler/interfaces/index.ts deleted file mode 100644 index f3c1acc40..000000000 --- a/packages/twenty-server/src/engine/integrations/exception-handler/interfaces/index.ts +++ /dev/null @@ -1,2 +0,0 @@ -export * from './exception-handler.interface'; -export * from './exception-handler-driver.interface'; diff --git a/packages/twenty-server/src/engine/integrations/file-storage/interfaces/index.ts b/packages/twenty-server/src/engine/integrations/file-storage/interfaces/index.ts deleted file mode 100644 index 6abeadb10..000000000 --- a/packages/twenty-server/src/engine/integrations/file-storage/interfaces/index.ts +++ /dev/null @@ -1 +0,0 @@ -export * from './file-storage.interface'; diff --git a/packages/twenty-server/src/engine/integrations/integrations.module.ts b/packages/twenty-server/src/engine/integrations/integrations.module.ts deleted file mode 100644 index e0a02b92a..000000000 --- a/packages/twenty-server/src/engine/integrations/integrations.module.ts +++ /dev/null @@ -1,76 +0,0 @@ -import { Module } from '@nestjs/common'; -import { HttpAdapterHost } from '@nestjs/core'; -import { EventEmitterModule } from '@nestjs/event-emitter'; - -import { CacheStorageModule } from 'src/engine/integrations/cache-storage/cache-storage.module'; -import { CaptchaModule } from 'src/engine/integrations/captcha/captcha.module'; -import { captchaModuleFactory } from 'src/engine/integrations/captcha/captcha.module-factory'; -import { EmailModule } from 'src/engine/integrations/email/email.module'; -import { emailModuleFactory } from 'src/engine/integrations/email/email.module-factory'; -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 { FileStorageService } from 'src/engine/integrations/file-storage/file-storage.service'; -import { LLMChatModelModule } from 'src/engine/integrations/llm-chat-model/llm-chat-model.module'; -import { llmChatModelModuleFactory } from 'src/engine/integrations/llm-chat-model/llm-chat-model.module-factory'; -import { LLMTracingModule } from 'src/engine/integrations/llm-tracing/llm-tracing.module'; -import { llmTracingModuleFactory } from 'src/engine/integrations/llm-tracing/llm-tracing.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 { serverlessModuleFactory } from 'src/engine/integrations/serverless/serverless-module.factory'; -import { ServerlessModule } from 'src/engine/integrations/serverless/serverless.module'; - -import { EnvironmentModule } from './environment/environment.module'; -import { EnvironmentService } from './environment/environment.service'; -import { FileStorageModule } from './file-storage/file-storage.module'; -import { LoggerModule } from './logger/logger.module'; -import { MessageQueueModule } from './message-queue/message-queue.module'; - -@Module({ - imports: [ - EnvironmentModule.forRoot({}), - FileStorageModule.forRootAsync({ - useFactory: fileStorageModuleFactory, - inject: [EnvironmentService], - }), - LoggerModule.forRootAsync({ - useFactory: loggerModuleFactory, - inject: [EnvironmentService], - }), - MessageQueueModule.registerAsync({ - useFactory: messageQueueModuleFactory, - inject: [EnvironmentService], - }), - ExceptionHandlerModule.forRootAsync({ - useFactory: exceptionHandlerModuleFactory, - inject: [EnvironmentService, HttpAdapterHost], - }), - EmailModule.forRoot({ - useFactory: emailModuleFactory, - inject: [EnvironmentService], - }), - CaptchaModule.forRoot({ - useFactory: captchaModuleFactory, - inject: [EnvironmentService], - }), - EventEmitterModule.forRoot({ - wildcard: true, - }), - CacheStorageModule, - LLMChatModelModule.forRoot({ - useFactory: llmChatModelModuleFactory, - inject: [EnvironmentService], - }), - LLMTracingModule.forRoot({ - useFactory: llmTracingModuleFactory, - inject: [EnvironmentService], - }), - ServerlessModule.forRootAsync({ - useFactory: serverlessModuleFactory, - inject: [EnvironmentService, FileStorageService], - }), - ], - exports: [], - providers: [], -}) -export class IntegrationsModule {} diff --git a/packages/twenty-server/src/engine/integrations/logger/interfaces/index.ts b/packages/twenty-server/src/engine/integrations/logger/interfaces/index.ts deleted file mode 100644 index 2e75a7e00..000000000 --- a/packages/twenty-server/src/engine/integrations/logger/interfaces/index.ts +++ /dev/null @@ -1 +0,0 @@ -export * from './logger.interface'; diff --git a/packages/twenty-server/src/engine/integrations/message-queue/interfaces/index.ts b/packages/twenty-server/src/engine/integrations/message-queue/interfaces/index.ts deleted file mode 100644 index 4fdb52388..000000000 --- a/packages/twenty-server/src/engine/integrations/message-queue/interfaces/index.ts +++ /dev/null @@ -1 +0,0 @@ -export * from './message-queue-module-options.interface'; diff --git a/packages/twenty-server/src/engine/metadata-modules/field-metadata/validators/is-field-metadata-default-value.validator.ts b/packages/twenty-server/src/engine/metadata-modules/field-metadata/validators/is-field-metadata-default-value.validator.ts index f68aea19e..977358788 100644 --- a/packages/twenty-server/src/engine/metadata-modules/field-metadata/validators/is-field-metadata-default-value.validator.ts +++ b/packages/twenty-server/src/engine/metadata-modules/field-metadata/validators/is-field-metadata-default-value.validator.ts @@ -14,7 +14,7 @@ import { FieldMetadataType, } from 'src/engine/metadata-modules/field-metadata/field-metadata.entity'; import { validateDefaultValueForType } from 'src/engine/metadata-modules/field-metadata/utils/validate-default-value-for-type.util'; -import { LoggerService } from 'src/engine/integrations/logger/logger.service'; +import { LoggerService } from 'src/engine/core-modules/logger/logger.service'; @Injectable() @ValidatorConstraint({ name: 'isFieldMetadataDefaultValue', async: true }) diff --git a/packages/twenty-server/src/engine/metadata-modules/remote-server/remote-server.service.ts b/packages/twenty-server/src/engine/metadata-modules/remote-server/remote-server.service.ts index d1c241827..8538eabcb 100644 --- a/packages/twenty-server/src/engine/metadata-modules/remote-server/remote-server.service.ts +++ b/packages/twenty-server/src/engine/metadata-modules/remote-server/remote-server.service.ts @@ -10,7 +10,7 @@ import { RemoteServerEntity, RemoteServerType, } from 'src/engine/metadata-modules/remote-server/remote-server.entity'; -import { EnvironmentService } from 'src/engine/integrations/environment/environment.service'; +import { EnvironmentService } from 'src/engine/core-modules/environment/environment.service'; import { encryptText } from 'src/engine/core-modules/auth/auth.util'; import { validateObjectAgainstInjections, diff --git a/packages/twenty-server/src/engine/metadata-modules/serverless-function/serverless-function.module.ts b/packages/twenty-server/src/engine/metadata-modules/serverless-function/serverless-function.module.ts index 02c76f596..f1b700d3d 100644 --- a/packages/twenty-server/src/engine/metadata-modules/serverless-function/serverless-function.module.ts +++ b/packages/twenty-server/src/engine/metadata-modules/serverless-function/serverless-function.module.ts @@ -13,7 +13,7 @@ import { FileUploadModule } from 'src/engine/core-modules/file/file-upload/file- import { FileModule } from 'src/engine/core-modules/file/file.module'; import { ThrottlerModule } from 'src/engine/core-modules/throttler/throttler.module'; import { JwtAuthGuard } from 'src/engine/guards/jwt.auth.guard'; -import { ServerlessModule } from 'src/engine/integrations/serverless/serverless.module'; +import { ServerlessModule } from 'src/engine/core-modules/serverless/serverless.module'; import { ServerlessFunctionDTO } from 'src/engine/metadata-modules/serverless-function/dtos/serverless-function.dto'; import { ServerlessFunctionEntity } from 'src/engine/metadata-modules/serverless-function/serverless-function.entity'; import { ServerlessFunctionResolver } from 'src/engine/metadata-modules/serverless-function/serverless-function.resolver'; diff --git a/packages/twenty-server/src/engine/metadata-modules/serverless-function/serverless-function.service.ts b/packages/twenty-server/src/engine/metadata-modules/serverless-function/serverless-function.service.ts index 340754047..d7c591eb0 100644 --- a/packages/twenty-server/src/engine/metadata-modules/serverless-function/serverless-function.service.ts +++ b/packages/twenty-server/src/engine/metadata-modules/serverless-function/serverless-function.service.ts @@ -5,16 +5,16 @@ import { TypeOrmQueryService } from '@ptc-org/nestjs-query-typeorm'; import { FileUpload } from 'graphql-upload'; import { Repository } from 'typeorm'; -import { FileStorageExceptionCode } from 'src/engine/integrations/file-storage/interfaces/file-storage-exception'; -import { ServerlessExecuteResult } from 'src/engine/integrations/serverless/drivers/interfaces/serverless-driver.interface'; +import { FileStorageExceptionCode } from 'src/engine/core-modules/file-storage/interfaces/file-storage-exception'; +import { ServerlessExecuteResult } from 'src/engine/core-modules/serverless/drivers/interfaces/serverless-driver.interface'; import { ThrottlerService } from 'src/engine/core-modules/throttler/throttler.service'; -import { EnvironmentService } from 'src/engine/integrations/environment/environment.service'; -import { FileStorageService } from 'src/engine/integrations/file-storage/file-storage.service'; -import { readFileContent } from 'src/engine/integrations/file-storage/utils/read-file-content'; -import { SOURCE_FILE_NAME } from 'src/engine/integrations/serverless/drivers/constants/source-file-name'; -import { ServerlessService } from 'src/engine/integrations/serverless/serverless.service'; -import { getServerlessFolder } from 'src/engine/integrations/serverless/utils/serverless-get-folder.utils'; +import { EnvironmentService } from 'src/engine/core-modules/environment/environment.service'; +import { FileStorageService } from 'src/engine/core-modules/file-storage/file-storage.service'; +import { readFileContent } from 'src/engine/core-modules/file-storage/utils/read-file-content'; +import { SOURCE_FILE_NAME } from 'src/engine/core-modules/serverless/drivers/constants/source-file-name'; +import { ServerlessService } from 'src/engine/core-modules/serverless/serverless.service'; +import { getServerlessFolder } from 'src/engine/core-modules/serverless/utils/serverless-get-folder.utils'; import { CreateServerlessFunctionFromFileInput } from 'src/engine/metadata-modules/serverless-function/dtos/create-serverless-function-from-file.input'; import { UpdateServerlessFunctionInput } from 'src/engine/metadata-modules/serverless-function/dtos/update-serverless-function.input'; import { @@ -27,8 +27,8 @@ import { } from 'src/engine/metadata-modules/serverless-function/serverless-function.exception'; import { serverlessFunctionCreateHash } from 'src/engine/metadata-modules/serverless-function/utils/serverless-function-create-hash.utils'; import { isDefined } from 'src/utils/is-defined'; -import { getLastLayerDependencies } from 'src/engine/integrations/serverless/drivers/utils/get-last-layer-dependencies'; -import { LAST_LAYER_VERSION } from 'src/engine/integrations/serverless/drivers/layers/last-layer-version'; +import { getLastLayerDependencies } from 'src/engine/core-modules/serverless/drivers/utils/get-last-layer-dependencies'; +import { LAST_LAYER_VERSION } from 'src/engine/core-modules/serverless/drivers/layers/last-layer-version'; @Injectable() export class ServerlessFunctionService extends TypeOrmQueryService<ServerlessFunctionEntity> { diff --git a/packages/twenty-server/src/engine/middlewares/graphql-hydrate-request-from-token.middleware.ts b/packages/twenty-server/src/engine/middlewares/graphql-hydrate-request-from-token.middleware.ts index c510f3e4a..8da811992 100644 --- a/packages/twenty-server/src/engine/middlewares/graphql-hydrate-request-from-token.middleware.ts +++ b/packages/twenty-server/src/engine/middlewares/graphql-hydrate-request-from-token.middleware.ts @@ -5,7 +5,7 @@ import { NextFunction, Request, Response } from 'express'; import { AuthGraphqlApiExceptionFilter } from 'src/engine/core-modules/auth/filters/auth-graphql-api-exception.filter'; import { TokenService } from 'src/engine/core-modules/auth/services/token.service'; import { AuthContext } from 'src/engine/core-modules/auth/types/auth-context.type'; -import { ExceptionHandlerService } from 'src/engine/integrations/exception-handler/exception-handler.service'; +import { ExceptionHandlerService } from 'src/engine/core-modules/exception-handler/exception-handler.service'; import { WorkspaceMetadataVersionService } from 'src/engine/metadata-modules/workspace-metadata-version/workspace-metadata-version.service'; import { handleExceptionAndConvertToGraphQLError } from 'src/engine/utils/global-exception-handler.util'; diff --git a/packages/twenty-server/src/engine/twenty-orm/factories/workspace-datasource.factory.ts b/packages/twenty-server/src/engine/twenty-orm/factories/workspace-datasource.factory.ts index 5bf311096..32065b91e 100644 --- a/packages/twenty-server/src/engine/twenty-orm/factories/workspace-datasource.factory.ts +++ b/packages/twenty-server/src/engine/twenty-orm/factories/workspace-datasource.factory.ts @@ -3,7 +3,7 @@ import { InjectRepository } from '@nestjs/typeorm'; import { EntitySchema, Repository } from 'typeorm'; -import { EnvironmentService } from 'src/engine/integrations/environment/environment.service'; +import { EnvironmentService } from 'src/engine/core-modules/environment/environment.service'; import { DataSourceService } from 'src/engine/metadata-modules/data-source/data-source.service'; import { ObjectMetadataEntity } from 'src/engine/metadata-modules/object-metadata/object-metadata.entity'; import { WorkspaceMetadataVersionService } from 'src/engine/metadata-modules/workspace-metadata-version/workspace-metadata-version.service'; diff --git a/packages/twenty-server/src/engine/utils/global-exception-handler.util.ts b/packages/twenty-server/src/engine/utils/global-exception-handler.util.ts index 7bb281278..3a938d4ce 100644 --- a/packages/twenty-server/src/engine/utils/global-exception-handler.util.ts +++ b/packages/twenty-server/src/engine/utils/global-exception-handler.util.ts @@ -2,7 +2,7 @@ import { HttpException } from '@nestjs/common'; import { GraphQLError } from 'graphql'; -import { ExceptionHandlerUser } from 'src/engine/integrations/exception-handler/interfaces/exception-handler-user.interface'; +import { ExceptionHandlerUser } from 'src/engine/core-modules/exception-handler/interfaces/exception-handler-user.interface'; import { AuthenticationError, @@ -15,7 +15,7 @@ import { TimeoutError, ValidationError, } from 'src/engine/core-modules/graphql/utils/graphql-errors.util'; -import { ExceptionHandlerService } from 'src/engine/integrations/exception-handler/exception-handler.service'; +import { ExceptionHandlerService } from 'src/engine/core-modules/exception-handler/exception-handler.service'; const graphQLPredefinedExceptions = { 400: ValidationError, diff --git a/packages/twenty-server/src/engine/workspace-cache-storage/workspace-cache-storage.service.ts b/packages/twenty-server/src/engine/workspace-cache-storage/workspace-cache-storage.service.ts index c15991fe6..b20f880e4 100644 --- a/packages/twenty-server/src/engine/workspace-cache-storage/workspace-cache-storage.service.ts +++ b/packages/twenty-server/src/engine/workspace-cache-storage/workspace-cache-storage.service.ts @@ -2,9 +2,9 @@ import { Injectable } from '@nestjs/common'; import { EntitySchemaOptions } from 'typeorm'; -import { CacheStorageService } from 'src/engine/integrations/cache-storage/cache-storage.service'; -import { InjectCacheStorage } from 'src/engine/integrations/cache-storage/decorators/cache-storage.decorator'; -import { CacheStorageNamespace } from 'src/engine/integrations/cache-storage/types/cache-storage-namespace.enum'; +import { CacheStorageService } from 'src/engine/core-modules/cache-storage/cache-storage.service'; +import { InjectCacheStorage } from 'src/engine/core-modules/cache-storage/decorators/cache-storage.decorator'; +import { CacheStorageNamespace } from 'src/engine/core-modules/cache-storage/types/cache-storage-namespace.enum'; import { ObjectMetadataEntity } from 'src/engine/metadata-modules/object-metadata/object-metadata.entity'; enum WorkspaceCacheKeys { 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 79b805c60..744f37bfb 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 @@ -1,8 +1,8 @@ import { Command, CommandRunner, Option } from 'nest-commander'; -import { InjectMessageQueue } from 'src/engine/integrations/message-queue/decorators/message-queue.decorator'; -import { MessageQueue } from 'src/engine/integrations/message-queue/message-queue.constants'; -import { MessageQueueService } from 'src/engine/integrations/message-queue/services/message-queue.service'; +import { InjectMessageQueue } from 'src/engine/core-modules/message-queue/decorators/message-queue.decorator'; +import { MessageQueue } from 'src/engine/core-modules/message-queue/message-queue.constants'; +import { MessageQueueService } from 'src/engine/core-modules/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 daee64136..d93cbf6b3 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 @@ -1,8 +1,8 @@ import { Command, CommandRunner } from 'nest-commander'; -import { InjectMessageQueue } from 'src/engine/integrations/message-queue/decorators/message-queue.decorator'; -import { MessageQueue } from 'src/engine/integrations/message-queue/message-queue.constants'; -import { MessageQueueService } from 'src/engine/integrations/message-queue/services/message-queue.service'; +import { InjectMessageQueue } from 'src/engine/core-modules/message-queue/decorators/message-queue.decorator'; +import { MessageQueue } from 'src/engine/core-modules/message-queue/message-queue.constants'; +import { MessageQueueService } from 'src/engine/core-modules/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 0fa47c6fb..fa0fd6668 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 @@ -1,8 +1,8 @@ import { Command, CommandRunner } from 'nest-commander'; -import { InjectMessageQueue } from 'src/engine/integrations/message-queue/decorators/message-queue.decorator'; -import { MessageQueue } from 'src/engine/integrations/message-queue/message-queue.constants'; -import { MessageQueueService } from 'src/engine/integrations/message-queue/services/message-queue.service'; +import { InjectMessageQueue } from 'src/engine/core-modules/message-queue/decorators/message-queue.decorator'; +import { MessageQueue } from 'src/engine/core-modules/message-queue/message-queue.constants'; +import { MessageQueueService } from 'src/engine/core-modules/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 ea492334a..0ebd5a207 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 @@ -11,11 +11,11 @@ import { In, Repository } from 'typeorm'; import { TypeORMService } from 'src/database/typeorm/typeorm.service'; import { UserService } from 'src/engine/core-modules/user/services/user.service'; import { Workspace } from 'src/engine/core-modules/workspace/workspace.entity'; -import { EmailService } from 'src/engine/integrations/email/email.service'; -import { EnvironmentService } from 'src/engine/integrations/environment/environment.service'; -import { Process } from 'src/engine/integrations/message-queue/decorators/process.decorator'; -import { Processor } from 'src/engine/integrations/message-queue/decorators/processor.decorator'; -import { MessageQueue } from 'src/engine/integrations/message-queue/message-queue.constants'; +import { EmailService } from 'src/engine/core-modules/email/email.service'; +import { EnvironmentService } from 'src/engine/core-modules/environment/environment.service'; +import { Process } from 'src/engine/core-modules/message-queue/decorators/process.decorator'; +import { Processor } from 'src/engine/core-modules/message-queue/decorators/processor.decorator'; +import { MessageQueue } from 'src/engine/core-modules/message-queue/message-queue.constants'; import { DataSourceEntity } from 'src/engine/metadata-modules/data-source/data-source.entity'; import { DataSourceService } from 'src/engine/metadata-modules/data-source/data-source.service'; import { ObjectMetadataEntity } from 'src/engine/metadata-modules/object-metadata/object-metadata.entity'; diff --git a/packages/twenty-server/src/engine/workspace-manager/workspace-status/services/workspace-status.service.ts b/packages/twenty-server/src/engine/workspace-manager/workspace-status/services/workspace-status.service.ts index 28b4d035a..c60a27244 100644 --- a/packages/twenty-server/src/engine/workspace-manager/workspace-status/services/workspace-status.service.ts +++ b/packages/twenty-server/src/engine/workspace-manager/workspace-status/services/workspace-status.service.ts @@ -10,7 +10,7 @@ import { import { FeatureFlagKey } from 'src/engine/core-modules/feature-flag/enums/feature-flag-key.enum'; import { FeatureFlagEntity } from 'src/engine/core-modules/feature-flag/feature-flag.entity'; import { Workspace } from 'src/engine/core-modules/workspace/workspace.entity'; -import { EnvironmentService } from 'src/engine/integrations/environment/environment.service'; +import { EnvironmentService } from 'src/engine/core-modules/environment/environment.service'; @Injectable() export class WorkspaceStatusService { diff --git a/packages/twenty-server/src/engine/workspace-manager/workspace-status/workspace-manager.module.ts b/packages/twenty-server/src/engine/workspace-manager/workspace-status/workspace-manager.module.ts index ac39a9e0c..62999ecce 100644 --- a/packages/twenty-server/src/engine/workspace-manager/workspace-status/workspace-manager.module.ts +++ b/packages/twenty-server/src/engine/workspace-manager/workspace-status/workspace-manager.module.ts @@ -4,7 +4,7 @@ import { TypeOrmModule } from '@nestjs/typeorm'; import { BillingSubscription } from 'src/engine/core-modules/billing/entities/billing-subscription.entity'; import { FeatureFlagEntity } from 'src/engine/core-modules/feature-flag/feature-flag.entity'; import { Workspace } from 'src/engine/core-modules/workspace/workspace.entity'; -import { EnvironmentModule } from 'src/engine/integrations/environment/environment.module'; +import { EnvironmentModule } from 'src/engine/core-modules/environment/environment.module'; import { WorkspaceStatusService } from 'src/engine/workspace-manager/workspace-status/services/workspace-status.service'; @Module({ diff --git a/packages/twenty-server/src/main.ts b/packages/twenty-server/src/main.ts index 47df9c69a..af97bdb34 100644 --- a/packages/twenty-server/src/main.ts +++ b/packages/twenty-server/src/main.ts @@ -9,11 +9,11 @@ import { useContainer } from 'class-validator'; import { graphqlUploadExpress } from 'graphql-upload'; import { ApplyCorsToExceptions } from 'src/utils/apply-cors-to-exceptions'; +import { LoggerService } from 'src/engine/core-modules/logger/logger.service'; import { AppModule } from './app.module'; import { settings } from './engine/constants/settings'; -import { LoggerService } from './engine/integrations/logger/logger.service'; import { generateFrontConfig } from './utils/generate-front-config'; const bootstrap = async () => { diff --git a/packages/twenty-server/src/modules/calendar/blocklist-manager/jobs/blocklist-item-delete-calendar-events.job.ts b/packages/twenty-server/src/modules/calendar/blocklist-manager/jobs/blocklist-item-delete-calendar-events.job.ts index be172d0b1..f21e87d76 100644 --- a/packages/twenty-server/src/modules/calendar/blocklist-manager/jobs/blocklist-item-delete-calendar-events.job.ts +++ b/packages/twenty-server/src/modules/calendar/blocklist-manager/jobs/blocklist-item-delete-calendar-events.job.ts @@ -2,10 +2,10 @@ import { Logger, Scope } from '@nestjs/common'; import { And, Any, ILike, In, Not, Or } from 'typeorm'; -import { ObjectRecordCreateEvent } from 'src/engine/integrations/event-emitter/types/object-record-create.event'; -import { Process } from 'src/engine/integrations/message-queue/decorators/process.decorator'; -import { Processor } from 'src/engine/integrations/message-queue/decorators/processor.decorator'; -import { MessageQueue } from 'src/engine/integrations/message-queue/message-queue.constants'; +import { ObjectRecordCreateEvent } from 'src/engine/core-modules/event-emitter/types/object-record-create.event'; +import { Process } from 'src/engine/core-modules/message-queue/decorators/process.decorator'; +import { Processor } from 'src/engine/core-modules/message-queue/decorators/processor.decorator'; +import { MessageQueue } from 'src/engine/core-modules/message-queue/message-queue.constants'; import { TwentyORMManager } from 'src/engine/twenty-orm/twenty-orm.manager'; import { WorkspaceEventBatch } from 'src/engine/workspace-event-emitter/workspace-event.type'; import { BlocklistWorkspaceEntity } from 'src/modules/blocklist/standard-objects/blocklist.workspace-entity'; diff --git a/packages/twenty-server/src/modules/calendar/blocklist-manager/jobs/blocklist-reimport-calendar-events.job.ts b/packages/twenty-server/src/modules/calendar/blocklist-manager/jobs/blocklist-reimport-calendar-events.job.ts index 494136ab2..434a6aa53 100644 --- a/packages/twenty-server/src/modules/calendar/blocklist-manager/jobs/blocklist-reimport-calendar-events.job.ts +++ b/packages/twenty-server/src/modules/calendar/blocklist-manager/jobs/blocklist-reimport-calendar-events.job.ts @@ -2,10 +2,10 @@ import { Scope } from '@nestjs/common'; import { Not } from 'typeorm'; -import { ObjectRecordDeleteEvent } from 'src/engine/integrations/event-emitter/types/object-record-delete.event'; -import { Process } from 'src/engine/integrations/message-queue/decorators/process.decorator'; -import { Processor } from 'src/engine/integrations/message-queue/decorators/processor.decorator'; -import { MessageQueue } from 'src/engine/integrations/message-queue/message-queue.constants'; +import { ObjectRecordDeleteEvent } from 'src/engine/core-modules/event-emitter/types/object-record-delete.event'; +import { Process } from 'src/engine/core-modules/message-queue/decorators/process.decorator'; +import { Processor } from 'src/engine/core-modules/message-queue/decorators/processor.decorator'; +import { MessageQueue } from 'src/engine/core-modules/message-queue/message-queue.constants'; import { TwentyORMManager } from 'src/engine/twenty-orm/twenty-orm.manager'; import { WorkspaceEventBatch } from 'src/engine/workspace-event-emitter/workspace-event.type'; import { BlocklistWorkspaceEntity } from 'src/modules/blocklist/standard-objects/blocklist.workspace-entity'; diff --git a/packages/twenty-server/src/modules/calendar/blocklist-manager/listeners/calendar-blocklist.listener.ts b/packages/twenty-server/src/modules/calendar/blocklist-manager/listeners/calendar-blocklist.listener.ts index 9010dc185..886321725 100644 --- a/packages/twenty-server/src/modules/calendar/blocklist-manager/listeners/calendar-blocklist.listener.ts +++ b/packages/twenty-server/src/modules/calendar/blocklist-manager/listeners/calendar-blocklist.listener.ts @@ -1,12 +1,12 @@ import { Injectable } from '@nestjs/common'; import { OnEvent } from '@nestjs/event-emitter'; -import { ObjectRecordCreateEvent } from 'src/engine/integrations/event-emitter/types/object-record-create.event'; -import { ObjectRecordDeleteEvent } from 'src/engine/integrations/event-emitter/types/object-record-delete.event'; -import { ObjectRecordUpdateEvent } from 'src/engine/integrations/event-emitter/types/object-record-update.event'; -import { InjectMessageQueue } from 'src/engine/integrations/message-queue/decorators/message-queue.decorator'; -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/core-modules/event-emitter/types/object-record-create.event'; +import { ObjectRecordDeleteEvent } from 'src/engine/core-modules/event-emitter/types/object-record-delete.event'; +import { ObjectRecordUpdateEvent } from 'src/engine/core-modules/event-emitter/types/object-record-update.event'; +import { InjectMessageQueue } from 'src/engine/core-modules/message-queue/decorators/message-queue.decorator'; +import { MessageQueue } from 'src/engine/core-modules/message-queue/message-queue.constants'; +import { MessageQueueService } from 'src/engine/core-modules/message-queue/services/message-queue.service'; import { WorkspaceEventBatch } from 'src/engine/workspace-event-emitter/workspace-event.type'; import { BlocklistWorkspaceEntity } from 'src/modules/blocklist/standard-objects/blocklist.workspace-entity'; import { diff --git a/packages/twenty-server/src/modules/calendar/calendar-event-cleaner/jobs/delete-connected-account-associated-calendar-data.job.ts b/packages/twenty-server/src/modules/calendar/calendar-event-cleaner/jobs/delete-connected-account-associated-calendar-data.job.ts index 481814595..cd8409ea8 100644 --- a/packages/twenty-server/src/modules/calendar/calendar-event-cleaner/jobs/delete-connected-account-associated-calendar-data.job.ts +++ b/packages/twenty-server/src/modules/calendar/calendar-event-cleaner/jobs/delete-connected-account-associated-calendar-data.job.ts @@ -1,8 +1,8 @@ import { Logger } from '@nestjs/common'; -import { Process } from 'src/engine/integrations/message-queue/decorators/process.decorator'; -import { Processor } from 'src/engine/integrations/message-queue/decorators/processor.decorator'; -import { MessageQueue } from 'src/engine/integrations/message-queue/message-queue.constants'; +import { Process } from 'src/engine/core-modules/message-queue/decorators/process.decorator'; +import { Processor } from 'src/engine/core-modules/message-queue/decorators/processor.decorator'; +import { MessageQueue } from 'src/engine/core-modules/message-queue/message-queue.constants'; import { CalendarEventCleanerService } from 'src/modules/calendar/calendar-event-cleaner/services/calendar-event-cleaner.service'; export type DeleteConnectedAccountAssociatedCalendarDataJobData = { diff --git a/packages/twenty-server/src/modules/calendar/calendar-event-cleaner/listeners/calendar-event-cleaner-connected-account.listener.ts b/packages/twenty-server/src/modules/calendar/calendar-event-cleaner/listeners/calendar-event-cleaner-connected-account.listener.ts index 0c14b6b60..387dc0743 100644 --- a/packages/twenty-server/src/modules/calendar/calendar-event-cleaner/listeners/calendar-event-cleaner-connected-account.listener.ts +++ b/packages/twenty-server/src/modules/calendar/calendar-event-cleaner/listeners/calendar-event-cleaner-connected-account.listener.ts @@ -1,10 +1,10 @@ import { Injectable } from '@nestjs/common'; import { OnEvent } from '@nestjs/event-emitter'; -import { ObjectRecordDeleteEvent } from 'src/engine/integrations/event-emitter/types/object-record-delete.event'; -import { InjectMessageQueue } from 'src/engine/integrations/message-queue/decorators/message-queue.decorator'; -import { MessageQueue } from 'src/engine/integrations/message-queue/message-queue.constants'; -import { MessageQueueService } from 'src/engine/integrations/message-queue/services/message-queue.service'; +import { ObjectRecordDeleteEvent } from 'src/engine/core-modules/event-emitter/types/object-record-delete.event'; +import { InjectMessageQueue } from 'src/engine/core-modules/message-queue/decorators/message-queue.decorator'; +import { MessageQueue } from 'src/engine/core-modules/message-queue/message-queue.constants'; +import { MessageQueueService } from 'src/engine/core-modules/message-queue/services/message-queue.service'; import { WorkspaceEventBatch } from 'src/engine/workspace-event-emitter/workspace-event.type'; import { DeleteConnectedAccountAssociatedCalendarDataJob, diff --git a/packages/twenty-server/src/modules/calendar/calendar-event-import-manager/crons/commands/calendar-event-list-fetch.cron.command.ts b/packages/twenty-server/src/modules/calendar/calendar-event-import-manager/crons/commands/calendar-event-list-fetch.cron.command.ts index 87d139aa4..3fd865ad6 100644 --- a/packages/twenty-server/src/modules/calendar/calendar-event-import-manager/crons/commands/calendar-event-list-fetch.cron.command.ts +++ b/packages/twenty-server/src/modules/calendar/calendar-event-import-manager/crons/commands/calendar-event-list-fetch.cron.command.ts @@ -1,8 +1,8 @@ import { Command, CommandRunner } from 'nest-commander'; -import { InjectMessageQueue } from 'src/engine/integrations/message-queue/decorators/message-queue.decorator'; -import { MessageQueue } from 'src/engine/integrations/message-queue/message-queue.constants'; -import { MessageQueueService } from 'src/engine/integrations/message-queue/services/message-queue.service'; +import { InjectMessageQueue } from 'src/engine/core-modules/message-queue/decorators/message-queue.decorator'; +import { MessageQueue } from 'src/engine/core-modules/message-queue/message-queue.constants'; +import { MessageQueueService } from 'src/engine/core-modules/message-queue/services/message-queue.service'; import { CalendarEventListFetchCronJob } from 'src/modules/calendar/calendar-event-import-manager/crons/jobs/calendar-event-list-fetch.cron.job'; const CALENDAR_EVENTS_IMPORT_CRON_PATTERN = '*/5 * * * *'; diff --git a/packages/twenty-server/src/modules/calendar/calendar-event-import-manager/crons/commands/calendar-ongoing-stale.cron.command.ts b/packages/twenty-server/src/modules/calendar/calendar-event-import-manager/crons/commands/calendar-ongoing-stale.cron.command.ts index 3164e0a76..bc903f877 100644 --- a/packages/twenty-server/src/modules/calendar/calendar-event-import-manager/crons/commands/calendar-ongoing-stale.cron.command.ts +++ b/packages/twenty-server/src/modules/calendar/calendar-event-import-manager/crons/commands/calendar-ongoing-stale.cron.command.ts @@ -1,8 +1,8 @@ import { Command, CommandRunner } from 'nest-commander'; -import { InjectMessageQueue } from 'src/engine/integrations/message-queue/decorators/message-queue.decorator'; -import { MessageQueue } from 'src/engine/integrations/message-queue/message-queue.constants'; -import { MessageQueueService } from 'src/engine/integrations/message-queue/services/message-queue.service'; +import { InjectMessageQueue } from 'src/engine/core-modules/message-queue/decorators/message-queue.decorator'; +import { MessageQueue } from 'src/engine/core-modules/message-queue/message-queue.constants'; +import { MessageQueueService } from 'src/engine/core-modules/message-queue/services/message-queue.service'; import { CalendarOngoingStaleCronJob } from 'src/modules/calendar/calendar-event-import-manager/crons/jobs/calendar-ongoing-stale.cron.job'; const CALENDAR_ONGOING_STALE_CRON_PATTERN = '0 * * * *'; diff --git a/packages/twenty-server/src/modules/calendar/calendar-event-import-manager/crons/jobs/calendar-event-list-fetch.cron.job.ts b/packages/twenty-server/src/modules/calendar/calendar-event-import-manager/crons/jobs/calendar-event-list-fetch.cron.job.ts index 9d5f88f42..89836b514 100644 --- a/packages/twenty-server/src/modules/calendar/calendar-event-import-manager/crons/jobs/calendar-event-list-fetch.cron.job.ts +++ b/packages/twenty-server/src/modules/calendar/calendar-event-import-manager/crons/jobs/calendar-event-list-fetch.cron.job.ts @@ -6,12 +6,12 @@ import { Workspace, WorkspaceActivationStatus, } from 'src/engine/core-modules/workspace/workspace.entity'; -import { ExceptionHandlerService } from 'src/engine/integrations/exception-handler/exception-handler.service'; -import { InjectMessageQueue } from 'src/engine/integrations/message-queue/decorators/message-queue.decorator'; -import { Process } from 'src/engine/integrations/message-queue/decorators/process.decorator'; -import { Processor } from 'src/engine/integrations/message-queue/decorators/processor.decorator'; -import { MessageQueue } from 'src/engine/integrations/message-queue/message-queue.constants'; -import { MessageQueueService } from 'src/engine/integrations/message-queue/services/message-queue.service'; +import { ExceptionHandlerService } from 'src/engine/core-modules/exception-handler/exception-handler.service'; +import { InjectMessageQueue } from 'src/engine/core-modules/message-queue/decorators/message-queue.decorator'; +import { Process } from 'src/engine/core-modules/message-queue/decorators/process.decorator'; +import { Processor } from 'src/engine/core-modules/message-queue/decorators/processor.decorator'; +import { MessageQueue } from 'src/engine/core-modules/message-queue/message-queue.constants'; +import { MessageQueueService } from 'src/engine/core-modules/message-queue/services/message-queue.service'; import { TwentyORMGlobalManager } from 'src/engine/twenty-orm/twenty-orm-global.manager'; import { CalendarEventListFetchJob, diff --git a/packages/twenty-server/src/modules/calendar/calendar-event-import-manager/crons/jobs/calendar-ongoing-stale.cron.job.ts b/packages/twenty-server/src/modules/calendar/calendar-event-import-manager/crons/jobs/calendar-ongoing-stale.cron.job.ts index d3e5370b5..d163c782d 100644 --- a/packages/twenty-server/src/modules/calendar/calendar-event-import-manager/crons/jobs/calendar-ongoing-stale.cron.job.ts +++ b/packages/twenty-server/src/modules/calendar/calendar-event-import-manager/crons/jobs/calendar-ongoing-stale.cron.job.ts @@ -6,12 +6,12 @@ import { Workspace, WorkspaceActivationStatus, } from 'src/engine/core-modules/workspace/workspace.entity'; -import { ExceptionHandlerService } from 'src/engine/integrations/exception-handler/exception-handler.service'; -import { InjectMessageQueue } from 'src/engine/integrations/message-queue/decorators/message-queue.decorator'; -import { Process } from 'src/engine/integrations/message-queue/decorators/process.decorator'; -import { Processor } from 'src/engine/integrations/message-queue/decorators/processor.decorator'; -import { MessageQueue } from 'src/engine/integrations/message-queue/message-queue.constants'; -import { MessageQueueService } from 'src/engine/integrations/message-queue/services/message-queue.service'; +import { ExceptionHandlerService } from 'src/engine/core-modules/exception-handler/exception-handler.service'; +import { InjectMessageQueue } from 'src/engine/core-modules/message-queue/decorators/message-queue.decorator'; +import { Process } from 'src/engine/core-modules/message-queue/decorators/process.decorator'; +import { Processor } from 'src/engine/core-modules/message-queue/decorators/processor.decorator'; +import { MessageQueue } from 'src/engine/core-modules/message-queue/message-queue.constants'; +import { MessageQueueService } from 'src/engine/core-modules/message-queue/services/message-queue.service'; import { CalendarOngoingStaleJob, CalendarOngoingStaleJobData, diff --git a/packages/twenty-server/src/modules/calendar/calendar-event-import-manager/drivers/google-calendar/google-calendar-driver.module.ts b/packages/twenty-server/src/modules/calendar/calendar-event-import-manager/drivers/google-calendar/google-calendar-driver.module.ts index 46b209ef9..d76a6642d 100644 --- a/packages/twenty-server/src/modules/calendar/calendar-event-import-manager/drivers/google-calendar/google-calendar-driver.module.ts +++ b/packages/twenty-server/src/modules/calendar/calendar-event-import-manager/drivers/google-calendar/google-calendar-driver.module.ts @@ -1,6 +1,6 @@ import { Module } from '@nestjs/common'; -import { EnvironmentModule } from 'src/engine/integrations/environment/environment.module'; +import { EnvironmentModule } from 'src/engine/core-modules/environment/environment.module'; import { GoogleCalendarClientProvider } from 'src/modules/calendar/calendar-event-import-manager/drivers/google-calendar/providers/google-calendar.provider'; import { GoogleCalendarGetEventsService } from 'src/modules/calendar/calendar-event-import-manager/drivers/google-calendar/services/google-calendar-get-events.service'; import { OAuth2ClientManagerModule } from 'src/modules/connected-account/oauth2-client-manager/oauth2-client-manager.module'; diff --git a/packages/twenty-server/src/modules/calendar/calendar-event-import-manager/jobs/calendar-event-list-fetch.job.ts b/packages/twenty-server/src/modules/calendar/calendar-event-import-manager/jobs/calendar-event-list-fetch.job.ts index 402661b93..406e71702 100644 --- a/packages/twenty-server/src/modules/calendar/calendar-event-import-manager/jobs/calendar-event-list-fetch.job.ts +++ b/packages/twenty-server/src/modules/calendar/calendar-event-import-manager/jobs/calendar-event-list-fetch.job.ts @@ -1,8 +1,8 @@ import { Scope } from '@nestjs/common'; -import { Process } from 'src/engine/integrations/message-queue/decorators/process.decorator'; -import { Processor } from 'src/engine/integrations/message-queue/decorators/processor.decorator'; -import { MessageQueue } from 'src/engine/integrations/message-queue/message-queue.constants'; +import { Process } from 'src/engine/core-modules/message-queue/decorators/process.decorator'; +import { Processor } from 'src/engine/core-modules/message-queue/decorators/processor.decorator'; +import { MessageQueue } from 'src/engine/core-modules/message-queue/message-queue.constants'; import { InjectObjectMetadataRepository } from 'src/engine/object-metadata-repository/object-metadata-repository.decorator'; import { TwentyORMManager } from 'src/engine/twenty-orm/twenty-orm.manager'; import { CalendarEventsImportService } from 'src/modules/calendar/calendar-event-import-manager/services/calendar-events-import.service'; diff --git a/packages/twenty-server/src/modules/calendar/calendar-event-import-manager/jobs/calendar-ongoing-stale.job.ts b/packages/twenty-server/src/modules/calendar/calendar-event-import-manager/jobs/calendar-ongoing-stale.job.ts index ee579d44f..0ddd02960 100644 --- a/packages/twenty-server/src/modules/calendar/calendar-event-import-manager/jobs/calendar-ongoing-stale.job.ts +++ b/packages/twenty-server/src/modules/calendar/calendar-event-import-manager/jobs/calendar-ongoing-stale.job.ts @@ -2,9 +2,9 @@ import { Logger, Scope } from '@nestjs/common'; import { In } from 'typeorm'; -import { Process } from 'src/engine/integrations/message-queue/decorators/process.decorator'; -import { Processor } from 'src/engine/integrations/message-queue/decorators/processor.decorator'; -import { MessageQueue } from 'src/engine/integrations/message-queue/message-queue.constants'; +import { Process } from 'src/engine/core-modules/message-queue/decorators/process.decorator'; +import { Processor } from 'src/engine/core-modules/message-queue/decorators/processor.decorator'; +import { MessageQueue } from 'src/engine/core-modules/message-queue/message-queue.constants'; import { TwentyORMManager } from 'src/engine/twenty-orm/twenty-orm.manager'; import { isSyncStale } from 'src/modules/calendar/calendar-event-import-manager/utils/is-sync-stale.util'; import { CalendarChannelSyncStatusService } from 'src/modules/calendar/common/services/calendar-channel-sync-status.service'; diff --git a/packages/twenty-server/src/modules/calendar/calendar-event-import-manager/services/calendar-save-events.service.ts b/packages/twenty-server/src/modules/calendar/calendar-event-import-manager/services/calendar-save-events.service.ts index 3f22e0c78..8c71c73f1 100644 --- a/packages/twenty-server/src/modules/calendar/calendar-event-import-manager/services/calendar-save-events.service.ts +++ b/packages/twenty-server/src/modules/calendar/calendar-event-import-manager/services/calendar-save-events.service.ts @@ -2,9 +2,9 @@ import { Injectable } from '@nestjs/common'; import { Any } from 'typeorm'; -import { InjectMessageQueue } from 'src/engine/integrations/message-queue/decorators/message-queue.decorator'; -import { MessageQueue } from 'src/engine/integrations/message-queue/message-queue.constants'; -import { MessageQueueService } from 'src/engine/integrations/message-queue/services/message-queue.service'; +import { InjectMessageQueue } from 'src/engine/core-modules/message-queue/decorators/message-queue.decorator'; +import { MessageQueue } from 'src/engine/core-modules/message-queue/message-queue.constants'; +import { MessageQueueService } from 'src/engine/core-modules/message-queue/services/message-queue.service'; import { FieldActorSource } from 'src/engine/metadata-modules/field-metadata/composite-types/actor.composite-type'; import { TwentyORMManager } from 'src/engine/twenty-orm/twenty-orm.manager'; import { WorkspaceEventEmitter } from 'src/engine/workspace-event-emitter/workspace-event-emitter'; diff --git a/packages/twenty-server/src/modules/calendar/calendar-event-participant-manager/jobs/calendar-create-company-and-contact-after-sync.job.ts b/packages/twenty-server/src/modules/calendar/calendar-event-participant-manager/jobs/calendar-create-company-and-contact-after-sync.job.ts index 877fa0f45..1aadb2088 100644 --- a/packages/twenty-server/src/modules/calendar/calendar-event-participant-manager/jobs/calendar-create-company-and-contact-after-sync.job.ts +++ b/packages/twenty-server/src/modules/calendar/calendar-event-participant-manager/jobs/calendar-create-company-and-contact-after-sync.job.ts @@ -2,9 +2,9 @@ import { Logger, Scope } from '@nestjs/common'; import { IsNull } from 'typeorm'; -import { Process } from 'src/engine/integrations/message-queue/decorators/process.decorator'; -import { Processor } from 'src/engine/integrations/message-queue/decorators/processor.decorator'; -import { MessageQueue } from 'src/engine/integrations/message-queue/message-queue.constants'; +import { Process } from 'src/engine/core-modules/message-queue/decorators/process.decorator'; +import { Processor } from 'src/engine/core-modules/message-queue/decorators/processor.decorator'; +import { MessageQueue } from 'src/engine/core-modules/message-queue/message-queue.constants'; import { TwentyORMManager } from 'src/engine/twenty-orm/twenty-orm.manager'; import { CalendarChannelWorkspaceEntity } from 'src/modules/calendar/common/standard-objects/calendar-channel.workspace-entity'; import { CalendarEventParticipantWorkspaceEntity } from 'src/modules/calendar/common/standard-objects/calendar-event-participant.workspace-entity'; diff --git a/packages/twenty-server/src/modules/calendar/calendar-event-participant-manager/jobs/calendar-event-participant-match-participant.job.ts b/packages/twenty-server/src/modules/calendar/calendar-event-participant-manager/jobs/calendar-event-participant-match-participant.job.ts index be60d5e65..134244814 100644 --- a/packages/twenty-server/src/modules/calendar/calendar-event-participant-manager/jobs/calendar-event-participant-match-participant.job.ts +++ b/packages/twenty-server/src/modules/calendar/calendar-event-participant-manager/jobs/calendar-event-participant-match-participant.job.ts @@ -4,9 +4,9 @@ import { InjectRepository } from '@nestjs/typeorm'; import { Repository } from 'typeorm'; import { Workspace } from 'src/engine/core-modules/workspace/workspace.entity'; -import { Process } from 'src/engine/integrations/message-queue/decorators/process.decorator'; -import { Processor } from 'src/engine/integrations/message-queue/decorators/processor.decorator'; -import { MessageQueue } from 'src/engine/integrations/message-queue/message-queue.constants'; +import { Process } from 'src/engine/core-modules/message-queue/decorators/process.decorator'; +import { Processor } from 'src/engine/core-modules/message-queue/decorators/processor.decorator'; +import { MessageQueue } from 'src/engine/core-modules/message-queue/message-queue.constants'; import { CalendarEventParticipantWorkspaceEntity } from 'src/modules/calendar/common/standard-objects/calendar-event-participant.workspace-entity'; import { MatchParticipantService } from 'src/modules/match-participant/match-participant.service'; diff --git a/packages/twenty-server/src/modules/calendar/calendar-event-participant-manager/jobs/calendar-event-participant-unmatch-participant.job.ts b/packages/twenty-server/src/modules/calendar/calendar-event-participant-manager/jobs/calendar-event-participant-unmatch-participant.job.ts index 3c41ab2a1..9d3af1486 100644 --- a/packages/twenty-server/src/modules/calendar/calendar-event-participant-manager/jobs/calendar-event-participant-unmatch-participant.job.ts +++ b/packages/twenty-server/src/modules/calendar/calendar-event-participant-manager/jobs/calendar-event-participant-unmatch-participant.job.ts @@ -1,8 +1,8 @@ import { Scope } from '@nestjs/common'; -import { Process } from 'src/engine/integrations/message-queue/decorators/process.decorator'; -import { Processor } from 'src/engine/integrations/message-queue/decorators/processor.decorator'; -import { MessageQueue } from 'src/engine/integrations/message-queue/message-queue.constants'; +import { Process } from 'src/engine/core-modules/message-queue/decorators/process.decorator'; +import { Processor } from 'src/engine/core-modules/message-queue/decorators/processor.decorator'; +import { MessageQueue } from 'src/engine/core-modules/message-queue/message-queue.constants'; import { CalendarEventParticipantWorkspaceEntity } from 'src/modules/calendar/common/standard-objects/calendar-event-participant.workspace-entity'; import { MatchParticipantService } from 'src/modules/match-participant/match-participant.service'; diff --git a/packages/twenty-server/src/modules/calendar/calendar-event-participant-manager/listeners/calendar-event-participant-person.listener.ts b/packages/twenty-server/src/modules/calendar/calendar-event-participant-manager/listeners/calendar-event-participant-person.listener.ts index 49389974f..47f0d16e8 100644 --- a/packages/twenty-server/src/modules/calendar/calendar-event-participant-manager/listeners/calendar-event-participant-person.listener.ts +++ b/packages/twenty-server/src/modules/calendar/calendar-event-participant-manager/listeners/calendar-event-participant-person.listener.ts @@ -1,12 +1,12 @@ import { Injectable } from '@nestjs/common'; import { OnEvent } from '@nestjs/event-emitter'; -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 { InjectMessageQueue } from 'src/engine/integrations/message-queue/decorators/message-queue.decorator'; -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/core-modules/event-emitter/types/object-record-create.event'; +import { ObjectRecordUpdateEvent } from 'src/engine/core-modules/event-emitter/types/object-record-update.event'; +import { objectRecordChangedProperties as objectRecordUpdateEventChangedProperties } from 'src/engine/core-modules/event-emitter/utils/object-record-changed-properties.util'; +import { InjectMessageQueue } from 'src/engine/core-modules/message-queue/decorators/message-queue.decorator'; +import { MessageQueue } from 'src/engine/core-modules/message-queue/message-queue.constants'; +import { MessageQueueService } from 'src/engine/core-modules/message-queue/services/message-queue.service'; import { WorkspaceEventBatch } from 'src/engine/workspace-event-emitter/workspace-event.type'; import { CalendarEventParticipantMatchParticipantJob, diff --git a/packages/twenty-server/src/modules/calendar/calendar-event-participant-manager/listeners/calendar-event-participant-workspace-member.listener.ts b/packages/twenty-server/src/modules/calendar/calendar-event-participant-manager/listeners/calendar-event-participant-workspace-member.listener.ts index 6016c78c9..31d292124 100644 --- a/packages/twenty-server/src/modules/calendar/calendar-event-participant-manager/listeners/calendar-event-participant-workspace-member.listener.ts +++ b/packages/twenty-server/src/modules/calendar/calendar-event-participant-manager/listeners/calendar-event-participant-workspace-member.listener.ts @@ -1,12 +1,12 @@ import { Injectable } from '@nestjs/common'; import { OnEvent } from '@nestjs/event-emitter'; -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 { InjectMessageQueue } from 'src/engine/integrations/message-queue/decorators/message-queue.decorator'; -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/core-modules/event-emitter/types/object-record-create.event'; +import { ObjectRecordUpdateEvent } from 'src/engine/core-modules/event-emitter/types/object-record-update.event'; +import { objectRecordChangedProperties as objectRecordUpdateEventChangedProperties } from 'src/engine/core-modules/event-emitter/utils/object-record-changed-properties.util'; +import { InjectMessageQueue } from 'src/engine/core-modules/message-queue/decorators/message-queue.decorator'; +import { MessageQueue } from 'src/engine/core-modules/message-queue/message-queue.constants'; +import { MessageQueueService } from 'src/engine/core-modules/message-queue/services/message-queue.service'; import { WorkspaceEventBatch } from 'src/engine/workspace-event-emitter/workspace-event.type'; import { CalendarEventParticipantMatchParticipantJob, diff --git a/packages/twenty-server/src/modules/calendar/common/services/calendar-channel-sync-status.service.ts b/packages/twenty-server/src/modules/calendar/common/services/calendar-channel-sync-status.service.ts index dfa8ac279..b7149b4ba 100644 --- a/packages/twenty-server/src/modules/calendar/common/services/calendar-channel-sync-status.service.ts +++ b/packages/twenty-server/src/modules/calendar/common/services/calendar-channel-sync-status.service.ts @@ -2,9 +2,9 @@ import { Injectable } from '@nestjs/common'; import { Any } from 'typeorm'; -import { CacheStorageService } from 'src/engine/integrations/cache-storage/cache-storage.service'; -import { InjectCacheStorage } from 'src/engine/integrations/cache-storage/decorators/cache-storage.decorator'; -import { CacheStorageNamespace } from 'src/engine/integrations/cache-storage/types/cache-storage-namespace.enum'; +import { CacheStorageService } from 'src/engine/core-modules/cache-storage/cache-storage.service'; +import { InjectCacheStorage } from 'src/engine/core-modules/cache-storage/decorators/cache-storage.decorator'; +import { CacheStorageNamespace } from 'src/engine/core-modules/cache-storage/types/cache-storage-namespace.enum'; import { TwentyORMManager } from 'src/engine/twenty-orm/twenty-orm.manager'; import { CalendarChannelSyncStage, diff --git a/packages/twenty-server/src/modules/connected-account/listeners/connected-account.listener.ts b/packages/twenty-server/src/modules/connected-account/listeners/connected-account.listener.ts index 455721d81..da8bededd 100644 --- a/packages/twenty-server/src/modules/connected-account/listeners/connected-account.listener.ts +++ b/packages/twenty-server/src/modules/connected-account/listeners/connected-account.listener.ts @@ -1,7 +1,7 @@ import { Injectable } from '@nestjs/common'; import { OnEvent } from '@nestjs/event-emitter'; -import { ObjectRecordDeleteEvent } from 'src/engine/integrations/event-emitter/types/object-record-delete.event'; +import { ObjectRecordDeleteEvent } from 'src/engine/core-modules/event-emitter/types/object-record-delete.event'; import { TwentyORMGlobalManager } from 'src/engine/twenty-orm/twenty-orm-global.manager'; import { WorkspaceEventBatch } from 'src/engine/workspace-event-emitter/workspace-event.type'; import { AccountsToReconnectService } from 'src/modules/connected-account/services/accounts-to-reconnect.service'; diff --git a/packages/twenty-server/src/modules/connected-account/oauth2-client-manager/drivers/google/google-oauth2-client-manager.service.ts b/packages/twenty-server/src/modules/connected-account/oauth2-client-manager/drivers/google/google-oauth2-client-manager.service.ts index ef577eafc..e5020f254 100644 --- a/packages/twenty-server/src/modules/connected-account/oauth2-client-manager/drivers/google/google-oauth2-client-manager.service.ts +++ b/packages/twenty-server/src/modules/connected-account/oauth2-client-manager/drivers/google/google-oauth2-client-manager.service.ts @@ -3,7 +3,7 @@ import { Injectable } from '@nestjs/common'; import { OAuth2Client } from 'google-auth-library'; import { google } from 'googleapis'; -import { EnvironmentService } from 'src/engine/integrations/environment/environment.service'; +import { EnvironmentService } from 'src/engine/core-modules/environment/environment.service'; @Injectable() export class GoogleOAuth2ClientManagerService { diff --git a/packages/twenty-server/src/modules/connected-account/query-hooks/connected-account-delete-one.pre-query.hook.ts b/packages/twenty-server/src/modules/connected-account/query-hooks/connected-account-delete-one.pre-query.hook.ts index 0812c0e33..c04999bea 100644 --- a/packages/twenty-server/src/modules/connected-account/query-hooks/connected-account-delete-one.pre-query.hook.ts +++ b/packages/twenty-server/src/modules/connected-account/query-hooks/connected-account-delete-one.pre-query.hook.ts @@ -3,7 +3,7 @@ import { DeleteOneResolverArgs } from 'src/engine/api/graphql/workspace-resolver import { WorkspaceQueryHook } from 'src/engine/api/graphql/workspace-query-runner/workspace-query-hook/decorators/workspace-query-hook.decorator'; import { AuthContext } from 'src/engine/core-modules/auth/types/auth-context.type'; -import { ObjectRecordDeleteEvent } from 'src/engine/integrations/event-emitter/types/object-record-delete.event'; +import { ObjectRecordDeleteEvent } from 'src/engine/core-modules/event-emitter/types/object-record-delete.event'; import { TwentyORMManager } from 'src/engine/twenty-orm/twenty-orm.manager'; import { WorkspaceEventEmitter } from 'src/engine/workspace-event-emitter/workspace-event-emitter'; import { MessageChannelWorkspaceEntity } from 'src/modules/messaging/common/standard-objects/message-channel.workspace-entity'; diff --git a/packages/twenty-server/src/modules/connected-account/refresh-access-token-manager/drivers/google/services/google-api-refresh-access-token.service.ts b/packages/twenty-server/src/modules/connected-account/refresh-access-token-manager/drivers/google/services/google-api-refresh-access-token.service.ts index 3a5d015be..0afb78d71 100644 --- a/packages/twenty-server/src/modules/connected-account/refresh-access-token-manager/drivers/google/services/google-api-refresh-access-token.service.ts +++ b/packages/twenty-server/src/modules/connected-account/refresh-access-token-manager/drivers/google/services/google-api-refresh-access-token.service.ts @@ -2,7 +2,7 @@ import { Injectable } from '@nestjs/common'; import axios from 'axios'; -import { EnvironmentService } from 'src/engine/integrations/environment/environment.service'; +import { EnvironmentService } from 'src/engine/core-modules/environment/environment.service'; @Injectable() export class GoogleAPIRefreshAccessTokenService { diff --git a/packages/twenty-server/src/modules/contact-creation-manager/jobs/create-company-and-contact.job.ts b/packages/twenty-server/src/modules/contact-creation-manager/jobs/create-company-and-contact.job.ts index 0a00c1ec9..a9024bb5b 100644 --- a/packages/twenty-server/src/modules/contact-creation-manager/jobs/create-company-and-contact.job.ts +++ b/packages/twenty-server/src/modules/contact-creation-manager/jobs/create-company-and-contact.job.ts @@ -1,6 +1,6 @@ -import { Process } from 'src/engine/integrations/message-queue/decorators/process.decorator'; -import { Processor } from 'src/engine/integrations/message-queue/decorators/processor.decorator'; -import { MessageQueue } from 'src/engine/integrations/message-queue/message-queue.constants'; +import { Process } from 'src/engine/core-modules/message-queue/decorators/process.decorator'; +import { Processor } from 'src/engine/core-modules/message-queue/decorators/processor.decorator'; +import { MessageQueue } from 'src/engine/core-modules/message-queue/message-queue.constants'; import { FieldActorSource } from 'src/engine/metadata-modules/field-metadata/composite-types/actor.composite-type'; import { ConnectedAccountWorkspaceEntity } from 'src/modules/connected-account/standard-objects/connected-account.workspace-entity'; import { CreateCompanyAndContactService } from 'src/modules/contact-creation-manager/services/create-company-and-contact.service'; diff --git a/packages/twenty-server/src/modules/contact-creation-manager/listeners/auto-companies-and-contacts-creation-calendar-channel.listener.ts b/packages/twenty-server/src/modules/contact-creation-manager/listeners/auto-companies-and-contacts-creation-calendar-channel.listener.ts index 5dd7497d0..50a24f1d1 100644 --- a/packages/twenty-server/src/modules/contact-creation-manager/listeners/auto-companies-and-contacts-creation-calendar-channel.listener.ts +++ b/packages/twenty-server/src/modules/contact-creation-manager/listeners/auto-companies-and-contacts-creation-calendar-channel.listener.ts @@ -1,11 +1,11 @@ import { Injectable } from '@nestjs/common'; import { OnEvent } from '@nestjs/event-emitter'; -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 { InjectMessageQueue } from 'src/engine/integrations/message-queue/decorators/message-queue.decorator'; -import { MessageQueue } from 'src/engine/integrations/message-queue/message-queue.constants'; -import { MessageQueueService } from 'src/engine/integrations/message-queue/services/message-queue.service'; +import { ObjectRecordUpdateEvent } from 'src/engine/core-modules/event-emitter/types/object-record-update.event'; +import { objectRecordChangedProperties } from 'src/engine/core-modules/event-emitter/utils/object-record-changed-properties.util'; +import { InjectMessageQueue } from 'src/engine/core-modules/message-queue/decorators/message-queue.decorator'; +import { MessageQueue } from 'src/engine/core-modules/message-queue/message-queue.constants'; +import { MessageQueueService } from 'src/engine/core-modules/message-queue/services/message-queue.service'; import { WorkspaceEventBatch } from 'src/engine/workspace-event-emitter/workspace-event.type'; import { CalendarCreateCompanyAndContactAfterSyncJob, diff --git a/packages/twenty-server/src/modules/contact-creation-manager/listeners/auto-companies-and-contacts-creation-message-channel.listener.ts b/packages/twenty-server/src/modules/contact-creation-manager/listeners/auto-companies-and-contacts-creation-message-channel.listener.ts index ac2511f74..6ed36b4be 100644 --- a/packages/twenty-server/src/modules/contact-creation-manager/listeners/auto-companies-and-contacts-creation-message-channel.listener.ts +++ b/packages/twenty-server/src/modules/contact-creation-manager/listeners/auto-companies-and-contacts-creation-message-channel.listener.ts @@ -1,11 +1,11 @@ import { Injectable } from '@nestjs/common'; import { OnEvent } from '@nestjs/event-emitter'; -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 { InjectMessageQueue } from 'src/engine/integrations/message-queue/decorators/message-queue.decorator'; -import { MessageQueue } from 'src/engine/integrations/message-queue/message-queue.constants'; -import { MessageQueueService } from 'src/engine/integrations/message-queue/services/message-queue.service'; +import { ObjectRecordUpdateEvent } from 'src/engine/core-modules/event-emitter/types/object-record-update.event'; +import { objectRecordChangedProperties } from 'src/engine/core-modules/event-emitter/utils/object-record-changed-properties.util'; +import { InjectMessageQueue } from 'src/engine/core-modules/message-queue/decorators/message-queue.decorator'; +import { MessageQueue } from 'src/engine/core-modules/message-queue/message-queue.constants'; +import { MessageQueueService } from 'src/engine/core-modules/message-queue/services/message-queue.service'; import { WorkspaceEventBatch } from 'src/engine/workspace-event-emitter/workspace-event.type'; import { MessageChannelWorkspaceEntity } from 'src/modules/messaging/common/standard-objects/message-channel.workspace-entity'; import { diff --git a/packages/twenty-server/src/modules/contact-creation-manager/services/create-company-and-contact.service.ts b/packages/twenty-server/src/modules/contact-creation-manager/services/create-company-and-contact.service.ts index db6a6328b..62ca1e4b4 100644 --- a/packages/twenty-server/src/modules/contact-creation-manager/services/create-company-and-contact.service.ts +++ b/packages/twenty-server/src/modules/contact-creation-manager/services/create-company-and-contact.service.ts @@ -5,7 +5,7 @@ import chunk from 'lodash.chunk'; import compact from 'lodash.compact'; import { Any, EntityManager, Repository } from 'typeorm'; -import { ObjectRecordCreateEvent } from 'src/engine/integrations/event-emitter/types/object-record-create.event'; +import { ObjectRecordCreateEvent } from 'src/engine/core-modules/event-emitter/types/object-record-create.event'; import { FieldActorSource } from 'src/engine/metadata-modules/field-metadata/composite-types/actor.composite-type'; import { ObjectMetadataEntity } from 'src/engine/metadata-modules/object-metadata/object-metadata.entity'; import { InjectObjectMetadataRepository } from 'src/engine/object-metadata-repository/object-metadata-repository.decorator'; diff --git a/packages/twenty-server/src/modules/mail-sender/workflow-actions/send-email.workflow-action.ts b/packages/twenty-server/src/modules/mail-sender/workflow-actions/send-email.workflow-action.ts new file mode 100644 index 000000000..3a17c77cf --- /dev/null +++ b/packages/twenty-server/src/modules/mail-sender/workflow-actions/send-email.workflow-action.ts @@ -0,0 +1,77 @@ +import { Injectable, Logger } from '@nestjs/common'; + +import { z } from 'zod'; +import Handlebars from 'handlebars'; +import { JSDOM } from 'jsdom'; +import DOMPurify from 'dompurify'; +import { WorkflowActionEmail } from 'twenty-emails'; +import { render } from '@react-email/components'; + +import { WorkflowActionResult } from 'src/modules/workflow/workflow-executor/types/workflow-action-result.type'; +import { WorkflowSendEmailStep } from 'src/modules/workflow/workflow-executor/types/workflow-action.type'; +import { EnvironmentService } from 'src/engine/core-modules/environment/environment.service'; +import { EmailService } from 'src/engine/core-modules/email/email.service'; + +@Injectable() +export class SendEmailWorkflowAction { + private readonly logger = new Logger(SendEmailWorkflowAction.name); + constructor( + private readonly environmentService: EnvironmentService, + private readonly emailService: EmailService, + ) {} + + async execute({ + step, + payload, + }: { + step: WorkflowSendEmailStep; + payload: { + email: string; + [key: string]: string; + }; + }): Promise<WorkflowActionResult> { + try { + const emailSchema = z.string().trim().email('Invalid email'); + + const result = emailSchema.safeParse(payload.email); + + if (!result.success) { + this.logger.warn(`Email '${payload.email}' invalid`); + + return { result: { success: false } }; + } + + const mainText = Handlebars.compile(step.settings.template)(payload); + + const window = new JSDOM('').window; + const purify = DOMPurify(window); + const safeHTML = purify.sanitize(mainText || ''); + + const email = WorkflowActionEmail({ + dangerousHTML: safeHTML, + title: step.settings.title, + callToAction: step.settings.callToAction, + }); + const html = render(email, { + pretty: true, + }); + const text = render(email, { + plainText: true, + }); + + await this.emailService.send({ + from: `${this.environmentService.get( + 'EMAIL_FROM_NAME', + )} <${this.environmentService.get('EMAIL_FROM_ADDRESS')}>`, + to: payload.email, + subject: step.settings.subject || '', + text, + html, + }); + + return { result: { success: true } }; + } catch (error) { + return { error }; + } + } +} diff --git a/packages/twenty-server/src/modules/messaging/blocklist-manager/jobs/messaging-blocklist-item-delete-messages.job.ts b/packages/twenty-server/src/modules/messaging/blocklist-manager/jobs/messaging-blocklist-item-delete-messages.job.ts index b9396eb83..8fedb4c73 100644 --- a/packages/twenty-server/src/modules/messaging/blocklist-manager/jobs/messaging-blocklist-item-delete-messages.job.ts +++ b/packages/twenty-server/src/modules/messaging/blocklist-manager/jobs/messaging-blocklist-item-delete-messages.job.ts @@ -2,10 +2,10 @@ import { Logger, Scope } from '@nestjs/common'; import { And, Any, ILike, In, Not, Or } from 'typeorm'; -import { ObjectRecordCreateEvent } from 'src/engine/integrations/event-emitter/types/object-record-create.event'; -import { Process } from 'src/engine/integrations/message-queue/decorators/process.decorator'; -import { Processor } from 'src/engine/integrations/message-queue/decorators/processor.decorator'; -import { MessageQueue } from 'src/engine/integrations/message-queue/message-queue.constants'; +import { ObjectRecordCreateEvent } from 'src/engine/core-modules/event-emitter/types/object-record-create.event'; +import { Process } from 'src/engine/core-modules/message-queue/decorators/process.decorator'; +import { Processor } from 'src/engine/core-modules/message-queue/decorators/processor.decorator'; +import { MessageQueue } from 'src/engine/core-modules/message-queue/message-queue.constants'; import { TwentyORMManager } from 'src/engine/twenty-orm/twenty-orm.manager'; import { WorkspaceEventBatch } from 'src/engine/workspace-event-emitter/workspace-event.type'; import { BlocklistWorkspaceEntity } from 'src/modules/blocklist/standard-objects/blocklist.workspace-entity'; diff --git a/packages/twenty-server/src/modules/messaging/blocklist-manager/jobs/messaging-blocklist-reimport-messages.job.ts b/packages/twenty-server/src/modules/messaging/blocklist-manager/jobs/messaging-blocklist-reimport-messages.job.ts index 0d2a76794..0b84b473c 100644 --- a/packages/twenty-server/src/modules/messaging/blocklist-manager/jobs/messaging-blocklist-reimport-messages.job.ts +++ b/packages/twenty-server/src/modules/messaging/blocklist-manager/jobs/messaging-blocklist-reimport-messages.job.ts @@ -2,10 +2,10 @@ import { Scope } from '@nestjs/common'; import { Not } from 'typeorm'; -import { ObjectRecordDeleteEvent } from 'src/engine/integrations/event-emitter/types/object-record-delete.event'; -import { Process } from 'src/engine/integrations/message-queue/decorators/process.decorator'; -import { Processor } from 'src/engine/integrations/message-queue/decorators/processor.decorator'; -import { MessageQueue } from 'src/engine/integrations/message-queue/message-queue.constants'; +import { ObjectRecordDeleteEvent } from 'src/engine/core-modules/event-emitter/types/object-record-delete.event'; +import { Process } from 'src/engine/core-modules/message-queue/decorators/process.decorator'; +import { Processor } from 'src/engine/core-modules/message-queue/decorators/processor.decorator'; +import { MessageQueue } from 'src/engine/core-modules/message-queue/message-queue.constants'; import { TwentyORMManager } from 'src/engine/twenty-orm/twenty-orm.manager'; import { WorkspaceEventBatch } from 'src/engine/workspace-event-emitter/workspace-event.type'; import { BlocklistWorkspaceEntity } from 'src/modules/blocklist/standard-objects/blocklist.workspace-entity'; diff --git a/packages/twenty-server/src/modules/messaging/blocklist-manager/listeners/messaging-blocklist.listener.ts b/packages/twenty-server/src/modules/messaging/blocklist-manager/listeners/messaging-blocklist.listener.ts index db2ded2d4..d232e9040 100644 --- a/packages/twenty-server/src/modules/messaging/blocklist-manager/listeners/messaging-blocklist.listener.ts +++ b/packages/twenty-server/src/modules/messaging/blocklist-manager/listeners/messaging-blocklist.listener.ts @@ -1,12 +1,12 @@ import { Injectable, Scope } from '@nestjs/common'; import { OnEvent } from '@nestjs/event-emitter'; -import { ObjectRecordCreateEvent } from 'src/engine/integrations/event-emitter/types/object-record-create.event'; -import { ObjectRecordDeleteEvent } from 'src/engine/integrations/event-emitter/types/object-record-delete.event'; -import { ObjectRecordUpdateEvent } from 'src/engine/integrations/event-emitter/types/object-record-update.event'; -import { InjectMessageQueue } from 'src/engine/integrations/message-queue/decorators/message-queue.decorator'; -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/core-modules/event-emitter/types/object-record-create.event'; +import { ObjectRecordDeleteEvent } from 'src/engine/core-modules/event-emitter/types/object-record-delete.event'; +import { ObjectRecordUpdateEvent } from 'src/engine/core-modules/event-emitter/types/object-record-update.event'; +import { InjectMessageQueue } from 'src/engine/core-modules/message-queue/decorators/message-queue.decorator'; +import { MessageQueue } from 'src/engine/core-modules/message-queue/message-queue.constants'; +import { MessageQueueService } from 'src/engine/core-modules/message-queue/services/message-queue.service'; import { WorkspaceEventBatch } from 'src/engine/workspace-event-emitter/workspace-event.type'; import { BlocklistWorkspaceEntity } from 'src/modules/blocklist/standard-objects/blocklist.workspace-entity'; import { diff --git a/packages/twenty-server/src/modules/messaging/common/services/message-channel-sync-status.service.ts b/packages/twenty-server/src/modules/messaging/common/services/message-channel-sync-status.service.ts index bc29575c5..d21b73fb0 100644 --- a/packages/twenty-server/src/modules/messaging/common/services/message-channel-sync-status.service.ts +++ b/packages/twenty-server/src/modules/messaging/common/services/message-channel-sync-status.service.ts @@ -2,9 +2,9 @@ import { Injectable } from '@nestjs/common'; import { Any } from 'typeorm'; -import { CacheStorageService } from 'src/engine/integrations/cache-storage/cache-storage.service'; -import { InjectCacheStorage } from 'src/engine/integrations/cache-storage/decorators/cache-storage.decorator'; -import { CacheStorageNamespace } from 'src/engine/integrations/cache-storage/types/cache-storage-namespace.enum'; +import { CacheStorageService } from 'src/engine/core-modules/cache-storage/cache-storage.service'; +import { InjectCacheStorage } from 'src/engine/core-modules/cache-storage/decorators/cache-storage.decorator'; +import { CacheStorageNamespace } from 'src/engine/core-modules/cache-storage/types/cache-storage-namespace.enum'; import { TwentyORMManager } from 'src/engine/twenty-orm/twenty-orm.manager'; import { AccountsToReconnectService } from 'src/modules/connected-account/services/accounts-to-reconnect.service'; import { ConnectedAccountWorkspaceEntity } from 'src/modules/connected-account/standard-objects/connected-account.workspace-entity'; diff --git a/packages/twenty-server/src/modules/messaging/message-cleaner/jobs/messaging-connected-account-deletion-cleanup.job.ts b/packages/twenty-server/src/modules/messaging/message-cleaner/jobs/messaging-connected-account-deletion-cleanup.job.ts index c9cc4e9e9..2523c1804 100644 --- a/packages/twenty-server/src/modules/messaging/message-cleaner/jobs/messaging-connected-account-deletion-cleanup.job.ts +++ b/packages/twenty-server/src/modules/messaging/message-cleaner/jobs/messaging-connected-account-deletion-cleanup.job.ts @@ -1,9 +1,9 @@ import { Logger, Scope } from '@nestjs/common'; import { MessagingMessageCleanerService } from 'src/modules/messaging/message-cleaner/services/messaging-message-cleaner.service'; -import { Processor } from 'src/engine/integrations/message-queue/decorators/processor.decorator'; -import { MessageQueue } from 'src/engine/integrations/message-queue/message-queue.constants'; -import { Process } from 'src/engine/integrations/message-queue/decorators/process.decorator'; +import { Processor } from 'src/engine/core-modules/message-queue/decorators/processor.decorator'; +import { MessageQueue } from 'src/engine/core-modules/message-queue/message-queue.constants'; +import { Process } from 'src/engine/core-modules/message-queue/decorators/process.decorator'; export type MessagingConnectedAccountDeletionCleanupJobData = { workspaceId: string; diff --git a/packages/twenty-server/src/modules/messaging/message-cleaner/listeners/messaging-message-cleaner-connected-account.listener.ts b/packages/twenty-server/src/modules/messaging/message-cleaner/listeners/messaging-message-cleaner-connected-account.listener.ts index 8caf65c58..8e837cce6 100644 --- a/packages/twenty-server/src/modules/messaging/message-cleaner/listeners/messaging-message-cleaner-connected-account.listener.ts +++ b/packages/twenty-server/src/modules/messaging/message-cleaner/listeners/messaging-message-cleaner-connected-account.listener.ts @@ -1,10 +1,10 @@ import { Injectable } from '@nestjs/common'; import { OnEvent } from '@nestjs/event-emitter'; -import { ObjectRecordDeleteEvent } from 'src/engine/integrations/event-emitter/types/object-record-delete.event'; -import { InjectMessageQueue } from 'src/engine/integrations/message-queue/decorators/message-queue.decorator'; -import { MessageQueue } from 'src/engine/integrations/message-queue/message-queue.constants'; -import { MessageQueueService } from 'src/engine/integrations/message-queue/services/message-queue.service'; +import { ObjectRecordDeleteEvent } from 'src/engine/core-modules/event-emitter/types/object-record-delete.event'; +import { InjectMessageQueue } from 'src/engine/core-modules/message-queue/decorators/message-queue.decorator'; +import { MessageQueue } from 'src/engine/core-modules/message-queue/message-queue.constants'; +import { MessageQueueService } from 'src/engine/core-modules/message-queue/services/message-queue.service'; import { WorkspaceEventBatch } from 'src/engine/workspace-event-emitter/workspace-event.type'; import { ConnectedAccountWorkspaceEntity } from 'src/modules/connected-account/standard-objects/connected-account.workspace-entity'; import { diff --git a/packages/twenty-server/src/modules/messaging/message-import-manager/commands/messaging-single-message-import.command.ts b/packages/twenty-server/src/modules/messaging/message-import-manager/commands/messaging-single-message-import.command.ts index c55465f7d..77e4f776f 100644 --- a/packages/twenty-server/src/modules/messaging/message-import-manager/commands/messaging-single-message-import.command.ts +++ b/packages/twenty-server/src/modules/messaging/message-import-manager/commands/messaging-single-message-import.command.ts @@ -1,8 +1,8 @@ import { Command, CommandRunner, Option } from 'nest-commander'; -import { InjectMessageQueue } from 'src/engine/integrations/message-queue/decorators/message-queue.decorator'; -import { MessageQueue } from 'src/engine/integrations/message-queue/message-queue.constants'; -import { MessageQueueService } from 'src/engine/integrations/message-queue/services/message-queue.service'; +import { InjectMessageQueue } from 'src/engine/core-modules/message-queue/decorators/message-queue.decorator'; +import { MessageQueue } from 'src/engine/core-modules/message-queue/message-queue.constants'; +import { MessageQueueService } from 'src/engine/core-modules/message-queue/services/message-queue.service'; import { MessagingAddSingleMessageToCacheForImportJob, MessagingAddSingleMessageToCacheForImportJobData, diff --git a/packages/twenty-server/src/modules/messaging/message-import-manager/crons/commands/messaging-message-list-fetch.cron.command.ts b/packages/twenty-server/src/modules/messaging/message-import-manager/crons/commands/messaging-message-list-fetch.cron.command.ts index d8e2253bd..a6dc37e7b 100644 --- a/packages/twenty-server/src/modules/messaging/message-import-manager/crons/commands/messaging-message-list-fetch.cron.command.ts +++ b/packages/twenty-server/src/modules/messaging/message-import-manager/crons/commands/messaging-message-list-fetch.cron.command.ts @@ -1,8 +1,8 @@ import { Command, CommandRunner } from 'nest-commander'; -import { InjectMessageQueue } from 'src/engine/integrations/message-queue/decorators/message-queue.decorator'; -import { MessageQueue } from 'src/engine/integrations/message-queue/message-queue.constants'; -import { MessageQueueService } from 'src/engine/integrations/message-queue/services/message-queue.service'; +import { InjectMessageQueue } from 'src/engine/core-modules/message-queue/decorators/message-queue.decorator'; +import { MessageQueue } from 'src/engine/core-modules/message-queue/message-queue.constants'; +import { MessageQueueService } from 'src/engine/core-modules/message-queue/services/message-queue.service'; import { MessagingMessageListFetchCronJob } from 'src/modules/messaging/message-import-manager/crons/jobs/messaging-message-list-fetch.cron.job'; const MESSAGING_MESSAGE_LIST_FETCH_CRON_PATTERN = '*/5 * * * *'; diff --git a/packages/twenty-server/src/modules/messaging/message-import-manager/crons/commands/messaging-messages-import.cron.command.ts b/packages/twenty-server/src/modules/messaging/message-import-manager/crons/commands/messaging-messages-import.cron.command.ts index 11ef7211d..03196cd83 100644 --- a/packages/twenty-server/src/modules/messaging/message-import-manager/crons/commands/messaging-messages-import.cron.command.ts +++ b/packages/twenty-server/src/modules/messaging/message-import-manager/crons/commands/messaging-messages-import.cron.command.ts @@ -1,8 +1,8 @@ import { Command, CommandRunner } from 'nest-commander'; -import { InjectMessageQueue } from 'src/engine/integrations/message-queue/decorators/message-queue.decorator'; -import { MessageQueue } from 'src/engine/integrations/message-queue/message-queue.constants'; -import { MessageQueueService } from 'src/engine/integrations/message-queue/services/message-queue.service'; +import { InjectMessageQueue } from 'src/engine/core-modules/message-queue/decorators/message-queue.decorator'; +import { MessageQueue } from 'src/engine/core-modules/message-queue/message-queue.constants'; +import { MessageQueueService } from 'src/engine/core-modules/message-queue/services/message-queue.service'; import { MessagingMessagesImportCronJob } from 'src/modules/messaging/message-import-manager/crons/jobs/messaging-messages-import.cron.job'; const MESSAGING_MESSAGES_IMPORT_CRON_PATTERN = '*/1 * * * *'; diff --git a/packages/twenty-server/src/modules/messaging/message-import-manager/crons/commands/messaging-ongoing-stale.cron.command.ts b/packages/twenty-server/src/modules/messaging/message-import-manager/crons/commands/messaging-ongoing-stale.cron.command.ts index ed77d7955..5986a33ce 100644 --- a/packages/twenty-server/src/modules/messaging/message-import-manager/crons/commands/messaging-ongoing-stale.cron.command.ts +++ b/packages/twenty-server/src/modules/messaging/message-import-manager/crons/commands/messaging-ongoing-stale.cron.command.ts @@ -1,8 +1,8 @@ import { Command, CommandRunner } from 'nest-commander'; -import { InjectMessageQueue } from 'src/engine/integrations/message-queue/decorators/message-queue.decorator'; -import { MessageQueue } from 'src/engine/integrations/message-queue/message-queue.constants'; -import { MessageQueueService } from 'src/engine/integrations/message-queue/services/message-queue.service'; +import { InjectMessageQueue } from 'src/engine/core-modules/message-queue/decorators/message-queue.decorator'; +import { MessageQueue } from 'src/engine/core-modules/message-queue/message-queue.constants'; +import { MessageQueueService } from 'src/engine/core-modules/message-queue/services/message-queue.service'; import { MessagingOngoingStaleCronJob } from 'src/modules/messaging/message-import-manager/crons/jobs/messaging-ongoing-stale.cron.job'; const MESSAGING_ONGOING_STALE_CRON_PATTERN = '0 * * * *'; diff --git a/packages/twenty-server/src/modules/messaging/message-import-manager/crons/jobs/messaging-message-list-fetch.cron.job.ts b/packages/twenty-server/src/modules/messaging/message-import-manager/crons/jobs/messaging-message-list-fetch.cron.job.ts index 43ca1ae75..b3f433fee 100644 --- a/packages/twenty-server/src/modules/messaging/message-import-manager/crons/jobs/messaging-message-list-fetch.cron.job.ts +++ b/packages/twenty-server/src/modules/messaging/message-import-manager/crons/jobs/messaging-message-list-fetch.cron.job.ts @@ -6,12 +6,12 @@ import { Workspace, WorkspaceActivationStatus, } from 'src/engine/core-modules/workspace/workspace.entity'; -import { ExceptionHandlerService } from 'src/engine/integrations/exception-handler/exception-handler.service'; -import { InjectMessageQueue } from 'src/engine/integrations/message-queue/decorators/message-queue.decorator'; -import { Process } from 'src/engine/integrations/message-queue/decorators/process.decorator'; -import { Processor } from 'src/engine/integrations/message-queue/decorators/processor.decorator'; -import { MessageQueue } from 'src/engine/integrations/message-queue/message-queue.constants'; -import { MessageQueueService } from 'src/engine/integrations/message-queue/services/message-queue.service'; +import { ExceptionHandlerService } from 'src/engine/core-modules/exception-handler/exception-handler.service'; +import { InjectMessageQueue } from 'src/engine/core-modules/message-queue/decorators/message-queue.decorator'; +import { Process } from 'src/engine/core-modules/message-queue/decorators/process.decorator'; +import { Processor } from 'src/engine/core-modules/message-queue/decorators/processor.decorator'; +import { MessageQueue } from 'src/engine/core-modules/message-queue/message-queue.constants'; +import { MessageQueueService } from 'src/engine/core-modules/message-queue/services/message-queue.service'; import { TwentyORMGlobalManager } from 'src/engine/twenty-orm/twenty-orm-global.manager'; import { MessageChannelSyncStage, diff --git a/packages/twenty-server/src/modules/messaging/message-import-manager/crons/jobs/messaging-messages-import.cron.job.ts b/packages/twenty-server/src/modules/messaging/message-import-manager/crons/jobs/messaging-messages-import.cron.job.ts index f22783294..efcbc54ca 100644 --- a/packages/twenty-server/src/modules/messaging/message-import-manager/crons/jobs/messaging-messages-import.cron.job.ts +++ b/packages/twenty-server/src/modules/messaging/message-import-manager/crons/jobs/messaging-messages-import.cron.job.ts @@ -6,12 +6,12 @@ import { Workspace, WorkspaceActivationStatus, } from 'src/engine/core-modules/workspace/workspace.entity'; -import { ExceptionHandlerService } from 'src/engine/integrations/exception-handler/exception-handler.service'; -import { InjectMessageQueue } from 'src/engine/integrations/message-queue/decorators/message-queue.decorator'; -import { Process } from 'src/engine/integrations/message-queue/decorators/process.decorator'; -import { Processor } from 'src/engine/integrations/message-queue/decorators/processor.decorator'; -import { MessageQueue } from 'src/engine/integrations/message-queue/message-queue.constants'; -import { MessageQueueService } from 'src/engine/integrations/message-queue/services/message-queue.service'; +import { ExceptionHandlerService } from 'src/engine/core-modules/exception-handler/exception-handler.service'; +import { InjectMessageQueue } from 'src/engine/core-modules/message-queue/decorators/message-queue.decorator'; +import { Process } from 'src/engine/core-modules/message-queue/decorators/process.decorator'; +import { Processor } from 'src/engine/core-modules/message-queue/decorators/processor.decorator'; +import { MessageQueue } from 'src/engine/core-modules/message-queue/message-queue.constants'; +import { MessageQueueService } from 'src/engine/core-modules/message-queue/services/message-queue.service'; import { TwentyORMGlobalManager } from 'src/engine/twenty-orm/twenty-orm-global.manager'; import { MessageChannelSyncStage, diff --git a/packages/twenty-server/src/modules/messaging/message-import-manager/crons/jobs/messaging-ongoing-stale.cron.job.ts b/packages/twenty-server/src/modules/messaging/message-import-manager/crons/jobs/messaging-ongoing-stale.cron.job.ts index 08ca244cc..f3b6b96fc 100644 --- a/packages/twenty-server/src/modules/messaging/message-import-manager/crons/jobs/messaging-ongoing-stale.cron.job.ts +++ b/packages/twenty-server/src/modules/messaging/message-import-manager/crons/jobs/messaging-ongoing-stale.cron.job.ts @@ -6,12 +6,12 @@ import { Workspace, WorkspaceActivationStatus, } from 'src/engine/core-modules/workspace/workspace.entity'; -import { ExceptionHandlerService } from 'src/engine/integrations/exception-handler/exception-handler.service'; -import { InjectMessageQueue } from 'src/engine/integrations/message-queue/decorators/message-queue.decorator'; -import { Process } from 'src/engine/integrations/message-queue/decorators/process.decorator'; -import { Processor } from 'src/engine/integrations/message-queue/decorators/processor.decorator'; -import { MessageQueue } from 'src/engine/integrations/message-queue/message-queue.constants'; -import { MessageQueueService } from 'src/engine/integrations/message-queue/services/message-queue.service'; +import { ExceptionHandlerService } from 'src/engine/core-modules/exception-handler/exception-handler.service'; +import { InjectMessageQueue } from 'src/engine/core-modules/message-queue/decorators/message-queue.decorator'; +import { Process } from 'src/engine/core-modules/message-queue/decorators/process.decorator'; +import { Processor } from 'src/engine/core-modules/message-queue/decorators/processor.decorator'; +import { MessageQueue } from 'src/engine/core-modules/message-queue/message-queue.constants'; +import { MessageQueueService } from 'src/engine/core-modules/message-queue/services/message-queue.service'; import { MessagingOngoingStaleJob, MessagingOngoingStaleJobData, diff --git a/packages/twenty-server/src/modules/messaging/message-import-manager/drivers/gmail/messaging-gmail-driver.module.ts b/packages/twenty-server/src/modules/messaging/message-import-manager/drivers/gmail/messaging-gmail-driver.module.ts index 8229618a2..3fc555a87 100644 --- a/packages/twenty-server/src/modules/messaging/message-import-manager/drivers/gmail/messaging-gmail-driver.module.ts +++ b/packages/twenty-server/src/modules/messaging/message-import-manager/drivers/gmail/messaging-gmail-driver.module.ts @@ -4,7 +4,7 @@ import { TypeOrmModule } from '@nestjs/typeorm'; import { FeatureFlagEntity } from 'src/engine/core-modules/feature-flag/feature-flag.entity'; import { FeatureFlagModule } from 'src/engine/core-modules/feature-flag/feature-flag.module'; -import { EnvironmentModule } from 'src/engine/integrations/environment/environment.module'; +import { EnvironmentModule } from 'src/engine/core-modules/environment/environment.module'; import { ObjectMetadataRepositoryModule } from 'src/engine/object-metadata-repository/object-metadata-repository.module'; import { WorkspaceDataSourceModule } from 'src/engine/workspace-datasource/workspace-datasource.module'; import { BlocklistWorkspaceEntity } from 'src/modules/blocklist/standard-objects/blocklist.workspace-entity'; diff --git a/packages/twenty-server/src/modules/messaging/message-import-manager/jobs/messaging-add-single-message-to-cache-for-import.job.ts b/packages/twenty-server/src/modules/messaging/message-import-manager/jobs/messaging-add-single-message-to-cache-for-import.job.ts index 3f2c2a537..a37c38371 100644 --- a/packages/twenty-server/src/modules/messaging/message-import-manager/jobs/messaging-add-single-message-to-cache-for-import.job.ts +++ b/packages/twenty-server/src/modules/messaging/message-import-manager/jobs/messaging-add-single-message-to-cache-for-import.job.ts @@ -1,9 +1,9 @@ -import { CacheStorageService } from 'src/engine/integrations/cache-storage/cache-storage.service'; -import { InjectCacheStorage } from 'src/engine/integrations/cache-storage/decorators/cache-storage.decorator'; -import { CacheStorageNamespace } from 'src/engine/integrations/cache-storage/types/cache-storage-namespace.enum'; -import { Process } from 'src/engine/integrations/message-queue/decorators/process.decorator'; -import { Processor } from 'src/engine/integrations/message-queue/decorators/processor.decorator'; -import { MessageQueue } from 'src/engine/integrations/message-queue/message-queue.constants'; +import { CacheStorageService } from 'src/engine/core-modules/cache-storage/cache-storage.service'; +import { InjectCacheStorage } from 'src/engine/core-modules/cache-storage/decorators/cache-storage.decorator'; +import { CacheStorageNamespace } from 'src/engine/core-modules/cache-storage/types/cache-storage-namespace.enum'; +import { Process } from 'src/engine/core-modules/message-queue/decorators/process.decorator'; +import { Processor } from 'src/engine/core-modules/message-queue/decorators/processor.decorator'; +import { MessageQueue } from 'src/engine/core-modules/message-queue/message-queue.constants'; export type MessagingAddSingleMessageToCacheForImportJobData = { messageExternalId: string; diff --git a/packages/twenty-server/src/modules/messaging/message-import-manager/jobs/messaging-clean-cache.ts b/packages/twenty-server/src/modules/messaging/message-import-manager/jobs/messaging-clean-cache.ts index 24e048ce0..38e3ec8cf 100644 --- a/packages/twenty-server/src/modules/messaging/message-import-manager/jobs/messaging-clean-cache.ts +++ b/packages/twenty-server/src/modules/messaging/message-import-manager/jobs/messaging-clean-cache.ts @@ -1,11 +1,11 @@ import { Logger } from '@nestjs/common'; -import { CacheStorageService } from 'src/engine/integrations/cache-storage/cache-storage.service'; -import { InjectCacheStorage } from 'src/engine/integrations/cache-storage/decorators/cache-storage.decorator'; -import { CacheStorageNamespace } from 'src/engine/integrations/cache-storage/types/cache-storage-namespace.enum'; -import { Process } from 'src/engine/integrations/message-queue/decorators/process.decorator'; -import { Processor } from 'src/engine/integrations/message-queue/decorators/processor.decorator'; -import { MessageQueue } from 'src/engine/integrations/message-queue/message-queue.constants'; +import { CacheStorageService } from 'src/engine/core-modules/cache-storage/cache-storage.service'; +import { InjectCacheStorage } from 'src/engine/core-modules/cache-storage/decorators/cache-storage.decorator'; +import { CacheStorageNamespace } from 'src/engine/core-modules/cache-storage/types/cache-storage-namespace.enum'; +import { Process } from 'src/engine/core-modules/message-queue/decorators/process.decorator'; +import { Processor } from 'src/engine/core-modules/message-queue/decorators/processor.decorator'; +import { MessageQueue } from 'src/engine/core-modules/message-queue/message-queue.constants'; export type MessagingCleanCacheJobData = { workspaceId: string; diff --git a/packages/twenty-server/src/modules/messaging/message-import-manager/jobs/messaging-message-list-fetch.job.ts b/packages/twenty-server/src/modules/messaging/message-import-manager/jobs/messaging-message-list-fetch.job.ts index a51bd35a0..cc66a1ff5 100644 --- a/packages/twenty-server/src/modules/messaging/message-import-manager/jobs/messaging-message-list-fetch.job.ts +++ b/packages/twenty-server/src/modules/messaging/message-import-manager/jobs/messaging-message-list-fetch.job.ts @@ -1,8 +1,8 @@ import { Logger, Scope } from '@nestjs/common'; -import { Process } from 'src/engine/integrations/message-queue/decorators/process.decorator'; -import { Processor } from 'src/engine/integrations/message-queue/decorators/processor.decorator'; -import { MessageQueue } from 'src/engine/integrations/message-queue/message-queue.constants'; +import { Process } from 'src/engine/core-modules/message-queue/decorators/process.decorator'; +import { Processor } from 'src/engine/core-modules/message-queue/decorators/processor.decorator'; +import { MessageQueue } from 'src/engine/core-modules/message-queue/message-queue.constants'; import { InjectObjectMetadataRepository } from 'src/engine/object-metadata-repository/object-metadata-repository.decorator'; import { TwentyORMManager } from 'src/engine/twenty-orm/twenty-orm.manager'; import { ConnectedAccountRepository } from 'src/modules/connected-account/repositories/connected-account.repository'; diff --git a/packages/twenty-server/src/modules/messaging/message-import-manager/jobs/messaging-messages-import.job.ts b/packages/twenty-server/src/modules/messaging/message-import-manager/jobs/messaging-messages-import.job.ts index f62dc3a1b..a22e1b26a 100644 --- a/packages/twenty-server/src/modules/messaging/message-import-manager/jobs/messaging-messages-import.job.ts +++ b/packages/twenty-server/src/modules/messaging/message-import-manager/jobs/messaging-messages-import.job.ts @@ -1,8 +1,8 @@ import { Scope } from '@nestjs/common'; -import { Process } from 'src/engine/integrations/message-queue/decorators/process.decorator'; -import { Processor } from 'src/engine/integrations/message-queue/decorators/processor.decorator'; -import { MessageQueue } from 'src/engine/integrations/message-queue/message-queue.constants'; +import { Process } from 'src/engine/core-modules/message-queue/decorators/process.decorator'; +import { Processor } from 'src/engine/core-modules/message-queue/decorators/processor.decorator'; +import { MessageQueue } from 'src/engine/core-modules/message-queue/message-queue.constants'; import { InjectObjectMetadataRepository } from 'src/engine/object-metadata-repository/object-metadata-repository.decorator'; import { TwentyORMManager } from 'src/engine/twenty-orm/twenty-orm.manager'; import { ConnectedAccountRepository } from 'src/modules/connected-account/repositories/connected-account.repository'; diff --git a/packages/twenty-server/src/modules/messaging/message-import-manager/jobs/messaging-ongoing-stale.job.ts b/packages/twenty-server/src/modules/messaging/message-import-manager/jobs/messaging-ongoing-stale.job.ts index 6f5166d26..f8ec658d3 100644 --- a/packages/twenty-server/src/modules/messaging/message-import-manager/jobs/messaging-ongoing-stale.job.ts +++ b/packages/twenty-server/src/modules/messaging/message-import-manager/jobs/messaging-ongoing-stale.job.ts @@ -2,9 +2,9 @@ import { Logger, Scope } from '@nestjs/common'; import { In } from 'typeorm'; -import { Process } from 'src/engine/integrations/message-queue/decorators/process.decorator'; -import { Processor } from 'src/engine/integrations/message-queue/decorators/processor.decorator'; -import { MessageQueue } from 'src/engine/integrations/message-queue/message-queue.constants'; +import { Process } from 'src/engine/core-modules/message-queue/decorators/process.decorator'; +import { Processor } from 'src/engine/core-modules/message-queue/decorators/processor.decorator'; +import { MessageQueue } from 'src/engine/core-modules/message-queue/message-queue.constants'; import { TwentyORMManager } from 'src/engine/twenty-orm/twenty-orm.manager'; import { MessageChannelSyncStatusService } from 'src/modules/messaging/common/services/message-channel-sync-status.service'; import { diff --git a/packages/twenty-server/src/modules/messaging/message-import-manager/listeners/messaging-import-manager-message-channel.listener.ts b/packages/twenty-server/src/modules/messaging/message-import-manager/listeners/messaging-import-manager-message-channel.listener.ts index b81118d3a..513e2672a 100644 --- a/packages/twenty-server/src/modules/messaging/message-import-manager/listeners/messaging-import-manager-message-channel.listener.ts +++ b/packages/twenty-server/src/modules/messaging/message-import-manager/listeners/messaging-import-manager-message-channel.listener.ts @@ -1,10 +1,10 @@ import { Injectable } from '@nestjs/common'; import { OnEvent } from '@nestjs/event-emitter'; -import { ObjectRecordDeleteEvent } from 'src/engine/integrations/event-emitter/types/object-record-delete.event'; -import { InjectMessageQueue } from 'src/engine/integrations/message-queue/decorators/message-queue.decorator'; -import { MessageQueue } from 'src/engine/integrations/message-queue/message-queue.constants'; -import { MessageQueueService } from 'src/engine/integrations/message-queue/services/message-queue.service'; +import { ObjectRecordDeleteEvent } from 'src/engine/core-modules/event-emitter/types/object-record-delete.event'; +import { InjectMessageQueue } from 'src/engine/core-modules/message-queue/decorators/message-queue.decorator'; +import { MessageQueue } from 'src/engine/core-modules/message-queue/message-queue.constants'; +import { MessageQueueService } from 'src/engine/core-modules/message-queue/services/message-queue.service'; import { WorkspaceEventBatch } from 'src/engine/workspace-event-emitter/workspace-event.type'; import { MessageChannelWorkspaceEntity } from 'src/modules/messaging/common/standard-objects/message-channel.workspace-entity'; import { diff --git a/packages/twenty-server/src/modules/messaging/message-import-manager/services/messaging-full-message-list-fetch.service.ts b/packages/twenty-server/src/modules/messaging/message-import-manager/services/messaging-full-message-list-fetch.service.ts index 549e90ad0..c4652b5e6 100644 --- a/packages/twenty-server/src/modules/messaging/message-import-manager/services/messaging-full-message-list-fetch.service.ts +++ b/packages/twenty-server/src/modules/messaging/message-import-manager/services/messaging-full-message-list-fetch.service.ts @@ -2,9 +2,9 @@ import { Injectable } from '@nestjs/common'; import { Any } from 'typeorm'; -import { CacheStorageService } from 'src/engine/integrations/cache-storage/cache-storage.service'; -import { InjectCacheStorage } from 'src/engine/integrations/cache-storage/decorators/cache-storage.decorator'; -import { CacheStorageNamespace } from 'src/engine/integrations/cache-storage/types/cache-storage-namespace.enum'; +import { CacheStorageService } from 'src/engine/core-modules/cache-storage/cache-storage.service'; +import { InjectCacheStorage } from 'src/engine/core-modules/cache-storage/decorators/cache-storage.decorator'; +import { CacheStorageNamespace } from 'src/engine/core-modules/cache-storage/types/cache-storage-namespace.enum'; import { TwentyORMManager } from 'src/engine/twenty-orm/twenty-orm.manager'; import { ConnectedAccountWorkspaceEntity } from 'src/modules/connected-account/standard-objects/connected-account.workspace-entity'; import { MessageChannelSyncStatusService } from 'src/modules/messaging/common/services/message-channel-sync-status.service'; diff --git a/packages/twenty-server/src/modules/messaging/message-import-manager/services/messaging-messages-import.service.ts b/packages/twenty-server/src/modules/messaging/message-import-manager/services/messaging-messages-import.service.ts index d13e80f03..fec045528 100644 --- a/packages/twenty-server/src/modules/messaging/message-import-manager/services/messaging-messages-import.service.ts +++ b/packages/twenty-server/src/modules/messaging/message-import-manager/services/messaging-messages-import.service.ts @@ -1,8 +1,8 @@ import { Injectable, Logger } from '@nestjs/common'; -import { CacheStorageService } from 'src/engine/integrations/cache-storage/cache-storage.service'; -import { InjectCacheStorage } from 'src/engine/integrations/cache-storage/decorators/cache-storage.decorator'; -import { CacheStorageNamespace } from 'src/engine/integrations/cache-storage/types/cache-storage-namespace.enum'; +import { CacheStorageService } from 'src/engine/core-modules/cache-storage/cache-storage.service'; +import { InjectCacheStorage } from 'src/engine/core-modules/cache-storage/decorators/cache-storage.decorator'; +import { CacheStorageNamespace } from 'src/engine/core-modules/cache-storage/types/cache-storage-namespace.enum'; import { InjectObjectMetadataRepository } from 'src/engine/object-metadata-repository/object-metadata-repository.decorator'; import { TwentyORMManager } from 'src/engine/twenty-orm/twenty-orm.manager'; import { BlocklistRepository } from 'src/modules/blocklist/repositories/blocklist.repository'; diff --git a/packages/twenty-server/src/modules/messaging/message-import-manager/services/messaging-partial-message-list-fetch.service.ts b/packages/twenty-server/src/modules/messaging/message-import-manager/services/messaging-partial-message-list-fetch.service.ts index d7bded110..14fc98a63 100644 --- a/packages/twenty-server/src/modules/messaging/message-import-manager/services/messaging-partial-message-list-fetch.service.ts +++ b/packages/twenty-server/src/modules/messaging/message-import-manager/services/messaging-partial-message-list-fetch.service.ts @@ -2,9 +2,9 @@ import { Injectable, Logger } from '@nestjs/common'; import { Any } from 'typeorm'; -import { CacheStorageService } from 'src/engine/integrations/cache-storage/cache-storage.service'; -import { InjectCacheStorage } from 'src/engine/integrations/cache-storage/decorators/cache-storage.decorator'; -import { CacheStorageNamespace } from 'src/engine/integrations/cache-storage/types/cache-storage-namespace.enum'; +import { CacheStorageService } from 'src/engine/core-modules/cache-storage/cache-storage.service'; +import { InjectCacheStorage } from 'src/engine/core-modules/cache-storage/decorators/cache-storage.decorator'; +import { CacheStorageNamespace } from 'src/engine/core-modules/cache-storage/types/cache-storage-namespace.enum'; import { TwentyORMManager } from 'src/engine/twenty-orm/twenty-orm.manager'; import { ConnectedAccountWorkspaceEntity } from 'src/modules/connected-account/standard-objects/connected-account.workspace-entity'; import { MessageChannelSyncStatusService } from 'src/modules/messaging/common/services/message-channel-sync-status.service'; diff --git a/packages/twenty-server/src/modules/messaging/message-import-manager/services/messaging-save-messages-and-enqueue-contact-creation.service.ts b/packages/twenty-server/src/modules/messaging/message-import-manager/services/messaging-save-messages-and-enqueue-contact-creation.service.ts index 79f93b3e0..4080dc08f 100644 --- a/packages/twenty-server/src/modules/messaging/message-import-manager/services/messaging-save-messages-and-enqueue-contact-creation.service.ts +++ b/packages/twenty-server/src/modules/messaging/message-import-manager/services/messaging-save-messages-and-enqueue-contact-creation.service.ts @@ -2,9 +2,9 @@ import { Injectable } from '@nestjs/common'; import { EntityManager } from 'typeorm'; -import { InjectMessageQueue } from 'src/engine/integrations/message-queue/decorators/message-queue.decorator'; -import { MessageQueue } from 'src/engine/integrations/message-queue/message-queue.constants'; -import { MessageQueueService } from 'src/engine/integrations/message-queue/services/message-queue.service'; +import { InjectMessageQueue } from 'src/engine/core-modules/message-queue/decorators/message-queue.decorator'; +import { MessageQueue } from 'src/engine/core-modules/message-queue/message-queue.constants'; +import { MessageQueueService } from 'src/engine/core-modules/message-queue/services/message-queue.service'; import { FieldActorSource } from 'src/engine/metadata-modules/field-metadata/composite-types/actor.composite-type'; import { TwentyORMManager } from 'src/engine/twenty-orm/twenty-orm.manager'; import { ConnectedAccountWorkspaceEntity } from 'src/modules/connected-account/standard-objects/connected-account.workspace-entity'; diff --git a/packages/twenty-server/src/modules/messaging/message-participant-manager/jobs/message-participant-match-participant.job.ts b/packages/twenty-server/src/modules/messaging/message-participant-manager/jobs/message-participant-match-participant.job.ts index 9b3f4b6bf..a72f4671b 100644 --- a/packages/twenty-server/src/modules/messaging/message-participant-manager/jobs/message-participant-match-participant.job.ts +++ b/packages/twenty-server/src/modules/messaging/message-participant-manager/jobs/message-participant-match-participant.job.ts @@ -1,8 +1,8 @@ import { Scope } from '@nestjs/common'; -import { Process } from 'src/engine/integrations/message-queue/decorators/process.decorator'; -import { Processor } from 'src/engine/integrations/message-queue/decorators/processor.decorator'; -import { MessageQueue } from 'src/engine/integrations/message-queue/message-queue.constants'; +import { Process } from 'src/engine/core-modules/message-queue/decorators/process.decorator'; +import { Processor } from 'src/engine/core-modules/message-queue/decorators/processor.decorator'; +import { MessageQueue } from 'src/engine/core-modules/message-queue/message-queue.constants'; import { MatchParticipantService } from 'src/modules/match-participant/match-participant.service'; import { MessageParticipantWorkspaceEntity } from 'src/modules/messaging/common/standard-objects/message-participant.workspace-entity'; diff --git a/packages/twenty-server/src/modules/messaging/message-participant-manager/jobs/message-participant-unmatch-participant.job.ts b/packages/twenty-server/src/modules/messaging/message-participant-manager/jobs/message-participant-unmatch-participant.job.ts index 78f2b80d8..8d7cc46b2 100644 --- a/packages/twenty-server/src/modules/messaging/message-participant-manager/jobs/message-participant-unmatch-participant.job.ts +++ b/packages/twenty-server/src/modules/messaging/message-participant-manager/jobs/message-participant-unmatch-participant.job.ts @@ -1,8 +1,8 @@ import { Scope } from '@nestjs/common'; -import { Process } from 'src/engine/integrations/message-queue/decorators/process.decorator'; -import { Processor } from 'src/engine/integrations/message-queue/decorators/processor.decorator'; -import { MessageQueue } from 'src/engine/integrations/message-queue/message-queue.constants'; +import { Process } from 'src/engine/core-modules/message-queue/decorators/process.decorator'; +import { Processor } from 'src/engine/core-modules/message-queue/decorators/processor.decorator'; +import { MessageQueue } from 'src/engine/core-modules/message-queue/message-queue.constants'; import { MatchParticipantService } from 'src/modules/match-participant/match-participant.service'; import { MessageParticipantWorkspaceEntity } from 'src/modules/messaging/common/standard-objects/message-participant.workspace-entity'; diff --git a/packages/twenty-server/src/modules/messaging/message-participant-manager/jobs/messaging-create-company-and-contact-after-sync.job.ts b/packages/twenty-server/src/modules/messaging/message-participant-manager/jobs/messaging-create-company-and-contact-after-sync.job.ts index e6b7c59f2..8529ebaef 100644 --- a/packages/twenty-server/src/modules/messaging/message-participant-manager/jobs/messaging-create-company-and-contact-after-sync.job.ts +++ b/packages/twenty-server/src/modules/messaging/message-participant-manager/jobs/messaging-create-company-and-contact-after-sync.job.ts @@ -2,9 +2,9 @@ import { Logger } from '@nestjs/common'; import { Any, IsNull } from 'typeorm'; -import { Process } from 'src/engine/integrations/message-queue/decorators/process.decorator'; -import { Processor } from 'src/engine/integrations/message-queue/decorators/processor.decorator'; -import { MessageQueue } from 'src/engine/integrations/message-queue/message-queue.constants'; +import { Process } from 'src/engine/core-modules/message-queue/decorators/process.decorator'; +import { Processor } from 'src/engine/core-modules/message-queue/decorators/processor.decorator'; +import { MessageQueue } from 'src/engine/core-modules/message-queue/message-queue.constants'; import { FieldActorSource } from 'src/engine/metadata-modules/field-metadata/composite-types/actor.composite-type'; import { InjectObjectMetadataRepository } from 'src/engine/object-metadata-repository/object-metadata-repository.decorator'; import { TwentyORMManager } from 'src/engine/twenty-orm/twenty-orm.manager'; diff --git a/packages/twenty-server/src/modules/messaging/message-participant-manager/listeners/message-participant-person.listener.ts b/packages/twenty-server/src/modules/messaging/message-participant-manager/listeners/message-participant-person.listener.ts index 8e42990c9..86b3a0289 100644 --- a/packages/twenty-server/src/modules/messaging/message-participant-manager/listeners/message-participant-person.listener.ts +++ b/packages/twenty-server/src/modules/messaging/message-participant-manager/listeners/message-participant-person.listener.ts @@ -1,12 +1,12 @@ import { Injectable } from '@nestjs/common'; import { OnEvent } from '@nestjs/event-emitter'; -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 { InjectMessageQueue } from 'src/engine/integrations/message-queue/decorators/message-queue.decorator'; -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/core-modules/event-emitter/types/object-record-create.event'; +import { ObjectRecordUpdateEvent } from 'src/engine/core-modules/event-emitter/types/object-record-update.event'; +import { objectRecordChangedProperties as objectRecordUpdateEventChangedProperties } from 'src/engine/core-modules/event-emitter/utils/object-record-changed-properties.util'; +import { InjectMessageQueue } from 'src/engine/core-modules/message-queue/decorators/message-queue.decorator'; +import { MessageQueue } from 'src/engine/core-modules/message-queue/message-queue.constants'; +import { MessageQueueService } from 'src/engine/core-modules/message-queue/services/message-queue.service'; import { WorkspaceEventBatch } from 'src/engine/workspace-event-emitter/workspace-event.type'; import { MessageParticipantMatchParticipantJob, diff --git a/packages/twenty-server/src/modules/messaging/message-participant-manager/listeners/message-participant-workspace-member.listener.ts b/packages/twenty-server/src/modules/messaging/message-participant-manager/listeners/message-participant-workspace-member.listener.ts index aeec32548..6d093a1cc 100644 --- a/packages/twenty-server/src/modules/messaging/message-participant-manager/listeners/message-participant-workspace-member.listener.ts +++ b/packages/twenty-server/src/modules/messaging/message-participant-manager/listeners/message-participant-workspace-member.listener.ts @@ -8,12 +8,12 @@ import { Workspace, WorkspaceActivationStatus, } from 'src/engine/core-modules/workspace/workspace.entity'; -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 { InjectMessageQueue } from 'src/engine/integrations/message-queue/decorators/message-queue.decorator'; -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/core-modules/event-emitter/types/object-record-create.event'; +import { ObjectRecordUpdateEvent } from 'src/engine/core-modules/event-emitter/types/object-record-update.event'; +import { objectRecordChangedProperties as objectRecordUpdateEventChangedProperties } from 'src/engine/core-modules/event-emitter/utils/object-record-changed-properties.util'; +import { InjectMessageQueue } from 'src/engine/core-modules/message-queue/decorators/message-queue.decorator'; +import { MessageQueue } from 'src/engine/core-modules/message-queue/message-queue.constants'; +import { MessageQueueService } from 'src/engine/core-modules/message-queue/services/message-queue.service'; import { WorkspaceEventBatch } from 'src/engine/workspace-event-emitter/workspace-event.type'; import { MessageParticipantMatchParticipantJob, diff --git a/packages/twenty-server/src/modules/messaging/monitoring/crons/commands/messaging-message-channel-sync-status-monitoring.cron.command.ts b/packages/twenty-server/src/modules/messaging/monitoring/crons/commands/messaging-message-channel-sync-status-monitoring.cron.command.ts index d90fd0b5b..cf2c65484 100644 --- a/packages/twenty-server/src/modules/messaging/monitoring/crons/commands/messaging-message-channel-sync-status-monitoring.cron.command.ts +++ b/packages/twenty-server/src/modules/messaging/monitoring/crons/commands/messaging-message-channel-sync-status-monitoring.cron.command.ts @@ -1,8 +1,8 @@ import { Command, CommandRunner } from 'nest-commander'; -import { InjectMessageQueue } from 'src/engine/integrations/message-queue/decorators/message-queue.decorator'; -import { MessageQueue } from 'src/engine/integrations/message-queue/message-queue.constants'; -import { MessageQueueService } from 'src/engine/integrations/message-queue/services/message-queue.service'; +import { InjectMessageQueue } from 'src/engine/core-modules/message-queue/decorators/message-queue.decorator'; +import { MessageQueue } from 'src/engine/core-modules/message-queue/message-queue.constants'; +import { MessageQueueService } from 'src/engine/core-modules/message-queue/services/message-queue.service'; import { MessagingMessageChannelSyncStatusMonitoringCronJob } from 'src/modules/messaging/monitoring/crons/jobs/messaging-message-channel-sync-status-monitoring.cron'; const MESSAGING_MESSAGE_CHANNEL_SYNC_STATUS_MONITORING_CRON_PATTERN = diff --git a/packages/twenty-server/src/modules/messaging/monitoring/crons/jobs/messaging-message-channel-sync-status-monitoring.cron.ts b/packages/twenty-server/src/modules/messaging/monitoring/crons/jobs/messaging-message-channel-sync-status-monitoring.cron.ts index 94ac094ff..83552b856 100644 --- a/packages/twenty-server/src/modules/messaging/monitoring/crons/jobs/messaging-message-channel-sync-status-monitoring.cron.ts +++ b/packages/twenty-server/src/modules/messaging/monitoring/crons/jobs/messaging-message-channel-sync-status-monitoring.cron.ts @@ -8,9 +8,9 @@ import { Workspace, WorkspaceActivationStatus, } from 'src/engine/core-modules/workspace/workspace.entity'; -import { Process } from 'src/engine/integrations/message-queue/decorators/process.decorator'; -import { Processor } from 'src/engine/integrations/message-queue/decorators/processor.decorator'; -import { MessageQueue } from 'src/engine/integrations/message-queue/message-queue.constants'; +import { Process } from 'src/engine/core-modules/message-queue/decorators/process.decorator'; +import { Processor } from 'src/engine/core-modules/message-queue/decorators/processor.decorator'; +import { MessageQueue } from 'src/engine/core-modules/message-queue/message-queue.constants'; import { TwentyORMGlobalManager } from 'src/engine/twenty-orm/twenty-orm-global.manager'; import { MessageChannelWorkspaceEntity } from 'src/modules/messaging/common/standard-objects/message-channel.workspace-entity'; import { MessagingTelemetryService } from 'src/modules/messaging/monitoring/services/messaging-telemetry.service'; diff --git a/packages/twenty-server/src/modules/messaging/monitoring/services/messaging-telemetry.service.ts b/packages/twenty-server/src/modules/messaging/monitoring/services/messaging-telemetry.service.ts index 0234f7fbc..efe5ae6b4 100644 --- a/packages/twenty-server/src/modules/messaging/monitoring/services/messaging-telemetry.service.ts +++ b/packages/twenty-server/src/modules/messaging/monitoring/services/messaging-telemetry.service.ts @@ -1,7 +1,7 @@ import { Injectable } from '@nestjs/common'; import { AnalyticsService } from 'src/engine/core-modules/analytics/analytics.service'; -import { EnvironmentService } from 'src/engine/integrations/environment/environment.service'; +import { EnvironmentService } from 'src/engine/core-modules/environment/environment.service'; type MessagingTelemetryTrackInput = { eventName: string; diff --git a/packages/twenty-server/src/modules/workflow/workflow-step-executor/workflow-step-executors/code-action-executor.ts b/packages/twenty-server/src/modules/serverless/workflow-actions/code.workflow-action.ts similarity index 66% rename from packages/twenty-server/src/modules/workflow/workflow-step-executor/workflow-step-executors/code-action-executor.ts rename to packages/twenty-server/src/modules/serverless/workflow-actions/code.workflow-action.ts index 1627ef1db..1e42dcf81 100644 --- a/packages/twenty-server/src/modules/workflow/workflow-step-executor/workflow-step-executors/code-action-executor.ts +++ b/packages/twenty-server/src/modules/serverless/workflow-actions/code.workflow-action.ts @@ -2,16 +2,15 @@ import { Injectable } from '@nestjs/common'; import { ServerlessFunctionService } from 'src/engine/metadata-modules/serverless-function/serverless-function.service'; import { ScopedWorkspaceContextFactory } from 'src/engine/twenty-orm/factories/scoped-workspace-context.factory'; -import { WorkflowResult } from 'src/modules/workflow/common/types/workflow-result.type'; -import { WorkflowCodeStep } from 'src/modules/workflow/common/types/workflow-step.type'; +import { WorkflowActionResult } from 'src/modules/workflow/workflow-executor/types/workflow-action-result.type'; +import { WorkflowCodeStep } from 'src/modules/workflow/workflow-executor/types/workflow-action.type'; import { WorkflowStepExecutorException, WorkflowStepExecutorExceptionCode, -} from 'src/modules/workflow/workflow-step-executor/workflow-step-executor.exception'; -import { WorkflowStepExecutor } from 'src/modules/workflow/workflow-step-executor/workflow-step-executor.interface'; +} from 'src/modules/workflow/workflow-executor/exceptions/workflow-step-executor.exception'; @Injectable() -export class CodeActionExecutor implements WorkflowStepExecutor { +export class CodeWorkflowAction { constructor( private readonly serverlessFunctionService: ServerlessFunctionService, private readonly scopedWorkspaceContextFactory: ScopedWorkspaceContextFactory, @@ -23,7 +22,7 @@ export class CodeActionExecutor implements WorkflowStepExecutor { }: { step: WorkflowCodeStep; payload?: object; - }): Promise<WorkflowResult> { + }): Promise<WorkflowActionResult> { const { workspaceId } = this.scopedWorkspaceContextFactory.create(); if (!workspaceId) { @@ -40,6 +39,10 @@ export class CodeActionExecutor implements WorkflowStepExecutor { payload || {}, ); - return { data: result.data, ...(result.error && { error: result.error }) }; + if (result.error) { + return { error: result.error }; + } + + return { result: result.data || {} }; } } diff --git a/packages/twenty-server/src/modules/timeline/jobs/create-audit-log-from-internal-event.ts b/packages/twenty-server/src/modules/timeline/jobs/create-audit-log-from-internal-event.ts index d820020d3..b831c0c38 100644 --- a/packages/twenty-server/src/modules/timeline/jobs/create-audit-log-from-internal-event.ts +++ b/packages/twenty-server/src/modules/timeline/jobs/create-audit-log-from-internal-event.ts @@ -1,7 +1,7 @@ -import { ObjectRecordBaseEvent } from 'src/engine/integrations/event-emitter/types/object-record.base.event'; -import { Process } from 'src/engine/integrations/message-queue/decorators/process.decorator'; -import { Processor } from 'src/engine/integrations/message-queue/decorators/processor.decorator'; -import { MessageQueue } from 'src/engine/integrations/message-queue/message-queue.constants'; +import { ObjectRecordBaseEvent } from 'src/engine/core-modules/event-emitter/types/object-record.base.event'; +import { Process } from 'src/engine/core-modules/message-queue/decorators/process.decorator'; +import { Processor } from 'src/engine/core-modules/message-queue/decorators/processor.decorator'; +import { MessageQueue } from 'src/engine/core-modules/message-queue/message-queue.constants'; import { InjectObjectMetadataRepository } from 'src/engine/object-metadata-repository/object-metadata-repository.decorator'; import { WorkspaceEventBatch } from 'src/engine/workspace-event-emitter/workspace-event.type'; import { AuditLogRepository } from 'src/modules/timeline/repositiories/audit-log.repository'; diff --git a/packages/twenty-server/src/modules/timeline/jobs/upsert-timeline-activity-from-internal-event.job.ts b/packages/twenty-server/src/modules/timeline/jobs/upsert-timeline-activity-from-internal-event.job.ts index c73479745..89d372163 100644 --- a/packages/twenty-server/src/modules/timeline/jobs/upsert-timeline-activity-from-internal-event.job.ts +++ b/packages/twenty-server/src/modules/timeline/jobs/upsert-timeline-activity-from-internal-event.job.ts @@ -1,7 +1,7 @@ -import { ObjectRecordBaseEvent } from 'src/engine/integrations/event-emitter/types/object-record.base.event'; -import { Process } from 'src/engine/integrations/message-queue/decorators/process.decorator'; -import { Processor } from 'src/engine/integrations/message-queue/decorators/processor.decorator'; -import { MessageQueue } from 'src/engine/integrations/message-queue/message-queue.constants'; +import { ObjectRecordBaseEvent } from 'src/engine/core-modules/event-emitter/types/object-record.base.event'; +import { Process } from 'src/engine/core-modules/message-queue/decorators/process.decorator'; +import { Processor } from 'src/engine/core-modules/message-queue/decorators/processor.decorator'; +import { MessageQueue } from 'src/engine/core-modules/message-queue/message-queue.constants'; import { InjectObjectMetadataRepository } from 'src/engine/object-metadata-repository/object-metadata-repository.decorator'; import { WorkspaceEventBatch } from 'src/engine/workspace-event-emitter/workspace-event.type'; import { TimelineActivityService } from 'src/modules/timeline/services/timeline-activity.service'; diff --git a/packages/twenty-server/src/modules/timeline/repositiories/timeline-activity.repository.ts b/packages/twenty-server/src/modules/timeline/repositiories/timeline-activity.repository.ts index 1ab962ea9..ec858797e 100644 --- a/packages/twenty-server/src/modules/timeline/repositiories/timeline-activity.repository.ts +++ b/packages/twenty-server/src/modules/timeline/repositiories/timeline-activity.repository.ts @@ -5,7 +5,7 @@ import { EntityManager } from 'typeorm'; import { Record } from 'src/engine/api/graphql/workspace-query-builder/interfaces/record.interface'; import { WorkspaceDataSourceService } from 'src/engine/workspace-datasource/workspace-datasource.service'; -import { objectRecordDiffMerge } from 'src/engine/integrations/event-emitter/utils/object-record-diff-merge'; +import { objectRecordDiffMerge } from 'src/engine/core-modules/event-emitter/utils/object-record-diff-merge'; @Injectable() export class TimelineActivityRepository { diff --git a/packages/twenty-server/src/modules/timeline/services/timeline-activity.service.ts b/packages/twenty-server/src/modules/timeline/services/timeline-activity.service.ts index 963a65d5f..12dfe5a52 100644 --- a/packages/twenty-server/src/modules/timeline/services/timeline-activity.service.ts +++ b/packages/twenty-server/src/modules/timeline/services/timeline-activity.service.ts @@ -1,6 +1,6 @@ import { Injectable } from '@nestjs/common'; -import { ObjectRecordBaseEventWithNameAndWorkspaceId } from 'src/engine/integrations/event-emitter/types/object-record.base.event'; +import { ObjectRecordBaseEventWithNameAndWorkspaceId } from 'src/engine/core-modules/event-emitter/types/object-record.base.event'; import { InjectObjectMetadataRepository } from 'src/engine/object-metadata-repository/object-metadata-repository.decorator'; import { WorkspaceDataSourceService } from 'src/engine/workspace-datasource/workspace-datasource.service'; import { TimelineActivityRepository } from 'src/modules/timeline/repositiories/timeline-activity.repository'; diff --git a/packages/twenty-server/src/modules/workflow/common/query-hooks/workflow-query-validation.exception.ts b/packages/twenty-server/src/modules/workflow/common/exceptions/workflow-query-validation.exception.ts similarity index 100% rename from packages/twenty-server/src/modules/workflow/common/query-hooks/workflow-query-validation.exception.ts rename to packages/twenty-server/src/modules/workflow/common/exceptions/workflow-query-validation.exception.ts diff --git a/packages/twenty-server/src/modules/workflow/common/query-hooks/workflow/workflow-create-many.pre-query.hook.ts b/packages/twenty-server/src/modules/workflow/common/query-hooks/workflow-create-many.pre-query.hook.ts similarity index 93% rename from packages/twenty-server/src/modules/workflow/common/query-hooks/workflow/workflow-create-many.pre-query.hook.ts rename to packages/twenty-server/src/modules/workflow/common/query-hooks/workflow-create-many.pre-query.hook.ts index cb6f6d943..ecff415a8 100644 --- a/packages/twenty-server/src/modules/workflow/common/query-hooks/workflow/workflow-create-many.pre-query.hook.ts +++ b/packages/twenty-server/src/modules/workflow/common/query-hooks/workflow-create-many.pre-query.hook.ts @@ -3,7 +3,7 @@ import { CreateManyResolverArgs } from 'src/engine/api/graphql/workspace-resolve import { WorkspaceQueryHook } from 'src/engine/api/graphql/workspace-query-runner/workspace-query-hook/decorators/workspace-query-hook.decorator'; import { AuthContext } from 'src/engine/core-modules/auth/types/auth-context.type'; -import { assertWorkflowStatusesNotSetOrEmpty } from 'src/modules/workflow/common/query-hooks/workflow/utils/assert-workflow-statuses-not-set-or-empty'; +import { assertWorkflowStatusesNotSetOrEmpty } from 'src/modules/workflow/common/utils/assert-workflow-statuses-not-set-or-empty'; import { WorkflowWorkspaceEntity } from 'src/modules/workflow/common/standard-objects/workflow.workspace-entity'; @WorkspaceQueryHook(`workflow.createMany`) diff --git a/packages/twenty-server/src/modules/workflow/common/query-hooks/workflow/workflow-create-one.pre-query.hook.ts b/packages/twenty-server/src/modules/workflow/common/query-hooks/workflow-create-one.pre-query.hook.ts similarity index 92% rename from packages/twenty-server/src/modules/workflow/common/query-hooks/workflow/workflow-create-one.pre-query.hook.ts rename to packages/twenty-server/src/modules/workflow/common/query-hooks/workflow-create-one.pre-query.hook.ts index 923713649..f00b9515b 100644 --- a/packages/twenty-server/src/modules/workflow/common/query-hooks/workflow/workflow-create-one.pre-query.hook.ts +++ b/packages/twenty-server/src/modules/workflow/common/query-hooks/workflow-create-one.pre-query.hook.ts @@ -3,7 +3,7 @@ import { CreateOneResolverArgs } from 'src/engine/api/graphql/workspace-resolver import { WorkspaceQueryHook } from 'src/engine/api/graphql/workspace-query-runner/workspace-query-hook/decorators/workspace-query-hook.decorator'; import { AuthContext } from 'src/engine/core-modules/auth/types/auth-context.type'; -import { assertWorkflowStatusesNotSetOrEmpty } from 'src/modules/workflow/common/query-hooks/workflow/utils/assert-workflow-statuses-not-set-or-empty'; +import { assertWorkflowStatusesNotSetOrEmpty } from 'src/modules/workflow/common/utils/assert-workflow-statuses-not-set-or-empty'; import { WorkflowWorkspaceEntity } from 'src/modules/workflow/common/standard-objects/workflow.workspace-entity'; @WorkspaceQueryHook(`workflow.createOne`) diff --git a/packages/twenty-server/src/modules/workflow/common/query-hooks/workflow-query-hook.module.ts b/packages/twenty-server/src/modules/workflow/common/query-hooks/workflow-query-hook.module.ts index 7601f628c..e8ebaa724 100644 --- a/packages/twenty-server/src/modules/workflow/common/query-hooks/workflow-query-hook.module.ts +++ b/packages/twenty-server/src/modules/workflow/common/query-hooks/workflow-query-hook.module.ts @@ -1,19 +1,19 @@ import { Module } from '@nestjs/common'; -import { WorkflowRunCreateManyPreQueryHook } from 'src/modules/workflow/common/query-hooks/workflow-run/workflow-run-create-many.pre-query.hook'; -import { WorkflowRunCreateOnePreQueryHook } from 'src/modules/workflow/common/query-hooks/workflow-run/workflow-run-create-one.pre-query.hook'; -import { WorkflowVersionValidationWorkspaceService } from 'src/modules/workflow/common/query-hooks/workflow-version/services/workflow-version-validation.workspace-service'; -import { WorkflowVersionCreateManyPreQueryHook } from 'src/modules/workflow/common/query-hooks/workflow-version/workflow-version-create-many.pre-query.hook'; -import { WorkflowVersionCreateOnePreQueryHook } from 'src/modules/workflow/common/query-hooks/workflow-version/workflow-version-create-one.pre-query.hook'; -import { WorkflowVersionDeleteManyPreQueryHook } from 'src/modules/workflow/common/query-hooks/workflow-version/workflow-version-delete-many.pre-query.hook'; -import { WorkflowVersionDeleteOnePreQueryHook } from 'src/modules/workflow/common/query-hooks/workflow-version/workflow-version-delete-one.pre-query.hook'; -import { WorkflowVersionUpdateManyPreQueryHook } from 'src/modules/workflow/common/query-hooks/workflow-version/workflow-version-update-many.pre-query.hook'; -import { WorkflowVersionUpdateOnePreQueryHook } from 'src/modules/workflow/common/query-hooks/workflow-version/workflow-version-update-one.pre-query.hook'; -import { WorkflowCreateManyPreQueryHook } from 'src/modules/workflow/common/query-hooks/workflow/workflow-create-many.pre-query.hook'; -import { WorkflowCreateOnePreQueryHook } from 'src/modules/workflow/common/query-hooks/workflow/workflow-create-one.pre-query.hook'; -import { WorkflowUpdateManyPreQueryHook } from 'src/modules/workflow/common/query-hooks/workflow/workflow-update-many.pre-query.hook'; -import { WorkflowUpdateOnePreQueryHook } from 'src/modules/workflow/common/query-hooks/workflow/workflow-update-one.pre-query.hook'; -import { WorkflowCommonWorkspaceService } from 'src/modules/workflow/common/services/workflow-common.workspace-service'; +import { WorkflowRunCreateManyPreQueryHook } from 'src/modules/workflow/common/query-hooks/workflow-run-create-many.pre-query.hook'; +import { WorkflowRunCreateOnePreQueryHook } from 'src/modules/workflow/common/query-hooks/workflow-run-create-one.pre-query.hook'; +import { WorkflowVersionValidationWorkspaceService } from 'src/modules/workflow/common/workspace-services/workflow-version-validation.workspace-service'; +import { WorkflowVersionCreateManyPreQueryHook } from 'src/modules/workflow/common/query-hooks/workflow-version-create-many.pre-query.hook'; +import { WorkflowVersionCreateOnePreQueryHook } from 'src/modules/workflow/common/query-hooks/workflow-version-create-one.pre-query.hook'; +import { WorkflowVersionDeleteManyPreQueryHook } from 'src/modules/workflow/common/query-hooks/workflow-version-delete-many.pre-query.hook'; +import { WorkflowVersionDeleteOnePreQueryHook } from 'src/modules/workflow/common/query-hooks/workflow-version-delete-one.pre-query.hook'; +import { WorkflowVersionUpdateManyPreQueryHook } from 'src/modules/workflow/common/query-hooks/workflow-version-update-many.pre-query.hook'; +import { WorkflowVersionUpdateOnePreQueryHook } from 'src/modules/workflow/common/query-hooks/workflow-version-update-one.pre-query.hook'; +import { WorkflowCreateManyPreQueryHook } from 'src/modules/workflow/common/query-hooks/workflow-create-many.pre-query.hook'; +import { WorkflowCreateOnePreQueryHook } from 'src/modules/workflow/common/query-hooks/workflow-create-one.pre-query.hook'; +import { WorkflowUpdateManyPreQueryHook } from 'src/modules/workflow/common/query-hooks/workflow-update-many.pre-query.hook'; +import { WorkflowUpdateOnePreQueryHook } from 'src/modules/workflow/common/query-hooks/workflow-update-one.pre-query.hook'; +import { WorkflowCommonWorkspaceService } from 'src/modules/workflow/common/workspace-services/workflow-common.workspace-service'; @Module({ providers: [ diff --git a/packages/twenty-server/src/modules/workflow/common/query-hooks/workflow-run/workflow-run-create-many.pre-query.hook.ts b/packages/twenty-server/src/modules/workflow/common/query-hooks/workflow-run-create-many.pre-query.hook.ts similarity index 92% rename from packages/twenty-server/src/modules/workflow/common/query-hooks/workflow-run/workflow-run-create-many.pre-query.hook.ts rename to packages/twenty-server/src/modules/workflow/common/query-hooks/workflow-run-create-many.pre-query.hook.ts index d12dd3166..b598f43a7 100644 --- a/packages/twenty-server/src/modules/workflow/common/query-hooks/workflow-run/workflow-run-create-many.pre-query.hook.ts +++ b/packages/twenty-server/src/modules/workflow/common/query-hooks/workflow-run-create-many.pre-query.hook.ts @@ -5,7 +5,7 @@ import { WorkspaceQueryHook } from 'src/engine/api/graphql/workspace-query-runne import { WorkflowQueryValidationException, WorkflowQueryValidationExceptionCode, -} from 'src/modules/workflow/common/query-hooks/workflow-query-validation.exception'; +} from 'src/modules/workflow/common/exceptions/workflow-query-validation.exception'; import { WorkflowRunWorkspaceEntity } from 'src/modules/workflow/common/standard-objects/workflow-run.workspace-entity'; @WorkspaceQueryHook(`workflowRun.createMany`) diff --git a/packages/twenty-server/src/modules/workflow/common/query-hooks/workflow-run/workflow-run-create-one.pre-query.hook.ts b/packages/twenty-server/src/modules/workflow/common/query-hooks/workflow-run-create-one.pre-query.hook.ts similarity index 92% rename from packages/twenty-server/src/modules/workflow/common/query-hooks/workflow-run/workflow-run-create-one.pre-query.hook.ts rename to packages/twenty-server/src/modules/workflow/common/query-hooks/workflow-run-create-one.pre-query.hook.ts index f8620b11b..0f1039477 100644 --- a/packages/twenty-server/src/modules/workflow/common/query-hooks/workflow-run/workflow-run-create-one.pre-query.hook.ts +++ b/packages/twenty-server/src/modules/workflow/common/query-hooks/workflow-run-create-one.pre-query.hook.ts @@ -5,7 +5,7 @@ import { WorkspaceQueryHook } from 'src/engine/api/graphql/workspace-query-runne import { WorkflowQueryValidationException, WorkflowQueryValidationExceptionCode, -} from 'src/modules/workflow/common/query-hooks/workflow-query-validation.exception'; +} from 'src/modules/workflow/common/exceptions/workflow-query-validation.exception'; import { WorkflowRunWorkspaceEntity } from 'src/modules/workflow/common/standard-objects/workflow-run.workspace-entity'; @WorkspaceQueryHook(`workflowRun.createOne`) diff --git a/packages/twenty-server/src/modules/workflow/common/query-hooks/workflow-run/workflow-run-delete-many.pre-query.hook.ts b/packages/twenty-server/src/modules/workflow/common/query-hooks/workflow-run-delete-many.pre-query.hook.ts similarity index 92% rename from packages/twenty-server/src/modules/workflow/common/query-hooks/workflow-run/workflow-run-delete-many.pre-query.hook.ts rename to packages/twenty-server/src/modules/workflow/common/query-hooks/workflow-run-delete-many.pre-query.hook.ts index da9dbbaac..4f791dcad 100644 --- a/packages/twenty-server/src/modules/workflow/common/query-hooks/workflow-run/workflow-run-delete-many.pre-query.hook.ts +++ b/packages/twenty-server/src/modules/workflow/common/query-hooks/workflow-run-delete-many.pre-query.hook.ts @@ -5,7 +5,7 @@ import { WorkspaceQueryHook } from 'src/engine/api/graphql/workspace-query-runne import { WorkflowQueryValidationException, WorkflowQueryValidationExceptionCode, -} from 'src/modules/workflow/common/query-hooks/workflow-query-validation.exception'; +} from 'src/modules/workflow/common/exceptions/workflow-query-validation.exception'; import { WorkflowRunWorkspaceEntity } from 'src/modules/workflow/common/standard-objects/workflow-run.workspace-entity'; @WorkspaceQueryHook(`workflowRun.deleteMany`) diff --git a/packages/twenty-server/src/modules/workflow/common/query-hooks/workflow-run/workflow-run-delete-one.pre-query.hook.ts b/packages/twenty-server/src/modules/workflow/common/query-hooks/workflow-run-delete-one.pre-query.hook.ts similarity index 90% rename from packages/twenty-server/src/modules/workflow/common/query-hooks/workflow-run/workflow-run-delete-one.pre-query.hook.ts rename to packages/twenty-server/src/modules/workflow/common/query-hooks/workflow-run-delete-one.pre-query.hook.ts index dcfb87744..29bd27814 100644 --- a/packages/twenty-server/src/modules/workflow/common/query-hooks/workflow-run/workflow-run-delete-one.pre-query.hook.ts +++ b/packages/twenty-server/src/modules/workflow/common/query-hooks/workflow-run-delete-one.pre-query.hook.ts @@ -5,7 +5,7 @@ import { WorkspaceQueryHook } from 'src/engine/api/graphql/workspace-query-runne import { WorkflowQueryValidationException, WorkflowQueryValidationExceptionCode, -} from 'src/modules/workflow/common/query-hooks/workflow-query-validation.exception'; +} from 'src/modules/workflow/common/exceptions/workflow-query-validation.exception'; @WorkspaceQueryHook(`workflowRun.deleteOne`) export class WorkflowRunDeleteOnePreQueryHook diff --git a/packages/twenty-server/src/modules/workflow/common/query-hooks/workflow-run/workflow-run-update-many.pre-query.hook.ts b/packages/twenty-server/src/modules/workflow/common/query-hooks/workflow-run-update-many.pre-query.hook.ts similarity index 92% rename from packages/twenty-server/src/modules/workflow/common/query-hooks/workflow-run/workflow-run-update-many.pre-query.hook.ts rename to packages/twenty-server/src/modules/workflow/common/query-hooks/workflow-run-update-many.pre-query.hook.ts index 5b1342ed8..ceb835b42 100644 --- a/packages/twenty-server/src/modules/workflow/common/query-hooks/workflow-run/workflow-run-update-many.pre-query.hook.ts +++ b/packages/twenty-server/src/modules/workflow/common/query-hooks/workflow-run-update-many.pre-query.hook.ts @@ -5,7 +5,7 @@ import { WorkspaceQueryHook } from 'src/engine/api/graphql/workspace-query-runne import { WorkflowQueryValidationException, WorkflowQueryValidationExceptionCode, -} from 'src/modules/workflow/common/query-hooks/workflow-query-validation.exception'; +} from 'src/modules/workflow/common/exceptions/workflow-query-validation.exception'; import { WorkflowRunWorkspaceEntity } from 'src/modules/workflow/common/standard-objects/workflow-run.workspace-entity'; @WorkspaceQueryHook(`workflowRun.updateMany`) diff --git a/packages/twenty-server/src/modules/workflow/common/query-hooks/workflow-run/workflow-run-update-one.pre-query.hook.ts b/packages/twenty-server/src/modules/workflow/common/query-hooks/workflow-run-update-one.pre-query.hook.ts similarity index 92% rename from packages/twenty-server/src/modules/workflow/common/query-hooks/workflow-run/workflow-run-update-one.pre-query.hook.ts rename to packages/twenty-server/src/modules/workflow/common/query-hooks/workflow-run-update-one.pre-query.hook.ts index f33f1783c..385da0f9d 100644 --- a/packages/twenty-server/src/modules/workflow/common/query-hooks/workflow-run/workflow-run-update-one.pre-query.hook.ts +++ b/packages/twenty-server/src/modules/workflow/common/query-hooks/workflow-run-update-one.pre-query.hook.ts @@ -5,7 +5,7 @@ import { WorkspaceQueryHook } from 'src/engine/api/graphql/workspace-query-runne import { WorkflowQueryValidationException, WorkflowQueryValidationExceptionCode, -} from 'src/modules/workflow/common/query-hooks/workflow-query-validation.exception'; +} from 'src/modules/workflow/common/exceptions/workflow-query-validation.exception'; import { WorkflowRunWorkspaceEntity } from 'src/modules/workflow/common/standard-objects/workflow-run.workspace-entity'; @WorkspaceQueryHook(`workflowRun.updateOne`) diff --git a/packages/twenty-server/src/modules/workflow/common/query-hooks/workflow/workflow-update-many.pre-query.hook.ts b/packages/twenty-server/src/modules/workflow/common/query-hooks/workflow-update-many.pre-query.hook.ts similarity index 92% rename from packages/twenty-server/src/modules/workflow/common/query-hooks/workflow/workflow-update-many.pre-query.hook.ts rename to packages/twenty-server/src/modules/workflow/common/query-hooks/workflow-update-many.pre-query.hook.ts index e18e1d017..fa802edb2 100644 --- a/packages/twenty-server/src/modules/workflow/common/query-hooks/workflow/workflow-update-many.pre-query.hook.ts +++ b/packages/twenty-server/src/modules/workflow/common/query-hooks/workflow-update-many.pre-query.hook.ts @@ -5,7 +5,7 @@ import { WorkspaceQueryHook } from 'src/engine/api/graphql/workspace-query-runne import { WorkflowQueryValidationException, WorkflowQueryValidationExceptionCode, -} from 'src/modules/workflow/common/query-hooks/workflow-query-validation.exception'; +} from 'src/modules/workflow/common/exceptions/workflow-query-validation.exception'; import { WorkflowWorkspaceEntity } from 'src/modules/workflow/common/standard-objects/workflow.workspace-entity'; @WorkspaceQueryHook(`workflow.updateMany`) diff --git a/packages/twenty-server/src/modules/workflow/common/query-hooks/workflow/workflow-update-one.pre-query.hook.ts b/packages/twenty-server/src/modules/workflow/common/query-hooks/workflow-update-one.pre-query.hook.ts similarity index 93% rename from packages/twenty-server/src/modules/workflow/common/query-hooks/workflow/workflow-update-one.pre-query.hook.ts rename to packages/twenty-server/src/modules/workflow/common/query-hooks/workflow-update-one.pre-query.hook.ts index 096c8044e..0c57c119c 100644 --- a/packages/twenty-server/src/modules/workflow/common/query-hooks/workflow/workflow-update-one.pre-query.hook.ts +++ b/packages/twenty-server/src/modules/workflow/common/query-hooks/workflow-update-one.pre-query.hook.ts @@ -3,7 +3,7 @@ import { UpdateOneResolverArgs } from 'src/engine/api/graphql/workspace-resolver import { WorkspaceQueryHook } from 'src/engine/api/graphql/workspace-query-runner/workspace-query-hook/decorators/workspace-query-hook.decorator'; import { AuthContext } from 'src/engine/core-modules/auth/types/auth-context.type'; -import { assertWorkflowStatusesNotSet } from 'src/modules/workflow/common/query-hooks/workflow/utils/assert-workflow-statuses-not-set'; +import { assertWorkflowStatusesNotSet } from 'src/modules/workflow/common/utils/assert-workflow-statuses-not-set'; import { WorkflowWorkspaceEntity } from 'src/modules/workflow/common/standard-objects/workflow.workspace-entity'; @WorkspaceQueryHook(`workflow.updateOne`) diff --git a/packages/twenty-server/src/modules/workflow/common/query-hooks/workflow-version/workflow-version-create-many.pre-query.hook.ts b/packages/twenty-server/src/modules/workflow/common/query-hooks/workflow-version-create-many.pre-query.hook.ts similarity index 93% rename from packages/twenty-server/src/modules/workflow/common/query-hooks/workflow-version/workflow-version-create-many.pre-query.hook.ts rename to packages/twenty-server/src/modules/workflow/common/query-hooks/workflow-version-create-many.pre-query.hook.ts index 8d27ac88b..51849295a 100644 --- a/packages/twenty-server/src/modules/workflow/common/query-hooks/workflow-version/workflow-version-create-many.pre-query.hook.ts +++ b/packages/twenty-server/src/modules/workflow/common/query-hooks/workflow-version-create-many.pre-query.hook.ts @@ -6,7 +6,7 @@ import { import { WorkspaceQueryHook } from 'src/engine/api/graphql/workspace-query-runner/workspace-query-hook/decorators/workspace-query-hook.decorator'; import { AuthContext } from 'src/engine/core-modules/auth/types/auth-context.type'; -import { WorkflowVersionValidationWorkspaceService } from 'src/modules/workflow/common/query-hooks/workflow-version/services/workflow-version-validation.workspace-service'; +import { WorkflowVersionValidationWorkspaceService } from 'src/modules/workflow/common/workspace-services/workflow-version-validation.workspace-service'; import { WorkflowVersionWorkspaceEntity } from 'src/modules/workflow/common/standard-objects/workflow-version.workspace-entity'; @WorkspaceQueryHook(`workflowVersion.createMany`) diff --git a/packages/twenty-server/src/modules/workflow/common/query-hooks/workflow-version/workflow-version-create-one.pre-query.hook.ts b/packages/twenty-server/src/modules/workflow/common/query-hooks/workflow-version-create-one.pre-query.hook.ts similarity index 92% rename from packages/twenty-server/src/modules/workflow/common/query-hooks/workflow-version/workflow-version-create-one.pre-query.hook.ts rename to packages/twenty-server/src/modules/workflow/common/query-hooks/workflow-version-create-one.pre-query.hook.ts index 98d5c9d05..0741ec96d 100644 --- a/packages/twenty-server/src/modules/workflow/common/query-hooks/workflow-version/workflow-version-create-one.pre-query.hook.ts +++ b/packages/twenty-server/src/modules/workflow/common/query-hooks/workflow-version-create-one.pre-query.hook.ts @@ -3,7 +3,7 @@ import { CreateOneResolverArgs } from 'src/engine/api/graphql/workspace-resolver import { WorkspaceQueryHook } from 'src/engine/api/graphql/workspace-query-runner/workspace-query-hook/decorators/workspace-query-hook.decorator'; import { AuthContext } from 'src/engine/core-modules/auth/types/auth-context.type'; -import { WorkflowVersionValidationWorkspaceService } from 'src/modules/workflow/common/query-hooks/workflow-version/services/workflow-version-validation.workspace-service'; +import { WorkflowVersionValidationWorkspaceService } from 'src/modules/workflow/common/workspace-services/workflow-version-validation.workspace-service'; import { WorkflowVersionWorkspaceEntity } from 'src/modules/workflow/common/standard-objects/workflow-version.workspace-entity'; @WorkspaceQueryHook(`workflowVersion.createOne`) diff --git a/packages/twenty-server/src/modules/workflow/common/query-hooks/workflow-version/workflow-version-delete-many.pre-query.hook.ts b/packages/twenty-server/src/modules/workflow/common/query-hooks/workflow-version-delete-many.pre-query.hook.ts similarity index 92% rename from packages/twenty-server/src/modules/workflow/common/query-hooks/workflow-version/workflow-version-delete-many.pre-query.hook.ts rename to packages/twenty-server/src/modules/workflow/common/query-hooks/workflow-version-delete-many.pre-query.hook.ts index f47e11472..35279e1e3 100644 --- a/packages/twenty-server/src/modules/workflow/common/query-hooks/workflow-version/workflow-version-delete-many.pre-query.hook.ts +++ b/packages/twenty-server/src/modules/workflow/common/query-hooks/workflow-version-delete-many.pre-query.hook.ts @@ -5,7 +5,7 @@ import { WorkspaceQueryHook } from 'src/engine/api/graphql/workspace-query-runne import { WorkflowQueryValidationException, WorkflowQueryValidationExceptionCode, -} from 'src/modules/workflow/common/query-hooks/workflow-query-validation.exception'; +} from 'src/modules/workflow/common/exceptions/workflow-query-validation.exception'; import { WorkflowVersionWorkspaceEntity } from 'src/modules/workflow/common/standard-objects/workflow-version.workspace-entity'; @WorkspaceQueryHook(`workflowVersion.deleteMany`) diff --git a/packages/twenty-server/src/modules/workflow/common/query-hooks/workflow-version/workflow-version-delete-one.pre-query.hook.ts b/packages/twenty-server/src/modules/workflow/common/query-hooks/workflow-version-delete-one.pre-query.hook.ts similarity index 91% rename from packages/twenty-server/src/modules/workflow/common/query-hooks/workflow-version/workflow-version-delete-one.pre-query.hook.ts rename to packages/twenty-server/src/modules/workflow/common/query-hooks/workflow-version-delete-one.pre-query.hook.ts index f4cd1a48f..75304e77e 100644 --- a/packages/twenty-server/src/modules/workflow/common/query-hooks/workflow-version/workflow-version-delete-one.pre-query.hook.ts +++ b/packages/twenty-server/src/modules/workflow/common/query-hooks/workflow-version-delete-one.pre-query.hook.ts @@ -3,7 +3,7 @@ import { DeleteOneResolverArgs } from 'src/engine/api/graphql/workspace-resolver import { WorkspaceQueryHook } from 'src/engine/api/graphql/workspace-query-runner/workspace-query-hook/decorators/workspace-query-hook.decorator'; import { AuthContext } from 'src/engine/core-modules/auth/types/auth-context.type'; -import { WorkflowVersionValidationWorkspaceService } from 'src/modules/workflow/common/query-hooks/workflow-version/services/workflow-version-validation.workspace-service'; +import { WorkflowVersionValidationWorkspaceService } from 'src/modules/workflow/common/workspace-services/workflow-version-validation.workspace-service'; @WorkspaceQueryHook(`workflowVersion.deleteOne`) export class WorkflowVersionDeleteOnePreQueryHook diff --git a/packages/twenty-server/src/modules/workflow/common/query-hooks/workflow-version/workflow-version-update-many.pre-query.hook.ts b/packages/twenty-server/src/modules/workflow/common/query-hooks/workflow-version-update-many.pre-query.hook.ts similarity index 92% rename from packages/twenty-server/src/modules/workflow/common/query-hooks/workflow-version/workflow-version-update-many.pre-query.hook.ts rename to packages/twenty-server/src/modules/workflow/common/query-hooks/workflow-version-update-many.pre-query.hook.ts index beba6071f..5a8e52060 100644 --- a/packages/twenty-server/src/modules/workflow/common/query-hooks/workflow-version/workflow-version-update-many.pre-query.hook.ts +++ b/packages/twenty-server/src/modules/workflow/common/query-hooks/workflow-version-update-many.pre-query.hook.ts @@ -5,7 +5,7 @@ import { WorkspaceQueryHook } from 'src/engine/api/graphql/workspace-query-runne import { WorkflowQueryValidationException, WorkflowQueryValidationExceptionCode, -} from 'src/modules/workflow/common/query-hooks/workflow-query-validation.exception'; +} from 'src/modules/workflow/common/exceptions/workflow-query-validation.exception'; import { WorkflowVersionWorkspaceEntity } from 'src/modules/workflow/common/standard-objects/workflow-version.workspace-entity'; @WorkspaceQueryHook(`workflowVersion.updateMany`) diff --git a/packages/twenty-server/src/modules/workflow/common/query-hooks/workflow-version/workflow-version-update-one.pre-query.hook.ts b/packages/twenty-server/src/modules/workflow/common/query-hooks/workflow-version-update-one.pre-query.hook.ts similarity index 92% rename from packages/twenty-server/src/modules/workflow/common/query-hooks/workflow-version/workflow-version-update-one.pre-query.hook.ts rename to packages/twenty-server/src/modules/workflow/common/query-hooks/workflow-version-update-one.pre-query.hook.ts index a8421cc11..584e834d8 100644 --- a/packages/twenty-server/src/modules/workflow/common/query-hooks/workflow-version/workflow-version-update-one.pre-query.hook.ts +++ b/packages/twenty-server/src/modules/workflow/common/query-hooks/workflow-version-update-one.pre-query.hook.ts @@ -3,7 +3,7 @@ import { UpdateOneResolverArgs } from 'src/engine/api/graphql/workspace-resolver import { WorkspaceQueryHook } from 'src/engine/api/graphql/workspace-query-runner/workspace-query-hook/decorators/workspace-query-hook.decorator'; import { AuthContext } from 'src/engine/core-modules/auth/types/auth-context.type'; -import { WorkflowVersionValidationWorkspaceService } from 'src/modules/workflow/common/query-hooks/workflow-version/services/workflow-version-validation.workspace-service'; +import { WorkflowVersionValidationWorkspaceService } from 'src/modules/workflow/common/workspace-services/workflow-version-validation.workspace-service'; import { WorkflowVersionWorkspaceEntity } from 'src/modules/workflow/common/standard-objects/workflow-version.workspace-entity'; @WorkspaceQueryHook(`workflowVersion.updateOne`) diff --git a/packages/twenty-server/src/modules/workflow/common/standard-objects/workflow-version.workspace-entity.ts b/packages/twenty-server/src/modules/workflow/common/standard-objects/workflow-version.workspace-entity.ts index 8149cfcc3..80545fe78 100644 --- a/packages/twenty-server/src/modules/workflow/common/standard-objects/workflow-version.workspace-entity.ts +++ b/packages/twenty-server/src/modules/workflow/common/standard-objects/workflow-version.workspace-entity.ts @@ -21,8 +21,8 @@ import { import { STANDARD_OBJECT_IDS } from 'src/engine/workspace-manager/workspace-sync-metadata/constants/standard-object-ids'; import { WorkflowRunWorkspaceEntity } from 'src/modules/workflow/common/standard-objects/workflow-run.workspace-entity'; import { WorkflowWorkspaceEntity } from 'src/modules/workflow/common/standard-objects/workflow.workspace-entity'; -import { WorkflowStep } from 'src/modules/workflow/common/types/workflow-step.type'; -import { WorkflowTrigger } from 'src/modules/workflow/common/types/workflow-trigger.type'; +import { WorkflowStep } from 'src/modules/workflow/workflow-executor/types/workflow-action.type'; +import { WorkflowTrigger } from 'src/modules/workflow/workflow-trigger/types/workflow-trigger.type'; export enum WorkflowVersionStatus { DRAFT = 'DRAFT', diff --git a/packages/twenty-server/src/modules/workflow/common/types/workflow-result.type.ts b/packages/twenty-server/src/modules/workflow/common/types/workflow-result.type.ts deleted file mode 100644 index 613ad5a99..000000000 --- a/packages/twenty-server/src/modules/workflow/common/types/workflow-result.type.ts +++ /dev/null @@ -1,10 +0,0 @@ -type WorkflowError = { - errorType: string; - errorMessage: string; - stackTrace: string; -}; - -export type WorkflowResult = { - data: object | null; - error?: WorkflowError; -}; diff --git a/packages/twenty-server/src/modules/workflow/common/types/workflow-settings.type.ts b/packages/twenty-server/src/modules/workflow/common/types/workflow-settings.type.ts deleted file mode 100644 index dde3025df..000000000 --- a/packages/twenty-server/src/modules/workflow/common/types/workflow-settings.type.ts +++ /dev/null @@ -1,14 +0,0 @@ -type BaseWorkflowSettings = { - errorHandlingOptions: { - retryOnFailure: { - value: boolean; - }; - continueOnFailure: { - value: boolean; - }; - }; -}; - -export type WorkflowCodeSettings = BaseWorkflowSettings & { - serverlessFunctionId: string; -}; diff --git a/packages/twenty-server/src/modules/workflow/common/types/workflow-step.type.ts b/packages/twenty-server/src/modules/workflow/common/types/workflow-step.type.ts deleted file mode 100644 index ef3c70696..000000000 --- a/packages/twenty-server/src/modules/workflow/common/types/workflow-step.type.ts +++ /dev/null @@ -1,18 +0,0 @@ -import { WorkflowCodeSettings } from 'src/modules/workflow/common/types/workflow-settings.type'; - -export enum WorkflowStepType { - CODE_ACTION = 'CODE_ACTION', -} - -type BaseWorkflowStep = { - id: string; - name: string; - valid: boolean; -}; - -export type WorkflowCodeStep = BaseWorkflowStep & { - type: WorkflowStepType.CODE_ACTION; - settings: WorkflowCodeSettings; -}; - -export type WorkflowStep = WorkflowCodeStep; diff --git a/packages/twenty-server/src/modules/workflow/common/query-hooks/workflow/utils/assert-workflow-statuses-not-set-or-empty.ts b/packages/twenty-server/src/modules/workflow/common/utils/assert-workflow-statuses-not-set-or-empty.ts similarity index 85% rename from packages/twenty-server/src/modules/workflow/common/query-hooks/workflow/utils/assert-workflow-statuses-not-set-or-empty.ts rename to packages/twenty-server/src/modules/workflow/common/utils/assert-workflow-statuses-not-set-or-empty.ts index 1bead1592..ca9b73197 100644 --- a/packages/twenty-server/src/modules/workflow/common/query-hooks/workflow/utils/assert-workflow-statuses-not-set-or-empty.ts +++ b/packages/twenty-server/src/modules/workflow/common/utils/assert-workflow-statuses-not-set-or-empty.ts @@ -1,7 +1,7 @@ import { WorkflowQueryValidationException, WorkflowQueryValidationExceptionCode, -} from 'src/modules/workflow/common/query-hooks/workflow-query-validation.exception'; +} from 'src/modules/workflow/common/exceptions/workflow-query-validation.exception'; import { WorkflowStatus } from 'src/modules/workflow/common/standard-objects/workflow.workspace-entity'; export const assertWorkflowStatusesNotSetOrEmpty = ( diff --git a/packages/twenty-server/src/modules/workflow/common/query-hooks/workflow/utils/assert-workflow-statuses-not-set.ts b/packages/twenty-server/src/modules/workflow/common/utils/assert-workflow-statuses-not-set.ts similarity index 84% rename from packages/twenty-server/src/modules/workflow/common/query-hooks/workflow/utils/assert-workflow-statuses-not-set.ts rename to packages/twenty-server/src/modules/workflow/common/utils/assert-workflow-statuses-not-set.ts index 0949551c2..e16f026c7 100644 --- a/packages/twenty-server/src/modules/workflow/common/query-hooks/workflow/utils/assert-workflow-statuses-not-set.ts +++ b/packages/twenty-server/src/modules/workflow/common/utils/assert-workflow-statuses-not-set.ts @@ -1,7 +1,7 @@ import { WorkflowQueryValidationException, WorkflowQueryValidationExceptionCode, -} from 'src/modules/workflow/common/query-hooks/workflow-query-validation.exception'; +} from 'src/modules/workflow/common/exceptions/workflow-query-validation.exception'; import { WorkflowStatus } from 'src/modules/workflow/common/standard-objects/workflow.workspace-entity'; export const assertWorkflowStatusesNotSet = ( diff --git a/packages/twenty-server/src/modules/workflow/common/query-hooks/workflow-version/utils/assert-workflow-version-is-draft.util.ts b/packages/twenty-server/src/modules/workflow/common/utils/assert-workflow-version-is-draft.util.ts similarity index 77% rename from packages/twenty-server/src/modules/workflow/common/query-hooks/workflow-version/utils/assert-workflow-version-is-draft.util.ts rename to packages/twenty-server/src/modules/workflow/common/utils/assert-workflow-version-is-draft.util.ts index 2604f63fb..6c55ef5c5 100644 --- a/packages/twenty-server/src/modules/workflow/common/query-hooks/workflow-version/utils/assert-workflow-version-is-draft.util.ts +++ b/packages/twenty-server/src/modules/workflow/common/utils/assert-workflow-version-is-draft.util.ts @@ -1,12 +1,12 @@ import { WorkflowQueryValidationException, WorkflowQueryValidationExceptionCode, -} from 'src/modules/workflow/common/query-hooks/workflow-query-validation.exception'; +} from 'src/modules/workflow/common/exceptions/workflow-query-validation.exception'; import { WorkflowVersionStatus, WorkflowVersionWorkspaceEntity, } from 'src/modules/workflow/common/standard-objects/workflow-version.workspace-entity'; -import { WorkflowTrigger } from 'src/modules/workflow/common/types/workflow-trigger.type'; +import { WorkflowTrigger } from 'src/modules/workflow/workflow-trigger/types/workflow-trigger.type'; export const assertWorkflowVersionIsDraft = ( workflowVersion: Omit<WorkflowVersionWorkspaceEntity, 'trigger'> & { diff --git a/packages/twenty-server/src/modules/workflow/common/workflow-common.module.ts b/packages/twenty-server/src/modules/workflow/common/workflow-common.module.ts index bc9b9a9f0..fc23aa8ff 100644 --- a/packages/twenty-server/src/modules/workflow/common/workflow-common.module.ts +++ b/packages/twenty-server/src/modules/workflow/common/workflow-common.module.ts @@ -1,7 +1,7 @@ import { Module } from '@nestjs/common'; import { WorkflowQueryHookModule } from 'src/modules/workflow/common/query-hooks/workflow-query-hook.module'; -import { WorkflowCommonWorkspaceService } from 'src/modules/workflow/common/services/workflow-common.workspace-service'; +import { WorkflowCommonWorkspaceService } from 'src/modules/workflow/common/workspace-services/workflow-common.workspace-service'; @Module({ imports: [WorkflowQueryHookModule], diff --git a/packages/twenty-server/src/modules/workflow/common/services/workflow-common.workspace-service.ts b/packages/twenty-server/src/modules/workflow/common/workspace-services/workflow-common.workspace-service.ts similarity index 90% rename from packages/twenty-server/src/modules/workflow/common/services/workflow-common.workspace-service.ts rename to packages/twenty-server/src/modules/workflow/common/workspace-services/workflow-common.workspace-service.ts index 6cc0478e2..a1db5af0d 100644 --- a/packages/twenty-server/src/modules/workflow/common/services/workflow-common.workspace-service.ts +++ b/packages/twenty-server/src/modules/workflow/common/workspace-services/workflow-common.workspace-service.ts @@ -2,11 +2,11 @@ import { Injectable } from '@nestjs/common'; import { TwentyORMManager } from 'src/engine/twenty-orm/twenty-orm.manager'; import { WorkflowVersionWorkspaceEntity } from 'src/modules/workflow/common/standard-objects/workflow-version.workspace-entity'; -import { WorkflowTrigger } from 'src/modules/workflow/common/types/workflow-trigger.type'; +import { WorkflowTrigger } from 'src/modules/workflow/workflow-trigger/types/workflow-trigger.type'; import { WorkflowTriggerException, WorkflowTriggerExceptionCode, -} from 'src/modules/workflow/workflow-trigger/workflow-trigger.exception'; +} from 'src/modules/workflow/workflow-trigger/exceptions/workflow-trigger.exception'; @Injectable() export class WorkflowCommonWorkspaceService { diff --git a/packages/twenty-server/src/modules/workflow/common/query-hooks/workflow-version/services/workflow-version-validation.workspace-service.ts b/packages/twenty-server/src/modules/workflow/common/workspace-services/workflow-version-validation.workspace-service.ts similarity index 92% rename from packages/twenty-server/src/modules/workflow/common/query-hooks/workflow-version/services/workflow-version-validation.workspace-service.ts rename to packages/twenty-server/src/modules/workflow/common/workspace-services/workflow-version-validation.workspace-service.ts index 114cc3f47..1a9054ccc 100644 --- a/packages/twenty-server/src/modules/workflow/common/query-hooks/workflow-version/services/workflow-version-validation.workspace-service.ts +++ b/packages/twenty-server/src/modules/workflow/common/workspace-services/workflow-version-validation.workspace-service.ts @@ -10,9 +10,9 @@ import { TwentyORMManager } from 'src/engine/twenty-orm/twenty-orm.manager'; import { WorkflowQueryValidationException, WorkflowQueryValidationExceptionCode, -} from 'src/modules/workflow/common/query-hooks/workflow-query-validation.exception'; -import { assertWorkflowVersionIsDraft } from 'src/modules/workflow/common/query-hooks/workflow-version/utils/assert-workflow-version-is-draft.util'; -import { WorkflowCommonWorkspaceService } from 'src/modules/workflow/common/services/workflow-common.workspace-service'; +} from 'src/modules/workflow/common/exceptions/workflow-query-validation.exception'; +import { assertWorkflowVersionIsDraft } from 'src/modules/workflow/common/utils/assert-workflow-version-is-draft.util'; +import { WorkflowCommonWorkspaceService } from 'src/modules/workflow/common/workspace-services/workflow-common.workspace-service'; import { WorkflowVersionStatus, WorkflowVersionWorkspaceEntity, diff --git a/packages/twenty-server/src/modules/workflow/workflow-executor/workflow-executor.exception.ts b/packages/twenty-server/src/modules/workflow/workflow-executor/exceptions/workflow-executor.exception.ts similarity index 100% rename from packages/twenty-server/src/modules/workflow/workflow-executor/workflow-executor.exception.ts rename to packages/twenty-server/src/modules/workflow/workflow-executor/exceptions/workflow-executor.exception.ts diff --git a/packages/twenty-server/src/modules/workflow/workflow-step-executor/workflow-step-executor.exception.ts b/packages/twenty-server/src/modules/workflow/workflow-executor/exceptions/workflow-step-executor.exception.ts similarity index 100% rename from packages/twenty-server/src/modules/workflow/workflow-step-executor/workflow-step-executor.exception.ts rename to packages/twenty-server/src/modules/workflow/workflow-executor/exceptions/workflow-step-executor.exception.ts diff --git a/packages/twenty-server/src/modules/workflow/workflow-executor/factories/workflow-action.factory.ts b/packages/twenty-server/src/modules/workflow/workflow-executor/factories/workflow-action.factory.ts new file mode 100644 index 000000000..5c23d81d3 --- /dev/null +++ b/packages/twenty-server/src/modules/workflow/workflow-executor/factories/workflow-action.factory.ts @@ -0,0 +1,33 @@ +import { Injectable } from '@nestjs/common'; + +import { WorkflowAction } from 'src/modules/workflow/workflow-executor/interfaces/workflow-action.interface'; + +import { WorkflowActionType } from 'src/modules/workflow/workflow-executor/types/workflow-action.type'; +import { + WorkflowStepExecutorException, + WorkflowStepExecutorExceptionCode, +} from 'src/modules/workflow/workflow-executor/exceptions/workflow-step-executor.exception'; +import { CodeWorkflowAction } from 'src/modules/serverless/workflow-actions/code.workflow-action'; +import { SendEmailWorkflowAction } from 'src/modules/mail-sender/workflow-actions/send-email.workflow-action'; + +@Injectable() +export class WorkflowActionFactory { + constructor( + private readonly codeWorkflowAction: CodeWorkflowAction, + private readonly sendEmailWorkflowAction: SendEmailWorkflowAction, + ) {} + + get(stepType: WorkflowActionType): WorkflowAction { + switch (stepType) { + case WorkflowActionType.CODE: + return this.codeWorkflowAction; + case WorkflowActionType.SEND_EMAIL: + return this.sendEmailWorkflowAction; + default: + throw new WorkflowStepExecutorException( + `Workflow step executor not found for step type '${stepType}'`, + WorkflowStepExecutorExceptionCode.INVALID_STEP_TYPE, + ); + } + } +} diff --git a/packages/twenty-server/src/modules/workflow/workflow-executor/interfaces/workflow-action.interface.ts b/packages/twenty-server/src/modules/workflow/workflow-executor/interfaces/workflow-action.interface.ts new file mode 100644 index 000000000..47b481949 --- /dev/null +++ b/packages/twenty-server/src/modules/workflow/workflow-executor/interfaces/workflow-action.interface.ts @@ -0,0 +1,12 @@ +import { WorkflowActionResult } from 'src/modules/workflow/workflow-executor/types/workflow-action-result.type'; +import { WorkflowStep } from 'src/modules/workflow/workflow-executor/types/workflow-action.type'; + +export interface WorkflowAction { + execute({ + step, + payload, + }: { + step: WorkflowStep; + payload?: object; + }): Promise<WorkflowActionResult>; +} diff --git a/packages/twenty-server/src/modules/workflow/workflow-executor/types/workflow-action-result.type.ts b/packages/twenty-server/src/modules/workflow/workflow-executor/types/workflow-action-result.type.ts new file mode 100644 index 000000000..b856dfb75 --- /dev/null +++ b/packages/twenty-server/src/modules/workflow/workflow-executor/types/workflow-action-result.type.ts @@ -0,0 +1,10 @@ +type WorkflowActionError = { + errorType: string; + errorMessage: string; + stackTrace: string; +}; + +export type WorkflowActionResult = { + result?: object; + error?: WorkflowActionError; +}; diff --git a/packages/twenty-server/src/modules/workflow/workflow-executor/types/workflow-action.type.ts b/packages/twenty-server/src/modules/workflow/workflow-executor/types/workflow-action.type.ts new file mode 100644 index 000000000..aeacb3377 --- /dev/null +++ b/packages/twenty-server/src/modules/workflow/workflow-executor/types/workflow-action.type.ts @@ -0,0 +1,27 @@ +import { + WorkflowCodeStepSettings, + WorkflowSendEmailStepSettings, +} from 'src/modules/workflow/workflow-executor/types/workflow-step-settings.type'; + +export enum WorkflowActionType { + CODE = 'CODE', + SEND_EMAIL = 'SEND_EMAIL', +} + +type BaseWorkflowStep = { + id: string; + name: string; + valid: boolean; +}; + +export type WorkflowCodeStep = BaseWorkflowStep & { + type: WorkflowActionType.CODE; + settings: WorkflowCodeStepSettings; +}; + +export type WorkflowSendEmailStep = BaseWorkflowStep & { + type: WorkflowActionType.SEND_EMAIL; + settings: WorkflowSendEmailStepSettings; +}; + +export type WorkflowStep = WorkflowCodeStep | WorkflowSendEmailStep; diff --git a/packages/twenty-server/src/modules/workflow/workflow-executor/types/workflow-step-settings.type.ts b/packages/twenty-server/src/modules/workflow/workflow-executor/types/workflow-step-settings.type.ts new file mode 100644 index 000000000..99b334d0f --- /dev/null +++ b/packages/twenty-server/src/modules/workflow/workflow-executor/types/workflow-step-settings.type.ts @@ -0,0 +1,24 @@ +type BaseWorkflowStepSettings = { + errorHandlingOptions: { + retryOnFailure: { + value: boolean; + }; + continueOnFailure: { + value: boolean; + }; + }; +}; + +export type WorkflowCodeStepSettings = BaseWorkflowStepSettings & { + serverlessFunctionId: string; +}; + +export type WorkflowSendEmailStepSettings = BaseWorkflowStepSettings & { + subject?: string; + template?: string; + title?: string; + callToAction?: { + value: string; + href: string; + }; +}; diff --git a/packages/twenty-server/src/modules/workflow/workflow-executor/workflow-executor.module.ts b/packages/twenty-server/src/modules/workflow/workflow-executor/workflow-executor.module.ts index d01b7aa11..0f68b2917 100644 --- a/packages/twenty-server/src/modules/workflow/workflow-executor/workflow-executor.module.ts +++ b/packages/twenty-server/src/modules/workflow/workflow-executor/workflow-executor.module.ts @@ -1,12 +1,22 @@ import { Module } from '@nestjs/common'; import { WorkflowCommonModule } from 'src/modules/workflow/common/workflow-common.module'; -import { WorkflowExecutorWorkspaceService } from 'src/modules/workflow/workflow-executor/workflow-executor.workspace-service'; -import { WorkflowStepExecutorModule } from 'src/modules/workflow/workflow-step-executor/workflow-step-executor.module'; +import { WorkflowExecutorWorkspaceService } from 'src/modules/workflow/workflow-executor/workspace-services/workflow-executor.workspace-service'; +import { WorkflowActionFactory } from 'src/modules/workflow/workflow-executor/factories/workflow-action.factory'; +import { CodeWorkflowAction } from 'src/modules/serverless/workflow-actions/code.workflow-action'; +import { SendEmailWorkflowAction } from 'src/modules/mail-sender/workflow-actions/send-email.workflow-action'; +import { ServerlessFunctionModule } from 'src/engine/metadata-modules/serverless-function/serverless-function.module'; +import { ScopedWorkspaceContextFactory } from 'src/engine/twenty-orm/factories/scoped-workspace-context.factory'; @Module({ - imports: [WorkflowCommonModule, WorkflowStepExecutorModule], - providers: [WorkflowExecutorWorkspaceService], + imports: [WorkflowCommonModule, ServerlessFunctionModule], + providers: [ + WorkflowExecutorWorkspaceService, + ScopedWorkspaceContextFactory, + WorkflowActionFactory, + CodeWorkflowAction, + SendEmailWorkflowAction, + ], exports: [WorkflowExecutorWorkspaceService], }) export class WorkflowExecutorModule {} diff --git a/packages/twenty-server/src/modules/workflow/workflow-executor/workflow-executor.workspace-service.ts b/packages/twenty-server/src/modules/workflow/workflow-executor/workspace-services/workflow-executor.workspace-service.ts similarity index 71% rename from packages/twenty-server/src/modules/workflow/workflow-executor/workflow-executor.workspace-service.ts rename to packages/twenty-server/src/modules/workflow/workflow-executor/workspace-services/workflow-executor.workspace-service.ts index b157a8d14..593543047 100644 --- a/packages/twenty-server/src/modules/workflow/workflow-executor/workflow-executor.workspace-service.ts +++ b/packages/twenty-server/src/modules/workflow/workflow-executor/workspace-services/workflow-executor.workspace-service.ts @@ -1,24 +1,22 @@ import { Injectable } from '@nestjs/common'; -import { WorkflowStep } from 'src/modules/workflow/common/types/workflow-step.type'; +import { WorkflowStep } from 'src/modules/workflow/workflow-executor/types/workflow-action.type'; import { WorkflowExecutorException, WorkflowExecutorExceptionCode, -} from 'src/modules/workflow/workflow-executor/workflow-executor.exception'; -import { WorkflowStepExecutorFactory } from 'src/modules/workflow/workflow-step-executor/workflow-step-executor.factory'; +} from 'src/modules/workflow/workflow-executor/exceptions/workflow-executor.exception'; +import { WorkflowActionFactory } from 'src/modules/workflow/workflow-executor/factories/workflow-action.factory'; const MAX_RETRIES_ON_FAILURE = 3; export type WorkflowExecutionOutput = { - data?: object; + result?: object; error?: object; }; @Injectable() export class WorkflowExecutorWorkspaceService { - constructor( - private readonly workflowStepExecutorFactory: WorkflowStepExecutorFactory, - ) {} + constructor(private readonly workflowActionFactory: WorkflowActionFactory) {} async execute({ currentStepIndex, @@ -33,26 +31,24 @@ export class WorkflowExecutorWorkspaceService { }): Promise<WorkflowExecutionOutput> { if (currentStepIndex >= steps.length) { return { - data: payload, + result: payload, }; } const step = steps[currentStepIndex]; - const workflowStepExecutor = this.workflowStepExecutorFactory.get( - step.type, - ); + const workflowAction = this.workflowActionFactory.get(step.type); - const result = await workflowStepExecutor.execute({ + const result = await workflowAction.execute({ step, payload, }); - if (result.data) { + if (result.result) { return await this.execute({ currentStepIndex: currentStepIndex + 1, steps, - payload: result.data, + payload: result.result, }); } diff --git a/packages/twenty-server/src/modules/workflow/workflow-runner/workflow-run/workflow-run.exception.ts b/packages/twenty-server/src/modules/workflow/workflow-runner/exceptions/workflow-run.exception.ts similarity index 100% rename from packages/twenty-server/src/modules/workflow/workflow-runner/workflow-run/workflow-run.exception.ts rename to packages/twenty-server/src/modules/workflow/workflow-runner/exceptions/workflow-run.exception.ts diff --git a/packages/twenty-server/src/modules/workflow/workflow-runner/jobs/run-workflow.job.ts b/packages/twenty-server/src/modules/workflow/workflow-runner/jobs/run-workflow.job.ts index 1630b14c1..0ca2a3107 100644 --- a/packages/twenty-server/src/modules/workflow/workflow-runner/jobs/run-workflow.job.ts +++ b/packages/twenty-server/src/modules/workflow/workflow-runner/jobs/run-workflow.job.ts @@ -1,12 +1,12 @@ import { Scope } from '@nestjs/common'; -import { Process } from 'src/engine/integrations/message-queue/decorators/process.decorator'; -import { Processor } from 'src/engine/integrations/message-queue/decorators/processor.decorator'; -import { MessageQueue } from 'src/engine/integrations/message-queue/message-queue.constants'; -import { WorkflowCommonWorkspaceService } from 'src/modules/workflow/common/services/workflow-common.workspace-service'; +import { Process } from 'src/engine/core-modules/message-queue/decorators/process.decorator'; +import { Processor } from 'src/engine/core-modules/message-queue/decorators/processor.decorator'; +import { MessageQueue } from 'src/engine/core-modules/message-queue/message-queue.constants'; +import { WorkflowCommonWorkspaceService } from 'src/modules/workflow/common/workspace-services/workflow-common.workspace-service'; import { WorkflowRunStatus } from 'src/modules/workflow/common/standard-objects/workflow-run.workspace-entity'; -import { WorkflowExecutorWorkspaceService } from 'src/modules/workflow/workflow-executor/workflow-executor.workspace-service'; -import { WorkflowRunWorkspaceService } from 'src/modules/workflow/workflow-runner/workflow-run/workflow-run.workspace-service'; +import { WorkflowExecutorWorkspaceService } from 'src/modules/workflow/workflow-executor/workspace-services/workflow-executor.workspace-service'; +import { WorkflowRunWorkspaceService } from 'src/modules/workflow/workflow-runner/workspace-services/workflow-run.workspace-service'; export type RunWorkflowJobData = { workspaceId: string; diff --git a/packages/twenty-server/src/modules/workflow/workflow-runner/workflow-run/workflow-run.module.ts b/packages/twenty-server/src/modules/workflow/workflow-runner/workflow-run/workflow-run.module.ts deleted file mode 100644 index 55a987bc9..000000000 --- a/packages/twenty-server/src/modules/workflow/workflow-runner/workflow-run/workflow-run.module.ts +++ /dev/null @@ -1,11 +0,0 @@ -import { Module } from '@nestjs/common'; - -import { WorkflowCommonModule } from 'src/modules/workflow/common/workflow-common.module'; -import { WorkflowRunWorkspaceService } from 'src/modules/workflow/workflow-runner/workflow-run/workflow-run.workspace-service'; - -@Module({ - imports: [WorkflowCommonModule], - providers: [WorkflowRunWorkspaceService], - exports: [WorkflowRunWorkspaceService], -}) -export class WorkflowRunModule {} diff --git a/packages/twenty-server/src/modules/workflow/workflow-runner/workflow-runner.module.ts b/packages/twenty-server/src/modules/workflow/workflow-runner/workflow-runner.module.ts index bf33e5b21..72871ae83 100644 --- a/packages/twenty-server/src/modules/workflow/workflow-runner/workflow-runner.module.ts +++ b/packages/twenty-server/src/modules/workflow/workflow-runner/workflow-runner.module.ts @@ -3,12 +3,16 @@ import { Module } from '@nestjs/common'; import { WorkflowCommonModule } from 'src/modules/workflow/common/workflow-common.module'; import { WorkflowExecutorModule } from 'src/modules/workflow/workflow-executor/workflow-executor.module'; import { RunWorkflowJob } from 'src/modules/workflow/workflow-runner/jobs/run-workflow.job'; -import { WorkflowRunModule } from 'src/modules/workflow/workflow-runner/workflow-run/workflow-run.module'; -import { WorkflowRunnerWorkspaceService } from 'src/modules/workflow/workflow-runner/workflow-runner.workspace-service'; +import { WorkflowRunnerWorkspaceService } from 'src/modules/workflow/workflow-runner/workspace-services/workflow-runner.workspace-service'; +import { WorkflowRunWorkspaceService } from 'src/modules/workflow/workflow-runner/workspace-services/workflow-run.workspace-service'; @Module({ - imports: [WorkflowRunModule, WorkflowCommonModule, WorkflowExecutorModule], - providers: [WorkflowRunnerWorkspaceService, RunWorkflowJob], + imports: [WorkflowCommonModule, WorkflowExecutorModule], + providers: [ + WorkflowRunnerWorkspaceService, + WorkflowRunWorkspaceService, + RunWorkflowJob, + ], exports: [WorkflowRunnerWorkspaceService], }) export class WorkflowRunnerModule {} diff --git a/packages/twenty-server/src/modules/workflow/workflow-runner/workflow-run/workflow-run.workspace-service.ts b/packages/twenty-server/src/modules/workflow/workflow-runner/workspace-services/workflow-run.workspace-service.ts similarity index 95% rename from packages/twenty-server/src/modules/workflow/workflow-runner/workflow-run/workflow-run.workspace-service.ts rename to packages/twenty-server/src/modules/workflow/workflow-runner/workspace-services/workflow-run.workspace-service.ts index 126984f01..00162c595 100644 --- a/packages/twenty-server/src/modules/workflow/workflow-runner/workflow-run/workflow-run.workspace-service.ts +++ b/packages/twenty-server/src/modules/workflow/workflow-runner/workspace-services/workflow-run.workspace-service.ts @@ -2,7 +2,7 @@ import { Injectable } from '@nestjs/common'; import { ActorMetadata } from 'src/engine/metadata-modules/field-metadata/composite-types/actor.composite-type'; import { TwentyORMManager } from 'src/engine/twenty-orm/twenty-orm.manager'; -import { WorkflowCommonWorkspaceService } from 'src/modules/workflow/common/services/workflow-common.workspace-service'; +import { WorkflowCommonWorkspaceService } from 'src/modules/workflow/common/workspace-services/workflow-common.workspace-service'; import { WorkflowRunStatus, WorkflowRunWorkspaceEntity, @@ -10,7 +10,7 @@ import { import { WorkflowRunException, WorkflowRunExceptionCode, -} from 'src/modules/workflow/workflow-runner/workflow-run/workflow-run.exception'; +} from 'src/modules/workflow/workflow-runner/exceptions/workflow-run.exception'; @Injectable() export class WorkflowRunWorkspaceService { diff --git a/packages/twenty-server/src/modules/workflow/workflow-runner/workflow-runner.workspace-service.ts b/packages/twenty-server/src/modules/workflow/workflow-runner/workspace-services/workflow-runner.workspace-service.ts similarity index 82% rename from packages/twenty-server/src/modules/workflow/workflow-runner/workflow-runner.workspace-service.ts rename to packages/twenty-server/src/modules/workflow/workflow-runner/workspace-services/workflow-runner.workspace-service.ts index bc43bd1b5..e0e0020b1 100644 --- a/packages/twenty-server/src/modules/workflow/workflow-runner/workflow-runner.workspace-service.ts +++ b/packages/twenty-server/src/modules/workflow/workflow-runner/workspace-services/workflow-runner.workspace-service.ts @@ -1,14 +1,14 @@ import { Injectable } from '@nestjs/common'; -import { InjectMessageQueue } from 'src/engine/integrations/message-queue/decorators/message-queue.decorator'; -import { MessageQueue } from 'src/engine/integrations/message-queue/message-queue.constants'; -import { MessageQueueService } from 'src/engine/integrations/message-queue/services/message-queue.service'; +import { InjectMessageQueue } from 'src/engine/core-modules/message-queue/decorators/message-queue.decorator'; +import { MessageQueue } from 'src/engine/core-modules/message-queue/message-queue.constants'; +import { MessageQueueService } from 'src/engine/core-modules/message-queue/services/message-queue.service'; import { ActorMetadata } from 'src/engine/metadata-modules/field-metadata/composite-types/actor.composite-type'; import { RunWorkflowJob, RunWorkflowJobData, } from 'src/modules/workflow/workflow-runner/jobs/run-workflow.job'; -import { WorkflowRunWorkspaceService } from 'src/modules/workflow/workflow-runner/workflow-run/workflow-run.workspace-service'; +import { WorkflowRunWorkspaceService } from 'src/modules/workflow/workflow-runner/workspace-services/workflow-run.workspace-service'; @Injectable() export class WorkflowRunnerWorkspaceService { diff --git a/packages/twenty-server/src/modules/workflow/workflow-status/workflow-status.constants.ts b/packages/twenty-server/src/modules/workflow/workflow-status/constants/workflow-status.constants.ts similarity index 100% rename from packages/twenty-server/src/modules/workflow/workflow-status/workflow-status.constants.ts rename to packages/twenty-server/src/modules/workflow/workflow-status/constants/workflow-status.constants.ts diff --git a/packages/twenty-server/src/modules/workflow/workflow-status/workflow-status.enums.ts b/packages/twenty-server/src/modules/workflow/workflow-status/enums/workflow-status.enum.ts similarity index 100% rename from packages/twenty-server/src/modules/workflow/workflow-status/workflow-status.enums.ts rename to packages/twenty-server/src/modules/workflow/workflow-status/enums/workflow-status.enum.ts diff --git a/packages/twenty-server/src/modules/workflow/workflow-status/jobs/workflow-statuses-update.job.ts b/packages/twenty-server/src/modules/workflow/workflow-status/jobs/workflow-statuses-update.job.ts index 9cf1e7a39..4f4ce5886 100644 --- a/packages/twenty-server/src/modules/workflow/workflow-status/jobs/workflow-statuses-update.job.ts +++ b/packages/twenty-server/src/modules/workflow/workflow-status/jobs/workflow-statuses-update.job.ts @@ -1,8 +1,8 @@ import { Scope } from '@nestjs/common'; -import { Process } from 'src/engine/integrations/message-queue/decorators/process.decorator'; -import { Processor } from 'src/engine/integrations/message-queue/decorators/processor.decorator'; -import { MessageQueue } from 'src/engine/integrations/message-queue/message-queue.constants'; +import { Process } from 'src/engine/core-modules/message-queue/decorators/process.decorator'; +import { Processor } from 'src/engine/core-modules/message-queue/decorators/processor.decorator'; +import { MessageQueue } from 'src/engine/core-modules/message-queue/message-queue.constants'; import { TwentyORMManager } from 'src/engine/twenty-orm/twenty-orm.manager'; import { WorkflowVersionStatus } from 'src/modules/workflow/common/standard-objects/workflow-version.workspace-entity'; import { WorkflowWorkspaceEntity } from 'src/modules/workflow/common/standard-objects/workflow.workspace-entity'; diff --git a/packages/twenty-server/src/modules/workflow/workflow-status/listeners/workflow-version-status.listener.ts b/packages/twenty-server/src/modules/workflow/workflow-status/listeners/workflow-version-status.listener.ts index f9fe6aa1b..b8e3c9619 100644 --- a/packages/twenty-server/src/modules/workflow/workflow-status/listeners/workflow-version-status.listener.ts +++ b/packages/twenty-server/src/modules/workflow/workflow-status/listeners/workflow-version-status.listener.ts @@ -1,11 +1,11 @@ import { Injectable } from '@nestjs/common'; import { OnEvent } from '@nestjs/event-emitter'; -import { ObjectRecordCreateEvent } from 'src/engine/integrations/event-emitter/types/object-record-create.event'; -import { ObjectRecordDeleteEvent } from 'src/engine/integrations/event-emitter/types/object-record-delete.event'; -import { InjectMessageQueue } from 'src/engine/integrations/message-queue/decorators/message-queue.decorator'; -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/core-modules/event-emitter/types/object-record-create.event'; +import { ObjectRecordDeleteEvent } from 'src/engine/core-modules/event-emitter/types/object-record-delete.event'; +import { InjectMessageQueue } from 'src/engine/core-modules/message-queue/decorators/message-queue.decorator'; +import { MessageQueue } from 'src/engine/core-modules/message-queue/message-queue.constants'; +import { MessageQueueService } from 'src/engine/core-modules/message-queue/services/message-queue.service'; import { WorkspaceEventBatch } from 'src/engine/workspace-event-emitter/workspace-event.type'; import { WorkflowVersionStatus, diff --git a/packages/twenty-server/src/modules/workflow/workflow-status/utils/get-status-combination-from-array.util.ts b/packages/twenty-server/src/modules/workflow/workflow-status/utils/get-status-combination-from-array.util.ts index 1df699db4..267b4a681 100644 --- a/packages/twenty-server/src/modules/workflow/workflow-status/utils/get-status-combination-from-array.util.ts +++ b/packages/twenty-server/src/modules/workflow/workflow-status/utils/get-status-combination-from-array.util.ts @@ -7,8 +7,8 @@ import { DEACTIVATED_AND_DRAFT_STATUSES, DEACTIVATED_STATUSES, DRAFT_STATUSES, -} from 'src/modules/workflow/workflow-status/workflow-status.constants'; -import { WorkflowStatusCombination } from 'src/modules/workflow/workflow-status/workflow-status.enums'; +} from 'src/modules/workflow/workflow-status/constants/workflow-status.constants'; +import { WorkflowStatusCombination } from 'src/modules/workflow/workflow-status/enums/workflow-status.enum'; export const getStatusCombinationFromArray = ( statuses: WorkflowStatus[], diff --git a/packages/twenty-server/src/modules/workflow/workflow-status/utils/get-status-combination-from-update.util.ts b/packages/twenty-server/src/modules/workflow/workflow-status/utils/get-status-combination-from-update.util.ts index ecf0fe2f9..634133990 100644 --- a/packages/twenty-server/src/modules/workflow/workflow-status/utils/get-status-combination-from-update.util.ts +++ b/packages/twenty-server/src/modules/workflow/workflow-status/utils/get-status-combination-from-update.util.ts @@ -1,5 +1,5 @@ import { WorkflowVersionStatus } from 'src/modules/workflow/common/standard-objects/workflow-version.workspace-entity'; -import { WorkflowStatusCombination } from 'src/modules/workflow/workflow-status/workflow-status.enums'; +import { WorkflowStatusCombination } from 'src/modules/workflow/workflow-status/enums/workflow-status.enum'; export const getStatusCombinationFromUpdate = ( previousCombination: WorkflowStatusCombination, diff --git a/packages/twenty-server/src/modules/workflow/workflow-status/utils/get-statuses-from-combination.util.ts b/packages/twenty-server/src/modules/workflow/workflow-status/utils/get-statuses-from-combination.util.ts index e8f65beae..72c53862e 100644 --- a/packages/twenty-server/src/modules/workflow/workflow-status/utils/get-statuses-from-combination.util.ts +++ b/packages/twenty-server/src/modules/workflow/workflow-status/utils/get-statuses-from-combination.util.ts @@ -6,8 +6,8 @@ import { DEACTIVATED_STATUSES, DRAFT_STATUSES, NO_STATUSES, -} from 'src/modules/workflow/workflow-status/workflow-status.constants'; -import { WorkflowStatusCombination } from 'src/modules/workflow/workflow-status/workflow-status.enums'; +} from 'src/modules/workflow/workflow-status/constants/workflow-status.constants'; +import { WorkflowStatusCombination } from 'src/modules/workflow/workflow-status/enums/workflow-status.enum'; export const getWorkflowStatusesFromCombination = ( combination: WorkflowStatusCombination, diff --git a/packages/twenty-server/src/modules/workflow/workflow-step-executor/workflow-step-executor.factory.ts b/packages/twenty-server/src/modules/workflow/workflow-step-executor/workflow-step-executor.factory.ts deleted file mode 100644 index 72f46451e..000000000 --- a/packages/twenty-server/src/modules/workflow/workflow-step-executor/workflow-step-executor.factory.ts +++ /dev/null @@ -1,26 +0,0 @@ -import { Injectable } from '@nestjs/common'; - -import { WorkflowStepType } from 'src/modules/workflow/common/types/workflow-step.type'; -import { - WorkflowStepExecutorException, - WorkflowStepExecutorExceptionCode, -} from 'src/modules/workflow/workflow-step-executor/workflow-step-executor.exception'; -import { WorkflowStepExecutor } from 'src/modules/workflow/workflow-step-executor/workflow-step-executor.interface'; -import { CodeActionExecutor } from 'src/modules/workflow/workflow-step-executor/workflow-step-executors/code-action-executor'; - -@Injectable() -export class WorkflowStepExecutorFactory { - constructor(private readonly codeActionExecutor: CodeActionExecutor) {} - - get(stepType: WorkflowStepType): WorkflowStepExecutor { - switch (stepType) { - case WorkflowStepType.CODE_ACTION: - return this.codeActionExecutor; - default: - throw new WorkflowStepExecutorException( - `Workflow step executor not found for step type '${stepType}'`, - WorkflowStepExecutorExceptionCode.INVALID_STEP_TYPE, - ); - } - } -} diff --git a/packages/twenty-server/src/modules/workflow/workflow-step-executor/workflow-step-executor.interface.ts b/packages/twenty-server/src/modules/workflow/workflow-step-executor/workflow-step-executor.interface.ts deleted file mode 100644 index 169ebc2ca..000000000 --- a/packages/twenty-server/src/modules/workflow/workflow-step-executor/workflow-step-executor.interface.ts +++ /dev/null @@ -1,12 +0,0 @@ -import { WorkflowResult } from 'src/modules/workflow/common/types/workflow-result.type'; -import { WorkflowStep } from 'src/modules/workflow/common/types/workflow-step.type'; - -export interface WorkflowStepExecutor { - execute({ - step, - payload, - }: { - step: WorkflowStep; - payload?: object; - }): Promise<WorkflowResult>; -} diff --git a/packages/twenty-server/src/modules/workflow/workflow-step-executor/workflow-step-executor.module.ts b/packages/twenty-server/src/modules/workflow/workflow-step-executor/workflow-step-executor.module.ts deleted file mode 100644 index 293a3614b..000000000 --- a/packages/twenty-server/src/modules/workflow/workflow-step-executor/workflow-step-executor.module.ts +++ /dev/null @@ -1,17 +0,0 @@ -import { Module } from '@nestjs/common'; - -import { ServerlessFunctionModule } from 'src/engine/metadata-modules/serverless-function/serverless-function.module'; -import { ScopedWorkspaceContextFactory } from 'src/engine/twenty-orm/factories/scoped-workspace-context.factory'; -import { WorkflowStepExecutorFactory } from 'src/modules/workflow/workflow-step-executor/workflow-step-executor.factory'; -import { CodeActionExecutor } from 'src/modules/workflow/workflow-step-executor/workflow-step-executors/code-action-executor'; - -@Module({ - imports: [ServerlessFunctionModule], - providers: [ - WorkflowStepExecutorFactory, - CodeActionExecutor, - ScopedWorkspaceContextFactory, - ], - exports: [WorkflowStepExecutorFactory], -}) -export class WorkflowStepExecutorModule {} diff --git a/packages/twenty-server/src/modules/workflow/workflow-trigger/database-event-trigger/database-event-trigger.service.ts b/packages/twenty-server/src/modules/workflow/workflow-trigger/database-event-trigger/database-event-trigger.service.ts index 4db20d091..da8affbb6 100644 --- a/packages/twenty-server/src/modules/workflow/workflow-trigger/database-event-trigger/database-event-trigger.service.ts +++ b/packages/twenty-server/src/modules/workflow/workflow-trigger/database-event-trigger/database-event-trigger.service.ts @@ -4,7 +4,7 @@ import { EntityManager } from 'typeorm'; import { TwentyORMManager } from 'src/engine/twenty-orm/twenty-orm.manager'; import { WorkflowEventListenerWorkspaceEntity } from 'src/modules/workflow/common/standard-objects/workflow-event-listener.workspace-entity'; -import { WorkflowDatabaseEventTrigger } from 'src/modules/workflow/common/types/workflow-trigger.type'; +import { WorkflowDatabaseEventTrigger } from 'src/modules/workflow/workflow-trigger/types/workflow-trigger.type'; @Injectable() export class DatabaseEventTriggerService { diff --git a/packages/twenty-server/src/modules/workflow/workflow-trigger/database-event-trigger/listeners/database-event-trigger.listener.ts b/packages/twenty-server/src/modules/workflow/workflow-trigger/database-event-trigger/listeners/database-event-trigger.listener.ts index a19a99098..e5b62d59a 100644 --- a/packages/twenty-server/src/modules/workflow/workflow-trigger/database-event-trigger/listeners/database-event-trigger.listener.ts +++ b/packages/twenty-server/src/modules/workflow/workflow-trigger/database-event-trigger/listeners/database-event-trigger.listener.ts @@ -3,12 +3,12 @@ import { OnEvent } from '@nestjs/event-emitter'; import { FeatureFlagKey } from 'src/engine/core-modules/feature-flag/enums/feature-flag-key.enum'; import { FeatureFlagService } from 'src/engine/core-modules/feature-flag/services/feature-flag.service'; -import { ObjectRecordCreateEvent } from 'src/engine/integrations/event-emitter/types/object-record-create.event'; -import { ObjectRecordDeleteEvent } from 'src/engine/integrations/event-emitter/types/object-record-delete.event'; -import { ObjectRecordUpdateEvent } from 'src/engine/integrations/event-emitter/types/object-record-update.event'; -import { InjectMessageQueue } from 'src/engine/integrations/message-queue/decorators/message-queue.decorator'; -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/core-modules/event-emitter/types/object-record-create.event'; +import { ObjectRecordDeleteEvent } from 'src/engine/core-modules/event-emitter/types/object-record-delete.event'; +import { ObjectRecordUpdateEvent } from 'src/engine/core-modules/event-emitter/types/object-record-update.event'; +import { InjectMessageQueue } from 'src/engine/core-modules/message-queue/decorators/message-queue.decorator'; +import { MessageQueue } from 'src/engine/core-modules/message-queue/message-queue.constants'; +import { MessageQueueService } from 'src/engine/core-modules/message-queue/services/message-queue.service'; import { TwentyORMGlobalManager } from 'src/engine/twenty-orm/twenty-orm-global.manager'; import { WorkspaceEventBatch } from 'src/engine/workspace-event-emitter/workspace-event.type'; import { WorkflowEventListenerWorkspaceEntity } from 'src/modules/workflow/common/standard-objects/workflow-event-listener.workspace-entity'; diff --git a/packages/twenty-server/src/modules/workflow/workflow-trigger/workflow-trigger.exception.ts b/packages/twenty-server/src/modules/workflow/workflow-trigger/exceptions/workflow-trigger.exception.ts similarity index 100% rename from packages/twenty-server/src/modules/workflow/workflow-trigger/workflow-trigger.exception.ts rename to packages/twenty-server/src/modules/workflow/workflow-trigger/exceptions/workflow-trigger.exception.ts diff --git a/packages/twenty-server/src/modules/workflow/workflow-trigger/jobs/workflow-event-trigger.job.ts b/packages/twenty-server/src/modules/workflow/workflow-trigger/jobs/workflow-event-trigger.job.ts index 465204bd4..12391290f 100644 --- a/packages/twenty-server/src/modules/workflow/workflow-trigger/jobs/workflow-event-trigger.job.ts +++ b/packages/twenty-server/src/modules/workflow/workflow-trigger/jobs/workflow-event-trigger.job.ts @@ -1,8 +1,8 @@ import { Scope } from '@nestjs/common'; -import { Process } from 'src/engine/integrations/message-queue/decorators/process.decorator'; -import { Processor } from 'src/engine/integrations/message-queue/decorators/processor.decorator'; -import { MessageQueue } from 'src/engine/integrations/message-queue/message-queue.constants'; +import { Process } from 'src/engine/core-modules/message-queue/decorators/process.decorator'; +import { Processor } from 'src/engine/core-modules/message-queue/decorators/processor.decorator'; +import { MessageQueue } from 'src/engine/core-modules/message-queue/message-queue.constants'; import { FieldActorSource } from 'src/engine/metadata-modules/field-metadata/composite-types/actor.composite-type'; import { TwentyORMManager } from 'src/engine/twenty-orm/twenty-orm.manager'; import { @@ -10,11 +10,11 @@ import { WorkflowVersionWorkspaceEntity, } from 'src/modules/workflow/common/standard-objects/workflow-version.workspace-entity'; import { WorkflowWorkspaceEntity } from 'src/modules/workflow/common/standard-objects/workflow.workspace-entity'; -import { WorkflowRunnerWorkspaceService } from 'src/modules/workflow/workflow-runner/workflow-runner.workspace-service'; +import { WorkflowRunnerWorkspaceService } from 'src/modules/workflow/workflow-runner/workspace-services/workflow-runner.workspace-service'; import { WorkflowTriggerException, WorkflowTriggerExceptionCode, -} from 'src/modules/workflow/workflow-trigger/workflow-trigger.exception'; +} from 'src/modules/workflow/workflow-trigger/exceptions/workflow-trigger.exception'; export type WorkflowEventTriggerJobData = { workspaceId: string; diff --git a/packages/twenty-server/src/modules/workflow/common/types/workflow-trigger.type.ts b/packages/twenty-server/src/modules/workflow/workflow-trigger/types/workflow-trigger.type.ts similarity index 100% rename from packages/twenty-server/src/modules/workflow/common/types/workflow-trigger.type.ts rename to packages/twenty-server/src/modules/workflow/workflow-trigger/types/workflow-trigger.type.ts diff --git a/packages/twenty-server/src/modules/workflow/workflow-trigger/utils/assert-version-can-be-activated.util.ts b/packages/twenty-server/src/modules/workflow/workflow-trigger/utils/assert-version-can-be-activated.util.ts index a75e77323..ba31ffc96 100644 --- a/packages/twenty-server/src/modules/workflow/workflow-trigger/utils/assert-version-can-be-activated.util.ts +++ b/packages/twenty-server/src/modules/workflow/workflow-trigger/utils/assert-version-can-be-activated.util.ts @@ -6,11 +6,11 @@ import { WorkflowWorkspaceEntity } from 'src/modules/workflow/common/standard-ob import { WorkflowTrigger, WorkflowTriggerType, -} from 'src/modules/workflow/common/types/workflow-trigger.type'; +} from 'src/modules/workflow/workflow-trigger/types/workflow-trigger.type'; import { WorkflowTriggerException, WorkflowTriggerExceptionCode, -} from 'src/modules/workflow/workflow-trigger/workflow-trigger.exception'; +} from 'src/modules/workflow/workflow-trigger/exceptions/workflow-trigger.exception'; export function assertVersionCanBeActivated( workflowVersion: Omit<WorkflowVersionWorkspaceEntity, 'trigger'> & { diff --git a/packages/twenty-server/src/modules/workflow/workflow-trigger/workflow-trigger.module.ts b/packages/twenty-server/src/modules/workflow/workflow-trigger/workflow-trigger.module.ts index dbf7e6feb..ecd72856d 100644 --- a/packages/twenty-server/src/modules/workflow/workflow-trigger/workflow-trigger.module.ts +++ b/packages/twenty-server/src/modules/workflow/workflow-trigger/workflow-trigger.module.ts @@ -5,7 +5,7 @@ import { WorkflowCommonModule } from 'src/modules/workflow/common/workflow-commo import { WorkflowRunnerModule } from 'src/modules/workflow/workflow-runner/workflow-runner.module'; import { DatabaseEventTriggerModule } from 'src/modules/workflow/workflow-trigger/database-event-trigger/database-event-trigger.module'; import { WorkflowEventTriggerJob } from 'src/modules/workflow/workflow-trigger/jobs/workflow-event-trigger.job'; -import { WorkflowTriggerWorkspaceService } from 'src/modules/workflow/workflow-trigger/workflow-trigger.workspace-service'; +import { WorkflowTriggerWorkspaceService } from 'src/modules/workflow/workflow-trigger/workspace-services/workflow-trigger.workspace-service'; @Module({ imports: [ diff --git a/packages/twenty-server/src/modules/workflow/workflow-trigger/workflow-trigger.workspace-service.ts b/packages/twenty-server/src/modules/workflow/workflow-trigger/workspace-services/workflow-trigger.workspace-service.ts similarity index 97% rename from packages/twenty-server/src/modules/workflow/workflow-trigger/workflow-trigger.workspace-service.ts rename to packages/twenty-server/src/modules/workflow/workflow-trigger/workspace-services/workflow-trigger.workspace-service.ts index 4e02b8b88..47d252766 100644 --- a/packages/twenty-server/src/modules/workflow/workflow-trigger/workflow-trigger.workspace-service.ts +++ b/packages/twenty-server/src/modules/workflow/workflow-trigger/workspace-services/workflow-trigger.workspace-service.ts @@ -8,7 +8,7 @@ import { ScopedWorkspaceContextFactory } from 'src/engine/twenty-orm/factories/s import { WorkspaceRepository } from 'src/engine/twenty-orm/repository/workspace.repository'; import { TwentyORMManager } from 'src/engine/twenty-orm/twenty-orm.manager'; import { WorkspaceEventEmitter } from 'src/engine/workspace-event-emitter/workspace-event-emitter'; -import { WorkflowCommonWorkspaceService } from 'src/modules/workflow/common/services/workflow-common.workspace-service'; +import { WorkflowCommonWorkspaceService } from 'src/modules/workflow/common/workspace-services/workflow-common.workspace-service'; import { WorkflowVersionStatus, WorkflowVersionWorkspaceEntity, @@ -17,15 +17,15 @@ import { WorkflowWorkspaceEntity } from 'src/modules/workflow/common/standard-ob import { WorkflowTrigger, WorkflowTriggerType, -} from 'src/modules/workflow/common/types/workflow-trigger.type'; -import { WorkflowRunnerWorkspaceService } from 'src/modules/workflow/workflow-runner/workflow-runner.workspace-service'; +} from 'src/modules/workflow/workflow-trigger/types/workflow-trigger.type'; +import { WorkflowRunnerWorkspaceService } from 'src/modules/workflow/workflow-runner/workspace-services/workflow-runner.workspace-service'; import { WorkflowVersionStatusUpdate } from 'src/modules/workflow/workflow-status/jobs/workflow-statuses-update.job'; import { DatabaseEventTriggerService } from 'src/modules/workflow/workflow-trigger/database-event-trigger/database-event-trigger.service'; import { assertVersionCanBeActivated } from 'src/modules/workflow/workflow-trigger/utils/assert-version-can-be-activated.util'; import { WorkflowTriggerException, WorkflowTriggerExceptionCode, -} from 'src/modules/workflow/workflow-trigger/workflow-trigger.exception'; +} from 'src/modules/workflow/workflow-trigger/exceptions/workflow-trigger.exception'; @Injectable() export class WorkflowTriggerWorkspaceService { diff --git a/packages/twenty-server/src/queue-worker/queue-worker.module.ts b/packages/twenty-server/src/queue-worker/queue-worker.module.ts index bef26e3a9..3b8589080 100644 --- a/packages/twenty-server/src/queue-worker/queue-worker.module.ts +++ b/packages/twenty-server/src/queue-worker/queue-worker.module.ts @@ -1,14 +1,14 @@ import { Module } from '@nestjs/common'; -import { IntegrationsModule } from 'src/engine/integrations/integrations.module'; -import { JobsModule } from 'src/engine/integrations/message-queue/jobs.module'; -import { MessageQueueModule } from 'src/engine/integrations/message-queue/message-queue.module'; +import { JobsModule } from 'src/engine/core-modules/message-queue/jobs.module'; +import { MessageQueueModule } from 'src/engine/core-modules/message-queue/message-queue.module'; import { TwentyORMModule } from 'src/engine/twenty-orm/twenty-orm.module'; import { WorkspaceEventEmitterModule } from 'src/engine/workspace-event-emitter/workspace-event-emitter.module'; +import { CoreEngineModule } from 'src/engine/core-modules/core-engine.module'; @Module({ imports: [ - IntegrationsModule, + CoreEngineModule, MessageQueueModule.registerExplorer(), WorkspaceEventEmitterModule, JobsModule, diff --git a/packages/twenty-server/src/queue-worker/queue-worker.ts b/packages/twenty-server/src/queue-worker/queue-worker.ts index d38f49d30..71cc36ad7 100644 --- a/packages/twenty-server/src/queue-worker/queue-worker.ts +++ b/packages/twenty-server/src/queue-worker/queue-worker.ts @@ -1,7 +1,7 @@ import { NestFactory } from '@nestjs/core'; -import { ExceptionHandlerService } from 'src/engine/integrations/exception-handler/exception-handler.service'; -import { LoggerService } from 'src/engine/integrations/logger/logger.service'; +import { ExceptionHandlerService } from 'src/engine/core-modules/exception-handler/exception-handler.service'; +import { LoggerService } from 'src/engine/core-modules/logger/logger.service'; import { shouldFilterException } from 'src/engine/utils/global-exception-handler.util'; import { QueueWorkerModule } from 'src/queue-worker/queue-worker.module'; diff --git a/yarn.lock b/yarn.lock index 846d206ac..73add1cfa 100644 --- a/yarn.lock +++ b/yarn.lock @@ -29402,7 +29402,7 @@ __metadata: languageName: node linkType: hard -"handlebars@npm:^4.7.7": +"handlebars@npm:^4.7.7, handlebars@npm:^4.7.8": version: 4.7.8 resolution: "handlebars@npm:4.7.8" dependencies: @@ -47171,6 +47171,7 @@ __metadata: cache-manager-redis-yet: "npm:^4.1.2" class-validator: "patch:class-validator@0.14.0#./patches/class-validator+0.14.0.patch" graphql-middleware: "npm:^6.1.35" + handlebars: "npm:^4.7.8" jsdom: "npm:~22.1.0" jwt-decode: "npm:^4.0.0" langchain: "npm:^0.2.6"