@acorex/platform 21.0.0-next.5 → 21.0.0-next.51

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 (124) hide show
  1. package/fesm2022/acorex-platform-auth.mjs +281 -23
  2. package/fesm2022/acorex-platform-auth.mjs.map +1 -1
  3. package/fesm2022/acorex-platform-common-common-settings.provider-Bi1RYif5.mjs +163 -0
  4. package/fesm2022/acorex-platform-common-common-settings.provider-Bi1RYif5.mjs.map +1 -0
  5. package/fesm2022/acorex-platform-common.mjs +1047 -263
  6. package/fesm2022/acorex-platform-common.mjs.map +1 -1
  7. package/fesm2022/acorex-platform-core.mjs +1138 -510
  8. package/fesm2022/acorex-platform-core.mjs.map +1 -1
  9. package/fesm2022/acorex-platform-domain.mjs +557 -826
  10. package/fesm2022/acorex-platform-domain.mjs.map +1 -1
  11. package/fesm2022/acorex-platform-layout-builder.mjs +804 -186
  12. package/fesm2022/acorex-platform-layout-builder.mjs.map +1 -1
  13. package/fesm2022/acorex-platform-layout-components-binding-expression-editor-popup.component-CXEdvDTf.mjs +121 -0
  14. package/fesm2022/acorex-platform-layout-components-binding-expression-editor-popup.component-CXEdvDTf.mjs.map +1 -0
  15. package/fesm2022/acorex-platform-layout-components.mjs +6208 -2344
  16. package/fesm2022/acorex-platform-layout-components.mjs.map +1 -1
  17. package/fesm2022/acorex-platform-layout-designer.mjs +456 -204
  18. package/fesm2022/acorex-platform-layout-designer.mjs.map +1 -1
  19. package/fesm2022/acorex-platform-layout-entity.mjs +18632 -10286
  20. package/fesm2022/acorex-platform-layout-entity.mjs.map +1 -1
  21. package/fesm2022/acorex-platform-layout-views.mjs +538 -168
  22. package/fesm2022/acorex-platform-layout-views.mjs.map +1 -1
  23. package/fesm2022/acorex-platform-layout-widget-core.mjs +720 -456
  24. package/fesm2022/acorex-platform-layout-widget-core.mjs.map +1 -1
  25. package/fesm2022/{acorex-platform-layout-widgets-button-widget-designer.component-C3VoBb_b.mjs → acorex-platform-layout-widgets-button-widget-designer.component-Dy7jF-oD.mjs} +10 -10
  26. package/fesm2022/acorex-platform-layout-widgets-button-widget-designer.component-Dy7jF-oD.mjs.map +1 -0
  27. package/fesm2022/acorex-platform-layout-widgets-file-list-popup.component-CDYAGBku.mjs +103 -0
  28. package/fesm2022/acorex-platform-layout-widgets-file-list-popup.component-CDYAGBku.mjs.map +1 -0
  29. package/fesm2022/{acorex-platform-layout-widgets-image-preview.popup-V31OpYah.mjs → acorex-platform-layout-widgets-image-preview.popup-C_EPAvCU.mjs} +6 -7
  30. package/fesm2022/acorex-platform-layout-widgets-image-preview.popup-C_EPAvCU.mjs.map +1 -0
  31. package/fesm2022/{acorex-platform-layout-widgets-page-widget-designer.component-BtZMBxYp.mjs → acorex-platform-layout-widgets-page-widget-designer.component-D10yO28c.mjs} +12 -12
  32. package/fesm2022/acorex-platform-layout-widgets-page-widget-designer.component-D10yO28c.mjs.map +1 -0
  33. package/fesm2022/acorex-platform-layout-widgets-repeater-widget-column.component-BGO75IMz.mjs +116 -0
  34. package/fesm2022/acorex-platform-layout-widgets-repeater-widget-column.component-BGO75IMz.mjs.map +1 -0
  35. package/fesm2022/{acorex-platform-layout-widgets-tabular-data-edit-popup.component-Ck7-wpT2.mjs → acorex-platform-layout-widgets-tabular-data-edit-popup.component-DmzNTYiS.mjs} +6 -6
  36. package/fesm2022/acorex-platform-layout-widgets-tabular-data-edit-popup.component-DmzNTYiS.mjs.map +1 -0
  37. package/fesm2022/{acorex-platform-layout-widgets-tabular-data-view-popup.component-y8vjUiVs.mjs → acorex-platform-layout-widgets-tabular-data-view-popup.component-BNG_588B.mjs} +5 -5
  38. package/fesm2022/acorex-platform-layout-widgets-tabular-data-view-popup.component-BNG_588B.mjs.map +1 -0
  39. package/fesm2022/{acorex-platform-layout-widgets-text-block-widget-designer.component-Df1BFkSa.mjs → acorex-platform-layout-widgets-text-block-widget-designer.component-Vo4fWHtX.mjs} +6 -6
  40. package/fesm2022/acorex-platform-layout-widgets-text-block-widget-designer.component-Vo4fWHtX.mjs.map +1 -0
  41. package/fesm2022/acorex-platform-layout-widgets.mjs +8728 -4269
  42. package/fesm2022/acorex-platform-layout-widgets.mjs.map +1 -1
  43. package/fesm2022/acorex-platform-native.mjs +8 -7
  44. package/fesm2022/acorex-platform-native.mjs.map +1 -1
  45. package/fesm2022/acorex-platform-runtime.mjs +391 -166
  46. package/fesm2022/acorex-platform-runtime.mjs.map +1 -1
  47. package/fesm2022/acorex-platform-themes-default-entity-master-create-view.component-Cx1lLUaR.mjs +160 -0
  48. package/fesm2022/acorex-platform-themes-default-entity-master-create-view.component-Cx1lLUaR.mjs.map +1 -0
  49. package/fesm2022/acorex-platform-themes-default-entity-master-modify-view.component-AOrcgjDF.mjs +120 -0
  50. package/fesm2022/acorex-platform-themes-default-entity-master-modify-view.component-AOrcgjDF.mjs.map +1 -0
  51. package/fesm2022/{acorex-platform-themes-default-entity-master-single-view.component-eMBby9k4.mjs → acorex-platform-themes-default-entity-master-single-view.component-BfCeUU5F.mjs} +19 -26
  52. package/fesm2022/acorex-platform-themes-default-entity-master-single-view.component-BfCeUU5F.mjs.map +1 -0
  53. package/fesm2022/{acorex-platform-themes-default-error-401.component-cfREo88K.mjs → acorex-platform-themes-default-error-401.component-C7EYJzSr.mjs} +4 -4
  54. package/fesm2022/acorex-platform-themes-default-error-401.component-C7EYJzSr.mjs.map +1 -0
  55. package/fesm2022/{acorex-platform-themes-default-error-404.component-CdCV5ZoA.mjs → acorex-platform-themes-default-error-404.component-7MVLMwIa.mjs} +4 -4
  56. package/fesm2022/acorex-platform-themes-default-error-404.component-7MVLMwIa.mjs.map +1 -0
  57. package/fesm2022/acorex-platform-themes-default-error-offline.component-DR6G8gPC.mjs +19 -0
  58. package/fesm2022/acorex-platform-themes-default-error-offline.component-DR6G8gPC.mjs.map +1 -0
  59. package/fesm2022/acorex-platform-themes-default.mjs +1836 -67
  60. package/fesm2022/acorex-platform-themes-default.mjs.map +1 -1
  61. package/fesm2022/{acorex-platform-themes-shared-icon-chooser-column.component-C0EpfU2k.mjs → acorex-platform-themes-shared-icon-chooser-column.component-CqkWJYdv.mjs} +6 -6
  62. package/fesm2022/acorex-platform-themes-shared-icon-chooser-column.component-CqkWJYdv.mjs.map +1 -0
  63. package/fesm2022/{acorex-platform-themes-shared-icon-chooser-view.component-9W52W6Nu.mjs → acorex-platform-themes-shared-icon-chooser-view.component-BOTuLdWN.mjs} +6 -6
  64. package/fesm2022/acorex-platform-themes-shared-icon-chooser-view.component-BOTuLdWN.mjs.map +1 -0
  65. package/fesm2022/{acorex-platform-themes-shared-settings.provider-DSs1o1M6.mjs → acorex-platform-themes-shared-settings.provider-DK6R87Lf.mjs} +24 -25
  66. package/fesm2022/acorex-platform-themes-shared-settings.provider-DK6R87Lf.mjs.map +1 -0
  67. package/fesm2022/acorex-platform-themes-shared-theme-color-chooser-column.component-D566Kdvy.mjs +94 -0
  68. package/fesm2022/acorex-platform-themes-shared-theme-color-chooser-column.component-D566Kdvy.mjs.map +1 -0
  69. package/fesm2022/acorex-platform-themes-shared-theme-color-chooser-view.component-D7-rCGl7.mjs +86 -0
  70. package/fesm2022/acorex-platform-themes-shared-theme-color-chooser-view.component-D7-rCGl7.mjs.map +1 -0
  71. package/fesm2022/acorex-platform-themes-shared.mjs +674 -573
  72. package/fesm2022/acorex-platform-themes-shared.mjs.map +1 -1
  73. package/fesm2022/acorex-platform-workflow.mjs +1715 -535
  74. package/fesm2022/acorex-platform-workflow.mjs.map +1 -1
  75. package/fesm2022/acorex-platform.mjs.map +1 -1
  76. package/package.json +37 -37
  77. package/{auth/index.d.ts → types/acorex-platform-auth.d.ts} +241 -4
  78. package/{common/index.d.ts → types/acorex-platform-common.d.ts} +598 -80
  79. package/{core/index.d.ts → types/acorex-platform-core.d.ts} +595 -132
  80. package/{domain/index.d.ts → types/acorex-platform-domain.d.ts} +744 -412
  81. package/{layout/builder/index.d.ts → types/acorex-platform-layout-builder.d.ts} +193 -48
  82. package/types/acorex-platform-layout-components.d.ts +2979 -0
  83. package/{layout/designer/index.d.ts → types/acorex-platform-layout-designer.d.ts} +96 -18
  84. package/{layout/entity/index.d.ts → types/acorex-platform-layout-entity.d.ts} +1601 -261
  85. package/{layout/views/index.d.ts → types/acorex-platform-layout-views.d.ts} +116 -55
  86. package/{layout/widget-core/index.d.ts → types/acorex-platform-layout-widget-core.d.ts} +272 -124
  87. package/{layout/widgets/index.d.ts → types/acorex-platform-layout-widgets.d.ts} +1055 -157
  88. package/{native/index.d.ts → types/acorex-platform-native.d.ts} +0 -7
  89. package/types/acorex-platform-runtime.d.ts +571 -0
  90. package/{themes/default/index.d.ts → types/acorex-platform-themes-default.d.ts} +122 -5
  91. package/{themes/shared/index.d.ts → types/acorex-platform-themes-shared.d.ts} +1 -1
  92. package/types/acorex-platform-workflow.d.ts +1884 -0
  93. package/fesm2022/acorex-platform-common-common-settings.provider-zhqNP3xb.mjs +0 -71
  94. package/fesm2022/acorex-platform-common-common-settings.provider-zhqNP3xb.mjs.map +0 -1
  95. package/fesm2022/acorex-platform-layout-widgets-button-widget-designer.component-C3VoBb_b.mjs.map +0 -1
  96. package/fesm2022/acorex-platform-layout-widgets-file-list-popup.component-CxrsI6Hn.mjs +0 -135
  97. package/fesm2022/acorex-platform-layout-widgets-file-list-popup.component-CxrsI6Hn.mjs.map +0 -1
  98. package/fesm2022/acorex-platform-layout-widgets-image-preview.popup-V31OpYah.mjs.map +0 -1
  99. package/fesm2022/acorex-platform-layout-widgets-page-widget-designer.component-BtZMBxYp.mjs.map +0 -1
  100. package/fesm2022/acorex-platform-layout-widgets-tabular-data-edit-popup.component-Ck7-wpT2.mjs.map +0 -1
  101. package/fesm2022/acorex-platform-layout-widgets-tabular-data-view-popup.component-y8vjUiVs.mjs.map +0 -1
  102. package/fesm2022/acorex-platform-layout-widgets-text-block-widget-designer.component-Df1BFkSa.mjs.map +0 -1
  103. package/fesm2022/acorex-platform-themes-default-entity-master-create-view.component-VIGuU5M4.mjs +0 -157
  104. package/fesm2022/acorex-platform-themes-default-entity-master-create-view.component-VIGuU5M4.mjs.map +0 -1
  105. package/fesm2022/acorex-platform-themes-default-entity-master-list-view.component-DyDa_hyd.mjs +0 -1542
  106. package/fesm2022/acorex-platform-themes-default-entity-master-list-view.component-DyDa_hyd.mjs.map +0 -1
  107. package/fesm2022/acorex-platform-themes-default-entity-master-modify-view.component-Ua3ZA5hk.mjs +0 -101
  108. package/fesm2022/acorex-platform-themes-default-entity-master-modify-view.component-Ua3ZA5hk.mjs.map +0 -1
  109. package/fesm2022/acorex-platform-themes-default-entity-master-single-view.component-eMBby9k4.mjs.map +0 -1
  110. package/fesm2022/acorex-platform-themes-default-error-401.component-cfREo88K.mjs.map +0 -1
  111. package/fesm2022/acorex-platform-themes-default-error-404.component-CdCV5ZoA.mjs.map +0 -1
  112. package/fesm2022/acorex-platform-themes-default-error-offline.component-E7SzBcAt.mjs +0 -19
  113. package/fesm2022/acorex-platform-themes-default-error-offline.component-E7SzBcAt.mjs.map +0 -1
  114. package/fesm2022/acorex-platform-themes-shared-icon-chooser-column.component-C0EpfU2k.mjs.map +0 -1
  115. package/fesm2022/acorex-platform-themes-shared-icon-chooser-view.component-9W52W6Nu.mjs.map +0 -1
  116. package/fesm2022/acorex-platform-themes-shared-settings.provider-DSs1o1M6.mjs.map +0 -1
  117. package/fesm2022/acorex-platform-themes-shared-theme-color-chooser-column.component-DTnfRy5f.mjs +0 -65
  118. package/fesm2022/acorex-platform-themes-shared-theme-color-chooser-column.component-DTnfRy5f.mjs.map +0 -1
  119. package/fesm2022/acorex-platform-themes-shared-theme-color-chooser-view.component-DY0JtT1v.mjs +0 -64
  120. package/fesm2022/acorex-platform-themes-shared-theme-color-chooser-view.component-DY0JtT1v.mjs.map +0 -1
  121. package/layout/components/index.d.ts +0 -1669
  122. package/runtime/index.d.ts +0 -307
  123. package/workflow/index.d.ts +0 -1808
  124. /package/{index.d.ts → types/acorex-platform.d.ts} +0 -0
