@webiny/tasks 0.0.0-unstable.b9b64acb6d → 0.0.0-unstable.c27f4d8a31
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/crud/crud.tasks.js +4 -4
- package/crud/crud.tasks.js.map +1 -1
- package/decorators/RunnableTaskDecorator.d.ts +1 -1
- package/events/TaskAfterCreateEvent.js +2 -2
- package/events/TaskAfterCreateEvent.js.map +1 -1
- package/events/TaskAfterDeleteEvent.js +2 -2
- package/events/TaskAfterDeleteEvent.js.map +1 -1
- package/events/TaskAfterUpdateEvent.js +2 -2
- package/events/TaskAfterUpdateEvent.js.map +1 -1
- package/events/TaskBeforeCreateEvent.js +2 -2
- package/events/TaskBeforeCreateEvent.js.map +1 -1
- package/events/TaskBeforeDeleteEvent.js +2 -2
- package/events/TaskBeforeDeleteEvent.js.map +1 -1
- package/events/TaskBeforeUpdateEvent.js +2 -2
- package/events/TaskBeforeUpdateEvent.js.map +1 -1
- package/events/abstractions.d.ts +12 -12
- package/events/abstractions.js +6 -6
- package/events/abstractions.js.map +1 -1
- package/package.json +16 -16
package/crud/crud.tasks.js
CHANGED
|
@@ -54,13 +54,13 @@ const convertToLog = entry => {
|
|
|
54
54
|
};
|
|
55
55
|
const getZodSchema = schema => {
|
|
56
56
|
if (!schema) {
|
|
57
|
-
return zod.
|
|
57
|
+
return zod.looseObject({});
|
|
58
58
|
} else if (schema instanceof zod.ZodObject) {
|
|
59
|
-
return schema.
|
|
60
|
-
} else if (schema instanceof zod.
|
|
59
|
+
return schema.loose();
|
|
60
|
+
} else if (schema instanceof zod.ZodType) {
|
|
61
61
|
return schema;
|
|
62
62
|
}
|
|
63
|
-
return zod.
|
|
63
|
+
return zod.looseObject(schema);
|
|
64
64
|
};
|
|
65
65
|
const validateTaskInput = async params => {
|
|
66
66
|
const {
|
package/crud/crud.tasks.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["WebinyError","TaskDataStatus","WEBINY_TASK_MODEL_ID","WEBINY_TASK_LOG_MODEL_ID","NotFoundError","createZodError","parseIdentifier","zod","GetModelUseCase","GetEntryByIdUseCase","ListLatestEntriesUseCase","CreateEntryUseCase","UpdateEntryUseCase","DeleteEntryUseCase","IdentityContext","TaskDefinitionNotFoundError","TaskLogNotFoundError","TaskNotFoundError","EventPublisher","TaskAfterCreateEvent","TaskAfterDeleteEvent","TaskAfterUpdateEvent","TaskBeforeCreateEvent","TaskBeforeDeleteEvent","TaskBeforeUpdateEvent","CmsWhereMapper","createRevisionId","id","entryId","convertToTask","entry","createdOn","savedOn","createdBy","name","values","definitionId","input","output","taskStatus","executionName","eventResponse","startedOn","finishedOn","iterations","parentId","convertToLog","task","iteration","items","getZodSchema","schema","object","passthrough","ZodObject","Schema","validateTaskInput","params","definition","data","createInputValidation","validator","validate","result","safeParseAsync","success","error","createTaskCrud","context","cmsWhereMapper","container","resolve","getTaskModel","identityContext","withoutAuthorization","getModel","execute","isFail","value","getLogModel","getTask","model","getEntryById","listTasks","entries","meta","listLatestEntries","where","map","fields","item","createTask","tasks","getDefinition","eventPublisher","beforeCreateEvent","publish","createEntry","PENDING","afterCreateEvent","updateTask","original","beforeUpdateEvent","updateEntry","afterUpdateEvent","deleteTask","beforeDeleteEvent","deleteEntry","afterDeleteEvent","createLog","updateLog","deleteLog","getLog","ex","getLatestLog","taskId","sort","limit","listLogs"],"sources":["crud.tasks.ts"],"sourcesContent":["import WebinyError from \"@webiny/error\";\nimport type {\n Context,\n IListTaskLogParams,\n IListTaskParams,\n ITaskCreateData,\n ITaskLog,\n ITaskLogCreateInput,\n ITaskLogUpdateInput,\n ITasksContextCrudObject,\n ITaskUpdateData\n} from \"~/types.js\";\nimport { TaskDataStatus } from \"~/types.js\";\nimport { WEBINY_TASK_MODEL_ID } from \"./TaskPrivateModel.js\";\nimport { WEBINY_TASK_LOG_MODEL_ID } from \"./TaskLogPrivateModel.js\";\nimport type { CmsEntry, CmsModel } from \"@webiny/api-headless-cms/types/index.js\";\nimport { NotFoundError } from \"@webiny/handler-graphql\";\nimport { createZodError, parseIdentifier } from \"@webiny/utils\";\nimport zod from \"zod\";\nimport type { GenericRecord } from \"@webiny/api/types.js\";\nimport { GetModelUseCase } from \"@webiny/api-headless-cms/features/contentModel/GetModel\";\nimport { GetEntryByIdUseCase } from \"@webiny/api-headless-cms/features/contentEntry/GetEntryById\";\nimport { ListLatestEntriesUseCase } from \"@webiny/api-headless-cms/features/contentEntry/ListEntries\";\nimport { CreateEntryUseCase } from \"@webiny/api-headless-cms/features/contentEntry/CreateEntry\";\nimport { UpdateEntryUseCase } from \"@webiny/api-headless-cms/features/contentEntry/UpdateEntry\";\nimport { DeleteEntryUseCase } from \"@webiny/api-headless-cms/features/contentEntry/DeleteEntry\";\nimport { IdentityContext } from \"@webiny/api-core/features/IdentityContext\";\nimport {\n TaskDefinitionNotFoundError,\n TaskLogNotFoundError,\n TaskNotFoundError\n} from \"~/domain/errors.js\";\nimport { TaskService } from \"@webiny/api-core/features/task/TaskService/index.js\";\nimport { TaskDefinition } from \"@webiny/api-core/features/task/TaskDefinition/index.js\";\nimport { EventPublisher } from \"@webiny/api-core/features/EventPublisher\";\nimport {\n TaskAfterCreateEvent,\n TaskAfterDeleteEvent,\n TaskAfterUpdateEvent,\n TaskBeforeCreateEvent,\n TaskBeforeDeleteEvent,\n TaskBeforeUpdateEvent\n} from \"~/events/index.js\";\nimport { CmsWhereMapper } from \"@webiny/api-headless-cms\";\n\nconst createRevisionId = (id: string) => {\n const { id: entryId } = parseIdentifier(id);\n return `${entryId}#0001`;\n};\n\nconst convertToTask = <\n T extends TaskService.TaskInput = TaskService.TaskInput,\n O extends TaskService.GenericOutput = TaskService.GenericOutput\n>(\n entry: CmsEntry<TaskService.Task<T, O>>\n): TaskService.Task<T, O> => {\n return {\n id: entry.entryId,\n createdOn: entry.createdOn,\n savedOn: entry.savedOn,\n createdBy: entry.createdBy,\n name: entry.values.name,\n definitionId: entry.values.definitionId,\n input: entry.values.input,\n output: entry.values.output,\n taskStatus: entry.values.taskStatus,\n executionName: entry.values.executionName || \"\",\n eventResponse: entry.values.eventResponse,\n startedOn: entry.values.startedOn,\n finishedOn: entry.values.finishedOn,\n iterations: entry.values.iterations,\n parentId: entry.values.parentId\n };\n};\n\nconst convertToLog = (entry: CmsEntry<ITaskLog>): ITaskLog => {\n return {\n id: entry.entryId,\n createdOn: entry.createdOn,\n createdBy: entry.createdBy,\n executionName: entry.values.executionName,\n task: entry.values.task,\n iteration: entry.values.iteration,\n items: entry.values.items || []\n };\n};\n\ninterface IValidateParams {\n definition: Pick<TaskDefinition.Interface, \"createInputValidation\">;\n data: Pick<ITaskCreateData, \"input\">;\n context: Context;\n}\n\nconst getZodSchema = (schema: GenericRecord<string, zod.Schema> | zod.Schema) => {\n if (!schema) {\n return zod.object({}).passthrough();\n } else if (schema instanceof zod.ZodObject) {\n return schema.passthrough();\n } else if (schema instanceof zod.Schema) {\n return schema;\n }\n return zod.object(schema).passthrough();\n};\n\nconst validateTaskInput = async (params: IValidateParams) => {\n const { definition, data } = params;\n if (!definition.createInputValidation) {\n return;\n }\n const schema = definition.createInputValidation({\n validator: zod\n });\n /**\n * If the schema is not an object, we need to wrap it with the `object` function.\n */\n const validate = getZodSchema(schema);\n\n const result = await validate.safeParseAsync(data.input);\n if (result.success) {\n return;\n }\n throw createZodError(result.error);\n};\n\nexport const createTaskCrud = (context: Context): ITasksContextCrudObject => {\n const cmsWhereMapper = context.container.resolve(CmsWhereMapper);\n\n const getTaskModel = async (): Promise<CmsModel> => {\n const identityContext = context.container.resolve(IdentityContext);\n return await identityContext.withoutAuthorization(async () => {\n const getModel = context.container.resolve(GetModelUseCase);\n const result = await getModel.execute(WEBINY_TASK_MODEL_ID);\n if (result.isFail()) {\n throw new WebinyError(`There is no model \"${WEBINY_TASK_MODEL_ID}\".`);\n }\n return result.value;\n });\n };\n\n const getLogModel = async (): Promise<CmsModel> => {\n const identityContext = context.container.resolve(IdentityContext);\n return await identityContext.withoutAuthorization(async () => {\n const getModel = context.container.resolve(GetModelUseCase);\n const result = await getModel.execute(WEBINY_TASK_LOG_MODEL_ID);\n if (result.isFail()) {\n throw new WebinyError(`There is no model \"${WEBINY_TASK_LOG_MODEL_ID}\".`);\n }\n return result.value;\n });\n };\n\n const getTask = async <\n T extends TaskService.TaskInput = TaskService.TaskInput,\n O extends TaskService.GenericOutput = TaskService.GenericOutput\n >(\n id: string\n ) => {\n const identityContext = context.container.resolve(IdentityContext);\n\n const entry = await identityContext.withoutAuthorization(async () => {\n const model = await getTaskModel();\n const getEntryById = context.container.resolve(GetEntryByIdUseCase);\n const result = await getEntryById.execute(model, createRevisionId(id));\n if (result.isFail()) {\n return null;\n }\n return result.value;\n });\n\n if (!entry) {\n return null;\n }\n\n return convertToTask(entry as unknown as CmsEntry<TaskService.Task<T, O>>);\n };\n\n const listTasks = async <\n T extends TaskService.TaskInput = TaskService.TaskInput,\n O extends TaskService.GenericOutput = TaskService.GenericOutput\n >(\n params?: IListTaskParams\n ) => {\n const identityContext = context.container.resolve(IdentityContext);\n const { entries, meta } = await identityContext.withoutAuthorization(async () => {\n const model = await getTaskModel();\n const listLatestEntries = context.container.resolve(ListLatestEntriesUseCase);\n const result = await listLatestEntries.execute<TaskService.Task<T, O>>(model, {\n ...params,\n where: cmsWhereMapper.map({\n input: params?.where,\n fields: model.fields\n })\n });\n if (result.isFail()) {\n throw result.error;\n }\n return result.value;\n });\n\n return {\n items: entries.map(item => convertToTask<T, O>(item)),\n meta\n };\n };\n\n const createTask = async (data: ITaskCreateData) => {\n const definition = context.tasks.getDefinition(data.definitionId);\n if (!definition) {\n throw new TaskDefinitionNotFoundError(data.definitionId);\n }\n\n await validateTaskInput({\n context,\n definition,\n data\n });\n\n const identityContext = context.container.resolve(IdentityContext);\n const eventPublisher = context.container.resolve(EventPublisher);\n\n const beforeCreateEvent = new TaskBeforeCreateEvent({\n input: data\n });\n await eventPublisher.publish(beforeCreateEvent);\n\n const result = await identityContext.withoutAuthorization(async () => {\n const model = await getTaskModel();\n const createEntry = context.container.resolve(CreateEntryUseCase);\n return createEntry.execute(model, {\n values: {\n ...data,\n iterations: 0,\n taskStatus: TaskDataStatus.PENDING\n }\n });\n });\n\n if (result.isFail()) {\n throw result.error;\n }\n\n const task = convertToTask(result.value as unknown as CmsEntry<TaskService.Task>);\n\n const afterCreateEvent = new TaskAfterCreateEvent({\n input: data,\n task\n });\n await eventPublisher.publish(afterCreateEvent);\n\n return task;\n };\n\n const updateTask = async <\n T extends TaskService.TaskInput = TaskService.TaskInput,\n O extends TaskService.GenericOutput = TaskService.GenericOutput\n >(\n id: string,\n data: ITaskUpdateData<T, O>\n ) => {\n const original = await getTask<T, O>(id);\n if (!original) {\n throw new TaskNotFoundError();\n }\n\n const identityContext = context.container.resolve(IdentityContext);\n const eventPublisher = context.container.resolve(EventPublisher);\n\n const beforeUpdateEvent = new TaskBeforeUpdateEvent({\n input: data,\n original\n });\n await eventPublisher.publish(beforeUpdateEvent);\n\n const result = await identityContext.withoutAuthorization(async () => {\n const model = await getTaskModel();\n const updateEntry = context.container.resolve(UpdateEntryUseCase);\n return updateEntry.execute(model, createRevisionId(id), {\n values: {\n ...data\n }\n });\n });\n\n if (result.isFail()) {\n throw result.error;\n }\n\n const task = convertToTask<T, O>(\n result.value as unknown as CmsEntry<TaskService.Task<T, O>>\n );\n\n const afterUpdateEvent = new TaskAfterUpdateEvent({\n input: data,\n task\n });\n await eventPublisher.publish(afterUpdateEvent);\n\n return task;\n };\n\n const deleteTask = async (id: string) => {\n const task = await getTask(id);\n if (!task) {\n throw new TaskNotFoundError();\n }\n\n const identityContext = context.container.resolve(IdentityContext);\n const eventPublisher = context.container.resolve(EventPublisher);\n\n const beforeDeleteEvent = new TaskBeforeDeleteEvent({\n task\n });\n await eventPublisher.publish(beforeDeleteEvent);\n\n const result = await identityContext.withoutAuthorization(async () => {\n const model = await getTaskModel();\n const deleteEntry = context.container.resolve(DeleteEntryUseCase);\n return deleteEntry.execute(model, createRevisionId(id));\n });\n\n if (result.isFail()) {\n throw new TaskNotFoundError();\n }\n\n const afterDeleteEvent = new TaskAfterDeleteEvent({ task });\n await eventPublisher.publish(afterDeleteEvent);\n\n return true;\n };\n\n const createLog = async (task: Pick<TaskService.Task, \"id\">, data: ITaskLogCreateInput) => {\n const identityContext = context.container.resolve(IdentityContext);\n const result = await identityContext.withoutAuthorization(async () => {\n const model = await getLogModel();\n const createEntry = context.container.resolve(CreateEntryUseCase);\n return createEntry.execute(model, {\n values: {\n ...data,\n task: task.id\n }\n });\n });\n\n if (result.isFail()) {\n throw result.error;\n }\n\n return convertToLog(result.value as unknown as CmsEntry<ITaskLog>);\n };\n\n const updateLog = async (id: string, data: ITaskLogUpdateInput) => {\n const identityContext = context.container.resolve(IdentityContext);\n const result = await identityContext.withoutAuthorization(async () => {\n const model = await getLogModel();\n const updateEntry = context.container.resolve(UpdateEntryUseCase);\n return updateEntry.execute(model, createRevisionId(id), {\n values: data\n });\n });\n\n if (result.isFail()) {\n throw new TaskLogNotFoundError();\n }\n\n return convertToLog(result.value as unknown as CmsEntry<ITaskLog>);\n };\n\n const deleteLog = async (id: string) => {\n const identityContext = context.container.resolve(IdentityContext);\n const result = await identityContext.withoutAuthorization(async () => {\n const model = await getLogModel();\n const deleteEntry = context.container.resolve(DeleteEntryUseCase);\n return deleteEntry.execute(model, id);\n });\n\n if (result.isFail()) {\n throw new TaskLogNotFoundError();\n }\n\n return true;\n };\n\n const getLog = async (id: string): Promise<ITaskLog | null> => {\n const identityContext = context.container.resolve(IdentityContext);\n try {\n const result = await identityContext.withoutAuthorization(async () => {\n const model = await getLogModel();\n const getEntryById = context.container.resolve(GetEntryByIdUseCase);\n return getEntryById.execute(model, id);\n });\n\n if (result.isFail()) {\n throw result.error;\n }\n\n return convertToLog(result.value as unknown as CmsEntry<ITaskLog>);\n } catch (ex) {\n if (ex instanceof NotFoundError) {\n return null;\n }\n throw ex;\n }\n };\n\n const getLatestLog = async (taskId: string): Promise<ITaskLog> => {\n const identityContext = context.container.resolve(IdentityContext);\n const entry = await identityContext.withoutAuthorization(async () => {\n const model = await getLogModel();\n const listLatestEntries = context.container.resolve(ListLatestEntriesUseCase);\n const result = await listLatestEntries.execute<ITaskLog>(model, {\n where: {\n values: {\n task: taskId\n }\n },\n sort: [\"createdOn_DESC\"],\n limit: 1\n });\n if (result.isFail()) {\n throw result.error;\n }\n const { entries } = result.value;\n const [item] = entries;\n if (!item) {\n throw new NotFoundError(`No existing latest log found for task \"${taskId}\".`);\n }\n return item;\n });\n\n return convertToLog(entry as unknown as CmsEntry<ITaskLog>);\n };\n\n const listLogs = async (params: IListTaskLogParams) => {\n const identityContext = context.container.resolve(IdentityContext);\n const { entries, meta } = await identityContext.withoutAuthorization(async () => {\n const model = await getLogModel();\n const listLatestEntries = context.container.resolve(ListLatestEntriesUseCase);\n const result = await listLatestEntries.execute<ITaskLog>(model, {\n ...params,\n where: cmsWhereMapper.map({\n input: params.where,\n fields: model.fields\n })\n });\n if (result.isFail()) {\n throw result.error;\n }\n return result.value;\n });\n\n return {\n items: entries.map(item => convertToLog(item)),\n meta\n };\n };\n\n return {\n getTask,\n listTasks,\n createTask,\n updateTask,\n deleteTask,\n createLog,\n updateLog,\n deleteLog,\n getLog,\n listLogs,\n getLatestLog,\n getTaskModel,\n getLogModel\n };\n};\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["WebinyError","TaskDataStatus","WEBINY_TASK_MODEL_ID","WEBINY_TASK_LOG_MODEL_ID","NotFoundError","createZodError","parseIdentifier","zod","GetModelUseCase","GetEntryByIdUseCase","ListLatestEntriesUseCase","CreateEntryUseCase","UpdateEntryUseCase","DeleteEntryUseCase","IdentityContext","TaskDefinitionNotFoundError","TaskLogNotFoundError","TaskNotFoundError","EventPublisher","TaskAfterCreateEvent","TaskAfterDeleteEvent","TaskAfterUpdateEvent","TaskBeforeCreateEvent","TaskBeforeDeleteEvent","TaskBeforeUpdateEvent","CmsWhereMapper","createRevisionId","id","entryId","convertToTask","entry","createdOn","savedOn","createdBy","name","values","definitionId","input","output","taskStatus","executionName","eventResponse","startedOn","finishedOn","iterations","parentId","convertToLog","task","iteration","items","getZodSchema","schema","looseObject","ZodObject","loose","ZodType","validateTaskInput","params","definition","data","createInputValidation","validator","validate","result","safeParseAsync","success","error","createTaskCrud","context","cmsWhereMapper","container","resolve","getTaskModel","identityContext","withoutAuthorization","getModel","execute","isFail","value","getLogModel","getTask","model","getEntryById","listTasks","entries","meta","listLatestEntries","where","map","fields","item","createTask","tasks","getDefinition","eventPublisher","beforeCreateEvent","publish","createEntry","PENDING","afterCreateEvent","updateTask","original","beforeUpdateEvent","updateEntry","afterUpdateEvent","deleteTask","beforeDeleteEvent","deleteEntry","afterDeleteEvent","createLog","updateLog","deleteLog","getLog","ex","getLatestLog","taskId","sort","limit","listLogs"],"sources":["crud.tasks.ts"],"sourcesContent":["import WebinyError from \"@webiny/error\";\nimport type {\n Context,\n IListTaskLogParams,\n IListTaskParams,\n ITaskCreateData,\n ITaskLog,\n ITaskLogCreateInput,\n ITaskLogUpdateInput,\n ITasksContextCrudObject,\n ITaskUpdateData\n} from \"~/types.js\";\nimport { TaskDataStatus } from \"~/types.js\";\nimport { WEBINY_TASK_MODEL_ID } from \"./TaskPrivateModel.js\";\nimport { WEBINY_TASK_LOG_MODEL_ID } from \"./TaskLogPrivateModel.js\";\nimport type { CmsEntry, CmsModel } from \"@webiny/api-headless-cms/types/index.js\";\nimport { NotFoundError } from \"@webiny/handler-graphql\";\nimport { createZodError, parseIdentifier } from \"@webiny/utils\";\nimport zod from \"zod\";\nimport type { GenericRecord } from \"@webiny/api/types.js\";\nimport { GetModelUseCase } from \"@webiny/api-headless-cms/features/contentModel/GetModel\";\nimport { GetEntryByIdUseCase } from \"@webiny/api-headless-cms/features/contentEntry/GetEntryById\";\nimport { ListLatestEntriesUseCase } from \"@webiny/api-headless-cms/features/contentEntry/ListEntries\";\nimport { CreateEntryUseCase } from \"@webiny/api-headless-cms/features/contentEntry/CreateEntry\";\nimport { UpdateEntryUseCase } from \"@webiny/api-headless-cms/features/contentEntry/UpdateEntry\";\nimport { DeleteEntryUseCase } from \"@webiny/api-headless-cms/features/contentEntry/DeleteEntry\";\nimport { IdentityContext } from \"@webiny/api-core/features/IdentityContext\";\nimport {\n TaskDefinitionNotFoundError,\n TaskLogNotFoundError,\n TaskNotFoundError\n} from \"~/domain/errors.js\";\nimport { TaskService } from \"@webiny/api-core/features/task/TaskService/index.js\";\nimport { TaskDefinition } from \"@webiny/api-core/features/task/TaskDefinition/index.js\";\nimport { EventPublisher } from \"@webiny/api-core/features/EventPublisher\";\nimport {\n TaskAfterCreateEvent,\n TaskAfterDeleteEvent,\n TaskAfterUpdateEvent,\n TaskBeforeCreateEvent,\n TaskBeforeDeleteEvent,\n TaskBeforeUpdateEvent\n} from \"~/events/index.js\";\nimport { CmsWhereMapper } from \"@webiny/api-headless-cms\";\n\nconst createRevisionId = (id: string) => {\n const { id: entryId } = parseIdentifier(id);\n return `${entryId}#0001`;\n};\n\nconst convertToTask = <\n T extends TaskService.TaskInput = TaskService.TaskInput,\n O extends TaskService.GenericOutput = TaskService.GenericOutput\n>(\n entry: CmsEntry<TaskService.Task<T, O>>\n): TaskService.Task<T, O> => {\n return {\n id: entry.entryId,\n createdOn: entry.createdOn,\n savedOn: entry.savedOn,\n createdBy: entry.createdBy,\n name: entry.values.name,\n definitionId: entry.values.definitionId,\n input: entry.values.input,\n output: entry.values.output,\n taskStatus: entry.values.taskStatus,\n executionName: entry.values.executionName || \"\",\n eventResponse: entry.values.eventResponse,\n startedOn: entry.values.startedOn,\n finishedOn: entry.values.finishedOn,\n iterations: entry.values.iterations,\n parentId: entry.values.parentId\n };\n};\n\nconst convertToLog = (entry: CmsEntry<ITaskLog>): ITaskLog => {\n return {\n id: entry.entryId,\n createdOn: entry.createdOn,\n createdBy: entry.createdBy,\n executionName: entry.values.executionName,\n task: entry.values.task,\n iteration: entry.values.iteration,\n items: entry.values.items || []\n };\n};\n\ninterface IValidateParams {\n definition: Pick<TaskDefinition.Interface, \"createInputValidation\">;\n data: Pick<ITaskCreateData, \"input\">;\n context: Context;\n}\n\nconst getZodSchema = (schema: GenericRecord<string, zod.ZodTypeAny> | zod.ZodTypeAny) => {\n if (!schema) {\n return zod.looseObject({});\n } else if (schema instanceof zod.ZodObject) {\n return schema.loose();\n } else if (schema instanceof zod.ZodType) {\n return schema;\n }\n return zod.looseObject(schema);\n};\n\nconst validateTaskInput = async (params: IValidateParams) => {\n const { definition, data } = params;\n if (!definition.createInputValidation) {\n return;\n }\n const schema = definition.createInputValidation({\n validator: zod\n });\n /**\n * If the schema is not an object, we need to wrap it with the `object` function.\n */\n const validate = getZodSchema(schema);\n\n const result = await validate.safeParseAsync(data.input);\n if (result.success) {\n return;\n }\n throw createZodError(result.error);\n};\n\nexport const createTaskCrud = (context: Context): ITasksContextCrudObject => {\n const cmsWhereMapper = context.container.resolve(CmsWhereMapper);\n\n const getTaskModel = async (): Promise<CmsModel> => {\n const identityContext = context.container.resolve(IdentityContext);\n return await identityContext.withoutAuthorization(async () => {\n const getModel = context.container.resolve(GetModelUseCase);\n const result = await getModel.execute(WEBINY_TASK_MODEL_ID);\n if (result.isFail()) {\n throw new WebinyError(`There is no model \"${WEBINY_TASK_MODEL_ID}\".`);\n }\n return result.value;\n });\n };\n\n const getLogModel = async (): Promise<CmsModel> => {\n const identityContext = context.container.resolve(IdentityContext);\n return await identityContext.withoutAuthorization(async () => {\n const getModel = context.container.resolve(GetModelUseCase);\n const result = await getModel.execute(WEBINY_TASK_LOG_MODEL_ID);\n if (result.isFail()) {\n throw new WebinyError(`There is no model \"${WEBINY_TASK_LOG_MODEL_ID}\".`);\n }\n return result.value;\n });\n };\n\n const getTask = async <\n T extends TaskService.TaskInput = TaskService.TaskInput,\n O extends TaskService.GenericOutput = TaskService.GenericOutput\n >(\n id: string\n ) => {\n const identityContext = context.container.resolve(IdentityContext);\n\n const entry = await identityContext.withoutAuthorization(async () => {\n const model = await getTaskModel();\n const getEntryById = context.container.resolve(GetEntryByIdUseCase);\n const result = await getEntryById.execute(model, createRevisionId(id));\n if (result.isFail()) {\n return null;\n }\n return result.value;\n });\n\n if (!entry) {\n return null;\n }\n\n return convertToTask(entry as unknown as CmsEntry<TaskService.Task<T, O>>);\n };\n\n const listTasks = async <\n T extends TaskService.TaskInput = TaskService.TaskInput,\n O extends TaskService.GenericOutput = TaskService.GenericOutput\n >(\n params?: IListTaskParams\n ) => {\n const identityContext = context.container.resolve(IdentityContext);\n const { entries, meta } = await identityContext.withoutAuthorization(async () => {\n const model = await getTaskModel();\n const listLatestEntries = context.container.resolve(ListLatestEntriesUseCase);\n const result = await listLatestEntries.execute<TaskService.Task<T, O>>(model, {\n ...params,\n where: cmsWhereMapper.map({\n input: params?.where,\n fields: model.fields\n })\n });\n if (result.isFail()) {\n throw result.error;\n }\n return result.value;\n });\n\n return {\n items: entries.map(item => convertToTask<T, O>(item)),\n meta\n };\n };\n\n const createTask = async (data: ITaskCreateData) => {\n const definition = context.tasks.getDefinition(data.definitionId);\n if (!definition) {\n throw new TaskDefinitionNotFoundError(data.definitionId);\n }\n\n await validateTaskInput({\n context,\n definition,\n data\n });\n\n const identityContext = context.container.resolve(IdentityContext);\n const eventPublisher = context.container.resolve(EventPublisher);\n\n const beforeCreateEvent = new TaskBeforeCreateEvent({\n input: data\n });\n await eventPublisher.publish(beforeCreateEvent);\n\n const result = await identityContext.withoutAuthorization(async () => {\n const model = await getTaskModel();\n const createEntry = context.container.resolve(CreateEntryUseCase);\n return createEntry.execute(model, {\n values: {\n ...data,\n iterations: 0,\n taskStatus: TaskDataStatus.PENDING\n }\n });\n });\n\n if (result.isFail()) {\n throw result.error;\n }\n\n const task = convertToTask(result.value as unknown as CmsEntry<TaskService.Task>);\n\n const afterCreateEvent = new TaskAfterCreateEvent({\n input: data,\n task\n });\n await eventPublisher.publish(afterCreateEvent);\n\n return task;\n };\n\n const updateTask = async <\n T extends TaskService.TaskInput = TaskService.TaskInput,\n O extends TaskService.GenericOutput = TaskService.GenericOutput\n >(\n id: string,\n data: ITaskUpdateData<T, O>\n ) => {\n const original = await getTask<T, O>(id);\n if (!original) {\n throw new TaskNotFoundError();\n }\n\n const identityContext = context.container.resolve(IdentityContext);\n const eventPublisher = context.container.resolve(EventPublisher);\n\n const beforeUpdateEvent = new TaskBeforeUpdateEvent({\n input: data,\n original\n });\n await eventPublisher.publish(beforeUpdateEvent);\n\n const result = await identityContext.withoutAuthorization(async () => {\n const model = await getTaskModel();\n const updateEntry = context.container.resolve(UpdateEntryUseCase);\n return updateEntry.execute(model, createRevisionId(id), {\n values: {\n ...data\n }\n });\n });\n\n if (result.isFail()) {\n throw result.error;\n }\n\n const task = convertToTask<T, O>(\n result.value as unknown as CmsEntry<TaskService.Task<T, O>>\n );\n\n const afterUpdateEvent = new TaskAfterUpdateEvent({\n input: data,\n task\n });\n await eventPublisher.publish(afterUpdateEvent);\n\n return task;\n };\n\n const deleteTask = async (id: string) => {\n const task = await getTask(id);\n if (!task) {\n throw new TaskNotFoundError();\n }\n\n const identityContext = context.container.resolve(IdentityContext);\n const eventPublisher = context.container.resolve(EventPublisher);\n\n const beforeDeleteEvent = new TaskBeforeDeleteEvent({\n task\n });\n await eventPublisher.publish(beforeDeleteEvent);\n\n const result = await identityContext.withoutAuthorization(async () => {\n const model = await getTaskModel();\n const deleteEntry = context.container.resolve(DeleteEntryUseCase);\n return deleteEntry.execute(model, createRevisionId(id));\n });\n\n if (result.isFail()) {\n throw new TaskNotFoundError();\n }\n\n const afterDeleteEvent = new TaskAfterDeleteEvent({ task });\n await eventPublisher.publish(afterDeleteEvent);\n\n return true;\n };\n\n const createLog = async (task: Pick<TaskService.Task, \"id\">, data: ITaskLogCreateInput) => {\n const identityContext = context.container.resolve(IdentityContext);\n const result = await identityContext.withoutAuthorization(async () => {\n const model = await getLogModel();\n const createEntry = context.container.resolve(CreateEntryUseCase);\n return createEntry.execute(model, {\n values: {\n ...data,\n task: task.id\n }\n });\n });\n\n if (result.isFail()) {\n throw result.error;\n }\n\n return convertToLog(result.value as unknown as CmsEntry<ITaskLog>);\n };\n\n const updateLog = async (id: string, data: ITaskLogUpdateInput) => {\n const identityContext = context.container.resolve(IdentityContext);\n const result = await identityContext.withoutAuthorization(async () => {\n const model = await getLogModel();\n const updateEntry = context.container.resolve(UpdateEntryUseCase);\n return updateEntry.execute(model, createRevisionId(id), {\n values: data\n });\n });\n\n if (result.isFail()) {\n throw new TaskLogNotFoundError();\n }\n\n return convertToLog(result.value as unknown as CmsEntry<ITaskLog>);\n };\n\n const deleteLog = async (id: string) => {\n const identityContext = context.container.resolve(IdentityContext);\n const result = await identityContext.withoutAuthorization(async () => {\n const model = await getLogModel();\n const deleteEntry = context.container.resolve(DeleteEntryUseCase);\n return deleteEntry.execute(model, id);\n });\n\n if (result.isFail()) {\n throw new TaskLogNotFoundError();\n }\n\n return true;\n };\n\n const getLog = async (id: string): Promise<ITaskLog | null> => {\n const identityContext = context.container.resolve(IdentityContext);\n try {\n const result = await identityContext.withoutAuthorization(async () => {\n const model = await getLogModel();\n const getEntryById = context.container.resolve(GetEntryByIdUseCase);\n return getEntryById.execute(model, id);\n });\n\n if (result.isFail()) {\n throw result.error;\n }\n\n return convertToLog(result.value as unknown as CmsEntry<ITaskLog>);\n } catch (ex) {\n if (ex instanceof NotFoundError) {\n return null;\n }\n throw ex;\n }\n };\n\n const getLatestLog = async (taskId: string): Promise<ITaskLog> => {\n const identityContext = context.container.resolve(IdentityContext);\n const entry = await identityContext.withoutAuthorization(async () => {\n const model = await getLogModel();\n const listLatestEntries = context.container.resolve(ListLatestEntriesUseCase);\n const result = await listLatestEntries.execute<ITaskLog>(model, {\n where: {\n values: {\n task: taskId\n }\n },\n sort: [\"createdOn_DESC\"],\n limit: 1\n });\n if (result.isFail()) {\n throw result.error;\n }\n const { entries } = result.value;\n const [item] = entries;\n if (!item) {\n throw new NotFoundError(`No existing latest log found for task \"${taskId}\".`);\n }\n return item;\n });\n\n return convertToLog(entry as unknown as CmsEntry<ITaskLog>);\n };\n\n const listLogs = async (params: IListTaskLogParams) => {\n const identityContext = context.container.resolve(IdentityContext);\n const { entries, meta } = await identityContext.withoutAuthorization(async () => {\n const model = await getLogModel();\n const listLatestEntries = context.container.resolve(ListLatestEntriesUseCase);\n const result = await listLatestEntries.execute<ITaskLog>(model, {\n ...params,\n where: cmsWhereMapper.map({\n input: params.where,\n fields: model.fields\n })\n });\n if (result.isFail()) {\n throw result.error;\n }\n return result.value;\n });\n\n return {\n items: entries.map(item => convertToLog(item)),\n meta\n };\n };\n\n return {\n getTask,\n listTasks,\n createTask,\n updateTask,\n deleteTask,\n createLog,\n updateLog,\n deleteLog,\n getLog,\n listLogs,\n getLatestLog,\n getTaskModel,\n getLogModel\n };\n};\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -15,7 +15,7 @@ declare class RunnableTaskDecoratorImpl implements TaskDefinition.Interface {
|
|
|
15
15
|
get isPrivate(): boolean;
|
|
16
16
|
get databaseLogs(): boolean;
|
|
17
17
|
get maxIterations(): number;
|
|
18
|
-
get createInputValidation(): ((params: import("@webiny/api-core/features/task/TaskDefinition/abstractions").ITaskCreateInputValidationParams) => import("zod").ZodType<
|
|
18
|
+
get createInputValidation(): ((params: import("@webiny/api-core/features/task/TaskDefinition/abstractions").ITaskCreateInputValidationParams) => import("zod").ZodType<unknown, unknown, import("zod/v4/core").$ZodTypeInternals<unknown, unknown>> | import("@webiny/api/types").GenericRecord<PropertyKey, import("zod").ZodType<unknown, unknown, import("zod/v4/core").$ZodTypeInternals<unknown, unknown>>>) | undefined;
|
|
19
19
|
get run(): (params: import("@webiny/api-core/features/task/TaskDefinition/abstractions").ITaskRunParams<import("@webiny/api-core/features/task/TaskDefinition/abstractions").ITaskInput, import("@webiny/api-core/features/task/TaskDefinition/abstractions").ITaskOutput>) => Promise<import("@webiny/api-core/features/task/TaskDefinition/abstractions").ITaskResult<import("@webiny/api-core/features/task/TaskDefinition/abstractions").ITaskInput, import("@webiny/api-core/features/task/TaskDefinition/abstractions").ITaskOutput>>;
|
|
20
20
|
get onBeforeTrigger(): ((params: import("@webiny/api-core/features/task/TaskDefinition/abstractions").ITaskBeforeTriggerParams<import("@webiny/api-core/features/task/TaskDefinition/abstractions").ITaskInput>) => Promise<void>) | undefined;
|
|
21
21
|
get onDone(): ((params: import("@webiny/api-core/features/task/TaskDefinition/abstractions").ITaskLifecycleHook<import("@webiny/api-core/features/task/TaskDefinition/abstractions").ITaskInput, import("@webiny/api-core/features/task/TaskDefinition/abstractions").ITaskOutput>) => Promise<void>) | undefined;
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { DomainEvent } from "@webiny/api-core/features/EventPublisher";
|
|
2
|
-
import {
|
|
2
|
+
import { TaskAfterCreateEventHandler } from "./abstractions.js";
|
|
3
3
|
export class TaskAfterCreateEvent extends DomainEvent {
|
|
4
4
|
eventType = "task.afterCreate";
|
|
5
5
|
getHandlerAbstraction() {
|
|
6
|
-
return
|
|
6
|
+
return TaskAfterCreateEventHandler;
|
|
7
7
|
}
|
|
8
8
|
}
|
|
9
9
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["DomainEvent","
|
|
1
|
+
{"version":3,"names":["DomainEvent","TaskAfterCreateEventHandler","TaskAfterCreateEvent","eventType","getHandlerAbstraction"],"sources":["TaskAfterCreateEvent.ts"],"sourcesContent":["import { DomainEvent } from \"@webiny/api-core/features/EventPublisher\";\nimport { TaskAfterCreateEventHandler, TaskAfterCreatePayload } from \"./abstractions.js\";\n\nexport class TaskAfterCreateEvent extends DomainEvent<TaskAfterCreatePayload> {\n eventType = \"task.afterCreate\" as const;\n\n getHandlerAbstraction() {\n return TaskAfterCreateEventHandler;\n }\n}\n"],"mappings":"AAAA,SAASA,WAAW,QAAQ,0CAA0C;AACtE,SAASC,2BAA2B;AAEpC,OAAO,MAAMC,oBAAoB,SAASF,WAAW,CAAyB;EAC1EG,SAAS,GAAG,kBAAkB;EAE9BC,qBAAqBA,CAAA,EAAG;IACpB,OAAOH,2BAA2B;EACtC;AACJ","ignoreList":[]}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { DomainEvent } from "@webiny/api-core/features/EventPublisher";
|
|
2
|
-
import {
|
|
2
|
+
import { TaskAfterDeleteEventHandler } from "./abstractions.js";
|
|
3
3
|
export class TaskAfterDeleteEvent extends DomainEvent {
|
|
4
4
|
eventType = "task.afterDelete";
|
|
5
5
|
getHandlerAbstraction() {
|
|
6
|
-
return
|
|
6
|
+
return TaskAfterDeleteEventHandler;
|
|
7
7
|
}
|
|
8
8
|
}
|
|
9
9
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["DomainEvent","
|
|
1
|
+
{"version":3,"names":["DomainEvent","TaskAfterDeleteEventHandler","TaskAfterDeleteEvent","eventType","getHandlerAbstraction"],"sources":["TaskAfterDeleteEvent.ts"],"sourcesContent":["import { DomainEvent } from \"@webiny/api-core/features/EventPublisher\";\nimport { TaskAfterDeleteEventHandler, TaskAfterDeletePayload } from \"./abstractions.js\";\n\nexport class TaskAfterDeleteEvent extends DomainEvent<TaskAfterDeletePayload> {\n eventType = \"task.afterDelete\" as const;\n\n getHandlerAbstraction() {\n return TaskAfterDeleteEventHandler;\n }\n}\n"],"mappings":"AAAA,SAASA,WAAW,QAAQ,0CAA0C;AACtE,SAASC,2BAA2B;AAEpC,OAAO,MAAMC,oBAAoB,SAASF,WAAW,CAAyB;EAC1EG,SAAS,GAAG,kBAAkB;EAE9BC,qBAAqBA,CAAA,EAAG;IACpB,OAAOH,2BAA2B;EACtC;AACJ","ignoreList":[]}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { DomainEvent } from "@webiny/api-core/features/EventPublisher";
|
|
2
|
-
import {
|
|
2
|
+
import { TaskAfterUpdateEventHandler } from "./abstractions.js";
|
|
3
3
|
export class TaskAfterUpdateEvent extends DomainEvent {
|
|
4
4
|
eventType = "task.afterUpdate";
|
|
5
5
|
getHandlerAbstraction() {
|
|
6
|
-
return
|
|
6
|
+
return TaskAfterUpdateEventHandler;
|
|
7
7
|
}
|
|
8
8
|
}
|
|
9
9
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["DomainEvent","
|
|
1
|
+
{"version":3,"names":["DomainEvent","TaskAfterUpdateEventHandler","TaskAfterUpdateEvent","eventType","getHandlerAbstraction"],"sources":["TaskAfterUpdateEvent.ts"],"sourcesContent":["import { DomainEvent } from \"@webiny/api-core/features/EventPublisher\";\nimport { TaskAfterUpdateEventHandler, TaskAfterUpdatePayload } from \"./abstractions.js\";\n\nexport class TaskAfterUpdateEvent extends DomainEvent<TaskAfterUpdatePayload> {\n eventType = \"task.afterUpdate\" as const;\n\n getHandlerAbstraction() {\n return TaskAfterUpdateEventHandler;\n }\n}\n"],"mappings":"AAAA,SAASA,WAAW,QAAQ,0CAA0C;AACtE,SAASC,2BAA2B;AAEpC,OAAO,MAAMC,oBAAoB,SAASF,WAAW,CAAyB;EAC1EG,SAAS,GAAG,kBAAkB;EAE9BC,qBAAqBA,CAAA,EAAG;IACpB,OAAOH,2BAA2B;EACtC;AACJ","ignoreList":[]}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { DomainEvent } from "@webiny/api-core/features/EventPublisher";
|
|
2
|
-
import {
|
|
2
|
+
import { TaskBeforeCreateEventHandler } from "./abstractions.js";
|
|
3
3
|
export class TaskBeforeCreateEvent extends DomainEvent {
|
|
4
4
|
eventType = "task.beforeCreate";
|
|
5
5
|
getHandlerAbstraction() {
|
|
6
|
-
return
|
|
6
|
+
return TaskBeforeCreateEventHandler;
|
|
7
7
|
}
|
|
8
8
|
}
|
|
9
9
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["DomainEvent","
|
|
1
|
+
{"version":3,"names":["DomainEvent","TaskBeforeCreateEventHandler","TaskBeforeCreateEvent","eventType","getHandlerAbstraction"],"sources":["TaskBeforeCreateEvent.ts"],"sourcesContent":["import { DomainEvent } from \"@webiny/api-core/features/EventPublisher\";\nimport { TaskBeforeCreateEventHandler, TaskBeforeCreatePayload } from \"./abstractions.js\";\n\nexport class TaskBeforeCreateEvent extends DomainEvent<TaskBeforeCreatePayload> {\n eventType = \"task.beforeCreate\" as const;\n\n getHandlerAbstraction() {\n return TaskBeforeCreateEventHandler;\n }\n}\n"],"mappings":"AAAA,SAASA,WAAW,QAAQ,0CAA0C;AACtE,SAASC,4BAA4B;AAErC,OAAO,MAAMC,qBAAqB,SAASF,WAAW,CAA0B;EAC5EG,SAAS,GAAG,mBAAmB;EAE/BC,qBAAqBA,CAAA,EAAG;IACpB,OAAOH,4BAA4B;EACvC;AACJ","ignoreList":[]}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { DomainEvent } from "@webiny/api-core/features/EventPublisher";
|
|
2
|
-
import {
|
|
2
|
+
import { TaskBeforeDeleteEventHandler } from "./abstractions.js";
|
|
3
3
|
export class TaskBeforeDeleteEvent extends DomainEvent {
|
|
4
4
|
eventType = "task.beforeDelete";
|
|
5
5
|
getHandlerAbstraction() {
|
|
6
|
-
return
|
|
6
|
+
return TaskBeforeDeleteEventHandler;
|
|
7
7
|
}
|
|
8
8
|
}
|
|
9
9
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["DomainEvent","
|
|
1
|
+
{"version":3,"names":["DomainEvent","TaskBeforeDeleteEventHandler","TaskBeforeDeleteEvent","eventType","getHandlerAbstraction"],"sources":["TaskBeforeDeleteEvent.ts"],"sourcesContent":["import { DomainEvent } from \"@webiny/api-core/features/EventPublisher\";\nimport { TaskBeforeDeleteEventHandler, TaskBeforeDeletePayload } from \"./abstractions.js\";\n\nexport class TaskBeforeDeleteEvent extends DomainEvent<TaskBeforeDeletePayload> {\n eventType = \"task.beforeDelete\" as const;\n\n getHandlerAbstraction() {\n return TaskBeforeDeleteEventHandler;\n }\n}\n"],"mappings":"AAAA,SAASA,WAAW,QAAQ,0CAA0C;AACtE,SAASC,4BAA4B;AAErC,OAAO,MAAMC,qBAAqB,SAASF,WAAW,CAA0B;EAC5EG,SAAS,GAAG,mBAAmB;EAE/BC,qBAAqBA,CAAA,EAAG;IACpB,OAAOH,4BAA4B;EACvC;AACJ","ignoreList":[]}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { DomainEvent } from "@webiny/api-core/features/EventPublisher";
|
|
2
|
-
import {
|
|
2
|
+
import { TaskBeforeUpdateEventHandler } from "./abstractions.js";
|
|
3
3
|
export class TaskBeforeUpdateEvent extends DomainEvent {
|
|
4
4
|
eventType = "task.beforeUpdate";
|
|
5
5
|
getHandlerAbstraction() {
|
|
6
|
-
return
|
|
6
|
+
return TaskBeforeUpdateEventHandler;
|
|
7
7
|
}
|
|
8
8
|
}
|
|
9
9
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["DomainEvent","
|
|
1
|
+
{"version":3,"names":["DomainEvent","TaskBeforeUpdateEventHandler","TaskBeforeUpdateEvent","eventType","getHandlerAbstraction"],"sources":["TaskBeforeUpdateEvent.ts"],"sourcesContent":["import { DomainEvent } from \"@webiny/api-core/features/EventPublisher\";\nimport { TaskBeforeUpdateEventHandler, TaskBeforeUpdatePayload } from \"./abstractions.js\";\n\nexport class TaskBeforeUpdateEvent extends DomainEvent<TaskBeforeUpdatePayload> {\n eventType = \"task.beforeUpdate\" as const;\n\n getHandlerAbstraction() {\n return TaskBeforeUpdateEventHandler;\n }\n}\n"],"mappings":"AAAA,SAASA,WAAW,QAAQ,0CAA0C;AACtE,SAASC,4BAA4B;AAErC,OAAO,MAAMC,qBAAqB,SAASF,WAAW,CAA0B;EAC5EG,SAAS,GAAG,mBAAmB;EAE/BC,qBAAqBA,CAAA,EAAG;IACpB,OAAOH,4BAA4B;EACvC;AACJ","ignoreList":[]}
|
package/events/abstractions.d.ts
CHANGED
|
@@ -3,8 +3,8 @@ import type { ITask, ITaskCreateData, ITaskUpdateData } from "../types.js";
|
|
|
3
3
|
export interface TaskBeforeCreatePayload {
|
|
4
4
|
input: ITaskCreateData;
|
|
5
5
|
}
|
|
6
|
-
export declare const
|
|
7
|
-
export declare namespace
|
|
6
|
+
export declare const TaskBeforeCreateEventHandler: import("@webiny/di").Abstraction<IEventHandler<DomainEvent<TaskBeforeCreatePayload>>>;
|
|
7
|
+
export declare namespace TaskBeforeCreateEventHandler {
|
|
8
8
|
type Interface = IEventHandler<DomainEvent<TaskBeforeCreatePayload>>;
|
|
9
9
|
type Event = DomainEvent<TaskBeforeCreatePayload>;
|
|
10
10
|
}
|
|
@@ -12,8 +12,8 @@ export interface TaskAfterCreatePayload {
|
|
|
12
12
|
input: ITaskCreateData;
|
|
13
13
|
task: ITask;
|
|
14
14
|
}
|
|
15
|
-
export declare const
|
|
16
|
-
export declare namespace
|
|
15
|
+
export declare const TaskAfterCreateEventHandler: import("@webiny/di").Abstraction<IEventHandler<DomainEvent<TaskAfterCreatePayload>>>;
|
|
16
|
+
export declare namespace TaskAfterCreateEventHandler {
|
|
17
17
|
type Interface = IEventHandler<DomainEvent<TaskAfterCreatePayload>>;
|
|
18
18
|
type Event = DomainEvent<TaskAfterCreatePayload>;
|
|
19
19
|
}
|
|
@@ -21,8 +21,8 @@ export interface TaskBeforeUpdatePayload {
|
|
|
21
21
|
input: ITaskUpdateData;
|
|
22
22
|
original: ITask;
|
|
23
23
|
}
|
|
24
|
-
export declare const
|
|
25
|
-
export declare namespace
|
|
24
|
+
export declare const TaskBeforeUpdateEventHandler: import("@webiny/di").Abstraction<IEventHandler<DomainEvent<TaskBeforeUpdatePayload>>>;
|
|
25
|
+
export declare namespace TaskBeforeUpdateEventHandler {
|
|
26
26
|
type Interface = IEventHandler<DomainEvent<TaskBeforeUpdatePayload>>;
|
|
27
27
|
type Event = DomainEvent<TaskBeforeUpdatePayload>;
|
|
28
28
|
}
|
|
@@ -30,24 +30,24 @@ export interface TaskAfterUpdatePayload {
|
|
|
30
30
|
input: ITaskUpdateData;
|
|
31
31
|
task: ITask;
|
|
32
32
|
}
|
|
33
|
-
export declare const
|
|
34
|
-
export declare namespace
|
|
33
|
+
export declare const TaskAfterUpdateEventHandler: import("@webiny/di").Abstraction<IEventHandler<DomainEvent<TaskAfterUpdatePayload>>>;
|
|
34
|
+
export declare namespace TaskAfterUpdateEventHandler {
|
|
35
35
|
type Interface = IEventHandler<DomainEvent<TaskAfterUpdatePayload>>;
|
|
36
36
|
type Event = DomainEvent<TaskAfterUpdatePayload>;
|
|
37
37
|
}
|
|
38
38
|
export interface TaskBeforeDeletePayload {
|
|
39
39
|
task: ITask;
|
|
40
40
|
}
|
|
41
|
-
export declare const
|
|
42
|
-
export declare namespace
|
|
41
|
+
export declare const TaskBeforeDeleteEventHandler: import("@webiny/di").Abstraction<IEventHandler<DomainEvent<TaskBeforeDeletePayload>>>;
|
|
42
|
+
export declare namespace TaskBeforeDeleteEventHandler {
|
|
43
43
|
type Interface = IEventHandler<DomainEvent<TaskBeforeDeletePayload>>;
|
|
44
44
|
type Event = DomainEvent<TaskBeforeDeletePayload>;
|
|
45
45
|
}
|
|
46
46
|
export interface TaskAfterDeletePayload {
|
|
47
47
|
task: ITask;
|
|
48
48
|
}
|
|
49
|
-
export declare const
|
|
50
|
-
export declare namespace
|
|
49
|
+
export declare const TaskAfterDeleteEventHandler: import("@webiny/di").Abstraction<IEventHandler<DomainEvent<TaskAfterDeletePayload>>>;
|
|
50
|
+
export declare namespace TaskAfterDeleteEventHandler {
|
|
51
51
|
type Interface = IEventHandler<DomainEvent<TaskAfterDeletePayload>>;
|
|
52
52
|
type Event = DomainEvent<TaskAfterDeletePayload>;
|
|
53
53
|
}
|
package/events/abstractions.js
CHANGED
|
@@ -4,36 +4,36 @@ import { createAbstraction } from "@webiny/feature/api";
|
|
|
4
4
|
// TaskBeforeCreate Event
|
|
5
5
|
// ============================================================================
|
|
6
6
|
|
|
7
|
-
export const
|
|
7
|
+
export const TaskBeforeCreateEventHandler = createAbstraction("TaskBeforeCreateEventHandler");
|
|
8
8
|
|
|
9
9
|
// ============================================================================
|
|
10
10
|
// TaskAfterCreate Event
|
|
11
11
|
// ============================================================================
|
|
12
12
|
|
|
13
|
-
export const
|
|
13
|
+
export const TaskAfterCreateEventHandler = createAbstraction("TaskAfterCreateEventHandler");
|
|
14
14
|
|
|
15
15
|
// ============================================================================
|
|
16
16
|
// TaskBeforeUpdate Event
|
|
17
17
|
// ============================================================================
|
|
18
18
|
|
|
19
|
-
export const
|
|
19
|
+
export const TaskBeforeUpdateEventHandler = createAbstraction("TaskBeforeUpdateEventHandler");
|
|
20
20
|
|
|
21
21
|
// ============================================================================
|
|
22
22
|
// TaskAfterUpdate Event
|
|
23
23
|
// ============================================================================
|
|
24
24
|
|
|
25
|
-
export const
|
|
25
|
+
export const TaskAfterUpdateEventHandler = createAbstraction("TaskAfterUpdateEventHandler");
|
|
26
26
|
|
|
27
27
|
// ============================================================================
|
|
28
28
|
// TaskBeforeDelete Event
|
|
29
29
|
// ============================================================================
|
|
30
30
|
|
|
31
|
-
export const
|
|
31
|
+
export const TaskBeforeDeleteEventHandler = createAbstraction("TaskBeforeDeleteEventHandler");
|
|
32
32
|
|
|
33
33
|
// ============================================================================
|
|
34
34
|
// TaskAfterDelete Event
|
|
35
35
|
// ============================================================================
|
|
36
36
|
|
|
37
|
-
export const
|
|
37
|
+
export const TaskAfterDeleteEventHandler = createAbstraction("TaskAfterDeleteEventHandler");
|
|
38
38
|
|
|
39
39
|
//# sourceMappingURL=abstractions.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["createAbstraction","
|
|
1
|
+
{"version":3,"names":["createAbstraction","TaskBeforeCreateEventHandler","TaskAfterCreateEventHandler","TaskBeforeUpdateEventHandler","TaskAfterUpdateEventHandler","TaskBeforeDeleteEventHandler","TaskAfterDeleteEventHandler"],"sources":["abstractions.ts"],"sourcesContent":["import { createAbstraction } from \"@webiny/feature/api\";\nimport type { DomainEvent, IEventHandler } from \"@webiny/api-core/features/EventPublisher\";\nimport type { ITask, ITaskCreateData, ITaskUpdateData } from \"~/types.js\";\n\n// ============================================================================\n// TaskBeforeCreate Event\n// ============================================================================\n\nexport interface TaskBeforeCreatePayload {\n input: ITaskCreateData;\n}\n\nexport const TaskBeforeCreateEventHandler = createAbstraction<\n IEventHandler<DomainEvent<TaskBeforeCreatePayload>>\n>(\"TaskBeforeCreateEventHandler\");\n\nexport namespace TaskBeforeCreateEventHandler {\n export type Interface = IEventHandler<DomainEvent<TaskBeforeCreatePayload>>;\n export type Event = DomainEvent<TaskBeforeCreatePayload>;\n}\n\n// ============================================================================\n// TaskAfterCreate Event\n// ============================================================================\n\nexport interface TaskAfterCreatePayload {\n input: ITaskCreateData;\n task: ITask;\n}\n\nexport const TaskAfterCreateEventHandler = createAbstraction<\n IEventHandler<DomainEvent<TaskAfterCreatePayload>>\n>(\"TaskAfterCreateEventHandler\");\n\nexport namespace TaskAfterCreateEventHandler {\n export type Interface = IEventHandler<DomainEvent<TaskAfterCreatePayload>>;\n export type Event = DomainEvent<TaskAfterCreatePayload>;\n}\n\n// ============================================================================\n// TaskBeforeUpdate Event\n// ============================================================================\n\nexport interface TaskBeforeUpdatePayload {\n input: ITaskUpdateData;\n original: ITask;\n}\n\nexport const TaskBeforeUpdateEventHandler = createAbstraction<\n IEventHandler<DomainEvent<TaskBeforeUpdatePayload>>\n>(\"TaskBeforeUpdateEventHandler\");\n\nexport namespace TaskBeforeUpdateEventHandler {\n export type Interface = IEventHandler<DomainEvent<TaskBeforeUpdatePayload>>;\n export type Event = DomainEvent<TaskBeforeUpdatePayload>;\n}\n\n// ============================================================================\n// TaskAfterUpdate Event\n// ============================================================================\n\nexport interface TaskAfterUpdatePayload {\n input: ITaskUpdateData;\n task: ITask;\n}\n\nexport const TaskAfterUpdateEventHandler = createAbstraction<\n IEventHandler<DomainEvent<TaskAfterUpdatePayload>>\n>(\"TaskAfterUpdateEventHandler\");\n\nexport namespace TaskAfterUpdateEventHandler {\n export type Interface = IEventHandler<DomainEvent<TaskAfterUpdatePayload>>;\n export type Event = DomainEvent<TaskAfterUpdatePayload>;\n}\n\n// ============================================================================\n// TaskBeforeDelete Event\n// ============================================================================\n\nexport interface TaskBeforeDeletePayload {\n task: ITask;\n}\n\nexport const TaskBeforeDeleteEventHandler = createAbstraction<\n IEventHandler<DomainEvent<TaskBeforeDeletePayload>>\n>(\"TaskBeforeDeleteEventHandler\");\n\nexport namespace TaskBeforeDeleteEventHandler {\n export type Interface = IEventHandler<DomainEvent<TaskBeforeDeletePayload>>;\n export type Event = DomainEvent<TaskBeforeDeletePayload>;\n}\n\n// ============================================================================\n// TaskAfterDelete Event\n// ============================================================================\n\nexport interface TaskAfterDeletePayload {\n task: ITask;\n}\n\nexport const TaskAfterDeleteEventHandler = createAbstraction<\n IEventHandler<DomainEvent<TaskAfterDeletePayload>>\n>(\"TaskAfterDeleteEventHandler\");\n\nexport namespace TaskAfterDeleteEventHandler {\n export type Interface = IEventHandler<DomainEvent<TaskAfterDeletePayload>>;\n export type Event = DomainEvent<TaskAfterDeletePayload>;\n}\n"],"mappings":"AAAA,SAASA,iBAAiB,QAAQ,qBAAqB;;AAIvD;AACA;AACA;;AAMA,OAAO,MAAMC,4BAA4B,GAAGD,iBAAiB,CAE3D,8BAA8B,CAAC;;AAOjC;AACA;AACA;;AAOA,OAAO,MAAME,2BAA2B,GAAGF,iBAAiB,CAE1D,6BAA6B,CAAC;;AAOhC;AACA;AACA;;AAOA,OAAO,MAAMG,4BAA4B,GAAGH,iBAAiB,CAE3D,8BAA8B,CAAC;;AAOjC;AACA;AACA;;AAOA,OAAO,MAAMI,2BAA2B,GAAGJ,iBAAiB,CAE1D,6BAA6B,CAAC;;AAOhC;AACA;AACA;;AAMA,OAAO,MAAMK,4BAA4B,GAAGL,iBAAiB,CAE3D,8BAA8B,CAAC;;AAOjC;AACA;AACA;;AAMA,OAAO,MAAMM,2BAA2B,GAAGN,iBAAiB,CAE1D,6BAA6B,CAAC","ignoreList":[]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@webiny/tasks",
|
|
3
|
-
"version": "0.0.0-unstable.
|
|
3
|
+
"version": "0.0.0-unstable.c27f4d8a31",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"main": "index.js",
|
|
6
6
|
"repository": {
|
|
@@ -13,26 +13,26 @@
|
|
|
13
13
|
],
|
|
14
14
|
"license": "MIT",
|
|
15
15
|
"dependencies": {
|
|
16
|
-
"@webiny/api": "0.0.0-unstable.
|
|
17
|
-
"@webiny/api-core": "0.0.0-unstable.
|
|
18
|
-
"@webiny/api-headless-cms": "0.0.0-unstable.
|
|
19
|
-
"@webiny/aws-sdk": "0.0.0-unstable.
|
|
20
|
-
"@webiny/error": "0.0.0-unstable.
|
|
21
|
-
"@webiny/feature": "0.0.0-unstable.
|
|
22
|
-
"@webiny/handler": "0.0.0-unstable.
|
|
23
|
-
"@webiny/handler-aws": "0.0.0-unstable.
|
|
24
|
-
"@webiny/handler-graphql": "0.0.0-unstable.
|
|
25
|
-
"@webiny/plugins": "0.0.0-unstable.
|
|
26
|
-
"@webiny/utils": "0.0.0-unstable.
|
|
16
|
+
"@webiny/api": "0.0.0-unstable.c27f4d8a31",
|
|
17
|
+
"@webiny/api-core": "0.0.0-unstable.c27f4d8a31",
|
|
18
|
+
"@webiny/api-headless-cms": "0.0.0-unstable.c27f4d8a31",
|
|
19
|
+
"@webiny/aws-sdk": "0.0.0-unstable.c27f4d8a31",
|
|
20
|
+
"@webiny/error": "0.0.0-unstable.c27f4d8a31",
|
|
21
|
+
"@webiny/feature": "0.0.0-unstable.c27f4d8a31",
|
|
22
|
+
"@webiny/handler": "0.0.0-unstable.c27f4d8a31",
|
|
23
|
+
"@webiny/handler-aws": "0.0.0-unstable.c27f4d8a31",
|
|
24
|
+
"@webiny/handler-graphql": "0.0.0-unstable.c27f4d8a31",
|
|
25
|
+
"@webiny/plugins": "0.0.0-unstable.c27f4d8a31",
|
|
26
|
+
"@webiny/utils": "0.0.0-unstable.c27f4d8a31",
|
|
27
27
|
"deep-equal": "2.2.3",
|
|
28
28
|
"lodash": "4.17.23",
|
|
29
29
|
"object-merge-advanced": "12.1.0",
|
|
30
30
|
"object-sizeof": "2.6.5",
|
|
31
|
-
"zod": "3.
|
|
31
|
+
"zod": "4.3.6"
|
|
32
32
|
},
|
|
33
33
|
"devDependencies": {
|
|
34
|
-
"@webiny/build-tools": "0.0.0-unstable.
|
|
35
|
-
"@webiny/project-utils": "0.0.0-unstable.
|
|
34
|
+
"@webiny/build-tools": "0.0.0-unstable.c27f4d8a31",
|
|
35
|
+
"@webiny/project-utils": "0.0.0-unstable.c27f4d8a31",
|
|
36
36
|
"rimraf": "6.1.3",
|
|
37
37
|
"type-fest": "5.4.4",
|
|
38
38
|
"typescript": "5.9.3",
|
|
@@ -42,5 +42,5 @@
|
|
|
42
42
|
"access": "public",
|
|
43
43
|
"directory": "dist"
|
|
44
44
|
},
|
|
45
|
-
"gitHead": "
|
|
45
|
+
"gitHead": "c27f4d8a31c3af1570817797441855292b6c1f20"
|
|
46
46
|
}
|