@webiny/background-tasks 0.0.0-unstable.7be00a75a9 → 0.0.0-unstable.7c2def32a7

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.
Files changed (507) hide show
  1. package/admin/BackgroundTaskRoutes.js +35 -15
  2. package/admin/BackgroundTaskRoutes.js.map +1 -1
  3. package/admin/BackgroundTasks.js +9 -0
  4. package/admin/BackgroundTasks.js.map +1 -1
  5. package/admin/features/getBackgroundTaskSettings/GetBackgroundTaskSettingsGateway.d.ts +12 -0
  6. package/admin/features/getBackgroundTaskSettings/GetBackgroundTaskSettingsGateway.js +40 -0
  7. package/admin/features/getBackgroundTaskSettings/GetBackgroundTaskSettingsGateway.js.map +1 -0
  8. package/admin/features/getBackgroundTaskSettings/GetBackgroundTaskSettingsUseCase.d.ts +11 -0
  9. package/admin/features/getBackgroundTaskSettings/GetBackgroundTaskSettingsUseCase.js +18 -0
  10. package/admin/features/getBackgroundTaskSettings/GetBackgroundTaskSettingsUseCase.js.map +1 -0
  11. package/admin/features/getBackgroundTaskSettings/abstractions.d.ts +15 -0
  12. package/admin/features/getBackgroundTaskSettings/abstractions.js +6 -0
  13. package/admin/features/getBackgroundTaskSettings/abstractions.js.map +1 -0
  14. package/admin/features/getBackgroundTaskSettings/feature.d.ts +3 -0
  15. package/admin/features/getBackgroundTaskSettings/feature.js +19 -0
  16. package/admin/features/getBackgroundTaskSettings/feature.js.map +1 -0
  17. package/admin/features/getBackgroundTaskSettings/index.d.ts +3 -0
  18. package/admin/features/getBackgroundTaskSettings/index.js +2 -0
  19. package/admin/features/listLogs/ListLogsGateway.js +1 -1
  20. package/admin/features/listLogs/ListLogsGateway.js.map +1 -1
  21. package/admin/features/permissions/feature.d.ts +1 -1
  22. package/admin/features/updateBackgroundTaskSettings/UpdateBackgroundTaskSettingsGateway.d.ts +12 -0
  23. package/admin/features/updateBackgroundTaskSettings/UpdateBackgroundTaskSettingsGateway.js +43 -0
  24. package/admin/features/updateBackgroundTaskSettings/UpdateBackgroundTaskSettingsGateway.js.map +1 -0
  25. package/admin/features/updateBackgroundTaskSettings/UpdateBackgroundTaskSettingsUseCase.d.ts +11 -0
  26. package/admin/features/updateBackgroundTaskSettings/UpdateBackgroundTaskSettingsUseCase.js +18 -0
  27. package/admin/features/updateBackgroundTaskSettings/UpdateBackgroundTaskSettingsUseCase.js.map +1 -0
  28. package/admin/features/updateBackgroundTaskSettings/abstractions.d.ts +18 -0
  29. package/admin/features/updateBackgroundTaskSettings/abstractions.js +6 -0
  30. package/admin/features/updateBackgroundTaskSettings/abstractions.js.map +1 -0
  31. package/admin/features/updateBackgroundTaskSettings/feature.d.ts +3 -0
  32. package/admin/features/updateBackgroundTaskSettings/feature.js +19 -0
  33. package/admin/features/updateBackgroundTaskSettings/feature.js.map +1 -0
  34. package/admin/features/updateBackgroundTaskSettings/index.d.ts +3 -0
  35. package/admin/features/updateBackgroundTaskSettings/index.js +2 -0
  36. package/admin/presentation/BackgroundTaskSettings/BackgroundTaskSettingsPresenter.d.ts +21 -0
  37. package/admin/presentation/BackgroundTaskSettings/BackgroundTaskSettingsPresenter.js +86 -0
  38. package/admin/presentation/BackgroundTaskSettings/BackgroundTaskSettingsPresenter.js.map +1 -0
  39. package/admin/presentation/BackgroundTaskSettings/abstractions.d.ts +16 -0
  40. package/admin/presentation/BackgroundTaskSettings/abstractions.js +5 -0
  41. package/admin/presentation/BackgroundTaskSettings/abstractions.js.map +1 -0
  42. package/admin/presentation/BackgroundTaskSettings/components/BackgroundTaskSettingsView.d.ts +2 -0
  43. package/admin/presentation/BackgroundTaskSettings/components/BackgroundTaskSettingsView.js +56 -0
  44. package/admin/presentation/BackgroundTaskSettings/components/BackgroundTaskSettingsView.js.map +1 -0
  45. package/admin/presentation/BackgroundTaskSettings/feature.d.ts +3 -0
  46. package/admin/presentation/BackgroundTaskSettings/feature.js +17 -0
  47. package/admin/presentation/BackgroundTaskSettings/feature.js.map +1 -0
  48. package/admin/presentation/BackgroundTaskSettings/index.d.ts +2 -0
  49. package/admin/presentation/BackgroundTaskSettings/index.js +2 -0
  50. package/admin/presentation/TaskDefinitions/components/TaskDefinitionsView.js +2 -1
  51. package/admin/presentation/TaskDefinitions/components/TaskDefinitionsView.js.map +1 -1
  52. package/admin/presentation/TaskDefinitions/components/TaskExecutionsButton.d.ts +2 -0
  53. package/admin/presentation/TaskDefinitions/components/TaskExecutionsButton.js +16 -0
  54. package/admin/presentation/TaskDefinitions/components/TaskExecutionsButton.js.map +1 -0
  55. package/admin/presentation/TaskDetail/TaskDetailPresenter.js +1 -1
  56. package/admin/presentation/TaskDetail/TaskDetailPresenter.js.map +1 -1
  57. package/admin/presentation/TaskDetail/components/TaskDetailDrawer.js +6 -0
  58. package/admin/presentation/TaskDetail/components/TaskDetailDrawer.js.map +1 -1
  59. package/admin/presentation/TaskExecutions/TaskExecutionsDataSource.js +1 -1
  60. package/admin/presentation/TaskExecutions/TaskExecutionsDataSource.js.map +1 -1
  61. package/admin/presentation/TaskExecutions/TaskExecutionsPresenter.d.ts +2 -0
  62. package/admin/presentation/TaskExecutions/TaskExecutionsPresenter.js +3 -1
  63. package/admin/presentation/TaskExecutions/TaskExecutionsPresenter.js.map +1 -1
  64. package/admin/presentation/TaskExecutions/components/TaskDefinitionsButton.d.ts +2 -0
  65. package/admin/presentation/TaskExecutions/components/TaskDefinitionsButton.js +16 -0
  66. package/admin/presentation/TaskExecutions/components/TaskDefinitionsButton.js.map +1 -0
  67. package/admin/presentation/TaskExecutions/components/TaskExecutionsView.js +78 -40
  68. package/admin/presentation/TaskExecutions/components/TaskExecutionsView.js.map +1 -1
  69. package/admin/routes.d.ts +1 -0
  70. package/admin/routes.js +4 -0
  71. package/admin/routes.js.map +1 -1
  72. package/admin/shared/types.d.ts +3 -0
  73. package/api/BackgroundTasksFeature.d.ts +4 -0
  74. package/api/BackgroundTasksFeature.js +75 -0
  75. package/api/BackgroundTasksFeature.js.map +1 -0
  76. package/api/abstractions/Timer.d.ts +1 -0
  77. package/api/abstractions/Timer.js +0 -0
  78. package/api/abstractions/index.d.ts +1 -0
  79. package/api/abstractions/index.js +1 -0
  80. package/api/crud/TaskLogPrivateModel.d.ts +9 -0
  81. package/api/crud/TaskLogPrivateModel.js +41 -0
  82. package/api/crud/TaskLogPrivateModel.js.map +1 -0
  83. package/api/crud/TaskPrivateModel.d.ts +9 -0
  84. package/api/crud/TaskPrivateModel.js +56 -0
  85. package/api/crud/TaskPrivateModel.js.map +1 -0
  86. package/api/decorators/SelfCleaningTaskHandlerDecorator.d.ts +33 -0
  87. package/api/decorators/SelfCleaningTaskHandlerDecorator.js +69 -0
  88. package/api/decorators/SelfCleaningTaskHandlerDecorator.js.map +1 -0
  89. package/api/decorators/TaskDefinitionDefaultsDecorator.d.ts +27 -0
  90. package/api/decorators/TaskDefinitionDefaultsDecorator.js +47 -0
  91. package/api/decorators/TaskDefinitionDefaultsDecorator.js.map +1 -0
  92. package/api/domain/BackgroundTaskSettings.d.ts +3 -0
  93. package/api/domain/BackgroundTaskSettings.js +0 -0
  94. package/api/domain/TaskService.d.ts +12 -0
  95. package/api/domain/TaskService.js +5 -0
  96. package/api/domain/TaskService.js.map +1 -0
  97. package/api/domain/constants.d.ts +3 -0
  98. package/api/domain/constants.js +6 -0
  99. package/api/domain/constants.js.map +1 -0
  100. package/api/domain/errors.d.ts +61 -0
  101. package/api/domain/errors.js +109 -0
  102. package/api/domain/errors.js.map +1 -0
  103. package/api/domain/task/TaskLogModelProvider.d.ts +12 -0
  104. package/api/domain/task/TaskLogModelProvider.js +23 -0
  105. package/api/domain/task/TaskLogModelProvider.js.map +1 -0
  106. package/api/domain/task/TaskLogsRepository.d.ts +34 -0
  107. package/api/domain/task/TaskLogsRepository.js +146 -0
  108. package/api/domain/task/TaskLogsRepository.js.map +1 -0
  109. package/api/domain/task/TaskModelProvider.d.ts +12 -0
  110. package/api/domain/task/TaskModelProvider.js +23 -0
  111. package/api/domain/task/TaskModelProvider.js.map +1 -0
  112. package/api/domain/task/TasksRepository.d.ts +37 -0
  113. package/api/domain/task/TasksRepository.js +126 -0
  114. package/api/domain/task/TasksRepository.js.map +1 -0
  115. package/api/domain/task/abstractions.d.ts +50 -0
  116. package/api/domain/task/abstractions.js +8 -0
  117. package/api/domain/task/abstractions.js.map +1 -0
  118. package/api/domain/task/createRevisionId.d.ts +1 -0
  119. package/api/domain/task/createRevisionId.js +8 -0
  120. package/api/domain/task/createRevisionId.js.map +1 -0
  121. package/api/domain/task/entryToTask.d.ts +3 -0
  122. package/api/domain/task/entryToTask.js +20 -0
  123. package/api/domain/task/entryToTask.js.map +1 -0
  124. package/api/domain/task/entryToTaskLog.d.ts +3 -0
  125. package/api/domain/task/entryToTaskLog.js +12 -0
  126. package/api/domain/task/entryToTaskLog.js.map +1 -0
  127. package/api/events/TaskAfterCreateEvent.d.ts +6 -0
  128. package/api/events/TaskAfterCreateEvent.js +13 -0
  129. package/api/events/TaskAfterCreateEvent.js.map +1 -0
  130. package/api/events/TaskAfterDeleteEvent.d.ts +6 -0
  131. package/api/events/TaskAfterDeleteEvent.js +13 -0
  132. package/api/events/TaskAfterDeleteEvent.js.map +1 -0
  133. package/api/events/TaskAfterUpdateEvent.d.ts +6 -0
  134. package/api/events/TaskAfterUpdateEvent.js +13 -0
  135. package/api/events/TaskAfterUpdateEvent.js.map +1 -0
  136. package/api/events/TaskBeforeCreateEvent.d.ts +6 -0
  137. package/api/events/TaskBeforeCreateEvent.js +13 -0
  138. package/api/events/TaskBeforeCreateEvent.js.map +1 -0
  139. package/api/events/TaskBeforeDeleteEvent.d.ts +6 -0
  140. package/api/events/TaskBeforeDeleteEvent.js +13 -0
  141. package/api/events/TaskBeforeDeleteEvent.js.map +1 -0
  142. package/api/events/TaskBeforeUpdateEvent.d.ts +6 -0
  143. package/api/events/TaskBeforeUpdateEvent.js +13 -0
  144. package/api/events/TaskBeforeUpdateEvent.js.map +1 -0
  145. package/api/events/abstractions.d.ts +53 -0
  146. package/api/events/abstractions.js +10 -0
  147. package/api/events/abstractions.js.map +1 -0
  148. package/api/events/index.d.ts +7 -0
  149. package/api/events/index.js +7 -0
  150. package/api/features/AbortTask/AbortTaskUseCase.d.ts +9 -0
  151. package/api/features/AbortTask/AbortTaskUseCase.js +12 -0
  152. package/api/features/AbortTask/AbortTaskUseCase.js.map +1 -0
  153. package/api/features/AbortTask/abstractions.d.ts +25 -0
  154. package/api/features/AbortTask/abstractions.js +5 -0
  155. package/api/features/AbortTask/abstractions.js.map +1 -0
  156. package/api/features/AbortTask/feature.d.ts +4 -0
  157. package/api/features/AbortTask/feature.js +13 -0
  158. package/api/features/AbortTask/feature.js.map +1 -0
  159. package/api/features/AbortTask/index.d.ts +2 -0
  160. package/api/features/AbortTask/index.js +2 -0
  161. package/api/features/BackgroundTaskPermissions/abstractions.d.ts +17 -0
  162. package/api/features/BackgroundTaskPermissions/abstractions.js +6 -0
  163. package/api/features/BackgroundTaskPermissions/abstractions.js.map +1 -0
  164. package/api/features/BackgroundTaskPermissions/feature.d.ts +4 -0
  165. package/api/features/BackgroundTaskPermissions/feature.js +7 -0
  166. package/api/features/BackgroundTaskPermissions/feature.js.map +1 -0
  167. package/api/features/BackgroundTaskPermissions/index.d.ts +2 -0
  168. package/api/features/BackgroundTaskPermissions/index.js +2 -0
  169. package/api/features/CleanupTaskSubtree/CleanupTaskSubtreeUseCase.d.ts +27 -0
  170. package/api/features/CleanupTaskSubtree/CleanupTaskSubtreeUseCase.js +122 -0
  171. package/api/features/CleanupTaskSubtree/CleanupTaskSubtreeUseCase.js.map +1 -0
  172. package/api/features/CleanupTaskSubtree/abstractions.d.ts +7 -0
  173. package/api/features/CleanupTaskSubtree/abstractions.js +5 -0
  174. package/api/features/CleanupTaskSubtree/abstractions.js.map +1 -0
  175. package/api/features/CleanupTaskSubtree/feature.d.ts +4 -0
  176. package/api/features/CleanupTaskSubtree/feature.js +11 -0
  177. package/api/features/CleanupTaskSubtree/feature.js.map +1 -0
  178. package/api/features/CleanupTaskSubtree/index.d.ts +2 -0
  179. package/api/features/CleanupTaskSubtree/index.js +2 -0
  180. package/api/features/CreateTask/CreateTaskUseCase.d.ts +17 -0
  181. package/api/features/CreateTask/CreateTaskUseCase.js +56 -0
  182. package/api/features/CreateTask/CreateTaskUseCase.js.map +1 -0
  183. package/api/features/CreateTask/abstractions.d.ts +21 -0
  184. package/api/features/CreateTask/abstractions.js +5 -0
  185. package/api/features/CreateTask/abstractions.js.map +1 -0
  186. package/api/features/CreateTask/feature.d.ts +4 -0
  187. package/api/features/CreateTask/feature.js +11 -0
  188. package/api/features/CreateTask/feature.js.map +1 -0
  189. package/api/features/CreateTask/index.d.ts +2 -0
  190. package/api/features/CreateTask/index.js +2 -0
  191. package/api/features/CreateTaskLog/CreateTaskLogUseCase.d.ts +13 -0
  192. package/api/features/CreateTaskLog/CreateTaskLogUseCase.js +19 -0
  193. package/api/features/CreateTaskLog/CreateTaskLogUseCase.js.map +1 -0
  194. package/api/features/CreateTaskLog/abstractions.d.ts +16 -0
  195. package/api/features/CreateTaskLog/abstractions.js +5 -0
  196. package/api/features/CreateTaskLog/abstractions.js.map +1 -0
  197. package/api/features/CreateTaskLog/feature.d.ts +4 -0
  198. package/api/features/CreateTaskLog/feature.js +11 -0
  199. package/api/features/CreateTaskLog/feature.js.map +1 -0
  200. package/api/features/CreateTaskLog/index.d.ts +2 -0
  201. package/api/features/CreateTaskLog/index.js +2 -0
  202. package/api/features/DeleteTask/DeleteTaskUseCase.d.ts +14 -0
  203. package/api/features/DeleteTask/DeleteTaskUseCase.js +34 -0
  204. package/api/features/DeleteTask/DeleteTaskUseCase.js.map +1 -0
  205. package/api/features/DeleteTask/abstractions.d.ts +17 -0
  206. package/api/features/DeleteTask/abstractions.js +5 -0
  207. package/api/features/DeleteTask/abstractions.js.map +1 -0
  208. package/api/features/DeleteTask/feature.d.ts +4 -0
  209. package/api/features/DeleteTask/feature.js +11 -0
  210. package/api/features/DeleteTask/feature.js.map +1 -0
  211. package/api/features/DeleteTask/index.d.ts +2 -0
  212. package/api/features/DeleteTask/index.js +2 -0
  213. package/api/features/DeleteTaskLog/DeleteTaskLogUseCase.d.ts +11 -0
  214. package/api/features/DeleteTaskLog/DeleteTaskLogUseCase.js +19 -0
  215. package/api/features/DeleteTaskLog/DeleteTaskLogUseCase.js.map +1 -0
  216. package/api/features/DeleteTaskLog/abstractions.d.ts +14 -0
  217. package/api/features/DeleteTaskLog/abstractions.js +5 -0
  218. package/api/features/DeleteTaskLog/abstractions.js.map +1 -0
  219. package/api/features/DeleteTaskLog/feature.d.ts +4 -0
  220. package/api/features/DeleteTaskLog/feature.js +11 -0
  221. package/api/features/DeleteTaskLog/feature.js.map +1 -0
  222. package/api/features/DeleteTaskLog/index.d.ts +2 -0
  223. package/api/features/DeleteTaskLog/index.js +2 -0
  224. package/api/features/GetBackgroundTaskSettings/GetBackgroundTaskSettingsRepository.d.ts +21 -0
  225. package/api/features/GetBackgroundTaskSettings/GetBackgroundTaskSettingsRepository.js +63 -0
  226. package/api/features/GetBackgroundTaskSettings/GetBackgroundTaskSettingsRepository.js.map +1 -0
  227. package/api/features/GetBackgroundTaskSettings/abstractions.d.ts +13 -0
  228. package/api/features/GetBackgroundTaskSettings/abstractions.js +5 -0
  229. package/api/features/GetBackgroundTaskSettings/abstractions.js.map +1 -0
  230. package/api/features/GetBackgroundTaskSettings/feature.d.ts +4 -0
  231. package/api/features/GetBackgroundTaskSettings/feature.js +11 -0
  232. package/api/features/GetBackgroundTaskSettings/feature.js.map +1 -0
  233. package/api/features/GetBackgroundTaskSettings/index.d.ts +2 -0
  234. package/api/features/GetBackgroundTaskSettings/index.js +2 -0
  235. package/api/features/GetLatestTaskLog/GetLatestTaskLogUseCase.d.ts +11 -0
  236. package/api/features/GetLatestTaskLog/GetLatestTaskLogUseCase.js +19 -0
  237. package/api/features/GetLatestTaskLog/GetLatestTaskLogUseCase.js.map +1 -0
  238. package/api/features/GetLatestTaskLog/abstractions.d.ts +15 -0
  239. package/api/features/GetLatestTaskLog/abstractions.js +5 -0
  240. package/api/features/GetLatestTaskLog/abstractions.js.map +1 -0
  241. package/api/features/GetLatestTaskLog/feature.d.ts +4 -0
  242. package/api/features/GetLatestTaskLog/feature.js +11 -0
  243. package/api/features/GetLatestTaskLog/feature.js.map +1 -0
  244. package/api/features/GetLatestTaskLog/index.d.ts +2 -0
  245. package/api/features/GetLatestTaskLog/index.js +2 -0
  246. package/api/features/GetRunnableTaskDefinition/GetRunnableTaskDefinitionUseCase.d.ts +13 -0
  247. package/api/features/GetRunnableTaskDefinition/GetRunnableTaskDefinitionUseCase.js +51 -0
  248. package/api/features/GetRunnableTaskDefinition/GetRunnableTaskDefinitionUseCase.js.map +1 -0
  249. package/api/features/GetRunnableTaskDefinition/abstractions.d.ts +17 -0
  250. package/api/features/GetRunnableTaskDefinition/abstractions.js +5 -0
  251. package/api/features/GetRunnableTaskDefinition/abstractions.js.map +1 -0
  252. package/api/features/GetRunnableTaskDefinition/feature.d.ts +4 -0
  253. package/api/features/GetRunnableTaskDefinition/feature.js +11 -0
  254. package/api/features/GetRunnableTaskDefinition/feature.js.map +1 -0
  255. package/api/features/GetRunnableTaskDefinition/index.d.ts +2 -0
  256. package/api/features/GetRunnableTaskDefinition/index.js +2 -0
  257. package/api/features/GetTask/GetTaskUseCase.d.ts +13 -0
  258. package/api/features/GetTask/GetTaskUseCase.js +19 -0
  259. package/api/features/GetTask/GetTaskUseCase.js.map +1 -0
  260. package/api/features/GetTask/abstractions.d.ts +17 -0
  261. package/api/features/GetTask/abstractions.js +5 -0
  262. package/api/features/GetTask/abstractions.js.map +1 -0
  263. package/api/features/GetTask/feature.d.ts +4 -0
  264. package/api/features/GetTask/feature.js +11 -0
  265. package/api/features/GetTask/feature.js.map +1 -0
  266. package/api/features/GetTask/index.d.ts +2 -0
  267. package/api/features/GetTask/index.js +2 -0
  268. package/api/features/ListTaskDefinitions/ListTaskDefinitionsUseCase.d.ts +11 -0
  269. package/api/features/ListTaskDefinitions/ListTaskDefinitionsUseCase.js +24 -0
  270. package/api/features/ListTaskDefinitions/ListTaskDefinitionsUseCase.js.map +1 -0
  271. package/api/features/ListTaskDefinitions/abstractions.d.ts +9 -0
  272. package/api/features/ListTaskDefinitions/abstractions.js +5 -0
  273. package/api/features/ListTaskDefinitions/abstractions.js.map +1 -0
  274. package/api/features/ListTaskDefinitions/feature.d.ts +4 -0
  275. package/api/features/ListTaskDefinitions/feature.js +11 -0
  276. package/api/features/ListTaskDefinitions/feature.js.map +1 -0
  277. package/api/features/ListTaskDefinitions/index.d.ts +2 -0
  278. package/api/features/ListTaskDefinitions/index.js +2 -0
  279. package/api/features/ListTaskLogs/ListTaskLogsUseCase.d.ts +12 -0
  280. package/api/features/ListTaskLogs/ListTaskLogsUseCase.js +19 -0
  281. package/api/features/ListTaskLogs/ListTaskLogsUseCase.js.map +1 -0
  282. package/api/features/ListTaskLogs/abstractions.d.ts +15 -0
  283. package/api/features/ListTaskLogs/abstractions.js +5 -0
  284. package/api/features/ListTaskLogs/abstractions.js.map +1 -0
  285. package/api/features/ListTaskLogs/feature.d.ts +4 -0
  286. package/api/features/ListTaskLogs/feature.js +11 -0
  287. package/api/features/ListTaskLogs/feature.js.map +1 -0
  288. package/api/features/ListTaskLogs/index.d.ts +2 -0
  289. package/api/features/ListTaskLogs/index.js +2 -0
  290. package/api/features/ListTasks/ListTasksUseCase.d.ts +13 -0
  291. package/api/features/ListTasks/ListTasksUseCase.js +19 -0
  292. package/api/features/ListTasks/ListTasksUseCase.js.map +1 -0
  293. package/api/features/ListTasks/abstractions.d.ts +19 -0
  294. package/api/features/ListTasks/abstractions.js +5 -0
  295. package/api/features/ListTasks/abstractions.js.map +1 -0
  296. package/api/features/ListTasks/feature.d.ts +4 -0
  297. package/api/features/ListTasks/feature.js +11 -0
  298. package/api/features/ListTasks/feature.js.map +1 -0
  299. package/api/features/ListTasks/index.d.ts +2 -0
  300. package/api/features/ListTasks/index.js +2 -0
  301. package/api/features/TaskController/TaskController.d.ts +49 -0
  302. package/api/features/TaskController/TaskController.js +71 -0
  303. package/api/features/TaskController/TaskController.js.map +1 -0
  304. package/api/features/TaskController/augmentation.d.ts +60 -0
  305. package/api/features/TaskController/augmentation.js +0 -0
  306. package/api/features/TaskController/index.d.ts +2 -0
  307. package/api/features/TaskController/index.js +2 -0
  308. package/api/features/TaskExecutionContext/TaskExecutionContext.d.ts +24 -0
  309. package/api/features/TaskExecutionContext/TaskExecutionContext.js +43 -0
  310. package/api/features/TaskExecutionContext/TaskExecutionContext.js.map +1 -0
  311. package/api/features/TaskExecutionContext/abstractions.d.ts +26 -0
  312. package/api/features/TaskExecutionContext/abstractions.js +5 -0
  313. package/api/features/TaskExecutionContext/abstractions.js.map +1 -0
  314. package/api/features/TaskExecutionContext/feature.d.ts +4 -0
  315. package/api/features/TaskExecutionContext/feature.js +11 -0
  316. package/api/features/TaskExecutionContext/feature.js.map +1 -0
  317. package/api/features/TaskExecutionContext/index.d.ts +1 -0
  318. package/api/features/TaskExecutionContext/index.js +1 -0
  319. package/api/features/TaskHandlerResolver/TaskHandlerResolver.d.ts +12 -0
  320. package/api/features/TaskHandlerResolver/TaskHandlerResolver.js +19 -0
  321. package/api/features/TaskHandlerResolver/TaskHandlerResolver.js.map +1 -0
  322. package/api/features/TaskHandlerResolver/abstractions.d.ts +17 -0
  323. package/api/features/TaskHandlerResolver/abstractions.js +5 -0
  324. package/api/features/TaskHandlerResolver/abstractions.js.map +1 -0
  325. package/api/features/TaskHandlerResolver/feature.d.ts +9 -0
  326. package/api/features/TaskHandlerResolver/feature.js +11 -0
  327. package/api/features/TaskHandlerResolver/feature.js.map +1 -0
  328. package/api/features/TaskHandlerResolver/index.d.ts +2 -0
  329. package/api/features/TaskHandlerResolver/index.js +2 -0
  330. package/api/features/TaskService/BackgroundTaskService.d.ts +42 -0
  331. package/api/features/TaskService/BackgroundTaskService.js +191 -0
  332. package/api/features/TaskService/BackgroundTaskService.js.map +1 -0
  333. package/api/features/TaskService/feature.d.ts +4 -0
  334. package/api/features/TaskService/feature.js +11 -0
  335. package/api/features/TaskService/feature.js.map +1 -0
  336. package/api/features/TaskService/index.d.ts +1 -0
  337. package/api/features/TaskService/index.js +1 -0
  338. package/api/features/TriggerTask/TriggerTaskUseCase.d.ts +9 -0
  339. package/api/features/TriggerTask/TriggerTaskUseCase.js +12 -0
  340. package/api/features/TriggerTask/TriggerTaskUseCase.js.map +1 -0
  341. package/api/features/TriggerTask/abstractions.d.ts +28 -0
  342. package/api/features/TriggerTask/abstractions.js +5 -0
  343. package/api/features/TriggerTask/abstractions.js.map +1 -0
  344. package/api/features/TriggerTask/feature.d.ts +4 -0
  345. package/api/features/TriggerTask/feature.js +13 -0
  346. package/api/features/TriggerTask/feature.js.map +1 -0
  347. package/api/features/TriggerTask/index.d.ts +2 -0
  348. package/api/features/TriggerTask/index.js +2 -0
  349. package/api/features/UpdateBackgroundTaskSettings/UpdateBackgroundTaskSettingsRepository.d.ts +23 -0
  350. package/api/features/UpdateBackgroundTaskSettings/UpdateBackgroundTaskSettingsRepository.js +67 -0
  351. package/api/features/UpdateBackgroundTaskSettings/UpdateBackgroundTaskSettingsRepository.js.map +1 -0
  352. package/api/features/UpdateBackgroundTaskSettings/UpdateBackgroundTaskSettingsUseCase.d.ts +14 -0
  353. package/api/features/UpdateBackgroundTaskSettings/UpdateBackgroundTaskSettingsUseCase.js +27 -0
  354. package/api/features/UpdateBackgroundTaskSettings/UpdateBackgroundTaskSettingsUseCase.js.map +1 -0
  355. package/api/features/UpdateBackgroundTaskSettings/abstractions.d.ts +26 -0
  356. package/api/features/UpdateBackgroundTaskSettings/abstractions.js +6 -0
  357. package/api/features/UpdateBackgroundTaskSettings/abstractions.js.map +1 -0
  358. package/api/features/UpdateBackgroundTaskSettings/feature.d.ts +4 -0
  359. package/api/features/UpdateBackgroundTaskSettings/feature.js +13 -0
  360. package/api/features/UpdateBackgroundTaskSettings/feature.js.map +1 -0
  361. package/api/features/UpdateBackgroundTaskSettings/index.d.ts +2 -0
  362. package/api/features/UpdateBackgroundTaskSettings/index.js +2 -0
  363. package/api/features/UpdateBackgroundTaskSettings/schema.d.ts +4 -0
  364. package/api/features/UpdateBackgroundTaskSettings/schema.js +8 -0
  365. package/api/features/UpdateBackgroundTaskSettings/schema.js.map +1 -0
  366. package/api/features/UpdateTask/UpdateTaskUseCase.d.ts +17 -0
  367. package/api/features/UpdateTask/UpdateTaskUseCase.js +36 -0
  368. package/api/features/UpdateTask/UpdateTaskUseCase.js.map +1 -0
  369. package/api/features/UpdateTask/abstractions.d.ts +22 -0
  370. package/api/features/UpdateTask/abstractions.js +5 -0
  371. package/api/features/UpdateTask/abstractions.js.map +1 -0
  372. package/api/features/UpdateTask/feature.d.ts +4 -0
  373. package/api/features/UpdateTask/feature.js +11 -0
  374. package/api/features/UpdateTask/feature.js.map +1 -0
  375. package/api/features/UpdateTask/index.d.ts +2 -0
  376. package/api/features/UpdateTask/index.js +2 -0
  377. package/api/features/UpdateTaskLog/UpdateTaskLogUseCase.d.ts +12 -0
  378. package/api/features/UpdateTaskLog/UpdateTaskLogUseCase.js +19 -0
  379. package/api/features/UpdateTaskLog/UpdateTaskLogUseCase.js.map +1 -0
  380. package/api/features/UpdateTaskLog/abstractions.d.ts +16 -0
  381. package/api/features/UpdateTaskLog/abstractions.js +5 -0
  382. package/api/features/UpdateTaskLog/abstractions.js.map +1 -0
  383. package/api/features/UpdateTaskLog/feature.d.ts +4 -0
  384. package/api/features/UpdateTaskLog/feature.js +11 -0
  385. package/api/features/UpdateTaskLog/feature.js.map +1 -0
  386. package/api/features/UpdateTaskLog/index.d.ts +2 -0
  387. package/api/features/UpdateTaskLog/index.js +2 -0
  388. package/api/global.d.ts +1 -0
  389. package/api/global.js +1 -0
  390. package/api/graphql/BackgroundTasksGraphQLSchema.d.ts +29 -0
  391. package/api/graphql/BackgroundTasksGraphQLSchema.js +462 -0
  392. package/api/graphql/BackgroundTasksGraphQLSchema.js.map +1 -0
  393. package/api/graphql/checkPermissions.d.ts +7 -0
  394. package/api/graphql/checkPermissions.js +22 -0
  395. package/api/graphql/checkPermissions.js.map +1 -0
  396. package/api/graphql/utils.d.ts +9 -0
  397. package/api/graphql/utils.js +20 -0
  398. package/api/graphql/utils.js.map +1 -0
  399. package/api/handler/types.d.ts +21 -0
  400. package/api/handler/types.js +0 -0
  401. package/api/index.d.ts +21 -0
  402. package/api/index.js +20 -0
  403. package/api/models/BackgroundTaskSettingsModel.d.ts +8 -0
  404. package/api/models/BackgroundTaskSettingsModel.js +27 -0
  405. package/api/models/BackgroundTaskSettingsModel.js.map +1 -0
  406. package/api/permissions.d.ts +12 -0
  407. package/api/permissions.js +22 -0
  408. package/api/permissions.js.map +1 -0
  409. package/api/response/DatabaseResponse.d.ts +12 -0
  410. package/api/response/DatabaseResponse.js +127 -0
  411. package/api/response/DatabaseResponse.js.map +1 -0
  412. package/api/response/Response.d.ts +14 -0
  413. package/api/response/Response.js +91 -0
  414. package/api/response/Response.js.map +1 -0
  415. package/api/response/ResponseAbortedResult.d.ts +9 -0
  416. package/api/response/ResponseAbortedResult.js +12 -0
  417. package/api/response/ResponseAbortedResult.js.map +1 -0
  418. package/api/response/ResponseContinueResult.d.ts +17 -0
  419. package/api/response/ResponseContinueResult.js +16 -0
  420. package/api/response/ResponseContinueResult.js.map +1 -0
  421. package/api/response/ResponseDoneResult.d.ts +11 -0
  422. package/api/response/ResponseDoneResult.js +14 -0
  423. package/api/response/ResponseDoneResult.js.map +1 -0
  424. package/api/response/ResponseErrorResult.d.ts +10 -0
  425. package/api/response/ResponseErrorResult.js +13 -0
  426. package/api/response/ResponseErrorResult.js.map +1 -0
  427. package/api/response/TaskResponse.d.ts +12 -0
  428. package/api/response/TaskResponse.js +53 -0
  429. package/api/response/TaskResponse.js.map +1 -0
  430. package/api/response/abstractions/Response.d.ts +25 -0
  431. package/api/response/abstractions/Response.js +0 -0
  432. package/api/response/abstractions/ResponseAbortedResult.d.ts +5 -0
  433. package/api/response/abstractions/ResponseAbortedResult.js +0 -0
  434. package/api/response/abstractions/ResponseBaseResult.d.ts +7 -0
  435. package/api/response/abstractions/ResponseBaseResult.js +0 -0
  436. package/api/response/abstractions/ResponseContinueResult.d.ts +21 -0
  437. package/api/response/abstractions/ResponseContinueResult.js +0 -0
  438. package/api/response/abstractions/ResponseDoneResult.d.ts +13 -0
  439. package/api/response/abstractions/ResponseDoneResult.js +0 -0
  440. package/api/response/abstractions/ResponseErrorResult.d.ts +18 -0
  441. package/api/response/abstractions/ResponseErrorResult.js +0 -0
  442. package/api/response/abstractions/TaskResponse.d.ts +16 -0
  443. package/api/response/abstractions/TaskResponse.js +0 -0
  444. package/api/response/abstractions/index.d.ts +7 -0
  445. package/api/response/abstractions/index.js +7 -0
  446. package/api/response/index.d.ts +7 -0
  447. package/api/response/index.js +7 -0
  448. package/api/runner/TaskControl.d.ts +48 -0
  449. package/api/runner/TaskControl.js +186 -0
  450. package/api/runner/TaskControl.js.map +1 -0
  451. package/api/runner/TaskEventValidation.d.ts +5 -0
  452. package/api/runner/TaskEventValidation.js +20 -0
  453. package/api/runner/TaskEventValidation.js.map +1 -0
  454. package/api/runner/TaskManager.d.ts +22 -0
  455. package/api/runner/TaskManager.js +83 -0
  456. package/api/runner/TaskManager.js.map +1 -0
  457. package/api/runner/TaskManagerStore.d.ts +57 -0
  458. package/api/runner/TaskManagerStore.js +127 -0
  459. package/api/runner/TaskManagerStore.js.map +1 -0
  460. package/api/runner/TaskRunner.d.ts +25 -0
  461. package/api/runner/TaskRunner.js +86 -0
  462. package/api/runner/TaskRunner.js.map +1 -0
  463. package/api/runner/abstractions/TaskControl.d.ts +10 -0
  464. package/api/runner/abstractions/TaskControl.js +0 -0
  465. package/api/runner/abstractions/TaskEventValidation.d.ts +5 -0
  466. package/api/runner/abstractions/TaskEventValidation.js +0 -0
  467. package/api/runner/abstractions/TaskManager.d.ts +5 -0
  468. package/api/runner/abstractions/TaskManager.js +0 -0
  469. package/api/runner/abstractions/TaskManagerStore.d.ts +92 -0
  470. package/api/runner/abstractions/TaskManagerStore.js +0 -0
  471. package/api/runner/abstractions/TaskRunner.d.ts +13 -0
  472. package/api/runner/abstractions/TaskRunner.js +0 -0
  473. package/api/runner/abstractions/index.d.ts +5 -0
  474. package/api/runner/abstractions/index.js +5 -0
  475. package/api/runner/index.d.ts +1 -0
  476. package/api/runner/index.js +1 -0
  477. package/api/tasks/testingRunTask.d.ts +19 -0
  478. package/api/tasks/testingRunTask.js +25 -0
  479. package/api/tasks/testingRunTask.js.map +1 -0
  480. package/api/types.d.ts +120 -0
  481. package/api/types.js +20 -0
  482. package/api/types.js.map +1 -0
  483. package/api/utils/ObjectUpdater.d.ts +8 -0
  484. package/api/utils/ObjectUpdater.js +33 -0
  485. package/api/utils/ObjectUpdater.js.map +1 -0
  486. package/api/utils/getErrorProperties.d.ts +2 -0
  487. package/api/utils/getErrorProperties.js +9 -0
  488. package/api/utils/getErrorProperties.js.map +1 -0
  489. package/api/utils/getObjectProperties.d.ts +8 -0
  490. package/api/utils/getObjectProperties.js +11 -0
  491. package/api/utils/getObjectProperties.js.map +1 -0
  492. package/api/utils/index.d.ts +3 -0
  493. package/api/utils/index.js +3 -0
  494. package/api/utils/normalizeSelfCleanup.d.ts +2 -0
  495. package/api/utils/normalizeSelfCleanup.js +16 -0
  496. package/api/utils/normalizeSelfCleanup.js.map +1 -0
  497. package/index.d.ts +1 -0
  498. package/index.js +1 -0
  499. package/package.json +32 -13
  500. package/testing/index.d.ts +3 -0
  501. package/testing/index.js +2 -0
  502. package/testing/mockTaskTriggerTransportPlugin.d.ts +2 -0
  503. package/testing/mockTaskTriggerTransportPlugin.js +18 -0
  504. package/testing/mockTaskTriggerTransportPlugin.js.map +1 -0
  505. package/testing/runner.d.ts +19 -0
  506. package/testing/runner.js +44 -0
  507. package/testing/runner.js.map +1 -0