@@ -1,8 +1,220 @@
1
1
  import * as i0 from '@angular/core';
2
- import { Injectable, InjectionToken, inject, EnvironmentInjector, runInInjectionContext, makeEnvironmentProviders, input, ElementRef, effect, Directive, isDevMode, NgModule } from '@angular/core';
2
+ import { inject, Injectable, InjectionToken, EnvironmentInjector, runInInjectionContext, makeEnvironmentProviders, input, ElementRef, effect, Directive, isDevMode, NgModule } from '@angular/core';
3
3
  import { AXPBroadcastEventService, AXPDistributedEventListenerService } from '@acorex/platform/core';
4
4
  import { castArray } from 'lodash-es';
5
5
 
6
+ //#region ---- defineCommand ----
7
+ /**
8
+ * Typed identity helper for command metadata sidecars.
9
+ */
10
+ function defineCommand(definition) {
11
+ return definition;
12
+ }
13
+ //#endregion
14
+
15
+ //#region ---- Shared catalog categories (queries & commands) ----
16
+ const AXP_CATALOG_DEFINITION_CATEGORY_PLATFORM = {
17
+ name: 'platform',
18
+ order: 1,
19
+ title: 'Platform',
20
+ };
21
+ const AXP_CATALOG_DEFINITION_CATEGORY_ENTITY = {
22
+ name: 'entity',
23
+ order: 2,
24
+ title: 'Entity',
25
+ };
26
+ const AXP_CATALOG_DEFINITION_CATEGORY_STORAGE = {
27
+ name: 'storage',
28
+ order: 3,
29
+ title: 'Storage',
30
+ };
31
+ const AXP_CATALOG_DEFINITION_CATEGORY_WIDGETS = {
32
+ name: 'widgets',
33
+ order: 4,
34
+ title: 'Widgets',
35
+ };
36
+ const AXP_CATALOG_DEFINITION_CATEGORY_WORKFLOW = {
37
+ name: 'workflow',
38
+ order: 5,
39
+ title: 'Workflow',
40
+ };
41
+ const AXP_CATALOG_DEFINITION_CATEGORY_UTILITY = {
42
+ name: 'utility',
43
+ order: 6,
44
+ title: 'Utility',
45
+ };
46
+ const AXP_CATALOG_DEFINITION_CATEGORY_SETTINGS = {
47
+ name: 'settings',
48
+ order: 7,
49
+ title: 'Settings',
50
+ };
51
+ const AXP_CATALOG_DEFINITION_CATEGORY_AI_TOOLS = {
52
+ name: 'ai-tools',
53
+ order: 8,
54
+ title: 'AI tools',
55
+ };
56
+ const AXP_CATALOG_DEFINITION_CATEGORY_SECURITY = {
57
+ name: 'security',
58
+ order: 9,
59
+ title: 'Security',
60
+ };
61
+ const AXP_CATALOG_DEFINITION_CATEGORY_DATA_MANAGEMENT = {
62
+ name: 'data-management',
63
+ order: 10,
64
+ title: 'Data management',
65
+ };
66
+ const AXP_CATALOG_DEFINITION_CATEGORY_ASSESSMENT = {
67
+ name: 'assessment',
68
+ order: 11,
69
+ title: 'Assessment',
70
+ };
71
+ const AXP_CATALOG_DEFINITION_CATEGORY_REPORT = {
72
+ name: 'report',
73
+ order: 12,
74
+ title: 'Report',
75
+ };
76
+ const AXP_CATALOG_DEFINITION_CATEGORY_ORGANIZATION = {
77
+ name: 'organization',
78
+ order: 13,
79
+ title: 'Organization',
80
+ };
81
+ const AXP_CATALOG_DEFINITION_CATEGORY_TENANT = {
82
+ name: 'tenant',
83
+ order: 14,
84
+ title: 'Tenant',
85
+ };
86
+ const AXP_CATALOG_DEFINITION_CATEGORY_HUMAN_CAPITAL = {
87
+ name: 'human-capital',
88
+ order: 15,
89
+ title: 'Human capital',
90
+ };
91
+ const AXP_CATALOG_DEFINITION_CATEGORY_PRODUCT = {
92
+ name: 'product',
93
+ order: 16,
94
+ title: 'Product',
95
+ };
96
+ const AXP_CATALOG_DEFINITION_CATEGORY_FILE_WIDGET = {
97
+ name: 'file-widget',
98
+ order: 17,
99
+ title: 'File widget',
100
+ };
101
+ //#endregion
102
+
103
+ /**
104
+ * Shared build-time catalog metadata for command, query, and widget definition sidecars
105
+ * (`defineCommand`, `defineQuery`, `defineWidget`).
106
+ * Lives under `shared/` so consumers import one module without a "command" prefix on generic shapes.
107
+ */
108
+ //#endregion
109
+
110
+ /**
111
+ * Build-time command metadata for AXPCommand implementations.
112
+ * `inputs` / `outputs` are schema rows (same family as entity optionDefinitions).
113
+ * Validation entries: only `rule` name and optional `options` (no title/message on rules).
114
+ * Do not import from Angular templates; sidecars may import `defineCommand` from `@acorex/platform/runtime`.
115
+ *
116
+ * Query metadata (fetch-only, no outcomes) is defined in `../queries/query-definition.types.ts` with `defineQuery`.
117
+ * Widget metadata sidecars use `../widgets/widget-definition.types.ts` with `defineWidget`.
118
+ */
119
+ //#endregion
120
+
121
+ /**
122
+ * Build-time command metadata only. Safe under Node (e.g. generate-runtime-catalog) without loading the command executor stack.
123
+ * Sidecars should import `defineCommand` from `@acorex/platform/runtime` (or this module for deep imports).
124
+ */
125
+
126
+ //#region ---- Imports ----
127
+ //#endregion
128
+ const COMMAND_EXECUTION_EVENT_KEY = '@commands:execution';
129
+ class AXPCommandEventsService {
130
+ constructor() {
131
+ //#region ---- Services & Dependencies ----
132
+ this.broadcast = inject(AXPBroadcastEventService);
133
+ this.distributedEvents = inject(AXPDistributedEventListenerService, { optional: true });
134
+ }
135
+ //#endregion
136
+ //#region ---- Public API ----
137
+ listen(handler) {
138
+ const subscription = this.broadcast
139
+ .listen(COMMAND_EXECUTION_EVENT_KEY)
140
+ .subscribe(({ data }) => handler(data));
141
+ return () => subscription.unsubscribe();
142
+ }
143
+ async emit(event) {
144
+ const safePayload = this.serializeForBroadcast(event);
145
+ this.broadcast.publish(COMMAND_EXECUTION_EVENT_KEY, safePayload);
146
+ await this.distributedEvents?.dispatch(COMMAND_EXECUTION_EVENT_KEY, safePayload);
147
+ }
148
+ //#endregion
149
+ //#region ---- Broadcast payload (structured-clone safe) ----
150
+ /**
151
+ * Removes functions, symbols, and cycles so {@link AXPBroadcastEventService.publish}
152
+ * can use `BroadcastChannel.postMessage` without DataCloneError (e.g. command input with `dialogRef`).
153
+ */
154
+ serializeForBroadcast(event) {
155
+ return {
156
+ stage: event.stage,
157
+ key: event.key,
158
+ success: event.success,
159
+ input: this.stripNonSerializable(event.input),
160
+ result: event.result === undefined || event.result === null
161
+ ? event.result
162
+ : this.stripNonSerializable(event.result),
163
+ error: event.error instanceof Error
164
+ ? { name: event.error.name, message: event.error.message }
165
+ : this.stripNonSerializable(event.error),
166
+ };
167
+ }
168
+ stripNonSerializable(value) {
169
+ const seen = new WeakSet();
170
+ const walk = (v) => {
171
+ if (v === null || v === undefined) {
172
+ return v;
173
+ }
174
+ const t = typeof v;
175
+ if (t === 'function' || t === 'symbol') {
176
+ return undefined;
177
+ }
178
+ if (t === 'bigint') {
179
+ return v.toString();
180
+ }
181
+ if (t !== 'object') {
182
+ return v;
183
+ }
184
+ if (v instanceof Date) {
185
+ return v.toISOString();
186
+ }
187
+ if (Array.isArray(v)) {
188
+ if (seen.has(v)) {
189
+ return '[Circular]';
190
+ }
191
+ seen.add(v);
192
+ return v.map((item) => walk(item)).filter((item) => item !== undefined);
193
+ }
194
+ if (seen.has(v)) {
195
+ return '[Circular]';
196
+ }
197
+ seen.add(v);
198
+ const obj = v;
199
+ const out = {};
200
+ for (const key of Object.keys(obj)) {
201
+ const child = walk(obj[key]);
202
+ if (child !== undefined) {
203
+ out[key] = child;
204
+ }
205
+ }
206
+ return out;
207
+ };
208
+ return walk(value);
209
+ }
210
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPCommandEventsService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
211
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPCommandEventsService, providedIn: 'root' }); }
212
+ }
213
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPCommandEventsService, decorators: [{
214
+ type: Injectable,
215
+ args: [{ providedIn: 'root' }]
216
+ }] });
217
+
6
218
  //#endregion
