@acorex/platform 21.0.0-next.76 → 21.0.0-next.79

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 (44) hide show
  1. package/fesm2022/{acorex-platform-common-common-settings.provider-ChoT4m4k.mjs → acorex-platform-common-common-settings.provider-Ytey9uhY.mjs} +1 -42
  2. package/fesm2022/acorex-platform-common-common-settings.provider-Ytey9uhY.mjs.map +1 -0
  3. package/fesm2022/acorex-platform-common.mjs +580 -1445
  4. package/fesm2022/acorex-platform-common.mjs.map +1 -1
  5. package/fesm2022/acorex-platform-contracts.mjs +1 -1330
  6. package/fesm2022/acorex-platform-contracts.mjs.map +1 -1
  7. package/fesm2022/acorex-platform-core.mjs +5 -208
  8. package/fesm2022/acorex-platform-core.mjs.map +1 -1
  9. package/fesm2022/acorex-platform-layout-components.mjs.map +1 -1
  10. package/fesm2022/{acorex-platform-layout-entity-attachments-page.component-B0EkdqvH.mjs → acorex-platform-layout-entity-attachments-page.component-CwG6n_Yb.mjs} +3 -3
  11. package/fesm2022/{acorex-platform-layout-entity-attachments-page.component-B0EkdqvH.mjs.map → acorex-platform-layout-entity-attachments-page.component-CwG6n_Yb.mjs.map} +1 -1
  12. package/fesm2022/{acorex-platform-layout-entity-file-list-popup.component-_yrP5SQe.mjs → acorex-platform-layout-entity-file-list-popup.component--IeMZLIr.mjs} +4 -4
  13. package/fesm2022/{acorex-platform-layout-entity-file-list-popup.component-_yrP5SQe.mjs.map → acorex-platform-layout-entity-file-list-popup.component--IeMZLIr.mjs.map} +1 -1
  14. package/fesm2022/acorex-platform-layout-entity.mjs +694 -733
  15. package/fesm2022/acorex-platform-layout-entity.mjs.map +1 -1
  16. package/fesm2022/acorex-platform-layout-views.mjs +171 -372
  17. package/fesm2022/acorex-platform-layout-views.mjs.map +1 -1
  18. package/fesm2022/acorex-platform-layout-widget-core.mjs +103 -3
  19. package/fesm2022/acorex-platform-layout-widget-core.mjs.map +1 -1
  20. package/fesm2022/acorex-platform-layout-widgets-repeater-widget-column.component-J0zcGKBX.mjs +116 -0
  21. package/fesm2022/acorex-platform-layout-widgets-repeater-widget-column.component-J0zcGKBX.mjs.map +1 -0
  22. package/fesm2022/acorex-platform-layout-widgets.mjs +6 -11
  23. package/fesm2022/acorex-platform-layout-widgets.mjs.map +1 -1
  24. package/fesm2022/{acorex-platform-themes-default-entity-master-single-view.component-DrUwqKKA.mjs → acorex-platform-themes-default-entity-master-single-view.component-Br9p5aXT.mjs} +3 -2
  25. package/fesm2022/acorex-platform-themes-default-entity-master-single-view.component-Br9p5aXT.mjs.map +1 -0
  26. package/fesm2022/acorex-platform-themes-default.mjs +52 -643
  27. package/fesm2022/acorex-platform-themes-default.mjs.map +1 -1
  28. package/fesm2022/acorex-platform-workflow.mjs +8 -5
  29. package/fesm2022/acorex-platform-workflow.mjs.map +1 -1
  30. package/package.json +1 -1
  31. package/types/acorex-platform-common.d.ts +1056 -337
  32. package/types/acorex-platform-contracts.d.ts +4 -1679
  33. package/types/acorex-platform-core.d.ts +181 -92
  34. package/types/acorex-platform-layout-components.d.ts +1 -2
  35. package/types/acorex-platform-layout-entity.d.ts +221 -99
  36. package/types/acorex-platform-layout-views.d.ts +5 -39
  37. package/types/acorex-platform-layout-widget-core.d.ts +3 -2
  38. package/types/acorex-platform-layout-widgets.d.ts +4 -11
  39. package/types/acorex-platform-themes-default.d.ts +57 -120
  40. package/types/acorex-platform-workflow.d.ts +18 -5
  41. package/fesm2022/acorex-platform-common-common-settings.provider-ChoT4m4k.mjs.map +0 -1
  42. package/fesm2022/acorex-platform-layout-widgets-repeater-widget-column.component-CFyfix31.mjs +0 -513
  43. package/fesm2022/acorex-platform-layout-widgets-repeater-widget-column.component-CFyfix31.mjs.map +0 -1
  44. package/fesm2022/acorex-platform-themes-default-entity-master-single-view.component-DrUwqKKA.mjs.map +0 -1
@@ -1,26 +1,24 @@
1
- import { AXPAgentOutputKind, AXPOutputTranscriptSegmentId, AXPEntity, AXPFileStorageCreateRequest, AXPFileStorageInfo, AXPFileStorageUpdateRequest, AXPFileStorageFindRequest, AXPFileManyStorageInfo, AXPMetaDataDefinition, AXPCommandActionLook, AXPCommandActionPriority, AXPEntityProperty, AXPStatusProvider, AXPStatusTransition } from '@acorex/platform/contracts';
2
- export * from '@acorex/platform/contracts';
3
- export { AXPAgentOutputKind, AXPOutputTranscriptSegmentId } from '@acorex/platform/contracts';
4
1
  import * as i0 from '@angular/core';
5
2
  import { InjectionToken, EnvironmentProviders, Signal, Injector, ErrorHandler, ModuleWithProviders, EventEmitter, ElementRef, Renderer2, NgZone, ChangeDetectorRef } from '@angular/core';
3
+ import { AXDataSourceOperator, AXStyleColorType, AXDataSourceFilterOption } from '@acorex/cdk/common';
4
+ import * as i3 from '@acorex/components/popup';
5
+ import { AXPopupSizeType, AXPopupService } from '@acorex/components/popup';
6
+ import * as i1 from '@acorex/platform/core';
7
+ import { AXPValueTransformerFunctions, AXPMultiLanguageString, AXPOptionsData, AXPExpression, AXPFilterDefinition, AXPMetaData, AXPSystemActionType, AXPValidationRules, AXPGridLayoutOptions, AXPUserReference, AXPExecuteCommand, AXPKeyboardShortcutHelpEntry, AXPLogoConfig, AXPFileListItem, AXPExpressionEvaluatorScopeProvider, AXPExpressionEvaluatorScopeProviderContext, AXPDataSourceDefinitionProvider, AXPDataSourceDefinition, AXPNavigateActionCommand, AXPKeyboardShortcut, AXPExpressionEvaluatorScope, AXPExpressionEvaluatorService, AXPApplicationUserReference, AXPEntityReference, AXPPlatformScopeKey, AXPWidgetTriggers, AXPPlatformScope } from '@acorex/platform/core';
8
+ import { AXPWidgetTypesMap, AXPWidgetNode, AXPWidgetProperty } from '@acorex/platform/layout/widget-core';
6
9
  import * as i4 from '@acorex/core/date-time';
7
10
  import { AXCalendarService } from '@acorex/core/date-time';
8
11
  import * as _angular_router from '@angular/router';
9
- import { Route, Routes, UrlTree, Router, RedirectCommand, ActivatedRouteSnapshot, CanActivateFn, CanDeactivateFn, NavigationExtras, DetachedRouteHandle } from '@angular/router';
10
- import * as i1 from '@acorex/platform/core';
11
- import { AXPUserReference, AXPExecuteCommand, AXPKeyboardShortcutHelpEntry, AXPLogoConfig, AXPFileListItem, AXPExpressionEvaluatorScopeProvider, AXPExpressionEvaluatorScopeProviderContext, AXPDataSourceDefinitionProvider, AXPDataSourceDefinition, AXPNavigateActionCommand, AXPMetaData, AXPKeyboardShortcut, AXPSystemActionType, AXPMultiLanguageString, AXPContextEvalFactory, AXPExpressionEvaluatorScope, AXPExpressionEvaluatorService, normalizeExpressionTemplate, AXPApplicationUserReference, AXPEntityReference, AXPPlatformScopeKey, AXPOptionsData, AXPWidgetTriggers, AXPValueTransformerFunctions, AXPValidationRules, AXPGridLayoutOptions, AXPPlatformScope } from '@acorex/platform/core';
12
- import { AXFormatterRegistryService, AXFormatter, AXFormatOptions, AXFormatService } from '@acorex/core/format';
12
+ import { Route, Routes, UrlTree, Router, RedirectCommand, ActivatedRouteSnapshot, CanActivateFn, CanDeactivateFn, NavigationExtras } from '@angular/router';
13
13
  import * as i2 from '@acorex/platform/workflow';
14
14
  import { AXPWorkflowAction, AXPWorkflowContext, AXPWorkflow } from '@acorex/platform/workflow';
15
- import * as i3 from '@acorex/components/popup';
16
- import { AXPopupService } from '@acorex/components/popup';
17
15
  import * as i5 from '@acorex/components/toast';
18
- import { AXDataSourceFilterOption, AXDataSourceOperator, AXStyleColorType } from '@acorex/cdk/common';
16
+ import { AXPFileStorageCreateRequest, AXPFileStorageInfo, AXPFileStorageUpdateRequest, AXPFileStorageFindRequest, AXPFileManyStorageInfo, AXPMetaDataDefinition } from '@acorex/platform/contracts';
19
17
  import * as rxjs from 'rxjs';
20
18
  import { Subject } from 'rxjs';
21
19
  import * as _ngrx_signals from '@ngrx/signals';
22
20
  import { AXTranslationService } from '@acorex/core/translation';
23
- import { AXPWidgetNode, AXPWidgetProperty, AXPWidgetTypesMap } from '@acorex/platform/layout/widget-core';
21
+ import { AXFormatService } from '@acorex/core/format';
24
22
  import { AXLocaleProfile } from '@acorex/core/locale';
25
23
 
26
24
  /** Platform common datasource registry names. */
@@ -28,6 +26,10 @@ declare const AXPPlatformCommonDataSourceKeys: {
28
26
  readonly MenuItems: "platform-menu-items";
29
27
  };
30
28
 
29
+ /** JSON data primitive for the specialist final deliverable. */
30
+ type AXPAgentOutputKind = 'string' | 'object' | 'array';
31
+ /** When `kind` is `object`, controls how the parsed value maps into chat transcript segments. */
32
+ type AXPOutputTranscriptSegmentId = 'text' | 'node' | 'followUp' | 'file';
31
33
  /**
32
34
  * Minimal JSON-Schema-like object for native provider hints and local validation.
33
35
  */
@@ -134,6 +136,597 @@ declare class AXPAppVersionService {
134
136
  static ɵprov: i0.ɵɵInjectableDeclaration<AXPAppVersionService>;
135
137
  }
136
138
 
