@webiny/background-tasks 0.0.0-unstable.0d717d18dd

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 (522) 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 +59 -0
  212. package/api/BackgroundTasksFeature.js.map +1 -0
  213. package/api/TasksCrud.d.ts +10 -0
  214. package/api/TasksCrud.js +5 -0
  215. package/api/TasksCrud.js.map +1 -0
  216. package/api/abstractions/Timer.d.ts +1 -0
  217. package/api/abstractions/Timer.js +0 -0
  218. package/api/abstractions/index.d.ts +1 -0
  219. package/api/abstractions/index.js +1 -0
  220. package/api/crud/TaskLogPrivateModel.d.ts +9 -0
  221. package/api/crud/TaskLogPrivateModel.js +40 -0
  222. package/api/crud/TaskLogPrivateModel.js.map +1 -0
  223. package/api/crud/TaskPrivateModel.d.ts +9 -0
  224. package/api/crud/TaskPrivateModel.js +55 -0
  225. package/api/crud/TaskPrivateModel.js.map +1 -0
  226. package/api/crud/cleanupTaskSubtree.d.ts +8 -0
  227. package/api/crud/cleanupTaskSubtree.js +63 -0
  228. package/api/crud/cleanupTaskSubtree.js.map +1 -0
  229. package/api/crud/crud.tasks.d.ts +3 -0
  230. package/api/crud/crud.tasks.js +318 -0
  231. package/api/crud/crud.tasks.js.map +1 -0
  232. package/api/crud/definition.tasks.d.ts +3 -0
  233. package/api/crud/definition.tasks.js +17 -0
  234. package/api/crud/definition.tasks.js.map +1 -0
  235. package/api/crud/service.tasks.d.ts +3 -0
  236. package/api/crud/service.tasks.js +132 -0
  237. package/api/crud/service.tasks.js.map +1 -0
  238. package/api/decorators/RunnableTaskDecorator.d.ts +32 -0
  239. package/api/decorators/RunnableTaskDecorator.js +69 -0
  240. package/api/decorators/RunnableTaskDecorator.js.map +1 -0
  241. package/api/decorators/SelfCleaningTaskDecorator.d.ts +30 -0
  242. package/api/decorators/SelfCleaningTaskDecorator.js +84 -0
  243. package/api/decorators/SelfCleaningTaskDecorator.js.map +1 -0
  244. package/api/domain/BackgroundTaskSettings.d.ts +3 -0
  245. package/api/domain/BackgroundTaskSettings.js +0 -0
  246. package/api/domain/TaskService.d.ts +12 -0
  247. package/api/domain/TaskService.js +5 -0
  248. package/api/domain/TaskService.js.map +1 -0
  249. package/api/domain/constants.d.ts +3 -0
  250. package/api/domain/constants.js +6 -0
  251. package/api/domain/constants.js.map +1 -0
  252. package/api/domain/errors.d.ts +57 -0
  253. package/api/domain/errors.js +101 -0
  254. package/api/domain/errors.js.map +1 -0
  255. package/api/events/TaskAfterCreateEvent.d.ts +6 -0
  256. package/api/events/TaskAfterCreateEvent.js +13 -0
  257. package/api/events/TaskAfterCreateEvent.js.map +1 -0
  258. package/api/events/TaskAfterDeleteEvent.d.ts +6 -0
  259. package/api/events/TaskAfterDeleteEvent.js +13 -0
  260. package/api/events/TaskAfterDeleteEvent.js.map +1 -0
  261. package/api/events/TaskAfterUpdateEvent.d.ts +6 -0
  262. package/api/events/TaskAfterUpdateEvent.js +13 -0
  263. package/api/events/TaskAfterUpdateEvent.js.map +1 -0
  264. package/api/events/TaskBeforeCreateEvent.d.ts +6 -0
  265. package/api/events/TaskBeforeCreateEvent.js +13 -0
  266. package/api/events/TaskBeforeCreateEvent.js.map +1 -0
  267. package/api/events/TaskBeforeDeleteEvent.d.ts +6 -0
  268. package/api/events/TaskBeforeDeleteEvent.js +13 -0
  269. package/api/events/TaskBeforeDeleteEvent.js.map +1 -0
  270. package/api/events/TaskBeforeUpdateEvent.d.ts +6 -0
  271. package/api/events/TaskBeforeUpdateEvent.js +13 -0
  272. package/api/events/TaskBeforeUpdateEvent.js.map +1 -0
  273. package/api/events/abstractions.d.ts +53 -0
  274. package/api/events/abstractions.js +10 -0
  275. package/api/events/abstractions.js.map +1 -0
  276. package/api/events/index.d.ts +7 -0
  277. package/api/events/index.js +7 -0
  278. package/api/features/AbortTask/AbortTaskUseCase.d.ts +9 -0
  279. package/api/features/AbortTask/AbortTaskUseCase.js +12 -0
  280. package/api/features/AbortTask/AbortTaskUseCase.js.map +1 -0
  281. package/api/features/AbortTask/abstractions.d.ts +25 -0
  282. package/api/features/AbortTask/abstractions.js +5 -0
  283. package/api/features/AbortTask/abstractions.js.map +1 -0
  284. package/api/features/AbortTask/feature.d.ts +4 -0
  285. package/api/features/AbortTask/feature.js +13 -0
  286. package/api/features/AbortTask/feature.js.map +1 -0
  287. package/api/features/AbortTask/index.d.ts +2 -0
  288. package/api/features/AbortTask/index.js +2 -0
  289. package/api/features/BackgroundTaskPermissions/abstractions.d.ts +17 -0
  290. package/api/features/BackgroundTaskPermissions/abstractions.js +6 -0
  291. package/api/features/BackgroundTaskPermissions/abstractions.js.map +1 -0
  292. package/api/features/BackgroundTaskPermissions/feature.d.ts +4 -0
  293. package/api/features/BackgroundTaskPermissions/feature.js +7 -0
  294. package/api/features/BackgroundTaskPermissions/feature.js.map +1 -0
  295. package/api/features/BackgroundTaskPermissions/index.d.ts +2 -0
  296. package/api/features/BackgroundTaskPermissions/index.js +2 -0
  297. package/api/features/CleanupTaskSubtree/CleanupTaskSubtreeUseCase.d.ts +7 -0
  298. package/api/features/CleanupTaskSubtree/CleanupTaskSubtreeUseCase.js +11 -0
  299. package/api/features/CleanupTaskSubtree/CleanupTaskSubtreeUseCase.js.map +1 -0
  300. package/api/features/CleanupTaskSubtree/abstractions.d.ts +7 -0
  301. package/api/features/CleanupTaskSubtree/abstractions.js +5 -0
  302. package/api/features/CleanupTaskSubtree/abstractions.js.map +1 -0
  303. package/api/features/CleanupTaskSubtree/index.d.ts +2 -0
  304. package/api/features/CleanupTaskSubtree/index.js +2 -0
  305. package/api/features/GetBackgroundTaskSettings/GetBackgroundTaskSettingsRepository.d.ts +21 -0
  306. package/api/features/GetBackgroundTaskSettings/GetBackgroundTaskSettingsRepository.js +63 -0
  307. package/api/features/GetBackgroundTaskSettings/GetBackgroundTaskSettingsRepository.js.map +1 -0
  308. package/api/features/GetBackgroundTaskSettings/abstractions.d.ts +13 -0
  309. package/api/features/GetBackgroundTaskSettings/abstractions.js +5 -0
  310. package/api/features/GetBackgroundTaskSettings/abstractions.js.map +1 -0
  311. package/api/features/GetBackgroundTaskSettings/feature.d.ts +4 -0
  312. package/api/features/GetBackgroundTaskSettings/feature.js +11 -0
  313. package/api/features/GetBackgroundTaskSettings/feature.js.map +1 -0
  314. package/api/features/GetBackgroundTaskSettings/index.d.ts +2 -0
  315. package/api/features/GetBackgroundTaskSettings/index.js +2 -0
  316. package/api/features/GetTask/GetTaskUseCase.d.ts +9 -0
  317. package/api/features/GetTask/GetTaskUseCase.js +11 -0
  318. package/api/features/GetTask/GetTaskUseCase.js.map +1 -0
  319. package/api/features/GetTask/abstractions.d.ts +10 -0
  320. package/api/features/GetTask/abstractions.js +5 -0
  321. package/api/features/GetTask/abstractions.js.map +1 -0
  322. package/api/features/GetTask/feature.d.ts +4 -0
  323. package/api/features/GetTask/feature.js +13 -0
  324. package/api/features/GetTask/feature.js.map +1 -0
  325. package/api/features/GetTask/index.d.ts +2 -0
  326. package/api/features/GetTask/index.js +2 -0
  327. package/api/features/GetTaskDefinition/GetTaskDefinitionUseCase.d.ts +12 -0
  328. package/api/features/GetTaskDefinition/GetTaskDefinitionUseCase.js +27 -0
  329. package/api/features/GetTaskDefinition/GetTaskDefinitionUseCase.js.map +1 -0
  330. package/api/features/GetTaskDefinition/abstractions.d.ts +17 -0
  331. package/api/features/GetTaskDefinition/abstractions.js +5 -0
  332. package/api/features/GetTaskDefinition/abstractions.js.map +1 -0
  333. package/api/features/GetTaskDefinition/feature.d.ts +4 -0
  334. package/api/features/GetTaskDefinition/feature.js +11 -0
  335. package/api/features/GetTaskDefinition/feature.js.map +1 -0
  336. package/api/features/GetTaskDefinition/index.d.ts +2 -0
  337. package/api/features/GetTaskDefinition/index.js +2 -0
  338. package/api/features/ListTaskDefinitions/ListTaskDefinitionsUseCase.d.ts +11 -0
  339. package/api/features/ListTaskDefinitions/ListTaskDefinitionsUseCase.js +24 -0
  340. package/api/features/ListTaskDefinitions/ListTaskDefinitionsUseCase.js.map +1 -0
  341. package/api/features/ListTaskDefinitions/abstractions.d.ts +9 -0
  342. package/api/features/ListTaskDefinitions/abstractions.js +5 -0
  343. package/api/features/ListTaskDefinitions/abstractions.js.map +1 -0
  344. package/api/features/ListTaskDefinitions/feature.d.ts +4 -0
  345. package/api/features/ListTaskDefinitions/feature.js +11 -0
  346. package/api/features/ListTaskDefinitions/feature.js.map +1 -0
  347. package/api/features/ListTaskDefinitions/index.d.ts +2 -0
  348. package/api/features/ListTaskDefinitions/index.js +2 -0
  349. package/api/features/ListTasks/ListTasksUseCase.d.ts +10 -0
  350. package/api/features/ListTasks/ListTasksUseCase.js +11 -0
  351. package/api/features/ListTasks/ListTasksUseCase.js.map +1 -0
  352. package/api/features/ListTasks/abstractions.d.ts +13 -0
  353. package/api/features/ListTasks/abstractions.js +5 -0
  354. package/api/features/ListTasks/abstractions.js.map +1 -0
  355. package/api/features/ListTasks/feature.d.ts +4 -0
  356. package/api/features/ListTasks/feature.js +13 -0
  357. package/api/features/ListTasks/feature.js.map +1 -0
  358. package/api/features/ListTasks/index.d.ts +2 -0
  359. package/api/features/ListTasks/index.js +2 -0
  360. package/api/features/TaskController/TaskController.d.ts +49 -0
  361. package/api/features/TaskController/TaskController.js +71 -0
  362. package/api/features/TaskController/TaskController.js.map +1 -0
  363. package/api/features/TaskController/augmentation.d.ts +60 -0
  364. package/api/features/TaskController/augmentation.js +0 -0
  365. package/api/features/TaskController/index.d.ts +2 -0
  366. package/api/features/TaskController/index.js +2 -0
  367. package/api/features/TaskExecutionContext/TaskExecutionContext.d.ts +24 -0
  368. package/api/features/TaskExecutionContext/TaskExecutionContext.js +43 -0
  369. package/api/features/TaskExecutionContext/TaskExecutionContext.js.map +1 -0
  370. package/api/features/TaskExecutionContext/abstractions.d.ts +26 -0
  371. package/api/features/TaskExecutionContext/abstractions.js +5 -0
  372. package/api/features/TaskExecutionContext/abstractions.js.map +1 -0
  373. package/api/features/TaskExecutionContext/feature.d.ts +4 -0
  374. package/api/features/TaskExecutionContext/feature.js +11 -0
  375. package/api/features/TaskExecutionContext/feature.js.map +1 -0
  376. package/api/features/TaskExecutionContext/index.d.ts +1 -0
  377. package/api/features/TaskExecutionContext/index.js +1 -0
  378. package/api/features/TriggerTask/TriggerTaskUseCase.d.ts +9 -0
  379. package/api/features/TriggerTask/TriggerTaskUseCase.js +12 -0
  380. package/api/features/TriggerTask/TriggerTaskUseCase.js.map +1 -0
  381. package/api/features/TriggerTask/abstractions.d.ts +28 -0
  382. package/api/features/TriggerTask/abstractions.js +5 -0
  383. package/api/features/TriggerTask/abstractions.js.map +1 -0
  384. package/api/features/TriggerTask/feature.d.ts +4 -0
  385. package/api/features/TriggerTask/feature.js +13 -0
  386. package/api/features/TriggerTask/feature.js.map +1 -0
  387. package/api/features/TriggerTask/index.d.ts +2 -0
  388. package/api/features/TriggerTask/index.js +2 -0
  389. package/api/features/UpdateBackgroundTaskSettings/UpdateBackgroundTaskSettingsRepository.d.ts +23 -0
  390. package/api/features/UpdateBackgroundTaskSettings/UpdateBackgroundTaskSettingsRepository.js +65 -0
  391. package/api/features/UpdateBackgroundTaskSettings/UpdateBackgroundTaskSettingsRepository.js.map +1 -0
  392. package/api/features/UpdateBackgroundTaskSettings/UpdateBackgroundTaskSettingsUseCase.d.ts +14 -0
  393. package/api/features/UpdateBackgroundTaskSettings/UpdateBackgroundTaskSettingsUseCase.js +27 -0
  394. package/api/features/UpdateBackgroundTaskSettings/UpdateBackgroundTaskSettingsUseCase.js.map +1 -0
  395. package/api/features/UpdateBackgroundTaskSettings/abstractions.d.ts +26 -0
  396. package/api/features/UpdateBackgroundTaskSettings/abstractions.js +6 -0
  397. package/api/features/UpdateBackgroundTaskSettings/abstractions.js.map +1 -0
  398. package/api/features/UpdateBackgroundTaskSettings/feature.d.ts +4 -0
  399. package/api/features/UpdateBackgroundTaskSettings/feature.js +13 -0
  400. package/api/features/UpdateBackgroundTaskSettings/feature.js.map +1 -0
  401. package/api/features/UpdateBackgroundTaskSettings/index.d.ts +2 -0
  402. package/api/features/UpdateBackgroundTaskSettings/index.js +2 -0
  403. package/api/features/UpdateBackgroundTaskSettings/schema.d.ts +4 -0
  404. package/api/features/UpdateBackgroundTaskSettings/schema.js +8 -0
  405. package/api/features/UpdateBackgroundTaskSettings/schema.js.map +1 -0
  406. package/api/global.d.ts +1 -0
  407. package/api/global.js +1 -0
  408. package/api/graphql/BackgroundTasksContextualSchema.d.ts +21 -0
  409. package/api/graphql/BackgroundTasksContextualSchema.js +369 -0
  410. package/api/graphql/BackgroundTasksContextualSchema.js.map +1 -0
  411. package/api/graphql/checkPermissions.d.ts +7 -0
  412. package/api/graphql/checkPermissions.js +22 -0
  413. package/api/graphql/checkPermissions.js.map +1 -0
  414. package/api/graphql/utils.d.ts +9 -0
  415. package/api/graphql/utils.js +20 -0
  416. package/api/graphql/utils.js.map +1 -0
  417. package/api/handler/types.d.ts +21 -0
  418. package/api/handler/types.js +0 -0
  419. package/api/index.d.ts +12 -0
  420. package/api/index.js +11 -0
  421. package/api/models/BackgroundTaskSettingsModel.d.ts +8 -0
  422. package/api/models/BackgroundTaskSettingsModel.js +27 -0
  423. package/api/models/BackgroundTaskSettingsModel.js.map +1 -0
  424. package/api/permissions.d.ts +12 -0
  425. package/api/permissions.js +22 -0
  426. package/api/permissions.js.map +1 -0
  427. package/api/response/DatabaseResponse.d.ts +12 -0
  428. package/api/response/DatabaseResponse.js +127 -0
  429. package/api/response/DatabaseResponse.js.map +1 -0
  430. package/api/response/Response.d.ts +14 -0
  431. package/api/response/Response.js +91 -0
  432. package/api/response/Response.js.map +1 -0
  433. package/api/response/ResponseAbortedResult.d.ts +9 -0
  434. package/api/response/ResponseAbortedResult.js +12 -0
  435. package/api/response/ResponseAbortedResult.js.map +1 -0
  436. package/api/response/ResponseContinueResult.d.ts +17 -0
  437. package/api/response/ResponseContinueResult.js +16 -0
  438. package/api/response/ResponseContinueResult.js.map +1 -0
  439. package/api/response/ResponseDoneResult.d.ts +11 -0
  440. package/api/response/ResponseDoneResult.js +14 -0
  441. package/api/response/ResponseDoneResult.js.map +1 -0
  442. package/api/response/ResponseErrorResult.d.ts +10 -0
  443. package/api/response/ResponseErrorResult.js +13 -0
  444. package/api/response/ResponseErrorResult.js.map +1 -0
  445. package/api/response/TaskResponse.d.ts +12 -0
  446. package/api/response/TaskResponse.js +53 -0
  447. package/api/response/TaskResponse.js.map +1 -0
  448. package/api/response/abstractions/Response.d.ts +25 -0
  449. package/api/response/abstractions/Response.js +0 -0
  450. package/api/response/abstractions/ResponseAbortedResult.d.ts +5 -0
  451. package/api/response/abstractions/ResponseAbortedResult.js +0 -0
  452. package/api/response/abstractions/ResponseBaseResult.d.ts +7 -0
  453. package/api/response/abstractions/ResponseBaseResult.js +0 -0
  454. package/api/response/abstractions/ResponseContinueResult.d.ts +21 -0
  455. package/api/response/abstractions/ResponseContinueResult.js +0 -0
  456. package/api/response/abstractions/ResponseDoneResult.d.ts +13 -0
  457. package/api/response/abstractions/ResponseDoneResult.js +0 -0
  458. package/api/response/abstractions/ResponseErrorResult.d.ts +18 -0
  459. package/api/response/abstractions/ResponseErrorResult.js +0 -0
  460. package/api/response/abstractions/TaskResponse.d.ts +16 -0
  461. package/api/response/abstractions/TaskResponse.js +0 -0
  462. package/api/response/abstractions/index.d.ts +7 -0
  463. package/api/response/abstractions/index.js +7 -0
  464. package/api/response/index.d.ts +7 -0
  465. package/api/response/index.js +7 -0
  466. package/api/runner/TaskControl.d.ts +14 -0
  467. package/api/runner/TaskControl.js +176 -0
  468. package/api/runner/TaskControl.js.map +1 -0
  469. package/api/runner/TaskEventValidation.d.ts +5 -0
  470. package/api/runner/TaskEventValidation.js +20 -0
  471. package/api/runner/TaskEventValidation.js.map +1 -0
  472. package/api/runner/TaskManager.d.ts +11 -0
  473. package/api/runner/TaskManager.js +82 -0
  474. package/api/runner/TaskManager.js.map +1 -0
  475. package/api/runner/TaskManagerStore.d.ts +41 -0
  476. package/api/runner/TaskManagerStore.js +111 -0
  477. package/api/runner/TaskManagerStore.js.map +1 -0
  478. package/api/runner/TaskRunner.d.ts +25 -0
  479. package/api/runner/TaskRunner.js +55 -0
  480. package/api/runner/TaskRunner.js.map +1 -0
  481. package/api/runner/abstractions/TaskControl.d.ts +10 -0
  482. package/api/runner/abstractions/TaskControl.js +0 -0
  483. package/api/runner/abstractions/TaskEventValidation.d.ts +5 -0
  484. package/api/runner/abstractions/TaskEventValidation.js +0 -0
  485. package/api/runner/abstractions/TaskManager.d.ts +5 -0
  486. package/api/runner/abstractions/TaskManager.js +0 -0
  487. package/api/runner/abstractions/TaskManagerStore.d.ts +92 -0
  488. package/api/runner/abstractions/TaskManagerStore.js +0 -0
  489. package/api/runner/abstractions/TaskRunner.d.ts +13 -0
  490. package/api/runner/abstractions/TaskRunner.js +0 -0
  491. package/api/runner/abstractions/index.d.ts +5 -0
  492. package/api/runner/abstractions/index.js +5 -0
  493. package/api/runner/index.d.ts +1 -0
  494. package/api/runner/index.js +1 -0
  495. package/api/service/createService.d.ts +6 -0
  496. package/api/service/createService.js +11 -0
  497. package/api/service/createService.js.map +1 -0
  498. package/api/service/index.d.ts +1 -0
  499. package/api/service/index.js +1 -0
  500. package/api/tasks/testingRunTask.d.ts +11 -0
  501. package/api/tasks/testingRunTask.js +18 -0
  502. package/api/tasks/testingRunTask.js.map +1 -0
  503. package/api/types.d.ts +167 -0
  504. package/api/types.js +20 -0
  505. package/api/types.js.map +1 -0
  506. package/api/utils/ObjectUpdater.d.ts +8 -0
  507. package/api/utils/ObjectUpdater.js +33 -0
  508. package/api/utils/ObjectUpdater.js.map +1 -0
  509. package/api/utils/getErrorProperties.d.ts +2 -0
  510. package/api/utils/getErrorProperties.js +9 -0
  511. package/api/utils/getErrorProperties.js.map +1 -0
  512. package/api/utils/getObjectProperties.d.ts +8 -0
  513. package/api/utils/getObjectProperties.js +11 -0
  514. package/api/utils/getObjectProperties.js.map +1 -0
  515. package/api/utils/index.d.ts +3 -0
  516. package/api/utils/index.js +3 -0
  517. package/api/utils/normalizeSelfCleanup.d.ts +2 -0
  518. package/api/utils/normalizeSelfCleanup.js +16 -0
  519. package/api/utils/normalizeSelfCleanup.js.map +1 -0
  520. package/index.d.ts +2 -0
  521. package/index.js +2 -0
  522. package/package.json +68 -0