7
219
  //#region ---- Middleware Composition ----
8
220
  /**
@@ -51,10 +263,10 @@ class AXPCommandRegistry {
51
263
  this.registry.clear();
52
264
  this.middlewares.length = 0;
53
265
  }
54
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: AXPCommandRegistry, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
55
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: AXPCommandRegistry, providedIn: 'root' }); }
266
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPCommandRegistry, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
267
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPCommandRegistry, providedIn: 'root' }); }
56
268
  }
57
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: AXPCommandRegistry, decorators: [{
269
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPCommandRegistry, decorators: [{
58
270
  type: Injectable,
59
271
  args: [{ providedIn: 'root' }]
60
272
  }] });
@@ -62,35 +274,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.12", ngImpo
62
274
  // plugins/command.extension.token.ts
63
275
  const AXP_COMMAND_EXTENSION = new InjectionToken('AXP_COMMAND_EXTENSION');
64
276
 
65
- //#region ---- Imports ----
66
- //#endregion
67
- const COMMAND_EXECUTION_EVENT_KEY = '@commands:execution';
68
- class AXPCommandEventsService {
69
- constructor() {
70
- //#region ---- Services & Dependencies ----
71
- this.broadcast = inject(AXPBroadcastEventService);
72
- this.distributedEvents = inject(AXPDistributedEventListenerService, { optional: true });
73
- }
74
- //#endregion
75
- //#region ---- Public API ----
76
- listen(handler) {
77
- const subscription = this.broadcast
78
- .listen(COMMAND_EXECUTION_EVENT_KEY)
79
- .subscribe(({ data }) => handler(data));
80
- return () => subscription.unsubscribe();
81
- }
82
- async emit(event) {
83
- this.broadcast.publish(COMMAND_EXECUTION_EVENT_KEY, event);
84
- await this.distributedEvents?.dispatch(COMMAND_EXECUTION_EVENT_KEY, event);
85
- }
86
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: AXPCommandEventsService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
87
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: AXPCommandEventsService, providedIn: 'root' }); }
88
- }
89
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: AXPCommandEventsService, decorators: [{
90
- type: Injectable,
91
- args: [{ providedIn: 'root' }]
92
- }] });
93
-
94
277
  class AXPCommandExecutor {
95
278
  constructor() {
96
279
  this.injector = inject(EnvironmentInjector);
@@ -149,10 +332,10 @@ class AXPCommandExecutor {
149
332
  ?.filter(ext => ext.target instanceof RegExp ? ext.target.test(key) : ext.target === key)
150
333
  .map(ext => ext.middleware) ?? [];
151
334
  }
152
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: AXPCommandExecutor, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
153
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: AXPCommandExecutor, providedIn: 'root' }); }
335
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPCommandExecutor, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
336
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPCommandExecutor, providedIn: 'root' }); }
154
337
  }
155
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: AXPCommandExecutor, decorators: [{
338
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPCommandExecutor, decorators: [{
156
339
  type: Injectable,
157
340
  args: [{ providedIn: 'root' }]
158
341
  }] });
@@ -185,14 +368,47 @@ class AXPCommandService {
185
368
  async execute(key, input) {
186
369
  return this.executor.execute(key, input);
187
370
  }
188
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: AXPCommandService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
189
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: AXPCommandService, providedIn: 'root' }); }
371
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPCommandService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
372
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPCommandService, providedIn: 'root' }); }
190
373
  }
191
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: AXPCommandService, decorators: [{
374
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPCommandService, decorators: [{
192
375
  type: Injectable,
193
376
  args: [{ providedIn: 'root' }]
194
377
  }] });
195
378
 
379
+ const AXP_COMMAND_MIDDLEWARE_SETUP = new InjectionToken('AXP_COMMAND_MIDDLEWARE_SETUP');
380
+ function provideCommandMiddleware(entries) {
381
+ const global = [];
382
+ const extensions = [];
383
+ for (const entry of entries) {
384
+ if (typeof entry === 'function') {
385
+ global.push(entry);
386
+ }
387
+ else {
388
+ extensions.push(entry);
389
+ }
390
+ }
391
+ return makeEnvironmentProviders([
392
+ // Plugin middleware entries
393
+ ...extensions.map(ext => ({
394
+ provide: AXP_COMMAND_EXTENSION,
395
+ useValue: ext,
396
+ multi: true
397
+ })),
398
+ // Global middleware setup (triggered via this token)
399
+ {
400
+ provide: AXP_COMMAND_MIDDLEWARE_SETUP,
401
+ useFactory: () => {
402
+ const registry = inject(AXPCommandRegistry);
403
+ for (const mw of global) {
404
+ registry.use(mw);
405
+ }
406
+ return true;
407
+ }
408
+ }
409
+ ]);
410
+ }
411
+
196
412
  const AXP_COMMAND_SETUP = new InjectionToken('AXP_COMMAND_SETUP');
197
413
  function provideCommandSetups(entries) {
198
414
  return makeEnvironmentProviders([
@@ -229,50 +445,19 @@ function provideCommand(key, loader) {
229
445
  ]);
230
446
  }
231
447
 
232
- const AXP_COMMAND_MIDDLEWARE_SETUP = new InjectionToken('AXP_COMMAND_MIDDLEWARE_SETUP');
233
- function provideCommandMiddleware(entries) {
234
- const global = [];
235
- const extensions = [];
236
- for (const entry of entries) {
237
- if (typeof entry === 'function') {
238
- global.push(entry);
239
- }
240
- else {
241
- extensions.push(entry);
242
- }
243
- }
244
- return makeEnvironmentProviders([
245
- // Plugin middleware entries
246
- ...extensions.map(ext => ({
247
- provide: AXP_COMMAND_EXTENSION,
248
- useValue: ext,
249
- multi: true
250
- })),
251
- // Global middleware setup (triggered via this token)
252
- {
253
- provide: AXP_COMMAND_MIDDLEWARE_SETUP,
254
- useFactory: () => {
255
- const registry = inject(AXPCommandRegistry);
256
- for (const mw of global) {
257
- registry.use(mw);
258
- }
259
- return true;
260
- }
261
- }
262
- ]);
448
+ //#region ---- defineQuery ----
449
+ /**
450
+ * Typed identity helper for query metadata sidecars.
451
+ */
452
+ function defineQuery(definition) {
453
+ return definition;
263
454
  }
