@acorex-platform/framework-shared 0.0.18 → 0.0.20

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 (288) hide show
  1. package/background-job/src/lib/background-job-result.util.d.ts.map +1 -1
  2. package/background-job/src/lib/background-job-result.util.js +2 -3
  3. package/background-job/src/lib/background-job-result.util.js.map +1 -1
  4. package/background-job/src/lib/background-job.constants.d.ts +2 -5
  5. package/background-job/src/lib/background-job.constants.d.ts.map +1 -1
  6. package/background-job/src/lib/background-job.constants.js +13 -3
  7. package/background-job/src/lib/background-job.constants.js.map +1 -1
  8. package/background-job/src/lib/background-job.types.d.ts +6 -3
  9. package/background-job/src/lib/background-job.types.d.ts.map +1 -1
  10. package/background-job/src/lib/background-job.types.js +12 -11
  11. package/background-job/src/lib/background-job.types.js.map +1 -1
  12. package/core/src/lib/context-definition/context-definition.types.d.ts +24 -0
  13. package/core/src/lib/context-definition/context-definition.types.d.ts.map +1 -0
  14. package/core/src/lib/context-definition/context-definition.types.js +10 -0
  15. package/core/src/lib/context-definition/context-definition.types.js.map +1 -0
  16. package/core/src/lib/context-definition/index.d.ts +2 -0
  17. package/core/src/lib/context-definition/index.d.ts.map +1 -0
  18. package/core/src/lib/context-definition/index.js +5 -0
  19. package/core/src/lib/context-definition/index.js.map +1 -0
  20. package/core/src/lib/core/response.types.d.ts +2 -4
  21. package/core/src/lib/core/response.types.d.ts.map +1 -1
  22. package/core/src/lib/core/response.types.js +0 -1
  23. package/core/src/lib/core/response.types.js.map +1 -1
  24. package/core/src/lib/data/data.types.d.ts +5 -0
  25. package/core/src/lib/data/data.types.d.ts.map +1 -1
  26. package/core/src/lib/data/data.types.js.map +1 -1
  27. package/core/src/lib/domain/address.types.d.ts +6 -3
  28. package/core/src/lib/domain/address.types.d.ts.map +1 -1
  29. package/core/src/lib/domain/address.types.js +0 -1
  30. package/core/src/lib/domain/address.types.js.map +1 -1
  31. package/core/src/lib/domain/format-address.util.d.ts +1 -1
  32. package/core/src/lib/domain/format-address.util.d.ts.map +1 -1
  33. package/core/src/lib/domain/format-address.util.js +11 -7
  34. package/core/src/lib/domain/format-address.util.js.map +1 -1
  35. package/core/src/lib/errors/index.d.ts +3 -0
  36. package/core/src/lib/errors/index.d.ts.map +1 -0
  37. package/core/src/lib/errors/index.js +6 -0
  38. package/core/src/lib/errors/index.js.map +1 -0
  39. package/core/src/lib/errors/platform-error-codes.d.ts +17 -0
  40. package/core/src/lib/errors/platform-error-codes.d.ts.map +1 -0
  41. package/core/src/lib/errors/platform-error-codes.js +21 -0
  42. package/core/src/lib/errors/platform-error-codes.js.map +1 -0
  43. package/core/src/lib/errors/request-error.d.ts +35 -0
  44. package/core/src/lib/errors/request-error.d.ts.map +1 -0
  45. package/core/src/lib/errors/request-error.js +116 -0
  46. package/core/src/lib/errors/request-error.js.map +1 -0
  47. package/core/src/lib/index.d.ts +2 -0
  48. package/core/src/lib/index.d.ts.map +1 -1
  49. package/core/src/lib/index.js +2 -0
  50. package/core/src/lib/index.js.map +1 -1
  51. package/core/src/lib/integration/constants/category.constants.d.ts +1 -0
  52. package/core/src/lib/integration/constants/category.constants.d.ts.map +1 -1
  53. package/core/src/lib/integration/constants/category.constants.js +1 -0
  54. package/core/src/lib/integration/constants/category.constants.js.map +1 -1
  55. package/core/src/lib/integration/integration.types.d.ts +1 -0
  56. package/core/src/lib/integration/integration.types.d.ts.map +1 -1
  57. package/core/src/lib/integration/integration.types.js.map +1 -1
  58. package/core/src/lib/interaction/index.d.ts +1 -0
  59. package/core/src/lib/interaction/index.d.ts.map +1 -1
  60. package/core/src/lib/interaction/index.js +1 -0
  61. package/core/src/lib/interaction/index.js.map +1 -1
  62. package/core/src/lib/interaction/interactive.types.d.ts +64 -20
  63. package/core/src/lib/interaction/interactive.types.d.ts.map +1 -1
  64. package/core/src/lib/interaction/interactive.types.js.map +1 -1
  65. package/core/src/lib/interaction/runtime-result.util.d.ts +67 -0
  66. package/core/src/lib/interaction/runtime-result.util.d.ts.map +1 -0
  67. package/core/src/lib/interaction/runtime-result.util.js +167 -0
  68. package/core/src/lib/interaction/runtime-result.util.js.map +1 -0
  69. package/core/src/lib/keys/index.d.ts +0 -1
  70. package/core/src/lib/keys/index.d.ts.map +1 -1
  71. package/core/src/lib/keys/index.js +0 -1
  72. package/core/src/lib/keys/index.js.map +1 -1
  73. package/core/src/lib/keys/regional-settings.keys.d.ts +6 -1
  74. package/core/src/lib/keys/regional-settings.keys.d.ts.map +1 -1
  75. package/core/src/lib/keys/regional-settings.keys.js +5 -0
  76. package/core/src/lib/keys/regional-settings.keys.js.map +1 -1
  77. package/core/src/lib/multi-language-string/resolve-multi-language-string.util.d.ts +9 -0
  78. package/core/src/lib/multi-language-string/resolve-multi-language-string.util.d.ts.map +1 -1
  79. package/core/src/lib/multi-language-string/resolve-multi-language-string.util.js +25 -7
  80. package/core/src/lib/multi-language-string/resolve-multi-language-string.util.js.map +1 -1
  81. package/core/src/lib/utils/object-util.d.ts +8 -1
  82. package/core/src/lib/utils/object-util.d.ts.map +1 -1
  83. package/core/src/lib/utils/object-util.js +79 -6
  84. package/core/src/lib/utils/object-util.js.map +1 -1
  85. package/core/src/lib/widgets/widgets-catalog.d.ts +1 -0
  86. package/core/src/lib/widgets/widgets-catalog.d.ts.map +1 -1
  87. package/core/src/lib/widgets/widgets-catalog.js +1 -0
  88. package/core/src/lib/widgets/widgets-catalog.js.map +1 -1
  89. package/core/src/lib/widgets/widgets-list.d.ts +1 -0
  90. package/core/src/lib/widgets/widgets-list.d.ts.map +1 -1
  91. package/core/src/lib/widgets/widgets-list.js +1 -0
  92. package/core/src/lib/widgets/widgets-list.js.map +1 -1
  93. package/core/src/lib/workflow/activity.types.js +1 -1
  94. package/domain/src/lib/definitions/permission-definition.types.d.ts +4 -0
  95. package/domain/src/lib/definitions/permission-definition.types.d.ts.map +1 -1
  96. package/domain/src/lib/definitions/permission-definition.types.js.map +1 -1
  97. package/domain/src/lib/definitions/query-registry.types.d.ts +50 -4
  98. package/domain/src/lib/definitions/query-registry.types.d.ts.map +1 -1
  99. package/domain/src/lib/definitions/query-registry.types.js.map +1 -1
  100. package/domain/src/lib/definitions/widget-registry.types.d.ts +6 -1
  101. package/domain/src/lib/definitions/widget-registry.types.d.ts.map +1 -1
  102. package/domain/src/lib/definitions/widget-registry.types.js.map +1 -1
  103. package/entity/src/lib/constants/entity-events.keys.d.ts +4 -0
  104. package/entity/src/lib/constants/entity-events.keys.d.ts.map +1 -1
  105. package/entity/src/lib/constants/entity-events.keys.js +3 -0
  106. package/entity/src/lib/constants/entity-events.keys.js.map +1 -1
  107. package/entity/src/lib/constants/index.d.ts +0 -1
  108. package/entity/src/lib/constants/index.d.ts.map +1 -1
  109. package/entity/src/lib/constants/index.js +0 -1
  110. package/entity/src/lib/constants/index.js.map +1 -1
  111. package/entity/src/lib/helpers/entity-action.helpers.d.ts +1 -0
  112. package/entity/src/lib/helpers/entity-action.helpers.d.ts.map +1 -1
  113. package/entity/src/lib/helpers/entity-action.helpers.js +18 -10
  114. package/entity/src/lib/helpers/entity-action.helpers.js.map +1 -1
  115. package/entity/src/lib/types/entity-display-field.types.d.ts +5 -1
  116. package/entity/src/lib/types/entity-display-field.types.d.ts.map +1 -1
  117. package/entity/src/lib/types/entity-display-field.types.js.map +1 -1
  118. package/entity/src/lib/types/entity-event-payload.types.d.ts +31 -0
  119. package/entity/src/lib/types/entity-event-payload.types.d.ts.map +1 -0
  120. package/entity/src/lib/types/entity-event-payload.types.js +5 -0
  121. package/entity/src/lib/types/entity-event-payload.types.js.map +1 -0
  122. package/entity/src/lib/types/entity-model.types.d.ts +10 -4
  123. package/entity/src/lib/types/entity-model.types.d.ts.map +1 -1
  124. package/entity/src/lib/types/entity-model.types.js.map +1 -1
  125. package/entity/src/lib/types/entity-property.types.d.ts +10 -1
  126. package/entity/src/lib/types/entity-property.types.d.ts.map +1 -1
  127. package/entity/src/lib/types/entity-property.types.js.map +1 -1
  128. package/entity/src/lib/types/entity-query-view.types.d.ts +4 -0
  129. package/entity/src/lib/types/entity-query-view.types.d.ts.map +1 -1
  130. package/entity/src/lib/types/entity-query-view.types.js.map +1 -1
  131. package/entity/src/lib/types/index.d.ts +1 -0
  132. package/entity/src/lib/types/index.d.ts.map +1 -1
  133. package/entity/src/lib/types/index.js +1 -0
  134. package/entity/src/lib/types/index.js.map +1 -1
  135. package/entity/src/lib/types/lookup-widget.types.d.ts +21 -0
  136. package/entity/src/lib/types/lookup-widget.types.d.ts.map +1 -1
  137. package/entity/src/lib/types/lookup-widget.types.js.map +1 -1
  138. package/entity/src/lib/utils/entity-list-filter-definitions.util.d.ts.map +1 -1
  139. package/entity/src/lib/utils/entity-list-filter-definitions.util.js +2 -1
  140. package/entity/src/lib/utils/entity-list-filter-definitions.util.js.map +1 -1
  141. package/entity/src/lib/utils/entity-query-fields.util.d.ts +17 -0
  142. package/entity/src/lib/utils/entity-query-fields.util.d.ts.map +1 -0
  143. package/entity/src/lib/utils/entity-query-fields.util.js +46 -0
  144. package/entity/src/lib/utils/entity-query-fields.util.js.map +1 -0
  145. package/entity/src/lib/utils/index.d.ts +1 -0
  146. package/entity/src/lib/utils/index.d.ts.map +1 -1
  147. package/entity/src/lib/utils/index.js +1 -0
  148. package/entity/src/lib/utils/index.js.map +1 -1
  149. package/entity/src/lib/utils/lookup-create-options.util.d.ts.map +1 -1
  150. package/entity/src/lib/utils/lookup-create-options.util.js +4 -2
  151. package/entity/src/lib/utils/lookup-create-options.util.js.map +1 -1
  152. package/entity/src/lib/utils/page-list-widget-name.util.d.ts +3 -2
  153. package/entity/src/lib/utils/page-list-widget-name.util.d.ts.map +1 -1
  154. package/entity/src/lib/utils/page-list-widget-name.util.js +3 -2
  155. package/entity/src/lib/utils/page-list-widget-name.util.js.map +1 -1
  156. package/package.json +1 -1
  157. package/rule-engine/src/lib/rule-engine.constants.d.ts +4 -0
  158. package/rule-engine/src/lib/rule-engine.constants.d.ts.map +1 -1
  159. package/rule-engine/src/lib/rule-engine.constants.js +4 -0
  160. package/rule-engine/src/lib/rule-engine.constants.js.map +1 -1
  161. package/runtime/src/catalog-sidecars.d.ts +2 -0
  162. package/runtime/src/catalog-sidecars.d.ts.map +1 -1
  163. package/runtime/src/catalog-sidecars.js +2 -0
  164. package/runtime/src/catalog-sidecars.js.map +1 -1
  165. package/runtime/src/lib/commands/auth-command-keys.d.ts +10 -0
  166. package/runtime/src/lib/commands/auth-command-keys.d.ts.map +1 -0
  167. package/runtime/src/lib/commands/auth-command-keys.js +15 -0
  168. package/runtime/src/lib/commands/auth-command-keys.js.map +1 -0
  169. package/runtime/src/lib/commands/bulk-command-failure.util.d.ts +24 -0
  170. package/runtime/src/lib/commands/bulk-command-failure.util.d.ts.map +1 -0
  171. package/runtime/src/lib/commands/bulk-command-failure.util.js +75 -0
  172. package/runtime/src/lib/commands/bulk-command-failure.util.js.map +1 -0
  173. package/runtime/src/lib/commands/bulk-command.types.d.ts +45 -0
  174. package/runtime/src/lib/commands/bulk-command.types.d.ts.map +1 -0
  175. package/runtime/src/lib/commands/bulk-command.types.js +12 -0
  176. package/runtime/src/lib/commands/bulk-command.types.js.map +1 -0
  177. package/runtime/src/lib/commands/catalog-command-definition.d.ts +1 -1
  178. package/runtime/src/lib/commands/catalog-command-definition.d.ts.map +1 -1
  179. package/runtime/src/lib/commands/catalog-command-definition.js +2 -2
  180. package/runtime/src/lib/commands/catalog-command-definition.js.map +1 -1
  181. package/runtime/src/lib/commands/command-definition.types.d.ts.map +1 -1
  182. package/runtime/src/lib/commands/command-definition.types.js.map +1 -1
  183. package/runtime/src/lib/commands/command-execute-options.types.d.ts +8 -0
  184. package/runtime/src/lib/commands/command-execute-options.types.d.ts.map +1 -0
  185. package/runtime/src/lib/commands/command-execute-options.types.js +5 -0
  186. package/runtime/src/lib/commands/command-execute-options.types.js.map +1 -0
  187. package/runtime/src/lib/commands/command.interface.d.ts +15 -4
  188. package/runtime/src/lib/commands/command.interface.d.ts.map +1 -1
  189. package/runtime/src/lib/commands/command.interface.js +2 -0
  190. package/runtime/src/lib/commands/command.interface.js.map +1 -1
  191. package/runtime/src/lib/commands/command.middleware.d.ts +22 -0
  192. package/runtime/src/lib/commands/command.middleware.d.ts.map +1 -0
  193. package/runtime/src/lib/commands/command.middleware.js +16 -0
  194. package/runtime/src/lib/commands/command.middleware.js.map +1 -0
  195. package/runtime/src/lib/commands/entity-action-command-input.d.ts +101 -0
  196. package/runtime/src/lib/commands/entity-action-command-input.d.ts.map +1 -0
  197. package/runtime/src/lib/commands/entity-action-command-input.js +204 -0
  198. package/runtime/src/lib/commands/entity-action-command-input.js.map +1 -0
  199. package/runtime/src/lib/commands/entity-command-keys.d.ts +29 -1
  200. package/runtime/src/lib/commands/entity-command-keys.d.ts.map +1 -1
  201. package/runtime/src/lib/commands/entity-command-keys.js +64 -9
  202. package/runtime/src/lib/commands/entity-command-keys.js.map +1 -1
  203. package/runtime/src/lib/commands/file-command-keys.d.ts +10 -0
  204. package/runtime/src/lib/commands/file-command-keys.d.ts.map +1 -0
  205. package/runtime/src/lib/commands/file-command-keys.js +15 -0
  206. package/runtime/src/lib/commands/file-command-keys.js.map +1 -0
  207. package/runtime/src/lib/commands/lock-command-keys.d.ts +5 -0
  208. package/runtime/src/lib/commands/lock-command-keys.d.ts.map +1 -0
  209. package/runtime/src/lib/commands/lock-command-keys.js +10 -0
  210. package/runtime/src/lib/commands/lock-command-keys.js.map +1 -0
  211. package/runtime/src/lib/commands/presence-command-keys.d.ts +2 -0
  212. package/runtime/src/lib/commands/presence-command-keys.d.ts.map +1 -0
  213. package/runtime/src/lib/commands/presence-command-keys.js +7 -0
  214. package/runtime/src/lib/commands/presence-command-keys.js.map +1 -0
  215. package/runtime/src/lib/commands/workflow-command-keys.d.ts +21 -0
  216. package/runtime/src/lib/commands/workflow-command-keys.d.ts.map +1 -0
  217. package/runtime/src/lib/commands/workflow-command-keys.js +26 -0
  218. package/runtime/src/lib/commands/workflow-command-keys.js.map +1 -0
  219. package/runtime/src/lib/index.d.ts +33 -13
  220. package/runtime/src/lib/index.d.ts.map +1 -1
  221. package/runtime/src/lib/index.js +33 -13
  222. package/runtime/src/lib/index.js.map +1 -1
  223. package/runtime/src/lib/queries/define-query.d.ts +18 -2
  224. package/runtime/src/lib/queries/define-query.d.ts.map +1 -1
  225. package/runtime/src/lib/queries/define-query.js +140 -2
  226. package/runtime/src/lib/queries/define-query.js.map +1 -1
  227. package/runtime/src/lib/queries/domain-query-keys.d.ts +15 -0
  228. package/runtime/src/lib/queries/domain-query-keys.d.ts.map +1 -0
  229. package/runtime/src/lib/queries/domain-query-keys.js +8 -0
  230. package/runtime/src/lib/queries/domain-query-keys.js.map +1 -0
  231. package/runtime/src/lib/queries/presence-query-keys.d.ts +3 -0
  232. package/runtime/src/lib/queries/presence-query-keys.d.ts.map +1 -0
  233. package/runtime/src/lib/queries/presence-query-keys.js +8 -0
  234. package/runtime/src/lib/queries/presence-query-keys.js.map +1 -0
  235. package/runtime/src/lib/queries/query-capability.types.d.ts +71 -0
  236. package/runtime/src/lib/queries/query-capability.types.d.ts.map +1 -0
  237. package/runtime/src/lib/queries/query-capability.types.js +15 -0
  238. package/runtime/src/lib/queries/query-capability.types.js.map +1 -0
  239. package/runtime/src/lib/queries/query-definition.types.d.ts +48 -1
  240. package/runtime/src/lib/queries/query-definition.types.d.ts.map +1 -1
  241. package/runtime/src/lib/queries/query-definition.types.js +3 -1
  242. package/runtime/src/lib/queries/query-definition.types.js.map +1 -1
  243. package/runtime/src/lib/queries/query-execute-options.types.d.ts +23 -0
  244. package/runtime/src/lib/queries/query-execute-options.types.d.ts.map +1 -0
  245. package/runtime/src/lib/queries/query-execute-options.types.js +5 -0
  246. package/runtime/src/lib/queries/query-execute-options.types.js.map +1 -0
  247. package/runtime/src/lib/queries/query-input.packs.d.ts +27 -0
  248. package/runtime/src/lib/queries/query-input.packs.d.ts.map +1 -0
  249. package/runtime/src/lib/queries/query-input.packs.js +53 -0
  250. package/runtime/src/lib/queries/query-input.packs.js.map +1 -0
  251. package/runtime/src/lib/queries/query-kind.types.d.ts +10 -0
  252. package/runtime/src/lib/queries/query-kind.types.d.ts.map +1 -0
  253. package/runtime/src/lib/queries/query-kind.types.js +7 -0
  254. package/runtime/src/lib/queries/query-kind.types.js.map +1 -0
  255. package/runtime/src/lib/queries/query.interface.d.ts +33 -2
  256. package/runtime/src/lib/queries/query.interface.d.ts.map +1 -1
  257. package/runtime/src/lib/queries/query.interface.js +2 -0
  258. package/runtime/src/lib/queries/query.interface.js.map +1 -1
  259. package/runtime/src/lib/queries/query.middleware.d.ts +17 -0
  260. package/runtime/src/lib/queries/query.middleware.d.ts.map +1 -0
  261. package/runtime/src/lib/queries/query.middleware.js +16 -0
  262. package/runtime/src/lib/queries/query.middleware.js.map +1 -0
  263. package/runtime/src/lib/transports/runtime-invoke-url.util.d.ts +12 -0
  264. package/runtime/src/lib/transports/runtime-invoke-url.util.d.ts.map +1 -0
  265. package/runtime/src/lib/transports/runtime-invoke-url.util.js +32 -0
  266. package/runtime/src/lib/transports/runtime-invoke-url.util.js.map +1 -0
  267. package/runtime/src/lib/transports/runtime-transport.keys.d.ts +14 -0
  268. package/runtime/src/lib/transports/runtime-transport.keys.d.ts.map +1 -0
  269. package/runtime/src/lib/transports/runtime-transport.keys.js +19 -0
  270. package/runtime/src/lib/transports/runtime-transport.keys.js.map +1 -0
  271. package/runtime/src/lib/widgets/get-widgets-for-ai-agent-scope.util.d.ts +13 -0
  272. package/runtime/src/lib/widgets/get-widgets-for-ai-agent-scope.util.d.ts.map +1 -0
  273. package/runtime/src/lib/widgets/get-widgets-for-ai-agent-scope.util.js +77 -0
  274. package/runtime/src/lib/widgets/get-widgets-for-ai-agent-scope.util.js.map +1 -0
  275. package/runtime/src/lib/widgets/widget-definition.types.d.ts +7 -1
  276. package/runtime/src/lib/widgets/widget-definition.types.d.ts.map +1 -1
  277. package/runtime/src/lib/widgets/widget-definition.types.js.map +1 -1
  278. package/widget-core/src/lib/types/widget.types.d.ts +1 -1
  279. package/widget-core/src/lib/types/widget.types.d.ts.map +1 -1
  280. package/widget-core/src/lib/types/widget.types.js.map +1 -1
  281. package/core/src/lib/keys/platform-core-datasource.keys.d.ts +0 -6
  282. package/core/src/lib/keys/platform-core-datasource.keys.d.ts.map +0 -1
  283. package/core/src/lib/keys/platform-core-datasource.keys.js +0 -11
  284. package/core/src/lib/keys/platform-core-datasource.keys.js.map +0 -1
  285. package/entity/src/lib/constants/entity-datasource.keys.d.ts +0 -5
  286. package/entity/src/lib/constants/entity-datasource.keys.d.ts.map +0 -1
  287. package/entity/src/lib/constants/entity-datasource.keys.js +0 -10
  288. package/entity/src/lib/constants/entity-datasource.keys.js.map +0 -1
