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

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 (529) 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 +79 -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 +117 -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/ListVisibleTaskDefinitions/ListVisibleTaskDefinitionsUseCase.d.ts +11 -0
  302. package/api/features/ListVisibleTaskDefinitions/ListVisibleTaskDefinitionsUseCase.js +19 -0
  303. package/api/features/ListVisibleTaskDefinitions/ListVisibleTaskDefinitionsUseCase.js.map +1 -0
  304. package/api/features/ListVisibleTaskDefinitions/abstractions.d.ts +9 -0
  305. package/api/features/ListVisibleTaskDefinitions/abstractions.js +5 -0
  306. package/api/features/ListVisibleTaskDefinitions/abstractions.js.map +1 -0
  307. package/api/features/ListVisibleTaskDefinitions/feature.d.ts +4 -0
  308. package/api/features/ListVisibleTaskDefinitions/feature.js +11 -0
  309. package/api/features/ListVisibleTaskDefinitions/feature.js.map +1 -0
  310. package/api/features/ListVisibleTaskDefinitions/index.d.ts +2 -0
  311. package/api/features/ListVisibleTaskDefinitions/index.js +2 -0
  312. package/api/features/TaskController/TaskController.d.ts +49 -0
  313. package/api/features/TaskController/TaskController.js +71 -0
  314. package/api/features/TaskController/TaskController.js.map +1 -0
  315. package/api/features/TaskController/augmentation.d.ts +60 -0
  316. package/api/features/TaskController/augmentation.js +0 -0
  317. package/api/features/TaskController/index.d.ts +2 -0
  318. package/api/features/TaskController/index.js +2 -0
  319. package/api/features/TaskExecutionContext/TaskExecutionContext.d.ts +24 -0
  320. package/api/features/TaskExecutionContext/TaskExecutionContext.js +43 -0
  321. package/api/features/TaskExecutionContext/TaskExecutionContext.js.map +1 -0
  322. package/api/features/TaskExecutionContext/abstractions.d.ts +26 -0
  323. package/api/features/TaskExecutionContext/abstractions.js +5 -0
  324. package/api/features/TaskExecutionContext/abstractions.js.map +1 -0
  325. package/api/features/TaskExecutionContext/feature.d.ts +4 -0
  326. package/api/features/TaskExecutionContext/feature.js +11 -0
  327. package/api/features/TaskExecutionContext/feature.js.map +1 -0
  328. package/api/features/TaskExecutionContext/index.d.ts +1 -0
  329. package/api/features/TaskExecutionContext/index.js +1 -0
  330. package/api/features/TaskHandlerResolver/TaskHandlerResolver.d.ts +12 -0
  331. package/api/features/TaskHandlerResolver/TaskHandlerResolver.js +19 -0
  332. package/api/features/TaskHandlerResolver/TaskHandlerResolver.js.map +1 -0
  333. package/api/features/TaskHandlerResolver/abstractions.d.ts +17 -0
  334. package/api/features/TaskHandlerResolver/abstractions.js +5 -0
  335. package/api/features/TaskHandlerResolver/abstractions.js.map +1 -0
  336. package/api/features/TaskHandlerResolver/feature.d.ts +9 -0
  337. package/api/features/TaskHandlerResolver/feature.js +11 -0
  338. package/api/features/TaskHandlerResolver/feature.js.map +1 -0
  339. package/api/features/TaskHandlerResolver/index.d.ts +2 -0
  340. package/api/features/TaskHandlerResolver/index.js +2 -0
  341. package/api/features/TaskService/BackgroundTaskService.d.ts +42 -0
  342. package/api/features/TaskService/BackgroundTaskService.js +191 -0
  343. package/api/features/TaskService/BackgroundTaskService.js.map +1 -0
  344. package/api/features/TaskService/feature.d.ts +4 -0
  345. package/api/features/TaskService/feature.js +11 -0
  346. package/api/features/TaskService/feature.js.map +1 -0
  347. package/api/features/TaskService/index.d.ts +1 -0
  348. package/api/features/TaskService/index.js +1 -0
  349. package/api/features/TriggerTask/TriggerTaskUseCase.d.ts +9 -0
  350. package/api/features/TriggerTask/TriggerTaskUseCase.js +12 -0
  351. package/api/features/TriggerTask/TriggerTaskUseCase.js.map +1 -0
  352. package/api/features/TriggerTask/abstractions.d.ts +28 -0
  353. package/api/features/TriggerTask/abstractions.js +5 -0
  354. package/api/features/TriggerTask/abstractions.js.map +1 -0
  355. package/api/features/TriggerTask/feature.d.ts +4 -0
  356. package/api/features/TriggerTask/feature.js +13 -0
  357. package/api/features/TriggerTask/feature.js.map +1 -0
  358. package/api/features/TriggerTask/index.d.ts +2 -0
  359. package/api/features/TriggerTask/index.js +2 -0
  360. package/api/features/TriggerVisibleTask/TriggerVisibleTaskUseCase.d.ts +15 -0
  361. package/api/features/TriggerVisibleTask/TriggerVisibleTaskUseCase.js +26 -0
  362. package/api/features/TriggerVisibleTask/TriggerVisibleTaskUseCase.js.map +1 -0
  363. package/api/features/TriggerVisibleTask/abstractions.d.ts +17 -0
  364. package/api/features/TriggerVisibleTask/abstractions.js +5 -0
  365. package/api/features/TriggerVisibleTask/abstractions.js.map +1 -0
  366. package/api/features/TriggerVisibleTask/feature.d.ts +4 -0
  367. package/api/features/TriggerVisibleTask/feature.js +11 -0
  368. package/api/features/TriggerVisibleTask/feature.js.map +1 -0
  369. package/api/features/TriggerVisibleTask/index.d.ts +2 -0
  370. package/api/features/TriggerVisibleTask/index.js +2 -0
  371. package/api/features/UpdateBackgroundTaskSettings/UpdateBackgroundTaskSettingsRepository.d.ts +23 -0
  372. package/api/features/UpdateBackgroundTaskSettings/UpdateBackgroundTaskSettingsRepository.js +67 -0
  373. package/api/features/UpdateBackgroundTaskSettings/UpdateBackgroundTaskSettingsRepository.js.map +1 -0
  374. package/api/features/UpdateBackgroundTaskSettings/UpdateBackgroundTaskSettingsUseCase.d.ts +14 -0
  375. package/api/features/UpdateBackgroundTaskSettings/UpdateBackgroundTaskSettingsUseCase.js +27 -0
  376. package/api/features/UpdateBackgroundTaskSettings/UpdateBackgroundTaskSettingsUseCase.js.map +1 -0
  377. package/api/features/UpdateBackgroundTaskSettings/abstractions.d.ts +26 -0
  378. package/api/features/UpdateBackgroundTaskSettings/abstractions.js +6 -0
  379. package/api/features/UpdateBackgroundTaskSettings/abstractions.js.map +1 -0
  380. package/api/features/UpdateBackgroundTaskSettings/feature.d.ts +4 -0
  381. package/api/features/UpdateBackgroundTaskSettings/feature.js +13 -0
  382. package/api/features/UpdateBackgroundTaskSettings/feature.js.map +1 -0
  383. package/api/features/UpdateBackgroundTaskSettings/index.d.ts +2 -0
  384. package/api/features/UpdateBackgroundTaskSettings/index.js +2 -0
  385. package/api/features/UpdateBackgroundTaskSettings/schema.d.ts +4 -0
  386. package/api/features/UpdateBackgroundTaskSettings/schema.js +8 -0
  387. package/api/features/UpdateBackgroundTaskSettings/schema.js.map +1 -0
  388. package/api/features/UpdateTask/UpdateTaskUseCase.d.ts +17 -0
  389. package/api/features/UpdateTask/UpdateTaskUseCase.js +36 -0
  390. package/api/features/UpdateTask/UpdateTaskUseCase.js.map +1 -0
  391. package/api/features/UpdateTask/abstractions.d.ts +22 -0
  392. package/api/features/UpdateTask/abstractions.js +5 -0
  393. package/api/features/UpdateTask/abstractions.js.map +1 -0
  394. package/api/features/UpdateTask/feature.d.ts +4 -0
  395. package/api/features/UpdateTask/feature.js +11 -0
  396. package/api/features/UpdateTask/feature.js.map +1 -0
  397. package/api/features/UpdateTask/index.d.ts +2 -0
  398. package/api/features/UpdateTask/index.js +2 -0
  399. package/api/features/UpdateTaskLog/UpdateTaskLogUseCase.d.ts +12 -0
  400. package/api/features/UpdateTaskLog/UpdateTaskLogUseCase.js +19 -0
  401. package/api/features/UpdateTaskLog/UpdateTaskLogUseCase.js.map +1 -0
  402. package/api/features/UpdateTaskLog/abstractions.d.ts +16 -0
  403. package/api/features/UpdateTaskLog/abstractions.js +5 -0
  404. package/api/features/UpdateTaskLog/abstractions.js.map +1 -0
  405. package/api/features/UpdateTaskLog/feature.d.ts +4 -0
  406. package/api/features/UpdateTaskLog/feature.js +11 -0
  407. package/api/features/UpdateTaskLog/feature.js.map +1 -0
  408. package/api/features/UpdateTaskLog/index.d.ts +2 -0
  409. package/api/features/UpdateTaskLog/index.js +2 -0
  410. package/api/global.d.ts +1 -0
  411. package/api/global.js +1 -0
  412. package/api/graphql/BackgroundTasksGraphQLSchema.d.ts +29 -0
  413. package/api/graphql/BackgroundTasksGraphQLSchema.js +462 -0
  414. package/api/graphql/BackgroundTasksGraphQLSchema.js.map +1 -0
  415. package/api/graphql/checkPermissions.d.ts +7 -0
  416. package/api/graphql/checkPermissions.js +22 -0
  417. package/api/graphql/checkPermissions.js.map +1 -0
  418. package/api/graphql/utils.d.ts +9 -0
  419. package/api/graphql/utils.js +20 -0
  420. package/api/graphql/utils.js.map +1 -0
  421. package/api/handler/types.d.ts +21 -0
  422. package/api/handler/types.js +0 -0
  423. package/api/index.d.ts +21 -0
  424. package/api/index.js +20 -0
  425. package/api/models/BackgroundTaskSettingsModel.d.ts +8 -0
  426. package/api/models/BackgroundTaskSettingsModel.js +27 -0
  427. package/api/models/BackgroundTaskSettingsModel.js.map +1 -0
  428. package/api/permissions.d.ts +12 -0
  429. package/api/permissions.js +22 -0
  430. package/api/permissions.js.map +1 -0
  431. package/api/response/DatabaseResponse.d.ts +12 -0
  432. package/api/response/DatabaseResponse.js +127 -0
  433. package/api/response/DatabaseResponse.js.map +1 -0
  434. package/api/response/Response.d.ts +14 -0
  435. package/api/response/Response.js +91 -0
  436. package/api/response/Response.js.map +1 -0
  437. package/api/response/ResponseAbortedResult.d.ts +9 -0
  438. package/api/response/ResponseAbortedResult.js +12 -0
  439. package/api/response/ResponseAbortedResult.js.map +1 -0
  440. package/api/response/ResponseContinueResult.d.ts +17 -0
  441. package/api/response/ResponseContinueResult.js +16 -0
  442. package/api/response/ResponseContinueResult.js.map +1 -0
  443. package/api/response/ResponseDoneResult.d.ts +11 -0
  444. package/api/response/ResponseDoneResult.js +14 -0
  445. package/api/response/ResponseDoneResult.js.map +1 -0
  446. package/api/response/ResponseErrorResult.d.ts +10 -0
  447. package/api/response/ResponseErrorResult.js +13 -0
  448. package/api/response/ResponseErrorResult.js.map +1 -0
  449. package/api/response/TaskResponse.d.ts +12 -0
  450. package/api/response/TaskResponse.js +53 -0
  451. package/api/response/TaskResponse.js.map +1 -0
  452. package/api/response/abstractions/Response.d.ts +25 -0
  453. package/api/response/abstractions/Response.js +0 -0
  454. package/api/response/abstractions/ResponseAbortedResult.d.ts +5 -0
  455. package/api/response/abstractions/ResponseAbortedResult.js +0 -0
  456. package/api/response/abstractions/ResponseBaseResult.d.ts +7 -0
  457. package/api/response/abstractions/ResponseBaseResult.js +0 -0
  458. package/api/response/abstractions/ResponseContinueResult.d.ts +21 -0
  459. package/api/response/abstractions/ResponseContinueResult.js +0 -0
  460. package/api/response/abstractions/ResponseDoneResult.d.ts +13 -0
  461. package/api/response/abstractions/ResponseDoneResult.js +0 -0
  462. package/api/response/abstractions/ResponseErrorResult.d.ts +18 -0
  463. package/api/response/abstractions/ResponseErrorResult.js +0 -0
  464. package/api/response/abstractions/TaskResponse.d.ts +16 -0
  465. package/api/response/abstractions/TaskResponse.js +0 -0
  466. package/api/response/abstractions/index.d.ts +7 -0
  467. package/api/response/abstractions/index.js +7 -0
  468. package/api/response/index.d.ts +7 -0
  469. package/api/response/index.js +7 -0
  470. package/api/runner/TaskControl.d.ts +48 -0
  471. package/api/runner/TaskControl.js +186 -0
  472. package/api/runner/TaskControl.js.map +1 -0
  473. package/api/runner/TaskEventValidation.d.ts +5 -0
  474. package/api/runner/TaskEventValidation.js +20 -0
  475. package/api/runner/TaskEventValidation.js.map +1 -0
  476. package/api/runner/TaskManager.d.ts +22 -0
  477. package/api/runner/TaskManager.js +83 -0
  478. package/api/runner/TaskManager.js.map +1 -0
  479. package/api/runner/TaskManagerStore.d.ts +57 -0
  480. package/api/runner/TaskManagerStore.js +127 -0
  481. package/api/runner/TaskManagerStore.js.map +1 -0
  482. package/api/runner/TaskRunner.d.ts +25 -0
  483. package/api/runner/TaskRunner.js +86 -0
  484. package/api/runner/TaskRunner.js.map +1 -0
  485. package/api/runner/abstractions/TaskControl.d.ts +10 -0
  486. package/api/runner/abstractions/TaskControl.js +0 -0
  487. package/api/runner/abstractions/TaskEventValidation.d.ts +5 -0
  488. package/api/runner/abstractions/TaskEventValidation.js +0 -0
  489. package/api/runner/abstractions/TaskManager.d.ts +5 -0
  490. package/api/runner/abstractions/TaskManager.js +0 -0
  491. package/api/runner/abstractions/TaskManagerStore.d.ts +92 -0
  492. package/api/runner/abstractions/TaskManagerStore.js +0 -0
  493. package/api/runner/abstractions/TaskRunner.d.ts +13 -0
  494. package/api/runner/abstractions/TaskRunner.js +0 -0
  495. package/api/runner/abstractions/index.d.ts +5 -0
  496. package/api/runner/abstractions/index.js +5 -0
  497. package/api/runner/index.d.ts +1 -0
  498. package/api/runner/index.js +1 -0
  499. package/api/tasks/testingRunTask.d.ts +19 -0
  500. package/api/tasks/testingRunTask.js +25 -0
  501. package/api/tasks/testingRunTask.js.map +1 -0
  502. package/api/types.d.ts +120 -0
  503. package/api/types.js +20 -0
  504. package/api/types.js.map +1 -0
  505. package/api/utils/ObjectUpdater.d.ts +8 -0
  506. package/api/utils/ObjectUpdater.js +33 -0
  507. package/api/utils/ObjectUpdater.js.map +1 -0
  508. package/api/utils/getErrorProperties.d.ts +2 -0
  509. package/api/utils/getErrorProperties.js +9 -0
  510. package/api/utils/getErrorProperties.js.map +1 -0
  511. package/api/utils/getObjectProperties.d.ts +8 -0
  512. package/api/utils/getObjectProperties.js +11 -0
  513. package/api/utils/getObjectProperties.js.map +1 -0
  514. package/api/utils/index.d.ts +3 -0
  515. package/api/utils/index.js +3 -0
  516. package/api/utils/normalizeSelfCleanup.d.ts +2 -0
  517. package/api/utils/normalizeSelfCleanup.js +16 -0
  518. package/api/utils/normalizeSelfCleanup.js.map +1 -0
  519. package/index.d.ts +1 -0
  520. package/index.js +1 -0
  521. package/package.json +32 -13
  522. package/testing/index.d.ts +3 -0
  523. package/testing/index.js +2 -0
  524. package/testing/mockTaskTriggerTransportPlugin.d.ts +2 -0
  525. package/testing/mockTaskTriggerTransportPlugin.js +18 -0
  526. package/testing/mockTaskTriggerTransportPlugin.js.map +1 -0
  527. package/testing/runner.d.ts +19 -0
  528. package/testing/runner.js +44 -0
  529. package/testing/runner.js.map +1 -0
