@acorex-platform/framework-server 0.0.30 → 0.0.33

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 (245) hide show
  1. package/background-job/src/index.d.ts +3 -0
  2. package/background-job/src/index.d.ts.map +1 -1
  3. package/background-job/src/index.js +3 -0
  4. package/background-job/src/index.js.map +1 -1
  5. package/background-job/src/lib/background-job.module.d.ts +3 -0
  6. package/background-job/src/lib/background-job.module.d.ts.map +1 -1
  7. package/background-job/src/lib/background-job.module.js +13 -1
  8. package/background-job/src/lib/background-job.module.js.map +1 -1
  9. package/background-job/src/lib/background-job.service.d.ts +9 -2
  10. package/background-job/src/lib/background-job.service.d.ts.map +1 -1
  11. package/background-job/src/lib/background-job.service.js +42 -2
  12. package/background-job/src/lib/background-job.service.js.map +1 -1
  13. package/background-job/src/lib/command-concurrency-lock.registrar.d.ts +14 -0
  14. package/background-job/src/lib/command-concurrency-lock.registrar.d.ts.map +1 -0
  15. package/background-job/src/lib/command-concurrency-lock.registrar.js +29 -0
  16. package/background-job/src/lib/command-concurrency-lock.registrar.js.map +1 -0
  17. package/background-job/src/lib/execution/background-job-cancellation.service.d.ts +5 -1
  18. package/background-job/src/lib/execution/background-job-cancellation.service.d.ts.map +1 -1
  19. package/background-job/src/lib/execution/background-job-cancellation.service.js +11 -2
  20. package/background-job/src/lib/execution/background-job-cancellation.service.js.map +1 -1
  21. package/background-job/src/lib/execution/background-job-execution.service.d.ts +15 -2
  22. package/background-job/src/lib/execution/background-job-execution.service.d.ts.map +1 -1
  23. package/background-job/src/lib/execution/background-job-execution.service.js +145 -8
  24. package/background-job/src/lib/execution/background-job-execution.service.js.map +1 -1
  25. package/background-job/src/lib/notification/background-job-notification.port.d.ts +20 -0
  26. package/background-job/src/lib/notification/background-job-notification.port.d.ts.map +1 -0
  27. package/background-job/src/lib/notification/background-job-notification.port.js +31 -0
  28. package/background-job/src/lib/notification/background-job-notification.port.js.map +1 -0
  29. package/background-job/src/lib/queue/background-job-recovery.service.d.ts +22 -0
  30. package/background-job/src/lib/queue/background-job-recovery.service.d.ts.map +1 -0
  31. package/background-job/src/lib/queue/background-job-recovery.service.js +101 -0
  32. package/background-job/src/lib/queue/background-job-recovery.service.js.map +1 -0
  33. package/background-job/src/lib/schedule/background-job-schedule-scanner.service.d.ts.map +1 -1
  34. package/background-job/src/lib/schedule/background-job-schedule-scanner.service.js +18 -12
  35. package/background-job/src/lib/schedule/background-job-schedule-scanner.service.js.map +1 -1
  36. package/background-job/src/lib/store/background-job-attempt-store.service.d.ts +12 -0
  37. package/background-job/src/lib/store/background-job-attempt-store.service.d.ts.map +1 -1
  38. package/background-job/src/lib/store/background-job-attempt-store.service.js +30 -0
  39. package/background-job/src/lib/store/background-job-attempt-store.service.js.map +1 -1
  40. package/background-job/src/lib/store/background-job-schedule-store.service.d.ts +5 -1
  41. package/background-job/src/lib/store/background-job-schedule-store.service.d.ts.map +1 -1
  42. package/background-job/src/lib/store/background-job-schedule-store.service.js +8 -4
  43. package/background-job/src/lib/store/background-job-schedule-store.service.js.map +1 -1
  44. package/background-job/src/lib/store/background-job-store.service.d.ts +25 -3
  45. package/background-job/src/lib/store/background-job-store.service.d.ts.map +1 -1
  46. package/background-job/src/lib/store/background-job-store.service.js +54 -26
  47. package/background-job/src/lib/store/background-job-store.service.js.map +1 -1
  48. package/background-job/src/lib/store/jql-filter.util.d.ts +1 -0
  49. package/background-job/src/lib/store/jql-filter.util.d.ts.map +1 -1
  50. package/background-job/src/lib/store/jql-filter.util.js +4 -0
  51. package/background-job/src/lib/store/jql-filter.util.js.map +1 -1
  52. package/background-job/src/lib/tray/background-job-tray-realtime.publisher.d.ts +17 -0
  53. package/background-job/src/lib/tray/background-job-tray-realtime.publisher.d.ts.map +1 -0
  54. package/background-job/src/lib/tray/background-job-tray-realtime.publisher.js +61 -0
  55. package/background-job/src/lib/tray/background-job-tray-realtime.publisher.js.map +1 -0
  56. package/core/src/lib/entity-storage/entity-mutation-events/entity-mutation-event-emitter.service.d.ts +2 -1
  57. package/core/src/lib/entity-storage/entity-mutation-events/entity-mutation-event-emitter.service.d.ts.map +1 -1
  58. package/core/src/lib/entity-storage/entity-mutation-events/entity-mutation-event-emitter.service.js +3 -0
  59. package/core/src/lib/entity-storage/entity-mutation-events/entity-mutation-event-emitter.service.js.map +1 -1
  60. package/core/src/lib/entity-storage/entity-mutation-events/entity-mutation-event.types.d.ts +12 -0
  61. package/core/src/lib/entity-storage/entity-mutation-events/entity-mutation-event.types.d.ts.map +1 -1
  62. package/core/src/lib/entity-storage/entity-mutation-events/entity-mutation-event.types.js +6 -1
  63. package/core/src/lib/entity-storage/entity-mutation-events/entity-mutation-event.types.js.map +1 -1
  64. package/core/src/lib/entity-storage/entity-storage-middleware.service.d.ts +3 -2
  65. package/core/src/lib/entity-storage/entity-storage-middleware.service.d.ts.map +1 -1
  66. package/core/src/lib/entity-storage/entity-storage-middleware.service.js +6 -2
  67. package/core/src/lib/entity-storage/entity-storage-middleware.service.js.map +1 -1
  68. package/core/src/lib/runtime/index.d.ts +3 -0
  69. package/core/src/lib/runtime/index.d.ts.map +1 -1
  70. package/core/src/lib/runtime/index.js +3 -0
  71. package/core/src/lib/runtime/index.js.map +1 -1
  72. package/core/src/lib/runtime/runtime-authz.guard.d.ts +1 -0
  73. package/core/src/lib/runtime/runtime-authz.guard.d.ts.map +1 -1
  74. package/core/src/lib/runtime/runtime-authz.guard.js +10 -0
  75. package/core/src/lib/runtime/runtime-authz.guard.js.map +1 -1
  76. package/core/src/lib/runtime/runtime-bulk-command.service.d.ts +4 -1
  77. package/core/src/lib/runtime/runtime-bulk-command.service.d.ts.map +1 -1
  78. package/core/src/lib/runtime/runtime-bulk-command.service.js +64 -17
  79. package/core/src/lib/runtime/runtime-bulk-command.service.js.map +1 -1
  80. package/core/src/lib/runtime/runtime-bulk-progress.realtime.port.d.ts +9 -0
  81. package/core/src/lib/runtime/runtime-bulk-progress.realtime.port.d.ts.map +1 -0
  82. package/core/src/lib/runtime/runtime-bulk-progress.realtime.port.js +13 -0
  83. package/core/src/lib/runtime/runtime-bulk-progress.realtime.port.js.map +1 -0
  84. package/core/src/lib/runtime/runtime-bulk-progress.store.d.ts +12 -0
  85. package/core/src/lib/runtime/runtime-bulk-progress.store.d.ts.map +1 -0
  86. package/core/src/lib/runtime/runtime-bulk-progress.store.js +61 -0
  87. package/core/src/lib/runtime/runtime-bulk-progress.store.js.map +1 -0
  88. package/core/src/lib/runtime/runtime-command.controller.d.ts +5 -1
  89. package/core/src/lib/runtime/runtime-command.controller.d.ts.map +1 -1
  90. package/core/src/lib/runtime/runtime-command.controller.js +30 -2
  91. package/core/src/lib/runtime/runtime-command.controller.js.map +1 -1
  92. package/core/src/lib/runtime/runtime-dispatcher.service.d.ts +3 -2
  93. package/core/src/lib/runtime/runtime-dispatcher.service.d.ts.map +1 -1
  94. package/core/src/lib/runtime/runtime-dispatcher.service.js +23 -2
  95. package/core/src/lib/runtime/runtime-dispatcher.service.js.map +1 -1
  96. package/core/src/lib/runtime/runtime-request-session.util.d.ts +6 -0
  97. package/core/src/lib/runtime/runtime-request-session.util.d.ts.map +1 -0
  98. package/core/src/lib/runtime/runtime-request-session.util.js +21 -0
  99. package/core/src/lib/runtime/runtime-request-session.util.js.map +1 -0
  100. package/core/src/lib/runtime/runtime.module.d.ts.map +1 -1
  101. package/core/src/lib/runtime/runtime.module.js +3 -0
  102. package/core/src/lib/runtime/runtime.module.js.map +1 -1
  103. package/domain/abstract/src/index.d.ts +2 -0
  104. package/domain/abstract/src/index.d.ts.map +1 -1
  105. package/domain/abstract/src/index.js +2 -0
  106. package/domain/abstract/src/index.js.map +1 -1
  107. package/domain/abstract/src/lib/commands/command-concurrency.types.d.ts +30 -0
  108. package/domain/abstract/src/lib/commands/command-concurrency.types.d.ts.map +1 -0
  109. package/domain/abstract/src/lib/commands/command-concurrency.types.js +9 -0
  110. package/domain/abstract/src/lib/commands/command-concurrency.types.js.map +1 -0
  111. package/domain/abstract/src/lib/commands/command-concurrency.util.d.ts +11 -0
  112. package/domain/abstract/src/lib/commands/command-concurrency.util.d.ts.map +1 -0
  113. package/domain/abstract/src/lib/commands/command-concurrency.util.js +53 -0
  114. package/domain/abstract/src/lib/commands/command-concurrency.util.js.map +1 -0
  115. package/domain/abstract/src/lib/commands/server-command-registry.token.d.ts +3 -0
  116. package/domain/abstract/src/lib/commands/server-command-registry.token.d.ts.map +1 -1
  117. package/domain/abstract/src/lib/commands/server-command-registry.token.js.map +1 -1
  118. package/domain/abstract/src/lib/commands/server-handler.decorator.d.ts +1 -0
  119. package/domain/abstract/src/lib/commands/server-handler.decorator.d.ts.map +1 -1
  120. package/domain/abstract/src/lib/commands/server-handler.decorator.js +1 -0
  121. package/domain/abstract/src/lib/commands/server-handler.decorator.js.map +1 -1
  122. package/domain/abstract/src/lib/commands/server-handler.types.d.ts +7 -0
  123. package/domain/abstract/src/lib/commands/server-handler.types.d.ts.map +1 -1
  124. package/domain/abstract/src/lib/commands/server-handler.types.js.map +1 -1
  125. package/domain/providers/src/lib/command-concurrency.guard.d.ts +11 -0
  126. package/domain/providers/src/lib/command-concurrency.guard.d.ts.map +1 -0
  127. package/domain/providers/src/lib/command-concurrency.guard.js +110 -0
  128. package/domain/providers/src/lib/command-concurrency.guard.js.map +1 -0
  129. package/domain/providers/src/lib/middlewares/lookup-resolver.middleware.d.ts.map +1 -1
  130. package/domain/providers/src/lib/middlewares/lookup-resolver.middleware.js +5 -3
  131. package/domain/providers/src/lib/middlewares/lookup-resolver.middleware.js.map +1 -1
  132. package/domain/providers/src/lib/server-command.module.d.ts.map +1 -1
  133. package/domain/providers/src/lib/server-command.module.js +8 -1
  134. package/domain/providers/src/lib/server-command.module.js.map +1 -1
  135. package/domain/providers/src/lib/server-command.registry.d.ts +7 -3
  136. package/domain/providers/src/lib/server-command.registry.d.ts.map +1 -1
  137. package/domain/providers/src/lib/server-command.registry.js +18 -7
  138. package/domain/providers/src/lib/server-command.registry.js.map +1 -1
  139. package/domain/providers/src/lib/utils/entity-query-fields-path-planner.util.d.ts +2 -0
  140. package/domain/providers/src/lib/utils/entity-query-fields-path-planner.util.d.ts.map +1 -1
  141. package/domain/providers/src/lib/utils/entity-query-fields-path-planner.util.js +12 -2
  142. package/domain/providers/src/lib/utils/entity-query-fields-path-planner.util.js.map +1 -1
  143. package/domain/providers/src/lib/utils/entity-relation-join.planner.d.ts.map +1 -1
  144. package/domain/providers/src/lib/utils/entity-relation-join.planner.js +1 -1
  145. package/domain/providers/src/lib/utils/entity-relation-join.planner.js.map +1 -1
  146. package/jql/elasticsearch/src/lib/compile/filter-compiler.js +14 -0
  147. package/jql/elasticsearch/src/lib/compile/filter-compiler.js.map +1 -1
  148. package/jql/elasticsearch/src/lib/jql-elasticsearch.engine.js +3 -0
  149. package/jql/elasticsearch/src/lib/jql-elasticsearch.engine.js.map +1 -1
  150. package/jql/schema/src/lib/generated/plugin-contributions.bootstrap.d.ts.map +1 -1
  151. package/jql/schema/src/lib/generated/plugin-contributions.bootstrap.js +6 -0
  152. package/jql/schema/src/lib/generated/plugin-contributions.bootstrap.js.map +1 -1
  153. package/observability/abstract/src/index.d.ts +1 -0
  154. package/observability/abstract/src/index.d.ts.map +1 -1
  155. package/observability/abstract/src/index.js +1 -0
  156. package/observability/abstract/src/index.js.map +1 -1
  157. package/observability/abstract/src/lib/entity-observability-skip.util.d.ts +11 -0
  158. package/observability/abstract/src/lib/entity-observability-skip.util.d.ts.map +1 -0
  159. package/observability/abstract/src/lib/entity-observability-skip.util.js +22 -0
  160. package/observability/abstract/src/lib/entity-observability-skip.util.js.map +1 -0
  161. package/observability/abstract/src/lib/observability.config.d.ts +2 -0
  162. package/observability/abstract/src/lib/observability.config.d.ts.map +1 -1
  163. package/observability/abstract/src/lib/observability.config.js.map +1 -1
  164. package/observability/abstract/src/lib/runtime-log-buffer.d.ts.map +1 -1
  165. package/observability/abstract/src/lib/runtime-log-buffer.js +5 -1
  166. package/observability/abstract/src/lib/runtime-log-buffer.js.map +1 -1
  167. package/observability/providers/src/lib/context/correlation-fields.util.d.ts +5 -0
  168. package/observability/providers/src/lib/context/correlation-fields.util.d.ts.map +1 -1
  169. package/observability/providers/src/lib/context/correlation-fields.util.js +4 -1
  170. package/observability/providers/src/lib/context/correlation-fields.util.js.map +1 -1
  171. package/observability/providers/src/lib/context/resolve-request-observability-entity.util.d.ts +14 -0
  172. package/observability/providers/src/lib/context/resolve-request-observability-entity.util.d.ts.map +1 -0
  173. package/observability/providers/src/lib/context/resolve-request-observability-entity.util.js +82 -0
  174. package/observability/providers/src/lib/context/resolve-request-observability-entity.util.js.map +1 -0
  175. package/observability/providers/src/lib/execution-trace/execution-trace-recorder.service.d.ts.map +1 -1
  176. package/observability/providers/src/lib/execution-trace/execution-trace-recorder.service.js +3 -0
  177. package/observability/providers/src/lib/execution-trace/execution-trace-recorder.service.js.map +1 -1
  178. package/observability/providers/src/lib/http/observability-context.interceptor.d.ts +3 -1
  179. package/observability/providers/src/lib/http/observability-context.interceptor.d.ts.map +1 -1
  180. package/observability/providers/src/lib/http/observability-context.interceptor.js +17 -4
  181. package/observability/providers/src/lib/http/observability-context.interceptor.js.map +1 -1
  182. package/observability/providers/src/lib/pino/pino.factory.d.ts.map +1 -1
  183. package/observability/providers/src/lib/pino/pino.factory.js +9 -1
  184. package/observability/providers/src/lib/pino/pino.factory.js.map +1 -1
  185. package/package.json +2 -2
  186. package/realtime/src/lib/delivery/socket-io-realtime.delivery.d.ts +3 -3
  187. package/realtime/src/lib/delivery/socket-io-realtime.delivery.d.ts.map +1 -1
  188. package/realtime/src/lib/delivery/socket-io-realtime.delivery.js +10 -2
  189. package/realtime/src/lib/delivery/socket-io-realtime.delivery.js.map +1 -1
  190. package/realtime/src/lib/entity-bridge/realtime-bulk-progress-bridge.listener.d.ts +9 -0
  191. package/realtime/src/lib/entity-bridge/realtime-bulk-progress-bridge.listener.d.ts.map +1 -0
  192. package/realtime/src/lib/entity-bridge/realtime-bulk-progress-bridge.listener.js +62 -0
  193. package/realtime/src/lib/entity-bridge/realtime-bulk-progress-bridge.listener.js.map +1 -0
  194. package/realtime/src/lib/gateway/realtime.gateway.d.ts +2 -2
  195. package/realtime/src/lib/gateway/realtime.gateway.d.ts.map +1 -1
  196. package/realtime/src/lib/gateway/realtime.gateway.js +1 -1
  197. package/realtime/src/lib/gateway/realtime.gateway.js.map +1 -1
  198. package/realtime/src/lib/realtime.module.d.ts.map +1 -1
  199. package/realtime/src/lib/realtime.module.js +8 -0
  200. package/realtime/src/lib/realtime.module.js.map +1 -1
  201. package/realtime/src/lib/topics/realtime-topics.d.ts +2 -0
  202. package/realtime/src/lib/topics/realtime-topics.d.ts.map +1 -1
  203. package/realtime/src/lib/topics/realtime-topics.js +3 -1
  204. package/realtime/src/lib/topics/realtime-topics.js.map +1 -1
  205. package/realtime/src/lib/types/realtime.types.d.ts +26 -0
  206. package/realtime/src/lib/types/realtime.types.d.ts.map +1 -1
  207. package/realtime/src/lib/types/realtime.types.js.map +1 -1
  208. package/search/abstract/src/lib/quick-search-content.util.d.ts.map +1 -1
  209. package/search/abstract/src/lib/quick-search-content.util.js +14 -1
  210. package/search/abstract/src/lib/quick-search-content.util.js.map +1 -1
  211. package/search/providers/src/lib/quick-search-index.service.d.ts +9 -1
  212. package/search/providers/src/lib/quick-search-index.service.d.ts.map +1 -1
  213. package/search/providers/src/lib/quick-search-index.service.js +53 -15
  214. package/search/providers/src/lib/quick-search-index.service.js.map +1 -1
  215. package/search/providers/src/lib/quick-search-provider.module.d.ts.map +1 -1
  216. package/search/providers/src/lib/quick-search-provider.module.js +12 -0
  217. package/search/providers/src/lib/quick-search-provider.module.js.map +1 -1
  218. package/search/providers/src/lib/quick-search-reindex.service.d.ts +15 -6
  219. package/search/providers/src/lib/quick-search-reindex.service.d.ts.map +1 -1
  220. package/search/providers/src/lib/quick-search-reindex.service.js +98 -12
  221. package/search/providers/src/lib/quick-search-reindex.service.js.map +1 -1
  222. package/search/providers/src/lib/quick-search-related.util.d.ts +14 -0
  223. package/search/providers/src/lib/quick-search-related.util.d.ts.map +1 -1
  224. package/search/providers/src/lib/quick-search-related.util.js +142 -8
  225. package/search/providers/src/lib/quick-search-related.util.js.map +1 -1
  226. package/security/src/lib/auth/auth.service.js +1 -1
  227. package/security/src/lib/auth/auth.service.js.map +1 -1
  228. package/swagger/src/lib/runtime-openapi.service.d.ts.map +1 -1
  229. package/swagger/src/lib/runtime-openapi.service.js +43 -0
  230. package/swagger/src/lib/runtime-openapi.service.js.map +1 -1
  231. package/tracing/abstract/src/index.d.ts +1 -0
  232. package/tracing/abstract/src/index.d.ts.map +1 -1
  233. package/tracing/abstract/src/index.js +1 -0
  234. package/tracing/abstract/src/index.js.map +1 -1
  235. package/tracing/abstract/src/lib/entity-log.types.d.ts +14 -0
  236. package/tracing/abstract/src/lib/entity-log.types.d.ts.map +1 -0
  237. package/tracing/abstract/src/lib/entity-log.types.js +10 -0
  238. package/tracing/abstract/src/lib/entity-log.types.js.map +1 -0
  239. package/tracing/abstract/src/lib/entity-trace.tokens.d.ts +2 -0
  240. package/tracing/abstract/src/lib/entity-trace.tokens.d.ts.map +1 -1
  241. package/tracing/abstract/src/lib/entity-trace.tokens.js.map +1 -1
  242. package/tracing/providers/src/lib/entity-trace-config-resolver.service.d.ts +5 -3
  243. package/tracing/providers/src/lib/entity-trace-config-resolver.service.d.ts.map +1 -1
  244. package/tracing/providers/src/lib/entity-trace-config-resolver.service.js +36 -11
  245. package/tracing/providers/src/lib/entity-trace-config-resolver.service.js.map +1 -1
