@decaf-ts/core 0.8.85 → 0.9.1-9.tasks

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 (554) hide show
  1. package/README.md +1 -1
  2. package/dist/core.cjs +6705 -2
  3. package/dist/core.js +6932 -2
  4. package/lib/auth/constants.cjs +1 -1
  5. package/lib/auth/decorators.cjs +1 -1
  6. package/lib/auth/index.cjs +1 -1
  7. package/lib/esm/auth/constants.js +1 -1
  8. package/lib/esm/auth/decorators.js +1 -1
  9. package/lib/esm/auth/index.js +1 -1
  10. package/lib/esm/fs/FilesystemAdapter.d.ts +1 -0
  11. package/lib/esm/fs/FilesystemAdapter.js +3 -2
  12. package/lib/esm/fs/FsDispatch.js +1 -1
  13. package/lib/esm/fs/helpers.js +1 -1
  14. package/lib/esm/fs/index.js +1 -1
  15. package/lib/esm/fs/indexStore.js +1 -1
  16. package/lib/esm/fs/locks/FilesystemLock.js +1 -1
  17. package/lib/esm/fs/locks/FilesystemMultiLock.js +1 -1
  18. package/lib/esm/fs/types.d.ts +6 -0
  19. package/lib/esm/fs/types.js +1 -1
  20. package/lib/esm/identity/decorators.js +1 -1
  21. package/lib/esm/identity/index.js +1 -1
  22. package/lib/esm/index.d.ts +1 -1
  23. package/lib/esm/index.js +2 -2
  24. package/lib/esm/interfaces/ContextuallyLogged.js +1 -1
  25. package/lib/esm/interfaces/ErrorParser.js +1 -1
  26. package/lib/esm/interfaces/Executor.js +1 -1
  27. package/lib/esm/interfaces/Observable.js +1 -1
  28. package/lib/esm/interfaces/Observer.js +1 -1
  29. package/lib/esm/interfaces/Paginatable.js +1 -1
  30. package/lib/esm/interfaces/Queriable.js +1 -1
  31. package/lib/esm/interfaces/RawExecutor.js +1 -1
  32. package/lib/esm/interfaces/SequenceOptions.js +1 -1
  33. package/lib/esm/interfaces/index.js +1 -1
  34. package/lib/esm/migrations/Migration.js +1 -1
  35. package/lib/esm/migrations/MigrationService.js +1 -1
  36. package/lib/esm/migrations/MigrationTasks.js +1 -1
  37. package/lib/esm/migrations/constants.js +1 -1
  38. package/lib/esm/migrations/decorators.js +1 -1
  39. package/lib/esm/migrations/index.js +1 -1
  40. package/lib/esm/migrations/types.js +1 -1
  41. package/lib/esm/model/BaseModel.js +1 -1
  42. package/lib/esm/model/SequenceModel.js +1 -1
  43. package/lib/esm/model/construction.d.ts +1 -1
  44. package/lib/esm/model/construction.js +25 -3
  45. package/lib/esm/model/decorators.js +1 -1
  46. package/lib/esm/model/index.js +1 -1
  47. package/lib/esm/model/indexing.js +1 -1
  48. package/lib/esm/model/types.js +1 -1
  49. package/lib/esm/overrides/Metadata.js +1 -1
  50. package/lib/esm/overrides/Model.js +1 -1
  51. package/lib/esm/overrides/ModelBuilder.js +1 -1
  52. package/lib/esm/overrides/index.js +1 -1
  53. package/lib/esm/overrides/injectables.js +1 -1
  54. package/lib/esm/overrides/overrides.js +29 -1
  55. package/lib/esm/persistence/Adapter.js +14 -2
  56. package/lib/esm/persistence/Context.js +1 -1
  57. package/lib/esm/persistence/ContextLock.js +1 -1
  58. package/lib/esm/persistence/Dispatch.d.ts +7 -0
  59. package/lib/esm/persistence/Dispatch.js +20 -3
  60. package/lib/esm/persistence/ObserverHandler.js +1 -1
  61. package/lib/esm/persistence/Sequence.js +1 -1
  62. package/lib/esm/persistence/constants.js +2 -1
  63. package/lib/esm/persistence/decorators.js +1 -1
  64. package/lib/esm/persistence/errors.js +1 -1
  65. package/lib/esm/persistence/event-filters.js +1 -1
  66. package/lib/esm/persistence/generators.js +1 -1
  67. package/lib/esm/persistence/index.js +1 -1
  68. package/lib/esm/persistence/transactions.js +1 -1
  69. package/lib/esm/persistence/types.d.ts +1 -0
  70. package/lib/esm/persistence/types.js +1 -1
  71. package/lib/esm/query/Condition.js +1 -1
  72. package/lib/esm/query/MethodQueryBuilder.js +1 -1
  73. package/lib/esm/query/Paginator.js +1 -1
  74. package/lib/esm/query/Statement.js +1 -1
  75. package/lib/esm/query/constants.js +1 -1
  76. package/lib/esm/query/decorators.js +1 -1
  77. package/lib/esm/query/errors.js +1 -1
  78. package/lib/esm/query/index.js +1 -1
  79. package/lib/esm/query/options.js +1 -1
  80. package/lib/esm/query/selectors.js +1 -1
  81. package/lib/esm/query/types.js +1 -1
  82. package/lib/esm/query/utils.js +1 -1
  83. package/lib/esm/ram/RamAdapter.js +1 -1
  84. package/lib/esm/ram/RamPaginator.js +1 -1
  85. package/lib/esm/ram/RamStatement.js +1 -1
  86. package/lib/esm/ram/constants.js +1 -1
  87. package/lib/esm/ram/handlers.js +1 -1
  88. package/lib/esm/ram/index.js +1 -1
  89. package/lib/esm/ram/types.js +1 -1
  90. package/lib/esm/repository/Repository.d.ts +2 -2
  91. package/lib/esm/repository/Repository.js +19 -16
  92. package/lib/esm/repository/constants.js +1 -1
  93. package/lib/esm/repository/decorators.js +2 -2
  94. package/lib/esm/repository/errors.js +1 -1
  95. package/lib/esm/repository/index.js +1 -1
  96. package/lib/esm/repository/injectables.js +4 -2
  97. package/lib/esm/repository/types.js +1 -1
  98. package/lib/esm/repository/utils.js +1 -1
  99. package/lib/esm/services/ModelService.d.ts +4 -5
  100. package/lib/esm/services/ModelService.js +4 -2
  101. package/lib/esm/services/PersistenceService.js +1 -1
  102. package/lib/esm/services/index.js +1 -1
  103. package/lib/esm/services/services.js +1 -1
  104. package/lib/esm/tasks/CleanUpTask.js +1 -1
  105. package/lib/esm/tasks/TaskContext.d.ts +3 -1
  106. package/lib/esm/tasks/TaskContext.js +9 -2
  107. package/lib/esm/tasks/TaskEngine.d.ts +2 -0
  108. package/lib/esm/tasks/TaskEngine.js +84 -20
  109. package/lib/esm/tasks/TaskErrors.js +1 -1
  110. package/lib/esm/tasks/TaskEventBus.js +1 -1
  111. package/lib/esm/tasks/TaskEventService.d.ts +7 -0
  112. package/lib/esm/tasks/TaskEventService.js +16 -0
  113. package/lib/esm/tasks/TaskHandler.js +1 -1
  114. package/lib/esm/tasks/TaskHandlerRegistry.js +1 -1
  115. package/lib/esm/tasks/TaskService.d.ts +5 -1
  116. package/lib/esm/tasks/TaskService.js +11 -37
  117. package/lib/esm/tasks/TaskStateChangeError.js +1 -1
  118. package/lib/esm/tasks/TaskTracker.js +1 -1
  119. package/lib/esm/tasks/builder.js +1 -1
  120. package/lib/esm/tasks/constants.js +1 -1
  121. package/lib/esm/tasks/decorators.js +1 -1
  122. package/lib/esm/tasks/index.d.ts +1 -0
  123. package/lib/esm/tasks/index.js +2 -1
  124. package/lib/esm/tasks/logging.js +4 -7
  125. package/lib/esm/tasks/models/TaskBackoffModel.js +1 -1
  126. package/lib/esm/tasks/models/TaskErrorModel.js +1 -1
  127. package/lib/esm/tasks/models/TaskEventModel.js +1 -1
  128. package/lib/esm/tasks/models/TaskIOSerializer.js +1 -1
  129. package/lib/esm/tasks/models/TaskLogEntryModel.d.ts +1 -0
  130. package/lib/esm/tasks/models/TaskLogEntryModel.js +6 -2
  131. package/lib/esm/tasks/models/TaskModel.js +1 -1
  132. package/lib/esm/tasks/models/TaskStepResultModel.js +1 -1
  133. package/lib/esm/tasks/models/TaskStepSpecModel.d.ts +1 -0
  134. package/lib/esm/tasks/models/TaskStepSpecModel.js +7 -3
  135. package/lib/esm/tasks/models/index.js +1 -1
  136. package/lib/esm/tasks/types.d.ts +8 -3
  137. package/lib/esm/tasks/types.js +1 -1
  138. package/lib/esm/tasks/utils.js +1 -1
  139. package/lib/esm/utils/ContextualLoggedClass.js +1 -1
  140. package/lib/esm/utils/decorators.js +1 -1
  141. package/lib/esm/utils/errors.js +1 -1
  142. package/lib/esm/utils/index.js +1 -1
  143. package/lib/esm/utils/throttling.js +1 -1
  144. package/lib/esm/utils/types.js +1 -1
  145. package/lib/esm/utils/utils.d.ts +2 -1
  146. package/lib/esm/utils/utils.js +23 -6
  147. package/lib/esm/workers/TaskEngine.js +15 -4
  148. package/lib/esm/workers/WorkThreadEnvironment.js +1 -1
  149. package/lib/esm/workers/index.js +1 -1
  150. package/lib/esm/workers/messages.js +1 -1
  151. package/lib/esm/workers/types.js +1 -1
  152. package/lib/esm/workers/workerThread.js +36 -8
  153. package/lib/fs/FilesystemAdapter.cjs +3 -2
  154. package/lib/fs/FilesystemAdapter.d.ts +1 -0
  155. package/lib/fs/FsDispatch.cjs +1 -1
  156. package/lib/fs/helpers.cjs +1 -1
  157. package/lib/fs/index.cjs +1 -1
  158. package/lib/fs/indexStore.cjs +1 -1
  159. package/lib/fs/locks/FilesystemLock.cjs +1 -1
  160. package/lib/fs/locks/FilesystemMultiLock.cjs +1 -1
  161. package/lib/fs/types.cjs +1 -1
  162. package/lib/fs/types.d.ts +6 -0
  163. package/lib/identity/decorators.cjs +1 -1
  164. package/lib/identity/index.cjs +1 -1
  165. package/lib/index.cjs +2 -2
  166. package/lib/index.d.ts +1 -1
  167. package/lib/interfaces/ContextuallyLogged.cjs +1 -1
  168. package/lib/interfaces/ErrorParser.cjs +1 -1
  169. package/lib/interfaces/Executor.cjs +1 -1
  170. package/lib/interfaces/Observable.cjs +1 -1
  171. package/lib/interfaces/Observer.cjs +1 -1
  172. package/lib/interfaces/Paginatable.cjs +1 -1
  173. package/lib/interfaces/Queriable.cjs +1 -1
  174. package/lib/interfaces/RawExecutor.cjs +1 -1
  175. package/lib/interfaces/SequenceOptions.cjs +1 -1
  176. package/lib/interfaces/index.cjs +1 -1
  177. package/lib/migrations/Migration.cjs +1 -1
  178. package/lib/migrations/MigrationService.cjs +1 -1
  179. package/lib/migrations/MigrationTasks.cjs +1 -1
  180. package/lib/migrations/constants.cjs +1 -1
  181. package/lib/migrations/decorators.cjs +1 -1
  182. package/lib/migrations/index.cjs +1 -1
  183. package/lib/migrations/types.cjs +1 -1
  184. package/lib/model/BaseModel.cjs +1 -1
  185. package/lib/model/SequenceModel.cjs +1 -1
  186. package/lib/model/construction.cjs +25 -3
  187. package/lib/model/construction.d.ts +1 -1
  188. package/lib/model/decorators.cjs +1 -1
  189. package/lib/model/index.cjs +1 -1
  190. package/lib/model/indexing.cjs +1 -1
  191. package/lib/model/types.cjs +1 -1
  192. package/lib/overrides/Metadata.cjs +1 -1
  193. package/lib/overrides/Model.cjs +1 -1
  194. package/lib/overrides/ModelBuilder.cjs +1 -1
  195. package/lib/overrides/index.cjs +1 -1
  196. package/lib/overrides/injectables.cjs +1 -1
  197. package/lib/overrides/overrides.cjs +29 -1
  198. package/lib/persistence/Adapter.cjs +14 -2
  199. package/lib/persistence/Context.cjs +1 -1
  200. package/lib/persistence/ContextLock.cjs +1 -1
  201. package/lib/persistence/Dispatch.cjs +20 -3
  202. package/lib/persistence/Dispatch.d.ts +7 -0
  203. package/lib/persistence/ObserverHandler.cjs +1 -1
  204. package/lib/persistence/Sequence.cjs +1 -1
  205. package/lib/persistence/constants.cjs +2 -1
  206. package/lib/persistence/decorators.cjs +1 -1
  207. package/lib/persistence/errors.cjs +1 -1
  208. package/lib/persistence/event-filters.cjs +1 -1
  209. package/lib/persistence/generators.cjs +1 -1
  210. package/lib/persistence/index.cjs +1 -1
  211. package/lib/persistence/transactions.cjs +1 -1
  212. package/lib/persistence/types.cjs +1 -1
  213. package/lib/persistence/types.d.ts +1 -0
  214. package/lib/query/Condition.cjs +1 -1
  215. package/lib/query/MethodQueryBuilder.cjs +1 -1
  216. package/lib/query/Paginator.cjs +1 -1
  217. package/lib/query/Statement.cjs +1 -1
  218. package/lib/query/constants.cjs +1 -1
  219. package/lib/query/decorators.cjs +1 -1
  220. package/lib/query/errors.cjs +1 -1
  221. package/lib/query/index.cjs +1 -1
  222. package/lib/query/options.cjs +1 -1
  223. package/lib/query/selectors.cjs +1 -1
  224. package/lib/query/types.cjs +1 -1
  225. package/lib/query/utils.cjs +1 -1
  226. package/lib/ram/RamAdapter.cjs +1 -1
  227. package/lib/ram/RamPaginator.cjs +1 -1
  228. package/lib/ram/RamStatement.cjs +1 -1
  229. package/lib/ram/constants.cjs +1 -1
  230. package/lib/ram/handlers.cjs +1 -1
  231. package/lib/ram/index.cjs +1 -1
  232. package/lib/ram/types.cjs +1 -1
  233. package/lib/repository/Repository.cjs +19 -16
  234. package/lib/repository/Repository.d.ts +2 -2
  235. package/lib/repository/constants.cjs +1 -1
  236. package/lib/repository/decorators.cjs +2 -2
  237. package/lib/repository/errors.cjs +1 -1
  238. package/lib/repository/index.cjs +1 -1
  239. package/lib/repository/injectables.cjs +4 -2
  240. package/lib/repository/types.cjs +1 -1
  241. package/lib/repository/utils.cjs +1 -1
  242. package/lib/services/ModelService.cjs +4 -2
  243. package/lib/services/ModelService.d.ts +4 -5
  244. package/lib/services/PersistenceService.cjs +1 -1
  245. package/lib/services/index.cjs +1 -1
  246. package/lib/services/services.cjs +1 -1
  247. package/lib/tasks/CleanUpTask.cjs +1 -1
  248. package/lib/tasks/TaskContext.cjs +9 -2
  249. package/lib/tasks/TaskContext.d.ts +3 -1
  250. package/lib/tasks/TaskEngine.cjs +84 -20
  251. package/lib/tasks/TaskEngine.d.ts +2 -0
  252. package/lib/tasks/TaskErrors.cjs +1 -1
  253. package/lib/tasks/TaskEventBus.cjs +1 -1
  254. package/lib/tasks/TaskEventService.cjs +20 -0
  255. package/lib/tasks/TaskEventService.d.ts +7 -0
  256. package/lib/tasks/TaskHandler.cjs +1 -1
  257. package/lib/tasks/TaskHandlerRegistry.cjs +1 -1
  258. package/lib/tasks/TaskService.cjs +10 -36
  259. package/lib/tasks/TaskService.d.ts +5 -1
  260. package/lib/tasks/TaskStateChangeError.cjs +1 -1
  261. package/lib/tasks/TaskTracker.cjs +1 -1
  262. package/lib/tasks/builder.cjs +1 -1
  263. package/lib/tasks/constants.cjs +1 -1
  264. package/lib/tasks/decorators.cjs +1 -1
  265. package/lib/tasks/index.cjs +2 -1
  266. package/lib/tasks/index.d.ts +1 -0
  267. package/lib/tasks/logging.cjs +4 -7
  268. package/lib/tasks/models/TaskBackoffModel.cjs +1 -1
  269. package/lib/tasks/models/TaskErrorModel.cjs +1 -1
  270. package/lib/tasks/models/TaskEventModel.cjs +1 -1
  271. package/lib/tasks/models/TaskIOSerializer.cjs +1 -1
  272. package/lib/tasks/models/TaskLogEntryModel.cjs +5 -1
  273. package/lib/tasks/models/TaskLogEntryModel.d.ts +1 -0
  274. package/lib/tasks/models/TaskModel.cjs +1 -1
  275. package/lib/tasks/models/TaskStepResultModel.cjs +1 -1
  276. package/lib/tasks/models/TaskStepSpecModel.cjs +6 -2
  277. package/lib/tasks/models/TaskStepSpecModel.d.ts +1 -0
  278. package/lib/tasks/models/index.cjs +1 -1
  279. package/lib/tasks/types.cjs +1 -1
  280. package/lib/tasks/types.d.ts +8 -3
  281. package/lib/tasks/utils.cjs +1 -1
  282. package/lib/utils/ContextualLoggedClass.cjs +1 -1
  283. package/lib/utils/decorators.cjs +1 -1
  284. package/lib/utils/errors.cjs +1 -1
  285. package/lib/utils/index.cjs +1 -1
  286. package/lib/utils/throttling.cjs +1 -1
  287. package/lib/utils/types.cjs +1 -1
  288. package/lib/utils/utils.cjs +22 -5
  289. package/lib/utils/utils.d.ts +2 -1
  290. package/lib/workers/TaskEngine.cjs +15 -4
  291. package/lib/workers/WorkThreadEnvironment.cjs +1 -1
  292. package/lib/workers/index.cjs +1 -1
  293. package/lib/workers/messages.cjs +1 -1
  294. package/lib/workers/types.cjs +1 -1
  295. package/lib/workers/workerThread.cjs +35 -7
  296. package/package.json +1 -1
  297. package/dist/core.cjs.map +0 -1
  298. package/dist/core.js.map +0 -1
  299. package/lib/auth/constants.js.map +0 -1
  300. package/lib/auth/decorators.js.map +0 -1
  301. package/lib/auth/index.js.map +0 -1
  302. package/lib/esm/auth/constants.js.map +0 -1
  303. package/lib/esm/auth/decorators.js.map +0 -1
  304. package/lib/esm/auth/index.js.map +0 -1
  305. package/lib/esm/fs/FilesystemAdapter.js.map +0 -1
  306. package/lib/esm/fs/FsDispatch.js.map +0 -1
  307. package/lib/esm/fs/helpers.js.map +0 -1
  308. package/lib/esm/fs/index.js.map +0 -1
  309. package/lib/esm/fs/indexStore.js.map +0 -1
  310. package/lib/esm/fs/locks/FilesystemLock.js.map +0 -1
  311. package/lib/esm/fs/locks/FilesystemMultiLock.js.map +0 -1
  312. package/lib/esm/fs/types.js.map +0 -1
  313. package/lib/esm/identity/decorators.js.map +0 -1
  314. package/lib/esm/identity/index.js.map +0 -1
  315. package/lib/esm/index.js.map +0 -1
  316. package/lib/esm/interfaces/ContextuallyLogged.js.map +0 -1
  317. package/lib/esm/interfaces/ErrorParser.js.map +0 -1
  318. package/lib/esm/interfaces/Executor.js.map +0 -1
  319. package/lib/esm/interfaces/Observable.js.map +0 -1
  320. package/lib/esm/interfaces/Observer.js.map +0 -1
  321. package/lib/esm/interfaces/Paginatable.js.map +0 -1
  322. package/lib/esm/interfaces/Queriable.js.map +0 -1
  323. package/lib/esm/interfaces/RawExecutor.js.map +0 -1
  324. package/lib/esm/interfaces/SequenceOptions.js.map +0 -1
  325. package/lib/esm/interfaces/index.js.map +0 -1
  326. package/lib/esm/migrations/Migration.js.map +0 -1
  327. package/lib/esm/migrations/MigrationService.js.map +0 -1
  328. package/lib/esm/migrations/MigrationTasks.js.map +0 -1
  329. package/lib/esm/migrations/constants.js.map +0 -1
  330. package/lib/esm/migrations/decorators.js.map +0 -1
  331. package/lib/esm/migrations/index.js.map +0 -1
  332. package/lib/esm/migrations/types.js.map +0 -1
  333. package/lib/esm/model/BaseModel.js.map +0 -1
  334. package/lib/esm/model/SequenceModel.js.map +0 -1
  335. package/lib/esm/model/construction.js.map +0 -1
  336. package/lib/esm/model/decorators.js.map +0 -1
  337. package/lib/esm/model/index.js.map +0 -1
  338. package/lib/esm/model/indexing.js.map +0 -1
  339. package/lib/esm/model/types.js.map +0 -1
  340. package/lib/esm/overrides/Metadata.js.map +0 -1
  341. package/lib/esm/overrides/Model.js.map +0 -1
  342. package/lib/esm/overrides/ModelBuilder.js.map +0 -1
  343. package/lib/esm/overrides/index.js.map +0 -1
  344. package/lib/esm/overrides/injectables.js.map +0 -1
  345. package/lib/esm/overrides/overrides.js.map +0 -1
  346. package/lib/esm/persistence/Adapter.js.map +0 -1
  347. package/lib/esm/persistence/Context.js.map +0 -1
  348. package/lib/esm/persistence/ContextLock.js.map +0 -1
  349. package/lib/esm/persistence/Dispatch.js.map +0 -1
  350. package/lib/esm/persistence/ObserverHandler.js.map +0 -1
  351. package/lib/esm/persistence/Sequence.js.map +0 -1
  352. package/lib/esm/persistence/constants.js.map +0 -1
  353. package/lib/esm/persistence/decorators.js.map +0 -1
  354. package/lib/esm/persistence/errors.js.map +0 -1
  355. package/lib/esm/persistence/event-filters.js.map +0 -1
  356. package/lib/esm/persistence/generators.js.map +0 -1
  357. package/lib/esm/persistence/index.js.map +0 -1
  358. package/lib/esm/persistence/transactions.js.map +0 -1
  359. package/lib/esm/persistence/types.js.map +0 -1
  360. package/lib/esm/query/Condition.js.map +0 -1
  361. package/lib/esm/query/MethodQueryBuilder.js.map +0 -1
  362. package/lib/esm/query/Paginator.js.map +0 -1
  363. package/lib/esm/query/Statement.js.map +0 -1
  364. package/lib/esm/query/constants.js.map +0 -1
  365. package/lib/esm/query/decorators.js.map +0 -1
  366. package/lib/esm/query/errors.js.map +0 -1
  367. package/lib/esm/query/index.js.map +0 -1
  368. package/lib/esm/query/options.js.map +0 -1
  369. package/lib/esm/query/selectors.js.map +0 -1
  370. package/lib/esm/query/types.js.map +0 -1
  371. package/lib/esm/query/utils.js.map +0 -1
  372. package/lib/esm/ram/RamAdapter.js.map +0 -1
  373. package/lib/esm/ram/RamPaginator.js.map +0 -1
  374. package/lib/esm/ram/RamStatement.js.map +0 -1
  375. package/lib/esm/ram/constants.js.map +0 -1
  376. package/lib/esm/ram/handlers.js.map +0 -1
  377. package/lib/esm/ram/index.js.map +0 -1
  378. package/lib/esm/ram/types.js.map +0 -1
  379. package/lib/esm/repository/Repository.js.map +0 -1
  380. package/lib/esm/repository/constants.js.map +0 -1
  381. package/lib/esm/repository/decorators.js.map +0 -1
  382. package/lib/esm/repository/errors.js.map +0 -1
  383. package/lib/esm/repository/index.js.map +0 -1
  384. package/lib/esm/repository/injectables.js.map +0 -1
  385. package/lib/esm/repository/types.js.map +0 -1
  386. package/lib/esm/repository/utils.js.map +0 -1
  387. package/lib/esm/services/ModelService.js.map +0 -1
  388. package/lib/esm/services/PersistenceService.js.map +0 -1
  389. package/lib/esm/services/index.js.map +0 -1
  390. package/lib/esm/services/services.js.map +0 -1
  391. package/lib/esm/tasks/CleanUpTask.js.map +0 -1
  392. package/lib/esm/tasks/TaskContext.js.map +0 -1
  393. package/lib/esm/tasks/TaskEngine.js.map +0 -1
  394. package/lib/esm/tasks/TaskErrors.js.map +0 -1
  395. package/lib/esm/tasks/TaskEventBus.js.map +0 -1
  396. package/lib/esm/tasks/TaskHandler.js.map +0 -1
  397. package/lib/esm/tasks/TaskHandlerRegistry.js.map +0 -1
  398. package/lib/esm/tasks/TaskService.js.map +0 -1
  399. package/lib/esm/tasks/TaskStateChangeError.js.map +0 -1
  400. package/lib/esm/tasks/TaskTracker.js.map +0 -1
  401. package/lib/esm/tasks/builder.js.map +0 -1
  402. package/lib/esm/tasks/constants.js.map +0 -1
  403. package/lib/esm/tasks/decorators.js.map +0 -1
  404. package/lib/esm/tasks/index.js.map +0 -1
  405. package/lib/esm/tasks/logging.js.map +0 -1
  406. package/lib/esm/tasks/models/TaskBackoffModel.js.map +0 -1
  407. package/lib/esm/tasks/models/TaskErrorModel.js.map +0 -1
  408. package/lib/esm/tasks/models/TaskEventModel.js.map +0 -1
  409. package/lib/esm/tasks/models/TaskIOSerializer.js.map +0 -1
  410. package/lib/esm/tasks/models/TaskLogEntryModel.js.map +0 -1
  411. package/lib/esm/tasks/models/TaskModel.js.map +0 -1
  412. package/lib/esm/tasks/models/TaskStepResultModel.js.map +0 -1
  413. package/lib/esm/tasks/models/TaskStepSpecModel.js.map +0 -1
  414. package/lib/esm/tasks/models/index.js.map +0 -1
  415. package/lib/esm/tasks/types.js.map +0 -1
  416. package/lib/esm/tasks/utils.js.map +0 -1
  417. package/lib/esm/utils/ContextualLoggedClass.js.map +0 -1
  418. package/lib/esm/utils/decorators.js.map +0 -1
  419. package/lib/esm/utils/errors.js.map +0 -1
  420. package/lib/esm/utils/index.js.map +0 -1
  421. package/lib/esm/utils/throttling.js.map +0 -1
  422. package/lib/esm/utils/types.js.map +0 -1
  423. package/lib/esm/utils/utils.js.map +0 -1
  424. package/lib/esm/workers/TaskEngine.js.map +0 -1
  425. package/lib/esm/workers/WorkThreadEnvironment.js.map +0 -1
  426. package/lib/esm/workers/index.js.map +0 -1
  427. package/lib/esm/workers/messages.js.map +0 -1
  428. package/lib/esm/workers/types.js.map +0 -1
  429. package/lib/esm/workers/workerThread.js.map +0 -1
  430. package/lib/fs/FilesystemAdapter.js.map +0 -1
  431. package/lib/fs/FsDispatch.js.map +0 -1
  432. package/lib/fs/helpers.js.map +0 -1
  433. package/lib/fs/index.js.map +0 -1
  434. package/lib/fs/indexStore.js.map +0 -1
  435. package/lib/fs/locks/FilesystemLock.js.map +0 -1
  436. package/lib/fs/locks/FilesystemMultiLock.js.map +0 -1
  437. package/lib/fs/types.js.map +0 -1
  438. package/lib/identity/decorators.js.map +0 -1
  439. package/lib/identity/index.js.map +0 -1
  440. package/lib/index.js.map +0 -1
  441. package/lib/interfaces/ContextuallyLogged.js.map +0 -1
  442. package/lib/interfaces/ErrorParser.js.map +0 -1
  443. package/lib/interfaces/Executor.js.map +0 -1
  444. package/lib/interfaces/Observable.js.map +0 -1
  445. package/lib/interfaces/Observer.js.map +0 -1
  446. package/lib/interfaces/Paginatable.js.map +0 -1
  447. package/lib/interfaces/Queriable.js.map +0 -1
  448. package/lib/interfaces/RawExecutor.js.map +0 -1
  449. package/lib/interfaces/SequenceOptions.js.map +0 -1
  450. package/lib/interfaces/index.js.map +0 -1
  451. package/lib/migrations/Migration.js.map +0 -1
  452. package/lib/migrations/MigrationService.js.map +0 -1
  453. package/lib/migrations/MigrationTasks.js.map +0 -1
  454. package/lib/migrations/constants.js.map +0 -1
  455. package/lib/migrations/decorators.js.map +0 -1
  456. package/lib/migrations/index.js.map +0 -1
  457. package/lib/migrations/types.js.map +0 -1
  458. package/lib/model/BaseModel.js.map +0 -1
  459. package/lib/model/SequenceModel.js.map +0 -1
  460. package/lib/model/construction.js.map +0 -1
  461. package/lib/model/decorators.js.map +0 -1
  462. package/lib/model/index.js.map +0 -1
  463. package/lib/model/indexing.js.map +0 -1
  464. package/lib/model/types.js.map +0 -1
  465. package/lib/overrides/Metadata.js.map +0 -1
  466. package/lib/overrides/Model.js.map +0 -1
  467. package/lib/overrides/ModelBuilder.js.map +0 -1
  468. package/lib/overrides/index.js.map +0 -1
  469. package/lib/overrides/injectables.js.map +0 -1
  470. package/lib/overrides/overrides.js.map +0 -1
  471. package/lib/persistence/Adapter.js.map +0 -1
  472. package/lib/persistence/Context.js.map +0 -1
  473. package/lib/persistence/ContextLock.js.map +0 -1
  474. package/lib/persistence/Dispatch.js.map +0 -1
  475. package/lib/persistence/ObserverHandler.js.map +0 -1
  476. package/lib/persistence/Sequence.js.map +0 -1
  477. package/lib/persistence/constants.js.map +0 -1
  478. package/lib/persistence/decorators.js.map +0 -1
  479. package/lib/persistence/errors.js.map +0 -1
  480. package/lib/persistence/event-filters.js.map +0 -1
  481. package/lib/persistence/generators.js.map +0 -1
  482. package/lib/persistence/index.js.map +0 -1
  483. package/lib/persistence/transactions.js.map +0 -1
  484. package/lib/persistence/types.js.map +0 -1
  485. package/lib/query/Condition.js.map +0 -1
  486. package/lib/query/MethodQueryBuilder.js.map +0 -1
  487. package/lib/query/Paginator.js.map +0 -1
  488. package/lib/query/Statement.js.map +0 -1
  489. package/lib/query/constants.js.map +0 -1
  490. package/lib/query/decorators.js.map +0 -1
  491. package/lib/query/errors.js.map +0 -1
  492. package/lib/query/index.js.map +0 -1
  493. package/lib/query/options.js.map +0 -1
  494. package/lib/query/selectors.js.map +0 -1
  495. package/lib/query/types.js.map +0 -1
  496. package/lib/query/utils.js.map +0 -1
  497. package/lib/ram/RamAdapter.js.map +0 -1
  498. package/lib/ram/RamPaginator.js.map +0 -1
  499. package/lib/ram/RamStatement.js.map +0 -1
  500. package/lib/ram/constants.js.map +0 -1
  501. package/lib/ram/handlers.js.map +0 -1
  502. package/lib/ram/index.js.map +0 -1
  503. package/lib/ram/types.js.map +0 -1
  504. package/lib/repository/Repository.js.map +0 -1
  505. package/lib/repository/constants.js.map +0 -1
  506. package/lib/repository/decorators.js.map +0 -1
  507. package/lib/repository/errors.js.map +0 -1
  508. package/lib/repository/index.js.map +0 -1
  509. package/lib/repository/injectables.js.map +0 -1
  510. package/lib/repository/types.js.map +0 -1
  511. package/lib/repository/utils.js.map +0 -1
  512. package/lib/services/ModelService.js.map +0 -1
  513. package/lib/services/PersistenceService.js.map +0 -1
  514. package/lib/services/index.js.map +0 -1
  515. package/lib/services/services.js.map +0 -1
  516. package/lib/tasks/CleanUpTask.js.map +0 -1
  517. package/lib/tasks/TaskContext.js.map +0 -1
  518. package/lib/tasks/TaskEngine.js.map +0 -1
  519. package/lib/tasks/TaskErrors.js.map +0 -1
  520. package/lib/tasks/TaskEventBus.js.map +0 -1
  521. package/lib/tasks/TaskHandler.js.map +0 -1
  522. package/lib/tasks/TaskHandlerRegistry.js.map +0 -1
  523. package/lib/tasks/TaskService.js.map +0 -1
  524. package/lib/tasks/TaskStateChangeError.js.map +0 -1
  525. package/lib/tasks/TaskTracker.js.map +0 -1
  526. package/lib/tasks/builder.js.map +0 -1
  527. package/lib/tasks/constants.js.map +0 -1
  528. package/lib/tasks/decorators.js.map +0 -1
  529. package/lib/tasks/index.js.map +0 -1
  530. package/lib/tasks/logging.js.map +0 -1
  531. package/lib/tasks/models/TaskBackoffModel.js.map +0 -1
  532. package/lib/tasks/models/TaskErrorModel.js.map +0 -1
  533. package/lib/tasks/models/TaskEventModel.js.map +0 -1
  534. package/lib/tasks/models/TaskIOSerializer.js.map +0 -1
  535. package/lib/tasks/models/TaskLogEntryModel.js.map +0 -1
  536. package/lib/tasks/models/TaskModel.js.map +0 -1
  537. package/lib/tasks/models/TaskStepResultModel.js.map +0 -1
  538. package/lib/tasks/models/TaskStepSpecModel.js.map +0 -1
  539. package/lib/tasks/models/index.js.map +0 -1
  540. package/lib/tasks/types.js.map +0 -1
  541. package/lib/tasks/utils.js.map +0 -1
  542. package/lib/utils/ContextualLoggedClass.js.map +0 -1
  543. package/lib/utils/decorators.js.map +0 -1
  544. package/lib/utils/errors.js.map +0 -1
  545. package/lib/utils/index.js.map +0 -1
  546. package/lib/utils/throttling.js.map +0 -1
  547. package/lib/utils/types.js.map +0 -1
  548. package/lib/utils/utils.js.map +0 -1
  549. package/lib/workers/TaskEngine.js.map +0 -1
  550. package/lib/workers/WorkThreadEnvironment.js.map +0 -1
  551. package/lib/workers/index.js.map +0 -1
  552. package/lib/workers/messages.js.map +0 -1
  553. package/lib/workers/types.js.map +0 -1
  554. package/lib/workers/workerThread.js.map +0 -1
