@acorex/platform 21.0.0-next.8 → 21.0.0-next.83

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 (133) hide show
  1. package/contracts/README.md +3 -0
  2. package/fesm2022/acorex-platform-auth.mjs +201 -81
  3. package/fesm2022/acorex-platform-auth.mjs.map +1 -1
  4. package/fesm2022/acorex-platform-common-common-settings.provider-Ytey9uhY.mjs +177 -0
  5. package/fesm2022/acorex-platform-common-common-settings.provider-Ytey9uhY.mjs.map +1 -0
  6. package/fesm2022/acorex-platform-common.mjs +4490 -880
  7. package/fesm2022/acorex-platform-common.mjs.map +1 -1
  8. package/fesm2022/acorex-platform-contracts.mjs +38 -0
  9. package/fesm2022/acorex-platform-contracts.mjs.map +1 -0
  10. package/fesm2022/acorex-platform-core.mjs +2612 -667
  11. package/fesm2022/acorex-platform-core.mjs.map +1 -1
  12. package/fesm2022/acorex-platform-domain.mjs +557 -826
  13. package/fesm2022/acorex-platform-domain.mjs.map +1 -1
  14. package/fesm2022/acorex-platform-layout-builder.mjs +1255 -209
  15. package/fesm2022/acorex-platform-layout-builder.mjs.map +1 -1
  16. package/fesm2022/acorex-platform-layout-components-binding-expression-editor-popup.component-CXEdvDTf.mjs +121 -0
  17. package/fesm2022/acorex-platform-layout-components-binding-expression-editor-popup.component-CXEdvDTf.mjs.map +1 -0
  18. package/fesm2022/acorex-platform-layout-components.mjs +6486 -1915
  19. package/fesm2022/acorex-platform-layout-components.mjs.map +1 -1
  20. package/fesm2022/acorex-platform-layout-designer.mjs +612 -287
  21. package/fesm2022/acorex-platform-layout-designer.mjs.map +1 -1
  22. package/fesm2022/acorex-platform-layout-entity-attachments-page.component-CwG6n_Yb.mjs +376 -0
  23. package/fesm2022/acorex-platform-layout-entity-attachments-page.component-CwG6n_Yb.mjs.map +1 -0
  24. package/fesm2022/acorex-platform-layout-entity-file-list-popup.component--IeMZLIr.mjs +100 -0
  25. package/fesm2022/acorex-platform-layout-entity-file-list-popup.component--IeMZLIr.mjs.map +1 -0
  26. package/fesm2022/acorex-platform-layout-entity.mjs +22502 -9964
  27. package/fesm2022/acorex-platform-layout-entity.mjs.map +1 -1
  28. package/fesm2022/acorex-platform-layout-views.mjs +1360 -338
  29. package/fesm2022/acorex-platform-layout-views.mjs.map +1 -1
  30. package/fesm2022/acorex-platform-layout-widget-core.mjs +2226 -524
  31. package/fesm2022/acorex-platform-layout-widget-core.mjs.map +1 -1
  32. 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
  33. package/fesm2022/acorex-platform-layout-widgets-button-widget-designer.component-Dy7jF-oD.mjs.map +1 -0
  34. package/fesm2022/{acorex-platform-layout-widgets-image-preview.popup-V31OpYah.mjs → acorex-platform-layout-widgets-image-preview.popup-C_EPAvCU.mjs} +6 -7
  35. package/fesm2022/acorex-platform-layout-widgets-image-preview.popup-C_EPAvCU.mjs.map +1 -0
  36. package/fesm2022/{acorex-platform-layout-widgets-page-widget-designer.component-BtZMBxYp.mjs → acorex-platform-layout-widgets-page-widget-designer.component-D10yO28c.mjs} +12 -12
  37. package/fesm2022/acorex-platform-layout-widgets-page-widget-designer.component-D10yO28c.mjs.map +1 -0
  38. package/fesm2022/acorex-platform-layout-widgets-repeater-widget-column.component-J0zcGKBX.mjs +116 -0
  39. package/fesm2022/acorex-platform-layout-widgets-repeater-widget-column.component-J0zcGKBX.mjs.map +1 -0
  40. package/fesm2022/{acorex-platform-layout-widgets-tabular-data-edit-popup.component-Ck7-wpT2.mjs → acorex-platform-layout-widgets-tabular-data-edit-popup.component-DjpZU6gz.mjs} +6 -6
  41. package/fesm2022/acorex-platform-layout-widgets-tabular-data-edit-popup.component-DjpZU6gz.mjs.map +1 -0
  42. package/fesm2022/{acorex-platform-layout-widgets-tabular-data-view-popup.component-y8vjUiVs.mjs → acorex-platform-layout-widgets-tabular-data-view-popup.component-gX-3Kx9I.mjs} +5 -5
  43. package/fesm2022/acorex-platform-layout-widgets-tabular-data-view-popup.component-gX-3Kx9I.mjs.map +1 -0
  44. 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
  45. package/fesm2022/acorex-platform-layout-widgets-text-block-widget-designer.component-Vo4fWHtX.mjs.map +1 -0
  46. package/fesm2022/acorex-platform-layout-widgets.mjs +18742 -16715
  47. package/fesm2022/acorex-platform-layout-widgets.mjs.map +1 -1
  48. package/fesm2022/acorex-platform-native.mjs +8 -7
  49. package/fesm2022/acorex-platform-native.mjs.map +1 -1
  50. package/fesm2022/acorex-platform-runtime.mjs +391 -166
  51. package/fesm2022/acorex-platform-runtime.mjs.map +1 -1
  52. package/fesm2022/acorex-platform-themes-default-entity-master-create-view.component-CWLfNqV0.mjs +160 -0
  53. package/fesm2022/acorex-platform-themes-default-entity-master-create-view.component-CWLfNqV0.mjs.map +1 -0
  54. package/fesm2022/acorex-platform-themes-default-entity-master-modify-view.component-C7cT82K2.mjs +120 -0
  55. package/fesm2022/acorex-platform-themes-default-entity-master-modify-view.component-C7cT82K2.mjs.map +1 -0
  56. package/fesm2022/{acorex-platform-themes-default-entity-master-single-view.component-eMBby9k4.mjs → acorex-platform-themes-default-entity-master-single-view.component-Br9p5aXT.mjs} +21 -28
  57. package/fesm2022/acorex-platform-themes-default-entity-master-single-view.component-Br9p5aXT.mjs.map +1 -0
  58. package/fesm2022/acorex-platform-themes-default-error-401.component-B1nsdpTY.mjs +48 -0
  59. package/fesm2022/acorex-platform-themes-default-error-401.component-B1nsdpTY.mjs.map +1 -0
  60. package/fesm2022/acorex-platform-themes-default-error-404.component-D4UvRe8u.mjs +42 -0
  61. package/fesm2022/acorex-platform-themes-default-error-404.component-D4UvRe8u.mjs.map +1 -0
  62. package/fesm2022/acorex-platform-themes-default-error-offline.component-DR6G8gPC.mjs +19 -0
  63. package/fesm2022/acorex-platform-themes-default-error-offline.component-DR6G8gPC.mjs.map +1 -0
  64. package/fesm2022/acorex-platform-themes-default.mjs +2337 -94
  65. package/fesm2022/acorex-platform-themes-default.mjs.map +1 -1
  66. package/fesm2022/{acorex-platform-themes-shared-icon-chooser-column.component-C0EpfU2k.mjs → acorex-platform-themes-shared-icon-chooser-column.component-CqkWJYdv.mjs} +6 -6
  67. package/fesm2022/acorex-platform-themes-shared-icon-chooser-column.component-CqkWJYdv.mjs.map +1 -0
  68. package/fesm2022/{acorex-platform-themes-shared-icon-chooser-view.component-9W52W6Nu.mjs → acorex-platform-themes-shared-icon-chooser-view.component-BOTuLdWN.mjs} +6 -6
  69. package/fesm2022/acorex-platform-themes-shared-icon-chooser-view.component-BOTuLdWN.mjs.map +1 -0
  70. package/fesm2022/{acorex-platform-themes-shared-settings.provider-DSs1o1M6.mjs → acorex-platform-themes-shared-settings.provider-BjuzSe0T.mjs} +52 -33
  71. package/fesm2022/acorex-platform-themes-shared-settings.provider-BjuzSe0T.mjs.map +1 -0
  72. package/fesm2022/acorex-platform-themes-shared-theme-color-chooser-column.component-D566Kdvy.mjs +94 -0
  73. package/fesm2022/acorex-platform-themes-shared-theme-color-chooser-column.component-D566Kdvy.mjs.map +1 -0
  74. package/fesm2022/acorex-platform-themes-shared-theme-color-chooser-view.component-D7-rCGl7.mjs +86 -0
  75. package/fesm2022/acorex-platform-themes-shared-theme-color-chooser-view.component-D7-rCGl7.mjs.map +1 -0
  76. package/fesm2022/acorex-platform-themes-shared.mjs +793 -612
  77. package/fesm2022/acorex-platform-themes-shared.mjs.map +1 -1
  78. package/fesm2022/acorex-platform-workflow.mjs +997 -274
  79. package/fesm2022/acorex-platform-workflow.mjs.map +1 -1
  80. package/fesm2022/acorex-platform.mjs.map +1 -1
  81. package/package.json +41 -35
  82. package/{auth/index.d.ts → types/acorex-platform-auth.d.ts} +40 -19
  83. package/types/acorex-platform-common.d.ts +3673 -0
  84. package/types/acorex-platform-contracts.d.ts +940 -0
  85. package/{core/index.d.ts → types/acorex-platform-core.d.ts} +1029 -170
  86. package/{domain/index.d.ts → types/acorex-platform-domain.d.ts} +744 -412
  87. package/{layout/builder/index.d.ts → types/acorex-platform-layout-builder.d.ts} +262 -55
  88. package/types/acorex-platform-layout-components.d.ts +3329 -0
  89. package/{layout/designer/index.d.ts → types/acorex-platform-layout-designer.d.ts} +96 -18
  90. package/types/acorex-platform-layout-entity.d.ts +4512 -0
  91. package/{layout/views/index.d.ts → types/acorex-platform-layout-views.d.ts} +334 -91
  92. package/{layout/widget-core/index.d.ts → types/acorex-platform-layout-widget-core.d.ts} +438 -162
  93. package/{layout/widgets/index.d.ts → types/acorex-platform-layout-widgets.d.ts} +1152 -507
  94. package/{native/index.d.ts → types/acorex-platform-native.d.ts} +0 -7
  95. package/types/acorex-platform-runtime.d.ts +571 -0
  96. package/{themes/default/index.d.ts → types/acorex-platform-themes-default.d.ts} +268 -11
  97. package/{themes/shared/index.d.ts → types/acorex-platform-themes-shared.d.ts} +30 -2
  98. package/{workflow/index.d.ts → types/acorex-platform-workflow.d.ts} +436 -748
  99. package/common/index.d.ts +0 -2470
  100. package/fesm2022/acorex-platform-common-common-settings.provider-zhqNP3xb.mjs +0 -71
  101. package/fesm2022/acorex-platform-common-common-settings.provider-zhqNP3xb.mjs.map +0 -1
  102. package/fesm2022/acorex-platform-layout-widgets-button-widget-designer.component-C3VoBb_b.mjs.map +0 -1
  103. package/fesm2022/acorex-platform-layout-widgets-file-list-popup.component-CxrsI6Hn.mjs +0 -135
  104. package/fesm2022/acorex-platform-layout-widgets-file-list-popup.component-CxrsI6Hn.mjs.map +0 -1
  105. package/fesm2022/acorex-platform-layout-widgets-image-preview.popup-V31OpYah.mjs.map +0 -1
  106. package/fesm2022/acorex-platform-layout-widgets-page-widget-designer.component-BtZMBxYp.mjs.map +0 -1
  107. package/fesm2022/acorex-platform-layout-widgets-tabular-data-edit-popup.component-Ck7-wpT2.mjs.map +0 -1
  108. package/fesm2022/acorex-platform-layout-widgets-tabular-data-view-popup.component-y8vjUiVs.mjs.map +0 -1
  109. package/fesm2022/acorex-platform-layout-widgets-text-block-widget-designer.component-Df1BFkSa.mjs.map +0 -1
  110. package/fesm2022/acorex-platform-themes-default-entity-master-create-view.component-VIGuU5M4.mjs +0 -157
  111. package/fesm2022/acorex-platform-themes-default-entity-master-create-view.component-VIGuU5M4.mjs.map +0 -1
  112. package/fesm2022/acorex-platform-themes-default-entity-master-list-view.component-D3qZa5fM.mjs +0 -1542
  113. package/fesm2022/acorex-platform-themes-default-entity-master-list-view.component-D3qZa5fM.mjs.map +0 -1
  114. package/fesm2022/acorex-platform-themes-default-entity-master-modify-view.component-Ua3ZA5hk.mjs +0 -101
  115. package/fesm2022/acorex-platform-themes-default-entity-master-modify-view.component-Ua3ZA5hk.mjs.map +0 -1
  116. package/fesm2022/acorex-platform-themes-default-entity-master-single-view.component-eMBby9k4.mjs.map +0 -1
  117. package/fesm2022/acorex-platform-themes-default-error-401.component-cfREo88K.mjs +0 -31
  118. package/fesm2022/acorex-platform-themes-default-error-401.component-cfREo88K.mjs.map +0 -1
  119. package/fesm2022/acorex-platform-themes-default-error-404.component-CdCV5ZoA.mjs +0 -25
  120. package/fesm2022/acorex-platform-themes-default-error-404.component-CdCV5ZoA.mjs.map +0 -1
  121. package/fesm2022/acorex-platform-themes-default-error-offline.component-E7SzBcAt.mjs +0 -19
  122. package/fesm2022/acorex-platform-themes-default-error-offline.component-E7SzBcAt.mjs.map +0 -1
  123. package/fesm2022/acorex-platform-themes-shared-icon-chooser-column.component-C0EpfU2k.mjs.map +0 -1
  124. package/fesm2022/acorex-platform-themes-shared-icon-chooser-view.component-9W52W6Nu.mjs.map +0 -1
  125. package/fesm2022/acorex-platform-themes-shared-settings.provider-DSs1o1M6.mjs.map +0 -1
  126. package/fesm2022/acorex-platform-themes-shared-theme-color-chooser-column.component-Dz0cylyQ.mjs +0 -65
  127. package/fesm2022/acorex-platform-themes-shared-theme-color-chooser-column.component-Dz0cylyQ.mjs.map +0 -1
  128. package/fesm2022/acorex-platform-themes-shared-theme-color-chooser-view.component-DY0JtT1v.mjs +0 -64
  129. package/fesm2022/acorex-platform-themes-shared-theme-color-chooser-view.component-DY0JtT1v.mjs.map +0 -1
  130. package/layout/components/index.d.ts +0 -1670
  131. package/layout/entity/index.d.ts +0 -2294
  132. package/runtime/index.d.ts +0 -307
  133. /package/{index.d.ts → types/acorex-platform.d.ts} +0 -0