455
+ //#endregion
264
456
 
265
- function composeQueryMiddlewares(middlewares) {
266
- return (handler) => {
267
- let composed = handler;
268
- for (let i = middlewares.length - 1; i >= 0; i--) {
269
- const mw = middlewares[i];
270
- const next = composed;
271
- composed = (input) => mw(input, next);
272
- }
273
- return composed;
274
- };
275
- }
457
+ /**
458
+ * Build-time query metadata only. Safe under Node (e.g. generate-runtime-catalog) without loading the query executor stack.
459
+ * Sidecars should import `defineQuery` from `@acorex/platform/runtime` (or this module for deep imports).
460
+ */
276
461
 
277
462
  // queries/query.registry.ts
278
463
  class AXPQueryRegistry {
@@ -305,10 +490,10 @@ class AXPQueryRegistry {
305
490
  this.registry.clear();
306
491
  this.middlewares.length = 0;
307
492
  }
308
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: AXPQueryRegistry, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
309
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: AXPQueryRegistry, providedIn: 'root' }); }
493
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPQueryRegistry, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
494
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPQueryRegistry, providedIn: 'root' }); }
310
495
  }
311
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: AXPQueryRegistry, decorators: [{
496
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPQueryRegistry, decorators: [{
312
497
  type: Injectable,
313
498
  args: [{ providedIn: 'root' }]
314
499
  }] });
