@webiny/background-tasks 0.0.0-unstable.0156a4c312
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/LICENSE +21 -0
- package/README.md +11 -0
- package/admin/BackgroundTaskRoutes.d.ts +2 -0
- package/admin/BackgroundTaskRoutes.js +70 -0
- package/admin/BackgroundTaskRoutes.js.map +1 -0
- package/admin/BackgroundTasks.d.ts +2 -0
- package/admin/BackgroundTasks.js +55 -0
- package/admin/BackgroundTasks.js.map +1 -0
- package/admin/features/abortTask/AbortTaskGateway.d.ts +12 -0
- package/admin/features/abortTask/AbortTaskGateway.js +62 -0
- package/admin/features/abortTask/AbortTaskGateway.js.map +1 -0
- package/admin/features/abortTask/AbortTaskUseCase.d.ts +11 -0
- package/admin/features/abortTask/AbortTaskUseCase.js +18 -0
- package/admin/features/abortTask/AbortTaskUseCase.js.map +1 -0
- package/admin/features/abortTask/abstractions.d.ts +19 -0
- package/admin/features/abortTask/abstractions.js +6 -0
- package/admin/features/abortTask/abstractions.js.map +1 -0
- package/admin/features/abortTask/feature.d.ts +3 -0
- package/admin/features/abortTask/feature.js +19 -0
- package/admin/features/abortTask/feature.js.map +1 -0
- package/admin/features/abortTask/index.d.ts +2 -0
- package/admin/features/abortTask/index.js +2 -0
- package/admin/features/deleteTask/DeleteTaskGateway.d.ts +11 -0
- package/admin/features/deleteTask/DeleteTaskGateway.js +41 -0
- package/admin/features/deleteTask/DeleteTaskGateway.js.map +1 -0
- package/admin/features/deleteTask/DeleteTaskUseCase.d.ts +10 -0
- package/admin/features/deleteTask/DeleteTaskUseCase.js +18 -0
- package/admin/features/deleteTask/DeleteTaskUseCase.js.map +1 -0
- package/admin/features/deleteTask/abstractions.d.ts +14 -0
- package/admin/features/deleteTask/abstractions.js +6 -0
- package/admin/features/deleteTask/abstractions.js.map +1 -0
- package/admin/features/deleteTask/feature.d.ts +3 -0
- package/admin/features/deleteTask/feature.js +19 -0
- package/admin/features/deleteTask/feature.js.map +1 -0
- package/admin/features/deleteTask/index.d.ts +2 -0
- package/admin/features/deleteTask/index.js +2 -0
- package/admin/features/getBackgroundTaskSettings/GetBackgroundTaskSettingsGateway.d.ts +12 -0
- package/admin/features/getBackgroundTaskSettings/GetBackgroundTaskSettingsGateway.js +40 -0
- package/admin/features/getBackgroundTaskSettings/GetBackgroundTaskSettingsGateway.js.map +1 -0
- package/admin/features/getBackgroundTaskSettings/GetBackgroundTaskSettingsUseCase.d.ts +11 -0
- package/admin/features/getBackgroundTaskSettings/GetBackgroundTaskSettingsUseCase.js +18 -0
- package/admin/features/getBackgroundTaskSettings/GetBackgroundTaskSettingsUseCase.js.map +1 -0
- package/admin/features/getBackgroundTaskSettings/abstractions.d.ts +15 -0
- package/admin/features/getBackgroundTaskSettings/abstractions.js +6 -0
- package/admin/features/getBackgroundTaskSettings/abstractions.js.map +1 -0
- package/admin/features/getBackgroundTaskSettings/feature.d.ts +3 -0
- package/admin/features/getBackgroundTaskSettings/feature.js +19 -0
- package/admin/features/getBackgroundTaskSettings/feature.js.map +1 -0
- package/admin/features/getBackgroundTaskSettings/index.d.ts +3 -0
- package/admin/features/getBackgroundTaskSettings/index.js +2 -0
- package/admin/features/getTask/GetTaskGateway.d.ts +12 -0
- package/admin/features/getTask/GetTaskGateway.js +61 -0
- package/admin/features/getTask/GetTaskGateway.js.map +1 -0
- package/admin/features/getTask/GetTaskUseCase.d.ts +11 -0
- package/admin/features/getTask/GetTaskUseCase.js +18 -0
- package/admin/features/getTask/GetTaskUseCase.js.map +1 -0
- package/admin/features/getTask/abstractions.d.ts +15 -0
- package/admin/features/getTask/abstractions.js +6 -0
- package/admin/features/getTask/abstractions.js.map +1 -0
- package/admin/features/getTask/feature.d.ts +3 -0
- package/admin/features/getTask/feature.js +19 -0
- package/admin/features/getTask/feature.js.map +1 -0
- package/admin/features/getTask/index.d.ts +2 -0
- package/admin/features/getTask/index.js +2 -0
- package/admin/features/listDefinitions/ListDefinitionsGateway.d.ts +12 -0
- package/admin/features/listDefinitions/ListDefinitionsGateway.js +42 -0
- package/admin/features/listDefinitions/ListDefinitionsGateway.js.map +1 -0
- package/admin/features/listDefinitions/ListDefinitionsUseCase.d.ts +11 -0
- package/admin/features/listDefinitions/ListDefinitionsUseCase.js +18 -0
- package/admin/features/listDefinitions/ListDefinitionsUseCase.js.map +1 -0
- package/admin/features/listDefinitions/abstractions.d.ts +15 -0
- package/admin/features/listDefinitions/abstractions.js +6 -0
- package/admin/features/listDefinitions/abstractions.js.map +1 -0
- package/admin/features/listDefinitions/feature.d.ts +3 -0
- package/admin/features/listDefinitions/feature.js +19 -0
- package/admin/features/listDefinitions/feature.js.map +1 -0
- package/admin/features/listDefinitions/index.d.ts +2 -0
- package/admin/features/listDefinitions/index.js +2 -0
- package/admin/features/listLogs/ListLogsGateway.d.ts +11 -0
- package/admin/features/listLogs/ListLogsGateway.js +73 -0
- package/admin/features/listLogs/ListLogsGateway.js.map +1 -0
- package/admin/features/listLogs/ListLogsUseCase.d.ts +10 -0
- package/admin/features/listLogs/ListLogsUseCase.js +18 -0
- package/admin/features/listLogs/ListLogsUseCase.js.map +1 -0
- package/admin/features/listLogs/abstractions.d.ts +30 -0
- package/admin/features/listLogs/abstractions.js +6 -0
- package/admin/features/listLogs/abstractions.js.map +1 -0
- package/admin/features/listLogs/feature.d.ts +3 -0
- package/admin/features/listLogs/feature.js +19 -0
- package/admin/features/listLogs/feature.js.map +1 -0
- package/admin/features/listLogs/index.d.ts +2 -0
- package/admin/features/listLogs/index.js +2 -0
- package/admin/features/listTasks/ListTasksGateway.d.ts +11 -0
- package/admin/features/listTasks/ListTasksGateway.js +79 -0
- package/admin/features/listTasks/ListTasksGateway.js.map +1 -0
- package/admin/features/listTasks/ListTasksUseCase.d.ts +10 -0
- package/admin/features/listTasks/ListTasksUseCase.js +18 -0
- package/admin/features/listTasks/ListTasksUseCase.js.map +1 -0
- package/admin/features/listTasks/abstractions.d.ts +31 -0
- package/admin/features/listTasks/abstractions.js +6 -0
- package/admin/features/listTasks/abstractions.js.map +1 -0
- package/admin/features/listTasks/feature.d.ts +3 -0
- package/admin/features/listTasks/feature.js +19 -0
- package/admin/features/listTasks/feature.js.map +1 -0
- package/admin/features/listTasks/index.d.ts +2 -0
- package/admin/features/listTasks/index.js +2 -0
- package/admin/features/permissions/abstractions.d.ts +17 -0
- package/admin/features/permissions/abstractions.js +6 -0
- package/admin/features/permissions/abstractions.js.map +1 -0
- package/admin/features/permissions/feature.d.ts +14 -0
- package/admin/features/permissions/feature.js +7 -0
- package/admin/features/permissions/feature.js.map +1 -0
- package/admin/features/permissions/index.d.ts +2 -0
- package/admin/features/permissions/index.js +2 -0
- package/admin/features/updateBackgroundTaskSettings/UpdateBackgroundTaskSettingsGateway.d.ts +12 -0
- package/admin/features/updateBackgroundTaskSettings/UpdateBackgroundTaskSettingsGateway.js +43 -0
- package/admin/features/updateBackgroundTaskSettings/UpdateBackgroundTaskSettingsGateway.js.map +1 -0
- package/admin/features/updateBackgroundTaskSettings/UpdateBackgroundTaskSettingsUseCase.d.ts +11 -0
- package/admin/features/updateBackgroundTaskSettings/UpdateBackgroundTaskSettingsUseCase.js +18 -0
- package/admin/features/updateBackgroundTaskSettings/UpdateBackgroundTaskSettingsUseCase.js.map +1 -0
- package/admin/features/updateBackgroundTaskSettings/abstractions.d.ts +18 -0
- package/admin/features/updateBackgroundTaskSettings/abstractions.js +6 -0
- package/admin/features/updateBackgroundTaskSettings/abstractions.js.map +1 -0
- package/admin/features/updateBackgroundTaskSettings/feature.d.ts +3 -0
- package/admin/features/updateBackgroundTaskSettings/feature.js +19 -0
- package/admin/features/updateBackgroundTaskSettings/feature.js.map +1 -0
- package/admin/features/updateBackgroundTaskSettings/index.d.ts +3 -0
- package/admin/features/updateBackgroundTaskSettings/index.js +2 -0
- package/admin/index.d.ts +2 -0
- package/admin/index.js +2 -0
- package/admin/permissions.d.ts +12 -0
- package/admin/permissions.js +22 -0
- package/admin/permissions.js.map +1 -0
- package/admin/presentation/BackgroundTaskSettings/BackgroundTaskSettingsPresenter.d.ts +21 -0
- package/admin/presentation/BackgroundTaskSettings/BackgroundTaskSettingsPresenter.js +86 -0
- package/admin/presentation/BackgroundTaskSettings/BackgroundTaskSettingsPresenter.js.map +1 -0
- package/admin/presentation/BackgroundTaskSettings/abstractions.d.ts +16 -0
- package/admin/presentation/BackgroundTaskSettings/abstractions.js +5 -0
- package/admin/presentation/BackgroundTaskSettings/abstractions.js.map +1 -0
- package/admin/presentation/BackgroundTaskSettings/components/BackgroundTaskSettingsView.d.ts +2 -0
- package/admin/presentation/BackgroundTaskSettings/components/BackgroundTaskSettingsView.js +56 -0
- package/admin/presentation/BackgroundTaskSettings/components/BackgroundTaskSettingsView.js.map +1 -0
- package/admin/presentation/BackgroundTaskSettings/feature.d.ts +3 -0
- package/admin/presentation/BackgroundTaskSettings/feature.js +17 -0
- package/admin/presentation/BackgroundTaskSettings/feature.js.map +1 -0
- package/admin/presentation/BackgroundTaskSettings/index.d.ts +2 -0
- package/admin/presentation/BackgroundTaskSettings/index.js +2 -0
- package/admin/presentation/TaskDefinitions/TaskDefinitionsPresenter.d.ts +14 -0
- package/admin/presentation/TaskDefinitions/TaskDefinitionsPresenter.js +41 -0
- package/admin/presentation/TaskDefinitions/TaskDefinitionsPresenter.js.map +1 -0
- package/admin/presentation/TaskDefinitions/abstractions.d.ts +14 -0
- package/admin/presentation/TaskDefinitions/abstractions.js +5 -0
- package/admin/presentation/TaskDefinitions/abstractions.js.map +1 -0
- package/admin/presentation/TaskDefinitions/components/TaskDefinitionsView.d.ts +2 -0
- package/admin/presentation/TaskDefinitions/components/TaskDefinitionsView.js +76 -0
- package/admin/presentation/TaskDefinitions/components/TaskDefinitionsView.js.map +1 -0
- package/admin/presentation/TaskDefinitions/components/TaskExecutionsButton.d.ts +2 -0
- package/admin/presentation/TaskDefinitions/components/TaskExecutionsButton.js +16 -0
- package/admin/presentation/TaskDefinitions/components/TaskExecutionsButton.js.map +1 -0
- package/admin/presentation/TaskDefinitions/feature.d.ts +3 -0
- package/admin/presentation/TaskDefinitions/feature.js +17 -0
- package/admin/presentation/TaskDefinitions/feature.js.map +1 -0
- package/admin/presentation/TaskDefinitions/index.d.ts +2 -0
- package/admin/presentation/TaskDefinitions/index.js +2 -0
- package/admin/presentation/TaskDetail/TaskDetailPresenter.d.ts +24 -0
- package/admin/presentation/TaskDetail/TaskDetailPresenter.js +87 -0
- package/admin/presentation/TaskDetail/TaskDetailPresenter.js.map +1 -0
- package/admin/presentation/TaskDetail/abstractions.d.ts +24 -0
- package/admin/presentation/TaskDetail/abstractions.js +5 -0
- package/admin/presentation/TaskDetail/abstractions.js.map +1 -0
- package/admin/presentation/TaskDetail/components/TaskDetailDrawer.d.ts +11 -0
- package/admin/presentation/TaskDetail/components/TaskDetailDrawer.js +270 -0
- package/admin/presentation/TaskDetail/components/TaskDetailDrawer.js.map +1 -0
- package/admin/presentation/TaskDetail/feature.d.ts +3 -0
- package/admin/presentation/TaskDetail/feature.js +17 -0
- package/admin/presentation/TaskDetail/feature.js.map +1 -0
- package/admin/presentation/TaskDetail/index.d.ts +2 -0
- package/admin/presentation/TaskDetail/index.js +2 -0
- package/admin/presentation/TaskExecutions/TaskExecutionsDataSource.d.ts +15 -0
- package/admin/presentation/TaskExecutions/TaskExecutionsDataSource.js +91 -0
- package/admin/presentation/TaskExecutions/TaskExecutionsDataSource.js.map +1 -0
- package/admin/presentation/TaskExecutions/TaskExecutionsPresenter.d.ts +54 -0
- package/admin/presentation/TaskExecutions/TaskExecutionsPresenter.js +109 -0
- package/admin/presentation/TaskExecutions/TaskExecutionsPresenter.js.map +1 -0
- package/admin/presentation/TaskExecutions/abstractions.d.ts +28 -0
- package/admin/presentation/TaskExecutions/abstractions.js +5 -0
- package/admin/presentation/TaskExecutions/abstractions.js.map +1 -0
- package/admin/presentation/TaskExecutions/components/TaskDefinitionsButton.d.ts +2 -0
- package/admin/presentation/TaskExecutions/components/TaskDefinitionsButton.js +16 -0
- package/admin/presentation/TaskExecutions/components/TaskDefinitionsButton.js.map +1 -0
- package/admin/presentation/TaskExecutions/components/TaskExecutionsView.d.ts +2 -0
- package/admin/presentation/TaskExecutions/components/TaskExecutionsView.js +341 -0
- package/admin/presentation/TaskExecutions/components/TaskExecutionsView.js.map +1 -0
- package/admin/presentation/TaskExecutions/feature.d.ts +3 -0
- package/admin/presentation/TaskExecutions/feature.js +17 -0
- package/admin/presentation/TaskExecutions/feature.js.map +1 -0
- package/admin/presentation/TaskExecutions/index.d.ts +2 -0
- package/admin/presentation/TaskExecutions/index.js +2 -0
- package/admin/presentation/security/HasPermission.d.ts +12 -0
- package/admin/presentation/security/HasPermission.js +6 -0
- package/admin/presentation/security/HasPermission.js.map +1 -0
- package/admin/presentation/security/usePermissions.d.ts +12 -0
- package/admin/presentation/security/usePermissions.js +6 -0
- package/admin/presentation/security/usePermissions.js.map +1 -0
- package/admin/routes.d.ts +6 -0
- package/admin/routes.js +18 -0
- package/admin/routes.js.map +1 -0
- package/admin/shared/types.d.ts +18 -0
- package/admin/shared/types.js +0 -0
- package/api/BackgroundTasksFeature.d.ts +4 -0
- package/api/BackgroundTasksFeature.js +79 -0
- package/api/BackgroundTasksFeature.js.map +1 -0
- package/api/abstractions/Timer.d.ts +1 -0
- package/api/abstractions/Timer.js +0 -0
- package/api/abstractions/index.d.ts +1 -0
- package/api/abstractions/index.js +1 -0
- package/api/crud/TaskLogPrivateModel.d.ts +9 -0
- package/api/crud/TaskLogPrivateModel.js +41 -0
- package/api/crud/TaskLogPrivateModel.js.map +1 -0
- package/api/crud/TaskPrivateModel.d.ts +9 -0
- package/api/crud/TaskPrivateModel.js +56 -0
- package/api/crud/TaskPrivateModel.js.map +1 -0
- package/api/decorators/SelfCleaningTaskHandlerDecorator.d.ts +33 -0
- package/api/decorators/SelfCleaningTaskHandlerDecorator.js +69 -0
- package/api/decorators/SelfCleaningTaskHandlerDecorator.js.map +1 -0
- package/api/decorators/TaskDefinitionDefaultsDecorator.d.ts +27 -0
- package/api/decorators/TaskDefinitionDefaultsDecorator.js +47 -0
- package/api/decorators/TaskDefinitionDefaultsDecorator.js.map +1 -0
- package/api/domain/BackgroundTaskSettings.d.ts +3 -0
- package/api/domain/BackgroundTaskSettings.js +0 -0
- package/api/domain/TaskService.d.ts +12 -0
- package/api/domain/TaskService.js +5 -0
- package/api/domain/TaskService.js.map +1 -0
- package/api/domain/constants.d.ts +3 -0
- package/api/domain/constants.js +6 -0
- package/api/domain/constants.js.map +1 -0
- package/api/domain/errors.d.ts +61 -0
- package/api/domain/errors.js +109 -0
- package/api/domain/errors.js.map +1 -0
- package/api/domain/task/TaskLogModelProvider.d.ts +12 -0
- package/api/domain/task/TaskLogModelProvider.js +23 -0
- package/api/domain/task/TaskLogModelProvider.js.map +1 -0
- package/api/domain/task/TaskLogsRepository.d.ts +34 -0
- package/api/domain/task/TaskLogsRepository.js +146 -0
- package/api/domain/task/TaskLogsRepository.js.map +1 -0
- package/api/domain/task/TaskModelProvider.d.ts +12 -0
- package/api/domain/task/TaskModelProvider.js +23 -0
- package/api/domain/task/TaskModelProvider.js.map +1 -0
- package/api/domain/task/TasksRepository.d.ts +37 -0
- package/api/domain/task/TasksRepository.js +126 -0
- package/api/domain/task/TasksRepository.js.map +1 -0
- package/api/domain/task/abstractions.d.ts +50 -0
- package/api/domain/task/abstractions.js +8 -0
- package/api/domain/task/abstractions.js.map +1 -0
- package/api/domain/task/createRevisionId.d.ts +1 -0
- package/api/domain/task/createRevisionId.js +8 -0
- package/api/domain/task/createRevisionId.js.map +1 -0
- package/api/domain/task/entryToTask.d.ts +3 -0
- package/api/domain/task/entryToTask.js +20 -0
- package/api/domain/task/entryToTask.js.map +1 -0
- package/api/domain/task/entryToTaskLog.d.ts +3 -0
- package/api/domain/task/entryToTaskLog.js +12 -0
- package/api/domain/task/entryToTaskLog.js.map +1 -0
- package/api/events/TaskAfterCreateEvent.d.ts +6 -0
- package/api/events/TaskAfterCreateEvent.js +13 -0
- package/api/events/TaskAfterCreateEvent.js.map +1 -0
- package/api/events/TaskAfterDeleteEvent.d.ts +6 -0
- package/api/events/TaskAfterDeleteEvent.js +13 -0
- package/api/events/TaskAfterDeleteEvent.js.map +1 -0
- package/api/events/TaskAfterUpdateEvent.d.ts +6 -0
- package/api/events/TaskAfterUpdateEvent.js +13 -0
- package/api/events/TaskAfterUpdateEvent.js.map +1 -0
- package/api/events/TaskBeforeCreateEvent.d.ts +6 -0
- package/api/events/TaskBeforeCreateEvent.js +13 -0
- package/api/events/TaskBeforeCreateEvent.js.map +1 -0
- package/api/events/TaskBeforeDeleteEvent.d.ts +6 -0
- package/api/events/TaskBeforeDeleteEvent.js +13 -0
- package/api/events/TaskBeforeDeleteEvent.js.map +1 -0
- package/api/events/TaskBeforeUpdateEvent.d.ts +6 -0
- package/api/events/TaskBeforeUpdateEvent.js +13 -0
- package/api/events/TaskBeforeUpdateEvent.js.map +1 -0
- package/api/events/abstractions.d.ts +53 -0
- package/api/events/abstractions.js +10 -0
- package/api/events/abstractions.js.map +1 -0
- package/api/events/index.d.ts +7 -0
- package/api/events/index.js +7 -0
- package/api/features/AbortTask/AbortTaskUseCase.d.ts +9 -0
- package/api/features/AbortTask/AbortTaskUseCase.js +12 -0
- package/api/features/AbortTask/AbortTaskUseCase.js.map +1 -0
- package/api/features/AbortTask/abstractions.d.ts +25 -0
- package/api/features/AbortTask/abstractions.js +5 -0
- package/api/features/AbortTask/abstractions.js.map +1 -0
- package/api/features/AbortTask/feature.d.ts +4 -0
- package/api/features/AbortTask/feature.js +13 -0
- package/api/features/AbortTask/feature.js.map +1 -0
- package/api/features/AbortTask/index.d.ts +2 -0
- package/api/features/AbortTask/index.js +2 -0
- package/api/features/BackgroundTaskPermissions/abstractions.d.ts +17 -0
- package/api/features/BackgroundTaskPermissions/abstractions.js +6 -0
- package/api/features/BackgroundTaskPermissions/abstractions.js.map +1 -0
- package/api/features/BackgroundTaskPermissions/feature.d.ts +4 -0
- package/api/features/BackgroundTaskPermissions/feature.js +7 -0
- package/api/features/BackgroundTaskPermissions/feature.js.map +1 -0
- package/api/features/BackgroundTaskPermissions/index.d.ts +2 -0
- package/api/features/BackgroundTaskPermissions/index.js +2 -0
- package/api/features/CleanupTaskSubtree/CleanupTaskSubtreeUseCase.d.ts +27 -0
- package/api/features/CleanupTaskSubtree/CleanupTaskSubtreeUseCase.js +117 -0
- package/api/features/CleanupTaskSubtree/CleanupTaskSubtreeUseCase.js.map +1 -0
- package/api/features/CleanupTaskSubtree/abstractions.d.ts +7 -0
- package/api/features/CleanupTaskSubtree/abstractions.js +5 -0
- package/api/features/CleanupTaskSubtree/abstractions.js.map +1 -0
- package/api/features/CleanupTaskSubtree/feature.d.ts +4 -0
- package/api/features/CleanupTaskSubtree/feature.js +11 -0
- package/api/features/CleanupTaskSubtree/feature.js.map +1 -0
- package/api/features/CleanupTaskSubtree/index.d.ts +2 -0
- package/api/features/CleanupTaskSubtree/index.js +2 -0
- package/api/features/CreateTask/CreateTaskUseCase.d.ts +17 -0
- package/api/features/CreateTask/CreateTaskUseCase.js +56 -0
- package/api/features/CreateTask/CreateTaskUseCase.js.map +1 -0
- package/api/features/CreateTask/abstractions.d.ts +21 -0
- package/api/features/CreateTask/abstractions.js +5 -0
- package/api/features/CreateTask/abstractions.js.map +1 -0
- package/api/features/CreateTask/feature.d.ts +4 -0
- package/api/features/CreateTask/feature.js +11 -0
- package/api/features/CreateTask/feature.js.map +1 -0
- package/api/features/CreateTask/index.d.ts +2 -0
- package/api/features/CreateTask/index.js +2 -0
- package/api/features/CreateTaskLog/CreateTaskLogUseCase.d.ts +13 -0
- package/api/features/CreateTaskLog/CreateTaskLogUseCase.js +19 -0
- package/api/features/CreateTaskLog/CreateTaskLogUseCase.js.map +1 -0
- package/api/features/CreateTaskLog/abstractions.d.ts +16 -0
- package/api/features/CreateTaskLog/abstractions.js +5 -0
- package/api/features/CreateTaskLog/abstractions.js.map +1 -0
- package/api/features/CreateTaskLog/feature.d.ts +4 -0
- package/api/features/CreateTaskLog/feature.js +11 -0
- package/api/features/CreateTaskLog/feature.js.map +1 -0
- package/api/features/CreateTaskLog/index.d.ts +2 -0
- package/api/features/CreateTaskLog/index.js +2 -0
- package/api/features/DeleteTask/DeleteTaskUseCase.d.ts +14 -0
- package/api/features/DeleteTask/DeleteTaskUseCase.js +34 -0
- package/api/features/DeleteTask/DeleteTaskUseCase.js.map +1 -0
- package/api/features/DeleteTask/abstractions.d.ts +17 -0
- package/api/features/DeleteTask/abstractions.js +5 -0
- package/api/features/DeleteTask/abstractions.js.map +1 -0
- package/api/features/DeleteTask/feature.d.ts +4 -0
- package/api/features/DeleteTask/feature.js +11 -0
- package/api/features/DeleteTask/feature.js.map +1 -0
- package/api/features/DeleteTask/index.d.ts +2 -0
- package/api/features/DeleteTask/index.js +2 -0
- package/api/features/DeleteTaskLog/DeleteTaskLogUseCase.d.ts +11 -0
- package/api/features/DeleteTaskLog/DeleteTaskLogUseCase.js +19 -0
- package/api/features/DeleteTaskLog/DeleteTaskLogUseCase.js.map +1 -0
- package/api/features/DeleteTaskLog/abstractions.d.ts +14 -0
- package/api/features/DeleteTaskLog/abstractions.js +5 -0
- package/api/features/DeleteTaskLog/abstractions.js.map +1 -0
- package/api/features/DeleteTaskLog/feature.d.ts +4 -0
- package/api/features/DeleteTaskLog/feature.js +11 -0
- package/api/features/DeleteTaskLog/feature.js.map +1 -0
- package/api/features/DeleteTaskLog/index.d.ts +2 -0
- package/api/features/DeleteTaskLog/index.js +2 -0
- package/api/features/GetBackgroundTaskSettings/GetBackgroundTaskSettingsRepository.d.ts +21 -0
- package/api/features/GetBackgroundTaskSettings/GetBackgroundTaskSettingsRepository.js +63 -0
- package/api/features/GetBackgroundTaskSettings/GetBackgroundTaskSettingsRepository.js.map +1 -0
- package/api/features/GetBackgroundTaskSettings/abstractions.d.ts +13 -0
- package/api/features/GetBackgroundTaskSettings/abstractions.js +5 -0
- package/api/features/GetBackgroundTaskSettings/abstractions.js.map +1 -0
- package/api/features/GetBackgroundTaskSettings/feature.d.ts +4 -0
- package/api/features/GetBackgroundTaskSettings/feature.js +11 -0
- package/api/features/GetBackgroundTaskSettings/feature.js.map +1 -0
- package/api/features/GetBackgroundTaskSettings/index.d.ts +2 -0
- package/api/features/GetBackgroundTaskSettings/index.js +2 -0
- package/api/features/GetLatestTaskLog/GetLatestTaskLogUseCase.d.ts +11 -0
- package/api/features/GetLatestTaskLog/GetLatestTaskLogUseCase.js +19 -0
- package/api/features/GetLatestTaskLog/GetLatestTaskLogUseCase.js.map +1 -0
- package/api/features/GetLatestTaskLog/abstractions.d.ts +15 -0
- package/api/features/GetLatestTaskLog/abstractions.js +5 -0
- package/api/features/GetLatestTaskLog/abstractions.js.map +1 -0
- package/api/features/GetLatestTaskLog/feature.d.ts +4 -0
- package/api/features/GetLatestTaskLog/feature.js +11 -0
- package/api/features/GetLatestTaskLog/feature.js.map +1 -0
- package/api/features/GetLatestTaskLog/index.d.ts +2 -0
- package/api/features/GetLatestTaskLog/index.js +2 -0
- package/api/features/GetRunnableTaskDefinition/GetRunnableTaskDefinitionUseCase.d.ts +13 -0
- package/api/features/GetRunnableTaskDefinition/GetRunnableTaskDefinitionUseCase.js +51 -0
- package/api/features/GetRunnableTaskDefinition/GetRunnableTaskDefinitionUseCase.js.map +1 -0
- package/api/features/GetRunnableTaskDefinition/abstractions.d.ts +17 -0
- package/api/features/GetRunnableTaskDefinition/abstractions.js +5 -0
- package/api/features/GetRunnableTaskDefinition/abstractions.js.map +1 -0
- package/api/features/GetRunnableTaskDefinition/feature.d.ts +4 -0
- package/api/features/GetRunnableTaskDefinition/feature.js +11 -0
- package/api/features/GetRunnableTaskDefinition/feature.js.map +1 -0
- package/api/features/GetRunnableTaskDefinition/index.d.ts +2 -0
- package/api/features/GetRunnableTaskDefinition/index.js +2 -0
- package/api/features/GetTask/GetTaskUseCase.d.ts +13 -0
- package/api/features/GetTask/GetTaskUseCase.js +19 -0
- package/api/features/GetTask/GetTaskUseCase.js.map +1 -0
- package/api/features/GetTask/abstractions.d.ts +17 -0
- package/api/features/GetTask/abstractions.js +5 -0
- package/api/features/GetTask/abstractions.js.map +1 -0
- package/api/features/GetTask/feature.d.ts +4 -0
- package/api/features/GetTask/feature.js +11 -0
- package/api/features/GetTask/feature.js.map +1 -0
- package/api/features/GetTask/index.d.ts +2 -0
- package/api/features/GetTask/index.js +2 -0
- package/api/features/ListTaskDefinitions/ListTaskDefinitionsUseCase.d.ts +11 -0
- package/api/features/ListTaskDefinitions/ListTaskDefinitionsUseCase.js +24 -0
- package/api/features/ListTaskDefinitions/ListTaskDefinitionsUseCase.js.map +1 -0
- package/api/features/ListTaskDefinitions/abstractions.d.ts +9 -0
- package/api/features/ListTaskDefinitions/abstractions.js +5 -0
- package/api/features/ListTaskDefinitions/abstractions.js.map +1 -0
- package/api/features/ListTaskDefinitions/feature.d.ts +4 -0
- package/api/features/ListTaskDefinitions/feature.js +11 -0
- package/api/features/ListTaskDefinitions/feature.js.map +1 -0
- package/api/features/ListTaskDefinitions/index.d.ts +2 -0
- package/api/features/ListTaskDefinitions/index.js +2 -0
- package/api/features/ListTaskLogs/ListTaskLogsUseCase.d.ts +12 -0
- package/api/features/ListTaskLogs/ListTaskLogsUseCase.js +19 -0
- package/api/features/ListTaskLogs/ListTaskLogsUseCase.js.map +1 -0
- package/api/features/ListTaskLogs/abstractions.d.ts +15 -0
- package/api/features/ListTaskLogs/abstractions.js +5 -0
- package/api/features/ListTaskLogs/abstractions.js.map +1 -0
- package/api/features/ListTaskLogs/feature.d.ts +4 -0
- package/api/features/ListTaskLogs/feature.js +11 -0
- package/api/features/ListTaskLogs/feature.js.map +1 -0
- package/api/features/ListTaskLogs/index.d.ts +2 -0
- package/api/features/ListTaskLogs/index.js +2 -0
- package/api/features/ListTasks/ListTasksUseCase.d.ts +13 -0
- package/api/features/ListTasks/ListTasksUseCase.js +19 -0
- package/api/features/ListTasks/ListTasksUseCase.js.map +1 -0
- package/api/features/ListTasks/abstractions.d.ts +19 -0
- package/api/features/ListTasks/abstractions.js +5 -0
- package/api/features/ListTasks/abstractions.js.map +1 -0
- package/api/features/ListTasks/feature.d.ts +4 -0
- package/api/features/ListTasks/feature.js +11 -0
- package/api/features/ListTasks/feature.js.map +1 -0
- package/api/features/ListTasks/index.d.ts +2 -0
- package/api/features/ListTasks/index.js +2 -0
- package/api/features/ListVisibleTaskDefinitions/ListVisibleTaskDefinitionsUseCase.d.ts +11 -0
- package/api/features/ListVisibleTaskDefinitions/ListVisibleTaskDefinitionsUseCase.js +19 -0
- package/api/features/ListVisibleTaskDefinitions/ListVisibleTaskDefinitionsUseCase.js.map +1 -0
- package/api/features/ListVisibleTaskDefinitions/abstractions.d.ts +9 -0
- package/api/features/ListVisibleTaskDefinitions/abstractions.js +5 -0
- package/api/features/ListVisibleTaskDefinitions/abstractions.js.map +1 -0
- package/api/features/ListVisibleTaskDefinitions/feature.d.ts +4 -0
- package/api/features/ListVisibleTaskDefinitions/feature.js +11 -0
- package/api/features/ListVisibleTaskDefinitions/feature.js.map +1 -0
- package/api/features/ListVisibleTaskDefinitions/index.d.ts +2 -0
- package/api/features/ListVisibleTaskDefinitions/index.js +2 -0
- package/api/features/TaskController/TaskController.d.ts +49 -0
- package/api/features/TaskController/TaskController.js +71 -0
- package/api/features/TaskController/TaskController.js.map +1 -0
- package/api/features/TaskController/augmentation.d.ts +60 -0
- package/api/features/TaskController/augmentation.js +0 -0
- package/api/features/TaskController/index.d.ts +2 -0
- package/api/features/TaskController/index.js +2 -0
- package/api/features/TaskExecutionContext/TaskExecutionContext.d.ts +24 -0
- package/api/features/TaskExecutionContext/TaskExecutionContext.js +43 -0
- package/api/features/TaskExecutionContext/TaskExecutionContext.js.map +1 -0
- package/api/features/TaskExecutionContext/abstractions.d.ts +26 -0
- package/api/features/TaskExecutionContext/abstractions.js +5 -0
- package/api/features/TaskExecutionContext/abstractions.js.map +1 -0
- package/api/features/TaskExecutionContext/feature.d.ts +4 -0
- package/api/features/TaskExecutionContext/feature.js +11 -0
- package/api/features/TaskExecutionContext/feature.js.map +1 -0
- package/api/features/TaskExecutionContext/index.d.ts +1 -0
- package/api/features/TaskExecutionContext/index.js +1 -0
- package/api/features/TaskHandlerResolver/TaskHandlerResolver.d.ts +12 -0
- package/api/features/TaskHandlerResolver/TaskHandlerResolver.js +19 -0
- package/api/features/TaskHandlerResolver/TaskHandlerResolver.js.map +1 -0
- package/api/features/TaskHandlerResolver/abstractions.d.ts +17 -0
- package/api/features/TaskHandlerResolver/abstractions.js +5 -0
- package/api/features/TaskHandlerResolver/abstractions.js.map +1 -0
- package/api/features/TaskHandlerResolver/feature.d.ts +9 -0
- package/api/features/TaskHandlerResolver/feature.js +11 -0
- package/api/features/TaskHandlerResolver/feature.js.map +1 -0
- package/api/features/TaskHandlerResolver/index.d.ts +2 -0
- package/api/features/TaskHandlerResolver/index.js +2 -0
- package/api/features/TaskService/BackgroundTaskService.d.ts +42 -0
- package/api/features/TaskService/BackgroundTaskService.js +191 -0
- package/api/features/TaskService/BackgroundTaskService.js.map +1 -0
- package/api/features/TaskService/feature.d.ts +4 -0
- package/api/features/TaskService/feature.js +11 -0
- package/api/features/TaskService/feature.js.map +1 -0
- package/api/features/TaskService/index.d.ts +1 -0
- package/api/features/TaskService/index.js +1 -0
- package/api/features/TriggerTask/TriggerTaskUseCase.d.ts +9 -0
- package/api/features/TriggerTask/TriggerTaskUseCase.js +12 -0
- package/api/features/TriggerTask/TriggerTaskUseCase.js.map +1 -0
- package/api/features/TriggerTask/abstractions.d.ts +28 -0
- package/api/features/TriggerTask/abstractions.js +5 -0
- package/api/features/TriggerTask/abstractions.js.map +1 -0
- package/api/features/TriggerTask/feature.d.ts +4 -0
- package/api/features/TriggerTask/feature.js +13 -0
- package/api/features/TriggerTask/feature.js.map +1 -0
- package/api/features/TriggerTask/index.d.ts +2 -0
- package/api/features/TriggerTask/index.js +2 -0
- package/api/features/TriggerVisibleTask/TriggerVisibleTaskUseCase.d.ts +15 -0
- package/api/features/TriggerVisibleTask/TriggerVisibleTaskUseCase.js +26 -0
- package/api/features/TriggerVisibleTask/TriggerVisibleTaskUseCase.js.map +1 -0
- package/api/features/TriggerVisibleTask/abstractions.d.ts +17 -0
- package/api/features/TriggerVisibleTask/abstractions.js +5 -0
- package/api/features/TriggerVisibleTask/abstractions.js.map +1 -0
- package/api/features/TriggerVisibleTask/feature.d.ts +4 -0
- package/api/features/TriggerVisibleTask/feature.js +11 -0
- package/api/features/TriggerVisibleTask/feature.js.map +1 -0
- package/api/features/TriggerVisibleTask/index.d.ts +2 -0
- package/api/features/TriggerVisibleTask/index.js +2 -0
- package/api/features/UpdateBackgroundTaskSettings/UpdateBackgroundTaskSettingsRepository.d.ts +23 -0
- package/api/features/UpdateBackgroundTaskSettings/UpdateBackgroundTaskSettingsRepository.js +67 -0
- package/api/features/UpdateBackgroundTaskSettings/UpdateBackgroundTaskSettingsRepository.js.map +1 -0
- package/api/features/UpdateBackgroundTaskSettings/UpdateBackgroundTaskSettingsUseCase.d.ts +14 -0
- package/api/features/UpdateBackgroundTaskSettings/UpdateBackgroundTaskSettingsUseCase.js +27 -0
- package/api/features/UpdateBackgroundTaskSettings/UpdateBackgroundTaskSettingsUseCase.js.map +1 -0
- package/api/features/UpdateBackgroundTaskSettings/abstractions.d.ts +26 -0
- package/api/features/UpdateBackgroundTaskSettings/abstractions.js +6 -0
- package/api/features/UpdateBackgroundTaskSettings/abstractions.js.map +1 -0
- package/api/features/UpdateBackgroundTaskSettings/feature.d.ts +4 -0
- package/api/features/UpdateBackgroundTaskSettings/feature.js +13 -0
- package/api/features/UpdateBackgroundTaskSettings/feature.js.map +1 -0
- package/api/features/UpdateBackgroundTaskSettings/index.d.ts +2 -0
- package/api/features/UpdateBackgroundTaskSettings/index.js +2 -0
- package/api/features/UpdateBackgroundTaskSettings/schema.d.ts +4 -0
- package/api/features/UpdateBackgroundTaskSettings/schema.js +8 -0
- package/api/features/UpdateBackgroundTaskSettings/schema.js.map +1 -0
- package/api/features/UpdateTask/UpdateTaskUseCase.d.ts +17 -0
- package/api/features/UpdateTask/UpdateTaskUseCase.js +36 -0
- package/api/features/UpdateTask/UpdateTaskUseCase.js.map +1 -0
- package/api/features/UpdateTask/abstractions.d.ts +22 -0
- package/api/features/UpdateTask/abstractions.js +5 -0
- package/api/features/UpdateTask/abstractions.js.map +1 -0
- package/api/features/UpdateTask/feature.d.ts +4 -0
- package/api/features/UpdateTask/feature.js +11 -0
- package/api/features/UpdateTask/feature.js.map +1 -0
- package/api/features/UpdateTask/index.d.ts +2 -0
- package/api/features/UpdateTask/index.js +2 -0
- package/api/features/UpdateTaskLog/UpdateTaskLogUseCase.d.ts +12 -0
- package/api/features/UpdateTaskLog/UpdateTaskLogUseCase.js +19 -0
- package/api/features/UpdateTaskLog/UpdateTaskLogUseCase.js.map +1 -0
- package/api/features/UpdateTaskLog/abstractions.d.ts +16 -0
- package/api/features/UpdateTaskLog/abstractions.js +5 -0
- package/api/features/UpdateTaskLog/abstractions.js.map +1 -0
- package/api/features/UpdateTaskLog/feature.d.ts +4 -0
- package/api/features/UpdateTaskLog/feature.js +11 -0
- package/api/features/UpdateTaskLog/feature.js.map +1 -0
- package/api/features/UpdateTaskLog/index.d.ts +2 -0
- package/api/features/UpdateTaskLog/index.js +2 -0
- package/api/global.d.ts +1 -0
- package/api/global.js +1 -0
- package/api/graphql/BackgroundTasksGraphQLSchema.d.ts +29 -0
- package/api/graphql/BackgroundTasksGraphQLSchema.js +462 -0
- package/api/graphql/BackgroundTasksGraphQLSchema.js.map +1 -0
- package/api/graphql/checkPermissions.d.ts +7 -0
- package/api/graphql/checkPermissions.js +22 -0
- package/api/graphql/checkPermissions.js.map +1 -0
- package/api/graphql/utils.d.ts +9 -0
- package/api/graphql/utils.js +20 -0
- package/api/graphql/utils.js.map +1 -0
- package/api/handler/types.d.ts +21 -0
- package/api/handler/types.js +0 -0
- package/api/index.d.ts +21 -0
- package/api/index.js +20 -0
- package/api/models/BackgroundTaskSettingsModel.d.ts +8 -0
- package/api/models/BackgroundTaskSettingsModel.js +27 -0
- package/api/models/BackgroundTaskSettingsModel.js.map +1 -0
- package/api/permissions.d.ts +12 -0
- package/api/permissions.js +22 -0
- package/api/permissions.js.map +1 -0
- package/api/response/DatabaseResponse.d.ts +12 -0
- package/api/response/DatabaseResponse.js +127 -0
- package/api/response/DatabaseResponse.js.map +1 -0
- package/api/response/Response.d.ts +14 -0
- package/api/response/Response.js +91 -0
- package/api/response/Response.js.map +1 -0
- package/api/response/ResponseAbortedResult.d.ts +9 -0
- package/api/response/ResponseAbortedResult.js +12 -0
- package/api/response/ResponseAbortedResult.js.map +1 -0
- package/api/response/ResponseContinueResult.d.ts +17 -0
- package/api/response/ResponseContinueResult.js +16 -0
- package/api/response/ResponseContinueResult.js.map +1 -0
- package/api/response/ResponseDoneResult.d.ts +11 -0
- package/api/response/ResponseDoneResult.js +14 -0
- package/api/response/ResponseDoneResult.js.map +1 -0
- package/api/response/ResponseErrorResult.d.ts +10 -0
- package/api/response/ResponseErrorResult.js +13 -0
- package/api/response/ResponseErrorResult.js.map +1 -0
- package/api/response/TaskResponse.d.ts +12 -0
- package/api/response/TaskResponse.js +53 -0
- package/api/response/TaskResponse.js.map +1 -0
- package/api/response/abstractions/Response.d.ts +25 -0
- package/api/response/abstractions/Response.js +0 -0
- package/api/response/abstractions/ResponseAbortedResult.d.ts +5 -0
- package/api/response/abstractions/ResponseAbortedResult.js +0 -0
- package/api/response/abstractions/ResponseBaseResult.d.ts +7 -0
- package/api/response/abstractions/ResponseBaseResult.js +0 -0
- package/api/response/abstractions/ResponseContinueResult.d.ts +21 -0
- package/api/response/abstractions/ResponseContinueResult.js +0 -0
- package/api/response/abstractions/ResponseDoneResult.d.ts +13 -0
- package/api/response/abstractions/ResponseDoneResult.js +0 -0
- package/api/response/abstractions/ResponseErrorResult.d.ts +18 -0
- package/api/response/abstractions/ResponseErrorResult.js +0 -0
- package/api/response/abstractions/TaskResponse.d.ts +16 -0
- package/api/response/abstractions/TaskResponse.js +0 -0
- package/api/response/abstractions/index.d.ts +7 -0
- package/api/response/abstractions/index.js +7 -0
- package/api/response/index.d.ts +7 -0
- package/api/response/index.js +7 -0
- package/api/runner/TaskControl.d.ts +48 -0
- package/api/runner/TaskControl.js +186 -0
- package/api/runner/TaskControl.js.map +1 -0
- package/api/runner/TaskEventValidation.d.ts +5 -0
- package/api/runner/TaskEventValidation.js +20 -0
- package/api/runner/TaskEventValidation.js.map +1 -0
- package/api/runner/TaskManager.d.ts +22 -0
- package/api/runner/TaskManager.js +83 -0
- package/api/runner/TaskManager.js.map +1 -0
- package/api/runner/TaskManagerStore.d.ts +57 -0
- package/api/runner/TaskManagerStore.js +127 -0
- package/api/runner/TaskManagerStore.js.map +1 -0
- package/api/runner/TaskRunner.d.ts +25 -0
- package/api/runner/TaskRunner.js +86 -0
- package/api/runner/TaskRunner.js.map +1 -0
- package/api/runner/abstractions/TaskControl.d.ts +10 -0
- package/api/runner/abstractions/TaskControl.js +0 -0
- package/api/runner/abstractions/TaskEventValidation.d.ts +5 -0
- package/api/runner/abstractions/TaskEventValidation.js +0 -0
- package/api/runner/abstractions/TaskManager.d.ts +5 -0
- package/api/runner/abstractions/TaskManager.js +0 -0
- package/api/runner/abstractions/TaskManagerStore.d.ts +92 -0
- package/api/runner/abstractions/TaskManagerStore.js +0 -0
- package/api/runner/abstractions/TaskRunner.d.ts +13 -0
- package/api/runner/abstractions/TaskRunner.js +0 -0
- package/api/runner/abstractions/index.d.ts +5 -0
- package/api/runner/abstractions/index.js +5 -0
- package/api/runner/index.d.ts +1 -0
- package/api/runner/index.js +1 -0
- package/api/tasks/testingRunTask.d.ts +19 -0
- package/api/tasks/testingRunTask.js +25 -0
- package/api/tasks/testingRunTask.js.map +1 -0
- package/api/types.d.ts +120 -0
- package/api/types.js +20 -0
- package/api/types.js.map +1 -0
- package/api/utils/ObjectUpdater.d.ts +8 -0
- package/api/utils/ObjectUpdater.js +33 -0
- package/api/utils/ObjectUpdater.js.map +1 -0
- package/api/utils/getErrorProperties.d.ts +2 -0
- package/api/utils/getErrorProperties.js +9 -0
- package/api/utils/getErrorProperties.js.map +1 -0
- package/api/utils/getObjectProperties.d.ts +8 -0
- package/api/utils/getObjectProperties.js +11 -0
- package/api/utils/getObjectProperties.js.map +1 -0
- package/api/utils/index.d.ts +3 -0
- package/api/utils/index.js +3 -0
- package/api/utils/normalizeSelfCleanup.d.ts +2 -0
- package/api/utils/normalizeSelfCleanup.js +16 -0
- package/api/utils/normalizeSelfCleanup.js.map +1 -0
- package/index.d.ts +2 -0
- package/index.js +2 -0
- package/package.json +65 -0
- package/testing/index.d.ts +3 -0
- package/testing/index.js +2 -0
- package/testing/mockTaskTriggerTransportPlugin.d.ts +2 -0
- package/testing/mockTaskTriggerTransportPlugin.js +18 -0
- package/testing/mockTaskTriggerTransportPlugin.js.map +1 -0
- package/testing/runner.d.ts +19 -0
- package/testing/runner.js +44 -0
- package/testing/runner.js.map +1 -0
package/api/index.js
ADDED
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
export * from "./response/index.js";
|
|
2
|
+
export * from "./types.js";
|
|
3
|
+
export { TaskService } from "./domain/TaskService.js";
|
|
4
|
+
export { BackgroundTasksFeature } from "./BackgroundTasksFeature.js";
|
|
5
|
+
export { BackgroundTasksGraphQLSchema } from "./graphql/BackgroundTasksGraphQLSchema.js";
|
|
6
|
+
export { TriggerTaskUseCase } from "./features/TriggerTask/abstractions.js";
|
|
7
|
+
export { AbortTaskUseCase } from "./features/AbortTask/abstractions.js";
|
|
8
|
+
export { GetTaskUseCase } from "./features/GetTask/abstractions.js";
|
|
9
|
+
export { ListTasksUseCase } from "./features/ListTasks/abstractions.js";
|
|
10
|
+
export { CreateTaskUseCase } from "./features/CreateTask/abstractions.js";
|
|
11
|
+
export { UpdateTaskUseCase } from "./features/UpdateTask/abstractions.js";
|
|
12
|
+
export { DeleteTaskUseCase } from "./features/DeleteTask/abstractions.js";
|
|
13
|
+
export { CreateTaskLogUseCase } from "./features/CreateTaskLog/abstractions.js";
|
|
14
|
+
export { UpdateTaskLogUseCase } from "./features/UpdateTaskLog/abstractions.js";
|
|
15
|
+
export { DeleteTaskLogUseCase } from "./features/DeleteTaskLog/abstractions.js";
|
|
16
|
+
export { GetLatestTaskLogUseCase } from "./features/GetLatestTaskLog/abstractions.js";
|
|
17
|
+
export { ListTaskLogsUseCase } from "./features/ListTaskLogs/abstractions.js";
|
|
18
|
+
export { GetRunnableTaskDefinitionUseCase } from "./features/GetRunnableTaskDefinition/abstractions.js";
|
|
19
|
+
export { TaskNotFoundError } from "./domain/errors.js";
|
|
20
|
+
export { CleanupTaskSubtreeUseCase } from "./features/CleanupTaskSubtree/abstractions.js";
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { ModelFactory } from "@webiny/api-headless-cms/features/modelBuilder/index.js";
|
|
2
|
+
declare class BackgroundTaskSettingsModelFactory implements ModelFactory.Interface {
|
|
3
|
+
execute(builder: ModelFactory.Builder): Promise<import("@webiny/api-headless-cms/features/modelBuilder/index.js").PublicModelBuilder[]>;
|
|
4
|
+
}
|
|
5
|
+
export declare const BackgroundTaskSettingsModel: typeof BackgroundTaskSettingsModelFactory & {
|
|
6
|
+
__abstraction: import("@webiny/di").Abstraction<import("@webiny/api-headless-cms/features/modelBuilder/abstractions").IModelFactory>;
|
|
7
|
+
};
|
|
8
|
+
export {};
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { ModelFactory } from "@webiny/api-headless-cms/features/modelBuilder/index.js";
|
|
2
|
+
import { BACKGROUND_TASK_MAX_RETENTION_DAYS, BACKGROUND_TASK_SETTINGS_MODEL_ID } from "../domain/constants.js";
|
|
3
|
+
class BackgroundTaskSettingsModelFactory {
|
|
4
|
+
async execute(builder) {
|
|
5
|
+
const model = builder.public({
|
|
6
|
+
modelId: BACKGROUND_TASK_SETTINGS_MODEL_ID,
|
|
7
|
+
name: "Background Task Settings",
|
|
8
|
+
group: "hidden"
|
|
9
|
+
}).description("Global settings for the background tasks system.").titleFieldId("retentionDays").singularApiName("BackgroundTaskSettings").pluralApiName("BackgroundTaskSettings").tags([
|
|
10
|
+
"$publishing:false",
|
|
11
|
+
"$hidden:true"
|
|
12
|
+
]).singleEntry();
|
|
13
|
+
model.fields((fields)=>({
|
|
14
|
+
retentionDays: fields.number().label("Retention (days)").gte(0, "Must be 0 or greater.").lte(BACKGROUND_TASK_MAX_RETENTION_DAYS, `Must be at most ${BACKGROUND_TASK_MAX_RETENTION_DAYS}.`).description(`How long to keep completed task runs. 0 = never delete. Max ${BACKGROUND_TASK_MAX_RETENTION_DAYS} days.`)
|
|
15
|
+
}));
|
|
16
|
+
return [
|
|
17
|
+
model
|
|
18
|
+
];
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
const BackgroundTaskSettingsModel = ModelFactory.createImplementation({
|
|
22
|
+
implementation: BackgroundTaskSettingsModelFactory,
|
|
23
|
+
dependencies: []
|
|
24
|
+
});
|
|
25
|
+
export { BackgroundTaskSettingsModel };
|
|
26
|
+
|
|
27
|
+
//# sourceMappingURL=BackgroundTaskSettingsModel.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"api/models/BackgroundTaskSettingsModel.js","sources":["../../../src/api/models/BackgroundTaskSettingsModel.ts"],"sourcesContent":["import { ModelFactory } from \"@webiny/api-headless-cms/features/modelBuilder/index.js\";\nimport {\n BACKGROUND_TASK_SETTINGS_MODEL_ID,\n BACKGROUND_TASK_MAX_RETENTION_DAYS\n} from \"~/api/domain/constants.js\";\n\nclass BackgroundTaskSettingsModelFactory implements ModelFactory.Interface {\n async execute(builder: ModelFactory.Builder) {\n const model = builder\n .public({\n modelId: BACKGROUND_TASK_SETTINGS_MODEL_ID,\n name: \"Background Task Settings\",\n group: \"hidden\"\n })\n .description(\"Global settings for the background tasks system.\")\n .titleFieldId(\"retentionDays\")\n .singularApiName(\"BackgroundTaskSettings\")\n .pluralApiName(\"BackgroundTaskSettings\")\n .tags([\"$publishing:false\", \"$hidden:true\"])\n .singleEntry();\n\n model.fields(fields => ({\n retentionDays: fields\n .number()\n .label(\"Retention (days)\")\n .gte(0, \"Must be 0 or greater.\")\n .lte(\n BACKGROUND_TASK_MAX_RETENTION_DAYS,\n `Must be at most ${BACKGROUND_TASK_MAX_RETENTION_DAYS}.`\n )\n .description(\n `How long to keep completed task runs. 0 = never delete. Max ${BACKGROUND_TASK_MAX_RETENTION_DAYS} days.`\n )\n }));\n\n return [model];\n }\n}\n\nexport const BackgroundTaskSettingsModel = ModelFactory.createImplementation({\n implementation: BackgroundTaskSettingsModelFactory,\n dependencies: []\n});\n"],"names":["BackgroundTaskSettingsModelFactory","builder","model","BACKGROUND_TASK_SETTINGS_MODEL_ID","fields","BACKGROUND_TASK_MAX_RETENTION_DAYS","BackgroundTaskSettingsModel","ModelFactory"],"mappings":";;AAMA,MAAMA;IACF,MAAM,QAAQC,OAA6B,EAAE;QACzC,MAAMC,QAAQD,QACT,MAAM,CAAC;YACJ,SAASE;YACT,MAAM;YACN,OAAO;QACX,GACC,WAAW,CAAC,oDACZ,YAAY,CAAC,iBACb,eAAe,CAAC,0BAChB,aAAa,CAAC,0BACd,IAAI,CAAC;YAAC;YAAqB;SAAe,EAC1C,WAAW;QAEhBD,MAAM,MAAM,CAACE,CAAAA,SAAW;gBACpB,eAAeA,OACV,MAAM,GACN,KAAK,CAAC,oBACN,GAAG,CAAC,GAAG,yBACP,GAAG,CACAC,oCACA,CAAC,gBAAgB,EAAEA,mCAAmC,CAAC,CAAC,EAE3D,WAAW,CACR,CAAC,4DAA4D,EAAEA,mCAAmC,MAAM,CAAC;YAErH;QAEA,OAAO;YAACH;SAAM;IAClB;AACJ;AAEO,MAAMI,8BAA8BC,aAAa,oBAAoB,CAAC;IACzE,gBAAgBP;IAChB,cAAc,EAAE;AACpB"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
export declare const BACKGROUND_TASK_PERMISSIONS_SCHEMA: {
|
|
2
|
+
readonly prefix: "backgroundTasks";
|
|
3
|
+
readonly fullAccess: true;
|
|
4
|
+
readonly entities: readonly [{
|
|
5
|
+
readonly id: "task";
|
|
6
|
+
readonly permission: "backgroundTasks.task";
|
|
7
|
+
readonly scopes: readonly ["full"];
|
|
8
|
+
readonly actions: readonly [{
|
|
9
|
+
readonly name: "rwd";
|
|
10
|
+
}];
|
|
11
|
+
}];
|
|
12
|
+
};
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { createPermissionSchema } from "@webiny/api-core/exports/api/security.js";
|
|
2
|
+
const BACKGROUND_TASK_PERMISSIONS_SCHEMA = createPermissionSchema({
|
|
3
|
+
prefix: "backgroundTasks",
|
|
4
|
+
fullAccess: true,
|
|
5
|
+
entities: [
|
|
6
|
+
{
|
|
7
|
+
id: "task",
|
|
8
|
+
permission: "backgroundTasks.task",
|
|
9
|
+
scopes: [
|
|
10
|
+
"full"
|
|
11
|
+
],
|
|
12
|
+
actions: [
|
|
13
|
+
{
|
|
14
|
+
name: "rwd"
|
|
15
|
+
}
|
|
16
|
+
]
|
|
17
|
+
}
|
|
18
|
+
]
|
|
19
|
+
});
|
|
20
|
+
export { BACKGROUND_TASK_PERMISSIONS_SCHEMA };
|
|
21
|
+
|
|
22
|
+
//# sourceMappingURL=permissions.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"api/permissions.js","sources":["../../src/api/permissions.ts"],"sourcesContent":["import { createPermissionSchema } from \"@webiny/api-core/exports/api/security.js\";\n\nexport const BACKGROUND_TASK_PERMISSIONS_SCHEMA = createPermissionSchema({\n prefix: \"backgroundTasks\",\n fullAccess: true,\n entities: [\n {\n id: \"task\",\n permission: \"backgroundTasks.task\",\n scopes: [\"full\"],\n actions: [{ name: \"rwd\" }]\n }\n ]\n});\n"],"names":["BACKGROUND_TASK_PERMISSIONS_SCHEMA","createPermissionSchema"],"mappings":";AAEO,MAAMA,qCAAqCC,uBAAuB;IACrE,QAAQ;IACR,YAAY;IACZ,UAAU;QACN;YACI,IAAI;YACJ,YAAY;YACZ,QAAQ;gBAAC;aAAO;YAChB,SAAS;gBAAC;oBAAE,MAAM;gBAAM;aAAE;QAC9B;KACH;AACL"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type { IResponse, IResponseAsync, IResponseContinueParams, IResponseContinueResult, IResponseDoneParams, IResponseDoneResult, IResponseErrorParams, IResponseErrorResult, IResponseResult } from "./abstractions/index.js";
|
|
2
|
+
import type { ITaskManagerStorePrivate } from "../../api/runner/abstractions/index.js";
|
|
3
|
+
export declare class DatabaseResponse implements IResponseAsync {
|
|
4
|
+
readonly response: IResponse;
|
|
5
|
+
private readonly store;
|
|
6
|
+
constructor(response: IResponse, store: ITaskManagerStorePrivate);
|
|
7
|
+
from(result: IResponseResult): Promise<IResponseResult>;
|
|
8
|
+
done(params: IResponseDoneParams): Promise<IResponseDoneResult>;
|
|
9
|
+
aborted(): Promise<import("~/api/types.js").IResponseAbortedResult>;
|
|
10
|
+
continue(params: IResponseContinueParams): Promise<IResponseContinueResult | IResponseErrorResult>;
|
|
11
|
+
error(params: IResponseErrorParams): Promise<IResponseErrorResult>;
|
|
12
|
+
}
|
|
@@ -0,0 +1,127 @@
|
|
|
1
|
+
import { TaskDataStatus } from "../types.js";
|
|
2
|
+
import { NotFoundError } from "@webiny/api-graphql";
|
|
3
|
+
import { getErrorProperties } from "../utils/getErrorProperties.js";
|
|
4
|
+
import { TaskResultStatus } from "@webiny/api-core/features/task/TaskDefinition/index.js";
|
|
5
|
+
class DatabaseResponse {
|
|
6
|
+
constructor(response, store){
|
|
7
|
+
this.response = response;
|
|
8
|
+
this.store = store;
|
|
9
|
+
}
|
|
10
|
+
from(result) {
|
|
11
|
+
switch(result.status){
|
|
12
|
+
case TaskResultStatus.DONE:
|
|
13
|
+
return this.done(result);
|
|
14
|
+
case TaskResultStatus.CONTINUE:
|
|
15
|
+
return this.continue(result);
|
|
16
|
+
case TaskResultStatus.ERROR:
|
|
17
|
+
return this.error(result);
|
|
18
|
+
case TaskResultStatus.ABORTED:
|
|
19
|
+
return this.aborted();
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
async done(params) {
|
|
23
|
+
const { output, ...rest } = params;
|
|
24
|
+
let message = params.message;
|
|
25
|
+
try {
|
|
26
|
+
await this.store.updateTask({
|
|
27
|
+
taskStatus: TaskDataStatus.SUCCESS,
|
|
28
|
+
finishedOn: new Date().toISOString(),
|
|
29
|
+
output
|
|
30
|
+
});
|
|
31
|
+
await this.store.addInfoLog({
|
|
32
|
+
message: message || "Task done."
|
|
33
|
+
});
|
|
34
|
+
await this.store.save();
|
|
35
|
+
} catch (ex) {
|
|
36
|
+
message = `Task done, but failed to update task log. (${ex.message || "unknown"})`;
|
|
37
|
+
}
|
|
38
|
+
return this.response.done({
|
|
39
|
+
...rest,
|
|
40
|
+
message,
|
|
41
|
+
output
|
|
42
|
+
});
|
|
43
|
+
}
|
|
44
|
+
async aborted() {
|
|
45
|
+
return this.response.aborted();
|
|
46
|
+
}
|
|
47
|
+
async continue(params) {
|
|
48
|
+
try {
|
|
49
|
+
const task = this.store.getTask();
|
|
50
|
+
await this.store.updateTask({
|
|
51
|
+
input: {
|
|
52
|
+
...task.input,
|
|
53
|
+
...params.input
|
|
54
|
+
},
|
|
55
|
+
taskStatus: TaskDataStatus.RUNNING
|
|
56
|
+
});
|
|
57
|
+
await this.store.addInfoLog({
|
|
58
|
+
message: "Task continuing.",
|
|
59
|
+
data: params.input
|
|
60
|
+
});
|
|
61
|
+
await this.store.save();
|
|
62
|
+
} catch (ex) {
|
|
63
|
+
if (ex instanceof NotFoundError) return this.response.error({
|
|
64
|
+
error: {
|
|
65
|
+
message: ex.message || "Task not found.",
|
|
66
|
+
code: ex.code || "TASK_NOT_FOUND",
|
|
67
|
+
data: {
|
|
68
|
+
...ex.data,
|
|
69
|
+
input: this.store.getInput()
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
});
|
|
73
|
+
return this.error({
|
|
74
|
+
error: {
|
|
75
|
+
message: `Failed to update task input: ${ex.message || "unknown error"}`,
|
|
76
|
+
code: ex.code || "TASK_UPDATE_ERROR"
|
|
77
|
+
}
|
|
78
|
+
});
|
|
79
|
+
}
|
|
80
|
+
return this.response.continue(params);
|
|
81
|
+
}
|
|
82
|
+
async error(params) {
|
|
83
|
+
const error = params.error instanceof Error ? getErrorProperties(params.error) : params.error;
|
|
84
|
+
try {
|
|
85
|
+
await this.store.updateTask({
|
|
86
|
+
taskStatus: TaskDataStatus.FAILED,
|
|
87
|
+
finishedOn: new Date().toISOString(),
|
|
88
|
+
output: {
|
|
89
|
+
error
|
|
90
|
+
}
|
|
91
|
+
});
|
|
92
|
+
await this.store.addErrorLog({
|
|
93
|
+
message: params.error.message,
|
|
94
|
+
data: this.store.getInput(),
|
|
95
|
+
error
|
|
96
|
+
});
|
|
97
|
+
await this.store.save();
|
|
98
|
+
} catch (ex) {
|
|
99
|
+
return this.response.error({
|
|
100
|
+
...params,
|
|
101
|
+
error: {
|
|
102
|
+
...error,
|
|
103
|
+
message: ex.message || error.message,
|
|
104
|
+
code: ex.code || error.code,
|
|
105
|
+
data: {
|
|
106
|
+
...error.data,
|
|
107
|
+
...ex.data,
|
|
108
|
+
input: this.store.getInput()
|
|
109
|
+
}
|
|
110
|
+
}
|
|
111
|
+
});
|
|
112
|
+
}
|
|
113
|
+
return this.response.error({
|
|
114
|
+
...params,
|
|
115
|
+
error: {
|
|
116
|
+
...params.error,
|
|
117
|
+
data: {
|
|
118
|
+
...error.data,
|
|
119
|
+
input: this.store.getInput()
|
|
120
|
+
}
|
|
121
|
+
}
|
|
122
|
+
});
|
|
123
|
+
}
|
|
124
|
+
}
|
|
125
|
+
export { DatabaseResponse };
|
|
126
|
+
|
|
127
|
+
//# sourceMappingURL=DatabaseResponse.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"api/response/DatabaseResponse.js","sources":["../../../src/api/response/DatabaseResponse.ts"],"sourcesContent":["import { TaskDataStatus } from \"~/api/types.js\";\nimport { NotFoundError } from \"@webiny/api-graphql\";\nimport type {\n IResponse,\n IResponseAsync,\n IResponseContinueParams,\n IResponseContinueResult,\n IResponseDoneParams,\n IResponseDoneResult,\n IResponseErrorParams,\n IResponseErrorResult,\n IResponseResult\n} from \"./abstractions/index.js\";\nimport type { ITaskManagerStorePrivate } from \"~/api/runner/abstractions/index.js\";\nimport { getErrorProperties } from \"~/api/utils/getErrorProperties.js\";\nimport { TaskResultStatus } from \"@webiny/api-core/features/task/TaskDefinition/index.js\";\n\nexport class DatabaseResponse implements IResponseAsync {\n public readonly response: IResponse;\n\n private readonly store: ITaskManagerStorePrivate;\n\n public constructor(response: IResponse, store: ITaskManagerStorePrivate) {\n this.response = response;\n this.store = store;\n }\n\n public from(result: IResponseResult): Promise<IResponseResult> {\n switch (result.status) {\n case TaskResultStatus.DONE:\n return this.done(result);\n case TaskResultStatus.CONTINUE:\n return this.continue(result);\n case TaskResultStatus.ERROR:\n return this.error(result);\n case TaskResultStatus.ABORTED:\n return this.aborted();\n }\n }\n\n public async done(params: IResponseDoneParams): Promise<IResponseDoneResult> {\n const { output, ...rest } = params;\n let message = params.message;\n try {\n await this.store.updateTask({\n taskStatus: TaskDataStatus.SUCCESS,\n finishedOn: new Date().toISOString(),\n output\n });\n await this.store.addInfoLog({\n message: message || \"Task done.\"\n });\n await this.store.save();\n } catch (ex) {\n message = `Task done, but failed to update task log. (${ex.message || \"unknown\"})`;\n }\n /**\n * Default behavior is to return the done response.\n */\n return this.response.done({\n ...rest,\n message,\n output\n });\n }\n\n public async aborted() {\n return this.response.aborted();\n }\n\n public async continue(\n params: IResponseContinueParams\n ): Promise<IResponseContinueResult | IResponseErrorResult> {\n try {\n const task = this.store.getTask();\n await this.store.updateTask({\n input: {\n ...task.input,\n ...params.input\n },\n taskStatus: TaskDataStatus.RUNNING\n });\n await this.store.addInfoLog({\n message: \"Task continuing.\",\n data: params.input\n });\n await this.store.save();\n } catch (ex) {\n /**\n * If task was not found, we just return the error.\n */\n if (ex instanceof NotFoundError) {\n return this.response.error({\n error: {\n message: ex.message || `Task not found.`,\n code: ex.code || \"TASK_NOT_FOUND\",\n data: {\n ...ex.data,\n input: this.store.getInput()\n }\n }\n });\n }\n /**\n * Otherwise, we store the error and return it...\n */\n return this.error({\n error: {\n message: `Failed to update task input: ${ex.message || \"unknown error\"}`,\n code: ex.code || \"TASK_UPDATE_ERROR\"\n }\n });\n }\n /**\n * Default behavior is to return the continue response.\n */\n return this.response.continue(params);\n }\n\n public async error(params: IResponseErrorParams): Promise<IResponseErrorResult> {\n const error =\n params.error instanceof Error ? getErrorProperties(params.error) : params.error;\n try {\n await this.store.updateTask({\n taskStatus: TaskDataStatus.FAILED,\n finishedOn: new Date().toISOString(),\n output: {\n error\n }\n });\n await this.store.addErrorLog({\n message: params.error.message,\n data: this.store.getInput(),\n error\n });\n await this.store.save();\n } catch (ex) {\n return this.response.error({\n ...params,\n error: {\n ...error,\n message: ex.message || error.message,\n code: ex.code || error.code,\n data: {\n ...error.data,\n ...ex.data,\n input: this.store.getInput()\n }\n }\n });\n }\n /**\n * Default behavior is to return the error response.\n */\n return this.response.error({\n ...params,\n error: {\n ...params.error,\n data: {\n ...error.data,\n input: this.store.getInput()\n }\n }\n });\n }\n}\n"],"names":["DatabaseResponse","response","store","result","TaskResultStatus","params","output","rest","message","TaskDataStatus","Date","ex","task","NotFoundError","error","Error","getErrorProperties"],"mappings":";;;;AAiBO,MAAMA;IAKT,YAAmBC,QAAmB,EAAEC,KAA+B,CAAE;QACrE,IAAI,CAAC,QAAQ,GAAGD;QAChB,IAAI,CAAC,KAAK,GAAGC;IACjB;IAEO,KAAKC,MAAuB,EAA4B;QAC3D,OAAQA,OAAO,MAAM;YACjB,KAAKC,iBAAiB,IAAI;gBACtB,OAAO,IAAI,CAAC,IAAI,CAACD;YACrB,KAAKC,iBAAiB,QAAQ;gBAC1B,OAAO,IAAI,CAAC,QAAQ,CAACD;YACzB,KAAKC,iBAAiB,KAAK;gBACvB,OAAO,IAAI,CAAC,KAAK,CAACD;YACtB,KAAKC,iBAAiB,OAAO;gBACzB,OAAO,IAAI,CAAC,OAAO;QAC3B;IACJ;IAEA,MAAa,KAAKC,MAA2B,EAAgC;QACzE,MAAM,EAAEC,MAAM,EAAE,GAAGC,MAAM,GAAGF;QAC5B,IAAIG,UAAUH,OAAO,OAAO;QAC5B,IAAI;YACA,MAAM,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC;gBACxB,YAAYI,eAAe,OAAO;gBAClC,YAAY,IAAIC,OAAO,WAAW;gBAClCJ;YACJ;YACA,MAAM,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC;gBACxB,SAASE,WAAW;YACxB;YACA,MAAM,IAAI,CAAC,KAAK,CAAC,IAAI;QACzB,EAAE,OAAOG,IAAI;YACTH,UAAU,CAAC,2CAA2C,EAAEG,GAAG,OAAO,IAAI,UAAU,CAAC,CAAC;QACtF;QAIA,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC;YACtB,GAAGJ,IAAI;YACPC;YACAF;QACJ;IACJ;IAEA,MAAa,UAAU;QACnB,OAAO,IAAI,CAAC,QAAQ,CAAC,OAAO;IAChC;IAEA,MAAa,SACTD,MAA+B,EACwB;QACvD,IAAI;YACA,MAAMO,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO;YAC/B,MAAM,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC;gBACxB,OAAO;oBACH,GAAGA,KAAK,KAAK;oBACb,GAAGP,OAAO,KAAK;gBACnB;gBACA,YAAYI,eAAe,OAAO;YACtC;YACA,MAAM,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC;gBACxB,SAAS;gBACT,MAAMJ,OAAO,KAAK;YACtB;YACA,MAAM,IAAI,CAAC,KAAK,CAAC,IAAI;QACzB,EAAE,OAAOM,IAAI;YAIT,IAAIA,cAAcE,eACd,OAAO,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC;gBACvB,OAAO;oBACH,SAASF,GAAG,OAAO,IAAI;oBACvB,MAAMA,GAAG,IAAI,IAAI;oBACjB,MAAM;wBACF,GAAGA,GAAG,IAAI;wBACV,OAAO,IAAI,CAAC,KAAK,CAAC,QAAQ;oBAC9B;gBACJ;YACJ;YAKJ,OAAO,IAAI,CAAC,KAAK,CAAC;gBACd,OAAO;oBACH,SAAS,CAAC,6BAA6B,EAAEA,GAAG,OAAO,IAAI,iBAAiB;oBACxE,MAAMA,GAAG,IAAI,IAAI;gBACrB;YACJ;QACJ;QAIA,OAAO,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAACN;IAClC;IAEA,MAAa,MAAMA,MAA4B,EAAiC;QAC5E,MAAMS,QACFT,OAAO,KAAK,YAAYU,QAAQC,mBAAmBX,OAAO,KAAK,IAAIA,OAAO,KAAK;QACnF,IAAI;YACA,MAAM,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC;gBACxB,YAAYI,eAAe,MAAM;gBACjC,YAAY,IAAIC,OAAO,WAAW;gBAClC,QAAQ;oBACJI;gBACJ;YACJ;YACA,MAAM,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC;gBACzB,SAAST,OAAO,KAAK,CAAC,OAAO;gBAC7B,MAAM,IAAI,CAAC,KAAK,CAAC,QAAQ;gBACzBS;YACJ;YACA,MAAM,IAAI,CAAC,KAAK,CAAC,IAAI;QACzB,EAAE,OAAOH,IAAI;YACT,OAAO,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC;gBACvB,GAAGN,MAAM;gBACT,OAAO;oBACH,GAAGS,KAAK;oBACR,SAASH,GAAG,OAAO,IAAIG,MAAM,OAAO;oBACpC,MAAMH,GAAG,IAAI,IAAIG,MAAM,IAAI;oBAC3B,MAAM;wBACF,GAAGA,MAAM,IAAI;wBACb,GAAGH,GAAG,IAAI;wBACV,OAAO,IAAI,CAAC,KAAK,CAAC,QAAQ;oBAC9B;gBACJ;YACJ;QACJ;QAIA,OAAO,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC;YACvB,GAAGN,MAAM;YACT,OAAO;gBACH,GAAGA,OAAO,KAAK;gBACf,MAAM;oBACF,GAAGS,MAAM,IAAI;oBACb,OAAO,IAAI,CAAC,KAAK,CAAC,QAAQ;gBAC9B;YACJ;QACJ;IACJ;AACJ"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import type { ITaskEvent } from "../../api/handler/types.js";
|
|
2
|
+
import type { IResponse, IResponseAbortedResult, IResponseContinueParams, IResponseContinueResult, IResponseDoneParams, IResponseDoneResult, IResponseErrorParams, IResponseErrorResult, IResponseFromParams, IResponseResult } from "./abstractions/index.js";
|
|
3
|
+
import { TaskDefinition } from "@webiny/api-core/features/task/TaskDefinition/index.js";
|
|
4
|
+
export declare class Response implements IResponse {
|
|
5
|
+
private _event;
|
|
6
|
+
get event(): ITaskEvent;
|
|
7
|
+
constructor(event: ITaskEvent);
|
|
8
|
+
setEvent(event: ITaskEvent): void;
|
|
9
|
+
from(params: IResponseFromParams): IResponseResult;
|
|
10
|
+
continue(params: IResponseContinueParams): IResponseContinueResult;
|
|
11
|
+
done<O extends TaskDefinition.TaskOutput = TaskDefinition.TaskOutput>(params?: IResponseDoneParams<O>): IResponseDoneResult<O>;
|
|
12
|
+
aborted(): IResponseAbortedResult;
|
|
13
|
+
error(params: IResponseErrorParams): IResponseErrorResult;
|
|
14
|
+
}
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
import object_sizeof from "object-sizeof";
|
|
2
|
+
import { ResponseContinueResult } from "./ResponseContinueResult.js";
|
|
3
|
+
import { ResponseDoneResult } from "./ResponseDoneResult.js";
|
|
4
|
+
import { ResponseErrorResult } from "./ResponseErrorResult.js";
|
|
5
|
+
import { ResponseAbortedResult } from "./ResponseAbortedResult.js";
|
|
6
|
+
import { getErrorProperties } from "../utils/getErrorProperties.js";
|
|
7
|
+
import { TaskResultStatus } from "@webiny/api-core/features/task/TaskDefinition/index.js";
|
|
8
|
+
const MAX_SIZE_BYTES = 237568;
|
|
9
|
+
const createMaxSizeOutput = ({ size })=>({
|
|
10
|
+
message: "Output size exceeds the maximum allowed size.",
|
|
11
|
+
size,
|
|
12
|
+
max: MAX_SIZE_BYTES
|
|
13
|
+
});
|
|
14
|
+
const getOutput = (output)=>{
|
|
15
|
+
if (!output || 0 === Object.keys(output).length) return;
|
|
16
|
+
let size = object_sizeof(output);
|
|
17
|
+
if (size > MAX_SIZE_BYTES) {
|
|
18
|
+
if (output.stack) {
|
|
19
|
+
delete output.stack;
|
|
20
|
+
size = object_sizeof(output);
|
|
21
|
+
if (size <= MAX_SIZE_BYTES) return output;
|
|
22
|
+
}
|
|
23
|
+
if (output.error?.stack) {
|
|
24
|
+
delete output.error.stack;
|
|
25
|
+
size = object_sizeof(output);
|
|
26
|
+
if (size <= MAX_SIZE_BYTES) return output;
|
|
27
|
+
}
|
|
28
|
+
return createMaxSizeOutput({
|
|
29
|
+
size
|
|
30
|
+
});
|
|
31
|
+
}
|
|
32
|
+
return output;
|
|
33
|
+
};
|
|
34
|
+
class Response {
|
|
35
|
+
get event() {
|
|
36
|
+
return this._event;
|
|
37
|
+
}
|
|
38
|
+
constructor(event){
|
|
39
|
+
this._event = event;
|
|
40
|
+
}
|
|
41
|
+
setEvent(event) {
|
|
42
|
+
this._event = event;
|
|
43
|
+
}
|
|
44
|
+
from(params) {
|
|
45
|
+
switch(params.status){
|
|
46
|
+
case TaskResultStatus.DONE:
|
|
47
|
+
return this.done(params);
|
|
48
|
+
case TaskResultStatus.CONTINUE:
|
|
49
|
+
return this.continue(params);
|
|
50
|
+
case TaskResultStatus.ERROR:
|
|
51
|
+
return this.error(params);
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
continue(params) {
|
|
55
|
+
return new ResponseContinueResult({
|
|
56
|
+
message: params.message,
|
|
57
|
+
input: params.input,
|
|
58
|
+
webinyTaskId: params?.webinyTaskId || this.event.webinyTaskId,
|
|
59
|
+
webinyTaskDefinitionId: this.event.webinyTaskDefinitionId,
|
|
60
|
+
tenant: params?.tenant || this.event.tenant,
|
|
61
|
+
wait: params.wait
|
|
62
|
+
});
|
|
63
|
+
}
|
|
64
|
+
done(params) {
|
|
65
|
+
return new ResponseDoneResult({
|
|
66
|
+
webinyTaskId: params?.webinyTaskId || this.event.webinyTaskId,
|
|
67
|
+
webinyTaskDefinitionId: this.event.webinyTaskDefinitionId,
|
|
68
|
+
tenant: params?.tenant || this.event.tenant,
|
|
69
|
+
message: params?.message,
|
|
70
|
+
output: getOutput(params?.output)
|
|
71
|
+
});
|
|
72
|
+
}
|
|
73
|
+
aborted() {
|
|
74
|
+
return new ResponseAbortedResult({
|
|
75
|
+
webinyTaskId: this.event.webinyTaskId,
|
|
76
|
+
webinyTaskDefinitionId: this.event.webinyTaskDefinitionId,
|
|
77
|
+
tenant: this.event.tenant
|
|
78
|
+
});
|
|
79
|
+
}
|
|
80
|
+
error(params) {
|
|
81
|
+
return new ResponseErrorResult({
|
|
82
|
+
webinyTaskId: params.webinyTaskId || this.event.webinyTaskId,
|
|
83
|
+
webinyTaskDefinitionId: this.event.webinyTaskDefinitionId,
|
|
84
|
+
tenant: params.tenant || this.event.tenant,
|
|
85
|
+
error: params.error instanceof Error ? getErrorProperties(params.error) : params.error
|
|
86
|
+
});
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
export { Response };
|
|
90
|
+
|
|
91
|
+
//# sourceMappingURL=Response.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"api/response/Response.js","sources":["../../../src/api/response/Response.ts"],"sourcesContent":["import sizeOfObject from \"object-sizeof\";\n\nimport type { ITaskEvent } from \"~/api/handler/types.js\";\nimport type {\n IResponse,\n IResponseAbortedResult,\n IResponseContinueParams,\n IResponseContinueResult,\n IResponseDoneParams,\n IResponseDoneResult,\n IResponseErrorParams,\n IResponseErrorResult,\n IResponseFromParams,\n IResponseResult\n} from \"./abstractions/index.js\";\nimport { ResponseContinueResult } from \"~/api/response/ResponseContinueResult.js\";\nimport { ResponseDoneResult } from \"~/api/response/ResponseDoneResult.js\";\nimport { ResponseErrorResult } from \"~/api/response/ResponseErrorResult.js\";\nimport { ResponseAbortedResult } from \"./ResponseAbortedResult.js\";\nimport { getErrorProperties } from \"~/api/utils/getErrorProperties.js\";\nimport {\n TaskDefinition,\n TaskResultStatus\n} from \"@webiny/api-core/features/task/TaskDefinition/index.js\";\n\n/**\n * Step Functions has a limit of 256KB for the output size.\n * We will set the max output to be 232KB to leave some room for the rest of the data.\n */\nconst MAX_SIZE_BYTES: number = 232 * 1024;\n\ninterface ICreateMaxSizeOutputParams {\n size: number;\n}\n\nconst createMaxSizeOutput = <O extends TaskDefinition.TaskOutput>({\n size\n}: ICreateMaxSizeOutputParams): O => {\n return {\n message: `Output size exceeds the maximum allowed size.`,\n size,\n max: MAX_SIZE_BYTES\n } as unknown as O;\n};\n/**\n * Figure out the size of the output object and remove the stack trace if the size exceeds the maximum allowed size.\n * If the size is still greater than the maximum allowed size, just return the message that the output size exceeds the maximum allowed size.\n */\nconst getOutput = <O extends TaskDefinition.TaskOutput>(output?: O): O | undefined => {\n if (!output || Object.keys(output).length === 0) {\n return undefined;\n }\n let size = sizeOfObject(output);\n if (size > MAX_SIZE_BYTES) {\n if (output.stack) {\n delete output.stack;\n size = sizeOfObject(output);\n if (size <= MAX_SIZE_BYTES) {\n return output;\n }\n }\n if (output.error?.stack) {\n delete output.error.stack;\n size = sizeOfObject(output);\n if (size <= MAX_SIZE_BYTES) {\n return output;\n }\n }\n return createMaxSizeOutput<O>({ size });\n }\n return output;\n};\n\nexport class Response implements IResponse {\n private _event: ITaskEvent;\n\n public get event(): ITaskEvent {\n return this._event;\n }\n\n public constructor(event: ITaskEvent) {\n this._event = event;\n }\n\n public setEvent(event: ITaskEvent) {\n this._event = event;\n }\n\n public from(params: IResponseFromParams): IResponseResult {\n switch (params.status) {\n case TaskResultStatus.DONE:\n return this.done(params);\n case TaskResultStatus.CONTINUE:\n return this.continue(params);\n case TaskResultStatus.ERROR:\n return this.error(params);\n }\n }\n\n public continue(params: IResponseContinueParams): IResponseContinueResult {\n return new ResponseContinueResult({\n message: params.message,\n input: params.input,\n webinyTaskId: params?.webinyTaskId || this.event.webinyTaskId,\n webinyTaskDefinitionId: this.event.webinyTaskDefinitionId,\n tenant: params?.tenant || this.event.tenant,\n wait: params.wait\n });\n }\n\n public done<O extends TaskDefinition.TaskOutput = TaskDefinition.TaskOutput>(\n params?: IResponseDoneParams<O>\n ): IResponseDoneResult<O> {\n return new ResponseDoneResult<O>({\n webinyTaskId: params?.webinyTaskId || this.event.webinyTaskId,\n webinyTaskDefinitionId: this.event.webinyTaskDefinitionId,\n tenant: params?.tenant || this.event.tenant,\n message: params?.message,\n output: getOutput<O>(params?.output)\n });\n }\n\n public aborted(): IResponseAbortedResult {\n return new ResponseAbortedResult({\n webinyTaskId: this.event.webinyTaskId,\n webinyTaskDefinitionId: this.event.webinyTaskDefinitionId,\n tenant: this.event.tenant\n });\n }\n\n public error(params: IResponseErrorParams): IResponseErrorResult {\n return new ResponseErrorResult({\n webinyTaskId: params.webinyTaskId || this.event.webinyTaskId,\n webinyTaskDefinitionId: this.event.webinyTaskDefinitionId,\n tenant: params.tenant || this.event.tenant,\n error: params.error instanceof Error ? getErrorProperties(params.error) : params.error\n });\n }\n}\n"],"names":["MAX_SIZE_BYTES","createMaxSizeOutput","size","getOutput","output","Object","sizeOfObject","Response","event","params","TaskResultStatus","ResponseContinueResult","ResponseDoneResult","ResponseAbortedResult","ResponseErrorResult","Error","getErrorProperties"],"mappings":";;;;;;;AA6BA,MAAMA,iBAAyB;AAM/B,MAAMC,sBAAsB,CAAsC,EAC9DC,IAAI,EACqB,GAClB;QACH,SAAS;QACTA;QACA,KAAKF;IACT;AAMJ,MAAMG,YAAY,CAAsCC;IACpD,IAAI,CAACA,UAAUC,AAA+B,MAA/BA,OAAO,IAAI,CAACD,QAAQ,MAAM,EACrC;IAEJ,IAAIF,OAAOI,cAAaF;IACxB,IAAIF,OAAOF,gBAAgB;QACvB,IAAII,OAAO,KAAK,EAAE;YACd,OAAOA,OAAO,KAAK;YACnBF,OAAOI,cAAaF;YACpB,IAAIF,QAAQF,gBACR,OAAOI;QAEf;QACA,IAAIA,OAAO,KAAK,EAAE,OAAO;YACrB,OAAOA,OAAO,KAAK,CAAC,KAAK;YACzBF,OAAOI,cAAaF;YACpB,IAAIF,QAAQF,gBACR,OAAOI;QAEf;QACA,OAAOH,oBAAuB;YAAEC;QAAK;IACzC;IACA,OAAOE;AACX;AAEO,MAAMG;IAGT,IAAW,QAAoB;QAC3B,OAAO,IAAI,CAAC,MAAM;IACtB;IAEA,YAAmBC,KAAiB,CAAE;QAClC,IAAI,CAAC,MAAM,GAAGA;IAClB;IAEO,SAASA,KAAiB,EAAE;QAC/B,IAAI,CAAC,MAAM,GAAGA;IAClB;IAEO,KAAKC,MAA2B,EAAmB;QACtD,OAAQA,OAAO,MAAM;YACjB,KAAKC,iBAAiB,IAAI;gBACtB,OAAO,IAAI,CAAC,IAAI,CAACD;YACrB,KAAKC,iBAAiB,QAAQ;gBAC1B,OAAO,IAAI,CAAC,QAAQ,CAACD;YACzB,KAAKC,iBAAiB,KAAK;gBACvB,OAAO,IAAI,CAAC,KAAK,CAACD;QAC1B;IACJ;IAEO,SAASA,MAA+B,EAA2B;QACtE,OAAO,IAAIE,uBAAuB;YAC9B,SAASF,OAAO,OAAO;YACvB,OAAOA,OAAO,KAAK;YACnB,cAAcA,QAAQ,gBAAgB,IAAI,CAAC,KAAK,CAAC,YAAY;YAC7D,wBAAwB,IAAI,CAAC,KAAK,CAAC,sBAAsB;YACzD,QAAQA,QAAQ,UAAU,IAAI,CAAC,KAAK,CAAC,MAAM;YAC3C,MAAMA,OAAO,IAAI;QACrB;IACJ;IAEO,KACHA,MAA+B,EACT;QACtB,OAAO,IAAIG,mBAAsB;YAC7B,cAAcH,QAAQ,gBAAgB,IAAI,CAAC,KAAK,CAAC,YAAY;YAC7D,wBAAwB,IAAI,CAAC,KAAK,CAAC,sBAAsB;YACzD,QAAQA,QAAQ,UAAU,IAAI,CAAC,KAAK,CAAC,MAAM;YAC3C,SAASA,QAAQ;YACjB,QAAQN,UAAaM,QAAQ;QACjC;IACJ;IAEO,UAAkC;QACrC,OAAO,IAAII,sBAAsB;YAC7B,cAAc,IAAI,CAAC,KAAK,CAAC,YAAY;YACrC,wBAAwB,IAAI,CAAC,KAAK,CAAC,sBAAsB;YACzD,QAAQ,IAAI,CAAC,KAAK,CAAC,MAAM;QAC7B;IACJ;IAEO,MAAMJ,MAA4B,EAAwB;QAC7D,OAAO,IAAIK,oBAAoB;YAC3B,cAAcL,OAAO,YAAY,IAAI,IAAI,CAAC,KAAK,CAAC,YAAY;YAC5D,wBAAwB,IAAI,CAAC,KAAK,CAAC,sBAAsB;YACzD,QAAQA,OAAO,MAAM,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM;YAC1C,OAAOA,OAAO,KAAK,YAAYM,QAAQC,mBAAmBP,OAAO,KAAK,IAAIA,OAAO,KAAK;QAC1F;IACJ;AACJ"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { IResponseAbortedResult } from "./abstractions/index.js";
|
|
2
|
+
import { TaskResultStatus } from "@webiny/api-core/features/task/TaskDefinition/index.js";
|
|
3
|
+
export declare class ResponseAbortedResult implements IResponseAbortedResult {
|
|
4
|
+
readonly webinyTaskId: string;
|
|
5
|
+
readonly webinyTaskDefinitionId: string;
|
|
6
|
+
readonly tenant: string;
|
|
7
|
+
readonly status: TaskResultStatus.ABORTED;
|
|
8
|
+
constructor(params: Omit<IResponseAbortedResult, "status">);
|
|
9
|
+
}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { TaskResultStatus } from "@webiny/api-core/features/task/TaskDefinition/index.js";
|
|
2
|
+
class ResponseAbortedResult {
|
|
3
|
+
constructor(params){
|
|
4
|
+
this.status = TaskResultStatus.ABORTED;
|
|
5
|
+
this.webinyTaskId = params.webinyTaskId;
|
|
6
|
+
this.webinyTaskDefinitionId = params.webinyTaskDefinitionId;
|
|
7
|
+
this.tenant = params.tenant;
|
|
8
|
+
}
|
|
9
|
+
}
|
|
10
|
+
export { ResponseAbortedResult };
|
|
11
|
+
|
|
12
|
+
//# sourceMappingURL=ResponseAbortedResult.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"api/response/ResponseAbortedResult.js","sources":["../../../src/api/response/ResponseAbortedResult.ts"],"sourcesContent":["import type { IResponseAbortedResult } from \"./abstractions/index.js\";\nimport { TaskResultStatus } from \"@webiny/api-core/features/task/TaskDefinition/index.js\";\n\nexport class ResponseAbortedResult implements IResponseAbortedResult {\n public readonly webinyTaskId: string;\n public readonly webinyTaskDefinitionId: string;\n public readonly tenant: string;\n public readonly status: TaskResultStatus.ABORTED = TaskResultStatus.ABORTED;\n\n public constructor(params: Omit<IResponseAbortedResult, \"status\">) {\n this.webinyTaskId = params.webinyTaskId;\n this.webinyTaskDefinitionId = params.webinyTaskDefinitionId;\n this.tenant = params.tenant;\n }\n}\n"],"names":["ResponseAbortedResult","params","TaskResultStatus"],"mappings":";AAGO,MAAMA;IAMT,YAAmBC,MAA8C,CAAE;aAFnD,MAAM,GAA6BC,iBAAiB,OAAO;QAGvE,IAAI,CAAC,YAAY,GAAGD,OAAO,YAAY;QACvC,IAAI,CAAC,sBAAsB,GAAGA,OAAO,sBAAsB;QAC3D,IAAI,CAAC,MAAM,GAAGA,OAAO,MAAM;IAC/B;AACJ"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import type { ITaskDataInput } from "../../api/types.js";
|
|
2
|
+
import type { IResponseContinueResult } from "./abstractions/index.js";
|
|
3
|
+
import { TaskResultStatus } from "@webiny/api-core/features/task/TaskDefinition/index.js";
|
|
4
|
+
export declare class ResponseContinueResult<T = ITaskDataInput> implements IResponseContinueResult<T> {
|
|
5
|
+
readonly message?: string | undefined;
|
|
6
|
+
readonly webinyTaskId: string;
|
|
7
|
+
readonly webinyTaskDefinitionId: string;
|
|
8
|
+
readonly tenant: string;
|
|
9
|
+
readonly status: TaskResultStatus.CONTINUE;
|
|
10
|
+
readonly input: T;
|
|
11
|
+
/**
|
|
12
|
+
* We need this to make sure that the task will not use the delay from the previous iteration.
|
|
13
|
+
*/
|
|
14
|
+
readonly delay = -1;
|
|
15
|
+
readonly wait?: number;
|
|
16
|
+
constructor(params: Omit<IResponseContinueResult<T>, "delay" | "status">);
|
|
17
|
+
}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { TaskResultStatus } from "@webiny/api-core/features/task/TaskDefinition/index.js";
|
|
2
|
+
class ResponseContinueResult {
|
|
3
|
+
constructor(params){
|
|
4
|
+
this.status = TaskResultStatus.CONTINUE;
|
|
5
|
+
this.delay = -1;
|
|
6
|
+
this.message = params.message;
|
|
7
|
+
this.webinyTaskId = params.webinyTaskId;
|
|
8
|
+
this.webinyTaskDefinitionId = params.webinyTaskDefinitionId;
|
|
9
|
+
this.tenant = params.tenant;
|
|
10
|
+
this.input = params.input;
|
|
11
|
+
this.wait = params.wait;
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
export { ResponseContinueResult };
|
|
15
|
+
|
|
16
|
+
//# sourceMappingURL=ResponseContinueResult.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"api/response/ResponseContinueResult.js","sources":["../../../src/api/response/ResponseContinueResult.ts"],"sourcesContent":["import type { ITaskDataInput } from \"~/api/types.js\";\nimport type { IResponseContinueResult } from \"./abstractions/index.js\";\nimport { TaskResultStatus } from \"@webiny/api-core/features/task/TaskDefinition/index.js\";\n\nexport class ResponseContinueResult<T = ITaskDataInput> implements IResponseContinueResult<T> {\n public readonly message?: string | undefined;\n public readonly webinyTaskId: string;\n public readonly webinyTaskDefinitionId: string;\n public readonly tenant: string;\n public readonly status: TaskResultStatus.CONTINUE = TaskResultStatus.CONTINUE;\n public readonly input: T;\n /**\n * We need this to make sure that the task will not use the delay from the previous iteration.\n */\n public readonly delay = -1;\n public readonly wait?: number;\n\n public constructor(params: Omit<IResponseContinueResult<T>, \"delay\" | \"status\">) {\n this.message = params.message;\n this.webinyTaskId = params.webinyTaskId;\n this.webinyTaskDefinitionId = params.webinyTaskDefinitionId;\n this.tenant = params.tenant;\n this.input = params.input;\n this.wait = params.wait;\n }\n}\n"],"names":["ResponseContinueResult","params","TaskResultStatus"],"mappings":";AAIO,MAAMA;IAaT,YAAmBC,MAA4D,CAAE;aARjE,MAAM,GAA8BC,iBAAiB,QAAQ;QAI5E,KACe,KAAK,GAAG;QAIpB,IAAI,CAAC,OAAO,GAAGD,OAAO,OAAO;QAC7B,IAAI,CAAC,YAAY,GAAGA,OAAO,YAAY;QACvC,IAAI,CAAC,sBAAsB,GAAGA,OAAO,sBAAsB;QAC3D,IAAI,CAAC,MAAM,GAAGA,OAAO,MAAM;QAC3B,IAAI,CAAC,KAAK,GAAGA,OAAO,KAAK;QACzB,IAAI,CAAC,IAAI,GAAGA,OAAO,IAAI;IAC3B;AACJ"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { IResponseDoneResult } from "./abstractions/index.js";
|
|
2
|
+
import { TaskDefinition, TaskResultStatus } from "@webiny/api-core/features/task/TaskDefinition/index.js";
|
|
3
|
+
export declare class ResponseDoneResult<O extends TaskDefinition.TaskOutput = TaskDefinition.TaskOutput> implements IResponseDoneResult<O> {
|
|
4
|
+
readonly message?: string | undefined;
|
|
5
|
+
readonly webinyTaskId: string;
|
|
6
|
+
readonly webinyTaskDefinitionId: string;
|
|
7
|
+
readonly tenant: string;
|
|
8
|
+
readonly output?: O;
|
|
9
|
+
readonly status: TaskResultStatus.DONE;
|
|
10
|
+
constructor(params: Omit<IResponseDoneResult<O>, "status">);
|
|
11
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { TaskResultStatus } from "@webiny/api-core/features/task/TaskDefinition/index.js";
|
|
2
|
+
class ResponseDoneResult {
|
|
3
|
+
constructor(params){
|
|
4
|
+
this.status = TaskResultStatus.DONE;
|
|
5
|
+
this.message = params.message;
|
|
6
|
+
this.webinyTaskId = params.webinyTaskId;
|
|
7
|
+
this.webinyTaskDefinitionId = params.webinyTaskDefinitionId;
|
|
8
|
+
this.tenant = params.tenant;
|
|
9
|
+
this.output = Object.keys(params.output || {}).length > 0 ? params.output : void 0;
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
export { ResponseDoneResult };
|
|
13
|
+
|
|
14
|
+
//# sourceMappingURL=ResponseDoneResult.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"api/response/ResponseDoneResult.js","sources":["../../../src/api/response/ResponseDoneResult.ts"],"sourcesContent":["import type { IResponseDoneResult } from \"./abstractions/index.js\";\nimport {\n TaskDefinition,\n TaskResultStatus\n} from \"@webiny/api-core/features/task/TaskDefinition/index.js\";\n\nexport class ResponseDoneResult<\n O extends TaskDefinition.TaskOutput = TaskDefinition.TaskOutput\n> implements IResponseDoneResult<O> {\n public readonly message?: string | undefined;\n public readonly webinyTaskId: string;\n public readonly webinyTaskDefinitionId: string;\n public readonly tenant: string;\n public readonly output?: O;\n public readonly status: TaskResultStatus.DONE = TaskResultStatus.DONE;\n\n public constructor(params: Omit<IResponseDoneResult<O>, \"status\">) {\n this.message = params.message;\n this.webinyTaskId = params.webinyTaskId;\n this.webinyTaskDefinitionId = params.webinyTaskDefinitionId;\n this.tenant = params.tenant;\n this.output = Object.keys(params.output || {}).length > 0 ? params.output : undefined;\n }\n}\n"],"names":["ResponseDoneResult","params","TaskResultStatus","Object","undefined"],"mappings":";AAMO,MAAMA;IAUT,YAAmBC,MAA8C,CAAE;aAFnD,MAAM,GAA0BC,iBAAiB,IAAI;QAGjE,IAAI,CAAC,OAAO,GAAGD,OAAO,OAAO;QAC7B,IAAI,CAAC,YAAY,GAAGA,OAAO,YAAY;QACvC,IAAI,CAAC,sBAAsB,GAAGA,OAAO,sBAAsB;QAC3D,IAAI,CAAC,MAAM,GAAGA,OAAO,MAAM;QAC3B,IAAI,CAAC,MAAM,GAAGE,OAAO,IAAI,CAACF,OAAO,MAAM,IAAI,CAAC,GAAG,MAAM,GAAG,IAAIA,OAAO,MAAM,GAAGG;IAChF;AACJ"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { IResponseError, IResponseErrorResult } from "./abstractions/index.js";
|
|
2
|
+
import { TaskResultStatus } from "@webiny/api-core/features/task/TaskDefinition/index.js";
|
|
3
|
+
export declare class ResponseErrorResult implements IResponseErrorResult {
|
|
4
|
+
readonly webinyTaskId: string;
|
|
5
|
+
readonly webinyTaskDefinitionId: string;
|
|
6
|
+
readonly tenant: string;
|
|
7
|
+
readonly error: IResponseError;
|
|
8
|
+
readonly status: TaskResultStatus.ERROR;
|
|
9
|
+
constructor(params: Omit<IResponseErrorResult, "status">);
|
|
10
|
+
}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { TaskResultStatus } from "@webiny/api-core/features/task/TaskDefinition/index.js";
|
|
2
|
+
class ResponseErrorResult {
|
|
3
|
+
constructor(params){
|
|
4
|
+
this.status = TaskResultStatus.ERROR;
|
|
5
|
+
this.webinyTaskId = params.webinyTaskId;
|
|
6
|
+
this.webinyTaskDefinitionId = params.webinyTaskDefinitionId;
|
|
7
|
+
this.tenant = params.tenant;
|
|
8
|
+
this.error = params.error;
|
|
9
|
+
}
|
|
10
|
+
}
|
|
11
|
+
export { ResponseErrorResult };
|
|
12
|
+
|
|
13
|
+
//# sourceMappingURL=ResponseErrorResult.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"api/response/ResponseErrorResult.js","sources":["../../../src/api/response/ResponseErrorResult.ts"],"sourcesContent":["import type { IResponseError, IResponseErrorResult } from \"./abstractions/index.js\";\nimport { TaskResultStatus } from \"@webiny/api-core/features/task/TaskDefinition/index.js\";\n\nexport class ResponseErrorResult implements IResponseErrorResult {\n public readonly webinyTaskId: string;\n public readonly webinyTaskDefinitionId: string;\n public readonly tenant: string;\n public readonly error: IResponseError;\n public readonly status: TaskResultStatus.ERROR = TaskResultStatus.ERROR;\n\n public constructor(params: Omit<IResponseErrorResult, \"status\">) {\n this.webinyTaskId = params.webinyTaskId;\n this.webinyTaskDefinitionId = params.webinyTaskDefinitionId;\n this.tenant = params.tenant;\n this.error = params.error;\n }\n}\n"],"names":["ResponseErrorResult","params","TaskResultStatus"],"mappings":";AAGO,MAAMA;IAOT,YAAmBC,MAA4C,CAAE;aAFjD,MAAM,GAA2BC,iBAAiB,KAAK;QAGnE,IAAI,CAAC,YAAY,GAAGD,OAAO,YAAY;QACvC,IAAI,CAAC,sBAAsB,GAAGA,OAAO,sBAAsB;QAC3D,IAAI,CAAC,MAAM,GAAGA,OAAO,MAAM;QAC3B,IAAI,CAAC,KAAK,GAAGA,OAAO,KAAK;IAC7B;AACJ"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type { IResponse, IResponseError, ITaskResponse, ITaskResponseContinueOptions } from "./abstractions/index.js";
|
|
2
|
+
import type { ITaskDataInput } from "../../api/types.js";
|
|
3
|
+
import { TaskDefinition } from "@webiny/api-core/features/task/TaskDefinition/index.js";
|
|
4
|
+
export declare class TaskResponse implements ITaskResponse {
|
|
5
|
+
private readonly response;
|
|
6
|
+
constructor(response: IResponse);
|
|
7
|
+
done<O extends TaskDefinition.ResultDone = TaskDefinition.ResultDone>(message?: string | O, output?: O): TaskDefinition.ResultDone<O>;
|
|
8
|
+
continue<T = ITaskDataInput>(input: T, options?: ITaskResponseContinueOptions): TaskDefinition.ResultContinue;
|
|
9
|
+
error(error: IResponseError | Error | string): TaskDefinition.ResultError;
|
|
10
|
+
aborted(): TaskDefinition.ResultAborted;
|
|
11
|
+
private getError;
|
|
12
|
+
}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import { getErrorProperties } from "../utils/getErrorProperties.js";
|
|
2
|
+
const MAX_WAITING_TIME = 30672000;
|
|
3
|
+
const getWaitingTime = (options)=>{
|
|
4
|
+
let waitingTime;
|
|
5
|
+
if (!options) return;
|
|
6
|
+
if ("seconds" in options) waitingTime = options.seconds;
|
|
7
|
+
else if ("date" in options) {
|
|
8
|
+
const now = new Date();
|
|
9
|
+
waitingTime = (options.date.getTime() - now.getTime()) / 1000;
|
|
10
|
+
}
|
|
11
|
+
if (!waitingTime || waitingTime < 0) return;
|
|
12
|
+
return waitingTime > MAX_WAITING_TIME ? MAX_WAITING_TIME : waitingTime;
|
|
13
|
+
};
|
|
14
|
+
class TaskResponse {
|
|
15
|
+
constructor(response){
|
|
16
|
+
this.response = response;
|
|
17
|
+
}
|
|
18
|
+
done(message, output) {
|
|
19
|
+
if ("object" == typeof message && !output) return this.response.done({
|
|
20
|
+
output: message
|
|
21
|
+
});
|
|
22
|
+
return this.response.done({
|
|
23
|
+
message: message,
|
|
24
|
+
output
|
|
25
|
+
});
|
|
26
|
+
}
|
|
27
|
+
continue(input, options) {
|
|
28
|
+
const wait = getWaitingTime(options);
|
|
29
|
+
if (!wait || wait < 1) return this.response.continue({
|
|
30
|
+
input: input
|
|
31
|
+
});
|
|
32
|
+
return this.response.continue({
|
|
33
|
+
input: input,
|
|
34
|
+
wait
|
|
35
|
+
});
|
|
36
|
+
}
|
|
37
|
+
error(error) {
|
|
38
|
+
return this.response.error({
|
|
39
|
+
error: this.getError(error)
|
|
40
|
+
});
|
|
41
|
+
}
|
|
42
|
+
aborted() {
|
|
43
|
+
return this.response.aborted();
|
|
44
|
+
}
|
|
45
|
+
getError(error) {
|
|
46
|
+
if (error instanceof Error) ;
|
|
47
|
+
else if ("string" == typeof error) return getErrorProperties(new Error(error));
|
|
48
|
+
return getErrorProperties(error);
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
export { TaskResponse };
|
|
52
|
+
|
|
53
|
+
//# sourceMappingURL=TaskResponse.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"api/response/TaskResponse.js","sources":["../../../src/api/response/TaskResponse.ts"],"sourcesContent":["import type {\n IResponse,\n IResponseError,\n ITaskResponse,\n ITaskResponseContinueOptions\n} from \"./abstractions/index.js\";\nimport type { ITaskDataInput } from \"~/api/types.js\";\nimport { getErrorProperties } from \"~/api/utils/getErrorProperties.js\";\nimport { TaskDefinition } from \"@webiny/api-core/features/task/TaskDefinition/index.js\";\n\n/**\n * 355 days transformed into seconds.\n */\nconst MAX_WAITING_TIME = 30672000;\n\n/**\n * There are options to send:\n * * seconds - number of seconds to wait\n * * date - date until which to wait\n */\nconst getWaitingTime = (options?: ITaskResponseContinueOptions): number | undefined => {\n let waitingTime: number | undefined;\n if (!options) {\n return undefined;\n }\n if (\"seconds\" in options) {\n waitingTime = options.seconds;\n } else if (\"date\" in options) {\n const now = new Date();\n waitingTime = (options.date.getTime() - now.getTime()) / 1000;\n }\n if (!waitingTime || waitingTime < 0) {\n return undefined;\n }\n return waitingTime > MAX_WAITING_TIME ? MAX_WAITING_TIME : waitingTime;\n};\n\nexport class TaskResponse implements ITaskResponse {\n private readonly response: IResponse;\n\n public constructor(response: IResponse) {\n this.response = response;\n }\n\n public done<O extends TaskDefinition.ResultDone = TaskDefinition.ResultDone>(\n message?: string | O,\n output?: O\n ): TaskDefinition.ResultDone<O> {\n if (typeof message === \"object\" && !output) {\n return this.response.done({\n output: message\n });\n }\n return this.response.done<O>({\n message: message as string,\n output\n });\n }\n\n public continue<T = ITaskDataInput>(\n input: T,\n options?: ITaskResponseContinueOptions\n ): TaskDefinition.ResultContinue {\n const wait = getWaitingTime(options);\n if (!wait || wait < 1) {\n return this.response.continue({\n input: input as ITaskDataInput\n });\n }\n return this.response.continue({\n input: input as ITaskDataInput,\n wait\n });\n }\n\n public error(error: IResponseError | Error | string): TaskDefinition.ResultError {\n return this.response.error({\n error: this.getError(error)\n });\n }\n\n public aborted(): TaskDefinition.ResultAborted {\n return this.response.aborted();\n }\n\n private getError(error: IResponseError | Error | string): IResponseError | Error {\n if (error instanceof Error) {\n return getErrorProperties(error);\n } else if (typeof error === \"string\") {\n return getErrorProperties(new Error(error));\n }\n return getErrorProperties(error);\n }\n}\n"],"names":["MAX_WAITING_TIME","getWaitingTime","options","waitingTime","now","Date","TaskResponse","response","message","output","input","wait","error","Error","getErrorProperties"],"mappings":";AAaA,MAAMA,mBAAmB;AAOzB,MAAMC,iBAAiB,CAACC;IACpB,IAAIC;IACJ,IAAI,CAACD,SACD;IAEJ,IAAI,aAAaA,SACbC,cAAcD,QAAQ,OAAO;SAC1B,IAAI,UAAUA,SAAS;QAC1B,MAAME,MAAM,IAAIC;QAChBF,cAAeD,AAAAA,CAAAA,QAAQ,IAAI,CAAC,OAAO,KAAKE,IAAI,OAAO,EAAC,IAAK;IAC7D;IACA,IAAI,CAACD,eAAeA,cAAc,GAC9B;IAEJ,OAAOA,cAAcH,mBAAmBA,mBAAmBG;AAC/D;AAEO,MAAMG;IAGT,YAAmBC,QAAmB,CAAE;QACpC,IAAI,CAAC,QAAQ,GAAGA;IACpB;IAEO,KACHC,OAAoB,EACpBC,MAAU,EACkB;QAC5B,IAAI,AAAmB,YAAnB,OAAOD,WAAwB,CAACC,QAChC,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC;YACtB,QAAQD;QACZ;QAEJ,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAI;YACzB,SAASA;YACTC;QACJ;IACJ;IAEO,SACHC,KAAQ,EACRR,OAAsC,EACT;QAC7B,MAAMS,OAAOV,eAAeC;QAC5B,IAAI,CAACS,QAAQA,OAAO,GAChB,OAAO,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC;YAC1B,OAAOD;QACX;QAEJ,OAAO,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC;YAC1B,OAAOA;YACPC;QACJ;IACJ;IAEO,MAAMC,KAAsC,EAA8B;QAC7E,OAAO,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC;YACvB,OAAO,IAAI,CAAC,QAAQ,CAACA;QACzB;IACJ;IAEO,UAAwC;QAC3C,OAAO,IAAI,CAAC,QAAQ,CAAC,OAAO;IAChC;IAEQ,SAASA,KAAsC,EAA0B;QAC7E,IAAIA,iBAAiBC;aAEd,IAAI,AAAiB,YAAjB,OAAOD,OACd,OAAOE,mBAAmB,IAAID,MAAMD;QAExC,OAAOE,mBAAmBF;IAC9B;AACJ"}
|