package/common/index.d.ts DELETED
@@ -1,2470 +0,0 @@
1
- import * as i0 from '@angular/core';
2
- import { InjectionToken, EnvironmentProviders, Injector, ErrorHandler, ModuleWithProviders, EventEmitter, ElementRef, Renderer2, NgZone, ChangeDetectorRef } from '@angular/core';
3
- import { AXStyleColorType, AXDataSourceOperator, AXDataSourceFilterOption } from '@acorex/cdk/common';
4
- import * as i2 from '@acorex/components/popup';
5
- import { AXPopupSizeType, AXPopupService } from '@acorex/components/popup';
6
- import * as i5 from '@acorex/platform/core';
7
- import { AXPValueTransformerFunctions, AXPGridLayoutOptions, AXPValidationRules, AXPSystemActionType, AXPMetaData, AXPOptionsData, AXPLogoConfig, AXPNavigateActionCommand, AXPExecuteCommand, AXPEntityReference, AXPApplicationUserReference, AXPPlatformScopeKey, AXPPlatformScope, AXPWidgetTriggers, AXPExpressionEvaluatorScopeProvider, AXPExpressionEvaluatorScopeProviderContext } from '@acorex/platform/core';
8
- import { AXPWidgetTypesMap, AXPMetaDataDefinition, AXPWidgetNode } from '@acorex/platform/layout/widget-core';
9
- import * as i6 from '@angular/router';
10
- import { Route, Routes } from '@angular/router';
11
- import * as i1 from '@acorex/platform/workflow';
12
- import { AXPWorkflowAction, AXPWorkflowContext, AXPWorkflow } from '@acorex/platform/workflow';
13
- import * as i3 from '@acorex/core/date-time';
14
- import * as i4 from '@acorex/components/toast';
15
- import * as rxjs from 'rxjs';
16
- import { Subject } from 'rxjs';
17
- import * as _ngrx_signals from '@ngrx/signals';
18
- import { AXTranslationService } from '@acorex/core/translation';
19
- import { AXLocaleProfile } from '@acorex/core/locale';
20
-
21
- interface AXPAppVersion {
22
- version: string;
23
- build: number;
24
- date: Date;
25
- }
26
- interface AXPAppVersionProvider {
27
- provider(): Promise<AXPAppVersion>;
28
- }
29
- declare const AXP_APP_VERSION_PROVIDER: InjectionToken<AXPAppVersionProvider>;
30
- declare class AXPAppVersionService {
31
- private provider;
32
- getAppVersion(): Promise<AXPAppVersion>;
33
- static ɵfac: i0.ɵɵFactoryDeclaration<AXPAppVersionService, never>;
34
- static ɵprov: i0.ɵɵInjectableDeclaration<AXPAppVersionService>;
35
- }
36
-
37
- interface AXEntityPropertyWidget {
38
- type: AXPWidgetTypesMap[keyof AXPWidgetTypesMap] | string;
39
- path?: string;
40
- id?: string;
41
- formula?: string;
42
- children?: AXEntityPropertyWidget[];
43
- mode: 'view' | 'edit';
44
- options?: Record<string, any>;
45
- triggers?: {
46
- event: string;
47
- action: string;
48
- disabled?: boolean;
49
- }[];
50
- valueTransforms?: AXPValueTransformerFunctions;
51
- }
52
- declare enum AXPRelationshipKind {
53
- Association = 0,
54
- Composition = 1,
55
- Aggregation = 2
56
- }
57
- declare enum AXPRelationshipCardinality {
58
- OneToOne = 0,
59
- OneToMany = 1,
60
- ManyToMany = 2
61
- }
62
- interface AXPRelationship {
63
- id: string;
64
- from: string;
65
- to: string;
66
- kind: AXPRelationshipKind;
67
- cardinality: AXPRelationshipCardinality;
68
- }
69
- declare enum AXPEntityCommandScope {
70
- TypeLevel = "typeLevel",
71
- Selected = "selected",
72
- Individual = "individual",
73
- Section = "section"
74
- }
75
- declare enum AXPEntityQueryType {
76
- Single = "single",
77
- List = "list"
78
- }
79
- interface AXPEntityPropertyLayoutConfig extends AXPGridLayoutOptions {
80
- label?: {
81
- visible?: boolean;
82
- };
83
- order?: number;
84
- }
85
- interface AXPEntityPropertyGroup {
86
- id: string;
87
- title: string;
88
- description?: string;
89
- permissions?: string[];
90
- icon?: string;
91
- }
92
- interface AXPEntityPropertyView {
93
- name: string;
94
- dataPath?: string;
95
- permissions?: string[];
96
- layout?: AXPEntityPropertyLayoutConfig;
97
- }
98
- interface AXPEntityPropertyUpdateView extends AXPEntityPropertyView {
99
- }
100
- interface AXPEntityPropertyCreateView extends AXPEntityPropertyView {
101
- defaultValue?: any;
102
- }
103
- interface AXPEntitySectionView {
104
- id: string;
105
- icon?: string;
106
- description?: string;
107
- order?: number;
108
- collapsed?: boolean;
109
- layout?: AXPEntityPropertyLayoutConfig;
110
- }
111
- interface AXPEntityProperty {
112
- name: string;
113
- title: string;
114
- description?: string;
115
- groupId?: string;
116
- schema: {
117
- dataType: string;
118
- nullable?: boolean;
119
- readonly?: boolean | string;
120
- visible?: boolean | string;
121
- defaultValue?: any | string | ((context: any | null) => any);
122
- unique?: {
123
- enabled: boolean;
124
- };
125
- interface?: Partial<AXEntityPropertyWidget>;
126
- };
127
- options?: {
128
- filter?: {
129
- advance?: {
130
- enabled?: boolean;
131
- widgetType?: AXPWidgetTypesMap[keyof AXPWidgetTypesMap];
132
- };
133
- inline?: {
134
- enabled?: boolean;
135
- };
136
- };
137
- sort?: {
138
- enabled?: boolean;
139
- };
140
- };
141
- validations?: AXPValidationRules;
142
- }
143
- interface AXPEntityTableColumn {
144
- name: string;
145
- title?: string;
146
- hidden?: boolean;
147
- showAs?: {
148
- type: AXPWidgetTypesMap[keyof AXPWidgetTypesMap] | string;
149
- options?: Record<string, any>;
150
- };
151
- sort?: {
152
- enabled?: boolean;
153
- dir?: 'asc' | 'desc';
154
- };
155
- options?: {
156
- visible?: boolean;
157
- width?: string;
158
- dataPath?: string;
159
- [name: string]: any;
160
- };
161
- }
162
- interface AXPEntityCommand {
163
- execute: string | Function;
164
- permissions?: string[];
165
- }
166
- interface AXPEntityQuery {
167
- execute: string | Function;
168
- type: AXPEntityQueryType;
169
- }
170
-
171
- type AXPCommandActionType = AXPSystemActionType;
172
- interface AXPCommandActionLook {
173
- color: AXStyleColorType;
174
- icon: string;
175
- }
176
- type AXPCommandActionPriority = 'primary' | 'secondary';
177
- type AXPCommandActionCallback = string | {
178
- name: string;
179
- options?: {
180
- decoration?: {
181
- header?: {
182
- title?: string;
183
- };
184
- };
185
- process?: {
186
- data?: any;
187
- [name: string]: any;
188
- };
189
- layout?: {
190
- size?: AXPopupSizeType;
191
- };
192
- [name: string]: any;
193
- };
194
- metadata?: AXPMetaData;
195
- };
196
- interface AXPCommandActionDisplay extends Partial<AXPCommandActionLook> {
197
- name?: string;
198
- command: AXPCommandActionCallback;
199
- title: string;
200
- type: AXPSystemActionType | string;
201
- priority: 'primary' | 'secondary';
202
- separated?: boolean;
203
- permissions?: string[];
204
- hidden?: boolean | string;
205
- disabled?: boolean | string;
206
- default?: boolean;
207
- order?: number;
208
- }
209
- interface AXPEntityAction extends AXPCommandActionDisplay {
210
- scope: AXPEntityCommandScope;
211
- }
212
- interface AXPEntity {
213
- plugins?: {
214
- name: string;
215
- options?: AXPOptionsData;
216
- }[];
217
- module: string;
218
- name: string;
219
- icon?: string;
220
- parentKey?: string;
221
- category?: AXPCategoryEntity;
222
- title: string;
223
- formats: {
224
- individual: string;
225
- plural: string;
226
- lookup?: string;
227
- displayName?: string;
228
- searchResult?: {
229
- title: string;
230
- description?: string;
231
- };
232
- };
233
- relatedEntities?: AXPRelatedEntity[];
234
- groups?: AXPEntityPropertyGroup[];
235
- properties: AXPEntityProperty[];
236
- columns?: AXPEntityTableColumn[];
237
- commands?: {
238
- create?: AXPEntityCommand | undefined;
239
- update?: AXPEntityCommand | undefined;
240
- delete?: AXPEntityCommand | undefined;
241
- [name: string]: AXPEntityCommand | undefined;
242
- };
243
- queries?: {
244
- byKey?: AXPEntityQuery;
245
- list?: AXPEntityQuery;
246
- lookup?: AXPEntityQuery;
247
- history?: AXPEntityQuery;
248
- comments?: AXPEntityQuery;
249
- [name: string]: AXPEntityQuery | undefined;
250
- };
251
- validations?: AXPValidationRules;
252
- interfaces?: {
253
- master?: {
254
- single?: AXPEntityMasterSingleLayoutView;
255
- list?: AXPEntityMasterListView;
256
- create?: AXPEntityMasterCreateLayoutView;
257
- update?: AXPEntityMasterUpdateLayoutView;
258
- };
259
- detail?: {
260
- list?: AXPEntityDetailListView;
261
- };
262
- };
263
- }
264
- declare function getEntityInfo(entity: AXPEntity): {
265
- source: string;
266
- module: {
267
- route: string;
268
- };
269
- entity: {
270
- route: string;
271
- };
272
- };
273
- declare function createQueryView(name: string, title: string, fixed: boolean, params?: {
274
- columns?: string[];
275
- conditions?: any[];
276
- sorts?: AXPQuerySort[];
277
- }): AXPQueryView;
278
- declare function createAllQueryView(params?: {
279
- columns?: string[];
280
- conditions?: AXPQueryFilter[];
281
- sorts?: AXPQuerySort[];
282
- } | undefined): AXPQueryView;
283
- interface AXPRelatedEntity {
284
- entity: string;
285
- title?: string;
286
- icon?: string;
287
- columns?: string[];
288
- layout?: {
289
- type: 'tab-detail' | 'tab-list' | 'page-detail' | 'page-list' | 'merge-detail';
290
- order?: number;
291
- position?: 'before' | 'after' | 'middle';
292
- };
293
- conditions?: AXPQueryFilter[];
294
- hidden?: boolean | string;
295
- actions?: AXPEntityAction[];
296
- /**
297
- * Relationship-level persistence strategy for merge-detail data.
298
- * Defaults:
299
- * - strategy: 'embedded'
300
- * - idField: last segment of dataPath + 'Id' (or 'relatedId' when dataPath is missing)
301
- * - map: undefined (pass-through)
302
- * - hydrate: 'eager' (applies to getOne only in mock)
303
- * - cascade.delete: 'none'
304
- */
305
- persistence?: {
306
- strategy?: 'embedded' | 'referenced';
307
- idField?: string;
308
- dataPath?: string;
309
- map?: Record<string, string>;
310
- hydrate?: 'eager' | 'lazy';
311
- cascade?: {
312
- delete?: 'none' | 'orphans' | 'all';
313
- };
314
- };
315
- }
316
- interface AXPCategoryEntity {
317
- entity: string;
318
- title?: string;
319
- textField?: string;
320
- valueField?: string;
321
- conditions?: AXPQueryFilter[];
322
- applyConditions?: AXPQueryFilter[];
323
- }
324
- interface AXPEntityVersionHistory {
325
- enabled?: boolean;
326
- showInList?: boolean;
327
- showInDetail?: boolean;
328
- }
329
- interface AXPAggregate {
330
- id: string;
331
- name: string;
332
- title: string;
333
- entities: AXPEntity[];
334
- }
335
- interface AXPModule {
336
- name: string;
337
- title: string;
338
- aggregates: AXPAggregate[];
339
- relationships?: AXPRelationship[];
340
- }
341
- interface AXPApplication {
342
- name: string;
343
- title: string;
344
- modules: AXPModule[];
345
- }
346
- interface AXPEntityMasterLayoutView {
347
- title?: string;
348
- sections: AXPEntitySectionView[];
349
- properties?: AXPEntityPropertyView[];
350
- }
351
- interface AXPEntityMasterCreateLayoutView extends AXPEntityMasterLayoutView {
352
- steps?: {
353
- id: string;
354
- title: string;
355
- description?: string;
356
- };
357
- }
358
- interface AXPEntityMasterUpdateLayoutView extends AXPEntityMasterLayoutView {
359
- }
360
- interface AXPEntityMasterSingleLayoutView extends AXPEntityMasterLayoutView {
361
- title: string;
362
- description?: string;
363
- actions?: AXPEntityAction[];
364
- }
365
- interface AXPEntityMasterListView {
366
- title?: string;
367
- description?: string;
368
- actions?: AXPEntityAction[];
369
- views: AXPQueryView[];
370
- }
371
- interface AXPEntityDetailListView {
372
- title?: string;
373
- description?: string;
374
- columns: AXPEntityTableColumn[];
375
- actions?: AXPEntityAction[];
376
- }
377
- interface AXPQueryView {
378
- name: string;
379
- fixed: boolean;
380
- title: string;
381
- columns: string[];
382
- conditions: AXPQueryFilter[];
383
- sorts: AXPQuerySort[];
384
- indexCol?: boolean;
385
- pageSize?: number;
386
- visible?: boolean;
387
- }
388
- interface AXPQueryFilter {
389
- name: string;
390
- operator: AXDataSourceOperator;
391
- value: any;
392
- }
393
- interface AXPQuerySort {
394
- name: string;
395
- dir: 'asc' | 'desc';
396
- }
397
-
398
- interface AXPFilterOperator {
399
- name: string;
400
- title: string;
401
- hasValue: boolean;
402
- }
403
- declare const EQ_OPER: AXPFilterOperator;
404
- declare const NOT_EQ_OPER: AXPFilterOperator;
405
- declare const GT_OPER: AXPFilterOperator;
406
- declare const LT_OPER: AXPFilterOperator;
407
- declare const GTE_OPER: AXPFilterOperator;
408
- declare const LTE_OPER: AXPFilterOperator;
409
- declare const CONTAINS_OPER: AXPFilterOperator;
410
- declare const NOT_CONTAINS_OPER: AXPFilterOperator;
411
- declare const IN_OPER: AXPFilterOperator;
412
- declare const STARTS_WITH_OPER: AXPFilterOperator;
413
- declare const ENDS_WITH_OPER: AXPFilterOperator;
414
- declare const IS_EMPTY_OPER: AXPFilterOperator;
415
- declare const IS_NOT_EMPTY_OPER: AXPFilterOperator;
416
- declare const BETWEEN_OPER: AXPFilterOperator;
417
- declare const STRING_OPERATORS: AXPFilterOperator[];
418
- declare const NUMBER_OPERATORS: AXPFilterOperator[];
419
- declare const BOOLEAN_OPERATORS: AXPFilterOperator[];
420
- declare const DATE_OPERATORS: AXPFilterOperator[];
421
- declare const ALL_DEFAULT_OPERATORS: AXPFilterOperator[];
422
-
423
- interface AXPHomePageDefinition {
424
- key: string;
425
- title: string;
426
- route: Route;
427
- }
428
- declare const AXP_HOME_PAGES: InjectionToken<AXPHomePageDefinition[]>;
429
- declare const AXP_HOME_PAGE_DEFAULT_KEY: InjectionToken<string>;
430
-
431
- declare function provideDynamicHomePage(): EnvironmentProviders;
432
-
433
- declare class AXPHomePageService {
434
- private defaultHomePageKey;
435
- private userHomePageKey;
436
- private candidates;
437
- private settingsService;
438
- private sessionService;
439
- private injector;
440
- private originalConfig;
441
- private loginPath;
442
- private get flatCandidates();
443
- constructor();
444
- private init;
445
- load(): Promise<void>;
446
- getRegisteredList(): AXPHomePageDefinition[];
447
- getRegisteredRoutes(): Routes;
448
- getCurrent(): {
449
- path: string;
450
- title: string;
451
- };
452
- private findPath;
453
- private buildFullPaths;
454
- private refreshRoutes;
455
- private applyMergedConfig;
456
- navigateTo(): Promise<void>;
457
- static ɵfac: i0.ɵɵFactoryDeclaration<AXPHomePageService, never>;
458
- static ɵprov: i0.ɵɵInjectableDeclaration<AXPHomePageService>;
459
- }
460
-
461
- declare class AXPHomePageModule {
462
- static ɵfac: i0.ɵɵFactoryDeclaration<AXPHomePageModule, never>;
463
- static ɵmod: i0.ɵɵNgModuleDeclaration<AXPHomePageModule, never, never, never>;
464
- static ɵinj: i0.ɵɵInjectorDeclaration<AXPHomePageModule>;
465
- }
466
-
467
- interface AXPErrorHandler {
468
- handleError(error: Error, next: (error: Error) => void): void;
469
- }
470
-
471
- declare class AXPErrorHandlerRegistryService {
472
- private injector;
473
- private errorHandlers;
474
- constructor(injector: Injector);
475
- register(...plugins: (new () => AXPErrorHandler)[]): void;
476
- get handlers(): AXPErrorHandler[];
477
- static ɵfac: i0.ɵɵFactoryDeclaration<AXPErrorHandlerRegistryService, never>;
478
- static ɵprov: i0.ɵɵInjectableDeclaration<AXPErrorHandlerRegistryService>;
479
- }
480
-
481
- declare class AXPGlobalErrorHandler extends ErrorHandler {
482
- private injector;
483
- private registry;
484
- constructor(injector: Injector, registry: AXPErrorHandlerRegistryService);
485
- handleError(error: Error): void;
486
- static ɵfac: i0.ɵɵFactoryDeclaration<AXPGlobalErrorHandler, never>;
487
- static ɵprov: i0.ɵɵInjectableDeclaration<AXPGlobalErrorHandler>;
488
- }
489
-
490
- interface AXPCommonModuleConfigs {
491
- errorHandlers: (new () => AXPErrorHandler)[];
492
- }
493
- declare class AXPCommonModule {
494
- static forRoot(configs?: AXPCommonModuleConfigs): ModuleWithProviders<AXPCommonModule>;
495
- static forChild(configs?: AXPCommonModuleConfigs): ModuleWithProviders<AXPCommonModule>;
496
- /**
497
- * @ignore
498
- */
499
- constructor(instances: any[]);
500
- static ɵfac: i0.ɵɵFactoryDeclaration<AXPCommonModule, never>;
501
- static ɵmod: i0.ɵɵNgModuleDeclaration<AXPCommonModule, never, [typeof i1.AXPWorkflowModule, typeof i2.AXPopupModule, typeof i3.AXDateTimeModule, typeof i4.AXToastModule, typeof i5.AXPModuleManifestModule], [typeof i6.RouterModule]>;
502
- static ɵinj: i0.ɵɵInjectorDeclaration<AXPCommonModule>;
503
- }
504
-
505
- declare const ENVIRONMENT: InjectionToken<any>;
506
- declare const AXP_PLATFORM_CONFIG_TOKEN: InjectionToken<AXPPlatformConfigs>;
507
- interface AXPPlatformConfigs {
508
- title?: string;
509
- copyright?: string;
510
- logo?: {
511
- icon: {
512
- light: AXPLogoConfig;
513
- dark: AXPLogoConfig;
514
- };
515
- text: {
516
- light: AXPLogoConfig;
517
- dark: AXPLogoConfig;
518
- };
519
- full: {
520
- light: AXPLogoConfig;
521
- dark: AXPLogoConfig;
522
- };
523
- };
524
- network?: {
525
- timeOut?: number;
526
- };
527
- }
528
- declare const AXPPlatformDefaultConfigs: AXPPlatformConfigs;
529
- declare function configPlatform(config?: Partial<AXPPlatformConfigs>): AXPPlatformConfigs;
530
-
531
- declare enum AXPCommonSettings {
532
- EnableOperationToasts = "Common:Setting:Notifications.EnableOperationToasts",
533
- EntityFilterApplyMode = "Common:Setting:Entity.FilterApplyMode"
534
- }
535
-
536
- declare const AXP_ROOT_CONFIG_TOKEN: InjectionToken<AXPRootConfigs>;
537
- interface AXPRootConfigs {
538
- baseUrl: string;
539
- }
540
-
541
- declare abstract class AXPDataProvider {
542
- abstract insertOne(entity: any, entityItem: any): Promise<any>;
543
- abstract insertMany(entity: any, entityList: any): Promise<any>;
544
- abstract getOne(entity: any, id: string): Promise<any>;
545
- abstract getMany(entity: any, params?: any): Promise<any>;
546
- abstract updateOne(entity: any, id?: string, data?: {
547
- [key: string]: any;
548
- }): Promise<any>;
549
- abstract deleteOne(entity: any, id: string): Promise<any>;
550
- abstract getFirst(entity: any): Promise<any>;
551
- abstract uploadFile(file: File, title: string, customUrl?: string): Promise<string>;
552
- abstract updateFile(id: string, file: File, title: string, customUrl?: string): Promise<string>;
553
- abstract uploadMultipleFiles(files: File[], title: string): Promise<string[]>;
554
- abstract viewFile(id: string, name: string): Promise<Blob>;
555
- abstract downloadFile(id: string, name: string): Promise<Blob>;
556
- }
557
-
558
- declare abstract class AXPFilterOperatorMiddlewareService {
559
- /**
560
- * Middleware to transform selected filters into corresponding operators.
561
- * @param filters Array of selected filters (e.g., user input).
562
- * @param customOperators Optional custom operators map to override default operators.
563
- * @returns Transformed filters based on custom or default operators.
564
- */
565
- abstract transformFilters(filters: AXDataSourceFilterOption[]): AXDataSourceFilterOption[];
566
- /**
567
- * Helper method to transform a single filter. This handles recursion for nested filters.
568
- * @param filter A single filter object.
569
- * @returns Transformed filter.
570
- */
571
- abstract transformFilter(filters: AXDataSourceFilterOption): AXDataSourceFilterOption;
572
- abstract getOperator(key: string): AXDataSourceOperator;
573
- }
574
- declare class AXPFilterOperatorMiddlewareServiceImpl extends AXPFilterOperatorMiddlewareService {
575
- private customOperatorService;
576
- private operators;
577
- transformFilters(filters: AXDataSourceFilterOption[]): AXDataSourceFilterOption[];
578
- transformFilter(filter: AXDataSourceFilterOption): AXDataSourceFilterOption;
579
- getOperator(key: string): AXDataSourceOperator;
580
- private getDefaultOperators;
581
- static ɵfac: i0.ɵɵFactoryDeclaration<AXPFilterOperatorMiddlewareServiceImpl, never>;
582
- static ɵprov: i0.ɵɵInjectableDeclaration<AXPFilterOperatorMiddlewareServiceImpl>;
583
- }
584
-
585
- declare abstract class AXPCustomOperatorService {
586
- abstract getCustomOperators(): {
587
- [key: string]: AXDataSourceOperator;
588
- };
589
- }
590
- declare class AXPCustomOperatorServiceImpl extends AXPCustomOperatorService {
591
- getCustomOperators(): {
592
- [key: string]: AXDataSourceOperator;
593
- };
594
- static ɵfac: i0.ɵɵFactoryDeclaration<AXPCustomOperatorServiceImpl, never>;
595
- static ɵprov: i0.ɵɵInjectableDeclaration<AXPCustomOperatorServiceImpl>;
596
- }
597
-
598
- declare enum AXPFileStorageStatus {
599
- Temporary = "temporary",// File is not yet associated with a parent entity
600
- Committed = "committed",// File is fully associated and in use
601
- PendingDeletion = "pendingDeletion",// File is marked for deletion but not yet removed
602
- Archived = "archived",// File is archived and no longer actively used
603
- Error = "error"
604
- }
605
- /**
606
- * Interface representing a file storage request in the Acorex platform.
607
- */
608
- interface AXPFileStorageCreateRequest {
609
- /**
610
- * The file to be stored.
611
- */
612
- file: File;
613
- /**
614
- * The name of the file.
615
- */
616
- name?: string;
617
- /**
618
- * The unique identifier of referenced entity.
619
- */
620
- refId: string;
621
- /**
622
- * The type of the referenced entity.
623
- */
624
- refType: string;
625
- /**
626
- * The category of the file. profile-picture, company-logo, policy, document, etc.
627
- */
628
- category: string;
629
- /**
630
- * The folder path where the file should be stored.
631
- * If null, the service will resolve the path based on metadata, user, tenant, or default rules.
632
- */
633
- path?: string;
634
- /**
635
- * Metadata associated with the file.
636
- */
637
- metadata?: AXPMetaData;
638
- /**
639
- * Indicates whether the file is primary or not.
640
- */
641
- isPrimary?: boolean;
642
- /**
643
- * Indicates the status of the file.
644
- */
645
- status?: AXPFileStorageStatus;
646
- }
647
- interface AXPFileStorageUpdateRequest {
648
- /**
649
- * The unique identifier for the stored file.
650
- */
651
- fileId: string;
652
- /**
653
- * The folder path where the file should be stored.
654
- * If null, the service will resolve the path based on metadata, user, tenant, or default rules.
655
- */
656
- path?: string;
657
- /**
658
- * The name of the file.
659
- */
660
- name?: string;
661
- /**
662
- * Metadata associated with the file.
663
- */
664
- metadata: AXPMetaData;
665
- /**
666
- * Indicates whether the file is primary or not.
667
- */
668
- isPrimary?: boolean;
669
- }
670
- interface AXPFileManyStorageInfo {
671
- /**
672
- * The unique identifier for the stored file.
673
- */
674
- id?: string;
675
- /**
676
- * The unique identifier for the stored file.
677
- */
678
- fileId: string;
679
- /**
680
- * The unique identifier of referenced entity.
681
- */
682
- refId: string;
683
- /**
684
- * The type of the referenced entity.
685
- */
686
- refType: string;
687
- /**
688
- * The size of the file in bytes.
689
- */
690
- size: number;
691
- /**
692
- * The name of the file.
693
- */
694
- name?: string;
695
- }
696
- /**
697
- * Represents information about a file stored in the AXP file storage system.
698
- */
699
- interface AXPFileStorageInfo {
700
- /**
701
- * The unique identifier for the stored file.
702
- */
703
- id?: string;
704
- /**
705
- * The unique identifier for the stored file.
706
- */
707
- fileId: string;
708
- /**
709
- * The unique identifier of referenced entity.
710
- */
711
- refId: string;
712
- /**
713
- * The type of the referenced entity.
714
- */
715
- refType: string;
716
- /**
717
- * The category of the file. profile-picture, company-logo, policy, document, etc.
718
- */
719
- category: string;
720
- /**
721
- * The URL where the file can be accessed.
722
- */
723
- url?: string;
724
- /**
725
- * The size of the file in bytes.
726
- */
727
- size: number;
728
- /**
729
- * The name of the file.
730
- */
731
- name?: string;
732
- /**
733
- * The MIME type of the file.
734
- */
735
- mimeType: string;
736
- /**
737
- * The date and time when the file was uploaded.
738
- */
739
- uploadedAt: Date;
740
- /**
741
- * Indicates whether the file is public or private.
742
- */
743
- isPublic: boolean;
744
- /**
745
- * Indicates whether the file is primary or not.
746
- */
747
- isPrimary?: boolean;
748
- status: AXPFileStorageStatus;
749
- binary: File;
750
- }
751
- interface AXPFileStorageInfo {
752
- /**
753
- * The unique identifier for the stored file.
754
- */
755
- id?: string;
756
- /**
757
- * The unique identifier for the stored file.
758
- */
759
- fileId: string;
760
- /**
761
- * The unique identifier of referenced entity.
762
- */
763
- refId: string;
764
- /**
765
- * The type of the referenced entity.
766
- */
767
- refType: string;
768
- /**
769
- * The category of the file. profile-picture, company-logo, policy, document, etc.
770
- */
771
- category: string;
772
- /**
773
- * The URL where the file can be accessed.
774
- */
775
- url?: string;
776
- /**
777
- * The size of the file in bytes.
778
- */
779
- size: number;
780
- /**
781
- * The name of the file.
782
- */
783
- name?: string;
784
- /**
785
- * The MIME type of the file.
786
- */
787
- mimeType: string;
788
- /**
789
- * The date and time when the file was uploaded.
790
- */
791
- uploadedAt: Date;
792
- /**
793
- * Indicates whether the file is public or private.
794
- */
795
- isPublic: boolean;
796
- /**
797
- * Indicates whether the file is primary or not.
798
- */
799
- isPrimary?: boolean;
800
- status: AXPFileStorageStatus;
801
- binary: File;
802
- }
803
- /**
804
- * Represents information about a file stored in the AXP file storage system.
805
- */
806
- interface AXPFileStorageFindRequest {
807
- /**
808
- * The unique identifier of referenced entity.
809
- */
810
- refId?: string;
811
- /**
812
- * The type of the referenced entity.
813
- */
814
- refType?: string;
815
- /**
816
- * The category of the file. profile-picture, company-logo, policy, document, etc.
817
- */
818
- category?: string;
819
- /**
820
- * The MIME type of the file.
821
- */
822
- mimeType?: string;
823
- /**
824
- * Indicates whether the file is public or private.
825
- */
826
- isPublic?: boolean;
827
- /**
828
- * Indicates whether the file is primary or not.
829
- */
830
- isPrimary?: boolean;
831
- /**
832
- * The date and time range when the file was uploaded.
833
- */
834
- uploadedAtRange?: {
835
- from: Date;
836
- to: Date;
837
- };
838
- }
839
-
840
- declare abstract class AXPFileStorageService {
841
- abstract save(request: AXPFileStorageCreateRequest): Promise<AXPFileStorageInfo>;
842
- abstract update(request: AXPFileStorageUpdateRequest): Promise<AXPFileStorageInfo>;
843
- abstract find(request: AXPFileStorageFindRequest): Promise<AXPFileStorageInfo[]>;
844
- abstract findMany(ids: string[]): Promise<AXPFileManyStorageInfo[]>;
845
- abstract getInfo(fileId: string): Promise<AXPFileStorageInfo>;
846
- abstract remove(fileId: string): Promise<void>;
847
- abstract commit(fileId: string): Promise<void>;
848
- abstract markForDeletion(fileId: string): Promise<void>;
849
- static ɵfac: i0.ɵɵFactoryDeclaration<AXPFileStorageService, never>;
850
- static ɵprov: i0.ɵɵInjectableDeclaration<AXPFileStorageService>;
851
- }
852
-
853
- interface AXPFileType {
854
- /**
855
- * The unique identifier for the file type.
856
- */
857
- /**
858
- * The name unique of the file type.
859
- */
860
- name: string;
861
- /**
862
- * The title of the file type.
863
- */
864
- title: string;
865
- /**
866
- * The description of the file type.
867
- */
868
- description?: string;
869
- extensions: AXPFileExtension[];
870
- /**
871
- * The icon of the file type.
872
- */
873
- icon?: string;
874
- /**
875
- * The metadata associated with the file type.
876
- */
877
- meta?: AXPMetaDataDefinition[];
878
- }
879
- interface AXPFileExtension {
880
- /**
881
- * The unique identifier for the file extension.
882
- */
883
- /**
884
- * The name unique of the file extension.
885
- */
886
- name: string;
887
- /**
888
- * The title of the file extension.
889
- */
890
- title: string;
891
- /**
892
- * The description of the file extension.
893
- */
894
- description?: string;
895
- /**
896
- * The icon of the file type.
897
- */
898
- icon?: string;
899
- /**
900
- * The color of the file type.
901
- */
902
- color?: string;
903
- /**
904
- * The metadata associated with the file extension.
905
- */
906
- meta?: AXPMetaDataDefinition[];
907
- }
908
-
909
- interface AXPFileTypeInfoProvider {
910
- items(): Promise<AXPFileType[]>;
911
- }
912
- declare const AXP_FILE_TYPE_INFO_PROVIDER: InjectionToken<AXPFileTypeInfoProvider[]>;
913
- declare class AXPFileTypeProviderService implements AXPFileTypeInfoProvider {
914
- private providers;
915
- items(): Promise<AXPFileType[]>;
916
- get(name: string): Promise<AXPFileType | undefined>;
917
- static ɵfac: i0.ɵɵFactoryDeclaration<AXPFileTypeProviderService, never>;
918
- static ɵprov: i0.ɵɵInjectableDeclaration<AXPFileTypeProviderService>;
919
- }
920
-
921
- declare class AXPStickyDirective {
922
- private element;
923
- private renderer;
924
- private zone;
925
- private cdr;
926
- stickyClass: string;
927
- stickyOffset: number;
928
- isStickyChange: EventEmitter<boolean>;
929
- private _isSticky;
930
- get isSticky(): boolean;
931
- set isSticky(value: boolean);
932
- private topOffset;
933
- private parentElement;
934
- private targetElement;
935
- private mutationObserver;
936
- stickyParent: string | HTMLElement;
937
- stickyTarget: string;
938
- constructor(element: ElementRef<HTMLDivElement>, renderer: Renderer2, zone: NgZone, cdr: ChangeDetectorRef);
939
- ngAfterViewInit(): void;
940
- private initSticky;
941
- private updateTopOffset;
942
- private onParentScroll;
943
- private toggleStickyClasses;
944
- ngOnDestroy(): void;
945
- static ɵfac: i0.ɵɵFactoryDeclaration<AXPStickyDirective, never>;
946
- static ɵdir: i0.ɵɵDirectiveDeclaration<AXPStickyDirective, "[axpSticky]", ["axpSticky"], { "stickyClass": { "alias": "axpSticky"; "required": false; }; "stickyOffset": { "alias": "stickyOffset"; "required": false; }; "stickyParent": { "alias": "stickyParent"; "required": false; }; "stickyTarget": { "alias": "stickyTarget"; "required": false; }; }, { "isStickyChange": "isStickyChange"; }, never, never, true, never>;
947
- }
948
-
949
- type AXPMenuInsertion = 'before' | 'after' | 'inside';
950
- type AXPMenuType = 'menu' | 'group' | 'break';
951
- type AXPMenuItemCommand = AXPNavigateActionCommand<'modal' | 'router'> | AXPExecuteCommand;
952
- interface AXPMenuItem {
953
- text: string;
954
- type?: AXPMenuType;
955
- name?: string;
956
- description?: string;
957
- icon?: string;
958
- priority?: number;
959
- children?: AXPMenuItem[];
960
- path?: string;
961
- command?: AXPMenuItemCommand | undefined;
962
- badgeKey?: string;
963
- data?: any;
964
- meta?: AXPMetaData;
965
- policy?: {
966
- permissions?: string[];
967
- features?: string[];
968
- };
969
- }
970
- interface AXPMenuFinderResult {
971
- readonly exists: boolean;
972
- insert(items: AXPMenuItem[], position: AXPMenuInsertion): void;
973
- remove(): void;
974
- update(updatedItem: Partial<AXPMenuItem>): void;
975
- addItems(items: AXPMenuItem[]): void;
976
- }
977
- interface AXPMenuProviderContext {
978
- addItems(items: AXPMenuItem[]): void;
979
- find(target: string): AXPMenuFinderResult;
980
- }
981
-
982
- interface AXPMenuProvider {
983
- provide(context: AXPMenuProviderContext): Promise<void>;
984
- }
985
- declare const AXP_MENU_PROVIDER: InjectionToken<AXPMenuProvider[]>;
986
- declare class AXPMenuProviderService {
987
- private providers;
988
- private middlewareRegistry;
989
- private cache;
990
- private pendingInserts;
991
- private pendingRemovals;
992
- private pendingUpdates;
993
- private pendingAdditions;
994
- /**
995
- * Observable for menu reload events
996
- * Emits when menu cache is cleared and consumers should reload
997
- */
998
- private menuReloadSubject;
999
- readonly menuReload$: rxjs.Observable<void>;
1000
- /**
1001
- * Get menu items with middlewares applied (for end-user display)
1002
- */
1003
- items(): Promise<AXPMenuItem[]>;
1004
- /**
1005
- * Get raw menu items WITHOUT middleware applied (for management/editing)
1006
- * Used by menu management pages to show original items before customization
1007
- */
1008
- rawItems(): Promise<AXPMenuItem[]>;
1009
- /**
1010
- * Clear the cache to force reload of menu items
1011
- * Notifies all subscribers to reload their menu data
1012
- */
1013
- clearCache(): void;
1014
- /**
1015
- * Apply middlewares in priority order using the enhanced context API
1016
- */
1017
- private applyMiddlewares;
1018
- /**
1019
- * Create provider context for menu providers
1020
- */
1021
- private createMenuProviderContext;
1022
- private applyPendingOperations;
1023
- private findItemWithParent;
1024
- /**
1025
- * Find menu item by name in the items tree (recursive search)
1026
- */
1027
- private findItemByName;
1028
- /**
1029
- * Merge new item properties into existing item, handling children merge
1030
- */
1031
- private mergeMenuItem;
1032
- static ɵfac: i0.ɵɵFactoryDeclaration<AXPMenuProviderService, never>;
1033
- static ɵprov: i0.ɵɵInjectableDeclaration<AXPMenuProviderService>;
1034
- }
1035
-
1036
- /**
1037
- * Rich context API for manipulating menu items within middleware
1038
- * Provides helper methods to find, update, remove, and add menu items easily
1039
- */
1040
- interface AXPMenuMiddlewareContext {
1041
- /**
1042
- * Get all menu items
1043
- */
1044
- readonly items: AXPMenuItem[];
1045
- /**
1046
- * Find menu item(s) by name or pattern
1047
- */
1048
- find(nameOrPattern: string | RegExp): AXPMenuItemFinder;
1049
- /**
1050
- * Find menu item by name (exact match)
1051
- */
1052
- findByName(name: string): AXPMenuItemFinder;
1053
- /**
1054
- * Find menu items by pattern (regex or wildcard)
1055
- */
1056
- findByPattern(pattern: string | RegExp): AXPMenuItemFinder[];
1057
- /**
1058
- * Add new menu items to root level
1059
- */
1060
- add(...items: AXPMenuItem[]): AXPMenuMiddlewareContext;
1061
- /**
1062
- * Remove menu items by predicate
1063
- */
1064
- remove(predicate: (item: AXPMenuItem) => boolean): AXPMenuMiddlewareContext;
1065
- /**
1066
- * Sort all menu items recursively by priority
1067
- */
1068
- sort(): AXPMenuMiddlewareContext;
1069
- /**
1070
- * Get the final menu items array
1071
- */
1072
- toArray(): AXPMenuItem[];
1073
- }
1074
- /**
1075
- * Helper for finding and manipulating a specific menu item
1076
- */
1077
- interface AXPMenuItemFinder {
1078
- /**
1079
- * Get the found menu item (or undefined)
1080
- */
1081
- get(): AXPMenuItem | undefined;
1082
- /**
1083
- * Check if menu item exists
1084
- */
1085
- exists(): boolean;
1086
- /**
1087
- * Update menu item properties
1088
- */
1089
- update(updater: Partial<AXPMenuItem> | ((item: AXPMenuItem) => Partial<AXPMenuItem>)): AXPMenuItemFinder;
1090
- /**
1091
- * Remove the menu item
1092
- */
1093
- remove(): AXPMenuItemFinder;
1094
- /**
1095
- * Hide the menu item (removes it from the menu)
1096
- */
1097
- hide(): AXPMenuItemFinder;
1098
- /**
1099
- * Show the menu item (currently a no-op as items are visible by default)
1100
- * Note: To truly implement show, we'd need to track removed items
1101
- */
1102
- show(): AXPMenuItemFinder;
1103
- /**
1104
- * Set priority
1105
- */
1106
- setPriority(priority: number): AXPMenuItemFinder;
1107
- /**
1108
- * Add children to this menu item
1109
- */
1110
- addChildren(...children: AXPMenuItem[]): AXPMenuItemFinder;
1111
- /**
1112
- * Remove children by predicate
1113
- */
1114
- removeChildren(predicate: (child: AXPMenuItem) => boolean): AXPMenuItemFinder;
1115
- /**
1116
- * Move menu item to a different parent
1117
- */
1118
- moveTo(parentName: string | null | undefined): AXPMenuItemFinder;
1119
- /**
1120
- * Insert menu items before this item
1121
- */
1122
- insertBefore(...items: AXPMenuItem[]): AXPMenuItemFinder;
1123
- /**
1124
- * Insert menu items after this item
1125
- */
1126
- insertAfter(...items: AXPMenuItem[]): AXPMenuItemFinder;
1127
- }
1128
- /**
1129
- * Middleware that processes menu items after all providers have executed
1130
- * Middlewares are executed in order based on their priority (higher priority = earlier execution)
1131
- */
1132
- interface AXPMenuMiddleware {
1133
- /**
1134
- * Optional priority for execution order (higher = earlier)
1135
- * Default: 0
1136
- */
1137
- readonly priority?: number;
1138
- /**
1139
- * Optional name for debugging and identification
1140
- */
1141
- readonly name?: string;
1142
- /**
1143
- * Process menu items using the rich context API
1144
- * @param context - The menu middleware context with helper methods
1145
- * @returns Processed context or void (context is mutable)
1146
- */
1147
- process(context: AXPMenuMiddlewareContext): Promise<void | AXPMenuMiddlewareContext>;
1148
- }
1149
- /**
1150
- * Provider definition for registering middleware via multi-provider
1151
- */
1152
- interface AXPMenuMiddlewareProvider {
1153
- /**
1154
- * The middleware instance
1155
- */
1156
- middleware: AXPMenuMiddleware;
1157
- /**
1158
- * Optional priority override
1159
- */
1160
- priority?: number;
1161
- }
1162
- /**
1163
- * Injection token for menu middlewares (multi-provider)
1164
- */
1165
- declare const AXP_MENU_MIDDLEWARE: InjectionToken<AXPMenuMiddleware[]>;
1166
-
1167
- /**
1168
- * Creates a rich context for menu manipulation
1169
- * Similar to entity modifier context pattern
1170
- */
1171
- declare function createMenuContext(items: AXPMenuItem[]): AXPMenuMiddlewareContext;
1172
-
1173
- /**
1174
- * Central service for managing menu middlewares with priority-based ordering
1175
- * Similar to token registry pattern used in identifier-management
1176
- */
1177
- declare class AXPMenuMiddlewareRegistry {
1178
- /**
1179
- * Manually registered middlewares
1180
- */
1181
- private readonly manualMiddlewares;
1182
- /**
1183
- * Provider-based middlewares (multi-provider injection)
1184
- */
1185
- private readonly providerMiddlewares;
1186
- /**
1187
- * Manually register a middleware
1188
- * @param middleware - The middleware to register
1189
- */
1190
- register(middleware: AXPMenuMiddleware): void;
1191
- /**
1192
- * Unregister a middleware by name
1193
- * @param name - The name of the middleware to remove
1194
- */
1195
- unregister(name: string): void;
1196
- /**
1197
- * Get a specific middleware by name
1198
- * @param name - The middleware name
1199
- */
1200
- get(name: string): AXPMenuMiddleware | undefined;
1201
- /**
1202
- * Get all middlewares sorted by priority (highest first)
1203
- * Combines provider-based and manually registered middlewares
1204
- */
1205
- list(): AXPMenuMiddleware[];
1206
- /**
1207
- * Check if a middleware exists
1208
- * @param name - The middleware name
1209
- */
1210
- exists(name: string): boolean;
1211
- /**
1212
- * Clear all manually registered middlewares
1213
- * Provider-based middlewares are not affected
1214
- */
1215
- clear(): void;
1216
- static ɵfac: i0.ɵɵFactoryDeclaration<AXPMenuMiddlewareRegistry, never>;
1217
- static ɵprov: i0.ɵɵInjectableDeclaration<AXPMenuMiddlewareRegistry>;
1218
- }
1219
-
1220
- /**
1221
- * Helper function to provide menu middlewares with proper DI setup
1222
- * Similar to provideCommandMiddleware pattern
1223
- *
1224
- * @example
1225
- * ```typescript
1226
- * // In app.config.ts or module providers
1227
- * export const appConfig: ApplicationConfig = {
1228
- * providers: [
1229
- * provideMenuMiddleware([
1230
- * customizationMiddleware,
1231
- * securityMiddleware,
1232
- * loggingMiddleware
1233
- * ])
1234
- * ]
1235
- * };
1236
- * ```
1237
- */
1238
- declare function provideMenuMiddleware(middlewares: AXPMenuMiddleware[]): EnvironmentProviders;
1239
- /**
1240
- * Helper to create a class-based middleware with priority
1241
- *
1242
- * @example
1243
- * ```typescript
1244
- * const myMiddleware = createMenuMiddleware({
1245
- * name: 'my-middleware',
1246
- * priority: 100,
1247
- * process: async (context) => {
1248
- * context.find('dashboard').setPriority(1);
1249
- * }
1250
- * });
1251
- * ```
1252
- */
1253
- declare function createMenuMiddleware(config: {
1254
- name: string;
1255
- priority?: number;
1256
- process: (context: AXPMenuMiddlewareContext) => Promise<void>;
1257
- }): AXPMenuMiddleware;
1258
-
1259
- declare const AXPMenuService: i0.Type<{
1260
- items: i0.Signal<AXPMenuItem[]>;
1261
- selectedMenuItem: _ngrx_signals.DeepSignal<{
1262
- item: AXPMenuItem | null;
1263
- isFullMatch: boolean;
1264
- }>;
1265
- setMenuItems: (items: AXPMenuItem[]) => void;
1266
- selectMenuItemByRoute: (path: string) => void;
1267
- executeCommand: (item: AXPMenuItem) => void;
1268
- isItemOpen: (item: AXPMenuItem) => boolean;
1269
- } & _ngrx_signals.StateSource<{
1270
- items: AXPMenuItem[];
1271
- selectedMenuItem: {
1272
- item: AXPMenuItem | null;
1273
- isFullMatch: boolean;
1274
- };
1275
- }>>;
1276
-
1277
- /**
1278
- * Service for checking menu item visibility based on permissions, features, and children.
1279
- * This service helps filter out empty menu items that have no visible children.
1280
- */
1281
- declare class AXPMenuVisibilityService {
1282
- private sessionService;
1283
- /**
1284
- * Checks if a menu item should be visible based on permissions and features.
1285
- */
1286
- isItemVisible(item: AXPMenuItem): boolean;
1287
- /**
1288
- * Recursively checks if a menu item has any visible children.
1289
- * @param item The menu item to check
1290
- * @param getRouterLink Optional function to check if an item has a router link
1291
- */
1292
- hasVisibleChildren(item: AXPMenuItem, getRouterLink?: (item: AXPMenuItem) => unknown): boolean;
1293
- /**
1294
- * Determines if a menu item should be rendered.
1295
- * A menu item should be rendered if:
1296
- * 1. It has a routerLink, OR
1297
- * 2. It has visible children, OR
1298
- * 3. It has a command (for non-router navigation)
1299
- *
1300
- * @param item The menu item to check
1301
- * @param getRouterLink Optional function to check if an item has a router link
1302
- */
1303
- shouldRenderMenuItem(item: AXPMenuItem, getRouterLink?: (item: AXPMenuItem) => unknown): boolean;
1304
- static ɵfac: i0.ɵɵFactoryDeclaration<AXPMenuVisibilityService, never>;
1305
- static ɵprov: i0.ɵɵInjectableDeclaration<AXPMenuVisibilityService>;
1306
- }
1307
-
1308
- interface AXPSearchDefinitionDisplayFormat {
1309
- title?: string;
1310
- description?: string;
1311
- icon?: string;
1312
- id?: string;
1313
- }
1314
- interface AXPSearchDefinition {
1315
- name: string;
1316
- title: string;
1317
- group: string;
1318
- icon: string;
1319
- order: number;
1320
- format: AXPSearchDefinitionDisplayFormat;
1321
- actions: AXPSearchAction[];
1322
- }
1323
- interface AXPSearchParentResult {
1324
- title: string;
1325
- data?: any;
1326
- }
1327
- interface AXPSearchResult {
1328
- id?: string;
1329
- group: string;
1330
- data?: any;
1331
- title?: string;
1332
- description?: string;
1333
- icon?: string;
1334
- command: AXPExecuteCommand;
1335
- parent?: AXPSearchParentResult;
1336
- }
1337
- interface AXPSearchDisplayGroupResult {
1338
- name: string;
1339
- title: string;
1340
- order: number;
1341
- children: AXPSearchDisplayResult[];
1342
- }
1343
- interface AXPSearchDisplayResult {
1344
- id: string;
1345
- definitionName?: string;
1346
- definitionTitle?: string;
1347
- name: string;
1348
- title: string;
1349
- description?: string;
1350
- icon: string;
1351
- data?: any;
1352
- order?: any;
1353
- command: AXPExecuteCommand;
1354
- parent?: AXPSearchParentResult;
1355
- actions: AXPSearchAction[];
1356
- }
1357
- interface AXPSearchDisplayResultForSave {
1358
- id: string;
1359
- name: string;
1360
- title: string;
1361
- description?: string;
1362
- icon: string;
1363
- command: AXPExecuteCommand;
1364
- parent?: {
1365
- title: string;
1366
- description?: string;
1367
- };
1368
- }
1369
- interface AXPSearchAction extends Partial<AXPCommandActionLook> {
1370
- name: string;
1371
- type: AXPSystemActionType | string;
1372
- priority: AXPCommandActionPriority;
1373
- separated?: boolean;
1374
- }
1375
-
1376
- declare class AXPSearchDefinitionProviderContext {
1377
- private definitions;
1378
- private definitionMap;
1379
- addDefinition(name: string, title: string, group: string, icon: string, order: number, options?: {
1380
- format?: AXPSearchDefinitionDisplayFormat;
1381
- actions?: AXPSearchAction[];
1382
- }): AXPSearchDefinitionBuilder;
1383
- getDefinitions(): AXPSearchDefinition[];
1384
- hasEntity(name: string): boolean;
1385
- getDefinition(name: string): AXPSearchDefinition | undefined;
1386
- }
1387
- declare class AXPSearchDefinitionBuilder {
1388
- private context;
1389
- private definition;
1390
- constructor(context: AXPSearchDefinitionProviderContext, definition: AXPSearchDefinition);
1391
- addAction(name: string): AXPSearchDefinitionActionBuilder;
1392
- action(name: string): AXPSearchDefinitionActionBuilder | null;
1393
- endEntity(): AXPSearchDefinitionProviderContext;
1394
- }
1395
- declare class AXPSearchDefinitionActionBuilder {
1396
- private entityBuilder;
1397
- constructor(entityBuilder: AXPSearchDefinitionBuilder);
1398
- endAction(): AXPSearchDefinitionBuilder;
1399
- }
1400
-
1401
- interface AXPSearchDefinitionProvider {
1402
- provide(context: AXPSearchDefinitionProviderContext): Promise<void>;
1403
- }
1404
- declare const AXP_SEARCH_DEFINITION_PROVIDER: InjectionToken<AXPSearchDefinitionProvider[]>;
1405
- declare class AXPSearchDefinitionProviderService {
1406
- private providers;
1407
- private cache;
1408
- private load;
1409
- getListAsync(): Promise<AXPSearchDefinition[]>;
1410
- getList(): AXPSearchDefinition[];
1411
- findDefinition(definitionName: string): AXPSearchDefinition;
1412
- findDefinitionByGroup(definitionGroup: string): AXPSearchDefinition;
1413
- static ɵfac: i0.ɵɵFactoryDeclaration<AXPSearchDefinitionProviderService, never>;
1414
- static ɵprov: i0.ɵɵInjectableDeclaration<AXPSearchDefinitionProviderService>;
1415
- }
1416
-
1417
- interface AXPSearchProvider {
1418
- search(text: string): Promise<AXPSearchResult[]>;
1419
- }
1420
- declare abstract class AXPSearchCommandProvider {
1421
- abstract commands: AXPSearchResult[];
1422
- search(text: string): Promise<AXPSearchResult[]>;
1423
- }
1424
-
1425
- declare const AXP_SEARCH_PROVIDER: InjectionToken<AXPSearchProvider[]>;
1426
- declare class AXPSearchService {
1427
- private providers;
1428
- private definitionService;
1429
- private formatService;
1430
- search(text: string): Promise<AXPSearchDisplayGroupResult[]>;
1431
- static ɵfac: i0.ɵɵFactoryDeclaration<AXPSearchService, never>;
1432
- static ɵprov: i0.ɵɵInjectableDeclaration<AXPSearchService>;
1433
- }
1434
-
1435
- declare class AXPMenuSearchDefinitionProvider implements AXPSearchDefinitionProvider {
1436
- provide(context: AXPSearchDefinitionProviderContext): Promise<void>;
1437
- }
1438
-
1439
- interface AXPMenuItemWithParent extends AXPMenuItem {
1440
- parent?: AXPMenuItem;
1441
- }
1442
- declare class AXPMenuSearchProvider implements AXPSearchProvider {
1443
- menuService: AXPMenuProviderService;
1444
- translateService: AXTranslationService;
1445
- search(text: string): Promise<AXPSearchResult[]>;
1446
- /**
1447
- * Recursively searches AXPMenuItem and its children for a matching text.
1448
- *
1449
- * @param menuItems - The array of AXPMenuItem to search in.
1450
- * @param searchText - The text to search for (case-insensitive).
1451
- * @returns An array of AXPMenuItem that match the search text.
1452
- */
1453
- private searchMenuItems;
1454
- }
1455
-
1456
- declare class AXPFooterTextSlotComponent {
1457
- text: string;
1458
- static ɵfac: i0.ɵɵFactoryDeclaration<AXPFooterTextSlotComponent, never>;
1459
- static ɵcmp: i0.ɵɵComponentDeclaration<AXPFooterTextSlotComponent, "ng-component", never, { "text": { "alias": "text"; "required": false; }; }, {}, never, never, true, never>;
1460
- }
1461
-
1462
- declare class AXPNavBarSlotComponent {
1463
- items: AXPMenuItem[];
1464
- protected handleCommand(action?: AXPMenuItemCommand): void;
1465
- static ɵfac: i0.ɵɵFactoryDeclaration<AXPNavBarSlotComponent, never>;
1466
- static ɵcmp: i0.ɵɵComponentDeclaration<AXPNavBarSlotComponent, "ng-component", never, { "items": { "alias": "items"; "required": false; }; }, {}, never, never, true, never>;
1467
- }
1468
-
1469
- interface AXPLockRequest {
1470
- refId: string;
1471
- refType: string;
1472
- type: AXPLockType;
1473
- date: string;
1474
- expireAt?: Date;
1475
- lockedBy: AXPEntityReference;
1476
- }
1477
- interface AXPUnLockRequest {
1478
- refId: string;
1479
- refType: string;
1480
- type: AXPLockType;
1481
- }
1482
- interface AXPLockGetInfoRequest {
1483
- refId: string;
1484
- refType: string;
1485
- type?: AXPLockType;
1486
- }
1487
- type AXPLockType = 'admin' | 'user';
1488
- interface AXPLockInfo {
1489
- id: string;
1490
- refId: string;
1491
- refType: string;
1492
- type: AXPLockType;
1493
- date: string;
1494
- expireAt?: Date;
1495
- lockedBy: AXPApplicationUserReference;
1496
- }
1497
-
1498
- declare abstract class AXPLockService {
1499
- abstract lock(request: AXPLockRequest): Promise<AXPLockInfo>;
1500
- abstract unlock(request: AXPUnLockRequest): Promise<void>;
1501
- abstract check(request: AXPLockGetInfoRequest): Promise<boolean>;
1502
- abstract getInfo(request: AXPLockGetInfoRequest): Promise<AXPLockInfo>;
1503
- static ɵfac: i0.ɵɵFactoryDeclaration<AXPLockService, never>;
1504
- static ɵprov: i0.ɵɵInjectableDeclaration<AXPLockService>;
1505
- }
1506
-
1507
- interface AXPSettingValueProvider {
1508
- get scope(): AXPPlatformScope;
1509
- load(): Promise<AXPSettingValue[]>;
1510
- set(key: string, value: any): Promise<void>;
1511
- set(values: Record<string, any>): Promise<void>;
1512
- }
1513
- /**
1514
- * Provider interface for supplying default setting values from higher layers (e.g., app, mocks, API).
1515
- * Providers are merged by ascending priority; later providers override earlier values on key conflicts.
1516
- */
1517
- interface AXPSettingDefaultValuesProvider {
1518
- /** Merge order; lower numbers are applied first. Default is 0. */
1519
- priority?: number;
1520
- /** Returns a flat map of setting key to default value. */
1521
- provide(): Promise<Record<string, unknown>>;
1522
- }
1523
- interface AXPSettingValue {
1524
- key: string;
1525
- value: any;
1526
- }
1527
- interface AXPSettingChangedEvent {
1528
- scope: AXPPlatformScope;
1529
- keys: string[];
1530
- values: Record<string, any>;
1531
- entries: AXPSettingValue[];
1532
- }
1533
- interface AXPSettingDefinition {
1534
- name: string;
1535
- title: string;
1536
- description?: string;
1537
- widget: AXPWidgetNode;
1538
- layout?: AXPGridLayoutOptions;
1539
- scope: AXPPlatformScopeKey;
1540
- isRequired?: boolean;
1541
- isInherited?: boolean;
1542
- isEncrypted?: boolean;
1543
- defaultValue?: unknown;
1544
- value?: unknown;
1545
- }
1546
- interface AXPSettingDefinitionGroup {
1547
- name: string;
1548
- title: string;
1549
- icon?: string;
1550
- description?: string;
1551
- groups: AXPSettingDefinitionGroup[];
1552
- sections: AXPSettingDefinitionSection[];
1553
- }
1554
- interface AXPSettingDefinitionSection {
1555
- name: string;
1556
- title: string;
1557
- description?: string;
1558
- settings: AXPSettingDefinition[];
1559
- }
1560
- interface AXPGroupSearchResult {
1561
- breadcrumb: {
1562
- name: string;
1563
- title: string;
1564
- description?: string;
1565
- }[];
1566
- sections: AXPSettingDefinitionSection[] | null;
1567
- groups: AXPSettingDefinitionGroup[] | null;
1568
- }
1569
-
1570
- declare class AXPSettingDefinitionProviderContext {
1571
- private rootGroups;
1572
- private groupMap;
1573
- addGroup(name: string, title: string, description?: string, icon?: string): AXPSettingDefinitionGroupBuilder;
1574
- group(name: string): AXPSettingDefinitionGroupBuilder | null;
1575
- getGroups(): AXPSettingDefinitionGroup[];
1576
- hasGroup(name: string): boolean;
1577
- getGroup(name: string): AXPSettingDefinitionGroup | undefined;
1578
- }
1579
- declare class AXPSettingDefinitionGroupBuilder {
1580
- private context;
1581
- private group;
1582
- constructor(context: AXPSettingDefinitionProviderContext, group: AXPSettingDefinitionGroup);
1583
- addSection(name: string, title: string, description?: string): AXPSettingDefinitionSectionBuilder;
1584
- section(name: string): AXPSettingDefinitionSectionBuilder | null;
1585
- addGroup(name: string, title: string, description?: string, icon?: string): AXPSettingDefinitionGroupBuilder;
1586
- endGroup(): AXPSettingDefinitionProviderContext;
1587
- }
1588
- declare class AXPSettingDefinitionSectionBuilder {
1589
- private groupBuilder;
1590
- private section;
1591
- constructor(groupBuilder: AXPSettingDefinitionGroupBuilder, section: AXPSettingDefinitionSection);
1592
- addSetting(setting: {
1593
- key: string;
1594
- title: string;
1595
- scope: AXPPlatformScopeKey;
1596
- widget: {
1597
- type: AXPWidgetTypesMap[keyof AXPWidgetTypesMap] | string;
1598
- options?: AXPOptionsData;
1599
- triggers?: AXPWidgetTriggers;
1600
- layout?: AXPGridLayoutOptions;
1601
- };
1602
- description?: string;
1603
- isRequired?: boolean;
1604
- isInherited?: boolean;
1605
- isEncrypted?: boolean;
1606
- defaultValue?: unknown;
1607
- valueTransforms?: AXPValueTransformerFunctions;
1608
- validationRules?: AXPValidationRules;
1609
- }): this;
1610
- endSection(): AXPSettingDefinitionGroupBuilder;
1611
- }
1612
-
1613
- interface AXPSettingDefinitionProvider {
1614
- provide(context: AXPSettingDefinitionProviderContext): Promise<void>;
1615
- }
1616
- declare const AXP_SETTING_DEFINITION_PROVIDER: InjectionToken<AXPSettingDefinitionProvider[]>;
1617
- declare class AXPSettingDefinitionProviderService {
1618
- private providers;
1619
- private cache;
1620
- private load;
1621
- reload(): Promise<void>;
1622
- getListAsync(scope: AXPPlatformScopeKey): Promise<AXPSettingDefinitionGroup[]>;
1623
- getList(scope: AXPPlatformScopeKey): AXPSettingDefinitionGroup[];
1624
- defaultValues(): Promise<Record<string, unknown>>;
1625
- findGroup(scope: AXPPlatformScopeKey, groupName: string): AXPGroupSearchResult;
1626
- private searchRecursive;
1627
- static ɵfac: i0.ɵɵFactoryDeclaration<AXPSettingDefinitionProviderService, never>;
1628
- static ɵprov: i0.ɵɵInjectableDeclaration<AXPSettingDefinitionProviderService>;
1629
- }
1630
- declare const AXP_SETTING_DEFAULT_VALUES_PROVIDERS: InjectionToken<AXPSettingDefaultValuesProvider[]>;
1631
- declare class AXPSettingDefaultValuesAggregatorService {
1632
- private readonly definitionService;
1633
- private readonly providers;
1634
- getDefaults(): Promise<Record<string, unknown>>;
1635
- static ɵfac: i0.ɵɵFactoryDeclaration<AXPSettingDefaultValuesAggregatorService, never>;
1636
- static ɵprov: i0.ɵɵInjectableDeclaration<AXPSettingDefaultValuesAggregatorService>;
1637
- }
1638
-
1639
- declare const AXP_SETTING_VALUE_PROVIDER: InjectionToken<AXPSettingValueProvider[]>;
1640
-
1641
- interface AXPSettingsServiceInterface {
1642
- load(): Promise<AXPSettingValue[]>;
1643
- get<T = any>(key: string): Promise<T>;
1644
- defaultValues(scope: AXPPlatformScope): Promise<Record<string, unknown>>;
1645
- scope(scope: AXPPlatformScope): ScopedSettingService;
1646
- }
1647
- declare class AXPSettingsService implements AXPSettingsServiceInterface {
1648
- private readonly providers;
1649
- private readonly injector;
1650
- private readonly eventService;
1651
- private readonly sessionService;
1652
- private readonly scopedSettingsCache;
1653
- readonly onChanged: Subject<AXPSettingChangedEvent>;
1654
- readonly onLoaded: Subject<void>;
1655
- constructor();
1656
- reload(): Promise<void>;
1657
- load(): Promise<AXPSettingValue[]>;
1658
- get<T = any>(key: string): Promise<T>;
1659
- defaultValues(scope: AXPPlatformScope): Promise<Record<string, unknown>>;
1660
- scope(scope: AXPPlatformScope): ScopedSettingService;
1661
- invokeChangeEvent(event: AXPSettingChangedEvent): void;
1662
- static ɵfac: i0.ɵɵFactoryDeclaration<AXPSettingsService, never>;
1663
- static ɵprov: i0.ɵɵInjectableDeclaration<AXPSettingsService>;
1664
- }
1665
- declare class ScopedSettingService {
1666
- private parent;
1667
- private provider;
1668
- private scopeCache;
1669
- constructor(parent: AXPSettingsService, provider: AXPSettingValueProvider, scopeCache: Map<string, any>);
1670
- get<T = any>(key: string): Promise<T>;
1671
- all(): Promise<any>;
1672
- defaultValues(): Promise<Record<string, unknown>>;
1673
- set<T = any>(key: string, value: T): Promise<void>;
1674
- set<T = any>(values: Record<string, T>): Promise<void>;
1675
- update<T = any>(key: string, updateFn: (currentValue: T) => T): Promise<void>;
1676
- }
1677
-
1678
- /**
1679
- * Regional settings keys for date, time, and locale formatting.
1680
- * These keys are used by platform widgets and components to access regional settings.
1681
- * The actual setting definitions and providers are implemented in the locale-management module.
1682
- */
1683
- declare enum AXPRegionalSetting {
1684
- LocaleProfile = "LocaleManagement:Setting:Regional.LocaleProfile",
1685
- TimeZone = "LocaleManagement:Setting:Regional.TimeZone",
1686
- Language = "LocaleManagement:Setting:Regional.Language",
1687
- Country = "LocaleManagement:Setting:Regional.Country",
1688
- Calendar = "LocaleManagement:Setting:Regional.Calendar",
1689
- FirstDayOfWeek = "LocaleManagement:Setting:Regional.FirstDayOfWeek",
1690
- WeekendDays = "LocaleManagement:Setting:Regional.WeekendDays",
1691
- ShortDate = "LocaleManagement:Setting:Regional.ShortDate",
1692
- MediumDate = "LocaleManagement:Setting:Regional.MediumDate",
1693
- LongDate = "LocaleManagement:Setting:Regional.LongDate",
1694
- ShortTime = "LocaleManagement:Setting:Regional.ShortTime",
1695
- MediumTime = "LocaleManagement:Setting:Regional.MediumTime",
1696
- LongTime = "LocaleManagement:Setting:Regional.LongTime",
1697
- MeasurementUnits = "LocaleManagement:Setting:Regional.MeasurementUnits",
1698
- TemperatureUnits = "LocaleManagement:Setting:Regional.TemperatureUnits",
1699
- DistanceUnits = "LocaleManagement:Setting:Regional.DistanceUnits",
1700
- WeightUnits = "LocaleManagement:Setting:Regional.WeightUnits",
1701
- VolumeUnits = "LocaleManagement:Setting:Regional.VolumeUnits",
1702
- SpeedUnits = "LocaleManagement:Setting:Regional.SpeedUnits",
1703
- AreaUnits = "LocaleManagement:Setting:Regional.AreaUnits"
1704
- }
1705
-
1706
- /**
1707
- * Status Definition Types
1708
- * Defines the structure for status definitions and their transitions
1709
- */
1710
- /**
1711
- * Status definition with metadata
1712
- */
1713
- interface AXPStatusDefinition {
1714
- /**
1715
- * Unique identifier for the status
1716
- */
1717
- name: string;
1718
- /**
1719
- * Display title for the status
1720
- */
1721
- title: string;
1722
- /**
1723
- * Color code or semantic color name for the status
1724
- */
1725
- color: string;
1726
- /**
1727
- * Optional icon class (e.g., 'fa-light fa-check')
1728
- */
1729
- icon?: string;
1730
- /**
1731
- * Optional description
1732
- */
1733
- description?: string;
1734
- /**
1735
- * Optional order for sorting
1736
- */
1737
- order?: number;
1738
- /**
1739
- * Whether this is a final status (end state)
1740
- */
1741
- isFinal?: boolean;
1742
- /**
1743
- * Whether this is an initial status (starting state)
1744
- */
1745
- isInitial?: boolean;
1746
- /**
1747
- * Whether list views should be automatically generated for this status
1748
- */
1749
- generateView?: boolean;
1750
- }
1751
- /**
1752
- * Status transition definition
1753
- */
1754
- interface AXPStatusTransition {
1755
- /**
1756
- * Source status name
1757
- */
1758
- from: string;
1759
- /**
1760
- * Target status name
1761
- */
1762
- to: string;
1763
- /**
1764
- * Optional condition expression to evaluate before allowing transition
1765
- * Uses expression evaluator syntax (e.g., "{{user.isAdmin}}", "{{item.priority > 5}}")
1766
- */
1767
- condition?: string;
1768
- /**
1769
- * Optional display title for the transition
1770
- */
1771
- title?: string;
1772
- /**
1773
- * Optional description
1774
- */
1775
- description?: string;
1776
- /**
1777
- * Optional command descriptor to execute for this transition
1778
- * If not provided, defaults to Entity:UpdateStatus with entity, id, and status
1779
- */
1780
- command?: {
1781
- name: string;
1782
- options?: Record<string, unknown>;
1783
- };
1784
- /**
1785
- * Whether this transition is automatic (no user action required)
1786
- */
1787
- isAutomatic?: boolean;
1788
- /**
1789
- * Whether this transition requires approval
1790
- */
1791
- requiresApproval?: boolean;
1792
- }
1793
- /**
1794
- * Abstract class for status providers
1795
- * Similar to AXPTaskBadgeProvider pattern
1796
- */
1797
- declare abstract class AXPStatusProvider {
1798
- /**
1799
- * Unique key for the status (e.g., 'task-management.status')
1800
- */
1801
- abstract readonly key: string;
1802
- /**
1803
- * List of available status definitions
1804
- */
1805
- abstract readonly statuses: AXPStatusDefinition[];
1806
- /**
1807
- * List of allowed transitions between statuses
1808
- */
1809
- abstract readonly transitions: AXPStatusTransition[];
1810
- /**
1811
- * Optional default status name
1812
- */
1813
- abstract readonly defaultStatus?: string;
1814
- }
1815
-
1816
- /**
1817
- * Injection token for status providers
1818
- * Use with multi: true to register multiple providers
1819
- */
1820
- declare const AXP_STATUS_PROVIDERS: InjectionToken<AXPStatusProvider[]>;
1821
- /**
1822
- * Service for managing status definitions from multiple providers
1823
- * Similar to AXPTaskBadgeService pattern - no cache, direct access
1824
- *
1825
- * @example
1826
- * ```typescript
1827
- * // In a module providers array:
1828
- * {
1829
- * provide: AXP_STATUS_PROVIDERS,
1830
- * useClass: TaskStatusProvider,
1831
- * multi: true,
1832
- * }
1833
- *
1834
- * // Example provider implementation:
1835
- * export class TaskStatusProvider extends AXPStatusProvider {
1836
- * readonly key = 'task-management.status';
1837
- * readonly statuses = [
1838
- * { name: 'todo', title: 'To Do', color: '#6b7280', icon: 'fa-light fa-circle', isInitial: true },
1839
- * { name: 'in-progress', title: 'In Progress', color: '#3b82f6', icon: 'fa-light fa-play' },
1840
- * { name: 'done', title: 'Done', color: '#10b981', icon: 'fa-light fa-check-circle', isFinal: true },
1841
- * ];
1842
- * readonly transitions = [
1843
- * { from: 'todo', to: 'in-progress', title: 'Start', condition: '{{user.canEdit}}' },
1844
- * { from: 'in-progress', to: 'done', title: 'Complete' },
1845
- * ];
1846
- * readonly defaultStatus = 'todo';
1847
- * }
1848
- *
1849
- * // Later, get the status:
1850
- * const status = statusService.getStatus('task-management.status');
1851
- * if (status) {
1852
- * console.log('Statuses:', status.statuses);
1853
- * console.log('Transitions:', status.transitions);
1854
- * }
1855
- * ```
1856
- */
1857
- declare class AXPStatusDefinitionProviderService {
1858
- private providers;
1859
- private commandService;
1860
- private statusMap;
1861
- private initializationPromise;
1862
- private isInitialized;
1863
- constructor();
1864
- /**
1865
- * Initialize providers (resolve promises if needed)
1866
- * Called lazily on first access
1867
- */
1868
- private initialize;
1869
- private _doInitialize;
1870
- /**
1871
- * Get a status provider by key
1872
- * Direct synchronous access from Map. Providers are initialized in the constructor,
1873
- * including lazy-loaded providers (promises) which are resolved during initialization.
1874
- *
1875
- * @param key - Status key (e.g., 'task-management.status')
1876
- * @returns Status provider with all statuses and transitions, or undefined if not found
1877
- *
1878
- * @example
1879
- * ```typescript
1880
- * const status = statusService.getStatus('task-management.status');
1881
- * if (status) {
1882
- * console.log('Statuses:', status.statuses);
1883
- * console.log('Transitions:', status.transitions);
1884
- * }
1885
- * ```
1886
- */
1887
- getStatus(key: string): AXPStatusProvider | undefined;
1888
- /**
1889
- * Execute a status transition workflow action
1890
- * Uses transition.command if provided, otherwise defaults to Entity:UpdateStatus
1891
- * Validates the transition is allowed before executing
1892
- *
1893
- * @param definitionKey - Status definition key
1894
- * @param transition - The transition to execute
1895
- * @param context - Context data for the command (must include entity name and id/ids)
1896
- * @returns Promise that resolves when the command execution completes
1897
- *
1898
- * @example
1899
- * ```typescript
1900
- * await statusService.executeTransition(
1901
- * 'task-management.status',
1902
- * { from: 'todo', to: 'in-progress' },
1903
- * { entity: 'TaskManagement.Task', id: '123', ...entityData }
1904
- * );
1905
- * ```
1906
- */
1907
- executeTransition(definitionKey: string, transition: AXPStatusTransition, context: Record<string, any>): Promise<void>;
1908
- /**
1909
- * Validate if a transition is allowed
1910
- * Checks if the transition exists in the provider's transitions list
1911
- */
1912
- private isValidTransition;
1913
- static ɵfac: i0.ɵɵFactoryDeclaration<AXPStatusDefinitionProviderService, never>;
1914
- static ɵprov: i0.ɵɵInjectableDeclaration<AXPStatusDefinitionProviderService>;
1915
- }
1916
-
1917
- /**
1918
- * Standard system status types
1919
- * These are the predefined status values used across the platform
1920
- */
1921
- declare enum AXPSystemStatusType {
1922
- Todo = "todo",
1923
- InProgress = "in-progress",
1924
- InReview = "in-review",
1925
- Open = "open",
1926
- Closed = "closed",
1927
- Blocked = "blocked",
1928
- Done = "done",
1929
- Cancelled = "cancelled",
1930
- Draft = "draft",
1931
- PendingReview = "pending-review",
1932
- Approved = "approved",
1933
- Published = "published",
1934
- Archived = "archived",
1935
- Rejected = "rejected",
1936
- Active = "active",
1937
- Inactive = "inactive",
1938
- Pending = "pending",
1939
- Completed = "completed",
1940
- Suspended = "suspended",
1941
- Failed = "failed",
1942
- Review = "review",
1943
- Expired = "expired"
1944
- }
1945
- /**
1946
- * Standard system status definitions
1947
- * Provides consistent status definitions across the platform
1948
- * Uses AXPStatusDefinition interface from status-definition.types.ts
1949
- */
1950
- declare const AXPSystemStatuses: Readonly<{
1951
- readonly Open: {
1952
- readonly name: AXPSystemStatusType.Open;
1953
- readonly title: string;
1954
- readonly icon: "fa-light fa-circle";
1955
- readonly color: "secondary";
1956
- readonly description: string;
1957
- readonly order: 1;
1958
- readonly isInitial: true;
1959
- readonly isFinal: false;
1960
- };
1961
- readonly Closed: {
1962
- readonly name: AXPSystemStatusType.Closed;
1963
- readonly title: string;
1964
- readonly icon: "fa-light fa-circle";
1965
- readonly color: "danger";
1966
- readonly description: string;
1967
- readonly order: 2;
1968
- readonly isInitial: false;
1969
- readonly isFinal: true;
1970
- };
1971
- readonly Todo: {
1972
- readonly name: AXPSystemStatusType.Todo;
1973
- readonly title: string;
1974
- readonly icon: "fa-light fa-circle";
1975
- readonly color: "secondary";
1976
- readonly description: string;
1977
- readonly order: 1;
1978
- readonly isInitial: true;
1979
- readonly isFinal: false;
1980
- };
1981
- readonly InProgress: {
1982
- readonly name: AXPSystemStatusType.InProgress;
1983
- readonly title: string;
1984
- readonly icon: "fa-light fa-play";
1985
- readonly color: "info";
1986
- readonly description: string;
1987
- readonly order: 2;
1988
- readonly isInitial: false;
1989
- readonly isFinal: false;
1990
- };
1991
- readonly InReview: {
1992
- readonly name: AXPSystemStatusType.InReview;
1993
- readonly title: string;
1994
- readonly icon: "fa-light fa-eye";
1995
- readonly color: "info";
1996
- readonly description: string;
1997
- readonly order: 3;
1998
- readonly isInitial: false;
1999
- readonly isFinal: false;
2000
- };
2001
- readonly Blocked: {
2002
- readonly name: AXPSystemStatusType.Blocked;
2003
- readonly title: string;
2004
- readonly icon: "fa-light fa-ban";
2005
- readonly color: "danger";
2006
- readonly description: string;
2007
- readonly order: 4;
2008
- readonly isInitial: false;
2009
- readonly isFinal: false;
2010
- };
2011
- readonly Done: {
2012
- readonly name: AXPSystemStatusType.Done;
2013
- readonly title: string;
2014
- readonly icon: "fa-light fa-check-circle";
2015
- readonly color: "success";
2016
- readonly description: string;
2017
- readonly order: 5;
2018
- readonly isInitial: false;
2019
- readonly isFinal: true;
2020
- };
2021
- readonly Cancelled: {
2022
- readonly name: AXPSystemStatusType.Cancelled;
2023
- readonly title: string;
2024
- readonly icon: "fa-light fa-times-circle";
2025
- readonly color: "neutral";
2026
- readonly description: string;
2027
- readonly order: 6;
2028
- readonly isInitial: false;
2029
- readonly isFinal: true;
2030
- };
2031
- readonly Draft: {
2032
- readonly name: AXPSystemStatusType.Draft;
2033
- readonly title: string;
2034
- readonly icon: "fa-light fa-file-pen";
2035
- readonly color: "neutral";
2036
- readonly description: string;
2037
- readonly order: 1;
2038
- readonly isInitial: true;
2039
- readonly isFinal: false;
2040
- };
2041
- readonly PendingReview: {
2042
- readonly name: AXPSystemStatusType.PendingReview;
2043
- readonly title: string;
2044
- readonly icon: "fa-light fa-clock";
2045
- readonly color: "warning";
2046
- readonly description: string;
2047
- readonly order: 2;
2048
- readonly isInitial: false;
2049
- readonly isFinal: false;
2050
- };
2051
- readonly Approved: {
2052
- readonly name: AXPSystemStatusType.Approved;
2053
- readonly title: string;
2054
- readonly icon: "fa-light fa-check-circle";
2055
- readonly color: "success";
2056
- readonly description: string;
2057
- readonly order: 3;
2058
- readonly isInitial: false;
2059
- readonly isFinal: false;
2060
- };
2061
- readonly Published: {
2062
- readonly name: AXPSystemStatusType.Published;
2063
- readonly title: string;
2064
- readonly icon: "fa-light fa-globe";
2065
- readonly color: "primary";
2066
- readonly description: string;
2067
- readonly order: 4;
2068
- readonly isInitial: false;
2069
- readonly isFinal: false;
2070
- };
2071
- readonly Archived: {
2072
- readonly name: AXPSystemStatusType.Archived;
2073
- readonly title: string;
2074
- readonly icon: "fa-light fa-archive";
2075
- readonly color: "danger";
2076
- readonly description: string;
2077
- readonly order: 5;
2078
- readonly isInitial: false;
2079
- readonly isFinal: true;
2080
- };
2081
- readonly Rejected: {
2082
- readonly name: AXPSystemStatusType.Rejected;
2083
- readonly title: string;
2084
- readonly icon: "fa-light fa-times-circle";
2085
- readonly color: "danger";
2086
- readonly description: string;
2087
- readonly order: 6;
2088
- readonly isInitial: false;
2089
- readonly isFinal: true;
2090
- };
2091
- readonly Active: {
2092
- readonly name: AXPSystemStatusType.Active;
2093
- readonly title: string;
2094
- readonly icon: "fa-light fa-check-circle";
2095
- readonly color: "success";
2096
- readonly description: string;
2097
- readonly order: 1;
2098
- readonly isInitial: false;
2099
- readonly isFinal: false;
2100
- };
2101
- readonly Inactive: {
2102
- readonly name: AXPSystemStatusType.Inactive;
2103
- readonly title: string;
2104
- readonly icon: "fa-light fa-circle";
2105
- readonly color: "secondary";
2106
- readonly description: string;
2107
- readonly order: 2;
2108
- readonly isInitial: false;
2109
- readonly isFinal: false;
2110
- };
2111
- readonly Pending: {
2112
- readonly name: AXPSystemStatusType.Pending;
2113
- readonly title: string;
2114
- readonly icon: "fa-light fa-clock";
2115
- readonly color: "warning";
2116
- readonly description: string;
2117
- readonly order: 1;
2118
- readonly isInitial: true;
2119
- readonly isFinal: false;
2120
- };
2121
- readonly Completed: {
2122
- readonly name: AXPSystemStatusType.Completed;
2123
- readonly title: string;
2124
- readonly icon: "fa-light fa-check-circle";
2125
- readonly color: "success";
2126
- readonly description: string;
2127
- readonly order: 10;
2128
- readonly isInitial: false;
2129
- readonly isFinal: true;
2130
- };
2131
- readonly Suspended: {
2132
- readonly name: AXPSystemStatusType.Suspended;
2133
- readonly title: string;
2134
- readonly icon: "fa-light fa-pause-circle";
2135
- readonly color: "neutral";
2136
- readonly description: string;
2137
- readonly order: 5;
2138
- readonly isInitial: false;
2139
- readonly isFinal: false;
2140
- };
2141
- readonly Failed: {
2142
- readonly name: AXPSystemStatusType.Failed;
2143
- readonly title: string;
2144
- readonly icon: "fa-light fa-xmark-circle";
2145
- readonly color: "danger";
2146
- readonly description: string;
2147
- readonly order: 10;
2148
- readonly isInitial: false;
2149
- readonly isFinal: true;
2150
- };
2151
- readonly Review: {
2152
- readonly name: AXPSystemStatusType.Review;
2153
- readonly title: string;
2154
- readonly icon: "fa-light fa-eye";
2155
- readonly color: "info";
2156
- readonly description: string;
2157
- readonly order: 3;
2158
- };
2159
- readonly Expired: {
2160
- readonly name: AXPSystemStatusType.Expired;
2161
- readonly title: string;
2162
- readonly icon: "fa-light fa-clock";
2163
- readonly color: "danger";
2164
- readonly description: string;
2165
- readonly order: 10;
2166
- readonly isInitial: false;
2167
- readonly isFinal: true;
2168
- };
2169
- }>;
2170
- /**
2171
- * Get system status definition by type
2172
- * @param type - Status type
2173
- * @returns System status definition or undefined
2174
- */
2175
- declare function getSystemStatus(type: AXPSystemStatusType): AXPStatusDefinition;
2176
- /**
2177
- * Resolves the visual appearance (color and icon) for status
2178
- * using the system statuses from the core module.
2179
- * @param statusType - Status type string
2180
- * @returns Color and icon for the status
2181
- */
2182
- declare function resolveStatusLook(statusType: string): {
2183
- color: AXStyleColorType;
2184
- icon: string;
2185
- };
2186
- /**
2187
- * Resolves the complete status information (title, description, icon, color) for a status
2188
- * using the system statuses from the core module.
2189
- * @param statusType - Status type string
2190
- * @returns Complete status information as AXPStatusDefinition
2191
- */
2192
- declare function getStatusInfo(statusType: string): AXPStatusDefinition;
2193
- /**
2194
- * Get system status definition directly (no conversion needed since it's already AXPStatusDefinition)
2195
- * @param statusType - Status type
2196
- * @param overrides - Optional overrides for the status definition
2197
- * @returns AXPStatusDefinition
2198
- */
2199
- declare function systemStatusToDefinition(statusType: AXPSystemStatusType, overrides?: Partial<AXPStatusDefinition>): AXPStatusDefinition;
2200
-
2201
- interface AXPTokenDefinition {
2202
- name: string;
2203
- execute: () => Promise<any> | any;
2204
- }
2205
-
2206
- type AXPTokenDefinitionProviderToken = AXPTokenDefinitionProvider | Promise<AXPTokenDefinitionProvider>;
2207
- declare const AXP_TOKEN_DEFINITION_PROVIDER: InjectionToken<AXPTokenDefinitionProviderToken[]>;
2208
- interface AXPTokenDefinitionProvider<T = any> {
2209
- name: string;
2210
- title: string;
2211
- description?: string;
2212
- execute(): Promise<T> | T;
2213
- }
2214
-
2215
- declare class AXPTokenDefinitionService {
2216
- private readonly definitionProviders;
2217
- /** Cache for definitions by name. */
2218
- private definitionsByName;
2219
- /**
2220
- * Returns a token definition by its name.
2221
- * First checks the cache, then queries all providers if not found.
2222
- * @param name The token name.
2223
- * @returns The token definition if found, undefined otherwise.
2224
- */
2225
- getDefinition(name: string): Promise<AXPTokenDefinition | undefined>;
2226
- /**
2227
- * Gets the resolved value of a token by its name.
2228
- * @param name The token name.
2229
- * @returns The resolved token value, or undefined if the token is not found.
2230
- */
2231
- getValue(name: string): Promise<any>;
2232
- /** Clears the definitions by name cache. */
2233
- clearDefinitionsCache(): void;
2234
- static ɵfac: i0.ɵɵFactoryDeclaration<AXPTokenDefinitionService, never>;
2235
- static ɵprov: i0.ɵɵInjectableDeclaration<AXPTokenDefinitionService>;
2236
- }
2237
-
2238
- declare class AXPTokenEvaluatorScopeProvider implements AXPExpressionEvaluatorScopeProvider {
2239
- protected tokenService: AXPTokenDefinitionService;
2240
- provide(context: AXPExpressionEvaluatorScopeProviderContext): Promise<void>;
2241
- }
2242
-
2243
- declare class AXPClipBoardService {
2244
- private toast;
2245
- copy(title: string, value: string): void;
2246
- static ɵfac: i0.ɵɵFactoryDeclaration<AXPClipBoardService, never>;
2247
- static ɵprov: i0.ɵɵInjectableDeclaration<AXPClipBoardService>;
2248
- }
2249
-
2250
- /**
2251
- * Service for debugging user access information.
2252
- * Displays loaded modules, features, and permissions for the current user.
2253
- */
2254
- declare class AXPDebugService {
2255
- private readonly sessionService;
2256
- private readonly manifestRegistry;
2257
- /**
2258
- * Display all loaded modules, features, and permissions for the current user.
2259
- */
2260
- displayUserAccessInfo(): Promise<void>;
2261
- static ɵfac: i0.ɵɵFactoryDeclaration<AXPDebugService, never>;
2262
- static ɵprov: i0.ɵɵInjectableDeclaration<AXPDebugService>;
2263
- }
2264
-
2265
- declare class AXPExportService {
2266
- popupService: AXPopupService;
2267
- generateBlobFromElement(element: HTMLElement, blobOptions?: AXPDomToImageOptions): Promise<Blob>;
2268
- download(blob: Blob, filename: string): void;
2269
- static ɵfac: i0.ɵɵFactoryDeclaration<AXPExportService, never>;
2270
- static ɵprov: i0.ɵɵInjectableDeclaration<AXPExportService>;
2271
- }
2272
- interface AXPDomToImageOptions {
2273
- popup?: true;
2274
- filter?: (node: Node) => boolean;
2275
- bgcolor?: string;
2276
- width?: number;
2277
- height?: number;
2278
- style?: {};
2279
- quality?: number;
2280
- imagePlaceholder?: string;
2281
- cacheBust?: boolean;
2282
- scale?: number;
2283
- }
2284
-
2285
- declare function AXPCleanNestedFilters(filters: AXDataSourceFilterOption[]): AXDataSourceFilterOption[];
2286
-
2287
- interface AXPLocaleProfile extends AXLocaleProfile {
2288
- code: string;
2289
- title: string;
2290
- nativeTitle: string;
2291
- }
2292
- interface AXPLanguage {
2293
- code: string;
2294
- title: string;
2295
- }
2296
- interface AXPGeoLocation {
2297
- id: string;
2298
- code: string;
2299
- title: string;
2300
- timezone?: string;
2301
- }
2302
- interface AXPTimeZone {
2303
- code: string;
2304
- title: string;
2305
- offset: number;
2306
- iana: string;
2307
- abbr: string;
2308
- }
2309
- interface AXPCurrency {
2310
- code: string;
2311
- title: string;
2312
- symbol: string;
2313
- format: string;
2314
- }
2315
-
2316
- interface AXPVersionStream {
2317
- id: string;
2318
- entityType: string;
2319
- entityId: string;
2320
- createdAt: string;
2321
- }
2322
- declare enum AXVChangeType {
2323
- Create = "Create",
2324
- Update = "Update",
2325
- Delete = "Delete"
2326
- }
2327
- type CanonicalChangeOp = 'add' | 'remove' | 'replace' | 'rename' | 'metadata';
2328
- interface CanonicalChange {
2329
- path: string;
2330
- op: CanonicalChangeOp;
2331
- oldValue?: unknown;
2332
- newValue?: unknown;
2333
- meta?: Record<string, unknown>;
2334
- }
2335
- interface AXPVersionEntry {
2336
- id: string;
2337
- streamId: string;
2338
- versionNumber: number;
2339
- changeType: AXVChangeType;
2340
- changedBy: string;
2341
- changedAt: string;
2342
- snapshotJson: unknown;
2343
- patchFromPrevJson: CanonicalChange[];
2344
- summary?: string;
2345
- metadataJson?: unknown;
2346
- }
2347
- interface AXPVersionChange {
2348
- id?: number;
2349
- versionEntryId: string;
2350
- path: string;
2351
- op: CanonicalChangeOp;
2352
- oldValue?: unknown;
2353
- newValue?: unknown;
2354
- }
2355
- interface VersionedFileInfo {
2356
- id: string;
2357
- name: string;
2358
- size: number;
2359
- mime: string;
2360
- hash: string;
2361
- url?: string;
2362
- thumbUrl?: string;
2363
- }
2364
- declare abstract class AXPVersioningService {
2365
- abstract getStreamIdIfExists(entityType: string, entityId: string): Promise<string | null>;
2366
- abstract listEntries(streamId: string, options?: {
2367
- limit?: number;
2368
- offset?: number;
2369
- }): Promise<AXPVersionEntry[]>;
2370
- abstract getUiFriendlyDiff(streamId: string, v1: number, v2: number): Promise<Array<{
2371
- badge: string;
2372
- path: string;
2373
- summary: string;
2374
- oldValue?: unknown;
2375
- newValue?: unknown;
2376
- }>>;
2377
- }
2378
-
2379
- declare const AXPRedirectEvent: {
2380
- (payload: {
2381
- url: string;
2382
- }): {
2383
- type: string;
2384
- payload: {
2385
- url: string;
2386
- };
2387
- };
2388
- type: string;
2389
- };
2390
- declare const AXPRefreshEvent: {
2391
- (payload: {
2392
- entity: string;
2393
- meta?: any;
2394
- }): {
2395
- type: string;
2396
- payload: {
2397
- entity: string;
2398
- meta?: any;
2399
- };
2400
- };
2401
- type: string;
2402
- };
2403
- declare const AXPReloadEvent: {
2404
- (payload: {
2405
- entity: string;
2406
- meta?: any;
2407
- }): {
2408
- type: string;
2409
- payload: {
2410
- entity: string;
2411
- meta?: any;
2412
- };
2413
- };
2414
- type: string;
2415
- };
2416
- declare class AXPWorkflowNavigateAction extends AXPWorkflowAction {
2417
- private router;
2418
- execute(context: AXPWorkflowContext): Promise<void>;
2419
- static ɵfac: i0.ɵɵFactoryDeclaration<AXPWorkflowNavigateAction, never>;
2420
- static ɵprov: i0.ɵɵInjectableDeclaration<AXPWorkflowNavigateAction>;
2421
- }
2422
- declare class AXPDialogConfirmAction extends AXPWorkflowAction {
2423
- private dialogService;
2424
- private translationService;
2425
- title: string;
2426
- message: string;
2427
- type: AXStyleColorType;
2428
- defaultAction: string;
2429
- execute(context: AXPWorkflowContext): Promise<void>;
2430
- static ɵfac: i0.ɵɵFactoryDeclaration<AXPDialogConfirmAction, never>;
2431
- static ɵprov: i0.ɵɵInjectableDeclaration<AXPDialogConfirmAction>;
2432
- }
2433
- declare class AXPToastAction extends AXPWorkflowAction {
2434
- private toastService;
2435
- private translationService;
2436
- private settingsService;
2437
- color: AXStyleColorType;
2438
- title: string;
2439
- content: string;
2440
- execute(context: AXPWorkflowContext): Promise<void>;
2441
- static ɵfac: i0.ɵɵFactoryDeclaration<AXPToastAction, never>;
2442
- static ɵprov: i0.ɵɵInjectableDeclaration<AXPToastAction>;
2443
- }
2444
- declare class AXPReloadAction extends AXPWorkflowAction {
2445
- execute(context: AXPWorkflowContext): Promise<void>;
2446
- static ɵfac: i0.ɵɵFactoryDeclaration<AXPReloadAction, never>;
2447
- static ɵprov: i0.ɵɵInjectableDeclaration<AXPReloadAction>;
2448
- }
2449
-
2450
- declare class AXPWorkflowRouterNavigateAction extends AXPWorkflowAction {
2451
- private router;
2452
- execute(context: AXPWorkflowContext): Promise<void>;
2453
- /**
2454
- * Parses query parameters from a query string into an object.
2455
- */
2456
- private parseQueryParams;
2457
- static ɵfac: i0.ɵɵFactoryDeclaration<AXPWorkflowRouterNavigateAction, never>;
2458
- static ɵprov: i0.ɵɵInjectableDeclaration<AXPWorkflowRouterNavigateAction>;
2459
- }
2460
- declare const AXPNavigateWorkflow: AXPWorkflow;
2461
-
2462
- declare class AXMWorkflowErrorHandler implements AXPErrorHandler {
2463
- private dialog;
2464
- handleError(error: any, next: (error: any) => void): void;
2465
- static ɵfac: i0.ɵɵFactoryDeclaration<AXMWorkflowErrorHandler, never>;
2466
- static ɵprov: i0.ɵɵInjectableDeclaration<AXMWorkflowErrorHandler>;
2467
- }
2468
-
2469
- export { ALL_DEFAULT_OPERATORS, AXMWorkflowErrorHandler, AXPAppVersionService, AXPCleanNestedFilters, AXPClipBoardService, AXPCommonModule, AXPCommonSettings, AXPCustomOperatorService, AXPCustomOperatorServiceImpl, AXPDataProvider, AXPDebugService, AXPDialogConfirmAction, AXPEntityCommandScope, AXPEntityQueryType, AXPErrorHandlerRegistryService, AXPExportService, AXPFileStorageService, AXPFileStorageStatus, AXPFileTypeProviderService, AXPFilterOperatorMiddlewareService, AXPFilterOperatorMiddlewareServiceImpl, AXPFooterTextSlotComponent, AXPGlobalErrorHandler, AXPHomePageModule, AXPHomePageService, AXPLockService, AXPMenuMiddlewareRegistry, AXPMenuProviderService, AXPMenuSearchDefinitionProvider, AXPMenuSearchProvider, AXPMenuService, AXPMenuVisibilityService, AXPNavBarSlotComponent, AXPNavigateWorkflow, AXPPlatformDefaultConfigs, AXPRedirectEvent, AXPRefreshEvent, AXPRegionalSetting, AXPRelationshipCardinality, AXPRelationshipKind, AXPReloadAction, AXPReloadEvent, AXPSearchCommandProvider, AXPSearchDefinitionActionBuilder, AXPSearchDefinitionBuilder, AXPSearchDefinitionProviderContext, AXPSearchDefinitionProviderService, AXPSearchService, AXPSettingDefaultValuesAggregatorService, AXPSettingDefinitionGroupBuilder, AXPSettingDefinitionProviderContext, AXPSettingDefinitionProviderService, AXPSettingDefinitionSectionBuilder, AXPSettingsService, AXPStatusDefinitionProviderService, AXPStatusProvider, AXPStickyDirective, AXPSystemStatusType, AXPSystemStatuses, AXPToastAction, AXPTokenDefinitionService, AXPTokenEvaluatorScopeProvider, AXPVersioningService, AXPWorkflowNavigateAction, AXPWorkflowRouterNavigateAction, AXP_APP_VERSION_PROVIDER, AXP_FILE_TYPE_INFO_PROVIDER, AXP_HOME_PAGES, AXP_HOME_PAGE_DEFAULT_KEY, AXP_MENU_MIDDLEWARE, AXP_MENU_PROVIDER, AXP_PLATFORM_CONFIG_TOKEN, AXP_ROOT_CONFIG_TOKEN, AXP_SEARCH_DEFINITION_PROVIDER, AXP_SEARCH_PROVIDER, AXP_SETTING_DEFAULT_VALUES_PROVIDERS, AXP_SETTING_DEFINITION_PROVIDER, AXP_SETTING_VALUE_PROVIDER, AXP_STATUS_PROVIDERS, AXP_TOKEN_DEFINITION_PROVIDER, AXVChangeType, BETWEEN_OPER, BOOLEAN_OPERATORS, CONTAINS_OPER, DATE_OPERATORS, ENDS_WITH_OPER, ENVIRONMENT, EQ_OPER, GTE_OPER, GT_OPER, IN_OPER, IS_EMPTY_OPER, IS_NOT_EMPTY_OPER, LTE_OPER, LT_OPER, NOT_CONTAINS_OPER, NOT_EQ_OPER, NUMBER_OPERATORS, STARTS_WITH_OPER, STRING_OPERATORS, configPlatform, createAllQueryView, createMenuContext, createMenuMiddleware, createQueryView, getEntityInfo, getStatusInfo, getSystemStatus, provideDynamicHomePage, provideMenuMiddleware, resolveStatusLook, systemStatusToDefinition };
2470
- export type { AXEntityPropertyWidget, AXPAggregate, AXPAppVersion, AXPAppVersionProvider, AXPApplication, AXPCategoryEntity, AXPCommandActionCallback, AXPCommandActionDisplay, AXPCommandActionLook, AXPCommandActionPriority, AXPCommandActionType, AXPCommonModuleConfigs, AXPCurrency, AXPDomToImageOptions, AXPEntity, AXPEntityAction, AXPEntityCommand, AXPEntityDetailListView, AXPEntityMasterCreateLayoutView, AXPEntityMasterLayoutView, AXPEntityMasterListView, AXPEntityMasterSingleLayoutView, AXPEntityMasterUpdateLayoutView, AXPEntityProperty, AXPEntityPropertyCreateView, AXPEntityPropertyGroup, AXPEntityPropertyLayoutConfig, AXPEntityPropertyUpdateView, AXPEntityPropertyView, AXPEntityQuery, AXPEntitySectionView, AXPEntityTableColumn, AXPEntityVersionHistory, AXPErrorHandler, AXPFileExtension, AXPFileManyStorageInfo, AXPFileStorageCreateRequest, AXPFileStorageFindRequest, AXPFileStorageInfo, AXPFileStorageUpdateRequest, AXPFileType, AXPFileTypeInfoProvider, AXPFilterOperator, AXPGeoLocation, AXPGroupSearchResult, AXPHomePageDefinition, AXPLanguage, AXPLocaleProfile, AXPLockGetInfoRequest, AXPLockInfo, AXPLockRequest, AXPLockType, AXPMenuFinderResult, AXPMenuInsertion, AXPMenuItem, AXPMenuItemCommand, AXPMenuItemFinder, AXPMenuItemWithParent, AXPMenuMiddleware, AXPMenuMiddlewareContext, AXPMenuMiddlewareProvider, AXPMenuProvider, AXPMenuProviderContext, AXPMenuType, AXPModule, AXPPlatformConfigs, AXPQueryFilter, AXPQuerySort, AXPQueryView, AXPRelatedEntity, AXPRelationship, AXPRootConfigs, AXPSearchAction, AXPSearchDefinition, AXPSearchDefinitionDisplayFormat, AXPSearchDefinitionProvider, AXPSearchDisplayGroupResult, AXPSearchDisplayResult, AXPSearchDisplayResultForSave, AXPSearchParentResult, AXPSearchProvider, AXPSearchResult, AXPSettingChangedEvent, AXPSettingDefaultValuesProvider, AXPSettingDefinition, AXPSettingDefinitionGroup, AXPSettingDefinitionProvider, AXPSettingDefinitionSection, AXPSettingValue, AXPSettingValueProvider, AXPSettingsServiceInterface, AXPStatusDefinition, AXPStatusTransition, AXPTimeZone, AXPTokenDefinition, AXPTokenDefinitionProvider, AXPTokenDefinitionProviderToken, AXPUnLockRequest, AXPVersionChange, AXPVersionEntry, AXPVersionStream, CanonicalChange, CanonicalChangeOp, VersionedFileInfo };