Add events on Custom objects (#4625)

This commit is contained in:
Charles Bochet
2024-03-22 20:02:00 +01:00
committed by GitHub
parent 96cad2accd
commit 161137e87a
9 changed files with 152 additions and 28 deletions

View File

@ -298,4 +298,5 @@ export const customObjectStandardFieldIds = {
activityTargets: '20202020-7f42-40ae-b96c-c8a61acc83bf',
favorites: '20202020-a4a7-4686-b296-1c6c3482ee21',
attachments: '20202020-8d59-46ca-b7b2-73d167712134',
events: '20202020-a508-4334-9724-5c2bf1b05998',
};

View File

@ -13,6 +13,7 @@ import { RelationMetadata } from 'src/engine/workspace-manager/workspace-sync-me
import { FavoriteObjectMetadata } from 'src/modules/favorite/standard-objects/favorite.object-metadata';
import { AttachmentObjectMetadata } from 'src/modules/attachment/standard-objects/attachment.object-metadata';
import { customObjectStandardFieldIds } from 'src/engine/workspace-manager/workspace-sync-metadata/constants/standard-field-ids';
import { EventObjectMetadata } from 'src/modules/event/standard-objects/event.object-metadata';
@BaseCustomObjectMetadata()
export class CustomObjectMetadata extends BaseObjectMetadata {
@ -85,4 +86,20 @@ export class CustomObjectMetadata extends BaseObjectMetadata {
})
@IsNullable()
attachments: AttachmentObjectMetadata[];
@FieldMetadata({
standardId: customObjectStandardFieldIds.events,
type: FieldMetadataType.RELATION,
label: 'Events',
description: (objectMetadata) =>
`Events tied to the ${objectMetadata.labelSingular}`,
icon: 'IconJson',
})
@RelationMetadata({
type: RelationMetadataType.ONE_TO_MANY,
inverseSideTarget: () => AttachmentObjectMetadata,
onDelete: RelationOnDeleteAction.CASCADE,
})
@IsNullable()
events: EventObjectMetadata[];
}