import { Message } from '@node-ts/bus-messages' import { Logger } from '@node-ts/logger-core' import { WorkflowData, WorkflowDataConstructor, WorkflowStatus } from '../workflow-data' import { Persistence } from '../persistence' import { WorkflowHandlerFn } from './workflow-handler-fn' import { WorkflowHandlerProxy } from './workflow-handler-proxy' import * as uuid from 'uuid' export class StartedByProxy extends WorkflowHandlerProxy { constructor ( workflowDataConstructor: WorkflowDataConstructor, handler: WorkflowHandlerFn, persistence: Persistence, logger: Logger ) { super(handler, workflowDataConstructor, persistence, logger) } async getWorkflowData (): Promise { const data = new this.workflowDataConstructor() data.$status = WorkflowStatus.Running data.$workflowId = uuid.v4() return [data] } }