139
+ interface AXEntityPropertyWidget {
140
+ type: AXPWidgetTypesMap[keyof AXPWidgetTypesMap] | string;
141
+ path?: string;
142
+ id?: string;
143
+ children?: AXEntityPropertyWidget[];
144
+ mode: 'view' | 'edit';
145
+ options?: Record<string, any>;
146
+ triggers?: {
147
+ event: string;
148
+ action: string;
149
+ disabled?: boolean;
150
+ }[];
151
+ valueTransforms?: AXPValueTransformerFunctions;
152
+ }
153
+ declare enum AXPRelationshipKind {
154
+ Association = 0,
155
+ Composition = 1,
156
+ Aggregation = 2
157
+ }
158
+ declare enum AXPRelationshipCardinality {
159
+ OneToOne = 0,
160
+ OneToMany = 1,
161
+ ManyToMany = 2
162
+ }
163
+ interface AXPRelationship {
164
+ id: string;
165
+ from: string;
166
+ to: string;
167
+ kind: AXPRelationshipKind;
168
+ cardinality: AXPRelationshipCardinality;
169
+ }
170
+ declare enum AXPEntityCommandScope {
171
+ TypeLevel = "typeLevel",
172
+ Selected = "selected",
173
+ Individual = "individual",
174
+ Section = "section"
175
+ }
176
+ declare enum AXPEntityQueryType {
177
+ Single = "single",
178
+ List = "list"
179
+ }
180
+ interface AXPEntityPropertyLayoutConfig extends AXPGridLayoutOptions {
181
+ label?: {
182
+ visible?: boolean;
183
+ };
184
+ order?: number;
185
+ visible?: boolean | AXPExpression;
186
+ }
187
+ interface AXPEntityPropertyGroup {
188
+ id: string;
189
+ title: string;
190
+ description?: string;
191
+ permissions?: string[];
192
+ icon?: string;
193
+ }
194
+ interface AXPEntityPropertyView {
195
+ name: string;
196
+ dataPath?: string;
197
+ permissions?: string[];
198
+ layout?: AXPEntityPropertyLayoutConfig;
199
+ }
200
+ interface AXPEntityPropertyUpdateView extends AXPEntityPropertyView {
201
+ }
202
+ interface AXPEntityPropertyCreateView extends AXPEntityPropertyView {
203
+ defaultValue?: any;
204
+ }
205
+ interface AXPEntitySectionView {
206
+ id: string;
207
+ order?: number;
208
+ collapsed?: boolean;
209
+ layout?: AXPEntityPropertyLayoutConfig;
210
+ }
211
+ interface AXPEntityProperty {
212
+ name: string;
213
+ title: string;
214
+ description?: string;
215
+ groupId?: string;
216
+ schema: {
217
+ dataType: string;
218
+ nullable?: boolean;
219
+ readonly?: boolean | string;
220
+ visible?: boolean | string;
221
+ defaultValue?: any | string | ((context: any | null) => any);
222
+ unique?: {
223
+ enabled: boolean;
224
+ };
225
+ interface?: Partial<AXEntityPropertyWidget>;
226
+ };
227
+ options?: {
228
+ filter?: {
229
+ advance?: {
230
+ enabled?: boolean;
231
+ widgetType?: AXPWidgetTypesMap[keyof AXPWidgetTypesMap];
232
+ };
233
+ inline?: {
234
+ enabled?: boolean;
235
+ };
236
+ preload?: {
237
+ enabled?: boolean;
238
+ required?: boolean;
239
+ };
240
+ };
241
+ sort?: {
242
+ enabled?: boolean;
243
+ };
244
+ };
245
+ validations?: AXPValidationRules;
246
+ }
247
+ /** Logical alignment for table column header/cell (respects RTL). */
248
+ type AXPColumnContentAlign = 'start' | 'center' | 'end';
249
+ /**
250
+ * Column alignment: shorthand applies to both header and cell;
251
+ * object form sets each side independently (omitted keys default to start).
252
+ */
253
+ type AXPColumnAlign = AXPColumnContentAlign | {
254
+ header?: AXPColumnContentAlign;
255
+ cell?: AXPColumnContentAlign;
256
+ };
257
+ /** Shared field definition for list layouts (table columns, card fields, etc.). */
258
+ interface AXPEntityDisplayField {
259
+ name: string;
260
+ title?: string;
261
+ showAs?: {
262
+ type: AXPWidgetTypesMap[keyof AXPWidgetTypesMap] | string;
263
+ options?: Record<string, any>;
264
+ };
265
+ options?: {
266
+ /** When string, evaluate against parent detail context (e.g. related list). */
267
+ visible?: boolean | string;
268
+ /** Optional dataPath override for field binding. */
269
+ dataPath?: string;
270
+ [name: string]: any;
271
+ };
272
+ }
273
+ /** Card layout field presentation in master list card view. */
274
+ type AXPCardFieldDisplay = 'simple' | 'badge';
275
+ /** Badge color: semantic token or per-row expression (`{{ context.eval(...) }}`). */
276
+ type AXPCardBadgeColor = AXStyleColorType | AXPExpression;
277
+ interface AXPCardBadgeDisplayOptions {
278
+ /** Semantic color or expression evaluated against row context. */
279
+ color?: AXPCardBadgeColor;
280
+ }
281
+ interface AXPCardBadgeDisplay {
282
+ type: 'badge';
283
+ options?: AXPCardBadgeDisplayOptions;
284
+ }
285
+ /** Shorthand (`badge` / `simple`) or structured badge config with optional per-row color. */
286
+ type AXPCardFieldDisplayConfig = AXPCardFieldDisplay | AXPCardBadgeDisplay;
287
+ /** Card layout field in master list view. */
288
+ type AXPCardField = AXPEntityDisplayField & {
289
+ layout?: AXPEntityPropertyLayoutConfig;
290
+ /**
291
+ * Field presentation. Default: `simple` (card body).
292
+ * Use `badge` or `{ type: 'badge', options: { color } }` for header chips beside title.
293
+ */
294
+ display?: AXPCardFieldDisplayConfig;
295
+ /**
296
+ * Badge color when presentation is badge-shaped.
297
+ * Prefer `display: { type: 'badge', options: { color } }` for new definitions.
298
+ * Omit for status fields — color is resolved from the status definition per row.
299
+ */
300
+ badgeColor?: AXPCardBadgeColor;
301
+ };
302
+ /** Whether the card field is shown as a header badge (not in the card body). */
303
+ declare function isCardFieldBadgeDisplay(display: AXPCardFieldDisplayConfig | undefined): display is 'badge' | AXPCardBadgeDisplay;
304
+ /** Resolves static badge color config from {@link AXPCardField.display} and legacy {@link AXPCardField.badgeColor}. */
305
+ declare function resolveCardFieldBadgeColor(field: Pick<AXPCardField, 'display' | 'badgeColor'>): AXPCardBadgeColor | undefined;
306
+ interface AXPEntityTableColumn extends AXPEntityDisplayField {
307
+ options?: AXPEntityDisplayField['options'] & {
308
+ /** Initial column width (overrides widget column width when set). */
309
+ width?: string;
310
+ /** Header/cell alignment (shorthand or per-side). */
311
+ align?: AXPColumnAlign;
312
+ };
313
+ }
314
+ interface AXPEntityCommand {
315
+ execute: string | Function;
316
+ permissions?: string[];
317
+ }
318
+ interface AXPEntityQuery {
319
+ execute: string | Function;
320
+ type: AXPEntityQueryType;
321
+ }
322
+
323
+ type AXPCommandActionType = AXPSystemActionType;
324
+ interface AXPCommandActionLook {
325
+ color: AXStyleColorType;
326
+ icon: string;
327
+ }
328
+ type AXPCommandActionPriority = 'primary' | 'secondary';
329
+ type AXPCommandActionCallback = string | {
330
+ name: string;
331
+ options?: {
332
+ decoration?: {
333
+ header?: {
334
+ title?: string;
335
+ };
336
+ };
337
+ process?: {
338
+ data?: any;
339
+ [name: string]: any;
340
+ };
341
+ layout?: {
342
+ size?: AXPopupSizeType;
343
+ };
344
+ [name: string]: any;
345
+ };
346
+ metadata?: AXPMetaData;
347
+ };
348
+ interface AXPCommandActionDisplay extends Partial<AXPCommandActionLook> {
349
+ name?: string;
350
+ command: AXPCommandActionCallback;
351
+ title: string;
352
+ type: AXPSystemActionType | string;
353
+ priority: 'primary' | 'secondary' | 'none';
354
+ separated?: boolean;
355
+ permissions?: string[];
356
+ hidden?: boolean | string;
357
+ disabled?: boolean | string;
358
+ default?: boolean;
359
+ order?: number;
360
+ /**
361
+ * Keyboard chords for this action (e.g. `'ctrl+shift+a'`).
362
+ * Pass `[]` to disable shortcuts. When omitted, platform defaults may apply for known commands.
363
+ */
364
+ shortcuts?: string[];
365
+ }
366
+ interface AXPEntityAction extends AXPCommandActionDisplay {
367
+ scope: AXPEntityCommandScope;
368
+ /** Child actions for dropdown submenu */
369
+ items?: AXPEntityAction[];
370
+ }
371
+ interface AXPEntity {
372
+ plugins?: {
373
+ name: string;
374
+ options?: AXPOptionsData;
375
+ }[];
376
+ /**
377
+ * High-level rules: when expression evaluates true, apply actions to the given targets
378
+ * (property/section/action). Reduces repetition of the same condition across many properties.
379
+ * Evaluation context: form data, user, entity; precedence vs property-level visible/readonly
380
+ * must be defined where rules are applied.
381
+ */
382
+ rules?: Array<{
383
+ name: string;
384
+ expression: AXPExpression;
385
+ actions: Array<{
386
+ target: {
387
+ type: 'property' | 'section' | 'action';
388
+ name: string;
389
+ };
390
+ values: AXPOptionsData;
391
+ }>;
392
+ }>;
393
+ module: string;
394
+ name: string;
395
+ icon?: string;
396
+ parentKey?: string;
397
+ category?: AXPCategoryEntity;
398
+ title: string;
399
+ formats: {
400
+ individual: string;
401
+ plural: string;
402
+ lookup?: string;
403
+ displayName?: string;
404
+ searchResult?: {
405
+ title: string;
406
+ description?: string;
407
+ };
408
+ };
409
+ relatedEntities?: AXPRelatedEntity[];
410
+ pages?: AXPEntityPage[];
411
+ groups?: AXPEntityPropertyGroup[];
412
+ properties: AXPEntityProperty[];
413
+ columns?: AXPEntityTableColumn[];
414
+ commands?: {
415
+ create?: AXPEntityCommand | undefined;
416
+ update?: AXPEntityCommand | undefined;
417
+ delete?: AXPEntityCommand | undefined;
418
+ [name: string]: AXPEntityCommand | undefined;
419
+ };
420
+ queries?: {
421
+ byKey?: AXPEntityQuery;
422
+ list?: AXPEntityQuery;
423
+ lookup?: AXPEntityQuery;
424
+ history?: AXPEntityQuery;
425
+ comments?: AXPEntityQuery;
426
+ [name: string]: AXPEntityQuery | undefined;
427
+ };
428
+ validations?: AXPValidationRules;
429
+ interfaces?: {
430
+ master?: {
431
+ single?: AXPEntityMasterSingleLayoutView;
432
+ list?: AXPEntityMasterListView;
433
+ create?: AXPEntityMasterCreateLayoutView;
434
+ update?: AXPEntityMasterUpdateLayoutView;
435
+ };
436
+ detail?: {
437
+ list?: AXPEntityDetailListView;
438
+ };
439
+ };
440
+ }
441
+ declare function getEntityInfo(entity: AXPEntity): {
442
+ source: string;
443
+ module: {
444
+ route: string;
445
+ };
446
+ entity: {
447
+ route: string;
448
+ };
449
+ };
450
+ declare function createQueryView(name: string, title: string, fixed: boolean, params?: {
451
+ columns?: string[];
452
+ conditions?: any[];
453
+ sorts?: AXPQuerySort[];
454
+ }): AXPQueryView;
455
+ declare function createAllQueryView(params?: {
456
+ columns?: string[];
457
+ conditions?: AXPQueryFilter[];
458
+ sorts?: AXPQuerySort[];
459
+ } | undefined): AXPQueryView;
460
+ interface AXPRelatedEntity {
461
+ entity: string;
462
+ title?: string;
463
+ icon?: string;
464
+ columns?: string[] | AXPEntityTableColumn[];
465
+ properties?: string[];
466
+ excludeProperties?: string[];
467
+ layout?: {
468
+ type: 'tab-detail' | 'tab-list' | 'page-detail' | 'page-list' | 'merge-detail';
469
+ order?: number;
470
+ position?: 'before' | 'after' | 'middle';
471
+ };
472
+ conditions?: AXPQueryFilter[];
473
+ customFilterDefinitions?: Partial<AXPFilterDefinition>[];
474
+ hidden?: boolean | AXPExpression;
475
+ actions?: AXPEntityAction[];
476
+ /**
477
+ * Controls inclusion on the host entity master **create** / **update** form.
478
+ * Defaults depend on layout:
479
+ * - **merge-detail**: omitted flags behave as **true** (opt-out with `false`).
480
+ * - **tab-list** / **page-list**: omitted flags behave as **false** (opt-in with `true`).
481
+ */
482
+ appearOn?: {
483
+ /** Include on host create form (see defaults above per layout type). */
484
+ create?: boolean;
485
+ /** Include on host update form (see defaults above per layout type). */
486
+ update?: boolean;
487
+ };
488
+ /**
489
+ * Relationship-level persistence strategy for merge-detail data.
490
+ * Defaults:
491
+ * - strategy: 'embedded'
492
+ * - idField: last segment of dataPath + 'Id' (or 'relatedId' when dataPath is missing)
493
+ * - map: undefined (pass-through)
494
+ * - hydrate: 'eager' (applies to getOne only in mock)
495
+ * - cascade.delete: 'none'
496
+ */
497
+ persistence?: {
498
+ strategy?: 'embedded' | 'referenced';
499
+ idField?: string;
500
+ dataPath?: string;
501
+ map?: Record<string, string>;
502
+ hydrate?: 'eager' | 'lazy';
503
+ cascade?: {
504
+ delete?: 'none' | 'orphans' | 'all';
505
+ };
506
+ foreignKeyField?: string;
507
+ };
508
+ }
509
+ interface AXPEntityPage {
510
+ /**
511
+ * Key to identify the component in the page component registry
512
+ */
513
+ componentKey: string;
514
+ /**
515
+ * Property name to render when the page component displays an entity field (e.g. 'questions', 'attachments').
516
+ * Passed to the page component as pageConfig.field.
517
+ */
518
+ field?: string;
519
+ /**
520
+ * Title of the page (displayed in navigation)
521
+ */
522
+ title?: AXPMultiLanguageString;
523
+ /**
524
+ * Icon for the page (displayed in navigation)
525
+ */
526
+ icon?: string;
527
+ /**
528
+ * Description of the page
529
+ */
530
+ description?: AXPMultiLanguageString;
531
+ /**
532
+ * Layout configuration for page positioning
533
+ */
534
+ layout?: {
535
+ /**
536
+ * Order of the page (lower numbers appear first)
537
+ */
538
+ order?: number;
539
+ /**
540
+ * Position relative to the main page
541
+ */
542
+ position?: 'before' | 'after' | 'middle';
543
+ };
544
+ /**
545
+ * Visibility condition (boolean or expression string)
546
+ */
547
+ hidden?: boolean | string;
548
+ /**
549
+ * Permissions required to view this page
550
+ */
551
+ permissions?: string[];
552
+ /**
553
+ * Controls inclusion on the host entity master **create** / **update** form wizard.
554
+ * Omitted flags behave as **false** (opt-in with `true`), same as `tab-list` / `page-list` related entities.
555
+ */
556
+ appearOn?: {
557
+ /** Include as a wizard step on host create form. */
558
+ create?: boolean;
559
+ /** Include as a wizard step on host update form. */
560
+ update?: boolean;
561
+ };
562
+ options?: Record<string, any>;
563
+ }
564
+ interface AXPCategoryEntity {
565
+ entity: string;
566
+ title?: string;
567
+ textField?: string;
568
+ valueField?: string;
569
+ conditions?: AXPQueryFilter[];
570
+ applyConditions?: AXPQueryFilter[];
571
+ }
572
+ interface AXPEntityVersionHistory {
573
+ enabled?: boolean;
574
+ showInList?: boolean;
575
+ showInDetail?: boolean;
576
+ }
577
+ interface AXPAggregate {
578
+ id: string;
579
+ name: string;
580
+ title: AXPMultiLanguageString;
581
+ entities: AXPEntity[];
582
+ }
583
+ interface AXPModule {
584
+ name: string;
585
+ title: AXPMultiLanguageString;
586
+ aggregates: AXPAggregate[];
587
+ relationships?: AXPRelationship[];
588
+ }
589
+ interface AXPApplication {
590
+ name: string;
591
+ title: AXPMultiLanguageString;
592
+ modules: AXPModule[];
593
+ }
594
+ interface AXPEntityMasterLayoutView {
595
+ title?: string;
596
+ sections: AXPEntitySectionView[];
597
+ properties?: AXPEntityPropertyView[];
598
+ }
599
+ /** Quick create config for lookup widgets (+ button) - uses subset of create form */
600
+ interface AXPEntityQuickCreate {
601
+ enabled?: boolean;
602
+ properties?: string[];
603
+ layout?: {
604
+ size?: AXPopupSizeType;
605
+ };
606
+ excludeProperties?: string[];
607
+ }
608
+ interface AXPEntityMasterCreateLayoutView extends AXPEntityMasterLayoutView {
609
+ steps?: {
610
+ id: string;
611
+ title: string;
612
+ description?: string;
613
+ };
614
+ /** Quick create config for lookup widgets - uses subset of create form */
615
+ quickCreate?: AXPEntityQuickCreate;
616
+ }
617
+ interface AXPEntityMasterUpdateLayoutView extends AXPEntityMasterLayoutView {
618
+ }
619
+ interface AXPEntityMasterSingleLayoutView extends AXPEntityMasterLayoutView {
620
+ title: string;
621
+ description?: string;
622
+ actions?: AXPEntityAction[];
623
+ }
624
+ interface AXPEntityMasterListView {
625
+ title?: string;
626
+ description?: string;
627
+ actions?: AXPEntityAction[];
628
+ views: AXPQueryView[];
629
+ layouts?: {
630
+ table?: {
631
+ enabled?: boolean;
632
+ columns: AXPEntityTableColumn[];
633
+ };
634
+ card?: {
635
+ enabled?: boolean;
636
+ header: {
637
+ /** Property path, expression (`{{ ... }}`), or literal — evaluated per row. */
638
+ title?: string;
639
+ description?: string;
640
+ icon?: string;
641
+ };
642
+ fields: AXPCardField[];
643
+ };
644
+ };
645
+ }
646
+ type AXPEntityMasterListLayoutType = 'table' | 'card';
647
+ /** Master list presentation: table or card with compact (collapsed) / expanded bodies. */
648
+ type AXPEntityMasterListDisplayMode = 'table' | 'card-compact' | 'card-expanded';
649
+ interface AXPEntityMasterListLayoutOption {
650
+ id: AXPEntityMasterListLayoutType;
651
+ title: string;
652
+ icon?: string;
653
+ }
654
+ /** Resolves master list layouts that are currently enabled. */
655
+ declare function resolveEnabledMasterListLayouts(layouts?: AXPEntityMasterListView['layouts']): AXPEntityMasterListLayoutType[];
656
+ /** First enabled layout; used as the default when no user preference is stored. */
657
+ declare function resolveDefaultMasterListLayout(layouts?: AXPEntityMasterListView['layouts']): AXPEntityMasterListLayoutType;
658
+ interface AXPEntityDetailListView {
659
+ title?: string;
660
+ description?: string;
661
+ columns: AXPEntityTableColumn[];
662
+ actions?: AXPEntityAction[];
663
+ }
664
+ interface AXPQueryView {
665
+ name: string;
666
+ fixed: boolean;
667
+ title: string;
668
+ columns: string[];
669
+ conditions: AXPQueryFilter[];
670
+ sorts: AXPQuerySort[];
671
+ indexCol?: boolean;
672
+ pageSize?: number;
673
+ visible?: boolean;
674
+ }
675
+ interface AXPQueryFilter {
676
+ name: string;
677
+ operator: AXDataSourceOperator;
678
+ value: any;
679
+ }
680
+ interface AXPQuerySort {
681
+ name: string;
682
+ dir: 'asc' | 'desc';
683
+ }
684
+ declare enum AXPEntityType {
685
+ Entity = 0,
686
+ AggregateRoot = 1,
687
+ ValueObject = 2
688
+ }
689
+ interface AXPEntityV2 {
690
+ version: 2;
691
+ module: string;
692
+ aggregate: string;
693
+ name: string;
694
+ type: AXPEntityType;
695
+ icon?: string;
696
+ title: string;
697
+ description?: string;
698
+ plugins?: {
699
+ name: string;
700
+ options?: AXPOptionsData;
701
+ }[];
702
+ pages?: AXPEntityPage[];
703
+ groups?: AXPEntityPropertyGroup[];
704
+ properties: AXPEntityProperty[];
705
+ formats: {
706
+ individual: string;
707
+ plural: string;
708
+ lookup?: string;
709
+ displayName?: string;
710
+ searchResult?: {
711
+ title: string;
712
+ description?: string;
713
+ };
714
+ };
715
+ columns?: AXPEntityTableColumn[];
716
+ validations?: AXPValidationRules;
717
+ interfaces?: {
718
+ master?: {
719
+ single?: AXPEntityMasterSingleLayoutView;
720
+ list?: AXPEntityMasterListView;
721
+ create?: AXPEntityMasterCreateLayoutView;
722
+ update?: AXPEntityMasterUpdateLayoutView;
723
+ };
724
+ detail?: {
725
+ list?: AXPEntityDetailListView;
726
+ };
727
+ };
728
+ }
729
+
137
730
  interface AXPFilterOperator {
138
731
  name: string;
139
732
  title: string;
@@ -621,7 +1214,7 @@ declare class AXPCommonModule {
621
1214
  /**
622
1215
  * @ignore
623
1216
  */
624
- constructor(instances: any[], _keyboardShortcutsHelp: AXPKeyboardShortcutsHelpService, formatterRegistry: AXFormatterRegistryService);
1217
+ constructor(instances: any[], _keyboardShortcutsHelp: AXPKeyboardShortcutsHelpService);
625
1218
  static ɵfac: i0.ɵɵFactoryDeclaration<AXPCommonModule, never>;
626
1219
  static ɵmod: i0.ɵɵNgModuleDeclaration<AXPCommonModule, never, [typeof i1.AXPComponentSlotModule, typeof i2.AXPWorkflowModule, typeof i3.AXPopupModule, typeof i4.AXDateTimeModule, typeof i5.AXToastModule, typeof i1.AXPModuleManifestModule], [typeof _angular_router.RouterModule]>;
627
1220
  static ɵinj: i0.ɵɵInjectorDeclaration<AXPCommonModule>;
@@ -663,9 +1256,7 @@ declare enum AXPCommonSettings {
663
1256
  ConfirmUnsavedChanges = "Common:Setting:Entity.ConfirmUnsavedChanges",
664
1257
  DebugMode = "PlatformDevTools:Setting:Developer.DebugMode",
665
1258
  ShowRowIndexColumn = "Common:Setting:Entity.ShowRowIndexColumn",
666
- EntityListPersistenceMode = "Common:Setting:Entity.ListPersistenceMode",
667
- NavigationMode = "Common:Setting:Navigation.Mode",
668
- MaxOpenTabs = "Common:Setting:Navigation.MaxOpenTabs"
1259
+ EntityListPersistenceMode = "Common:Setting:Entity.ListPersistenceMode"
669
1260
  }
670
1261
 
671
1262
  declare const AXP_ROOT_CONFIG_TOKEN: InjectionToken<AXPRootConfigs>;
@@ -899,23 +1490,6 @@ declare class AXPFileActionsService {
899
1490
 
900
1491
  declare const UploadFromComputerActionProvider: AXPFileActionProvider;
901
1492
 
902
- interface AXPTranslateFormatterOptions extends AXFormatOptions {
903
- scope?: string;
904
- lang?: string;
905
- params?: Record<string, unknown>;
906
- }
907
- /**
908
- * Platform formatter for display text: resolves ML objects, i18n keys (`@scope:key`), and primitives.
909
- * Register via {@link AXPCommonModule} (auto) or `AXFormatModule.forRoot({ formatters: [AXPTranslateFormatter] })`.
910
- */
911
- declare class AXPTranslateFormatter implements AXFormatter {
912
- private readonly translationService;
913
- get name(): string;
914
- format(value: unknown, options?: AXPTranslateFormatterOptions | string): string;
915
- static ɵfac: i0.ɵɵFactoryDeclaration<AXPTranslateFormatter, never>;
916
- static ɵprov: i0.ɵɵInjectableDeclaration<AXPTranslateFormatter>;
917
- }
918
-
919
1493
  declare abstract class AXPFileStorageService {
920
1494
  abstract save(request: AXPFileStorageCreateRequest): Promise<AXPFileStorageInfo>;
921
1495
  abstract update(request: AXPFileStorageUpdateRequest): Promise<AXPFileStorageInfo>;
@@ -1566,14 +2140,6 @@ interface AXPSearchAction extends Partial<AXPCommandActionLook> {
1566
2140
  separated?: boolean;
1567
2141
  }
1568
2142
 
1569
- /**
1570
- * Optional hook to resolve entity search definitions on demand (e.g. Module.X.Entity).
1571
- */
1572
- interface AXPSearchDefinitionLazyResolver {
1573
- resolve(definitionName: string): Promise<AXPSearchDefinition | null>;
1574
- }
1575
- declare const AXP_SEARCH_DEFINITION_LAZY_RESOLVER: InjectionToken<AXPSearchDefinitionLazyResolver>;
1576
-
1577
2143
  declare class AXPSearchDefinitionProviderContext {
1578
2144
  private definitions;
1579
2145
  private definitionMap;
@@ -1605,13 +2171,11 @@ interface AXPSearchDefinitionProvider {
1605
2171
  declare const AXP_SEARCH_DEFINITION_PROVIDER: InjectionToken<AXPSearchDefinitionProvider[]>;
1606
2172
  declare class AXPSearchDefinitionProviderService {
1607
2173
  private providers;
1608
- private lazyResolver;
1609
2174
  private cache;
1610
2175
  private load;
1611
2176
  getListAsync(): Promise<AXPSearchDefinition[]>;
1612
2177
  getList(): AXPSearchDefinition[];
1613
2178
  findDefinition(definitionName: string): AXPSearchDefinition;
1614
- findDefinitionAsync(definitionName: string): Promise<AXPSearchDefinition | null>;
1615
2179
  findDefinitionByGroup(definitionGroup: string): AXPSearchDefinition;
1616
2180
  static ɵfac: i0.ɵɵFactoryDeclaration<AXPSearchDefinitionProviderService, never>;
1617
2181
  static ɵprov: i0.ɵɵInjectableDeclaration<AXPSearchDefinitionProviderService>;
@@ -1633,7 +2197,6 @@ declare class AXPSearchService {
1633
2197
  private formatService;
1634
2198
  private translationService;
1635
2199
  private expressionEvaluator;
1636
- private contextEvalFactory;
1637
2200
  search(text: string): Promise<AXPSearchDisplayGroupResult[]>;
1638
2201
  static ɵfac: i0.ɵɵFactoryDeclaration<AXPSearchService, never>;
1639
2202
  static ɵprov: i0.ɵɵInjectableDeclaration<AXPSearchService>;
@@ -1651,12 +2214,12 @@ declare function searchInSearchableValue(value: unknown, query: string, locale:
1651
2214
  * Shallow + nested search over entity/command payloads (skips id / entityName keys).
1652
2215
  */
1653
2216
  declare function searchInRecordValues(value: unknown, query: string, locale: string, translationService: AXTranslationService, depth?: number): boolean;
1654
- /** Standard display-tier row scope for entity title/search templates. */
1655
- declare function createEntityRowExpressionScope(data: unknown, contextEvalFactory: AXPContextEvalFactory): AXPExpressionEvaluatorScope;
2217
+ /** Standard row scope for entity title/search templates. */
2218
+ declare function createEntityRowExpressionScope(data: unknown): AXPExpressionEvaluatorScope;
1656
2219
  /**
1657
2220
  * Evaluates a normalized entity display template via {@link AXPExpressionEvaluatorService}.
1658
2221
  */
1659
- declare function evaluateEntityDisplayTemplate(template: string, data: unknown, expressionEvaluator: AXPExpressionEvaluatorService, locale: string, translationService: AXTranslationService, contextEvalFactory: AXPContextEvalFactory): Promise<unknown>;
2222
+ declare function evaluateEntityDisplayTemplate(template: string, data: unknown, expressionEvaluator: AXPExpressionEvaluatorService, locale: string, translationService: AXTranslationService): Promise<unknown>;
1660
2223
  /**
1661
2224
  * Best display string from row values that contain the active search query (deep-match fallback).
1662
2225
  */
@@ -1664,7 +2227,7 @@ declare function resolveQueryMatchingDisplayText(value: unknown, query: string,
1664
2227
  /**
1665
2228
  * Resolves entity search display templates; coerces multi-language field values to readable text.
1666
2229
  */
1667
- declare function resolveSearchDisplayTemplate(template: string | undefined, data: unknown, locale: string, translationService: AXTranslationService, formatService: AXFormatService, expressionEvaluator: AXPExpressionEvaluatorService, contextEvalFactory: AXPContextEvalFactory): Promise<AXPMultiLanguageString>;
2230
+ declare function resolveSearchDisplayTemplate(template: string | undefined, data: unknown, locale: string, translationService: AXTranslationService, formatService: AXFormatService, expressionEvaluator: AXPExpressionEvaluatorService): Promise<AXPMultiLanguageString>;
1668
2231
 
1669
2232
  interface AXPEntitySearchTitleContext {
1670
2233
  /** Templates tried after the primary `searchResult.title` fails (`single.title`, lookup, individual). */
@@ -1672,8 +2235,11 @@ interface AXPEntitySearchTitleContext {
1672
2235
  /** Entity property paths tried when templates do not resolve (`lookup`, identifier, common fields). */
1673
2236
  fallbackFields: string[];
1674
2237
  }
1675
- /** @see normalizeExpressionTemplate */
1676
- declare const normalizeEntityDisplayTemplate: typeof normalizeExpressionTemplate;
2238
+ /**
2239
+ * Normalizes entity display templates for {@link AXPExpressionEvaluatorService}.
2240
+ * Converts `context.eval('path')`, single braces, and simple dot paths to `context.eval` segments.
2241
+ */
2242
+ declare function normalizeEntityDisplayTemplate(template: string): string;
1677
2243
  /** True when formatted text still contains unresolved template markers. */
1678
2244
  declare function isUnresolvedEntityDisplayTemplate(value: string): boolean;
1679
2245
  /**
@@ -1691,18 +2257,10 @@ declare function buildEntitySearchTitleContext(entity: AXPEntity, primaryTemplat
1691
2257
  * Priority: `interfaces.master.single.title` → `formats.searchResult.title` → `formats.individual`.
1692
2258
  */
1693
2259
  declare function resolveEntityRowTitleTemplate(entity: AXPEntity | null | undefined): string | undefined;
1694
- /**
1695
- * Record title template for modify popups: `interfaces.master.update.title` → `single.title`.
1696
- */
1697
- declare function resolveEntityModifyRecordTitleTemplate(entity: AXPEntity | null | undefined): string | undefined;
1698
- /**
1699
- * Modify/edit popup chrome: `{action} {individual} ({update.title ?? single.title})` when a record template exists.
1700
- */
1701
- declare function resolveEntityModifyPopupTitle(entity: AXPEntity, recordData: unknown, translationService: AXTranslationService, formatService: AXFormatService, expressionEvaluator: AXPExpressionEvaluatorService, contextEvalFactory: AXPContextEvalFactory, actionTitleKey?: string): Promise<string>;
1702
2260
  /**
1703
2261
  * Resolves an entity row title using entity-driven fallback templates and property paths.
1704
2262
  */
1705
- declare function resolveEntitySearchTitleFallback(format: Pick<AXPSearchDefinitionDisplayFormat, 'titleFallbackTemplates' | 'titleFallbackFields'>, data: unknown, locale: string, translationService: AXTranslationService, formatService: AXFormatService, expressionEvaluator: AXPExpressionEvaluatorService, contextEvalFactory: AXPContextEvalFactory): Promise<string>;
2263
+ declare function resolveEntitySearchTitleFallback(format: Pick<AXPSearchDefinitionDisplayFormat, 'titleFallbackTemplates' | 'titleFallbackFields'>, data: unknown, locale: string, translationService: AXTranslationService, formatService: AXFormatService, expressionEvaluator: AXPExpressionEvaluatorService): Promise<string>;
1706
2264
 
1707
2265
  interface AXPResolveEntityRowDisplayTitleOptions {
1708
2266
  /** Row or form context data used to evaluate title templates. */
@@ -1927,7 +2485,6 @@ declare class AXPSettingDefinitionSectionBuilder {
1927
2485
  isRequired?: boolean;
1928
2486
  isInherited?: boolean;
1929
2487
  isEncrypted?: boolean;
1930
- requiresPageRefresh?: boolean;
1931
2488
  defaultValue?: unknown;
1932
2489
  valueTransforms?: AXPValueTransformerFunctions;
1933
2490
  validationRules?: AXPValidationRules;
@@ -1983,8 +2540,6 @@ interface AXPSettingDefinition {
1983
2540
  isRequired?: boolean;
1984
2541
  isInherited?: boolean;
1985
2542
  isEncrypted?: boolean;
1986
- /** When true, saving this setting from the settings page reloads the browser. */
1987
- requiresPageRefresh?: boolean;
1988
2543
  defaultValue?: unknown;
1989
2544
  value?: unknown;
1990
2545
  }
@@ -2030,7 +2585,6 @@ declare class AXPSettingDefinitionProviderService {
2030
2585
  getList(scope: AXPPlatformScopeKey): AXPSettingDefinitionGroup[];
2031
2586
  defaultValues(): Promise<Record<string, unknown>>;
2032
2587
  settingScopeByKey(): Promise<Record<string, AXPPlatformScope>>;
2033
- requiresPageRefreshByKey(): Promise<Record<string, boolean>>;
2034
2588
  findGroup(scope: AXPPlatformScopeKey, groupName: string): AXPGroupSearchResult;
2035
2589
  private searchRecursive;
2036
2590
  static ɵfac: i0.ɵɵFactoryDeclaration<AXPSettingDefinitionProviderService, never>;
@@ -2139,6 +2693,37 @@ declare class AXPRegionalCalendarService extends AXCalendarService {
2139
2693
  static ɵprov: i0.ɵɵInjectableDeclaration<AXPRegionalCalendarService>;
2140
2694
  }
2141
2695
 
2696
+ /**
2697
+ * Regional and locale-related setting keys used by platform widgets and components.
2698
+ * Most values use the `LocaleManagement:Setting:Regional.*` prefix; definitions live in the locale-management module where applicable.
2699
+ */
2700
+ declare enum AXPRegionalSetting {
2701
+ LocaleProfile = "LocaleManagement:Setting:Regional.LocaleProfile",
2702
+ TimeZone = "LocaleManagement:Setting:Regional.TimeZone",
2703
+ Language = "LocaleManagement:Setting:Regional.Language",
2704
+ Country = "LocaleManagement:Setting:Regional.Country",
2705
+ Calendar = "LocaleManagement:Setting:Regional.Calendar",
2706
+ /** User-selected holiday calendars shown on the task board and other calendar views. */
2707
+ CalendarEvents = "LocaleManagement:Setting:Regional.CalendarEvents",
2708
+ FirstDayOfWeek = "LocaleManagement:Setting:Regional.FirstDayOfWeek",
2709
+ WeekendDays = "LocaleManagement:Setting:Regional.WeekendDays",
2710
+ ShortDate = "LocaleManagement:Setting:Regional.ShortDate",
2711
+ MediumDate = "LocaleManagement:Setting:Regional.MediumDate",
2712
+ LongDate = "LocaleManagement:Setting:Regional.LongDate",
2713
+ ShortTime = "LocaleManagement:Setting:Regional.ShortTime",
2714
+ MediumTime = "LocaleManagement:Setting:Regional.MediumTime",
2715
+ LongTime = "LocaleManagement:Setting:Regional.LongTime",
2716
+ MeasurementUnits = "LocaleManagement:Setting:Regional.MeasurementUnits",
2717
+ TemperatureUnits = "LocaleManagement:Setting:Regional.TemperatureUnits",
2718
+ DistanceUnits = "LocaleManagement:Setting:Regional.DistanceUnits",
2719
+ WeightUnits = "LocaleManagement:Setting:Regional.WeightUnits",
2720
+ VolumeUnits = "LocaleManagement:Setting:Regional.VolumeUnits",
2721
+ SpeedUnits = "LocaleManagement:Setting:Regional.SpeedUnits",
2722
+ AreaUnits = "LocaleManagement:Setting:Regional.AreaUnits",
2723
+ /** Default multi-language behavior for standard text field names; defined in locale-management `AXMRegionalSettingProvider`. */
2724
+ MultiLanguageSupport = "LocaleManagement:Setting:Regional.MultiLanguageSupport"
2725
+ }
2726
+
2142
2727
  interface AXPUnsavedChangesConfirmOptions {
2143
2728
  /** When false, skips confirm even if the global setting is enabled (e.g. dialog `confirmCloseWhenDirty`). */
2144
2729
  enabled?: boolean;
@@ -2217,6 +2802,116 @@ declare class AXPUnsavedChangesPopstateService {
2217
2802
 
2218
2803
  declare function createUnsavedChangesCanDeactivateGuard<T extends AXPUnsavedChangesCanDeactivate>(): CanDeactivateFn<T>;
2219
2804
 
2805
+ /**
2806
+ * Status Definition Types
2807
+ * Defines the structure for status definitions and their transitions
2808
+ */
2809
+ /**
2810
+ * Status definition with metadata
2811
+ */
2812
+ interface AXPStatusDefinition {
2813
+ /**
2814
+ * Unique identifier for the status
2815
+ */
2816
+ name: string;
2817
+ /**
2818
+ * Display title for the status
2819
+ */
2820
+ title: string;
2821
+ /**
2822
+ * Color code or semantic color name for the status
2823
+ */
2824
+ color: string;
2825
+ /**
2826
+ * Optional icon class (e.g., 'fa-light fa-check')
2827
+ */
2828
+ icon?: string;
2829
+ /**
2830
+ * Optional description
2831
+ */
2832
+ description?: string;
2833
+ /**
2834
+ * Optional order for sorting
2835
+ */
2836
+ order?: number;
2837
+ /**
2838
+ * Whether this is a final status (end state)
2839
+ */
2840
+ isFinal?: boolean;
2841
+ /**
2842
+ * Whether this is an initial status (starting state)
2843
+ */
2844
+ isInitial?: boolean;
2845
+ /**
2846
+ * Whether list views should be automatically generated for this status
2847
+ */
2848
+ generateView?: boolean;
2849
+ }
2850
+ /**
2851
+ * Status transition definition
2852
+ */
2853
+ interface AXPStatusTransition {
2854
+ /**
2855
+ * Source status name
2856
+ */
2857
+ from: string;
2858
+ /**
2859
+ * Target status name
2860
+ */
2861
+ to: string;
2862
+ /**
2863
+ * Optional condition expression to evaluate before allowing transition
2864
+ * Uses expression evaluator syntax (e.g., "{{user.isAdmin}}", "{{item.priority > 5}}")
2865
+ */
2866
+ condition?: string;
2867
+ /**
2868
+ * Optional display title for the transition
2869
+ */
2870
+ title?: string;
2871
+ /**
2872
+ * Optional description
2873
+ */
2874
+ description?: string;
2875
+ /**
2876
+ * Optional command descriptor to execute for this transition
2877
+ * If not provided, defaults to Entity:UpdateStatus with entity, id, and status
2878
+ */
2879
+ command?: {
2880
+ name: string;
2881
+ options?: Record<string, unknown>;
2882
+ };
2883
+ /**
2884
+ * Whether this transition is automatic (no user action required)
2885
+ */
2886
+ isAutomatic?: boolean;
2887
+ /**
2888
+ * Whether this transition requires approval
2889
+ */
2890
+ requiresApproval?: boolean;
2891
+ }
2892
+ /**
2893
+ * Abstract class for status providers
2894
+ * Similar to AXPTaskBadgeProvider pattern
2895
+ */
2896
+ declare abstract class AXPStatusProvider {
2897
+ /**
2898
+ * Unique key for the status (e.g., 'task-management.status')
2899
+ */
2900
+ abstract readonly key: string;
2901
+ /**
2902
+ * List of available status definitions
2903
+ */
2904
+ abstract readonly statuses: AXPStatusDefinition[];
2905
+ /**
2906
+ * List of allowed transitions between statuses
2907
+ */
2908
+ abstract readonly transitions: AXPStatusTransition[];
2909
+ /**
2910
+ * Optional default status name
2911
+ */
2912
+ abstract readonly defaultStatus?: string;
2913
+ }
2914
+
2220
2915
  /**
2221
2916
  * Injection token for status providers
2222
2917
  * Use with multi: true to register multiple providers
@@ -2321,285 +3016,310 @@ declare class AXPStatusDefinitionProviderService {
2321
3016
  }
2322
3017
 
2323
3018
  /**
2324
- * Builds a stable tab key from a router URL.
2325
- * Path segments define identity; query params are excluded so the same entity record
2326
- * or list reuses one tab even when filters or refresh tokens change.
2327
- */
2328
- declare function axpBuildTabKey(url: string): string;
2329
- /** Normalizes a router URL for storage and navigation. */
2330
- declare function normalizeRouterUrl(url: string): string;
2331
- /** Human-readable fallback title from the URL path. */
2332
- declare function axpFallbackTabTitle(url: string): string;
2333
-
2334
- type AXPNavigationMode = 'simple' | 'tabular';
2335
- declare const AXP_HOME_TAB_KEY = "axp:home";
2336
- /** Route `data` key for tab-navigation behavior (`data.tab`). */
2337
- declare const AXP_TAB_ROUTE_DATA_KEY = "tab";
2338
- /**
2339
- * Set `data.tab = true` on the route that should act as the tab boundary.
2340
- * Child navigations under this route update the same tab rather than opening a new one.
2341
- */
2342
- type AXPTabRouteData = true;
2343
- interface AXPTabDescriptor {
2344
- /** Stable dedupe key derived from the route (path-based, query excluded). */
2345
- key: string;
2346
- /** Full router URL including query string and fragment. */
2347
- url: string;
2348
- title: string;
2349
- icon?: string;
2350
- pinned: boolean;
2351
- closable: boolean;
2352
- /** Timestamp used for LRU eviction when max tabs is reached. */
2353
- openedAt: number;
2354
- /** Updated whenever the tab becomes active. */
2355
- lastActivatedAt: number;
2356
- }
2357
- interface AXPTabSessionState {
2358
- tabs: AXPTabDescriptor[];
2359
- activeTabKey: string | null;
2360
- }
2361
- /** Optional hook for confirming closure of a cached background tab (no router navigation). */
2362
- interface AXPTabCloseConfirm {
2363
- onBeforeTabClose(): boolean | Promise<boolean>;
2364
- }
2365
-
2366
- declare class AXPTabNavigationService {
2367
- private readonly router;
2368
- private readonly settingsService;
2369
- private readonly deviceService;
2370
- private readonly menuService;
2371
- private readonly homePageService;
2372
- private readonly sessionService;
2373
- private readonly routeCacheRegistry;
2374
- private readonly tabPreviewService;
2375
- private readonly unsavedChangesConfirm;
2376
- private readonly destroyRef;
2377
- private readonly navigationMode;
2378
- private readonly maxOpenTabs;
2379
- private readonly tabs;
2380
- private readonly activeTabKey;
2381
- private suppressNavigationSync;
2382
- /** Effective mode: mobile always uses simple navigation. */
2383
- readonly effectiveMode: i0.Signal<AXPNavigationMode>;
2384
- readonly isTabBarVisible: i0.Signal<boolean>;
2385
- readonly tabList: i0.Signal<AXPTabDescriptor[]>;
2386
- readonly activeKey: i0.Signal<string | null>;
2387
- constructor();
2388
- /** Navigates to a path, opening or activating a tab when tabular mode is active. */
2389
- navigate(path: string, extras?: NavigationExtras): Promise<boolean>;
2390
- /** Opens a tab or activates an existing tab with the same key. */
2391
- openOrActivateTab(url: string, title?: string): Promise<void>;
2392
- /**
2393
- * Activates a tab and navigates to its URL. The previously active page is detached and cached by
2394
- * the reuse strategy, so its state is preserved; this tab's cached instance is reattached when
2395
- * available instead of being re-rendered.
2396
- *
2397
- * @param suspendDeactivateGuard When true (default for tab switches), unsaved-changes prompts are
2398
- * skipped so switching tabs keeps a dirty page alive. Closing a tab passes false to keep the prompt.
2399
- */
2400
- activateTabKey(key: string, urlOverride?: string, suspendDeactivateGuard?: boolean): Promise<void>;
2401
- /** Closes a tab and navigates to a neighbor when the active tab is closed. */
2402
- closeTab(key: string): Promise<void>;
2403
- /** Closes every closable tab except the given key (pinned tabs are kept). */
2404
- closeOtherTabs(keepKey: string): Promise<void>;
2405
- /** Closes all closable tabs (pinned tabs are kept). */
2406
- closeAllTabs(): Promise<void>;
2407
- /** Toggles whether a tab stays pinned in the strip (home tab is always pinned). */
2408
- toggleTabPinned(key: string): void;
2409
- /**
2410
- * Reorders tabs after drag-and-drop. Home stays first; pinned and unpinned tabs cannot cross groups.
2411
- */
2412
- reorderTabs(previousIndex: number, currentIndex: number): void;
2413
- /** Updates a tab title from the current page chrome (e.g. breadcrumb trail). */
2414
- syncTabTitle(key: string, title: string): void;
2415
- /** Updates a tab icon from the current page chrome or menu metadata. */
2416
- syncTabIcon(key: string, icon: string): void;
2417
- /** Closes multiple tabs in one update; navigates once when the active tab is closed. */
2418
- private closeTabs;
2419
- /**
2420
- * Prompts before closing a cached background tab. Uses the page's {@link AXPTabCloseConfirm}
2421
- * hook when available, otherwise falls back to the tab preview dirty flag.
2422
- */
2423
- private confirmBackgroundTabClose;
2424
- /**
2425
- * Navigates away from the active tab before it is removed so canDeactivate runs while the tab is still visible.
2426
- * Returns false when navigation was cancelled (e.g. unsaved-changes confirmation declined).
2427
- */
2428
- private navigateAwayBeforeClosingActiveTab;
2429
- /** Prefers the tab to the right after removal, then the tab to the left (browser-like). */
2430
- private resolveFallbackTabIndex;
2431
- /**
2432
- * Keeps the route cache registry aligned with the current navigation mode and the set of open
2433
- * tabs. Cached page instances for closed/evicted tabs are destroyed by the registry.
2434
- */
2435
- private bindRouteCacheSync;
2436
- private bindRouterEvents;
2437
- private handleNavigationEnd;
2438
- private loadSettings;
2439
- private bindSettingsChanges;
2440
- private bindSessionChanges;
2441
- private ensureHomeTab;
2442
- private insertTab;
2443
- /** Home first; preserves session order for the remaining tabs. */
2444
- private ensureHomeTabFirst;
2445
- private getLastPinnedTabIndex;
2446
- /** Home first, then other pinned tabs, then unpinned tabs (stable by openedAt within each group). */
2447
- private normalizeTabOrder;
2448
- private enforceMaxTabs;
2449
- private createTabDescriptor;
2450
- /** Finds a tab by scoped key or legacy full-path key for the same URL. */
2451
- private findTabForUrl;
2452
- /** True when the URL is the configured application home page (e.g. dashboard). */
2453
- private isHomePageUrl;
2454
- private resolveHomeUrl;
2455
- /** Activates the pinned home tab for a home-page URL instead of opening a duplicate tab. */
2456
- private activateHomeTabForUrl;
2457
- /** Drops non-home tabs that duplicate the home page URL after session restore. */
2458
- private removeDuplicateHomeUrlTabs;
2459
- /** Rewrites a tab key when route-scope resolution changes (e.g. profile sub-routes). */
2460
- private migrateTabKey;
2461
- /** Collapses restored tabs that share the same scoped route key. */
2462
- private normalizeRestoredTabKeys;
2463
- private updateTabUrl;
2464
- private updateTabTitle;
2465
- private updateTabIcon;
2466
- private touchTab;
2467
- private resolveTabTitle;
2468
- private resolveTabIcon;
2469
- private resolveHomePath;
2470
- private resolveHomeTitle;
2471
- private isGenericHomeTitle;
2472
- private syncCurrentRouteAsTab;
2473
- private normalizeMaxTabs;
2474
- private sessionStorageKey;
2475
- private persistSession;
2476
- private clearSession;
2477
- private restoreSessionIfNeeded;
2478
- static ɵfac: i0.ɵɵFactoryDeclaration<AXPTabNavigationService, never>;
2479
- static ɵprov: i0.ɵɵInjectableDeclaration<AXPTabNavigationService>;
2480
- }
2481
-
2482
- /** Structured hover-card payload for a tab (kept in memory; not session-persisted). */
2483
- interface AXPTabStructuredPreview {
2484
- /** Primary label (usually page title or breadcrumb trail). */
2485
- title: string;
2486
- /** Optional page description or secondary line. */
2487
- subtitle?: string;
2488
- /** Full router URL for the tab. */
2489
- url: string;
2490
- icon?: string;
2491
- /** Whether the cached page reports unsaved user edits. */
2492
- isDirty: boolean;
2493
- /** Breadcrumb segments excluding home (for the hover card). */
2494
- breadcrumbTrail: string[];
2495
- }
2496
-
2497
- /**
2498
- * In-memory structured previews for tab hover cards and dirty indicators.
2499
- * Populated by active/cached pages via {@link AXPPageLayoutBaseComponent}.
2500
- */
2501
- declare class AXPTabPreviewService {
2502
- private readonly previewMap;
2503
- readonly previews: i0.Signal<Readonly<Record<string, AXPTabStructuredPreview>>>;
2504
- setPreview(key: string, preview: AXPTabStructuredPreview): void;
2505
- patchPreview(key: string, patch: Partial<AXPTabStructuredPreview>): void;
2506
- getPreview(key: string): AXPTabStructuredPreview | undefined;
2507
- isTabDirty(key: string): boolean;
2508
- clearPreview(key: string): void;
2509
- clearPreviews(keys: Iterable<string>): void;
2510
- clearAll(): void;
2511
- static ɵfac: i0.ɵɵFactoryDeclaration<AXPTabPreviewService, never>;
2512
- static ɵprov: i0.ɵɵInjectableDeclaration<AXPTabPreviewService>;
2513
- }
2514
-
2515
- /**
2516
- * Holds detached Angular route component instances keyed by tab key so tabular navigation can
2517
- * preserve a page's full state (data-table selection, scroll, unsaved form values, etc.) while it
2518
- * is in the background, then reattach it without re-rendering.
2519
- *
2520
- * The registry has no `Router` dependency on purpose: it is consumed by the {@link RouteReuseStrategy}
2521
- * implementation, so depending on `Router` here would create a construction-time cycle.
2522
- */
2523
- declare class AXPTabRouteCacheRegistry {
2524
- private readonly handles;
2525
- private openKeys;
2526
- private enabled;
2527
- private deactivateGuardSuspended;
2528
- /**
2529
- * Runs `action` while unsaved-changes `canDeactivate` guards are suspended, so switching between
2530
- * tabs preserves a dirty page without prompting. Closing a tab does not use this path, so the
2531
- * prompt still appears there.
2532
- */
2533
- runWithSuspendedDeactivateGuards<T>(action: () => Promise<T>): Promise<T>;
2534
- isDeactivateGuardSuspended(): boolean;
2535
- /** Enables caching (tabular mode). Disabling clears and destroys every cached component. */
2536
- setEnabled(enabled: boolean): void;
2537
- isEnabled(): boolean;
2538
- /**
2539
- * Reconciles open scoped tab keys and active tab URLs. Cached handles whose key is not an open
2540
- * scoped tab key, an active tab URL, or a child path under an open scoped tab are destroyed.
2541
- */
2542
- syncOpenKeys(scopedKeys: string[], activeTabUrls?: string[]): void;
2543
- isOpen(key: string): boolean;
2544
- /**
2545
- * Returns the live component instance for a cached background tab, when available.
2546
- * Matches the tab key directly or any cached handle under a scoped tab prefix.
2547
- */
2548
- getComponentInstance<T>(key: string): T | null;
2549
- /**
2550
- * Caches a detached background handle. Overwrites without destroying the previous handle: on a
2551
- * repeat visit Angular hands back a new handle object wrapping the same live `componentRef`, so
2552
- * destroying the old one would destroy the live component and corrupt the view (NG0922).
2553
- */
2554
- store(key: string, handle: DetachedRouteHandle): void;
2555
- /**
2556
- * Returns the cached handle without mutating the map. Angular reads a handle twice per
2557
- * navigation (once while building the future state, once while attaching), so `retrieve` must be
2558
- * idempotent; the handle is released afterwards via {@link release} when Angular calls
2559
- * `store(snapshot, null)`.
2560
- */
2561
- retrieve(key: string): DetachedRouteHandle | null;
2562
- /**
2563
- * Drops a handle that the router has just reattached (it is now a live foreground view, so it
2564
- * must not be destroyed). The map keeps only truly backgrounded handles.
2565
- */
2566
- release(key: string): void;
2567
- has(key: string): boolean;
2568
- /** Destroys and removes a single cached handle (used when a tab closes). */
2569
- evict(key: string): void;
2570
- /** Destroys and removes every cached handle. */
2571
- clear(): void;
2572
- private readComponentInstance;
2573
- private destroyHandle;
2574
- static ɵfac: i0.ɵɵFactoryDeclaration<AXPTabRouteCacheRegistry, never>;
2575
- static ɵprov: i0.ɵɵInjectableDeclaration<AXPTabRouteCacheRegistry>;
2576
- }
2577
-
3019
+ * Standard system status types
3020
+ * These are the predefined status values used across the platform
3021
+ */
3022
+ declare enum AXPSystemStatusType {
3023
+ Todo = "todo",
3024
+ InProgress = "in-progress",
3025
+ InReview = "in-review",
3026
+ Open = "open",
3027
+ Closed = "closed",
3028
+ Blocked = "blocked",
3029
+ Done = "done",
3030
+ Cancelled = "cancelled",
3031
+ Draft = "draft",
3032
+ PendingReview = "pending-review",
3033
+ WaitingSignOff = "waiting-sign-off",
3034
+ WaitingApproval = "waiting-approval",
3035
+ Approved = "approved",
3036
+ Published = "published",
3037
+ Archived = "archived",
3038
+ Rejected = "rejected",
3039
+ Active = "active",
3040
+ Inactive = "inactive",
3041
+ Pending = "pending",
3042
+ Completed = "completed",
3043
+ Suspended = "suspended",
3044
+ Failed = "failed",
3045
+ Review = "review",
3046
+ Expired = "expired"
3047
+ }
3048
+ /**
3049
+ * Standard system status definitions
3050
+ * Provides consistent status definitions across the platform
3051
+ * Uses AXPStatusDefinition interface from status-definition.types.ts
3052
+ */
3053
+ declare const AXPSystemStatuses: Readonly<{
3054
+ readonly Open: {
3055
+ readonly name: AXPSystemStatusType.Open;
3056
+ readonly title: string;
3057
+ readonly icon: "fa-light fa-circle";
3058
+ readonly color: "secondary";
3059
+ readonly description: string;
3060
+ readonly order: 1;
3061
+ readonly isInitial: true;
3062
+ readonly isFinal: false;
3063
+ };
3064
+ readonly Closed: {
3065
+ readonly name: AXPSystemStatusType.Closed;
3066
+ readonly title: string;
3067
+ readonly icon: "fa-light fa-circle";
3068
+ readonly color: "danger";
3069
+ readonly description: string;
3070
+ readonly order: 2;
3071
+ readonly isInitial: false;
3072
+ readonly isFinal: true;
3073
+ };
3074
+ readonly Todo: {
3075
+ readonly name: AXPSystemStatusType.Todo;
3076
+ readonly title: string;
3077
+ readonly icon: "fa-light fa-circle";
3078
+ readonly color: "secondary";
3079
+ readonly description: string;
3080
+ readonly order: 1;
3081
+ readonly isInitial: true;
3082
+ readonly isFinal: false;
3083
+ };
3084
+ readonly InProgress: {
3085
+ readonly name: AXPSystemStatusType.InProgress;
3086
+ readonly title: string;
3087
+ readonly icon: "fa-light fa-play";
3088
+ readonly color: "info";
3089
+ readonly description: string;
3090
+ readonly order: 2;
3091
+ readonly isInitial: false;
3092
+ readonly isFinal: false;
3093
+ };
3094
+ readonly InReview: {
3095
+ readonly name: AXPSystemStatusType.InReview;
3096
+ readonly title: string;
3097
+ readonly icon: "fa-light fa-eye";
3098
+ readonly color: "info";
3099
+ readonly description: string;
3100
+ readonly order: 3;
3101
+ readonly isInitial: false;
3102
+ readonly isFinal: false;
3103
+ };
3104
+ readonly Blocked: {
3105
+ readonly name: AXPSystemStatusType.Blocked;
3106
+ readonly title: string;
3107
+ readonly icon: "fa-light fa-ban";
3108
+ readonly color: "danger";
3109
+ readonly description: string;
3110
+ readonly order: 4;
3111
+ readonly isInitial: false;
3112
+ readonly isFinal: false;
3113
+ };
3114
+ readonly Done: {
3115
+ readonly name: AXPSystemStatusType.Done;
3116
+ readonly title: string;
3117
+ readonly icon: "fa-light fa-check-circle";
3118
+ readonly color: "success";
3119
+ readonly description: string;
3120
+ readonly order: 5;
3121
+ readonly isInitial: false;
3122
+ readonly isFinal: true;
3123
+ };
3124
+ readonly Cancelled: {
3125
+ readonly name: AXPSystemStatusType.Cancelled;
3126
+ readonly title: string;
3127
+ readonly icon: "fa-light fa-times-circle";
3128
+ readonly color: "neutral";
3129
+ readonly description: string;
3130
+ readonly order: 6;
3131
+ readonly isInitial: false;
3132
+ readonly isFinal: true;
3133
+ };
3134
+ readonly Draft: {
3135
+ readonly name: AXPSystemStatusType.Draft;
3136
+ readonly title: string;
3137
+ readonly icon: "fa-light fa-file-pen";
3138
+ readonly color: "neutral";
3139
+ readonly description: string;
3140
+ readonly order: 1;
3141
+ readonly isInitial: true;
3142
+ readonly isFinal: false;
3143
+ };
3144
+ readonly PendingReview: {
3145
+ readonly name: AXPSystemStatusType.PendingReview;
3146
+ readonly title: string;
3147
+ readonly icon: "fa-light fa-clock";
3148
+ readonly color: "warning";
3149
+ readonly description: string;
3150
+ readonly order: 2;
3151
+ readonly isInitial: false;
3152
+ readonly isFinal: false;
3153
+ };
3154
+ readonly WaitingSignOff: {
3155
+ readonly name: AXPSystemStatusType.WaitingSignOff;
3156
+ readonly title: string;
3157
+ readonly icon: "fa-light fa-clock";
3158
+ readonly color: "warning";
3159
+ readonly description: string;
3160
+ readonly order: 3;
3161
+ readonly isInitial: false;
3162
+ readonly isFinal: false;
3163
+ };
3164
+ readonly WaitingApproval: {
3165
+ readonly name: AXPSystemStatusType.WaitingApproval;
3166
+ readonly title: string;
3167
+ readonly icon: "fa-light fa-clock";
3168
+ readonly color: "warning";
3169
+ readonly description: string;
3170
+ readonly order: 1;
3171
+ readonly isInitial: true;
3172
+ readonly isFinal: false;
3173
+ };
3174
+ readonly Approved: {
3175
+ readonly name: AXPSystemStatusType.Approved;
3176
+ readonly title: string;
3177
+ readonly icon: "fa-light fa-check-circle";
3178
+ readonly color: "success";
3179
+ readonly description: string;
3180
+ readonly order: 3;
3181
+ readonly isInitial: false;
3182
+ readonly isFinal: false;
3183
+ };
3184
+ readonly Published: {
3185
+ readonly name: AXPSystemStatusType.Published;
3186
+ readonly title: string;
3187
+ readonly icon: "fa-light fa-globe";
3188
+ readonly color: "primary";
3189
+ readonly description: string;
3190
+ readonly order: 4;
3191
+ readonly isInitial: false;
3192
+ readonly isFinal: false;
3193
+ };
3194
+ readonly Archived: {
3195
+ readonly name: AXPSystemStatusType.Archived;
3196
+ readonly title: string;
3197
+ readonly icon: "fa-light fa-archive";
3198
+ readonly color: "danger";
3199
+ readonly description: string;
3200
+ readonly order: 5;
3201
+ readonly isInitial: false;
3202
+ readonly isFinal: true;
3203
+ };
3204
+ readonly Rejected: {
3205
+ readonly name: AXPSystemStatusType.Rejected;
3206
+ readonly title: string;
3207
+ readonly icon: "fa-light fa-times-circle";
3208
+ readonly color: "danger";
3209
+ readonly description: string;
3210
+ readonly order: 6;
3211
+ readonly isInitial: false;
3212
+ readonly isFinal: true;
3213
+ };
3214
+ readonly Active: {
3215
+ readonly name: AXPSystemStatusType.Active;
3216
+ readonly title: string;
3217
+ readonly icon: "fa-light fa-check-circle";
3218
+ readonly color: "success";
3219
+ readonly description: string;
3220
+ readonly order: 1;
3221
+ readonly isInitial: false;
3222
+ readonly isFinal: false;
3223
+ };
3224
+ readonly Inactive: {
3225
+ readonly name: AXPSystemStatusType.Inactive;
3226
+ readonly title: string;
3227
+ readonly icon: "fa-light fa-circle";
3228
+ readonly color: "secondary";
3229
+ readonly description: string;
3230
+ readonly order: 2;
3231
+ readonly isInitial: false;
3232
+ readonly isFinal: false;
3233
+ };
3234
+ readonly Pending: {
3235
+ readonly name: AXPSystemStatusType.Pending;
3236
+ readonly title: string;
3237
+ readonly icon: "fa-light fa-clock";
3238
+ readonly color: "warning";
3239
+ readonly description: string;
3240
+ readonly order: 1;
3241
+ readonly isInitial: true;
3242
+ readonly isFinal: false;
3243
+ };
3244
+ readonly Completed: {
3245
+ readonly name: AXPSystemStatusType.Completed;
3246
+ readonly title: string;
3247
+ readonly icon: "fa-light fa-check-circle";
3248
+ readonly color: "success";
3249
+ readonly description: string;
3250
+ readonly order: 10;
3251
+ readonly isInitial: false;
3252
+ readonly isFinal: true;
3253
+ };
3254
+ readonly Suspended: {
3255
+ readonly name: AXPSystemStatusType.Suspended;
3256
+ readonly title: string;
3257
+ readonly icon: "fa-light fa-pause-circle";
3258
+ readonly color: "neutral";
3259
+ readonly description: string;
3260
+ readonly order: 5;
3261
+ readonly isInitial: false;
3262
+ readonly isFinal: false;
3263
+ };
3264
+ readonly Failed: {
3265
+ readonly name: AXPSystemStatusType.Failed;
3266
+ readonly title: string;
3267
+ readonly icon: "fa-light fa-xmark-circle";
3268
+ readonly color: "danger";
3269
+ readonly description: string;
3270
+ readonly order: 10;
3271
+ readonly isInitial: false;
3272
+ readonly isFinal: true;
3273
+ };
3274
+ readonly Review: {
3275
+ readonly name: AXPSystemStatusType.Review;
3276
+ readonly title: string;
3277
+ readonly icon: "fa-light fa-eye";
3278
+ readonly color: "info";
3279
+ readonly description: string;
3280
+ readonly order: 3;
3281
+ };
3282
+ readonly Expired: {
3283
+ readonly name: AXPSystemStatusType.Expired;
3284
+ readonly title: string;
3285
+ readonly icon: "fa-light fa-clock";
3286
+ readonly color: "danger";
3287
+ readonly description: string;
3288
+ readonly order: 10;
3289
+ readonly isInitial: false;
3290
+ readonly isFinal: true;
3291
+ };
3292
+ }>;
2578
3293
  /**
2579
- * Returns true when the URL represents an in-app page that may appear in the tab bar.
3294
+ * Get system status definition by type
3295
+ * @param type - Status type
3296
+ * @returns System status definition or undefined
2580
3297
  */
2581
- declare function axpIsTabEligibleUrl(url: string): boolean;
2582
-
2583
- /** True when the route declares itself as a scoped tab root (`data.tab = true`). */
2584
- declare function axpHasTabScope(data: Record<string, unknown> | undefined): boolean;
2585
- /** Resolved URL path for a snapshot (no query or fragment). */
2586
- declare function axpPathFromSnapshot(snapshot: ActivatedRouteSnapshot): string;
2587
- /** Returns the leaf snapshot under the router state root. */
2588
- declare function axpGetLeafRouteSnapshot(root: ActivatedRouteSnapshot): ActivatedRouteSnapshot;
3298
+ declare function getSystemStatus(type: AXPSystemStatusType): AXPStatusDefinition;
2589
3299
  /**
2590
- * Resolves the tab dedupe key from an activated route tree.
2591
- * Uses the nearest ancestor with `data.tab = true`; otherwise the leaf path.
3300
+ * Resolves the visual appearance (color and icon) for status
3301
+ * using the system statuses from the core module.
3302
+ * @param statusType - Status type string
3303
+ * @returns Color and icon for the status
2592
3304
  */
2593
- declare function axpResolveTabKeyFromSnapshot(leaf: ActivatedRouteSnapshot): string;
3305
+ declare function resolveStatusLook(statusType: string): {
3306
+ color: AXStyleColorType;
3307
+ icon: string;
3308
+ };
2594
3309
  /**
2595
- * Resolves a tab key for the given URL (or the current router URL).
2596
- * Prefers the live route snapshot when it matches the target URL; otherwise matches route config.
3310
+ * Resolves the complete status information (title, description, icon, color) for a status
3311
+ * using the system statuses from the core module.
3312
+ * @param statusType - Status type string
3313
+ * @returns Complete status information as AXPStatusDefinition
2597
3314
  */
2598
- declare function axpResolveTabKey(router: Router, url?: string): string;
3315
+ declare function getStatusInfo(statusType: string): AXPStatusDefinition;
2599
3316
  /**
2600
- * Matches a URL path against registered routes and resolves the tab key from `data.tab`.
3317
+ * Get system status definition directly (no conversion needed since it's already AXPStatusDefinition)
3318
+ * @param statusType - Status type
3319
+ * @param overrides - Optional overrides for the status definition
3320
+ * @returns AXPStatusDefinition
2601
3321
  */
2602
- declare function axpResolveTabKeyFromRouteConfig(routes: Routes, pathOnly: string): string | null;
3322
+ declare function systemStatusToDefinition(statusType: AXPSystemStatusType, overrides?: Partial<AXPStatusDefinition>): AXPStatusDefinition;
2603
3323
 
2604
3324
  interface AXPTokenDefinition {
2605
3325
  name: string;
@@ -2902,7 +3622,6 @@ declare const AXPReloadEvent: {
2902
3622
  };
2903
3623
  declare class AXPWorkflowNavigateAction extends AXPWorkflowAction {
2904
3624
  private router;
2905
- private tabNavigation;
2906
3625
  execute(context: AXPWorkflowContext): Promise<void>;
2907
3626
  static ɵfac: i0.ɵɵFactoryDeclaration<AXPWorkflowNavigateAction, never>;
2908
3627
  static ɵprov: i0.ɵɵInjectableDeclaration<AXPWorkflowNavigateAction>;
@@ -2936,7 +3655,7 @@ declare class AXPReloadAction extends AXPWorkflowAction {
2936
3655
  }
2937
3656
 
2938
3657
  declare class AXPWorkflowRouterNavigateAction extends AXPWorkflowAction {
2939
- private readonly tabNavigation;
3658
+ private router;
2940
3659
  execute(context: AXPWorkflowContext): Promise<void>;
2941
3660
  static ɵfac: i0.ɵɵFactoryDeclaration<AXPWorkflowRouterNavigateAction, never>;
2942
3661
  static ɵprov: i0.ɵɵInjectableDeclaration<AXPWorkflowRouterNavigateAction>;
@@ -2950,5 +3669,5 @@ declare class AXMWorkflowErrorHandler implements AXPErrorHandler {
2950
3669
  static ɵprov: i0.ɵɵInjectableDeclaration<AXMWorkflowErrorHandler>;
2951
3670
  }
2952
3671
 
2953
- export { ALL_DEFAULT_OPERATORS, AXMWorkflowErrorHandler, AXPAppVersionService, AXPBackgroundOperationCompletionService, AXPBackgroundOperationEntityStoreService, AXPBackgroundOperationHandler, AXPBackgroundOperationNotificationService, AXPBackgroundOperationProvider, AXPBackgroundOperationRootConfig, AXPBackgroundOperationService, AXPBackgroundOperationSlotComponent, AXPCleanNestedFilters, AXPClipBoardService, AXPCommonModule, AXPCommonSettings, AXPCustomOperatorService, AXPCustomOperatorServiceImpl, AXPDataProvider, AXPDebugService, AXPDefaultMultiLanguageConfigService, AXPDialogConfirmAction, AXPErrorHandlerRegistryService, AXPExportService, AXPFileActionsService, AXPFileStorageEvaluatorScopeProvider, AXPFileStorageService, AXPFileTypeProviderService, AXPFilterOperatorMiddlewareService, AXPFilterOperatorMiddlewareServiceImpl, AXPFooterTextSlotComponent, AXPGlobalErrorHandler, AXPHomePageModule, AXPHomePageService, AXPKeyboardShortcutsHelpComponent, AXPKeyboardShortcutsHelpService, AXPLockService, AXPMenuItemsDataSourceDefinition, AXPMenuKeyboardShortcutService, AXPMenuMiddlewareRegistry, AXPMenuProviderService, AXPMenuRouteAccessService, AXPMenuRouteGuard, AXPMenuSearchDefinitionProvider, AXPMenuSearchProvider, AXPMenuService, AXPMenuVisibilityService, AXPNavBarSlotComponent, AXPNavigateWorkflow, AXPNotFoundCatchAllRoute, AXPNotFoundError, AXPOutputContractTranscriptSegmentService, AXPPlatformCommonDataSourceKeys, AXPPlatformDefaultConfigs, AXPRedirectEvent, AXPRefreshEvent, AXPRegionalCalendarService, AXPReloadAction, AXPReloadEvent, AXPSearchCommandProvider, AXPSearchDefinitionActionBuilder, AXPSearchDefinitionBuilder, AXPSearchDefinitionProviderContext, AXPSearchDefinitionProviderService, AXPSearchService, AXPSettingDefaultValuesAggregatorService, AXPSettingDefinitionGroupBuilder, AXPSettingDefinitionProviderContext, AXPSettingDefinitionProviderService, AXPSettingDefinitionSectionBuilder, AXPSettingsEvaluatorScopeProvider, AXPSettingsService, AXPStatusDefinitionProviderService, AXPStickyDirective, AXPTabNavigationService, AXPTabPreviewService, AXPTabRouteCacheRegistry, AXPToastAction, AXPTokenDefinitionService, AXPTokenEvaluatorScopeProvider, AXPTranslateFormatter, AXPUnsavedChangesConfirmService, AXPUnsavedChangesPopstateService, AXPVersioningService, AXPWorkflowNavigateAction, AXPWorkflowRouterNavigateAction, AXP_AGENT_OUTPUT_CONTRACT_DEFAULT_STRUCTURED_RETRIES, AXP_APP_VERSION_PROVIDER, AXP_BACKGROUND_OPERATION_ENTITY_STORAGE, AXP_BACKGROUND_OPERATION_HANDLERS, AXP_BACKGROUND_OPERATION_PROVIDERS, AXP_FILE_ACTION_PROVIDER, AXP_FILE_TYPE_INFO_PROVIDER, AXP_HOME_PAGES, AXP_HOME_PAGE_DEFAULT_KEY, AXP_HOME_TAB_KEY, AXP_IN_APP_NOTIFICATION_SERVICE, AXP_LOCALE_MANAGEMENT_PORT, AXP_MENU_MIDDLEWARE, AXP_MENU_PROVIDER, AXP_NOT_FOUND_CATCH_ALL_ROUTE, AXP_NOT_FOUND_ROUTE, AXP_OUTPUT_CONTRACT_TRANSCRIPT_SEGMENT_PROVIDER, AXP_PLATFORM_CONFIG_TOKEN, AXP_PROTECTED_ROUTE_GUARDS, AXP_ROOT_CONFIG_TOKEN, AXP_SEARCH_DEFINITION_LAZY_RESOLVER, AXP_SEARCH_DEFINITION_PROVIDER, AXP_SEARCH_PROVIDER, AXP_SETTING_DEFAULT_VALUES_PROVIDERS, AXP_SETTING_DEFINITION_PROVIDER, AXP_SETTING_VALUE_PROVIDER, AXP_STATUS_PROVIDERS, AXP_TAB_ROUTE_DATA_KEY, AXP_TOKEN_DEFINITION_PROVIDER, AXP_UNAUTHORIZED_ROUTE, AXVChangeType, BETWEEN_OPER, BOOLEAN_OPERATORS, CONTAINS_OPER, DATE_OPERATORS, DEFAULT_DATE_FILTER_PRESETS, DEFAULT_MULTILANGUAGE_FIELD_NAMES, ENDS_WITH_OPER, ENTITY_LAYOUT_SINGLE_TITLE_PATH, ENTITY_ROW_POPUP_TITLE_OPTION, ENTITY_ROW_TITLE_TEMPLATE_OPTION, ENVIRONMENT, EQ_OPER, GTE_OPER, GT_OPER, IN_OPER, IS_EMPTY_OPER, IS_NOT_EMPTY_OPER, LTE_OPER, LT_OPER, MULTILANGUAGE_CAPABLE_WIDGET_TYPES, NOT_CONTAINS_OPER, NOT_EQ_OPER, NUMBER_OPERATORS, STARTS_WITH_OPER, STRING_OPERATORS, UploadFromComputerActionProvider, applyDateFilterPreset, axpBackgroundOperationCapabilities, axpBackgroundOperationDisplayTime, axpBackgroundOperationEntityName, axpBackgroundOperationEstimateEndDate, axpBackgroundOperationFailurePolicy, axpBackgroundOperationFromEntityModel, axpBackgroundOperationRemainingMs, axpBackgroundOperationToEntityModel, axpBuildBackgroundOperation, axpBuildTabKey, axpCoerceBackgroundOperationDate, axpCreateBackgroundOperationId, axpFallbackTabTitle, axpFindMenuItemByRoute, axpGetLeafRouteSnapshot, axpHasTabScope, axpIsActiveBackgroundOperationStatus, axpIsCompletedBackgroundOperationStatus, axpIsEntityDetailsPath, axpIsEntityDetailsViewRoute, axpIsEntityListPath, axpIsEntityListRoute, axpIsEntityRecordNotFound, axpIsTabEligibleUrl, axpMenuPathsMatch, axpNavigateAppPath, axpParseAppPath, axpPathFromSnapshot, axpRedirectToNotFound, axpRedirectToUnauthorized, axpReplaceEntityListRouteQueryParams, axpResolveTabKey, axpResolveTabKeyFromRouteConfig, axpResolveTabKeyFromSnapshot, backgroundOperationEntityFactory, buildEntitySearchTitleContext, coerceAXPSettingRawValue, coerceAXPSettingRawValueByKind, configPlatform, createBackgroundOperationStore, createEntityCommandOptions, createEntityRowExpressionScope, createEntitySearchCommand, createMenuContext, createMenuMiddleware, createUnsavedChangesCanDeactivateGuard, downloadGraphicFromElement, evaluateEntityDisplayTemplate, findManualPresetIdByOperation, formatEntityRowDisplayTitle, inferSettingCoercionKind, isMeaningfulEntityDisplayTitle, isUnresolvedEntityDisplayTemplate, normalizeEntityDisplayTemplate, normalizePositiveNumberOption, normalizeRouterUrl, peelSettingValueKey, printGraphicFromElement, provideDynamicHomePage, provideMenuMiddleware, resolveDateFilterPresets, resolveEntityModifyPopupTitle, resolveEntityModifyRecordTitleTemplate, resolveEntityRowDisplayText, resolveEntityRowDisplayTitle, resolveEntityRowDisplayTitleFromColumnContext, resolveEntityRowTitleTemplate, resolveEntitySearchTitleFallback, resolveGraphicElementSize, resolveGraphicPrintContent, resolveQueryMatchingDisplayText, resolveSearchDisplayTemplate, resolveSearchableText, sanitizeResolvedEntityDisplayTitle, searchInRecordValues, searchInSearchableValue, serializeSvgElement, shouldApplyDefaultMultiLanguageToEntityProperty, shouldApplyDefaultMultiLanguageToWidgetNode, shouldApplyDefaultMultiLanguageToWidgetProperty, triggerBrowserDownload, withDefaultMultiLanguageOnWidgetNodeTree, withDefaultMultiLanguageOnWidgetProperty };
2954
- export type { AXCFileUploaderAction, AXCFileUploaderActionsPayload, AXCFileUploaderCapabilities, AXPAgentOutputContract, AXPAgentResponseFormat, AXPAppPathParts, AXPAppVersion, AXPAppVersionProvider, AXPBackgroundOperation, AXPBackgroundOperationActionKey, AXPBackgroundOperationCapabilities, AXPBackgroundOperationCreateRequest, AXPBackgroundOperationEntityModel, AXPBackgroundOperationEntityStorageAdapter, AXPBackgroundOperationError, AXPBackgroundOperationFailureMode, AXPBackgroundOperationFailurePolicy, AXPBackgroundOperationProviderStore, AXPBackgroundOperationStatus, AXPCommonModuleConfigs, AXPCurrency, AXPDateTimeFilterPreset, AXPDateTimeFilterPresetKind, AXPDateTimeFilterValue, AXPDomToImageOptions, AXPEntitySearchTitleContext, AXPErrorHandler, AXPFileActionProvider, AXPFileActionProviderToken, AXPFileExtension, AXPFileType, AXPFileTypeInfoProvider, AXPFilterOperator, AXPGeoLocation, AXPGraphicDownloadFormat, AXPGraphicDownloadOptions, AXPGraphicPrintContent, AXPGroupSearchResult, AXPHomePageDefinition, AXPInAppNotificationCreateRequest, AXPInAppNotificationPriority, AXPInAppNotificationService, AXPJsonSchemaLike, AXPLanguage, AXPLocaleManagementPort, AXPLocaleProfile, AXPLockGetInfoRequest, AXPLockInfo, AXPLockRequest, AXPLockType, AXPMenuFinderResult, AXPMenuInsertion, AXPMenuItem, AXPMenuItemCommand, AXPMenuItemFinder, AXPMenuItemWithParent, AXPMenuMiddleware, AXPMenuMiddlewareContext, AXPMenuMiddlewareProvider, AXPMenuProvider, AXPMenuProviderContext, AXPMenuRouteMatchResult, AXPMenuType, AXPNavigationMode, AXPOutputContractTranscriptSegmentDefinition, AXPOutputContractTranscriptSegmentProvider, AXPOutputContractTranscriptSegmentProviderToken, AXPPlatformConfigs, AXPPrintGraphicOptions, AXPResolveEntityRowDisplayTitleOptions, AXPRootConfigs, AXPSearchAction, AXPSearchDefinition, AXPSearchDefinitionDisplayFormat, AXPSearchDefinitionLazyResolver, AXPSearchDefinitionProvider, AXPSearchDisplayGroupResult, AXPSearchDisplayResult, AXPSearchDisplayResultForSave, AXPSearchParentResult, AXPSearchProvider, AXPSearchResult, AXPSettingChangedEvent, AXPSettingCoercionKind, AXPSettingDefaultValuesProvider, AXPSettingDefinition, AXPSettingDefinitionGroup, AXPSettingDefinitionProvider, AXPSettingDefinitionSection, AXPSettingLayoutOptions, AXPSettingMergedDefaults, AXPSettingValue, AXPSettingValueProvider, AXPSettingsServiceInterface, AXPTabCloseConfirm, AXPTabDescriptor, AXPTabRouteData, AXPTabSessionState, AXPTabStructuredPreview, AXPTimeZone, AXPTokenDefinition, AXPTokenDefinitionProvider, AXPTokenDefinitionProviderToken, AXPTranslateFormatterOptions, AXPUnLockRequest, AXPUnsavedChangesCanDeactivate, AXPUnsavedChangesConfirmOptions, AXPUnsavedChangesPopstateSource, AXPVersionChange, AXPVersionEntry, AXPVersionStream, CanonicalChange, CanonicalChangeOp, VersionedFileInfo };
3672
+ export { ALL_DEFAULT_OPERATORS, AXMWorkflowErrorHandler, AXPAppVersionService, AXPBackgroundOperationCompletionService, AXPBackgroundOperationEntityStoreService, AXPBackgroundOperationHandler, AXPBackgroundOperationNotificationService, AXPBackgroundOperationProvider, AXPBackgroundOperationRootConfig, AXPBackgroundOperationService, AXPBackgroundOperationSlotComponent, AXPCleanNestedFilters, AXPClipBoardService, AXPCommonModule, AXPCommonSettings, AXPCustomOperatorService, AXPCustomOperatorServiceImpl, AXPDataProvider, AXPDebugService, AXPDefaultMultiLanguageConfigService, AXPDialogConfirmAction, AXPEntityCommandScope, AXPEntityQueryType, AXPEntityType, AXPErrorHandlerRegistryService, AXPExportService, AXPFileActionsService, AXPFileStorageEvaluatorScopeProvider, AXPFileStorageService, AXPFileTypeProviderService, AXPFilterOperatorMiddlewareService, AXPFilterOperatorMiddlewareServiceImpl, AXPFooterTextSlotComponent, AXPGlobalErrorHandler, AXPHomePageModule, AXPHomePageService, AXPKeyboardShortcutsHelpComponent, AXPKeyboardShortcutsHelpService, AXPLockService, AXPMenuItemsDataSourceDefinition, AXPMenuKeyboardShortcutService, AXPMenuMiddlewareRegistry, AXPMenuProviderService, AXPMenuRouteAccessService, AXPMenuRouteGuard, AXPMenuSearchDefinitionProvider, AXPMenuSearchProvider, AXPMenuService, AXPMenuVisibilityService, AXPNavBarSlotComponent, AXPNavigateWorkflow, AXPNotFoundCatchAllRoute, AXPNotFoundError, AXPOutputContractTranscriptSegmentService, AXPPlatformCommonDataSourceKeys, AXPPlatformDefaultConfigs, AXPRedirectEvent, AXPRefreshEvent, AXPRegionalCalendarService, AXPRegionalSetting, AXPRelationshipCardinality, AXPRelationshipKind, AXPReloadAction, AXPReloadEvent, AXPSearchCommandProvider, AXPSearchDefinitionActionBuilder, AXPSearchDefinitionBuilder, AXPSearchDefinitionProviderContext, AXPSearchDefinitionProviderService, AXPSearchService, AXPSettingDefaultValuesAggregatorService, AXPSettingDefinitionGroupBuilder, AXPSettingDefinitionProviderContext, AXPSettingDefinitionProviderService, AXPSettingDefinitionSectionBuilder, AXPSettingsEvaluatorScopeProvider, AXPSettingsService, AXPStatusDefinitionProviderService, AXPStatusProvider, AXPStickyDirective, AXPSystemStatusType, AXPSystemStatuses, AXPToastAction, AXPTokenDefinitionService, AXPTokenEvaluatorScopeProvider, AXPUnsavedChangesConfirmService, AXPUnsavedChangesPopstateService, AXPVersioningService, AXPWorkflowNavigateAction, AXPWorkflowRouterNavigateAction, AXP_AGENT_OUTPUT_CONTRACT_DEFAULT_STRUCTURED_RETRIES, AXP_APP_VERSION_PROVIDER, AXP_BACKGROUND_OPERATION_ENTITY_STORAGE, AXP_BACKGROUND_OPERATION_HANDLERS, AXP_BACKGROUND_OPERATION_PROVIDERS, AXP_FILE_ACTION_PROVIDER, AXP_FILE_TYPE_INFO_PROVIDER, AXP_HOME_PAGES, AXP_HOME_PAGE_DEFAULT_KEY, AXP_IN_APP_NOTIFICATION_SERVICE, AXP_LOCALE_MANAGEMENT_PORT, AXP_MENU_MIDDLEWARE, AXP_MENU_PROVIDER, AXP_NOT_FOUND_CATCH_ALL_ROUTE, AXP_NOT_FOUND_ROUTE, AXP_OUTPUT_CONTRACT_TRANSCRIPT_SEGMENT_PROVIDER, AXP_PLATFORM_CONFIG_TOKEN, AXP_PROTECTED_ROUTE_GUARDS, 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, AXP_UNAUTHORIZED_ROUTE, AXVChangeType, BETWEEN_OPER, BOOLEAN_OPERATORS, CONTAINS_OPER, DATE_OPERATORS, DEFAULT_DATE_FILTER_PRESETS, DEFAULT_MULTILANGUAGE_FIELD_NAMES, ENDS_WITH_OPER, ENTITY_LAYOUT_SINGLE_TITLE_PATH, ENTITY_ROW_POPUP_TITLE_OPTION, ENTITY_ROW_TITLE_TEMPLATE_OPTION, ENVIRONMENT, EQ_OPER, GTE_OPER, GT_OPER, IN_OPER, IS_EMPTY_OPER, IS_NOT_EMPTY_OPER, LTE_OPER, LT_OPER, MULTILANGUAGE_CAPABLE_WIDGET_TYPES, NOT_CONTAINS_OPER, NOT_EQ_OPER, NUMBER_OPERATORS, STARTS_WITH_OPER, STRING_OPERATORS, UploadFromComputerActionProvider, applyDateFilterPreset, axpBackgroundOperationCapabilities, axpBackgroundOperationDisplayTime, axpBackgroundOperationEntityName, axpBackgroundOperationEstimateEndDate, axpBackgroundOperationFailurePolicy, axpBackgroundOperationFromEntityModel, axpBackgroundOperationRemainingMs, axpBackgroundOperationToEntityModel, axpBuildBackgroundOperation, axpCoerceBackgroundOperationDate, axpCreateBackgroundOperationId, axpFindMenuItemByRoute, axpIsActiveBackgroundOperationStatus, axpIsCompletedBackgroundOperationStatus, axpIsEntityDetailsPath, axpIsEntityDetailsViewRoute, axpIsEntityListPath, axpIsEntityListRoute, axpIsEntityRecordNotFound, axpMenuPathsMatch, axpNavigateAppPath, axpParseAppPath, axpRedirectToNotFound, axpRedirectToUnauthorized, axpReplaceEntityListRouteQueryParams, backgroundOperationEntityFactory, buildEntitySearchTitleContext, coerceAXPSettingRawValue, coerceAXPSettingRawValueByKind, configPlatform, createAllQueryView, createBackgroundOperationStore, createEntityCommandOptions, createEntityRowExpressionScope, createEntitySearchCommand, createMenuContext, createMenuMiddleware, createQueryView, createUnsavedChangesCanDeactivateGuard, downloadGraphicFromElement, evaluateEntityDisplayTemplate, findManualPresetIdByOperation, formatEntityRowDisplayTitle, getEntityInfo, getStatusInfo, getSystemStatus, inferSettingCoercionKind, isCardFieldBadgeDisplay, isMeaningfulEntityDisplayTitle, isUnresolvedEntityDisplayTemplate, normalizeEntityDisplayTemplate, normalizePositiveNumberOption, peelSettingValueKey, printGraphicFromElement, provideDynamicHomePage, provideMenuMiddleware, resolveCardFieldBadgeColor, resolveDateFilterPresets, resolveDefaultMasterListLayout, resolveEnabledMasterListLayouts, resolveEntityRowDisplayText, resolveEntityRowDisplayTitle, resolveEntityRowDisplayTitleFromColumnContext, resolveEntityRowTitleTemplate, resolveEntitySearchTitleFallback, resolveGraphicElementSize, resolveGraphicPrintContent, resolveQueryMatchingDisplayText, resolveSearchDisplayTemplate, resolveSearchableText, resolveStatusLook, sanitizeResolvedEntityDisplayTitle, searchInRecordValues, searchInSearchableValue, serializeSvgElement, shouldApplyDefaultMultiLanguageToEntityProperty, shouldApplyDefaultMultiLanguageToWidgetNode, shouldApplyDefaultMultiLanguageToWidgetProperty, systemStatusToDefinition, triggerBrowserDownload, withDefaultMultiLanguageOnWidgetNodeTree, withDefaultMultiLanguageOnWidgetProperty };
3673
+ export type { AXCFileUploaderAction, AXCFileUploaderActionsPayload, AXCFileUploaderCapabilities, AXEntityPropertyWidget, AXPAgentOutputContract, AXPAgentOutputKind, AXPAgentResponseFormat, AXPAggregate, AXPAppPathParts, AXPAppVersion, AXPAppVersionProvider, AXPApplication, AXPBackgroundOperation, AXPBackgroundOperationActionKey, AXPBackgroundOperationCapabilities, AXPBackgroundOperationCreateRequest, AXPBackgroundOperationEntityModel, AXPBackgroundOperationEntityStorageAdapter, AXPBackgroundOperationError, AXPBackgroundOperationFailureMode, AXPBackgroundOperationFailurePolicy, AXPBackgroundOperationProviderStore, AXPBackgroundOperationStatus, AXPCardBadgeColor, AXPCardBadgeDisplay, AXPCardBadgeDisplayOptions, AXPCardField, AXPCardFieldDisplay, AXPCardFieldDisplayConfig, AXPCategoryEntity, AXPColumnAlign, AXPColumnContentAlign, AXPCommandActionCallback, AXPCommandActionDisplay, AXPCommandActionLook, AXPCommandActionPriority, AXPCommandActionType, AXPCommonModuleConfigs, AXPCurrency, AXPDateTimeFilterPreset, AXPDateTimeFilterPresetKind, AXPDateTimeFilterValue, AXPDomToImageOptions, AXPEntity, AXPEntityAction, AXPEntityCommand, AXPEntityDetailListView, AXPEntityDisplayField, AXPEntityMasterCreateLayoutView, AXPEntityMasterLayoutView, AXPEntityMasterListDisplayMode, AXPEntityMasterListLayoutOption, AXPEntityMasterListLayoutType, AXPEntityMasterListView, AXPEntityMasterSingleLayoutView, AXPEntityMasterUpdateLayoutView, AXPEntityPage, AXPEntityProperty, AXPEntityPropertyCreateView, AXPEntityPropertyGroup, AXPEntityPropertyLayoutConfig, AXPEntityPropertyUpdateView, AXPEntityPropertyView, AXPEntityQuery, AXPEntityQuickCreate, AXPEntitySearchTitleContext, AXPEntitySectionView, AXPEntityTableColumn, AXPEntityV2, AXPEntityVersionHistory, AXPErrorHandler, AXPFileActionProvider, AXPFileActionProviderToken, AXPFileExtension, AXPFileType, AXPFileTypeInfoProvider, AXPFilterOperator, AXPGeoLocation, AXPGraphicDownloadFormat, AXPGraphicDownloadOptions, AXPGraphicPrintContent, AXPGroupSearchResult, AXPHomePageDefinition, AXPInAppNotificationCreateRequest, AXPInAppNotificationPriority, AXPInAppNotificationService, AXPJsonSchemaLike, AXPLanguage, AXPLocaleManagementPort, AXPLocaleProfile, AXPLockGetInfoRequest, AXPLockInfo, AXPLockRequest, AXPLockType, AXPMenuFinderResult, AXPMenuInsertion, AXPMenuItem, AXPMenuItemCommand, AXPMenuItemFinder, AXPMenuItemWithParent, AXPMenuMiddleware, AXPMenuMiddlewareContext, AXPMenuMiddlewareProvider, AXPMenuProvider, AXPMenuProviderContext, AXPMenuRouteMatchResult, AXPMenuType, AXPModule, AXPOutputContractTranscriptSegmentDefinition, AXPOutputContractTranscriptSegmentProvider, AXPOutputContractTranscriptSegmentProviderToken, AXPOutputTranscriptSegmentId, AXPPlatformConfigs, AXPPrintGraphicOptions, AXPQueryFilter, AXPQuerySort, AXPQueryView, AXPRelatedEntity, AXPRelationship, AXPResolveEntityRowDisplayTitleOptions, AXPRootConfigs, AXPSearchAction, AXPSearchDefinition, AXPSearchDefinitionDisplayFormat, AXPSearchDefinitionProvider, AXPSearchDisplayGroupResult, AXPSearchDisplayResult, AXPSearchDisplayResultForSave, AXPSearchParentResult, AXPSearchProvider, AXPSearchResult, AXPSettingChangedEvent, AXPSettingCoercionKind, AXPSettingDefaultValuesProvider, AXPSettingDefinition, AXPSettingDefinitionGroup, AXPSettingDefinitionProvider, AXPSettingDefinitionSection, AXPSettingLayoutOptions, AXPSettingMergedDefaults, AXPSettingValue, AXPSettingValueProvider, AXPSettingsServiceInterface, AXPStatusDefinition, AXPStatusTransition, AXPTimeZone, AXPTokenDefinition, AXPTokenDefinitionProvider, AXPTokenDefinitionProviderToken, AXPUnLockRequest, AXPUnsavedChangesCanDeactivate, AXPUnsavedChangesConfirmOptions, AXPUnsavedChangesPopstateSource, AXPVersionChange, AXPVersionEntry, AXPVersionStream, CanonicalChange, CanonicalChangeOp, VersionedFileInfo };