@webiny/background-tasks 0.0.0-unstable.0156a4c312

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (666) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +11 -0
  3. package/admin/BackgroundTaskRoutes.d.ts +2 -0
  4. package/admin/BackgroundTaskRoutes.js +70 -0
  5. package/admin/BackgroundTaskRoutes.js.map +1 -0
  6. package/admin/BackgroundTasks.d.ts +2 -0
  7. package/admin/BackgroundTasks.js +55 -0
  8. package/admin/BackgroundTasks.js.map +1 -0
  9. package/admin/features/abortTask/AbortTaskGateway.d.ts +12 -0
  10. package/admin/features/abortTask/AbortTaskGateway.js +62 -0
  11. package/admin/features/abortTask/AbortTaskGateway.js.map +1 -0
  12. package/admin/features/abortTask/AbortTaskUseCase.d.ts +11 -0
  13. package/admin/features/abortTask/AbortTaskUseCase.js +18 -0
  14. package/admin/features/abortTask/AbortTaskUseCase.js.map +1 -0
  15. package/admin/features/abortTask/abstractions.d.ts +19 -0
  16. package/admin/features/abortTask/abstractions.js +6 -0
  17. package/admin/features/abortTask/abstractions.js.map +1 -0
  18. package/admin/features/abortTask/feature.d.ts +3 -0
  19. package/admin/features/abortTask/feature.js +19 -0
  20. package/admin/features/abortTask/feature.js.map +1 -0
  21. package/admin/features/abortTask/index.d.ts +2 -0
  22. package/admin/features/abortTask/index.js +2 -0
  23. package/admin/features/deleteTask/DeleteTaskGateway.d.ts +11 -0
  24. package/admin/features/deleteTask/DeleteTaskGateway.js +41 -0
  25. package/admin/features/deleteTask/DeleteTaskGateway.js.map +1 -0
  26. package/admin/features/deleteTask/DeleteTaskUseCase.d.ts +10 -0
  27. package/admin/features/deleteTask/DeleteTaskUseCase.js +18 -0
  28. package/admin/features/deleteTask/DeleteTaskUseCase.js.map +1 -0
  29. package/admin/features/deleteTask/abstractions.d.ts +14 -0
  30. package/admin/features/deleteTask/abstractions.js +6 -0
  31. package/admin/features/deleteTask/abstractions.js.map +1 -0
  32. package/admin/features/deleteTask/feature.d.ts +3 -0
  33. package/admin/features/deleteTask/feature.js +19 -0
  34. package/admin/features/deleteTask/feature.js.map +1 -0
  35. package/admin/features/deleteTask/index.d.ts +2 -0
  36. package/admin/features/deleteTask/index.js +2 -0
  37. package/admin/features/getBackgroundTaskSettings/GetBackgroundTaskSettingsGateway.d.ts +12 -0
  38. package/admin/features/getBackgroundTaskSettings/GetBackgroundTaskSettingsGateway.js +40 -0
  39. package/admin/features/getBackgroundTaskSettings/GetBackgroundTaskSettingsGateway.js.map +1 -0
  40. package/admin/features/getBackgroundTaskSettings/GetBackgroundTaskSettingsUseCase.d.ts +11 -0
  41. package/admin/features/getBackgroundTaskSettings/GetBackgroundTaskSettingsUseCase.js +18 -0
  42. package/admin/features/getBackgroundTaskSettings/GetBackgroundTaskSettingsUseCase.js.map +1 -0
  43. package/admin/features/getBackgroundTaskSettings/abstractions.d.ts +15 -0
  44. package/admin/features/getBackgroundTaskSettings/abstractions.js +6 -0
  45. package/admin/features/getBackgroundTaskSettings/abstractions.js.map +1 -0
  46. package/admin/features/getBackgroundTaskSettings/feature.d.ts +3 -0
  47. package/admin/features/getBackgroundTaskSettings/feature.js +19 -0
  48. package/admin/features/getBackgroundTaskSettings/feature.js.map +1 -0
  49. package/admin/features/getBackgroundTaskSettings/index.d.ts +3 -0
  50. package/admin/features/getBackgroundTaskSettings/index.js +2 -0
  51. package/admin/features/getTask/GetTaskGateway.d.ts +12 -0
  52. package/admin/features/getTask/GetTaskGateway.js +61 -0
  53. package/admin/features/getTask/GetTaskGateway.js.map +1 -0
  54. package/admin/features/getTask/GetTaskUseCase.d.ts +11 -0
  55. package/admin/features/getTask/GetTaskUseCase.js +18 -0
  56. package/admin/features/getTask/GetTaskUseCase.js.map +1 -0
  57. package/admin/features/getTask/abstractions.d.ts +15 -0
  58. package/admin/features/getTask/abstractions.js +6 -0
  59. package/admin/features/getTask/abstractions.js.map +1 -0
  60. package/admin/features/getTask/feature.d.ts +3 -0
  61. package/admin/features/getTask/feature.js +19 -0
  62. package/admin/features/getTask/feature.js.map +1 -0
  63. package/admin/features/getTask/index.d.ts +2 -0
  64. package/admin/features/getTask/index.js +2 -0
  65. package/admin/features/listDefinitions/ListDefinitionsGateway.d.ts +12 -0
  66. package/admin/features/listDefinitions/ListDefinitionsGateway.js +42 -0
  67. package/admin/features/listDefinitions/ListDefinitionsGateway.js.map +1 -0
  68. package/admin/features/listDefinitions/ListDefinitionsUseCase.d.ts +11 -0
  69. package/admin/features/listDefinitions/ListDefinitionsUseCase.js +18 -0
  70. package/admin/features/listDefinitions/ListDefinitionsUseCase.js.map +1 -0
  71. package/admin/features/listDefinitions/abstractions.d.ts +15 -0
  72. package/admin/features/listDefinitions/abstractions.js +6 -0
  73. package/admin/features/listDefinitions/abstractions.js.map +1 -0
  74. package/admin/features/listDefinitions/feature.d.ts +3 -0
  75. package/admin/features/listDefinitions/feature.js +19 -0
  76. package/admin/features/listDefinitions/feature.js.map +1 -0
  77. package/admin/features/listDefinitions/index.d.ts +2 -0
  78. package/admin/features/listDefinitions/index.js +2 -0
  79. package/admin/features/listLogs/ListLogsGateway.d.ts +11 -0
  80. package/admin/features/listLogs/ListLogsGateway.js +73 -0
  81. package/admin/features/listLogs/ListLogsGateway.js.map +1 -0
  82. package/admin/features/listLogs/ListLogsUseCase.d.ts +10 -0
  83. package/admin/features/listLogs/ListLogsUseCase.js +18 -0
  84. package/admin/features/listLogs/ListLogsUseCase.js.map +1 -0
  85. package/admin/features/listLogs/abstractions.d.ts +30 -0
  86. package/admin/features/listLogs/abstractions.js +6 -0
  87. package/admin/features/listLogs/abstractions.js.map +1 -0
  88. package/admin/features/listLogs/feature.d.ts +3 -0
  89. package/admin/features/listLogs/feature.js +19 -0
  90. package/admin/features/listLogs/feature.js.map +1 -0
  91. package/admin/features/listLogs/index.d.ts +2 -0
  92. package/admin/features/listLogs/index.js +2 -0
  93. package/admin/features/listTasks/ListTasksGateway.d.ts +11 -0
  94. package/admin/features/listTasks/ListTasksGateway.js +79 -0
  95. package/admin/features/listTasks/ListTasksGateway.js.map +1 -0
  96. package/admin/features/listTasks/ListTasksUseCase.d.ts +10 -0
  97. package/admin/features/listTasks/ListTasksUseCase.js +18 -0
  98. package/admin/features/listTasks/ListTasksUseCase.js.map +1 -0
  99. package/admin/features/listTasks/abstractions.d.ts +31 -0
  100. package/admin/features/listTasks/abstractions.js +6 -0
  101. package/admin/features/listTasks/abstractions.js.map +1 -0
  102. package/admin/features/listTasks/feature.d.ts +3 -0
  103. package/admin/features/listTasks/feature.js +19 -0
  104. package/admin/features/listTasks/feature.js.map +1 -0
  105. package/admin/features/listTasks/index.d.ts +2 -0
  106. package/admin/features/listTasks/index.js +2 -0
  107. package/admin/features/permissions/abstractions.d.ts +17 -0
  108. package/admin/features/permissions/abstractions.js +6 -0
  109. package/admin/features/permissions/abstractions.js.map +1 -0
  110. package/admin/features/permissions/feature.d.ts +14 -0
  111. package/admin/features/permissions/feature.js +7 -0
  112. package/admin/features/permissions/feature.js.map +1 -0
  113. package/admin/features/permissions/index.d.ts +2 -0
  114. package/admin/features/permissions/index.js +2 -0
  115. package/admin/features/updateBackgroundTaskSettings/UpdateBackgroundTaskSettingsGateway.d.ts +12 -0
  116. package/admin/features/updateBackgroundTaskSettings/UpdateBackgroundTaskSettingsGateway.js +43 -0
  117. package/admin/features/updateBackgroundTaskSettings/UpdateBackgroundTaskSettingsGateway.js.map +1 -0
  118. package/admin/features/updateBackgroundTaskSettings/UpdateBackgroundTaskSettingsUseCase.d.ts +11 -0
  119. package/admin/features/updateBackgroundTaskSettings/UpdateBackgroundTaskSettingsUseCase.js +18 -0
  120. package/admin/features/updateBackgroundTaskSettings/UpdateBackgroundTaskSettingsUseCase.js.map +1 -0
  121. package/admin/features/updateBackgroundTaskSettings/abstractions.d.ts +18 -0
  122. package/admin/features/updateBackgroundTaskSettings/abstractions.js +6 -0
  123. package/admin/features/updateBackgroundTaskSettings/abstractions.js.map +1 -0
  124. package/admin/features/updateBackgroundTaskSettings/feature.d.ts +3 -0
  125. package/admin/features/updateBackgroundTaskSettings/feature.js +19 -0
  126. package/admin/features/updateBackgroundTaskSettings/feature.js.map +1 -0
  127. package/admin/features/updateBackgroundTaskSettings/index.d.ts +3 -0
  128. package/admin/features/updateBackgroundTaskSettings/index.js +2 -0
  129. package/admin/index.d.ts +2 -0
  130. package/admin/index.js +2 -0
  131. package/admin/permissions.d.ts +12 -0
  132. package/admin/permissions.js +22 -0
  133. package/admin/permissions.js.map +1 -0
  134. package/admin/presentation/BackgroundTaskSettings/BackgroundTaskSettingsPresenter.d.ts +21 -0
  135. package/admin/presentation/BackgroundTaskSettings/BackgroundTaskSettingsPresenter.js +86 -0
  136. package/admin/presentation/BackgroundTaskSettings/BackgroundTaskSettingsPresenter.js.map +1 -0
  137. package/admin/presentation/BackgroundTaskSettings/abstractions.d.ts +16 -0
  138. package/admin/presentation/BackgroundTaskSettings/abstractions.js +5 -0
  139. package/admin/presentation/BackgroundTaskSettings/abstractions.js.map +1 -0
  140. package/admin/presentation/BackgroundTaskSettings/components/BackgroundTaskSettingsView.d.ts +2 -0
  141. package/admin/presentation/BackgroundTaskSettings/components/BackgroundTaskSettingsView.js +56 -0
  142. package/admin/presentation/BackgroundTaskSettings/components/BackgroundTaskSettingsView.js.map +1 -0
  143. package/admin/presentation/BackgroundTaskSettings/feature.d.ts +3 -0
  144. package/admin/presentation/BackgroundTaskSettings/feature.js +17 -0
  145. package/admin/presentation/BackgroundTaskSettings/feature.js.map +1 -0
  146. package/admin/presentation/BackgroundTaskSettings/index.d.ts +2 -0
  147. package/admin/presentation/BackgroundTaskSettings/index.js +2 -0
  148. package/admin/presentation/TaskDefinitions/TaskDefinitionsPresenter.d.ts +14 -0
  149. package/admin/presentation/TaskDefinitions/TaskDefinitionsPresenter.js +41 -0
  150. package/admin/presentation/TaskDefinitions/TaskDefinitionsPresenter.js.map +1 -0
  151. package/admin/presentation/TaskDefinitions/abstractions.d.ts +14 -0
  152. package/admin/presentation/TaskDefinitions/abstractions.js +5 -0
  153. package/admin/presentation/TaskDefinitions/abstractions.js.map +1 -0
  154. package/admin/presentation/TaskDefinitions/components/TaskDefinitionsView.d.ts +2 -0
  155. package/admin/presentation/TaskDefinitions/components/TaskDefinitionsView.js +76 -0
  156. package/admin/presentation/TaskDefinitions/components/TaskDefinitionsView.js.map +1 -0
  157. package/admin/presentation/TaskDefinitions/components/TaskExecutionsButton.d.ts +2 -0
  158. package/admin/presentation/TaskDefinitions/components/TaskExecutionsButton.js +16 -0
  159. package/admin/presentation/TaskDefinitions/components/TaskExecutionsButton.js.map +1 -0
  160. package/admin/presentation/TaskDefinitions/feature.d.ts +3 -0
  161. package/admin/presentation/TaskDefinitions/feature.js +17 -0
  162. package/admin/presentation/TaskDefinitions/feature.js.map +1 -0
  163. package/admin/presentation/TaskDefinitions/index.d.ts +2 -0
  164. package/admin/presentation/TaskDefinitions/index.js +2 -0
  165. package/admin/presentation/TaskDetail/TaskDetailPresenter.d.ts +24 -0
  166. package/admin/presentation/TaskDetail/TaskDetailPresenter.js +87 -0
  167. package/admin/presentation/TaskDetail/TaskDetailPresenter.js.map +1 -0
  168. package/admin/presentation/TaskDetail/abstractions.d.ts +24 -0
  169. package/admin/presentation/TaskDetail/abstractions.js +5 -0
  170. package/admin/presentation/TaskDetail/abstractions.js.map +1 -0
  171. package/admin/presentation/TaskDetail/components/TaskDetailDrawer.d.ts +11 -0
  172. package/admin/presentation/TaskDetail/components/TaskDetailDrawer.js +270 -0
  173. package/admin/presentation/TaskDetail/components/TaskDetailDrawer.js.map +1 -0
  174. package/admin/presentation/TaskDetail/feature.d.ts +3 -0
  175. package/admin/presentation/TaskDetail/feature.js +17 -0
  176. package/admin/presentation/TaskDetail/feature.js.map +1 -0
  177. package/admin/presentation/TaskDetail/index.d.ts +2 -0
  178. package/admin/presentation/TaskDetail/index.js +2 -0
  179. package/admin/presentation/TaskExecutions/TaskExecutionsDataSource.d.ts +15 -0
  180. package/admin/presentation/TaskExecutions/TaskExecutionsDataSource.js +91 -0
  181. package/admin/presentation/TaskExecutions/TaskExecutionsDataSource.js.map +1 -0
  182. package/admin/presentation/TaskExecutions/TaskExecutionsPresenter.d.ts +54 -0
  183. package/admin/presentation/TaskExecutions/TaskExecutionsPresenter.js +109 -0
  184. package/admin/presentation/TaskExecutions/TaskExecutionsPresenter.js.map +1 -0
  185. package/admin/presentation/TaskExecutions/abstractions.d.ts +28 -0
  186. package/admin/presentation/TaskExecutions/abstractions.js +5 -0
  187. package/admin/presentation/TaskExecutions/abstractions.js.map +1 -0
  188. package/admin/presentation/TaskExecutions/components/TaskDefinitionsButton.d.ts +2 -0
  189. package/admin/presentation/TaskExecutions/components/TaskDefinitionsButton.js +16 -0
  190. package/admin/presentation/TaskExecutions/components/TaskDefinitionsButton.js.map +1 -0
  191. package/admin/presentation/TaskExecutions/components/TaskExecutionsView.d.ts +2 -0
  192. package/admin/presentation/TaskExecutions/components/TaskExecutionsView.js +341 -0
  193. package/admin/presentation/TaskExecutions/components/TaskExecutionsView.js.map +1 -0
  194. package/admin/presentation/TaskExecutions/feature.d.ts +3 -0
  195. package/admin/presentation/TaskExecutions/feature.js +17 -0
  196. package/admin/presentation/TaskExecutions/feature.js.map +1 -0
  197. package/admin/presentation/TaskExecutions/index.d.ts +2 -0
  198. package/admin/presentation/TaskExecutions/index.js +2 -0
  199. package/admin/presentation/security/HasPermission.d.ts +12 -0
  200. package/admin/presentation/security/HasPermission.js +6 -0
  201. package/admin/presentation/security/HasPermission.js.map +1 -0
  202. package/admin/presentation/security/usePermissions.d.ts +12 -0
  203. package/admin/presentation/security/usePermissions.js +6 -0
  204. package/admin/presentation/security/usePermissions.js.map +1 -0
  205. package/admin/routes.d.ts +6 -0
  206. package/admin/routes.js +18 -0
  207. package/admin/routes.js.map +1 -0
  208. package/admin/shared/types.d.ts +18 -0
  209. package/admin/shared/types.js +0 -0
  210. package/api/BackgroundTasksFeature.d.ts +4 -0
  211. package/api/BackgroundTasksFeature.js +79 -0
  212. package/api/BackgroundTasksFeature.js.map +1 -0
  213. package/api/abstractions/Timer.d.ts +1 -0
  214. package/api/abstractions/Timer.js +0 -0
  215. package/api/abstractions/index.d.ts +1 -0
  216. package/api/abstractions/index.js +1 -0
  217. package/api/crud/TaskLogPrivateModel.d.ts +9 -0
  218. package/api/crud/TaskLogPrivateModel.js +41 -0
  219. package/api/crud/TaskLogPrivateModel.js.map +1 -0
  220. package/api/crud/TaskPrivateModel.d.ts +9 -0
  221. package/api/crud/TaskPrivateModel.js +56 -0
  222. package/api/crud/TaskPrivateModel.js.map +1 -0
  223. package/api/decorators/SelfCleaningTaskHandlerDecorator.d.ts +33 -0
  224. package/api/decorators/SelfCleaningTaskHandlerDecorator.js +69 -0
  225. package/api/decorators/SelfCleaningTaskHandlerDecorator.js.map +1 -0
  226. package/api/decorators/TaskDefinitionDefaultsDecorator.d.ts +27 -0
  227. package/api/decorators/TaskDefinitionDefaultsDecorator.js +47 -0
  228. package/api/decorators/TaskDefinitionDefaultsDecorator.js.map +1 -0
  229. package/api/domain/BackgroundTaskSettings.d.ts +3 -0
  230. package/api/domain/BackgroundTaskSettings.js +0 -0
  231. package/api/domain/TaskService.d.ts +12 -0
  232. package/api/domain/TaskService.js +5 -0
  233. package/api/domain/TaskService.js.map +1 -0
  234. package/api/domain/constants.d.ts +3 -0
  235. package/api/domain/constants.js +6 -0
  236. package/api/domain/constants.js.map +1 -0
  237. package/api/domain/errors.d.ts +61 -0
  238. package/api/domain/errors.js +109 -0
  239. package/api/domain/errors.js.map +1 -0
  240. package/api/domain/task/TaskLogModelProvider.d.ts +12 -0
  241. package/api/domain/task/TaskLogModelProvider.js +23 -0
  242. package/api/domain/task/TaskLogModelProvider.js.map +1 -0
  243. package/api/domain/task/TaskLogsRepository.d.ts +34 -0
  244. package/api/domain/task/TaskLogsRepository.js +146 -0
  245. package/api/domain/task/TaskLogsRepository.js.map +1 -0
  246. package/api/domain/task/TaskModelProvider.d.ts +12 -0
  247. package/api/domain/task/TaskModelProvider.js +23 -0
  248. package/api/domain/task/TaskModelProvider.js.map +1 -0
  249. package/api/domain/task/TasksRepository.d.ts +37 -0
  250. package/api/domain/task/TasksRepository.js +126 -0
  251. package/api/domain/task/TasksRepository.js.map +1 -0
  252. package/api/domain/task/abstractions.d.ts +50 -0
  253. package/api/domain/task/abstractions.js +8 -0
  254. package/api/domain/task/abstractions.js.map +1 -0
  255. package/api/domain/task/createRevisionId.d.ts +1 -0
  256. package/api/domain/task/createRevisionId.js +8 -0
  257. package/api/domain/task/createRevisionId.js.map +1 -0
  258. package/api/domain/task/entryToTask.d.ts +3 -0
  259. package/api/domain/task/entryToTask.js +20 -0
  260. package/api/domain/task/entryToTask.js.map +1 -0
  261. package/api/domain/task/entryToTaskLog.d.ts +3 -0
  262. package/api/domain/task/entryToTaskLog.js +12 -0
  263. package/api/domain/task/entryToTaskLog.js.map +1 -0
  264. package/api/events/TaskAfterCreateEvent.d.ts +6 -0
  265. package/api/events/TaskAfterCreateEvent.js +13 -0
  266. package/api/events/TaskAfterCreateEvent.js.map +1 -0
  267. package/api/events/TaskAfterDeleteEvent.d.ts +6 -0
  268. package/api/events/TaskAfterDeleteEvent.js +13 -0
  269. package/api/events/TaskAfterDeleteEvent.js.map +1 -0
  270. package/api/events/TaskAfterUpdateEvent.d.ts +6 -0
  271. package/api/events/TaskAfterUpdateEvent.js +13 -0
  272. package/api/events/TaskAfterUpdateEvent.js.map +1 -0
  273. package/api/events/TaskBeforeCreateEvent.d.ts +6 -0
  274. package/api/events/TaskBeforeCreateEvent.js +13 -0
  275. package/api/events/TaskBeforeCreateEvent.js.map +1 -0
  276. package/api/events/TaskBeforeDeleteEvent.d.ts +6 -0
  277. package/api/events/TaskBeforeDeleteEvent.js +13 -0
  278. package/api/events/TaskBeforeDeleteEvent.js.map +1 -0
  279. package/api/events/TaskBeforeUpdateEvent.d.ts +6 -0
  280. package/api/events/TaskBeforeUpdateEvent.js +13 -0
  281. package/api/events/TaskBeforeUpdateEvent.js.map +1 -0
  282. package/api/events/abstractions.d.ts +53 -0
  283. package/api/events/abstractions.js +10 -0
  284. package/api/events/abstractions.js.map +1 -0
  285. package/api/events/index.d.ts +7 -0
  286. package/api/events/index.js +7 -0
  287. package/api/features/AbortTask/AbortTaskUseCase.d.ts +9 -0
  288. package/api/features/AbortTask/AbortTaskUseCase.js +12 -0
  289. package/api/features/AbortTask/AbortTaskUseCase.js.map +1 -0
  290. package/api/features/AbortTask/abstractions.d.ts +25 -0
  291. package/api/features/AbortTask/abstractions.js +5 -0
  292. package/api/features/AbortTask/abstractions.js.map +1 -0
  293. package/api/features/AbortTask/feature.d.ts +4 -0
  294. package/api/features/AbortTask/feature.js +13 -0
  295. package/api/features/AbortTask/feature.js.map +1 -0
  296. package/api/features/AbortTask/index.d.ts +2 -0
  297. package/api/features/AbortTask/index.js +2 -0
  298. package/api/features/BackgroundTaskPermissions/abstractions.d.ts +17 -0
  299. package/api/features/BackgroundTaskPermissions/abstractions.js +6 -0
  300. package/api/features/BackgroundTaskPermissions/abstractions.js.map +1 -0
  301. package/api/features/BackgroundTaskPermissions/feature.d.ts +4 -0
  302. package/api/features/BackgroundTaskPermissions/feature.js +7 -0
  303. package/api/features/BackgroundTaskPermissions/feature.js.map +1 -0
  304. package/api/features/BackgroundTaskPermissions/index.d.ts +2 -0
  305. package/api/features/BackgroundTaskPermissions/index.js +2 -0
  306. package/api/features/CleanupTaskSubtree/CleanupTaskSubtreeUseCase.d.ts +27 -0
  307. package/api/features/CleanupTaskSubtree/CleanupTaskSubtreeUseCase.js +117 -0
  308. package/api/features/CleanupTaskSubtree/CleanupTaskSubtreeUseCase.js.map +1 -0
  309. package/api/features/CleanupTaskSubtree/abstractions.d.ts +7 -0
  310. package/api/features/CleanupTaskSubtree/abstractions.js +5 -0
  311. package/api/features/CleanupTaskSubtree/abstractions.js.map +1 -0
  312. package/api/features/CleanupTaskSubtree/feature.d.ts +4 -0
  313. package/api/features/CleanupTaskSubtree/feature.js +11 -0
  314. package/api/features/CleanupTaskSubtree/feature.js.map +1 -0
  315. package/api/features/CleanupTaskSubtree/index.d.ts +2 -0
  316. package/api/features/CleanupTaskSubtree/index.js +2 -0
  317. package/api/features/CreateTask/CreateTaskUseCase.d.ts +17 -0
  318. package/api/features/CreateTask/CreateTaskUseCase.js +56 -0
  319. package/api/features/CreateTask/CreateTaskUseCase.js.map +1 -0
  320. package/api/features/CreateTask/abstractions.d.ts +21 -0
  321. package/api/features/CreateTask/abstractions.js +5 -0
  322. package/api/features/CreateTask/abstractions.js.map +1 -0
  323. package/api/features/CreateTask/feature.d.ts +4 -0
  324. package/api/features/CreateTask/feature.js +11 -0
  325. package/api/features/CreateTask/feature.js.map +1 -0
  326. package/api/features/CreateTask/index.d.ts +2 -0
  327. package/api/features/CreateTask/index.js +2 -0
  328. package/api/features/CreateTaskLog/CreateTaskLogUseCase.d.ts +13 -0
  329. package/api/features/CreateTaskLog/CreateTaskLogUseCase.js +19 -0
  330. package/api/features/CreateTaskLog/CreateTaskLogUseCase.js.map +1 -0
  331. package/api/features/CreateTaskLog/abstractions.d.ts +16 -0
  332. package/api/features/CreateTaskLog/abstractions.js +5 -0
  333. package/api/features/CreateTaskLog/abstractions.js.map +1 -0
  334. package/api/features/CreateTaskLog/feature.d.ts +4 -0
  335. package/api/features/CreateTaskLog/feature.js +11 -0
  336. package/api/features/CreateTaskLog/feature.js.map +1 -0
  337. package/api/features/CreateTaskLog/index.d.ts +2 -0
  338. package/api/features/CreateTaskLog/index.js +2 -0
  339. package/api/features/DeleteTask/DeleteTaskUseCase.d.ts +14 -0
  340. package/api/features/DeleteTask/DeleteTaskUseCase.js +34 -0
  341. package/api/features/DeleteTask/DeleteTaskUseCase.js.map +1 -0
  342. package/api/features/DeleteTask/abstractions.d.ts +17 -0
  343. package/api/features/DeleteTask/abstractions.js +5 -0
  344. package/api/features/DeleteTask/abstractions.js.map +1 -0
  345. package/api/features/DeleteTask/feature.d.ts +4 -0
  346. package/api/features/DeleteTask/feature.js +11 -0
  347. package/api/features/DeleteTask/feature.js.map +1 -0
  348. package/api/features/DeleteTask/index.d.ts +2 -0
  349. package/api/features/DeleteTask/index.js +2 -0
  350. package/api/features/DeleteTaskLog/DeleteTaskLogUseCase.d.ts +11 -0
  351. package/api/features/DeleteTaskLog/DeleteTaskLogUseCase.js +19 -0
  352. package/api/features/DeleteTaskLog/DeleteTaskLogUseCase.js.map +1 -0
  353. package/api/features/DeleteTaskLog/abstractions.d.ts +14 -0
  354. package/api/features/DeleteTaskLog/abstractions.js +5 -0
  355. package/api/features/DeleteTaskLog/abstractions.js.map +1 -0
  356. package/api/features/DeleteTaskLog/feature.d.ts +4 -0
  357. package/api/features/DeleteTaskLog/feature.js +11 -0
  358. package/api/features/DeleteTaskLog/feature.js.map +1 -0
  359. package/api/features/DeleteTaskLog/index.d.ts +2 -0
  360. package/api/features/DeleteTaskLog/index.js +2 -0
  361. package/api/features/GetBackgroundTaskSettings/GetBackgroundTaskSettingsRepository.d.ts +21 -0
  362. package/api/features/GetBackgroundTaskSettings/GetBackgroundTaskSettingsRepository.js +63 -0
  363. package/api/features/GetBackgroundTaskSettings/GetBackgroundTaskSettingsRepository.js.map +1 -0
  364. package/api/features/GetBackgroundTaskSettings/abstractions.d.ts +13 -0
  365. package/api/features/GetBackgroundTaskSettings/abstractions.js +5 -0
  366. package/api/features/GetBackgroundTaskSettings/abstractions.js.map +1 -0
  367. package/api/features/GetBackgroundTaskSettings/feature.d.ts +4 -0
  368. package/api/features/GetBackgroundTaskSettings/feature.js +11 -0
  369. package/api/features/GetBackgroundTaskSettings/feature.js.map +1 -0
  370. package/api/features/GetBackgroundTaskSettings/index.d.ts +2 -0
  371. package/api/features/GetBackgroundTaskSettings/index.js +2 -0
  372. package/api/features/GetLatestTaskLog/GetLatestTaskLogUseCase.d.ts +11 -0
  373. package/api/features/GetLatestTaskLog/GetLatestTaskLogUseCase.js +19 -0
  374. package/api/features/GetLatestTaskLog/GetLatestTaskLogUseCase.js.map +1 -0
  375. package/api/features/GetLatestTaskLog/abstractions.d.ts +15 -0
  376. package/api/features/GetLatestTaskLog/abstractions.js +5 -0
  377. package/api/features/GetLatestTaskLog/abstractions.js.map +1 -0
  378. package/api/features/GetLatestTaskLog/feature.d.ts +4 -0
  379. package/api/features/GetLatestTaskLog/feature.js +11 -0
  380. package/api/features/GetLatestTaskLog/feature.js.map +1 -0
  381. package/api/features/GetLatestTaskLog/index.d.ts +2 -0
  382. package/api/features/GetLatestTaskLog/index.js +2 -0
  383. package/api/features/GetRunnableTaskDefinition/GetRunnableTaskDefinitionUseCase.d.ts +13 -0
  384. package/api/features/GetRunnableTaskDefinition/GetRunnableTaskDefinitionUseCase.js +51 -0
  385. package/api/features/GetRunnableTaskDefinition/GetRunnableTaskDefinitionUseCase.js.map +1 -0
  386. package/api/features/GetRunnableTaskDefinition/abstractions.d.ts +17 -0
  387. package/api/features/GetRunnableTaskDefinition/abstractions.js +5 -0
  388. package/api/features/GetRunnableTaskDefinition/abstractions.js.map +1 -0
  389. package/api/features/GetRunnableTaskDefinition/feature.d.ts +4 -0
  390. package/api/features/GetRunnableTaskDefinition/feature.js +11 -0
  391. package/api/features/GetRunnableTaskDefinition/feature.js.map +1 -0
  392. package/api/features/GetRunnableTaskDefinition/index.d.ts +2 -0
  393. package/api/features/GetRunnableTaskDefinition/index.js +2 -0
  394. package/api/features/GetTask/GetTaskUseCase.d.ts +13 -0
  395. package/api/features/GetTask/GetTaskUseCase.js +19 -0
  396. package/api/features/GetTask/GetTaskUseCase.js.map +1 -0
  397. package/api/features/GetTask/abstractions.d.ts +17 -0
  398. package/api/features/GetTask/abstractions.js +5 -0
  399. package/api/features/GetTask/abstractions.js.map +1 -0
  400. package/api/features/GetTask/feature.d.ts +4 -0
  401. package/api/features/GetTask/feature.js +11 -0
  402. package/api/features/GetTask/feature.js.map +1 -0
  403. package/api/features/GetTask/index.d.ts +2 -0
  404. package/api/features/GetTask/index.js +2 -0
  405. package/api/features/ListTaskDefinitions/ListTaskDefinitionsUseCase.d.ts +11 -0
  406. package/api/features/ListTaskDefinitions/ListTaskDefinitionsUseCase.js +24 -0
  407. package/api/features/ListTaskDefinitions/ListTaskDefinitionsUseCase.js.map +1 -0
  408. package/api/features/ListTaskDefinitions/abstractions.d.ts +9 -0
  409. package/api/features/ListTaskDefinitions/abstractions.js +5 -0
  410. package/api/features/ListTaskDefinitions/abstractions.js.map +1 -0
  411. package/api/features/ListTaskDefinitions/feature.d.ts +4 -0
  412. package/api/features/ListTaskDefinitions/feature.js +11 -0
  413. package/api/features/ListTaskDefinitions/feature.js.map +1 -0
  414. package/api/features/ListTaskDefinitions/index.d.ts +2 -0
  415. package/api/features/ListTaskDefinitions/index.js +2 -0
  416. package/api/features/ListTaskLogs/ListTaskLogsUseCase.d.ts +12 -0
  417. package/api/features/ListTaskLogs/ListTaskLogsUseCase.js +19 -0
  418. package/api/features/ListTaskLogs/ListTaskLogsUseCase.js.map +1 -0
  419. package/api/features/ListTaskLogs/abstractions.d.ts +15 -0
  420. package/api/features/ListTaskLogs/abstractions.js +5 -0
  421. package/api/features/ListTaskLogs/abstractions.js.map +1 -0
  422. package/api/features/ListTaskLogs/feature.d.ts +4 -0
  423. package/api/features/ListTaskLogs/feature.js +11 -0
  424. package/api/features/ListTaskLogs/feature.js.map +1 -0
  425. package/api/features/ListTaskLogs/index.d.ts +2 -0
  426. package/api/features/ListTaskLogs/index.js +2 -0
  427. package/api/features/ListTasks/ListTasksUseCase.d.ts +13 -0
  428. package/api/features/ListTasks/ListTasksUseCase.js +19 -0
  429. package/api/features/ListTasks/ListTasksUseCase.js.map +1 -0
  430. package/api/features/ListTasks/abstractions.d.ts +19 -0
  431. package/api/features/ListTasks/abstractions.js +5 -0
  432. package/api/features/ListTasks/abstractions.js.map +1 -0
  433. package/api/features/ListTasks/feature.d.ts +4 -0
  434. package/api/features/ListTasks/feature.js +11 -0
  435. package/api/features/ListTasks/feature.js.map +1 -0
  436. package/api/features/ListTasks/index.d.ts +2 -0
  437. package/api/features/ListTasks/index.js +2 -0
  438. package/api/features/ListVisibleTaskDefinitions/ListVisibleTaskDefinitionsUseCase.d.ts +11 -0
  439. package/api/features/ListVisibleTaskDefinitions/ListVisibleTaskDefinitionsUseCase.js +19 -0
  440. package/api/features/ListVisibleTaskDefinitions/ListVisibleTaskDefinitionsUseCase.js.map +1 -0
  441. package/api/features/ListVisibleTaskDefinitions/abstractions.d.ts +9 -0
  442. package/api/features/ListVisibleTaskDefinitions/abstractions.js +5 -0
  443. package/api/features/ListVisibleTaskDefinitions/abstractions.js.map +1 -0
  444. package/api/features/ListVisibleTaskDefinitions/feature.d.ts +4 -0
  445. package/api/features/ListVisibleTaskDefinitions/feature.js +11 -0
  446. package/api/features/ListVisibleTaskDefinitions/feature.js.map +1 -0
  447. package/api/features/ListVisibleTaskDefinitions/index.d.ts +2 -0
  448. package/api/features/ListVisibleTaskDefinitions/index.js +2 -0
  449. package/api/features/TaskController/TaskController.d.ts +49 -0
  450. package/api/features/TaskController/TaskController.js +71 -0
  451. package/api/features/TaskController/TaskController.js.map +1 -0
  452. package/api/features/TaskController/augmentation.d.ts +60 -0
  453. package/api/features/TaskController/augmentation.js +0 -0
  454. package/api/features/TaskController/index.d.ts +2 -0
  455. package/api/features/TaskController/index.js +2 -0
  456. package/api/features/TaskExecutionContext/TaskExecutionContext.d.ts +24 -0
  457. package/api/features/TaskExecutionContext/TaskExecutionContext.js +43 -0
  458. package/api/features/TaskExecutionContext/TaskExecutionContext.js.map +1 -0
  459. package/api/features/TaskExecutionContext/abstractions.d.ts +26 -0
  460. package/api/features/TaskExecutionContext/abstractions.js +5 -0
  461. package/api/features/TaskExecutionContext/abstractions.js.map +1 -0
  462. package/api/features/TaskExecutionContext/feature.d.ts +4 -0
  463. package/api/features/TaskExecutionContext/feature.js +11 -0
  464. package/api/features/TaskExecutionContext/feature.js.map +1 -0
  465. package/api/features/TaskExecutionContext/index.d.ts +1 -0
  466. package/api/features/TaskExecutionContext/index.js +1 -0
  467. package/api/features/TaskHandlerResolver/TaskHandlerResolver.d.ts +12 -0
  468. package/api/features/TaskHandlerResolver/TaskHandlerResolver.js +19 -0
  469. package/api/features/TaskHandlerResolver/TaskHandlerResolver.js.map +1 -0
  470. package/api/features/TaskHandlerResolver/abstractions.d.ts +17 -0
  471. package/api/features/TaskHandlerResolver/abstractions.js +5 -0
  472. package/api/features/TaskHandlerResolver/abstractions.js.map +1 -0
  473. package/api/features/TaskHandlerResolver/feature.d.ts +9 -0
  474. package/api/features/TaskHandlerResolver/feature.js +11 -0
  475. package/api/features/TaskHandlerResolver/feature.js.map +1 -0
  476. package/api/features/TaskHandlerResolver/index.d.ts +2 -0
  477. package/api/features/TaskHandlerResolver/index.js +2 -0
  478. package/api/features/TaskService/BackgroundTaskService.d.ts +42 -0
  479. package/api/features/TaskService/BackgroundTaskService.js +191 -0
  480. package/api/features/TaskService/BackgroundTaskService.js.map +1 -0
  481. package/api/features/TaskService/feature.d.ts +4 -0
  482. package/api/features/TaskService/feature.js +11 -0
  483. package/api/features/TaskService/feature.js.map +1 -0
  484. package/api/features/TaskService/index.d.ts +1 -0
  485. package/api/features/TaskService/index.js +1 -0
  486. package/api/features/TriggerTask/TriggerTaskUseCase.d.ts +9 -0
  487. package/api/features/TriggerTask/TriggerTaskUseCase.js +12 -0
  488. package/api/features/TriggerTask/TriggerTaskUseCase.js.map +1 -0
  489. package/api/features/TriggerTask/abstractions.d.ts +28 -0
  490. package/api/features/TriggerTask/abstractions.js +5 -0
  491. package/api/features/TriggerTask/abstractions.js.map +1 -0
  492. package/api/features/TriggerTask/feature.d.ts +4 -0
  493. package/api/features/TriggerTask/feature.js +13 -0
  494. package/api/features/TriggerTask/feature.js.map +1 -0
  495. package/api/features/TriggerTask/index.d.ts +2 -0
  496. package/api/features/TriggerTask/index.js +2 -0
  497. package/api/features/TriggerVisibleTask/TriggerVisibleTaskUseCase.d.ts +15 -0
  498. package/api/features/TriggerVisibleTask/TriggerVisibleTaskUseCase.js +26 -0
  499. package/api/features/TriggerVisibleTask/TriggerVisibleTaskUseCase.js.map +1 -0
  500. package/api/features/TriggerVisibleTask/abstractions.d.ts +17 -0
  501. package/api/features/TriggerVisibleTask/abstractions.js +5 -0
  502. package/api/features/TriggerVisibleTask/abstractions.js.map +1 -0
  503. package/api/features/TriggerVisibleTask/feature.d.ts +4 -0
  504. package/api/features/TriggerVisibleTask/feature.js +11 -0
  505. package/api/features/TriggerVisibleTask/feature.js.map +1 -0
  506. package/api/features/TriggerVisibleTask/index.d.ts +2 -0
  507. package/api/features/TriggerVisibleTask/index.js +2 -0
  508. package/api/features/UpdateBackgroundTaskSettings/UpdateBackgroundTaskSettingsRepository.d.ts +23 -0
  509. package/api/features/UpdateBackgroundTaskSettings/UpdateBackgroundTaskSettingsRepository.js +67 -0
  510. package/api/features/UpdateBackgroundTaskSettings/UpdateBackgroundTaskSettingsRepository.js.map +1 -0
  511. package/api/features/UpdateBackgroundTaskSettings/UpdateBackgroundTaskSettingsUseCase.d.ts +14 -0
  512. package/api/features/UpdateBackgroundTaskSettings/UpdateBackgroundTaskSettingsUseCase.js +27 -0
  513. package/api/features/UpdateBackgroundTaskSettings/UpdateBackgroundTaskSettingsUseCase.js.map +1 -0
  514. package/api/features/UpdateBackgroundTaskSettings/abstractions.d.ts +26 -0
  515. package/api/features/UpdateBackgroundTaskSettings/abstractions.js +6 -0
  516. package/api/features/UpdateBackgroundTaskSettings/abstractions.js.map +1 -0
  517. package/api/features/UpdateBackgroundTaskSettings/feature.d.ts +4 -0
  518. package/api/features/UpdateBackgroundTaskSettings/feature.js +13 -0
  519. package/api/features/UpdateBackgroundTaskSettings/feature.js.map +1 -0
  520. package/api/features/UpdateBackgroundTaskSettings/index.d.ts +2 -0
  521. package/api/features/UpdateBackgroundTaskSettings/index.js +2 -0
  522. package/api/features/UpdateBackgroundTaskSettings/schema.d.ts +4 -0
  523. package/api/features/UpdateBackgroundTaskSettings/schema.js +8 -0
  524. package/api/features/UpdateBackgroundTaskSettings/schema.js.map +1 -0
  525. package/api/features/UpdateTask/UpdateTaskUseCase.d.ts +17 -0
  526. package/api/features/UpdateTask/UpdateTaskUseCase.js +36 -0
  527. package/api/features/UpdateTask/UpdateTaskUseCase.js.map +1 -0
  528. package/api/features/UpdateTask/abstractions.d.ts +22 -0
  529. package/api/features/UpdateTask/abstractions.js +5 -0
  530. package/api/features/UpdateTask/abstractions.js.map +1 -0
  531. package/api/features/UpdateTask/feature.d.ts +4 -0
  532. package/api/features/UpdateTask/feature.js +11 -0
  533. package/api/features/UpdateTask/feature.js.map +1 -0
  534. package/api/features/UpdateTask/index.d.ts +2 -0
  535. package/api/features/UpdateTask/index.js +2 -0
  536. package/api/features/UpdateTaskLog/UpdateTaskLogUseCase.d.ts +12 -0
  537. package/api/features/UpdateTaskLog/UpdateTaskLogUseCase.js +19 -0
  538. package/api/features/UpdateTaskLog/UpdateTaskLogUseCase.js.map +1 -0
  539. package/api/features/UpdateTaskLog/abstractions.d.ts +16 -0
  540. package/api/features/UpdateTaskLog/abstractions.js +5 -0
  541. package/api/features/UpdateTaskLog/abstractions.js.map +1 -0
  542. package/api/features/UpdateTaskLog/feature.d.ts +4 -0
  543. package/api/features/UpdateTaskLog/feature.js +11 -0
  544. package/api/features/UpdateTaskLog/feature.js.map +1 -0
  545. package/api/features/UpdateTaskLog/index.d.ts +2 -0
  546. package/api/features/UpdateTaskLog/index.js +2 -0
  547. package/api/global.d.ts +1 -0
  548. package/api/global.js +1 -0
  549. package/api/graphql/BackgroundTasksGraphQLSchema.d.ts +29 -0
  550. package/api/graphql/BackgroundTasksGraphQLSchema.js +462 -0
  551. package/api/graphql/BackgroundTasksGraphQLSchema.js.map +1 -0
  552. package/api/graphql/checkPermissions.d.ts +7 -0
  553. package/api/graphql/checkPermissions.js +22 -0
  554. package/api/graphql/checkPermissions.js.map +1 -0
  555. package/api/graphql/utils.d.ts +9 -0
  556. package/api/graphql/utils.js +20 -0
  557. package/api/graphql/utils.js.map +1 -0
  558. package/api/handler/types.d.ts +21 -0
  559. package/api/handler/types.js +0 -0
  560. package/api/index.d.ts +21 -0
  561. package/api/index.js +20 -0
  562. package/api/models/BackgroundTaskSettingsModel.d.ts +8 -0
  563. package/api/models/BackgroundTaskSettingsModel.js +27 -0
  564. package/api/models/BackgroundTaskSettingsModel.js.map +1 -0
  565. package/api/permissions.d.ts +12 -0
  566. package/api/permissions.js +22 -0
  567. package/api/permissions.js.map +1 -0
  568. package/api/response/DatabaseResponse.d.ts +12 -0
  569. package/api/response/DatabaseResponse.js +127 -0
  570. package/api/response/DatabaseResponse.js.map +1 -0
  571. package/api/response/Response.d.ts +14 -0
  572. package/api/response/Response.js +91 -0
  573. package/api/response/Response.js.map +1 -0
  574. package/api/response/ResponseAbortedResult.d.ts +9 -0
  575. package/api/response/ResponseAbortedResult.js +12 -0
  576. package/api/response/ResponseAbortedResult.js.map +1 -0
  577. package/api/response/ResponseContinueResult.d.ts +17 -0
  578. package/api/response/ResponseContinueResult.js +16 -0
  579. package/api/response/ResponseContinueResult.js.map +1 -0
  580. package/api/response/ResponseDoneResult.d.ts +11 -0
  581. package/api/response/ResponseDoneResult.js +14 -0
  582. package/api/response/ResponseDoneResult.js.map +1 -0
  583. package/api/response/ResponseErrorResult.d.ts +10 -0
  584. package/api/response/ResponseErrorResult.js +13 -0
  585. package/api/response/ResponseErrorResult.js.map +1 -0
  586. package/api/response/TaskResponse.d.ts +12 -0
  587. package/api/response/TaskResponse.js +53 -0
  588. package/api/response/TaskResponse.js.map +1 -0
  589. package/api/response/abstractions/Response.d.ts +25 -0
  590. package/api/response/abstractions/Response.js +0 -0
  591. package/api/response/abstractions/ResponseAbortedResult.d.ts +5 -0
  592. package/api/response/abstractions/ResponseAbortedResult.js +0 -0
  593. package/api/response/abstractions/ResponseBaseResult.d.ts +7 -0
  594. package/api/response/abstractions/ResponseBaseResult.js +0 -0
  595. package/api/response/abstractions/ResponseContinueResult.d.ts +21 -0
  596. package/api/response/abstractions/ResponseContinueResult.js +0 -0
  597. package/api/response/abstractions/ResponseDoneResult.d.ts +13 -0
  598. package/api/response/abstractions/ResponseDoneResult.js +0 -0
  599. package/api/response/abstractions/ResponseErrorResult.d.ts +18 -0
  600. package/api/response/abstractions/ResponseErrorResult.js +0 -0
  601. package/api/response/abstractions/TaskResponse.d.ts +16 -0
  602. package/api/response/abstractions/TaskResponse.js +0 -0
  603. package/api/response/abstractions/index.d.ts +7 -0
  604. package/api/response/abstractions/index.js +7 -0
  605. package/api/response/index.d.ts +7 -0
  606. package/api/response/index.js +7 -0
  607. package/api/runner/TaskControl.d.ts +48 -0
  608. package/api/runner/TaskControl.js +186 -0
  609. package/api/runner/TaskControl.js.map +1 -0
  610. package/api/runner/TaskEventValidation.d.ts +5 -0
  611. package/api/runner/TaskEventValidation.js +20 -0
  612. package/api/runner/TaskEventValidation.js.map +1 -0
  613. package/api/runner/TaskManager.d.ts +22 -0
  614. package/api/runner/TaskManager.js +83 -0
  615. package/api/runner/TaskManager.js.map +1 -0
  616. package/api/runner/TaskManagerStore.d.ts +57 -0
  617. package/api/runner/TaskManagerStore.js +127 -0
  618. package/api/runner/TaskManagerStore.js.map +1 -0
  619. package/api/runner/TaskRunner.d.ts +25 -0
  620. package/api/runner/TaskRunner.js +86 -0
  621. package/api/runner/TaskRunner.js.map +1 -0
  622. package/api/runner/abstractions/TaskControl.d.ts +10 -0
  623. package/api/runner/abstractions/TaskControl.js +0 -0
  624. package/api/runner/abstractions/TaskEventValidation.d.ts +5 -0
  625. package/api/runner/abstractions/TaskEventValidation.js +0 -0
  626. package/api/runner/abstractions/TaskManager.d.ts +5 -0
  627. package/api/runner/abstractions/TaskManager.js +0 -0
  628. package/api/runner/abstractions/TaskManagerStore.d.ts +92 -0
  629. package/api/runner/abstractions/TaskManagerStore.js +0 -0
  630. package/api/runner/abstractions/TaskRunner.d.ts +13 -0
  631. package/api/runner/abstractions/TaskRunner.js +0 -0
  632. package/api/runner/abstractions/index.d.ts +5 -0
  633. package/api/runner/abstractions/index.js +5 -0
  634. package/api/runner/index.d.ts +1 -0
  635. package/api/runner/index.js +1 -0
  636. package/api/tasks/testingRunTask.d.ts +19 -0
  637. package/api/tasks/testingRunTask.js +25 -0
  638. package/api/tasks/testingRunTask.js.map +1 -0
  639. package/api/types.d.ts +120 -0
  640. package/api/types.js +20 -0
  641. package/api/types.js.map +1 -0
  642. package/api/utils/ObjectUpdater.d.ts +8 -0
  643. package/api/utils/ObjectUpdater.js +33 -0
  644. package/api/utils/ObjectUpdater.js.map +1 -0
  645. package/api/utils/getErrorProperties.d.ts +2 -0
  646. package/api/utils/getErrorProperties.js +9 -0
  647. package/api/utils/getErrorProperties.js.map +1 -0
  648. package/api/utils/getObjectProperties.d.ts +8 -0
  649. package/api/utils/getObjectProperties.js +11 -0
  650. package/api/utils/getObjectProperties.js.map +1 -0
  651. package/api/utils/index.d.ts +3 -0
  652. package/api/utils/index.js +3 -0
  653. package/api/utils/normalizeSelfCleanup.d.ts +2 -0
  654. package/api/utils/normalizeSelfCleanup.js +16 -0
  655. package/api/utils/normalizeSelfCleanup.js.map +1 -0
  656. package/index.d.ts +2 -0
  657. package/index.js +2 -0
  658. package/package.json +65 -0
  659. package/testing/index.d.ts +3 -0
  660. package/testing/index.js +2 -0
  661. package/testing/mockTaskTriggerTransportPlugin.d.ts +2 -0
  662. package/testing/mockTaskTriggerTransportPlugin.js +18 -0
  663. package/testing/mockTaskTriggerTransportPlugin.js.map +1 -0
  664. package/testing/runner.d.ts +19 -0
  665. package/testing/runner.js +44 -0
  666. package/testing/runner.js.map +1 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"admin/presentation/TaskDetail/TaskDetailPresenter.js","sources":["../../../../src/admin/presentation/TaskDetail/TaskDetailPresenter.ts"],"sourcesContent":["import { makeAutoObservable, runInAction, computed } from \"mobx\";\nimport type { Task, TaskLog } from \"~/admin/shared/types.js\";\nimport {\n TaskDetailPresenter as Abstraction,\n type ITaskDetailPresenter,\n type ITaskDetailViewModel\n} from \"./abstractions.js\";\nimport { GetTaskUseCase } from \"~/admin/features/getTask/abstractions.js\";\nimport { ListLogsUseCase } from \"~/admin/features/listLogs/abstractions.js\";\n\nclass TaskDetailPresenterImpl implements ITaskDetailPresenter {\n private _task: Task | null = null;\n private _loading = false;\n private _logs: TaskLog[] = [];\n private _logsLoading = false;\n private _logsCursor: string | null = null;\n private _logsHasMore = false;\n private _logsTotalCount = 0;\n private _taskId: string | null = null;\n\n constructor(\n private readonly getTaskUseCase: GetTaskUseCase.Interface,\n private readonly listLogsUseCase: ListLogsUseCase.Interface\n ) {\n makeAutoObservable(this, { vm: computed });\n }\n\n get vm(): ITaskDetailViewModel {\n return {\n task: this._task,\n loading: this._loading,\n logs: {\n rows: this._logs,\n pagination: {\n totalCount: this._logsTotalCount,\n loading: this._logsLoading,\n hasMore: this._logsHasMore\n }\n }\n };\n }\n\n async init(taskId: string): Promise<void> {\n this._taskId = taskId;\n this._loading = true;\n this._logs = [];\n this._logsCursor = null;\n this._logsHasMore = false;\n this._logsTotalCount = 0;\n\n const task = await this.getTaskUseCase.execute(taskId);\n\n runInAction(() => {\n this._task = task;\n this._loading = false;\n });\n\n await this.fetchLogs();\n }\n\n async loadMore(): Promise<void> {\n if (!this._logsHasMore || this._logsLoading) {\n return;\n }\n\n await this.fetchLogs(this._logsCursor);\n }\n\n private async fetchLogs(after?: string | null): Promise<void> {\n this._logsLoading = true;\n\n const result = await this.listLogsUseCase.execute({\n where: { task: this._taskId! },\n sort: [\"createdOn_DESC\"],\n limit: 50,\n after: after || undefined\n });\n\n runInAction(() => {\n if (after) {\n this._logs = [...this._logs, ...result.items];\n } else {\n this._logs = result.items;\n }\n this._logsCursor = result.meta.cursor;\n this._logsHasMore = result.meta.hasMoreItems;\n this._logsTotalCount = result.meta.totalCount;\n this._logsLoading = false;\n });\n }\n}\n\nexport const TaskDetailPresenter = Abstraction.createImplementation({\n implementation: TaskDetailPresenterImpl,\n dependencies: [GetTaskUseCase, ListLogsUseCase]\n});\n"],"names":["TaskDetailPresenterImpl","getTaskUseCase","listLogsUseCase","makeAutoObservable","computed","taskId","task","runInAction","after","result","undefined","TaskDetailPresenter","Abstraction","GetTaskUseCase","ListLogsUseCase"],"mappings":";;;;AAUA,MAAMA;IAUF,YACqBC,cAAwC,EACxCC,eAA0C,CAC7D;aAFmBD,cAAc,GAAdA;aACAC,eAAe,GAAfA;aAXb,KAAK,GAAgB;aACrB,QAAQ,GAAG;aACX,KAAK,GAAc,EAAE;aACrB,YAAY,GAAG;aACf,WAAW,GAAkB;aAC7B,YAAY,GAAG;aACf,eAAe,GAAG;aAClB,OAAO,GAAkB;QAM7BC,mBAAmB,IAAI,EAAE;YAAE,IAAIC;QAAS;IAC5C;IAEA,IAAI,KAA2B;QAC3B,OAAO;YACH,MAAM,IAAI,CAAC,KAAK;YAChB,SAAS,IAAI,CAAC,QAAQ;YACtB,MAAM;gBACF,MAAM,IAAI,CAAC,KAAK;gBAChB,YAAY;oBACR,YAAY,IAAI,CAAC,eAAe;oBAChC,SAAS,IAAI,CAAC,YAAY;oBAC1B,SAAS,IAAI,CAAC,YAAY;gBAC9B;YACJ;QACJ;IACJ;IAEA,MAAM,KAAKC,MAAc,EAAiB;QACtC,IAAI,CAAC,OAAO,GAAGA;QACf,IAAI,CAAC,QAAQ,GAAG;QAChB,IAAI,CAAC,KAAK,GAAG,EAAE;QACf,IAAI,CAAC,WAAW,GAAG;QACnB,IAAI,CAAC,YAAY,GAAG;QACpB,IAAI,CAAC,eAAe,GAAG;QAEvB,MAAMC,OAAO,MAAM,IAAI,CAAC,cAAc,CAAC,OAAO,CAACD;QAE/CE,YAAY;YACR,IAAI,CAAC,KAAK,GAAGD;YACb,IAAI,CAAC,QAAQ,GAAG;QACpB;QAEA,MAAM,IAAI,CAAC,SAAS;IACxB;IAEA,MAAM,WAA0B;QAC5B,IAAI,CAAC,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,YAAY,EACvC;QAGJ,MAAM,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,WAAW;IACzC;IAEA,MAAc,UAAUE,KAAqB,EAAiB;QAC1D,IAAI,CAAC,YAAY,GAAG;QAEpB,MAAMC,SAAS,MAAM,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC;YAC9C,OAAO;gBAAE,MAAM,IAAI,CAAC,OAAO;YAAE;YAC7B,MAAM;gBAAC;aAAiB;YACxB,OAAO;YACP,OAAOD,SAASE;QACpB;QAEAH,YAAY;YACR,IAAIC,OACA,IAAI,CAAC,KAAK,GAAG;mBAAI,IAAI,CAAC,KAAK;mBAAKC,OAAO,KAAK;aAAC;iBAE7C,IAAI,CAAC,KAAK,GAAGA,OAAO,KAAK;YAE7B,IAAI,CAAC,WAAW,GAAGA,OAAO,IAAI,CAAC,MAAM;YACrC,IAAI,CAAC,YAAY,GAAGA,OAAO,IAAI,CAAC,YAAY;YAC5C,IAAI,CAAC,eAAe,GAAGA,OAAO,IAAI,CAAC,UAAU;YAC7C,IAAI,CAAC,YAAY,GAAG;QACxB;IACJ;AACJ;AAEO,MAAME,0CAAsBC,oBAAAA,oBAAgC,CAAC;IAChE,gBAAgBZ;IAChB,cAAc;QAACa;QAAgBC;KAAgB;AACnD"}