@@ -0,0 +1,75 @@
1
+ "use strict";
2
+ //#region ---- Imports ----
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.analyzeBulkCommandFailures = analyzeBulkCommandFailures;
5
+ exports.buildBulkCommandFailureMessage = buildBulkCommandFailureMessage;
6
+ //#endregion
7
+ //#region ---- Analyze bulk failures ----
8
+ /**
9
+ * Classifies failed bulk item results for UX:
10
+ * - `single` — exactly one failure (show that item’s reason)
11
+ * - `shared-code` — 2+ failures, all with the same `message.code`
12
+ * - `mixed` — 2+ failures with differing / missing codes (summary only)
13
+ */
14
+ function analyzeBulkCommandFailures(results) {
15
+ var _a, _b;
16
+ const failed = (results !== null && results !== void 0 ? results : []).filter((item) => !item.success);
17
+ if (failed.length === 0) {
18
+ return { failed, mode: 'none' };
19
+ }
20
+ if (failed.length === 1) {
21
+ const representative = (_a = failed[0]) === null || _a === void 0 ? void 0 : _a.message;
22
+ return {
23
+ failed,
24
+ mode: 'single',
25
+ sharedCode: typeof (representative === null || representative === void 0 ? void 0 : representative.code) === 'string' ? representative.code : undefined,
26
+ representative,
27
+ };
28
+ }
29
+ const codes = failed
30
+ .map((item) => { var _a; return (_a = item.message) === null || _a === void 0 ? void 0 : _a.code; })
31
+ .filter((code) => typeof code === 'string' && code.trim().length > 0);
32
+ if (codes.length === failed.length && new Set(codes).size === 1) {
33
+ return {
34
+ failed,
35
+ mode: 'shared-code',
36
+ sharedCode: codes[0],
37
+ representative: (_b = failed[0]) === null || _b === void 0 ? void 0 : _b.message,
38
+ };
39
+ }
40
+ return { failed, mode: 'mixed' };
41
+ }
42
+ /**
43
+ * Top-level soft-fail `message` for a bulk command response.
44
+ * Lifts `code` when there is a single failure or all failures share one code.
45
+ */
46
+ function buildBulkCommandFailureMessage(succeeded, failed, results) {
47
+ var _a, _b, _c, _d;
48
+ if (failed <= 0) {
49
+ return undefined;
50
+ }
51
+ const analysis = analyzeBulkCommandFailures(results);
52
+ if (analysis.mode === 'single' || analysis.mode === 'shared-code') {
53
+ const code = (_a = analysis.sharedCode) !== null && _a !== void 0 ? _a : (_b = analysis.representative) === null || _b === void 0 ? void 0 : _b.code;
54
+ const message = {
55
+ type: 'error',
56
+ code,
57
+ details: (_c = analysis.representative) === null || _c === void 0 ? void 0 : _c.details,
58
+ };
59
+ // Prefer code → client i18n; keep @i18n text if the item already used one.
60
+ const text = (_d = analysis.representative) === null || _d === void 0 ? void 0 : _d.text;
61
+ if (typeof text === 'string' && text.startsWith('@')) {
62
+ message.text = text;
63
+ }
64
+ else if (text && typeof text === 'object') {
65
+ message.text = text;
66
+ }
67
+ return message;
68
+ }
69
+ return {
70
+ type: 'error',
71
+ text: `Bulk command finished with ${succeeded} succeeded and ${failed} failed.`,
72
+ };
73
+ }
74
+ //#endregion
75
+ //# sourceMappingURL=bulk-command-failure.util.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bulk-command-failure.util.js","sourceRoot":"","sources":["../../../../../../../../libs/framework/shared/runtime/src/lib/commands/bulk-command-failure.util.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,45 @@
1
+ import type { AXDataSourceFilterOption, AXPRuntimeMessage } from '@acorex-platform/framework-shared/core';
2
+ /** Default cap for ids resolved from a bulk filter before fan-out. */
3
+ export declare const AXP_BULK_COMMAND_DEFAULT_MAX_ITEMS = 100;
4
+ /** Default parallel fan-out workers for bulk command execution. */
5
+ export declare const AXP_BULK_COMMAND_DEFAULT_CONCURRENCY = 1;
6
+ /** Hard upper bound for bulk filter resolution / fan-out. */
7
+ export declare const AXP_BULK_COMMAND_HARD_MAX_ITEMS = 500;
8
+ /**
9
+ * Filter-only bulk execute request.
10
+ * Target rows are resolved server-side via entity query + {@link filter}.
11
+ */
12
+ export interface AXPBulkCommandRequest {
13
+ /** Server-executable command key (e.g. `Entity:Delete:Default`, `BackgroundJobManagement:Schedule:RunNow`). */
14
+ name: string;
15
+ /**
16
+ * Entity used to resolve {@link filter} and, for `Entity:*:Default` names,
17
+ * injected into each fan-out command input (do not repeat in {@link input}).
18
+ */
19
+ entity: string;
20
+ /** Same filter shape as runtime entity queries. Selected rows → `{ field:'id', operator:{type:'in'}, value: ids }`. */
21
+ filter: AXDataSourceFilterOption;
22
+ /** Shared input merged into each per-item command call (patch fields, etc. — not `entity`). */
23
+ input?: Record<string, unknown>;
24
+ /** Field name for the resolved id in each command input. Default: `id`. */
25
+ idField?: string;
26
+ /** Max rows to resolve from filter (capped by hard max). */
27
+ maxItems?: number;
28
+ /** Parallel fan-out size (capped). Default: 1 (sequential). */
29
+ concurrency?: number;
30
+ }
31
+ export interface AXPBulkCommandItemResult {
32
+ id: string;
33
+ success: boolean;
34
+ data?: unknown;
35
+ message?: AXPRuntimeMessage;
36
+ }
37
+ export interface AXPBulkCommandResultData {
38
+ total: number;
39
+ succeeded: number;
40
+ failed: number;
41
+ /** True when filter matched more rows than {@link AXPBulkCommandRequest.maxItems}. */
42
+ truncated?: boolean;
43
+ results: AXPBulkCommandItemResult[];
44
+ }
45
+ //# sourceMappingURL=bulk-command.types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bulk-command.types.d.ts","sourceRoot":"","sources":["../../../../../../../../libs/framework/shared/runtime/src/lib/commands/bulk-command.types.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,wBAAwB,EAAE,iBAAiB,EAAE,MAAM,wCAAwC,CAAC;AAE1G,sEAAsE;AACtE,eAAO,MAAM,kCAAkC,MAAM,CAAC;AAEtD,mEAAmE;AACnE,eAAO,MAAM,oCAAoC,IAAI,CAAC;AAEtD,6DAA6D;AAC7D,eAAO,MAAM,+BAA+B,MAAM,CAAC;AAEnD;;;GAGG;AACH,MAAM,WAAW,qBAAqB;IACpC,+GAA+G;IAC/G,IAAI,EAAE,MAAM,CAAC;IACb;;;OAGG;IACH,MAAM,EAAE,MAAM,CAAC;IACf,uHAAuH;IACvH,MAAM,EAAE,wBAAwB,CAAC;IACjC,+FAA+F;IAC/F,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAChC,2EAA2E;IAC3E,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,4DAA4D;IAC5D,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,+DAA+D;IAC/D,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,wBAAwB;IACvC,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,OAAO,CAAC,EAAE,iBAAiB,CAAC;CAC7B;AAED,MAAM,WAAW,wBAAwB;IACvC,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,sFAAsF;IACtF,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,OAAO,EAAE,wBAAwB,EAAE,CAAC;CACrC"}
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+ //#region ---- Bulk command contracts ----
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.AXP_BULK_COMMAND_HARD_MAX_ITEMS = exports.AXP_BULK_COMMAND_DEFAULT_CONCURRENCY = exports.AXP_BULK_COMMAND_DEFAULT_MAX_ITEMS = void 0;
5
+ /** Default cap for ids resolved from a bulk filter before fan-out. */
6
+ exports.AXP_BULK_COMMAND_DEFAULT_MAX_ITEMS = 100;
7
+ /** Default parallel fan-out workers for bulk command execution. */
8
+ exports.AXP_BULK_COMMAND_DEFAULT_CONCURRENCY = 1;
9
+ /** Hard upper bound for bulk filter resolution / fan-out. */
10
+ exports.AXP_BULK_COMMAND_HARD_MAX_ITEMS = 500;
11
+ //#endregion
12
+ //# sourceMappingURL=bulk-command.types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bulk-command.types.js","sourceRoot":"","sources":["../../../../../../../../libs/framework/shared/runtime/src/lib/commands/bulk-command.types.ts"],"names":[],"mappings":";AAAA,0CAA0C;;;AAI1C,sEAAsE;AACzD,QAAA,kCAAkC,GAAG,GAAG,CAAC;AAEtD,mEAAmE;AACtD,QAAA,oCAAoC,GAAG,CAAC,CAAC;AAEtD,6DAA6D;AAChD,QAAA,+BAA+B,GAAG,GAAG,CAAC;AA0CnD,YAAY"}
@@ -2,7 +2,7 @@
2
2
  * Build-time command metadata only. Safe under Node (e.g. generate-runtime-catalog) without loading the command executor stack.