@@ -1,5 +1,6 @@
1
1
  export * from './lib/bull-queue-root.module';
2
2
  export * from './lib/background-job.module';
3
+ export * from './lib/command-concurrency-lock.registrar';
3
4
  export * from './lib/background-job.service';
4
5
  export * from './lib/background-job.errors';
5
6
  export * from './lib/background-job-redis.config';
@@ -26,4 +27,6 @@ export * from './lib/queue/bull-queue-worker-registration.service';
26
27
  export * from './lib/schedule/background-job-schedule-scanner.service';
27
28
  export * from './lib/observability/background-job-observability.publisher';
28
29
  export * from './lib/observability/background-job-sanitize.util';
30
+ export * from './lib/notification/background-job-notification.port';
31
+ export * from './lib/queue/background-job-recovery.service';
29
32
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../libs/framework/server/background-job/src/index.ts"],"names":[],"mappings":"AAAA,cAAc,8BAA8B,CAAC;AAC7C,cAAc,6BAA6B,CAAC;AAC5C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,6BAA6B,CAAC;AAC5C,cAAc,mCAAmC,CAAC;AAClD,cAAc,kCAAkC,CAAC;AACjD,cAAc,2CAA2C,CAAC;AAC1D,cAAc,0CAA0C,CAAC;AACzD,cAAc,mDAAmD,CAAC;AAClE,cAAc,kDAAkD,CAAC;AACjE,cAAc,kDAAkD,CAAC;AACjE,cAAc,mDAAmD,CAAC;AAClE,cAAc,6CAA6C,CAAC;AAC5D,cAAc,wCAAwC,CAAC;AACvD,cAAc,gDAAgD,CAAC;AAC/D,cAAc,qDAAqD,CAAC;AACpE,cAAc,kDAAkD,CAAC;AACjE,cAAc,wDAAwD,CAAC;AACvE,cAAc,2CAA2C,CAAC;AAC1D,cAAc,4CAA4C,CAAC;AAC3D,cAAc,+CAA+C,CAAC;AAC9D,cAAc,+CAA+C,CAAC;AAC9D,cAAc,qDAAqD,CAAC;AACpE,cAAc,sCAAsC,CAAC;AACrD,cAAc,oDAAoD,CAAC;AACnE,cAAc,wDAAwD,CAAC;AACvE,cAAc,4DAA4D,CAAC;AAC3E,cAAc,kDAAkD,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../libs/framework/server/background-job/src/index.ts"],"names":[],"mappings":"AAAA,cAAc,8BAA8B,CAAC;AAC7C,cAAc,6BAA6B,CAAC;AAC5C,cAAc,0CAA0C,CAAC;AACzD,cAAc,8BAA8B,CAAC;AAC7C,cAAc,6BAA6B,CAAC;AAC5C,cAAc,mCAAmC,CAAC;AAClD,cAAc,kCAAkC,CAAC;AACjD,cAAc,2CAA2C,CAAC;AAC1D,cAAc,0CAA0C,CAAC;AACzD,cAAc,mDAAmD,CAAC;AAClE,cAAc,kDAAkD,CAAC;AACjE,cAAc,kDAAkD,CAAC;AACjE,cAAc,mDAAmD,CAAC;AAClE,cAAc,6CAA6C,CAAC;AAC5D,cAAc,wCAAwC,CAAC;AACvD,cAAc,gDAAgD,CAAC;AAC/D,cAAc,qDAAqD,CAAC;AACpE,cAAc,kDAAkD,CAAC;AACjE,cAAc,wDAAwD,CAAC;AACvE,cAAc,2CAA2C,CAAC;AAC1D,cAAc,4CAA4C,CAAC;AAC3D,cAAc,+CAA+C,CAAC;AAC9D,cAAc,+CAA+C,CAAC;AAC9D,cAAc,qDAAqD,CAAC;AACpE,cAAc,sCAAsC,CAAC;AACrD,cAAc,oDAAoD,CAAC;AACnE,cAAc,wDAAwD,CAAC;AACvE,cAAc,4DAA4D,CAAC;AAC3E,cAAc,kDAAkD,CAAC;AACjE,cAAc,qDAAqD,CAAC;AACpE,cAAc,6CAA6C,CAAC"}
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const tslib_1 = require("tslib");
4
4
  tslib_1.__exportStar(require("./lib/bull-queue-root.module"), exports);