@@ -12,14 +12,14 @@ import { TaskEngine } from "./TaskEngine.js";
12
12
  import { Context } from "./../persistence/Context.js";
13
13
  import { PersistenceKeys } from "./../persistence/constants.js";
14
14
  import { UnsupportedError } from "./../persistence/errors.js";
15
- import { BulkCrudOperationKeys, DefaultSeparator, InternalError, OperationKeys, } from "@decaf-ts/db-decorators";
16
- import { Repository } from "./../repository/Repository.js";
17
- import { Model } from "@decaf-ts/decorator-validation";
15
+ import { BulkCrudOperationKeys, InternalError, OperationKeys, } from "@decaf-ts/db-decorators";
18
16
  import { TaskModel } from "./models/TaskModel.js";
19
17
  import { create, del, read, update } from "./../utils/decorators.js";
20
18
  import { PreparedStatementKeys } from "./../query/constants.js";
21
- import { TaskEventModel } from "./models/index.js";
22
19
  export class TaskService extends ClientBasedService {
20
+ get adapter() {
21
+ return this.client["adapter"];
22
+ }
23
23
  get tasks() {
24
24
  return this.client["tasks"];
25
25
  }
@@ -35,19 +35,12 @@ export class TaskService extends ClientBasedService {
35
35
  throw new InternalError(`No/invalid config provided`);
36
36
  if (!cfg.adapter)
37
37
  throw new InternalError(`No adapter provided`);
38
- const alias = cfg.adapter.alias;
39
- const overrides = Object.assign({}, cfg.overrides || {}, {
40
- afterQueryHandlers: true,
41
- });
42
- const clientConfig = Object.assign({}, cfg, {
43
- overrides,
44
- });
45
38
  const EngineCtor = cfg.engine || TaskEngine;
46
- const client = new EngineCtor(clientConfig);
47
- reRegisterTaskServiceRepositories(alias);
39
+ const client = new EngineCtor(cfg);
40
+ // reRegisterTaskServiceRepositories(cfg.adapter.alias, client);
48
41
  return {
49
42
  client,
50
- config: clientConfig,
43
+ config: cfg,
51
44
  };
52
45
  }
53
46
  async push(task, track = false, ...args) {
@@ -62,6 +55,9 @@ export class TaskService extends ClientBasedService {
62
55
  const { ctxArgs } = (await this.logCtx(args, OperationKeys.CREATE, true)).for(this.push);
63
56
  return this.client.track(id, ...ctxArgs);
64
57
  }
58
+ select(selector) {
59
+ return this.tasks.select(selector);
60
+ }
65
61
  async create(model, ...args) {
66
62
  const { ctxArgs } = (await this.logCtx(args, OperationKeys.CREATE, true)).for(this.create);
67
63
  const created = await this.tasks.create(model, ...ctxArgs);
@@ -230,26 +226,4 @@ __decorate([
230
226
  __metadata("design:paramtypes", [Array, void 0]),
231
227
  __metadata("design:returntype", Promise)
232
228
  ], TaskService.prototype, "updateAll", null);
233
- function reRegisterTaskServiceRepositories(alias) {
234
- reRegisterRepository(TaskModel, alias);
235
- reRegisterRepository(TaskEventModel, alias);
236
- }
237
- function reRegisterRepository(model, alias) {
238
- const overrides = { afterQueryHandlers: true };
239
- const cache = Repository._cache;
240
- try {
241
- const repo = Repository.forModel(model, alias);
242
- if (cache) {
243
- const name = Model.tableName(model);
244
- if (alias) {
245
- delete cache[[name, alias].join(DefaultSeparator)];
246
- }
247
- delete cache[name];
248
- }
249
- Repository.register(model, repo.override(overrides), alias);
250
- }
251
- catch {
252
- // ignore if repository not available yet
253
- }
254
- }
255
- //# sourceMappingURL=TaskService.js.map
229
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVGFza1NlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvdGFza3MvVGFza1NlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0FBTUEsT0FBTyxFQUFFLGtCQUFrQixFQUFFLGtDQUE2QjtBQUMxRCxPQUFPLEVBQUUsVUFBVSxFQUFFLHdCQUFxQjtBQUMxQyxPQUFPLEVBQUUsT0FBTyxFQUFFLG9DQUErQjtBQVFqRCxPQUFPLEVBQUUsZUFBZSxFQUFFLHNDQUFpQztBQUMzRCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsbUNBQThCO0FBQ3pELE9BQU8sRUFDTCxxQkFBcUIsRUFDckIsYUFBYSxFQUNiLGFBQWEsR0FFZCxNQUFNLHlCQUF5QixDQUFDO0FBR2pDLE9BQU8sRUFBRSxTQUFTLEVBQUUsOEJBQTJCO0FBQy9DLE9BQU8sRUFBRSxNQUFNLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsaUNBQTRCO0FBQ2hFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxnQ0FBMkI7QUFrQjNELE1BQU0sT0FBTyxXQUVYLFNBQVEsa0JBQXNEO0lBQzlELElBQWMsT0FBTztRQUNuQixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDaEMsQ0FBQztJQUVELElBQWMsS0FBSztRQUNqQixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDOUIsQ0FBQztJQUVELElBQWMsTUFBTTtRQUNsQixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDL0IsQ0FBQztJQUVEO1FBQ0UsS0FBSyxFQUFFLENBQUM7SUFDVixDQUFDO0lBRVEsS0FBSyxDQUFDLFVBQVUsQ0FDdkIsR0FBRyxJQUFzQztRQUt6QyxNQUFNLEdBQUcsR0FBRyxJQUFJLENBQUMsS0FBSyxFQUEwQyxDQUFDO1FBQ2pFLElBQUksQ0FBQyxHQUFHLElBQUksR0FBRyxZQUFZLE9BQU87WUFDaEMsTUFBTSxJQUFJLGFBQWEsQ0FBQyw0QkFBNEIsQ0FBQyxDQUFDO1FBQ3hELElBQUksQ0FBQyxHQUFHLENBQUMsT0FBTztZQUFFLE1BQU0sSUFBSSxhQUFhLENBQUMscUJBQXFCLENBQUMsQ0FBQztRQUNqRSxNQUFNLFVBQVUsR0FBRyxHQUFHLENBQUMsTUFBTSxJQUFJLFVBQVUsQ0FBQztRQUM1QyxNQUFNLE1BQU0sR0FBa0IsSUFBSSxVQUFVLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDbEQsZ0VBQWdFO1FBQ2hFLE9BQU87WUFDTCxNQUFNO1lBQ04sTUFBTSxFQUFFLEdBQUc7U0FDWixDQUFDO0lBQ0osQ0FBQztJQW1CRCxLQUFLLENBQUMsSUFBSSxDQUNSLElBQXFCLEVBQ3JCLFFBQWUsS0FBYyxFQUM3QixHQUFHLElBQTZCO1FBTWhDLE1BQU0sRUFBRSxPQUFPLEVBQUUsR0FBRyxDQUNsQixNQUFNLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLGFBQWEsQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLENBQ3BELENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUVqQixNQUFNLE9BQU8sR0FBRyxDQUFDLE1BQU0sSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLEtBQUssRUFBRSxHQUFHLE9BQU8sQ0FBQyxDQUFRLENBQUM7UUFDekUsSUFBSSxDQUFDLENBQUMsTUFBTSxJQUFJLENBQUMsTUFBTSxDQUFDLFNBQVMsRUFBRSxDQUFDLEVBQUUsQ0FBQztZQUNyQyxLQUFLLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDM0IsQ0FBQztRQUNELE9BQU8sT0FBTyxDQUFDO0lBQ2pCLENBQUM7SUFFRCxLQUFLLENBQUMsS0FBSyxDQUNULEVBQVUsRUFDVixHQUFHLElBQTZCO1FBRWhDLE1BQU0sRUFBRSxPQUFPLEVBQUUsR0FBRyxDQUNsQixNQUFNLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLGFBQWEsQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLENBQ3BELENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNqQixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLEVBQUUsRUFBRSxHQUFHLE9BQU8sQ0FBQyxDQUFDO0lBQzNDLENBQUM7SUFTRCxNQUFNLENBQ0osUUFBMEI7UUFJMUIsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxRQUEyQixDQUFDLENBQUM7SUFDeEQsQ0FBQztJQUdLLEFBQU4sS0FBSyxDQUFDLE1BQU0sQ0FDVixLQUFnQixFQUNoQixHQUFHLElBQXNDO1FBRXpDLE1BQU0sRUFBRSxPQUFPLEVBQUUsR0FBRyxDQUNsQixNQUFNLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLGFBQWEsQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLENBQ3BELENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUNuQixNQUFNLE9BQU8sR0FBRyxNQUFNLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLEtBQUssRUFBRSxHQUFHLE9BQU8sQ0FBQyxDQUFDO1FBQzNELElBQUksQ0FBQyxDQUFDLE1BQU0sSUFBSSxDQUFDLE1BQU0sQ0FBQyxTQUFTLEVBQUUsQ0FBQyxFQUFFLENBQUM7WUFDckMsS0FBSyxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQzNCLENBQUM7UUFDRCxPQUFPLE9BQU8sQ0FBQztJQUNqQixDQUFDO0lBR0ssQUFBTixLQUFLLENBQUMsU0FBUyxDQUNiLE1BQW1CLEVBQ25CLEdBQUcsSUFBc0M7UUFFekMsTUFBTSxFQUFFLE9BQU8sRUFBRSxHQUFHLENBQ2xCLE1BQU0sSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUscUJBQXFCLENBQUMsVUFBVSxFQUFFLElBQUksQ0FBQyxDQUNoRSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDdEIsTUFBTSxPQUFPLEdBQUcsTUFBTSxJQUFJLENBQUMsS0FBSyxDQUFDLFNBQVMsQ0FBQyxNQUFNLEVBQUUsR0FBRyxPQUFPLENBQUMsQ0FBQztRQUMvRCxJQUFJLENBQUMsQ0FBQyxNQUFNLElBQUksQ0FBQyxNQUFNLENBQUMsU0FBUyxFQUFFLENBQUM7WUFBRSxLQUFLLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDL0QsT0FBTyxPQUFPLENBQUM7SUFDakIsQ0FBQztJQUdLLEFBQU4sS0FBSyxDQUFDLE1BQU0sQ0FDVixHQUFtQixFQUNuQixHQUFHLElBQXNDO1FBRXpDLE1BQU0sRUFBRSxPQUFPLEVBQUUsR0FBRyxDQUNsQixNQUFNLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLGFBQWEsQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLENBQ3BELENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUNuQixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLEdBQUcsRUFBRSxHQUFHLE9BQU8sQ0FBQyxDQUFDO0lBQzVDLENBQUM7SUFHSyxBQUFOLEtBQUssQ0FBQyxTQUFTLENBQ2IsSUFBc0IsRUFDdEIsR0FBRyxJQUFzQztRQUV6QyxNQUFNLEVBQUUsT0FBTyxFQUFFLEdBQUcsQ0FDbEIsTUFBTSxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxxQkFBcUIsQ0FBQyxVQUFVLEVBQUUsSUFBSSxDQUFDLENBQ2hFLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUN0QixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsU0FBUyxDQUFDLElBQUksRUFBRSxHQUFHLE9BQU8sQ0FBQyxDQUFDO0lBQ2hELENBQUM7SUFHSyxBQUFOLEtBQUssQ0FBQyxJQUFJLENBQ1IsR0FBbUIsRUFDbkIsR0FBRyxJQUFzQztRQUV6QyxNQUFNLEVBQUUsT0FBTyxFQUFFLEdBQUcsQ0FBQyxNQUFNLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLGFBQWEsQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQ3pFLElBQUksQ0FBQyxJQUFJLENBQ1YsQ0FBQztRQUNGLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFLEdBQUcsT0FBTyxDQUFDLENBQUM7SUFDMUMsQ0FBQztJQUdLLEFBQU4sS0FBSyxDQUFDLE9BQU8sQ0FDWCxJQUFzQixFQUN0QixHQUFHLElBQXNDO1FBRXpDLE1BQU0sRUFBRSxPQUFPLEVBQUUsR0FBRyxDQUNsQixNQUFNLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLHFCQUFxQixDQUFDLFFBQVEsRUFBRSxJQUFJLENBQUMsQ0FDOUQsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ3BCLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsSUFBSSxFQUFFLEdBQUcsT0FBTyxDQUFDLENBQUM7SUFDOUMsQ0FBQztJQUdLLEFBQU4sS0FBSyxDQUFDLEtBQUssQ0FDVCxVQUFrQixFQUNsQixHQUFHLElBQXNDO1FBRXpDLE1BQU0sRUFBRSxPQUFPLEVBQUUsR0FBRyxDQUNsQixNQUFNLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLGVBQWUsQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLENBQ3JELENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNsQixNQUFNLE1BQU0sR0FBSSxJQUFJLENBQUMsS0FBYSxFQUFFLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDakQsSUFBSSxPQUFPLE1BQU0sS0FBSyxVQUFVO1lBQzlCLE1BQU0sSUFBSSxhQUFhLENBQUMsV0FBVyxVQUFVLHNCQUFzQixDQUFDLENBQUM7UUFFdkUsT0FBTyxNQUFNLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsT0FBTyxDQUFDLENBQUM7SUFDM0MsQ0FBQztJQUdLLEFBQU4sS0FBSyxDQUFDLE1BQU07SUFDViw2REFBNkQ7SUFDN0QsS0FBZ0I7SUFDaEIsNkRBQTZEO0lBQzdELEdBQUcsSUFBc0M7UUFFekMsTUFBTSxJQUFJLGdCQUFnQixDQUFDLG9DQUFvQyxDQUFDLENBQUM7SUFDbkUsQ0FBQztJQUdLLEFBQU4sS0FBSyxDQUFDLFNBQVM7SUFDYiw2REFBNkQ7SUFDN0QsTUFBbUI7SUFDbkIsNkRBQTZEO0lBQzdELEdBQUcsSUFBc0M7UUFFekMsTUFBTSxJQUFJLGdCQUFnQixDQUFDLG9DQUFvQyxDQUFDLENBQUM7SUFDbkUsQ0FBQztJQUNELEVBQUU7SUFDRixlQUFlO0lBQ2YsNkJBQTZCO0lBQzdCLHNCQUFzQjtJQUN0QixnREFBZ0Q7SUFDaEQsb0JBQW9CO0lBQ3BCLG1CQUFtQjtJQUNuQiw4Q0FBOEM7SUFDOUMsb0JBQW9CO0lBQ3BCLG1FQUFtRTtJQUNuRSxpRkFBaUY7SUFDakYsSUFBSTtJQUVKLEtBQUssQ0FBQyxNQUFNLENBQ1YsR0FBb0IsRUFDcEIsS0FBcUIsRUFDckIsR0FBRyxJQUFzQztRQUV6QyxNQUFNLEVBQUUsT0FBTyxFQUFFLEdBQUcsQ0FDbEIsTUFBTSxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxxQkFBcUIsQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLENBQzdELENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUNuQixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLEdBQUcsRUFBRSxLQUFLLEVBQUUsR0FBRyxPQUFPLENBQUMsQ0FBQztJQUNuRCxDQUFDO0lBRUQsS0FBSyxDQUFDLFVBQVUsQ0FDZCxHQUFvQixFQUNwQixLQUFxQixFQUNyQixHQUE0QyxFQUM1QyxHQUFHLElBQXNDO1FBRXpDLE1BQU0sRUFBRSxPQUFPLEVBQUUsR0FBRyxDQUNsQixNQUFNLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLHFCQUFxQixDQUFDLE9BQU8sRUFBRSxJQUFJLENBQUMsQ0FDN0QsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQ3ZCLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsR0FBRyxFQUFFLEtBQUssRUFBRSxHQUFHLEVBQUUsR0FBRyxPQUFPLENBQUMsQ0FBQztJQUM1RCxDQUFDO0lBRUQsS0FBSyxDQUFDLFNBQVMsQ0FDYixHQUFvQixFQUNwQixLQUFVLEVBQ1YsR0FBRyxJQUFzQztRQUV6QyxNQUFNLEVBQUUsT0FBTyxFQUFFLEdBQUcsQ0FDbEIsTUFBTSxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxxQkFBcUIsQ0FBQyxXQUFXLEVBQUUsSUFBSSxDQUFDLENBQ2pFLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUN0QixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRSxLQUFLLEVBQUUsR0FBRyxPQUFPLENBQUMsQ0FBQztJQUN0RCxDQUFDO0lBRUQsS0FBSyxDQUFDLE1BQU0sQ0FDVixHQUFvQixFQUNwQixLQUFVLEVBQ1YsR0FBRyxJQUFzQztRQUV6QyxNQUFNLEVBQUUsT0FBTyxFQUFFLEdBQUcsQ0FDbEIsTUFBTSxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxxQkFBcUIsQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLENBQzdELENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUNuQixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLEdBQUcsRUFBRSxLQUFLLEVBQUUsR0FBRyxPQUFPLENBQUMsQ0FBQztJQUNuRCxDQUFDO0lBRUQsS0FBSyxDQUFDLFNBQVMsQ0FBQyxJQUFZLEVBQUUsR0FBRyxJQUFzQztRQUNyRSxNQUFNLEVBQUUsT0FBTyxFQUFFLEdBQUcsQ0FDbEIsTUFBTSxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxlQUFlLENBQUMsU0FBUyxFQUFFLElBQUksQ0FBQyxDQUN6RCxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDdEIsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLFNBQVMsQ0FBQyxJQUFJLEVBQUUsR0FBRyxPQUFPLENBQUMsQ0FBQztJQUNoRCxDQUFDO0lBRVEsT0FBTyxDQUNkLEtBQXVCLEVBQ3ZCLEtBQXVCLEVBQ3ZCLEVBQVksRUFDWixHQUFHLElBQWtDO1FBRXJDLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsS0FBSyxFQUFFLEtBQUssRUFBRSxFQUFFLEVBQUUsR0FBRyxJQUFJLENBQUMsQ0FBQztJQUN2RCxDQUFDO0lBQ1EsT0FBTyxDQUFDLFFBQWtCLEVBQUUsTUFBdUI7UUFDMUQsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxRQUFRLEVBQUUsTUFBTSxDQUFDLENBQUM7SUFDOUMsQ0FBQztJQUVRLFNBQVMsQ0FBQyxRQUFrQjtRQUNuQyxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQ3hDLENBQUM7SUFFUSxlQUFlLENBQ3RCLEtBQWtCLEVBQ2xCLFNBQTJCLEVBQzNCLEdBQWEsRUFDYixHQUFHLElBQWtDO1FBRXJDLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxlQUFlLENBQUMsS0FBSyxFQUFFLFNBQVMsRUFBRSxHQUFHLEVBQUUsR0FBRyxJQUFJLENBQUMsQ0FBQztJQUNwRSxDQUFDO0lBbUNrQixNQUFNLENBSXZCLElBQTRDLEVBQzVDLFNBQWlCLEVBQ2pCLGNBQXVCLEtBQUs7UUFjNUIsTUFBTSxHQUFHLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsQ0FBQyxRQUFRLENBQUMsQ0FDMUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQVksRUFBRSxHQUFHLElBQUksQ0FBUSxFQUN6QyxTQUFTLEVBQ1QsV0FBa0IsRUFDbEIsSUFBSSxDQUFDLEtBQUssQ0FBQyxZQUFZLENBQUMsSUFBSSxFQUFFLENBQy9CLENBQUM7UUFDRixTQUFTLFVBQVUsQ0FBQyxHQUF1QztZQUN6RCxHQUFHLENBQUMsT0FBTyxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUMsOEJBQThCO1lBQ25ELE9BQU8sR0FBVSxDQUFDO1FBQ3BCLENBQUM7UUFFRCxJQUFJLENBQUMsQ0FBQyxHQUFHLFlBQVksT0FBTyxDQUFDO1lBQUUsT0FBTyxVQUFVLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDdEQsT0FBTyxHQUFHLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQzlCLENBQUM7SUFFUSxLQUFLLENBQUMsUUFBUSxDQUFDLEdBQUcsSUFBNkI7UUFDdEQsTUFBTSxFQUFFLE9BQU8sRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsQ0FDNUIsTUFBTSxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxlQUFlLENBQUMsUUFBUSxFQUFFLElBQUksQ0FBQyxDQUN4RCxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDckIsTUFBTSxLQUFLLENBQUMsUUFBUSxDQUFDLEdBQUcsT0FBTyxDQUFDLENBQUM7UUFDakMsR0FBRyxDQUFDLElBQUksQ0FBQywrQ0FBK0MsQ0FBQyxDQUFDO1FBQzFELE1BQU0sSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDNUIsR0FBRyxDQUFDLE9BQU8sQ0FBQyxpQ0FBaUMsQ0FBQyxDQUFDO0lBQ2pELENBQUM7Q0FDRjtBQWhSTztJQURMLE1BQU0sRUFBRTs7cUNBRUEsU0FBUzs7eUNBV2pCO0FBR0s7SUFETCxNQUFNLEVBQUU7Ozs7NENBV1I7QUFHSztJQURMLEdBQUcsRUFBRTs7Ozt5Q0FTTDtBQUdLO0lBREwsR0FBRyxFQUFFOzs7OzRDQVNMO0FBR0s7SUFETCxJQUFJLEVBQUU7Ozs7dUNBU047QUFHSztJQURMLElBQUksRUFBRTs7OzswQ0FTTjtBQUdLO0lBREwsSUFBSSxFQUFFOzs7O3dDQWFOO0FBR0s7SUFETCxNQUFNLEVBQUU7O3FDQUdBLFNBQVM7O3lDQUtqQjtBQUdLO0lBREwsTUFBTSxFQUFFOzs7OzRDQVFSIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgdHlwZSBDb250ZXh0dWFsQXJncyxcbiAgdHlwZSBDb250ZXh0dWFsaXplZEFyZ3MsXG4gIHR5cGUgTWF5YmVDb250ZXh0dWFsQXJnLFxuICB0eXBlIE1ldGhvZE9yT3BlcmF0aW9uLFxufSBmcm9tIFwiLi4vdXRpbHMvQ29udGV4dHVhbExvZ2dlZENsYXNzXCI7XG5pbXBvcnQgeyBDbGllbnRCYXNlZFNlcnZpY2UgfSBmcm9tIFwiLi4vc2VydmljZXMvc2VydmljZXNcIjtcbmltcG9ydCB7IFRhc2tFbmdpbmUgfSBmcm9tIFwiLi9UYXNrRW5naW5lXCI7XG5pbXBvcnQgeyBDb250ZXh0IH0gZnJvbSBcIi4uL3BlcnNpc3RlbmNlL0NvbnRleHRcIjtcbmltcG9ydCB7IEFkYXB0ZXIgfSBmcm9tIFwiLi4vcGVyc2lzdGVuY2UvQWRhcHRlclwiO1xuaW1wb3J0IHtcbiAgdHlwZSBBbGxPcGVyYXRpb25LZXlzLFxuICB0eXBlIENvbnRleHRPZixcbiAgdHlwZSBFdmVudElkcyxcbiAgdHlwZSBPYnNlcnZlckZpbHRlcixcbn0gZnJvbSBcIi4uL3BlcnNpc3RlbmNlL3R5cGVzXCI7XG5pbXBvcnQgeyBQZXJzaXN0ZW5jZUtleXMgfSBmcm9tIFwiLi4vcGVyc2lzdGVuY2UvY29uc3RhbnRzXCI7XG5pbXBvcnQgeyBVbnN1cHBvcnRlZEVycm9yIH0gZnJvbSBcIi4uL3BlcnNpc3RlbmNlL2Vycm9yc1wiO1xuaW1wb3J0IHtcbiAgQnVsa0NydWRPcGVyYXRpb25LZXlzLFxuICBJbnRlcm5hbEVycm9yLFxuICBPcGVyYXRpb25LZXlzLFxuICB0eXBlIFByaW1hcnlLZXlUeXBlLFxufSBmcm9tIFwiQGRlY2FmLXRzL2RiLWRlY29yYXRvcnNcIjtcbmltcG9ydCB7IE9yZGVyRGlyZWN0aW9uIH0gZnJvbSBcIi4uL3JlcG9zaXRvcnkvY29uc3RhbnRzXCI7XG5pbXBvcnQgeyB0eXBlIFJlcG8gfSBmcm9tIFwiLi4vcmVwb3NpdG9yeS9SZXBvc2l0b3J5XCI7XG5pbXBvcnQgeyBUYXNrTW9kZWwgfSBmcm9tIFwiLi9tb2RlbHMvVGFza01vZGVsXCI7XG5pbXBvcnQgeyBjcmVhdGUsIGRlbCwgcmVhZCwgdXBkYXRlIH0gZnJvbSBcIi4uL3V0aWxzL2RlY29yYXRvcnNcIjtcbmltcG9ydCB7IFByZXBhcmVkU3RhdGVtZW50S2V5cyB9IGZyb20gXCIuLi9xdWVyeS9jb25zdGFudHNcIjtcbmltcG9ydCB7IHR5cGUgRGlyZWN0aW9uTGltaXRPZmZzZXQgfSBmcm9tIFwiLi4vcXVlcnkvdHlwZXNcIjtcbmltcG9ydCB0eXBlIHsgQ29uc3RydWN0b3IgfSBmcm9tIFwiQGRlY2FmLXRzL2RlY29yYXRpb25cIjtcbmltcG9ydCB0eXBlIHsgT2JzZXJ2ZXIgfSBmcm9tIFwiLi4vaW50ZXJmYWNlcy9PYnNlcnZlclwiO1xuaW1wb3J0IHR5cGUgeyBBcnJheU1vZGUgfSBmcm9tIFwiLi4vc2VydmljZXMvTW9kZWxTZXJ2aWNlXCI7XG5pbXBvcnQgeyBUYXNrRW5naW5lQ29uZmlnIH0gZnJvbSBcIi4vdHlwZXNcIjtcbmltcG9ydCB7IFRhc2tUcmFja2VyIH0gZnJvbSBcIi4vVGFza1RyYWNrZXJcIjtcbmltcG9ydCB7IFRhc2tFdmVudE1vZGVsIH0gZnJvbSBcIi4vbW9kZWxzL2luZGV4XCI7XG5pbXBvcnQgeyBTZWxlY3RTZWxlY3RvciwgV2hlcmVPcHRpb24gfSBmcm9tIFwiLi4vcXVlcnkvaW5kZXhcIjtcblxuZXhwb3J0IHR5cGUgVGFza1NlcnZpY2VDb25maWc8XG4gIEEgZXh0ZW5kcyBBZGFwdGVyPGFueSwgYW55LCBhbnksIGFueT4sXG4gIFQgZXh0ZW5kcyBUYXNrRW5naW5lPEE+ID0gVGFza0VuZ2luZTxBPixcbiAgQyBleHRlbmRzIFRhc2tFbmdpbmVDb25maWc8QT4gPSBUYXNrRW5naW5lQ29uZmlnPEE+LFxuPiA9IEMgJiB7XG4gIGVuZ2luZT86IENvbnN0cnVjdG9yPFQ+O1xufTtcblxuZXhwb3J0IGNsYXNzIFRhc2tTZXJ2aWNlPFxuICBBIGV4dGVuZHMgQWRhcHRlcjxhbnksIGFueSwgYW55LCBhbnk+LFxuPiBleHRlbmRzIENsaWVudEJhc2VkU2VydmljZTxUYXNrRW5naW5lPEE+LCBUYXNrRW5naW5lQ29uZmlnPEE+PiB7XG4gIHByb3RlY3RlZCBnZXQgYWRhcHRlcigpOiBBIHtcbiAgICByZXR1cm4gdGhpcy5jbGllbnRbXCJhZGFwdGVyXCJdO1xuICB9XG5cbiAgcHJvdGVjdGVkIGdldCB0YXNrcygpOiBSZXBvPFRhc2tNb2RlbD4ge1xuICAgIHJldHVybiB0aGlzLmNsaWVudFtcInRhc2tzXCJdO1xuICB9XG5cbiAgcHJvdGVjdGVkIGdldCBldmVudHMoKTogUmVwbzxUYXNrRXZlbnRNb2RlbD4ge1xuICAgIHJldHVybiB0aGlzLmNsaWVudFtcImV2ZW50c1wiXTtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIHN1cGVyKCk7XG4gIH1cblxuICBvdmVycmlkZSBhc3luYyBpbml0aWFsaXplKFxuICAgIC4uLmFyZ3M6IE1heWJlQ29udGV4dHVhbEFyZzxDb250ZXh0T2Y8QT4+XG4gICk6IFByb21pc2U8e1xuICAgIGNvbmZpZzogVGFza1NlcnZpY2VDb25maWc8QSwgYW55LCBhbnk+O1xuICAgIGNsaWVudDogVGFza0VuZ2luZTxBPjtcbiAgfT4ge1xuICAgIGNvbnN0IGNmZyA9IGFyZ3Muc2hpZnQoKSBhcyBUYXNrU2VydmljZUNvbmZpZzxBLCBhbnksIGFueT4gfCBhbnk7XG4gICAgaWYgKCFjZmcgfHwgY2ZnIGluc3RhbmNlb2YgQ29udGV4dClcbiAgICAgIHRocm93IG5ldyBJbnRlcm5hbEVycm9yKGBOby9pbnZhbGlkIGNvbmZpZyBwcm92aWRlZGApO1xuICAgIGlmICghY2ZnLmFkYXB0ZXIpIHRocm93IG5ldyBJbnRlcm5hbEVycm9yKGBObyBhZGFwdGVyIHByb3ZpZGVkYCk7XG4gICAgY29uc3QgRW5naW5lQ3RvciA9IGNmZy5lbmdpbmUgfHwgVGFza0VuZ2luZTtcbiAgICBjb25zdCBjbGllbnQ6IFRhc2tFbmdpbmU8QT4gPSBuZXcgRW5naW5lQ3RvcihjZmcpO1xuICAgIC8vIHJlUmVnaXN0ZXJUYXNrU2VydmljZVJlcG9zaXRvcmllcyhjZmcuYWRhcHRlci5hbGlhcywgY2xpZW50KTtcbiAgICByZXR1cm4ge1xuICAgICAgY2xpZW50LFxuICAgICAgY29uZmlnOiBjZmcsXG4gICAgfTtcbiAgfVxuXG4gIGFzeW5jIHB1c2g8SSwgTz4oXG4gICAgdGFzazogVGFza01vZGVsPEksIE8+LFxuICAgIC4uLmFyZ3M6IE1heWJlQ29udGV4dHVhbEFyZzxhbnk+XG4gICk6IFByb21pc2U8VGFza01vZGVsPEksIE8+PjtcbiAgYXN5bmMgcHVzaDxJLCBPPihcbiAgICB0YXNrOiBUYXNrTW9kZWw8SSwgTz4sXG4gICAgdHJhY2s6IGZhbHNlLFxuICAgIC4uLmFyZ3M6IE1heWJlQ29udGV4dHVhbEFyZzxhbnk+XG4gICk6IFByb21pc2U8VGFza01vZGVsPEksIE8+PjtcbiAgYXN5bmMgcHVzaDxJLCBPPihcbiAgICB0YXNrOiBUYXNrTW9kZWw8SSwgTz4sXG4gICAgdHJhY2s6IHRydWUsXG4gICAgLi4uYXJnczogTWF5YmVDb250ZXh0dWFsQXJnPGFueT5cbiAgKTogUHJvbWlzZTx7XG4gICAgdGFzazogVGFza01vZGVsPEksIE8+O1xuICAgIHRyYWNrZXI6IFRhc2tUcmFja2VyPE8+O1xuICB9PjtcbiAgYXN5bmMgcHVzaDxJLCBPLCBUUkFDSyBleHRlbmRzIGJvb2xlYW4+KFxuICAgIHRhc2s6IFRhc2tNb2RlbDxJLCBPPixcbiAgICB0cmFjazogVFJBQ0sgPSBmYWxzZSBhcyBUUkFDSyxcbiAgICAuLi5hcmdzOiBNYXliZUNvbnRleHR1YWxBcmc8YW55PlxuICApOiBQcm9taXNlPFxuICAgIFRSQUNLIGV4dGVuZHMgdHJ1ZVxuICAgICAgPyB7IHRhc2s6IFRhc2tNb2RlbDxJLCBPPjsgdHJhY2tlcjogVGFza1RyYWNrZXI8Tz4gfVxuICAgICAgOiBUYXNrTW9kZWxcbiAgPiB7XG4gICAgY29uc3QgeyBjdHhBcmdzIH0gPSAoXG4gICAgICBhd2FpdCB0aGlzLmxvZ0N0eChhcmdzLCBPcGVyYXRpb25LZXlzLkNSRUFURSwgdHJ1ZSlcbiAgICApLmZvcih0aGlzLnB1c2gpO1xuXG4gICAgY29uc3QgY3JlYXRlZCA9IChhd2FpdCB0aGlzLmNsaWVudC5wdXNoKHRhc2ssIHRyYWNrLCAuLi5jdHhBcmdzKSkgYXMgYW55O1xuICAgIGlmICghKGF3YWl0IHRoaXMuY2xpZW50LmlzUnVubmluZygpKSkge1xuICAgICAgdm9pZCB0aGlzLmNsaWVudC5zdGFydCgpO1xuICAgIH1cbiAgICByZXR1cm4gY3JlYXRlZDtcbiAgfVxuXG4gIGFzeW5jIHRyYWNrKFxuICAgIGlkOiBzdHJpbmcsXG4gICAgLi4uYXJnczogTWF5YmVDb250ZXh0dWFsQXJnPGFueT5cbiAgKTogUHJvbWlzZTx7IHRhc2s6IFRhc2tNb2RlbDsgdHJhY2tlcjogVGFza1RyYWNrZXI8YW55PiB9PiB7XG4gICAgY29uc3QgeyBjdHhBcmdzIH0gPSAoXG4gICAgICBhd2FpdCB0aGlzLmxvZ0N0eChhcmdzLCBPcGVyYXRpb25LZXlzLkNSRUFURSwgdHJ1ZSlcbiAgICApLmZvcih0aGlzLnB1c2gpO1xuICAgIHJldHVybiB0aGlzLmNsaWVudC50cmFjayhpZCwgLi4uY3R4QXJncyk7XG4gIH1cblxuICBzZWxlY3Q8XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby11bnVzZWQtdmFyc1xuICAgIFMgZXh0ZW5kcyByZWFkb25seSBTZWxlY3RTZWxlY3RvcjxUYXNrTW9kZWw+W10sXG4gID4oKTogV2hlcmVPcHRpb248VGFza01vZGVsLCBUYXNrTW9kZWxbXT47XG4gIHNlbGVjdDxTIGV4dGVuZHMgcmVhZG9ubHkgU2VsZWN0U2VsZWN0b3I8VGFza01vZGVsPltdPihcbiAgICBzZWxlY3RvcjogcmVhZG9ubHkgWy4uLlNdXG4gICk6IFdoZXJlT3B0aW9uPFRhc2tNb2RlbCwgUGljazxUYXNrTW9kZWwsIFNbbnVtYmVyXT5bXT47XG4gIHNlbGVjdDxTIGV4dGVuZHMgcmVhZG9ubHkgU2VsZWN0U2VsZWN0b3I8VGFza01vZGVsPltdPihcbiAgICBzZWxlY3Rvcj86IHJlYWRvbmx5IFsuLi5TXVxuICApOlxuICAgIHwgV2hlcmVPcHRpb248VGFza01vZGVsLCBUYXNrTW9kZWxbXT5cbiAgICB8IFdoZXJlT3B0aW9uPFRhc2tNb2RlbCwgUGljazxUYXNrTW9kZWwsIFNbbnVtYmVyXT5bXT4ge1xuICAgIHJldHVybiB0aGlzLnRhc2tzLnNlbGVjdChzZWxlY3RvciBhcyByZWFkb25seSBbLi4uU10pO1xuICB9XG5cbiAgQGNyZWF0ZSgpXG4gIGFzeW5jIGNyZWF0ZShcbiAgICBtb2RlbDogVGFza01vZGVsLFxuICAgIC4uLmFyZ3M6IE1heWJlQ29udGV4dHVhbEFyZzxDb250ZXh0T2Y8QT4+XG4gICk6IFByb21pc2U8VGFza01vZGVsPiB7XG4gICAgY29uc3QgeyBjdHhBcmdzIH0gPSAoXG4gICAgICBhd2FpdCB0aGlzLmxvZ0N0eChhcmdzLCBPcGVyYXRpb25LZXlzLkNSRUFURSwgdHJ1ZSlcbiAgICApLmZvcih0aGlzLmNyZWF0ZSk7XG4gICAgY29uc3QgY3JlYXRlZCA9IGF3YWl0IHRoaXMudGFza3MuY3JlYXRlKG1vZGVsLCAuLi5jdHhBcmdzKTtcbiAgICBpZiAoIShhd2FpdCB0aGlzLmNsaWVudC5pc1J1bm5pbmcoKSkpIHtcbiAgICAgIHZvaWQgdGhpcy5jbGllbnQuc3RhcnQoKTtcbiAgICB9XG4gICAgcmV0dXJuIGNyZWF0ZWQ7XG4gIH1cblxuICBAY3JlYXRlKClcbiAgYXN5bmMgY3JlYXRlQWxsKFxuICAgIG1vZGVsczogVGFza01vZGVsW10sXG4gICAgLi4uYXJnczogTWF5YmVDb250ZXh0dWFsQXJnPENvbnRleHRPZjxBPj5cbiAgKTogUHJvbWlzZTxUYXNrTW9kZWxbXT4ge1xuICAgIGNvbnN0IHsgY3R4QXJncyB9ID0gKFxuICAgICAgYXdhaXQgdGhpcy5sb2dDdHgoYXJncywgQnVsa0NydWRPcGVyYXRpb25LZXlzLkNSRUFURV9BTEwsIHRydWUpXG4gICAgKS5mb3IodGhpcy5jcmVhdGVBbGwpO1xuICAgIGNvbnN0IGNyZWF0ZWQgPSBhd2FpdCB0aGlzLnRhc2tzLmNyZWF0ZUFsbChtb2RlbHMsIC4uLmN0eEFyZ3MpO1xuICAgIGlmICghKGF3YWl0IHRoaXMuY2xpZW50LmlzUnVubmluZygpKSkgdm9pZCB0aGlzLmNsaWVudC5zdGFydCgpO1xuICAgIHJldHVybiBjcmVhdGVkO1xuICB9XG5cbiAgQGRlbCgpXG4gIGFzeW5jIGRlbGV0ZShcbiAgICBrZXk6IFByaW1hcnlLZXlUeXBlLFxuICAgIC4uLmFyZ3M6IE1heWJlQ29udGV4dHVhbEFyZzxDb250ZXh0T2Y8QT4+XG4gICk6IFByb21pc2U8VGFza01vZGVsPiB7XG4gICAgY29uc3QgeyBjdHhBcmdzIH0gPSAoXG4gICAgICBhd2FpdCB0aGlzLmxvZ0N0eChhcmdzLCBPcGVyYXRpb25LZXlzLkRFTEVURSwgdHJ1ZSlcbiAgICApLmZvcih0aGlzLmRlbGV0ZSk7XG4gICAgcmV0dXJuIHRoaXMudGFza3MuZGVsZXRlKGtleSwgLi4uY3R4QXJncyk7XG4gIH1cblxuICBAZGVsKClcbiAgYXN5bmMgZGVsZXRlQWxsKFxuICAgIGtleXM6IFByaW1hcnlLZXlUeXBlW10sXG4gICAgLi4uYXJnczogTWF5YmVDb250ZXh0dWFsQXJnPENvbnRleHRPZjxBPj5cbiAgKTogUHJvbWlzZTxUYXNrTW9kZWxbXT4ge1xuICAgIGNvbnN0IHsgY3R4QXJncyB9ID0gKFxuICAgICAgYXdhaXQgdGhpcy5sb2dDdHgoYXJncywgQnVsa0NydWRPcGVyYXRpb25LZXlzLkRFTEVURV9BTEwsIHRydWUpXG4gICAgKS5mb3IodGhpcy5kZWxldGVBbGwpO1xuICAgIHJldHVybiB0aGlzLnRhc2tzLmRlbGV0ZUFsbChrZXlzLCAuLi5jdHhBcmdzKTtcbiAgfVxuXG4gIEByZWFkKClcbiAgYXN5bmMgcmVhZChcbiAgICBrZXk6IFByaW1hcnlLZXlUeXBlLFxuICAgIC4uLmFyZ3M6IE1heWJlQ29udGV4dHVhbEFyZzxDb250ZXh0T2Y8QT4+XG4gICk6IFByb21pc2U8VGFza01vZGVsPiB7XG4gICAgY29uc3QgeyBjdHhBcmdzIH0gPSAoYXdhaXQgdGhpcy5sb2dDdHgoYXJncywgT3BlcmF0aW9uS2V5cy5SRUFELCB0cnVlKSkuZm9yKFxuICAgICAgdGhpcy5yZWFkXG4gICAgKTtcbiAgICByZXR1cm4gdGhpcy50YXNrcy5yZWFkKGtleSwgLi4uY3R4QXJncyk7XG4gIH1cblxuICBAcmVhZCgpXG4gIGFzeW5jIHJlYWRBbGwoXG4gICAga2V5czogUHJpbWFyeUtleVR5cGVbXSxcbiAgICAuLi5hcmdzOiBNYXliZUNvbnRleHR1YWxBcmc8Q29udGV4dE9mPEE+PlxuICApOiBQcm9taXNlPFRhc2tNb2RlbFtdPiB7XG4gICAgY29uc3QgeyBjdHhBcmdzIH0gPSAoXG4gICAgICBhd2FpdCB0aGlzLmxvZ0N0eChhcmdzLCBCdWxrQ3J1ZE9wZXJhdGlvbktleXMuUkVBRF9BTEwsIHRydWUpXG4gICAgKS5mb3IodGhpcy5yZWFkQWxsKTtcbiAgICByZXR1cm4gdGhpcy50YXNrcy5yZWFkQWxsKGtleXMsIC4uLmN0eEFyZ3MpO1xuICB9XG5cbiAgQHJlYWQoKVxuICBhc3luYyBxdWVyeTxNLCBSIGV4dGVuZHMgQXJyYXlNb2RlID0gXCJvbmVcIj4oXG4gICAgbWV0aG9kTmFtZTogc3RyaW5nLFxuICAgIC4uLmFyZ3M6IE1heWJlQ29udGV4dHVhbEFyZzxDb250ZXh0T2Y8QT4+XG4gICk6IFByb21pc2U8UiBleHRlbmRzIFwib25lXCIgPyBNIDogTVtdPiB7XG4gICAgY29uc3QgeyBjdHhBcmdzIH0gPSAoXG4gICAgICBhd2FpdCB0aGlzLmxvZ0N0eChhcmdzLCBQZXJzaXN0ZW5jZUtleXMuUVVFUlksIHRydWUpXG4gICAgKS5mb3IodGhpcy5xdWVyeSk7XG4gICAgY29uc3QgbWV0aG9kID0gKHRoaXMudGFza3MgYXMgYW55KT8uW21ldGhvZE5hbWVdO1xuICAgIGlmICh0eXBlb2YgbWV0aG9kICE9PSBcImZ1bmN0aW9uXCIpXG4gICAgICB0aHJvdyBuZXcgSW50ZXJuYWxFcnJvcihgTWV0aG9kIFwiJHttZXRob2ROYW1lfVwiIGlzIG5vdCBpbXBsZW1lbnRlZGApO1xuXG4gICAgcmV0dXJuIG1ldGhvZC5hcHBseSh0aGlzLnRhc2tzLCBjdHhBcmdzKTtcbiAgfVxuXG4gIEB1cGRhdGUoKVxuICBhc3luYyB1cGRhdGUoXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby11bnVzZWQtdmFyc1xuICAgIG1vZGVsOiBUYXNrTW9kZWwsXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby11bnVzZWQtdmFyc1xuICAgIC4uLmFyZ3M6IE1heWJlQ29udGV4dHVhbEFyZzxDb250ZXh0T2Y8QT4+XG4gICk6IFByb21pc2U8VGFza01vZGVsPiB7XG4gICAgdGhyb3cgbmV3IFVuc3VwcG9ydGVkRXJyb3IoXCJVcGRhdGVzIHRvIHRhc2tzIGFyZSBub3QgYXZhaWxhYmxlXCIpO1xuICB9XG5cbiAgQHVwZGF0ZSgpXG4gIGFzeW5jIHVwZGF0ZUFsbChcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXVudXNlZC12YXJzXG4gICAgbW9kZWxzOiBUYXNrTW9kZWxbXSxcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXVudXNlZC12YXJzXG4gICAgLi4uYXJnczogTWF5YmVDb250ZXh0dWFsQXJnPENvbnRleHRPZjxBPj5cbiAgKTogUHJvbWlzZTxUYXNrTW9kZWxbXT4ge1xuICAgIHRocm93IG5ldyBVbnN1cHBvcnRlZEVycm9yKFwiVXBkYXRlcyB0byB0YXNrcyBhcmUgbm90IGF2YWlsYWJsZVwiKTtcbiAgfVxuICAvL1xuICAvLyBhc3luYyBxdWVyeShcbiAgLy8gICBjb25kaXRpb246IENvbmRpdGlvbjxNPixcbiAgLy8gICBvcmRlckJ5OiBrZXlvZiBNLFxuICAvLyAgIG9yZGVyOiBPcmRlckRpcmVjdGlvbiA9IE9yZGVyRGlyZWN0aW9uLkFTQyxcbiAgLy8gICBsaW1pdD86IG51bWJlcixcbiAgLy8gICBza2lwPzogbnVtYmVyLFxuICAvLyAgIC4uLmFyZ3M6IE1heWJlQ29udGV4dHVhbEFyZzxDb250ZXh0T2Y8Uj4+XG4gIC8vICk6IFByb21pc2U8TVtdPiB7XG4gIC8vICAgY29uc3QgeyBjdHhBcmdzIH0gPSBhd2FpdCB0aGlzLmxvZ0N0eChhcmdzLCB0aGlzLnF1ZXJ5LCB0cnVlKTtcbiAgLy8gICByZXR1cm4gdGhpcy50YXNrcy5xdWVyeShjb25kaXRpb24sIG9yZGVyQnksIG9yZGVyLCBsaW1pdCwgc2tpcCwgLi4uY3R4QXJncyk7XG4gIC8vIH1cblxuICBhc3luYyBsaXN0QnkoXG4gICAga2V5OiBrZXlvZiBUYXNrTW9kZWwsXG4gICAgb3JkZXI6IE9yZGVyRGlyZWN0aW9uLFxuICAgIC4uLmFyZ3M6IE1heWJlQ29udGV4dHVhbEFyZzxDb250ZXh0T2Y8QT4+XG4gICkge1xuICAgIGNvbnN0IHsgY3R4QXJncyB9ID0gKFxuICAgICAgYXdhaXQgdGhpcy5sb2dDdHgoYXJncywgUHJlcGFyZWRTdGF0ZW1lbnRLZXlzLkxJU1RfQlksIHRydWUpXG4gICAgKS5mb3IodGhpcy5saXN0QnkpO1xuICAgIHJldHVybiB0aGlzLnRhc2tzLmxpc3RCeShrZXksIG9yZGVyLCAuLi5jdHhBcmdzKTtcbiAgfVxuXG4gIGFzeW5jIHBhZ2luYXRlQnkoXG4gICAga2V5OiBrZXlvZiBUYXNrTW9kZWwsXG4gICAgb3JkZXI6IE9yZGVyRGlyZWN0aW9uLFxuICAgIHJlZjogT21pdDxEaXJlY3Rpb25MaW1pdE9mZnNldCwgXCJkaXJlY3Rpb25cIj4sXG4gICAgLi4uYXJnczogTWF5YmVDb250ZXh0dWFsQXJnPENvbnRleHRPZjxBPj5cbiAgKSB7XG4gICAgY29uc3QgeyBjdHhBcmdzIH0gPSAoXG4gICAgICBhd2FpdCB0aGlzLmxvZ0N0eChhcmdzLCBQcmVwYXJlZFN0YXRlbWVudEtleXMuUEFHRV9CWSwgdHJ1ZSlcbiAgICApLmZvcih0aGlzLnBhZ2luYXRlQnkpO1xuICAgIHJldHVybiB0aGlzLnRhc2tzLnBhZ2luYXRlQnkoa2V5LCBvcmRlciwgcmVmLCAuLi5jdHhBcmdzKTtcbiAgfVxuXG4gIGFzeW5jIGZpbmRPbmVCeShcbiAgICBrZXk6IGtleW9mIFRhc2tNb2RlbCxcbiAgICB2YWx1ZTogYW55LFxuICAgIC4uLmFyZ3M6IE1heWJlQ29udGV4dHVhbEFyZzxDb250ZXh0T2Y8QT4+XG4gICkge1xuICAgIGNvbnN0IHsgY3R4QXJncyB9ID0gKFxuICAgICAgYXdhaXQgdGhpcy5sb2dDdHgoYXJncywgUHJlcGFyZWRTdGF0ZW1lbnRLZXlzLkZJTkRfT05FX0JZLCB0cnVlKVxuICAgICkuZm9yKHRoaXMuZmluZE9uZUJ5KTtcbiAgICByZXR1cm4gdGhpcy50YXNrcy5maW5kT25lQnkoa2V5LCB2YWx1ZSwgLi4uY3R4QXJncyk7XG4gIH1cblxuICBhc3luYyBmaW5kQnkoXG4gICAga2V5OiBrZXlvZiBUYXNrTW9kZWwsXG4gICAgdmFsdWU6IGFueSxcbiAgICAuLi5hcmdzOiBNYXliZUNvbnRleHR1YWxBcmc8Q29udGV4dE9mPEE+PlxuICApIHtcbiAgICBjb25zdCB7IGN0eEFyZ3MgfSA9IChcbiAgICAgIGF3YWl0IHRoaXMubG9nQ3R4KGFyZ3MsIFByZXBhcmVkU3RhdGVtZW50S2V5cy5GSU5EX0JZLCB0cnVlKVxuICAgICkuZm9yKHRoaXMuZmluZEJ5KTtcbiAgICByZXR1cm4gdGhpcy50YXNrcy5maW5kQnkoa2V5LCB2YWx1ZSwgLi4uY3R4QXJncyk7XG4gIH1cblxuICBhc3luYyBzdGF0ZW1lbnQobmFtZTogc3RyaW5nLCAuLi5hcmdzOiBNYXliZUNvbnRleHR1YWxBcmc8Q29udGV4dE9mPEE+Pikge1xuICAgIGNvbnN0IHsgY3R4QXJncyB9ID0gKFxuICAgICAgYXdhaXQgdGhpcy5sb2dDdHgoYXJncywgUGVyc2lzdGVuY2VLZXlzLlNUQVRFTUVOVCwgdHJ1ZSlcbiAgICApLmZvcih0aGlzLnN0YXRlbWVudCk7XG4gICAgcmV0dXJuIHRoaXMudGFza3Muc3RhdGVtZW50KG5hbWUsIC4uLmN0eEFyZ3MpO1xuICB9XG5cbiAgb3ZlcnJpZGUgcmVmcmVzaChcbiAgICB0YWJsZTogQ29uc3RydWN0b3I8YW55PixcbiAgICBldmVudDogQWxsT3BlcmF0aW9uS2V5cyxcbiAgICBpZDogRXZlbnRJZHMsXG4gICAgLi4uYXJnczogQ29udGV4dHVhbEFyZ3M8Q29udGV4dE9mPEE+PlxuICApOiBQcm9taXNlPHZvaWQ+IHtcbiAgICByZXR1cm4gdGhpcy50YXNrcy5yZWZyZXNoKHRhYmxlLCBldmVudCwgaWQsIC4uLmFyZ3MpO1xuICB9XG4gIG92ZXJyaWRlIG9ic2VydmUob2JzZXJ2ZXI6IE9ic2VydmVyLCBmaWx0ZXI/OiBPYnNlcnZlckZpbHRlcik6ICgpID0+IHZvaWQge1xuICAgIHJldHVybiB0aGlzLnRhc2tzLm9ic2VydmUob2JzZXJ2ZXIsIGZpbHRlcik7XG4gIH1cblxuICBvdmVycmlkZSB1bk9ic2VydmUob2JzZXJ2ZXI6IE9ic2VydmVyKTogdm9pZCB7XG4gICAgcmV0dXJuIHRoaXMudGFza3MudW5PYnNlcnZlKG9ic2VydmVyKTtcbiAgfVxuXG4gIG92ZXJyaWRlIHVwZGF0ZU9ic2VydmVycyhcbiAgICBtb2RlbDogQ29uc3RydWN0b3IsXG4gICAgb3BlcmF0aW9uOiBBbGxPcGVyYXRpb25LZXlzLFxuICAgIGlkczogRXZlbnRJZHMsXG4gICAgLi4uYXJnczogQ29udGV4dHVhbEFyZ3M8Q29udGV4dE9mPEE+PlxuICApIHtcbiAgICByZXR1cm4gdGhpcy50YXNrcy51cGRhdGVPYnNlcnZlcnMobW9kZWwsIG9wZXJhdGlvbiwgaWRzLCAuLi5hcmdzKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBvdmVycmlkZSBsb2dDdHg8XG4gICAgQVJHUyBleHRlbmRzIGFueVtdID0gYW55W10sXG4gICAgTUVUSE9EIGV4dGVuZHMgTWV0aG9kT3JPcGVyYXRpb24gPSBNZXRob2RPck9wZXJhdGlvbixcbiAgPihcbiAgICBhcmdzOiBNYXliZUNvbnRleHR1YWxBcmc8Q29udGV4dE9mPEE+LCBBUkdTPixcbiAgICBvcGVyYXRpb246IE1FVEhPRFxuICApOiBDb250ZXh0dWFsaXplZEFyZ3M8XG4gICAgQ29udGV4dE9mPEE+LFxuICAgIEFSR1MsXG4gICAgTUVUSE9EIGV4dGVuZHMgc3RyaW5nID8gdHJ1ZSA6IGZhbHNlXG4gID47XG4gIHByb3RlY3RlZCBvdmVycmlkZSBsb2dDdHg8XG4gICAgQVJHUyBleHRlbmRzIGFueVtdID0gYW55W10sXG4gICAgTUVUSE9EIGV4dGVuZHMgTWV0aG9kT3JPcGVyYXRpb24gPSBNZXRob2RPck9wZXJhdGlvbixcbiAgPihcbiAgICBhcmdzOiBNYXliZUNvbnRleHR1YWxBcmc8Q29udGV4dE9mPEE+LCBBUkdTPixcbiAgICBvcGVyYXRpb246IE1FVEhPRCxcbiAgICBhbGxvd0NyZWF0ZTogZmFsc2VcbiAgKTogQ29udGV4dHVhbGl6ZWRBcmdzPFxuICAgIENvbnRleHRPZjxBPixcbiAgICBBUkdTLFxuICAgIE1FVEhPRCBleHRlbmRzIHN0cmluZyA/IHRydWUgOiBmYWxzZVxuICA+O1xuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgbG9nQ3R4PFxuICAgIEFSR1MgZXh0ZW5kcyBhbnlbXSA9IGFueVtdLFxuICAgIE1FVEhPRCBleHRlbmRzIE1ldGhvZE9yT3BlcmF0aW9uID0gTWV0aG9kT3JPcGVyYXRpb24sXG4gID4oXG4gICAgYXJnczogTWF5YmVDb250ZXh0dWFsQXJnPENvbnRleHRPZjxBPiwgQVJHUz4sXG4gICAgb3BlcmF0aW9uOiBNRVRIT0QsXG4gICAgYWxsb3dDcmVhdGU6IHRydWVcbiAgKTogUHJvbWlzZTxcbiAgICBDb250ZXh0dWFsaXplZEFyZ3M8Q29udGV4dE9mPEE+LCBBUkdTLCBNRVRIT0QgZXh0ZW5kcyBzdHJpbmcgPyB0cnVlIDogZmFsc2U+XG4gID47XG4gIHByb3RlY3RlZCBvdmVycmlkZSBsb2dDdHg8XG4gICAgQVJHUyBleHRlbmRzIGFueVtdID0gYW55W10sXG4gICAgTUVUSE9EIGV4dGVuZHMgTWV0aG9kT3JPcGVyYXRpb24gPSBNZXRob2RPck9wZXJhdGlvbixcbiAgPihcbiAgICBhcmdzOiBNYXliZUNvbnRleHR1YWxBcmc8Q29udGV4dE9mPEE+LCBBUkdTPixcbiAgICBvcGVyYXRpb246IE1FVEhPRCxcbiAgICBhbGxvd0NyZWF0ZTogYm9vbGVhbiA9IGZhbHNlXG4gICk6XG4gICAgfCBQcm9taXNlPFxuICAgICAgICBDb250ZXh0dWFsaXplZEFyZ3M8XG4gICAgICAgICAgQ29udGV4dE9mPEE+LFxuICAgICAgICAgIEFSR1MsXG4gICAgICAgICAgTUVUSE9EIGV4dGVuZHMgc3RyaW5nID8gdHJ1ZSA6IGZhbHNlXG4gICAgICAgID5cbiAgICAgID5cbiAgICB8IENvbnRleHR1YWxpemVkQXJnczxcbiAgICAgICAgQ29udGV4dE9mPEE+LFxuICAgICAgICBBUkdTLFxuICAgICAgICBNRVRIT0QgZXh0ZW5kcyBzdHJpbmcgPyB0cnVlIDogZmFsc2VcbiAgICAgID4ge1xuICAgIGNvbnN0IGN0eCA9IHRoaXMudGFza3NbXCJfYWRhcHRlclwiXVtcImxvZ0N0eFwiXShcbiAgICAgIFt0aGlzLnRhc2tzLmNsYXNzIGFzIGFueSwgLi4uYXJnc10gYXMgYW55LFxuICAgICAgb3BlcmF0aW9uLFxuICAgICAgYWxsb3dDcmVhdGUgYXMgYW55LFxuICAgICAgdGhpcy50YXNrc1tcIl9vdmVycmlkZXNcIl0gfHwge31cbiAgICApO1xuICAgIGZ1bmN0aW9uIHNxdWFzaEFyZ3MoY3R4OiBDb250ZXh0dWFsaXplZEFyZ3M8Q29udGV4dE9mPGFueT4+KSB7XG4gICAgICBjdHguY3R4QXJncy5zaGlmdCgpOyAvLyByZW1vdmVzIGFkZGVkIG1vZGVsIHRvIGFyZ3NcbiAgICAgIHJldHVybiBjdHggYXMgYW55O1xuICAgIH1cblxuICAgIGlmICghKGN0eCBpbnN0YW5jZW9mIFByb21pc2UpKSByZXR1cm4gc3F1YXNoQXJncyhjdHgpO1xuICAgIHJldHVybiBjdHgudGhlbihzcXVhc2hBcmdzKTtcbiAgfVxuXG4gIG92ZXJyaWRlIGFzeW5jIHNodXRkb3duKC4uLmFyZ3M6IE1heWJlQ29udGV4dHVhbEFyZzxhbnk+KTogUHJvbWlzZTx2b2lkPiB7XG4gICAgY29uc3QgeyBjdHhBcmdzLCBjdHgsIGxvZyB9ID0gKFxuICAgICAgYXdhaXQgdGhpcy5sb2dDdHgoYXJncywgUGVyc2lzdGVuY2VLZXlzLlNIVVRET1dOLCB0cnVlKVxuICAgICkuZm9yKHRoaXMuc2h1dGRvd24pO1xuICAgIGF3YWl0IHN1cGVyLnNodXRkb3duKC4uLmN0eEFyZ3MpO1xuICAgIGxvZy5pbmZvKGBhdHRlbXB0aW5nIHRvIGdyYWNlZnVsbHkgc2h1dGRvd24gdGFzayBydW5uZXJgKTtcbiAgICBhd2FpdCB0aGlzLmNsaWVudC5zdG9wKGN0eCk7XG4gICAgbG9nLnZlcmJvc2UoYGdyYWNlZnVsbHkgc2h1dGRvd24gdGFzayBydW5uZXJgKTtcbiAgfVxufVxuIl19
@@ -6,4 +6,4 @@ export class TaskStateChangeError extends Error {
6
6
  Object.setPrototypeOf(this, TaskStateChangeError.prototype);
7
7
  }
8
8
  }
9
- //# sourceMappingURL=TaskStateChangeError.js.map
9
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVGFza1N0YXRlQ2hhbmdlRXJyb3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvdGFza3MvVGFza1N0YXRlQ2hhbmdlRXJyb3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBU0EsTUFBTSxPQUFPLG9CQUFxQixTQUFRLEtBQUs7SUFHN0MsWUFBWSxPQUErQjtRQUN6QyxLQUFLLENBQUMsZ0NBQWdDLE9BQU8sQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDO1FBQ3hELElBQUksQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFDO1FBQ3ZCLElBQUksQ0FBQyxJQUFJLEdBQUcsb0JBQW9CLENBQUMsSUFBSSxDQUFDO1FBQ3RDLE1BQU0sQ0FBQyxjQUFjLENBQUMsSUFBSSxFQUFFLG9CQUFvQixDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQzlELENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFRhc2tTdGF0dXMgfSBmcm9tIFwiLi9jb25zdGFudHNcIjtcbmltcG9ydCB7IFRhc2tFcnJvck1vZGVsIH0gZnJvbSBcIi4vbW9kZWxzL1Rhc2tFcnJvck1vZGVsXCI7XG5cbmV4cG9ydCBpbnRlcmZhY2UgVGFza1N0YXRlQ2hhbmdlUmVxdWVzdCB7XG4gIHN0YXR1czogVGFza1N0YXR1cztcbiAgZXJyb3I/OiBUYXNrRXJyb3JNb2RlbDtcbiAgc2NoZWR1bGVkVG8/OiBEYXRlO1xufVxuXG5leHBvcnQgY2xhc3MgVGFza1N0YXRlQ2hhbmdlRXJyb3IgZXh0ZW5kcyBFcnJvciB7XG4gIHJlYWRvbmx5IHJlcXVlc3Q6IFRhc2tTdGF0ZUNoYW5nZVJlcXVlc3Q7XG5cbiAgY29uc3RydWN0b3IocmVxdWVzdDogVGFza1N0YXRlQ2hhbmdlUmVxdWVzdCkge1xuICAgIHN1cGVyKGBUYXNrIHJlcXVlc3RlZCBzdGF0ZSBjaGFuZ2U6ICR7cmVxdWVzdC5zdGF0dXN9YCk7XG4gICAgdGhpcy5yZXF1ZXN0ID0gcmVxdWVzdDtcbiAgICB0aGlzLm5hbWUgPSBUYXNrU3RhdGVDaGFuZ2VFcnJvci5uYW1lO1xuICAgIE9iamVjdC5zZXRQcm90b3R5cGVPZih0aGlzLCBUYXNrU3RhdGVDaGFuZ2VFcnJvci5wcm90b3R5cGUpO1xuICB9XG59XG4iXX0=
@@ -292,4 +292,4 @@ export class TaskTracker {
292
292
  }
293
293
  }
294
294
  }