@@ -316,6 +501,79 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.12", ngImpo
316
501
  // plugins/query.extension.token.ts
317
502
  const AXP_QUERY_EXTENSION = new InjectionToken('AXP_QUERY_EXTENSION');
318
503
 
504
+ const AXP_QUERY_MIDDLEWARE_SETUP = new InjectionToken('AXP_QUERY_MIDDLEWARE_SETUP');
505
+ function provideQueryMiddleware(entries) {
506
+ const global = [];
507
+ const extensions = [];
508
+ for (const entry of entries) {
509
+ if (typeof entry === 'function') {
510
+ global.push(entry);
511
+ }
512
+ else {
513
+ extensions.push(entry);
514
+ }
515
+ }
516
+ return makeEnvironmentProviders([
517
+ // Plugin middleware entries
518
+ ...extensions.map(ext => ({
519
+ provide: AXP_QUERY_EXTENSION,
520
+ useValue: ext,
521
+ multi: true
522
+ })),
523
+ // Global middleware setup (triggered via this token)
524
+ {
525
+ provide: AXP_QUERY_MIDDLEWARE_SETUP,
526
+ useFactory: () => {
527
+ const registry = inject(AXPQueryRegistry);
528
+ for (const mw of global) {
529
+ registry.use(mw);
530
+ }
531
+ return true;
532
+ }
533
+ }
534
+ ]);
535
+ }
536
+
537
+ const AXP_QUERY_SETUP = new InjectionToken('AXP_QUERY_SETUP');
538
+ function provideQuerySetups(entries) {
539
+ return makeEnvironmentProviders([
540
+ {
541
+ provide: AXP_QUERY_SETUP,
542
+ useFactory: () => {
543
+ const registry = inject(AXPQueryRegistry);
544
+ const injector = inject(EnvironmentInjector);
545
+ for (const entry of entries) {
546
+ registry.register(entry.key, async () => {
547
+ const CommandType = await entry.loader();
548
+ return injector.get(CommandType);
549
+ });
550
+ }
551
+ return true;
552
+ },
553
+ multi: true
554
+ }
555
+ ]);
556
+ }
557
+
558
+ /**
559
+ * Build-time query metadata for AXPQuery implementations.
560
+ * Mirrors command metadata shape except there are no `outcomes` (queries only `fetch`).
561
+ * Shares {@link AXPCatalogMetadataDefinitionBase} with commands and widgets; `inputs` / `outputs` live on the base.
562
+ */
563
+ //#endregion
564
+
565
+ function composeQueryMiddlewares(middlewares) {
566
+ return (handler) => {
567
+ let composed = handler;
568
+ for (let i = middlewares.length - 1; i >= 0; i--) {
569
+ const mw = middlewares[i];
570
+ const next = composed;
571
+ composed = (input) => mw(input, next);
572
+ }
573
+ return composed;
574
+ };
575
+ }
576
+
319
577
  class AXPQueryExecutor {
320
578
  constructor() {
321
579
  this.injector = inject(EnvironmentInjector);
@@ -342,10 +600,10 @@ class AXPQueryExecutor {
342
600
  ?.filter(ext => ext.target instanceof RegExp ? ext.target.test(key) : ext.target === key)
343
601
  .map(ext => ext.middleware) ?? [];
344
602
  }
345
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: AXPQueryExecutor, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
346
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: AXPQueryExecutor, providedIn: 'root' }); }
603
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPQueryExecutor, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
604
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPQueryExecutor, providedIn: 'root' }); }
347
605
  }
