@webiny/tasks 6.0.0-beta.0 → 6.0.0-rc.0

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 (310) hide show
  1. package/README.md +10 -9
  2. package/context.d.ts +2 -3
  3. package/context.js +44 -30
  4. package/context.js.map +1 -1
  5. package/crud/TaskLogPrivateModel.d.ts +9 -0
  6. package/crud/TaskLogPrivateModel.js +34 -0
  7. package/crud/TaskLogPrivateModel.js.map +1 -0
  8. package/crud/TaskPrivateModel.d.ts +9 -0
  9. package/crud/TaskPrivateModel.js +46 -0
  10. package/crud/TaskPrivateModel.js.map +1 -0
  11. package/crud/crud.tasks.d.ts +1 -1
  12. package/crud/crud.tasks.js +238 -94
  13. package/crud/crud.tasks.js.map +1 -1
  14. package/crud/definition.tasks.d.ts +1 -1
  15. package/crud/definition.tasks.js +9 -18
  16. package/crud/definition.tasks.js.map +1 -1
  17. package/crud/service.tasks.d.ts +2 -0
  18. package/crud/{trigger.tasks.js → service.tasks.js} +59 -42
  19. package/crud/service.tasks.js.map +1 -0
  20. package/decorators/RunnableTaskDecorator.d.ts +31 -0
  21. package/decorators/RunnableTaskDecorator.js +82 -0
  22. package/decorators/RunnableTaskDecorator.js.map +1 -0
  23. package/domain/errors.d.ts +29 -0
  24. package/domain/errors.js +47 -0
  25. package/domain/errors.js.map +1 -0
  26. package/events/TaskAfterCreateEvent.d.ts +6 -0
  27. package/events/TaskAfterCreateEvent.js +10 -0
  28. package/events/TaskAfterCreateEvent.js.map +1 -0
  29. package/events/TaskAfterDeleteEvent.d.ts +6 -0
  30. package/events/TaskAfterDeleteEvent.js +10 -0
  31. package/events/TaskAfterDeleteEvent.js.map +1 -0
  32. package/events/TaskAfterUpdateEvent.d.ts +6 -0
  33. package/events/TaskAfterUpdateEvent.js +10 -0
  34. package/events/TaskAfterUpdateEvent.js.map +1 -0
  35. package/events/TaskBeforeCreateEvent.d.ts +6 -0
  36. package/events/TaskBeforeCreateEvent.js +10 -0
  37. package/events/TaskBeforeCreateEvent.js.map +1 -0
  38. package/events/TaskBeforeDeleteEvent.d.ts +6 -0
  39. package/events/TaskBeforeDeleteEvent.js +10 -0
  40. package/events/TaskBeforeDeleteEvent.js.map +1 -0
  41. package/events/TaskBeforeUpdateEvent.d.ts +6 -0
  42. package/events/TaskBeforeUpdateEvent.js +10 -0
  43. package/events/TaskBeforeUpdateEvent.js.map +1 -0
  44. package/events/abstractions.d.ts +53 -0
  45. package/events/abstractions.js +39 -0
  46. package/events/abstractions.js.map +1 -0
  47. package/events/index.d.ts +7 -0
  48. package/events/index.js +9 -0
  49. package/events/index.js.map +1 -0
  50. package/features/AbortTask/AbortTaskUseCase.d.ts +10 -0
  51. package/features/AbortTask/AbortTaskUseCase.js +11 -0
  52. package/features/AbortTask/AbortTaskUseCase.js.map +1 -0
  53. package/features/AbortTask/abstractions.d.ts +25 -0
  54. package/features/AbortTask/abstractions.js +4 -0
  55. package/features/AbortTask/abstractions.js.map +1 -0
  56. package/features/AbortTask/feature.d.ts +2 -0
  57. package/features/AbortTask/feature.js +11 -0
  58. package/features/AbortTask/feature.js.map +1 -0
  59. package/features/AbortTask/index.d.ts +2 -0
  60. package/features/AbortTask/index.js +4 -0
  61. package/features/AbortTask/index.js.map +1 -0
  62. package/features/GetTask/GetTaskUseCase.d.ts +9 -0
  63. package/features/GetTask/GetTaskUseCase.js +10 -0
  64. package/features/GetTask/GetTaskUseCase.js.map +1 -0
  65. package/features/GetTask/abstractions.d.ts +10 -0
  66. package/features/GetTask/abstractions.js +4 -0
  67. package/features/GetTask/abstractions.js.map +1 -0
  68. package/features/GetTask/feature.d.ts +2 -0
  69. package/features/GetTask/feature.js +11 -0
  70. package/features/GetTask/feature.js.map +1 -0
  71. package/features/GetTask/index.d.ts +2 -0
  72. package/features/GetTask/index.js +4 -0
  73. package/features/GetTask/index.js.map +1 -0
  74. package/features/GetTaskDefinition/GetTaskDefinitionUseCase.d.ts +12 -0
  75. package/features/GetTaskDefinition/GetTaskDefinitionUseCase.js +25 -0
  76. package/features/GetTaskDefinition/GetTaskDefinitionUseCase.js.map +1 -0
  77. package/features/GetTaskDefinition/abstractions.d.ts +17 -0
  78. package/features/GetTaskDefinition/abstractions.js +4 -0
  79. package/features/GetTaskDefinition/abstractions.js.map +1 -0
  80. package/features/GetTaskDefinition/feature.d.ts +1 -0
  81. package/features/GetTaskDefinition/feature.js +10 -0
  82. package/features/GetTaskDefinition/feature.js.map +1 -0
  83. package/features/GetTaskDefinition/index.d.ts +2 -0
  84. package/features/GetTaskDefinition/index.js +4 -0
  85. package/features/GetTaskDefinition/index.js.map +1 -0
  86. package/features/ListTaskDefinitions/ListTaskDefinitionsUseCase.d.ts +11 -0
  87. package/features/ListTaskDefinitions/ListTaskDefinitionsUseCase.js +18 -0
  88. package/features/ListTaskDefinitions/ListTaskDefinitionsUseCase.js.map +1 -0
  89. package/features/ListTaskDefinitions/abstractions.d.ts +9 -0
  90. package/features/ListTaskDefinitions/abstractions.js +4 -0
  91. package/features/ListTaskDefinitions/abstractions.js.map +1 -0
  92. package/features/ListTaskDefinitions/feature.d.ts +1 -0
  93. package/features/ListTaskDefinitions/feature.js +10 -0
  94. package/features/ListTaskDefinitions/feature.js.map +1 -0
  95. package/features/ListTaskDefinitions/index.d.ts +2 -0
  96. package/features/ListTaskDefinitions/index.js +4 -0
  97. package/features/ListTaskDefinitions/index.js.map +1 -0
  98. package/features/ListTasks/ListTasksUseCase.d.ts +9 -0
  99. package/features/ListTasks/ListTasksUseCase.js +10 -0
  100. package/features/ListTasks/ListTasksUseCase.js.map +1 -0
  101. package/features/ListTasks/abstractions.d.ts +13 -0
  102. package/features/ListTasks/abstractions.js +4 -0
  103. package/features/ListTasks/abstractions.js.map +1 -0
  104. package/features/ListTasks/feature.d.ts +2 -0
  105. package/features/ListTasks/feature.js +11 -0
  106. package/features/ListTasks/feature.js.map +1 -0
  107. package/features/ListTasks/index.d.ts +2 -0
  108. package/features/ListTasks/index.js +4 -0
  109. package/features/ListTasks/index.js.map +1 -0
  110. package/features/TaskController/TaskController.d.ts +49 -0
  111. package/features/TaskController/TaskController.js +71 -0
  112. package/features/TaskController/TaskController.js.map +1 -0
  113. package/features/TaskController/augmentation.d.ts +60 -0
  114. package/features/TaskController/augmentation.js +3 -0
  115. package/features/TaskController/augmentation.js.map +1 -0
  116. package/features/TaskController/index.d.ts +2 -0
  117. package/features/TaskController/index.js +7 -0
  118. package/features/TaskController/index.js.map +1 -0
  119. package/features/TaskExecutionContext/TaskExecutionContext.d.ts +24 -0
  120. package/features/TaskExecutionContext/TaskExecutionContext.js +50 -0
  121. package/features/TaskExecutionContext/TaskExecutionContext.js.map +1 -0
  122. package/features/TaskExecutionContext/abstractions.d.ts +26 -0
  123. package/features/TaskExecutionContext/abstractions.js +13 -0
  124. package/features/TaskExecutionContext/abstractions.js.map +1 -0
  125. package/features/TaskExecutionContext/feature.d.ts +1 -0
  126. package/features/TaskExecutionContext/feature.js +10 -0
  127. package/features/TaskExecutionContext/feature.js.map +1 -0
  128. package/features/TaskExecutionContext/index.d.ts +1 -0
  129. package/features/TaskExecutionContext/index.js +3 -0
  130. package/features/TaskExecutionContext/index.js.map +1 -0
  131. package/features/TriggerTask/TriggerTaskUseCase.d.ts +10 -0
  132. package/features/TriggerTask/TriggerTaskUseCase.js +11 -0
  133. package/features/TriggerTask/TriggerTaskUseCase.js.map +1 -0
  134. package/features/TriggerTask/abstractions.d.ts +28 -0
  135. package/features/TriggerTask/abstractions.js +4 -0
  136. package/features/TriggerTask/abstractions.js.map +1 -0
  137. package/features/TriggerTask/feature.d.ts +2 -0
  138. package/features/TriggerTask/feature.js +11 -0
  139. package/features/TriggerTask/feature.js.map +1 -0
  140. package/features/TriggerTask/index.d.ts +2 -0
  141. package/features/TriggerTask/index.js +4 -0
  142. package/features/TriggerTask/index.js.map +1 -0
  143. package/global.d.ts +1 -0
  144. package/global.js +3 -0
  145. package/global.js.map +1 -0
  146. package/graphql/checkPermissions.d.ts +1 -1
  147. package/graphql/checkPermissions.js +3 -9
  148. package/graphql/checkPermissions.js.map +1 -1
  149. package/graphql/index.d.ts +1 -1
  150. package/graphql/index.js +64 -71
  151. package/graphql/index.js.map +1 -1
  152. package/graphql/utils.d.ts +1 -1
  153. package/graphql/utils.js +8 -17
  154. package/graphql/utils.js.map +1 -1
  155. package/handler/index.d.ts +2 -5
  156. package/handler/index.js +33 -40
  157. package/handler/index.js.map +1 -1
  158. package/handler/register.js +8 -8
  159. package/handler/register.js.map +1 -1
  160. package/handler/types.d.ts +2 -2
  161. package/handler/types.js +1 -5
  162. package/handler/types.js.map +1 -1
  163. package/index.d.ts +5 -6
  164. package/index.js +5 -60
  165. package/index.js.map +1 -1
  166. package/package.json +23 -44
  167. package/plugins/TaskServicePlugin.d.ts +19 -0
  168. package/plugins/TaskServicePlugin.js +10 -0
  169. package/plugins/TaskServicePlugin.js.map +1 -0
  170. package/plugins/index.d.ts +1 -1
  171. package/plugins/index.js +1 -16
  172. package/plugins/index.js.map +1 -1
  173. package/response/DatabaseResponse.d.ts +3 -3
  174. package/response/DatabaseResponse.js +14 -20
  175. package/response/DatabaseResponse.js.map +1 -1
  176. package/response/Response.d.ts +4 -3
  177. package/response/Response.js +63 -27
  178. package/response/Response.js.map +1 -1
  179. package/response/ResponseAbortedResult.d.ts +3 -4
  180. package/response/ResponseAbortedResult.js +3 -11
  181. package/response/ResponseAbortedResult.js.map +1 -1
  182. package/response/ResponseContinueResult.d.ts +4 -4
  183. package/response/ResponseContinueResult.js +3 -11
  184. package/response/ResponseContinueResult.js.map +1 -1
  185. package/response/ResponseDoneResult.d.ts +4 -5
  186. package/response/ResponseDoneResult.js +4 -12
  187. package/response/ResponseDoneResult.js.map +1 -1
  188. package/response/ResponseErrorResult.d.ts +3 -4
  189. package/response/ResponseErrorResult.js +3 -11
  190. package/response/ResponseErrorResult.js.map +1 -1
  191. package/response/TaskResponse.d.ts +7 -6
  192. package/response/TaskResponse.js +7 -14
  193. package/response/TaskResponse.js.map +1 -1
  194. package/response/abstractions/Response.d.ts +9 -9
  195. package/response/abstractions/Response.js +1 -5
  196. package/response/abstractions/Response.js.map +1 -1
  197. package/response/abstractions/ResponseAbortedResult.d.ts +3 -3
  198. package/response/abstractions/ResponseAbortedResult.js +1 -5
  199. package/response/abstractions/ResponseAbortedResult.js.map +1 -1
  200. package/response/abstractions/ResponseBaseResult.d.ts +2 -3
  201. package/response/abstractions/ResponseBaseResult.js +1 -5
  202. package/response/abstractions/ResponseBaseResult.js.map +1 -1
  203. package/response/abstractions/ResponseContinueResult.d.ts +5 -4
  204. package/response/abstractions/ResponseContinueResult.js +1 -5
  205. package/response/abstractions/ResponseContinueResult.js.map +1 -1
  206. package/response/abstractions/ResponseDoneResult.d.ts +5 -6
  207. package/response/abstractions/ResponseDoneResult.js +1 -5
  208. package/response/abstractions/ResponseDoneResult.js.map +1 -1
  209. package/response/abstractions/ResponseErrorResult.d.ts +6 -6
  210. package/response/abstractions/ResponseErrorResult.js +1 -5
  211. package/response/abstractions/ResponseErrorResult.js.map +1 -1
  212. package/response/abstractions/TaskResponse.d.ts +9 -34
  213. package/response/abstractions/TaskResponse.js +1 -5
  214. package/response/abstractions/TaskResponse.js.map +1 -1
  215. package/response/abstractions/index.d.ts +7 -7
  216. package/response/abstractions/index.js +7 -82
  217. package/response/abstractions/index.js.map +1 -1
  218. package/response/index.d.ts +7 -7
  219. package/response/index.js +7 -82
  220. package/response/index.js.map +1 -1
  221. package/runner/TaskControl.d.ts +4 -4
  222. package/runner/TaskControl.js +98 -49
  223. package/runner/TaskControl.js.map +1 -1
  224. package/runner/TaskEventValidation.d.ts +2 -2
  225. package/runner/TaskEventValidation.js +11 -20
  226. package/runner/TaskEventValidation.js.map +1 -1
  227. package/runner/TaskManager.d.ts +7 -8
  228. package/runner/TaskManager.js +19 -38
  229. package/runner/TaskManager.js.map +1 -1
  230. package/runner/TaskManagerStore.d.ts +14 -5
  231. package/runner/TaskManagerStore.js +40 -26
  232. package/runner/TaskManagerStore.js.map +1 -1
  233. package/runner/TaskRunner.d.ts +6 -7
  234. package/runner/TaskRunner.js +9 -31
  235. package/runner/TaskRunner.js.map +1 -1
  236. package/runner/abstractions/TaskControl.d.ts +4 -4
  237. package/runner/abstractions/TaskControl.js +1 -5
  238. package/runner/abstractions/TaskControl.js.map +1 -1
  239. package/runner/abstractions/TaskEventValidation.d.ts +2 -2
  240. package/runner/abstractions/TaskEventValidation.js +1 -5
  241. package/runner/abstractions/TaskEventValidation.js.map +1 -1
  242. package/runner/abstractions/TaskManager.d.ts +4 -4
  243. package/runner/abstractions/TaskManager.js +1 -5
  244. package/runner/abstractions/TaskManager.js.map +1 -1
  245. package/runner/abstractions/TaskManagerStore.d.ts +15 -9
  246. package/runner/abstractions/TaskManagerStore.js +1 -5
  247. package/runner/abstractions/TaskManagerStore.js.map +1 -1
  248. package/runner/abstractions/TaskRunner.d.ts +9 -4
  249. package/runner/abstractions/TaskRunner.js +1 -5
  250. package/runner/abstractions/TaskRunner.js.map +1 -1
  251. package/runner/abstractions/index.d.ts +5 -5
  252. package/runner/abstractions/index.js +5 -60
  253. package/runner/abstractions/index.js.map +1 -1
  254. package/runner/index.d.ts +1 -1
  255. package/runner/index.js +1 -16
  256. package/runner/index.js.map +1 -1
  257. package/service/EventBridgeEventTransportPlugin.d.ts +16 -0
  258. package/service/EventBridgeEventTransportPlugin.js +51 -0
  259. package/service/EventBridgeEventTransportPlugin.js.map +1 -0
  260. package/service/StepFunctionServicePlugin.d.ts +25 -0
  261. package/service/StepFunctionServicePlugin.js +78 -0
  262. package/service/StepFunctionServicePlugin.js.map +1 -0
  263. package/service/createService.d.ts +6 -0
  264. package/service/createService.js +19 -0
  265. package/service/createService.js.map +1 -0
  266. package/service/index.d.ts +4 -0
  267. package/service/index.js +10 -0
  268. package/service/index.js.map +1 -0
  269. package/tasks/testingRunTask.d.ts +10 -1
  270. package/tasks/testingRunTask.js +13 -18
  271. package/tasks/testingRunTask.js.map +1 -1
  272. package/types.d.ts +47 -215
  273. package/types.js +8 -68
  274. package/types.js.map +1 -1
  275. package/utils/ObjectUpdater.js +4 -11
  276. package/utils/ObjectUpdater.js.map +1 -1
  277. package/utils/getErrorProperties.d.ts +2 -2
  278. package/utils/getErrorProperties.js +5 -10
  279. package/utils/getErrorProperties.js.map +1 -1
  280. package/utils/getObjectProperties.js +1 -8
  281. package/utils/getObjectProperties.js.map +1 -1
  282. package/utils/index.d.ts +3 -0
  283. package/utils/index.js +5 -0
  284. package/utils/index.js.map +1 -0
  285. package/crud/model.d.ts +0 -5
  286. package/crud/model.js +0 -216
  287. package/crud/model.js.map +0 -1
  288. package/crud/transport/EventBridgeEventTransportPlugin.d.ts +0 -5
  289. package/crud/transport/EventBridgeEventTransportPlugin.js +0 -58
  290. package/crud/transport/EventBridgeEventTransportPlugin.js.map +0 -1
  291. package/crud/trigger.tasks.d.ts +0 -2
  292. package/crud/trigger.tasks.js.map +0 -1
  293. package/crud/where.d.ts +0 -1
  294. package/crud/where.js +0 -33
  295. package/crud/where.js.map +0 -1
  296. package/plugins/TaskTriggerTransportPlugin.d.ts +0 -17
  297. package/plugins/TaskTriggerTransportPlugin.js +0 -20
  298. package/plugins/TaskTriggerTransportPlugin.js.map +0 -1
  299. package/task/index.d.ts +0 -2
  300. package/task/index.js +0 -29
  301. package/task/index.js.map +0 -1
  302. package/task/input.d.ts +0 -15
  303. package/task/input.js +0 -21
  304. package/task/input.js.map +0 -1
  305. package/task/plugin.d.ts +0 -34
  306. package/task/plugin.js +0 -100
  307. package/task/plugin.js.map +0 -1
  308. package/transport/createTransport.d.ts +0 -7
  309. package/transport/createTransport.js +0 -32
  310. package/transport/createTransport.js.map +0 -1