295
- //# sourceMappingURL=TaskTracker.js.map
295
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVGFza1RyYWNrZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvdGFza3MvVGFza1RyYWNrZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLGNBQWMsRUFBRSxtQ0FBZ0M7QUFDekQsT0FBTyxFQUFFLEtBQUssRUFBb0IsTUFBTSxnQ0FBZ0MsQ0FBQztBQUV6RSxPQUFPLEVBQUUsYUFBYSxFQUFFLFVBQVUsRUFBRSx1QkFBb0I7QUFPeEQsT0FBTyxFQUFFLFVBQVUsRUFBRSxxQkFBa0I7QUFFdkMsT0FBTyxFQUFFLE9BQU8sRUFBWSxrQ0FBNkI7QUFJekQsT0FBTyxFQUNMLGVBQWUsRUFFZixhQUFhLEVBRWIsbUJBQW1CLEVBQ25CLGNBQWMsR0FDZix3QkFBcUI7QUFFdEIsTUFBTSxPQUFPLFdBQVc7SUFTdEIsWUFDWSxHQUFpQixFQUNWLElBQWU7UUFEdEIsUUFBRyxHQUFILEdBQUcsQ0FBYztRQUNWLFNBQUksR0FBSixJQUFJLENBQVc7UUFKMUIsYUFBUSxHQUFHLEtBQUssQ0FBQztRQU12QixJQUFJLENBQUMsY0FBYyxHQUFHLEdBQUcsQ0FBQyxPQUFPLENBQy9CLElBQUksRUFDSixDQUNFLEtBQXFDLEVBQ3JDLFNBQWlCLEVBQ2pCLEVBQVk7UUFDWiw2REFBNkQ7UUFDN0QsR0FBRyxJQUF5QixFQUM1QixFQUFFO1lBQ0YsT0FBTyxDQUNKLEVBQWEsQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUM7Z0JBQ3ZDLENBQUMsS0FBSyxLQUFLLGNBQWM7b0JBQ3ZCLEtBQUssS0FBSyxLQUFLLENBQUMsU0FBUyxDQUFDLGNBQWMsQ0FBQyxDQUFDLENBQzdDLENBQUM7UUFDSixDQUFDLENBQ0YsQ0FBQztRQUNGLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztRQUNqQyxJQUFJLENBQUMsb0JB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WyJpbXBvcnQgeyBPYnNlcnZlciB9IGZyb20gXCIuLi9pbnRlcmZhY2VzL09ic2VydmVyXCI7XG5pbXBvcnQgeyBUYXNrRXZlbnRNb2RlbCB9IGZyb20gXCIuL21vZGVscy9UYXNrRXZlbnRNb2RlbFwiO1xuaW1wb3J0IHsgTW9kZWwsIE1vZGVsQ29uc3RydWN0b3IgfSBmcm9tIFwiQGRlY2FmLXRzL2RlY29yYXRvci12YWxpZGF0aW9uXCI7XG5pbXBvcnQgeyBMb2dnZXIsIExvZ0xldmVsIH0gZnJvbSBcIkBkZWNhZi10cy9sb2dnaW5nXCI7XG5pbXBvcnQgeyBUYXNrRXZlbnRUeXBlLCBUYXNrU3RhdHVzIH0gZnJvbSBcIi4vY29uc3RhbnRzXCI7XG5pbXBvcnQge1xuICBFdmVudFBpcGUsXG4gIExvZ1BpcGUsXG4gIExvZ1BpcGVPcHRpb25zLFxuICBUYXNrUHJvZ3Jlc3NQYXlsb2FkLFxufSBmcm9tIFwiLi90eXBlc1wiO1xuaW1wb3J0IHsgZ2V0TG9nUGlwZSB9IGZyb20gXCIuL2xvZ2dpbmdcIjtcbmltcG9ydCB7IFRhc2tNb2RlbCB9IGZyb20gXCIuL21vZGVscy9UYXNrTW9kZWxcIjtcbmltcG9ydCB7IENvbnRleHQsIEV2ZW50SWRzIH0gZnJvbSBcIi4uL3BlcnNpc3RlbmNlL2luZGV4XCI7XG5pbXBvcnQgeyBUYXNrRXJyb3JNb2RlbCB9IGZyb20gXCIuL21vZGVscy9UYXNrRXJyb3JNb2RlbFwiO1xuaW1wb3J0IHsgVGFza0V2ZW50QnVzIH0gZnJvbSBcIi4vVGFza0V2ZW50QnVzXCI7XG5pbXBvcnQgeyBDb250ZXh0dWFsQXJncyB9IGZyb20gXCIuLi91dGlscy9pbmRleFwiO1xuaW1wb3J0IHtcbiAgVGFza0NhbmNlbEVycm9yLFxuICBUYXNrQ29udHJvbEVycm9yLFxuICBUYXNrRmFpbEVycm9yLFxuICBUYXNrTmV4dEFjdGlvbixcbiAgVGFza1Jlc2NoZWR1bGVFcnJvcixcbiAgVGFza1JldHJ5RXJyb3IsXG59IGZyb20gXCIuL1Rhc2tFcnJvcnNcIjtcblxuZXhwb3J0IGNsYXNzIFRhc2tUcmFja2VyPE8gPSBhbnk+XG4gIGltcGxlbWVudHMgT2JzZXJ2ZXI8W1Rhc2tFdmVudE1vZGVsLCBDb250ZXh0XT5cbntcbiAgcHJvdGVjdGVkIHVucmVnaXN0cmF0aW9uOiAoKSA9PiB2b2lkO1xuXG4gIHByb3RlY3RlZCBwaXBlcz86IFJlY29yZDxUYXNrRXZlbnRUeXBlLCBTZXQ8RXZlbnRQaXBlPj47XG5cbiAgcHJpdmF0ZSByZXNvbHZlZCA9IGZhbHNlO1xuICBwcml2YXRlIHRlcm1pbmFsQ29udGV4dD86IENvbnRleHQ7XG4gIGNvbnN0cnVjdG9yKFxuICAgIHByb3RlY3RlZCBidXM6IFRhc2tFdmVudEJ1cyxcbiAgICBwcml2YXRlIHJlYWRvbmx5IHRhc2s6IFRhc2tNb2RlbFxuICApIHtcbiAgICB0aGlzLnVucmVnaXN0cmF0aW9uID0gYnVzLm9ic2VydmUoXG4gICAgICB0aGlzLFxuICAgICAgKFxuICAgICAgICB0YWJsZTogTW9kZWxDb25zdHJ1Y3Rvcjxhbnk+IHwgc3RyaW5nLFxuICAgICAgICBvcGVyYXRpb246IHN0cmluZyxcbiAgICAgICAgaWQ6IEV2ZW50SWRzLFxuICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXVudXNlZC12YXJzXG4gICAgICAgIC4uLmFyZ3M6IENvbnRleHR1YWxBcmdzPGFueT5cbiAgICAgICkgPT4ge1xuICAgICAgICByZXR1cm4gKFxuICAgICAgICAgIChpZCBhcyBzdHJpbmcpLnN0YXJ0c1dpdGgodGhpcy50YXNrLmlkKSAmJlxuICAgICAgICAgICh0YWJsZSA9PT0gVGFza0V2ZW50TW9kZWwgfHxcbiAgICAgICAgICAgIHRhYmxlID09PSBNb2RlbC50YWJsZU5hbWUoVGFza0V2ZW50TW9kZWwpKVxuICAgICAgICApO1xuICAgICAgfVxuICAgICk7XG4gICAgdGhpcy5waXBlKHRoaXMudHJhY2suYmluZCh0aGlzKSk7XG4gICAgdGhpcy5yZXNvbHZlVGVybWluYWxTdGF0ZSgpO1xuICB9XG5cbiAgcmVzb2x2ZSgpOiBQcm9taXNlPE8+IHtcbiAgICByZXR1cm4gdGhpcy5hd2FpdFN0YXR1c1Rlcm1pbmFsKFtcbiAgICAgIFRhc2tTdGF0dXMuU1VDQ0VFREVELFxuICAgICAgVGFza1N0YXR1cy5GQUlMRUQsXG4gICAgICBUYXNrU3RhdHVzLkNBTkNFTEVELFxuICAgICAgVGFza1N0YXR1cy5TQ0hFRFVMRUQsXG4gICAgXSk7XG4gIH1cblxuICB3YWl0KCk6IFByb21pc2U8Tz4ge1xuICAgIHJldHVybiB0aGlzLmF3YWl0U3RhdHVzVGVybWluYWwoW1xuICAgICAgVGFza1N0YXR1cy5TVUNDRUVERUQsXG4gICAgICBUYXNrU3RhdHVzLkZBSUxFRCxcbiAgICAgIFRhc2tTdGF0dXMuQ0FOQ0VMRUQsXG4gICAgXSk7XG4gIH1cblxuICBhdHRhY2goXG4gICAgbG9nOiBMb2dnZXIsXG4gICAgb3B0czogTG9nUGlwZU9wdGlvbnMgPSB7IGxvZ1Byb2dyZXNzOiB0cnVlLCBsb2dTdGF0dXM6IHRydWUsIHN0eWxlOiB0cnVlIH1cbiAgKSB7XG4gICAgdGhpcy5waXBlKGdldExvZ1BpcGUobG9nLCBvcHRzKSk7XG4gIH1cblxuICBsb2dzKHBpcGU6IExvZ1BpcGUpIHtcbiAgICB0aGlzLnBpcGUoYXN5bmMgKGV2dDogVGFza0V2ZW50TW9kZWwpID0+IHtcbiAgICAgIGlmIChldnQuY2xhc3NpZmljYXRpb24gIT09IFRhc2tFdmVudFR5cGUuTE9HKSByZXR1cm47XG4gICAgICBjb25zdCByYXcgPSBldnQucGF5bG9hZCA/PyBbXTtcbiAgICAgIGNvbnN0IG5vcm1hbGl6ZWQgPSAocmF3IGFzIGFueVtdKVxuICAgICAgICAubWFwKChlbnRyeSkgPT5cbiAgICAgICAgICBBcnJheS5pc0FycmF5KGVudHJ5KVxuICAgICAgICAgICAgPyBlbnRyeVxuICAgICAgICAgICAgOiBbZW50cnkubGV2ZWwsIGAke2VudHJ5LnRzfSAtICR7ZW50cnkubXNnfWAsIGVudHJ5Lm1ldGFdXG4gICAgICAgICkgYXMgW0xvZ0xldmVsLCBzdHJpbmcsIGFueV1bXTtcbiAgICAgIGF3YWl0IHBpcGUobm9ybWFsaXplZCk7XG4gICAgfSwgVGFza0V2ZW50VHlwZS5MT0cpO1xuICB9XG5cbiAgcGlwZShwaXBlOiBFdmVudFBpcGUsIHR5cGU6IFRhc2tFdmVudFR5cGUgPSBUYXNrRXZlbnRUeXBlLkFMTCkge1xuICAgIHRoaXMucGlwZXMgPSB0aGlzLnBpcGVzIHx8ICh7fSBhcyBSZWNvcmQ8VGFza0V2ZW50VHlwZSwgU2V0PEV2ZW50UGlwZT4+KTtcbiAgICB0aGlzLnBpcGVzW3R5cGVdID0gdGhpcy5waXBlc1t0eXBlXSB8fCBuZXcgU2V0PEV2ZW50UGlwZT4oKTtcbiAgICB0aGlzLnBpcGVzW3R5cGVdLmFkZChwaXBlKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBzdWNjZWVkKF9yZXN1bHQ/OiBPKSB7XG4gICAgdm9pZCBfcmVzdWx0O1xuICAgIHRoaXMuY29tcGxldGUoKTtcbiAgfVxuICBwcm90ZWN0ZWQgZmFpbChfZXJyb3I/OiBUYXNrQ29udHJvbEVycm9yKSB7XG4gICAgdm9pZCBfZXJyb3I7XG4gICAgdGhpcy5jb21wbGV0ZSgpO1xuICB9XG5cbiAgcHJvdGVjdGVkIGNhbmNlbChldnQ6IFRhc2tFdmVudE1vZGVsKSB7XG4gICAgaWYgKCFldnQucGF5bG9hZCkgcmV0dXJuO1xuICAgIHRoaXMuZmFpbCgpO1xuICB9XG5cbiAgcHJvdGVjdGVkIHJldHJ5KCkge1xuICAgIC8vIGludGVudGlvbmFsbHkgbm8tb3Agc28gd2FpdHMgcmVtYWluIGFjdGl2ZSB1bnRpbCBmaW5hbCBzdGF0dXNcbiAgfVxuXG4gIHByb3RlY3RlZCByZXNjaGVkdWxlKCkge1xuICAgIC8vIGludGVudGlvbmFsbHkgbm8tb3Agc28gd2FpdHMgcmVtYWluIGFjdGl2ZSB1bnRpbCBmaW5hbCBzdGF0dXNcbiAgfVxuXG4gIG9uU3VjY2VlZChoYW5kbGVyOiBFdmVudFBpcGUpIHtcbiAgICByZXR1cm4gdGhpcy5yZWdpc3RlclN0YXR1c0hhbmRsZXIoVGFza1N0YXR1cy5TVUNDRUVERUQsIGhhbmRsZXIpO1xuICB9XG5cbiAgb25GYWlsdXJlKGhhbmRsZXI6IEV2ZW50UGlwZSkge1xuICAgIHJldHVybiB0aGlzLnJlZ2lzdGVyU3RhdHVzSGFuZGxlcihUYXNrU3RhdHVzLkZBSUxFRCwgaGFuZGxlcik7XG4gIH1cblxuICBvbkNhbmNlbChoYW5kbGVyOiBFdmVudFBpcGUpIHtcbiAgICByZXR1cm4gdGhpcy5yZWdpc3RlclN0YXR1c0hhbmRsZXIoVGFza1N0YXR1cy5DQU5DRUxFRCwgaGFuZGxlcik7XG4gIH1cblxuICBwcml2YXRlIGF3YWl0U3RhdHVzVGVybWluYWwoc3RhdHVzZXM6IFRhc2tTdGF0dXNbXSk6IFByb21pc2U8Tz4ge1xuICAgIHJldHVybiBuZXcgUHJvbWlzZTxPPigocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XG4gICAgICBjb25zdCByZW1vdmVyczogQXJyYXk8KCkgPT4gdm9pZD4gPSBbXTtcbiAgICAgIGxldCBzZXR0bGVkID0gZmFsc2U7XG4gICAgICBjb25zdCBjbGVhbnVwID0gKCkgPT4ge1xuICAgICAgICBpZiAoc2V0dGxlZCkgcmV0dXJuO1xuICAgICAgICBzZXR0bGVkID0gdHJ1ZTtcbiAgICAgICAgZm9yIChjb25zdCByZW1vdmUgb2YgcmVtb3ZlcnMpIHtcbiAgICAgICAgICByZW1vdmUoKTtcbiAgICAgICAgfVxuICAgICAgfTtcbiAgICAgIGNvbnN0IGhhbmRsZXI6IEV2ZW50UGlwZSA9IGFzeW5jIChldnQ6IFRhc2tFdmVudE1vZGVsKSA9PiB7XG4gICAgICAgIGlmIChzZXR0bGVkKSByZXR1cm47XG4gICAgICAgIGNsZWFudXAoKTtcbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICBpZiAoZXZ0LnBheWxvYWQ/LnN0YXR1cyA9PT0gVGFza1N0YXR1cy5TVUNDRUVERUQpIHtcbiAgICAgICAgICAgIHJlc29sdmUodGhpcy5leHRyYWN0T3V0cHV0KGV2dCkpO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICByZWplY3QodGhpcy5leHRyYWN0RXJyb3IoZXZ0KSk7XG4gICAgICAgICAgfVxuICAgICAgICB9IGNhdGNoIChlcnIpIHtcbiAgICAgICAgICByZWplY3QoZXJyKTtcbiAgICAgICAgfVxuICAgICAgfTtcbiAgICAgIHN0YXR1c2VzLmZvckVhY2goKHN0YXR1cykgPT4ge1xuICAgICAgICBjb25zdCByZW1vdmUgPSB0aGlzLnJlZ2lzdGVyU3RhdHVzSGFuZGxlcihzdGF0dXMsIGhhbmRsZXIpO1xuICAgICAgICByZW1vdmVycy5wdXNoKHJlbW92ZSk7XG4gICAgICB9KTtcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgZXh0cmFjdE91dHB1dChldnQ6IFRhc2tFdmVudE1vZGVsKTogTyB7XG4gICAgaWYgKGV2dC5wYXlsb2FkPy5vdXRwdXQgIT09IHVuZGVmaW5lZCkgcmV0dXJuIGV2dC5wYXlsb2FkLm91dHB1dCBhcyBPO1xuICAgIHJldHVybiB0aGlzLnRhc2sub3V0cHV0IGFzIE87XG4gIH1cblxuICBwcml2YXRlIGV4dHJhY3RFcnJvcihldnQ6IFRhc2tFdmVudE1vZGVsKTogRXJyb3Ige1xuICAgIGNvbnN0IHN0YXR1cyA9IGV2dC5wYXlsb2FkPy5zdGF0dXMgPz8gdGhpcy50YXNrLnN0YXR1cztcbiAgICBjb25zdCBuZXh0QWN0aW9uID0gdGhpcy5nZXROZXh0QWN0aW9uKHN0YXR1cyk7XG4gICAgY29uc3Qgb3JpZ2luYWxFcnJvciA9IGV2dC5wYXlsb2FkPy5vcmlnaW5hbEVycm9yO1xuICAgIGlmIChvcmlnaW5hbEVycm9yIGluc3RhbmNlb2YgRXJyb3IpIHtcbiAgICAgIHJldHVybiB0aGlzLmFzc2lnbk5leHRBY3Rpb24ob3JpZ2luYWxFcnJvciwgbmV4dEFjdGlvbik7XG4gICAgfVxuICAgIGNvbnN0IG1ldGEgPSB0aGlzLmJ1aWxkTWV0YShzdGF0dXMsIGV2dC5wYXlsb2FkKTtcbiAgICBjb25zdCBjb250cm9sRXJyb3IgPSB0aGlzLmNyZWF0ZVRhc2tDb250cm9sRXJyb3IoXG4gICAgICBzdGF0dXMsXG4gICAgICBldnQucGF5bG9hZD8uZXJyb3IgPz8gdGhpcy50YXNrLmVycm9yLFxuICAgICAgbWV0YVxuICAgICk7XG4gICAgcmV0dXJuIHRoaXMuYXNzaWduTmV4dEFjdGlvbihjb250cm9sRXJyb3IsIG5leHRBY3Rpb24pO1xuICB9XG5cbiAgcHJpdmF0ZSBjb21wbGV0ZSgpIHtcbiAgICBpZiAodGhpcy5yZXNvbHZlZCkgcmV0dXJuO1xuICAgIHRoaXMucmVzb2x2ZWQgPSB0cnVlO1xuICAgIHRoaXMudW5yZWdpc3RyYXRpb24oKTtcbiAgICB0aGlzLnBpcGVzID0gdW5kZWZpbmVkO1xuICB9XG5cbiAgcHJvdGVjdGVkIGlzVGVybWluYWxTdGF0dXMoc3RhdHVzOiBUYXNrU3RhdHVzKSB7XG4gICAgcmV0dXJuIFtcbiAgICAgIFRhc2tTdGF0dXMuU1VDQ0VFREVELFxuICAgICAgVGFza1N0YXR1cy5DQU5DRUxFRCxcbiAgICAgIFRhc2tTdGF0dXMuRkFJTEVELFxuICAgIF0uaW5jbHVkZXMoc3RhdHVzKTtcbiAgfVxuXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tdW51c2VkLXZhcnNcbiAgcHJvdGVjdGVkIGFzeW5jIHRyYWNrKGV2dDogVGFza0V2ZW50TW9kZWwsIGN0eDogQ29udGV4dCkge1xuICAgIGlmICghZXZ0LnBheWxvYWQpIHJldHVybjtcbiAgICBjb25zdCBzdGF0dXMgPSBldnQucGF5bG9hZC5zdGF0dXM7XG4gICAgdGhpcy50YXNrLnN0YXR1cyA9IHN0YXR1cztcbiAgICBpZiAoZXZ0LnBheWxvYWQub3V0cHV0ICE9PSB1bmRlZmluZWQpIHRoaXMudGFzay5vdXRwdXQgPSBldnQucGF5bG9hZC5vdXRwdXQ7XG4gICAgaWYgKGV2dC5wYXlsb2FkLmVycm9yKSB0aGlzLnRhc2suZXJyb3IgPSBldnQucGF5bG9hZC5lcnJvcjtcbiAgICBpZiAoZXZ0LnBheWxvYWQubmV4dFJ1bkF0ICE9PSB1bmRlZmluZWQpXG4gICAgICB0aGlzLnRhc2submV4dFJ1bkF0ID0gZXZ0LnBheWxvYWQubmV4dFJ1bkF0O1xuICAgIGlmIChldnQucGF5bG9hZC5zY2hlZHVsZWRUbyAhPT0gdW5kZWZpbmVkKVxuICAgICAgdGhpcy50YXNrLnNjaGVkdWxlZFRvID0gZXZ0LnBheWxvYWQuc2NoZWR1bGVkVG87XG5cbiAgICBpZiAoc3RhdHVzID09PSBUYXNrU3RhdHVzLlNVQ0NFRURFRCkge1xuICAgICAgdGhpcy5zdWNjZWVkKCk7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIGlmIChzdGF0dXMgPT09IFRhc2tTdGF0dXMuRkFJTEVEKSB7XG4gICAgICB0aGlzLmZhaWwoKTtcbiAgICB9XG4gICAgaWYgKHN0YXR1cyA9PT0gVGFza1N0YXR1cy5DQU5DRUxFRCkge1xuICAgICAgdGhpcy5jYW5jZWwoZXZ0KTtcbiAgICB9XG4gICAgaWYgKHN0YXR1cyA9PT0gVGFza1N0YXR1cy5XQUlUSU5HX1JFVFJZKSB7XG4gICAgICB0aGlzLnJldHJ5KCk7XG4gICAgfVxuICAgIGlmIChzdGF0dXMgPT09IFRhc2tTdGF0dXMuU0NIRURVTEVEKSB7XG4gICAgICB0aGlzLnJlc2NoZWR1bGUoKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIHJlZ2lzdGVyU3RhdHVzSGFuZGxlcihcbiAgICBzdGF0dXM6IFRhc2tTdGF0dXMsXG4gICAgaGFuZGxlcjogRXZlbnRQaXBlXG4gICk6ICgpID0+IHZvaWQge1xuICAgIGNvbnN0IHdyYXBwZWQ6IEV2ZW50UGlwZSA9IGFzeW5jIChldnQsIGN0eCkgPT4ge1xuICAgICAgaWYgKGV2dC5wYXlsb2FkPy5zdGF0dXMgIT09IHN0YXR1cykgcmV0dXJuO1xuICAgICAgYXdhaXQgaGFuZGxlcihldnQsIGN0eCk7XG4gICAgfTtcbiAgICB0aGlzLnBpcGUod3JhcHBlZCwgVGFza0V2ZW50VHlwZS5TVEFUVVMpO1xuICAgIGlmICh0aGlzLnRhc2suc3RhdHVzID09PSBzdGF0dXMpIHtcbiAgICAgIGNvbnN0IHRlcm1pbmFsRXZlbnQgPSB0aGlzLmJ1aWxkVGVybWluYWxFdmVudChzdGF0dXMpO1xuICAgICAgdm9pZCB3cmFwcGVkKHRlcm1pbmFsRXZlbnQsIHRoaXMuZ2V0VGVybWluYWxDb250ZXh0KCkpO1xuICAgIH1cbiAgICByZXR1cm4gKCkgPT4ge1xuICAgICAgdGhpcy5waXBlcz8uW1Rhc2tFdmVudFR5cGUuU1RBVFVTXT8uZGVsZXRlKHdyYXBwZWQpO1xuICAgIH07XG4gIH1cblxuICBwcml2YXRlIGdldFRlcm1pbmFsQ29udGV4dCgpIHtcbiAgICBpZiAoIXRoaXMudGVybWluYWxDb250ZXh0KSB0aGlzLnRlcm1pbmFsQ29udGV4dCA9IG5ldyBDb250ZXh0KCk7XG4gICAgcmV0dXJuIHRoaXMudGVybWluYWxDb250ZXh0O1xuICB9XG5cbiAgcHJpdmF0ZSBidWlsZFRlcm1pbmFsRXZlbnQoc3RhdHVzOiBUYXNrU3RhdHVzKSB7XG4gICAgY29uc3QgcGF5bG9hZDoge1xuICAgICAgc3RhdHVzOiBUYXNrU3RhdHVzO1xuICAgICAgb3V0cHV0PzogTztcbiAgICAgIGVycm9yPzogVGFza0Vycm9yTW9kZWw7XG4gICAgICBuZXh0UnVuQXQ/OiBEYXRlO1xuICAgICAgc2NoZWR1bGVkVG8/OiBEYXRlO1xuICAgIH0gPSB7XG4gICAgICBzdGF0dXMsXG4gICAgfTtcbiAgICBpZiAoc3RhdHVzID09PSBUYXNrU3RhdHVzLlNVQ0NFRURFRCkge1xuICAgICAgcGF5bG9hZC5vdXRwdXQgPSB0aGlzLnRhc2sub3V0cHV0IGFzIE87XG4gICAgfVxuICAgIGlmIChcbiAgICAgIChzdGF0dXMgPT09IFRhc2tTdGF0dXMuRkFJTEVEIHx8IHN0YXR1cyA9PT0gVGFza1N0YXR1cy5DQU5DRUxFRCkgJiZcbiAgICAgIHRoaXMudGFzay5lcnJvclxuICAgICkge1xuICAgICAgcGF5bG9hZC5lcnJvciA9IHRoaXMudGFzay5lcnJvcjtcbiAgICB9XG4gICAgaWYgKHRoaXMudGFzay5uZXh0UnVuQXQpIHBheWxvYWQubmV4dFJ1bkF0ID0gdGhpcy50YXNrLm5leHRSdW5BdDtcbiAgICBpZiAodGhpcy50YXNrLnNjaGVkdWxlZFRvKSBwYXlsb2FkLnNjaGVkdWxlZFRvID0gdGhpcy50YXNrLnNjaGVkdWxlZFRvO1xuICAgIHJldHVybiBuZXcgVGFza0V2ZW50TW9kZWwoe1xuICAgICAgY2xhc3NpZmljYXRpb246IFRhc2tFdmVudFR5cGUuU1RBVFVTLFxuICAgICAgdGFza0lkOiB0aGlzLnRhc2suaWQsXG4gICAgICBwYXlsb2FkLFxuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBjcmVhdGVUYXNrQ29udHJvbEVycm9yKFxuICAgIHN0YXR1czogVGFza1N0YXR1cyxcbiAgICBlcnJvcj86IFRhc2tFcnJvck1vZGVsLFxuICAgIG1ldGE/OiBSZWNvcmQ8c3RyaW5nLCBhbnk+XG4gICk6IFRhc2tDb250cm9sRXJyb3Ige1xuICAgIHN3aXRjaCAoc3RhdHVzKSB7XG4gICAgICBjYXNlIFRhc2tTdGF0dXMuRkFJTEVEOlxuICAgICAgICByZXR1cm4gbmV3IFRhc2tGYWlsRXJyb3IodGhpcy50YXNrLmlkLCBlcnJvciwgbWV0YSk7XG4gICAgICBjYXNlIFRhc2tTdGF0dXMuQ0FOQ0VMRUQ6XG4gICAgICAgIHJldHVybiBuZXcgVGFza0NhbmNlbEVycm9yKHRoaXMudGFzay5pZCwgZXJyb3IsIG1ldGEpO1xuICAgICAgY2FzZSBUYXNrU3RhdHVzLldBSVRJTkdfUkVUUlk6XG4gICAgICAgIHJldHVybiBuZXcgVGFza1JldHJ5RXJyb3IodGhpcy50YXNrLmlkLCBlcnJvciwgbWV0YSk7XG4gICAgICBjYXNlIFRhc2tTdGF0dXMuU0NIRURVTEVEOlxuICAgICAgICByZXR1cm4gbmV3IFRhc2tSZXNjaGVkdWxlRXJyb3IodGhpcy50YXNrLmlkLCBlcnJvciwgbWV0YSk7XG4gICAgICBkZWZhdWx0OlxuICAgICAgICByZXR1cm4gbmV3IFRhc2tGYWlsRXJyb3IodGhpcy50YXNrLmlkLCBlcnJvciwgbWV0YSk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBhc3NpZ25OZXh0QWN0aW9uKGVycm9yOiBFcnJvciwgYWN0aW9uPzogVGFza05leHRBY3Rpb24pIHtcbiAgICBpZiAoYWN0aW9uKSAoZXJyb3IgYXMgYW55KS5uZXh0QWN0aW9uID0gYWN0aW9uO1xuICAgIHJldHVybiBlcnJvcjtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0TmV4dEFjdGlvbihzdGF0dXM/OiBUYXNrU3RhdHVzKTogVGFza05leHRBY3Rpb24gfCB1bmRlZmluZWQge1xuICAgIHN3aXRjaCAoc3RhdHVzKSB7XG4gICAgICBjYXNlIFRhc2tTdGF0dXMuQ0FOQ0VMRUQ6XG4gICAgICAgIHJldHVybiBUYXNrU3RhdHVzLkNBTkNFTEVEO1xuICAgICAgY2FzZSBUYXNrU3RhdHVzLldBSVRJTkdfUkVUUlk6XG4gICAgICAgIHJldHVybiBUYXNrU3RhdHVzLldBSVRJTkdfUkVUUlk7XG4gICAgICBjYXNlIFRhc2tTdGF0dXMuU0NIRURVTEVEOlxuICAgICAgICByZXR1cm4gVGFza1N0YXR1cy5TQ0hFRFVMRUQ7XG4gICAgICBjYXNlIFRhc2tTdGF0dXMuRkFJTEVEOlxuICAgICAgICByZXR1cm4gVGFza1N0YXR1cy5GQUlMRUQ7XG4gICAgICBkZWZhdWx0OlxuICAgICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgYnVpbGRNZXRhKFxuICAgIHN0YXR1czogVGFza1N0YXR1cyxcbiAgICBwYXlsb2FkPzogVGFza1Byb2dyZXNzUGF5bG9hZFxuICApOiBSZWNvcmQ8c3RyaW5nLCBhbnk+IHwgdW5kZWZpbmVkIHtcbiAgICBjb25zdCBtZXRhOiBSZWNvcmQ8c3RyaW5nLCBhbnk+ID0ge307XG4gICAgaWYgKHBheWxvYWQ/Lm5leHRSdW5BdCkgbWV0YS5uZXh0UnVuQXQgPSBwYXlsb2FkLm5leHRSdW5BdDtcbiAgICBpZiAocGF5bG9hZD8uc2NoZWR1bGVkVG8pIG1ldGEuc2NoZWR1bGVkVG8gPSBwYXlsb2FkLnNjaGVkdWxlZFRvO1xuICAgIGlmICghT2JqZWN0LmtleXMobWV0YSkubGVuZ3RoKSByZXR1cm4gdW5kZWZpbmVkO1xuICAgIHJldHVybiBtZXRhO1xuICB9XG5cbiAgcHJpdmF0ZSByZXNvbHZlVGVybWluYWxTdGF0ZSgpIHtcbiAgICBpZiAoIXRoaXMuaXNUZXJtaW5hbFN0YXR1cyh0aGlzLnRhc2suc3RhdHVzKSkgcmV0dXJuO1xuICAgIGlmICh0aGlzLnRhc2suc3RhdHVzID09PSBUYXNrU3RhdHVzLlNVQ0NFRURFRCkge1xuICAgICAgdGhpcy5zdWNjZWVkKHRoaXMudGFzay5vdXRwdXQgYXMgTyk7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIGNvbnN0IHBheWxvYWQ6IFRhc2tQcm9ncmVzc1BheWxvYWQgPSB7XG4gICAgICBzdGF0dXM6IHRoaXMudGFzay5zdGF0dXMsXG4gICAgICBuZXh0UnVuQXQ6IHRoaXMudGFzay5uZXh0UnVuQXQsXG4gICAgICBzY2hlZHVsZWRUbzogdGhpcy50YXNrLnNjaGVkdWxlZFRvLFxuICAgIH07XG4gICAgdGhpcy5mYWlsKFxuICAgICAgdGhpcy5jcmVhdGVUYXNrQ29udHJvbEVycm9yKFxuICAgICAgICB0aGlzLnRhc2suc3RhdHVzLFxuICAgICAgICB0aGlzLnRhc2suZXJyb3IsXG4gICAgICAgIHRoaXMuYnVpbGRNZXRhKHRoaXMudGFzay5zdGF0dXMsIHBheWxvYWQpXG4gICAgICApXG4gICAgKTtcbiAgfVxuXG4gIGFzeW5jIHJlZnJlc2goZXZ0OiBUYXNrRXZlbnRNb2RlbCwgY3R4OiBDb250ZXh0KTogUHJvbWlzZTx2b2lkPiB7XG4gICAgaWYgKCF0aGlzLnBpcGVzKSByZXR1cm47XG4gICAgY29uc3QgcGlwZXNUb1RyaWdnZXIgPSB0aGlzLnBpcGVzW1Rhc2tFdmVudFR5cGUuQUxMXVxuICAgICAgPyBbLi4udGhpcy5waXBlc1tUYXNrRXZlbnRUeXBlLkFMTF0udmFsdWVzKCldXG4gICAgICA6IFtdO1xuICAgIHBpcGVzVG9UcmlnZ2VyLnB1c2goLi4uKHRoaXMucGlwZXNbZXZ0LmNsYXNzaWZpY2F0aW9uXT8udmFsdWVzKCkgfHwgW10pKTtcbiAgICBmb3IgKGNvbnN0IHBpcGUgb2YgcGlwZXNUb1RyaWdnZXIpIHtcbiAgICAgIHRyeSB7XG4gICAgICAgIGF3YWl0IHBpcGUoZXZ0LCBjdHgpO1xuICAgICAgfSBjYXRjaCAoZTogdW5rbm93bikge1xuICAgICAgICBjdHgubG9nZ2VyLmVycm9yKFxuICAgICAgICAgIGBGYWlsZWQgdG8gdHJpZ2dlciBwaXBlICR7cGlwZS5uYW1lfSBmb3IgZXZlbnQgJHtldnQuY2xhc3NpZmljYXRpb259LiBkaXNjYXJkaW5nIGV2ZW50YCxcbiAgICAgICAgICBlIGFzIEVycm9yXG4gICAgICAgICk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iXX0=
@@ -179,4 +179,4 @@ __decorate([
179
179
  list(() => TaskStepSpecModel),
180
180
  __metadata("design:type", Array)
181
181
  ], CompositeTaskBuilder.prototype, "steps", void 0);