348
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: AXPQueryExecutor, decorators: [{
606
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPQueryExecutor, decorators: [{
349
607
  type: Injectable,
350
608
  args: [{ providedIn: 'root' }]
351
609
  }] });
@@ -378,67 +636,34 @@ class AXPQueryService {
378
636
  async fetch(key, input) {
379
637
  return this.executor.fetch(key, input);
380
638
  }
381
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: AXPQueryService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
382
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: AXPQueryService, providedIn: 'root' }); }
639
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPQueryService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
640
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPQueryService, providedIn: 'root' }); }
383
641
  }
384
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: AXPQueryService, decorators: [{
642
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPQueryService, decorators: [{
385
643
  type: Injectable,
386
644
  args: [{ providedIn: 'root' }]
387
645
  }] });
388
646
 
389
- const AXP_QUERY_SETUP = new InjectionToken('AXP_QUERY_SETUP');
390
- function provideQuerySetups(entries) {
391
- return makeEnvironmentProviders([
392
- {
393
- provide: AXP_QUERY_SETUP,
394
- useFactory: () => {
395
- const registry = inject(AXPQueryRegistry);
396
- const injector = inject(EnvironmentInjector);
397
- for (const entry of entries) {
398
- registry.register(entry.key, async () => {
399
- const CommandType = await entry.loader();
400
- return injector.get(CommandType);
401
- });
402
- }
403
- return true;
404
- },
405
- multi: true
406
- }
407
- ]);
647
+ //#region ---- defineWidget ----
648
+ /**
649
+ * Typed identity helper for widget metadata sidecars.
650
+ */
651
+ function defineWidget(definition) {
652
+ return definition;
408
653
  }
654
+ //#endregion
409
655
 
410
- const AXP_QUERY_MIDDLEWARE_SETUP = new InjectionToken('AXP_QUERY_MIDDLEWARE_SETUP');
411
- function provideQueryMiddleware(entries) {
412
- const global = [];
413
- const extensions = [];
414
- for (const entry of entries) {
415
- if (typeof entry === 'function') {
416
- global.push(entry);
417
- }
418
- else {
419
- extensions.push(entry);
420
- }
421
- }
422
- return makeEnvironmentProviders([
423
- // Plugin middleware entries
424
- ...extensions.map(ext => ({
425
- provide: AXP_QUERY_EXTENSION,
426
- useValue: ext,
427
- multi: true
428
- })),
429
- // Global middleware setup (triggered via this token)
430
- {
431
- provide: AXP_QUERY_MIDDLEWARE_SETUP,
432
- useFactory: () => {
433
- const registry = inject(AXPQueryRegistry);
434
- for (const mw of global) {
435
- registry.use(mw);
436
- }
437
- return true;
438
- }
439
- }
440
- ]);
441
- }
656
+ /**
657
+ * Build-time widget metadata only. Safe for tooling without loading layout widget components.
658
+ * Sidecars should import `defineWidget` from `@acorex/platform/runtime` (or this module for deep imports).
659
+ */
660
+
661
+ /**
662
+ * Build-time widget metadata sidecars (parallel to {@link AXPWidgetConfig} in layout/widget-core).
663
+ * Extends {@link AXPCatalogMetadataDefinitionBase}; `inputs` / `outputs` use the same schema rows as commands/queries.
664
+ * Sidecars may import `defineWidget` from `@acorex/platform/runtime`.
665
+ */
666
+ //#endregion
442
667
 
443
668
  function composeViewMiddlewares(middlewares) {
444
669
  return (handler) => {
@@ -482,10 +707,10 @@ class AXPViewRegistry {
482
707
  this.registry.clear();
483
708
  this.middlewares.length = 0;
484
709
  }
485
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: AXPViewRegistry, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
486
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: AXPViewRegistry, providedIn: 'root' }); }
710
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPViewRegistry, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
711
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPViewRegistry, providedIn: 'root' }); }
487
712
  }