package/api/types.d.ts ADDED
@@ -0,0 +1,120 @@
1
+ import type { CmsContext as BaseContext, CmsEntryListParams, CmsEntryMeta } from "@webiny/api-headless-cms/types/index.js";
2
+ import type { IResponseError } from "../api/response/abstractions/index.js";
3
+ import type { GenericRecord } from "@webiny/api/types.js";
4
+ import type { SecurityPermission } from "@webiny/api-core/types/security.js";
5
+ import type { TaskDefinition } from "@webiny/api-core/features/task/TaskDefinition/index.js";
6
+ import { TaskService } from "@webiny/api-core/features/task/TaskService/index.js";
7
+ import type { IdInterfaceGenerator, NumericInterfaceGenerator } from "@webiny/api";
8
+ import "./features/TaskController/augmentation.js";
9
+ export * from "./handler/types.js";
10
+ export * from "./response/abstractions/index.js";
11
+ export * from "./runner/abstractions/index.js";
12
+ export type ITaskDataInput = GenericRecord;
13
+ export declare enum TaskLogItemType {
14
+ INFO = "info",
15
+ ERROR = "error"
16
+ }
17
+ export interface ITaskLogItemData {
18
+ [key: string]: any;
19
+ }
20
+ export interface ITaskLogItemBase {
21
+ message: string;
22
+ createdOn: string;
23
+ type: TaskLogItemType;
24
+ data?: ITaskLogItemData;
25
+ }
26
+ export interface ITaskLogItemInfo extends ITaskLogItemBase {
27
+ type: TaskLogItemType.INFO;
28
+ }
29
+ export interface ITaskLogItemError extends ITaskLogItemBase {
30
+ type: TaskLogItemType.ERROR;
31
+ error?: IResponseError;
32
+ }
33
+ export type ITaskLogItem = ITaskLogItemInfo | ITaskLogItemError;
34
+ export interface ITaskLog {
35
+ /**
36
+ * ID without the revision number (for example: #0001).
37
+ */
38
+ id: string;
39
+ createdOn: string;
40
+ createdBy: ITaskIdentity;
41
+ executionName: string;
42
+ task: string;
43
+ iteration: number;
44
+ items: ITaskLogItem[];
45
+ }
46
+ export declare enum TaskDataStatus {
47
+ PENDING = "pending",
48
+ RUNNING = "running",
49
+ FAILED = "failed",
50
+ SUCCESS = "success",
51
+ ABORTED = "aborted"
52
+ }
53
+ export interface ITaskIdentity {
54
+ id: string;
55
+ displayName: string;
56
+ type: string;
57
+ }
58
+ export type IGetTaskResponse<T extends TaskService.TaskInput = TaskService.TaskInput, O extends TaskService.GenericOutput = TaskService.GenericOutput> = ITask<T, O> | null;
59
+ export interface IListTasksResponse<T extends TaskService.TaskInput = TaskService.TaskInput, O extends TaskService.GenericOutput = TaskService.GenericOutput> {
60
+ items: ITask<T, O>[];
61
+ meta: CmsEntryMeta;
62
+ }
63
+ export interface IListTaskLogsResponse {
64
+ items: ITaskLog[];
65
+ meta: CmsEntryMeta;
66
+ }
67
+ export interface IListTaskParamsWhere extends IdInterfaceGenerator<"id">, IdInterfaceGenerator<"parentId">, IdInterfaceGenerator<"definitionId">, IdInterfaceGenerator<"taskStatus"> {
68
+ }
69
+ export interface IListTaskParams extends Omit<CmsEntryListParams, "fields" | "search"> {
70
+ where?: IListTaskParamsWhere;
71
+ }
72
+ export interface IListTaskLogParamsWhere extends IdInterfaceGenerator<"id">, IdInterfaceGenerator<"task">, NumericInterfaceGenerator<"iteration"> {
73
+ }
74
+ export interface IListTaskLogParams extends Omit<CmsEntryListParams, "fields" | "search" | "where"> {
75
+ where?: IListTaskLogParamsWhere;
76
+ }
77
+ export interface ITaskCreateData<T extends TaskDefinition.TaskInput = TaskDefinition.TaskInput> {
78
+ definitionId: string;
79
+ name: string;
80
+ input: T;
81
+ parentId?: string;
82
+ }
83
+ export interface ITaskUpdateData<I extends TaskDefinition.TaskInput = TaskDefinition.TaskInput, O extends TaskDefinition.TaskOutput = TaskDefinition.TaskOutput> {
84
+ name?: string;
85
+ input?: I;
86
+ output?: O;
87
+ taskStatus?: TaskDataStatus;
88
+ executionName?: string;
89
+ startedOn?: string;
90
+ finishedOn?: string;
91
+ eventResponse?: GenericRecord;
92
+ iterations?: number;
93
+ }
94
+ export interface ITaskLogCreateInput {
95
+ executionName: string;
96
+ iteration: number;
97
+ }
98
+ export interface ITaskLogUpdateInput {
99
+ items?: ITaskLogItem[];
100
+ }
101
+ export interface ITaskTriggerParams<I = ITaskDataInput> {
102
+ parent?: Pick<ITask, "id">;
103
+ definition: string;
104
+ name?: string;
105
+ input?: I;
106
+ delay?: number;
107
+ }
108
+ export interface ITaskAbortParams {
109
+ id: string;
110
+ message?: string;
111
+ }
112
+ export interface Context extends BaseContext {
113
+ }
114
+ export interface TaskPermission extends SecurityPermission {
115
+ name: "task";
116
+ rwd?: string;
117
+ }
118
+ export type ITask<I extends TaskService.TaskInput = TaskService.TaskInput, O extends TaskService.GenericOutput = TaskService.GenericOutput> = TaskService.Task<I, O>;
119
+ export type SelfCleanup = TaskDefinition.SelfCleanup;
120
+ export type SelfCleanupEvent = TaskDefinition.SelfCleanupEvent;
package/api/types.js ADDED
@@ -0,0 +1,20 @@
1
+ import "./features/TaskController/augmentation.js";
2
+ export * from "./handler/types.js";
3
+ export * from "./response/abstractions/index.js";
4
+ export * from "./runner/abstractions/index.js";
5
+ var types_TaskLogItemType = /*#__PURE__*/ function(TaskLogItemType) {
6
+ TaskLogItemType["INFO"] = "info";
7
+ TaskLogItemType["ERROR"] = "error";
8
+ return TaskLogItemType;
9
+ }({});
10
+ var types_TaskDataStatus = /*#__PURE__*/ function(TaskDataStatus) {
11
+ TaskDataStatus["PENDING"] = "pending";
12
+ TaskDataStatus["RUNNING"] = "running";
13
+ TaskDataStatus["FAILED"] = "failed";
14
+ TaskDataStatus["SUCCESS"] = "success";
15
+ TaskDataStatus["ABORTED"] = "aborted";
16
+ return TaskDataStatus;
17
+ }({});
18
+ export { types_TaskDataStatus as TaskDataStatus, types_TaskLogItemType as TaskLogItemType };
19
+
20
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"api/types.js","sources":["../../src/api/types.ts"],"sourcesContent":["import type {\n CmsContext as BaseContext,\n CmsEntryListParams,\n CmsEntryMeta\n} from \"@webiny/api-headless-cms/types/index.js\";\nimport type { IResponseError } from \"~/api/response/abstractions/index.js\";\nimport type { GenericRecord } from \"@webiny/api/types.js\";\nimport type { SecurityPermission } from \"@webiny/api-core/types/security.js\";\nimport type { TaskDefinition } from \"@webiny/api-core/features/task/TaskDefinition/index.js\";\nimport { TaskService } from \"@webiny/api-core/features/task/TaskService/index.js\";\nimport type { IdInterfaceGenerator, NumericInterfaceGenerator } from \"@webiny/api\";\n// TODO had to import for augmentation to work, but is there a better way to do this?\nimport \"./features/TaskController/augmentation.js\";\n\nexport * from \"./handler/types.js\";\nexport * from \"./response/abstractions/index.js\";\nexport * from \"./runner/abstractions/index.js\";\n\nexport type ITaskDataInput = GenericRecord;\n\nexport enum TaskLogItemType {\n INFO = \"info\",\n ERROR = \"error\"\n}\n\nexport interface ITaskLogItemData {\n [key: string]: any;\n}\n\nexport interface ITaskLogItemBase {\n message: string;\n createdOn: string;\n type: TaskLogItemType;\n data?: ITaskLogItemData;\n}\n\nexport interface ITaskLogItemInfo extends ITaskLogItemBase {\n type: TaskLogItemType.INFO;\n}\n\nexport interface ITaskLogItemError extends ITaskLogItemBase {\n type: TaskLogItemType.ERROR;\n error?: IResponseError;\n}\n\nexport type ITaskLogItem = ITaskLogItemInfo | ITaskLogItemError;\n\nexport interface ITaskLog {\n /**\n * ID without the revision number (for example: #0001).\n */\n id: string;\n createdOn: string;\n createdBy: ITaskIdentity;\n executionName: string;\n task: string;\n iteration: number;\n items: ITaskLogItem[];\n}\n\nexport enum TaskDataStatus {\n PENDING = \"pending\",\n RUNNING = \"running\",\n FAILED = \"failed\",\n SUCCESS = \"success\",\n ABORTED = \"aborted\"\n}\n\nexport interface ITaskIdentity {\n id: string;\n displayName: string;\n type: string;\n}\n\nexport type IGetTaskResponse<\n T extends TaskService.TaskInput = TaskService.TaskInput,\n O extends TaskService.GenericOutput = TaskService.GenericOutput\n> = ITask<T, O> | null;\n\nexport interface IListTasksResponse<\n T extends TaskService.TaskInput = TaskService.TaskInput,\n O extends TaskService.GenericOutput = TaskService.GenericOutput\n> {\n items: ITask<T, O>[];\n meta: CmsEntryMeta;\n}\n\nexport interface IListTaskLogsResponse {\n items: ITaskLog[];\n meta: CmsEntryMeta;\n}\n\nexport interface IListTaskParamsWhere\n extends\n IdInterfaceGenerator<\"id\">,\n IdInterfaceGenerator<\"parentId\">,\n IdInterfaceGenerator<\"definitionId\">,\n IdInterfaceGenerator<\"taskStatus\"> {\n //\n}\n\nexport interface IListTaskParams extends Omit<CmsEntryListParams, \"fields\" | \"search\"> {\n where?: IListTaskParamsWhere;\n}\n\nexport interface IListTaskLogParamsWhere\n extends\n IdInterfaceGenerator<\"id\">,\n IdInterfaceGenerator<\"task\">,\n NumericInterfaceGenerator<\"iteration\"> {}\n\nexport interface IListTaskLogParams extends Omit<\n CmsEntryListParams,\n \"fields\" | \"search\" | \"where\"\n> {\n where?: IListTaskLogParamsWhere;\n}\n\nexport interface ITaskCreateData<T extends TaskDefinition.TaskInput = TaskDefinition.TaskInput> {\n definitionId: string;\n name: string;\n input: T;\n parentId?: string;\n}\n\nexport interface ITaskUpdateData<\n I extends TaskDefinition.TaskInput = TaskDefinition.TaskInput,\n O extends TaskDefinition.TaskOutput = TaskDefinition.TaskOutput\n> {\n name?: string;\n input?: I;\n output?: O;\n taskStatus?: TaskDataStatus;\n executionName?: string;\n startedOn?: string;\n finishedOn?: string;\n eventResponse?: GenericRecord;\n iterations?: number;\n}\n\nexport interface ITaskLogCreateInput {\n executionName: string;\n iteration: number;\n}\n\nexport interface ITaskLogUpdateInput {\n items?: ITaskLogItem[];\n}\n\nexport interface ITaskTriggerParams<I = ITaskDataInput> {\n parent?: Pick<ITask, \"id\">;\n definition: string;\n name?: string;\n input?: I;\n delay?: number;\n}\n\nexport interface ITaskAbortParams {\n id: string;\n message?: string;\n}\n\nexport interface Context extends BaseContext {}\n\nexport interface TaskPermission extends SecurityPermission {\n name: \"task\";\n rwd?: string;\n}\n\nexport type ITask<\n I extends TaskService.TaskInput = TaskService.TaskInput,\n O extends TaskService.GenericOutput = TaskService.GenericOutput\n> = TaskService.Task<I, O>;\n\nexport type SelfCleanup = TaskDefinition.SelfCleanup;\nexport type SelfCleanupEvent = TaskDefinition.SelfCleanupEvent;\n"],"names":["TaskLogItemType","TaskDataStatus"],"mappings":";;;;AAoBO,IAAKA,wBAAeA,WAAAA,GAAAA,SAAfA,eAAe;;;WAAfA;;AAwCL,IAAKC,uBAAcA,WAAAA,GAAAA,SAAdA,cAAc;;;;;;WAAdA"}
@@ -0,0 +1,8 @@
1
+ export declare class ObjectUpdater<T> {
2
+ private data;
3
+ merge(target: T, clear?: boolean): T;
4
+ fetch(clear?: boolean): Partial<T>;
5
+ update(input: Partial<T>): void;
6
+ isDirty(): boolean;
7
+ private clear;
8
+ }
@@ -0,0 +1,33 @@
1
+ import { mergeAdvanced } from "object-merge-advanced";
2
+ const mergeOptions = {
3
+ hardArrayConcat: true
4
+ };
5
+ class ObjectUpdater {
6
+ merge(target, clear = true) {
7
+ const item = mergeAdvanced(target, this.data, mergeOptions);
8
+ if (!clear) return item;
9
+ this.clear();
10
+ return item;
11
+ }
12
+ fetch(clear = true) {
13
+ const values = structuredClone(this.data);
14
+ if (!clear) return values;
15
+ this.clear();
16
+ return values;
17
+ }
18
+ update(input) {
19
+ this.data = mergeAdvanced(this.data, input, mergeOptions);
20
+ }
21
+ isDirty() {
22
+ return Object.keys(this.data).length > 0;
23
+ }
24
+ clear() {
25
+ this.data = {};
26
+ }
27
+ constructor(){
28
+ this.data = {};
29
+ }
30
+ }
31
+ export { ObjectUpdater };
32
+
33
+ //# sourceMappingURL=ObjectUpdater.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"api/utils/ObjectUpdater.js","sources":["../../../src/api/utils/ObjectUpdater.ts"],"sourcesContent":["/**\n * We need to use the object-merge-advanced library to merge array items properly.\n * With plain assign or lodash merge, we will lose array items from the source object.\n */\nimport type { defaults } from \"object-merge-advanced\";\nimport { mergeAdvanced } from \"object-merge-advanced\";\n\nconst mergeOptions: Partial<typeof defaults> = {\n hardArrayConcat: true\n};\n\nexport class ObjectUpdater<T> {\n private data: Partial<T> = {};\n\n public merge(target: T, clear = true): T {\n const item = mergeAdvanced(target, this.data, mergeOptions);\n if (!clear) {\n return item;\n }\n this.clear();\n return item;\n }\n\n public fetch(clear = true): Partial<T> {\n const values = structuredClone(this.data);\n if (!clear) {\n return values;\n }\n this.clear();\n return values;\n }\n public update(input: Partial<T>) {\n this.data = mergeAdvanced(this.data, input, mergeOptions);\n }\n\n public isDirty(): boolean {\n return Object.keys(this.data).length > 0;\n }\n\n private clear() {\n this.data = {};\n }\n}\n"],"names":["mergeOptions","ObjectUpdater","target","clear","item","mergeAdvanced","values","structuredClone","input","Object"],"mappings":";AAOA,MAAMA,eAAyC;IAC3C,iBAAiB;AACrB;AAEO,MAAMC;IAGF,MAAMC,MAAS,EAAEC,QAAQ,IAAI,EAAK;QACrC,MAAMC,OAAOC,cAAcH,QAAQ,IAAI,CAAC,IAAI,EAAEF;QAC9C,IAAI,CAACG,OACD,OAAOC;QAEX,IAAI,CAAC,KAAK;QACV,OAAOA;IACX;IAEO,MAAMD,QAAQ,IAAI,EAAc;QACnC,MAAMG,SAASC,gBAAgB,IAAI,CAAC,IAAI;QACxC,IAAI,CAACJ,OACD,OAAOG;QAEX,IAAI,CAAC,KAAK;QACV,OAAOA;IACX;IACO,OAAOE,KAAiB,EAAE;QAC7B,IAAI,CAAC,IAAI,GAAGH,cAAc,IAAI,CAAC,IAAI,EAAEG,OAAOR;IAChD;IAEO,UAAmB;QACtB,OAAOS,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,GAAG;IAC3C;IAEQ,QAAQ;QACZ,IAAI,CAAC,IAAI,GAAG,CAAC;IACjB;;aA7BQ,IAAI,GAAe,CAAC;;AA8BhC"}
@@ -0,0 +1,2 @@
1
+ import type { IResponseError } from "../../api/response/abstractions/index.js";
2
+ export declare const getErrorProperties: (error: Error | IResponseError) => IResponseError;
@@ -0,0 +1,9 @@
1
+ import { getObjectProperties } from "./getObjectProperties.js";
2
+ const getErrorProperties = (error)=>{
3
+ const value = getObjectProperties(error);
4
+ delete value.stack;
5
+ return value;
6
+ };
7
+ export { getErrorProperties };
8
+
9
+ //# sourceMappingURL=getErrorProperties.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"api/utils/getErrorProperties.js","sources":["../../../src/api/utils/getErrorProperties.ts"],"sourcesContent":["import type { IResponseError } from \"~/api/response/abstractions/index.js\";\nimport { getObjectProperties } from \"~/api/utils/getObjectProperties.js\";\n\nexport const getErrorProperties = (error: Error | IResponseError): IResponseError => {\n const value = getObjectProperties<IResponseError>(error);\n\n delete value.stack;\n\n return value;\n};\n"],"names":["getErrorProperties","error","value","getObjectProperties"],"mappings":";AAGO,MAAMA,qBAAqB,CAACC;IAC/B,MAAMC,QAAQC,oBAAoCF;IAElD,OAAOC,MAAM,KAAK;IAElB,OAAOA;AACX"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Unfortunately we need some casting as we do not know which properties are available on the object.
3
+ */
4
+ interface GenericRecord {
5
+ [key: string]: any;
6
+ }
7
+ export declare const getObjectProperties: <T = GenericRecord>(input: unknown) => T;
8
+ export {};
@@ -0,0 +1,11 @@
1
+ const getObjectProperties = (input)=>{
2
+ if (!input || "object" != typeof input) return {};
3
+ return Object.getOwnPropertyNames(input).reduce((acc, key)=>{
4
+ if ("stack" === key) return acc;
5
+ acc[key] = input[key];
6
+ return acc;
7
+ }, {});
8
+ };
9
+ export { getObjectProperties };
10
+
11
+ //# sourceMappingURL=getObjectProperties.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"api/utils/getObjectProperties.js","sources":["../../../src/api/utils/getObjectProperties.ts"],"sourcesContent":["/**\n * Unfortunately we need some casting as we do not know which properties are available on the object.\n */\ninterface GenericRecord {\n [key: string]: any;\n}\n\nexport const getObjectProperties = <T = GenericRecord>(input: unknown): T => {\n if (!input || typeof input !== \"object\") {\n return {} as unknown as T;\n }\n return Object.getOwnPropertyNames(input).reduce<T>((acc, key) => {\n if (key === \"stack\") {\n return acc;\n }\n acc[key as keyof T] = (input as unknown as T)[key as keyof T];\n return acc;\n }, {} as T) as unknown as T;\n};\n"],"names":["getObjectProperties","input","Object","acc","key"],"mappings":"AAOO,MAAMA,sBAAsB,CAAoBC;IACnD,IAAI,CAACA,SAAS,AAAiB,YAAjB,OAAOA,OACjB,OAAO,CAAC;IAEZ,OAAOC,OAAO,mBAAmB,CAACD,OAAO,MAAM,CAAI,CAACE,KAAKC;QACrD,IAAIA,AAAQ,YAARA,KACA,OAAOD;QAEXA,GAAG,CAACC,IAAe,GAAIH,KAAsB,CAACG,IAAe;QAC7D,OAAOD;IACX,GAAG,CAAC;AACR"}
@@ -0,0 +1,3 @@
1
+ export * from "./getErrorProperties.js";
2
+ export * from "./getObjectProperties.js";
3
+ export * from "./ObjectUpdater.js";
@@ -0,0 +1,3 @@
1
+ export * from "./getErrorProperties.js";
2
+ export * from "./getObjectProperties.js";
3
+ export * from "./ObjectUpdater.js";
@@ -0,0 +1,2 @@
1
+ import type { TaskDefinition } from "@webiny/api-core/features/task/TaskDefinition/index.js";
2
+ export declare const normalizeSelfCleanup: (value: TaskDefinition.SelfCleanup | undefined) => ReadonlySet<TaskDefinition.SelfCleanupEvent>;
@@ -0,0 +1,16 @@
1
+ const ALL_EVENTS = [
2
+ "onSuccess",
3
+ "onError",
4
+ "onAbort"
5
+ ];
6
+ const normalizeSelfCleanup = (value)=>{
7
+ if (void 0 === value || "never" === value) return new Set();
8
+ if ("always" === value) return new Set(ALL_EVENTS);
9
+ if (Array.isArray(value)) return new Set(value);
10
+ return new Set([
11
+ value
12
+ ]);
13
+ };
14
+ export { normalizeSelfCleanup };
15
+
16
+ //# sourceMappingURL=normalizeSelfCleanup.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"api/utils/normalizeSelfCleanup.js","sources":["../../../src/api/utils/normalizeSelfCleanup.ts"],"sourcesContent":["import type { TaskDefinition } from \"@webiny/api-core/features/task/TaskDefinition/index.js\";\n\nconst ALL_EVENTS: ReadonlyArray<TaskDefinition.SelfCleanupEvent> = [\n \"onSuccess\",\n \"onError\",\n \"onAbort\"\n];\n\nexport const normalizeSelfCleanup = (\n value: TaskDefinition.SelfCleanup | undefined\n): ReadonlySet<TaskDefinition.SelfCleanupEvent> => {\n if (value === undefined || value === \"never\") {\n return new Set();\n }\n if (value === \"always\") {\n return new Set(ALL_EVENTS);\n }\n if (Array.isArray(value)) {\n return new Set(value);\n }\n return new Set([value]);\n};\n"],"names":["ALL_EVENTS","normalizeSelfCleanup","value","undefined","Set","Array"],"mappings":"AAEA,MAAMA,aAA6D;IAC/D;IACA;IACA;CACH;AAEM,MAAMC,uBAAuB,CAChCC;IAEA,IAAIA,AAAUC,WAAVD,SAAuBA,AAAU,YAAVA,OACvB,OAAO,IAAIE;IAEf,IAAIF,AAAU,aAAVA,OACA,OAAO,IAAIE,IAAIJ;IAEnB,IAAIK,MAAM,OAAO,CAACH,QACd,OAAO,IAAIE,IAAIF;IAEnB,OAAO,IAAIE,IAAI;QAACF;KAAM;AAC1B"}
package/index.d.ts CHANGED
@@ -1 +1,2 @@
1
1
  export * from "./admin/index.js";