@@ -0,0 +1,24 @@
1
+ import type { Task, TaskLog } from "../../../admin/shared/types.js";
2
+ export interface ILogsViewModel {
3
+ rows: TaskLog[];
4
+ pagination: {
5
+ totalCount: number;
6
+ loading: boolean;
7
+ hasMore: boolean;
8
+ };
9
+ }
10
+ export interface ITaskDetailViewModel {
11
+ task: Task | null;
12
+ loading: boolean;
13
+ logs: ILogsViewModel;
14
+ }
15
+ export interface ITaskDetailPresenter {
16
+ vm: ITaskDetailViewModel;
17
+ init(taskId: string): void;
18
+ loadMore(): void;
19
+ }
20
+ export declare const TaskDetailPresenter: import("@webiny/di").Abstraction<ITaskDetailPresenter>;
21
+ export declare namespace TaskDetailPresenter {
22
+ type Interface = ITaskDetailPresenter;
23
+ type ViewModel = ITaskDetailViewModel;
24
+ }
@@ -0,0 +1,5 @@
1
+ import { createAbstraction } from "@webiny/feature/admin";
2
+ const TaskDetailPresenter = createAbstraction("TaskDetailPresenter");
3
+ export { TaskDetailPresenter };
4
+
5
+ //# sourceMappingURL=abstractions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"admin/presentation/TaskDetail/abstractions.js","sources":["../../../../src/admin/presentation/TaskDetail/abstractions.ts"],"sourcesContent":["import { createAbstraction } from \"@webiny/feature/admin\";\nimport type { Task, TaskLog } from \"~/admin/shared/types.js\";\n\nexport interface ILogsViewModel {\n rows: TaskLog[];\n pagination: {\n totalCount: number;\n loading: boolean;\n hasMore: boolean;\n };\n}\n\nexport interface ITaskDetailViewModel {\n task: Task | null;\n loading: boolean;\n logs: ILogsViewModel;\n}\n\nexport interface ITaskDetailPresenter {\n vm: ITaskDetailViewModel;\n init(taskId: string): void;\n loadMore(): void;\n}\n\nexport const TaskDetailPresenter = createAbstraction<ITaskDetailPresenter>(\"TaskDetailPresenter\");\n\nexport namespace TaskDetailPresenter {\n export type Interface = ITaskDetailPresenter;\n export type ViewModel = ITaskDetailViewModel;\n}\n"],"names":["TaskDetailPresenter","createAbstraction"],"mappings":";AAwBO,MAAMA,sBAAsBC,kBAAwC"}
@@ -0,0 +1,11 @@
1
+ import React from "react";
2
+ import type { Task } from "../../../../admin/shared/types.js";
3
+ interface TaskDetailDrawerProps {
4
+ task: Task;
5
+ open: boolean;
6
+ onClose: () => void;
7
+ onAbort: (id: string) => Promise<void>;
8
+ onDelete: (id: string) => Promise<void>;
9
+ }
10
+ export declare const TaskDetailDrawer: (props: TaskDetailDrawerProps) => React.JSX.Element;
11
+ export {};
@@ -0,0 +1,270 @@
1
+ import react, { useEffect, useMemo, useState } from "react";
2
+ import { observer } from "mobx-react-lite";
3
+ import { DiContainerProvider, useContainer, useFeature } from "@webiny/app";
4
+ import { Button, CodeEditor, Drawer, Grid, Heading, Separator, Tag, Text, TimeAgo } from "@webiny/admin-ui";
5
+ import { useConfirmationDialog } from "@webiny/app-admin/hooks/index.js";
6
+ import { ReactComponent } from "@webiny/icons/stop_circle.svg";
7
+ import { ReactComponent as delete_svg_ReactComponent } from "@webiny/icons/delete.svg";
8
+ import { ReactComponent as expand_more_svg_ReactComponent } from "@webiny/icons/expand_more.svg";
9
+ import { ReactComponent as expand_less_svg_ReactComponent } from "@webiny/icons/expand_less.svg";
10
+ import { TaskDetailPresenterFeature } from "../feature.js";
11
+ import { GetTaskFeature } from "../../../features/getTask/feature.js";
12
+ import { ListLogsFeature } from "../../../features/listLogs/feature.js";
13
+ const STATUS_TAG_VARIANT = {
14
+ pending: "neutral-light",
15
+ running: "accent",
16
+ success: "success",
17
+ failed: "destructive",
18
+ aborted: "warning"
19
+ };
20
+ const formatJson = (value)=>{
21
+ if (null == value) return "";
22
+ if ("string" == typeof value) try {
23
+ return JSON.stringify(JSON.parse(value), null, 2);
24
+ } catch {
25
+ return value;
26
+ }
27
+ return JSON.stringify(value, null, 2);
28
+ };
29
+ const ExpandButton = ({ show, expanded, onClick })=>{
30
+ if (!show) return null;
31
+ return /*#__PURE__*/ react.createElement(Button, {
32
+ variant: "tertiary",
33
+ size: "sm",
34
+ icon: expanded ? /*#__PURE__*/ react.createElement(expand_less_svg_ReactComponent, null) : /*#__PURE__*/ react.createElement(expand_more_svg_ReactComponent, null),
35
+ onClick: onClick
36
+ });
37
+ };
38
+ const ExpandedPayload = ({ show, label, value, variant = "default" })=>{
39
+ if (!show) return null;
40
+ const textClass = "destructive" === variant ? " text-destructive" : "";
41
+ return /*#__PURE__*/ react.createElement("div", {
42
+ className: "mt-xs"
43
+ }, /*#__PURE__*/ react.createElement(Text, {
44
+ size: "sm",
45
+ className: "text-neutral-strong mb-xs"
46
+ }, label), /*#__PURE__*/ react.createElement("pre", {
47
+ className: `bg-neutral-light rounded-sm p-sm text-xs overflow-auto max-h-[200px]${textClass}`
48
+ }, formatJson(value)));
49
+ };
50
+ const JsonSection = ({ show, title, value })=>{
51
+ if (!show) return null;
52
+ return /*#__PURE__*/ react.createElement(react.Fragment, null, /*#__PURE__*/ react.createElement(Separator, null), /*#__PURE__*/ react.createElement("div", null, /*#__PURE__*/ react.createElement(Heading, {
53
+ level: 6,
54
+ className: "mb-sm"
55
+ }, title), /*#__PURE__*/ react.createElement(CodeEditor, {
56
+ value: value,
57
+ language: "json",
58
+ disabled: true
59
+ })));
60
+ };
61
+ const LoadMoreLogsButton = ({ show, loading, onClick })=>{
62
+ if (!show) return null;
63
+ return /*#__PURE__*/ react.createElement("div", {
64
+ className: "mt-sm"
65
+ }, /*#__PURE__*/ react.createElement(Button, {
66
+ variant: "tertiary",
67
+ size: "sm",
68
+ onClick: onClick,
69
+ disabled: loading
70
+ }, loading ? "Loading..." : "Load more logs"));
71
+ };
72
+ const DrawerActions = ({ isRunning, isTerminal, onAbort, onDelete })=>{
73
+ if (!isRunning && !isTerminal) return null;
74
+ return /*#__PURE__*/ react.createElement("div", {
75
+ className: "flex gap-sm"
76
+ }, isRunning ? /*#__PURE__*/ react.createElement(Button, {
77
+ variant: "secondary",
78
+ size: "sm",
79
+ icon: /*#__PURE__*/ react.createElement(ReactComponent, null),
80
+ onClick: onAbort
81
+ }, "Abort") : null, isTerminal ? /*#__PURE__*/ react.createElement(Button, {
82
+ variant: "secondary",
83
+ size: "sm",
84
+ icon: /*#__PURE__*/ react.createElement(delete_svg_ReactComponent, null),
85
+ onClick: onDelete
86
+ }, "Delete") : null);
87
+ };
88
+ const LogItemView = ({ item })=>{
89
+ const [expanded, setExpanded] = useState(false);
90
+ const hasData = null !== item.data && void 0 !== item.data;
91
+ const hasError = null !== item.error && void 0 !== item.error;
92
+ const expandable = hasData || hasError;
93
+ return /*#__PURE__*/ react.createElement("div", {
94
+ className: "border-b-sm border-neutral-muted py-xs px-sm"
95
+ }, /*#__PURE__*/ react.createElement("div", {
96
+ className: "flex items-start gap-sm"
97
+ }, /*#__PURE__*/ react.createElement("div", {
98
+ className: "flex-shrink-0 pt-[2px]"
99
+ }, /*#__PURE__*/ react.createElement(Tag, {
100
+ variant: "error" === item.type ? "destructive" : "neutral-light",
101
+ content: item.type
102
+ })), /*#__PURE__*/ react.createElement("div", {
103
+ className: "flex-1 min-w-0"
104
+ }, /*#__PURE__*/ react.createElement(Text, {
105
+ size: "sm"
106
+ }, item.message)), /*#__PURE__*/ react.createElement("div", {
107
+ className: "flex items-center gap-xs flex-shrink-0"
108
+ }, /*#__PURE__*/ react.createElement(Text, {
109
+ size: "sm",
110
+ className: "text-neutral-strong"
111
+ }, /*#__PURE__*/ react.createElement(TimeAgo, {
112
+ datetime: item.createdOn
113
+ })), /*#__PURE__*/ react.createElement(ExpandButton, {
114
+ show: expandable,
115
+ expanded: expanded,
116
+ onClick: ()=>setExpanded(!expanded)
117
+ }))), /*#__PURE__*/ react.createElement(ExpandedPayload, {
118
+ show: expanded && hasData,
119
+ label: "Data",
120
+ value: item.data
121
+ }), /*#__PURE__*/ react.createElement(ExpandedPayload, {
122
+ show: expanded && hasError,
123
+ label: "Error",
124
+ value: item.error,
125
+ variant: "destructive"
126
+ }));
127
+ };
128
+ const TaskDetailDrawer_TaskDetailDrawerInner = observer(function({ task, open, onClose, onAbort, onDelete }) {
129
+ const { presenter } = useFeature(TaskDetailPresenterFeature);
130
+ useEffect(()=>{
131
+ if (open) presenter.init(task.id);
132
+ }, [
133
+ presenter,
134
+ task.id,
135
+ open
136
+ ]);
137
+ const { vm } = presenter;
138
+ const { showConfirmation: showAbortConfirmation } = useConfirmationDialog({
139
+ title: "Abort Task",
140
+ message: "Are you sure you want to abort this running task?"
141
+ });
142
+ const { showConfirmation: showDeleteConfirmation } = useConfirmationDialog({
143
+ title: "Delete Task",
144
+ message: "Are you sure you want to delete this task?"
145
+ });
146
+ const displayTask = vm.task ?? task;
147
+ const isRunning = "running" === displayTask.taskStatus;
148
+ const isTerminal = "success" === displayTask.taskStatus || "failed" === displayTask.taskStatus || "aborted" === displayTask.taskStatus;
149
+ const inputJson = formatJson(displayTask.input);
150
+ const outputJson = formatJson(displayTask.output);
151
+ return /*#__PURE__*/ react.createElement(Drawer, {
152
+ open: open,
153
+ onOpenChange: (isOpen)=>!isOpen && onClose(),
154
+ title: /*#__PURE__*/ react.createElement("div", {
155
+ className: "flex items-center gap-sm"
156
+ }, /*#__PURE__*/ react.createElement("span", null, displayTask.name || displayTask.definitionId), /*#__PURE__*/ react.createElement(Tag, {
157
+ variant: STATUS_TAG_VARIANT[displayTask.taskStatus] ?? "neutral-light",
158
+ content: displayTask.taskStatus
159
+ })),
160
+ modal: true,
161
+ width: "900px",
162
+ bodyPadding: false,
163
+ actions: /*#__PURE__*/ react.createElement(DrawerActions, {
164
+ isRunning: isRunning,
165
+ isTerminal: isTerminal,
166
+ onAbort: ()=>showAbortConfirmation(()=>onAbort(displayTask.id)),
167
+ onDelete: ()=>showDeleteConfirmation(()=>onDelete(displayTask.id))
168
+ })
169
+ }, /*#__PURE__*/ react.createElement("div", {
170
+ className: "flex flex-col gap-md p-md overflow-auto"
171
+ }, /*#__PURE__*/ react.createElement("div", null, /*#__PURE__*/ react.createElement(Heading, {
172
+ level: 6,
173
+ className: "mb-sm"
174
+ }, "General Info"), /*#__PURE__*/ react.createElement(Grid, {
175
+ gap: "comfortable"
176
+ }, /*#__PURE__*/ react.createElement(Grid.Column, {
177
+ span: 6
178
+ }, /*#__PURE__*/ react.createElement(Text, {
179
+ as: "div",
180
+ size: "sm",
181
+ className: "text-neutral-strong"
182
+ }, "Definition"), /*#__PURE__*/ react.createElement(Text, {
183
+ size: "sm"
184
+ }, displayTask.definitionId)), /*#__PURE__*/ react.createElement(Grid.Column, {
185
+ span: 6
186
+ }, /*#__PURE__*/ react.createElement(Text, {
187
+ as: "div",
188
+ size: "sm",
189
+ className: "text-neutral-strong"
190
+ }, "Created By"), /*#__PURE__*/ react.createElement(Text, {
191
+ size: "sm"
192
+ }, displayTask.createdBy?.displayName ?? "—")), /*#__PURE__*/ react.createElement(Grid.Column, {
193
+ span: 6
194
+ }, /*#__PURE__*/ react.createElement(Text, {
195
+ as: "div",
196
+ size: "sm",
197
+ className: "text-neutral-strong"
198
+ }, "Created On"), /*#__PURE__*/ react.createElement(Text, {
199
+ size: "sm"
200
+ }, displayTask.createdOn ? /*#__PURE__*/ react.createElement(TimeAgo, {
201
+ datetime: displayTask.createdOn
202
+ }) : "—")), /*#__PURE__*/ react.createElement(Grid.Column, {
203
+ span: 6
204
+ }, /*#__PURE__*/ react.createElement(Text, {
205
+ as: "div",
206
+ size: "sm",
207
+ className: "text-neutral-strong"
208
+ }, "Started On"), /*#__PURE__*/ react.createElement(Text, {
209
+ size: "sm"
210
+ }, displayTask.startedOn ? /*#__PURE__*/ react.createElement(TimeAgo, {
211
+ datetime: displayTask.startedOn
212
+ }) : "—")), /*#__PURE__*/ react.createElement(Grid.Column, {
213
+ span: 6
214
+ }, /*#__PURE__*/ react.createElement(Text, {
215
+ as: "div",
216
+ size: "sm",
217
+ className: "text-neutral-strong"
218
+ }, "Finished On"), /*#__PURE__*/ react.createElement(Text, {
219
+ size: "sm"
220
+ }, displayTask.finishedOn ? /*#__PURE__*/ react.createElement(TimeAgo, {
221
+ datetime: displayTask.finishedOn
222
+ }) : "—")), /*#__PURE__*/ react.createElement(Grid.Column, {
223
+ span: 6
224
+ }, /*#__PURE__*/ react.createElement(Text, {
225
+ as: "div",
226
+ size: "sm",
227
+ className: "text-neutral-strong"
228
+ }, "Iterations"), /*#__PURE__*/ react.createElement(Text, {
229
+ size: "sm"
230
+ }, displayTask.iterations ?? 0)))), /*#__PURE__*/ react.createElement(JsonSection, {
231
+ show: !!inputJson,
232
+ title: "Input",
233
+ value: inputJson
234
+ }), /*#__PURE__*/ react.createElement(JsonSection, {
235
+ show: !!outputJson,
236
+ title: "Output",
237
+ value: outputJson
238
+ }), /*#__PURE__*/ react.createElement(Separator, null), /*#__PURE__*/ react.createElement("div", null, /*#__PURE__*/ react.createElement(Heading, {
239
+ level: 6,
240
+ className: "mb-sm"
241
+ }, "Logs (", vm.logs.pagination.totalCount, ")"), 0 !== vm.logs.rows.length || vm.logs.pagination.loading ? /*#__PURE__*/ react.createElement("div", {
242
+ className: "border-sm border-neutral-muted rounded-sm"
243
+ }, vm.logs.rows.map((log)=>log.items.map((item, idx)=>/*#__PURE__*/ react.createElement(LogItemView, {
244
+ key: `${log.id}-${idx}`,
245
+ item: item
246
+ })))) : /*#__PURE__*/ react.createElement(Text, {
247
+ size: "sm",
248
+ className: "text-neutral-strong"
249
+ }, "No logs available."), /*#__PURE__*/ react.createElement(LoadMoreLogsButton, {
250
+ show: vm.logs.pagination.hasMore,
251
+ loading: vm.logs.pagination.loading,
252
+ onClick: ()=>presenter.loadMore()
253
+ }))));
254
+ });
255
+ const TaskDetailDrawer = (props)=>{
256
+ const container = useContainer();
257
+ const scopedContainer = useMemo(()=>{
258
+ const child = container.createChildContainer();
259
+ GetTaskFeature.register(child);
260
+ ListLogsFeature.register(child);
261
+ TaskDetailPresenterFeature.register(child);
262
+ return child;
263
+ }, []);
264
+ return /*#__PURE__*/ react.createElement(DiContainerProvider, {
265
+ container: scopedContainer
266
+ }, /*#__PURE__*/ react.createElement(TaskDetailDrawer_TaskDetailDrawerInner, props));
267
+ };
268
+ export { TaskDetailDrawer };
269
+
270
+ //# sourceMappingURL=TaskDetailDrawer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"admin/presentation/TaskDetail/components/TaskDetailDrawer.js","sources":["../../../../../src/admin/presentation/TaskDetail/components/TaskDetailDrawer.tsx"],"sourcesContent":["import React, { useEffect, useMemo, useState } from \"react\";\nimport { observer } from \"mobx-react-lite\";\nimport { DiContainerProvider, useContainer, useFeature } from \"@webiny/app\";\nimport { Button, Drawer, Grid, Heading, Separator, Tag, Text, TimeAgo } from \"@webiny/admin-ui\";\nimport { CodeEditor } from \"@webiny/admin-ui\";\nimport { useConfirmationDialog } from \"@webiny/app-admin/hooks/index.js\";\nimport { ReactComponent as StopCircleIcon } from \"@webiny/icons/stop_circle.svg\";\nimport { ReactComponent as DeleteIcon } from \"@webiny/icons/delete.svg\";\nimport { ReactComponent as ExpandMoreIcon } from \"@webiny/icons/expand_more.svg\";\nimport { ReactComponent as ExpandLessIcon } from \"@webiny/icons/expand_less.svg\";\nimport { TaskDetailPresenterFeature } from \"../feature.js\";\nimport { GetTaskFeature } from \"~/admin/features/getTask/feature.js\";\nimport { ListLogsFeature } from \"~/admin/features/listLogs/feature.js\";\nimport type { Task, TaskLog, TaskLogItem } from \"~/admin/shared/types.js\";\n\nconst STATUS_TAG_VARIANT: Record<\n string,\n \"neutral-light\" | \"accent\" | \"success\" | \"destructive\" | \"warning\"\n> = {\n pending: \"neutral-light\",\n running: \"accent\",\n success: \"success\",\n failed: \"destructive\",\n aborted: \"warning\"\n};\n\nconst formatJson = (value: unknown): string => {\n if (value === null || value === undefined) {\n return \"\";\n }\n if (typeof value === \"string\") {\n try {\n return JSON.stringify(JSON.parse(value), null, 2);\n } catch {\n return value;\n }\n }\n return JSON.stringify(value, null, 2);\n};\n\ninterface ExpandButtonProps {\n show: boolean;\n expanded: boolean;\n onClick: () => void;\n}\n\nconst ExpandButton = ({ show, expanded, onClick }: ExpandButtonProps) => {\n if (!show) {\n return null;\n }\n\n return (\n <Button\n variant=\"tertiary\"\n size=\"sm\"\n icon={expanded ? <ExpandLessIcon /> : <ExpandMoreIcon />}\n onClick={onClick}\n />\n );\n};\n\ninterface ExpandedPayloadProps {\n show: boolean;\n label: string;\n value: unknown;\n variant?: \"default\" | \"destructive\";\n}\n\nconst ExpandedPayload = ({ show, label, value, variant = \"default\" }: ExpandedPayloadProps) => {\n if (!show) {\n return null;\n }\n\n const textClass = variant === \"destructive\" ? \" text-destructive\" : \"\";\n\n return (\n <div className=\"mt-xs\">\n <Text size=\"sm\" className=\"text-neutral-strong mb-xs\">\n {label}\n </Text>\n <pre\n className={`bg-neutral-light rounded-sm p-sm text-xs overflow-auto max-h-[200px]${textClass}`}\n >\n {formatJson(value)}\n </pre>\n </div>\n );\n};\n\ninterface JsonSectionProps {\n show: boolean;\n title: string;\n value: string;\n}\n\nconst JsonSection = ({ show, title, value }: JsonSectionProps) => {\n if (!show) {\n return null;\n }\n\n return (\n <>\n <Separator />\n <div>\n <Heading level={6} className=\"mb-sm\">\n {title}\n </Heading>\n <CodeEditor value={value} language=\"json\" disabled={true} />\n </div>\n </>\n );\n};\n\ninterface LoadMoreLogsButtonProps {\n show: boolean;\n loading: boolean;\n onClick: () => void;\n}\n\nconst LoadMoreLogsButton = ({ show, loading, onClick }: LoadMoreLogsButtonProps) => {\n if (!show) {\n return null;\n }\n\n return (\n <div className=\"mt-sm\">\n <Button variant=\"tertiary\" size=\"sm\" onClick={onClick} disabled={loading}>\n {loading ? \"Loading...\" : \"Load more logs\"}\n </Button>\n </div>\n );\n};\n\ninterface DrawerActionsProps {\n isRunning: boolean;\n isTerminal: boolean;\n onAbort: () => void;\n onDelete: () => void;\n}\n\nconst DrawerActions = ({ isRunning, isTerminal, onAbort, onDelete }: DrawerActionsProps) => {\n if (!isRunning && !isTerminal) {\n return null;\n }\n\n return (\n <div className=\"flex gap-sm\">\n {isRunning ? (\n <Button variant=\"secondary\" size=\"sm\" icon={<StopCircleIcon />} onClick={onAbort}>\n Abort\n </Button>\n ) : null}\n {isTerminal ? (\n <Button variant=\"secondary\" size=\"sm\" icon={<DeleteIcon />} onClick={onDelete}>\n Delete\n </Button>\n ) : null}\n </div>\n );\n};\n\ninterface LogItemViewProps {\n item: TaskLogItem;\n}\n\nconst LogItemView = ({ item }: LogItemViewProps) => {\n const [expanded, setExpanded] = useState(false);\n const hasData = item.data !== null && item.data !== undefined;\n const hasError = item.error !== null && item.error !== undefined;\n const expandable = hasData || hasError;\n\n return (\n <div className=\"border-b-sm border-neutral-muted py-xs px-sm\">\n <div className=\"flex items-start gap-sm\">\n <div className=\"flex-shrink-0 pt-[2px]\">\n <Tag\n variant={item.type === \"error\" ? \"destructive\" : \"neutral-light\"}\n content={item.type}\n />\n </div>\n <div className=\"flex-1 min-w-0\">\n <Text size=\"sm\">{item.message}</Text>\n </div>\n <div className=\"flex items-center gap-xs flex-shrink-0\">\n <Text size=\"sm\" className=\"text-neutral-strong\">\n <TimeAgo datetime={item.createdOn} />\n </Text>\n <ExpandButton\n show={expandable}\n expanded={expanded}\n onClick={() => setExpanded(!expanded)}\n />\n </div>\n </div>\n <ExpandedPayload show={expanded && hasData} label=\"Data\" value={item.data} />\n <ExpandedPayload\n show={expanded && hasError}\n label=\"Error\"\n value={item.error}\n variant=\"destructive\"\n />\n </div>\n );\n};\n\ninterface TaskDetailDrawerProps {\n task: Task;\n open: boolean;\n onClose: () => void;\n onAbort: (id: string) => Promise<void>;\n onDelete: (id: string) => Promise<void>;\n}\n\nconst TaskDetailDrawerInner = observer(function TaskDetailDrawerInner({\n task,\n open,\n onClose,\n onAbort,\n onDelete\n}: TaskDetailDrawerProps) {\n const { presenter } = useFeature(TaskDetailPresenterFeature);\n\n useEffect(() => {\n if (open) {\n void presenter.init(task.id);\n }\n }, [presenter, task.id, open]);\n\n const { vm } = presenter;\n\n const { showConfirmation: showAbortConfirmation } = useConfirmationDialog({\n title: \"Abort Task\",\n message: \"Are you sure you want to abort this running task?\"\n });\n\n const { showConfirmation: showDeleteConfirmation } = useConfirmationDialog({\n title: \"Delete Task\",\n message: \"Are you sure you want to delete this task?\"\n });\n\n const displayTask = vm.task ?? task;\n const isRunning = displayTask.taskStatus === \"running\";\n const isTerminal =\n displayTask.taskStatus === \"success\" ||\n displayTask.taskStatus === \"failed\" ||\n displayTask.taskStatus === \"aborted\";\n\n const inputJson = formatJson(displayTask.input);\n const outputJson = formatJson(displayTask.output);\n\n return (\n <Drawer\n open={open}\n onOpenChange={isOpen => !isOpen && onClose()}\n title={\n <div className=\"flex items-center gap-sm\">\n <span>{displayTask.name || displayTask.definitionId}</span>\n <Tag\n variant={STATUS_TAG_VARIANT[displayTask.taskStatus] ?? \"neutral-light\"}\n content={displayTask.taskStatus}\n />\n </div>\n }\n modal={true}\n width=\"900px\"\n bodyPadding={false}\n actions={\n <DrawerActions\n isRunning={isRunning}\n isTerminal={isTerminal}\n onAbort={() => showAbortConfirmation(() => onAbort(displayTask.id))}\n onDelete={() => showDeleteConfirmation(() => onDelete(displayTask.id))}\n />\n }\n >\n <div className=\"flex flex-col gap-md p-md overflow-auto\">\n <div>\n <Heading level={6} className=\"mb-sm\">\n General Info\n </Heading>\n <Grid gap=\"comfortable\">\n <Grid.Column span={6}>\n <Text as=\"div\" size=\"sm\" className=\"text-neutral-strong\">\n Definition\n </Text>\n <Text size=\"sm\">{displayTask.definitionId}</Text>\n </Grid.Column>\n <Grid.Column span={6}>\n <Text as=\"div\" size=\"sm\" className=\"text-neutral-strong\">\n Created By\n </Text>\n <Text size=\"sm\">{displayTask.createdBy?.displayName ?? \"—\"}</Text>\n </Grid.Column>\n <Grid.Column span={6}>\n <Text as=\"div\" size=\"sm\" className=\"text-neutral-strong\">\n Created On\n </Text>\n <Text size=\"sm\">\n {displayTask.createdOn ? (\n <TimeAgo datetime={displayTask.createdOn} />\n ) : (\n \"—\"\n )}\n </Text>\n </Grid.Column>\n <Grid.Column span={6}>\n <Text as=\"div\" size=\"sm\" className=\"text-neutral-strong\">\n Started On\n </Text>\n <Text size=\"sm\">\n {displayTask.startedOn ? (\n <TimeAgo datetime={displayTask.startedOn} />\n ) : (\n \"—\"\n )}\n </Text>\n </Grid.Column>\n <Grid.Column span={6}>\n <Text as=\"div\" size=\"sm\" className=\"text-neutral-strong\">\n Finished On\n </Text>\n <Text size=\"sm\">\n {displayTask.finishedOn ? (\n <TimeAgo datetime={displayTask.finishedOn} />\n ) : (\n \"—\"\n )}\n </Text>\n </Grid.Column>\n <Grid.Column span={6}>\n <Text as=\"div\" size=\"sm\" className=\"text-neutral-strong\">\n Iterations\n </Text>\n <Text size=\"sm\">{displayTask.iterations ?? 0}</Text>\n </Grid.Column>\n </Grid>\n </div>\n\n <JsonSection show={!!inputJson} title=\"Input\" value={inputJson} />\n <JsonSection show={!!outputJson} title=\"Output\" value={outputJson} />\n\n <Separator />\n <div>\n <Heading level={6} className=\"mb-sm\">\n Logs ({vm.logs.pagination.totalCount})\n </Heading>\n {vm.logs.rows.length === 0 && !vm.logs.pagination.loading ? (\n <Text size=\"sm\" className=\"text-neutral-strong\">\n No logs available.\n </Text>\n ) : (\n <div className=\"border-sm border-neutral-muted rounded-sm\">\n {vm.logs.rows.map((log: TaskLog) =>\n log.items.map((item, idx) => (\n <LogItemView key={`${log.id}-${idx}`} item={item} />\n ))\n )}\n </div>\n )}\n <LoadMoreLogsButton\n show={vm.logs.pagination.hasMore}\n loading={vm.logs.pagination.loading}\n onClick={() => presenter.loadMore()}\n />\n </div>\n </div>\n </Drawer>\n );\n});\n\nexport const TaskDetailDrawer = (props: TaskDetailDrawerProps) => {\n const container = useContainer();\n\n const scopedContainer = useMemo(() => {\n const child = container.createChildContainer();\n GetTaskFeature.register(child);\n ListLogsFeature.register(child);\n TaskDetailPresenterFeature.register(child);\n return child;\n }, []);\n\n return (\n <DiContainerProvider container={scopedContainer}>\n <TaskDetailDrawerInner {...props} />\n </DiContainerProvider>\n );\n};\n"],"names":["STATUS_TAG_VARIANT","formatJson","value","JSON","ExpandButton","show","expanded","onClick","Button","ExpandLessIcon","ExpandMoreIcon","ExpandedPayload","label","variant","textClass","Text","JsonSection","title","Separator","Heading","CodeEditor","LoadMoreLogsButton","loading","DrawerActions","isRunning","isTerminal","onAbort","onDelete","StopCircleIcon","DeleteIcon","LogItemView","item","setExpanded","useState","hasData","undefined","hasError","expandable","Tag","TimeAgo","TaskDetailDrawerInner","observer","task","open","onClose","presenter","useFeature","TaskDetailPresenterFeature","useEffect","vm","showAbortConfirmation","useConfirmationDialog","showDeleteConfirmation","displayTask","inputJson","outputJson","Drawer","isOpen","Grid","log","idx","TaskDetailDrawer","props","container","useContainer","scopedContainer","useMemo","child","GetTaskFeature","ListLogsFeature","DiContainerProvider"],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ export declare const TaskDetailPresenterFeature: import("@webiny/feature/admin").FeatureDefinition<{
2
+ presenter: import("./abstractions.js").ITaskDetailPresenter;
3
+ }, []>;
@@ -0,0 +1,17 @@
1
+ import { createFeature } from "@webiny/feature/admin";
2
+ import { TaskDetailPresenter } from "./abstractions.js";
3
+ import { TaskDetailPresenter as external_TaskDetailPresenter_js_TaskDetailPresenter } from "./TaskDetailPresenter.js";
4
+ const TaskDetailPresenterFeature = createFeature({
5
+ name: "BackgroundTasks/TaskDetailPresenter",
6
+ register (container) {
7
+ container.register(external_TaskDetailPresenter_js_TaskDetailPresenter).inSingletonScope();
8
+ },
9
+ resolve (container) {
10
+ return {
11
+ presenter: container.resolve(TaskDetailPresenter)
12
+ };
13
+ }
14
+ });
15
+ export { TaskDetailPresenterFeature };
16
+
17
+ //# sourceMappingURL=feature.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"admin/presentation/TaskDetail/feature.js","sources":["../../../../src/admin/presentation/TaskDetail/feature.ts"],"sourcesContent":["import { createFeature } from \"@webiny/feature/admin\";\nimport { TaskDetailPresenter as PresenterAbstraction } from \"./abstractions.js\";\nimport { TaskDetailPresenter } from \"./TaskDetailPresenter.js\";\n\nexport const TaskDetailPresenterFeature = createFeature({\n name: \"BackgroundTasks/TaskDetailPresenter\",\n register(container) {\n container.register(TaskDetailPresenter).inSingletonScope();\n },\n resolve(container) {\n return { presenter: container.resolve(PresenterAbstraction) };\n }\n});\n"],"names":["TaskDetailPresenterFeature","createFeature","container","TaskDetailPresenter","PresenterAbstraction"],"mappings":";;;AAIO,MAAMA,6BAA6BC,cAAc;IACpD,MAAM;IACN,UAASC,SAAS;QACdA,UAAU,QAAQ,CAACC,qDAAqB,gBAAgB;IAC5D;IACA,SAAQD,SAAS;QACb,OAAO;YAAE,WAAWA,UAAU,OAAO,CAACE;QAAsB;IAChE;AACJ"}
@@ -0,0 +1,2 @@
1
+ export { TaskDetailPresenter } from "./abstractions.js";
2
+ export { TaskDetailPresenterFeature } from "./feature.js";
@@ -0,0 +1,2 @@
1
+ export { TaskDetailPresenter } from "./abstractions.js";
2
+ export { TaskDetailPresenterFeature } from "./feature.js";
@@ -0,0 +1,15 @@
1
+ import type { IDataSource, IDataSourceQuery, IDataSourceMeta } from "@webiny/app-admin/presentation/listPresenter/abstractions.js";
2
+ import type { Task } from "../../../admin/shared/types.js";
3
+ import type { IListTasksUseCase } from "../../../admin/features/listTasks/abstractions.js";
4
+ export declare class TaskExecutionsDataSource implements IDataSource<Task> {
5
+ private readonly listTasksUseCase;
6
+ private _rows;
7
+ private _meta;
8
+ private _loading;
9
+ constructor(listTasksUseCase: IListTasksUseCase);
10
+ get rows(): Task[];
11
+ get meta(): IDataSourceMeta;
12
+ get loading(): boolean;
13
+ query(params: IDataSourceQuery): Promise<void>;
14
+ loadMore(params: IDataSourceQuery): Promise<void>;
15
+ }
@@ -0,0 +1,91 @@
1
+ import { computed, makeAutoObservable, runInAction } from "mobx";
2
+ const ENTRY_META_SORT_FIELDS = new Set([
3
+ "id",
4
+ "createdOn",
5
+ "modifiedOn",
6
+ "savedOn",
7
+ "deletedOn",
8
+ "restoredOn",
9
+ "firstPublishedOn",
10
+ "lastPublishedOn"
11
+ ]);
12
+ function toSortEnum(field, direction) {
13
+ const prefix = ENTRY_META_SORT_FIELDS.has(field) ? "" : "values_";
14
+ return `${prefix}${field}_${direction}`;
15
+ }
16
+ class TaskExecutionsDataSource {
17
+ constructor(listTasksUseCase){
18
+ this.listTasksUseCase = listTasksUseCase;
19
+ this._rows = [];
20
+ this._meta = {
21
+ cursor: null,
22
+ hasMoreItems: false,
23
+ totalCount: 0
24
+ };
25
+ this._loading = false;
26
+ makeAutoObservable(this, {
27
+ listTasksUseCase: false,
28
+ rows: computed
29
+ });
30
+ }
31
+ get rows() {
32
+ return this._rows;
33
+ }
34
+ get meta() {
35
+ return this._meta;
36
+ }
37
+ get loading() {
38
+ return this._loading;
39
+ }
40
+ async query(params) {
41
+ this._loading = true;
42
+ const sort = params.sort ? [
43
+ toSortEnum(params.sort.field, params.sort.direction)
44
+ ] : void 0;
45
+ const result = await this.listTasksUseCase.execute({
46
+ where: params.filters,
47
+ sort,
48
+ limit: params.limit,
49
+ after: params.cursor,
50
+ search: params.search
51
+ });
52
+ runInAction(()=>{
53
+ this._rows = result.items;
54
+ this._meta = {
55
+ cursor: result.meta.cursor,
56
+ hasMoreItems: result.meta.hasMoreItems,
57
+ totalCount: result.meta.totalCount
58
+ };
59
+ this._loading = false;
60
+ });
61
+ }
62
+ async loadMore(params) {
63
+ if (!this._meta.hasMoreItems || this._loading) return;
64
+ this._loading = true;
65
+ const sort = params.sort ? [
66
+ toSortEnum(params.sort.field, params.sort.direction)
67
+ ] : void 0;
68
+ const result = await this.listTasksUseCase.execute({
69
+ where: params.filters,
70
+ sort,
71
+ limit: params.limit,
72
+ after: this._meta.cursor || void 0,
73
+ search: params.search
74
+ });
75
+ runInAction(()=>{
76
+ this._rows = [
77
+ ...this._rows,
78
+ ...result.items
79
+ ];
80
+ this._meta = {
81
+ cursor: result.meta.cursor,
82
+ hasMoreItems: result.meta.hasMoreItems,
83
+ totalCount: result.meta.totalCount
84
+ };
85
+ this._loading = false;
86
+ });
87
+ }
88
+ }
89
+ export { TaskExecutionsDataSource };
90
+
91
+ //# sourceMappingURL=TaskExecutionsDataSource.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"admin/presentation/TaskExecutions/TaskExecutionsDataSource.js","sources":["../../../../src/admin/presentation/TaskExecutions/TaskExecutionsDataSource.ts"],"sourcesContent":["import { makeAutoObservable, runInAction, computed } from \"mobx\";\nimport type {\n IDataSource,\n IDataSourceQuery,\n IDataSourceMeta\n} from \"@webiny/app-admin/presentation/listPresenter/abstractions.js\";\nimport type { Task } from \"~/admin/shared/types.js\";\nimport type { IListTasksUseCase } from \"~/admin/features/listTasks/abstractions.js\";\n\nconst ENTRY_META_SORT_FIELDS = new Set([\n \"id\",\n \"createdOn\",\n \"modifiedOn\",\n \"savedOn\",\n \"deletedOn\",\n \"restoredOn\",\n \"firstPublishedOn\",\n \"lastPublishedOn\"\n]);\n\nfunction toSortEnum(field: string, direction: \"ASC\" | \"DESC\"): string {\n const prefix = ENTRY_META_SORT_FIELDS.has(field) ? \"\" : \"values_\";\n return `${prefix}${field}_${direction}`;\n}\n\nexport class TaskExecutionsDataSource implements IDataSource<Task> {\n private _rows: Task[] = [];\n private _meta: IDataSourceMeta = { cursor: null, hasMoreItems: false, totalCount: 0 };\n private _loading = false;\n\n constructor(private readonly listTasksUseCase: IListTasksUseCase) {\n makeAutoObservable<TaskExecutionsDataSource, \"listTasksUseCase\">(this, {\n listTasksUseCase: false,\n rows: computed\n });\n }\n\n get rows(): Task[] {\n return this._rows;\n }\n\n get meta(): IDataSourceMeta {\n return this._meta;\n }\n\n get loading(): boolean {\n return this._loading;\n }\n\n async query(params: IDataSourceQuery): Promise<void> {\n this._loading = true;\n const sort = params.sort\n ? [toSortEnum(params.sort.field, params.sort.direction)]\n : undefined;\n const result = await this.listTasksUseCase.execute({\n where: params.filters,\n sort,\n limit: params.limit,\n after: params.cursor,\n search: params.search\n });\n runInAction(() => {\n this._rows = result.items;\n this._meta = {\n cursor: result.meta.cursor,\n hasMoreItems: result.meta.hasMoreItems,\n totalCount: result.meta.totalCount\n };\n this._loading = false;\n });\n }\n\n async loadMore(params: IDataSourceQuery): Promise<void> {\n if (!this._meta.hasMoreItems || this._loading) {\n return;\n }\n this._loading = true;\n const sort = params.sort\n ? [toSortEnum(params.sort.field, params.sort.direction)]\n : undefined;\n const result = await this.listTasksUseCase.execute({\n where: params.filters,\n sort,\n limit: params.limit,\n after: this._meta.cursor || undefined,\n search: params.search\n });\n runInAction(() => {\n this._rows = [...this._rows, ...result.items];\n this._meta = {\n cursor: result.meta.cursor,\n hasMoreItems: result.meta.hasMoreItems,\n totalCount: result.meta.totalCount\n };\n this._loading = false;\n });\n }\n}\n"],"names":["ENTRY_META_SORT_FIELDS","Set","toSortEnum","field","direction","prefix","TaskExecutionsDataSource","listTasksUseCase","makeAutoObservable","computed","params","sort","undefined","result","runInAction"],"mappings":";AASA,MAAMA,yBAAyB,IAAIC,IAAI;IACnC;IACA;IACA;IACA;IACA;IACA;IACA;IACA;CACH;AAED,SAASC,WAAWC,KAAa,EAAEC,SAAyB;IACxD,MAAMC,SAASL,uBAAuB,GAAG,CAACG,SAAS,KAAK;IACxD,OAAO,GAAGE,SAASF,MAAM,CAAC,EAAEC,WAAW;AAC3C;AAEO,MAAME;IAKT,YAA6BC,gBAAmC,CAAE;aAArCA,gBAAgB,GAAhBA;aAJrB,KAAK,GAAW,EAAE;aAClB,KAAK,GAAoB;YAAE,QAAQ;YAAM,cAAc;YAAO,YAAY;QAAE;aAC5E,QAAQ,GAAG;QAGfC,mBAAiE,IAAI,EAAE;YACnE,kBAAkB;YAClB,MAAMC;QACV;IACJ;IAEA,IAAI,OAAe;QACf,OAAO,IAAI,CAAC,KAAK;IACrB;IAEA,IAAI,OAAwB;QACxB,OAAO,IAAI,CAAC,KAAK;IACrB;IAEA,IAAI,UAAmB;QACnB,OAAO,IAAI,CAAC,QAAQ;IACxB;IAEA,MAAM,MAAMC,MAAwB,EAAiB;QACjD,IAAI,CAAC,QAAQ,GAAG;QAChB,MAAMC,OAAOD,OAAO,IAAI,GAClB;YAACR,WAAWQ,OAAO,IAAI,CAAC,KAAK,EAAEA,OAAO,IAAI,CAAC,SAAS;SAAE,GACtDE;QACN,MAAMC,SAAS,MAAM,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC;YAC/C,OAAOH,OAAO,OAAO;YACrBC;YACA,OAAOD,OAAO,KAAK;YACnB,OAAOA,OAAO,MAAM;YACpB,QAAQA,OAAO,MAAM;QACzB;QACAI,YAAY;YACR,IAAI,CAAC,KAAK,GAAGD,OAAO,KAAK;YACzB,IAAI,CAAC,KAAK,GAAG;gBACT,QAAQA,OAAO,IAAI,CAAC,MAAM;gBAC1B,cAAcA,OAAO,IAAI,CAAC,YAAY;gBACtC,YAAYA,OAAO,IAAI,CAAC,UAAU;YACtC;YACA,IAAI,CAAC,QAAQ,GAAG;QACpB;IACJ;IAEA,MAAM,SAASH,MAAwB,EAAiB;QACpD,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,YAAY,IAAI,IAAI,CAAC,QAAQ,EACzC;QAEJ,IAAI,CAAC,QAAQ,GAAG;QAChB,MAAMC,OAAOD,OAAO,IAAI,GAClB;YAACR,WAAWQ,OAAO,IAAI,CAAC,KAAK,EAAEA,OAAO,IAAI,CAAC,SAAS;SAAE,GACtDE;QACN,MAAMC,SAAS,MAAM,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC;YAC/C,OAAOH,OAAO,OAAO;YACrBC;YACA,OAAOD,OAAO,KAAK;YACnB,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,IAAIE;YAC5B,QAAQF,OAAO,MAAM;QACzB;QACAI,YAAY;YACR,IAAI,CAAC,KAAK,GAAG;mBAAI,IAAI,CAAC,KAAK;mBAAKD,OAAO,KAAK;aAAC;YAC7C,IAAI,CAAC,KAAK,GAAG;gBACT,QAAQA,OAAO,IAAI,CAAC,MAAM;gBAC1B,cAAcA,OAAO,IAAI,CAAC,YAAY;gBACtC,YAAYA,OAAO,IAAI,CAAC,UAAU;YACtC;YACA,IAAI,CAAC,QAAQ,GAAG;QACpB;IACJ;AACJ"}
@@ -0,0 +1,54 @@
1
+ import { ListPresenter } from "@webiny/app-admin/presentation/listPresenter/abstractions.js";
2
+ import type { Task } from "../../../admin/shared/types.js";
3
+ import { type ITaskExecutionsPresenter, type ITaskExecutionsViewModel } from "./abstractions.js";
4
+ import { ListTasksUseCase } from "../../../admin/features/listTasks/abstractions.js";
5
+ import { DeleteTaskUseCase } from "../../../admin/features/deleteTask/abstractions.js";
6
+ import { AbortTaskUseCase } from "../../../admin/features/abortTask/abstractions.js";
7
+ import { ListDefinitionsUseCase } from "../../../admin/features/listDefinitions/abstractions.js";
8
+ import { TaskPermissions } from "../../../admin/features/permissions/abstractions.js";
9
+ declare class TaskExecutionsPresenterImpl implements ITaskExecutionsPresenter {
10
+ private readonly listPresenter;
11
+ private readonly listTasksUseCase;
12
+ private readonly deleteTaskUseCase;
13
+ private readonly abortTaskUseCase;
14
+ private readonly listDefinitionsUseCase;
15
+ private readonly permissions;
16
+ private _selectedTask;
17
+ private _definitionOptions;
18
+ constructor(listPresenter: ListPresenter.Interface<Task>, listTasksUseCase: ListTasksUseCase.Interface, deleteTaskUseCase: DeleteTaskUseCase.Interface, abortTaskUseCase: AbortTaskUseCase.Interface, listDefinitionsUseCase: ListDefinitionsUseCase.Interface, permissions: TaskPermissions.Interface);
19
+ get vm(): ITaskExecutionsViewModel;
20
+ get selectedTask(): Task | null;
21
+ search: {
22
+ set: (query: string) => void;
23
+ clear: () => void;
24
+ };
25
+ sort: {
26
+ set: (field: string, direction: "ASC" | "DESC") => void;
27
+ toggle: (field: string) => void;
28
+ };
29
+ filter: {
30
+ set: (key: string, value: unknown) => void;
31
+ clear: (key: string) => void;
32
+ clearAll: () => void;
33
+ show: () => void;
34
+ hide: () => void;
35
+ };
36
+ selection: {
37
+ toggle: (id: string) => void;
38
+ selectRangeTo: (id: string) => void;
39
+ selectAll: () => void;
40
+ deselectAll: () => void;
41
+ selectRows: (ids: string[]) => void;
42
+ isSelected: (id: string) => boolean;
43
+ };
44
+ loadMore: () => Promise<void>;
45
+ refresh: () => Promise<void>;
46
+ deleteTask: (id: string) => Promise<void>;
47
+ abortTask: (id: string) => Promise<void>;
48
+ selectTask: (task: Task | null) => void;
49
+ init(): void;
50
+ }
51
+ export declare const TaskExecutionsPresenter: typeof TaskExecutionsPresenterImpl & {
52
+ __abstraction: import("@webiny/di").Abstraction<ITaskExecutionsPresenter>;
53
+ };
54
+ export {};