Add basic fields metadata (#2523)

* Add basic fields metadata

* add fieldmetadata dependency

* re-arrange modules

* fix

* fix seed

* set default fields nullable

* set default fields nullable

* fix tenantMigration order

* fix tenantMigration order
This commit is contained in:
Weiko
2023-11-15 19:21:51 +01:00
committed by GitHub
parent 82142ab70e
commit ebd1ef5223
40 changed files with 1154 additions and 135 deletions

View File

@ -11,6 +11,7 @@ import { TypeOrmQueryService } from '@ptc-org/nestjs-query-typeorm';
import { TenantMigrationService } from 'src/metadata/tenant-migration/tenant-migration.service';
import { TenantMigrationRunnerService } from 'src/tenant-migration-runner/tenant-migration-runner.service';
import { TenantMigrationTableAction } from 'src/metadata/tenant-migration/tenant-migration.entity';
import { FieldMetadataType } from 'src/metadata/field-metadata/field-metadata.entity';
import { ObjectMetadataEntity } from './object-metadata.entity';
@ -57,6 +58,55 @@ export class ObjectMetadataService extends TypeOrmQueryService<ObjectMetadataEnt
isActive: true,
isCustom: true,
isSystem: false,
fields:
// Creating default fields.
// No need to create a custom migration for this though as the default columns are already
// created with default values which is not supported yet by tenant migrations.
[
{
type: FieldMetadataType.UUID,
name: 'id',
label: 'Id',
targetColumnMap: {
value: 'id',
},
icon: undefined,
description: 'Id',
isNullable: true,
isActive: true,
isCustom: false,
// isSystem: true,
workspaceId: record.workspaceId,
},
{
type: FieldMetadataType.DATE,
name: 'createdAt',
label: 'Creation date',
targetColumnMap: {
value: 'createdAt',
},
icon: 'IconCalendar',
description: 'Creation date',
isNullable: true,
isActive: true,
isCustom: false,
workspaceId: record.workspaceId,
},
{
type: FieldMetadataType.DATE,
name: 'updatedAt',
label: 'Update date',
targetColumnMap: {
value: 'updatedAt',
},
icon: 'IconCalendar',
description: 'Update date',
isNullable: true,
isActive: true,
isCustom: false,
workspaceId: record.workspaceId,
},
],
});
await this.tenantMigrationService.createCustomMigration(