2
+ export * from "./api/index.js";
package/index.js CHANGED
@@ -1 +1,2 @@
1
1
  export * from "./admin/index.js";
2
+ export * from "./api/index.js";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@webiny/background-tasks",
3
- "version": "0.0.0-unstable.7be00a75a9",
3
+ "version": "0.0.0-unstable.7c2def32a7",
4
4
  "type": "module",
5
5
  "exports": {
6
6
  ".": "./index.js",
@@ -19,22 +19,41 @@
19
19
  },
20
20
  "license": "MIT",
21
21
  "dependencies": {
22
- "@webiny/admin-ui": "0.0.0-unstable.7be00a75a9",
23
- "@webiny/app": "0.0.0-unstable.7be00a75a9",
24
- "@webiny/app-admin": "0.0.0-unstable.7be00a75a9",
25
- "@webiny/feature": "0.0.0-unstable.7be00a75a9",
26
- "@webiny/icons": "0.0.0-unstable.7be00a75a9",
27
- "@webiny/sdk": "0.0.0-unstable.7be00a75a9",
22
+ "@webiny/admin-ui": "0.0.0-unstable.7c2def32a7",
23
+ "@webiny/api": "0.0.0-unstable.7c2def32a7",
24
+ "@webiny/api-core": "0.0.0-unstable.7c2def32a7",
25
+ "@webiny/api-graphql": "0.0.0-unstable.7c2def32a7",
26
+ "@webiny/api-headless-cms": "0.0.0-unstable.7c2def32a7",
27
+ "@webiny/app": "0.0.0-unstable.7c2def32a7",
28
+ "@webiny/app-admin": "0.0.0-unstable.7c2def32a7",
29
+ "@webiny/error": "0.0.0-unstable.7c2def32a7",
30
+ "@webiny/feature": "0.0.0-unstable.7c2def32a7",
31
+ "@webiny/handler": "0.0.0-unstable.7c2def32a7",
32
+ "@webiny/icons": "0.0.0-unstable.7c2def32a7",
33
+ "@webiny/plugins": "0.0.0-unstable.7c2def32a7",
34
+ "@webiny/sdk": "0.0.0-unstable.7c2def32a7",
35
+ "@webiny/utils": "0.0.0-unstable.7c2def32a7",
36
+ "deep-equal": "2.2.3",
37
+ "graphql": "16.14.2",
28
38
  "lodash": "4.18.1",
29
- "mobx": "6.15.3",
30
- "mobx-react-lite": "4.1.1",
39
+ "mobx": "7.0.3",
40
+ "mobx-react-lite": "5.0.3",
41
+ "object-merge-advanced": "14.2.0",
42
+ "object-sizeof": "2.6.5",
31
43
  "react": "18.3.1",
32
- "react-dom": "18.3.1"
44
+ "react-dom": "18.3.1",
45
+ "zod": "4.4.3"
33
46
  },
