Signed-off-by: Andrey Sobolev <haiodo@gmail.com>
This commit is contained in:
Andrey Sobolev
2023-02-15 09:14:20 +06:00
committed by GitHub
parent aa8530d678
commit 199da5077a
71 changed files with 888 additions and 312 deletions
+24 -3
View File
@@ -18,16 +18,25 @@ import { Model, Builder } from '@hcengineering/model'
import type { Resource } from '@hcengineering/platform'
import { TClass, TDoc } from '@hcengineering/model-core'
import type { ObjectDDParticipant, Trigger, TriggerFunc } from '@hcengineering/server-core'
import type {
AsyncTrigger,
ObjectDDParticipant,
Trigger,
TriggerFunc,
AsyncTriggerState,
AsyncTriggerFunc
} from '@hcengineering/server-core'
import core, {
Class,
Doc,
DocumentQuery,
DOMAIN_DOC_INDEX_STATE,
DOMAIN_MODEL,
FindOptions,
FindResult,
Hierarchy,
Ref
Ref,
TxCUD
} from '@hcengineering/core'
import serverCore from '@hcengineering/server-core'
@@ -36,6 +45,18 @@ export class TTrigger extends TDoc implements Trigger {
trigger!: Resource<TriggerFunc>
}
@Model(serverCore.class.AsyncTrigger, core.class.Doc, DOMAIN_MODEL)
export class TAsyncTrigger extends TDoc implements AsyncTrigger {
trigger!: Resource<AsyncTriggerFunc>
classes!: Ref<Class<Doc>>[]
}
@Model(serverCore.class.AsyncTriggerState, core.class.Doc, DOMAIN_DOC_INDEX_STATE)
export class TAsyncTriggerState extends TDoc implements AsyncTriggerState {
tx!: TxCUD<Doc>
message!: string
}
@Model(serverCore.mixin.ObjectDDParticipant, core.class.Class)
export class TObjectDDParticipant extends TClass implements ObjectDDParticipant {
collectDocs!: Resource<
@@ -52,5 +73,5 @@ export class TObjectDDParticipant extends TClass implements ObjectDDParticipant
}
export function createModel (builder: Builder): void {
builder.createModel(TTrigger, TObjectDDParticipant)
builder.createModel(TTrigger, TObjectDDParticipant, TAsyncTriggerState, TAsyncTrigger)
}