182
- //# sourceMappingURL=builder.js.map
182
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnVpbGRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy90YXNrcy9idWlsZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7OztBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsOEJBQTJCO0FBQy9DLE9BQU8sRUFDTCxlQUFlLEVBQ2YsY0FBYyxFQUNkLFVBQVUsRUFDVixRQUFRLEdBQ1QsdUJBQW9CO0FBQ3JCLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSwwQkFBdUI7QUFDbEQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLHNDQUFtQztBQUMvRCxPQUFPLEVBQ0wsRUFBRSxFQUNGLElBQUksRUFDSixHQUFHLEVBQ0gsS0FBSyxFQUVMLE1BQU0sRUFDTixRQUFRLEdBQ1QsTUFBTSxnQ0FBZ0MsQ0FBQztBQUN4QyxPQUFPLEVBQUUsYUFBYSxFQUFFLGVBQWUsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3pFLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUU1QyxNQUFNLE9BQU8sa0JBQW1ELFNBQVEsS0FBSztJQWUzRSxZQUFZLEdBQWtDO1FBQzVDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztRQWJiLFdBQU0sR0FBVyxJQUFJLENBQUM7UUFHdEIsV0FBTSxHQUFtQixjQUFjLENBQUMsSUFBSSxDQUFDO1FBSTdDLFVBQUssR0FBVyxNQUFNLENBQUM7UUFHdkIsYUFBUSxHQUFvQixlQUFlLENBQUMsV0FBVyxDQUFDO1FBSXRELEtBQUssQ0FBQyxTQUFTLENBQUMsSUFBSSxFQUFFLEdBQUcsQ0FBQyxDQUFDO0lBQzdCLENBQUM7SUFFRCxTQUFTLENBQUMsS0FBYTtRQUNyQixJQUFJLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQztRQUNwQixPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFRCxTQUFTLENBQUMsS0FBcUI7UUFDN0IsSUFBSSxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUM7UUFDcEIsT0FB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QUksQ0FBQyxDQUN2RSxDQUFDO1FBQ0YsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRUQsT0FBTyxDQUFDLGNBQXNCLEVBQUUsS0FBVztRQUN6QyxJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLElBQUksRUFBRSxDQUFDO1FBQzlCLE1BQU0sR0FBRyxHQUFHLElBQUksSUFBSSxFQUFFLENBQUM7UUFDdkIsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQ2IsSUFBSSxpQkFBaUIsQ0FBQztZQUNwQixjQUFjO1lBQ2QsS0FBSztZQUNMLFNBQVMsRUFBRSxHQUFHO1lBQ2QsU0FBUyxFQUFFLEdBQUc7U0FDZixDQUFDLENBQ0gsQ0FBQztRQUNGLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztDQUVGO0FBcENXO0lBRFQsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLGlCQUFpQixDQUFDOzttREFDUSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFRhc2tNb2RlbCB9IGZyb20gXCIuL21vZGVscy9UYXNrTW9kZWxcIjtcbmltcG9ydCB7XG4gIEJhY2tvZmZTdHJhdGVneSxcbiAgSml0dGVyU3RyYXRlZ3ksXG4gIFRhc2tTdGF0dXMsXG4gIFRhc2tUeXBlLFxufSBmcm9tIFwiLi9jb25zdGFudHNcIjtcbmltcG9ydCB7IFRhc2tCYWNrb2ZmTW9kZWwgfSBmcm9tIFwiLi9tb2RlbHMvaW5kZXhcIjtcbmltcG9ydCB7IFRhc2tTdGVwU3BlY01vZGVsIH0gZnJvbSBcIi4vbW9kZWxzL1Rhc2tTdGVwU3BlY01vZGVsXCI7XG5pbXBvcnQge1xuICBndCxcbiAgbGlzdCxcbiAgbWluLFxuICBNb2RlbCxcbiAgTW9kZWxBcmcsXG4gIG9wdGlvbixcbiAgcmVxdWlyZWQsXG59IGZyb20gXCJAZGVjYWYtdHMvZGVjb3JhdG9yLXZhbGlkYXRpb25cIjtcbmltcG9ydCB7IEludGVybmFsRXJyb3IsIFZhbGlkYXRpb25FcnJvciB9IGZyb20gXCJAZGVjYWYtdHMvZGItZGVjb3JhdG9yc1wiO1xuaW1wb3J0IHsgcHJvcCB9IGZyb20gXCJAZGVjYWYtdHMvZGVjb3JhdGlvblwiO1xuXG5leHBvcnQgY2xhc3MgVGFza0JhY2tvZmZCdWlsZGVyPE5FU1RFRCBleHRlbmRzIGJvb2xlYW4gPSBmYWxzZT4gZXh0ZW5kcyBNb2RlbCB7XG4gIEByZXF1aXJlZCgpXG4gIEBtaW4oMTAwMClcbiAgYmFzZU1zOiBudW1iZXIgPSAxMDAwO1xuICBAcmVxdWlyZWQoKVxuICBAb3B0aW9uKEppdHRlclN0cmF0ZWd5KVxuICBqaXR0ZXI6IEppdHRlclN0cmF0ZWd5ID0gSml0dGVyU3RyYXRlZ3kuRlVMTDtcbiAgQGd0KFwiYmFzZU1zXCIpXG4gIEBtaW4oMTAwMClcbiAgQHJlcXVpcmVkKClcbiAgbWF4TXM6IG51bWJlciA9IDYwXzAwMDtcbiAgQHJlcXVpcmVkKClcbiAgQG9wdGlvbihCYWNrb2ZmU3RyYXRlZ3kpXG4gIHN0cmF0ZWd5OiBCYWNrb2ZmU3RyYXRlZ3kgPSBCYWNrb2ZmU3RyYXRlZ3kuRVhQT05FTlRJQUw7XG5cbiAgY29uc3RydWN0b3IoYXJnPzogTW9kZWxBcmc8VGFza0JhY2tvZmZCdWlsZGVyPikge1xuICAgIHN1cGVyKGFyZyk7XG4gICAgTW9kZWwuZnJvbU1vZGVsKHRoaXMsIGFyZyk7XG4gIH1cblxuICBzZXRCYXNlTXModmFsdWU6IG51bWJlcik6IHRoaXMge1xuICAgIHRoaXMuYmFzZU1zID0gdmFsdWU7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICBzZXRKaXR0ZXIodmFsdWU6IEppdHRlclN0cmF0ZWd5KTogdGhpcyB7XG4gICAgdGhpcy5qaXR0ZXIgPSB2YWx1ZTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIHNldE1heE1zKHZhbHVlOiBudW1iZXIpOiB0aGlzIHtcbiAgICB0aGlzLm1heE1zID0gdmFsdWU7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICBzZXRTdHJhdGVneSh2YWx1ZTogQmFja29mZlN0cmF0ZWd5KTogdGhpcyB7XG4gICAgdGhpcy5zdHJhdGVneSA9IHZhbHVlO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgYnVpbGQoKTogTkVTVEVEIGV4dGVuZHMgZmFsc2UgPyBUYXNrQmFja29mZk1vZGVsIDogVGFza0J1aWxkZXIge1xuICAgIGNvbnN0IGVycnMgPSB0aGlzLmhhc0Vycm9ycygpO1xuICAgIGlmIChlcnJzKSB0aHJvdyBuZXcgVmFsaWRhdGlvbkVycm9yKGVycnMpO1xuICAgIHJldHVybiBuZXcgVGFza0JhY2tvZmZNb2RlbCh0aGlzKSBhcyBhbnk7XG4gIH1cbn1cblxuZXhwb3J0IGNsYXNzIFRhc2tCdWlsZGVyIGV4dGVuZHMgTW9kZWwge1xuICBAcmVxdWlyZWQoKVxuICBwcm90ZWN0ZWQgY2xhc3NpZmljYXRpb24hOiBzdHJpbmc7XG4gIEBwcm9wKClcbiAgcHJvdGVjdGVkIG5hbWU/OiBzdHJpbmc7XG4gIEByZXF1aXJlZCgpXG4gIHByb3RlY3RlZCBzdGF0dXM6IFRhc2tTdGF0dXMgPSBUYXNrU3RhdHVzLlBFTkRJTkc7XG4gIEByZXF1aXJlZCgpXG4gIHByb3RlY3RlZCBhdG9taWNpdHk6IFRhc2tUeXBlID0gVGFza1R5cGUuQVRPTUlDO1xuICBAcmVxdWlyZWQoKVxuICBwcm90ZWN0ZWQgYmFja29mZjogVGFza0JhY2tvZmZNb2RlbCA9IG5ldyBUYXNrQmFja29mZk1vZGVsKCk7XG4gIEBwcm9wKClcbiAgcHJvdGVjdGVkIGlucHV0PzogYW55O1xuICBAbWluKDEpXG4gIEByZXF1aXJlZCgpXG4gIHByb3RlY3RlZCBtYXhBdHRlbXB0czogbnVtYmVyID0gMTtcblxuICBzZXRDbGFzc2lmaWNhdGlvbih2YWx1ZTogc3RyaW5nKTogdGhpcyB7XG4gICAgdGhpcy5jbGFzc2lmaWNhdGlvbiA9IHZhbHVlO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgc2V0TmFtZSh2YWx1ZTogc3RyaW5nKTogdGhpcyB7XG4gICAgdGhpcy5uYW1lID0gdmFsdWU7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICBzZXRBdG9taWNpdHkodmFsdWU6IFRhc2tUeXBlKTogdGhpcyB7XG4gICAgdGhpcy5hdG9taWNpdHkgPSB2YWx1ZTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIHNldEJhY2tvZmY8ViBleHRlbmRzIFRhc2tCYWNrb2ZmTW9kZWw+KFxuICAgIHZhbHVlPzogVGFza0JhY2tvZmZNb2RlbFxuICApOiBWIGV4dGVuZHMgVGFza0JhY2tvZmZNb2RlbCA/IHRoaXMgOiBUYXNrQmFja29mZkJ1aWxkZXI8dHJ1ZT4ge1xuICAgIGlmICh2YWx1ZSkge1xuICAgICAgdGhpcy5iYWNrb2ZmID0gdmFsdWU7XG4gICAgICByZXR1cm4gdGhpcyBhcyBhbnk7XG4gICAgfVxuICAgIGNvbnN0IGJhY2tPZmYgPSBuZXcgVGFza0JhY2tvZmZCdWlsZGVyKCk7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby10aGlzLWFsaWFzXG4gICAgY29uc3Qgc2VsZiA9IHRoaXM7XG4gICAgYmFja09mZi5idWlsZCA9IG5ldyBQcm94eShiYWNrT2ZmLmJ1aWxkLCB7XG4gICAgICBhcHBseSh0YXJnZXQsIHRoaXNBcmcsIGFyZ3MpIHtcbiAgICAgICAgc2VsZi5iYWNrb2ZmID0gUmVmbGVjdC5hcHBseSh0YXJnZXQsIHRoaXNBcmcsIGFyZ3MpO1xuICAgICAgICByZXR1cm4gc2VsZjtcbiAgICAgIH0sXG4gICAgfSk7XG4gICAgcmV0dXJuIGJhY2tPZmYgYXMgYW55O1xuICB9XG5cbiAgc2V0SW5wdXQodmFsdWU6IGFueSk6IHRoaXMge1xuICAgIHRoaXMuaW5wdXQgPSB2YWx1ZTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIHNldE1heEF0dGVtcHRzKHZhbHVlOiBudW1iZXIpOiB0aGlzIHtcbiAgICB0aGlzLm1heEF0dGVtcHRzID0gdmFsdWU7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICBjb25zdHJ1Y3Rvcihhcmc/OiBNb2RlbEFyZzxUYXNrQnVpbGRlcj4pIHtcbiAgICBzdXBlcihhcmcpO1xuICAgIE1vZGVsLmZyb21Nb2RlbCh0aGlzLCBhcmcpO1xuICB9XG5cbiAgYnVpbGQoKSB7XG4gICAgY29uc3QgZXJycyA9IHRoaXMuaGFzRXJyb3JzKCk7XG4gICAgaWYgKGVycnMpIHRocm93IG5ldyBWYWxpZGF0aW9uRXJyb3IoZXJycyk7XG4gICAgcmV0dXJuIG5ldyBUYXNrTW9kZWwodGhpcyk7XG4gIH1cbn1cblxuZXhwb3J0IGNsYXNzIENvbXBvc2l0ZVRhc2tCdWlsZGVyIGV4dGVuZHMgVGFza0J1aWxkZXIge1xuICBAbGlzdCgoKSA9PiBUYXNrU3RlcFNwZWNNb2RlbClcbiAgcHJvdGVjdGVkIHN0ZXBzPzogVGFza1N0ZXBTcGVjTW9kZWxbXTtcblxuICBwcm90ZWN0ZWQgc3RlcFJlc3VsdHM/OiBUYXNrU3RlcFNwZWNNb2RlbFtdID0gW107XG5cbiAgY29uc3RydWN0b3IoYXJnPzogTW9kZWxBcmc8Q29tcG9zaXRlVGFza0J1aWxkZXI+KSB7XG4gICAgc3VwZXIoYXJnKTtcbiAgICBNb2RlbC5mcm9tTW9kZWwodGhpcywgYXJnKTtcbiAgICB0aGlzLmF0b21pY2l0eSA9IFRhc2tUeXBlLkNPTVBPU0lURTtcbiAgfVxuXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tdW51c2VkLXZhcnNcbiAgb3ZlcnJpZGUgc2V0QXRvbWljaXR5KHZhbHVlOiBUYXNrVHlwZSk6IHRoaXMge1xuICAgIHRocm93IG5ldyBJbnRlcm5hbEVycm9yKGBBdG9taWNpdHkgbG9ja2VkIHRvICR7VGFza1R5cGUuQ09NUE9TSVRFfWApO1xuICB9XG5cbiAgc2V0U3RlcHModmFsdWU6IFRhc2tTdGVwU3BlY01vZGVsW10pOiB0aGlzIHtcbiAgICB0aGlzLnN0ZXBzID0gKHZhbHVlID8/IFtdKS5tYXAoKHN0ZXApID0+XG4gICAgICBzdGVwIGluc3RhbmNlb2YgVGFza1N0ZXBTcGVjTW9kZWwgPyBzdGVwIDogbmV3IFRhc2tTdGVwU3BlY01vZGVsKHN0ZXApXG4gICAgKTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIGFkZFN0ZXAoY2xhc3NpZmljYXRpb246IHN0cmluZywgaW5wdXQ/OiBhbnkpOiB0aGlzIHtcbiAgICB0aGlzLnN0ZXBzID0gdGhpcy5zdGVwcyB8fCBbXTtcbiAgICBjb25zdCBub3cgPSBuZXcgRGF0ZSgpO1xuICAgIHRoaXMuc3RlcHMucHVzaChcbiAgICAgIG5ldyBUYXNrU3RlcFNwZWNNb2RlbCh7XG4gICAgICAgIGNsYXNzaWZpY2F0aW9uLFxuICAgICAgICBpbnB1dCxcbiAgICAgICAgY3JlYXRlZEF0OiBub3csXG4gICAgICAgIHVwZGF0ZWRBdDogbm93LFxuICAgICAgfSlcbiAgICApO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbn1cbiJdfQ==
@@ -48,4 +48,4 @@ export const DefaultTaskEngineConfig = {
48
48
  maxIdleDelayMs: 60 * 1000,
49
49
  },