3
3
  * Sidecars should import `defineCommand` from `@acorex-platform/framework-shared/runtime`.
4
4
  */
5
- export { defineCommand } from './define-command';
6
5
  export * from './command-definition.categories';
7
6
  export * from './command-definition.types';
7
+ export { defineCommand } from './define-command';
8
8
  //# sourceMappingURL=catalog-command-definition.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"catalog-command-definition.d.ts","sourceRoot":"","sources":["../../../../../../../../libs/framework/shared/runtime/src/lib/commands/catalog-command-definition.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,cAAc,iCAAiC,CAAC;AAChD,cAAc,4BAA4B,CAAC"}
1
+ {"version":3,"file":"catalog-command-definition.d.ts","sourceRoot":"","sources":["../../../../../../../../libs/framework/shared/runtime/src/lib/commands/catalog-command-definition.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,cAAc,iCAAiC,CAAC;AAChD,cAAc,4BAA4B,CAAC;AAC3C,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC"}
@@ -6,8 +6,8 @@ const tslib_1 = require("tslib");
6
6
  * Build-time command metadata only. Safe under Node (e.g. generate-runtime-catalog) without loading the command executor stack.
7
7
  * Sidecars should import `defineCommand` from `@acorex-platform/framework-shared/runtime`.
8
8
  */
9
- var define_command_1 = require("./define-command");
10
- Object.defineProperty(exports, "defineCommand", { enumerable: true, get: function () { return define_command_1.defineCommand; } });
11
9
  tslib_1.__exportStar(require("./command-definition.categories"), exports);
12
10
  tslib_1.__exportStar(require("./command-definition.types"), exports);
11
+ var define_command_1 = require("./define-command");
12
+ Object.defineProperty(exports, "defineCommand", { enumerable: true, get: function () { return define_command_1.defineCommand; } });
13
13
  //# sourceMappingURL=catalog-command-definition.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"catalog-command-definition.js","sourceRoot":"","sources":["../../../../../../../../libs/framework/shared/runtime/src/lib/commands/catalog-command-definition.ts"],"names":[],"mappings":";;;;AAAA;;;GAGG;AACH,mDAAiD;AAAxC,+GAAA,aAAa,OAAA;AACtB,0EAAgD;AAChD,qEAA2C"}
1
+ {"version":3,"file":"catalog-command-definition.js","sourceRoot":"","sources":["../../../../../../../../libs/framework/shared/runtime/src/lib/commands/catalog-command-definition.ts"],"names":[],"mappings":";;;;AAAA;;;GAGG;AACH,0EAAgD;AAChD,qEAA2C;AAC3C,mDAAiD;AAAxC,+GAAA,aAAa,OAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"command-definition.types.d.ts","sourceRoot":"","sources":["../../../../../../../../libs/framework/shared/runtime/src/lib/commands/command-definition.types.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EACV,uBAAuB,EACvB,gCAAgC,EACjC,MAAM,yCAAyC,CAAC;AAEjD,cAAc,yCAAyC,CAAC;AAIxD,MAAM,MAAM,2BAA2B,GACnC;IACE,IAAI,EAAE,QAAQ,CAAC;IACf,MAAM,EAAE,MAAM,EAAE,CAAC;CAClB,GACD;IACE,IAAI,EAAE,SAAS,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;CACrB,CAAC;AAMN,MAAM,WAAW,4BAA6B,SAAQ,gCAAgC;IACpF,wEAAwE;IACxE,GAAG,EAAE,MAAM,CAAC;IACZ,aAAa,EAAE,uBAAuB,CAAC;IACvC,QAAQ,EAAE,2BAA2B,CAAC;CACvC"}
1
+ {"version":3,"file":"command-definition.types.d.ts","sourceRoot":"","sources":["../../../../../../../../libs/framework/shared/runtime/src/lib/commands/command-definition.types.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,uBAAuB,EAAE,gCAAgC,EAAE,MAAM,yCAAyC,CAAC;AAEzH,cAAc,yCAAyC,CAAC;AAIxD,MAAM,MAAM,2BAA2B,GACnC;IACE,IAAI,EAAE,QAAQ,CAAC;IACf,MAAM,EAAE,MAAM,EAAE,CAAC;CAClB,GACD;IACE,IAAI,EAAE,SAAS,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;CACrB,CAAC;AAMN,MAAM,WAAW,4BAA6B,SAAQ,gCAAgC;IACpF,wEAAwE;IACxE,GAAG,EAAE,MAAM,CAAC;IACZ,aAAa,EAAE,uBAAuB,CAAC;IACvC,QAAQ,EAAE,2BAA2B,CAAC;CACvC"}
@@ -1 +1 @@
1
- {"version":3,"file":"command-definition.types.js","sourceRoot":"","sources":["../../../../../../../../libs/framework/shared/runtime/src/lib/commands/command-definition.types.ts"],"names":[],"mappings":";AAAA;;;;;;;;GAQG;;;AAOH,kFAAwD;AA2BxD,YAAY"}
1
+ {"version":3,"file":"command-definition.types.js","sourceRoot":"","sources":["../../../../../../../../libs/framework/shared/runtime/src/lib/commands/command-definition.types.ts"],"names":[],"mappings":";AAAA;;;;;;;;GAQG;;;AAIH,kFAAwD;AA2BxD,YAAY"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Parent bag for command execute knobs (not business input).
3
+ * Extensible — add fields here instead of new positional args.
4
+ * Separate from {@link AXPQueryExecuteOptions}.
5
+ */
6
+ export interface AXPCommandExecuteOptions {
7
+ }
8
+ //# sourceMappingURL=command-execute-options.types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"command-execute-options.types.d.ts","sourceRoot":"","sources":["../../../../../../../../libs/framework/shared/runtime/src/lib/commands/command-execute-options.types.ts"],"names":[],"mappings":"AAEA;;;;GAIG;AACH,MAAM,WAAW,wBAAwB;CAExC"}
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+ //#region ----- Command execute options -----
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ //#endregion
5
+ //# sourceMappingURL=command-execute-options.types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"command-execute-options.types.js","sourceRoot":"","sources":["../../../../../../../../libs/framework/shared/runtime/src/lib/commands/command-execute-options.types.ts"],"names":[],"mappings":";AAAA,6CAA6C;;AAW7C,YAAY"}
@@ -1,6 +1,17 @@
1
- import { AXPExecuteCommandResult } from '@acorex-platform/framework-shared/core';
2
- export type AXPExecuteCommandResultPromise<TResult = any> = Promise<AXPExecuteCommandResult<TResult>>;
3
- export interface AXPCommand<TInput = any, TResult = any> {
4
- execute(input: TInput): AXPExecuteCommandResultPromise<TResult>;
1
+ import type { AXPRuntimeCommandResult } from '@acorex-platform/framework-shared/core';
2
+ /**
3
+ * Command execute promise.
4
+ * Success envelope still uses shared kinds (`value` | `object` | `collection`) on
5
+ * {@link AXPRuntimeCommandResult}, but unlike queries there is no kind-driven
6
+ * standard input pack (no skip/take contract).
7
+ */
8
+ export type AXPCommandExecuteResultPromise<TResult = unknown> = Promise<AXPRuntimeCommandResult<TResult>>;
9
+ /**
10
+ * Client/server command handler contract.
11
+ * Input shape is free; return {@link AXPRuntimeCommandResult} with the appropriate
12
+ * success `kind` for the payload.
13
+ */
14
+ export interface AXPCommand<TInput = unknown, TResult = unknown> {
15
+ execute(input: TInput): AXPCommandExecuteResultPromise<TResult>;
5
16
  }
6
17
  //# sourceMappingURL=command.interface.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"command.interface.d.ts","sourceRoot":"","sources":["../../../../../../../../libs/framework/shared/runtime/src/lib/commands/command.interface.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,uBAAuB,EAAE,MAAM,wCAAwC,CAAC;AAEjF,MAAM,MAAM,8BAA8B,CAAC,OAAO,GAAG,GAAG,IAAI,OAAO,CAAC,uBAAuB,CAAC,OAAO,CAAC,CAAC,CAAC;AAEtG,MAAM,WAAW,UAAU,CAAC,MAAM,GAAG,GAAG,EAAE,OAAO,GAAG,GAAG;IACrD,OAAO,CAAC,KAAK,EAAE,MAAM,GAAG,8BAA8B,CAAC,OAAO,CAAC,CAAC;CACjE"}
1
+ {"version":3,"file":"command.interface.d.ts","sourceRoot":"","sources":["../../../../../../../../libs/framework/shared/runtime/src/lib/commands/command.interface.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,wCAAwC,CAAC;AAMtF;;;;;GAKG;AACH,MAAM,MAAM,8BAA8B,CAAC,OAAO,GAAG,OAAO,IAC1D,OAAO,CAAC,uBAAuB,CAAC,OAAO,CAAC,CAAC,CAAC;AAE5C;;;;GAIG;AACH,MAAM,WAAW,UAAU,CAAC,MAAM,GAAG,OAAO,EAAE,OAAO,GAAG,OAAO;IAC7D,OAAO,CAAC,KAAK,EAAE,MAAM,GAAG,8BAA8B,CAAC,OAAO,CAAC,CAAC;CACjE"}
@@ -1,3 +1,5 @@
1
1
  "use strict";
2
+ //#region ---- Imports ----
2
3
  Object.defineProperty(exports, "__esModule", { value: true });
4
+ //#endregion
3
5
  //# sourceMappingURL=command.interface.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"command.interface.js","sourceRoot":"","sources":["../../../../../../../../libs/framework/shared/runtime/src/lib/commands/command.interface.ts"],"names":[],"mappings":""}
1
+ {"version":3,"file":"command.interface.js","sourceRoot":"","sources":["../../../../../../../../libs/framework/shared/runtime/src/lib/commands/command.interface.ts"],"names":[],"mappings":";AAAA,2BAA2B;;AA0B3B,YAAY"}
@@ -0,0 +1,22 @@
1
+ import type { AXPCommandExecuteResultPromise } from './command.interface';
2
+ import type { AXPCommandExecuteOptions } from './command-execute-options.types';
3
+ /**
4
+ * Context passed through the named-command middleware pipeline.
5
+ * Separate from query middleware — do not unify the public aliases.
6
+ *
7
+ * Defaults use `any` (same as the former client-only types) so targeted
8
+ * middlewares remain assignable to the untyped registry slot.
9
+ */
10
+ export type AXPCommandMiddlewareContext<TInput = any> = {
11
+ key: string;
12
+ input: TInput;
13
+ options?: AXPCommandExecuteOptions;
14
+ };
15
+ /**
16
+ * Onion middleware around a named command execute.
17
+ * `next` / return are command envelopes ({@link AXPCommandExecuteResultPromise}),
18
+ * not an arbitrary `TResult` payload.
19
+ */
20
+ export type AXPCommandMiddleware<TInput = any, TResult = any> = (context: AXPCommandMiddlewareContext<TInput>, next: (context: AXPCommandMiddlewareContext<TInput>) => AXPCommandExecuteResultPromise<TResult>) => AXPCommandExecuteResultPromise<TResult>;
21
+ export declare function composeCommandMiddlewares<TInput, TResult>(middlewares: readonly AXPCommandMiddleware<TInput, TResult>[]): (handler: (context: AXPCommandMiddlewareContext<TInput>) => AXPCommandExecuteResultPromise<TResult>) => (context: AXPCommandMiddlewareContext<TInput>) => AXPCommandExecuteResultPromise<TResult>;
22
+ //# sourceMappingURL=command.middleware.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"command.middleware.d.ts","sourceRoot":"","sources":["../../../../../../../../libs/framework/shared/runtime/src/lib/commands/command.middleware.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,8BAA8B,EAAE,MAAM,qBAAqB,CAAC;AAC1E,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,iCAAiC,CAAC;AAIhF;;;;;;GAMG;AACH,MAAM,MAAM,2BAA2B,CAAC,MAAM,GAAG,GAAG,IAAI;IACtD,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,wBAAwB,CAAC;CACpC,CAAC;AAEF;;;;GAIG;AACH,MAAM,MAAM,oBAAoB,CAAC,MAAM,GAAG,GAAG,EAAE,OAAO,GAAG,GAAG,IAAI,CAC9D,OAAO,EAAE,2BAA2B,CAAC,MAAM,CAAC,EAC5C,IAAI,EAAE,CAAC,OAAO,EAAE,2BAA2B,CAAC,MAAM,CAAC,KAAK,8BAA8B,CAAC,OAAO,CAAC,KAC5F,8BAA8B,CAAC,OAAO,CAAC,CAAC;AAE7C,wBAAgB,yBAAyB,CAAC,MAAM,EAAE,OAAO,EACvD,WAAW,EAAE,SAAS,oBAAoB,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,GAC5D,CACD,OAAO,EAAE,CAAC,OAAO,EAAE,2BAA2B,CAAC,MAAM,CAAC,KAAK,8BAA8B,CAAC,OAAO,CAAC,KAC/F,CAAC,OAAO,EAAE,2BAA2B,CAAC,MAAM,CAAC,KAAK,8BAA8B,CAAC,OAAO,CAAC,CAc7F"}
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.composeCommandMiddlewares = composeCommandMiddlewares;
4
+ function composeCommandMiddlewares(middlewares) {
5
+ return (handler) => {
6
+ let composed = handler;
7
+ for (let i = middlewares.length - 1; i >= 0; i--) {
8
+ const mw = middlewares[i];
9
+ const next = composed;
10
+ composed = (context) => mw(context, next);
11
+ }
12
+ return composed;
13
+ };
14
+ }
15
+ //#endregion
16
+ //# sourceMappingURL=command.middleware.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"command.middleware.js","sourceRoot":"","sources":["../../../../../../../../libs/framework/shared/runtime/src/lib/commands/command.middleware.ts"],"names":[],"mappings":";;AA4BA,8DAkBC;AAlBD,SAAgB,yBAAyB,CACvC,WAA6D;IAI7D,OAAO,CACL,OAAkG,EAClG,EAAE;QACF,IAAI,QAAQ,GAAG,OAAO,CAAC;QAEvB,KAAK,IAAI,CAAC,GAAG,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;YACjD,MAAM,EAAE,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC;YAC1B,MAAM,IAAI,GAAG,QAAQ,CAAC;YACtB,QAAQ,GAAG,CAAC,OAA4C,EAAE,EAAE,CAAC,EAAE,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;QACjF,CAAC;QAED,OAAO,QAAQ,CAAC;IAClB,CAAC,CAAC;AACJ,CAAC;AAED,YAAY"}
@@ -0,0 +1,101 @@
1
+ /**
2
+ * Flat single-input shape for entity list/toolbar/detail command invocations.
3
+ *
4
+ * Producers pass these fields at the root of `commandService.execute(key, input)`.
5
+ * Handlers should use {@link resolveEntityActionCommandInput} to normalize.
6
+ */
7
+ export interface AXPEntityActionEntityInfo {
8
+ name: string;
9
+ module: string;
10
+ title?: unknown;
11
+ parentKey?: string;
12
+ source?: string;
13
+ }
14
+ export interface AXPEntityActionCommandInput {
15
+ /** Entity full name, e.g. `HealthCore.BodyPart`. */
16
+ entity?: string;
17
+ /** Row, selection, or create seed. */
18
+ data?: unknown;
19
+ /** Evaluated action options / process flags. */
20
+ options?: Record<string, unknown>;
21
+ entityInfo?: AXPEntityActionEntityInfo;
22
+ /** Parent record when invoked from a related list. */
23
+ hostContext?: unknown;
24
+ /** Action metadata (producers / viewers). */
25
+ metadata?: unknown;
26
+ /** Bulk / multi-delete payloads. */
27
+ entities?: unknown;
28
+ /** Refresh / middleware meta (e.g. refreshTargetId). */
29
+ meta?: unknown;
30
+ /** Open-list filter conditions (when used). */
31
+ conditions?: unknown;
32
+ /** Legacy root refs still accepted by some plugins. */
33
+ refId?: unknown;
34
+ refType?: unknown;
35
+ }
36
+ export type AXPEntityActionCommandInputLike = AXPEntityActionCommandInput | null | undefined;
37
+ export interface AXPEntityActionResolvedRef {
38
+ refType: string;
39
+ refId: string;
40
+ rowData?: Record<string, unknown>;
41
+ options: Record<string, unknown>;
42
+ resolved: AXPEntityActionCommandInput;
43
+ }
44
+ export interface AXPEntityActionResolvedBulkRef {
45
+ refType: string;
46
+ ids: string[];
47
+ rows: Record<string, unknown>[];
48
+ options: Record<string, unknown>;
49
+ resolved: AXPEntityActionCommandInput;
50
+ }
51
+ /**
52
+ * Normalizes flat entity-action input into {@link AXPEntityActionCommandInput}.
53
+ * Reads only root fields (`entity`, `data`, `options`, `entityInfo`, `hostContext`,
54
+ * `metadata`, `entities`, `meta`, `conditions`, `refId`, `refType`).
55
+ */
56
+ export declare function resolveEntityActionCommandInput(input: AXPEntityActionCommandInputLike | unknown): AXPEntityActionCommandInput;
57
+ /**
58
+ * First row/object from `data` (array → first element; object → itself).
59
+ */
60
+ export declare function entityActionDataRecord(data: unknown): Record<string, unknown> | undefined;
61
+ /**
62
+ * All row objects from `data` (array, single object, or empty).
63
+ */
64
+ export declare function entityActionDataRows(data: unknown): Record<string, unknown>[];
65
+ /**
66
+ * Resolves entity/plugin refType from flat input:
67
+ * `options.refType` → `entity` → `entityInfo.source` → root `refType`.
68
+ */
69
+ export declare function entityActionRefType(resolved: AXPEntityActionCommandInput): string;
70
+ /**
71
+ * Resolves a single-record ref id from options, row data, or root `refId`.
72
+ */
73
+ export declare function entityActionRefId(resolved: AXPEntityActionCommandInput, rowData?: Record<string, unknown>): string | undefined;
74
+ /**
75
+ * Single-record entity/plugin ref (`refType` + `refId`) from flat command input.
76
+ */
77
+ export declare function resolveEntityActionRef(input: AXPEntityActionCommandInputLike | unknown): AXPEntityActionResolvedRef | null;
78
+ /**
79
+ * Bulk entity/plugin ref (`refType` + row ids) from flat command input.
80
+ */
81
+ export declare function resolveEntityActionBulkRef(input: AXPEntityActionCommandInputLike | unknown): AXPEntityActionResolvedBulkRef | null;
82
+ /**
83
+ * Picks a field from root input, falling back to `options[field]`.
84
+ * Useful for commands that accept both root and options-nested shapes.
85
+ */
86
+ export declare function pickInputOrOptionsField<T = unknown>(input: unknown, field: string): T | undefined;
87
+ /**
88
+ * Merges related-list / create seed payload:
89
+ * `hostContext` → `data` → `options.process.data` (later wins).
90
+ */
91
+ export declare function mergeEntityActionProcessData(input: AXPEntityActionCommandInputLike | unknown): Record<string, unknown>;
92
+ /**
93
+ * Hard-strips unknown envelope keys before remote transport so the HTTP body
94
+ * is business input only. Does not merge or read nested payload from those keys.
95
+ *
96
+ * Nest/express JSON body parsing (strict) accepts only objects and arrays.
97
+ * Entity `byKey` / GetOne often pass a bare id string — wrap as `{ id }` so the
98
+ * request is valid JSON over HTTP (handlers already accept both shapes).
99
+ */
100
+ export declare function normalizeCommandInputForRemote(input: unknown): unknown;
101
+ //# sourceMappingURL=entity-action-command-input.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"entity-action-command-input.d.ts","sourceRoot":"","sources":["../../../../../../../../libs/framework/shared/runtime/src/lib/commands/entity-action-command-input.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,204 @@
1
+ "use strict";
2
+ //#region ----- Entity action command input (flat) -----
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.resolveEntityActionCommandInput = resolveEntityActionCommandInput;
5
+ exports.entityActionDataRecord = entityActionDataRecord;
6
+ exports.entityActionDataRows = entityActionDataRows;
7
+ exports.entityActionRefType = entityActionRefType;
8
+ exports.entityActionRefId = entityActionRefId;
9
+ exports.resolveEntityActionRef = resolveEntityActionRef;
10
+ exports.resolveEntityActionBulkRef = resolveEntityActionBulkRef;
11
+ exports.pickInputOrOptionsField = pickInputOrOptionsField;
12
+ exports.mergeEntityActionProcessData = mergeEntityActionProcessData;
13
+ exports.normalizeCommandInputForRemote = normalizeCommandInputForRemote;
14
+ function isPlainObject(value) {
15
+ return value != null && typeof value === 'object' && !Array.isArray(value);
16
+ }
17
+ function asEntityInfo(value) {
18
+ if (!isPlainObject(value)) {
19
+ return undefined;
20
+ }
21
+ const name = value['name'];
22
+ const moduleName = value['module'];
23
+ if (typeof name !== 'string' || typeof moduleName !== 'string') {
24
+ return undefined;
25
+ }
26
+ return {
27
+ name,
28
+ module: moduleName,
29
+ title: value['title'],
30
+ parentKey: typeof value['parentKey'] === 'string' ? value['parentKey'] : undefined,
31
+ source: typeof value['source'] === 'string' ? value['source'] : undefined,
32
+ };
33
+ }
34
+ function pickOptionalString(value) {
35
+ if (typeof value !== 'string') {
36
+ return undefined;
37
+ }
38
+ const trimmed = value.trim();
39
+ return trimmed.length > 0 ? trimmed : undefined;
40
+ }
41
+ function asDataRecord(value) {
42
+ return isPlainObject(value) ? value : undefined;
43
+ }
44
+ /**
45
+ * Normalizes flat entity-action input into {@link AXPEntityActionCommandInput}.
46
+ * Reads only root fields (`entity`, `data`, `options`, `entityInfo`, `hostContext`,
47
+ * `metadata`, `entities`, `meta`, `conditions`, `refId`, `refType`).
48
+ */
49
+ function resolveEntityActionCommandInput(input) {
50
+ if (!isPlainObject(input)) {
51
+ return {};
52
+ }
53
+ const root = input;
54
+ return {
55
+ entity: pickOptionalString(root.entity),
56
+ data: root.data,
57
+ options: isPlainObject(root.options) ? root.options : undefined,
58
+ entityInfo: asEntityInfo(root.entityInfo),
59
+ hostContext: root.hostContext,
60
+ metadata: root.metadata,
61
+ entities: root.entities,
62
+ meta: root.meta,
63
+ conditions: root.conditions,
64
+ refId: root.refId,
65
+ refType: root.refType,
66
+ };
67
+ }
68
+ /**
69
+ * First row/object from `data` (array → first element; object → itself).
70
+ */
71
+ function entityActionDataRecord(data) {
72
+ if (Array.isArray(data)) {
73
+ return asDataRecord(data[0]);
74
+ }
75
+ return asDataRecord(data);
76
+ }
77
+ /**
78
+ * All row objects from `data` (array, single object, or empty).
79
+ */
80
+ function entityActionDataRows(data) {
81
+ if (Array.isArray(data)) {
82
+ return data.filter(isPlainObject);
83
+ }
84
+ const single = asDataRecord(data);
85
+ return single ? [single] : [];
86
+ }
87
+ /**
88
+ * Resolves entity/plugin refType from flat input:
89
+ * `options.refType` → `entity` → `entityInfo.source` → root `refType`.
90
+ */
91
+ function entityActionRefType(resolved) {
92
+ var _a, _b, _c, _d, _e, _f;
93
+ const options = (_a = resolved.options) !== null && _a !== void 0 ? _a : {};
94
+ return String((_f = (_e = (_c = (_b = options['refType']) !== null && _b !== void 0 ? _b : resolved.entity) !== null && _c !== void 0 ? _c : (_d = resolved.entityInfo) === null || _d === void 0 ? void 0 : _d.source) !== null && _e !== void 0 ? _e : resolved.refType) !== null && _f !== void 0 ? _f : '');
95
+ }
96
+ /**
97
+ * Resolves a single-record ref id from options, row data, or root `refId`.
98
+ */
99
+ function entityActionRefId(resolved, rowData) {
100
+ var _a, _b, _c, _d;
101
+ const options = (_a = resolved.options) !== null && _a !== void 0 ? _a : {};
102
+ const rawId = (_d = (_c = (_b = options['refId']) !== null && _b !== void 0 ? _b : rowData === null || rowData === void 0 ? void 0 : rowData['id']) !== null && _c !== void 0 ? _c : rowData === null || rowData === void 0 ? void 0 : rowData['_id']) !== null && _d !== void 0 ? _d : resolved.refId;
103
+ if (rawId == null || rawId === '') {
104
+ return undefined;
105
+ }
106
+ return String(rawId);
107
+ }
108
+ /**
109
+ * Single-record entity/plugin ref (`refType` + `refId`) from flat command input.
110
+ */
111
+ function resolveEntityActionRef(input) {
112
+ var _a;
113
+ const resolved = resolveEntityActionCommandInput(input);
114
+ const options = (_a = resolved.options) !== null && _a !== void 0 ? _a : {};
115
+ const rowData = entityActionDataRecord(resolved.data);
116
+ const refType = entityActionRefType(resolved);
117
+ const refId = entityActionRefId(resolved, rowData);
118
+ if (!refType || refId == null) {
119
+ return null;
120
+ }
121
+ return { refType, refId, rowData, options, resolved };
122
+ }
123
+ /**
124
+ * Bulk entity/plugin ref (`refType` + row ids) from flat command input.
125
+ */
126
+ function resolveEntityActionBulkRef(input) {
127
+ var _a;
128
+ const resolved = resolveEntityActionCommandInput(input);
129
+ const options = (_a = resolved.options) !== null && _a !== void 0 ? _a : {};
130
+ const rows = entityActionDataRows(resolved.data);
131
+ const refType = entityActionRefType(resolved);
132
+ const ids = rows
133
+ .map((row) => row['id'])
134
+ .filter((id) => id != null && id !== '')
135
+ .map(String);
136
+ if (!refType || ids.length === 0) {
137
+ return null;
138
+ }
139
+ return { refType, ids, rows, options, resolved };
140
+ }
141
+ /**
142
+ * Picks a field from root input, falling back to `options[field]`.
143
+ * Useful for commands that accept both root and options-nested shapes.
144
+ */
145
+ function pickInputOrOptionsField(input, field) {
146
+ if (!isPlainObject(input)) {
147
+ return undefined;
148
+ }
149
+ const rootValue = input[field];
150
+ if (rootValue !== undefined) {
151
+ return rootValue;
152
+ }
153
+ const options = input['options'];
154
+ if (!isPlainObject(options)) {
155
+ return undefined;
156
+ }
157
+ return options[field];
158
+ }
159
+ /**
160
+ * Merges related-list / create seed payload:
161
+ * `hostContext` → `data` → `options.process.data` (later wins).
162
+ */
163
+ function mergeEntityActionProcessData(input) {
164
+ var _a, _b, _c, _d;
165
+ const resolved = resolveEntityActionCommandInput(input);
166
+ const hostContext = (_a = asDataRecord(resolved.hostContext)) !== null && _a !== void 0 ? _a : {};
167
+ const data = (_b = asDataRecord(resolved.data)) !== null && _b !== void 0 ? _b : {};
168
+ const process = isPlainObject((_c = resolved.options) === null || _c === void 0 ? void 0 : _c['process'])
169
+ ? resolved.options['process']
170
+ : undefined;
171
+ const processData = (_d = asDataRecord(process === null || process === void 0 ? void 0 : process['data'])) !== null && _d !== void 0 ? _d : {};
172
+ return Object.assign(Object.assign(Object.assign({}, hostContext), data), processData);
173
+ }
174
+ /**
175
+ * Hard-strips unknown envelope keys before remote transport so the HTTP body
176
+ * is business input only. Does not merge or read nested payload from those keys.
177
+ *
178
+ * Nest/express JSON body parsing (strict) accepts only objects and arrays.
179
+ * Entity `byKey` / GetOne often pass a bare id string — wrap as `{ id }` so the
180
+ * request is valid JSON over HTTP (handlers already accept both shapes).
181
+ */
182
+ function normalizeCommandInputForRemote(input) {
183
+ if (input == null) {
184
+ return {};
185
+ }
186
+ if (Array.isArray(input)) {
187
+ return input;
188
+ }
189
+ if (!isPlainObject(input)) {
190
+ if (typeof input === 'string' || typeof input === 'number' || typeof input === 'boolean') {
191
+ return { id: input };
192
+ }
193
+ return {};
194
+ }
195
+ if (!('__context__' in input) && !('__metadata__' in input)) {
196
+ return input;
197
+ }
198
+ const root = Object.assign({}, input);
199
+ delete root['__context__'];
200
+ delete root['__metadata__'];
201
+ return root;
202
+ }
203
+ //#endregion
204
+ //# sourceMappingURL=entity-action-command-input.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"entity-action-command-input.js","sourceRoot":"","sources":["../../../../../../../../libs/framework/shared/runtime/src/lib/commands/entity-action-command-input.ts"],"names":[],"mappings":"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"}