488
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: AXPViewRegistry, decorators: [{
713
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPViewRegistry, decorators: [{
489
714
  type: Injectable,
490
715
  args: [{ providedIn: 'root' }]
491
716
  }] });
@@ -518,10 +743,10 @@ class AXPViewExecutor {
518
743
  ?.filter(ext => ext.target instanceof RegExp ? ext.target.test(key) : ext.target === key)
519
744
  .map(ext => ext.middleware) ?? [];
520
745
  }
521
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: AXPViewExecutor, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
522
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: AXPViewExecutor, providedIn: 'root' }); }
746
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPViewExecutor, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
747
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPViewExecutor, providedIn: 'root' }); }
523
748
  }
524
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: AXPViewExecutor, decorators: [{
749
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPViewExecutor, decorators: [{
525
750
  type: Injectable,
526
751
  args: [{ providedIn: 'root' }]
527
752
  }] });
@@ -555,10 +780,10 @@ class AXPViewService {
555
780
  async provide(key, input) {
556
781
  return this.executor.provide(key, input);
557
782
  }
558
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: AXPViewService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
559
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: AXPViewService, providedIn: 'root' }); }
783
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPViewService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
784
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPViewService, providedIn: 'root' }); }
560
785
  }
561
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: AXPViewService, decorators: [{
786
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPViewService, decorators: [{
562
787
  type: Injectable,
563
788
  args: [{ providedIn: 'root' }]
564
789
  }] });
@@ -674,10 +899,10 @@ class AXPPolicyEngineRegistry {
674
899
  await composed(context);
675
900
  return context;
676
901
  }
677
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: AXPPolicyEngineRegistry, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
678
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: AXPPolicyEngineRegistry, providedIn: 'root' }); }
902
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPPolicyEngineRegistry, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
903
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPPolicyEngineRegistry, providedIn: 'root' }); }
679
904
  }
680
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: AXPPolicyEngineRegistry, decorators: [{
905
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPPolicyEngineRegistry, decorators: [{
681
906
  type: Injectable,
682
907
  args: [{ providedIn: 'root' }]
683
908
  }] });
@@ -726,10 +951,10 @@ class AXPPolicyEngineService {
726
951
  // }
727
952
  // }
728
953
  }
729
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: AXPPolicyEngineService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
730
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: AXPPolicyEngineService, providedIn: 'root' }); }
954
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPPolicyEngineService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
955
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPPolicyEngineService, providedIn: 'root' }); }
731
956
  }
732
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: AXPPolicyEngineService, decorators: [{
957
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPPolicyEngineService, decorators: [{
733
958
  type: Injectable,
734
959
  args: [{
735
960
  providedIn: 'root'
@@ -738,7 +963,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.12", ngImpo
738
963
 
739
964
  class AXPPolicyEngineDirective {
740
965
  constructor() {
741
- this.policy = input.required(...(ngDevMode ? [{ debugName: "policy", alias: 'axp-apply-policy' }] : [{ alias: 'axp-apply-policy' }]));
966
+ this.policy = input.required({ ...(ngDevMode ? { debugName: "policy" } : /* istanbul ignore next */ {}), alias: 'axp-apply-policy' });
742
967
  this.service = inject(AXPPolicyEngineService);
743
968
  this.elementRef = inject((ElementRef));
744
969
  this.#eff = effect(async () => {
@@ -751,13 +976,13 @@ class AXPPolicyEngineDirective {
751
976
  policies: castArray(policy),
752
977
  sender: this.elementRef.nativeElement
753
978
  });
754
- }, ...(ngDevMode ? [{ debugName: "#eff" }] : []));
979
+ }, ...(ngDevMode ? [{ debugName: "#eff" }] : /* istanbul ignore next */ []));
755
980
  }
756
981
  #eff;
757
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: AXPPolicyEngineDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
758
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "20.3.12", type: AXPPolicyEngineDirective, isStandalone: true, selector: "[axp-apply-policy]", inputs: { policy: { classPropertyName: "policy", publicName: "axp-apply-policy", isSignal: true, isRequired: true, transformFunction: null } }, ngImport: i0 }); }
982
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPPolicyEngineDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
983
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "21.2.9", type: AXPPolicyEngineDirective, isStandalone: true, selector: "[axp-apply-policy]", inputs: { policy: { classPropertyName: "policy", publicName: "axp-apply-policy", isSignal: true, isRequired: true, transformFunction: null } }, ngImport: i0 }); }
759
984
  }
760
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: AXPPolicyEngineDirective, decorators: [{
985
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPPolicyEngineDirective, decorators: [{
761
986
  type: Directive,
762
987
  args: [{
763
988
  selector: '[axp-apply-policy]',
@@ -830,11 +1055,11 @@ class AXPRuntimeModule {
830
1055
  console.log('[AXPRuntimeModule] Policy Engine Setup:', this._policyEngineSetup);
831
1056
  }
832
1057
  }
833
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: AXPRuntimeModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
834
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.12", ngImport: i0, type: AXPRuntimeModule }); }
835
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: AXPRuntimeModule }); }
1058
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPRuntimeModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
1059
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.9", ngImport: i0, type: AXPRuntimeModule }); }
1060
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPRuntimeModule }); }
836
1061
  }