@@ -0,0 +1,23 @@
1
+ import { Result } from "@webiny/feature/api";
2
+ import { GetModelRepository } from "@webiny/api-headless-cms/features/contentModel/GetModel/index.js";
3
+ import { GetLatestRevisionByEntryIdRepository } from "@webiny/api-headless-cms/features/contentEntry/GetLatestRevisionByEntryId/index.js";
4
+ import { UpdateEntryRepository } from "@webiny/api-headless-cms/features/contentEntry/UpdateEntry/index.js";
5
+ import { UpdateEntryDataFactory } from "@webiny/api-headless-cms/exports/api/cms/entry.js";
6
+ import { BuildParams } from "@webiny/api-core/features/buildParams/index.js";
7
+ import { GetBackgroundTaskSettingsRepository } from "../../../api/features/GetBackgroundTaskSettings/abstractions.js";
8
+ import { UpdateBackgroundTaskSettingsRepository as RepositoryAbstraction, type IUpdateBackgroundTaskSettingsInput } from "./abstractions.js";
9
+ import type { IBackgroundTaskSettings } from "../../../api/domain/BackgroundTaskSettings.js";
10
+ declare class UpdateBackgroundTaskSettingsRepositoryImpl implements RepositoryAbstraction.Interface {
11
+ private readonly getModelRepository;
12
+ private readonly getSettingsRepository;
13
+ private readonly getLatestRevisionRepository;
14
+ private readonly updateEntryRepository;
15
+ private readonly updateEntryDataFactory;
16
+ private readonly defaultRetentionDays;
17
+ constructor(getModelRepository: GetModelRepository.Interface, getSettingsRepository: GetBackgroundTaskSettingsRepository.Interface, getLatestRevisionRepository: GetLatestRevisionByEntryIdRepository.Interface, updateEntryRepository: UpdateEntryRepository.Interface, updateEntryDataFactory: UpdateEntryDataFactory.Interface, buildParams: BuildParams.Interface);
18
+ execute(input: IUpdateBackgroundTaskSettingsInput): Promise<Result<IBackgroundTaskSettings, RepositoryAbstraction.Error>>;
19
+ }
20
+ export declare const UpdateBackgroundTaskSettingsRepository: typeof UpdateBackgroundTaskSettingsRepositoryImpl & {
21
+ __abstraction: import("@webiny/di").Abstraction<import("./abstractions.js").IUpdateBackgroundTaskSettingsRepository>;
22
+ };
23
+ export {};
@@ -0,0 +1,67 @@
1
+ import { Result } from "@webiny/feature/api";
2
+ import { createCacheKey } from "@webiny/utils";
3
+ import { GetModelRepository } from "@webiny/api-headless-cms/features/contentModel/GetModel/index.js";
4
+ import { GetLatestRevisionByEntryIdRepository } from "@webiny/api-headless-cms/features/contentEntry/GetLatestRevisionByEntryId/index.js";
5
+ import { UpdateEntryRepository } from "@webiny/api-headless-cms/features/contentEntry/UpdateEntry/index.js";
6
+ import { UpdateEntryDataFactory } from "@webiny/api-headless-cms/exports/api/cms/entry.js";
7
+ import { BuildParams } from "@webiny/api-core/features/buildParams/index.js";
8
+ import { GetBackgroundTaskSettingsRepository } from "../GetBackgroundTaskSettings/abstractions.js";
9
+ import { UpdateBackgroundTaskSettingsRepository } from "./abstractions.js";
10
+ import { BackgroundTaskModelNotFoundError, BackgroundTaskPersistenceError } from "../../domain/errors.js";
11
+ import { BACKGROUND_TASK_DEFAULT_RETENTION_DAYS, BACKGROUND_TASK_SETTINGS_MODEL_ID } from "../../domain/constants.js";
12
+ class UpdateBackgroundTaskSettingsRepositoryImpl {
13
+ constructor(getModelRepository, getSettingsRepository, getLatestRevisionRepository, updateEntryRepository, updateEntryDataFactory, buildParams){
14
+ this.getModelRepository = getModelRepository;
15
+ this.getSettingsRepository = getSettingsRepository;
16
+ this.getLatestRevisionRepository = getLatestRevisionRepository;
17
+ this.updateEntryRepository = updateEntryRepository;
18
+ this.updateEntryDataFactory = updateEntryDataFactory;
19
+ this.defaultRetentionDays = buildParams.get("BackgroundTasks.RetentionDays") || BACKGROUND_TASK_DEFAULT_RETENTION_DAYS;
20
+ }
21
+ async execute(input) {
22
+ try {
23
+ const getResult = await this.getSettingsRepository.execute();
24
+ if (getResult.isFail()) return getResult;
25
+ const modelResult = await this.getModelRepository.execute(BACKGROUND_TASK_SETTINGS_MODEL_ID);
26
+ if (modelResult.isFail()) return Result.fail(new BackgroundTaskModelNotFoundError(BACKGROUND_TASK_SETTINGS_MODEL_ID));
27
+ const model = modelResult.value;
28
+ const singletonId = createCacheKey(model.modelId);
29
+ const entryId = `${singletonId}#0001`;
30
+ const entryResult = await this.getLatestRevisionRepository.execute(model, {
31
+ id: entryId
32
+ });
33
+ if (entryResult.isFail()) return Result.fail(BackgroundTaskPersistenceError.from(entryResult.error));
34
+ const storedValue = input.retentionDays === this.defaultRetentionDays ? null : input.retentionDays;
35
+ const dataResult = await this.updateEntryDataFactory.create(model, {
36
+ values: {
37
+ retentionDays: storedValue
38
+ }
39
+ }, entryResult.value);
40
+ if (dataResult.isFail()) return Result.fail(BackgroundTaskPersistenceError.from(dataResult.error));
41
+ const { entry } = dataResult.value;
42
+ const updateResult = await this.updateEntryRepository.execute(model, entry);
43
+ if (updateResult.isFail()) return Result.fail(BackgroundTaskPersistenceError.from(updateResult.error));
44
+ const retentionDays = null != entry.values.retentionDays ? entry.values.retentionDays : this.defaultRetentionDays;
45
+ const settings = {
46
+ retentionDays
47
+ };
48
+ return Result.ok(settings);
49
+ } catch (error) {
50
+ return Result.fail(BackgroundTaskPersistenceError.from(error));
51
+ }
52
+ }
53
+ }
54
+ const UpdateBackgroundTaskSettingsRepository_UpdateBackgroundTaskSettingsRepository = UpdateBackgroundTaskSettingsRepository.createImplementation({
55
+ implementation: UpdateBackgroundTaskSettingsRepositoryImpl,
56
+ dependencies: [
57
+ GetModelRepository,
58
+ GetBackgroundTaskSettingsRepository,
59
+ GetLatestRevisionByEntryIdRepository,
60
+ UpdateEntryRepository,
61
+ UpdateEntryDataFactory,
62
+ BuildParams
63
+ ]
64
+ });
65
+ export { UpdateBackgroundTaskSettingsRepository_UpdateBackgroundTaskSettingsRepository as UpdateBackgroundTaskSettingsRepository };
66
+
67
+ //# sourceMappingURL=UpdateBackgroundTaskSettingsRepository.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"api/features/UpdateBackgroundTaskSettings/UpdateBackgroundTaskSettingsRepository.js","sources":["../../../../src/api/features/UpdateBackgroundTaskSettings/UpdateBackgroundTaskSettingsRepository.ts"],"sourcesContent":["import { Result } from \"@webiny/feature/api\";\nimport { createCacheKey } from \"@webiny/utils\";\nimport { GetModelRepository } from \"@webiny/api-headless-cms/features/contentModel/GetModel/index.js\";\nimport { GetLatestRevisionByEntryIdRepository } from \"@webiny/api-headless-cms/features/contentEntry/GetLatestRevisionByEntryId/index.js\";\nimport { UpdateEntryRepository } from \"@webiny/api-headless-cms/features/contentEntry/UpdateEntry/index.js\";\nimport { UpdateEntryDataFactory } from \"@webiny/api-headless-cms/exports/api/cms/entry.js\";\nimport { BuildParams } from \"@webiny/api-core/features/buildParams/index.js\";\nimport { GetBackgroundTaskSettingsRepository } from \"~/api/features/GetBackgroundTaskSettings/abstractions.js\";\nimport {\n UpdateBackgroundTaskSettingsRepository as RepositoryAbstraction,\n type IUpdateBackgroundTaskSettingsInput\n} from \"./abstractions.js\";\nimport {\n BackgroundTaskModelNotFoundError,\n BackgroundTaskPersistenceError\n} from \"~/api/domain/errors.js\";\nimport {\n BACKGROUND_TASK_SETTINGS_MODEL_ID,\n BACKGROUND_TASK_DEFAULT_RETENTION_DAYS\n} from \"~/api/domain/constants.js\";\nimport type { IBackgroundTaskSettings } from \"~/api/domain/BackgroundTaskSettings.js\";\n\ninterface BackgroundTaskSettingsValues {\n retentionDays?: number | null;\n}\n\nclass UpdateBackgroundTaskSettingsRepositoryImpl implements RepositoryAbstraction.Interface {\n private readonly defaultRetentionDays: number;\n\n constructor(\n private readonly getModelRepository: GetModelRepository.Interface,\n private readonly getSettingsRepository: GetBackgroundTaskSettingsRepository.Interface,\n private readonly getLatestRevisionRepository: GetLatestRevisionByEntryIdRepository.Interface,\n private readonly updateEntryRepository: UpdateEntryRepository.Interface,\n private readonly updateEntryDataFactory: UpdateEntryDataFactory.Interface,\n buildParams: BuildParams.Interface\n ) {\n this.defaultRetentionDays =\n buildParams.get<number>(\"BackgroundTasks.RetentionDays\") ||\n BACKGROUND_TASK_DEFAULT_RETENTION_DAYS;\n }\n\n async execute(\n input: IUpdateBackgroundTaskSettingsInput\n ): Promise<Result<IBackgroundTaskSettings, RepositoryAbstraction.Error>> {\n try {\n /* Ensure the singleton entry exists (creates if missing). */\n const getResult = await this.getSettingsRepository.execute();\n if (getResult.isFail()) {\n return getResult;\n }\n\n const modelResult = await this.getModelRepository.execute(\n BACKGROUND_TASK_SETTINGS_MODEL_ID\n );\n if (modelResult.isFail()) {\n return Result.fail(\n new BackgroundTaskModelNotFoundError(BACKGROUND_TASK_SETTINGS_MODEL_ID)\n );\n }\n\n const model = modelResult.value;\n const singletonId = createCacheKey(model.modelId);\n const entryId = `${singletonId}#0001`;\n\n const entryResult =\n await this.getLatestRevisionRepository.execute<BackgroundTaskSettingsValues>(\n model,\n { id: entryId }\n );\n\n if (entryResult.isFail()) {\n return Result.fail(BackgroundTaskPersistenceError.from(entryResult.error));\n }\n\n /* Store null when the value matches the default so the default stays in control. */\n const storedValue =\n input.retentionDays === this.defaultRetentionDays ? null : input.retentionDays;\n\n const dataResult =\n await this.updateEntryDataFactory.create<BackgroundTaskSettingsValues>(\n model,\n {\n values: {\n retentionDays: storedValue\n }\n },\n entryResult.value\n );\n if (dataResult.isFail()) {\n return Result.fail(BackgroundTaskPersistenceError.from(dataResult.error));\n }\n const { entry } = dataResult.value;\n\n const updateResult = await this.updateEntryRepository.execute(model, entry);\n if (updateResult.isFail()) {\n return Result.fail(BackgroundTaskPersistenceError.from(updateResult.error));\n }\n\n const retentionDays =\n entry.values.retentionDays != null\n ? entry.values.retentionDays\n : this.defaultRetentionDays;\n\n const settings: IBackgroundTaskSettings = {\n retentionDays\n };\n\n return Result.ok(settings);\n } catch (error) {\n return Result.fail(BackgroundTaskPersistenceError.from(error));\n }\n }\n}\n\nexport const UpdateBackgroundTaskSettingsRepository = RepositoryAbstraction.createImplementation({\n implementation: UpdateBackgroundTaskSettingsRepositoryImpl,\n dependencies: [\n GetModelRepository,\n GetBackgroundTaskSettingsRepository,\n GetLatestRevisionByEntryIdRepository,\n UpdateEntryRepository,\n UpdateEntryDataFactory,\n BuildParams\n ]\n});\n"],"names":["UpdateBackgroundTaskSettingsRepositoryImpl","getModelRepository","getSettingsRepository","getLatestRevisionRepository","updateEntryRepository","updateEntryDataFactory","buildParams","BACKGROUND_TASK_DEFAULT_RETENTION_DAYS","input","getResult","modelResult","BACKGROUND_TASK_SETTINGS_MODEL_ID","Result","BackgroundTaskModelNotFoundError","model","singletonId","createCacheKey","entryId","entryResult","BackgroundTaskPersistenceError","storedValue","dataResult","entry","updateResult","retentionDays","settings","error","UpdateBackgroundTaskSettingsRepository","RepositoryAbstraction","GetModelRepository","GetBackgroundTaskSettingsRepository","GetLatestRevisionByEntryIdRepository","UpdateEntryRepository","UpdateEntryDataFactory","BuildParams"],"mappings":";;;;;;;;;;;AA0BA,MAAMA;IAGF,YACqBC,kBAAgD,EAChDC,qBAAoE,EACpEC,2BAA2E,EAC3EC,qBAAsD,EACtDC,sBAAwD,EACzEC,WAAkC,CACpC;aANmBL,kBAAkB,GAAlBA;aACAC,qBAAqB,GAArBA;aACAC,2BAA2B,GAA3BA;aACAC,qBAAqB,GAArBA;aACAC,sBAAsB,GAAtBA;QAGjB,IAAI,CAAC,oBAAoB,GACrBC,YAAY,GAAG,CAAS,oCACxBC;IACR;IAEA,MAAM,QACFC,KAAyC,EAC4B;QACrE,IAAI;YAEA,MAAMC,YAAY,MAAM,IAAI,CAAC,qBAAqB,CAAC,OAAO;YAC1D,IAAIA,UAAU,MAAM,IAChB,OAAOA;YAGX,MAAMC,cAAc,MAAM,IAAI,CAAC,kBAAkB,CAAC,OAAO,CACrDC;YAEJ,IAAID,YAAY,MAAM,IAClB,OAAOE,OAAO,IAAI,CACd,IAAIC,iCAAiCF;YAI7C,MAAMG,QAAQJ,YAAY,KAAK;YAC/B,MAAMK,cAAcC,eAAeF,MAAM,OAAO;YAChD,MAAMG,UAAU,GAAGF,YAAY,KAAK,CAAC;YAErC,MAAMG,cACF,MAAM,IAAI,CAAC,2BAA2B,CAAC,OAAO,CAC1CJ,OACA;gBAAE,IAAIG;YAAQ;YAGtB,IAAIC,YAAY,MAAM,IAClB,OAAON,OAAO,IAAI,CAACO,+BAA+B,IAAI,CAACD,YAAY,KAAK;YAI5E,MAAME,cACFZ,MAAM,aAAa,KAAK,IAAI,CAAC,oBAAoB,GAAG,OAAOA,MAAM,aAAa;YAElF,MAAMa,aACF,MAAM,IAAI,CAAC,sBAAsB,CAAC,MAAM,CACpCP,OACA;gBACI,QAAQ;oBACJ,eAAeM;gBACnB;YACJ,GACAF,YAAY,KAAK;YAEzB,IAAIG,WAAW,MAAM,IACjB,OAAOT,OAAO,IAAI,CAACO,+BAA+B,IAAI,CAACE,WAAW,KAAK;YAE3E,MAAM,EAAEC,KAAK,EAAE,GAAGD,WAAW,KAAK;YAElC,MAAME,eAAe,MAAM,IAAI,CAAC,qBAAqB,CAAC,OAAO,CAACT,OAAOQ;YACrE,IAAIC,aAAa,MAAM,IACnB,OAAOX,OAAO,IAAI,CAACO,+BAA+B,IAAI,CAACI,aAAa,KAAK;YAG7E,MAAMC,gBACFF,AAA8B,QAA9BA,MAAM,MAAM,CAAC,aAAa,GACpBA,MAAM,MAAM,CAAC,aAAa,GAC1B,IAAI,CAAC,oBAAoB;YAEnC,MAAMG,WAAoC;gBACtCD;YACJ;YAEA,OAAOZ,OAAO,EAAE,CAACa;QACrB,EAAE,OAAOC,OAAO;YACZ,OAAOd,OAAO,IAAI,CAACO,+BAA+B,IAAI,CAACO;QAC3D;IACJ;AACJ;AAEO,MAAMC,gFAAyCC,uCAAAA,oBAA0C,CAAC;IAC7F,gBAAgB5B;IAChB,cAAc;QACV6B;QACAC;QACAC;QACAC;QACAC;QACAC;KACH;AACL"}
@@ -0,0 +1,14 @@
1
+ import { Result } from "@webiny/feature/api";
2
+ import { UpdateBackgroundTaskSettingsRepository, UpdateBackgroundTaskSettingsUseCase as UseCaseAbstraction } from "./abstractions.js";
3
+ import type { IBackgroundTaskSettings } from "../../../api/domain/BackgroundTaskSettings.js";
4
+ import { BackgroundTaskPermissions } from "../../../api/features/BackgroundTaskPermissions/abstractions.js";
5
+ declare class UpdateBackgroundTaskSettingsUseCaseImpl implements UseCaseAbstraction.Interface {
6
+ private readonly permissions;
7
+ private readonly repository;
8
+ constructor(permissions: BackgroundTaskPermissions.Interface, repository: UpdateBackgroundTaskSettingsRepository.Interface);
9
+ execute(input: UseCaseAbstraction.Input): Promise<Result<IBackgroundTaskSettings, UseCaseAbstraction.Error>>;
10
+ }
11
+ export declare const UpdateBackgroundTaskSettingsUseCase: typeof UpdateBackgroundTaskSettingsUseCaseImpl & {
12
+ __abstraction: import("@webiny/di").Abstraction<import("./abstractions.js").IUpdateBackgroundTaskSettingsUseCase>;
13
+ };
14
+ export {};
@@ -0,0 +1,27 @@
1
+ import { Result } from "@webiny/feature/api";
2
+ import { UpdateBackgroundTaskSettingsRepository, UpdateBackgroundTaskSettingsUseCase } from "./abstractions.js";
3
+ import { UpdateBackgroundTaskSettingsInputSchema } from "./schema.js";
4
+ import { BackgroundTaskNotAuthorizedError, BackgroundTaskValidationError } from "../../domain/errors.js";
5
+ import { BackgroundTaskPermissions } from "../BackgroundTaskPermissions/abstractions.js";
6
+ class UpdateBackgroundTaskSettingsUseCaseImpl {
7
+ constructor(permissions, repository){
8
+ this.permissions = permissions;
9
+ this.repository = repository;
10
+ }
11
+ async execute(input) {
12
+ if (!await this.permissions.canEdit("task")) return Result.fail(new BackgroundTaskNotAuthorizedError());
13
+ const parsed = UpdateBackgroundTaskSettingsInputSchema.safeParse(input);
14
+ if (!parsed.success) return Result.fail(new BackgroundTaskValidationError(parsed.error));
15
+ return this.repository.execute(parsed.data);
16
+ }
17
+ }
18
+ const UpdateBackgroundTaskSettingsUseCase_UpdateBackgroundTaskSettingsUseCase = UpdateBackgroundTaskSettingsUseCase.createImplementation({
19
+ implementation: UpdateBackgroundTaskSettingsUseCaseImpl,
20
+ dependencies: [
21
+ BackgroundTaskPermissions,
22
+ UpdateBackgroundTaskSettingsRepository
23
+ ]
24
+ });
25
+ export { UpdateBackgroundTaskSettingsUseCase_UpdateBackgroundTaskSettingsUseCase as UpdateBackgroundTaskSettingsUseCase };
26
+
27
+ //# sourceMappingURL=UpdateBackgroundTaskSettingsUseCase.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"api/features/UpdateBackgroundTaskSettings/UpdateBackgroundTaskSettingsUseCase.js","sources":["../../../../src/api/features/UpdateBackgroundTaskSettings/UpdateBackgroundTaskSettingsUseCase.ts"],"sourcesContent":["import { Result } from \"@webiny/feature/api\";\nimport {\n UpdateBackgroundTaskSettingsRepository,\n UpdateBackgroundTaskSettingsUseCase as UseCaseAbstraction\n} from \"./abstractions.js\";\nimport { UpdateBackgroundTaskSettingsInputSchema } from \"./schema.js\";\nimport {\n BackgroundTaskNotAuthorizedError,\n BackgroundTaskValidationError\n} from \"~/api/domain/errors.js\";\nimport type { IBackgroundTaskSettings } from \"~/api/domain/BackgroundTaskSettings.js\";\nimport { BackgroundTaskPermissions } from \"~/api/features/BackgroundTaskPermissions/abstractions.js\";\n\nclass UpdateBackgroundTaskSettingsUseCaseImpl implements UseCaseAbstraction.Interface {\n constructor(\n private readonly permissions: BackgroundTaskPermissions.Interface,\n private readonly repository: UpdateBackgroundTaskSettingsRepository.Interface\n ) {}\n\n async execute(\n input: UseCaseAbstraction.Input\n ): Promise<Result<IBackgroundTaskSettings, UseCaseAbstraction.Error>> {\n if (!(await this.permissions.canEdit(\"task\"))) {\n return Result.fail(new BackgroundTaskNotAuthorizedError());\n }\n\n const parsed = UpdateBackgroundTaskSettingsInputSchema.safeParse(input);\n if (!parsed.success) {\n return Result.fail(new BackgroundTaskValidationError(parsed.error));\n }\n\n return this.repository.execute(parsed.data);\n }\n}\n\nexport const UpdateBackgroundTaskSettingsUseCase = UseCaseAbstraction.createImplementation({\n implementation: UpdateBackgroundTaskSettingsUseCaseImpl,\n dependencies: [BackgroundTaskPermissions, UpdateBackgroundTaskSettingsRepository]\n});\n"],"names":["UpdateBackgroundTaskSettingsUseCaseImpl","permissions","repository","input","Result","BackgroundTaskNotAuthorizedError","parsed","UpdateBackgroundTaskSettingsInputSchema","BackgroundTaskValidationError","UpdateBackgroundTaskSettingsUseCase","UseCaseAbstraction","BackgroundTaskPermissions","UpdateBackgroundTaskSettingsRepository"],"mappings":";;;;;AAaA,MAAMA;IACF,YACqBC,WAAgD,EAChDC,UAA4D,CAC/E;aAFmBD,WAAW,GAAXA;aACAC,UAAU,GAAVA;IAClB;IAEH,MAAM,QACFC,KAA+B,EACmC;QAClE,IAAI,CAAE,MAAM,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,SACjC,OAAOC,OAAO,IAAI,CAAC,IAAIC;QAG3B,MAAMC,SAASC,wCAAwC,SAAS,CAACJ;QACjE,IAAI,CAACG,OAAO,OAAO,EACf,OAAOF,OAAO,IAAI,CAAC,IAAII,8BAA8BF,OAAO,KAAK;QAGrE,OAAO,IAAI,CAAC,UAAU,CAAC,OAAO,CAACA,OAAO,IAAI;IAC9C;AACJ;AAEO,MAAMG,0EAAsCC,oCAAAA,oBAAuC,CAAC;IACvF,gBAAgBV;IAChB,cAAc;QAACW;QAA2BC;KAAuC;AACrF"}
@@ -0,0 +1,26 @@
1
+ import { type Result } from "@webiny/feature/api";
2
+ import type { IBackgroundTaskSettings } from "../../../api/domain/BackgroundTaskSettings.js";
3
+ import type { BackgroundTaskModelNotFoundError, BackgroundTaskNotAuthorizedError, BackgroundTaskPersistenceError, BackgroundTaskValidationError } from "../../../api/domain/errors.js";
4
+ export interface IUpdateBackgroundTaskSettingsInput {
5
+ retentionDays?: number;
6
+ }
7
+ type IError = BackgroundTaskModelNotFoundError | BackgroundTaskPersistenceError | BackgroundTaskNotAuthorizedError | BackgroundTaskValidationError;
8
+ export interface IUpdateBackgroundTaskSettingsUseCase {
9
+ execute(input: IUpdateBackgroundTaskSettingsInput): Promise<Result<IBackgroundTaskSettings, IError>>;
10
+ }
11
+ export declare const UpdateBackgroundTaskSettingsUseCase: import("@webiny/di").Abstraction<IUpdateBackgroundTaskSettingsUseCase>;
12
+ export declare namespace UpdateBackgroundTaskSettingsUseCase {
13
+ type Interface = IUpdateBackgroundTaskSettingsUseCase;
14
+ type Input = IUpdateBackgroundTaskSettingsInput;
15
+ type Error = IError;
16
+ }
17
+ type IRepositoryError = BackgroundTaskModelNotFoundError | BackgroundTaskPersistenceError;
18
+ export interface IUpdateBackgroundTaskSettingsRepository {
19
+ execute(input: IUpdateBackgroundTaskSettingsInput): Promise<Result<IBackgroundTaskSettings, IRepositoryError>>;
20
+ }
21
+ export declare const UpdateBackgroundTaskSettingsRepository: import("@webiny/di").Abstraction<IUpdateBackgroundTaskSettingsRepository>;
22
+ export declare namespace UpdateBackgroundTaskSettingsRepository {
23
+ type Interface = IUpdateBackgroundTaskSettingsRepository;
24
+ type Error = IRepositoryError;
25
+ }
26
+ export {};
@@ -0,0 +1,6 @@
1
+ import { createAbstraction } from "@webiny/feature/api";
2
+ const UpdateBackgroundTaskSettingsUseCase = createAbstraction("BackgroundTasks/UpdateBackgroundTaskSettingsUseCase");
3
+ const UpdateBackgroundTaskSettingsRepository = createAbstraction("BackgroundTasks/UpdateBackgroundTaskSettingsRepository");
4
+ export { UpdateBackgroundTaskSettingsRepository, UpdateBackgroundTaskSettingsUseCase };
5
+
6
+ //# sourceMappingURL=abstractions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"api/features/UpdateBackgroundTaskSettings/abstractions.js","sources":["../../../../src/api/features/UpdateBackgroundTaskSettings/abstractions.ts"],"sourcesContent":["import { createAbstraction, type Result } from \"@webiny/feature/api\";\nimport type { IBackgroundTaskSettings } from \"~/api/domain/BackgroundTaskSettings.js\";\nimport type {\n BackgroundTaskModelNotFoundError,\n BackgroundTaskNotAuthorizedError,\n BackgroundTaskPersistenceError,\n BackgroundTaskValidationError\n} from \"~/api/domain/errors.js\";\n\nexport interface IUpdateBackgroundTaskSettingsInput {\n retentionDays?: number;\n}\n\ntype IError =\n | BackgroundTaskModelNotFoundError\n | BackgroundTaskPersistenceError\n | BackgroundTaskNotAuthorizedError\n | BackgroundTaskValidationError;\n\nexport interface IUpdateBackgroundTaskSettingsUseCase {\n execute(\n input: IUpdateBackgroundTaskSettingsInput\n ): Promise<Result<IBackgroundTaskSettings, IError>>;\n}\n\nexport const UpdateBackgroundTaskSettingsUseCase =\n createAbstraction<IUpdateBackgroundTaskSettingsUseCase>(\n \"BackgroundTasks/UpdateBackgroundTaskSettingsUseCase\"\n );\n\nexport namespace UpdateBackgroundTaskSettingsUseCase {\n export type Interface = IUpdateBackgroundTaskSettingsUseCase;\n export type Input = IUpdateBackgroundTaskSettingsInput;\n export type Error = IError;\n}\n\ntype IRepositoryError = BackgroundTaskModelNotFoundError | BackgroundTaskPersistenceError;\n\nexport interface IUpdateBackgroundTaskSettingsRepository {\n execute(\n input: IUpdateBackgroundTaskSettingsInput\n ): Promise<Result<IBackgroundTaskSettings, IRepositoryError>>;\n}\n\nexport const UpdateBackgroundTaskSettingsRepository =\n createAbstraction<IUpdateBackgroundTaskSettingsRepository>(\n \"BackgroundTasks/UpdateBackgroundTaskSettingsRepository\"\n );\n\nexport namespace UpdateBackgroundTaskSettingsRepository {\n export type Interface = IUpdateBackgroundTaskSettingsRepository;\n export type Error = IRepositoryError;\n}\n"],"names":["UpdateBackgroundTaskSettingsUseCase","createAbstraction","UpdateBackgroundTaskSettingsRepository"],"mappings":";AAyBO,MAAMA,sCACTC,kBACI;AAiBD,MAAMC,yCACTD,kBACI"}
@@ -0,0 +1,4 @@
1
+ export declare const UpdateBackgroundTaskSettingsFeature: {
2
+ name: string;
3
+ register(container: import("@webiny/di").Container): void;
4
+ };
@@ -0,0 +1,13 @@
1
+ import { createFeature } from "@webiny/feature/api";
2
+ import { UpdateBackgroundTaskSettingsUseCase } from "./UpdateBackgroundTaskSettingsUseCase.js";
3
+ import { UpdateBackgroundTaskSettingsRepository } from "./UpdateBackgroundTaskSettingsRepository.js";
4
+ const UpdateBackgroundTaskSettingsFeature = createFeature({
5
+ name: "UpdateBackgroundTaskSettings",
6
+ register (container) {
7
+ container.register(UpdateBackgroundTaskSettingsUseCase);
8
+ container.register(UpdateBackgroundTaskSettingsRepository).inSingletonScope();
9
+ }
10
+ });
11
+ export { UpdateBackgroundTaskSettingsFeature };
12
+
13
+ //# sourceMappingURL=feature.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"api/features/UpdateBackgroundTaskSettings/feature.js","sources":["../../../../src/api/features/UpdateBackgroundTaskSettings/feature.ts"],"sourcesContent":["import { createFeature } from \"@webiny/feature/api\";\nimport { UpdateBackgroundTaskSettingsUseCase } from \"./UpdateBackgroundTaskSettingsUseCase.js\";\nimport { UpdateBackgroundTaskSettingsRepository } from \"./UpdateBackgroundTaskSettingsRepository.js\";\n\nexport const UpdateBackgroundTaskSettingsFeature = createFeature({\n name: \"UpdateBackgroundTaskSettings\",\n register(container) {\n container.register(UpdateBackgroundTaskSettingsUseCase);\n container.register(UpdateBackgroundTaskSettingsRepository).inSingletonScope();\n }\n});\n"],"names":["UpdateBackgroundTaskSettingsFeature","createFeature","container","UpdateBackgroundTaskSettingsUseCase","UpdateBackgroundTaskSettingsRepository"],"mappings":";;;AAIO,MAAMA,sCAAsCC,cAAc;IAC7D,MAAM;IACN,UAASC,SAAS;QACdA,UAAU,QAAQ,CAACC;QACnBD,UAAU,QAAQ,CAACE,wCAAwC,gBAAgB;IAC/E;AACJ"}
@@ -0,0 +1,2 @@
1
+ export { UpdateBackgroundTaskSettingsUseCase, UpdateBackgroundTaskSettingsRepository } from "./abstractions.js";
2
+ export { UpdateBackgroundTaskSettingsFeature } from "./feature.js";
@@ -0,0 +1,2 @@
1
+ export { UpdateBackgroundTaskSettingsRepository, UpdateBackgroundTaskSettingsUseCase } from "./abstractions.js";
2
+ export { UpdateBackgroundTaskSettingsFeature } from "./feature.js";
@@ -0,0 +1,4 @@
1
+ import { z } from "zod";
2
+ export declare const UpdateBackgroundTaskSettingsInputSchema: z.ZodObject<{
3
+ retentionDays: z.ZodOptional<z.ZodNumber>;
4
+ }, z.core.$strip>;
@@ -0,0 +1,8 @@
1
+ import { z } from "zod";
2
+ import { BACKGROUND_TASK_MAX_RETENTION_DAYS } from "../../domain/constants.js";
3
+ const UpdateBackgroundTaskSettingsInputSchema = z.object({
4
+ retentionDays: z.number().int().min(0).max(BACKGROUND_TASK_MAX_RETENTION_DAYS).optional()
5
+ });
6
+ export { UpdateBackgroundTaskSettingsInputSchema };
7
+
8
+ //# sourceMappingURL=schema.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"api/features/UpdateBackgroundTaskSettings/schema.js","sources":["../../../../src/api/features/UpdateBackgroundTaskSettings/schema.ts"],"sourcesContent":["import { z } from \"zod\";\nimport { BACKGROUND_TASK_MAX_RETENTION_DAYS } from \"~/api/domain/constants.js\";\n\nexport const UpdateBackgroundTaskSettingsInputSchema = z.object({\n retentionDays: z.number().int().min(0).max(BACKGROUND_TASK_MAX_RETENTION_DAYS).optional()\n});\n"],"names":["UpdateBackgroundTaskSettingsInputSchema","z","BACKGROUND_TASK_MAX_RETENTION_DAYS"],"mappings":";;AAGO,MAAMA,0CAA0CC,EAAE,MAAM,CAAC;IAC5D,eAAeA,EAAE,MAAM,GAAG,GAAG,GAAG,GAAG,CAAC,GAAG,GAAG,CAACC,oCAAoC,QAAQ;AAC3F"}
@@ -0,0 +1,17 @@
1
+ import { Result } from "@webiny/feature/api";
2
+ import { EventPublisher } from "@webiny/api-core/features/eventPublisher/index.js";
3
+ import type { TaskService } from "@webiny/api-core/features/task/TaskService/index.js";
4
+ import { UpdateTaskUseCase as UseCaseAbstraction } from "./abstractions.js";
5
+ import { TasksRepository } from "../../../api/domain/task/abstractions.js";
6
+ type TaskInput = TaskService.TaskInput;
7
+ type TaskOutput = TaskService.GenericOutput;
8
+ declare class UpdateTaskUseCaseImpl implements UseCaseAbstraction.Interface {
9
+ private readonly eventPublisher;
10
+ private readonly repository;
11
+ constructor(eventPublisher: EventPublisher.Interface, repository: TasksRepository.Interface);
12
+ execute<I extends TaskInput = TaskInput, O extends TaskOutput = TaskOutput>(id: string, data: UseCaseAbstraction.Params<I, O>): Promise<Result<TaskService.Task<I, O>, UseCaseAbstraction.Error>>;
13
+ }
14
+ export declare const UpdateTaskUseCase: typeof UpdateTaskUseCaseImpl & {
15
+ __abstraction: import("@webiny/di").Abstraction<import("./abstractions.js").IUpdateTaskUseCase>;
16
+ };
17
+ export {};
@@ -0,0 +1,36 @@
1
+ import { Result } from "@webiny/feature/api";
2
+ import { EventPublisher } from "@webiny/api-core/features/eventPublisher/index.js";
3
+ import { UpdateTaskUseCase } from "./abstractions.js";
4
+ import { TasksRepository } from "../../domain/task/abstractions.js";
5
+ import { TaskAfterUpdateEvent, TaskBeforeUpdateEvent } from "../../events/index.js";
6
+ class UpdateTaskUseCaseImpl {
7
+ constructor(eventPublisher, repository){
8
+ this.eventPublisher = eventPublisher;
9
+ this.repository = repository;
10
+ }
11
+ async execute(id, data) {
12
+ const original = await this.repository.get(id);
13
+ if (original.isFail()) return Result.fail(original.error);
14
+ await this.eventPublisher.publish(new TaskBeforeUpdateEvent({
15
+ input: data,
16
+ original: original.value
17
+ }));
18
+ const result = await this.repository.update(id, data);
19
+ if (result.isFail()) return Result.fail(result.error);
20
+ await this.eventPublisher.publish(new TaskAfterUpdateEvent({
21
+ input: data,
22
+ task: result.value
23
+ }));
24
+ return Result.ok(result.value);
25
+ }
26
+ }
27
+ const UpdateTaskUseCase_UpdateTaskUseCase = UpdateTaskUseCase.createImplementation({
28
+ implementation: UpdateTaskUseCaseImpl,
29
+ dependencies: [
30
+ EventPublisher,
31
+ TasksRepository
32
+ ]
33
+ });
34
+ export { UpdateTaskUseCase_UpdateTaskUseCase as UpdateTaskUseCase };
35
+
36
+ //# sourceMappingURL=UpdateTaskUseCase.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"api/features/UpdateTask/UpdateTaskUseCase.js","sources":["../../../../src/api/features/UpdateTask/UpdateTaskUseCase.ts"],"sourcesContent":["import { Result } from \"@webiny/feature/api\";\nimport { EventPublisher } from \"@webiny/api-core/features/eventPublisher/index.js\";\nimport type { TaskService } from \"@webiny/api-core/features/task/TaskService/index.js\";\nimport { UpdateTaskUseCase as UseCaseAbstraction } from \"./abstractions.js\";\nimport { TasksRepository } from \"~/api/domain/task/abstractions.js\";\nimport { TaskAfterUpdateEvent, TaskBeforeUpdateEvent } from \"~/api/events/index.js\";\n\ntype TaskInput = TaskService.TaskInput;\ntype TaskOutput = TaskService.GenericOutput;\n\nclass UpdateTaskUseCaseImpl implements UseCaseAbstraction.Interface {\n constructor(\n private readonly eventPublisher: EventPublisher.Interface,\n private readonly repository: TasksRepository.Interface\n ) {}\n\n async execute<I extends TaskInput = TaskInput, O extends TaskOutput = TaskOutput>(\n id: string,\n data: UseCaseAbstraction.Params<I, O>\n ): Promise<Result<TaskService.Task<I, O>, UseCaseAbstraction.Error>> {\n const original = await this.repository.get<I, O>(id);\n if (original.isFail()) {\n return Result.fail(original.error);\n }\n\n await this.eventPublisher.publish(\n new TaskBeforeUpdateEvent({ input: data, original: original.value })\n );\n\n const result = await this.repository.update<I, O>(id, data);\n if (result.isFail()) {\n return Result.fail(result.error);\n }\n\n await this.eventPublisher.publish(\n new TaskAfterUpdateEvent({ input: data, task: result.value })\n );\n\n return Result.ok(result.value);\n }\n}\n\nexport const UpdateTaskUseCase = UseCaseAbstraction.createImplementation({\n implementation: UpdateTaskUseCaseImpl,\n dependencies: [EventPublisher, TasksRepository]\n});\n"],"names":["UpdateTaskUseCaseImpl","eventPublisher","repository","id","data","original","Result","TaskBeforeUpdateEvent","result","TaskAfterUpdateEvent","UpdateTaskUseCase","UseCaseAbstraction","EventPublisher","TasksRepository"],"mappings":";;;;;AAUA,MAAMA;IACF,YACqBC,cAAwC,EACxCC,UAAqC,CACxD;aAFmBD,cAAc,GAAdA;aACAC,UAAU,GAAVA;IAClB;IAEH,MAAM,QACFC,EAAU,EACVC,IAAqC,EAC4B;QACjE,MAAMC,WAAW,MAAM,IAAI,CAAC,UAAU,CAAC,GAAG,CAAOF;QACjD,IAAIE,SAAS,MAAM,IACf,OAAOC,OAAO,IAAI,CAACD,SAAS,KAAK;QAGrC,MAAM,IAAI,CAAC,cAAc,CAAC,OAAO,CAC7B,IAAIE,sBAAsB;YAAE,OAAOH;YAAM,UAAUC,SAAS,KAAK;QAAC;QAGtE,MAAMG,SAAS,MAAM,IAAI,CAAC,UAAU,CAAC,MAAM,CAAOL,IAAIC;QACtD,IAAII,OAAO,MAAM,IACb,OAAOF,OAAO,IAAI,CAACE,OAAO,KAAK;QAGnC,MAAM,IAAI,CAAC,cAAc,CAAC,OAAO,CAC7B,IAAIC,qBAAqB;YAAE,OAAOL;YAAM,MAAMI,OAAO,KAAK;QAAC;QAG/D,OAAOF,OAAO,EAAE,CAACE,OAAO,KAAK;IACjC;AACJ;AAEO,MAAME,sCAAoBC,kBAAAA,oBAAuC,CAAC;IACrE,gBAAgBX;IAChB,cAAc;QAACY;QAAgBC;KAAgB;AACnD"}
@@ -0,0 +1,22 @@
1
+ import { type Result } from "@webiny/feature/api";
2
+ import type { TaskService } from "@webiny/api-core/features/task/TaskService/index.js";
3
+ import type { ITaskUpdateData } from "../../../api/types.js";
4
+ import type { BackgroundTaskPersistenceError, TaskNotFoundError } from "../../../api/domain/errors.js";
5
+ type TaskInput = TaskService.TaskInput;
6
+ type TaskOutput = TaskService.GenericOutput;
7
+ export interface IUpdateTaskUseCase {
8
+ execute<I extends TaskInput = TaskInput, O extends TaskOutput = TaskOutput>(id: string, data: Partial<ITaskUpdateData<I, O>>): Promise<Result<TaskService.Task<I, O>, UseCaseError>>;
9
+ }
10
+ export interface IUpdateTaskUseCaseErrors {
11
+ notFound: TaskNotFoundError;
12
+ persistence: BackgroundTaskPersistenceError;
13
+ }
14
+ type UseCaseError = IUpdateTaskUseCaseErrors[keyof IUpdateTaskUseCaseErrors];
15
+ /** Update a stored task: its status, output, iterations and so on. */
16
+ export declare const UpdateTaskUseCase: import("@webiny/di").Abstraction<IUpdateTaskUseCase>;
17
+ export declare namespace UpdateTaskUseCase {
18
+ type Interface = IUpdateTaskUseCase;
19
+ type Params<I extends TaskInput = TaskInput, O extends TaskOutput = TaskOutput> = Partial<ITaskUpdateData<I, O>>;
20
+ type Error = UseCaseError;
21
+ }
22
+ export {};
@@ -0,0 +1,5 @@
1
+ import { createAbstraction } from "@webiny/feature/api";
2
+ const UpdateTaskUseCase = createAbstraction("Tasks/UpdateTaskUseCase");
3
+ export { UpdateTaskUseCase };
4
+
5
+ //# sourceMappingURL=abstractions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"api/features/UpdateTask/abstractions.js","sources":["../../../../src/api/features/UpdateTask/abstractions.ts"],"sourcesContent":["import { createAbstraction, type Result } from \"@webiny/feature/api\";\nimport type { TaskService } from \"@webiny/api-core/features/task/TaskService/index.js\";\nimport type { ITaskUpdateData } from \"~/api/types.js\";\nimport type { BackgroundTaskPersistenceError, TaskNotFoundError } from \"~/api/domain/errors.js\";\n\ntype TaskInput = TaskService.TaskInput;\ntype TaskOutput = TaskService.GenericOutput;\n\nexport interface IUpdateTaskUseCase {\n execute<I extends TaskInput = TaskInput, O extends TaskOutput = TaskOutput>(\n id: string,\n data: Partial<ITaskUpdateData<I, O>>\n ): Promise<Result<TaskService.Task<I, O>, UseCaseError>>;\n}\n\nexport interface IUpdateTaskUseCaseErrors {\n notFound: TaskNotFoundError;\n persistence: BackgroundTaskPersistenceError;\n}\n\ntype UseCaseError = IUpdateTaskUseCaseErrors[keyof IUpdateTaskUseCaseErrors];\n\n/** Update a stored task: its status, output, iterations and so on. */\nexport const UpdateTaskUseCase = createAbstraction<IUpdateTaskUseCase>(\"Tasks/UpdateTaskUseCase\");\n\nexport namespace UpdateTaskUseCase {\n export type Interface = IUpdateTaskUseCase;\n export type Params<\n I extends TaskInput = TaskInput,\n O extends TaskOutput = TaskOutput\n > = Partial<ITaskUpdateData<I, O>>;\n export type Error = UseCaseError;\n}\n"],"names":["UpdateTaskUseCase","createAbstraction"],"mappings":";AAuBO,MAAMA,oBAAoBC,kBAAsC"}
@@ -0,0 +1,4 @@
1
+ export declare const UpdateTaskFeature: {
2
+ name: string;
3
+ register(container: import("@webiny/di").Container): void;
4
+ };
@@ -0,0 +1,11 @@
1
+ import { createFeature } from "@webiny/feature/api";
2
+ import { UpdateTaskUseCase } from "./UpdateTaskUseCase.js";
3
+ const UpdateTaskFeature = createFeature({
4
+ name: "UpdateTask",
5
+ register (container) {
6
+ container.register(UpdateTaskUseCase);
7
+ }
8
+ });
9
+ export { UpdateTaskFeature };
10
+
11
+ //# sourceMappingURL=feature.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"api/features/UpdateTask/feature.js","sources":["../../../../src/api/features/UpdateTask/feature.ts"],"sourcesContent":["import { createFeature } from \"@webiny/feature/api\";\nimport { UpdateTaskUseCase } from \"./UpdateTaskUseCase.js\";\n\nexport const UpdateTaskFeature = createFeature({\n name: \"UpdateTask\",\n register(container) {\n container.register(UpdateTaskUseCase);\n }\n});\n"],"names":["UpdateTaskFeature","createFeature","container","UpdateTaskUseCase"],"mappings":";;AAGO,MAAMA,oBAAoBC,cAAc;IAC3C,MAAM;IACN,UAASC,SAAS;QACdA,UAAU,QAAQ,CAACC;IACvB;AACJ"}
@@ -0,0 +1,2 @@
1
+ export { UpdateTaskUseCase } from "./abstractions.js";
2
+ export { UpdateTaskFeature } from "./feature.js";
@@ -0,0 +1,2 @@
1
+ export { UpdateTaskUseCase } from "./abstractions.js";
2
+ export { UpdateTaskFeature } from "./feature.js";
@@ -0,0 +1,12 @@
1
+ import { UpdateTaskLogUseCase as UseCaseAbstraction } from "./abstractions.js";
2
+ import { TaskLogsRepository } from "../../../api/domain/task/abstractions.js";
3
+ import type { ITaskLogUpdateInput } from "../../../api/types.js";
4
+ declare class UpdateTaskLogUseCaseImpl implements UseCaseAbstraction.Interface {
5
+ private readonly repository;
6
+ constructor(repository: TaskLogsRepository.Interface);
7
+ execute(id: string, data: ITaskLogUpdateInput): Promise<import("@webiny/feature/api/Result.js").Result<import("~/api/types.js").ITaskLog, import("../../domain/errors.js").BackgroundTaskPersistenceError | import("../../domain/errors.js").TaskLogNotFoundError>>;
8
+ }
9
+ export declare const UpdateTaskLogUseCase: typeof UpdateTaskLogUseCaseImpl & {
10
+ __abstraction: import("@webiny/di").Abstraction<import("./abstractions.js").IUpdateTaskLogUseCase>;
11
+ };
12
+ export {};
@@ -0,0 +1,19 @@
1
+ import { UpdateTaskLogUseCase } from "./abstractions.js";
2
+ import { TaskLogsRepository } from "../../domain/task/abstractions.js";
3
+ class UpdateTaskLogUseCaseImpl {
4
+ constructor(repository){
5
+ this.repository = repository;
6
+ }
7
+ execute(id, data) {
8
+ return this.repository.update(id, data);
9
+ }
10
+ }
11
+ const UpdateTaskLogUseCase_UpdateTaskLogUseCase = UpdateTaskLogUseCase.createImplementation({
12
+ implementation: UpdateTaskLogUseCaseImpl,
13
+ dependencies: [
14
+ TaskLogsRepository
15
+ ]
16
+ });
17
+ export { UpdateTaskLogUseCase_UpdateTaskLogUseCase as UpdateTaskLogUseCase };
18
+
19
+ //# sourceMappingURL=UpdateTaskLogUseCase.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"api/features/UpdateTaskLog/UpdateTaskLogUseCase.js","sources":["../../../../src/api/features/UpdateTaskLog/UpdateTaskLogUseCase.ts"],"sourcesContent":["import { UpdateTaskLogUseCase as UseCaseAbstraction } from \"./abstractions.js\";\nimport { TaskLogsRepository } from \"~/api/domain/task/abstractions.js\";\nimport type { ITaskLogUpdateInput } from \"~/api/types.js\";\n\nclass UpdateTaskLogUseCaseImpl implements UseCaseAbstraction.Interface {\n constructor(private readonly repository: TaskLogsRepository.Interface) {}\n\n execute(id: string, data: ITaskLogUpdateInput) {\n return this.repository.update(id, data);\n }\n}\n\nexport const UpdateTaskLogUseCase = UseCaseAbstraction.createImplementation({\n implementation: UpdateTaskLogUseCaseImpl,\n dependencies: [TaskLogsRepository]\n});\n"],"names":["UpdateTaskLogUseCaseImpl","repository","id","data","UpdateTaskLogUseCase","UseCaseAbstraction","TaskLogsRepository"],"mappings":";;AAIA,MAAMA;IACF,YAA6BC,UAAwC,CAAE;aAA1CA,UAAU,GAAVA;IAA2C;IAExE,QAAQC,EAAU,EAAEC,IAAyB,EAAE;QAC3C,OAAO,IAAI,CAAC,UAAU,CAAC,MAAM,CAACD,IAAIC;IACtC;AACJ;AAEO,MAAMC,4CAAuBC,qBAAAA,oBAAuC,CAAC;IACxE,gBAAgBL;IAChB,cAAc;QAACM;KAAmB;AACtC"}
@@ -0,0 +1,16 @@
1
+ import type { Result } from "@webiny/feature/api";
2
+ import type { ITaskLog } from "../../../api/types.js";
3
+ import type { ITaskLogUpdateInput } from "../../../api/types.js";
4
+ import type { BackgroundTaskPersistenceError } from "../../../api/domain/errors.js";
5
+ import type { TaskLogNotFoundError } from "../../../api/domain/errors.js";
6
+ type UseCaseError = TaskLogNotFoundError | BackgroundTaskPersistenceError;
7
+ export interface IUpdateTaskLogUseCase {
8
+ execute(id: string, data: ITaskLogUpdateInput): Promise<Result<ITaskLog, UseCaseError>>;
9
+ }
10
+ /** Update a task log, usually to append items. */
11
+ export declare const UpdateTaskLogUseCase: import("@webiny/di").Abstraction<IUpdateTaskLogUseCase>;
12
+ export declare namespace UpdateTaskLogUseCase {
13
+ type Interface = IUpdateTaskLogUseCase;
14
+ type Error = UseCaseError;
15
+ }
16
+ export {};
@@ -0,0 +1,5 @@
1
+ import { createAbstraction } from "@webiny/feature/api";
2
+ const UpdateTaskLogUseCase = createAbstraction("Tasks/UpdateTaskLogUseCase");
3
+ export { UpdateTaskLogUseCase };
4
+
5
+ //# sourceMappingURL=abstractions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"api/features/UpdateTaskLog/abstractions.js","sources":["../../../../src/api/features/UpdateTaskLog/abstractions.ts"],"sourcesContent":["import { createAbstraction } from \"@webiny/feature/api\";\nimport type { Result } from \"@webiny/feature/api\";\nimport type { ITaskLog } from \"~/api/types.js\";\nimport type { ITaskLogUpdateInput } from \"~/api/types.js\";\nimport type { BackgroundTaskPersistenceError } from \"~/api/domain/errors.js\";\nimport type { TaskLogNotFoundError } from \"~/api/domain/errors.js\";\n\ntype UseCaseError = TaskLogNotFoundError | BackgroundTaskPersistenceError;\n\nexport interface IUpdateTaskLogUseCase {\n execute(id: string, data: ITaskLogUpdateInput): Promise<Result<ITaskLog, UseCaseError>>;\n}\n\n/** Update a task log, usually to append items. */\nexport const UpdateTaskLogUseCase = createAbstraction<IUpdateTaskLogUseCase>(\n \"Tasks/UpdateTaskLogUseCase\"\n);\n\nexport namespace UpdateTaskLogUseCase {\n export type Interface = IUpdateTaskLogUseCase;\n export type Error = UseCaseError;\n}\n"],"names":["UpdateTaskLogUseCase","createAbstraction"],"mappings":";AAcO,MAAMA,uBAAuBC,kBAChC"}
@@ -0,0 +1,4 @@
1
+ export declare const UpdateTaskLogFeature: {
2
+ name: string;
3
+ register(container: import("@webiny/di").Container): void;
4
+ };
@@ -0,0 +1,11 @@
1
+ import { createFeature } from "@webiny/feature/api";
2
+ import { UpdateTaskLogUseCase } from "./UpdateTaskLogUseCase.js";
3
+ const UpdateTaskLogFeature = createFeature({
4
+ name: "UpdateTaskLog",
5
+ register (container) {
6
+ container.register(UpdateTaskLogUseCase);
7
+ }
8
+ });
9
+ export { UpdateTaskLogFeature };
10
+
11
+ //# sourceMappingURL=feature.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"api/features/UpdateTaskLog/feature.js","sources":["../../../../src/api/features/UpdateTaskLog/feature.ts"],"sourcesContent":["import { createFeature } from \"@webiny/feature/api\";\nimport { UpdateTaskLogUseCase } from \"./UpdateTaskLogUseCase.js\";\n\nexport const UpdateTaskLogFeature = createFeature({\n name: \"UpdateTaskLog\",\n register(container) {\n container.register(UpdateTaskLogUseCase);\n }\n});\n"],"names":["UpdateTaskLogFeature","createFeature","container","UpdateTaskLogUseCase"],"mappings":";;AAGO,MAAMA,uBAAuBC,cAAc;IAC9C,MAAM;IACN,UAASC,SAAS;QACdA,UAAU,QAAQ,CAACC;IACvB;AACJ"}
@@ -0,0 +1,2 @@
1
+ export { UpdateTaskLogUseCase } from "./abstractions.js";
2
+ export { UpdateTaskLogFeature } from "./feature.js";
@@ -0,0 +1,2 @@
1
+ export { UpdateTaskLogUseCase } from "./abstractions.js";
2
+ export { UpdateTaskLogFeature } from "./feature.js";
@@ -0,0 +1 @@
1
+ import "./features/TaskController/augmentation.js";
package/api/global.js ADDED
@@ -0,0 +1 @@
1
+ import "./features/TaskController/augmentation.js";
@@ -0,0 +1,29 @@
1
+ import { GraphQLSchemaFactory } from "@webiny/api-graphql/graphql/abstractions.js";
2
+ import { TenantContext } from "@webiny/api-core/features/tenancy/TenantContext/abstractions.js";
3
+ import { IdentityContext } from "@webiny/api-core/features/security/IdentityContext/abstractions.js";
4
+ import { ListModelsUseCase } from "@webiny/api-headless-cms/features/contentModel/ListModels/index.js";
5
+ import { CmsModelFieldToGraphQLRegistry } from "@webiny/api-headless-cms/exports/api/cms/graphql.js";
6
+ import { TaskLogModelProvider } from "../../api/domain/task/abstractions.js";
7
+ import { TaskModelProvider } from "../../api/domain/task/abstractions.js";
8
+ /**
9
+ * The background-tasks GraphQL schema. Its shape depends on the CMS task/log content models, which
10
+ * are loaded when the schema is composed. The settings schema lives here too, because it extends
11
+ * the task schema's `WebinyBackgroundTaskQuery`/`Mutation` types.
12
+ */
13
+ declare class BackgroundTasksGraphQLSchemaImpl implements GraphQLSchemaFactory.Interface {
14
+ private readonly tenantContext;
15
+ private readonly identityContext;
16
+ private readonly taskModelProvider;
17
+ private readonly logModelProvider;
18
+ private readonly listModelsUseCase;
19
+ private readonly fieldRegistry;
20
+ constructor(tenantContext: TenantContext.Interface, identityContext: IdentityContext.Interface, taskModelProvider: TaskModelProvider.Interface, logModelProvider: TaskLogModelProvider.Interface, listModelsUseCase: ListModelsUseCase.Interface, fieldRegistry: CmsModelFieldToGraphQLRegistry.Interface);
21
+ getSchemaKey(): Promise<string>;
22
+ execute(builder: GraphQLSchemaFactory.SchemaBuilder): Promise<GraphQLSchemaFactory.SchemaBuilder>;
23
+ private loadInputs;
24
+ private createTypeDefs;
25
+ }
26
+ export declare const BackgroundTasksGraphQLSchema: typeof BackgroundTasksGraphQLSchemaImpl & {
27
+ __abstraction: import("@webiny/di").Abstraction<import("@webiny/api-graphql/graphql/abstractions.public.js").IGraphQLSchemaFactory>;
28
+ };
29
+ export {};