34
47
  "devDependencies": {
35
- "@webiny/build-tools": "0.0.0-unstable.7be00a75a9",
36
- "@webiny/project-utils": "0.0.0-unstable.7be00a75a9",
37
- "typescript": "6.0.3"
48
+ "@webiny/api-core-testing": "0.0.0-unstable.7c2def32a7",
49
+ "@webiny/build-tools": "0.0.0-unstable.7c2def32a7",
50
+ "@webiny/di": "2.0.0",
51
+ "@webiny/event-handler-core": "0.0.0-unstable.7c2def32a7",
52
+ "@webiny/wcp": "0.0.0-unstable.7c2def32a7",
53
+ "rimraf": "6.1.3",
54
+ "type-fest": "5.8.0",
55
+ "typescript": "7.0.2",
56
+ "vitest": "4.1.11"
38
57
  },
39
58
  "publishConfig": {
40
59
  "access": "public"
@@ -0,0 +1,3 @@
1
+ export { createRunner } from "./runner.js";
2
+ export type { ICreateRunnerParams, ICreateRunnerParamsOnContinueCallable, ICreateRunnerParamsOnContinueCallableParams, IExecuteEvent } from "./runner.js";
3
+ export { createMockTaskService } from "./mockTaskTriggerTransportPlugin.js";
@@ -0,0 +1,2 @@
1
+ export { createRunner } from "./runner.js";
2
+ export { createMockTaskService } from "./mockTaskTriggerTransportPlugin.js";
@@ -0,0 +1,2 @@
1
+ import type { TaskService } from "../api/domain/TaskService.js";
2
+ export declare const createMockTaskService: () => TaskService.Interface;
@@ -0,0 +1,18 @@
1
+ const createMockTaskService = ()=>({
2
+ async send () {
3
+ return {
4
+ Entries: [],
5
+ $metadata: {},
6
+ FailedEntryCount: 0
7
+ };
8
+ },
9
+ async fetch (input) {
10
+ return {
11
+ fetched: true,
12
+ input
13
+ };
14
+ }
15
+ });
16
+ export { createMockTaskService };
17
+
18
+ //# sourceMappingURL=mockTaskTriggerTransportPlugin.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"testing/mockTaskTriggerTransportPlugin.js","sources":["../../src/testing/mockTaskTriggerTransportPlugin.ts"],"sourcesContent":["import type { TaskService } from \"~/api/domain/TaskService.js\";\n\nexport const createMockTaskService = (): TaskService.Interface => {\n return {\n async send() {\n return {\n Entries: [],\n $metadata: {},\n FailedEntryCount: 0\n };\n },\n async fetch(input: any) {\n return {\n fetched: true,\n input\n } as any;\n }\n };\n};\n"],"names":["createMockTaskService","input"],"mappings":"AAEO,MAAMA,wBAAwB,IAC1B;QACH,MAAM;YACF,OAAO;gBACH,SAAS,EAAE;gBACX,WAAW,CAAC;gBACZ,kBAAkB;YACtB;QACJ;QACA,MAAM,OAAMC,KAAU;YAClB,OAAO;gBACH,SAAS;gBACTA;YACJ;QACJ;IACJ"}
@@ -0,0 +1,19 @@
1
+ import type { Context, IResponseContinueResult, ITaskEvent } from "../api/types.js";
2
+ import { ResponseContinueResult } from "../api/response/ResponseContinueResult.js";
3
+ import { TaskDefinition } from "@webiny/api-core/features/task/TaskDefinition/index.js";
4
+ export interface ICreateRunnerParamsOnContinueCallableParams {
5
+ taskId: string;
6
+ iteration: number;
7
+ result: IResponseContinueResult;
8
+ }
9
+ export interface ICreateRunnerParamsOnContinueCallable {
10
+ (params: ICreateRunnerParamsOnContinueCallableParams): Promise<void>;
11
+ }
12
+ export interface ICreateRunnerParams<I extends TaskDefinition.TaskInput = TaskDefinition.TaskInput, O extends TaskDefinition.TaskOutput = TaskDefinition.TaskOutput> {
13
+ context: Context;
14
+ task: TaskDefinition.Interface<I, O>;
15
+ getRemainingTimeInMills?: () => number;
16
+ onContinue?: ICreateRunnerParamsOnContinueCallable;
17
+ }
18
+ export type IExecuteEvent = Pick<ITaskEvent, "webinyTaskId"> & Partial<Pick<ITaskEvent, "tenant">>;
19
+ export declare const createRunner: <I extends TaskDefinition.TaskInput = TaskDefinition.TaskInput, O extends TaskDefinition.TaskOutput = TaskDefinition.TaskOutput>(params: ICreateRunnerParams<I, O>) => (event: IExecuteEvent) => Promise<import("~/api/types.js").IResponseAbortedResult | import("~/api/types.js").IResponseDoneResult<import("@webiny/api-core/features/task/TaskDefinition/abstractions.js").ITaskOutput> | import("~/api/types.js").IResponseErrorResult | ResponseContinueResult<any>>;
@@ -0,0 +1,44 @@
1
+ import { TaskRunner } from "../api/runner/index.js";
2
+ import { timerFactory } from "@webiny/utils/features/Timer/factory.js";
3
+ import { TaskEventValidation } from "../api/runner/TaskEventValidation.js";
4
+ import { ResponseContinueResult } from "../api/response/ResponseContinueResult.js";
5
+ import { createMockTaskService } from "./mockTaskTriggerTransportPlugin.js";
6
+ import { TaskService } from "../api/domain/TaskService.js";
7
+ const createRunner = (params)=>{
8
+ params.context.container.registerInstance(TaskService, createMockTaskService());
9
+ const runner = new TaskRunner(params.context, timerFactory({
10
+ getRemainingTimeInMillis: ()=>{
11
+ if (!params.getRemainingTimeInMills) return 300000;
12
+ return params.getRemainingTimeInMills();
13
+ }
14
+ }), new TaskEventValidation());
15
+ const execute = async (event)=>await runner.run({
16
+ tenant: "root",
17
+ ...event,
18
+ stateMachineId: "aMockStateMachineId",
19
+ webinyTaskDefinitionId: params.task.id,
20
+ endpoint: "manage",
21
+ executionName: "aMockExecutionName"
22
+ });
23
+ return async (event)=>{
24
+ let iteration = 1;
25
+ let result;
26
+ while(result = await execute(event)){
27
+ if (result instanceof ResponseContinueResult && params.onContinue) {
28
+ await params.onContinue({
29
+ taskId: event.webinyTaskId,
30
+ iteration,
31
+ result
32
+ });
33
+ iteration++;
34
+ console.debug(`Continuing task ${params.task.id} #${iteration}.`);
35
+ continue;
36
+ }
37
+ break;
38
+ }
39
+ return result;
40
+ };
41
+ };
42
+ export { createRunner };
43
+
44
+ //# sourceMappingURL=runner.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"testing/runner.js","sources":["../../src/testing/runner.ts"],"sourcesContent":["import type { Context, IResponseContinueResult, IResponseResult, ITaskEvent } from \"~/api/types.js\";\nimport { TaskRunner } from \"~/api/runner/index.js\";\nimport { timerFactory } from \"@webiny/utils/features/Timer/factory.js\";\nimport { TaskEventValidation } from \"~/api/runner/TaskEventValidation.js\";\nimport { ResponseContinueResult } from \"~/api/response/ResponseContinueResult.js\";\nimport { createMockTaskService } from \"./mockTaskTriggerTransportPlugin.js\";\nimport { TaskService } from \"~/api/domain/TaskService.js\";\nimport { TaskDefinition } from \"@webiny/api-core/features/task/TaskDefinition/index.js\";\n\nexport interface ICreateRunnerParamsOnContinueCallableParams {\n taskId: string;\n iteration: number;\n result: IResponseContinueResult;\n}\n\nexport interface ICreateRunnerParamsOnContinueCallable {\n (params: ICreateRunnerParamsOnContinueCallableParams): Promise<void>;\n}\n\nexport interface ICreateRunnerParams<\n I extends TaskDefinition.TaskInput = TaskDefinition.TaskInput,\n O extends TaskDefinition.TaskOutput = TaskDefinition.TaskOutput\n> {\n context: Context;\n task: TaskDefinition.Interface<I, O>;\n getRemainingTimeInMills?: () => number;\n onContinue?: ICreateRunnerParamsOnContinueCallable;\n}\n\nexport type IExecuteEvent = Pick<ITaskEvent, \"webinyTaskId\"> & Partial<Pick<ITaskEvent, \"tenant\">>;\n\nexport const createRunner = <\n I extends TaskDefinition.TaskInput = TaskDefinition.TaskInput,\n O extends TaskDefinition.TaskOutput = TaskDefinition.TaskOutput\n>(\n params: ICreateRunnerParams<I, O>\n) => {\n params.context.container.registerInstance(TaskService, createMockTaskService());\n const runner = new TaskRunner(\n params.context,\n timerFactory({\n getRemainingTimeInMillis: () => {\n if (!params.getRemainingTimeInMills) {\n return 5 * 60 * 1000;\n }\n return params.getRemainingTimeInMills();\n }\n }),\n new TaskEventValidation()\n );\n\n const execute = async (event: IExecuteEvent) => {\n return await runner.run({\n tenant: \"root\",\n ...event,\n stateMachineId: \"aMockStateMachineId\",\n webinyTaskDefinitionId: params.task.id,\n endpoint: \"manage\",\n executionName: \"aMockExecutionName\"\n });\n };\n\n return async (event: IExecuteEvent) => {\n let iteration = 1;\n let result: IResponseResult;\n while ((result = await execute(event))) {\n if (result instanceof ResponseContinueResult && params.onContinue) {\n await params.onContinue({\n taskId: event.webinyTaskId,\n iteration,\n result\n });\n iteration++;\n console.debug(`Continuing task ${params.task.id} #${iteration}.`);\n continue;\n }\n return result;\n }\n return result;\n };\n};\n"],"names":["createRunner","params","TaskService","createMockTaskService","runner","TaskRunner","timerFactory","TaskEventValidation","execute","event","iteration","result","ResponseContinueResult","console"],"mappings":";;;;;;AA+BO,MAAMA,eAAe,CAIxBC;IAEAA,OAAO,OAAO,CAAC,SAAS,CAAC,gBAAgB,CAACC,aAAaC;IACvD,MAAMC,SAAS,IAAIC,WACfJ,OAAO,OAAO,EACdK,aAAa;QACT,0BAA0B;YACtB,IAAI,CAACL,OAAO,uBAAuB,EAC/B,OAAO;YAEX,OAAOA,OAAO,uBAAuB;QACzC;IACJ,IACA,IAAIM;IAGR,MAAMC,UAAU,OAAOC,QACZ,MAAML,OAAO,GAAG,CAAC;YACpB,QAAQ;YACR,GAAGK,KAAK;YACR,gBAAgB;YAChB,wBAAwBR,OAAO,IAAI,CAAC,EAAE;YACtC,UAAU;YACV,eAAe;QACnB;IAGJ,OAAO,OAAOQ;QACV,IAAIC,YAAY;QAChB,IAAIC;QACJ,MAAQA,SAAS,MAAMH,QAAQC,OAAS;YACpC,IAAIE,kBAAkBC,0BAA0BX,OAAO,UAAU,EAAE;gBAC/D,MAAMA,OAAO,UAAU,CAAC;oBACpB,QAAQQ,MAAM,YAAY;oBAC1BC;oBACAC;gBACJ;gBACAD;gBACAG,QAAQ,KAAK,CAAC,CAAC,gBAAgB,EAAEZ,OAAO,IAAI,CAAC,EAAE,CAAC,EAAE,EAAES,UAAU,CAAC,CAAC;gBAChE;YACJ;YACA;QACJ;QACA,OAAOC;IACX;AACJ"}