5
5
  tslib_1.__exportStar(require("./lib/background-job.module"), exports);
6
+ tslib_1.__exportStar(require("./lib/command-concurrency-lock.registrar"), exports);
6
7
  tslib_1.__exportStar(require("./lib/background-job.service"), exports);
7
8
  tslib_1.__exportStar(require("./lib/background-job.errors"), exports);
8
9
  tslib_1.__exportStar(require("./lib/background-job-redis.config"), exports);
@@ -29,4 +30,6 @@ tslib_1.__exportStar(require("./lib/queue/bull-queue-worker-registration.service
29
30
  tslib_1.__exportStar(require("./lib/schedule/background-job-schedule-scanner.service"), exports);
30
31
  tslib_1.__exportStar(require("./lib/observability/background-job-observability.publisher"), exports);
31
32
  tslib_1.__exportStar(require("./lib/observability/background-job-sanitize.util"), exports);
33
+ tslib_1.__exportStar(require("./lib/notification/background-job-notification.port"), exports);
34
+ tslib_1.__exportStar(require("./lib/queue/background-job-recovery.service"), exports);
32
35
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../libs/framework/server/background-job/src/index.ts"],"names":[],"mappings":";;;AAAA,uEAA6C;AAC7C,sEAA4C;AAC5C,uEAA6C;AAC7C,sEAA4C;AAC5C,4EAAkD;AAClD,2EAAiD;AACjD,oFAA0D;AAC1D,mFAAyD;AACzD,4FAAkE;AAClE,2FAAiE;AACjE,2FAAiE;AACjE,4FAAkE;AAClE,sFAA4D;AAC5D,iFAAuD;AACvD,yFAA+D;AAC/D,8FAAoE;AACpE,2FAAiE;AACjE,iGAAuE;AACvE,oFAA0D;AAC1D,qFAA2D;AAC3D,wFAA8D;AAC9D,wFAA8D;AAC9D,8FAAoE;AACpE,+EAAqD;AACrD,6FAAmE;AACnE,iGAAuE;AACvE,qGAA2E;AAC3E,2FAAiE"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../libs/framework/server/background-job/src/index.ts"],"names":[],"mappings":";;;AAAA,uEAA6C;AAC7C,sEAA4C;AAC5C,mFAAyD;AACzD,uEAA6C;AAC7C,sEAA4C;AAC5C,4EAAkD;AAClD,2EAAiD;AACjD,oFAA0D;AAC1D,mFAAyD;AACzD,4FAAkE;AAClE,2FAAiE;AACjE,2FAAiE;AACjE,4FAAkE;AAClE,sFAA4D;AAC5D,iFAAuD;AACvD,yFAA+D;AAC/D,8FAAoE;AACpE,2FAAiE;AACjE,iGAAuE;AACvE,oFAA0D;AAC1D,qFAA2D;AAC3D,wFAA8D;AAC9D,wFAA8D;AAC9D,8FAAoE;AACpE,+EAAqD;AACrD,6FAAmE;AACnE,iGAAuE;AACvE,qGAA2E;AAC3E,2FAAiE;AACjE,8FAAoE;AACpE,sFAA4D"}
@@ -1,6 +1,7 @@
1
1
  import { DynamicModule, type Type } from '@nestjs/common';
2
2
  import { type BackgroundJobRedisConnection } from './background-job-redis.config';
3
3
  import { BackgroundJobObservabilityPublisher } from './observability/background-job-observability.publisher';
4
+ import { BackgroundJobNotificationPort } from './notification/background-job-notification.port';
4
5
  export interface BackgroundJobModuleOptions {
5
6
  /**
6
7
  * Explicit Redis connection; defaults to `REDIS_URL` / `REDIS_HOST` env vars.
@@ -21,6 +22,8 @@ export interface BackgroundJobModuleOptions {
21
22
  readonly enableQueueProcessor?: boolean;
22
23
  /** Override the default log-only observability publisher (e.g. system-insight adapter). */
23
24
  readonly observabilityPublisher?: Type<BackgroundJobObservabilityPublisher>;
25
+ /** Override the default no-op notification port (e.g. in-app communication adapter). */
26
+ readonly notificationPort?: Type<BackgroundJobNotificationPort>;
24
27
  }