50
50
  };
51
- //# sourceMappingURL=constants.js.map
51
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc3RhbnRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3Rhc2tzL2NvbnN0YW50cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxNQUFNLENBQU4sSUFBWSxVQVFYO0FBUkQsV0FBWSxVQUFVO0lBQ3BCLGlDQUFtQixDQUFBO0lBQ25CLHFDQUF1QixDQUFBO0lBQ3ZCLGlDQUFtQixDQUFBO0lBQ25CLCtCQUFpQixDQUFBO0lBQ2pCLHFDQUF1QixDQUFBO0lBQ3ZCLG1DQUFxQixDQUFBO0lBQ3JCLDZDQUErQixDQUFBO0FBQ2pDLENBQUMsRUFSVyxVQUFVLEtBQVYsVUFBVSxRQVFyQjtBQUVELE1BQU0sQ0FBTixJQUFZLGVBR1g7QUFIRCxXQUFZLGVBQWU7SUFDekIsOENBQTJCLENBQUE7SUFDM0Isa0NBQWUsQ0FBQTtBQUNqQixDQUFDLEVBSFcsZUFBZSxLQUFmLGVBQWUsUUFHMUI7QUFFRCxNQUFNLENBQU4sSUFBWSxjQUdYO0FBSEQsV0FBWSxjQUFjO0lBQ3hCLCtCQUFhLENBQUE7SUFDYiwrQkFBYSxDQUFBO0FBQ2YsQ0FBQyxFQUhXLGNBQWMsS0FBZCxjQUFjLFFBR3pCO0FBRUQsTUFBTSxDQUFOLElBQVksYUFLWDtBQUxELFdBQVksYUFBYTtJQUN2QixrQ0FBaUIsQ0FBQTtJQUNqQiw0QkFBVyxDQUFBO0lBQ1gsc0NBQXFCLENBQUE7SUFDckIsNEJBQVcsQ0FBQTtBQUNiLENBQUMsRUFMVyxhQUFhLEtBQWIsYUFBYSxRQUt4QjtBQUVELE1BQU0sQ0FBTixJQUFZLFFBR1g7QUFIRCxXQUFZLFFBQVE7SUFDbEIsNkJBQWlCLENBQUE7SUFDakIsbUNBQXVCLENBQUE7QUFDekIsQ0FBQyxFQUhXLFFBQVEsS0FBUixRQUFRLFFBR25CO0FBRUQsTUFBTSxDQUFDLE1BQU0sUUFBUSxHQUFHLE9BQU8sQ0FBQztBQUVoQyxNQUFNLENBQUMsTUFBTSx1QkFBdUIsR0FBMEI7SUFDNUQsUUFBUSxFQUFFLGdCQUFnQjtJQUMxQixXQUFXLEVBQUUsRUFBRTtJQUNmLE9BQU8sRUFBRSxLQUFLO0lBQ2QsVUFBVSxFQUFFLElBQUk7SUFDaEIsVUFBVSxFQUFFLEdBQUc7SUFDZixVQUFVLEVBQUUsR0FBRztJQUNmLGdCQUFnQixFQUFFLENBQUM7SUFDbkIsZ0JBQWdCLEVBQUUsR0FBRztJQUNyQix1QkFBdUIsRUFBRSxFQUFFO0lBQzNCLHlCQUF5QixFQUFFLEVBQUUsR0FBRyxDQUFDLEdBQUcsSUFBSTtJQUN4QyxZQUFZLEVBQUU7UUFDWixPQUFPLEVBQUUsS0FBSztRQUNkLGFBQWEsRUFBRSxJQUFJO1FBQ25CLGNBQWMsRUFBRSxFQUFFLEdBQUcsSUFBSTtLQUMxQjtDQUN1QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVGFza0VuZ2luZUNvbmZpZyB9IGZyb20gXCIuL3R5cGVzXCI7XG5cbmV4cG9ydCBlbnVtIFRhc2tTdGF0dXMge1xuICBQRU5ESU5HID0gXCJwZW5kaW5nXCIsXG4gIFNDSEVEVUxFRCA9IFwic2NoZWR1bGVkXCIsXG4gIFJVTk5JTkcgPSBcInJ1bm5pbmdcIixcbiAgRkFJTEVEID0gXCJmYWlsZWRcIixcbiAgU1VDQ0VFREVEID0gXCJzdWNjZWVkZWRcIixcbiAgQ0FOQ0VMRUQgPSBcImNhbmNlbGVkXCIsXG4gIFdBSVRJTkdfUkVUUlkgPSBcIndhaXRpbmdfcmV0cnlcIixcbn1cblxuZXhwb3J0IGVudW0gQmFja29mZlN0cmF0ZWd5IHtcbiAgRVhQT05FTlRJQUwgPSBcImV4cG9uZW50aWFsXCIsXG4gIEZJWEVEID0gXCJmaXhlZFwiLFxufVxuXG5leHBvcnQgZW51bSBKaXR0ZXJTdHJhdGVneSB7XG4gIE5PTkUgPSBcIm5vbmVcIixcbiAgRlVMTCA9IFwiZnVsbFwiLFxufVxuXG5leHBvcnQgZW51bSBUYXNrRXZlbnRUeXBlIHtcbiAgU1RBVFVTID0gXCJzdGF0dXNcIixcbiAgTE9HID0gXCJsb2dcIixcbiAgUFJPR1JFU1MgPSBcInByb2dyZXNzXCIsXG4gIEFMTCA9IFwiYWxsXCIsXG59XG5cbmV4cG9ydCBlbnVtIFRhc2tUeXBlIHtcbiAgQVRPTUlDID0gXCJhdG9taWNcIixcbiAgQ09NUE9TSVRFID0gXCJjb21wb3NpdGVcIixcbn1cblxuZXhwb3J0IGNvbnN0IFRhc2tzS2V5ID0gXCJ0YXNrc1wiO1xuXG5leHBvcnQgY29uc3QgRGVmYXVsdFRhc2tFbmdpbmVDb25maWc6IFRhc2tFbmdpbmVDb25maWc8YW55PiA9IHtcbiAgd29ya2VySWQ6IFwiZGVmYXVsdC13b3JrZXJcIixcbiAgY29uY3VycmVuY3k6IDEwLFxuICBsZWFzZU1zOiA2MDAwMCxcbiAgcG9sbE1zSWRsZTogMTAwMCxcbiAgcG9sbE1zQnVzeTogNTAwLFxuICBsb2dUYWlsTWF4OiAxMDAsXG4gIHN0cmVhbUJ1ZmZlclNpemU6IDUsXG4gIG1heExvZ2dpbmdCdWZmZXI6IDMwMCxcbiAgbG9nZ2luZ0J1ZmZlclRydW5jYXRpb246IDIwLFxuICBncmFjZWZ1bFNodXRkb3duTXNUaW1lb3V0OiA2MCAqIDIgKiAxMDAwLFxuICBhdXRvU2h1dGRvd246IHtcbiAgICBlbmFibGVkOiBmYWxzZSxcbiAgICBiYWNrb2ZmU3RlcE1zOiAxMDAwLFxuICAgIG1heElkbGVEZWxheU1zOiA2MCAqIDEwMDAsXG4gIH0sXG59IGFzIFRhc2tFbmdpbmVDb25maWc8YW55PjtcbiJdfQ==
@@ -17,4 +17,4 @@ export function task(key) {
17
17
  })
18
18
  .apply();
19
19
  }
20
- //# sourceMappingURL=decorators.js.map
20
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVjb3JhdG9ycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy90YXNrcy9kZWNvcmF0b3JzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3RFLE9BQU8sRUFBRSxRQUFRLEVBQUUsdUJBQW9CO0FBTXZDLE1BQU0sVUFBVSxJQUFJLENBQUMsR0FBVztJQUM5QixTQUFTLElBQUksQ0FBQyxHQUFXO1FBQ3ZCLE9BQU8sU0FBUyxTQUFTLENBQUMsTUFBYztZQUN0QyxNQUFNLElBQUksR0FBaUI7Z0JBQ3pCLElBQUksRUFBRSxHQUFHO2FBQ1YsQ0FBQztZQUNGLFFBQVEsQ0FBQyxHQUFHLENBQUMsUUFBUSxFQUFFLEdBQUcsRUFBRSxNQUFNLENBQUMsQ0FBQztZQUNwQyxPQUFPLFFBQVEsQ0FBQyxRQUFRLEVBQUUsSUFBSSxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDMUMsQ0FBQyxDQUFDO0lBQ0osQ0FBQztJQUVELE9BQU8sVUFBVSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUM7U0FDNUIsTUFBTSxDQUFDO1FBQ04sU0FBUyxFQUFFLElBQUk7UUFDZixJQUFJLEVBQUUsQ0FBQyxHQUFHLENBQUM7S0FDWixDQUFDO1NBQ0QsS0FBSyxFQUFFLENBQUM7QUFDYixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGVjb3JhdGlvbiwgbWV0YWRhdGEsIE1ldGFkYXRhIH0gZnJvbSBcIkBkZWNhZi10cy9kZWNvcmF0aW9uXCI7XG5pbXBvcnQgeyBUYXNrc0tleSB9IGZyb20gXCIuL2NvbnN0YW50c1wiO1xuXG5leHBvcnQgdHlwZSBUYXNrTWV0YWRhdGEgPSB7XG4gIHR5cGU6IHN0cmluZztcbn07XG5cbmV4cG9ydCBmdW5jdGlvbiB0YXNrKGtleTogc3RyaW5nKSB7XG4gIGZ1bmN0aW9uIHRhc2soa2V5OiBzdHJpbmcpIHtcbiAgICByZXR1cm4gZnVuY3Rpb24gaW5uZXJUYXNrKHRhcmdldDogb2JqZWN0KSB7XG4gICAgICBjb25zdCBtZXRhOiBUYXNrTWV0YWRhdGEgPSB7XG4gICAgICAgIHR5cGU6IGtleSxcbiAgICAgIH07XG4gICAgICBNZXRhZGF0YS5zZXQoVGFza3NLZXksIGtleSwgdGFyZ2V0KTtcbiAgICAgIHJldHVybiBtZXRhZGF0YShUYXNrc0tleSwgbWV0YSkodGFyZ2V0KTtcbiAgICB9O1xuICB9XG5cbiAgcmV0dXJuIERlY29yYXRpb24uZm9yKFRhc2tzS2V5KVxuICAgIC5kZWZpbmUoe1xuICAgICAgZGVjb3JhdG9yOiB0YXNrLFxuICAgICAgYXJnczogW2tleV0sXG4gICAgfSlcbiAgICAuYXBwbHkoKTtcbn1cbiJdfQ==
@@ -12,6 +12,7 @@ export * from "./logging";
12
12
  export * from "./TaskContext";
13
13
  export * from "./TaskEngine";
14
14
  export * from "./TaskEventBus";
15
+ export * from "./TaskEventService";
15
16
  export * from "./TaskHandler";
16
17
  export * from "./TaskHandlerRegistry";
17
18
  export * from "./TaskService";
@@ -12,6 +12,7 @@ export * from "./logging.js";
12
12
  export * from "./TaskContext.js";
13
13
  export * from "./TaskEngine.js";
14
14
  export * from "./TaskEventBus.js";
15
+ export * from "./TaskEventService.js";
15
16
  export * from "./TaskHandler.js";
16
17
  export * from "./TaskHandlerRegistry.js";
17
18
  export * from "./TaskService.js";
@@ -19,4 +20,4 @@ export * from "./TaskTracker.js";
19
20
  export * from "./types.js";
