Compile with swc on twenty-server (#4863)
Experiment using swc instead of tsc (as we did the switch on twenty-front) It's **much** faster (at least 5x) but has stricter requirements. I fixed the build but there's still an error while starting the server, opening this PR for discussion. Checkout the branch and try `nx build:swc twenty-server` Read: https://docs.nestjs.com/recipes/swc#common-pitfalls
This commit is contained in:
@ -25,7 +25,7 @@ export class RelationFieldAliasFactory {
|
||||
|
||||
constructor(
|
||||
@Inject(forwardRef(() => FieldsStringFactory))
|
||||
private readonly fieldsStringFactory: FieldsStringFactory,
|
||||
private readonly fieldsStringFactory: CircularDep<FieldsStringFactory>,
|
||||
private readonly argsStringFactory: ArgsStringFactory,
|
||||
private readonly objectMetadataService: ObjectMetadataService,
|
||||
) {}
|
||||
|
||||
@ -30,7 +30,7 @@ export interface InputTypeDefinition {
|
||||
export class InputTypeDefinitionFactory {
|
||||
constructor(
|
||||
@Inject(forwardRef(() => InputTypeFactory))
|
||||
private readonly inputTypeFactory: InputTypeFactory,
|
||||
private readonly inputTypeFactory: CircularDep<InputTypeFactory>,
|
||||
private readonly typeMapperService: TypeMapperService,
|
||||
) {}
|
||||
|
||||
|
||||
@ -8,6 +8,7 @@ import {
|
||||
JoinColumn,
|
||||
CreateDateColumn,
|
||||
UpdateDateColumn,
|
||||
Relation,
|
||||
} from 'typeorm';
|
||||
import { BeforeCreateOne, IDField } from '@ptc-org/nestjs-query-graphql';
|
||||
|
||||
@ -33,7 +34,7 @@ export class AppToken {
|
||||
onDelete: 'CASCADE',
|
||||
})
|
||||
@JoinColumn({ name: 'userId' })
|
||||
user: User;
|
||||
user: Relation<User>;
|
||||
|
||||
@Column()
|
||||
userId: string;
|
||||
@ -42,7 +43,7 @@ export class AppToken {
|
||||
onDelete: 'CASCADE',
|
||||
})
|
||||
@JoinColumn({ name: 'workspaceId' })
|
||||
workspace: Workspace;
|
||||
workspace: Relation<Workspace>;
|
||||
|
||||
@Column({ nullable: true })
|
||||
workspaceId: string;
|
||||
|
||||
@ -4,6 +4,7 @@ import {
|
||||
Entity,
|
||||
ManyToOne,
|
||||
PrimaryGeneratedColumn,
|
||||
Relation,
|
||||
Unique,
|
||||
UpdateDateColumn,
|
||||
} from 'typeorm';
|
||||
@ -42,7 +43,7 @@ export class BillingSubscriptionItem {
|
||||
onDelete: 'CASCADE',
|
||||
},
|
||||
)
|
||||
billingSubscription: BillingSubscription;
|
||||
billingSubscription: Relation<BillingSubscription>;
|
||||
|
||||
@Column({ nullable: false })
|
||||
stripeProductId: string;
|
||||
|
||||
@ -8,6 +8,7 @@ import {
|
||||
ManyToOne,
|
||||
OneToMany,
|
||||
PrimaryGeneratedColumn,
|
||||
Relation,
|
||||
UpdateDateColumn,
|
||||
} from 'typeorm';
|
||||
import Stripe from 'stripe';
|
||||
@ -37,7 +38,7 @@ export class BillingSubscription {
|
||||
onDelete: 'CASCADE',
|
||||
})
|
||||
@JoinColumn()
|
||||
workspace: Workspace;
|
||||
workspace: Relation<Workspace>;
|
||||
|
||||
@Column({ nullable: false, type: 'uuid' })
|
||||
workspaceId: string;
|
||||
@ -48,17 +49,17 @@ export class BillingSubscription {
|
||||
@Column({ unique: true, nullable: false })
|
||||
stripeSubscriptionId: string;
|
||||
|
||||
@Field()
|
||||
@Column({ nullable: false })
|
||||
@Field(() => String)
|
||||
@Column({ type: 'text', nullable: false })
|
||||
status: Stripe.Subscription.Status;
|
||||
|
||||
@Field({ nullable: true })
|
||||
@Column({ nullable: true })
|
||||
@Field(() => String, { nullable: true })
|
||||
@Column({ type: 'text', nullable: true })
|
||||
interval: Stripe.Price.Recurring.Interval;
|
||||
|
||||
@OneToMany(
|
||||
() => BillingSubscriptionItem,
|
||||
(billingSubscriptionItem) => billingSubscriptionItem.billingSubscription,
|
||||
)
|
||||
billingSubscriptionItems: BillingSubscriptionItem[];
|
||||
billingSubscriptionItems: Relation<BillingSubscriptionItem[]>;
|
||||
}
|
||||
|
||||
@ -8,6 +8,7 @@ import {
|
||||
CreateDateColumn,
|
||||
UpdateDateColumn,
|
||||
ManyToOne,
|
||||
Relation,
|
||||
} from 'typeorm';
|
||||
import { IDField } from '@ptc-org/nestjs-query-graphql';
|
||||
|
||||
@ -43,7 +44,7 @@ export class FeatureFlagEntity {
|
||||
@ManyToOne(() => Workspace, (workspace) => workspace.featureFlags, {
|
||||
onDelete: 'CASCADE',
|
||||
})
|
||||
workspace: Workspace;
|
||||
workspace: Relation<Workspace>;
|
||||
|
||||
@Field()
|
||||
@Column({ nullable: false })
|
||||
|
||||
@ -8,6 +8,7 @@ import {
|
||||
JoinColumn,
|
||||
ManyToOne,
|
||||
PrimaryGeneratedColumn,
|
||||
Relation,
|
||||
Unique,
|
||||
UpdateDateColumn,
|
||||
} from 'typeorm';
|
||||
@ -29,7 +30,7 @@ export class UserWorkspace {
|
||||
onDelete: 'CASCADE',
|
||||
})
|
||||
@JoinColumn({ name: 'userId' })
|
||||
user: User;
|
||||
user: Relation<User>;
|
||||
|
||||
@Field({ nullable: false })
|
||||
@Column()
|
||||
@ -40,7 +41,7 @@ export class UserWorkspace {
|
||||
onDelete: 'CASCADE',
|
||||
})
|
||||
@JoinColumn({ name: 'workspaceId' })
|
||||
workspace: Workspace;
|
||||
workspace: Relation<Workspace>;
|
||||
|
||||
@Field({ nullable: false })
|
||||
@Column()
|
||||
|
||||
@ -8,6 +8,7 @@ import {
|
||||
UpdateDateColumn,
|
||||
OneToMany,
|
||||
ManyToOne,
|
||||
Relation,
|
||||
} from 'typeorm';
|
||||
import { IDField } from '@ptc-org/nestjs-query-graphql';
|
||||
|
||||
@ -72,7 +73,7 @@ export class User {
|
||||
@ManyToOne(() => Workspace, (workspace) => workspace.users, {
|
||||
onDelete: 'SET NULL',
|
||||
})
|
||||
defaultWorkspace: Workspace;
|
||||
defaultWorkspace: Relation<Workspace>;
|
||||
|
||||
@Field()
|
||||
@Column()
|
||||
@ -89,12 +90,12 @@ export class User {
|
||||
@OneToMany(() => AppToken, (appToken) => appToken.user, {
|
||||
cascade: true,
|
||||
})
|
||||
appTokens: AppToken[];
|
||||
appTokens: Relation<AppToken[]>;
|
||||
|
||||
@Field(() => WorkspaceMember, { nullable: true })
|
||||
workspaceMember: WorkspaceMember;
|
||||
workspaceMember: Relation<WorkspaceMember>;
|
||||
|
||||
@Field(() => [UserWorkspace])
|
||||
@OneToMany(() => UserWorkspace, (userWorkspace) => userWorkspace.user)
|
||||
workspaces: UserWorkspace[];
|
||||
workspaces: Relation<UserWorkspace[]>;
|
||||
}
|
||||
|
||||
@ -7,6 +7,7 @@ import {
|
||||
Entity,
|
||||
OneToMany,
|
||||
PrimaryGeneratedColumn,
|
||||
Relation,
|
||||
UpdateDateColumn,
|
||||
} from 'typeorm';
|
||||
import Stripe from 'stripe';
|
||||
@ -60,25 +61,25 @@ export class Workspace {
|
||||
@OneToMany(() => AppToken, (appToken) => appToken.workspace, {
|
||||
cascade: true,
|
||||
})
|
||||
appTokens: AppToken[];
|
||||
appTokens: Relation<AppToken[]>;
|
||||
|
||||
@OneToMany(() => User, (user) => user.defaultWorkspace)
|
||||
users: User[];
|
||||
users: Relation<User[]>;
|
||||
|
||||
@OneToMany(() => UserWorkspace, (userWorkspace) => userWorkspace.workspace, {
|
||||
onDelete: 'CASCADE',
|
||||
})
|
||||
workspaceUsers: UserWorkspace[];
|
||||
workspaceUsers: Relation<UserWorkspace[]>;
|
||||
|
||||
@Field()
|
||||
@Column({ default: true })
|
||||
allowImpersonation: boolean;
|
||||
|
||||
@OneToMany(() => FeatureFlagEntity, (featureFlag) => featureFlag.workspace)
|
||||
featureFlags: FeatureFlagEntity[];
|
||||
featureFlags: Relation<FeatureFlagEntity[]>;
|
||||
|
||||
@Field()
|
||||
@Column({ default: 'incomplete' })
|
||||
@Field(() => String)
|
||||
@Column({ type: 'text', default: 'incomplete' })
|
||||
subscriptionStatus: Stripe.Subscription.Status;
|
||||
|
||||
@Field({ nullable: true })
|
||||
@ -91,5 +92,5 @@ export class Workspace {
|
||||
() => BillingSubscription,
|
||||
(billingSubscription) => billingSubscription.workspace,
|
||||
)
|
||||
billingSubscriptions: BillingSubscription[];
|
||||
billingSubscriptions: Relation<BillingSubscription[]>;
|
||||
}
|
||||
|
||||
@ -1,6 +1,7 @@
|
||||
import { Field, ObjectType, registerEnumType } from '@nestjs/graphql';
|
||||
|
||||
import { IsEnum, IsNotEmpty } from 'class-validator';
|
||||
import { Relation } from 'typeorm';
|
||||
|
||||
import { FieldMetadataDTO } from 'src/engine/metadata-modules/field-metadata/dtos/field-metadata.dto';
|
||||
import { ObjectMetadataDTO } from 'src/engine/metadata-modules/object-metadata/dtos/object-metadata.dto';
|
||||
@ -22,19 +23,19 @@ registerEnumType(RelationDefinitionType, {
|
||||
export class RelationDefinitionDTO {
|
||||
@IsNotEmpty()
|
||||
@Field(() => ObjectMetadataDTO)
|
||||
sourceObjectMetadata: ObjectMetadataDTO;
|
||||
sourceObjectMetadata: Relation<ObjectMetadataDTO>;
|
||||
|
||||
@IsNotEmpty()
|
||||
@Field(() => ObjectMetadataDTO)
|
||||
targetObjectMetadata: ObjectMetadataDTO;
|
||||
targetObjectMetadata: Relation<ObjectMetadataDTO>;
|
||||
|
||||
@IsNotEmpty()
|
||||
@Field(() => FieldMetadataDTO)
|
||||
sourceFieldMetadata: FieldMetadataDTO;
|
||||
sourceFieldMetadata: Relation<FieldMetadataDTO>;
|
||||
|
||||
@IsNotEmpty()
|
||||
@Field(() => FieldMetadataDTO)
|
||||
targetFieldMetadata: FieldMetadataDTO;
|
||||
targetFieldMetadata: Relation<FieldMetadataDTO>;
|
||||
|
||||
@IsEnum(RelationDefinitionType)
|
||||
@IsNotEmpty()
|
||||
|
||||
@ -8,6 +8,7 @@ import {
|
||||
OneToOne,
|
||||
CreateDateColumn,
|
||||
UpdateDateColumn,
|
||||
Relation,
|
||||
} from 'typeorm';
|
||||
|
||||
import { FieldMetadataInterface } from 'src/engine/metadata-modules/field-metadata/interfaces/field-metadata.interface';
|
||||
@ -63,7 +64,7 @@ export class FieldMetadataEntity<
|
||||
onDelete: 'CASCADE',
|
||||
})
|
||||
@JoinColumn({ name: 'objectMetadataId' })
|
||||
object: ObjectMetadataEntity;
|
||||
object: Relation<ObjectMetadataEntity>;
|
||||
|
||||
@Column({ nullable: false })
|
||||
type: FieldMetadataType;
|
||||
@ -105,13 +106,13 @@ export class FieldMetadataEntity<
|
||||
() => RelationMetadataEntity,
|
||||
(relation: RelationMetadataEntity) => relation.fromFieldMetadata,
|
||||
)
|
||||
fromRelationMetadata: RelationMetadataEntity;
|
||||
fromRelationMetadata: Relation<RelationMetadataEntity>;
|
||||
|
||||
@OneToOne(
|
||||
() => RelationMetadataEntity,
|
||||
(relation: RelationMetadataEntity) => relation.toFieldMetadata,
|
||||
)
|
||||
toRelationMetadata: RelationMetadataEntity;
|
||||
toRelationMetadata: Relation<RelationMetadataEntity>;
|
||||
|
||||
@CreateDateColumn({ type: 'timestamptz' })
|
||||
createdAt: Date;
|
||||
|
||||
@ -7,6 +7,7 @@ import {
|
||||
CreateDateColumn,
|
||||
UpdateDateColumn,
|
||||
ManyToOne,
|
||||
Relation,
|
||||
} from 'typeorm';
|
||||
|
||||
import { ObjectMetadataInterface } from 'src/engine/metadata-modules/field-metadata/interfaces/object-metadata.interface';
|
||||
@ -79,7 +80,7 @@ export class ObjectMetadataEntity implements ObjectMetadataInterface {
|
||||
@OneToMany(() => FieldMetadataEntity, (field) => field.object, {
|
||||
cascade: true,
|
||||
})
|
||||
fields: FieldMetadataEntity[];
|
||||
fields: Relation<FieldMetadataEntity[]>;
|
||||
|
||||
@OneToMany(
|
||||
() => RelationMetadataEntity,
|
||||
@ -88,7 +89,7 @@ export class ObjectMetadataEntity implements ObjectMetadataInterface {
|
||||
cascade: true,
|
||||
},
|
||||
)
|
||||
fromRelations: RelationMetadataEntity[];
|
||||
fromRelations: Relation<RelationMetadataEntity[]>;
|
||||
|
||||
@OneToMany(
|
||||
() => RelationMetadataEntity,
|
||||
@ -97,12 +98,12 @@ export class ObjectMetadataEntity implements ObjectMetadataInterface {
|
||||
cascade: true,
|
||||
},
|
||||
)
|
||||
toRelations: RelationMetadataEntity[];
|
||||
toRelations: Relation<RelationMetadataEntity[]>;
|
||||
|
||||
@ManyToOne(() => DataSourceEntity, (dataSource) => dataSource.objects, {
|
||||
onDelete: 'CASCADE',
|
||||
})
|
||||
dataSource: DataSourceEntity;
|
||||
dataSource: Relation<DataSourceEntity>;
|
||||
|
||||
@CreateDateColumn({ type: 'timestamptz' })
|
||||
createdAt: Date;
|
||||
|
||||
@ -6,6 +6,7 @@ import {
|
||||
ManyToOne,
|
||||
OneToOne,
|
||||
PrimaryGeneratedColumn,
|
||||
Relation,
|
||||
UpdateDateColumn,
|
||||
} from 'typeorm';
|
||||
|
||||
@ -65,7 +66,7 @@ export class RelationMetadataEntity implements RelationMetadataInterface {
|
||||
onDelete: 'CASCADE',
|
||||
},
|
||||
)
|
||||
fromObjectMetadata: ObjectMetadataEntity;
|
||||
fromObjectMetadata: Relation<ObjectMetadataEntity>;
|
||||
|
||||
@ManyToOne(
|
||||
() => ObjectMetadataEntity,
|
||||
@ -74,21 +75,21 @@ export class RelationMetadataEntity implements RelationMetadataInterface {
|
||||
onDelete: 'CASCADE',
|
||||
},
|
||||
)
|
||||
toObjectMetadata: ObjectMetadataEntity;
|
||||
toObjectMetadata: Relation<ObjectMetadataEntity>;
|
||||
|
||||
@OneToOne(
|
||||
() => FieldMetadataEntity,
|
||||
(field: FieldMetadataEntity) => field.fromRelationMetadata,
|
||||
)
|
||||
@JoinColumn()
|
||||
fromFieldMetadata: FieldMetadataEntity;
|
||||
fromFieldMetadata: Relation<FieldMetadataEntity>;
|
||||
|
||||
@OneToOne(
|
||||
() => FieldMetadataEntity,
|
||||
(field: FieldMetadataEntity) => field.toRelationMetadata,
|
||||
)
|
||||
@JoinColumn()
|
||||
toFieldMetadata: FieldMetadataEntity;
|
||||
toFieldMetadata: Relation<FieldMetadataEntity>;
|
||||
|
||||
@CreateDateColumn({ type: 'timestamptz' })
|
||||
createdAt: Date;
|
||||
|
||||
@ -39,7 +39,7 @@ export class RemoteServerEntity<T extends RemoteServerType> {
|
||||
@Generated('uuid')
|
||||
foreignDataWrapperId: string;
|
||||
|
||||
@Column({ nullable: true })
|
||||
@Column({ type: 'text', nullable: true })
|
||||
foreignDataWrapperType: T;
|
||||
|
||||
@Column({ nullable: true, type: 'jsonb' })
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
[
|
||||
export const companiesDemo = [
|
||||
{
|
||||
"name": "Google",
|
||||
"domainName": "goo.gle",
|
||||
@ -1,6 +1,6 @@
|
||||
import { EntityManager } from 'typeorm';
|
||||
|
||||
import companiesDemo from './companies-demo.json';
|
||||
import { companiesDemo } from 'src/engine/workspace-manager/demo-objects-prefill-data/companies-demo.json';
|
||||
|
||||
export const companyPrefillDemoData = async (
|
||||
entityManager: EntityManager,
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
[
|
||||
export const peopleDemo = [
|
||||
{
|
||||
"firstName": "Mark",
|
||||
"lastName": "Young",
|
||||
@ -1,6 +1,6 @@
|
||||
import { EntityManager } from 'typeorm';
|
||||
|
||||
import peopleDemo from './people-demo.json';
|
||||
import { peopleDemo } from 'src/engine/workspace-manager/demo-objects-prefill-data/people-demo.json';
|
||||
|
||||
export const personPrefillDemoData = async (
|
||||
entityManager: EntityManager,
|
||||
|
||||
@ -0,0 +1,5 @@
|
||||
/**
|
||||
* Wrapper type used to circumvent ESM modules circular dependency issue
|
||||
* caused by reflection metadata saving the type of the property.
|
||||
*/
|
||||
export type Relation<T> = T;
|
||||
@ -1,3 +1,5 @@
|
||||
import { Relation } from 'src/engine/workspace-manager/workspace-sync-metadata/interfaces/relation.interface';
|
||||
|
||||
import { FieldMetadataType } from 'src/engine/metadata-modules/field-metadata/field-metadata.entity';
|
||||
import { activityTargetStandardFieldIds } from 'src/engine/workspace-manager/workspace-sync-metadata/constants/standard-field-ids';
|
||||
import { standardObjectIds } from 'src/engine/workspace-manager/workspace-sync-metadata/constants/standard-object-ids';
|
||||
@ -32,7 +34,7 @@ export class ActivityTargetObjectMetadata extends BaseObjectMetadata {
|
||||
joinColumn: 'activityId',
|
||||
})
|
||||
@IsNullable()
|
||||
activity: ActivityObjectMetadata;
|
||||
activity: Relation<ActivityObjectMetadata>;
|
||||
|
||||
@FieldMetadata({
|
||||
standardId: activityTargetStandardFieldIds.person,
|
||||
@ -43,7 +45,7 @@ export class ActivityTargetObjectMetadata extends BaseObjectMetadata {
|
||||
joinColumn: 'personId',
|
||||
})
|
||||
@IsNullable()
|
||||
person: PersonObjectMetadata;
|
||||
person: Relation<PersonObjectMetadata>;
|
||||
|
||||
@FieldMetadata({
|
||||
standardId: activityTargetStandardFieldIds.company,
|
||||
@ -54,7 +56,7 @@ export class ActivityTargetObjectMetadata extends BaseObjectMetadata {
|
||||
joinColumn: 'companyId',
|
||||
})
|
||||
@IsNullable()
|
||||
company: CompanyObjectMetadata;
|
||||
company: Relation<CompanyObjectMetadata>;
|
||||
|
||||
@FieldMetadata({
|
||||
standardId: activityTargetStandardFieldIds.opportunity,
|
||||
@ -65,7 +67,7 @@ export class ActivityTargetObjectMetadata extends BaseObjectMetadata {
|
||||
joinColumn: 'opportunityId',
|
||||
})
|
||||
@IsNullable()
|
||||
opportunity: OpportunityObjectMetadata;
|
||||
opportunity: Relation<OpportunityObjectMetadata>;
|
||||
|
||||
@DynamicRelationFieldMetadata((oppositeObjectMetadata) => ({
|
||||
standardId: activityTargetStandardFieldIds.custom,
|
||||
@ -75,5 +77,5 @@ export class ActivityTargetObjectMetadata extends BaseObjectMetadata {
|
||||
joinColumn: `${oppositeObjectMetadata.nameSingular}Id`,
|
||||
icon: 'IconBuildingSkyscraper',
|
||||
}))
|
||||
custom: CustomObjectMetadata;
|
||||
custom: Relation<CustomObjectMetadata>;
|
||||
}
|
||||
|
||||
@ -1,3 +1,5 @@
|
||||
import { Relation } from 'src/engine/workspace-manager/workspace-sync-metadata/interfaces/relation.interface';
|
||||
|
||||
import { FieldMetadataType } from 'src/engine/metadata-modules/field-metadata/field-metadata.entity';
|
||||
import {
|
||||
RelationMetadataType,
|
||||
@ -97,7 +99,7 @@ export class ActivityObjectMetadata extends BaseObjectMetadata {
|
||||
onDelete: RelationOnDeleteAction.SET_NULL,
|
||||
})
|
||||
@IsNullable()
|
||||
activityTargets: ActivityTargetObjectMetadata[];
|
||||
activityTargets: Relation<ActivityTargetObjectMetadata[]>;
|
||||
|
||||
@FieldMetadata({
|
||||
standardId: activityStandardFieldIds.attachments,
|
||||
@ -112,7 +114,7 @@ export class ActivityObjectMetadata extends BaseObjectMetadata {
|
||||
onDelete: RelationOnDeleteAction.SET_NULL,
|
||||
})
|
||||
@IsNullable()
|
||||
attachments: AttachmentObjectMetadata[];
|
||||
attachments: Relation<AttachmentObjectMetadata[]>;
|
||||
|
||||
@FieldMetadata({
|
||||
standardId: activityStandardFieldIds.comments,
|
||||
@ -127,7 +129,7 @@ export class ActivityObjectMetadata extends BaseObjectMetadata {
|
||||
onDelete: RelationOnDeleteAction.CASCADE,
|
||||
})
|
||||
@IsNullable()
|
||||
comments: CommentObjectMetadata[];
|
||||
comments: Relation<CommentObjectMetadata[]>;
|
||||
|
||||
@FieldMetadata({
|
||||
standardId: activityStandardFieldIds.author,
|
||||
@ -138,7 +140,7 @@ export class ActivityObjectMetadata extends BaseObjectMetadata {
|
||||
joinColumn: 'authorId',
|
||||
})
|
||||
@IsNullable()
|
||||
author: WorkspaceMemberObjectMetadata;
|
||||
author: Relation<WorkspaceMemberObjectMetadata>;
|
||||
|
||||
@FieldMetadata({
|
||||
standardId: activityStandardFieldIds.assignee,
|
||||
@ -149,5 +151,5 @@ export class ActivityObjectMetadata extends BaseObjectMetadata {
|
||||
joinColumn: 'assigneeId',
|
||||
})
|
||||
@IsNullable()
|
||||
assignee: WorkspaceMemberObjectMetadata;
|
||||
assignee: Relation<WorkspaceMemberObjectMetadata>;
|
||||
}
|
||||
|
||||
@ -1,3 +1,5 @@
|
||||
import { Relation } from 'src/engine/workspace-manager/workspace-sync-metadata/interfaces/relation.interface';
|
||||
|
||||
import { FieldMetadataType } from 'src/engine/metadata-modules/field-metadata/field-metadata.entity';
|
||||
import { commentStandardFieldIds } from 'src/engine/workspace-manager/workspace-sync-metadata/constants/standard-field-ids';
|
||||
import { standardObjectIds } from 'src/engine/workspace-manager/workspace-sync-metadata/constants/standard-object-ids';
|
||||
@ -35,7 +37,7 @@ export class CommentObjectMetadata extends BaseObjectMetadata {
|
||||
icon: 'IconCircleUser',
|
||||
joinColumn: 'authorId',
|
||||
})
|
||||
author: WorkspaceMemberObjectMetadata;
|
||||
author: Relation<WorkspaceMemberObjectMetadata>;
|
||||
|
||||
@FieldMetadata({
|
||||
standardId: commentStandardFieldIds.activity,
|
||||
@ -45,5 +47,5 @@ export class CommentObjectMetadata extends BaseObjectMetadata {
|
||||
icon: 'IconNotes',
|
||||
joinColumn: 'activityId',
|
||||
})
|
||||
activity: ActivityObjectMetadata;
|
||||
activity: Relation<ActivityObjectMetadata>;
|
||||
}
|
||||
|
||||
@ -1,3 +1,5 @@
|
||||
import { Relation } from 'src/engine/workspace-manager/workspace-sync-metadata/interfaces/relation.interface';
|
||||
|
||||
import { FieldMetadataType } from 'src/engine/metadata-modules/field-metadata/field-metadata.entity';
|
||||
import { attachmentStandardFieldIds } from 'src/engine/workspace-manager/workspace-sync-metadata/constants/standard-field-ids';
|
||||
import { standardObjectIds } from 'src/engine/workspace-manager/workspace-sync-metadata/constants/standard-object-ids';
|
||||
@ -59,7 +61,7 @@ export class AttachmentObjectMetadata extends BaseObjectMetadata {
|
||||
icon: 'IconCircleUser',
|
||||
joinColumn: 'authorId',
|
||||
})
|
||||
author: WorkspaceMemberObjectMetadata;
|
||||
author: Relation<WorkspaceMemberObjectMetadata>;
|
||||
|
||||
@FieldMetadata({
|
||||
standardId: attachmentStandardFieldIds.activity,
|
||||
@ -70,7 +72,7 @@ export class AttachmentObjectMetadata extends BaseObjectMetadata {
|
||||
joinColumn: 'activityId',
|
||||
})
|
||||
@IsNullable()
|
||||
activity: ActivityObjectMetadata;
|
||||
activity: Relation<ActivityObjectMetadata>;
|
||||
|
||||
@FieldMetadata({
|
||||
standardId: attachmentStandardFieldIds.person,
|
||||
@ -81,7 +83,7 @@ export class AttachmentObjectMetadata extends BaseObjectMetadata {
|
||||
joinColumn: 'personId',
|
||||
})
|
||||
@IsNullable()
|
||||
person: PersonObjectMetadata;
|
||||
person: Relation<PersonObjectMetadata>;
|
||||
|
||||
@FieldMetadata({
|
||||
standardId: attachmentStandardFieldIds.company,
|
||||
@ -92,7 +94,7 @@ export class AttachmentObjectMetadata extends BaseObjectMetadata {
|
||||
joinColumn: 'companyId',
|
||||
})
|
||||
@IsNullable()
|
||||
company: CompanyObjectMetadata;
|
||||
company: Relation<CompanyObjectMetadata>;
|
||||
|
||||
@FieldMetadata({
|
||||
standardId: attachmentStandardFieldIds.opportunity,
|
||||
@ -103,7 +105,7 @@ export class AttachmentObjectMetadata extends BaseObjectMetadata {
|
||||
joinColumn: 'opportunityId',
|
||||
})
|
||||
@IsNullable()
|
||||
opportunity: OpportunityObjectMetadata;
|
||||
opportunity: Relation<OpportunityObjectMetadata>;
|
||||
|
||||
@DynamicRelationFieldMetadata((oppositeObjectMetadata) => ({
|
||||
standardId: attachmentStandardFieldIds.custom,
|
||||
@ -113,5 +115,5 @@ export class AttachmentObjectMetadata extends BaseObjectMetadata {
|
||||
joinColumn: `${oppositeObjectMetadata.nameSingular}Id`,
|
||||
icon: 'IconBuildingSkyscraper',
|
||||
}))
|
||||
custom: CustomObjectMetadata;
|
||||
custom: Relation<CustomObjectMetadata>;
|
||||
}
|
||||
|
||||
@ -1,3 +1,5 @@
|
||||
import { Relation } from 'src/engine/workspace-manager/workspace-sync-metadata/interfaces/relation.interface';
|
||||
|
||||
import { FeatureFlagKeys } from 'src/engine/core-modules/feature-flag/feature-flag.entity';
|
||||
import { FieldMetadataType } from 'src/engine/metadata-modules/field-metadata/field-metadata.entity';
|
||||
import { calendarChannelEventAssociationStandardFieldIds } from 'src/engine/workspace-manager/workspace-sync-metadata/constants/standard-field-ids';
|
||||
@ -30,7 +32,7 @@ export class CalendarChannelEventAssociationObjectMetadata extends BaseObjectMet
|
||||
icon: 'IconCalendar',
|
||||
joinColumn: 'calendarChannelId',
|
||||
})
|
||||
calendarChannel: CalendarEventObjectMetadata;
|
||||
calendarChannel: Relation<CalendarEventObjectMetadata>;
|
||||
|
||||
@FieldMetadata({
|
||||
standardId: calendarChannelEventAssociationStandardFieldIds.calendarEvent,
|
||||
@ -40,7 +42,7 @@ export class CalendarChannelEventAssociationObjectMetadata extends BaseObjectMet
|
||||
icon: 'IconCalendar',
|
||||
joinColumn: 'calendarEventId',
|
||||
})
|
||||
calendarEvent: CalendarEventObjectMetadata;
|
||||
calendarEvent: Relation<CalendarEventObjectMetadata>;
|
||||
|
||||
@FieldMetadata({
|
||||
standardId: calendarChannelEventAssociationStandardFieldIds.eventExternalId,
|
||||
|
||||
@ -1,3 +1,5 @@
|
||||
import { Relation } from 'src/engine/workspace-manager/workspace-sync-metadata/interfaces/relation.interface';
|
||||
|
||||
import {
|
||||
RelationMetadataType,
|
||||
RelationOnDeleteAction,
|
||||
@ -41,7 +43,7 @@ export class CalendarChannelObjectMetadata extends BaseObjectMetadata {
|
||||
icon: 'IconUserCircle',
|
||||
joinColumn: 'connectedAccountId',
|
||||
})
|
||||
connectedAccount: ConnectedAccountObjectMetadata;
|
||||
connectedAccount: Relation<ConnectedAccountObjectMetadata>;
|
||||
|
||||
@FieldMetadata({
|
||||
standardId: calendarChannelStandardFieldIds.handle,
|
||||
@ -119,5 +121,7 @@ export class CalendarChannelObjectMetadata extends BaseObjectMetadata {
|
||||
inverseSideTarget: () => CalendarChannelEventAssociationObjectMetadata,
|
||||
onDelete: RelationOnDeleteAction.CASCADE,
|
||||
})
|
||||
calendarChannelEventAssociations: CalendarChannelEventAssociationObjectMetadata[];
|
||||
calendarChannelEventAssociations: Relation<
|
||||
CalendarChannelEventAssociationObjectMetadata[]
|
||||
>;
|
||||
}
|
||||
|
||||
@ -1,3 +1,5 @@
|
||||
import { Relation } from 'src/engine/workspace-manager/workspace-sync-metadata/interfaces/relation.interface';
|
||||
|
||||
import { FieldMetadataType } from 'src/engine/metadata-modules/field-metadata/field-metadata.entity';
|
||||
import { calendarEventParticipantStandardFieldIds } from 'src/engine/workspace-manager/workspace-sync-metadata/constants/standard-field-ids';
|
||||
import { standardObjectIds } from 'src/engine/workspace-manager/workspace-sync-metadata/constants/standard-object-ids';
|
||||
@ -39,7 +41,7 @@ export class CalendarEventParticipantObjectMetadata extends BaseObjectMetadata {
|
||||
icon: 'IconCalendar',
|
||||
joinColumn: 'calendarEventId',
|
||||
})
|
||||
calendarEvent: CalendarEventObjectMetadata;
|
||||
calendarEvent: Relation<CalendarEventObjectMetadata>;
|
||||
|
||||
@FieldMetadata({
|
||||
standardId: calendarEventParticipantStandardFieldIds.handle,
|
||||
@ -114,7 +116,7 @@ export class CalendarEventParticipantObjectMetadata extends BaseObjectMetadata {
|
||||
joinColumn: 'personId',
|
||||
})
|
||||
@IsNullable()
|
||||
person: PersonObjectMetadata;
|
||||
person: Relation<PersonObjectMetadata>;
|
||||
|
||||
@FieldMetadata({
|
||||
standardId: calendarEventParticipantStandardFieldIds.workspaceMember,
|
||||
@ -125,5 +127,5 @@ export class CalendarEventParticipantObjectMetadata extends BaseObjectMetadata {
|
||||
joinColumn: 'workspaceMemberId',
|
||||
})
|
||||
@IsNullable()
|
||||
workspaceMember: WorkspaceMemberObjectMetadata;
|
||||
workspaceMember: Relation<WorkspaceMemberObjectMetadata>;
|
||||
}
|
||||
|
||||
@ -1,3 +1,5 @@
|
||||
import { Relation } from 'src/engine/workspace-manager/workspace-sync-metadata/interfaces/relation.interface';
|
||||
|
||||
import { RelationMetadata } from 'src/engine/workspace-manager/workspace-sync-metadata/decorators/relation-metadata.decorator';
|
||||
import { FeatureFlagKeys } from 'src/engine/core-modules/feature-flag/feature-flag.entity';
|
||||
import { FieldMetadataType } from 'src/engine/metadata-modules/field-metadata/field-metadata.entity';
|
||||
@ -168,7 +170,9 @@ export class CalendarEventObjectMetadata extends BaseObjectMetadata {
|
||||
@Gate({
|
||||
featureFlag: 'IS_CALENDAR_ENABLED',
|
||||
})
|
||||
calendarChannelEventAssociations: CalendarChannelEventAssociationObjectMetadata[];
|
||||
calendarChannelEventAssociations: Relation<
|
||||
CalendarChannelEventAssociationObjectMetadata[]
|
||||
>;
|
||||
|
||||
@FieldMetadata({
|
||||
standardId: calendarEventStandardFieldIds.calendarEventParticipants,
|
||||
@ -182,5 +186,5 @@ export class CalendarEventObjectMetadata extends BaseObjectMetadata {
|
||||
inverseSideTarget: () => CalendarEventParticipantObjectMetadata,
|
||||
onDelete: RelationOnDeleteAction.CASCADE,
|
||||
})
|
||||
calendarEventParticipants: CalendarEventParticipantObjectMetadata[];
|
||||
calendarEventParticipants: Relation<CalendarEventParticipantObjectMetadata[]>;
|
||||
}
|
||||
|
||||
@ -1,3 +1,5 @@
|
||||
import { Relation } from 'src/engine/workspace-manager/workspace-sync-metadata/interfaces/relation.interface';
|
||||
|
||||
import { CurrencyMetadata } from 'src/engine/metadata-modules/field-metadata/composite-types/currency.composite-type';
|
||||
import { LinkMetadata } from 'src/engine/metadata-modules/field-metadata/composite-types/link.composite-type';
|
||||
import { FieldMetadataType } from 'src/engine/metadata-modules/field-metadata/field-metadata.entity';
|
||||
@ -135,7 +137,7 @@ export class CompanyObjectMetadata extends BaseObjectMetadata {
|
||||
onDelete: RelationOnDeleteAction.SET_NULL,
|
||||
})
|
||||
@IsNullable()
|
||||
people: PersonObjectMetadata[];
|
||||
people: Relation<PersonObjectMetadata[]>;
|
||||
|
||||
@FieldMetadata({
|
||||
standardId: companyStandardFieldIds.accountOwner,
|
||||
@ -162,7 +164,7 @@ export class CompanyObjectMetadata extends BaseObjectMetadata {
|
||||
onDelete: RelationOnDeleteAction.CASCADE,
|
||||
})
|
||||
@IsNullable()
|
||||
activityTargets: ActivityTargetObjectMetadata[];
|
||||
activityTargets: Relation<ActivityTargetObjectMetadata[]>;
|
||||
|
||||
@FieldMetadata({
|
||||
standardId: companyStandardFieldIds.opportunities,
|
||||
@ -177,7 +179,7 @@ export class CompanyObjectMetadata extends BaseObjectMetadata {
|
||||
onDelete: RelationOnDeleteAction.SET_NULL,
|
||||
})
|
||||
@IsNullable()
|
||||
opportunities: OpportunityObjectMetadata[];
|
||||
opportunities: Relation<OpportunityObjectMetadata[]>;
|
||||
|
||||
@FieldMetadata({
|
||||
standardId: companyStandardFieldIds.favorites,
|
||||
@ -193,7 +195,7 @@ export class CompanyObjectMetadata extends BaseObjectMetadata {
|
||||
})
|
||||
@IsNullable()
|
||||
@IsSystem()
|
||||
favorites: FavoriteObjectMetadata[];
|
||||
favorites: Relation<FavoriteObjectMetadata[]>;
|
||||
|
||||
@FieldMetadata({
|
||||
standardId: companyStandardFieldIds.attachments,
|
||||
@ -208,7 +210,7 @@ export class CompanyObjectMetadata extends BaseObjectMetadata {
|
||||
onDelete: RelationOnDeleteAction.CASCADE,
|
||||
})
|
||||
@IsNullable()
|
||||
attachments: AttachmentObjectMetadata[];
|
||||
attachments: Relation<AttachmentObjectMetadata[]>;
|
||||
|
||||
@FieldMetadata({
|
||||
standardId: companyStandardFieldIds.events,
|
||||
@ -224,5 +226,5 @@ export class CompanyObjectMetadata extends BaseObjectMetadata {
|
||||
})
|
||||
@IsNullable()
|
||||
@IsSystem()
|
||||
events: EventObjectMetadata[];
|
||||
events: Relation<EventObjectMetadata[]>;
|
||||
}
|
||||
|
||||
@ -1,3 +1,5 @@
|
||||
import { Relation } from 'src/engine/workspace-manager/workspace-sync-metadata/interfaces/relation.interface';
|
||||
|
||||
import { FieldMetadataType } from 'src/engine/metadata-modules/field-metadata/field-metadata.entity';
|
||||
import { blocklistStandardFieldIds } from 'src/engine/workspace-manager/workspace-sync-metadata/constants/standard-field-ids';
|
||||
import { standardObjectIds } from 'src/engine/workspace-manager/workspace-sync-metadata/constants/standard-object-ids';
|
||||
@ -34,5 +36,5 @@ export class BlocklistObjectMetadata extends BaseObjectMetadata {
|
||||
icon: 'IconCircleUser',
|
||||
joinColumn: 'workspaceMemberId',
|
||||
})
|
||||
workspaceMember: WorkspaceMemberObjectMetadata;
|
||||
workspaceMember: Relation<WorkspaceMemberObjectMetadata>;
|
||||
}
|
||||
|
||||
@ -1,3 +1,5 @@
|
||||
import { Relation } from 'src/engine/workspace-manager/workspace-sync-metadata/interfaces/relation.interface';
|
||||
|
||||
import { FeatureFlagKeys } from 'src/engine/core-modules/feature-flag/feature-flag.entity';
|
||||
import { FieldMetadataType } from 'src/engine/metadata-modules/field-metadata/field-metadata.entity';
|
||||
import {
|
||||
@ -75,7 +77,7 @@ export class ConnectedAccountObjectMetadata extends BaseObjectMetadata {
|
||||
icon: 'IconUserCircle',
|
||||
joinColumn: 'accountOwnerId',
|
||||
})
|
||||
accountOwner: WorkspaceMemberObjectMetadata;
|
||||
accountOwner: Relation<WorkspaceMemberObjectMetadata>;
|
||||
|
||||
@FieldMetadata({
|
||||
standardId: connectedAccountStandardFieldIds.lastSyncHistoryId,
|
||||
@ -108,7 +110,7 @@ export class ConnectedAccountObjectMetadata extends BaseObjectMetadata {
|
||||
inverseSideTarget: () => MessageChannelObjectMetadata,
|
||||
onDelete: RelationOnDeleteAction.CASCADE,
|
||||
})
|
||||
messageChannels: MessageChannelObjectMetadata[];
|
||||
messageChannels: Relation<MessageChannelObjectMetadata[]>;
|
||||
|
||||
@FieldMetadata({
|
||||
standardId: connectedAccountStandardFieldIds.calendarChannels,
|
||||
@ -125,5 +127,5 @@ export class ConnectedAccountObjectMetadata extends BaseObjectMetadata {
|
||||
@Gate({
|
||||
featureFlag: FeatureFlagKeys.IsCalendarEnabled,
|
||||
})
|
||||
calendarChannels: CalendarChannelObjectMetadata[];
|
||||
calendarChannels: Relation<CalendarChannelObjectMetadata[]>;
|
||||
}
|
||||
|
||||
@ -1,3 +1,5 @@
|
||||
import { Relation } from 'src/engine/workspace-manager/workspace-sync-metadata/interfaces/relation.interface';
|
||||
|
||||
import { FieldMetadataType } from 'src/engine/metadata-modules/field-metadata/field-metadata.entity';
|
||||
import { eventStandardFieldIds } from 'src/engine/workspace-manager/workspace-sync-metadata/constants/standard-field-ids';
|
||||
import { standardObjectIds } from 'src/engine/workspace-manager/workspace-sync-metadata/constants/standard-object-ids';
|
||||
@ -53,7 +55,7 @@ export class EventObjectMetadata extends BaseObjectMetadata {
|
||||
joinColumn: 'workspaceMemberId',
|
||||
})
|
||||
@IsNullable()
|
||||
workspaceMember: WorkspaceMemberObjectMetadata;
|
||||
workspaceMember: Relation<WorkspaceMemberObjectMetadata>;
|
||||
|
||||
@FieldMetadata({
|
||||
standardId: eventStandardFieldIds.person,
|
||||
@ -64,7 +66,7 @@ export class EventObjectMetadata extends BaseObjectMetadata {
|
||||
joinColumn: 'personId',
|
||||
})
|
||||
@IsNullable()
|
||||
person: PersonObjectMetadata;
|
||||
person: Relation<PersonObjectMetadata>;
|
||||
|
||||
@FieldMetadata({
|
||||
standardId: eventStandardFieldIds.company,
|
||||
@ -75,7 +77,7 @@ export class EventObjectMetadata extends BaseObjectMetadata {
|
||||
joinColumn: 'companyId',
|
||||
})
|
||||
@IsNullable()
|
||||
company: CompanyObjectMetadata;
|
||||
company: Relation<CompanyObjectMetadata>;
|
||||
|
||||
@FieldMetadata({
|
||||
standardId: eventStandardFieldIds.opportunity,
|
||||
@ -86,7 +88,7 @@ export class EventObjectMetadata extends BaseObjectMetadata {
|
||||
joinColumn: 'opportunityId',
|
||||
})
|
||||
@IsNullable()
|
||||
opportunity: OpportunityObjectMetadata;
|
||||
opportunity: Relation<OpportunityObjectMetadata>;
|
||||
|
||||
@DynamicRelationFieldMetadata((oppositeObjectMetadata) => ({
|
||||
standardId: eventStandardFieldIds.custom,
|
||||
@ -96,5 +98,5 @@ export class EventObjectMetadata extends BaseObjectMetadata {
|
||||
joinColumn: `${oppositeObjectMetadata.nameSingular}Id`,
|
||||
icon: 'IconBuildingSkyscraper',
|
||||
}))
|
||||
custom: CustomObjectMetadata;
|
||||
custom: Relation<CustomObjectMetadata>;
|
||||
}
|
||||
|
||||
@ -1,3 +1,5 @@
|
||||
import { Relation } from 'src/engine/workspace-manager/workspace-sync-metadata/interfaces/relation.interface';
|
||||
|
||||
import { FieldMetadataType } from 'src/engine/metadata-modules/field-metadata/field-metadata.entity';
|
||||
import { favoriteStandardFieldIds } from 'src/engine/workspace-manager/workspace-sync-metadata/constants/standard-field-ids';
|
||||
import { standardObjectIds } from 'src/engine/workspace-manager/workspace-sync-metadata/constants/standard-object-ids';
|
||||
@ -42,7 +44,7 @@ export class FavoriteObjectMetadata extends BaseObjectMetadata {
|
||||
icon: 'IconCircleUser',
|
||||
joinColumn: 'workspaceMemberId',
|
||||
})
|
||||
workspaceMember: WorkspaceMemberObjectMetadata;
|
||||
workspaceMember: Relation<WorkspaceMemberObjectMetadata>;
|
||||
|
||||
@FieldMetadata({
|
||||
standardId: favoriteStandardFieldIds.person,
|
||||
@ -53,7 +55,7 @@ export class FavoriteObjectMetadata extends BaseObjectMetadata {
|
||||
joinColumn: 'personId',
|
||||
})
|
||||
@IsNullable()
|
||||
person: PersonObjectMetadata;
|
||||
person: Relation<PersonObjectMetadata>;
|
||||
|
||||
@FieldMetadata({
|
||||
standardId: favoriteStandardFieldIds.company,
|
||||
@ -64,7 +66,7 @@ export class FavoriteObjectMetadata extends BaseObjectMetadata {
|
||||
joinColumn: 'companyId',
|
||||
})
|
||||
@IsNullable()
|
||||
company: CompanyObjectMetadata;
|
||||
company: Relation<CompanyObjectMetadata>;
|
||||
|
||||
@FieldMetadata({
|
||||
standardId: favoriteStandardFieldIds.opportunity,
|
||||
@ -75,7 +77,7 @@ export class FavoriteObjectMetadata extends BaseObjectMetadata {
|
||||
joinColumn: 'opportunityId',
|
||||
})
|
||||
@IsNullable()
|
||||
opportunity: OpportunityObjectMetadata;
|
||||
opportunity: Relation<OpportunityObjectMetadata>;
|
||||
|
||||
@DynamicRelationFieldMetadata((oppositeObjectMetadata) => ({
|
||||
standardId: favoriteStandardFieldIds.custom,
|
||||
@ -85,5 +87,5 @@ export class FavoriteObjectMetadata extends BaseObjectMetadata {
|
||||
joinColumn: `${oppositeObjectMetadata.nameSingular}Id`,
|
||||
icon: 'IconBuildingSkyscraper',
|
||||
}))
|
||||
custom: CustomObjectMetadata;
|
||||
custom: Relation<CustomObjectMetadata>;
|
||||
}
|
||||
|
||||
@ -1,3 +1,5 @@
|
||||
import { Relation } from 'src/engine/workspace-manager/workspace-sync-metadata/interfaces/relation.interface';
|
||||
|
||||
import { FieldMetadataType } from 'src/engine/metadata-modules/field-metadata/field-metadata.entity';
|
||||
import { messageChannelMessageAssociationStandardFieldIds } from 'src/engine/workspace-manager/workspace-sync-metadata/constants/standard-field-ids';
|
||||
import { standardObjectIds } from 'src/engine/workspace-manager/workspace-sync-metadata/constants/standard-object-ids';
|
||||
@ -29,7 +31,7 @@ export class MessageChannelMessageAssociationObjectMetadata extends BaseObjectMe
|
||||
joinColumn: 'messageChannelId',
|
||||
})
|
||||
@IsNullable()
|
||||
messageChannel: MessageChannelObjectMetadata;
|
||||
messageChannel: Relation<MessageChannelObjectMetadata>;
|
||||
|
||||
@FieldMetadata({
|
||||
standardId: messageChannelMessageAssociationStandardFieldIds.message,
|
||||
@ -40,7 +42,7 @@ export class MessageChannelMessageAssociationObjectMetadata extends BaseObjectMe
|
||||
joinColumn: 'messageId',
|
||||
})
|
||||
@IsNullable()
|
||||
message: MessageObjectMetadata;
|
||||
message: Relation<MessageObjectMetadata>;
|
||||
|
||||
@FieldMetadata({
|
||||
standardId:
|
||||
@ -62,7 +64,7 @@ export class MessageChannelMessageAssociationObjectMetadata extends BaseObjectMe
|
||||
joinColumn: 'messageThreadId',
|
||||
})
|
||||
@IsNullable()
|
||||
messageThread: MessageThreadObjectMetadata;
|
||||
messageThread: Relation<MessageThreadObjectMetadata>;
|
||||
|
||||
@FieldMetadata({
|
||||
standardId:
|
||||
|
||||
@ -1,3 +1,5 @@
|
||||
import { Relation } from 'src/engine/workspace-manager/workspace-sync-metadata/interfaces/relation.interface';
|
||||
|
||||
import { FieldMetadataType } from 'src/engine/metadata-modules/field-metadata/field-metadata.entity';
|
||||
import {
|
||||
RelationMetadataType,
|
||||
@ -89,7 +91,7 @@ export class MessageChannelObjectMetadata extends BaseObjectMetadata {
|
||||
icon: 'IconUserCircle',
|
||||
joinColumn: 'connectedAccountId',
|
||||
})
|
||||
connectedAccount: ConnectedAccountObjectMetadata;
|
||||
connectedAccount: Relation<ConnectedAccountObjectMetadata>;
|
||||
|
||||
@FieldMetadata({
|
||||
standardId: messageChannelStandardFieldIds.type,
|
||||
@ -139,7 +141,9 @@ export class MessageChannelObjectMetadata extends BaseObjectMetadata {
|
||||
onDelete: RelationOnDeleteAction.CASCADE,
|
||||
})
|
||||
@IsNullable()
|
||||
messageChannelMessageAssociations: MessageChannelMessageAssociationObjectMetadata[];
|
||||
messageChannelMessageAssociations: Relation<
|
||||
MessageChannelMessageAssociationObjectMetadata[]
|
||||
>;
|
||||
|
||||
@FieldMetadata({
|
||||
standardId: messageChannelStandardFieldIds.syncCursor,
|
||||
|
||||
@ -1,3 +1,5 @@
|
||||
import { Relation } from 'src/engine/workspace-manager/workspace-sync-metadata/interfaces/relation.interface';
|
||||
|
||||
import { FieldMetadataType } from 'src/engine/metadata-modules/field-metadata/field-metadata.entity';
|
||||
import { messageParticipantStandardFieldIds } from 'src/engine/workspace-manager/workspace-sync-metadata/constants/standard-field-ids';
|
||||
import { standardObjectIds } from 'src/engine/workspace-manager/workspace-sync-metadata/constants/standard-object-ids';
|
||||
@ -28,7 +30,7 @@ export class MessageParticipantObjectMetadata extends BaseObjectMetadata {
|
||||
icon: 'IconMessage',
|
||||
joinColumn: 'messageId',
|
||||
})
|
||||
message: MessageObjectMetadata;
|
||||
message: Relation<MessageObjectMetadata>;
|
||||
|
||||
@FieldMetadata({
|
||||
standardId: messageParticipantStandardFieldIds.role,
|
||||
@ -73,7 +75,7 @@ export class MessageParticipantObjectMetadata extends BaseObjectMetadata {
|
||||
joinColumn: 'personId',
|
||||
})
|
||||
@IsNullable()
|
||||
person: PersonObjectMetadata;
|
||||
person: Relation<PersonObjectMetadata>;
|
||||
|
||||
@FieldMetadata({
|
||||
standardId: messageParticipantStandardFieldIds.workspaceMember,
|
||||
@ -84,5 +86,5 @@ export class MessageParticipantObjectMetadata extends BaseObjectMetadata {
|
||||
joinColumn: 'workspaceMemberId',
|
||||
})
|
||||
@IsNullable()
|
||||
workspaceMember: WorkspaceMemberObjectMetadata;
|
||||
workspaceMember: Relation<WorkspaceMemberObjectMetadata>;
|
||||
}
|
||||
|
||||
@ -1,3 +1,5 @@
|
||||
import { Relation } from 'src/engine/workspace-manager/workspace-sync-metadata/interfaces/relation.interface';
|
||||
|
||||
import { FieldMetadataType } from 'src/engine/metadata-modules/field-metadata/field-metadata.entity';
|
||||
import {
|
||||
RelationMetadataType,
|
||||
@ -37,7 +39,7 @@ export class MessageThreadObjectMetadata extends BaseObjectMetadata {
|
||||
onDelete: RelationOnDeleteAction.CASCADE,
|
||||
})
|
||||
@IsNullable()
|
||||
messages: MessageObjectMetadata[];
|
||||
messages: Relation<MessageObjectMetadata[]>;
|
||||
|
||||
@FieldMetadata({
|
||||
standardId: messageThreadStandardFieldIds.messageChannelMessageAssociations,
|
||||
@ -52,5 +54,7 @@ export class MessageThreadObjectMetadata extends BaseObjectMetadata {
|
||||
onDelete: RelationOnDeleteAction.RESTRICT,
|
||||
})
|
||||
@IsNullable()
|
||||
messageChannelMessageAssociations: MessageChannelMessageAssociationObjectMetadata[];
|
||||
messageChannelMessageAssociations: Relation<
|
||||
MessageChannelMessageAssociationObjectMetadata[]
|
||||
>;
|
||||
}
|
||||
|
||||
@ -1,3 +1,5 @@
|
||||
import { Relation } from 'src/engine/workspace-manager/workspace-sync-metadata/interfaces/relation.interface';
|
||||
|
||||
import { FieldMetadataType } from 'src/engine/metadata-modules/field-metadata/field-metadata.entity';
|
||||
import {
|
||||
RelationMetadataType,
|
||||
@ -43,7 +45,7 @@ export class MessageObjectMetadata extends BaseObjectMetadata {
|
||||
joinColumn: 'messageThreadId',
|
||||
})
|
||||
@IsNullable()
|
||||
messageThread: MessageThreadObjectMetadata;
|
||||
messageThread: Relation<MessageThreadObjectMetadata>;
|
||||
|
||||
@FieldMetadata({
|
||||
standardId: messageStandardFieldIds.direction,
|
||||
@ -101,7 +103,7 @@ export class MessageObjectMetadata extends BaseObjectMetadata {
|
||||
onDelete: RelationOnDeleteAction.CASCADE,
|
||||
})
|
||||
@IsNullable()
|
||||
messageParticipants: MessageParticipantObjectMetadata[];
|
||||
messageParticipants: Relation<MessageParticipantObjectMetadata[]>;
|
||||
|
||||
@FieldMetadata({
|
||||
standardId: messageStandardFieldIds.messageChannelMessageAssociations,
|
||||
@ -116,5 +118,7 @@ export class MessageObjectMetadata extends BaseObjectMetadata {
|
||||
onDelete: RelationOnDeleteAction.CASCADE,
|
||||
})
|
||||
@IsNullable()
|
||||
messageChannelMessageAssociations: MessageChannelMessageAssociationObjectMetadata[];
|
||||
messageChannelMessageAssociations: Relation<
|
||||
MessageChannelMessageAssociationObjectMetadata[]
|
||||
>;
|
||||
}
|
||||
|
||||
@ -1,3 +1,5 @@
|
||||
import { Relation } from 'src/engine/workspace-manager/workspace-sync-metadata/interfaces/relation.interface';
|
||||
|
||||
import { CurrencyMetadata } from 'src/engine/metadata-modules/field-metadata/composite-types/currency.composite-type';
|
||||
import { FieldMetadataType } from 'src/engine/metadata-modules/field-metadata/field-metadata.entity';
|
||||
import {
|
||||
@ -109,7 +111,7 @@ export class OpportunityObjectMetadata extends BaseObjectMetadata {
|
||||
joinColumn: 'pointOfContactId',
|
||||
})
|
||||
@IsNullable()
|
||||
pointOfContact: PersonObjectMetadata;
|
||||
pointOfContact: Relation<PersonObjectMetadata>;
|
||||
|
||||
@FieldMetadata({
|
||||
standardId: opportunityStandardFieldIds.company,
|
||||
@ -120,7 +122,7 @@ export class OpportunityObjectMetadata extends BaseObjectMetadata {
|
||||
joinColumn: 'companyId',
|
||||
})
|
||||
@IsNullable()
|
||||
company: CompanyObjectMetadata;
|
||||
company: Relation<CompanyObjectMetadata>;
|
||||
|
||||
@FieldMetadata({
|
||||
standardId: opportunityStandardFieldIds.favorites,
|
||||
@ -136,7 +138,7 @@ export class OpportunityObjectMetadata extends BaseObjectMetadata {
|
||||
})
|
||||
@IsNullable()
|
||||
@IsSystem()
|
||||
favorites: FavoriteObjectMetadata[];
|
||||
favorites: Relation<FavoriteObjectMetadata[]>;
|
||||
|
||||
@FieldMetadata({
|
||||
standardId: opportunityStandardFieldIds.activityTargets,
|
||||
@ -151,7 +153,7 @@ export class OpportunityObjectMetadata extends BaseObjectMetadata {
|
||||
onDelete: RelationOnDeleteAction.CASCADE,
|
||||
})
|
||||
@IsNullable()
|
||||
activityTargets: ActivityTargetObjectMetadata[];
|
||||
activityTargets: Relation<ActivityTargetObjectMetadata[]>;
|
||||
|
||||
@FieldMetadata({
|
||||
standardId: opportunityStandardFieldIds.attachments,
|
||||
@ -166,7 +168,7 @@ export class OpportunityObjectMetadata extends BaseObjectMetadata {
|
||||
onDelete: RelationOnDeleteAction.CASCADE,
|
||||
})
|
||||
@IsNullable()
|
||||
attachments: AttachmentObjectMetadata[];
|
||||
attachments: Relation<AttachmentObjectMetadata[]>;
|
||||
|
||||
@FieldMetadata({
|
||||
standardId: opportunityStandardFieldIds.events,
|
||||
@ -181,5 +183,5 @@ export class OpportunityObjectMetadata extends BaseObjectMetadata {
|
||||
onDelete: RelationOnDeleteAction.SET_NULL,
|
||||
})
|
||||
@IsNullable()
|
||||
events: EventObjectMetadata[];
|
||||
events: Relation<EventObjectMetadata[]>;
|
||||
}
|
||||
|
||||
@ -1,3 +1,5 @@
|
||||
import { Relation } from 'src/engine/workspace-manager/workspace-sync-metadata/interfaces/relation.interface';
|
||||
|
||||
import { FullNameMetadata } from 'src/engine/metadata-modules/field-metadata/composite-types/full-name.composite-type';
|
||||
import { LinkMetadata } from 'src/engine/metadata-modules/field-metadata/composite-types/link.composite-type';
|
||||
import { FieldMetadataType } from 'src/engine/metadata-modules/field-metadata/field-metadata.entity';
|
||||
@ -129,7 +131,7 @@ export class PersonObjectMetadata extends BaseObjectMetadata {
|
||||
joinColumn: 'companyId',
|
||||
})
|
||||
@IsNullable()
|
||||
company: CompanyObjectMetadata;
|
||||
company: Relation<CompanyObjectMetadata>;
|
||||
|
||||
@FieldMetadata({
|
||||
standardId: personStandardFieldIds.pointOfContactForOpportunities,
|
||||
@ -144,7 +146,7 @@ export class PersonObjectMetadata extends BaseObjectMetadata {
|
||||
inverseSideFieldKey: 'pointOfContact',
|
||||
onDelete: RelationOnDeleteAction.SET_NULL,
|
||||
})
|
||||
pointOfContactForOpportunities: OpportunityObjectMetadata[];
|
||||
pointOfContactForOpportunities: Relation<OpportunityObjectMetadata[]>;
|
||||
|
||||
@FieldMetadata({
|
||||
standardId: personStandardFieldIds.activityTargets,
|
||||
@ -158,7 +160,7 @@ export class PersonObjectMetadata extends BaseObjectMetadata {
|
||||
inverseSideTarget: () => ActivityTargetObjectMetadata,
|
||||
onDelete: RelationOnDeleteAction.CASCADE,
|
||||
})
|
||||
activityTargets: ActivityTargetObjectMetadata[];
|
||||
activityTargets: Relation<ActivityTargetObjectMetadata[]>;
|
||||
|
||||
@FieldMetadata({
|
||||
standardId: personStandardFieldIds.favorites,
|
||||
@ -173,7 +175,7 @@ export class PersonObjectMetadata extends BaseObjectMetadata {
|
||||
onDelete: RelationOnDeleteAction.CASCADE,
|
||||
})
|
||||
@IsSystem()
|
||||
favorites: FavoriteObjectMetadata[];
|
||||
favorites: Relation<FavoriteObjectMetadata[]>;
|
||||
|
||||
@FieldMetadata({
|
||||
standardId: personStandardFieldIds.attachments,
|
||||
@ -187,7 +189,7 @@ export class PersonObjectMetadata extends BaseObjectMetadata {
|
||||
inverseSideTarget: () => AttachmentObjectMetadata,
|
||||
onDelete: RelationOnDeleteAction.CASCADE,
|
||||
})
|
||||
attachments: AttachmentObjectMetadata[];
|
||||
attachments: Relation<AttachmentObjectMetadata[]>;
|
||||
|
||||
@FieldMetadata({
|
||||
standardId: personStandardFieldIds.messageParticipants,
|
||||
@ -203,7 +205,7 @@ export class PersonObjectMetadata extends BaseObjectMetadata {
|
||||
onDelete: RelationOnDeleteAction.SET_NULL,
|
||||
})
|
||||
@IsSystem()
|
||||
messageParticipants: MessageParticipantObjectMetadata[];
|
||||
messageParticipants: Relation<MessageParticipantObjectMetadata[]>;
|
||||
|
||||
@FieldMetadata({
|
||||
standardId: personStandardFieldIds.calendarEventParticipants,
|
||||
@ -221,7 +223,7 @@ export class PersonObjectMetadata extends BaseObjectMetadata {
|
||||
featureFlag: 'IS_CALENDAR_ENABLED',
|
||||
})
|
||||
@IsSystem()
|
||||
calendarEventParticipants: CalendarEventParticipantObjectMetadata[];
|
||||
calendarEventParticipants: Relation<CalendarEventParticipantObjectMetadata[]>;
|
||||
|
||||
@FieldMetadata({
|
||||
standardId: personStandardFieldIds.events,
|
||||
@ -237,5 +239,5 @@ export class PersonObjectMetadata extends BaseObjectMetadata {
|
||||
})
|
||||
@IsNullable()
|
||||
@IsSystem()
|
||||
events: EventObjectMetadata[];
|
||||
events: Relation<EventObjectMetadata[]>;
|
||||
}
|
||||
|
||||
@ -1,3 +1,5 @@
|
||||
import { Relation } from 'src/engine/workspace-manager/workspace-sync-metadata/interfaces/relation.interface';
|
||||
|
||||
import { FieldMetadataType } from 'src/engine/metadata-modules/field-metadata/field-metadata.entity';
|
||||
import { viewFilterStandardFieldIds } from 'src/engine/workspace-manager/workspace-sync-metadata/constants/standard-field-ids';
|
||||
import { standardObjectIds } from 'src/engine/workspace-manager/workspace-sync-metadata/constants/standard-object-ids';
|
||||
@ -60,5 +62,5 @@ export class ViewFilterObjectMetadata extends BaseObjectMetadata {
|
||||
joinColumn: 'viewId',
|
||||
})
|
||||
@IsNullable()
|
||||
view: ViewObjectMetadata;
|
||||
view: Relation<ViewObjectMetadata>;
|
||||
}
|
||||
|
||||
@ -1,3 +1,5 @@
|
||||
import { Relation } from 'src/engine/workspace-manager/workspace-sync-metadata/interfaces/relation.interface';
|
||||
|
||||
import { FieldMetadataType } from 'src/engine/metadata-modules/field-metadata/field-metadata.entity';
|
||||
import { viewSortStandardFieldIds } from 'src/engine/workspace-manager/workspace-sync-metadata/constants/standard-field-ids';
|
||||
import { standardObjectIds } from 'src/engine/workspace-manager/workspace-sync-metadata/constants/standard-object-ids';
|
||||
@ -45,5 +47,5 @@ export class ViewSortObjectMetadata extends BaseObjectMetadata {
|
||||
joinColumn: 'viewId',
|
||||
})
|
||||
@IsNullable()
|
||||
view: ViewObjectMetadata;
|
||||
view: Relation<ViewObjectMetadata>;
|
||||
}
|
||||
|
||||
@ -1,3 +1,5 @@
|
||||
import { Relation } from 'src/engine/workspace-manager/workspace-sync-metadata/interfaces/relation.interface';
|
||||
|
||||
import { FieldMetadataType } from 'src/engine/metadata-modules/field-metadata/field-metadata.entity';
|
||||
import {
|
||||
RelationMetadataType,
|
||||
@ -108,7 +110,7 @@ export class ViewObjectMetadata extends BaseObjectMetadata {
|
||||
onDelete: RelationOnDeleteAction.SET_NULL,
|
||||
})
|
||||
@IsNullable()
|
||||
viewFields: ViewFieldObjectMetadata[];
|
||||
viewFields: Relation<ViewFieldObjectMetadata[]>;
|
||||
|
||||
@FieldMetadata({
|
||||
standardId: viewStandardFieldIds.viewFilters,
|
||||
@ -123,7 +125,7 @@ export class ViewObjectMetadata extends BaseObjectMetadata {
|
||||
onDelete: RelationOnDeleteAction.SET_NULL,
|
||||
})
|
||||
@IsNullable()
|
||||
viewFilters: ViewFilterObjectMetadata[];
|
||||
viewFilters: Relation<ViewFilterObjectMetadata[]>;
|
||||
|
||||
@FieldMetadata({
|
||||
standardId: viewStandardFieldIds.viewSorts,
|
||||
@ -138,5 +140,5 @@ export class ViewObjectMetadata extends BaseObjectMetadata {
|
||||
onDelete: RelationOnDeleteAction.SET_NULL,
|
||||
})
|
||||
@IsNullable()
|
||||
viewSorts: ViewSortObjectMetadata[];
|
||||
viewSorts: Relation<ViewSortObjectMetadata[]>;
|
||||
}
|
||||
|
||||
@ -1,3 +1,5 @@
|
||||
import { Relation } from 'src/engine/workspace-manager/workspace-sync-metadata/interfaces/relation.interface';
|
||||
|
||||
import { FullNameMetadata } from 'src/engine/metadata-modules/field-metadata/composite-types/full-name.composite-type';
|
||||
import { FieldMetadataType } from 'src/engine/metadata-modules/field-metadata/field-metadata.entity';
|
||||
import {
|
||||
@ -104,7 +106,7 @@ export class WorkspaceMemberObjectMetadata extends BaseObjectMetadata {
|
||||
inverseSideFieldKey: 'author',
|
||||
onDelete: RelationOnDeleteAction.SET_NULL,
|
||||
})
|
||||
authoredActivities: ActivityObjectMetadata[];
|
||||
authoredActivities: Relation<ActivityObjectMetadata[]>;
|
||||
|
||||
@FieldMetadata({
|
||||
standardId: workspaceMemberStandardFieldIds.assignedActivities,
|
||||
@ -119,7 +121,7 @@ export class WorkspaceMemberObjectMetadata extends BaseObjectMetadata {
|
||||
inverseSideFieldKey: 'assignee',
|
||||
onDelete: RelationOnDeleteAction.SET_NULL,
|
||||
})
|
||||
assignedActivities: ActivityObjectMetadata[];
|
||||
assignedActivities: Relation<ActivityObjectMetadata[]>;
|
||||
|
||||
@FieldMetadata({
|
||||
standardId: workspaceMemberStandardFieldIds.favorites,
|
||||
@ -133,7 +135,7 @@ export class WorkspaceMemberObjectMetadata extends BaseObjectMetadata {
|
||||
inverseSideTarget: () => FavoriteObjectMetadata,
|
||||
onDelete: RelationOnDeleteAction.CASCADE,
|
||||
})
|
||||
favorites: FavoriteObjectMetadata[];
|
||||
favorites: Relation<FavoriteObjectMetadata[]>;
|
||||
|
||||
@FieldMetadata({
|
||||
standardId: workspaceMemberStandardFieldIds.accountOwnerForCompanies,
|
||||
@ -148,7 +150,7 @@ export class WorkspaceMemberObjectMetadata extends BaseObjectMetadata {
|
||||
inverseSideFieldKey: 'accountOwner',
|
||||
onDelete: RelationOnDeleteAction.SET_NULL,
|
||||
})
|
||||
accountOwnerForCompanies: CompanyObjectMetadata[];
|
||||
accountOwnerForCompanies: Relation<CompanyObjectMetadata[]>;
|
||||
|
||||
@FieldMetadata({
|
||||
standardId: workspaceMemberStandardFieldIds.authoredAttachments,
|
||||
@ -163,7 +165,7 @@ export class WorkspaceMemberObjectMetadata extends BaseObjectMetadata {
|
||||
inverseSideFieldKey: 'author',
|
||||
onDelete: RelationOnDeleteAction.SET_NULL,
|
||||
})
|
||||
authoredAttachments: AttachmentObjectMetadata[];
|
||||
authoredAttachments: Relation<AttachmentObjectMetadata[]>;
|
||||
|
||||
@FieldMetadata({
|
||||
standardId: workspaceMemberStandardFieldIds.authoredComments,
|
||||
@ -178,7 +180,7 @@ export class WorkspaceMemberObjectMetadata extends BaseObjectMetadata {
|
||||
inverseSideFieldKey: 'author',
|
||||
onDelete: RelationOnDeleteAction.SET_NULL,
|
||||
})
|
||||
authoredComments: CommentObjectMetadata[];
|
||||
authoredComments: Relation<CommentObjectMetadata[]>;
|
||||
|
||||
@FieldMetadata({
|
||||
standardId: workspaceMemberStandardFieldIds.connectedAccounts,
|
||||
@ -193,7 +195,7 @@ export class WorkspaceMemberObjectMetadata extends BaseObjectMetadata {
|
||||
inverseSideFieldKey: 'accountOwner',
|
||||
onDelete: RelationOnDeleteAction.CASCADE,
|
||||
})
|
||||
connectedAccounts: ConnectedAccountObjectMetadata[];
|
||||
connectedAccounts: Relation<ConnectedAccountObjectMetadata[]>;
|
||||
|
||||
@FieldMetadata({
|
||||
standardId: workspaceMemberStandardFieldIds.messageParticipants,
|
||||
@ -208,7 +210,7 @@ export class WorkspaceMemberObjectMetadata extends BaseObjectMetadata {
|
||||
inverseSideFieldKey: 'workspaceMember',
|
||||
onDelete: RelationOnDeleteAction.SET_NULL,
|
||||
})
|
||||
messageParticipants: MessageParticipantObjectMetadata[];
|
||||
messageParticipants: Relation<MessageParticipantObjectMetadata[]>;
|
||||
|
||||
@FieldMetadata({
|
||||
standardId: workspaceMemberStandardFieldIds.blocklist,
|
||||
@ -223,7 +225,7 @@ export class WorkspaceMemberObjectMetadata extends BaseObjectMetadata {
|
||||
inverseSideFieldKey: 'workspaceMember',
|
||||
onDelete: RelationOnDeleteAction.SET_NULL,
|
||||
})
|
||||
blocklist: BlocklistObjectMetadata[];
|
||||
blocklist: Relation<BlocklistObjectMetadata[]>;
|
||||
|
||||
@FieldMetadata({
|
||||
standardId: workspaceMemberStandardFieldIds.calendarEventParticipants,
|
||||
@ -241,7 +243,7 @@ export class WorkspaceMemberObjectMetadata extends BaseObjectMetadata {
|
||||
@Gate({
|
||||
featureFlag: 'IS_CALENDAR_ENABLED',
|
||||
})
|
||||
calendarEventParticipants: CalendarEventParticipantObjectMetadata[];
|
||||
calendarEventParticipants: Relation<CalendarEventParticipantObjectMetadata[]>;
|
||||
|
||||
@FieldMetadata({
|
||||
standardId: workspaceMemberStandardFieldIds.events,
|
||||
@ -257,5 +259,5 @@ export class WorkspaceMemberObjectMetadata extends BaseObjectMetadata {
|
||||
})
|
||||
@IsNullable()
|
||||
@IsSystem()
|
||||
events: EventObjectMetadata[];
|
||||
events: Relation<EventObjectMetadata[]>;
|
||||
}
|
||||
|
||||
@ -20,10 +20,16 @@ export function generateFrontConfig(): void {
|
||||
)};`;
|
||||
|
||||
const distPath = path.join(__dirname, '../..', 'front');
|
||||
const filePath = path.join(distPath, 'env-config.js');
|
||||
|
||||
if (!fs.existsSync(distPath)) {
|
||||
fs.mkdirSync(distPath, { recursive: true });
|
||||
}
|
||||
|
||||
fs.writeFileSync(path.join(distPath, 'env-config.js'), configString, 'utf8');
|
||||
if (
|
||||
!fs.existsSync(filePath) ||
|
||||
fs.readFileSync(filePath, 'utf8') !== configString
|
||||
) {
|
||||
fs.writeFileSync(filePath, configString, 'utf8');
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user