Refactor backend folder structure (#4505)

* Refactor backend folder structure

Co-authored-by: Charles Bochet <charles@twenty.com>

* fix tests

* fix

* move yoga hooks

---------

Co-authored-by: Charles Bochet <charles@twenty.com>
This commit is contained in:
Weiko
2024-03-15 18:37:09 +01:00
committed by GitHub
parent afb9b3e375
commit 2c09096edd
523 changed files with 1386 additions and 1856 deletions

View File

@ -2,8 +2,8 @@ import { Inject } from '@nestjs/common';
import { Command, CommandRunner, Option } from 'nest-commander';
import { MessageQueue } from 'src/integrations/message-queue/message-queue.constants';
import { MessageQueueService } from 'src/integrations/message-queue/services/message-queue.service';
import { MessageQueue } from 'src/engine/integrations/message-queue/message-queue.constants';
import { MessageQueueService } from 'src/engine/integrations/message-queue/services/message-queue.service';
import { CleanInactiveWorkspaceJob } from 'src/engine/workspace-manager/workspace-cleaner/crons/clean-inactive-workspace.job';
export type CleanInactiveWorkspacesCommandOptions = {

View File

@ -2,8 +2,8 @@ import { Inject } from '@nestjs/common';
import { Command, CommandRunner } from 'nest-commander';
import { MessageQueue } from 'src/integrations/message-queue/message-queue.constants';
import { MessageQueueService } from 'src/integrations/message-queue/services/message-queue.service';
import { MessageQueue } from 'src/engine/integrations/message-queue/message-queue.constants';
import { MessageQueueService } from 'src/engine/integrations/message-queue/services/message-queue.service';
import { cleanInactiveWorkspaceCronPattern } from 'src/engine/workspace-manager/workspace-cleaner/crons/clean-inactive-workspace.cron.pattern';
import { CleanInactiveWorkspaceJob } from 'src/engine/workspace-manager/workspace-cleaner/crons/clean-inactive-workspace.job';

View File

@ -2,8 +2,8 @@ import { Inject } from '@nestjs/common';
import { Command, CommandRunner } from 'nest-commander';
import { MessageQueue } from 'src/integrations/message-queue/message-queue.constants';
import { MessageQueueService } from 'src/integrations/message-queue/services/message-queue.service';
import { MessageQueue } from 'src/engine/integrations/message-queue/message-queue.constants';
import { MessageQueueService } from 'src/engine/integrations/message-queue/services/message-queue.service';
import { cleanInactiveWorkspaceCronPattern } from 'src/engine/workspace-manager/workspace-cleaner/crons/clean-inactive-workspace.cron.pattern';
import { CleanInactiveWorkspaceJob } from 'src/engine/workspace-manager/workspace-cleaner/crons/clean-inactive-workspace.job';

View File

@ -7,17 +7,17 @@ import {
DeleteInactiveWorkspaceEmail,
} from 'twenty-emails';
import { MessageQueueJob } from 'src/integrations/message-queue/interfaces/message-queue-job.interface';
import { MessageQueueJob } from 'src/engine/integrations/message-queue/interfaces/message-queue-job.interface';
import { ObjectMetadataService } from 'src/engine-metadata/object-metadata/object-metadata.service';
import { DataSourceService } from 'src/engine-metadata/data-source/data-source.service';
import { TypeORMService } from 'src/database/typeorm/typeorm.service';
import { DataSourceEntity } from 'src/engine-metadata/data-source/data-source.entity';
import { UserService } from 'src/engine/modules/user/services/user.service';
import { EmailService } from 'src/integrations/email/email.service';
import { EnvironmentService } from 'src/integrations/environment/environment.service';
import { EmailService } from 'src/engine/integrations/email/email.service';
import { EnvironmentService } from 'src/engine/integrations/environment/environment.service';
import { ObjectMetadataEntity } from 'src/engine-metadata/object-metadata/object-metadata.entity';
import { computeObjectTargetTable } from 'src/engine-workspace/utils/compute-object-target-table.util';
import { computeObjectTargetTable } from 'src/engine/utils/compute-object-target-table.util';
import { CleanInactiveWorkspacesCommandOptions } from 'src/engine/workspace-manager/workspace-cleaner/commands/clean-inactive-workspaces.command';
import { getDryRunLogHeader } from 'src/utils/get-dry-run-log-header';

View File

@ -7,7 +7,7 @@ import { WorkspaceHealthMode } from 'src/engine/workspace-manager/workspace-heal
import { WorkspaceHealthFixKind } from 'src/engine/workspace-manager/workspace-health/interfaces/workspace-health-fix-kind.interface';
import { WorkspaceHealthService } from 'src/engine/workspace-manager/workspace-health/workspace-health.service';
import { CommandLogger } from 'src/commands/command-logger';
import { CommandLogger } from 'src/command/command-logger';
interface WorkspaceHealthCommandOptions {
workspaceId: string;

View File

@ -13,7 +13,7 @@ import { ObjectMetadataEntity } from 'src/engine-metadata/object-metadata/object
import { generateTargetColumnMap } from 'src/engine-metadata/field-metadata/utils/generate-target-column-map.util';
import { FieldMetadataEntity } from 'src/engine-metadata/field-metadata/field-metadata.entity';
import { WorkspaceMigrationEntity } from 'src/engine-metadata/workspace-migration/workspace-migration.entity';
import { computeObjectTargetTable } from 'src/engine-workspace/utils/compute-object-target-table.util';
import { computeObjectTargetTable } from 'src/engine/utils/compute-object-target-table.util';
import { DataSourceEntity } from 'src/engine-metadata/data-source/data-source.entity';
import { DatabaseStructureService } from 'src/engine/workspace-manager/workspace-health/services/database-structure.service';
import { WorkspaceMigrationFieldFactory } from 'src/engine/workspace-manager/workspace-migration-builder/factories/workspace-migration-field.factory';

View File

@ -17,7 +17,7 @@ import {
import { fieldMetadataTypeToColumnType } from 'src/engine-metadata/workspace-migration/utils/field-metadata-type-to-column-type.util';
import { serializeTypeDefaultValue } from 'src/engine-metadata/field-metadata/utils/serialize-type-default-value.util';
import { isCompositeFieldMetadataType } from 'src/engine-metadata/field-metadata/utils/is-composite-field-metadata-type.util';
import { isRelationFieldMetadataType } from 'src/engine-workspace/utils/is-relation-field-metadata-type.util';
import { isRelationFieldMetadataType } from 'src/engine/utils/is-relation-field-metadata-type.util';
@Injectable()
export class DatabaseStructureService {

View File

@ -27,8 +27,8 @@ import { validateOptionsForType } from 'src/engine-metadata/field-metadata/utils
import { serializeDefaultValue } from 'src/engine-metadata/field-metadata/utils/serialize-default-value';
import { computeCompositeFieldMetadata } from 'src/engine/workspace-manager/workspace-health/utils/compute-composite-field-metadata.util';
import { generateTargetColumnMap } from 'src/engine-metadata/field-metadata/utils/generate-target-column-map.util';
import { customNamePrefix } from 'src/engine-workspace/utils/compute-custom-name.util';
import { isRelationFieldMetadataType } from 'src/engine-workspace/utils/is-relation-field-metadata-type.util';
import { customNamePrefix } from 'src/engine/utils/compute-custom-name.util';
import { isRelationFieldMetadataType } from 'src/engine/utils/is-relation-field-metadata-type.util';
@Injectable()
export class FieldMetadataHealthService {

View File

@ -9,7 +9,7 @@ import { WorkspaceHealthOptions } from 'src/engine/workspace-manager/workspace-h
import { ObjectMetadataEntity } from 'src/engine-metadata/object-metadata/object-metadata.entity';
import { validName } from 'src/engine/workspace-manager/workspace-health/utils/valid-name.util';
import { TypeORMService } from 'src/database/typeorm/typeorm.service';
import { computeObjectTargetTable } from 'src/engine-workspace/utils/compute-object-target-table.util';
import { computeObjectTargetTable } from 'src/engine/utils/compute-object-target-table.util';
@Injectable()
export class ObjectMetadataHealthService {

View File

@ -18,11 +18,11 @@ import {
import {
RelationDirection,
deduceRelationDirection,
} from 'src/engine-workspace/utils/deduce-relation-direction.util';
} from 'src/engine/utils/deduce-relation-direction.util';
import { ObjectMetadataEntity } from 'src/engine-metadata/object-metadata/object-metadata.entity';
import { createRelationForeignKeyColumnName } from 'src/engine-metadata/relation-metadata/utils/create-relation-foreign-key-column-name.util';
import { createRelationForeignKeyFieldMetadataName } from 'src/engine-metadata/relation-metadata/utils/create-relation-foreign-key-field-metadata-name.util';
import { isRelationFieldMetadataType } from 'src/engine-workspace/utils/is-relation-field-metadata-type.util';
import { isRelationFieldMetadataType } from 'src/engine/utils/is-relation-field-metadata-type.util';
import { convertOnDeleteActionToOnDelete } from 'src/engine/workspace-manager/workspace-migration-runner/utils/convert-on-delete-action-to-on-delete.util';
@Injectable()

View File

@ -18,7 +18,7 @@ import { ObjectMetadataHealthService } from 'src/engine/workspace-manager/worksp
import { FieldMetadataHealthService } from 'src/engine/workspace-manager/workspace-health/services/field-metadata-health.service';
import { RelationMetadataHealthService } from 'src/engine/workspace-manager/workspace-health/services/relation-metadata.health.service';
import { DatabaseStructureService } from 'src/engine/workspace-manager/workspace-health/services/database-structure.service';
import { computeObjectTargetTable } from 'src/engine-workspace/utils/compute-object-target-table.util';
import { computeObjectTargetTable } from 'src/engine/utils/compute-object-target-table.util';
import { WorkspaceMigrationEntity } from 'src/engine-metadata/workspace-migration/workspace-migration.entity';
import { WorkspaceMigrationRunnerService } from 'src/engine/workspace-manager/workspace-migration-runner/workspace-migration-runner.service';
import { WorkspaceFixService } from 'src/engine/workspace-manager/workspace-health/services/workspace-fix.service';

View File

@ -12,7 +12,7 @@ import {
WorkspaceMigrationEntity,
WorkspaceMigrationTableAction,
} from 'src/engine-metadata/workspace-migration/workspace-migration.entity';
import { computeObjectTargetTable } from 'src/engine-workspace/utils/compute-object-target-table.util';
import { computeObjectTargetTable } from 'src/engine/utils/compute-object-target-table.util';
import { WorkspaceMigrationFactory } from 'src/engine-metadata/workspace-migration/workspace-migration.factory';
import { generateMigrationName } from 'src/engine-metadata/workspace-migration/utils/generate-migration-name.util';

View File

@ -9,7 +9,7 @@ import {
WorkspaceMigrationEntity,
WorkspaceMigrationTableAction,
} from 'src/engine-metadata/workspace-migration/workspace-migration.entity';
import { computeObjectTargetTable } from 'src/engine-workspace/utils/compute-object-target-table.util';
import { computeObjectTargetTable } from 'src/engine/utils/compute-object-target-table.util';
import { WorkspaceMigrationFactory } from 'src/engine-metadata/workspace-migration/workspace-migration.factory';
import { generateMigrationName } from 'src/engine-metadata/workspace-migration/utils/generate-migration-name.util';

View File

@ -8,7 +8,7 @@ import {
WorkspaceMigrationEntity,
WorkspaceMigrationTableAction,
} from 'src/engine-metadata/workspace-migration/workspace-migration.entity';
import { computeObjectTargetTable } from 'src/engine-workspace/utils/compute-object-target-table.util';
import { computeObjectTargetTable } from 'src/engine/utils/compute-object-target-table.util';
import {
RelationMetadataEntity,
RelationMetadataType,

View File

@ -2,7 +2,7 @@ import { Injectable } from '@nestjs/common';
import { WorkspaceSyncStorage } from 'src/engine/workspace-manager/workspace-sync-metadata/storage/workspace-sync.storage';
import { WorkspaceMigrationEntity } from 'src/engine-metadata/workspace-migration/workspace-migration.entity';
import { CommandLogger } from 'src/commands/command-logger';
import { CommandLogger } from 'src/command/command-logger';
@Injectable()
export class SyncWorkspaceLoggerService {

View File

@ -8,10 +8,10 @@ import {
RelationMetadataType,
RelationOnDeleteAction,
} from 'src/engine-metadata/relation-metadata/relation-metadata.entity';
import { ActivityTargetObjectMetadata } from 'src/business/modules/activity/activity-target.object-metadata';
import { ActivityTargetObjectMetadata } from 'src/modules/activity/standard-objects/activity-target.object-metadata';
import { RelationMetadata } from 'src/engine/workspace-manager/workspace-sync-metadata/decorators/relation-metadata.decorator';
import { FavoriteObjectMetadata } from 'src/business/modules/favorite/favorite.object-metadata';
import { AttachmentObjectMetadata } from 'src/business/modules/attachment/attachment.object-metadata';
import { FavoriteObjectMetadata } from 'src/modules/favorite/standard-objects/favorite.object-metadata';
import { AttachmentObjectMetadata } from 'src/modules/attachment/standard-objects/attachment.object-metadata';
import { customObjectStandardFieldIds } from 'src/engine/workspace-manager/workspace-sync-metadata/constants/standard-field-ids';
@BaseCustomObjectMetadata()

View File

@ -1,30 +1,30 @@
import { ActivityTargetObjectMetadata } from 'src/business/modules/activity/activity-target.object-metadata';
import { ActivityObjectMetadata } from 'src/business/modules/activity/activity.object-metadata';
import { ApiKeyObjectMetadata } from 'src/business/modules/api-key/api-key.object-metadata';
import { AttachmentObjectMetadata } from 'src/business/modules/attachment/attachment.object-metadata';
import { BlocklistObjectMetadata } from 'src/business/modules/calendar/blocklist.object-metadata';
import { CalendarEventObjectMetadata } from 'src/business/modules/calendar/calendar-event.object-metadata';
import { CalendarChannelObjectMetadata } from 'src/business/modules/calendar/calendar-channel.object-metadata';
import { CalendarEventAttendeeObjectMetadata } from 'src/business/modules/calendar/calendar-event-attendee.object-metadata';
import { CommentObjectMetadata } from 'src/business/modules/comment/comment.object-metadata';
import { CompanyObjectMetadata } from 'src/business/modules/company/company.object-metadata';
import { ConnectedAccountObjectMetadata } from 'src/business/modules/connected-account/connected-account.object-metadata';
import { FavoriteObjectMetadata } from 'src/business/modules/favorite/favorite.object-metadata';
import { MessageChannelMessageAssociationObjectMetadata } from 'src/business/modules/message/message-channel-message-association.object-metadata';
import { MessageChannelObjectMetadata } from 'src/business/modules/message/message-channel.object-metadata';
import { MessageParticipantObjectMetadata } from 'src/business/modules/message/message-participant.object-metadata';
import { MessageThreadObjectMetadata } from 'src/business/modules/message/message-thread.object-metadata';
import { MessageObjectMetadata } from 'src/business/modules/message/message.object-metadata';
import { OpportunityObjectMetadata } from 'src/business/modules/opportunity/opportunity.object-metadata';
import { PersonObjectMetadata } from 'src/business/modules/person/person.object-metadata';
import { PipelineStepObjectMetadata } from 'src/business/modules/pipeline-step/pipeline-step.object-metadata';
import { ViewFieldObjectMetadata } from 'src/business/modules/view/view-field.object-metadata';
import { ViewFilterObjectMetadata } from 'src/business/modules/view/view-filter.object-metadata';
import { ViewSortObjectMetadata } from 'src/business/modules/view/view-sort.object-metadata';
import { ViewObjectMetadata } from 'src/business/modules/view/view.object-metadata';
import { WebhookObjectMetadata } from 'src/business/modules/webhook/webhook.object-metadata';
import { WorkspaceMemberObjectMetadata } from 'src/business/modules/workspace/workspace-member.object-metadata';
import { CalendarChannelEventAssociationObjectMetadata } from 'src/business/modules/calendar/calendar-channel-event-association.object-metadata';
import { ActivityTargetObjectMetadata } from 'src/modules/activity/standard-objects/activity-target.object-metadata';
import { ActivityObjectMetadata } from 'src/modules/activity/standard-objects/activity.object-metadata';
import { ApiKeyObjectMetadata } from 'src/modules/api-key/standard-objects/api-key.object-metadata';
import { AttachmentObjectMetadata } from 'src/modules/attachment/standard-objects/attachment.object-metadata';
import { BlocklistObjectMetadata } from 'src/modules/connected-account/standard-objects/blocklist.object-metadata';
import { CalendarEventObjectMetadata } from 'src/modules/calendar/standard-objects/calendar-event.object-metadata';
import { CalendarChannelObjectMetadata } from 'src/modules/calendar/standard-objects/calendar-channel.object-metadata';
import { CalendarEventAttendeeObjectMetadata } from 'src/modules/calendar/standard-objects/calendar-event-attendee.object-metadata';
import { CommentObjectMetadata } from 'src/modules/activity/standard-objects/comment.object-metadata';
import { CompanyObjectMetadata } from 'src/modules/company/standard-objects/company.object-metadata';
import { ConnectedAccountObjectMetadata } from 'src/modules/connected-account/standard-objects/connected-account.object-metadata';
import { FavoriteObjectMetadata } from 'src/modules/favorite/standard-objects/favorite.object-metadata';
import { MessageChannelMessageAssociationObjectMetadata } from 'src/modules/messaging/standard-objects/message-channel-message-association.object-metadata';
import { MessageChannelObjectMetadata } from 'src/modules/messaging/standard-objects/message-channel.object-metadata';
import { MessageParticipantObjectMetadata } from 'src/modules/messaging/standard-objects/message-participant.object-metadata';
import { MessageThreadObjectMetadata } from 'src/modules/messaging/standard-objects/message-thread.object-metadata';
import { MessageObjectMetadata } from 'src/modules/messaging/standard-objects/message.object-metadata';
import { OpportunityObjectMetadata } from 'src/modules/opportunity/standard-objects/opportunity.object-metadata';
import { PersonObjectMetadata } from 'src/modules/person/standard-objects/person.object-metadata';
import { PipelineStepObjectMetadata } from 'src/modules/pipeline-step/standard-objects/pipeline-step.object-metadata';
import { ViewFieldObjectMetadata } from 'src/modules/view/standard-objects/view-field.object-metadata';
import { ViewFilterObjectMetadata } from 'src/modules/view/standard-objects/view-filter.object-metadata';
import { ViewSortObjectMetadata } from 'src/modules/view/standard-objects/view-sort.object-metadata';
import { ViewObjectMetadata } from 'src/modules/view/standard-objects/view.object-metadata';
import { WebhookObjectMetadata } from 'src/modules/webhook/standard-objects/webhook.object-metadata';
import { WorkspaceMemberObjectMetadata } from 'src/modules/workspace-member/standard-objects/workspace-member.object-metadata';
import { CalendarChannelEventAssociationObjectMetadata } from 'src/modules/calendar/standard-objects/calendar-channel-event-association.object-metadata';
export const standardObjectMetadataDefinitions = [
ActivityTargetObjectMetadata,