20
21
  export * from "./utils.js";
21
22
  export * from "./TaskErrors.js";
22
- //# sourceMappingURL=index.js.map
23
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvdGFza3MvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7R0FJRztBQUNILGtDQUF5QjtBQUN6Qiw2QkFBMEI7QUFDMUIsaUNBQThCO0FBQzlCLCtCQUE0QjtBQUM1QixnQ0FBNkI7QUFDN0IsNkJBQTBCO0FBQzFCLGlDQUE4QjtBQUM5QixnQ0FBNkI7QUFDN0Isa0NBQStCO0FBQy9CLHNDQUFtQztBQUNuQyxpQ0FBOEI7QUFDOUIseUNBQXNDO0FBQ3RDLGlDQUE4QjtBQUM5QixpQ0FBOEI7QUFDOUIsMkJBQXdCO0FBQ3hCLDJCQUF3QjtBQUN4QixnQ0FBNkIiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBkZXNjcmlwdGlvbiBFeHBvcnRzIGZvciB0aGUgdGFza3MgbW9kdWxlLlxuICogQHN1bW1hcnkgVGhpcyBmaWxlIGV4cG9ydHMgYWxsIHRoZSBuZWNlc3NhcnkgY29tcG9uZW50cyBmb3IgdGhlIHRhc2tzIGZ1bmN0aW9uYWxpdHksIGluY2x1ZGluZyBtb2RlbHMsIGJ1aWxkZXIsIGFuZCBtb3JlLlxuICogQG1vZHVsZSBjb3JlL3Rhc2tzXG4gKi9cbmV4cG9ydCAqIGZyb20gXCIuL21vZGVsc1wiO1xuZXhwb3J0ICogZnJvbSBcIi4vYnVpbGRlclwiO1xuZXhwb3J0ICogZnJvbSBcIi4vQ2xlYW5VcFRhc2tcIjtcbmV4cG9ydCAqIGZyb20gXCIuL2NvbnN0YW50c1wiO1xuZXhwb3J0ICogZnJvbSBcIi4vZGVjb3JhdG9yc1wiO1xuZXhwb3J0ICogZnJvbSBcIi4vbG9nZ2luZ1wiO1xuZXhwb3J0ICogZnJvbSBcIi4vVGFza0NvbnRleHRcIjtcbmV4cG9ydCAqIGZyb20gXCIuL1Rhc2tFbmdpbmVcIjtcbmV4cG9ydCAqIGZyb20gXCIuL1Rhc2tFdmVudEJ1c1wiO1xuZXhwb3J0ICogZnJvbSBcIi4vVGFza0V2ZW50U2VydmljZVwiO1xuZXhwb3J0ICogZnJvbSBcIi4vVGFza0hhbmRsZXJcIjtcbmV4cG9ydCAqIGZyb20gXCIuL1Rhc2tIYW5kbGVyUmVnaXN0cnlcIjtcbmV4cG9ydCAqIGZyb20gXCIuL1Rhc2tTZXJ2aWNlXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9UYXNrVHJhY2tlclwiO1xuZXhwb3J0ICogZnJvbSBcIi4vdHlwZXNcIjtcbmV4cG9ydCAqIGZyb20gXCIuL3V0aWxzXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9UYXNrRXJyb3JzXCI7XG4iXX0=
@@ -93,16 +93,13 @@ export function getLogPipe(log, opts = { logProgress: true, logStatus: true, sty
93
93
  return async function logPipe(evt) {
94
94
  log = log.for(evt.taskId, {
95
95
  style: false,
96
- timestamp: false,
97
- logLevel: false,
98
96
  });
99
97
  switch (evt.classification) {
100
98
  case TaskEventType.LOG: {
101
- let logs = evt.payload;
102
- // fallback. did this ever work?
103
- logs = logs.map((l) => Array.isArray(l) ? l : [l.level, l.ts + " - " + l.message, l.meta]);
99
+ const logs = evt.payload;
100
+ const normalized = logs.map((l) => Array.isArray(l) ? l : [l.level, l.msg, l.meta]);
104
101
  // eslint-disable-next-line prefer-const
105
- for (let [level, msg, payload] of logs) {
102
+ for (let [level, msg, payload] of normalized) {
106
103
  if (!opts.style) {
107
104
  msg = style(msg);
108
105
  msg = msg.clear().toString();
@@ -169,4 +166,4 @@ export function getLogPipe(log, opts = { logProgress: true, logStatus: true, sty
169
166
  }
170
167
  };
171
168
  }
172
- //# sourceMappingURL=logging.js.map
169
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9nZ2luZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy90YXNrcy9sb2dnaW5nLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFJTCxRQUFRLEVBR1IsS0FBSyxHQUVOLE1BQU0sbUJBQW1CLENBQUM7QUFHM0IsT0FBTyxFQUFFLGFBQWEsRUFBRSxVQUFVLEVBQUUsdUJBQW9CO0FBQ3hELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUd4RCxNQUFNLE9BQU8sVUFBVTtJQUdyQixZQUNZLE1BQWMsRUFDZCxhQUFxQixHQUFHLEVBQ3hCLGdCQUF3QixHQUFHLEVBQzNCLElBQWM7UUFIZCxXQUFNLEdBQU4sTUFBTSxDQUFRO1FBQ2QsZUFBVSxHQUFWLFVBQVUsQ0FBYztRQUN4QixrQkFBYSxHQUFiLGFBQWEsQ0FBYztRQUMzQixTQUFJLEdBQUosSUFBSSxDQUFVO1FBTmhCLFlBQU8sR0FBOEIsRUFBRSxDQUFDO1FBd0N6QyxTQUFJLEdBQWEsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUM7UUFoQ3pDLE1BQU0sQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUU7WUFDdkMsSUFBWSxDQUFDLEtBQUssQ0FBQyxHQUFHLElBQUksS0FBSyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsRUFBRTtnQkFDNUMsS0FBSyxFQUFFLENBQUMsTUFBTSxFQUFFLE9BQU8sRUFBRSxRQUFRLEVBQUUsRUFBRTtvQkFDbkMsTUFBTSxDQUFDLEtBQUssQ0FBQyxPQUFPLEVBQUUsUUFBeUIsQ0FBQyxDQUFDO29CQUNqRCxPQUFPLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxHQUFHLFFBQVEsQ0FBQyxDQUFDO2dCQUNuQyxDQUFDO2FBQ0YsQ0FBQyxDQUFDO1FBQ0wsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsSUFBSSxDQUFDLEtBQWUs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QUFNLENBQUMsTUFBTSxDQUFDOzRCQUN2QixNQUFNO3dCQUNSLEtBQUssVUFBVSxDQUFDLGFBQWE7NEJBQzNCLE1BQU0sR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQzs0QkFDNUIsTUFBTTt3QkFDUixLQUFLLFVBQVUsQ0FBQyxNQUFNOzRCQUNwQixNQUFNLEdBQUcsTUFBTSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUM7NEJBQ3pCLE1BQU07d0JBQ1IsS0FBSyxVQUFVLENBQUMsUUFBUTs0QkFDdEIsTUFBTSxHQUFHLE1BQU0sQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDOzRCQUM3QixNQUFNO3dCQUNSLEtBQUssVUFBVSxDQUFDLFNBQVM7NEJBQ3ZCLE1BQU0sR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDOzRCQUNyQixNQUFNO3dCQUNSOzRCQUNFLE1BQU0sSUFBSSxhQUFhLENBQ3JCLGlDQUFpQyxHQUFHLENBQUMsT0FBTyxFQUFFLENBQy9DLENBQUM7b0JBQ04sQ0FBQztvQkFDRCxHQUFHLENBQUMsSUFBSSxDQUFDLGNBQWMsTUFBTSxFQUFFLENBQUMsQ0FBQztnQkFDbkMsQ0FBQztnQkFDRCxNQUFNO1lBQ1IsQ0FBQztZQUNEO2dCQUNFLE1BQU0sSUFBSSxhQUFhLENBQ3JCLHNDQUFzQyxHQUFHLENBQUMsY0FBYyxFQUFFLENBQzNELENBQUM7UUFDTixDQUFDO0lBQ0gsQ0FBQyxDQUFDO0FBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEFueUZ1bmN0aW9uLFxuICBMb2dnZXIsXG4gIExvZ2dpbmdDb25maWcsXG4gIExvZ0xldmVsLFxuICBMb2dNZXRhLFxuICBTdHJpbmdMaWtlLFxuICBzdHlsZSxcbiAgU3R5bGVkU3RyaW5nLFxufSBmcm9tIFwiQGRlY2FmLXRzL2xvZ2dpbmdcIjtcbmltcG9ydCB7IEV2ZW50UGlwZSwgTG9nUGlwZSwgTG9nUGlwZU9wdGlvbnMgfSBmcm9tIFwiLi90eXBlc1wiO1xuaW1wb3J0IHsgVGFza0V2ZW50TW9kZWwgfSBmcm9tIFwiLi9tb2RlbHMvVGFza0V2ZW50TW9kZWxcIjtcbmltcG9ydCB7IFRhc2tFdmVudFR5cGUsIFRhc2tTdGF0dXMgfSBmcm9tIFwiLi9jb25zdGFudHNcIjtcbmltcG9ydCB7IEludGVybmFsRXJyb3IgfSBmcm9tIFwiQGRlY2FmLXRzL2RiLWRlY29yYXRvcnNcIjtcbmltcG9ydCB7IFRhc2tMb2dFbnRyeU1vZGVsIH0gZnJvbSBcIi4vbW9kZWxzL2luZGV4XCI7XG5cbmV4cG9ydCBjbGFzcyBUYXNrTG9nZ2VyPExPRyBleHRlbmRzIExvZ2dlcj4gaW1wbGVtZW50cyBMb2dnZXIge1xuICBwcm90ZWN0ZWQgaGlzdG9yeTogW0xvZ0xldmVsLCBzdHJpbmcsIGFueV1bXSA9IFtdO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByb3RlY3RlZCBsb2dnZXI6IExvZ2dlcixcbiAgICBwcm90ZWN0ZWQgYnVmZmVyU2l6ZTogbnVtYmVyID0gMTUwLFxuICAgIHByb3RlY3RlZCBtYXhCdWZmZXJTaXplOiBudW1iZXIgPSAzMDAsXG4gICAgcHJvdGVjdGVkIHBpcGU/OiBMb2dQaXBlXG4gICkge1xuICAgIE9iamVjdC52YWx1ZXMoTG9nTGV2ZWwpLmZvckVhY2goKGxldmVsKSA9PiB7XG4gICAgICAodGhpcyBhcyBhbnkpW2xldmVsXSA9IG5ldyBQcm94eSh0aGlzW2xldmVsXSwge1xuICAgICAgICBhcHBseTogKHRhcmdldCwgdGhpc0FyZywgYXJnQXJyYXkpID0+IHtcbiAgICAgICAgICB0YXJnZXQuYXBwbHkodGhpc0FyZywgYXJnQXJyYXkgYXMgW3N0cmluZywgYW55XSk7XG4gICAgICAgICAgdGhpc0FyZy5wdXNoKGxldmVsLCAuLi5hcmdBcnJheSk7XG4gICAgICAgIH0sXG4gICAgICB9KTtcbiAgICB9KTtcbiAgfVxuXG4gIHB1c2gobGV2ZWw6IExvZ0xldmVsLCBzdHJpbmc6IHN0cmluZywgbWV0YT86IGFueSkge1xuICAgIGlmICh0aGlzLmhpc3RvcnkubGVuZ3RoID49IHRoaXMubWF4QnVmZmVyU2l6ZSlcbiAgICAgIHRoaXMuaGlzdG9yeS5zcGxpY2UoMCwgdGhpcy5oaXN0b3J5Lmxlbmd0aCAtIHRoaXMuYnVmZmVyU2l6ZSk7XG4gICAgdGhpcy5oaXN0b3J5LnB1c2goW2xldmVsLCBzdHJpbmcsIG1ldGFdKTtcbiAgfVxuXG4gIGZsdXNoPFBJUEUgZXh0ZW5kcyBMb2dQaXBlPihcbiAgICBwaXBlPzogUElQRVxuICApOiBQSVBFIGV4dGVuZHMgTG9nUGlwZVxuICAgID8gUHJvbWlzZTxbTG9nTGV2ZWwsIHN0cmluZywgYW55XVtdPlxuICAgIDogW0xvZ0xldmVsLCBzdHJpbmcsIGFueV1bXSB7XG4gICAgY29uc3QgcmVzdWx0ID0gdGhpcy5oaXN0b3J5O1xuICAgIHRoaXMuaGlzdG9yeSA9IFtdO1xuICAgIGlmIChwaXBlICYmIHJlc3VsdC5sZW5ndGgpXG4gICAgICByZXR1cm4gcGlwZShyZXN1bHQpXG4gICAgICAgIC5jYXRjaCgoZSkgPT4gdGhpcy5sb2dnZXIuZXJyb3IoYEZhaWxlZCB0byBwaXBlIGxvZ3NgLCBlKSlcbiAgICAgICAgLmZpbmFsbHkoKCkgPT4gKHRoaXMuaGlzdG9yeSA9IFtdKSkgYXMgYW55O1xuXG4gICAgdGhpcy5oaXN0b3J5ID0gW107XG4gICAgcmV0dXJuIHJlc3VsdCBhcyBhbnk7XG4gIH1cblxuICByZWFkb25seSByb290OiBzdHJpbmdbXSA9IHRoaXMubG9nZ2VyLnJvb3Q7XG5cbiAgYmVuY2htYXJrKG1zZzogU3RyaW5nTGlrZSk6IHZvaWQge1xuICAgIHJldHVybiB0aGlzLmxvZ2dlci5iZW5jaG1hcmsobXNnKTtcbiAgfVxuXG4gIGNsZWFyKCk6IHRoaXMge1xuICAgIHRoaXMubG9nZ2VyID0gdGhpcy5sb2dnZXIuY2xlYXIoKTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIGRlYnVnKG1zZzogU3RyaW5nTGlrZSwgbWV0YT86IExvZ01ldGEpOiB2b2lkIHtcbiAgICB0aGlzLmxvZ2dlci5kZWJ1Zyhtc2csIG1ldGEpO1xuICB9XG5cbiAgZXJyb3IobXNnOiBTdHJpbmdMaWtlIHwgRXJyb3IsIGU/OiBFcnJvciB8IExvZ01ldGEsIG1ldGE/OiBMb2dNZXRhKTogdm9pZCB7XG4gICAgdGhpcy5sb2dnZXIuZXJyb3IobXNnLCBlLCBtZXRhKTtcbiAgfVxuXG4gIGZvcihjb25maWc6IFBhcnRpYWw8TG9nZ2luZ0NvbmZpZz4pOiB0aGlzO1xuICBmb3IoXG4gICAgY29udGV4dDogc3RyaW5nIHwgeyBuZXcgKC4uLmFyZ3M6IGFueVtdKTogYW55IH0gfCBBbnlGdW5jdGlvbiB8IG9iamVjdFxuICApOiB0aGlzO1xuICBmb3IoXG4gICAgbWV0aG9kOlxuICAgICAgfCBzdHJpbmdcbiAgICAgIHwge1xuICAgICAgICAgIG5ldyAoLi4uYXJnczogYW55W10pOiBhbnk7XG4gICAgICAgIH1cbiAgICAgIHwgQW55RnVuY3Rpb25cbiAgICAgIHwgb2JqZWN0XG4gICAgICB8IFBhcnRpYWw8TG9nZ2luZ0NvbmZpZz4sXG4gICAgY29uZmlnPzogUGFydGlhbDxMb2dnaW5nQ29uZmlnPixcbiAgICAuLi5hcmdzOiBhbnlbXVxuICApOiB0aGlzO1xuICBmb3IoXG4gICAgY29uZmlnOlxuICAgICAgfCBQYXJ0aWFsPExvZ2dpbmdDb25maWc+XG4gICAgICB8IHN0cmluZ1xuICAgICAgfCB7XG4gICAgICAgICAgbmV3ICguLi5hcmdzOiBhbnlbXSk6IGFueTtcbiAgICAgICAgfVxuICAgICAgfCBBbnlGdW5jdGlvblxuICAgICAgfCBvYmplY3QsXG4gICAgLi4uYXJnczogYW55W11cbiAgKTogVGFza0xvZ2dlcjxMT0c+IHtcbiAgICByZXR1cm4gbmV3IFByb3h5KHRoaXMsIHtcbiAgICAgIGdldCh0YXJnZXQ6IFRhc2tMb2dnZXI8TE9HPiwgcDogc3RyaW5nIHwgc3ltYm9sKTogYW55IHtcbiAgICAgICAgaWYgKHAgPT09IFwibG9nZ2VyXCIpIHtcbiAgICAgICAgICBjb25zdCBsb2cgPSBSZWZsZWN0LmdldCh0YXJnZXQsIHApO1xuICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICByZXR1cm4gbG9nLmZvcihjb25maWcsIC4uLmFyZ3MpO1xuICAgICAgICAgIH0gY2F0Y2ggKGU6IHVua25vd24pIHtcbiAgICAgICAgICAgIHRhcmdldC5lcnJvcihcbiAgICAgICAgICAgICAgYEZhaWxlZCB0byBiaW5kIHRhc2sgbG9nZ2VyLiByZWNlaXZlZDogJHtsb2cgJiYgbG9nLmNvbnN0cnVjdG9yID8gbG9nLmNvbnN0cnVjdG9yLm5hbWUgOiBsb2cubmFtZSA/IGxvZy5uYW1lIDogXCJ1bmtub3duXCJ9YCxcbiAgICAgICAgICAgICAgZSBhcyBhbnlcbiAgICAgICAgICAgICk7XG4gICAgICAgICAgICB0cnkge1xuICAgICAgICAgICAgICB0YXJnZXQudHJhY2UoSlNPTi5zdHJpbmdpZnkobG9nLCB1bmRlZmluZWQsIDIpKTtcbiAgICAgICAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby11bnVzZWQtdmFyc1xuICAgICAgICAgICAgfSBjYXRjaCAoZTI6IHVua25vd24pIHtcbiAgICAgICAgICAgICAgdGFyZ2V0LnRyYWNlKGB1bnNlcmlhbGl6YWJsZSBvdXRwdXQ6ICR7bG9nLm5hbWUgfHwgXCJ1bmtub3duXCJ9YCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICB0aHJvdyBlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gUmVmbGVjdC5nZXQodGFyZ2V0LCBwKTtcbiAgICAgIH0sXG4gICAgfSk7XG4gIH1cblxuICBpbmZvKG1zZzogU3RyaW5nTGlrZSwgbWV0YT86IExvZ01ldGEpOiB2b2lkIHtcbiAgICB0aGlzLmxvZ2dlci5pbmZvKG1zZywgbWV0YSk7XG4gIH1cblxuICBzZXRDb25maWcoY29uZmlnOiBQYXJ0aWFsPExvZ2dpbmdDb25maWc+KTogdm9pZCB7XG4gICAgdGhpcy5sb2dnZXIuc2V0Q29uZmlnKGNvbmZpZyk7XG4gIH1cblxuICBzaWxseShtc2c6IFN0cmluZ0xpa2UsIG1ldGE/OiBMb2dNZXRhKTogdm9pZCB7XG4gICAgdGhpcy5sb2dnZXIuc2lsbHkobXNnLCBtZXRhKTtcbiAgfVxuXG4gIHRyYWNlKG1zZzogU3RyaW5nTGlrZSwgbWV0YT86IExvZ01ldGEpOiB2b2lkIHtcbiAgICB0aGlzLmxvZ2dlci50cmFjZShtc2csIG1ldGEpO1xuICB9XG5cbiAgdmVyYm9zZShtc2c6IFN0cmluZ0xpa2UsIHZlcmJvc2l0eT86IG51bWJlciB8IExvZ01ldGEsIG1ldGE/OiBMb2dNZXRhKTogdm9pZCB7XG4gICAgdGhpcy5sb2dnZXIudmVyYm9zZShtc2csIHZlcmJvc2l0eSwgbWV0YSk7XG4gIH1cblxuICB3YXJuKG1zZzogU3RyaW5nTGlrZSwgbWV0YT86IExvZ01ldGEpOiB2b2lkIHtcbiAgICB0aGlzLmxvZ2dlci53YXJuKG1zZywgbWV0YSk7XG4gIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldExvZ1BpcGU8TE9HIGV4dGVuZHMgTG9nZ2VyPihcbiAgbG9nOiBMT0csXG4gIG9wdHM6IExvZ1BpcGVPcHRpb25zID0geyBsb2dQcm9ncmVzczogdHJ1ZSwgbG9nU3RhdHVzOiB0cnVlLCBzdHlsZTogdHJ1ZSB9XG4pOiBFdmVudFBpcGUge1xuICByZXR1cm4gYXN5bmMgZnVuY3Rpb24gbG9nUGlwZShldnQ6IFRhc2tFdmVudE1vZGVsKSB7XG4gICAgbG9nID0gbG9nLmZvcihldnQudGFza0lkLCB7XG4gICAgICBzdHlsZTogZmFsc2UsXG4gICAgfSk7XG5cbiAgICBzd2l0Y2ggKGV2dC5jbGFzc2lmaWNhdGlvbikge1xuICAgICAgY2FzZSBUYXNrRXZlbnRUeXBlLkxPRzoge1xuICAgICAgICBjb25zdCBsb2dzOiAoW0xvZ0xldmVsLCBzdHJpbmcsIGFueV0gfCBUYXNrTG9nRW50cnlNb2RlbClbXSA9XG4gICAgICAgICAgZXZ0LnBheWxvYWQ7XG4gICAgICAgIGNvbnN0IG5vcm1hbGl6ZWQgPSBsb2dzLm1hcCgobDogYW55KSA9PlxuICAgICAgICAgIEFycmF5LmlzQXJyYXkobCkgPyBsIDogW2wubGV2ZWwsIGwubXNnLCBsLm1ldGFdXG4gICAgICAgICkgYXMgW0xvZ0xldmVsLCBzdHJpbmcsIGFueV1bXTtcbiAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIHByZWZlci1jb25zdFxuICAgICAgICBmb3IgKGxldCBbbGV2ZWwsIG1zZywgcGF5bG9hZF0gb2Ygbm9ybWFsaXplZCkge1xuICAgICAgICAgIGlmICghb3B0cy5zdHlsZSkge1xuICAgICAgICAgICAgbXNnID0gc3R5bGUobXNnKSBhcyBhbnk7XG4gICAgICAgICAgICBtc2cgPSAobXNnIGFzIHVua25vd24gYXMgU3R5bGVkU3RyaW5nKS5jbGVhcigpLnRvU3RyaW5nKCk7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgY29uc3QgYXJnczogW3N0cmluZywgYW55P10gPSBbbXNnXTtcbiAgICAgICAgICBzd2l0Y2ggKGxldmVsKSB7XG4gICAgICAgICAgICBjYXNlIExvZ0xldmVsLnZlcmJvc2U6XG4gICAgICAgICAgICAgIGFyZ3MucHVzaCgxKTtcbiAgICAgICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1mYWxsdGhyb3VnaFxuICAgICAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAgICAgYXJncy5wdXNoKHBheWxvYWQpO1xuICAgICAgICAgIH1cbiAgICAgICAgICB0cnkge1xuICAgICAgICAgICAgbG9nW2xldmVsXSguLi5hcmdzKTtcbiAgICAgICAgICB9IGNhdGNoIChlOiB1bmtub3duKSB7XG4gICAgICAgICAgICBsb2cuZXJyb3IoYEZhaWxlZCB0byBwaXBlIHRhc2sgbG9nc2AsIGUgYXMgRXJyb3IpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBicmVhaztcbiAgICAgIH1cbiAgICAgIGNhc2UgVGFza0V2ZW50VHlwZS5QUk9HUkVTUzoge1xuICAgICAgICBpZiAob3B0cy5sb2dQcm9ncmVzcykge1xuICAgICAgICAgIGNvbnN0IHsgY3VycmVudFN0ZXAsIHRvdGFsU3RlcHMgfSA9IGV2dC5wYXlsb2FkO1xuICAgICAgICAgIGxvZy5pbmZvKGAjIyMgU1RFUCAke2N1cnJlbnRTdGVwfS8ke3RvdGFsU3RlcHN9YCk7XG4gICAgICAgIH1cbiAgICAgICAgYnJlYWs7XG4gICAgICB9XG4gICAgICBjYXNlIFRhc2tFdmVudFR5cGUuU1RBVFVTOiB7XG4gICAgICAgIGlmIChvcHRzLmxvZ1N0YXR1cykge1xuICAgICAgICAgIGNvbnN0IHN0YXR1c1ZhbHVlID0gZXZ0LnBheWxvYWQ/LnN0YXR1cyA/PyBldnQucGF5bG9hZDtcbiAgICAgICAgICBsZXQgc3RhdHVzID0gc3R5bGUoc3RhdHVzVmFsdWUpO1xuICAgICAgICAgIHN3aXRjaCAoc3RhdHVzVmFsdWUpIHtcbiAgICAgICAgICAgIGNhc2UgVGFza1N0YXR1cy5TVUNDRUVERUQ6XG4gICAgICAgICAgICAgIHN0YXR1cyA9IHN0YXR1cy5ncmVlbi5ib2xkO1xuICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIGNhc2UgVGFza1N0YXR1cy5SVU5OSU5HOlxuICAgICAgICAgICAgICBzdGF0dXMgPSBzdGF0dXMuYmx1ZS5ib2xkO1xuICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIGNhc2UgVGFza1N0YXR1cy5QRU5ESU5HOlxuICAgICAgICAgICAgICBzdGF0dXMgPSBzdGF0dXMueWVsbG93O1xuICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIGNhc2UgVGFza1N0YXR1cy5XQUlUSU5HX1JFVFJZOlxuICAgICAgICAgICAgICBzdGF0dXMgPSBzdGF0dXMueWVsbG93LmJvbGQ7XG4gICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgY2FzZSBUYXNrU3RhdHVzLkZBSUxFRDpcbiAgICAgICAgICAgICAgc3RhdHVzID0gc3RhdHVzLnJlZC5ib2xkO1xuICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIGNhc2UgVGFza1N0YXR1cy5DQU5DRUxFRDpcbiAgICAgICAgICAgICAgc3RhdHVzID0gc3RhdHVzLm1hZ2VudGEuYm9sZDtcbiAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICBjYXNlIFRhc2tTdGF0dXMuU0NIRURVTEVEOlxuICAgICAgICAgICAgICBzdGF0dXMgPSBzdGF0dXMuY3lhbjtcbiAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgICB0aHJvdyBuZXcgSW50ZXJuYWxFcnJvcihcbiAgICAgICAgICAgICAgICBgUmVjZWl2ZWQgdW5rbm93biB0YXNrIHN0YXR1czogJHtldnQucGF5bG9hZH1gXG4gICAgICAgICAgICAgICk7XG4gICAgICAgICAgfVxuICAgICAgICAgIGxvZy5pbmZvKGAjIyMgU1RBVFVTICR7c3RhdHVzfWApO1xuICAgICAgICB9XG4gICAgICAgIGJyZWFrO1xuICAgICAgfVxuICAgICAgZGVmYXVsdDpcbiAgICAgICAgdGhyb3cgbmV3IEludGVybmFsRXJyb3IoXG4gICAgICAgICAgYFVua25vd24gdGFzayBldmVudCBjbGFzc2lmaWNhdGlvbjogJHtldnQuY2xhc3NpZmljYXRpb259YFxuICAgICAgICApO1xuICAgIH1cbiAgfTtcbn1cbiJdfQ==
@@ -47,4 +47,4 @@ TaskBackoffModel = __decorate([
47
47
  __metadata("design:paramtypes", [Object])
48
48
  ], TaskBackoffModel);
49
49
  export { TaskBackoffModel };
50
- //# sourceMappingURL=TaskBackoffModel.js.map
50
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVGFza0JhY2tvZmZNb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy90YXNrcy9tb2RlbHMvVGFza0JhY2tvZmZNb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7QUFBQSxPQUFPLEVBQ0wsS0FBSyxFQUNMLEtBQUssRUFFTCxNQUFNLEVBQ04sUUFBUSxFQUNSLElBQUksR0FDTCxNQUFNLGdDQUFnQyxDQUFDO0FBQ3hDLE9BQU8sRUFBRSxlQUFlLEVBQUUsY0FBYyxFQUFFLDBCQUFxQjtBQUMvRCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFHNUMsSUFBTSxnQkFBZ0IsR0FBdEIsTUFBTSxnQkFBaUIsU0FBUSxLQUFLO0lBb0J6QyxZQUFZLEdBQWdDO1FBQzFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztRQWhCYixhQUFRLEdBQW9CLGVBQWUsQ0FBQyxXQUFXLENBQUM7UUFJeEQsV0FBTSxHQUFXLElBQUksQ0FBQztRQUl0QixVQUFLLEdBQVcsTUFBTSxDQUFDO1FBS3ZCLFdBQU0sR0FBb0IsY0FBYyxDQUFDLElBQUksQ0FBQztJQUk5QyxDQUFDO0NBQ0YsQ0FBQTtBQWxCQztJQUpDLFFBQVEsRUFBRTtJQUNWLElBQUksQ0FBQyxNQUFNLENBQUM7SUFDWixNQUFNLENBQUMsZUFBZSxDQUFDO0lBQ3ZCLFdBQVcsQ0FBQyxzQkFBc0IsQ0FBQzs7a0RBQ29CO0FBSXhEO0lBRkMsUUFBUSxFQUFFO0lBQ1YsV0FBVyxDQUFDLGdDQUFnQyxDQUFDOztnREFDeEI7QUFJdEI7SUFGQyxRQUFRLEVBQUU7SUFDVixXQUFXLENBQUMsY0FBYyxDQUFDOzsrQ0FDTDtBQUt2QjtJQUhDLElBQUksQ0FBQyxNQUFNLENBQUM7SUFDWixNQUFNLENBQUMsY0FBYyxDQUFDO0lBQ3RCLFdBQVcsQ0FBQywwQkFBMEIsQ0FBQzs7Z0RBQ007QUFsQm5DLGdCQUFnQjtJQUQ1QixLQUFLLEVBQUU7O0dBQ0ssZ0JBQWdCLENBdUI1QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIE1vZGVsLFxuICBtb2RlbCxcbiAgdHlwZSBNb2RlbEFyZyxcbiAgb3B0aW9uLFxuICByZXF1aXJlZCxcbiAgdHlwZSxcbn0gZnJvbSBcIkBkZWNhZi10cy9kZWNvcmF0b3ItdmFsaWRhdGlvblwiO1xuaW1wb3J0IHsgQmFja29mZlN0cmF0ZWd5LCBKaXR0ZXJTdHJhdGVneSB9IGZyb20gXCIuLi9jb25zdGFudHNcIjtcbmltcG9ydCB7IGRlc2NyaXB0aW9uIH0gZnJvbSBcIkBkZWNhZi10cy9kZWNvcmF0aW9uXCI7XG5cbkBtb2RlbCgpXG5leHBvcnQgY2xhc3MgVGFza0JhY2tvZmZNb2RlbCBleHRlbmRzIE1vZGVsIHtcbiAgQHJlcXVpcmVkKClcbiAgQHR5cGUoU3RyaW5nKVxuICBAb3B0aW9uKEJhY2tvZmZTdHJhdGVneSlcbiAgQGRlc2NyaXB0aW9uKFwidGhlIGJhY2tvZmYgc3RyYXRlZ3lcIilcbiAgc3RyYXRlZ3k6IEJhY2tvZmZTdHJhdGVneSA9IEJhY2tvZmZTdHJhdGVneS5FWFBPTkVOVElBTDtcblxuICBAcmVxdWlyZWQoKVxuICBAZGVzY3JpcHRpb24oXCJiYXNlIGludGVydmFsIGJldHdlZW4gYXR0ZW1wdHNcIilcbiAgYmFzZU1zOiBudW1iZXIgPSAxMDAwO1xuXG4gIEByZXF1aXJlZCgpXG4gIEBkZXNjcmlwdGlvbihcIm1heCBpbnRlcnZhbFwiKVxuICBtYXhNczogbnVtYmVyID0gNjBfMDAwO1xuXG4gIEB0eXBlKFN0cmluZylcbiAgQG9wdGlvbihKaXR0ZXJTdHJhdGVneSlcbiAgQGRlc2NyaXB0aW9uKFwib3B0aW9uYWwgaml0dGVyIHN0cmF0ZWd5XCIpXG4gIGppdHRlcj86IEppdHRlclN0cmF0ZWd5ID0gSml0dGVyU3RyYXRlZ3kuRlVMTDtcblxuICBjb25zdHJ1Y3Rvcihhcmc/OiBNb2RlbEFyZzxUYXNrQmFja29mZk1vZGVsPikge1xuICAgIHN1cGVyKGFyZyk7XG4gIH1cbn1cbiJdfQ==
@@ -39,4 +39,4 @@ TaskErrorModel = __decorate([
39
39
  __metadata("design:paramtypes", [Object])
40
40
  ], TaskErrorModel);
41
41
  export { TaskErrorModel };
42
- //# sourceMappingURL=TaskErrorModel.js.map
42
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVGFza0Vycm9yTW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvdGFza3MvbW9kZWxzL1Rhc2tFcnJvck1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7OztBQUFBLE9BQU8sRUFDTCxLQUFLLEVBQ0wsS0FBSyxFQUVMLFFBQVEsR0FDVCxNQUFNLGdDQUFnQyxDQUFDO0FBQ3hDLE9BQU8sRUFBRSxXQUFXLEVBQUUsSUFBSSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFHbEQsSUFBTSxjQUFjLEdBQXBCLE1BQU0sY0FBZSxTQUFRLEtBQUs7SUFjdkMsWUFBWSxHQUE4QjtRQUN4QyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDYixDQUFDO0NBQ0YsQ0FBQTtBQWRDO0lBRkMsUUFBUSxFQUFFO0lBQ1YsV0FBVyxDQUFDLG1CQUFtQixDQUFDOzsrQ0FDaEI7QUFHakI7SUFGQyxJQUFJLEVBQUU7SUFDTixXQUFXLENBQUMsaUJBQWlCLENBQUM7OzZDQUNoQjtBQUdmO0lBRkMsSUFBSSxFQUFFO0lBQ04sV0FBVyxDQUFDLGdCQUFnQixDQUFDOzs0Q0FDaEI7QUFHZDtJQUZDLElBQUksRUFBRTtJQUNOLFdBQVcsQ0FBQyxtQkFBbUIsQ0FBQzs7K0NBQ25CO0FBWkgsY0FBYztJQUQxQixLQUFLLEVBQUU7O0dBQ0ssY0FBYyxDQWlCMUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBNb2RlbCxcbiAgbW9kZWwsXG4gIHR5cGUgTW9kZWxBcmcsXG4gIHJlcXVpcmVkLFxufSBmcm9tIFwiQGRlY2FmLXRzL2RlY29yYXRvci12YWxpZGF0aW9uXCI7XG5pbXBvcnQgeyBkZXNjcmlwdGlvbiwgcHJvcCB9IGZyb20gXCJAZGVjYWYtdHMvZGVjb3JhdGlvblwiO1xuXG5AbW9kZWwoKVxuZXhwb3J0IGNsYXNzIFRhc2tFcnJvck1vZGVsIGV4dGVuZHMgTW9kZWwge1xuICBAcmVxdWlyZWQoKVxuICBAZGVzY3JpcHRpb24oXCJUaGUgZXJyb3IgbWVzc2FnZVwiKVxuICBtZXNzYWdlITogc3RyaW5nO1xuICBAcHJvcCgpXG4gIEBkZXNjcmlwdGlvbihcIlRoZSBlcnJvciBzdGFja1wiKVxuICBzdGFjaz86IHN0cmluZztcbiAgQHByb3AoKVxuICBAZGVzY3JpcHRpb24oXCJUaGUgZXJyb3IgY29kZVwiKVxuICBjb2RlPzogc3RyaW5nO1xuICBAcHJvcCgpXG4gIEBkZXNjcmlwdGlvbihcIlRoZSBlcnJvciBkZXRhaWxzXCIpXG4gIGRldGFpbHM/OiBhbnk7XG5cbiAgY29uc3RydWN0b3IoYXJnPzogTW9kZWxBcmc8VGFza0Vycm9yTW9kZWw+KSB7XG4gICAgc3VwZXIoYXJnKTtcbiAgfVxufVxuIl19
@@ -78,4 +78,4 @@ TaskEventModel = __decorate([
78
78
  __metadata("design:paramtypes", [Object])
79
79
  ], TaskEventModel);
80
80
  export { TaskEventModel };
81
- //# sourceMappingURL=TaskEventModel.js.map
81
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVGFza0V2ZW50TW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvdGFza3MvbW9kZWxzL1Rhc2tFdmVudE1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7OztBQUFBLE9BQU8sRUFBRSxFQUFFLEVBQUUsdUNBQWtDO0FBQy9DLE9BQU8sRUFDTCxJQUFJLEVBQ0osS0FBSyxFQUNMLEtBQUssRUFFTCxNQUFNLEVBQ04sUUFBUSxHQUNULE1BQU0sZ0NBQWdDLENBQUM7QUFDeEMsT0FBTyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsb0NBQStCO0FBQ3ZELE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUM1QyxPQUFPLEVBQ0wsUUFBUSxFQUNSLFFBQVEsRUFDUixTQUFTLEVBQ1QsU0FBUyxHQUNWLE1BQU0seUJBQXlCLENBQUM7QUFDakMsT0FBTyxFQUFFLGFBQWEsRUFBRSwwQkFBcUI7QUFDN0MsT0FBTyxFQUFFLElBQUksRUFBRSwwQ0FBcUM7QUFDcEQsT0FBTyxFQUFFLEtBQUssRUFBRSwrQkFBMEI7QUFDMUMsT0FBTyxFQUFFLGNBQWMsRUFBRSxvQ0FBK0I7QUFJakQsSUFBTSxjQUFjLEdBQXBCLE1BQU0sY0FBZSxTQUFRLEtBQUs7SUFxQ3ZDLFlBQVksR0FBOEI7UUFDeEMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBaEJiLE9BQUUsR0FBUyxJQUFJLElBQUksRUFBRSxDQUFDO1FBaUJwQixJQUFJLE9BQU8sSUFBSSxDQUFDLE9BQU8sS0FBSyxRQUFRLEVBQUUsQ0FBQztZQUNyQyxJQUFJLENBQUM7Z0JBQ0gsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUMxQyxDQUFDO1lBQUMsTUFBTSxDQUFDO2dCQUNQLHdDQUF3QztZQUMxQyxDQUFDO1FBQ0gsQ0FBQztJQUNILENBQUM7Q0FDRixDQUFBO0FBNUNDO0lBRkMsRUFBRSxFQUFFO0lBQ0osUUFBUSxDQUFDLENBQUMsUUFBUSxFQUFFLGdCQUFnQixFQUFFLE1BQU0sQ0FBQyxFQUFFLEdBQUcsQ0FBQzs7MENBQ3hDO0FBT1o7SUFMQyxNQUFNLEVBQUU7SUFDUixRQUFRLEVBQUU7SUFDVixRQUFRLEVBQUU7SUFDVixTQUFTLEVBQUU7SUFDWCxJQUFJLENBQUMsS0FBSyxDQUFDOzs0Q0FDRTtBQU1kO0lBSkMsTUFBTSxFQUFFO0lBQ1IsUUFBUSxFQUFFO0lBQ1YsUUFBUSxFQUFFO0lBQ1YsS0FBSyxDQUFDLENBQUMsY0FBYyxDQUFDLEdBQUcsRUFBRSxjQUFjLENBQUMsR0FBRyxDQUFDLENBQUM7OzhDQUNoQztBQU1oQjtJQUpDLElBQUksRUFBRTtJQUNOLE1BQU0sRUFBRTtJQUNSLFFBQVEsRUFBRTtJQUNWLEtBQUssQ0FBQyxDQUFDLGNBQWMsQ0FBQyxHQUFHLEVBQUUsY0FBYyxDQUFDLEdBQUcsQ0FBQyxDQUFDOzhCQUM1QyxJQUFJOzBDQUFjO0FBT3RCO0lBTEMsTUFBTSxFQUFFO0lBQ1IsUUFBUSxFQUFFO0lBQ1YsUUFBUSxFQUFFO0lBQ1YsTUFBTSxDQUFDLGFBQWEsQ0FBQztJQUNyQixLQUFLLENBQUMsQ0FBQyxjQUFjLENBQUMsR0FBRyxFQUFFLGNBQWMsQ0FBQyxHQUFHLENBQUMsQ0FBQzs7c0RBQ2pCO0FBTS9CO0lBSkMsSUFBSSxFQUFFO0lBQ04sTUFBTSxFQUFFO0lBQ1IsU0FBUyxFQUFFO0lBQ1gsUUFBUSxFQUFFOzsrQ0FDRztBQW5DSCxjQUFjO0lBRjFCLEtBQUssQ0FBQyxZQUFZLENBQUM7SUFDbkIsS0FBSyxFQUFFOztHQUNLLGNBQWMsQ0ErQzFCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgcGsgfSBmcm9tIFwiLi4vLi4vaWRlbnRpdHkvZGVjb3JhdG9yc1wiO1xuaW1wb3J0IHtcbiAgZGF0ZSxcbiAgTW9kZWwsXG4gIG1vZGVsLFxuICB0eXBlIE1vZGVsQXJnLFxuICBvcHRpb24sXG4gIHJlcXVpcmVkLFxufSBmcm9tIFwiQGRlY2FmLXRzL2RlY29yYXRvci12YWxpZGF0aW9uXCI7XG5pbXBvcnQgeyBjb2x1bW4sIHRhYmxlIH0gZnJvbSBcIi4uLy4uL21vZGVsL2RlY29yYXRvcnNcIjtcbmltcG9ydCB7IHByb3AgfSBmcm9tIFwiQGRlY2FmLXRzL2RlY29yYXRpb25cIjtcbmltcG9ydCB7XG4gIGNvbXBvc2VkLFxuICByZWFkb25seSxcbiAgc2VyaWFsaXplLFxuICB0cmFuc2llbnQsXG59IGZyb20gXCJAZGVjYWYtdHMvZGItZGVjb3JhdG9yc1wiO1xuaW1wb3J0IHsgVGFza0V2ZW50VHlwZSB9IGZyb20gXCIuLi9jb25zdGFudHNcIjtcbmltcG9ydCB7IHV1aWQgfSBmcm9tIFwiLi4vLi4vcGVyc2lzdGVuY2UvZGVjb3JhdG9yc1wiO1xuaW1wb3J0IHsgaW5kZXggfSBmcm9tIFwiLi4vLi4vbW9kZWwvaW5kZXhcIjtcbmltcG9ydCB7IE9yZGVyRGlyZWN0aW9uIH0gZnJvbSBcIi4uLy4uL3JlcG9zaXRvcnkvaW5kZXhcIjtcblxuQHRhYmxlKFwidGFza19ldmVudFwiKVxuQG1vZGVsKClcbmV4cG9ydCBjbGFzcyBUYXNrRXZlbnRNb2RlbCBleHRlbmRzIE1vZGVsIHtcbiAgQHBrKClcbiAgQGNvbXBvc2VkKFtcInRhc2tJZFwiLCBcImNsYXNzaWZpY2F0aW9uXCIsIFwidXVpZFwiXSwgXCI6XCIpXG4gIGlkITogc3RyaW5nO1xuXG4gIEBjb2x1bW4oKVxuICBAcmVhZG9ubHkoKVxuICBAcmVxdWlyZWQoKVxuICBAdHJhbnNpZW50KClcbiAgQHV1aWQoZmFsc2UpXG4gIHV1aWQhOiBzdHJpbmc7XG5cbiAgQGNvbHVtbigpXG4gIEByZWFkb25seSgpXG4gIEByZXF1aXJlZCgpXG4gIEBpbmRleChbT3JkZXJEaXJlY3Rpb24uQVNDLCBPcmRlckRpcmVjdGlvbi5EU0NdKVxuICB0YXNrSWQhOiBzdHJpbmc7XG5cbiAgQGRhdGUoKVxuICBAY29sdW1uKClcbiAgQHJlcXVpcmVkKClcbiAgQGluZGV4KFtPcmRlckRpcmVjdGlvbi5BU0MsIE9yZGVyRGlyZWN0aW9uLkRTQ10pXG4gIHRzOiBEYXRlID0gbmV3IERhdGUoKTtcblxuICBAY29sdW1uKClcbiAgQHJlYWRvbmx5KClcbiAgQHJlcXVpcmVkKClcbiAgQG9wdGlvbihUYXNrRXZlbnRUeXBlKVxuICBAaW5kZXgoW09yZGVyRGlyZWN0aW9uLkFTQywgT3JkZXJEaXJlY3Rpb24uRFNDXSlcbiAgY2xhc3NpZmljYXRpb24hOiBUYXNrRXZlbnRUeXBlO1xuXG4gIEBwcm9wKClcbiAgQGNvbHVtbigpXG4gIEBzZXJpYWxpemUoKVxuICBAcmVhZG9ubHkoKVxuICBwYXlsb2FkPzogYW55O1xuXG4gIGNvbnN0cnVjdG9yKGFyZz86IE1vZGVsQXJnPFRhc2tFdmVudE1vZGVsPikge1xuICAgIHN1cGVyKGFyZyk7XG4gICAgaWYgKHR5cGVvZiB0aGlzLnBheWxvYWQgPT09IFwic3RyaW5nXCIpIHtcbiAgICAgIHRyeSB7XG4gICAgICAgIHRoaXMucGF5bG9hZCA9IEpTT04ucGFyc2UodGhpcy5wYXlsb2FkKTtcbiAgICAgIH0gY2F0Y2gge1xuICAgICAgICAvLyBrZWVwIG9yaWdpbmFsIHN0cmluZyBpZiBwYXJzaW5nIGZhaWxzXG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iXX0=
@@ -104,4 +104,4 @@ export class TaskIOSerializer extends JSONSerializer {
104
104
  return JSON.stringify(this.preSerialize(model));
105
105
  }
106
106
  }
107
- //# sourceMappingURL=TaskIOSerializer.js.map
107
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVGFza0lPU2VyaWFsaXplci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy90YXNrcy9tb2RlbHMvVGFza0lPU2VyaWFsaXplci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsY0FBYyxFQUNkLEtBQUssRUFDTCxTQUFTLEdBQ1YsTUFBTSxnQ0FBZ0MsQ0FBQztBQUN4QyxPQUFPLEVBQWUsUUFBUSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDN0QsT0FBTyxFQUFFLFNBQVMsRUFBRSxtQ0FBOEI7QUFFbEQsTUFBTSxPQUFPLGdCQUFrQyxTQUFRLGNBQWlCO0lBQ3RFO1FBQ0UsS0FBSyxFQUFFLENBQUM7SUFDVixDQUFDO0lBRUQ7Ozs7Ozs7T0FPRztJQUNnQixZQUFZLENBQUMsS0FBVSxFQUFFLEdBQUcsSUFBVztRQUN4RCxPQUFPLElBQUksQ0FBQyxjQUFjLENBQUMsS0FBSyxFQUFFLEdBQUcsSUFBSSxDQUFDLENBQUM7SUFDN0MsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0gsNkRBQTZEO0lBQ3BELFdBQVcsQ0FBQyxHQUFXLEVBQUUsR0FBRyxJQUFXO1FBQzlDLE1BQU0sZUFBZSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDeEMsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDLGVBQWUsQ0FBTSxDQUFDO0lBQ2pELENBQUM7SUFFTyxjQUFjLENBQUMsS0FBVSxFQUFFLEdBQUcsSUFBVztRQUMvQyxJQUFJLEtBQUssS0FBSyxTQUFTLElBQUksS0FBSyxLQUFLLElBQUk7WUFBRSxPQUFPLEtBQUssQ0FBQztRQUN4RCxJQUFJLE9BQU8sS0FBSyxLQUFLLFFBQVE7WUFBRSxPQUFPLEtBQUssQ0FBQztRQUM1QyxJQUFJLEtBQUssWUFBWSxJQUFJO1lBQUUsT0FBTyxLQUFLLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDdEQsSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLEtBQUss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LENBQUMsS0FBMEI7UUFDOUMsTUFBTSxNQUFNLEdBQXdCLEVBQUUsQ0FBQztRQUN2QyxLQUFLLE1BQU0sQ0FBQyxHQUFHLEVBQUUsS0FBSyxDQUFDLElBQUksTUFBTSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDO1lBQ2pELElBQUksR0FBRyxLQUFLLFNBQVMsQ0FBQyxNQUFNO2dCQUFFLFNBQVM7WUFDdkMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDekMsQ0FBQztRQUNELE9BQU8sTUFBTSxDQUFDO0lBQ2hCLENBQUM7SUFFRDs7Ozs7T0FLRztJQUNILDZEQUE2RDtJQUNwRCxTQUFTLENBQUMsS0FBUSxFQUFFLEdBQUcsSUFBVztRQUN6QyxPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO0lBQ2xELENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEpTT05TZXJpYWxpemVyLFxuICBNb2RlbCxcbiAgTW9kZWxLZXlzLFxufSBmcm9tIFwiQGRlY2FmLXRzL2RlY29yYXRvci12YWxpZGF0aW9uXCI7XG5pbXBvcnQgeyBDb25zdHJ1Y3RvciwgTWV0YWRhdGEgfSBmcm9tIFwiQGRlY2FmLXRzL2RlY29yYXRpb25cIjtcbmltcG9ydCB7IENvbmRpdGlvbiB9IGZyb20gXCIuLi8uLi9xdWVyeS9Db25kaXRpb25cIjtcblxuZXhwb3J0IGNsYXNzIFRhc2tJT1NlcmlhbGl6ZXI8TSBleHRlbmRzIE1vZGVsPiBleHRlbmRzIEpTT05TZXJpYWxpemVyPE0+IHtcbiAgY29uc3RydWN0b3IoKSB7XG4gICAgc3VwZXIoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBAc3VtbWFyeSBwcmVwYXJlcyB0aGUgbW9kZWwgZm9yIHNlcmlhbGl6YXRpb25cbiAgICogQGRlc2NyaXB0aW9uIHJldHVybnMgYSBzaGFsbG93IGNvcHkgb2YgdGhlIG9iamVjdCwgY29udGFpbmluZyBhbiBlbnVtZXJhYmxlIHtAbGluayBNb2RlbEtleXMjQU5DSE9SfSBwcm9wZXJ0eVxuICAgKiBzbyB0aGUgb2JqZWN0IGNhbiBiZSByZWNvZ25pemVkIHVwb24gZGVzZXJpYWxpemF0aW9uXG4gICAqXG4gICAqIEBwYXJhbSB7YW55fSB2YWx1ZVxuICAgKiBAcHJvdGVjdGVkXG4gICAqL1xuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgcHJlU2VyaWFsaXplKHZhbHVlOiBhbnksIC4uLmFyZ3M6IGFueVtdKSB7XG4gICAgcmV0dXJuIHRoaXMuc2VyaWFsaXplVmFsdWUodmFsdWUsIC4uLmFyZ3MpO1xuICB9XG5cbiAgLyoqXG4gICAqIEBzdW1tYXJ5IFJlYnVpbGRzIGEgbW9kZWwgZnJvbSBhIHNlcmlhbGl6YXRpb25cbiAgICogQHBhcmFtIHtzdHJpbmd9IHN0clxuICAgKlxuICAgKiBAdGhyb3dzIHtFcnJvcn0gSWYgaXQgZmFpbHMgdG8gcGFyc2UgdGhlIHN0cmluZywgb3IgdG8gYnVpbGQgdGhlIG1vZGVsXG4gICAqL1xuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXVudXNlZC12YXJzXG4gIG92ZXJyaWRlIGRlc2VyaWFsaXplKHN0cjogc3RyaW5nLCAuLi5hcmdzOiBhbnlbXSk6IE0ge1xuICAgIGNvbnN0IGRlc2VyaWFsaXphdGlvbiA9IEpTT04ucGFyc2Uoc3RyKTtcbiAgICByZXR1cm4gdGhpcy5yZWJ1aWxkVmFsdWUoZGVzZXJpYWxpemF0aW9uKSBhcyBNO1xuICB9XG5cbiAgcHJpdmF0ZSBzZXJpYWxpemVWYWx1ZSh2YWx1ZTogYW55LCAuLi5hcmdzOiBhbnlbXSk6IGFueSB7XG4gICAgaWYgKHZhbHVlID09PSB1bmRlZmluZWQgfHwgdmFsdWUgPT09IG51bGwpIHJldHVybiB2YWx1ZTtcbiAgICBpZiAodHlwZW9mIHZhbHVlICE9PSBcIm9iamVjdFwiKSByZXR1cm4gdmFsdWU7XG4gICAgaWYgKHZhbHVlIGluc3RhbmNlb2YgRGF0ZSkgcmV0dXJuIHZhbHVlLnRvSVNPU3RyaW5nKCk7XG4gICAgaWYgKEFycmF5LmlzQXJyYXkodmFsdWUpKSB7XG4gICAgICByZXR1cm4gdmFsdWUubWFwKChpdGVtKSA9PiB0aGlzLnNlcmlhbGl6ZVZhbHVlKGl0ZW0sIC4uLmFyZ3MpKTtcbiAgICB9XG4gICAgaWYgKHZhbHVlIGluc3RhbmNlb2YgQ29uZGl0aW9uKSB7XG4gICAgICBjb25zdCBjb25kaXRpb24gPSB0aGlzLnNlcmlhbGl6ZVBsYWluKFxuICAgICAgICB2YWx1ZSBhcyBSZWNvcmQ8c3RyaW5nLCBhbnk+LFxuICAgICAgICAuLi5hcmdzXG4gICAgICApO1xuICAgICAgY29uZGl0aW9uW01vZGVsS2V5cy5BTkNIT1JdID0gXCI/P2NvbmRpdGlvblwiO1xuICAgICAgcmV0dXJuIGNvbmRpdGlvbjtcbiAgICB9XG4gICAgaWYgKE1vZGVsLmlzTW9kZWwodmFsdWUpKSB7XG4gICAgICByZXR1cm4gdGhpcy5zZXJpYWxpemVNb2RlbCh2YWx1ZSwgLi4uYXJncyk7XG4gICAgfVxuICAgIHJldHVybiB0aGlzLnNlcmlhbGl6ZVBsYWluKHZhbHVlLCAuLi5hcmdzKTtcbiAgfVxuXG4gIHByaXZhdGUgc2VyaWFsaXplTW9kZWwodmFsdWU6IE1vZGVsLCAuLi5hcmdzOiBhbnlbXSk6IFJlY29yZDxzdHJpbmcsIGFueT4ge1xuICAgIGNvbnN0IHNlcmlhbGl6ZWQgPSB0aGlzLnNlcmlhbGl6ZVBsYWluKFxuICAgICAgdmFsdWUgYXMgUmVjb3JkPHN0cmluZywgYW55PixcbiAgICAgIC4uLmFyZ3NcbiAgICApO1xuICAgIGNvbnN0IG1ldGFkYXRhID1cbiAgICAgIHRoaXMuZ2V0TWV0YWRhdGEodmFsdWUuY29uc3RydWN0b3IgYXMgQ29uc3RydWN0b3IpID8/XG4gICAgICB2YWx1ZS5jb25zdHJ1Y3Rvcj8ubmFtZTtcbiAgICBpZiAobWV0YWRhdGEpIHNlcmlhbGl6ZWRbTW9kZWxLZXlzLkFOQ0hPUl0gPSBtZXRhZGF0YTtcbiAgICByZXR1cm4gc2VyaWFsaXplZDtcbiAgfVxuXG4gIHByaXZhdGUgc2VyaWFsaXplUGxhaW4oXG4gICAgdmFsdWU6IFJlY29yZDxzdHJpbmcsIGFueT4sXG4gICAgLi4uYXJnczogYW55W11cbiAgKTogUmVjb3JkPHN0cmluZywgYW55PiB7XG4gICAgY29uc3QgcmVzdWx0OiBSZWNvcmQ8c3RyaW5nLCBhbnk+ID0ge307XG4gICAgZm9yIChjb25zdCBba2V5LCBjaGlsZF0gb2YgT2JqZWN0LmVudHJpZXModmFsdWUpKSB7XG4gICAgICByZXN1bHRba2V5XSA9IHRoaXMuc2VyaWFsaXplVmFsdWUoY2hpbGQsIC4uLmFyZ3MpO1xuICAgIH1cbiAgICByZXR1cm4gcmVzdWx0O1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRNZXRhZGF0YShjb25zdHJ1Y3RvcjogQ29uc3RydWN0b3IpOiBzdHJpbmcgfCB1bmRlZmluZWQge1xuICAgIHRyeSB7XG4gICAgICByZXR1cm4gTWV0YWRhdGEubW9kZWxOYW1lKGNvbnN0cnVjdG9yKTtcbiAgICB9IGNhdGNoIHtcbiAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSByZWJ1aWxkVmFsdWUodmFsdWU6IGFueSk6IGFueSB7XG4gICAgaWYgKHZhbHVlID09PSBudWxsIHx8IHR5cGVvZiB2YWx1ZSAhPT0gXCJvYmplY3RcIikgcmV0dXJuIHZhbHVlO1xuICAgIGlmIChBcnJheS5pc0FycmF5KHZhbHVlKSkge1xuICAgICAgcmV0dXJuIHZhbHVlLm1hcCgoaXRlbSkgPT4gdGhpcy5yZWJ1aWxkVmFsdWUoaXRlbSkpO1xuICAgIH1cbiAgICBjb25zdCBhbmNob3IgPSB2YWx1ZVtNb2RlbEtleXMuQU5DSE9SXTtcbiAgICBjb25zdCByZWJ1aWx0ID0gdGhpcy5yZWJ1aWxkT2JqZWN0KHZhbHVlKTtcbiAgICBpZiAoIWFuY2hvcikgcmV0dXJuIHJlYnVpbHQ7XG4gICAgaWYgKGFuY2hvciA9PT0gXCI/P2NvbmRpdGlvblwiKSByZXR1cm4gQ29uZGl0aW9uLmZyb20ocmVidWlsdCk7XG4gICAgcmV0dXJuIE1vZGVsLmJ1aWxkKHJlYnVpbHQsIGFuY2hvcik7XG4gIH1cblxuICBwcml2YXRlIHJlYnVpbGRPYmplY3QodmFsdWU6IFJlY29yZDxzdHJpbmcsIGFueT4pOiBSZWNvcmQ8c3RyaW5nLCBhbnk+IHtcbiAgICBjb25zdCByZXN1bHQ6IFJlY29yZDxzdHJpbmcsIGFueT4gPSB7fTtcbiAgICBmb3IgKGNvbnN0IFtrZXksIGNoaWxkXSBvZiBPYmplY3QuZW50cmllcyh2YWx1ZSkpIHtcbiAgICAgIGlmIChrZXkgPT09IE1vZGVsS2V5cy5BTkNIT1IpIGNvbnRpbnVlO1xuICAgICAgcmVzdWx0W2tleV0gPSB0aGlzLnJlYnVpbGRWYWx1ZShjaGlsZCk7XG4gICAgfVxuICAgIHJldHVybiByZXN1bHQ7XG4gIH1cblxuICAvKipcbiAgICogQHN1bW1hcnkgU2VyaWFsaXplcyBhIG1vZGVsXG4gICAqIEBwYXJhbSB7VH0gbW9kZWxcbiAgICpcbiAgICogQHRocm93cyB7RXJyb3J9IGlmIGZhaWxzIHRvIHNlcmlhbGl6ZVxuICAgKi9cbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby11bnVzZWQtdmFyc1xuICBvdmVycmlkZSBzZXJpYWxpemUobW9kZWw6IE0sIC4uLmFyZ3M6IGFueVtdKTogc3RyaW5nIHtcbiAgICByZXR1cm4gSlNPTi5zdHJpbmdpZnkodGhpcy5wcmVTZXJpYWxpemUobW9kZWwpKTtcbiAgfVxufVxuIl19
@@ -3,6 +3,7 @@ import { type ModelArg, Model } from "@decaf-ts/decorator-validation";
3
3
  export declare class TaskLogEntryModel extends Model {
4
4
  ts: Date;
5
5
  level: LogLevel;
6
+ step?: number;
6
7
  msg: string;
7
8
  meta?: any;
8
9
  constructor(arg?: ModelArg<TaskLogEntryModel>);
@@ -8,7 +8,7 @@ var __metadata = (this && this.__metadata) || function (k, v) {
8
8
  if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
9
9
  };
10
10
  import { LogLevel } from "@decaf-ts/logging";
11
- import { option, required, model, Model, date, } from "@decaf-ts/decorator-validation";
11
+ import { option, required, model, Model, date, min, } from "@decaf-ts/decorator-validation";
12
12
  import { prop } from "@decaf-ts/decoration";
13
13
  let TaskLogEntryModel = class TaskLogEntryModel extends Model {
14
14
  constructor(arg) {
@@ -26,6 +26,10 @@ __decorate([
26
26
  option(LogLevel),
27
27
  __metadata("design:type", String)
28
28
  ], TaskLogEntryModel.prototype, "level", void 0);
29
+ __decorate([
30
+ min(0),
31
+ __metadata("design:type", Number)
32
+ ], TaskLogEntryModel.prototype, "step", void 0);
29
33
  __decorate([
30
34
  required(),
31
35
  prop(),
@@ -40,4 +44,4 @@ TaskLogEntryModel = __decorate([
40
44
  __metadata("design:paramtypes", [Object])
41
45
  ], TaskLogEntryModel);
42
46
  export { TaskLogEntryModel };
43
- //# sourceMappingURL=TaskLogEntryModel.js.map
47
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVGFza0xvZ0VudHJ5TW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvdGFza3MvbW9kZWxzL1Rhc2tMb2dFbnRyeU1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7OztBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUM3QyxPQUFPLEVBQ0wsTUFBTSxFQUNOLFFBQVEsRUFDUixLQUFLLEVBRUwsS0FBSyxFQUNMLElBQUksRUFDSixHQUFHLEdBQ0osTUFBTSxnQ0FBZ0MsQ0FBQztBQUN4QyxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFHckMsSUFBTSxpQkFBaUIsR0FBdkIsTUFBTSxpQkFBa0IsU0FBUSxLQUFLO0lBbUIxQyxZQUFZLEdBQWlDO1FBQzNDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztRQWpCYixPQUFFLEdBQVMsSUFBSSxJQUFJLEVBQUUsQ0FBQztJQWtCdEIsQ0FBQztDQUNGLENBQUE7QUFuQkM7SUFGQyxJQUFJLEVBQUU7SUFDTixRQUFRLEVBQUU7OEJBQ1AsSUFBSTs2Q0FBYztBQUl0QjtJQUZDLFFBQVEsRUFBRTtJQUNWLE1BQU0sQ0FBQyxRQUFRLENBQUM7O2dEQUNBO0FBR2pCO0lBREMsR0FBRyxDQUFDLENBQUMsQ0FBQzs7K0NBQ087QUFJZDtJQUZDLFFBQVEsRUFBRTtJQUNWLElBQUksRUFBRTs7OENBQ007QUFHYjtJQURDLElBQUksRUFBRTs7K0NBQ0k7QUFqQkEsaUJBQWlCO0lBRDdCLEtBQUssRUFBRTs7R0FDSyxpQkFBaUIsQ0FzQjdCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTG9nTGV2ZWwgfSBmcm9tIFwiQGRlY2FmLXRzL2xvZ2dpbmdcIjtcbmltcG9ydCB7XG4gIG9wdGlvbixcbiAgcmVxdWlyZWQsXG4gIG1vZGVsLFxuICB0eXBlIE1vZGVsQXJnLFxuICBNb2RlbCxcbiAgZGF0ZSxcbiAgbWluLFxufSBmcm9tIFwiQGRlY2FmLXRzL2RlY29yYXRvci12YWxpZGF0aW9uXCI7XG5pbXBvcnQgeyBwcm9wIH0gZnJvbSBcIkBkZWNhZi10cy9kZWNvcmF0aW9uXCI7XG5cbkBtb2RlbCgpXG5leHBvcnQgY2xhc3MgVGFza0xvZ0VudHJ5TW9kZWwgZXh0ZW5kcyBNb2RlbCB7XG4gIEBkYXRlKClcbiAgQHJlcXVpcmVkKClcbiAgdHM6IERhdGUgPSBuZXcgRGF0ZSgpO1xuXG4gIEByZXF1aXJlZCgpXG4gIEBvcHRpb24oTG9nTGV2ZWwpXG4gIGxldmVsITogTG9nTGV2ZWw7XG5cbiAgQG1pbigwKVxuICBzdGVwPzogbnVtYmVyO1xuXG4gIEByZXF1aXJlZCgpXG4gIEBwcm9wKClcbiAgbXNnITogc3RyaW5nO1xuXG4gIEBwcm9wKClcbiAgbWV0YT86IGFueTtcblxuICBjb25zdHJ1Y3Rvcihhcmc/OiBNb2RlbEFyZzxUYXNrTG9nRW50cnlNb2RlbD4pIHtcbiAgICBzdXBlcihhcmcpO1xuICB9XG59XG4iXX0=
@@ -200,4 +200,4 @@ TaskModel = __decorate([
200
200
  __metadata("design:paramtypes", [Object])
201
201
  ], TaskModel);
202
202
  export { TaskModel };
203
- //# sourceMappingURL=TaskModel.js.map
203
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVGFza01vZGVsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL3Rhc2tzL21vZGVscy9UYXNrTW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0FBQUEsT0FBTyxFQUNMLElBQUksRUFDSixHQUFHLEVBQ0gsS0FBSyxFQUNMLEtBQUssRUFFTCxNQUFNLEVBQ04sUUFBUSxFQUNSLElBQUksR0FDTCxNQUFNLGdDQUFnQyxDQUFDO0FBQ3hDLE9BQU8sRUFBRSxFQUFFLEVBQUUsdUNBQWtDO0FBQy9DLE9BQU8sRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFFLDBCQUFxQjtBQUNwRCxPQUFPLEVBQUUsY0FBYyxFQUFFLDRCQUF5QjtBQUNsRCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsOEJBQTJCO0FBR3RELE9BQU8sRUFBRSxXQUFXLEVBQUUsSUFBSSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDekQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3BELE9BQU8sRUFDTCxNQUFNLEVBQ04sU0FBUyxFQUNULFNBQVMsRUFDVCxLQUFLLEVBQ0wsU0FBUyxFQUNULFNBQVMsR0FDVixvQ0FBK0I7QUFFaEMsT0FBTyxFQUFFLGdCQUFnQixFQUFFLDhCQUEyQjtBQUN0RCxPQUFPLEVBQUUsSUFBSSxFQUFFLHFDQUFnQztBQUMvQyxPQUFPLEVBQUUsS0FBSyxFQUFFLCtCQUEwQjtBQUMxQyxPQUFPLEVBQUUsY0FBYyxFQUFFLG9DQUErQjtBQUtqRCxJQUFNLFNBQVMsR0FBZixNQUFNLFNBQXFDLFNBQVEsS0FBSztJQTJKN0QsWUFBWSxHQUF5QjtRQUNuQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7UUF0SmIsOEJBQThCO1FBTzlCLGNBQVMsR0FBYSxRQUFRLENBQUMsTUFBTSxDQUFDLENBQUMscUNBQXFDO1FBYzVFLFlBQVk7UUFPWixXQUFNLEdBQWUsVUFBVSxDQUFDLE9BQU8sQ0FBQztRQW9C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RyxDQUFDLENBQUM7SUFDL0MsV0FBVyxDQUFDLCtCQUErQixDQUFDOzs0Q0FDMUI7QUF6SlIsU0FBUztJQUhyQixXQUFXLENBQUMsd0NBQXdDLENBQUM7SUFDckQsS0FBSyxDQUFDLE9BQU8sQ0FBQztJQUNkLEtBQUssRUFBRTs7R0FDSyxTQUFTLENBOEpyQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIGRhdGUsXG4gIG1pbixcbiAgTW9kZWwsXG4gIG1vZGVsLFxuICB0eXBlIE1vZGVsQXJnLFxuICBvcHRpb24sXG4gIHJlcXVpcmVkLFxuICB0eXBlLFxufSBmcm9tIFwiQGRlY2FmLXRzL2RlY29yYXRvci12YWxpZGF0aW9uXCI7XG5pbXBvcnQgeyBwayB9IGZyb20gXCIuLi8uLi9pZGVudGl0eS9kZWNvcmF0b3JzXCI7XG5pbXBvcnQgeyBUYXNrU3RhdHVzLCBUYXNrVHlwZSB9IGZyb20gXCIuLi9jb25zdGFudHNcIjtcbmltcG9ydCB7IFRhc2tFcnJvck1vZGVsIH0gZnJvbSBcIi4vVGFza0Vycm9yTW9kZWxcIjtcbmltcG9ydCB7IFRhc2tCYWNrb2ZmTW9kZWwgfSBmcm9tIFwiLi9UYXNrQmFja29mZk1vZGVsXCI7XG5pbXBvcnQgeyBUYXNrU3RlcFNwZWNNb2RlbCB9IGZyb20gXCIuL1Rhc2tTdGVwU3BlY01vZGVsXCI7XG5pbXBvcnQgeyBUYXNrU3RlcFJlc3VsdE1vZGVsIH0gZnJvbSBcIi4vVGFza1N0ZXBSZXN1bHRNb2RlbFwiO1xuaW1wb3J0IHsgZGVzY3JpcHRpb24sIHByb3AgfSBmcm9tIFwiQGRlY2FmLXRzL2RlY29yYXRpb25cIjtcbmltcG9ydCB7IHNlcmlhbGl6ZSB9IGZyb20gXCJAZGVjYWYtdHMvZGItZGVjb3JhdG9yc1wiO1xuaW1wb3J0IHtcbiAgY29sdW1uLFxuICBjcmVhdGVkQXQsXG4gIGNyZWF0ZWRCeSxcbiAgdGFibGUsXG4gIHVwZGF0ZWRBdCxcbiAgdXBkYXRlZEJ5LFxufSBmcm9tIFwiLi4vLi4vbW9kZWwvZGVjb3JhdG9yc1wiO1xuaW1wb3J0IHsgVGFza0xvZ0VudHJ5TW9kZWwgfSBmcm9tIFwiLi9UYXNrTG9nRW50cnlNb2RlbFwiO1xuaW1wb3J0IHsgVGFza0lPU2VyaWFsaXplciB9IGZyb20gXCIuL1Rhc2tJT1NlcmlhbGl6ZXJcIjtcbmltcG9ydCB7IHV1aWQgfSBmcm9tIFwiLi4vLi4vcGVyc2lzdGVuY2UvaW5kZXhcIjtcbmltcG9ydCB7IGluZGV4IH0gZnJvbSBcIi4uLy4uL21vZGVsL2luZGV4XCI7XG5pbXBvcnQgeyBPcmRlckRpcmVjdGlvbiB9IGZyb20gXCIuLi8uLi9yZXBvc2l0b3J5L2luZGV4XCI7XG5cbkBkZXNjcmlwdGlvbihcIkhvbGRzIHRoZSBjdXJyZW50IHN0ZXAgd2hlbiBhcHBsaWNhYmxlXCIpXG5AdGFibGUoXCJ0YXNrc1wiKVxuQG1vZGVsKClcbmV4cG9ydCBjbGFzcyBUYXNrTW9kZWw8SU5QVVQgPSBhbnksIE9VVFBVVCA9IGFueT4gZXh0ZW5kcyBNb2RlbCB7XG4gIEBwaygpXG4gIEB1dWlkKClcbiAgQGRlc2NyaXB0aW9uKFwidGhlIHRhc2sgaWRcIilcbiAgaWQhOiBzdHJpbmc7XG5cbiAgLy8gcmVxdWlyZWQgcm91dGluZyAvIGlkZW50aXR5XG4gIEBjb2x1bW4oKVxuICBAcmVxdWlyZWQoKVxuICBAdHlwZShTdHJpbmcpXG4gIEBvcHRpb24oVGFza1R5cGUpXG4gIEBpbmRleChbT3JkZXJEaXJlY3Rpb24uQVNDLCBPcmRlckRpcmVjdGlvbi5EU0NdKVxuICBAZGVzY3JpcHRpb24oXCJkZWZpbmVzIGEgc2luZ2xlIG9yIGNvbXBvc2l0ZSB0YXNrXCIpXG4gIGF0b21pY2l0eTogVGFza1R5cGUgPSBUYXNrVHlwZS5BVE9NSUM7IC8vIGF0b21pYyBoYW5kbGVyIHR5cGUgT1IgXCJjb21wb3NpdGVcIlxuXG4gIEBjb2x1bW4oKVxuICBAcmVxdWlyZWQoKVxuICBAaW5kZXgoW09yZGVyRGlyZWN0aW9uLkFTQywgT3JkZXJEaXJlY3Rpb24uRFNDXSlcbiAgQGRlc2NyaXB0aW9uKFwiSG9sZHMgdGFzayBjbGFzc2lmaWNhdGlvbiAtIG11c3QgbWF0Y2ggQHRhc2soKVwiKVxuICBjbGFzc2lmaWNhdGlvbiE6IHN0cmluZztcblxuICBAY29sdW1uKClcbiAgQHByb3AoKVxuICBAaW5kZXgoW09yZGVyRGlyZWN0aW9uLkFTQywgT3JkZXJEaXJlY3Rpb24uRFNDXSlcbiAgQGRlc2NyaXB0aW9uKFwib3B0aW9uYWwgdGFzayBuYW1lIGZvciBhbWJpZ3VpdHlcIilcbiAgbmFtZT86IHN0cmluZztcblxuICAvLyBleGVjdXRpb25cbiAgQGNvbHVtbigpXG4gIEByZXF1aXJlZCgpXG4gIEB0eXBlKFN0cmluZylcbiAgQG9wdGlvbihUYXNrU3RhdHVzKVxuICBAaW5kZXgoW09yZGVyRGlyZWN0aW9uLkFTQywgT3JkZXJEaXJlY3Rpb24uRFNDXSlcbiAgQGRlc2NyaXB0aW9uKFwiSG9sZHMgdGhlIHRhc2sgY3VycmVudCBzdGF0dXNcIilcbiAgc3RhdHVzOiBUYXNrU3RhdHVzID0gVGFza1N0YXR1cy5QRU5ESU5HO1xuXG4gIEBwcm9wKClcbiAgQGNvbHVtbigpXG4gIEBzZXJpYWxpemUoVGFza0lPU2VyaWFsaXplcilcbiAgQGRlc2NyaXB0aW9uKFwiSG9sZHMgdGFzayBpbnB1dFwiKVxuICBpbnB1dD86IElOUFVUO1xuXG4gIEBwcm9wKClcbiAgQGNvbHVtbigpXG4gIEBzZXJpYWxpemUoVGFza0lPU2VyaWFsaXplcilcbiAgQGRlc2NyaXB0aW9uKFwiSG9sZHMgdGhlIHRhc2sgb3V0cHV0IHdoZW4gc3VjY2Vzc2Z1bGx5IGNvbXBsZXRlZFwiKVxuICBvdXRwdXQ/OiBPVVRQVVQ7XG5cbiAgQHByb3AoKVxuICBAY29sdW1uKClcbiAgQHNlcmlhbGl6ZSgpXG4gIEBkZXNjcmlwdGlvbihcIkhvbGRzIHRoZSBlcnJvciBmb3IgZmFpbGVkIHRhc2tzXCIpXG4gIGVycm9yPzogVGFza0Vycm9yTW9kZWw7XG5cbiAgLy8gcmV0cmllc1xuICBAY29sdW1uKClcbiAgQHJlcXVpcmVkKClcbiAgQG1pbigwKVxuICBAaW5kZXgoW09yZGVyRGlyZWN0aW9uLkFTQywgT3JkZXJEaXJlY3Rpb24uRFNDXSlcbiAgQGRlc2NyaXB0aW9uKFwiSG9sZHMgdGhlIGN1cnJlbnQgYXR0ZW1wdFwiKVxuICBhdHRlbXB0OiBudW1iZXIgPSAwO1xuXG4gIEBjb2x1bW4oKVxuICBAbWluKDEpXG4gIEByZXF1aXJlZCgpXG4gIEBkZXNjcmlwdGlvbihcIm1heCBhdHRlbXB0cyBmb3IgdGhlIHRhc2tcIilcbiAgbWF4QXR0ZW1wdHMhOiBudW1iZXI7XG5cbiAgQGNvbHVtbigpXG4gIEByZXF1aXJlZCgpXG4gIEBzZXJpYWxpemUoKVxuICBAZGVzY3JpcHRpb24oXCJiYWNrb2ZmIGNvbmZpZ3VyYXRpb25cIilcbiAgYmFja29mZiE6IFRhc2tCYWNrb2ZmTW9kZWw7XG5cbiAgQGRhdGUoKVxuICBAY29sdW1uKClcbiAgQGRlc2NyaXB0aW9uKFwiTmV4dCBleGVjdXRpb24gdGltZXN0YW1wXCIpXG4gIG5leHRSdW5BdD86IERhdGU7XG5cbiAgQGRhdGUoKVxuICBAY29sdW1uKClcbiAgQGRlc2NyaXB0aW9uKFwiVGFzayBzY2hlZHVsZWQgdGltZXN0YW1wXCIpXG4gIHNjaGVkdWxlZFRvPzogRGF0ZTtcblxuICAvLyB3b3JrZXIgbGVhc2UgLyBjbGFpbVxuICBAcHJvcCgpXG4gIEBjb2x1bW4oKVxuICBAZGVzY3JpcHRpb24oXCJUYXNrIGxlYXNlIG93bmVyIGlkZW50aWZpZXJcIilcbiAgbGVhc2VPd25lcj86IHN0cmluZztcblxuICBAZGF0ZSgpXG4gIEBjb2x1bW4oKVxuICBAZGVzY3JpcHRpb24oXCJUYXNrIGxlYXNlIGV4cGlyYXRpb24gdGltZXN0YW1wXCIpXG4gIGxlYXNlRXhwaXJ5PzogRGF0ZTtcblxuICAvLyBjb21wb3NpdGVcbiAgQHByb3AoKVxuICBAY29sdW1uKClcbiAgQHNlcmlhbGl6ZSgpXG4gIEBkZXNjcmlwdGlvbihcbiAgICBcIkhvbGRzIHRoZSB2YXJpb3VzIHN0ZXBzIGRlZmluaXRpb24gYW5kIGlucHV0cyAtIG9ubHkgZm9yIHR5cGUgPT09ICdjb21wb3NpdGUnXCJcbiAgKVxuICBzdGVwcz86IFRhc2tTdGVwU3BlY01vZGVsW107IC8vIG9ubHkgZm9yIHR5cGUgPT09IFwiY29tcG9zaXRlXCJcblxuICBAcHJvcCgpXG4gIEBjb2x1bW4oKVxuICBAbWluKDApXG4gIEBpbmRleChbT3JkZXJEaXJlY3Rpb24uQVNDLCBPcmRlckRpcmVjdGlvbi5EU0NdKVxuICBAZGVzY3JpcHRpb24oXCJIb2xkcyB0aGUgY3VycmVudCBzdGVwIC0gb25seSBmb3IgdHlwZSA9PT0gJ2NvbXBvc2l0ZSdcIilcbiAgY3VycmVudFN0ZXA/OiBudW1iZXI7IC8vIGluZGV4IG9mIG5leHQgc3RlcCB0byBydW5cblxuICBAcHJvcCgpXG4gIEBjb2x1bW4oKVxuICBAc2VyaWFsaXplKClcbiAgQGRlc2NyaXB0aW9uKFwiSG9sZHMgdGhlIHN0ZXAgcmVzdWx0cyAtIG9ubHkgZm9yIHR5cGUgPT09ICdjb21wb3NpdGUnXCIpXG4gIHN0ZXBSZXN1bHRzPzogVGFza1N0ZXBSZXN1bHRNb2RlbFtdO1xuXG4gIEBwcm9wKClcbiAgQGNvbHVtbigpXG4gIEBzZXJpYWxpemUoKVxuICBAZGVzY3JpcHRpb24oXCJIb2xkcyB0aGUgdGFzayBsb2cgZW50cmllc1wiKVxuICBsb2dUYWlsPzogVGFza0xvZ0VudHJ5TW9kZWxbXSA9IFtdO1xuXG4gIC8qKlxuICAgKiBAZGVzY3JpcHRpb24gQ3JlYXRpb24gdGltZXN0YW1wIGZvciB0aGUgbW9kZWxcbiAgICogQHN1bW1hcnkgQXV0b21hdGljYWxseSBzZXQgdG8gdGhlIGN1cnJlbnQgZGF0ZSBhbmQgdGltZSB3aGVuIHRoZSBtb2RlbCBpcyBjcmVhdGVkXG4gICAqL1xuICBAY29sdW1uKClcbiAgQGNyZWF0ZWRBdCgpXG4gIEBpbmRleChbT3JkZXJEaXJlY3Rpb24uQVNDLCBPcmRlckRpcmVjdGlvbi5EU0NdKVxuICBAZGVzY3JpcHRpb24oXCJ0aW1lc3RhbXAgb2YgY3JlYXRpb25cIilcbiAgY3JlYXRlZEF0ITogRGF0ZTtcblxuICAvKipcbiAgICogQGRlc2NyaXB0aW9uIExhc3QgdXBkYXRlIHRpbWVzdGFtcCBmb3IgdGhlIG1vZGVsXG4gICAqIEBzdW1tYXJ5IEF1dG9tYXRpY2FsbHkgdXBkYXRlZCB0byB0aGUgY3VycmVudCBkYXRlIGFuZCB0aW1lIHdoZW5ldmVyIHRoZSBtb2RlbCBpcyBtb2RpZmllZFxuICAgKi9cbiAgQGNvbHVtbigpXG4gIEB1cGRhdGVkQXQoKVxuICBAaW5kZXgoW09yZGVyRGlyZWN0aW9uLkFTQywgT3JkZXJEaXJlY3Rpb24uRFNDXSlcbiAgQGRlc2NyaXB0aW9uKFwidGltZXN0YW1wIG9mIGxhc3QgdXBkYXRlXCIpXG4gIHVwZGF0ZWRBdCE6IERhdGU7XG5cbiAgQGNvbHVtbigpXG4gIEBjcmVhdGVkQnkoKVxuICBAaW5kZXgoW09yZGVyRGlyZWN0aW9uLkFTQywgT3JkZXJEaXJlY3Rpb24uRFNDXSlcbiAgQGRlc2NyaXB0aW9uKFwiSG9sZHMgdGhlIGNyZWF0b3Igb2YgdGhlIHRhc2tcIilcbiAgY3JlYXRlZEJ5ITogc3RyaW5nO1xuXG4gIEBjb2x1bW4oKVxuICBAdXBkYXRlZEJ5KClcbiAgQGluZGV4KFtPcmRlckRpcmVjdGlvbi5BU0MsIE9yZGVyRGlyZWN0aW9uLkRTQ10pXG4gIEBkZXNjcmlwdGlvbihcIkhvbGRzIHRoZSBjcmVhdG9yIG9mIHRoZSB0YXNrXCIpXG4gIHVwZGF0ZWRCeSE6IHN0cmluZztcblxuICBjb25zdHJ1Y3Rvcihhcmc/OiBNb2RlbEFyZzxUYXNrTW9kZWw+KSB7XG4gICAgc3VwZXIoYXJnKTtcbiAgfVxufVxuIl19
@@ -36,4 +36,4 @@ TaskStepResultModel = __decorate([
36
36
  __metadata("design:paramtypes", [Object])
37
37
  ], TaskStepResultModel);
38
38
  export { TaskStepResultModel };
39
- //# sourceMappingURL=TaskStepResultModel.js.map
39
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVGFza1N0ZXBSZXN1bHRNb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy90YXNrcy9tb2RlbHMvVGFza1N0ZXBSZXN1bHRNb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7QUFBQSxPQUFPLEVBQ0wsS0FBSyxFQUNMLEtBQUssRUFFTCxRQUFRLEdBQ1QsTUFBTSxnQ0FBZ0MsQ0FBQztBQUN4QyxPQUFPLEVBQUUsVUFBVSxFQUFFLDBCQUFxQjtBQUMxQyxPQUFPLEVBQUUsY0FBYyxFQUFFLDRCQUF5QjtBQUNsRCxPQUFPLEVBQUUsV0FBVyxFQUFFLElBQUksRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBR2xELElBQU0sbUJBQW1CLEdBQXpCLE1BQU0sbUJBQW9CLFNBQVEsS0FBSztJQWE1QyxZQUFZLEdBQW1DO1FBQzdDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUNiLENBQUM7Q0FDRixDQUFBO0FBYkM7SUFGQyxRQUFRLEVBQUU7SUFDVixXQUFXLENBQUMsc0JBQXNCLENBQUM7O21EQUNoQjtBQUlwQjtJQUZDLElBQUksRUFBRTtJQUNOLFdBQVcsQ0FBQyxpQ0FBaUMsQ0FBQzs7bURBQ2xDO0FBSWI7SUFGQyxJQUFJLEVBQUU7SUFDTixXQUFXLENBQUMsNEJBQTRCLENBQUM7OEJBQ2xDLGNBQWM7a0RBQUM7QUFYWixtQkFBbUI7SUFEL0IsS0FBSyxFQUFFOztHQUNLLG1CQUFtQixDQWdCL0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBNb2RlbCxcbiAgbW9kZWwsXG4gIHR5cGUgTW9kZWxBcmcsXG4gIHJlcXVpcmVkLFxufSBmcm9tIFwiQGRlY2FmLXRzL2RlY29yYXRvci12YWxpZGF0aW9uXCI7XG5pbXBvcnQgeyBUYXNrU3RhdHVzIH0gZnJvbSBcIi4uL2NvbnN0YW50c1wiO1xuaW1wb3J0IHsgVGFza0Vycm9yTW9kZWwgfSBmcm9tIFwiLi9UYXNrRXJyb3JNb2RlbFwiO1xuaW1wb3J0IHsgZGVzY3JpcHRpb24sIHByb3AgfSBmcm9tIFwiQGRlY2FmLXRzL2RlY29yYXRpb25cIjtcblxuQG1vZGVsKClcbmV4cG9ydCBjbGFzcyBUYXNrU3RlcFJlc3VsdE1vZGVsIGV4dGVuZHMgTW9kZWwge1xuICBAcmVxdWlyZWQoKVxuICBAZGVzY3JpcHRpb24oXCJUaGUgc3RhdHVzIG9mIGEgc3RlcFwiKVxuICBzdGF0dXMhOiBUYXNrU3RhdHVzO1xuXG4gIEBwcm9wKClcbiAgQGRlc2NyaXB0aW9uKFwiVGhlIHJlc3VsdCBvZiBhIHN1Y2Nlc3NmdWwgc3RlcFwiKVxuICBvdXRwdXQ/OiBhbnk7XG5cbiAgQHByb3AoKVxuICBAZGVzY3JpcHRpb24oXCJ0aGUgZXJyb3Igb2YgYSBmYWlsZWQgc3RlcFwiKVxuICBlcnJvcj86IFRhc2tFcnJvck1vZGVsO1xuXG4gIGNvbnN0cnVjdG9yKGFyZz86IE1vZGVsQXJnPFRhc2tTdGVwUmVzdWx0TW9kZWw+KSB7XG4gICAgc3VwZXIoYXJnKTtcbiAgfVxufVxuIl19
@@ -1,6 +1,7 @@
1
1
  import { Model, type ModelArg } from "@decaf-ts/decorator-validation";
2
2
  export declare class TaskStepSpecModel extends Model {
3
3
  classification: string;
4
+ name?: string;
4
5
  input?: any;
5
6
  constructor(arg?: ModelArg<TaskStepSpecModel>);
6
7
  }
@@ -7,7 +7,7 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
7
7
  var __metadata = (this && this.__metadata) || function (k, v) {
8
8
  if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
9
9
  };
10
- import { Model, model, required, } from "@decaf-ts/decorator-validation";
10
+ import { minlength, Model, model, required, } from "@decaf-ts/decorator-validation";
11
11
  import { description, prop } from "@decaf-ts/decoration";
12
12
  let TaskStepSpecModel = class TaskStepSpecModel extends Model {
13
13
  constructor(arg) {
@@ -16,10 +16,14 @@ let TaskStepSpecModel = class TaskStepSpecModel extends Model {
16
16
  };
17
17
  __decorate([
18
18
  required(),
19
- prop(),
20
19
  description("task handler type"),
21
20
  __metadata("design:type", String)
22
21
  ], TaskStepSpecModel.prototype, "classification", void 0);
22
+ __decorate([
23
+ minlength(1),
24
+ description("optional task name for ambiguity"),
25
+ __metadata("design:type", String)
26
+ ], TaskStepSpecModel.prototype, "name", void 0);
23
27
  __decorate([
24
28
  description("optional task step input"),
25
29
  prop(),
@@ -30,4 +34,4 @@ TaskStepSpecModel = __decorate([
30
34
  __metadata("design:paramtypes", [Object])
31
35
  ], TaskStepSpecModel);
32
36
  export { TaskStepSpecModel };
33
- //# sourceMappingURL=TaskStepSpecModel.js.map
37
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVGFza1N0ZXBTcGVjTW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvdGFza3MvbW9kZWxzL1Rhc2tTdGVwU3BlY01vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7OztBQUFBLE9BQU8sRUFDTCxTQUFTLEVBQ1QsS0FBSyxFQUNMLEtBQUssRUFFTCxRQUFRLEdBQ1QsTUFBTSxnQ0FBZ0MsQ0FBQztBQUN4QyxPQUFPLEVBQUUsV0FBVyxFQUFFLElBQUksRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBR2xELElBQU0saUJBQWlCLEdBQXZCLE1BQU0saUJBQWtCLFNBQVEsS0FBSztJQWExQyxZQUFZLEdBQWlDO1FBQzNDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUNiLENBQUM7Q0FDRixDQUFBO0FBYkM7SUFGQyxRQUFRLEVBQUU7SUFDVixXQUFXLENBQUMsbUJBQW1CLENBQUM7O3lEQUNUO0FBSXhCO0lBRkMsU0FBUyxDQUFDLENBQUMsQ0FBQztJQUNaLFdBQVcsQ0FBQyxrQ0FBa0MsQ0FBQzs7K0NBQ2xDO0FBSWQ7SUFGQyxXQUFXLENBQUMsMEJBQTBCLENBQUM7SUFDdkMsSUFBSSxFQUFFOztnREFDSztBQVhELGlCQUFpQjtJQUQ3QixLQUFLLEVBQUU7O0dBQ0ssaUJBQWlCLENBZ0I3QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIG1pbmxlbmd0aCxcbiAgTW9kZWwsXG4gIG1vZGVsLFxuICB0eXBlIE1vZGVsQXJnLFxuICByZXF1aXJlZCxcbn0gZnJvbSBcIkBkZWNhZi10cy9kZWNvcmF0b3ItdmFsaWRhdGlvblwiO1xuaW1wb3J0IHsgZGVzY3JpcHRpb24sIHByb3AgfSBmcm9tIFwiQGRlY2FmLXRzL2RlY29yYXRpb25cIjtcblxuQG1vZGVsKClcbmV4cG9ydCBjbGFzcyBUYXNrU3RlcFNwZWNNb2RlbCBleHRlbmRzIE1vZGVsIHtcbiAgQHJlcXVpcmVkKClcbiAgQGRlc2NyaXB0aW9uKFwidGFzayBoYW5kbGVyIHR5cGVcIilcbiAgY2xhc3NpZmljYXRpb24hOiBzdHJpbmc7IC8vIGhhbmRsZXIgdHlwZVxuXG4gIEBtaW5sZW5ndGgoMSlcbiAgQGRlc2NyaXB0aW9uKFwib3B0aW9uYWwgdGFzayBuYW1lIGZvciBhbWJpZ3VpdHlcIilcbiAgbmFtZT86IHN0cmluZztcblxuICBAZGVzY3JpcHRpb24oXCJvcHRpb25hbCB0YXNrIHN0ZXAgaW5wdXRcIilcbiAgQHByb3AoKVxuICBpbnB1dD86IGFueTtcblxuICBjb25zdHJ1Y3Rvcihhcmc/OiBNb2RlbEFyZzxUYXNrU3RlcFNwZWNNb2RlbD4pIHtcbiAgICBzdXBlcihhcmcpO1xuICB9XG59XG4iXX0=
@@ -6,4 +6,4 @@ export * from "./TaskLogEntryModel.js";
6
6
  export * from "./TaskModel.js";
7
7
  export * from "./TaskStepResultModel.js";
8
8
  export * from "./TaskStepSpecModel.js";
9
- //# sourceMappingURL=index.js.map
9
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvdGFza3MvbW9kZWxzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLHNDQUFtQztBQUNuQyxvQ0FBaUM7QUFDakMsb0NBQWlDO0FBQ2pDLHNDQUFtQztBQUNuQyx1Q0FBb0M7QUFDcEMsK0JBQTRCO0FBQzVCLHlDQUFzQztBQUN0Qyx1Q0FBb0MiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tIFwiLi9UYXNrQmFja29mZk1vZGVsXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9UYXNrRXJyb3JNb2RlbFwiO1xuZXhwb3J0ICogZnJvbSBcIi4vVGFza0V2ZW50TW9kZWxcIjtcbmV4cG9ydCAqIGZyb20gXCIuL1Rhc2tJT1NlcmlhbGl6ZXJcIjtcbmV4cG9ydCAqIGZyb20gXCIuL1Rhc2tMb2dFbnRyeU1vZGVsXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9UYXNrTW9kZWxcIjtcbmV4cG9ydCAqIGZyb20gXCIuL1Rhc2tTdGVwUmVzdWx0TW9kZWxcIjtcbmV4cG9ydCAqIGZyb20gXCIuL1Rhc2tTdGVwU3BlY01vZGVsXCI7XG4iXX0=
@@ -1,7 +1,8 @@
1
1
  import { TaskContext } from "./TaskContext";
2
2
  import { TaskLogger } from "./logging";
3
3
  import { LogLevel } from "@decaf-ts/logging";
4
- import { Adapter, ContextFlags, FlagsOf } from "../persistence/index";
4
+ import { Adapter, ContextFlags } from "../persistence/index";
5
+ import { ConfOf } from "../persistence/types";
5
6
  import { TaskEventBus } from "./TaskEventBus";
6
7
  import { TaskHandlerRegistry } from "./TaskHandlerRegistry";
7
8
  import { TaskEventModel } from "./models/TaskEventModel";
@@ -17,7 +18,11 @@ export type LogPipeOptions = {
17
18
  logStatus: boolean;
18
19
  };
19
20
  export type EventPipe = (evt: TaskEventModel, ...args: any[]) => Promise<void>;
20
- export type LogPipe = (logs: [LogLevel, string, any][]) => Promise<void>;
21
+ export interface LogPipe {
22
+ (logs: [LogLevel, string, any][]): Promise<void>;
23
+ (entry: [LogLevel, string] | [LogLevel, string, any]): Promise<void>;
24
+ (level: LogLevel, msg: string, meta?: any): Promise<void>;
25
+ }
21
26
  export interface TaskFlags<LOG extends TaskLogger<any> = TaskLogger<any>> extends ContextFlags<LOG> {
22
27
  taskId: string;
23
28
  attempt: number;
@@ -29,7 +34,7 @@ export interface TaskFlags<LOG extends TaskLogger<any> = TaskLogger<any>> extend
29
34
  }
30
35
  export type TaskEngineConfig<A extends Adapter<any, any, any, any>> = {
31
36
  adapter: A;
32
- overrides?: Partial<FlagsOf<A>>;
37
+ overrides?: Partial<ConfOf<A>>;
33
38
  bus?: TaskEventBus;
34
39
  registry?: TaskHandlerRegistry;
35
40
  workerId: string;