@@ -0,0 +1,21 @@
1
+ import { type IBackgroundTaskSettingsPresenter, type IBackgroundTaskSettingsViewModel } from "./abstractions.js";
2
+ import { GetBackgroundTaskSettingsUseCase } from "../../../admin/features/getBackgroundTaskSettings/abstractions.js";
3
+ import { UpdateBackgroundTaskSettingsUseCase } from "../../../admin/features/updateBackgroundTaskSettings/abstractions.js";
4
+ import { FormModelFactory } from "@webiny/app-admin/features/formModel/abstractions.js";
5
+ declare class BackgroundTaskSettingsPresenterImpl implements IBackgroundTaskSettingsPresenter {
6
+ private readonly formModelFactory;
7
+ private readonly getSettingsUseCase;
8
+ private readonly updateSettingsUseCase;
9
+ private _loading;
10
+ private _saving;
11
+ private _form;
12
+ get vm(): IBackgroundTaskSettingsViewModel;
13
+ constructor(formModelFactory: FormModelFactory.Interface, getSettingsUseCase: GetBackgroundTaskSettingsUseCase.Interface, updateSettingsUseCase: UpdateBackgroundTaskSettingsUseCase.Interface);
14
+ private buildForm;
15
+ save(): Promise<boolean>;
16
+ init(): Promise<void>;
17
+ }
18
+ export declare const BackgroundTaskSettingsPresenter: typeof BackgroundTaskSettingsPresenterImpl & {
19
+ __abstraction: import("@webiny/di").Abstraction<IBackgroundTaskSettingsPresenter>;
20
+ };
21
+ export {};
@@ -0,0 +1,86 @@
1
+ import { computed, makeAutoObservable, runInAction } from "mobx";
2
+ import { BackgroundTaskSettingsPresenter } from "./abstractions.js";
3
+ import { GetBackgroundTaskSettingsUseCase } from "../../features/getBackgroundTaskSettings/abstractions.js";
4
+ import { UpdateBackgroundTaskSettingsUseCase } from "../../features/updateBackgroundTaskSettings/abstractions.js";
5
+ import { FormModelFactory } from "@webiny/app-admin/features/formModel/abstractions.js";
6
+ import { BACKGROUND_TASK_MAX_RETENTION_DAYS } from "../../../api/domain/constants.js";
7
+ class BackgroundTaskSettingsPresenterImpl {
8
+ get vm() {
9
+ return {
10
+ loading: this._loading,
11
+ saving: this._saving,
12
+ form: this._form.vm
13
+ };
14
+ }
15
+ constructor(formModelFactory, getSettingsUseCase, updateSettingsUseCase){
16
+ this.formModelFactory = formModelFactory;
17
+ this.getSettingsUseCase = getSettingsUseCase;
18
+ this.updateSettingsUseCase = updateSettingsUseCase;
19
+ this._loading = false;
20
+ this._saving = false;
21
+ this._form = this.buildForm();
22
+ makeAutoObservable(this, {
23
+ vm: computed
24
+ });
25
+ }
26
+ buildForm() {
27
+ return this.formModelFactory.create({
28
+ fields: (fields)=>({
29
+ retentionDays: fields.number().label("Retention (days)").placeholder("90").description(`How long to keep completed task runs. 0 = never delete. Max ${BACKGROUND_TASK_MAX_RETENTION_DAYS} days. Changing this value only affects future task executions; existing records are not retroactively deleted.`)
30
+ }),
31
+ layout: (layout)=>[
32
+ layout.row("retentionDays")
33
+ ]
34
+ });
35
+ }
36
+ async save() {
37
+ const data = await this._form.submit();
38
+ if (false === data) return false;
39
+ runInAction(()=>{
40
+ this._saving = true;
41
+ });
42
+ try {
43
+ const settings = await this.updateSettingsUseCase.execute({
44
+ retentionDays: null != data.retentionDays ? Number(data.retentionDays) : void 0
45
+ });
46
+ runInAction(()=>{
47
+ this._form.setData({
48
+ retentionDays: settings.retentionDays || ""
49
+ });
50
+ });
51
+ } finally{
52
+ runInAction(()=>{
53
+ this._saving = false;
54
+ });
55
+ }
56
+ return true;
57
+ }
58
+ async init() {
59
+ this._loading = true;
60
+ try {
61
+ const settings = await this.getSettingsUseCase.execute();
62
+ runInAction(()=>{
63
+ this._form = this.buildForm();
64
+ this._form.setData({
65
+ retentionDays: settings.retentionDays || ""
66
+ });
67
+ this._loading = false;
68
+ });
69
+ } catch {
70
+ runInAction(()=>{
71
+ this._loading = false;
72
+ });
73
+ }
74
+ }
75
+ }
76
+ const BackgroundTaskSettingsPresenter_BackgroundTaskSettingsPresenter = BackgroundTaskSettingsPresenter.createImplementation({
77
+ implementation: BackgroundTaskSettingsPresenterImpl,
78
+ dependencies: [
79
+ FormModelFactory,
80
+ GetBackgroundTaskSettingsUseCase,
81
+ UpdateBackgroundTaskSettingsUseCase
82
+ ]
83
+ });
84
+ export { BackgroundTaskSettingsPresenter_BackgroundTaskSettingsPresenter as BackgroundTaskSettingsPresenter };
85
+
86
+ //# sourceMappingURL=BackgroundTaskSettingsPresenter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"admin/presentation/BackgroundTaskSettings/BackgroundTaskSettingsPresenter.js","sources":["../../../../src/admin/presentation/BackgroundTaskSettings/BackgroundTaskSettingsPresenter.ts"],"sourcesContent":["import { computed, makeAutoObservable, runInAction } from \"mobx\";\nimport {\n BackgroundTaskSettingsPresenter as Abstraction,\n type IBackgroundTaskSettingsPresenter,\n type IBackgroundTaskSettingsViewModel\n} from \"./abstractions.js\";\nimport { GetBackgroundTaskSettingsUseCase } from \"~/admin/features/getBackgroundTaskSettings/abstractions.js\";\nimport { UpdateBackgroundTaskSettingsUseCase } from \"~/admin/features/updateBackgroundTaskSettings/abstractions.js\";\nimport {\n FormModelFactory,\n type IFormModel\n} from \"@webiny/app-admin/features/formModel/abstractions.js\";\nimport { BACKGROUND_TASK_MAX_RETENTION_DAYS } from \"~/api/domain/constants.js\";\n\nclass BackgroundTaskSettingsPresenterImpl implements IBackgroundTaskSettingsPresenter {\n private _loading = false;\n private _saving = false;\n private _form: IFormModel;\n\n public get vm(): IBackgroundTaskSettingsViewModel {\n return {\n loading: this._loading,\n saving: this._saving,\n form: this._form.vm\n };\n }\n\n public constructor(\n private readonly formModelFactory: FormModelFactory.Interface,\n private readonly getSettingsUseCase: GetBackgroundTaskSettingsUseCase.Interface,\n private readonly updateSettingsUseCase: UpdateBackgroundTaskSettingsUseCase.Interface\n ) {\n this._form = this.buildForm();\n\n makeAutoObservable(this, { vm: computed });\n }\n\n private buildForm(): IFormModel {\n return this.formModelFactory.create({\n fields: fields => ({\n retentionDays: fields\n .number()\n .label(\"Retention (days)\")\n .placeholder(\"90\")\n .description(\n `How long to keep completed task runs. 0 = never delete. Max ${BACKGROUND_TASK_MAX_RETENTION_DAYS} days. Changing this value only affects future task executions; existing records are not retroactively deleted.`\n )\n }),\n layout: layout => [layout.row(\"retentionDays\")]\n });\n }\n\n public async save(): Promise<boolean> {\n const data = await this._form.submit<Record<string, string>>();\n if (data === false) {\n return false;\n }\n\n runInAction(() => {\n this._saving = true;\n });\n\n try {\n const settings = await this.updateSettingsUseCase.execute({\n retentionDays: data.retentionDays != null ? Number(data.retentionDays) : undefined\n });\n\n runInAction(() => {\n this._form.setData({\n retentionDays: settings.retentionDays || \"\"\n });\n });\n } finally {\n runInAction(() => {\n this._saving = false;\n });\n }\n return true;\n }\n\n public async init(): Promise<void> {\n this._loading = true;\n\n try {\n const settings = await this.getSettingsUseCase.execute();\n\n runInAction(() => {\n this._form = this.buildForm();\n this._form.setData({\n retentionDays: settings.retentionDays || \"\"\n });\n this._loading = false;\n });\n } catch {\n runInAction(() => {\n this._loading = false;\n });\n }\n }\n}\n\nexport const BackgroundTaskSettingsPresenter = Abstraction.createImplementation({\n implementation: BackgroundTaskSettingsPresenterImpl,\n dependencies: [\n FormModelFactory,\n GetBackgroundTaskSettingsUseCase,\n UpdateBackgroundTaskSettingsUseCase\n ]\n});\n"],"names":["BackgroundTaskSettingsPresenterImpl","formModelFactory","getSettingsUseCase","updateSettingsUseCase","makeAutoObservable","computed","fields","BACKGROUND_TASK_MAX_RETENTION_DAYS","layout","data","runInAction","settings","Number","undefined","BackgroundTaskSettingsPresenter","Abstraction","FormModelFactory","GetBackgroundTaskSettingsUseCase","UpdateBackgroundTaskSettingsUseCase"],"mappings":";;;;;;AAcA,MAAMA;IAKF,IAAW,KAAuC;QAC9C,OAAO;YACH,SAAS,IAAI,CAAC,QAAQ;YACtB,QAAQ,IAAI,CAAC,OAAO;YACpB,MAAM,IAAI,CAAC,KAAK,CAAC,EAAE;QACvB;IACJ;IAEA,YACqBC,gBAA4C,EAC5CC,kBAA8D,EAC9DC,qBAAoE,CACvF;aAHmBF,gBAAgB,GAAhBA;aACAC,kBAAkB,GAAlBA;aACAC,qBAAqB,GAArBA;aAfb,QAAQ,GAAG;aACX,OAAO,GAAG;QAgBd,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,SAAS;QAE3BC,mBAAmB,IAAI,EAAE;YAAE,IAAIC;QAAS;IAC5C;IAEQ,YAAwB;QAC5B,OAAO,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC;YAChC,QAAQC,CAAAA,SAAW;oBACf,eAAeA,OACV,MAAM,GACN,KAAK,CAAC,oBACN,WAAW,CAAC,MACZ,WAAW,CACR,CAAC,4DAA4D,EAAEC,mCAAmC,+GAA+G,CAAC;gBAE9N;YACA,QAAQC,CAAAA,SAAU;oBAACA,OAAO,GAAG,CAAC;iBAAiB;QACnD;IACJ;IAEA,MAAa,OAAyB;QAClC,MAAMC,OAAO,MAAM,IAAI,CAAC,KAAK,CAAC,MAAM;QACpC,IAAIA,AAAS,UAATA,MACA,OAAO;QAGXC,YAAY;YACR,IAAI,CAAC,OAAO,GAAG;QACnB;QAEA,IAAI;YACA,MAAMC,WAAW,MAAM,IAAI,CAAC,qBAAqB,CAAC,OAAO,CAAC;gBACtD,eAAeF,AAAsB,QAAtBA,KAAK,aAAa,GAAWG,OAAOH,KAAK,aAAa,IAAII;YAC7E;YAEAH,YAAY;gBACR,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC;oBACf,eAAeC,SAAS,aAAa,IAAI;gBAC7C;YACJ;QACJ,SAAU;YACND,YAAY;gBACR,IAAI,CAAC,OAAO,GAAG;YACnB;QACJ;QACA,OAAO;IACX;IAEA,MAAa,OAAsB;QAC/B,IAAI,CAAC,QAAQ,GAAG;QAEhB,IAAI;YACA,MAAMC,WAAW,MAAM,IAAI,CAAC,kBAAkB,CAAC,OAAO;YAEtDD,YAAY;gBACR,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,SAAS;gBAC3B,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC;oBACf,eAAeC,SAAS,aAAa,IAAI;gBAC7C;gBACA,IAAI,CAAC,QAAQ,GAAG;YACpB;QACJ,EAAE,OAAM;YACJD,YAAY;gBACR,IAAI,CAAC,QAAQ,GAAG;YACpB;QACJ;IACJ;AACJ;AAEO,MAAMI,kEAAkCC,gCAAAA,oBAAgC,CAAC;IAC5E,gBAAgBf;IAChB,cAAc;QACVgB;QACAC;QACAC;KACH;AACL"}
@@ -0,0 +1,16 @@
1
+ import type { IFormVM } from "@webiny/app-admin/features/formModel/abstractions.js";
2
+ export interface IBackgroundTaskSettingsViewModel {
3
+ loading: boolean;
4
+ saving: boolean;
5
+ form: IFormVM;
6
+ }
7
+ export interface IBackgroundTaskSettingsPresenter {
8
+ vm: IBackgroundTaskSettingsViewModel;
9
+ save(): Promise<boolean>;
10
+ init(): void;
11
+ }
12
+ export declare const BackgroundTaskSettingsPresenter: import("@webiny/di").Abstraction<IBackgroundTaskSettingsPresenter>;
13
+ export declare namespace BackgroundTaskSettingsPresenter {
14
+ type Interface = IBackgroundTaskSettingsPresenter;
15
+ type ViewModel = IBackgroundTaskSettingsViewModel;
16
+ }
@@ -0,0 +1,5 @@
1
+ import { createAbstraction } from "@webiny/feature/admin";
2
+ const BackgroundTaskSettingsPresenter = createAbstraction("BackgroundTaskSettingsPresenter");
3
+ export { BackgroundTaskSettingsPresenter };
4
+
5
+ //# sourceMappingURL=abstractions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"admin/presentation/BackgroundTaskSettings/abstractions.js","sources":["../../../../src/admin/presentation/BackgroundTaskSettings/abstractions.ts"],"sourcesContent":["import { createAbstraction } from \"@webiny/feature/admin\";\nimport type { IFormVM } from \"@webiny/app-admin/features/formModel/abstractions.js\";\n\nexport interface IBackgroundTaskSettingsViewModel {\n loading: boolean;\n saving: boolean;\n form: IFormVM;\n}\n\nexport interface IBackgroundTaskSettingsPresenter {\n vm: IBackgroundTaskSettingsViewModel;\n save(): Promise<boolean>;\n init(): void;\n}\n\nexport const BackgroundTaskSettingsPresenter = createAbstraction<IBackgroundTaskSettingsPresenter>(\n \"BackgroundTaskSettingsPresenter\"\n);\n\nexport namespace BackgroundTaskSettingsPresenter {\n export type Interface = IBackgroundTaskSettingsPresenter;\n export type ViewModel = IBackgroundTaskSettingsViewModel;\n}\n"],"names":["BackgroundTaskSettingsPresenter","createAbstraction"],"mappings":";AAeO,MAAMA,kCAAkCC,kBAC3C"}
@@ -0,0 +1,2 @@
1
+ import React from "react";
2
+ export declare const BackgroundTaskSettingsView: () => React.JSX.Element;
@@ -0,0 +1,56 @@
1
+ import react, { useEffect, useMemo } from "react";
2
+ import { observer } from "mobx-react-lite";
3
+ import { DiContainerProvider, useContainer, useFeature } from "@webiny/app";
4
+ import { CenteredView, FormErrors, SimpleForm, SimpleFormContent, SimpleFormFooter, SimpleFormHeader } from "@webiny/app-admin";
5
+ import { Button, OverlayLoader, useToast } from "@webiny/admin-ui";
6
+ import { FormView } from "@webiny/app-admin/features/formModel/FormView.js";
7
+ import { BackgroundTaskSettingsPresenterFeature } from "../feature.js";
8
+ import { GetBackgroundTaskSettingsFeature } from "../../../features/getBackgroundTaskSettings/feature.js";
9
+ import { UpdateBackgroundTaskSettingsFeature } from "../../../features/updateBackgroundTaskSettings/feature.js";
10
+ const BackgroundTaskSettingsView_BackgroundTaskSettingsViewInner = observer(function() {
11
+ const { presenter } = useFeature(BackgroundTaskSettingsPresenterFeature);
12
+ const toast = useToast();
13
+ useEffect(()=>{
14
+ presenter.init();
15
+ }, [
16
+ presenter
17
+ ]);
18
+ const { vm } = presenter;
19
+ const handleSave = async ()=>{
20
+ const success = await presenter.save();
21
+ if (success) toast.showSuccessToast({
22
+ title: "Background task settings saved successfully!"
23
+ });
24
+ };
25
+ return /*#__PURE__*/ react.createElement(CenteredView, null, /*#__PURE__*/ react.createElement(FormErrors, {
26
+ form: vm.form
27
+ }), /*#__PURE__*/ react.createElement(SimpleForm, null, vm.loading ? /*#__PURE__*/ react.createElement(OverlayLoader, {
28
+ text: "Loading settings..."
29
+ }) : null, vm.saving ? /*#__PURE__*/ react.createElement(OverlayLoader, {
30
+ text: "Saving settings..."
31
+ }) : null, /*#__PURE__*/ react.createElement(SimpleFormHeader, {
32
+ title: "Background Task Settings"
33
+ }), /*#__PURE__*/ react.createElement(SimpleFormContent, null, /*#__PURE__*/ react.createElement(FormView, {
34
+ name: "BackgroundTaskSettings",
35
+ form: vm.form
36
+ })), /*#__PURE__*/ react.createElement(SimpleFormFooter, null, /*#__PURE__*/ react.createElement(Button, {
37
+ text: "Save settings",
38
+ onClick: handleSave
39
+ }))));
40
+ });
41
+ const BackgroundTaskSettingsView = ()=>{
42
+ const container = useContainer();
43
+ const scopedContainer = useMemo(()=>{
44
+ const child = container.createChildContainer();
45
+ GetBackgroundTaskSettingsFeature.register(child);
46
+ UpdateBackgroundTaskSettingsFeature.register(child);
47
+ BackgroundTaskSettingsPresenterFeature.register(child);
48
+ return child;
49
+ }, []);
50
+ return /*#__PURE__*/ react.createElement(DiContainerProvider, {
51
+ container: scopedContainer
52
+ }, /*#__PURE__*/ react.createElement(BackgroundTaskSettingsView_BackgroundTaskSettingsViewInner, null));
53
+ };
54
+ export { BackgroundTaskSettingsView };
55
+
56
+ //# sourceMappingURL=BackgroundTaskSettingsView.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"admin/presentation/BackgroundTaskSettings/components/BackgroundTaskSettingsView.js","sources":["../../../../../src/admin/presentation/BackgroundTaskSettings/components/BackgroundTaskSettingsView.tsx"],"sourcesContent":["import React, { useEffect, useMemo } from \"react\";\nimport { observer } from \"mobx-react-lite\";\nimport { DiContainerProvider, useContainer, useFeature } from \"@webiny/app\";\nimport { CenteredView, FormErrors } from \"@webiny/app-admin\";\nimport { Button, OverlayLoader } from \"@webiny/admin-ui\";\nimport { FormView } from \"@webiny/app-admin/features/formModel/FormView.js\";\nimport { SimpleFormHeader } from \"@webiny/app-admin\";\nimport { SimpleFormFooter } from \"@webiny/app-admin\";\nimport { SimpleFormContent } from \"@webiny/app-admin\";\nimport { SimpleForm } from \"@webiny/app-admin\";\nimport { useToast } from \"@webiny/admin-ui\";\nimport { BackgroundTaskSettingsPresenterFeature } from \"../feature.js\";\nimport { GetBackgroundTaskSettingsFeature } from \"~/admin/features/getBackgroundTaskSettings/feature.js\";\nimport { UpdateBackgroundTaskSettingsFeature } from \"~/admin/features/updateBackgroundTaskSettings/feature.js\";\n\nconst BackgroundTaskSettingsViewInner = observer(function BackgroundTaskSettingsViewInner() {\n const { presenter } = useFeature(BackgroundTaskSettingsPresenterFeature);\n const toast = useToast();\n\n useEffect(() => {\n void presenter.init();\n }, [presenter]);\n\n const { vm } = presenter;\n\n const handleSave = async () => {\n const success = await presenter.save();\n if (success) {\n toast.showSuccessToast({\n title: \"Background task settings saved successfully!\"\n });\n }\n };\n\n return (\n <CenteredView>\n <FormErrors form={vm.form} />\n <SimpleForm>\n {vm.loading ? <OverlayLoader text={\"Loading settings...\"} /> : null}\n {vm.saving ? <OverlayLoader text={\"Saving settings...\"} /> : null}\n <SimpleFormHeader title=\"Background Task Settings\" />\n <SimpleFormContent>\n <FormView name=\"BackgroundTaskSettings\" form={vm.form} />\n </SimpleFormContent>\n <SimpleFormFooter>\n <Button text={\"Save settings\"} onClick={handleSave} />\n </SimpleFormFooter>\n </SimpleForm>\n </CenteredView>\n );\n});\n\nexport const BackgroundTaskSettingsView = () => {\n const container = useContainer();\n\n const scopedContainer = useMemo(() => {\n const child = container.createChildContainer();\n GetBackgroundTaskSettingsFeature.register(child);\n UpdateBackgroundTaskSettingsFeature.register(child);\n BackgroundTaskSettingsPresenterFeature.register(child);\n return child;\n }, []);\n\n return (\n <DiContainerProvider container={scopedContainer}>\n <BackgroundTaskSettingsViewInner />\n </DiContainerProvider>\n );\n};\n"],"names":["BackgroundTaskSettingsViewInner","observer","presenter","useFeature","BackgroundTaskSettingsPresenterFeature","toast","useToast","useEffect","vm","handleSave","success","CenteredView","FormErrors","SimpleForm","OverlayLoader","SimpleFormHeader","SimpleFormContent","FormView","SimpleFormFooter","Button","BackgroundTaskSettingsView","container","useContainer","scopedContainer","useMemo","child","GetBackgroundTaskSettingsFeature","UpdateBackgroundTaskSettingsFeature","DiContainerProvider"],"mappings":";;;;;;;;;AAeA,MAAMA,6DAAkCC,SAAS;IAC7C,MAAM,EAAEC,SAAS,EAAE,GAAGC,WAAWC;IACjC,MAAMC,QAAQC;IAEdC,UAAU;QACDL,UAAU,IAAI;IACvB,GAAG;QAACA;KAAU;IAEd,MAAM,EAAEM,EAAE,EAAE,GAAGN;IAEf,MAAMO,aAAa;QACf,MAAMC,UAAU,MAAMR,UAAU,IAAI;QACpC,IAAIQ,SACAL,MAAM,gBAAgB,CAAC;YACnB,OAAO;QACX;IAER;IAEA,OAAO,WAAP,GACI,oBAACM,cAAYA,MAAAA,WAAAA,GACT,oBAACC,YAAUA;QAAC,MAAMJ,GAAG,IAAI;sBACzB,oBAACK,YAAUA,MACNL,GAAG,OAAO,GAAG,WAAH,GAAG,oBAACM,eAAaA;QAAC,MAAM;SAA4B,MAC9DN,GAAG,MAAM,GAAG,WAAH,GAAG,oBAACM,eAAaA;QAAC,MAAM;SAA2B,oBAC7D,oBAACC,kBAAgBA;QAAC,OAAM;sBACxB,oBAACC,mBAAiBA,MAAAA,WAAAA,GACd,oBAACC,UAAQA;QAAC,MAAK;QAAyB,MAAMT,GAAG,IAAI;uBAEzD,oBAACU,kBAAgBA,MAAAA,WAAAA,GACb,oBAACC,QAAMA;QAAC,MAAM;QAAiB,SAASV;;AAK5D;AAEO,MAAMW,6BAA6B;IACtC,MAAMC,YAAYC;IAElB,MAAMC,kBAAkBC,QAAQ;QAC5B,MAAMC,QAAQJ,UAAU,oBAAoB;QAC5CK,iCAAiC,QAAQ,CAACD;QAC1CE,oCAAoC,QAAQ,CAACF;QAC7CrB,uCAAuC,QAAQ,CAACqB;QAChD,OAAOA;IACX,GAAG,EAAE;IAEL,OAAO,WAAP,GACI,oBAACG,qBAAmBA;QAAC,WAAWL;qBAC5B,oBAACvB,4DAA+BA;AAG5C"}
@@ -0,0 +1,3 @@
1
+ export declare const BackgroundTaskSettingsPresenterFeature: import("@webiny/feature/admin").FeatureDefinition<{
2
+ presenter: import("./abstractions.js").IBackgroundTaskSettingsPresenter;
3
+ }, []>;
@@ -0,0 +1,17 @@
1
+ import { createFeature } from "@webiny/feature/admin";
2
+ import { BackgroundTaskSettingsPresenter } from "./abstractions.js";
3
+ import { BackgroundTaskSettingsPresenter as external_BackgroundTaskSettingsPresenter_js_BackgroundTaskSettingsPresenter } from "./BackgroundTaskSettingsPresenter.js";
4
+ const BackgroundTaskSettingsPresenterFeature = createFeature({
5
+ name: "BackgroundTasks/BackgroundTaskSettingsPresenter",
6
+ register (container) {
7
+ container.register(external_BackgroundTaskSettingsPresenter_js_BackgroundTaskSettingsPresenter).inSingletonScope();
8
+ },
9
+ resolve (container) {
10
+ return {
11
+ presenter: container.resolve(BackgroundTaskSettingsPresenter)
12
+ };
13
+ }
14
+ });
15
+ export { BackgroundTaskSettingsPresenterFeature };
16
+
17
+ //# sourceMappingURL=feature.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"admin/presentation/BackgroundTaskSettings/feature.js","sources":["../../../../src/admin/presentation/BackgroundTaskSettings/feature.ts"],"sourcesContent":["import { createFeature } from \"@webiny/feature/admin\";\nimport { BackgroundTaskSettingsPresenter as PresenterAbstraction } from \"./abstractions.js\";\nimport { BackgroundTaskSettingsPresenter } from \"./BackgroundTaskSettingsPresenter.js\";\n\nexport const BackgroundTaskSettingsPresenterFeature = createFeature({\n name: \"BackgroundTasks/BackgroundTaskSettingsPresenter\",\n register(container) {\n container.register(BackgroundTaskSettingsPresenter).inSingletonScope();\n },\n resolve(container) {\n return {\n presenter: container.resolve(PresenterAbstraction)\n };\n }\n});\n"],"names":["BackgroundTaskSettingsPresenterFeature","createFeature","container","BackgroundTaskSettingsPresenter","PresenterAbstraction"],"mappings":";;;AAIO,MAAMA,yCAAyCC,cAAc;IAChE,MAAM;IACN,UAASC,SAAS;QACdA,UAAU,QAAQ,CAACC,6EAAiC,gBAAgB;IACxE;IACA,SAAQD,SAAS;QACb,OAAO;YACH,WAAWA,UAAU,OAAO,CAACE;QACjC;IACJ;AACJ"}
@@ -0,0 +1,2 @@
1
+ export { BackgroundTaskSettingsPresenter } from "./abstractions.js";
2
+ export { BackgroundTaskSettingsPresenterFeature } from "./feature.js";
@@ -0,0 +1,2 @@
1
+ export { BackgroundTaskSettingsPresenter } from "./abstractions.js";
2
+ export { BackgroundTaskSettingsPresenterFeature } from "./feature.js";
@@ -0,0 +1,14 @@
1
+ import { type ITaskDefinitionsPresenter, type ITaskDefinitionsViewModel } from "./abstractions.js";
2
+ import { ListDefinitionsUseCase } from "../../../admin/features/listDefinitions/abstractions.js";
3
+ declare class TaskDefinitionsPresenterImpl implements ITaskDefinitionsPresenter {
4
+ private readonly listDefinitionsUseCase;
5
+ private _definitions;
6
+ private _loading;
7
+ constructor(listDefinitionsUseCase: ListDefinitionsUseCase.Interface);
8
+ get vm(): ITaskDefinitionsViewModel;
9
+ init(): void;
10
+ }
11
+ export declare const TaskDefinitionsPresenter: typeof TaskDefinitionsPresenterImpl & {
12
+ __abstraction: import("@webiny/di").Abstraction<ITaskDefinitionsPresenter>;
13
+ };
14
+ export {};
@@ -0,0 +1,41 @@
1
+ import { computed, makeAutoObservable, runInAction } from "mobx";
2
+ import { TaskDefinitionsPresenter } from "./abstractions.js";
3
+ import { ListDefinitionsUseCase } from "../../features/listDefinitions/abstractions.js";
4
+ class TaskDefinitionsPresenterImpl {
5
+ constructor(listDefinitionsUseCase){
6
+ this.listDefinitionsUseCase = listDefinitionsUseCase;
7
+ this._definitions = [];
8
+ this._loading = false;
9
+ makeAutoObservable(this, {
10
+ vm: computed
11
+ });
12
+ }
13
+ get vm() {
14
+ return {
15
+ definitions: this._definitions,
16
+ loading: this._loading
17
+ };
18
+ }
19
+ init() {
20
+ this._loading = true;
21
+ this.listDefinitionsUseCase.execute().then((definitions)=>{
22
+ runInAction(()=>{
23
+ this._definitions = definitions;
24
+ this._loading = false;
25
+ });
26
+ }).catch(()=>{
27
+ runInAction(()=>{
28
+ this._loading = false;
29
+ });
30
+ });
31
+ }
32
+ }
33
+ const TaskDefinitionsPresenter_TaskDefinitionsPresenter = TaskDefinitionsPresenter.createImplementation({
34
+ implementation: TaskDefinitionsPresenterImpl,
35
+ dependencies: [
36
+ ListDefinitionsUseCase
37
+ ]
38
+ });
39
+ export { TaskDefinitionsPresenter_TaskDefinitionsPresenter as TaskDefinitionsPresenter };
40
+
41
+ //# sourceMappingURL=TaskDefinitionsPresenter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"admin/presentation/TaskDefinitions/TaskDefinitionsPresenter.js","sources":["../../../../src/admin/presentation/TaskDefinitions/TaskDefinitionsPresenter.ts"],"sourcesContent":["import { makeAutoObservable, runInAction, computed } from \"mobx\";\nimport {\n TaskDefinitionsPresenter as Abstraction,\n type ITaskDefinitionsPresenter,\n type ITaskDefinitionsViewModel\n} from \"./abstractions.js\";\nimport { ListDefinitionsUseCase } from \"~/admin/features/listDefinitions/abstractions.js\";\nimport type { TaskDefinition } from \"~/admin/shared/types.js\";\n\nclass TaskDefinitionsPresenterImpl implements ITaskDefinitionsPresenter {\n private _definitions: TaskDefinition[] = [];\n private _loading = false;\n\n constructor(private readonly listDefinitionsUseCase: ListDefinitionsUseCase.Interface) {\n makeAutoObservable(this, { vm: computed });\n }\n\n get vm(): ITaskDefinitionsViewModel {\n return {\n definitions: this._definitions,\n loading: this._loading\n };\n }\n\n init(): void {\n this._loading = true;\n void this.listDefinitionsUseCase\n .execute()\n .then(definitions => {\n runInAction(() => {\n this._definitions = definitions;\n this._loading = false;\n });\n })\n .catch(() => {\n runInAction(() => {\n this._loading = false;\n });\n });\n }\n}\n\nexport const TaskDefinitionsPresenter = Abstraction.createImplementation({\n implementation: TaskDefinitionsPresenterImpl,\n dependencies: [ListDefinitionsUseCase]\n});\n"],"names":["TaskDefinitionsPresenterImpl","listDefinitionsUseCase","makeAutoObservable","computed","definitions","runInAction","TaskDefinitionsPresenter","Abstraction","ListDefinitionsUseCase"],"mappings":";;;AASA,MAAMA;IAIF,YAA6BC,sBAAwD,CAAE;aAA1DA,sBAAsB,GAAtBA;aAHrB,YAAY,GAAqB,EAAE;aACnC,QAAQ,GAAG;QAGfC,mBAAmB,IAAI,EAAE;YAAE,IAAIC;QAAS;IAC5C;IAEA,IAAI,KAAgC;QAChC,OAAO;YACH,aAAa,IAAI,CAAC,YAAY;YAC9B,SAAS,IAAI,CAAC,QAAQ;QAC1B;IACJ;IAEA,OAAa;QACT,IAAI,CAAC,QAAQ,GAAG;QACX,IAAI,CAAC,sBAAsB,CAC3B,OAAO,GACP,IAAI,CAACC,CAAAA;YACFC,YAAY;gBACR,IAAI,CAAC,YAAY,GAAGD;gBACpB,IAAI,CAAC,QAAQ,GAAG;YACpB;QACJ,GACC,KAAK,CAAC;YACHC,YAAY;gBACR,IAAI,CAAC,QAAQ,GAAG;YACpB;QACJ;IACR;AACJ;AAEO,MAAMC,oDAA2BC,yBAAAA,oBAAgC,CAAC;IACrE,gBAAgBP;IAChB,cAAc;QAACQ;KAAuB;AAC1C"}
@@ -0,0 +1,14 @@
1
+ import type { TaskDefinition } from "../../../admin/shared/types.js";
2
+ export interface ITaskDefinitionsViewModel {
3
+ definitions: TaskDefinition[];
4
+ loading: boolean;
5
+ }
6
+ export interface ITaskDefinitionsPresenter {
7
+ vm: ITaskDefinitionsViewModel;
8
+ init(): void;
9
+ }
10
+ export declare const TaskDefinitionsPresenter: import("@webiny/di").Abstraction<ITaskDefinitionsPresenter>;
11
+ export declare namespace TaskDefinitionsPresenter {
12
+ type Interface = ITaskDefinitionsPresenter;
13
+ type ViewModel = ITaskDefinitionsViewModel;
14
+ }
@@ -0,0 +1,5 @@
1
+ import { createAbstraction } from "@webiny/feature/admin";
2
+ const TaskDefinitionsPresenter = createAbstraction("TaskDefinitionsPresenter");
3
+ export { TaskDefinitionsPresenter };
4
+
5
+ //# sourceMappingURL=abstractions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"admin/presentation/TaskDefinitions/abstractions.js","sources":["../../../../src/admin/presentation/TaskDefinitions/abstractions.ts"],"sourcesContent":["import { createAbstraction } from \"@webiny/feature/admin\";\nimport type { TaskDefinition } from \"~/admin/shared/types.js\";\n\nexport interface ITaskDefinitionsViewModel {\n definitions: TaskDefinition[];\n loading: boolean;\n}\n\nexport interface ITaskDefinitionsPresenter {\n vm: ITaskDefinitionsViewModel;\n init(): void;\n}\n\nexport const TaskDefinitionsPresenter = createAbstraction<ITaskDefinitionsPresenter>(\n \"TaskDefinitionsPresenter\"\n);\n\nexport namespace TaskDefinitionsPresenter {\n export type Interface = ITaskDefinitionsPresenter;\n export type ViewModel = ITaskDefinitionsViewModel;\n}\n"],"names":["TaskDefinitionsPresenter","createAbstraction"],"mappings":";AAaO,MAAMA,2BAA2BC,kBACpC"}
@@ -0,0 +1,2 @@
1
+ import React from "react";
2
+ export declare const TaskDefinitionsView: () => React.JSX.Element;
@@ -0,0 +1,76 @@
1
+ import react, { useEffect, useMemo } from "react";
2
+ import { observer } from "mobx-react-lite";
3
+ import { DiContainerProvider, useContainer, useFeature } from "@webiny/app";
4
+ import { DataTable, Heading, Separator, Text } from "@webiny/admin-ui";
5
+ import { TaskDefinitionsPresenterFeature } from "../feature.js";
6
+ import { ListDefinitionsFeature } from "../../../features/listDefinitions/feature.js";
7
+ import { TaskExecutionsButton } from "./TaskExecutionsButton.js";
8
+ const TaskDefinitionsView_TaskDefinitionsViewInner = observer(function() {
9
+ const { presenter } = useFeature(TaskDefinitionsPresenterFeature);
10
+ useEffect(()=>{
11
+ presenter.init();
12
+ }, [
13
+ presenter
14
+ ]);
15
+ const { vm } = presenter;
16
+ const columns = useMemo(()=>({
17
+ title: {
18
+ header: "Title",
19
+ cell: (row)=>/*#__PURE__*/ react.createElement(Text, {
20
+ size: "sm"
21
+ }, row.title || row.id),
22
+ enableSorting: false,
23
+ size: 250
24
+ },
25
+ id: {
26
+ header: "ID",
27
+ cell: (row)=>/*#__PURE__*/ react.createElement(Text, {
28
+ size: "sm",
29
+ className: "text-neutral-strong font-mono"
30
+ }, row.id),
31
+ enableSorting: false,
32
+ size: 250
33
+ },
34
+ description: {
35
+ header: "Description",
36
+ cell: (row)=>/*#__PURE__*/ react.createElement(Text, {
37
+ size: "sm",
38
+ className: "text-neutral-strong"
39
+ }, row.description || "—"),
40
+ enableSorting: false
41
+ }
42
+ }), []);
43
+ return /*#__PURE__*/ react.createElement("div", {
44
+ className: "flex flex-col h-main-content"
45
+ }, /*#__PURE__*/ react.createElement("div", {
46
+ className: "flex items-center justify-between py-sm px-md"
47
+ }, /*#__PURE__*/ react.createElement(Heading, {
48
+ level: 5
49
+ }, "Task Definitions"), /*#__PURE__*/ react.createElement(TaskExecutionsButton, null)), /*#__PURE__*/ react.createElement(Separator, null), /*#__PURE__*/ react.createElement("div", {
50
+ className: "flex-1 overflow-auto"
51
+ }, vm.loading || 0 !== vm.definitions.length ? /*#__PURE__*/ react.createElement(DataTable, {
52
+ columns: columns,
53
+ data: vm.definitions,
54
+ loading: vm.loading,
55
+ stickyHeader: true
56
+ }) : /*#__PURE__*/ react.createElement("div", {
57
+ className: "flex flex-col items-center justify-center h-full gap-md"
58
+ }, /*#__PURE__*/ react.createElement(Text, {
59
+ className: "text-neutral-strong"
60
+ }, "No task definitions found."))));
61
+ });
62
+ const TaskDefinitionsView = ()=>{
63
+ const container = useContainer();
64
+ const scopedContainer = useMemo(()=>{
65
+ const child = container.createChildContainer();
66
+ ListDefinitionsFeature.register(child);
67
+ TaskDefinitionsPresenterFeature.register(child);
68
+ return child;
69
+ }, []);
70
+ return /*#__PURE__*/ react.createElement(DiContainerProvider, {
71
+ container: scopedContainer
72
+ }, /*#__PURE__*/ react.createElement(TaskDefinitionsView_TaskDefinitionsViewInner, null));
73
+ };
74
+ export { TaskDefinitionsView };
75
+
76
+ //# sourceMappingURL=TaskDefinitionsView.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"admin/presentation/TaskDefinitions/components/TaskDefinitionsView.js","sources":["../../../../../src/admin/presentation/TaskDefinitions/components/TaskDefinitionsView.tsx"],"sourcesContent":["import React, { useEffect, useMemo } from \"react\";\nimport { observer } from \"mobx-react-lite\";\nimport { DiContainerProvider, useContainer, useFeature } from \"@webiny/app\";\nimport { DataTable, Heading, Separator, Text } from \"@webiny/admin-ui\";\nimport { TaskDefinitionsPresenterFeature } from \"../feature.js\";\nimport { ListDefinitionsFeature } from \"~/admin/features/listDefinitions/feature.js\";\nimport type { TaskDefinition } from \"~/admin/shared/types.js\";\nimport { TaskExecutionsButton } from \"~/admin/presentation/TaskDefinitions/components/TaskExecutionsButton.js\";\n\nconst TaskDefinitionsViewInner = observer(function TaskDefinitionsViewInner() {\n const { presenter } = useFeature(TaskDefinitionsPresenterFeature);\n\n useEffect(() => {\n presenter.init();\n }, [presenter]);\n\n const { vm } = presenter;\n\n const columns = useMemo(\n () => ({\n title: {\n header: \"Title\",\n cell: (row: TaskDefinition) => <Text size=\"sm\">{row.title || row.id}</Text>,\n enableSorting: false,\n size: 250\n },\n id: {\n header: \"ID\",\n cell: (row: TaskDefinition) => (\n <Text size=\"sm\" className=\"text-neutral-strong font-mono\">\n {row.id}\n </Text>\n ),\n enableSorting: false,\n size: 250\n },\n description: {\n header: \"Description\",\n cell: (row: TaskDefinition) => (\n <Text size=\"sm\" className=\"text-neutral-strong\">\n {row.description || \"—\"}\n </Text>\n ),\n enableSorting: false\n }\n }),\n []\n );\n\n return (\n <div className=\"flex flex-col h-main-content\">\n <div className=\"flex items-center justify-between py-sm px-md\">\n <Heading level={5}>Task Definitions</Heading>\n <TaskExecutionsButton />\n </div>\n <Separator />\n <div className=\"flex-1 overflow-auto\">\n {!vm.loading && vm.definitions.length === 0 ? (\n <div className=\"flex flex-col items-center justify-center h-full gap-md\">\n <Text className=\"text-neutral-strong\">No task definitions found.</Text>\n </div>\n ) : (\n <DataTable<TaskDefinition>\n columns={columns}\n data={vm.definitions}\n loading={vm.loading}\n stickyHeader\n />\n )}\n </div>\n </div>\n );\n});\n\nexport const TaskDefinitionsView = () => {\n const container = useContainer();\n\n const scopedContainer = useMemo(() => {\n const child = container.createChildContainer();\n ListDefinitionsFeature.register(child);\n TaskDefinitionsPresenterFeature.register(child);\n return child;\n }, []);\n\n return (\n <DiContainerProvider container={scopedContainer}>\n <TaskDefinitionsViewInner />\n </DiContainerProvider>\n );\n};\n"],"names":["TaskDefinitionsViewInner","observer","presenter","useFeature","TaskDefinitionsPresenterFeature","useEffect","vm","columns","useMemo","row","Text","Heading","TaskExecutionsButton","Separator","DataTable","TaskDefinitionsView","container","useContainer","scopedContainer","child","ListDefinitionsFeature","DiContainerProvider"],"mappings":";;;;;;;AASA,MAAMA,+CAA2BC,SAAS;IACtC,MAAM,EAAEC,SAAS,EAAE,GAAGC,WAAWC;IAEjCC,UAAU;QACNH,UAAU,IAAI;IAClB,GAAG;QAACA;KAAU;IAEd,MAAM,EAAEI,EAAE,EAAE,GAAGJ;IAEf,MAAMK,UAAUC,QACZ,IAAO;YACH,OAAO;gBACH,QAAQ;gBACR,MAAM,CAACC,MAAAA,WAAAA,GAAwB,oBAACC,MAAIA;wBAAC,MAAK;uBAAMD,IAAI,KAAK,IAAIA,IAAI,EAAE;gBACnE,eAAe;gBACf,MAAM;YACV;YACA,IAAI;gBACA,QAAQ;gBACR,MAAM,CAACA,MAAAA,WAAAA,GACH,oBAACC,MAAIA;wBAAC,MAAK;wBAAK,WAAU;uBACrBD,IAAI,EAAE;gBAGf,eAAe;gBACf,MAAM;YACV;YACA,aAAa;gBACT,QAAQ;gBACR,MAAM,CAACA,MAAAA,WAAAA,GACH,oBAACC,MAAIA;wBAAC,MAAK;wBAAK,WAAU;uBACrBD,IAAI,WAAW,IAAI;gBAG5B,eAAe;YACnB;QACJ,IACA,EAAE;IAGN,OAAO,WAAP,GACI,oBAAC;QAAI,WAAU;qBACX,oBAAC;QAAI,WAAU;qBACX,oBAACE,SAAOA;QAAC,OAAO;OAAG,mCACnB,oBAACC,sBAAoBA,QAAAA,WAAAA,GAEzB,oBAACC,WAASA,OAAAA,WAAAA,GACV,oBAAC;QAAI,WAAU;OACV,AAACP,GAAG,OAAO,IAAIA,AAA0B,MAA1BA,GAAG,WAAW,CAAC,MAAM,GAES,cAG1C,oBAACQ,WAASA;QACN,SAASP;QACT,MAAMD,GAAG,WAAW;QACpB,SAASA,GAAG,OAAO;QACnB;SATsC,WAAJ,GACtC,oBAAC;QAAI,WAAU;qBACX,oBAACI,MAAIA;QAAC,WAAU;OAAsB;AAa9D;AAEO,MAAMK,sBAAsB;IAC/B,MAAMC,YAAYC;IAElB,MAAMC,kBAAkBV,QAAQ;QAC5B,MAAMW,QAAQH,UAAU,oBAAoB;QAC5CI,uBAAuB,QAAQ,CAACD;QAChCf,gCAAgC,QAAQ,CAACe;QACzC,OAAOA;IACX,GAAG,EAAE;IAEL,OAAO,WAAP,GACI,oBAACE,qBAAmBA;QAAC,WAAWH;qBAC5B,oBAAClB,8CAAwBA;AAGrC"}
@@ -0,0 +1,2 @@
1
+ import React from "react";
2
+ export declare const TaskExecutionsButton: () => React.JSX.Element;
@@ -0,0 +1,16 @@
1
+ import react from "react";
2
+ import { useRouter } from "@webiny/app-admin";
3
+ import { Button } from "@webiny/admin-ui";
4
+ import { ReactComponent } from "@webiny/icons/task.svg";
5
+ import { Routes } from "../../../routes.js";
6
+ const TaskExecutionsButton = ()=>{
7
+ const { goToRoute } = useRouter();
8
+ return /*#__PURE__*/ react.createElement(Button, {
9
+ variant: "secondary",
10
+ onClick: ()=>goToRoute(Routes.Executions),
11
+ icon: /*#__PURE__*/ react.createElement(ReactComponent, null)
12
+ }, "Task Executions");
13
+ };
14
+ export { TaskExecutionsButton };
15
+
16
+ //# sourceMappingURL=TaskExecutionsButton.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"admin/presentation/TaskDefinitions/components/TaskExecutionsButton.js","sources":["../../../../../src/admin/presentation/TaskDefinitions/components/TaskExecutionsButton.tsx"],"sourcesContent":["import React from \"react\";\nimport { useRouter } from \"@webiny/app-admin\";\nimport { Button } from \"@webiny/admin-ui\";\nimport { ReactComponent as TaskIcon } from \"@webiny/icons/task.svg\";\nimport { Routes } from \"~/admin/routes.js\";\n\nexport const TaskExecutionsButton = () => {\n const { goToRoute } = useRouter();\n\n return (\n <Button\n variant=\"secondary\"\n onClick={() => goToRoute(Routes.Executions)}\n icon={<TaskIcon />}\n >\n Task Executions\n </Button>\n );\n};\n"],"names":["TaskExecutionsButton","goToRoute","useRouter","Button","Routes","TaskIcon"],"mappings":";;;;;AAMO,MAAMA,uBAAuB;IAChC,MAAM,EAAEC,SAAS,EAAE,GAAGC;IAEtB,OAAO,WAAP,GACI,oBAACC,QAAMA;QACH,SAAQ;QACR,SAAS,IAAMF,UAAUG,OAAO,UAAU;QAC1C,oBAAM,oBAACC,gBAAQA;OAClB;AAIT"}
@@ -0,0 +1,3 @@
1
+ export declare const TaskDefinitionsPresenterFeature: import("@webiny/feature/admin").FeatureDefinition<{
2
+ presenter: import("./abstractions.js").ITaskDefinitionsPresenter;
3
+ }, []>;
@@ -0,0 +1,17 @@
1
+ import { createFeature } from "@webiny/feature/admin";
2
+ import { TaskDefinitionsPresenter } from "./abstractions.js";
3
+ import { TaskDefinitionsPresenter as external_TaskDefinitionsPresenter_js_TaskDefinitionsPresenter } from "./TaskDefinitionsPresenter.js";
4
+ const TaskDefinitionsPresenterFeature = createFeature({
5
+ name: "BackgroundTasks/TaskDefinitionsPresenter",
6
+ register (container) {
7
+ container.register(external_TaskDefinitionsPresenter_js_TaskDefinitionsPresenter).inSingletonScope();
8
+ },
9
+ resolve (container) {
10
+ return {
11
+ presenter: container.resolve(TaskDefinitionsPresenter)
12
+ };
13
+ }
14
+ });
15
+ export { TaskDefinitionsPresenterFeature };
16
+
17
+ //# sourceMappingURL=feature.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"admin/presentation/TaskDefinitions/feature.js","sources":["../../../../src/admin/presentation/TaskDefinitions/feature.ts"],"sourcesContent":["import { createFeature } from \"@webiny/feature/admin\";\nimport { TaskDefinitionsPresenter as PresenterAbstraction } from \"./abstractions.js\";\nimport { TaskDefinitionsPresenter } from \"./TaskDefinitionsPresenter.js\";\n\nexport const TaskDefinitionsPresenterFeature = createFeature({\n name: \"BackgroundTasks/TaskDefinitionsPresenter\",\n register(container) {\n container.register(TaskDefinitionsPresenter).inSingletonScope();\n },\n resolve(container) {\n return { presenter: container.resolve(PresenterAbstraction) };\n }\n});\n"],"names":["TaskDefinitionsPresenterFeature","createFeature","container","TaskDefinitionsPresenter","PresenterAbstraction"],"mappings":";;;AAIO,MAAMA,kCAAkCC,cAAc;IACzD,MAAM;IACN,UAASC,SAAS;QACdA,UAAU,QAAQ,CAACC,+DAA0B,gBAAgB;IACjE;IACA,SAAQD,SAAS;QACb,OAAO;YAAE,WAAWA,UAAU,OAAO,CAACE;QAAsB;IAChE;AACJ"}
@@ -0,0 +1,2 @@
1
+ export { TaskDefinitionsPresenter } from "./abstractions.js";
2
+ export { TaskDefinitionsPresenterFeature } from "./feature.js";
@@ -0,0 +1,2 @@
1
+ export { TaskDefinitionsPresenter } from "./abstractions.js";
2
+ export { TaskDefinitionsPresenterFeature } from "./feature.js";
@@ -0,0 +1,24 @@
1
+ import { type ITaskDetailPresenter, type ITaskDetailViewModel } from "./abstractions.js";
2
+ import { GetTaskUseCase } from "../../../admin/features/getTask/abstractions.js";
3
+ import { ListLogsUseCase } from "../../../admin/features/listLogs/abstractions.js";
4
+ declare class TaskDetailPresenterImpl implements ITaskDetailPresenter {
5
+ private readonly getTaskUseCase;
6
+ private readonly listLogsUseCase;
7
+ private _task;
8
+ private _loading;
9
+ private _logs;
10
+ private _logsLoading;
11
+ private _logsCursor;
12
+ private _logsHasMore;
13
+ private _logsTotalCount;
14
+ private _taskId;
15
+ constructor(getTaskUseCase: GetTaskUseCase.Interface, listLogsUseCase: ListLogsUseCase.Interface);
16
+ get vm(): ITaskDetailViewModel;
17
+ init(taskId: string): Promise<void>;
18
+ loadMore(): Promise<void>;
19
+ private fetchLogs;
20
+ }
21
+ export declare const TaskDetailPresenter: typeof TaskDetailPresenterImpl & {
22
+ __abstraction: import("@webiny/di").Abstraction<ITaskDetailPresenter>;
23
+ };
24
+ export {};
@@ -0,0 +1,87 @@
1
+ import { computed, makeAutoObservable, runInAction } from "mobx";
2
+ import { TaskDetailPresenter } from "./abstractions.js";
3
+ import { GetTaskUseCase } from "../../features/getTask/abstractions.js";
4
+ import { ListLogsUseCase } from "../../features/listLogs/abstractions.js";
5
+ class TaskDetailPresenterImpl {
6
+ constructor(getTaskUseCase, listLogsUseCase){
7
+ this.getTaskUseCase = getTaskUseCase;
8
+ this.listLogsUseCase = listLogsUseCase;
9
+ this._task = null;
10
+ this._loading = false;
11
+ this._logs = [];
12
+ this._logsLoading = false;
13
+ this._logsCursor = null;
14
+ this._logsHasMore = false;
15
+ this._logsTotalCount = 0;
16
+ this._taskId = null;
17
+ makeAutoObservable(this, {
18
+ vm: computed
19
+ });
20
+ }
21
+ get vm() {
22
+ return {
23
+ task: this._task,
24
+ loading: this._loading,
25
+ logs: {
26
+ rows: this._logs,
27
+ pagination: {
28
+ totalCount: this._logsTotalCount,
29
+ loading: this._logsLoading,
30
+ hasMore: this._logsHasMore
31
+ }
32
+ }
33
+ };
34
+ }
35
+ async init(taskId) {
36
+ this._taskId = taskId;
37
+ this._loading = true;
38
+ this._logs = [];
39
+ this._logsCursor = null;
40
+ this._logsHasMore = false;
41
+ this._logsTotalCount = 0;
42
+ const task = await this.getTaskUseCase.execute(taskId);
43
+ runInAction(()=>{
44
+ this._task = task;
45
+ this._loading = false;
46
+ });
47
+ await this.fetchLogs();
48
+ }
49
+ async loadMore() {
50
+ if (!this._logsHasMore || this._logsLoading) return;
51
+ await this.fetchLogs(this._logsCursor);
52
+ }
53
+ async fetchLogs(after) {
54
+ this._logsLoading = true;
55
+ const result = await this.listLogsUseCase.execute({
56
+ where: {
57
+ task: this._taskId
58
+ },
59
+ sort: [
60
+ "createdOn_DESC"
61
+ ],
62
+ limit: 50,
63
+ after: after || void 0
64
+ });
65
+ runInAction(()=>{
66
+ if (after) this._logs = [
67
+ ...this._logs,
68
+ ...result.items
69
+ ];
70
+ else this._logs = result.items;
71
+ this._logsCursor = result.meta.cursor;
72
+ this._logsHasMore = result.meta.hasMoreItems;
73
+ this._logsTotalCount = result.meta.totalCount;
74
+ this._logsLoading = false;
75
+ });
76
+ }
77
+ }
78
+ const TaskDetailPresenter_TaskDetailPresenter = TaskDetailPresenter.createImplementation({
79
+ implementation: TaskDetailPresenterImpl,
80
+ dependencies: [
81
+ GetTaskUseCase,
82
+ ListLogsUseCase
83
+ ]
84
+ });
85
+ export { TaskDetailPresenter_TaskDetailPresenter as TaskDetailPresenter };
86
+
87
+ //# sourceMappingURL=TaskDetailPresenter.js.map