Introduce remote table entity (#4994)

We will require remote table entity to map distant table name and local
foreign table name.
Introducing the entity:
- new source of truth to know if a table is sync or not
- created synchronously at the same time as metadata and foreign table

Adding a few more changes:
- exception rather than errors so the user can see these
- `pluralize` library that will allow to stop adding `Remote` suffix on
names

---------

Co-authored-by: Thomas Trompette <thomast@twenty.com>
This commit is contained in:
Thomas Trompette
2024-04-17 10:52:10 +02:00
committed by GitHub
parent 17422b7690
commit 6fa2aee624
12 changed files with 372 additions and 201 deletions

View File

@ -1,6 +1,7 @@
import { ObjectType, Field, registerEnumType } from '@nestjs/graphql';
import { IsEnum } from 'class-validator';
import { PrimaryGeneratedColumn } from 'typeorm';
export enum RemoteTableStatus {
SYNCED = 'SYNCED',
@ -14,6 +15,9 @@ registerEnumType(RemoteTableStatus, {
@ObjectType('RemoteTable')
export class RemoteTableDTO {
@PrimaryGeneratedColumn('uuid')
id: string;
@Field(() => String)
name: string;