837
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: AXPRuntimeModule, decorators: [{
1062
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPRuntimeModule, decorators: [{
838
1063
  type: NgModule
839
1064
  }], ctorParameters: () => [] });
840
1065
 
@@ -844,5 +1069,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.12", ngImpo
844
1069
  * Generated bundle index. Do not edit.
845
1070
  */
846
1071
 
847
- export { AXPCommandEventsService, AXPCommandExecutor, AXPCommandRegistry, AXPCommandService, AXPPolicyEngineContext, AXPPolicyEngineDirective, AXPPolicyEngineRegistry, AXPPolicyEngineService, AXPQueryExecutor, AXPQueryRegistry, AXPQueryService, AXPRuntimeModule, AXPViewExecutor, AXPViewRegistry, AXPViewService, AXP_COMMAND_EXTENSION, AXP_COMMAND_MIDDLEWARE_SETUP, AXP_COMMAND_SETUP, AXP_POLICY_ENGINE_MIDDLEWARE_SETUP, AXP_POLICY_EXTENSION, AXP_QUERY_EXTENSION, AXP_QUERY_MIDDLEWARE_SETUP, AXP_QUERY_SETUP, AXP_VIEW_EXTENSION, AXP_VIEW_SETUP, composeCommandMiddlewares, composePolicyEngineMiddlewares, composeQueryMiddlewares, composeViewMiddlewares, provideCommand, provideCommandMiddleware, provideCommandSetups, providePolicySetups, provideQueryMiddleware, provideQuerySetups, provideViewSetup, provideViewSetups };
1072
+ export { AXPCommandEventsService, AXPCommandExecutor, AXPCommandRegistry, AXPCommandService, AXPPolicyEngineContext, AXPPolicyEngineDirective, AXPPolicyEngineRegistry, AXPPolicyEngineService, AXPQueryExecutor, AXPQueryRegistry, AXPQueryService, AXPRuntimeModule, AXPViewExecutor, AXPViewRegistry, AXPViewService, AXP_CATALOG_DEFINITION_CATEGORY_AI_TOOLS as AXP_COMMAND_DEFINITION_CATEGORY_AI_TOOLS, AXP_CATALOG_DEFINITION_CATEGORY_ASSESSMENT as AXP_COMMAND_DEFINITION_CATEGORY_ASSESSMENT, AXP_CATALOG_DEFINITION_CATEGORY_DATA_MANAGEMENT as AXP_COMMAND_DEFINITION_CATEGORY_DATA_MANAGEMENT, AXP_CATALOG_DEFINITION_CATEGORY_ENTITY as AXP_COMMAND_DEFINITION_CATEGORY_ENTITY, AXP_CATALOG_DEFINITION_CATEGORY_FILE_WIDGET as AXP_COMMAND_DEFINITION_CATEGORY_FILE_WIDGET, AXP_CATALOG_DEFINITION_CATEGORY_HUMAN_CAPITAL as AXP_COMMAND_DEFINITION_CATEGORY_HUMAN_CAPITAL, AXP_CATALOG_DEFINITION_CATEGORY_ORGANIZATION as AXP_COMMAND_DEFINITION_CATEGORY_ORGANIZATION, AXP_CATALOG_DEFINITION_CATEGORY_PLATFORM as AXP_COMMAND_DEFINITION_CATEGORY_PLATFORM, AXP_CATALOG_DEFINITION_CATEGORY_PRODUCT as AXP_COMMAND_DEFINITION_CATEGORY_PRODUCT, AXP_CATALOG_DEFINITION_CATEGORY_REPORT as AXP_COMMAND_DEFINITION_CATEGORY_REPORT, AXP_CATALOG_DEFINITION_CATEGORY_SECURITY as AXP_COMMAND_DEFINITION_CATEGORY_SECURITY, AXP_CATALOG_DEFINITION_CATEGORY_SETTINGS as AXP_COMMAND_DEFINITION_CATEGORY_SETTINGS, AXP_CATALOG_DEFINITION_CATEGORY_STORAGE as AXP_COMMAND_DEFINITION_CATEGORY_STORAGE, AXP_CATALOG_DEFINITION_CATEGORY_TENANT as AXP_COMMAND_DEFINITION_CATEGORY_TENANT, AXP_CATALOG_DEFINITION_CATEGORY_UTILITY as AXP_COMMAND_DEFINITION_CATEGORY_UTILITY, AXP_CATALOG_DEFINITION_CATEGORY_WORKFLOW as AXP_COMMAND_DEFINITION_CATEGORY_WORKFLOW, AXP_COMMAND_EXTENSION, AXP_COMMAND_MIDDLEWARE_SETUP, AXP_COMMAND_SETUP, AXP_POLICY_ENGINE_MIDDLEWARE_SETUP, AXP_POLICY_EXTENSION, AXP_CATALOG_DEFINITION_CATEGORY_ENTITY as AXP_QUERY_DEFINITION_CATEGORY_ENTITY, AXP_CATALOG_DEFINITION_CATEGORY_PLATFORM as AXP_QUERY_DEFINITION_CATEGORY_PLATFORM, AXP_CATALOG_DEFINITION_CATEGORY_STORAGE as AXP_QUERY_DEFINITION_CATEGORY_STORAGE, AXP_CATALOG_DEFINITION_CATEGORY_WIDGETS as AXP_QUERY_DEFINITION_CATEGORY_WIDGETS, AXP_QUERY_EXTENSION, AXP_QUERY_MIDDLEWARE_SETUP, AXP_QUERY_SETUP, AXP_VIEW_EXTENSION, AXP_VIEW_SETUP, composeCommandMiddlewares, composePolicyEngineMiddlewares, composeQueryMiddlewares, composeViewMiddlewares, defineCommand, defineQuery, defineWidget, provideCommand, provideCommandMiddleware, provideCommandSetups, providePolicySetups, provideQueryMiddleware, provideQuerySetups, provideViewSetup, provideViewSetups };
848
1073
  //# sourceMappingURL=acorex-platform-runtime.mjs.map