Remove field metadata interface references (#13305)
# Introduction Following https://github.com/twentyhq/twenty/pull/13264 > After this PR merge will create a new one removing the type and replacing it to FieldMetadataEntity. This is it !
This commit is contained in:
@ -1,7 +0,0 @@
|
||||
import { FieldMetadataType } from 'twenty-shared/types';
|
||||
|
||||
import { FieldMetadataEntity } from 'src/engine/metadata-modules/field-metadata/field-metadata.entity';
|
||||
|
||||
export type FieldMetadataInterface<
|
||||
T extends FieldMetadataType = FieldMetadataType,
|
||||
> = FieldMetadataEntity<T>;
|
||||
@ -1,8 +1,7 @@
|
||||
import { IndexMetadataInterface } from 'src/engine/metadata-modules/index-metadata/interfaces/index-metadata.interface';
|
||||
|
||||
import { WorkspaceEntityDuplicateCriteria } from 'src/engine/api/graphql/workspace-query-builder/types/workspace-entity-duplicate-criteria.type';
|
||||
|
||||
import { FieldMetadataInterface } from './field-metadata.interface';
|
||||
import { FieldMetadataEntity } from 'src/engine/metadata-modules/field-metadata/field-metadata.entity';
|
||||
|
||||
export interface ObjectMetadataInterface {
|
||||
id: string;
|
||||
@ -15,7 +14,7 @@ export interface ObjectMetadataInterface {
|
||||
description?: string;
|
||||
icon: string;
|
||||
targetTableName: string;
|
||||
fields: FieldMetadataInterface[];
|
||||
fields: FieldMetadataEntity[];
|
||||
indexMetadatas: IndexMetadataInterface[];
|
||||
isSystem: boolean;
|
||||
isCustom: boolean;
|
||||
|
||||
@ -7,7 +7,6 @@ import { assertUnreachable, isDefined } from 'twenty-shared/utils';
|
||||
import { z } from 'zod';
|
||||
|
||||
import { FieldMetadataOptions } from 'src/engine/metadata-modules/field-metadata/interfaces/field-metadata-options.interface';
|
||||
import { FieldMetadataInterface } from 'src/engine/metadata-modules/field-metadata/interfaces/field-metadata.interface';
|
||||
|
||||
import { CreateFieldInput } from 'src/engine/metadata-modules/field-metadata/dtos/create-field.input';
|
||||
import {
|
||||
@ -15,6 +14,7 @@ import {
|
||||
FieldMetadataDefaultOption,
|
||||
} from 'src/engine/metadata-modules/field-metadata/dtos/options.input';
|
||||
import { UpdateFieldInput } from 'src/engine/metadata-modules/field-metadata/dtos/update-field.input';
|
||||
import { FieldMetadataEntity } from 'src/engine/metadata-modules/field-metadata/field-metadata.entity';
|
||||
import {
|
||||
FieldMetadataException,
|
||||
FieldMetadataExceptionCode,
|
||||
@ -36,7 +36,7 @@ type FieldMetadataUpdateCreateInput = CreateFieldInput | UpdateFieldInput;
|
||||
|
||||
type ValidateEnumFieldMetadataArgs = {
|
||||
existingFieldMetadata?: Pick<
|
||||
FieldMetadataInterface,
|
||||
FieldMetadataEntity,
|
||||
'type' | 'isNullable' | 'defaultValue' | 'options'
|
||||
>;
|
||||
fieldMetadataInput: FieldMetadataUpdateCreateInput;
|
||||
|
||||
@ -6,11 +6,10 @@ import { isDefined } from 'twenty-shared/utils';
|
||||
import { Repository } from 'typeorm';
|
||||
import { v4 } from 'uuid';
|
||||
|
||||
import { FieldMetadataInterface } from 'src/engine/metadata-modules/field-metadata/interfaces/field-metadata.interface';
|
||||
import { RelationType } from 'src/engine/metadata-modules/field-metadata/interfaces/relation-type.interface';
|
||||
|
||||
import { CreateFieldInput } from 'src/engine/metadata-modules/field-metadata/dtos/create-field.input';
|
||||
import { FieldMetadataEntity } from 'src/engine/metadata-modules/field-metadata/field-metadata.entity';
|
||||
import { CreateFieldInput } from 'src/engine/metadata-modules/field-metadata/dtos/create-field.input';
|
||||
import {
|
||||
FieldMetadataException,
|
||||
FieldMetadataExceptionCode,
|
||||
@ -163,7 +162,7 @@ export class FieldMetadataMorphRelationService {
|
||||
async findCachedFieldMetadataMorphRelation(
|
||||
fieldMetadataItems: Array<
|
||||
Pick<
|
||||
FieldMetadataInterface,
|
||||
FieldMetadataEntity,
|
||||
| 'id'
|
||||
| 'type'
|
||||
| 'objectMetadataId'
|
||||
@ -187,7 +186,7 @@ export class FieldMetadataMorphRelationService {
|
||||
);
|
||||
|
||||
const fieldMetadataItemsAndMorphSiblings: Pick<
|
||||
FieldMetadataInterface,
|
||||
FieldMetadataEntity,
|
||||
| 'id'
|
||||
| 'type'
|
||||
| 'objectMetadataId'
|
||||
|
||||
@ -8,7 +8,6 @@ import { isDefined } from 'twenty-shared/utils';
|
||||
import { Repository } from 'typeorm';
|
||||
import { v4 } from 'uuid';
|
||||
|
||||
import { FieldMetadataInterface } from 'src/engine/metadata-modules/field-metadata/interfaces/field-metadata.interface';
|
||||
import { RelationType } from 'src/engine/metadata-modules/field-metadata/interfaces/relation-type.interface';
|
||||
|
||||
import { CreateFieldInput } from 'src/engine/metadata-modules/field-metadata/dtos/create-field.input';
|
||||
@ -28,7 +27,7 @@ import { getObjectMetadataFromObjectMetadataItemWithFieldMaps } from 'src/engine
|
||||
import { validateFieldNameAvailabilityOrThrow } from 'src/engine/metadata-modules/utils/validate-field-name-availability.utils';
|
||||
import { validateMetadataNameOrThrow } from 'src/engine/metadata-modules/utils/validate-metadata-name.utils';
|
||||
import { computeMetadataNameFromLabel } from 'src/engine/metadata-modules/utils/validate-name-and-label-are-sync-or-throw.util';
|
||||
import { isFieldMetadataInterfaceOfType } from 'src/engine/utils/is-field-metadata-of-type.util';
|
||||
import { isFieldMetadataEntityOfType } from 'src/engine/utils/is-field-metadata-of-type.util';
|
||||
import { WorkspaceCacheStorageService } from 'src/engine/workspace-cache-storage/workspace-cache-storage.service';
|
||||
|
||||
export class RelationCreationPayloadValidation {
|
||||
@ -50,7 +49,7 @@ type ValidateFieldMetadataArgs<T extends UpdateFieldInput | CreateFieldInput> =
|
||||
fieldMetadataType: FieldMetadataType;
|
||||
fieldMetadataInput: T;
|
||||
objectMetadata: ObjectMetadataItemWithFieldMaps;
|
||||
existingFieldMetadata?: FieldMetadataInterface;
|
||||
existingFieldMetadata?: FieldMetadataEntity;
|
||||
objectMetadataMaps: ObjectMetadataMaps;
|
||||
};
|
||||
|
||||
@ -243,7 +242,7 @@ export class FieldMetadataRelationService {
|
||||
async findCachedFieldMetadataRelation(
|
||||
fieldMetadataItems: Array<
|
||||
Pick<
|
||||
FieldMetadataInterface,
|
||||
FieldMetadataEntity,
|
||||
| 'id'
|
||||
| 'type'
|
||||
| 'objectMetadataId'
|
||||
@ -324,11 +323,11 @@ export class FieldMetadataRelationService {
|
||||
joinColumnName: string;
|
||||
}) {
|
||||
const isRelation =
|
||||
isFieldMetadataInterfaceOfType(
|
||||
isFieldMetadataEntityOfType(
|
||||
fieldMetadataInput,
|
||||
FieldMetadataType.RELATION,
|
||||
) ||
|
||||
isFieldMetadataInterfaceOfType(
|
||||
isFieldMetadataEntityOfType(
|
||||
fieldMetadataInput,
|
||||
FieldMetadataType.MORPH_RELATION,
|
||||
);
|
||||
|
||||
@ -15,10 +15,10 @@ import { FieldMetadataType } from 'twenty-shared/types';
|
||||
import { isDefined } from 'twenty-shared/utils';
|
||||
|
||||
import { FieldMetadataSettings } from 'src/engine/metadata-modules/field-metadata/interfaces/field-metadata-settings.interface';
|
||||
import { FieldMetadataInterface } from 'src/engine/metadata-modules/field-metadata/interfaces/field-metadata.interface';
|
||||
|
||||
import { CreateFieldInput } from 'src/engine/metadata-modules/field-metadata/dtos/create-field.input';
|
||||
import { UpdateFieldInput } from 'src/engine/metadata-modules/field-metadata/dtos/update-field.input';
|
||||
import { FieldMetadataEntity } from 'src/engine/metadata-modules/field-metadata/field-metadata.entity';
|
||||
import {
|
||||
FieldMetadataException,
|
||||
FieldMetadataExceptionCode,
|
||||
@ -34,7 +34,7 @@ type ValidateFieldMetadataArgs = {
|
||||
fieldMetadataType: FieldMetadataType;
|
||||
fieldMetadataInput: CreateFieldInput | UpdateFieldInput;
|
||||
objectMetadata: ObjectMetadataItemWithFieldMaps;
|
||||
existingFieldMetadata?: FieldMetadataInterface;
|
||||
existingFieldMetadata?: FieldMetadataEntity;
|
||||
};
|
||||
|
||||
enum ValueType {
|
||||
|
||||
@ -7,16 +7,15 @@ import { FieldMetadataType } from 'twenty-shared/types';
|
||||
import { isDefined } from 'twenty-shared/utils';
|
||||
import { DataSource, FindOneOptions, In, Repository } from 'typeorm';
|
||||
|
||||
import { FieldMetadataInterface } from 'src/engine/metadata-modules/field-metadata/interfaces/field-metadata.interface';
|
||||
import { RelationType } from 'src/engine/metadata-modules/field-metadata/interfaces/relation-type.interface';
|
||||
|
||||
import { FieldMetadataEntity } from 'src/engine/metadata-modules/field-metadata/field-metadata.entity';
|
||||
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 { compositeTypeDefinitions } from 'src/engine/metadata-modules/field-metadata/composite-types';
|
||||
import { CreateFieldInput } from 'src/engine/metadata-modules/field-metadata/dtos/create-field.input';
|
||||
import { DeleteOneFieldInput } from 'src/engine/metadata-modules/field-metadata/dtos/delete-field.input';
|
||||
import { UpdateFieldInput } from 'src/engine/metadata-modules/field-metadata/dtos/update-field.input';
|
||||
import { FieldMetadataEntity } from 'src/engine/metadata-modules/field-metadata/field-metadata.entity';
|
||||
import {
|
||||
FieldMetadataException,
|
||||
FieldMetadataExceptionCode,
|
||||
@ -107,7 +106,7 @@ export class FieldMetadataService extends TypeOrmQueryService<FieldMetadataEntit
|
||||
{ workspaceId: fieldMetadataInput.workspaceId },
|
||||
);
|
||||
|
||||
let existingFieldMetadata: FieldMetadataInterface | undefined;
|
||||
let existingFieldMetadata: FieldMetadataEntity | undefined;
|
||||
|
||||
for (const objectMetadataItem of Object.values(
|
||||
objectMetadataMaps.byId,
|
||||
|
||||
@ -1,14 +1,13 @@
|
||||
import { FieldMetadataType } from 'twenty-shared/types';
|
||||
|
||||
import { FieldMetadataInterface } from 'src/engine/metadata-modules/field-metadata/interfaces/field-metadata.interface';
|
||||
|
||||
import { FieldStandardOverridesDTO } from 'src/engine/metadata-modules/field-metadata/dtos/field-standard-overrides.dto';
|
||||
import { UpdateFieldInput } from 'src/engine/metadata-modules/field-metadata/dtos/update-field.input';
|
||||
import { FieldMetadataEntity } from 'src/engine/metadata-modules/field-metadata/field-metadata.entity';
|
||||
|
||||
export const buildUpdatableStandardFieldInput = (
|
||||
fieldMetadataInput: UpdateFieldInput,
|
||||
existingFieldMetadata: Pick<
|
||||
FieldMetadataInterface,
|
||||
FieldMetadataEntity,
|
||||
'type' | 'isNullable' | 'defaultValue' | 'options'
|
||||
>,
|
||||
) => {
|
||||
|
||||
@ -1,5 +1,4 @@
|
||||
import { FieldMetadataInterface } from 'src/engine/metadata-modules/field-metadata/interfaces/field-metadata.interface';
|
||||
|
||||
import { FieldMetadataEntity } from 'src/engine/metadata-modules/field-metadata/field-metadata.entity';
|
||||
import {
|
||||
FieldMetadataException,
|
||||
FieldMetadataExceptionCode,
|
||||
@ -7,10 +6,7 @@ import {
|
||||
|
||||
type CheckCanDeactivateFieldOptions = {
|
||||
labelIdentifierFieldMetadataId: string;
|
||||
existingFieldMetadata: Pick<
|
||||
FieldMetadataInterface,
|
||||
'id' | 'isSystem' | 'name'
|
||||
>;
|
||||
existingFieldMetadata: Pick<FieldMetadataEntity, 'id' | 'isSystem' | 'name'>;
|
||||
};
|
||||
|
||||
export const checkCanDeactivateFieldOrThrow = ({
|
||||
|
||||
@ -1,8 +1,8 @@
|
||||
import { FieldMetadataType } from 'twenty-shared/types';
|
||||
|
||||
import { CompositeProperty } from 'src/engine/metadata-modules/field-metadata/interfaces/composite-type.interface';
|
||||
import { FieldMetadataInterface } from 'src/engine/metadata-modules/field-metadata/interfaces/field-metadata.interface';
|
||||
|
||||
import { FieldMetadataEntity } from 'src/engine/metadata-modules/field-metadata/field-metadata.entity';
|
||||
import {
|
||||
FieldMetadataException,
|
||||
FieldMetadataExceptionCode,
|
||||
@ -22,12 +22,12 @@ export function computeColumnName(
|
||||
options?: ComputeColumnNameOptions,
|
||||
): string;
|
||||
export function computeColumnName<T extends FieldMetadataType>(
|
||||
fieldMetadata: FieldMetadataInterface<T>,
|
||||
ioptions?: ComputeColumnNameOptions,
|
||||
fieldMetadata: FieldMetadataEntity<T>,
|
||||
options?: ComputeColumnNameOptions,
|
||||
): string;
|
||||
// TODO: If we need to implement custom name logic for columns, we can do it here
|
||||
export function computeColumnName<T extends FieldMetadataType>(
|
||||
fieldMetadataOrFieldName: FieldMetadataInterface<T> | string,
|
||||
fieldMetadataOrFieldName: FieldMetadataEntity<T> | string,
|
||||
options?: ComputeColumnNameOptions,
|
||||
): string {
|
||||
const generateName = (name: string) => {
|
||||
@ -52,13 +52,13 @@ export function computeCompositeColumnName(
|
||||
compositeProperty: CompositeProperty,
|
||||
): string;
|
||||
export function computeCompositeColumnName<T extends FieldMetadataType>(
|
||||
fieldMetadata: FieldTypeAndNameMetadata | FieldMetadataInterface<T>,
|
||||
fieldMetadata: FieldTypeAndNameMetadata | FieldMetadataEntity<T>,
|
||||
compositeProperty: CompositeProperty,
|
||||
): string;
|
||||
export function computeCompositeColumnName<T extends FieldMetadataType>(
|
||||
fieldMetadataOrFieldName:
|
||||
| FieldTypeAndNameMetadata
|
||||
| FieldMetadataInterface<T>
|
||||
| FieldMetadataEntity<T>
|
||||
| string,
|
||||
compositeProperty: CompositeProperty,
|
||||
): string {
|
||||
|
||||
@ -1,15 +1,13 @@
|
||||
import { FieldMetadataType } from 'twenty-shared/types';
|
||||
|
||||
import { FieldMetadataInterface } from 'src/engine/metadata-modules/field-metadata/interfaces/field-metadata.interface';
|
||||
|
||||
import { FieldMetadataEntity } from 'src/engine/metadata-modules/field-metadata/field-metadata.entity';
|
||||
|
||||
export type SelectOrMultiSelectFieldMetadataEntity = FieldMetadataEntity<
|
||||
FieldMetadataType.SELECT | FieldMetadataType.MULTI_SELECT
|
||||
>;
|
||||
export const isSelectOrMultiSelectFieldMetadata = (
|
||||
fieldMetadata: FieldMetadataInterface,
|
||||
): fieldMetadata is FieldMetadataInterface &
|
||||
fieldMetadata: FieldMetadataEntity,
|
||||
): fieldMetadata is FieldMetadataEntity &
|
||||
SelectOrMultiSelectFieldMetadataEntity => {
|
||||
return [FieldMetadataType.SELECT, FieldMetadataType.MULTI_SELECT].includes(
|
||||
fieldMetadata.type,
|
||||
|
||||
@ -1,11 +1,12 @@
|
||||
import { FieldMetadataInterface } from 'src/engine/metadata-modules/field-metadata/interfaces/field-metadata.interface';
|
||||
import { IndexMetadataInterface } from 'src/engine/metadata-modules/index-metadata/interfaces/index-metadata.interface';
|
||||
|
||||
import { FieldMetadataEntity } from 'src/engine/metadata-modules/field-metadata/field-metadata.entity';
|
||||
|
||||
export interface IndexFieldMetadataInterface {
|
||||
id: string;
|
||||
indexMetadataId: string;
|
||||
fieldMetadataId: string;
|
||||
fieldMetadata: FieldMetadataInterface;
|
||||
fieldMetadata: FieldMetadataEntity;
|
||||
indexMetadata: IndexMetadataInterface;
|
||||
order: number;
|
||||
createdAt: Date;
|
||||
|
||||
@ -22,7 +22,7 @@ import { WorkspaceMigrationFactory } from 'src/engine/metadata-modules/workspace
|
||||
import { WorkspaceMigrationService } from 'src/engine/metadata-modules/workspace-migration/workspace-migration.service';
|
||||
import { computeObjectTargetTable } from 'src/engine/utils/compute-object-target-table.util';
|
||||
import { computeTableName } from 'src/engine/utils/compute-table-name.util';
|
||||
import { isFieldMetadataInterfaceOfType } from 'src/engine/utils/is-field-metadata-of-type.util';
|
||||
import { isFieldMetadataEntityOfType } from 'src/engine/utils/is-field-metadata-of-type.util';
|
||||
import { RELATION_MIGRATION_PRIORITY_PREFIX } from 'src/engine/workspace-manager/workspace-migration-runner/workspace-migration-runner.service';
|
||||
|
||||
@Injectable()
|
||||
@ -244,8 +244,8 @@ export class ObjectMetadataMigrationService {
|
||||
) {
|
||||
const relationFields = objectMetadata.fields.filter(
|
||||
(field) =>
|
||||
isFieldMetadataInterfaceOfType(field, FieldMetadataType.RELATION) ||
|
||||
isFieldMetadataInterfaceOfType(field, FieldMetadataType.MORPH_RELATION),
|
||||
isFieldMetadataEntityOfType(field, FieldMetadataType.RELATION) ||
|
||||
isFieldMetadataEntityOfType(field, FieldMetadataType.MORPH_RELATION),
|
||||
) as FieldMetadataEntity<
|
||||
FieldMetadataType.RELATION | FieldMetadataType.MORPH_RELATION
|
||||
>[];
|
||||
|
||||
@ -1,3 +1,3 @@
|
||||
import { FieldMetadataInterface } from 'src/engine/metadata-modules/field-metadata/interfaces/field-metadata.interface';
|
||||
import { FieldMetadataEntity } from 'src/engine/metadata-modules/field-metadata/field-metadata.entity';
|
||||
|
||||
export type FieldMetadataMap = Record<string, FieldMetadataInterface>;
|
||||
export type FieldMetadataMap = Record<string, FieldMetadataEntity>;
|
||||
|
||||
@ -6,7 +6,7 @@ import { ObjectMetadataInterface } from 'src/engine/metadata-modules/field-metad
|
||||
import { FieldMetadataMap } from 'src/engine/metadata-modules/types/field-metadata-map';
|
||||
import { ObjectMetadataItemWithFieldMaps } from 'src/engine/metadata-modules/types/object-metadata-item-with-field-maps';
|
||||
import { ObjectMetadataMaps } from 'src/engine/metadata-modules/types/object-metadata-maps';
|
||||
import { isFieldMetadataInterfaceOfType } from 'src/engine/utils/is-field-metadata-of-type.util';
|
||||
import { isFieldMetadataEntityOfType } from 'src/engine/utils/is-field-metadata-of-type.util';
|
||||
|
||||
export const generateObjectMetadataMaps = (
|
||||
objectMetadataCollection: ObjectMetadataInterface[],
|
||||
@ -21,10 +21,7 @@ export const generateObjectMetadataMaps = (
|
||||
|
||||
for (const fieldMetadata of objectMetadata.fields) {
|
||||
if (
|
||||
isFieldMetadataInterfaceOfType(
|
||||
fieldMetadata,
|
||||
FieldMetadataType.RELATION,
|
||||
)
|
||||
isFieldMetadataEntityOfType(fieldMetadata, FieldMetadataType.RELATION)
|
||||
) {
|
||||
if (fieldMetadata.settings?.joinColumnName) {
|
||||
fieldIdByJoinColumnNameMap[fieldMetadata.settings.joinColumnName] =
|
||||
|
||||
@ -3,8 +3,6 @@ import {
|
||||
isLabelIdentifierFieldMetadataTypes,
|
||||
} from 'twenty-shared/utils';
|
||||
|
||||
import { FieldMetadataInterface } from 'src/engine/metadata-modules/field-metadata/interfaces/field-metadata.interface';
|
||||
|
||||
import { FieldMetadataEntity } from 'src/engine/metadata-modules/field-metadata/field-metadata.entity';
|
||||
import {
|
||||
ObjectMetadataException,
|
||||
@ -14,14 +12,14 @@ import {
|
||||
type Validator = {
|
||||
validator: (args: {
|
||||
fieldMetadataId: string;
|
||||
matchingFieldMetadata?: FieldMetadataEntity | FieldMetadataInterface;
|
||||
matchingFieldMetadata?: FieldMetadataEntity;
|
||||
}) => boolean;
|
||||
label: string;
|
||||
};
|
||||
|
||||
type ValidateMetadataIdentifierFieldMetadataIdOrThrowArgs = {
|
||||
fieldMetadataId: string;
|
||||
fieldMetadataItems: FieldMetadataEntity[] | FieldMetadataInterface[];
|
||||
fieldMetadataItems: FieldMetadataEntity[];
|
||||
validators: Validator[];
|
||||
};
|
||||
const validatorRunner = ({
|
||||
@ -46,7 +44,7 @@ const validatorRunner = ({
|
||||
type ValidateMetadataIdentifierFieldMetadataIdsArgs = {
|
||||
labelIdentifierFieldMetadataId: string | undefined;
|
||||
imageIdentifierFieldMetadataId: string | undefined;
|
||||
fieldMetadataItems: FieldMetadataEntity[] | FieldMetadataInterface[];
|
||||
fieldMetadataItems: FieldMetadataEntity[];
|
||||
};
|
||||
export const validateMetadataIdentifierFieldMetadataIds = ({
|
||||
imageIdentifierFieldMetadataId,
|
||||
|
||||
@ -2,9 +2,9 @@ import { Injectable, Logger } from '@nestjs/common';
|
||||
|
||||
import { FieldMetadataType } from 'twenty-shared/types';
|
||||
|
||||
import { FieldMetadataInterface } from 'src/engine/metadata-modules/field-metadata/interfaces/field-metadata.interface';
|
||||
import { WorkspaceColumnActionOptions } from 'src/engine/metadata-modules/workspace-migration/interfaces/workspace-column-action-options.interface';
|
||||
|
||||
import { FieldMetadataEntity } from 'src/engine/metadata-modules/field-metadata/field-metadata.entity';
|
||||
import { computeColumnName } from 'src/engine/metadata-modules/field-metadata/utils/compute-column-name.util';
|
||||
import { serializeDefaultValue } from 'src/engine/metadata-modules/field-metadata/utils/serialize-default-value';
|
||||
import { ColumnActionAbstractFactory } from 'src/engine/metadata-modules/workspace-migration/factories/column-action-abstract.factory';
|
||||
@ -36,7 +36,7 @@ export class BasicColumnActionFactory extends ColumnActionAbstractFactory<BasicF
|
||||
protected readonly logger = new Logger(BasicColumnActionFactory.name);
|
||||
|
||||
protected handleCreateAction(
|
||||
fieldMetadata: FieldMetadataInterface<BasicFieldMetadataType>,
|
||||
fieldMetadata: FieldMetadataEntity<BasicFieldMetadataType>,
|
||||
options?: WorkspaceColumnActionOptions,
|
||||
): WorkspaceMigrationColumnCreate[] {
|
||||
const columnName = computeColumnName(fieldMetadata);
|
||||
@ -57,8 +57,8 @@ export class BasicColumnActionFactory extends ColumnActionAbstractFactory<BasicF
|
||||
}
|
||||
|
||||
protected handleAlterAction(
|
||||
currentFieldMetadata: FieldMetadataInterface<BasicFieldMetadataType>,
|
||||
alteredFieldMetadata: FieldMetadataInterface<BasicFieldMetadataType>,
|
||||
currentFieldMetadata: FieldMetadataEntity<BasicFieldMetadataType>,
|
||||
alteredFieldMetadata: FieldMetadataEntity<BasicFieldMetadataType>,
|
||||
options?: WorkspaceColumnActionOptions,
|
||||
): WorkspaceMigrationColumnAlter[] {
|
||||
const currentColumnName = computeColumnName(currentFieldMetadata);
|
||||
|
||||
@ -3,10 +3,10 @@ import { Logger } from '@nestjs/common';
|
||||
|
||||
import { FieldMetadataType } from 'twenty-shared/types';
|
||||
|
||||
import { FieldMetadataInterface } from 'src/engine/metadata-modules/field-metadata/interfaces/field-metadata.interface';
|
||||
import { WorkspaceColumnActionFactory } from 'src/engine/metadata-modules/workspace-migration/interfaces/workspace-column-action-factory.interface';
|
||||
import { WorkspaceColumnActionOptions } from 'src/engine/metadata-modules/workspace-migration/interfaces/workspace-column-action-options.interface';
|
||||
|
||||
import { FieldMetadataEntity } from 'src/engine/metadata-modules/field-metadata/field-metadata.entity';
|
||||
import {
|
||||
WorkspaceMigrationColumnAction,
|
||||
WorkspaceMigrationColumnActionType,
|
||||
@ -27,8 +27,8 @@ export class ColumnActionAbstractFactory<T extends FieldMetadataType>
|
||||
action:
|
||||
| WorkspaceMigrationColumnActionType.CREATE
|
||||
| WorkspaceMigrationColumnActionType.ALTER,
|
||||
currentFieldMetadata: FieldMetadataInterface<T> | undefined,
|
||||
alteredFieldMetadata: FieldMetadataInterface<T>,
|
||||
currentFieldMetadata: FieldMetadataEntity<T> | undefined,
|
||||
alteredFieldMetadata: FieldMetadataEntity<T>,
|
||||
options?: WorkspaceColumnActionOptions,
|
||||
): WorkspaceMigrationColumnAction[] {
|
||||
switch (action) {
|
||||
@ -59,7 +59,7 @@ export class ColumnActionAbstractFactory<T extends FieldMetadataType>
|
||||
}
|
||||
|
||||
protected handleCreateAction(
|
||||
_fieldMetadata: FieldMetadataInterface<T>,
|
||||
_fieldMetadata: FieldMetadataEntity<T>,
|
||||
_options?: WorkspaceColumnActionOptions,
|
||||
): WorkspaceMigrationColumnCreate[] {
|
||||
throw new WorkspaceMigrationException(
|
||||
@ -69,8 +69,8 @@ export class ColumnActionAbstractFactory<T extends FieldMetadataType>
|
||||
}
|
||||
|
||||
protected handleAlterAction(
|
||||
_currentFieldMetadata: FieldMetadataInterface<T>,
|
||||
_alteredFieldMetadata: FieldMetadataInterface<T>,
|
||||
_currentFieldMetadata: FieldMetadataEntity<T>,
|
||||
_alteredFieldMetadata: FieldMetadataEntity<T>,
|
||||
_options?: WorkspaceColumnActionOptions,
|
||||
): WorkspaceMigrationColumnAlter[] {
|
||||
throw new WorkspaceMigrationException(
|
||||
|
||||
@ -2,9 +2,8 @@ import { Injectable, Logger } from '@nestjs/common';
|
||||
|
||||
import { FieldMetadataType } from 'twenty-shared/types';
|
||||
|
||||
import { FieldMetadataInterface } from 'src/engine/metadata-modules/field-metadata/interfaces/field-metadata.interface';
|
||||
|
||||
import { compositeTypeDefinitions } from 'src/engine/metadata-modules/field-metadata/composite-types';
|
||||
import { FieldMetadataEntity } from 'src/engine/metadata-modules/field-metadata/field-metadata.entity';
|
||||
import { computeCompositeColumnName } from 'src/engine/metadata-modules/field-metadata/utils/compute-column-name.util';
|
||||
import { serializeDefaultValue } from 'src/engine/metadata-modules/field-metadata/utils/serialize-default-value';
|
||||
import { ColumnActionAbstractFactory } from 'src/engine/metadata-modules/workspace-migration/factories/column-action-abstract.factory';
|
||||
@ -34,7 +33,7 @@ export class CompositeColumnActionFactory extends ColumnActionAbstractFactory<Co
|
||||
protected readonly logger = new Logger(CompositeColumnActionFactory.name);
|
||||
|
||||
protected handleCreateAction(
|
||||
fieldMetadata: FieldMetadataInterface<CompositeFieldMetadataType>,
|
||||
fieldMetadata: FieldMetadataEntity<CompositeFieldMetadataType>,
|
||||
): WorkspaceMigrationColumnCreate[] {
|
||||
const compositeType = compositeTypeDefinitions.get(fieldMetadata.type);
|
||||
|
||||
@ -83,8 +82,8 @@ export class CompositeColumnActionFactory extends ColumnActionAbstractFactory<Co
|
||||
}
|
||||
|
||||
protected handleAlterAction(
|
||||
currentFieldMetadata: FieldMetadataInterface<CompositeFieldMetadataType>,
|
||||
alteredFieldMetadata: FieldMetadataInterface<CompositeFieldMetadataType>,
|
||||
currentFieldMetadata: FieldMetadataEntity<CompositeFieldMetadataType>,
|
||||
alteredFieldMetadata: FieldMetadataEntity<CompositeFieldMetadataType>,
|
||||
): WorkspaceMigrationColumnAlter[] {
|
||||
const currentCompositeType = compositeTypeDefinitions.get(
|
||||
currentFieldMetadata.type,
|
||||
|
||||
@ -2,9 +2,9 @@ import { Injectable, Logger } from '@nestjs/common';
|
||||
|
||||
import { FieldMetadataType } from 'twenty-shared/types';
|
||||
|
||||
import { FieldMetadataInterface } from 'src/engine/metadata-modules/field-metadata/interfaces/field-metadata.interface';
|
||||
import { WorkspaceColumnActionOptions } from 'src/engine/metadata-modules/workspace-migration/interfaces/workspace-column-action-options.interface';
|
||||
|
||||
import { FieldMetadataEntity } from 'src/engine/metadata-modules/field-metadata/field-metadata.entity';
|
||||
import { computeColumnName } from 'src/engine/metadata-modules/field-metadata/utils/compute-column-name.util';
|
||||
import { serializeDefaultValue } from 'src/engine/metadata-modules/field-metadata/utils/serialize-default-value';
|
||||
import { ColumnActionAbstractFactory } from 'src/engine/metadata-modules/workspace-migration/factories/column-action-abstract.factory';
|
||||
@ -29,7 +29,7 @@ export class EnumColumnActionFactory extends ColumnActionAbstractFactory<EnumFie
|
||||
protected readonly logger = new Logger(EnumColumnActionFactory.name);
|
||||
|
||||
protected handleCreateAction(
|
||||
fieldMetadata: FieldMetadataInterface<EnumFieldMetadataType>,
|
||||
fieldMetadata: FieldMetadataEntity<EnumFieldMetadataType>,
|
||||
options: WorkspaceColumnActionOptions,
|
||||
): WorkspaceMigrationColumnCreate[] {
|
||||
const columnName = computeColumnName(fieldMetadata);
|
||||
@ -54,8 +54,8 @@ export class EnumColumnActionFactory extends ColumnActionAbstractFactory<EnumFie
|
||||
}
|
||||
|
||||
protected handleAlterAction(
|
||||
currentFieldMetadata: FieldMetadataInterface<EnumFieldMetadataType>,
|
||||
alteredFieldMetadata: FieldMetadataInterface<EnumFieldMetadataType>,
|
||||
currentFieldMetadata: FieldMetadataEntity<EnumFieldMetadataType>,
|
||||
alteredFieldMetadata: FieldMetadataEntity<EnumFieldMetadataType>,
|
||||
options: WorkspaceColumnActionOptions,
|
||||
): WorkspaceMigrationColumnAlter[] {
|
||||
const currentColumnName = computeColumnName(currentFieldMetadata);
|
||||
|
||||
@ -2,10 +2,10 @@ import { Injectable, Logger } from '@nestjs/common';
|
||||
|
||||
import { FieldMetadataType } from 'twenty-shared/types';
|
||||
|
||||
import { FieldMetadataInterface } from 'src/engine/metadata-modules/field-metadata/interfaces/field-metadata.interface';
|
||||
import { RelationType } from 'src/engine/metadata-modules/field-metadata/interfaces/relation-type.interface';
|
||||
import { WorkspaceColumnActionOptions } from 'src/engine/metadata-modules/workspace-migration/interfaces/workspace-column-action-options.interface';
|
||||
|
||||
import { FieldMetadataEntity } from 'src/engine/metadata-modules/field-metadata/field-metadata.entity';
|
||||
import { ColumnActionAbstractFactory } from 'src/engine/metadata-modules/workspace-migration/factories/column-action-abstract.factory';
|
||||
import { fieldMetadataTypeToColumnType } from 'src/engine/metadata-modules/workspace-migration/utils/field-metadata-type-to-column-type.util';
|
||||
import {
|
||||
@ -23,7 +23,7 @@ export class MorphRelationColumnActionFactory extends ColumnActionAbstractFactor
|
||||
protected readonly logger = new Logger(MorphRelationColumnActionFactory.name);
|
||||
|
||||
protected handleCreateAction(
|
||||
fieldMetadata: FieldMetadataInterface<FieldMetadataType.MORPH_RELATION>,
|
||||
fieldMetadata: FieldMetadataEntity<FieldMetadataType.MORPH_RELATION>,
|
||||
_options?: WorkspaceColumnActionOptions,
|
||||
): WorkspaceMigrationColumnCreate[] {
|
||||
if (!fieldMetadata.settings || !fieldMetadata.settings.joinColumnName) {
|
||||
@ -46,8 +46,8 @@ export class MorphRelationColumnActionFactory extends ColumnActionAbstractFactor
|
||||
}
|
||||
|
||||
protected handleAlterAction(
|
||||
currentFieldMetadata: FieldMetadataInterface<FieldMetadataType.MORPH_RELATION>,
|
||||
alteredFieldMetadata: FieldMetadataInterface<FieldMetadataType.MORPH_RELATION>,
|
||||
currentFieldMetadata: FieldMetadataEntity<FieldMetadataType.MORPH_RELATION>,
|
||||
alteredFieldMetadata: FieldMetadataEntity<FieldMetadataType.MORPH_RELATION>,
|
||||
_options?: WorkspaceColumnActionOptions,
|
||||
): WorkspaceMigrationColumnAlter[] {
|
||||
if (!currentFieldMetadata.settings || !alteredFieldMetadata.settings) {
|
||||
|
||||
@ -2,10 +2,10 @@ import { Injectable, Logger } from '@nestjs/common';
|
||||
|
||||
import { FieldMetadataType } from 'twenty-shared/types';
|
||||
|
||||
import { FieldMetadataInterface } from 'src/engine/metadata-modules/field-metadata/interfaces/field-metadata.interface';
|
||||
import { RelationType } from 'src/engine/metadata-modules/field-metadata/interfaces/relation-type.interface';
|
||||
import { WorkspaceColumnActionOptions } from 'src/engine/metadata-modules/workspace-migration/interfaces/workspace-column-action-options.interface';
|
||||
|
||||
import { FieldMetadataEntity } from 'src/engine/metadata-modules/field-metadata/field-metadata.entity';
|
||||
import { ColumnActionAbstractFactory } from 'src/engine/metadata-modules/workspace-migration/factories/column-action-abstract.factory';
|
||||
import { fieldMetadataTypeToColumnType } from 'src/engine/metadata-modules/workspace-migration/utils/field-metadata-type-to-column-type.util';
|
||||
import {
|
||||
@ -23,7 +23,7 @@ export class RelationColumnActionFactory extends ColumnActionAbstractFactory<Fie
|
||||
protected readonly logger = new Logger(RelationColumnActionFactory.name);
|
||||
|
||||
protected handleCreateAction(
|
||||
fieldMetadata: FieldMetadataInterface<FieldMetadataType.RELATION>,
|
||||
fieldMetadata: FieldMetadataEntity<FieldMetadataType.RELATION>,
|
||||
_options?: WorkspaceColumnActionOptions,
|
||||
): WorkspaceMigrationColumnCreate[] {
|
||||
if (!fieldMetadata.settings || !fieldMetadata.settings.joinColumnName) {
|
||||
@ -46,8 +46,8 @@ export class RelationColumnActionFactory extends ColumnActionAbstractFactory<Fie
|
||||
}
|
||||
|
||||
protected handleAlterAction(
|
||||
currentFieldMetadata: FieldMetadataInterface<FieldMetadataType.RELATION>,
|
||||
alteredFieldMetadata: FieldMetadataInterface<FieldMetadataType.RELATION>,
|
||||
currentFieldMetadata: FieldMetadataEntity<FieldMetadataType.RELATION>,
|
||||
alteredFieldMetadata: FieldMetadataEntity<FieldMetadataType.RELATION>,
|
||||
_options?: WorkspaceColumnActionOptions,
|
||||
): WorkspaceMigrationColumnAlter[] {
|
||||
if (!currentFieldMetadata.settings || !alteredFieldMetadata.settings) {
|
||||
|
||||
@ -2,8 +2,7 @@ import { Injectable, Logger } from '@nestjs/common';
|
||||
|
||||
import { FieldMetadataType } from 'twenty-shared/types';
|
||||
|
||||
import { FieldMetadataInterface } from 'src/engine/metadata-modules/field-metadata/interfaces/field-metadata.interface';
|
||||
|
||||
import { FieldMetadataEntity } from 'src/engine/metadata-modules/field-metadata/field-metadata.entity';
|
||||
import { computeColumnName } from 'src/engine/metadata-modules/field-metadata/utils/compute-column-name.util';
|
||||
import { ColumnActionAbstractFactory } from 'src/engine/metadata-modules/workspace-migration/factories/column-action-abstract.factory';
|
||||
import { fieldMetadataTypeToColumnType } from 'src/engine/metadata-modules/workspace-migration/utils/field-metadata-type-to-column-type.util';
|
||||
@ -14,7 +13,7 @@ import {
|
||||
} from 'src/engine/metadata-modules/workspace-migration/workspace-migration.entity';
|
||||
|
||||
export type TsVectorFieldMetadata =
|
||||
FieldMetadataInterface<FieldMetadataType.TS_VECTOR> & {
|
||||
FieldMetadataEntity<FieldMetadataType.TS_VECTOR> & {
|
||||
generatedType?: 'STORED' | 'VIRTUAL';
|
||||
asExpression?: string;
|
||||
};
|
||||
|
||||
@ -1,8 +1,8 @@
|
||||
import { FieldMetadataType } from 'twenty-shared/types';
|
||||
|
||||
import { FieldMetadataInterface } from 'src/engine/metadata-modules/field-metadata/interfaces/field-metadata.interface';
|
||||
import { WorkspaceColumnActionOptions } from 'src/engine/metadata-modules/workspace-migration/interfaces/workspace-column-action-options.interface';
|
||||
|
||||
import { FieldMetadataEntity } from 'src/engine/metadata-modules/field-metadata/field-metadata.entity';
|
||||
import {
|
||||
WorkspaceMigrationColumnAction,
|
||||
WorkspaceMigrationColumnActionType,
|
||||
@ -13,8 +13,8 @@ export interface WorkspaceColumnActionFactory<T extends FieldMetadataType> {
|
||||
action:
|
||||
| WorkspaceMigrationColumnActionType.CREATE
|
||||
| WorkspaceMigrationColumnActionType.ALTER,
|
||||
currentFieldMetadata: FieldMetadataInterface<T> | undefined,
|
||||
alteredFieldMetadata: FieldMetadataInterface<T>,
|
||||
currentFieldMetadata: FieldMetadataEntity<T> | undefined,
|
||||
alteredFieldMetadata: FieldMetadataEntity<T>,
|
||||
options?: WorkspaceColumnActionOptions,
|
||||
): WorkspaceMigrationColumnAction[];
|
||||
}
|
||||
|
||||
@ -2,10 +2,10 @@ import { Injectable, Logger } from '@nestjs/common';
|
||||
|
||||
import { FieldMetadataType } from 'twenty-shared/types';
|
||||
|
||||
import { FieldMetadataInterface } from 'src/engine/metadata-modules/field-metadata/interfaces/field-metadata.interface';
|
||||
import { WorkspaceColumnActionFactory } from 'src/engine/metadata-modules/workspace-migration/interfaces/workspace-column-action-factory.interface';
|
||||
import { WorkspaceColumnActionOptions } from 'src/engine/metadata-modules/workspace-migration/interfaces/workspace-column-action-options.interface';
|
||||
|
||||
import { FieldMetadataEntity } from 'src/engine/metadata-modules/field-metadata/field-metadata.entity';
|
||||
import { BasicColumnActionFactory } from 'src/engine/metadata-modules/workspace-migration/factories/basic-column-action.factory';
|
||||
import { CompositeColumnActionFactory } from 'src/engine/metadata-modules/workspace-migration/factories/composite-column-action.factory';
|
||||
import { EnumColumnActionFactory } from 'src/engine/metadata-modules/workspace-migration/factories/enum-column-action.factory';
|
||||
@ -120,18 +120,18 @@ export class WorkspaceMigrationFactory {
|
||||
|
||||
createColumnActions<T extends FieldMetadataType = FieldMetadataType>(
|
||||
action: WorkspaceMigrationColumnActionType.CREATE,
|
||||
fieldMetadata: FieldMetadataInterface<T>,
|
||||
fieldMetadata: FieldMetadataEntity<T>,
|
||||
): WorkspaceMigrationColumnAction[];
|
||||
|
||||
createColumnActions(
|
||||
action: WorkspaceMigrationColumnActionType.ALTER,
|
||||
currentFieldMetadata: FieldMetadataInterface,
|
||||
alteredFieldMetadata: FieldMetadataInterface,
|
||||
currentFieldMetadata: FieldMetadataEntity,
|
||||
alteredFieldMetadata: FieldMetadataEntity,
|
||||
): WorkspaceMigrationColumnAction[];
|
||||
|
||||
createColumnActions(
|
||||
action: WorkspaceMigrationColumnActionType.ALTER,
|
||||
currentFieldMetadata: FieldMetadataInterface,
|
||||
currentFieldMetadata: FieldMetadataEntity,
|
||||
alteredFieldMetadata: TsVectorFieldMetadata,
|
||||
): WorkspaceMigrationColumnAction[];
|
||||
|
||||
@ -139,8 +139,8 @@ export class WorkspaceMigrationFactory {
|
||||
action:
|
||||
| WorkspaceMigrationColumnActionType.CREATE
|
||||
| WorkspaceMigrationColumnActionType.ALTER,
|
||||
fieldMetadataOrCurrentFieldMetadata: FieldMetadataInterface,
|
||||
undefinedOrAlteredFieldMetadata?: FieldMetadataInterface,
|
||||
fieldMetadataOrCurrentFieldMetadata: FieldMetadataEntity,
|
||||
undefinedOrAlteredFieldMetadata?: FieldMetadataEntity,
|
||||
): WorkspaceMigrationColumnAction[] {
|
||||
const currentFieldMetadata =
|
||||
action === WorkspaceMigrationColumnActionType.ALTER
|
||||
@ -176,8 +176,8 @@ export class WorkspaceMigrationFactory {
|
||||
action:
|
||||
| WorkspaceMigrationColumnActionType.CREATE
|
||||
| WorkspaceMigrationColumnActionType.ALTER,
|
||||
currentFieldMetadata: FieldMetadataInterface | undefined,
|
||||
alteredFieldMetadata: FieldMetadataInterface,
|
||||
currentFieldMetadata: FieldMetadataEntity | undefined,
|
||||
alteredFieldMetadata: FieldMetadataEntity,
|
||||
): WorkspaceMigrationColumnAction[] {
|
||||
const { factory, options } =
|
||||
this.factoriesMap.get(alteredFieldMetadata.type) ?? {};
|
||||
|
||||
Reference in New Issue
Block a user