Add applicationId to syncableEntity and fix syncApp deletion (#15170)
## Context - All flatEntity should extend SyncableEntity - SyncableEntity should now have applicationId and application relation - Fix syncApp deletion, should now properly use migration v2 to delete syncable entities
This commit is contained in:
+3
@@ -19,4 +19,7 @@ export class CreateDatabaseEventTriggerInput {
|
||||
|
||||
@HideField()
|
||||
universalIdentifier?: string;
|
||||
|
||||
@HideField()
|
||||
applicationId?: string;
|
||||
}
|
||||
|
||||
+18
-23
@@ -14,6 +14,7 @@ import {
|
||||
import { FlatDatabaseEventTrigger } from 'src/engine/metadata-modules/database-event-trigger/types/flat-database-event-trigger.type';
|
||||
import { EMPTY_FLAT_ENTITY_MAPS } from 'src/engine/metadata-modules/flat-entity/constant/empty-flat-entity-maps.constant';
|
||||
import { FlatEntityMaps } from 'src/engine/metadata-modules/flat-entity/types/flat-entity-maps.type';
|
||||
import { addFlatEntityToFlatEntityMapsOrThrow } from 'src/engine/metadata-modules/flat-entity/utils/add-flat-entity-to-flat-entity-maps-or-throw.util';
|
||||
import { WorkspaceFlatMapCache } from 'src/engine/workspace-flat-map-cache/decorators/workspace-flat-map-cache.decorator';
|
||||
import { WorkspaceFlatMapCacheService } from 'src/engine/workspace-flat-map-cache/services/workspace-flat-map-cache.service';
|
||||
|
||||
@@ -43,29 +44,23 @@ export class WorkspaceFlatDatabaseEventTriggerMapCacheService extends WorkspaceF
|
||||
},
|
||||
});
|
||||
|
||||
const flatDatabaseEventTriggerMaps = databaseEventTriggers.reduce<
|
||||
FlatEntityMaps<FlatDatabaseEventTrigger>
|
||||
>((flatEntityMaps, databaseEventTrigger) => {
|
||||
const flatDatabaseEventTrigger = {
|
||||
...removePropertiesFromRecord(databaseEventTrigger, [
|
||||
...DATABASE_EVENT_TRIGGER_ENTITY_RELATION_PROPERTIES,
|
||||
]),
|
||||
universalIdentifier: databaseEventTrigger.universalIdentifier ?? '',
|
||||
} satisfies FlatDatabaseEventTrigger;
|
||||
return databaseEventTriggers.reduce(
|
||||
(flatDatabaseEventTriggerMaps, databaseEventTriggerEntity) => {
|
||||
const flatDatabaseEventTrigger = {
|
||||
...removePropertiesFromRecord(databaseEventTriggerEntity, [
|
||||
...DATABASE_EVENT_TRIGGER_ENTITY_RELATION_PROPERTIES,
|
||||
]),
|
||||
universalIdentifier:
|
||||
databaseEventTriggerEntity.universalIdentifier ??
|
||||
databaseEventTriggerEntity.id,
|
||||
} satisfies FlatDatabaseEventTrigger;
|
||||
|
||||
return {
|
||||
byId: {
|
||||
...flatEntityMaps.byId,
|
||||
[flatDatabaseEventTrigger.id]: flatDatabaseEventTrigger,
|
||||
},
|
||||
idByUniversalIdentifier: {
|
||||
...flatEntityMaps.idByUniversalIdentifier,
|
||||
[flatDatabaseEventTrigger.universalIdentifier]:
|
||||
flatDatabaseEventTrigger.id,
|
||||
},
|
||||
};
|
||||
}, EMPTY_FLAT_ENTITY_MAPS);
|
||||
|
||||
return flatDatabaseEventTriggerMaps;
|
||||
return addFlatEntityToFlatEntityMapsOrThrow({
|
||||
flatEntity: flatDatabaseEventTrigger,
|
||||
flatEntityMaps: flatDatabaseEventTriggerMaps,
|
||||
});
|
||||
},
|
||||
EMPTY_FLAT_ENTITY_MAPS,
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
+3
-4
@@ -1,5 +1,6 @@
|
||||
import { type Workspace } from 'src/engine/core-modules/workspace/workspace.entity';
|
||||
import { type DatabaseEventTrigger } from 'src/engine/metadata-modules/database-event-trigger/entities/database-event-trigger.entity';
|
||||
import { type FlatEntityFrom } from 'src/engine/metadata-modules/flat-entity/types/flat-entity.type';
|
||||
import { type ServerlessFunctionEntity } from 'src/engine/metadata-modules/serverless-function/serverless-function.entity';
|
||||
import { type ExtractRecordTypeOrmRelationProperties } from 'src/engine/workspace-manager/workspace-migration-v2/types/extract-record-typeorm-relation-properties.type';
|
||||
|
||||
@@ -9,9 +10,7 @@ export type DatabaseEventTriggerEntityRelationProperties =
|
||||
ServerlessFunctionEntity | Workspace
|
||||
>;
|
||||
|
||||
export type FlatDatabaseEventTrigger = Omit<
|
||||
export type FlatDatabaseEventTrigger = FlatEntityFrom<
|
||||
DatabaseEventTrigger,
|
||||
DatabaseEventTriggerEntityRelationProperties
|
||||
> & {
|
||||
universalIdentifier: string;
|
||||
};
|
||||
>;
|
||||
|
||||
+1
@@ -21,5 +21,6 @@ export const fromCreateDatabaseEventTriggerInputToFlatDatabaseEventTrigger = ({
|
||||
workspaceId,
|
||||
createdAt: now,
|
||||
updatedAt: now,
|
||||
applicationId: createDatabaseEventTriggerInput.applicationId ?? null,
|
||||
};
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user