25
28
  export declare class BackgroundJobModule {
26
29
  static forRoot(options?: BackgroundJobModuleOptions): DynamicModule;
@@ -1 +1 @@
1
- {"version":3,"file":"background-job.module.d.ts","sourceRoot":"","sources":["../../../../../../../libs/framework/server/background-job/src/lib/background-job.module.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAyB,KAAK,IAAI,EAAE,MAAM,gBAAgB,CAAC;AAKjF,OAAO,EAEL,KAAK,4BAA4B,EAClC,MAAM,+BAA+B,CAAC;AAWvC,OAAO,EACL,mCAAmC,EAEpC,MAAM,wDAAwD,CAAC;AAkBhE,MAAM,WAAW,0BAA0B;IACzC;;;OAGG;IACH,QAAQ,CAAC,KAAK,CAAC,EAAE,4BAA4B,CAAC;IAC9C;;;OAGG;IACH,QAAQ,CAAC,gBAAgB,CAAC,EAAE,OAAO,CAAC;IACpC,qEAAqE;IACrE,QAAQ,CAAC,qBAAqB,CAAC,EAAE,OAAO,CAAC;IACzC;;;OAGG;IACH,QAAQ,CAAC,oBAAoB,CAAC,EAAE,OAAO,CAAC;IACxC,2FAA2F;IAC3F,QAAQ,CAAC,sBAAsB,CAAC,EAAE,IAAI,CAAC,mCAAmC,CAAC,CAAC;CAC7E;AAMD,qBACa,mBAAmB;IAC9B,MAAM,CAAC,OAAO,CAAC,OAAO,GAAE,0BAA+B,GAAG,aAAa;CAoExE"}
1
+ {"version":3,"file":"background-job.module.d.ts","sourceRoot":"","sources":["../../../../../../../libs/framework/server/background-job/src/lib/background-job.module.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAyB,KAAK,IAAI,EAAE,MAAM,gBAAgB,CAAC;AAKjF,OAAO,EAEL,KAAK,4BAA4B,EAClC,MAAM,+BAA+B,CAAC;AAWvC,OAAO,EACL,mCAAmC,EAEpC,MAAM,wDAAwD,CAAC;AAChE,OAAO,EACL,6BAA6B,EAE9B,MAAM,iDAAiD,CAAC;AAqBzD,MAAM,WAAW,0BAA0B;IACzC;;;OAGG;IACH,QAAQ,CAAC,KAAK,CAAC,EAAE,4BAA4B,CAAC;IAC9C;;;OAGG;IACH,QAAQ,CAAC,gBAAgB,CAAC,EAAE,OAAO,CAAC;IACpC,qEAAqE;IACrE,QAAQ,CAAC,qBAAqB,CAAC,EAAE,OAAO,CAAC;IACzC;;;OAGG;IACH,QAAQ,CAAC,oBAAoB,CAAC,EAAE,OAAO,CAAC;IACxC,2FAA2F;IAC3F,QAAQ,CAAC,sBAAsB,CAAC,EAAE,IAAI,CAAC,mCAAmC,CAAC,CAAC;IAC5E,wFAAwF;IACxF,QAAQ,CAAC,gBAAgB,CAAC,EAAE,IAAI,CAAC,6BAA6B,CAAC,CAAC;CACjE;AAMD,qBACa,mBAAmB;IAC9B,MAAM,CAAC,OAAO,CAAC,OAAO,GAAE,0BAA+B,GAAG,aAAa;CAgFxE"}
@@ -17,8 +17,10 @@ const background_job_retry_scheduler_service_1 = require("./execution/background
17
17
  const distributed_lock_port_1 = require("./lock/distributed-lock.port");
18
18
  const redis_distributed_lock_service_1 = require("./lock/redis-distributed-lock.service");
19
19
  const background_job_observability_publisher_1 = require("./observability/background-job-observability.publisher");
20
+ const background_job_notification_port_1 = require("./notification/background-job-notification.port");
20
21
  const background_job_dispatcher_service_1 = require("./queue/background-job-dispatcher.service");
21
22
  const background_job_failed_reconcile_service_1 = require("./queue/background-job-failed-reconcile.service");
23
+ const background_job_recovery_service_1 = require("./queue/background-job-recovery.service");
22
24
  const background_job_processor_1 = require("./queue/background-job.processor");
23
25
  const bull_queue_worker_registration_service_1 = require("./queue/bull-queue-worker-registration.service");
24
26
  const background_job_schedule_scanner_service_1 = require("./schedule/background-job-schedule-scanner.service");
@@ -28,6 +30,8 @@ const background_job_schedule_store_service_1 = require("./store/background-job-
28
30
  const background_job_command_title_resolver_1 = require("./store/background-job-command-title.resolver");
29
31
  const background_job_capabilities_resolver_1 = require("./store/background-job-capabilities.resolver");
30
32
  const background_job_store_service_1 = require("./store/background-job-store.service");
33
+ const background_job_tray_realtime_publisher_1 = require("./tray/background-job-tray-realtime.publisher");
34
+ const command_concurrency_lock_registrar_1 = require("./command-concurrency-lock.registrar");
31
35
  //#endregion
32
36
  //#region ---- Background job module ----
33
37
  let BackgroundJobModule = BackgroundJobModule_1 = class BackgroundJobModule {
@@ -47,6 +51,8 @@ let BackgroundJobModule = BackgroundJobModule_1 = class BackgroundJobModule {
47
51
  background_job_execution_service_1.BackgroundJobExecutionService,
48
52
  background_job_dispatcher_service_1.BackgroundJobDispatcherService,
49
53
  background_job_service_1.BackgroundJobService,
54
+ background_job_tray_realtime_publisher_1.BackgroundJobTrayRealtimePublisher,
55
+ command_concurrency_lock_registrar_1.CommandConcurrencyLockRegistrar,
50
56
  {
51
57
  provide: distributed_lock_port_1.DistributedLockPort,
52
58
  useFactory: () => connection ? new redis_distributed_lock_service_1.RedisDistributedLockService(connection) : new redis_distributed_lock_service_1.InProcessLockService(),
@@ -55,6 +61,10 @@ let BackgroundJobModule = BackgroundJobModule_1 = class BackgroundJobModule {
55
61
  provide: background_job_observability_publisher_1.BackgroundJobObservabilityPublisher,
56
62
  useClass: options.observabilityPublisher ?? background_job_observability_publisher_1.LoggingBackgroundJobObservabilityPublisher,
57
63
  },
64
+ {
65
+ provide: background_job_notification_port_1.BackgroundJobNotificationPort,
66
+ useClass: options.notificationPort ?? background_job_notification_port_1.NoopBackgroundJobNotificationPort,
67
+ },
58
68
  ];
59
69
  if (connection) {
60
70
  if (options.registerBullRoot !== false) {
@@ -67,7 +77,7 @@ let BackgroundJobModule = BackgroundJobModule_1 = class BackgroundJobModule {
67
77
  }
68
78
  imports.push(bullmq_1.BullModule.registerQueue({ name: background_job_1.AXP_BACKGROUND_JOBS_QUEUE }));
69
79
  if (options.enableQueueProcessor !== false) {
70
- providers.push(background_job_processor_1.BackgroundJobProcessor, background_job_failed_reconcile_service_1.BackgroundJobFailedReconcileService);
80
+ providers.push(background_job_processor_1.BackgroundJobProcessor, background_job_failed_reconcile_service_1.BackgroundJobFailedReconcileService, background_job_recovery_service_1.BackgroundJobRecoveryService);
71
81
  }
72
82
  }
73
83
  if (options.enableScheduleScanner !== false) {
@@ -89,6 +99,8 @@ let BackgroundJobModule = BackgroundJobModule_1 = class BackgroundJobModule {
89
99
  background_job_schedule_store_service_1.BackgroundJobScheduleStoreService,
90
100
  distributed_lock_port_1.DistributedLockPort,
91
101
  background_job_observability_publisher_1.BackgroundJobObservabilityPublisher,
102
+ background_job_notification_port_1.BackgroundJobNotificationPort,
103
+ background_job_tray_realtime_publisher_1.BackgroundJobTrayRealtimePublisher,
92
104
  ],
93
105
  };
94
106
  }
@@ -1 +1 @@
1
- {"version":3,"file":"background-job.module.js","sourceRoot":"","sources":["../../../../../../../libs/framework/server/background-job/src/lib/background-job.module.ts"],"names":[],"mappings":";;;;;AAAA,2CAAiF;AACjF,2CAA4C;AAC5C,iEAA6E;AAC7E,kFAAyF;AACzF,qFAA6F;AAC7F,+EAGuC;AACvC,qEAAgE;AAChE,+FAAyF;AACzF,yGAAmG;AACnG,mGAA6F;AAC7F,+GAAwG;AACxG,wEAAmE;AACnE,0FAG+C;AAC/C,mHAGgE;AAChE,iGAA2F;AAC3F,6GAAsG;AACtG,+EAA0E;AAC1E,2GAAoG;AACpG,gHAAyG;AAEzG,uGAAgG;AAChG,6FAAuF;AACvF,yGAAkG;AAClG,yGAAkG;AAClG,uGAEsD;AACtD,uFAAiF;AA0BjF,YAAY;AAEZ,yCAAyC;AAGlC,IAAM,mBAAmB,2BAAzB,MAAM,mBAAmB;IAC9B,MAAM,CAAC,OAAO,CAAC,UAAsC,EAAE;QACrD,MAAM,UAAU,GAAG,OAAO,CAAC,KAAK,IAAI,IAAA,iEAAmC,GAAE,CAAC;QAE1E,MAAM,OAAO,GAA6B,CAAC,0BAAmB,EAAE,+BAAmB,CAAC,CAAC;QACrF,MAAM,SAAS,GAAe;YAC5B,8DAA4B;YAC5B,wDAAyB;YACzB,yEAAiC;YACjC,wEAAiC;YACjC,uEAAgC;YAChC,yEAAiC;YACjC,4DAA2B;YAC3B,sEAAgC;YAChC,2EAAkC;YAClC,gEAA6B;YAC7B,kEAA8B;YAC9B,6CAAoB;YACpB;gBACE,OAAO,EAAE,2CAAmB;gBAC5B,UAAU,EAAE,GAAG,EAAE,CACf,UAAU,CAAC,CAAC,CAAC,IAAI,4DAA2B,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,qDAAoB,EAAE;aACxF;YACD;gBACE,OAAO,EAAE,4EAAmC;gBAC5C,QAAQ,EAAE,OAAO,CAAC,sBAAsB,IAAI,mFAA0C;aACvF;SACF,CAAC;QAEF,IAAI,UAAU,EAAE,CAAC;YACf,IAAI,OAAO,CAAC,gBAAgB,KAAK,KAAK,EAAE,CAAC;gBACvC,0EAA0E;gBAC1E,OAAO,CAAC,IAAI,CACV,mBAAU,CAAC,OAAO,CAAC;oBACjB,UAAU;oBACV,YAAY,EAAE,EAAE,kBAAkB,EAAE,IAAI,EAAE;iBAC3C,CAAC,CACH,CAAC;gBACF,SAAS,CAAC,IAAI,CAAC,2EAAkC,CAAC,CAAC;YACrD,CAAC;YACD,OAAO,CAAC,IAAI,CAAC,mBAAU,CAAC,aAAa,CAAC,EAAE,IAAI,EAAE,0CAAyB,EAAE,CAAC,CAAC,CAAC;YAC5E,IAAI,OAAO,CAAC,oBAAoB,KAAK,KAAK,EAAE,CAAC;gBAC3C,SAAS,CAAC,IAAI,CAAC,iDAAsB,EAAE,6EAAmC,CAAC,CAAC;YAC9E,CAAC;QACH,CAAC;QAED,IAAI,OAAO,CAAC,qBAAqB,KAAK,KAAK,EAAE,CAAC;YAC5C,SAAS,CAAC,IAAI,CAAC,6EAAmC,CAAC,CAAC;QACtD,CAAC;QAED,OAAO;YACL,MAAM,EAAE,qBAAmB;YAC3B,OAAO;YACP,SAAS;YACT,OAAO,EAAE;gBACP,6CAAoB;gBACpB,kEAA8B;gBAC9B,gEAA6B;gBAC7B,sEAAgC;gBAChC,wDAAyB;gBACzB,yEAAiC;gBACjC,wEAAiC;gBACjC,uEAAgC;gBAChC,yEAAiC;gBACjC,2CAAmB;gBACnB,4EAAmC;aACpC;SACF,CAAC;IACJ,CAAC;CACF,CAAA;AArEY,kDAAmB;8BAAnB,mBAAmB;IAD/B,IAAA,eAAM,EAAC,EAAE,CAAC;GACE,mBAAmB,CAqE/B;AAED,YAAY"}
1
+ {"version":3,"file":"background-job.module.js","sourceRoot":"","sources":["../../../../../../../libs/framework/server/background-job/src/lib/background-job.module.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,10 @@
1
- import { type AXPBackgroundJob, type AXPCreateBackgroundJobRequest, type AXPCreateBackgroundJobResult, type AXPCancelBackgroundJobResult, type AXPRetryBackgroundJobResult } from '@acorex-platform/framework-shared/background-job';
1
+ import { type AXPBackgroundJob, type AXPCreateBackgroundJobRequest, type AXPCreateBackgroundJobResult, type AXPCancelBackgroundJobResult, type AXPDismissBackgroundJobsResult, type AXPRetryBackgroundJobResult } from '@acorex-platform/framework-shared/background-job';
2
2
  import { BackgroundJobCancellationService } from './execution/background-job-cancellation.service';
3
3
  import { BackgroundJobDispatcherService } from './queue/background-job-dispatcher.service';
4
4
  import { BackgroundJobAttemptStoreService } from './store/background-job-attempt-store.service';
5
5
  import { BackgroundJobCommandTitleResolver } from './store/background-job-command-title.resolver';
6
6
  import { BackgroundJobStoreService } from './store/background-job-store.service';
7
+ import { BackgroundJobTrayRealtimePublisher } from './tray/background-job-tray-realtime.publisher';
7
8
  /**
8
9
  * Public entry point for job lifecycle commands (spec §5.1).
9
10
  * Server command handlers and module controllers call this service.
@@ -14,8 +15,9 @@ export declare class BackgroundJobService {
14
15
  private readonly commandTitleResolver;
15
16
  private readonly dispatcher;
16
17
  private readonly cancellation;
18
+ private readonly trayRealtime;
17
19
  private readonly logger;
18
- constructor(jobStore: BackgroundJobStoreService, attemptStore: BackgroundJobAttemptStoreService, commandTitleResolver: BackgroundJobCommandTitleResolver, dispatcher: BackgroundJobDispatcherService, cancellation: BackgroundJobCancellationService);
20
+ constructor(jobStore: BackgroundJobStoreService, attemptStore: BackgroundJobAttemptStoreService, commandTitleResolver: BackgroundJobCommandTitleResolver, dispatcher: BackgroundJobDispatcherService, cancellation: BackgroundJobCancellationService, trayRealtime: BackgroundJobTrayRealtimePublisher);
19
21
  createJob(request: AXPCreateBackgroundJobRequest): Promise<AXPCreateBackgroundJobResult>;
20
22
  cancelJob(jobId: string, options?: {
21
23
  reason?: string;
@@ -34,6 +36,11 @@ export declare class BackgroundJobService {
34
36
  replayDeadLetter(jobId: string): Promise<{
35
37
  jobId: string;
36
38
  }>;
39
+ /**
40
+ * Hides terminal jobs from the initiator tray (single or bulk).
41
+ * Only the job owner may dismiss; already-dismissed ids are skipped.
42
+ */
43
+ dismissFromTray(jobIds: readonly string[], userId: string): Promise<AXPDismissBackgroundJobsResult>;
37
44
  getJob(jobId: string): Promise<AXPBackgroundJob | null>;
38
45
  private resolveCreateCommand;
39
46
  }
@@ -1 +1 @@
1
- {"version":3,"file":"background-job.service.d.ts","sourceRoot":"","sources":["../../../../../../../libs/framework/server/background-job/src/lib/background-job.service.ts"],"names":[],"mappings":"AACA,OAAO,EAKL,KAAK,gBAAgB,EAErB,KAAK,6BAA6B,EAClC,KAAK,4BAA4B,EACjC,KAAK,4BAA4B,EAEjC,KAAK,2BAA2B,EAEjC,MAAM,kDAAkD,CAAC;AAC1D,OAAO,EAAE,gCAAgC,EAAE,MAAM,iDAAiD,CAAC;AACnG,OAAO,EAAE,8BAA8B,EAAE,MAAM,2CAA2C,CAAC;AAC3F,OAAO,EAAE,gCAAgC,EAAE,MAAM,8CAA8C,CAAC;AAChG,OAAO,EAAE,iCAAiC,EAAE,MAAM,+CAA+C,CAAC;AAClG,OAAO,EAAE,yBAAyB,EAAE,MAAM,sCAAsC,CAAC;AAKjF;;;GAGG;AACH,qBACa,oBAAoB;IAI7B,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,YAAY;IAC7B,OAAO,CAAC,QAAQ,CAAC,oBAAoB;IACrC,OAAO,CAAC,QAAQ,CAAC,UAAU;IAC3B,OAAO,CAAC,QAAQ,CAAC,YAAY;IAP/B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAyC;gBAG7C,QAAQ,EAAE,yBAAyB,EACnC,YAAY,EAAE,gCAAgC,EAC9C,oBAAoB,EAAE,iCAAiC,EACvD,UAAU,EAAE,8BAA8B,EAC1C,YAAY,EAAE,gCAAgC;IAK3D,SAAS,CAAC,OAAO,EAAE,6BAA6B,GAAG,OAAO,CAAC,4BAA4B,CAAC;IAkFxF,SAAS,CACb,KAAK,EAAE,MAAM,EACb,OAAO,GAAE;QAAE,MAAM,CAAC,EAAE,MAAM,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,CAAA;KAAO,GACtD,OAAO,CAAC,4BAA4B,CAAC;IAIxC,2CAA2C;IACrC,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,OAAO,EAAE,OAAO,CAAA;KAAE,CAAC;IAe7D,sFAAsF;IAChF,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,2BAA2B,CAAC;IA4BnE;;;OAGG;IACG,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;IA4D3D,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,GAAG,IAAI,CAAC;YAQ/C,oBAAoB;CAqBnC"}
1
+ {"version":3,"file":"background-job.service.d.ts","sourceRoot":"","sources":["../../../../../../../libs/framework/server/background-job/src/lib/background-job.service.ts"],"names":[],"mappings":"AACA,OAAO,EAML,KAAK,gBAAgB,EAErB,KAAK,6BAA6B,EAClC,KAAK,4BAA4B,EACjC,KAAK,4BAA4B,EAEjC,KAAK,8BAA8B,EACnC,KAAK,2BAA2B,EAEjC,MAAM,kDAAkD,CAAC;AAC1D,OAAO,EAAE,gCAAgC,EAAE,MAAM,iDAAiD,CAAC;AACnG,OAAO,EAAE,8BAA8B,EAAE,MAAM,2CAA2C,CAAC;AAC3F,OAAO,EAAE,gCAAgC,EAAE,MAAM,8CAA8C,CAAC;AAChG,OAAO,EAAE,iCAAiC,EAAE,MAAM,+CAA+C,CAAC;AAClG,OAAO,EAAE,yBAAyB,EAAE,MAAM,sCAAsC,CAAC;AAEjF,OAAO,EAAE,kCAAkC,EAAE,MAAM,+CAA+C,CAAC;AAInG;;;GAGG;AACH,qBACa,oBAAoB;IAI7B,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,YAAY;IAC7B,OAAO,CAAC,QAAQ,CAAC,oBAAoB;IACrC,OAAO,CAAC,QAAQ,CAAC,UAAU;IAC3B,OAAO,CAAC,QAAQ,CAAC,YAAY;IAC7B,OAAO,CAAC,QAAQ,CAAC,YAAY;IAR/B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAyC;gBAG7C,QAAQ,EAAE,yBAAyB,EACnC,YAAY,EAAE,gCAAgC,EAC9C,oBAAoB,EAAE,iCAAiC,EACvD,UAAU,EAAE,8BAA8B,EAC1C,YAAY,EAAE,gCAAgC,EAC9C,YAAY,EAAE,kCAAkC;IAK7D,SAAS,CAAC,OAAO,EAAE,6BAA6B,GAAG,OAAO,CAAC,4BAA4B,CAAC;IAuFxF,SAAS,CACb,KAAK,EAAE,MAAM,EACb,OAAO,GAAE;QAAE,MAAM,CAAC,EAAE,MAAM,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,CAAA;KAAO,GACtD,OAAO,CAAC,4BAA4B,CAAC;IAIxC,2CAA2C;IACrC,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,OAAO,EAAE,OAAO,CAAA;KAAE,CAAC;IAe7D,sFAAsF;IAChF,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,2BAA2B,CAAC;IA4BnE;;;OAGG;IACG,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;IAwDjE;;;OAGG;IACG,eAAe,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,8BAA8B,CAAC;IAsCnG,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,GAAG,IAAI,CAAC;YAQ/C,oBAAoB;CAqBnC"}
@@ -11,18 +11,20 @@ const background_job_attempt_store_service_1 = require("./store/background-job-a
11
11
  const background_job_command_title_resolver_1 = require("./store/background-job-command-title.resolver");
12
12
  const background_job_store_service_1 = require("./store/background-job-store.service");
13
13
  const background_job_errors_1 = require("./background-job.errors");
14
+ const background_job_tray_realtime_publisher_1 = require("./tray/background-job-tray-realtime.publisher");
14
15
  //#region ---- Background job facade (create / cancel / retry / replay / delete) ----
15
16
  /**
16
17
  * Public entry point for job lifecycle commands (spec §5.1).
17
18
  * Server command handlers and module controllers call this service.
18
19
  */
19
20
  let BackgroundJobService = BackgroundJobService_1 = class BackgroundJobService {
20
- constructor(jobStore, attemptStore, commandTitleResolver, dispatcher, cancellation) {
21
+ constructor(jobStore, attemptStore, commandTitleResolver, dispatcher, cancellation, trayRealtime) {
21
22
  this.jobStore = jobStore;
22
23
  this.attemptStore = attemptStore;
23
24
  this.commandTitleResolver = commandTitleResolver;
24
25
  this.dispatcher = dispatcher;
25
26
  this.cancellation = cancellation;
27
+ this.trayRealtime = trayRealtime;
26
28
  this.logger = new common_1.Logger(BackgroundJobService_1.name);
27
29
  }
28
30
  //#region ---- Create ----
@@ -76,6 +78,9 @@ let BackgroundJobService = BackgroundJobService_1 = class BackgroundJobService {
76
78
  correlationId: request.correlationId,
77
79
  parentJobId: request.parentJobId,
78
80
  createdAt: now,
81
+ ...(request.statusText ? { statusText: request.statusText } : {}),
82
+ ...(request.progress !== undefined ? { progress: request.progress } : {}),
83
+ ...(request.currentStep ? { currentStep: request.currentStep } : {}),
79
84
  ...(request.stateInfo ? { stateInfo: request.stateInfo } : {}),
80
85
  });
81
86
  // History middleware may overwrite scopeInfo from the caller session;
@@ -88,6 +93,7 @@ let BackgroundJobService = BackgroundJobService_1 = class BackgroundJobService {
88
93
  job.scopeInfo = scopeInfo;
89
94
  await this.dispatcher.dispatch(job.id, 'initial');
90
95
  job.status = 'queued';
96
+ await this.trayRealtime.notify(job, 'created');
91
97
  return { jobId: job.id, job };
92
98
  }
93
99
  //#endregion
@@ -187,6 +193,39 @@ let BackgroundJobService = BackgroundJobService_1 = class BackgroundJobService {
187
193
  await this.dispatcher.dispatch(replay.id, 'dead-letter-replay');
188
194
  return { jobId: replay.id };
189
195
  }
196
+ /**
197
+ * Hides terminal jobs from the initiator tray (single or bulk).
198
+ * Only the job owner may dismiss; already-dismissed ids are skipped.
199
+ */
200
+ async dismissFromTray(jobIds, userId) {
201
+ const scopedUserId = userId.trim();
202
+ const ids = [...new Set(jobIds.map((id) => id?.trim()).filter(Boolean))];
203
+ if (!scopedUserId || ids.length === 0) {
204
+ return { affectedIds: [] };
205
+ }
206
+ const affectedIds = [];
207
+ const now = new Date().toISOString();
208
+ for (const jobId of ids) {
209
+ const job = await this.jobStore.getOne(jobId);
210
+ if (!job) {
211
+ continue;
212
+ }
213
+ if (job.userId?.trim() !== scopedUserId) {
214
+ continue;
215
+ }
216
+ if (!(0, background_job_1.isBackgroundJobTerminal)(job.status)) {
217
+ continue;
218
+ }
219
+ if (job.trayDismissedAt) {
220
+ affectedIds.push(jobId);
221
+ continue;
222
+ }
223
+ await this.jobStore.patch(jobId, { trayDismissedAt: now });
224
+ affectedIds.push(jobId);
225
+ await this.trayRealtime.notify({ ...job, trayDismissedAt: now }, 'dismissed');
226
+ }
227
+ return { affectedIds };
228
+ }
190
229
  //#endregion
191
230
  //#region ---- Reads ----
192
231
  async getJob(jobId) {
@@ -216,7 +255,8 @@ exports.BackgroundJobService = BackgroundJobService = BackgroundJobService_1 = t
216
255
  background_job_attempt_store_service_1.BackgroundJobAttemptStoreService,
217
256
  background_job_command_title_resolver_1.BackgroundJobCommandTitleResolver,
218
257
  background_job_dispatcher_service_1.BackgroundJobDispatcherService,
219
- background_job_cancellation_service_1.BackgroundJobCancellationService])
258
+ background_job_cancellation_service_1.BackgroundJobCancellationService,
259
+ background_job_tray_realtime_publisher_1.BackgroundJobTrayRealtimePublisher])
220
260
  ], BackgroundJobService);
221
261
  //#endregion
222
262
  //# sourceMappingURL=background-job.service.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"background-job.service.js","sourceRoot":"","sources":["../../../../../../../libs/framework/server/background-job/src/lib/background-job.service.ts"],"names":[],"mappings":";;;;;AAAA,2CAAoD;AACpD,qFAa0D;AAC1D,yGAAmG;AACnG,iGAA2F;AAC3F,uGAAgG;AAChG,yGAAkG;AAClG,uFAAiF;AACjF,mEAAmG;AAEnG,qFAAqF;AAErF;;;GAGG;AAEI,IAAM,oBAAoB,4BAA1B,MAAM,oBAAoB;IAG/B,YACmB,QAAmC,EACnC,YAA8C,EAC9C,oBAAuD,EACvD,UAA0C,EAC1C,YAA8C;QAJ9C,aAAQ,GAAR,QAAQ,CAA2B;QACnC,iBAAY,GAAZ,YAAY,CAAkC;QAC9C,yBAAoB,GAApB,oBAAoB,CAAmC;QACvD,eAAU,GAAV,UAAU,CAAgC;QAC1C,iBAAY,GAAZ,YAAY,CAAkC;QAPhD,WAAM,GAAG,IAAI,eAAM,CAAC,sBAAoB,CAAC,IAAI,CAAC,CAAC;IAQ7D,CAAC;IAEJ,0BAA0B;IAE1B,KAAK,CAAC,SAAS,CAAC,OAAsC;QACpD,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAC;QACzD,MAAM,UAAU,GAAG,OAAO,CAAC,GAAG,CAAC;QAC/B,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC;QAC1C,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC;QAC1C,CAAC;QAED,+EAA+E;QAC/E,IAAI,OAAO,CAAC,cAAc,EAAE,CAAC;YAC3B,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,0BAA0B,CAC7D,QAAQ,EACR,OAAO,CAAC,cAAc,CACvB,CAAC;YACF,IAAI,QAAQ,EAAE,CAAC;gBACb,IAAI,CAAC,MAAM,CAAC,KAAK,CACf,iDAAiD,OAAO,CAAC,cAAc,OAAO,QAAQ,CAAC,EAAE,EAAE,CAC5F,CAAC;gBACF,OAAO,EAAE,KAAK,EAAE,QAAQ,CAAC,EAAE,EAAE,GAAG,EAAE,QAAQ,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC;YACnE,CAAC;QACH,CAAC;QAED,MAAM,WAAW,GAAgC;YAC/C,GAAG,wDAAuC;YAC1C,GAAG,OAAO,CAAC,WAAW;SACvB,CAAC;QAEF,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;QACrC,MAAM,KAAK,GACT,OAAO,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,IAAA,0CAAyB,EAAC,OAAO,CAAC,KAAK,CAAC,IAAI,UAAU,CAAC;QAClF,MAAM,aAAa,GAAG,OAAO,CAAC,aAAa,EAAE,IAAI,EAAE,IAAI,SAAS,CAAC;QAEjE,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC;YACrC,OAAO;YACP,WAAW,EAAE,OAAO,CAAC,WAAW,IAAI,IAAA,+CAA8B,EAAC,UAAU,CAAC;YAC9E,GAAG,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACjE,GAAG,CAAC,OAAO,CAAC,mBAAmB,CAAC,CAAC,CAAC,EAAE,mBAAmB,EAAE,OAAO,CAAC,mBAAmB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC5F,OAAO,EAAE,OAAO,CAAC,OAAO,IAAI,QAAQ;YACpC,QAAQ;YACR,MAAM,EAAE,OAAO,CAAC,MAAM;YACtB,aAAa;YACb,wEAAwE;YACxE,SAAS,EAAE;gBACT,QAAQ;gBACR,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aAC5C;YACD,KAAK;YACL,MAAM,EAAE,SAAS;YACjB,gBAAgB,EAAE,OAAO,CAAC,gBAAgB;YAC1C,YAAY,EAAE,OAAO,CAAC,YAAY,IAAI,EAAE;YACxC,WAAW;YACX,kBAAkB,EAAE,OAAO,CAAC,kBAAkB;YAC9C,cAAc,EAAE,CAAC;YACjB,WAAW,EAAE,WAAW,CAAC,WAAW;YACpC,cAAc,EAAE,OAAO,CAAC,cAAc;YACtC,QAAQ,EAAE,OAAO,CAAC,QAAQ;YAC1B,UAAU,EAAE,OAAO,CAAC,UAAU,IAAI,WAAW;YAC7C,aAAa,EAAE,OAAO,CAAC,aAAa;YACpC,WAAW,EAAE,OAAO,CAAC,WAAW;YAChC,SAAS,EAAE,GAAG;YACd,GAAG,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,OAAO,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAC/D,CAAC,CAAC;QAEH,sEAAsE;QACtE,wEAAwE;QACxE,MAAM,SAAS,GAAG;YAChB,QAAQ;YACR,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAC5C,CAAC;QACF,MAAM,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,SAAS,EAAE,CAAC,CAAC;QACzD,GAAG,CAAC,SAAS,GAAG,SAAS,CAAC;QAE1B,MAAM,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,EAAE,SAAS,CAAC,CAAC;QAClD,GAAG,CAAC,MAAM,GAAG,QAAQ,CAAC;QAEtB,OAAO,EAAE,KAAK,EAAE,GAAG,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC;IAChC,CAAC;IAED,YAAY;IAEZ,0BAA0B;IAE1B,KAAK,CAAC,SAAS,CACb,KAAa,EACb,UAAqD,EAAE;QAEvD,OAAO,IAAI,CAAC,YAAY,CAAC,mBAAmB,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IAC/D,CAAC;IAED,2CAA2C;IAC3C,KAAK,CAAC,SAAS,CAAC,KAAa;QAC3B,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAC9C,IAAI,CAAC,GAAG,EAAE,CAAC;YACT,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;QAC5B,CAAC;QAED,MAAM,IAAI,CAAC,YAAY,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QAC7C,MAAM,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QACrC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;IAC3B,CAAC;IAED,YAAY;IAEZ,8CAA8C;IAE9C,sFAAsF;IACtF,KAAK,CAAC,QAAQ,CAAC,KAAa;QAC1B,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAC9C,IAAI,CAAC,GAAG,EAAE,CAAC;YACT,IAAA,kDAA0B,EAAC,KAAK,CAAC,CAAC;QACpC,CAAC;QAED,IAAI,GAAG,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;YAC5B,MAAM,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,KAAK,EAAE,cAAc,CAAC,CAAC;YACtD,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,EAAE,EAAE,aAAa,EAAE,CAAC,GAAG,CAAC,cAAc,IAAI,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC;QAChF,CAAC;QAED,IAAI,GAAG,CAAC,MAAM,KAAK,QAAQ,IAAI,GAAG,CAAC,MAAM,KAAK,WAAW,EAAE,CAAC;YAC1D,IAAA,oDAA4B,EAAC,+CAA8B,CAAC,oBAAoB,EAAE;gBAChF,KAAK;gBACL,MAAM,EAAE,GAAG,CAAC,MAAM;aACnB,CAAC,CAAC;QACL,CAAC;QAED,MAAM,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,EAAE;YAC/B,WAAW,EAAE,SAAS;YACtB,uBAAuB,EAAE,SAAS;YAClC,WAAW,EAAE,SAAS;SACvB,CAAC,CAAC;QACH,MAAM,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,KAAK,EAAE,cAAc,CAAC,CAAC;QAEtD,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,EAAE,EAAE,aAAa,EAAE,CAAC,GAAG,CAAC,cAAc,IAAI,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC;IAChF,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,gBAAgB,CAAC,KAAa;QAClC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACnD,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,IAAA,kDAA0B,EAAC,KAAK,CAAC,CAAC;QACpC,CAAC;QACD,IAAI,QAAQ,CAAC,MAAM,KAAK,eAAe,EAAE,CAAC;YACxC,IAAA,oDAA4B,EAAC,+CAA8B,CAAC,iBAAiB,EAAE;gBAC7E,KAAK;gBACL,MAAM,EAAE,QAAQ,CAAC,MAAM;aACxB,CAAC,CAAC;QACL,CAAC;QAED,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;QACrC,MAAM,QAAQ,GAAG,QAAQ,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;QAC1C,MAAM,aAAa,GAAG,QAAQ,CAAC,aAAa,EAAE,IAAI,EAAE,IAAI,SAAS,CAAC;QAClE,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC;YACxC,OAAO,EAAE,QAAQ,CAAC,OAAO;YACzB,WAAW,EAAE,QAAQ,CAAC,WAAW;YACjC,OAAO,EAAE,QAAQ,CAAC,OAAO;YACzB,QAAQ;YACR,MAAM,EAAE,QAAQ,CAAC,MAAM;YACvB,aAAa;YACb,SAAS,EAAE;gBACT,GAAG,CAAC,QAAQ,CAAC,SAAS,IAAI,EAAE,CAAC;gBAC7B,QAAQ;gBACR,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aAC5C;YACD,KAAK,EAAE,QAAQ,CAAC,KAAK;YACrB,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,QAAQ,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACnE,MAAM,EAAE,SAAS;YACjB,gBAAgB,EAAE,QAAQ,CAAC,gBAAgB;YAC3C,YAAY,EAAE,QAAQ,CAAC,YAAY;YACnC,WAAW,EAAE,QAAQ,CAAC,WAAW;YACjC,kBAAkB,EAAE,QAAQ,CAAC,kBAAkB;YAC/C,cAAc,EAAE,CAAC;YACjB,WAAW,EAAE,QAAQ,CAAC,WAAW;YACjC,cAAc,EAAE,QAAQ,CAAC,cAAc;YACvC,QAAQ,EAAE,QAAQ,CAAC,QAAQ;YAC3B,UAAU,EAAE,QAAQ,CAAC,UAAU;YAC/B,aAAa,EAAE,QAAQ,CAAC,aAAa;YACrC,WAAW,EAAE,QAAQ,CAAC,WAAW;YACjC,iBAAiB,EAAE,QAAQ,CAAC,EAAE;YAC9B,SAAS,EAAE,GAAG;SACf,CAAC,CAAC;QAEH,MAAM,SAAS,GAAG;YAChB,GAAG,CAAC,QAAQ,CAAC,SAAS,IAAI,EAAE,CAAC;YAC7B,QAAQ;YACR,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAC5C,CAAC;QACF,MAAM,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,SAAS,EAAE,CAAC,CAAC;QAE5D,MAAM,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,EAAE,oBAAoB,CAAC,CAAC;QAChE,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC,EAAE,EAAE,CAAC;IAC9B,CAAC;IAED,YAAY;IAEZ,yBAAyB;IAEzB,KAAK,CAAC,MAAM,CAAC,KAAa;QACxB,OAAO,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IACrC,CAAC;IAED,YAAY;IAEZ,2BAA2B;IAEnB,KAAK,CAAC,oBAAoB,CAChC,OAAsC;QAEtC,MAAM,GAAG,GAAG,OAAO,CAAC,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC;QACzC,IAAI,CAAC,GAAG,EAAE,CAAC;YACT,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;QAC7C,CAAC;QAED,MAAM,KAAK,GACT,IAAA,0CAAyB,EAAC,OAAO,CAAC,OAAO,EAAE,KAAK,CAAC;YACjD,CAAC,MAAM,IAAI,CAAC,oBAAoB,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;YAC9C,SAAS,CAAC;QAEZ,OAAO;YACL,GAAG;YACH,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,OAAO,IAAI,EAAE;YACvC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAC5B,CAAC;IACJ,CAAC;CAGF,CAAA;AAhPY,oDAAoB;+BAApB,oBAAoB;IADhC,IAAA,mBAAU,GAAE;6CAKkB,wDAAyB;QACrB,uEAAgC;QACxB,yEAAiC;QAC3C,kEAA8B;QAC5B,sEAAgC;GARtD,oBAAoB,CAgPhC;AAED,YAAY"}
1
+ {"version":3,"file":"background-job.service.js","sourceRoot":"","sources":["../../../../../../../libs/framework/server/background-job/src/lib/background-job.service.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,14 @@
1
+ import { type OnModuleInit } from '@nestjs/common';
2
+ import { ServerCommandRegistry } from '@acorex-platform/framework-server/domain/providers';
3
+ import { DistributedLockPort } from './lock/distributed-lock.port';
4
+ /**
5
+ * Hands the job-engine distributed lock to {@link ServerCommandRegistry}
6
+ * so `@ServerHandler({ concurrency })` can lock across API/worker processes.
7
+ */
8
+ export declare class CommandConcurrencyLockRegistrar implements OnModuleInit {
9
+ private readonly registry;
10
+ private readonly lock;
11
+ constructor(registry: ServerCommandRegistry, lock: DistributedLockPort);
12
+ onModuleInit(): void;
13
+ }
14
+ //# sourceMappingURL=command-concurrency-lock.registrar.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"command-concurrency-lock.registrar.d.ts","sourceRoot":"","sources":["../../../../../../../libs/framework/server/background-job/src/lib/command-concurrency-lock.registrar.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,KAAK,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC/D,OAAO,EAAE,qBAAqB,EAAE,MAAM,oDAAoD,CAAC;AAC3F,OAAO,EAAE,mBAAmB,EAAE,MAAM,8BAA8B,CAAC;AAInE;;;GAGG;AACH,qBACa,+BAAgC,YAAW,YAAY;IAEhE,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,IAAI;gBADJ,QAAQ,EAAE,qBAAqB,EAC/B,IAAI,EAAE,mBAAmB;IAG5C,YAAY,IAAI,IAAI;CAGrB"}
@@ -0,0 +1,29 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CommandConcurrencyLockRegistrar = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const common_1 = require("@nestjs/common");
6
+ const providers_1 = require("@acorex-platform/framework-server/domain/providers");
7
+ const distributed_lock_port_1 = require("./lock/distributed-lock.port");
8
+ //#region ----- Command concurrency lock registrar -----
9
+ /**
10
+ * Hands the job-engine distributed lock to {@link ServerCommandRegistry}
11
+ * so `@ServerHandler({ concurrency })` can lock across API/worker processes.
12
+ */
13
+ let CommandConcurrencyLockRegistrar = class CommandConcurrencyLockRegistrar {
14
+ constructor(registry, lock) {
15
+ this.registry = registry;
16
+ this.lock = lock;
17
+ }
18
+ onModuleInit() {
19
+ this.registry.setConcurrencyLock(this.lock);
20
+ }
21
+ };
22
+ exports.CommandConcurrencyLockRegistrar = CommandConcurrencyLockRegistrar;
23
+ exports.CommandConcurrencyLockRegistrar = CommandConcurrencyLockRegistrar = tslib_1.__decorate([
24
+ (0, common_1.Injectable)(),
25
+ tslib_1.__metadata("design:paramtypes", [providers_1.ServerCommandRegistry,
26
+ distributed_lock_port_1.DistributedLockPort])
27
+ ], CommandConcurrencyLockRegistrar);
28
+ //#endregion
29
+ //# sourceMappingURL=command-concurrency-lock.registrar.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"command-concurrency-lock.registrar.js","sourceRoot":"","sources":["../../../../../../../libs/framework/server/background-job/src/lib/command-concurrency-lock.registrar.ts"],"names":[],"mappings":";;;;AAAA,2CAA+D;AAC/D,kFAA2F;AAC3F,wEAAmE;AAEnE,wDAAwD;AAExD;;;GAGG;AAEI,IAAM,+BAA+B,GAArC,MAAM,+BAA+B;IAC1C,YACmB,QAA+B,EAC/B,IAAyB;QADzB,aAAQ,GAAR,QAAQ,CAAuB;QAC/B,SAAI,GAAJ,IAAI,CAAqB;IACzC,CAAC;IAEJ,YAAY;QACV,IAAI,CAAC,QAAQ,CAAC,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC9C,CAAC;CACF,CAAA;AATY,0EAA+B;0CAA/B,+BAA+B;IAD3C,IAAA,mBAAU,GAAE;6CAGkB,iCAAqB;QACzB,2CAAmB;GAHjC,+BAA+B,CAS3C;AAED,YAAY"}
@@ -1,6 +1,7 @@
1
1
  import type { AXPCancelBackgroundJobResult } from '@acorex-platform/framework-shared/background-job';
2
2
  import { BackgroundJobCapabilitiesResolver } from '../store/background-job-capabilities.resolver';
3
3
  import { BackgroundJobStoreService } from '../store/background-job-store.service';
4
+ import { BackgroundJobTrayRealtimePublisher } from '../tray/background-job-tray-realtime.publisher';
4
5
  /**
5
6
  * Persists cancellation state (survives worker restarts) and aborts locally
6
7
  * running attempts via their registered `AbortController`.
@@ -11,12 +12,15 @@ import { BackgroundJobStoreService } from '../store/background-job-store.service
11
12
  export declare class BackgroundJobCancellationService {
12
13
  private readonly jobStore;
13
14
  private readonly capabilitiesResolver;
15
+ private readonly trayRealtime;
14
16
  private readonly logger;
15
17
  /** AbortControllers for attempts running in THIS process, keyed by jobId. */
16
18
  private readonly localControllers;
17
- constructor(jobStore: BackgroundJobStoreService, capabilitiesResolver: BackgroundJobCapabilitiesResolver);
19
+ constructor(jobStore: BackgroundJobStoreService, capabilitiesResolver: BackgroundJobCapabilitiesResolver, trayRealtime: BackgroundJobTrayRealtimePublisher);
18
20
  registerLocalExecution(jobId: string, controller: AbortController): void;
19
21
  unregisterLocalExecution(jobId: string): void;
22
+ /** True when this process currently holds the attempt AbortController for `jobId`. */
23
+ isExecutingLocally(jobId: string): boolean;
20
24
  isCancellationRequested(jobId: string): Promise<boolean>;
21
25
  requestCancellation(jobId: string, options?: {
22
26
  reason?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"background-job-cancellation.service.d.ts","sourceRoot":"","sources":["../../../../../../../../libs/framework/server/background-job/src/lib/execution/background-job-cancellation.service.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,kDAAkD,CAAC;AACrG,OAAO,EAAE,iCAAiC,EAAE,MAAM,+CAA+C,CAAC;AAClG,OAAO,EAAE,yBAAyB,EAAE,MAAM,uCAAuC,CAAC;AAIlF;;;;;;GAMG;AACH,qBACa,gCAAgC;IAMzC,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,oBAAoB;IANvC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAqD;IAC5E,6EAA6E;IAC7E,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAsC;gBAGpD,QAAQ,EAAE,yBAAyB,EACnC,oBAAoB,EAAE,iCAAiC;IAG1E,sBAAsB,CAAC,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,eAAe,GAAG,IAAI;IAIxE,wBAAwB,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAIvC,uBAAuB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAKxD,mBAAmB,CACvB,KAAK,EAAE,MAAM,EACb,OAAO,GAAE;QAAE,MAAM,CAAC,EAAE,MAAM,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,CAAA;KAAO,GACtD,OAAO,CAAC,4BAA4B,CAAC;CA2CzC"}
1
+ {"version":3,"file":"background-job-cancellation.service.d.ts","sourceRoot":"","sources":["../../../../../../../../libs/framework/server/background-job/src/lib/execution/background-job-cancellation.service.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,kDAAkD,CAAC;AACrG,OAAO,EAAE,iCAAiC,EAAE,MAAM,+CAA+C,CAAC;AAClG,OAAO,EAAE,yBAAyB,EAAE,MAAM,uCAAuC,CAAC;AAClF,OAAO,EAAE,kCAAkC,EAAE,MAAM,gDAAgD,CAAC;AAIpG;;;;;;GAMG;AACH,qBACa,gCAAgC;IAMzC,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,oBAAoB;IACrC,OAAO,CAAC,QAAQ,CAAC,YAAY;IAP/B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAqD;IAC5E,6EAA6E;IAC7E,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAsC;gBAGpD,QAAQ,EAAE,yBAAyB,EACnC,oBAAoB,EAAE,iCAAiC,EACvD,YAAY,EAAE,kCAAkC;IAGnE,sBAAsB,CAAC,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,eAAe,GAAG,IAAI;IAIxE,wBAAwB,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAI7C,sFAAsF;IACtF,kBAAkB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO;IAIpC,uBAAuB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAKxD,mBAAmB,CACvB,KAAK,EAAE,MAAM,EACb,OAAO,GAAE;QAAE,MAAM,CAAC,EAAE,MAAM,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,CAAA;KAAO,GACtD,OAAO,CAAC,4BAA4B,CAAC;CA6CzC"}
@@ -6,6 +6,7 @@ const tslib_1 = require("tslib");
6
6
  const common_1 = require("@nestjs/common");
7
7
  const background_job_capabilities_resolver_1 = require("../store/background-job-capabilities.resolver");
8
8
  const background_job_store_service_1 = require("../store/background-job-store.service");
9
+ const background_job_tray_realtime_publisher_1 = require("../tray/background-job-tray-realtime.publisher");
9
10
  //#region ---- Cancellation service (spec §5.1, §7.3) ----
10
11
  /**
11
12
  * Persists cancellation state (survives worker restarts) and aborts locally
@@ -15,9 +16,10 @@ const background_job_store_service_1 = require("../store/background-job-store.se
15
16
  * against the persisted state; push propagation is Phase 4.
16
17
  */
17
18
  let BackgroundJobCancellationService = BackgroundJobCancellationService_1 = class BackgroundJobCancellationService {
18
- constructor(jobStore, capabilitiesResolver) {
19
+ constructor(jobStore, capabilitiesResolver, trayRealtime) {
19
20
  this.jobStore = jobStore;
20
21
  this.capabilitiesResolver = capabilitiesResolver;
22
+ this.trayRealtime = trayRealtime;
21
23
  this.logger = new common_1.Logger(BackgroundJobCancellationService_1.name);
22
24
  /** AbortControllers for attempts running in THIS process, keyed by jobId. */
23
25
  this.localControllers = new Map();
@@ -28,6 +30,10 @@ let BackgroundJobCancellationService = BackgroundJobCancellationService_1 = clas
28
30
  unregisterLocalExecution(jobId) {
29
31
  this.localControllers.delete(jobId);
30
32
  }
33
+ /** True when this process currently holds the attempt AbortController for `jobId`. */
34
+ isExecutingLocally(jobId) {
35
+ return this.localControllers.has(jobId);
36
+ }
31
37
  async isCancellationRequested(jobId) {
32
38
  const job = await this.jobStore.getOne(jobId);
33
39
  return Boolean(job?.cancellationRequestedAt) || job?.status === 'cancelled';
@@ -51,6 +57,8 @@ let BackgroundJobCancellationService = BackgroundJobCancellationService_1 = clas
51
57
  cancelledBy: options.cancelledBy,
52
58
  completedAt: now,
53
59
  });
60
+ job.status = 'cancelled';
61
+ await this.trayRealtime.notify(job, 'cancelled');
54
62
  return { success: true, status: 'cancelled' };
55
63
  }
56
64
  // Running: requires cooperative cancellation support (job row, schedule, or command contributor).
@@ -73,7 +81,8 @@ exports.BackgroundJobCancellationService = BackgroundJobCancellationService;
73
81
  exports.BackgroundJobCancellationService = BackgroundJobCancellationService = BackgroundJobCancellationService_1 = tslib_1.__decorate([
74
82
  (0, common_1.Injectable)(),
75
83
  tslib_1.__metadata("design:paramtypes", [background_job_store_service_1.BackgroundJobStoreService,
76
- background_job_capabilities_resolver_1.BackgroundJobCapabilitiesResolver])
84
+ background_job_capabilities_resolver_1.BackgroundJobCapabilitiesResolver,
85
+ background_job_tray_realtime_publisher_1.BackgroundJobTrayRealtimePublisher])
77
86
  ], BackgroundJobCancellationService);
78
87
  //#endregion
79
88
  //# sourceMappingURL=background-job-cancellation.service.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"background-job-cancellation.service.js","sourceRoot":"","sources":["../../../../../../../../libs/framework/server/background-job/src/lib/execution/background-job-cancellation.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"background-job-cancellation.service.js","sourceRoot":"","sources":["../../../../../../../../libs/framework/server/background-job/src/lib/execution/background-job-cancellation.service.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,9 @@
1
1
  import { ModuleRef } from '@nestjs/core';
2
- import { type AXPBackgroundJob, type AXPBackgroundJobAttemptTrigger } from '@acorex-platform/framework-shared/background-job';
2
+ import { type AXPBackgroundJob, type AXPBackgroundJobAttempt, type AXPBackgroundJobAttemptTrigger } from '@acorex-platform/framework-shared/background-job';
3
3
  import { ServerCommandRegistry } from '@acorex-platform/framework-server/domain/providers';
4
4
  import { DistributedLockPort } from '../lock/distributed-lock.port';
5
5
  import { BackgroundJobObservabilityPublisher } from '../observability/background-job-observability.publisher';
6
+ import { BackgroundJobNotificationPort } from '../notification/background-job-notification.port';
6
7
  import { BackgroundJobAttemptStoreService } from '../store/background-job-attempt-store.service';
7
8
  import { BackgroundJobScheduleStoreService } from '../store/background-job-schedule-store.service';
8
9
  import { BackgroundJobCapabilitiesResolver } from '../store/background-job-capabilities.resolver';
@@ -10,6 +11,7 @@ import { BackgroundJobStoreService } from '../store/background-job-store.service
10
11
  import { BackgroundJobAttemptFactory } from './background-job-attempt.factory';
11
12
  import { BackgroundJobCancellationService } from './background-job-cancellation.service';
12
13
  import { BackgroundJobRetrySchedulerService } from './background-job-retry-scheduler.service';
14
+ import { BackgroundJobTrayRealtimePublisher } from '../tray/background-job-tray-realtime.publisher';
13
15
  export interface ExecuteAttemptInput {
14
16
  jobId: string;
15
17
  attemptTrigger: AXPBackgroundJobAttemptTrigger;
@@ -29,9 +31,11 @@ export declare class BackgroundJobExecutionService {
29
31
  private readonly retryScheduler;
30
32
  private readonly lock;
31
33
  private readonly observability;
34
+ private readonly notifications;
35
+ private readonly trayRealtime;
32
36
  private readonly moduleRef;
33
37
  private readonly logger;
34
- constructor(jobStore: BackgroundJobStoreService, attemptStore: BackgroundJobAttemptStoreService, scheduleStore: BackgroundJobScheduleStoreService, capabilitiesResolver: BackgroundJobCapabilitiesResolver, attemptFactory: BackgroundJobAttemptFactory, serverCommands: ServerCommandRegistry, cancellation: BackgroundJobCancellationService, retryScheduler: BackgroundJobRetrySchedulerService, lock: DistributedLockPort, observability: BackgroundJobObservabilityPublisher, moduleRef: ModuleRef);
38
+ constructor(jobStore: BackgroundJobStoreService, attemptStore: BackgroundJobAttemptStoreService, scheduleStore: BackgroundJobScheduleStoreService, capabilitiesResolver: BackgroundJobCapabilitiesResolver, attemptFactory: BackgroundJobAttemptFactory, serverCommands: ServerCommandRegistry, cancellation: BackgroundJobCancellationService, retryScheduler: BackgroundJobRetrySchedulerService, lock: DistributedLockPort, observability: BackgroundJobObservabilityPublisher, notifications: BackgroundJobNotificationPort, trayRealtime: BackgroundJobTrayRealtimePublisher, moduleRef: ModuleRef);
35
39
  executeAttempt(input: ExecuteAttemptInput): Promise<void>;
36
40
  private executeAttemptInContext;
37
41
  /**
@@ -39,6 +43,11 @@ export declare class BackgroundJobExecutionService {
39
43
  * reconciling Redis `failedReason` into the jobs UI).
40
44
  */
41
45
  markQueueDeliveryFailure(jobId: string, error: unknown, job?: AXPBackgroundJob | null): Promise<boolean>;
46
+ /**
47
+ * Marks a stale `running` attempt as `abandoned` and applies the job retry policy.
48
+ * No-op when this process still owns the attempt.
49
+ */
50
+ recoverAbandonedAttempt(attempt: AXPBackgroundJobAttempt): Promise<boolean>;
42
51
  private runAttempt;
43
52
  private ensureJobCapabilities;
44
53
  private createRuntimeContext;
@@ -51,5 +60,9 @@ export declare class BackgroundJobExecutionService {
51
60
  private trackScheduleOutcome;
52
61
  private publishAttempt;
53
62
  private publishJob;
63
+ private publishTrayTerminal;
64
+ private publishTrayRefresh;
65
+ private notifyJobTerminal;
66
+ private notifyScheduleThreshold;
54
67
  }
55
68
  //# sourceMappingURL=background-job-execution.service.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"background-job-execution.service.d.ts","sourceRoot":"","sources":["../../../../../../../../libs/framework/server/background-job/src/lib/execution/background-job-execution.service.ts"],"names":[],"mappings":"AACA,OAAO,EAAoB,SAAS,EAAE,MAAM,cAAc,CAAC;AAE3D,OAAO,EASL,KAAK,gBAAgB,EAErB,KAAK,8BAA8B,EAGpC,MAAM,kDAAkD,CAAC;AAC1D,OAAO,EAAE,qBAAqB,EAAE,MAAM,oDAAoD,CAAC;AAW3F,OAAO,EAAE,mBAAmB,EAA8B,MAAM,+BAA+B,CAAC;AAChG,OAAO,EAAE,mCAAmC,EAAE,MAAM,yDAAyD,CAAC;AAC9G,OAAO,EAAE,gCAAgC,EAAE,MAAM,+CAA+C,CAAC;AACjG,OAAO,EAAE,iCAAiC,EAAE,MAAM,gDAAgD,CAAC;AACnG,OAAO,EAAE,iCAAiC,EAAE,MAAM,+CAA+C,CAAC;AAClG,OAAO,EAAE,yBAAyB,EAAE,MAAM,uCAAuC,CAAC;AAClF,OAAO,EAAE,2BAA2B,EAAE,MAAM,kCAAkC,CAAC;AAC/E,OAAO,EAAE,gCAAgC,EAAE,MAAM,uCAAuC,CAAC;AAEzF,OAAO,EAAE,kCAAkC,EAAE,MAAM,0CAA0C,CAAC;AAI9F,MAAM,WAAW,mBAAmB;IAClC,KAAK,EAAE,MAAM,CAAC;IACd,cAAc,EAAE,8BAA8B,CAAC;IAC/C,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAcD,qBACa,6BAA6B;IAItC,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,YAAY;IAC7B,OAAO,CAAC,QAAQ,CAAC,aAAa;IAC9B,OAAO,CAAC,QAAQ,CAAC,oBAAoB;IACrC,OAAO,CAAC,QAAQ,CAAC,cAAc;IAC/B,OAAO,CAAC,QAAQ,CAAC,cAAc;IAC/B,OAAO,CAAC,QAAQ,CAAC,YAAY;IAC7B,OAAO,CAAC,QAAQ,CAAC,cAAc;IAC/B,OAAO,CAAC,QAAQ,CAAC,IAAI;IACrB,OAAO,CAAC,QAAQ,CAAC,aAAa;IAC9B,OAAO,CAAC,QAAQ,CAAC,SAAS;IAb5B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAkD;gBAGtD,QAAQ,EAAE,yBAAyB,EACnC,YAAY,EAAE,gCAAgC,EAC9C,aAAa,EAAE,iCAAiC,EAChD,oBAAoB,EAAE,iCAAiC,EACvD,cAAc,EAAE,2BAA2B,EAC3C,cAAc,EAAE,qBAAqB,EACrC,YAAY,EAAE,gCAAgC,EAC9C,cAAc,EAAE,kCAAkC,EAClD,IAAI,EAAE,mBAAmB,EACzB,aAAa,EAAE,mCAAmC,EAClD,SAAS,EAAE,SAAS;IAGjC,cAAc,CAAC,KAAK,EAAE,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC;YAyCjD,uBAAuB;IAgErC;;;OAGG;IACG,wBAAwB,CAC5B,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,OAAO,EACd,GAAG,CAAC,EAAE,gBAAgB,GAAG,IAAI,GAC5B,OAAO,CAAC,OAAO,CAAC;YA0CL,UAAU;YAsIV,qBAAqB;IAiBnC,OAAO,CAAC,oBAAoB;IA2B5B,iFAAiF;IACjF,OAAO,CAAC,aAAa;YAkBP,wBAAwB;YAgCxB,wBAAwB;YA0BxB,qBAAqB;YAkErB,iBAAiB;YAejB,oBAAoB;YAqDpB,cAAc;YAWd,UAAU;CASzB"}
1
+ {"version":3,"file":"background-job-execution.service.d.ts","sourceRoot":"","sources":["../../../../../../../../libs/framework/server/background-job/src/lib/execution/background-job-execution.service.ts"],"names":[],"mappings":"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"}