@@ -1,9 +1,6 @@
1
- "use strict";
2
-
3
- var _registry = require("@webiny/handler-aws/registry");
4
- var _index = require("./index");
5
- var _handlerAws = require("@webiny/handler-aws");
6
- const handler = (0, _handlerAws.createSourceHandler)({
1
+ import { registry } from "@webiny/handler-aws/registry.js";
2
+ import { createSourceHandler } from "@webiny/handler-aws";
3
+ const handler = createSourceHandler({
7
4
  name: "handler-webiny-background-task",
8
5
  canUse: event => {
9
6
  return !!event.payload?.webinyTaskId;
@@ -13,10 +10,13 @@ const handler = (0, _handlerAws.createSourceHandler)({
13
10
  event,
14
11
  context
15
12
  }) => {
16
- return (0, _index.createHandler)(params)(event.payload, context);
13
+ const {
14
+ createHandler
15
+ } = await import(/* webpackChunkName: "tasks.handler.createHandler" */"./index.js");
16
+ return createHandler(params)(event.payload, context);
17
17
  }
18
18
  });
19
- _registry.registry.register(handler, {
19
+ registry.register(handler, {
20
20
  silent: true
21
21
  });
22
22
 
@@ -1 +1 @@
1
- {"version":3,"names":["_registry","require","_index","_handlerAws","handler","createSourceHandler","name","canUse","event","payload","webinyTaskId","handle","params","context","createHandler","registry","register","silent"],"sources":["register.ts"],"sourcesContent":["import { registry } from \"@webiny/handler-aws/registry\";\nimport { createHandler, HandlerParams } from \"./index\";\nimport { createSourceHandler } from \"@webiny/handler-aws\";\nimport { IIncomingEvent, ITaskEvent } from \"./types\";\n\nconst handler = createSourceHandler<IIncomingEvent<ITaskEvent>, HandlerParams>({\n name: \"handler-webiny-background-task\",\n canUse: event => {\n return !!event.payload?.webinyTaskId;\n },\n handle: async ({ params, event, context }) => {\n return createHandler(params)(event.payload, context);\n }\n});\n\nregistry.register(handler, {\n silent: true\n});\n"],"mappings":";;AAAA,IAAAA,SAAA,GAAAC,OAAA;AACA,IAAAC,MAAA,GAAAD,OAAA;AACA,IAAAE,WAAA,GAAAF,OAAA;AAGA,MAAMG,OAAO,GAAG,IAAAC,+BAAmB,EAA4C;EAC3EC,IAAI,EAAE,gCAAgC;EACtCC,MAAM,EAAEC,KAAK,IAAI;IACb,OAAO,CAAC,CAACA,KAAK,CAACC,OAAO,EAAEC,YAAY;EACxC,CAAC;EACDC,MAAM,EAAE,MAAAA,CAAO;IAAEC,MAAM;IAAEJ,KAAK;IAAEK;EAAQ,CAAC,KAAK;IAC1C,OAAO,IAAAC,oBAAa,EAACF,MAAM,CAAC,CAACJ,KAAK,CAACC,OAAO,EAAEI,OAAO,CAAC;EACxD;AACJ,CAAC,CAAC;AAEFE,kBAAQ,CAACC,QAAQ,CAACZ,OAAO,EAAE;EACvBa,MAAM,EAAE;AACZ,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["registry","createSourceHandler","handler","name","canUse","event","payload","webinyTaskId","handle","params","context","createHandler","register","silent"],"sources":["register.ts"],"sourcesContent":["import { registry } from \"@webiny/handler-aws/registry.js\";\nimport { createSourceHandler } from \"@webiny/handler-aws\";\nimport type { HandlerParams, IIncomingEvent, ITaskEvent } from \"./types.js\";\n\nconst handler = createSourceHandler<IIncomingEvent<ITaskEvent>, HandlerParams>({\n name: \"handler-webiny-background-task\",\n canUse: event => {\n return !!event.payload?.webinyTaskId;\n },\n handle: async ({ params, event, context }) => {\n const { createHandler } = await import(\n /* webpackChunkName: \"tasks.handler.createHandler\" */\n \"./index.js\"\n );\n return createHandler(params)(event.payload, context);\n }\n});\n\nregistry.register(handler, {\n silent: true\n});\n"],"mappings":"AAAA,SAASA,QAAQ,QAAQ,iCAAiC;AAC1D,SAASC,mBAAmB,QAAQ,qBAAqB;AAGzD,MAAMC,OAAO,GAAGD,mBAAmB,CAA4C;EAC3EE,IAAI,EAAE,gCAAgC;EACtCC,MAAM,EAAEC,KAAK,IAAI;IACb,OAAO,CAAC,CAACA,KAAK,CAACC,OAAO,EAAEC,YAAY;EACxC,CAAC;EACDC,MAAM,EAAE,MAAAA,CAAO;IAAEC,MAAM;IAAEJ,KAAK;IAAEK;EAAQ,CAAC,KAAK;IAC1C,MAAM;MAAEC;IAAc,CAAC,GAAG,MAAM,MAAM,CAClC,iEAEJ,CAAC;IACD,OAAOA,aAAa,CAACF,MAAM,CAAC,CAACJ,KAAK,CAACC,OAAO,EAAEI,OAAO,CAAC;EACxD;AACJ,CAAC,CAAC;AAEFV,QAAQ,CAACY,QAAQ,CAACV,OAAO,EAAE;EACvBW,MAAM,EAAE;AACZ,CAAC,CAAC","ignoreList":[]}
@@ -1,17 +1,17 @@
1
+ import type { HandlerFactoryParams } from "@webiny/handler-aws/types.js";
2
+ export type HandlerParams = HandlerFactoryParams;
1
3
  export interface IIncomingEvent<TEvent> {
2
4
  name: string;
3
5
  payload: TEvent;
4
6
  }
5
7
  export interface ITaskEventInput {
6
8
  tenant: string;
7
- locale: string;
8
9
  webinyTaskId: string;
9
10
  webinyTaskDefinitionId: string;
10
11
  delay?: number;
11
12
  }
12
13
  export interface ITaskEvent {
13
14
  tenant: string;
14
- locale: string;
15
15
  endpoint: string;
16
16
  webinyTaskId: string;
17
17
  webinyTaskDefinitionId: string;
package/handler/types.js CHANGED
@@ -1,7 +1,3 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
1
+ export {};
6
2
 
7
3
  //# sourceMappingURL=types.js.map
@@ -1 +1 @@
1
- {"version":3,"names":[],"sources":["types.ts"],"sourcesContent":["export interface IIncomingEvent<TEvent> {\n name: string;\n payload: TEvent;\n}\n\nexport interface ITaskEventInput {\n tenant: string;\n locale: string;\n webinyTaskId: string;\n webinyTaskDefinitionId: string;\n delay?: number;\n}\n\nexport interface ITaskEvent {\n tenant: string;\n locale: string;\n endpoint: string;\n webinyTaskId: string;\n webinyTaskDefinitionId: string;\n executionName: string;\n stateMachineId: string;\n}\n\nexport interface ITaskRawEvent extends ITaskEvent {\n delay?: number;\n}\n"],"mappings":"","ignoreList":[]}
1
+ {"version":3,"names":[],"sources":["types.ts"],"sourcesContent":["import type { HandlerFactoryParams } from \"@webiny/handler-aws/types.js\";\n\nexport type HandlerParams = HandlerFactoryParams;\n\nexport interface IIncomingEvent<TEvent> {\n name: string;\n payload: TEvent;\n}\n\nexport interface ITaskEventInput {\n tenant: string;\n webinyTaskId: string;\n webinyTaskDefinitionId: string;\n delay?: number;\n}\n\nexport interface ITaskEvent {\n tenant: string;\n endpoint: string;\n webinyTaskId: string;\n webinyTaskDefinitionId: string;\n executionName: string;\n stateMachineId: string;\n}\n\nexport interface ITaskRawEvent extends ITaskEvent {\n delay?: number;\n}\n"],"mappings":"","ignoreList":[]}
package/index.d.ts CHANGED
@@ -1,6 +1,5 @@
1
- import "./handler/register";
2
- export { createBackgroundTaskGraphQL } from "./graphql";
3
- export { createBackgroundTaskContext } from "./context";
4
- export * from "./task";
5
- export * from "./response";
6
- export * from "./types";
1
+ import "./handler/register.js";
2
+ export { createBackgroundTaskGraphQL } from "./graphql/index.js";
3
+ export { createBackgroundTaskContext } from "./context.js";
4
+ export * from "./response/index.js";
5
+ export * from "./types.js";
package/index.js CHANGED
@@ -1,62 +1,7 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- var _exportNames = {
7
- createBackgroundTaskGraphQL: true,
8
- createBackgroundTaskContext: true
9
- };
10
- Object.defineProperty(exports, "createBackgroundTaskContext", {
11
- enumerable: true,
12
- get: function () {
13
- return _context.createBackgroundTaskContext;
14
- }
15
- });
16
- Object.defineProperty(exports, "createBackgroundTaskGraphQL", {
17
- enumerable: true,
18
- get: function () {
19
- return _graphql.createBackgroundTaskGraphQL;
20
- }
21
- });
22
- require("./handler/register");
23
- var _graphql = require("./graphql");
24
- var _context = require("./context");
25
- var _task = require("./task");
26
- Object.keys(_task).forEach(function (key) {
27
- if (key === "default" || key === "__esModule") return;
28
- if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
29
- if (key in exports && exports[key] === _task[key]) return;
30
- Object.defineProperty(exports, key, {
31
- enumerable: true,
32
- get: function () {
33
- return _task[key];
34
- }
35
- });
36
- });
37
- var _response = require("./response");
38
- Object.keys(_response).forEach(function (key) {
39
- if (key === "default" || key === "__esModule") return;
40
- if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
41
- if (key in exports && exports[key] === _response[key]) return;
42
- Object.defineProperty(exports, key, {
43
- enumerable: true,
44
- get: function () {
45
- return _response[key];
46
- }
47
- });
48
- });
49
- var _types = require("./types");
50
- Object.keys(_types).forEach(function (key) {
51
- if (key === "default" || key === "__esModule") return;
52
- if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
53
- if (key in exports && exports[key] === _types[key]) return;
54
- Object.defineProperty(exports, key, {
55
- enumerable: true,
56
- get: function () {
57
- return _types[key];
58
- }
59
- });
60
- });
1
+ import "./handler/register.js";
2
+ export { createBackgroundTaskGraphQL } from "./graphql/index.js";
3
+ export { createBackgroundTaskContext } from "./context.js";
4
+ export * from "./response/index.js";
5
+ export * from "./types.js";
61
6
 
62
7
  //# sourceMappingURL=index.js.map
package/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"names":["require","_graphql","_context","_task","Object","keys","forEach","key","prototype","hasOwnProperty","call","_exportNames","exports","defineProperty","enumerable","get","_response","_types"],"sources":["index.ts"],"sourcesContent":["import \"./handler/register\";\n\nexport { createBackgroundTaskGraphQL } from \"./graphql\";\nexport { createBackgroundTaskContext } from \"./context\";\n\nexport * from \"./task\";\nexport * from \"./response\";\nexport * from \"./types\";\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAAA,OAAA;AAEA,IAAAC,QAAA,GAAAD,OAAA;AACA,IAAAE,QAAA,GAAAF,OAAA;AAEA,IAAAG,KAAA,GAAAH,OAAA;AAAAI,MAAA,CAAAC,IAAA,CAAAF,KAAA,EAAAG,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAC,YAAA,EAAAJ,GAAA;EAAA,IAAAA,GAAA,IAAAK,OAAA,IAAAA,OAAA,CAAAL,GAAA,MAAAJ,KAAA,CAAAI,GAAA;EAAAH,MAAA,CAAAS,cAAA,CAAAD,OAAA,EAAAL,GAAA;IAAAO,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAZ,KAAA,CAAAI,GAAA;IAAA;EAAA;AAAA;AACA,IAAAS,SAAA,GAAAhB,OAAA;AAAAI,MAAA,CAAAC,IAAA,CAAAW,SAAA,EAAAV,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAC,YAAA,EAAAJ,GAAA;EAAA,IAAAA,GAAA,IAAAK,OAAA,IAAAA,OAAA,CAAAL,GAAA,MAAAS,SAAA,CAAAT,GAAA;EAAAH,MAAA,CAAAS,cAAA,CAAAD,OAAA,EAAAL,GAAA;IAAAO,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAC,SAAA,CAAAT,GAAA;IAAA;EAAA;AAAA;AACA,IAAAU,MAAA,GAAAjB,OAAA;AAAAI,MAAA,CAAAC,IAAA,CAAAY,MAAA,EAAAX,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAC,YAAA,EAAAJ,GAAA;EAAA,IAAAA,GAAA,IAAAK,OAAA,IAAAA,OAAA,CAAAL,GAAA,MAAAU,MAAA,CAAAV,GAAA;EAAAH,MAAA,CAAAS,cAAA,CAAAD,OAAA,EAAAL,GAAA;IAAAO,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAE,MAAA,CAAAV,GAAA;IAAA;EAAA;AAAA","ignoreList":[]}
1
+ {"version":3,"names":["createBackgroundTaskGraphQL","createBackgroundTaskContext"],"sources":["index.ts"],"sourcesContent":["import \"./handler/register.js\";\n\nexport { createBackgroundTaskGraphQL } from \"./graphql/index.js\";\nexport { createBackgroundTaskContext } from \"./context.js\";\n\nexport * from \"./response/index.js\";\nexport * from \"./types.js\";\n"],"mappings":"AAAA;AAEA,SAASA,2BAA2B;AACpC,SAASC,2BAA2B;AAEpC;AACA","ignoreList":[]}
package/package.json CHANGED
@@ -1,6 +1,7 @@
1
1
  {
2
2
  "name": "@webiny/tasks",
3
- "version": "6.0.0-beta.0",
3
+ "version": "6.0.0-rc.0",
4
+ "type": "module",
4
5
  "main": "index.js",
5
6
  "repository": {
6
7
  "type": "git",
@@ -12,56 +13,34 @@
12
13
  ],
13
14
  "license": "MIT",
14
15
  "dependencies": {
15
- "@babel/runtime": "7.24.1",
16
- "@types/aws-lambda": "8.10.136",
17
- "@webiny/api": "6.0.0-beta.0",
18
- "@webiny/api-headless-cms": "6.0.0-beta.0",
19
- "@webiny/aws-sdk": "6.0.0-beta.0",
20
- "@webiny/error": "6.0.0-beta.0",
21
- "@webiny/handler": "6.0.0-beta.0",
22
- "@webiny/handler-aws": "6.0.0-beta.0",
23
- "@webiny/handler-graphql": "6.0.0-beta.0",
24
- "@webiny/plugins": "6.0.0-beta.0",
25
- "@webiny/pubsub": "6.0.0-beta.0",
26
- "@webiny/utils": "6.0.0-beta.0",
16
+ "@webiny/api": "6.0.0-rc.0",
17
+ "@webiny/api-core": "6.0.0-rc.0",
18
+ "@webiny/api-headless-cms": "6.0.0-rc.0",
19
+ "@webiny/aws-sdk": "6.0.0-rc.0",
20
+ "@webiny/error": "6.0.0-rc.0",
21
+ "@webiny/feature": "6.0.0-rc.0",
22
+ "@webiny/handler": "6.0.0-rc.0",
23
+ "@webiny/handler-aws": "6.0.0-rc.0",
24
+ "@webiny/handler-graphql": "6.0.0-rc.0",
25
+ "@webiny/plugins": "6.0.0-rc.0",
26
+ "@webiny/utils": "6.0.0-rc.0",
27
27
  "deep-equal": "2.2.3",
28
- "lodash": "4.17.21",
28
+ "lodash": "4.17.23",
29
29
  "object-merge-advanced": "12.1.0",
30
- "zod": "3.22.4"
30
+ "object-sizeof": "2.6.5",
31
+ "zod": "3.25.76"
31
32
  },
32
33
  "devDependencies": {
33
- "@babel/cli": "7.24.1",
34
- "@babel/core": "7.24.3",
35
- "@babel/preset-env": "7.24.3",
36
- "@babel/preset-typescript": "7.24.1",
37
- "@webiny/api-i18n": "6.0.0-beta.0",
38
- "@webiny/api-security": "6.0.0-beta.0",
39
- "@webiny/api-tenancy": "6.0.0-beta.0",
40
- "@webiny/api-wcp": "6.0.0-beta.0",
41
- "@webiny/cli": "6.0.0-beta.0",
42
- "@webiny/project-utils": "6.0.0-beta.0",
43
- "rimraf": "5.0.5",
44
- "ttypescript": "1.5.15",
45
- "type-fest": "2.19.0",
46
- "typescript": "4.7.4"
34
+ "@webiny/build-tools": "6.0.0-rc.0",
35
+ "@webiny/project-utils": "6.0.0-rc.0",
36
+ "rimraf": "6.1.3",
37
+ "type-fest": "5.4.4",
38
+ "typescript": "5.9.3",
39
+ "vitest": "4.0.18"
47
40
  },
48
41
  "publishConfig": {
49
42
  "access": "public",
50
43
  "directory": "dist"
51
44
  },
52
- "scripts": {
53
- "build": "yarn webiny run build",
54
- "watch": "yarn webiny run watch"
55
- },
56
- "gitHead": "aa8dbfbbd5ad13ec271adba6f2431e02991a300f",
57
- "adio": {
58
- "ignore": {
59
- "src": [
60
- "aws-lambda"
61
- ],
62
- "dependencies": [
63
- "@types/aws-lambda"
64
- ]
65
- }
66
- }
45
+ "gitHead": "0f2aa699f4642e550ab62c96fcd050e8d02345c9"
67
46
  }
@@ -0,0 +1,19 @@
1
+ import { Plugin } from "@webiny/plugins";
2
+ import type { ITask } from "../types.js";
3
+ export interface ITaskServiceCreatePluginParams {
4
+ getTenant(): string;
5
+ }
6
+ export type ITaskServiceTask = Pick<ITask, "id" | "definitionId">;
7
+ export interface ITaskService {
8
+ send(task: ITaskServiceTask, delay: number): Promise<unknown | null>;
9
+ fetch(task: ITask): Promise<unknown | null>;
10
+ }
11
+ export interface ITaskServicePluginParams {
12
+ default?: boolean;
13
+ }
14
+ export declare abstract class TaskServicePlugin extends Plugin {
15
+ static readonly type: string;
16
+ readonly default: boolean;
17
+ constructor(params?: ITaskServicePluginParams);
18
+ abstract createService(params: ITaskServiceCreatePluginParams): ITaskService;
19
+ }
@@ -0,0 +1,10 @@
1
+ import { Plugin } from "@webiny/plugins";
2
+ export class TaskServicePlugin extends Plugin {
3
+ static type = "tasks.taskService";
4
+ constructor(params) {
5
+ super();
6
+ this.default = !!params?.default;
7
+ }
8
+ }
9
+
10
+ //# sourceMappingURL=TaskServicePlugin.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["Plugin","TaskServicePlugin","type","constructor","params","default"],"sources":["TaskServicePlugin.ts"],"sourcesContent":["import { Plugin } from \"@webiny/plugins\";\nimport type { ITask } from \"~/types.js\";\n\nexport interface ITaskServiceCreatePluginParams {\n getTenant(): string;\n}\n\nexport type ITaskServiceTask = Pick<ITask, \"id\" | \"definitionId\">;\n\nexport interface ITaskService {\n send(task: ITaskServiceTask, delay: number): Promise<unknown | null>;\n fetch(task: ITask): Promise<unknown | null>;\n}\n\nexport interface ITaskServicePluginParams {\n default?: boolean;\n}\n\nexport abstract class TaskServicePlugin extends Plugin {\n public static override readonly type: string = \"tasks.taskService\";\n public readonly default: boolean;\n\n public constructor(params?: ITaskServicePluginParams) {\n super();\n this.default = !!params?.default;\n }\n\n public abstract createService(params: ITaskServiceCreatePluginParams): ITaskService;\n}\n"],"mappings":"AAAA,SAASA,MAAM,QAAQ,iBAAiB;AAkBxC,OAAO,MAAeC,iBAAiB,SAASD,MAAM,CAAC;EACnD,OAAgCE,IAAI,GAAW,mBAAmB;EAG3DC,WAAWA,CAACC,MAAiC,EAAE;IAClD,KAAK,CAAC,CAAC;IACP,IAAI,CAACC,OAAO,GAAG,CAAC,CAACD,MAAM,EAAEC,OAAO;EACpC;AAGJ","ignoreList":[]}
@@ -1 +1 @@
1
- export * from "./TaskTriggerTransportPlugin";
1
+ export * from "./TaskServicePlugin.js";
package/plugins/index.js CHANGED
@@ -1,18 +1,3 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- var _TaskTriggerTransportPlugin = require("./TaskTriggerTransportPlugin");
7
- Object.keys(_TaskTriggerTransportPlugin).forEach(function (key) {
8
- if (key === "default" || key === "__esModule") return;
9
- if (key in exports && exports[key] === _TaskTriggerTransportPlugin[key]) return;
10
- Object.defineProperty(exports, key, {
11
- enumerable: true,
12
- get: function () {
13
- return _TaskTriggerTransportPlugin[key];
14
- }
15
- });
16
- });
1
+ export * from "./TaskServicePlugin.js";
17
2
 
18
3
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_TaskTriggerTransportPlugin","require","Object","keys","forEach","key","exports","defineProperty","enumerable","get"],"sources":["index.ts"],"sourcesContent":["export * from \"./TaskTriggerTransportPlugin\";\n"],"mappings":";;;;;AAAA,IAAAA,2BAAA,GAAAC,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAH,2BAAA,EAAAI,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAL,2BAAA,CAAAK,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAT,2BAAA,CAAAK,GAAA;IAAA;EAAA;AAAA","ignoreList":[]}
1
+ {"version":3,"names":[],"sources":["index.ts"],"sourcesContent":["export * from \"./TaskServicePlugin.js\";\n"],"mappings":"AAAA","ignoreList":[]}
@@ -1,12 +1,12 @@
1
- import { IResponse, IResponseAsync, IResponseContinueParams, IResponseContinueResult, IResponseDoneParams, IResponseDoneResult, IResponseErrorParams, IResponseErrorResult, IResponseResult } from "./abstractions";
2
- import { ITaskManagerStorePrivate } from "../runner/abstractions";
1
+ import type { IResponse, IResponseAsync, IResponseContinueParams, IResponseContinueResult, IResponseDoneParams, IResponseDoneResult, IResponseErrorParams, IResponseErrorResult, IResponseResult } from "./abstractions/index.js";
2
+ import type { ITaskManagerStorePrivate } from "../runner/abstractions/index.js";
3
3
  export declare class DatabaseResponse implements IResponseAsync {
4
4
  readonly response: IResponse;
5
5
  private readonly store;
6
6
  constructor(response: IResponse, store: ITaskManagerStorePrivate);
7
7
  from(result: IResponseResult): Promise<IResponseResult>;
8
8
  done(params: IResponseDoneParams): Promise<IResponseDoneResult>;
9
- aborted(): Promise<import("../types").IResponseAbortedResult>;
9
+ aborted(): Promise<import("~/types.js").IResponseAbortedResult>;
10
10
  continue(params: IResponseContinueParams): Promise<IResponseContinueResult | IResponseErrorResult>;
11
11
  error(params: IResponseErrorParams): Promise<IResponseErrorResult>;
12
12
  }
@@ -1,26 +1,21 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.DatabaseResponse = void 0;
7
- var _types = require("../types");
8
- var _handlerGraphql = require("@webiny/handler-graphql");
9
- var _getErrorProperties = require("../utils/getErrorProperties");
10
- class DatabaseResponse {
1
+ import { TaskDataStatus } from "../types.js";
2
+ import { NotFoundError } from "@webiny/handler-graphql";
3
+ import { getErrorProperties } from "../utils/getErrorProperties.js";
4
+ import { TaskResultStatus } from "@webiny/api-core/features/task/TaskDefinition/index.js";
5
+ export class DatabaseResponse {
11
6
  constructor(response, store) {
12
7
  this.response = response;
13
8
  this.store = store;
14
9
  }
15
10
  from(result) {
16
11
  switch (result.status) {
17
- case _types.TaskResponseStatus.DONE:
12
+ case TaskResultStatus.DONE:
18
13
  return this.done(result);
19
- case _types.TaskResponseStatus.CONTINUE:
14
+ case TaskResultStatus.CONTINUE:
20
15
  return this.continue(result);
21
- case _types.TaskResponseStatus.ERROR:
16
+ case TaskResultStatus.ERROR:
22
17
  return this.error(result);
23
- case _types.TaskResponseStatus.ABORTED:
18
+ case TaskResultStatus.ABORTED:
24
19
  return this.aborted();
25
20
  }
26
21
  }
@@ -32,7 +27,7 @@ class DatabaseResponse {
32
27
  let message = params.message;
33
28
  try {
34
29
  await this.store.updateTask({
35
- taskStatus: _types.TaskDataStatus.SUCCESS,
30
+ taskStatus: TaskDataStatus.SUCCESS,
36
31
  finishedOn: new Date().toISOString(),
37
32
  output
38
33
  });
@@ -63,7 +58,7 @@ class DatabaseResponse {
63
58
  ...task.input,
64
59
  ...params.input
65
60
  },
66
- taskStatus: _types.TaskDataStatus.RUNNING
61
+ taskStatus: TaskDataStatus.RUNNING
67
62
  });
68
63
  await this.store.addInfoLog({
69
64
  message: "Task continuing.",
@@ -74,7 +69,7 @@ class DatabaseResponse {
74
69
  /**
75
70
  * If task was not found, we just return the error.
76
71
  */
77
- if (ex instanceof _handlerGraphql.NotFoundError) {
72
+ if (ex instanceof NotFoundError) {
78
73
  return this.response.error({
79
74
  error: {
80
75
  message: ex.message || `Task not found.`,
@@ -102,10 +97,10 @@ class DatabaseResponse {
102
97
  return this.response.continue(params);
103
98
  }
104
99
  async error(params) {
105
- const error = params.error instanceof Error ? (0, _getErrorProperties.getErrorProperties)(params.error) : params.error;
100
+ const error = params.error instanceof Error ? getErrorProperties(params.error) : params.error;
106
101
  try {
107
102
  await this.store.updateTask({
108
- taskStatus: _types.TaskDataStatus.FAILED,
103
+ taskStatus: TaskDataStatus.FAILED,
109
104
  finishedOn: new Date().toISOString(),
110
105
  output: {
111
106
  error
@@ -147,6 +142,5 @@ class DatabaseResponse {
147
142
  });
148
143
  }
149
144
  }
150
- exports.DatabaseResponse = DatabaseResponse;
151
145
 
152
146
  //# sourceMappingURL=DatabaseResponse.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_types","require","_handlerGraphql","_getErrorProperties","DatabaseResponse","constructor","response","store","from","result","status","TaskResponseStatus","DONE","done","CONTINUE","continue","ERROR","error","ABORTED","aborted","params","output","rest","message","updateTask","taskStatus","TaskDataStatus","SUCCESS","finishedOn","Date","toISOString","addInfoLog","save","ex","task","getTask","input","RUNNING","data","NotFoundError","code","getInput","Error","getErrorProperties","FAILED","addErrorLog","exports"],"sources":["DatabaseResponse.ts"],"sourcesContent":["import { TaskDataStatus, TaskResponseStatus } from \"~/types\";\nimport { NotFoundError } from \"@webiny/handler-graphql\";\nimport {\n IResponse,\n IResponseAsync,\n IResponseContinueParams,\n IResponseContinueResult,\n IResponseDoneParams,\n IResponseDoneResult,\n IResponseErrorParams,\n IResponseErrorResult,\n IResponseResult\n} from \"./abstractions\";\nimport { ITaskManagerStorePrivate } from \"~/runner/abstractions\";\nimport { getErrorProperties } from \"~/utils/getErrorProperties\";\n\nexport class DatabaseResponse implements IResponseAsync {\n public readonly response: IResponse;\n\n private readonly store: ITaskManagerStorePrivate;\n\n public constructor(response: IResponse, store: ITaskManagerStorePrivate) {\n this.response = response;\n this.store = store;\n }\n\n public from(result: IResponseResult): Promise<IResponseResult> {\n switch (result.status) {\n case TaskResponseStatus.DONE:\n return this.done(result);\n case TaskResponseStatus.CONTINUE:\n return this.continue(result);\n case TaskResponseStatus.ERROR:\n return this.error(result);\n case TaskResponseStatus.ABORTED:\n return this.aborted();\n }\n }\n\n public async done(params: IResponseDoneParams): Promise<IResponseDoneResult> {\n const { output, ...rest } = params;\n let message = params.message;\n try {\n await this.store.updateTask({\n taskStatus: TaskDataStatus.SUCCESS,\n finishedOn: new Date().toISOString(),\n output\n });\n await this.store.addInfoLog({\n message: message || \"Task done.\"\n });\n await this.store.save();\n } catch (ex) {\n message = `Task done, but failed to update task log. (${ex.message || \"unknown\"})`;\n }\n /**\n * Default behavior is to return the done response.\n */\n return this.response.done({\n ...rest,\n message,\n output\n });\n }\n\n public async aborted() {\n return this.response.aborted();\n }\n\n public async continue(\n params: IResponseContinueParams\n ): Promise<IResponseContinueResult | IResponseErrorResult> {\n try {\n const task = this.store.getTask();\n await this.store.updateTask({\n input: {\n ...task.input,\n ...params.input\n },\n taskStatus: TaskDataStatus.RUNNING\n });\n await this.store.addInfoLog({\n message: \"Task continuing.\",\n data: params.input\n });\n await this.store.save();\n } catch (ex) {\n /**\n * If task was not found, we just return the error.\n */\n if (ex instanceof NotFoundError) {\n return this.response.error({\n error: {\n message: ex.message || `Task not found.`,\n code: ex.code || \"TASK_NOT_FOUND\",\n data: {\n ...ex.data,\n input: this.store.getInput()\n }\n }\n });\n }\n /**\n * Otherwise, we store the error and return it...\n */\n return this.error({\n error: {\n message: `Failed to update task input: ${ex.message || \"unknown error\"}`,\n code: ex.code || \"TASK_UPDATE_ERROR\"\n }\n });\n }\n /**\n * Default behavior is to return the continue response.\n */\n return this.response.continue(params);\n }\n\n public async error(params: IResponseErrorParams): Promise<IResponseErrorResult> {\n const error =\n params.error instanceof Error ? getErrorProperties(params.error) : params.error;\n try {\n await this.store.updateTask({\n taskStatus: TaskDataStatus.FAILED,\n finishedOn: new Date().toISOString(),\n output: {\n error\n }\n });\n await this.store.addErrorLog({\n message: params.error.message,\n data: this.store.getInput(),\n error\n });\n await this.store.save();\n } catch (ex) {\n return this.response.error({\n ...params,\n error: {\n ...error,\n message: ex.message || error.message,\n code: ex.code || error.code,\n data: {\n ...error.data,\n ...ex.data,\n input: this.store.getInput()\n }\n }\n });\n }\n /**\n * Default behavior is to return the error response.\n */\n return this.response.error({\n ...params,\n error: {\n ...params.error,\n data: {\n ...error.data,\n input: this.store.getInput()\n }\n }\n });\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["TaskDataStatus","NotFoundError","getErrorProperties","TaskResultStatus","DatabaseResponse","constructor","response","store","from","result","status","DONE","done","CONTINUE","continue","ERROR","error","ABORTED","aborted","params","output","rest","message","updateTask","taskStatus","SUCCESS","finishedOn","Date","toISOString","addInfoLog","save","ex","task","getTask","input","RUNNING","data","code","getInput","Error","FAILED","addErrorLog"],"sources":["DatabaseResponse.ts"],"sourcesContent":["import { TaskDataStatus } from \"~/types.js\";\nimport { NotFoundError } from \"@webiny/handler-graphql\";\nimport type {\n IResponse,\n IResponseAsync,\n IResponseContinueParams,\n IResponseContinueResult,\n IResponseDoneParams,\n IResponseDoneResult,\n IResponseErrorParams,\n IResponseErrorResult,\n IResponseResult\n} from \"./abstractions/index.js\";\nimport type { ITaskManagerStorePrivate } from \"~/runner/abstractions/index.js\";\nimport { getErrorProperties } from \"~/utils/getErrorProperties.js\";\nimport { TaskResultStatus } from \"@webiny/api-core/features/task/TaskDefinition/index.js\";\n\nexport class DatabaseResponse implements IResponseAsync {\n public readonly response: IResponse;\n\n private readonly store: ITaskManagerStorePrivate;\n\n public constructor(response: IResponse, store: ITaskManagerStorePrivate) {\n this.response = response;\n this.store = store;\n }\n\n public from(result: IResponseResult): Promise<IResponseResult> {\n switch (result.status) {\n case TaskResultStatus.DONE:\n return this.done(result);\n case TaskResultStatus.CONTINUE:\n return this.continue(result);\n case TaskResultStatus.ERROR:\n return this.error(result);\n case TaskResultStatus.ABORTED:\n return this.aborted();\n }\n }\n\n public async done(params: IResponseDoneParams): Promise<IResponseDoneResult> {\n const { output, ...rest } = params;\n let message = params.message;\n try {\n await this.store.updateTask({\n taskStatus: TaskDataStatus.SUCCESS,\n finishedOn: new Date().toISOString(),\n output\n });\n await this.store.addInfoLog({\n message: message || \"Task done.\"\n });\n await this.store.save();\n } catch (ex) {\n message = `Task done, but failed to update task log. (${ex.message || \"unknown\"})`;\n }\n /**\n * Default behavior is to return the done response.\n */\n return this.response.done({\n ...rest,\n message,\n output\n });\n }\n\n public async aborted() {\n return this.response.aborted();\n }\n\n public async continue(\n params: IResponseContinueParams\n ): Promise<IResponseContinueResult | IResponseErrorResult> {\n try {\n const task = this.store.getTask();\n await this.store.updateTask({\n input: {\n ...task.input,\n ...params.input\n },\n taskStatus: TaskDataStatus.RUNNING\n });\n await this.store.addInfoLog({\n message: \"Task continuing.\",\n data: params.input\n });\n await this.store.save();\n } catch (ex) {\n /**\n * If task was not found, we just return the error.\n */\n if (ex instanceof NotFoundError) {\n return this.response.error({\n error: {\n message: ex.message || `Task not found.`,\n code: ex.code || \"TASK_NOT_FOUND\",\n data: {\n ...ex.data,\n input: this.store.getInput()\n }\n }\n });\n }\n /**\n * Otherwise, we store the error and return it...\n */\n return this.error({\n error: {\n message: `Failed to update task input: ${ex.message || \"unknown error\"}`,\n code: ex.code || \"TASK_UPDATE_ERROR\"\n }\n });\n }\n /**\n * Default behavior is to return the continue response.\n */\n return this.response.continue(params);\n }\n\n public async error(params: IResponseErrorParams): Promise<IResponseErrorResult> {\n const error =\n params.error instanceof Error ? getErrorProperties(params.error) : params.error;\n try {\n await this.store.updateTask({\n taskStatus: TaskDataStatus.FAILED,\n finishedOn: new Date().toISOString(),\n output: {\n error\n }\n });\n await this.store.addErrorLog({\n message: params.error.message,\n data: this.store.getInput(),\n error\n });\n await this.store.save();\n } catch (ex) {\n return this.response.error({\n ...params,\n error: {\n ...error,\n message: ex.message || error.message,\n code: ex.code || error.code,\n data: {\n ...error.data,\n ...ex.data,\n input: this.store.getInput()\n }\n }\n });\n }\n /**\n * Default behavior is to return the error response.\n */\n return this.response.error({\n ...params,\n error: {\n ...params.error,\n data: {\n ...error.data,\n input: this.store.getInput()\n }\n }\n });\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1,5 +1,6 @@
1
- import { ITaskEvent } from "../handler/types";
2
- import { IResponse, IResponseAbortedResult, IResponseContinueParams, IResponseContinueResult, IResponseDoneParams, IResponseDoneResult, IResponseErrorParams, IResponseErrorResult, IResponseFromParams, IResponseResult, ITaskResponseDoneResultOutput } from "./abstractions";
1
+ import type { ITaskEvent } from "../handler/types.js";
2
+ import type { IResponse, IResponseAbortedResult, IResponseContinueParams, IResponseContinueResult, IResponseDoneParams, IResponseDoneResult, IResponseErrorParams, IResponseErrorResult, IResponseFromParams, IResponseResult } from "./abstractions/index.js";
3
+ import { TaskDefinition } from "@webiny/api-core/features/task/TaskDefinition/index.js";
3
4
  export declare class Response implements IResponse {
4
5
  private _event;
5
6
  get event(): ITaskEvent;
@@ -7,7 +8,7 @@ export declare class Response implements IResponse {
7
8
  setEvent(event: ITaskEvent): void;
8
9
  from(params: IResponseFromParams): IResponseResult;
9
10
  continue(params: IResponseContinueParams): IResponseContinueResult;
10
- done<O extends ITaskResponseDoneResultOutput = ITaskResponseDoneResultOutput>(params?: IResponseDoneParams<O>): IResponseDoneResult<O>;
11
+ done<O extends TaskDefinition.TaskOutput = TaskDefinition.TaskOutput>(params?: IResponseDoneParams<O>): IResponseDoneResult<O>;
11
12
  aborted(): IResponseAbortedResult;
12
13
  error(params: IResponseErrorParams): IResponseErrorResult;
13
14
  }
@@ -1,16 +1,56 @@
1
- "use strict";
1
+ import sizeOfObject from "object-sizeof";
2
+ import { ResponseContinueResult } from "./ResponseContinueResult.js";
3
+ import { ResponseDoneResult } from "./ResponseDoneResult.js";
4
+ import { ResponseErrorResult } from "./ResponseErrorResult.js";
5
+ import { ResponseAbortedResult } from "./ResponseAbortedResult.js";
6
+ import { getErrorProperties } from "../utils/getErrorProperties.js";
7
+ import { TaskResultStatus } from "@webiny/api-core/features/task/TaskDefinition/index.js";
2
8
 
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.Response = void 0;
7
- var _types = require("../types");
8
- var _ResponseContinueResult = require("./ResponseContinueResult");
9
- var _ResponseDoneResult = require("./ResponseDoneResult");
10
- var _ResponseErrorResult = require("./ResponseErrorResult");
11
- var _ResponseAbortedResult = require("./ResponseAbortedResult");
12
- var _getErrorProperties = require("../utils/getErrorProperties");
13
- class Response {
9
+ /**
10
+ * Step Functions has a limit of 256KB for the output size.
11
+ * We will set the max output to be 232KB to leave some room for the rest of the data.
12
+ */
13
+ const MAX_SIZE_BYTES = 232 * 1024;
14
+ const createMaxSizeOutput = ({
15
+ size
16
+ }) => {
17
+ return {
18
+ message: `Output size exceeds the maximum allowed size.`,
19
+ size,
20
+ max: MAX_SIZE_BYTES
21
+ };
22
+ };
23
+ /**
24
+ * Figure out the size of the output object and remove the stack trace if the size exceeds the maximum allowed size.
25
+ * If the size is still greater than the maximum allowed size, just return the message that the output size exceeds the maximum allowed size.
26
+ */
27
+ const getOutput = output => {
28
+ if (!output || Object.keys(output).length === 0) {
29
+ return undefined;
30
+ }
31
+ let size = sizeOfObject(output);
32
+ if (size > MAX_SIZE_BYTES) {
33
+ if (output.stack) {
34
+ delete output.stack;
35
+ size = sizeOfObject(output);
36
+ if (size <= MAX_SIZE_BYTES) {
37
+ return output;
38
+ }
39
+ }
40
+ if (output.error?.stack) {
41
+ delete output.error.stack;
42
+ size = sizeOfObject(output);
43
+ if (size <= MAX_SIZE_BYTES) {
44
+ return output;
45
+ }
46
+ }
47
+ return createMaxSizeOutput({
48
+ size
49
+ });
50
+ }
51
+ return output;
52
+ };
53
+ export class Response {
14
54
  get event() {
15
55
  return this._event;
16
56
  }
@@ -22,52 +62,48 @@ class Response {
22
62
  }
23
63
  from(params) {
24
64
  switch (params.status) {
25
- case _types.TaskResponseStatus.DONE:
65
+ case TaskResultStatus.DONE:
26
66
  return this.done(params);
27
- case _types.TaskResponseStatus.CONTINUE:
67
+ case TaskResultStatus.CONTINUE:
28
68
  return this.continue(params);
29
- case _types.TaskResponseStatus.ERROR:
69
+ case TaskResultStatus.ERROR:
30
70
  return this.error(params);
31
71
  }
32
72
  }
33
73
  continue(params) {
34
- return new _ResponseContinueResult.ResponseContinueResult({
74
+ return new ResponseContinueResult({
75
+ message: params.message,
35
76
  input: params.input,
36
77
  webinyTaskId: params?.webinyTaskId || this.event.webinyTaskId,
37
78
  webinyTaskDefinitionId: this.event.webinyTaskDefinitionId,
38
79
  tenant: params?.tenant || this.event.tenant,
39
- locale: params?.locale || this.event.locale,
40
80
  wait: params.wait
41
81
  });
42
82
  }
43
83
  done(params) {
44
- return new _ResponseDoneResult.ResponseDoneResult({
84
+ return new ResponseDoneResult({
45
85
  webinyTaskId: params?.webinyTaskId || this.event.webinyTaskId,
46
86
  webinyTaskDefinitionId: this.event.webinyTaskDefinitionId,
47
87
  tenant: params?.tenant || this.event.tenant,
48
- locale: params?.locale || this.event.locale,
49
88
  message: params?.message,
50
- output: params?.output
89
+ output: getOutput(params?.output)
51
90
  });
52
91
  }
53
92
  aborted() {
54
- return new _ResponseAbortedResult.ResponseAbortedResult({
93
+ return new ResponseAbortedResult({
55
94
  webinyTaskId: this.event.webinyTaskId,
56
95
  webinyTaskDefinitionId: this.event.webinyTaskDefinitionId,
57
- tenant: this.event.tenant,
58
- locale: this.event.locale
96
+ tenant: this.event.tenant
59
97
  });
60
98
  }
61
99
  error(params) {
62
- return new _ResponseErrorResult.ResponseErrorResult({
100
+ return new ResponseErrorResult({
63
101
  webinyTaskId: params.webinyTaskId || this.event.webinyTaskId,
64
102
  webinyTaskDefinitionId: this.event.webinyTaskDefinitionId,
65
103
  tenant: params.tenant || this.event.tenant,
66
- locale: params.locale || this.event.locale,
67
- error: params.error instanceof Error ? (0, _getErrorProperties.getErrorProperties)(params.error) : params.error
104
+ error: params.error instanceof Error ? getErrorProperties(params.error) : params.error
68
105
  });
69
106
  }
70
107
  }
71
- exports.Response = Response;
72
108
 
73
109
  //# sourceMappingURL=Response.js.map