@acorex-platform/framework-client 0.0.37 → 0.0.46

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 (104) hide show
  1. package/fesm2022/acorex-platform-framework-client-auth.mjs +212 -44
  2. package/fesm2022/acorex-platform-framework-client-auth.mjs.map +1 -1
  3. package/fesm2022/{acorex-platform-framework-client-common-common-settings.provider-CzBr0cRi.mjs → acorex-platform-framework-client-common-common-settings.provider-ChU2tvyt.mjs} +31 -1
  4. package/fesm2022/acorex-platform-framework-client-common-common-settings.provider-ChU2tvyt.mjs.map +1 -0
  5. package/fesm2022/acorex-platform-framework-client-common.mjs +848 -76
  6. package/fesm2022/acorex-platform-framework-client-common.mjs.map +1 -1
  7. package/fesm2022/acorex-platform-framework-client-core.mjs +273 -96
  8. package/fesm2022/acorex-platform-framework-client-core.mjs.map +1 -1
  9. package/fesm2022/acorex-platform-framework-client-layout-builder.mjs +292 -11
  10. package/fesm2022/acorex-platform-framework-client-layout-builder.mjs.map +1 -1
  11. package/fesm2022/{acorex-platform-framework-client-layout-components-binding-expression-editor-popup.component-Bp2cNCPO.mjs → acorex-platform-framework-client-layout-components-binding-expression-editor-popup.component-BqPaHKPM.mjs} +10 -6
  12. package/fesm2022/acorex-platform-framework-client-layout-components-binding-expression-editor-popup.component-BqPaHKPM.mjs.map +1 -0
  13. package/fesm2022/acorex-platform-framework-client-layout-components-property-viewer-inline-code-editor.component-CcpUTEVQ.mjs +66 -0
  14. package/fesm2022/acorex-platform-framework-client-layout-components-property-viewer-inline-code-editor.component-CcpUTEVQ.mjs.map +1 -0
  15. package/fesm2022/acorex-platform-framework-client-layout-components-resource-appointment-board.component-DCkpgsFH.mjs +195 -0
  16. package/fesm2022/acorex-platform-framework-client-layout-components-resource-appointment-board.component-DCkpgsFH.mjs.map +1 -0
  17. package/fesm2022/acorex-platform-framework-client-layout-components.mjs +3987 -1020
  18. package/fesm2022/acorex-platform-framework-client-layout-components.mjs.map +1 -1
  19. package/fesm2022/acorex-platform-framework-client-layout-designer.mjs +1179 -304
  20. package/fesm2022/acorex-platform-framework-client-layout-designer.mjs.map +1 -1
  21. package/fesm2022/{acorex-platform-framework-client-layout-entity-acorex-platform-framework-client-layout-entity-C74cBc-K.mjs → acorex-platform-framework-client-layout-entity-acorex-platform-framework-client-layout-entity-Dc_NpBx6.mjs} +1697 -323
  22. package/fesm2022/acorex-platform-framework-client-layout-entity-acorex-platform-framework-client-layout-entity-Dc_NpBx6.mjs.map +1 -0
  23. package/fesm2022/{acorex-platform-framework-client-layout-entity-attachments-page.component-B6nG9dIS.mjs → acorex-platform-framework-client-layout-entity-attachments-page.component-Cx-n7ZuA.mjs} +2 -2
  24. package/fesm2022/{acorex-platform-framework-client-layout-entity-attachments-page.component-B6nG9dIS.mjs.map → acorex-platform-framework-client-layout-entity-attachments-page.component-Cx-n7ZuA.mjs.map} +1 -1
  25. package/fesm2022/{acorex-platform-framework-client-layout-entity-bulk-entity.command-DLQA_Q2Y.mjs → acorex-platform-framework-client-layout-entity-bulk-entity.command-BONV249y.mjs} +2 -2
  26. package/fesm2022/{acorex-platform-framework-client-layout-entity-bulk-entity.command-DLQA_Q2Y.mjs.map → acorex-platform-framework-client-layout-entity-bulk-entity.command-BONV249y.mjs.map} +1 -1
  27. package/fesm2022/{acorex-platform-framework-client-layout-entity-gallery-page.component-B4wC1iqZ.mjs → acorex-platform-framework-client-layout-entity-gallery-page.component-uTG2nFly.mjs} +2 -2
  28. package/fesm2022/{acorex-platform-framework-client-layout-entity-gallery-page.component-B4wC1iqZ.mjs.map → acorex-platform-framework-client-layout-entity-gallery-page.component-uTG2nFly.mjs.map} +1 -1
  29. package/fesm2022/acorex-platform-framework-client-layout-entity.mjs +1 -1
  30. package/fesm2022/acorex-platform-framework-client-layout-views.mjs +3 -3
  31. package/fesm2022/acorex-platform-framework-client-layout-views.mjs.map +1 -1
  32. package/fesm2022/acorex-platform-framework-client-layout-widget-core.mjs +3854 -3278
  33. package/fesm2022/acorex-platform-framework-client-layout-widget-core.mjs.map +1 -1
  34. package/fesm2022/acorex-platform-framework-client-layout-widgets-acorex-platform-framework-client-layout-widgets-CDpzvn6z.mjs +33191 -0
  35. package/fesm2022/acorex-platform-framework-client-layout-widgets-acorex-platform-framework-client-layout-widgets-CDpzvn6z.mjs.map +1 -0
  36. package/fesm2022/{acorex-platform-framework-client-layout-widgets-button-widget-designer.component-BDOdcoyN.mjs → acorex-platform-framework-client-layout-widgets-button-widget-designer.component-BkrPu1wO.mjs} +8 -5
  37. package/fesm2022/acorex-platform-framework-client-layout-widgets-button-widget-designer.component-BkrPu1wO.mjs.map +1 -0
  38. package/fesm2022/acorex-platform-framework-client-layout-widgets-code-editor-value.util-Cb7R1qLO.mjs +45 -0
  39. package/fesm2022/acorex-platform-framework-client-layout-widgets-code-editor-value.util-Cb7R1qLO.mjs.map +1 -0
  40. package/fesm2022/acorex-platform-framework-client-layout-widgets-code-editor-widget-column.component-BL621E1r.mjs +68 -0
  41. package/fesm2022/acorex-platform-framework-client-layout-widgets-code-editor-widget-column.component-BL621E1r.mjs.map +1 -0
  42. package/fesm2022/acorex-platform-framework-client-layout-widgets-code-editor-widget-edit.component-CVsPKhNl.mjs +88 -0
  43. package/fesm2022/acorex-platform-framework-client-layout-widgets-code-editor-widget-edit.component-CVsPKhNl.mjs.map +1 -0
  44. package/fesm2022/acorex-platform-framework-client-layout-widgets-code-editor-widget-view.component-BEq4O4al.mjs +71 -0
  45. package/fesm2022/acorex-platform-framework-client-layout-widgets-code-editor-widget-view.component-BEq4O4al.mjs.map +1 -0
  46. package/fesm2022/acorex-platform-framework-client-layout-widgets-condition-builder-edit-popup.component-WpiEHusZ.mjs +81 -0
  47. package/fesm2022/acorex-platform-framework-client-layout-widgets-condition-builder-edit-popup.component-WpiEHusZ.mjs.map +1 -0
  48. package/fesm2022/{acorex-platform-framework-client-layout-widgets-page-widget-designer.component-WzIiwnGC.mjs → acorex-platform-framework-client-layout-widgets-page-widget-designer.component-Cadl6guA.mjs} +41 -23
  49. package/fesm2022/acorex-platform-framework-client-layout-widgets-page-widget-designer.component-Cadl6guA.mjs.map +1 -0
  50. package/fesm2022/{acorex-platform-framework-client-layout-widgets-repeater-widget-column.component-4mX8aYzA.mjs → acorex-platform-framework-client-layout-widgets-repeater-widget-column.component-Cw3NhWL8.mjs} +3 -3
  51. package/fesm2022/{acorex-platform-framework-client-layout-widgets-repeater-widget-column.component-4mX8aYzA.mjs.map → acorex-platform-framework-client-layout-widgets-repeater-widget-column.component-Cw3NhWL8.mjs.map} +1 -1
  52. package/fesm2022/acorex-platform-framework-client-layout-widgets-scheduler-picker-widget-column.component-Clb27Loe.mjs +71 -0
  53. package/fesm2022/acorex-platform-framework-client-layout-widgets-scheduler-picker-widget-column.component-Clb27Loe.mjs.map +1 -0
  54. package/fesm2022/acorex-platform-framework-client-layout-widgets-scheduler-picker-widget-edit.component-l7q8A-D3.mjs +111 -0
  55. package/fesm2022/acorex-platform-framework-client-layout-widgets-scheduler-picker-widget-edit.component-l7q8A-D3.mjs.map +1 -0
  56. package/fesm2022/acorex-platform-framework-client-layout-widgets-scheduler-picker-widget-view.component-Cc1AH09b.mjs +77 -0
  57. package/fesm2022/acorex-platform-framework-client-layout-widgets-scheduler-picker-widget-view.component-Cc1AH09b.mjs.map +1 -0
  58. package/fesm2022/{acorex-platform-framework-client-layout-widgets-tabular-data-edit-popup.component-TWxthl21.mjs → acorex-platform-framework-client-layout-widgets-tabular-data-edit-popup.component-BCLxS3rS.mjs} +3 -3
  59. package/fesm2022/{acorex-platform-framework-client-layout-widgets-tabular-data-edit-popup.component-TWxthl21.mjs.map → acorex-platform-framework-client-layout-widgets-tabular-data-edit-popup.component-BCLxS3rS.mjs.map} +1 -1
  60. package/fesm2022/{acorex-platform-framework-client-layout-widgets-text-block-widget-designer.component-D6HFPmGC.mjs → acorex-platform-framework-client-layout-widgets-text-block-widget-designer.component-BEa-vD6O.mjs} +21 -8
  61. package/fesm2022/acorex-platform-framework-client-layout-widgets-text-block-widget-designer.component-BEa-vD6O.mjs.map +1 -0
  62. package/fesm2022/acorex-platform-framework-client-layout-widgets-trigger-expression-editor-popup.component-C2PGoC7r.mjs +124 -0
  63. package/fesm2022/acorex-platform-framework-client-layout-widgets-trigger-expression-editor-popup.component-C2PGoC7r.mjs.map +1 -0
  64. package/fesm2022/acorex-platform-framework-client-layout-widgets-triggers-widget-editor.component-DDDoPoQa.mjs +345 -0
  65. package/fesm2022/acorex-platform-framework-client-layout-widgets-triggers-widget-editor.component-DDDoPoQa.mjs.map +1 -0
  66. package/fesm2022/acorex-platform-framework-client-layout-widgets.mjs +1 -31985
  67. package/fesm2022/acorex-platform-framework-client-layout-widgets.mjs.map +1 -1
  68. package/fesm2022/acorex-platform-framework-client-realtime.mjs +2 -1
  69. package/fesm2022/acorex-platform-framework-client-realtime.mjs.map +1 -1
  70. package/fesm2022/acorex-platform-framework-client-runtime.mjs +47 -3
  71. package/fesm2022/acorex-platform-framework-client-runtime.mjs.map +1 -1
  72. package/fesm2022/{acorex-platform-framework-client-themes-default-entity-master-single-view.component-DBUwSzvg.mjs → acorex-platform-framework-client-themes-default-entity-master-single-view.component-CHLsBvBE.mjs} +2 -2
  73. package/fesm2022/{acorex-platform-framework-client-themes-default-entity-master-single-view.component-DBUwSzvg.mjs.map → acorex-platform-framework-client-themes-default-entity-master-single-view.component-CHLsBvBE.mjs.map} +1 -1
  74. package/fesm2022/acorex-platform-framework-client-themes-default.mjs +373 -70
  75. package/fesm2022/acorex-platform-framework-client-themes-default.mjs.map +1 -1
  76. package/fesm2022/{acorex-platform-framework-client-themes-shared-settings.provider-CpsAIsxj.mjs → acorex-platform-framework-client-themes-shared-settings.provider-DIkjSTU7.mjs} +102 -1
  77. package/fesm2022/acorex-platform-framework-client-themes-shared-settings.provider-DIkjSTU7.mjs.map +1 -0
  78. package/fesm2022/acorex-platform-framework-client-themes-shared.mjs +174 -22
  79. package/fesm2022/acorex-platform-framework-client-themes-shared.mjs.map +1 -1
  80. package/package.json +2 -2
  81. package/realtime/README.md +1 -1
  82. package/types/acorex-platform-framework-client-auth.d.ts +18 -1
  83. package/types/acorex-platform-framework-client-common.d.ts +209 -8
  84. package/types/acorex-platform-framework-client-core.d.ts +166 -121
  85. package/types/acorex-platform-framework-client-layout-builder.d.ts +29 -0
  86. package/types/acorex-platform-framework-client-layout-components.d.ts +699 -146
  87. package/types/acorex-platform-framework-client-layout-designer.d.ts +192 -14
  88. package/types/acorex-platform-framework-client-layout-entity.d.ts +159 -91
  89. package/types/acorex-platform-framework-client-layout-views.d.ts +16 -0
  90. package/types/acorex-platform-framework-client-layout-widget-core.d.ts +140 -37
  91. package/types/acorex-platform-framework-client-layout-widgets.d.ts +235 -117
  92. package/types/acorex-platform-framework-client-realtime.d.ts +16 -3
  93. package/types/acorex-platform-framework-client-runtime.d.ts +8 -0
  94. package/types/acorex-platform-framework-client-themes-default.d.ts +62 -11
  95. package/types/acorex-platform-framework-client-themes-shared.d.ts +25 -2
  96. package/fesm2022/acorex-platform-framework-client-common-common-settings.provider-CzBr0cRi.mjs.map +0 -1
  97. package/fesm2022/acorex-platform-framework-client-layout-components-binding-expression-editor-popup.component-Bp2cNCPO.mjs.map +0 -1
  98. package/fesm2022/acorex-platform-framework-client-layout-components-file-provider-picker.popup.component-BtLEUWAA.mjs +0 -77
  99. package/fesm2022/acorex-platform-framework-client-layout-components-file-provider-picker.popup.component-BtLEUWAA.mjs.map +0 -1
  100. package/fesm2022/acorex-platform-framework-client-layout-entity-acorex-platform-framework-client-layout-entity-C74cBc-K.mjs.map +0 -1
  101. package/fesm2022/acorex-platform-framework-client-layout-widgets-button-widget-designer.component-BDOdcoyN.mjs.map +0 -1
  102. package/fesm2022/acorex-platform-framework-client-layout-widgets-page-widget-designer.component-WzIiwnGC.mjs.map +0 -1
  103. package/fesm2022/acorex-platform-framework-client-layout-widgets-text-block-widget-designer.component-D6HFPmGC.mjs.map +0 -1
  104. package/fesm2022/acorex-platform-framework-client-themes-shared-settings.provider-CpsAIsxj.mjs.map +0 -1
@@ -1,7 +1,7 @@
1
1
  import * as i0 from '@angular/core';
2
2
  import { InjectionToken, Type, OnInit, ViewContainerRef, ModuleWithProviders, ElementRef, EventEmitter, OnChanges, Renderer2, SimpleChanges, OnDestroy, DestroyRef, Provider, Injector, PipeTransform } from '@angular/core';
3
3
  import * as _acorex_platform_framework_shared_core from '@acorex-platform/framework-shared/core';
4
- import { AXPApplicationUserReference, AXPEntityReference, AXPSystemActionType, AXPMultiLanguageString, AXPContextData, AXPOptionsData, AXPContextState, AXPContextChangeEvent, AXPContextUpdateOptions, AXPContextPatchOptions, AXPContextDefinition, AXPGridLayoutOptions, AXPExpressionEvaluatorScope, AXPExpressionEvaluatorScopeProvider, AXPKeyboardShortcutDirectionBehavior, AXPKeyboardShortcutChord, AXPKeyboardShortcut, AXPResolvedKeyboardShortcut, AXPKeyboardShortcutRegistration, AXPKeyboardShortcutHelpEntry, AXPPlatformScope, AXPWidgetNode, AXPActionMenuItem } from '@acorex-platform/framework-shared/core';
4
+ import { AXPApplicationUserReference, AXPEntityReference, AXPSystemActionType, AXPMultiLanguageString, AXPContextData, AXPOptionsData, AXPContextState, AXPContextChangeEvent, AXPContextUpdateOptions, AXPContextPatchOptions, AXPContextDefinition, AXPGridLayoutOptions, AXPExpressionEvaluatorScope, AXPExpressionEvaluatorScopeProvider, AXPKeyboardShortcutDirectionBehavior, AXPKeyboardShortcutChord, AXPKeyboardShortcut, AXPResolvedKeyboardShortcut, AXPKeyboardShortcutRegistration, AXPKeyboardShortcutHelpEntry, AXPModuleManifest, AXPPlatformScope, AXPWidgetNode, AXPActionMenuItem } from '@acorex-platform/framework-shared/core';
5
5
  export { AXPContextCapability, AXPContextDefinition, axpContextDefinitionIsAiPrompt } from '@acorex-platform/framework-shared/core';
6
6
  import * as _ngrx_signals from '@ngrx/signals';
7
7
  import { Observable } from 'rxjs';
@@ -858,6 +858,11 @@ interface AXPContextEvalOptions {
858
858
  pipes?: AXPContextEvalPipe[];
859
859
  }
860
860
  type AXPContextEvalFn = (path: string, options?: AXPContextEvalOptions) => unknown;
861
+ /** `{ eval, getVariable }` object placed on expression scopes as `context`. */
862
+ interface AXPContextEvalScope {
863
+ eval: AXPContextEvalFn;
864
+ getVariable: (name: string) => unknown;
865
+ }
861
866
 
862
867
  /**
863
868
  * Builds sync `context.eval(path, { pipes })` functions backed by {@link AXFormatService}.
@@ -867,20 +872,25 @@ declare class AXPContextEvalFactory {
867
872
  private readonly formatService;
868
873
  /** Creates a sync eval function for the given record/context data object. */
869
874
  create(data: Record<string, unknown>): AXPContextEvalFn;
870
- /** Creates `{ eval }` scope object for expression evaluator scopes. */
871
- createScope(data: Record<string, unknown>): {
872
- eval: AXPContextEvalFn;
873
- };
875
+ /** Creates `{ eval, getVariable }` scope object for expression evaluator scopes. */
876
+ createScope(data: Record<string, unknown>): AXPContextEvalScope;
874
877
  /**
875
878
  * Display-tier scope that re-reads data on each eval (for live stores / changing row context).
876
879
  */
877
- createLiveScope(getData: () => Record<string, unknown>): {
878
- eval: AXPContextEvalFn;
879
- };
880
+ createLiveScope(getData: () => Record<string, unknown>): AXPContextEvalScope;
881
+ private createGetVariable;
880
882
  static ɵfac: i0.ɵɵFactoryDeclaration<AXPContextEvalFactory, never>;
881
883
  static ɵprov: i0.ɵɵInjectableDeclaration<AXPContextEvalFactory>;
882
884
  }
883
885
 
886
+ declare function toExpressionRecord(value: unknown): Record<string, unknown>;
887
+ declare function resolveCommandExpressionData(input: unknown): Record<string, unknown>;
888
+ /**
889
+ * Scope for command/action `{{ }}` expressions.
890
+ * Supports both `context.eval("packageNumber")` and `context.getVariable("data").packageNumber`.
891
+ */
892
+ declare function createCommandExpressionScope(contextEvalFactory: AXPContextEvalFactory, data: Record<string, unknown>, extra?: AXPExpressionEvaluatorScope): AXPExpressionEvaluatorScope;
893
+
884
894
  /** Normalizes shorthand pipe names to `{ type, options? }` specs. */
885
895
  declare function normalizeContextEvalPipes(pipes: AXPContextEvalPipe[]): AXPContextEvalPipeSpec[];
886
896
  /**
@@ -919,13 +929,21 @@ declare class AXPExpressionEvaluatorScopeProviderService {
919
929
  static ɵprov: i0.ɵɵInjectableDeclaration<AXPExpressionEvaluatorScopeProviderService>;
920
930
  }
921
931
 
932
+ interface AXPHookProvider<TInput = any, TOutput = TInput> {
933
+ key: string;
934
+ execute(data: TInput): Promise<TOutput> | TOutput;
935
+ priority?: number;
936
+ id?: string;
937
+ }
938
+ type AXPHookProviderToken<T> = AXPHookProvider<T> | Promise<AXPHookProvider<T>>;
939
+ declare const AXP_HOOK_PROVIDER: InjectionToken<AXPHookProviderToken<any>[]>;
940
+
922
941
  declare class AXPHookService {
923
- private readonly listenerProviders;
942
+ private readonly hookProviders;
924
943
  private readonly injector;
925
- /**
926
- * Resolve all providers (handle both direct providers and Promise<provider>)
927
- */
928
944
  private resolveProviders;
945
+ private toHookEntries;
946
+ private hooksForKey;
929
947
  /**
930
948
  * Fire sync hooks (fire-and-forget).
931
949
  * All providers with the given key will be executed.
@@ -1070,6 +1088,12 @@ declare class AXPKeyboardShortcutRegistry {
1070
1088
  private unregister;
1071
1089
  private ensureListener;
1072
1090
  private readonly onDocumentKeyDown;
1091
+ /**
1092
+ * Nested widget panes (select, date picker) still own Esc.
1093
+ * In-dialog editors registered above Modal (e.g. spreadsheet cell edit) may consume it
1094
+ * so the parent popup does not close.
1095
+ */
1096
+ private resolveInnerOverlayEscapeCandidate;
1073
1097
  private resolveActiveCandidates;
1074
1098
  private isRegistrationActive;
1075
1099
  private isRtlProfile;
@@ -1315,52 +1339,121 @@ declare const OVERLAY_DETAILS_VIEW_TRACE_NS = "OVERLAY-DETAILS-VIEW";
1315
1339
  /** Widget tree mount / settle polling ({@link AXPWidgetContainerComponent}). */
1316
1340
  declare const OVERLAY_WIDGET_SETTLE_TRACE_NS = "OVERLAY-WIDGET-SETTLE";
1317
1341
 
1318
- /**
1319
- * Packaging kind for edition modules checklist (view mode: By Type).
1320
- */
1321
- declare const AXP_MODULE_TYPE: {
1322
- readonly platform: "platform";
1323
- readonly domain: "domain";
1324
- readonly integration: "integration";
1325
- };
1326
- type AXPModuleType = (typeof AXP_MODULE_TYPE)[keyof typeof AXP_MODULE_TYPE];
1327
- /**
1328
- * Business-area domain for edition modules checklist (view mode: By Domain).
1329
- * Aligns with integration domain ids where applicable.
1330
- */
1331
- declare const AXP_MODULE_DOMAIN: {
1332
- readonly platform: "platform";
1333
- readonly humanCapital: "human-capital";
1334
- readonly projectManagement: "project-management";
1335
- readonly assetMaintenance: "asset-maintenance";
1336
- readonly workplaceSafety: "workplace-safety";
1337
- readonly assessmentLearning: "assessment-learning";
1338
- readonly financeCommerce: "finance-commerce";
1339
- readonly customerSupplier: "customer-supplier";
1340
- readonly communication: "communication";
1341
- readonly ai: "ai";
1342
- readonly contentDocuments: "content-documents";
1343
- readonly data: "data";
1344
- readonly operations: "operations";
1345
- readonly weather: "weather";
1346
- readonly sourceControl: "source-control";
1347
- readonly general: "general";
1348
- };
1349
- type AXPModuleDomain = (typeof AXP_MODULE_DOMAIN)[keyof typeof AXP_MODULE_DOMAIN];
1350
- /**
1351
- * Resolves module packaging type with fallbacks when unset on the manifest.
1352
- */
1353
- declare function resolveModuleType(manifest: {
1354
- type?: AXPModuleType;
1342
+ /** Who owns the live page snapshot. Higher wins when several pages are registered. */
1343
+ declare enum AXPPageContextPriority {
1344
+ Page = 10,
1345
+ Overlay = 100
1346
+ }
1347
+ type AXPPageContextKind = 'entity-list' | 'layout-designer' | 'none';
1348
+ type AXPPageContextStatus = 'ready' | 'loading' | 'empty';
1349
+ interface AXPPageContextActionParam {
1350
+ name: string;
1355
1351
  required?: boolean;
1352
+ description?: string;
1353
+ }
1354
+ interface AXPPageContextAction {
1355
+ id: string;
1356
+ title: string;
1357
+ params: AXPPageContextActionParam[];
1358
+ }
1359
+ interface AXPPageContextEntityRef {
1360
+ fullName: string;
1361
+ title: string;
1362
+ }
1363
+ interface AXPPageContextNamedRef {
1356
1364
  name: string;
1357
- }): AXPModuleType;
1358
- /**
1359
- * Resolves module business domain with fallback when unset on the manifest.
1360
- */
1361
- declare function resolveModuleDomain(manifest: {
1362
- domain?: string;
1363
- }): string;
1365
+ title: string;
1366
+ }
1367
+ interface AXPPageContextFilter {
1368
+ field: string;
1369
+ operatorType?: string;
1370
+ value?: unknown;
1371
+ title?: string;
1372
+ hidden?: boolean;
1373
+ }
1374
+ interface AXPPageContextFilterField {
1375
+ field: string;
1376
+ title: string;
1377
+ }
1378
+ /** Selected list row shown to contextual assist (id plus a display title). */
1379
+ interface AXPPageContextSelectedRecord {
1380
+ id: string;
1381
+ title: string;
1382
+ }
1383
+ interface AXPPageContextAppliedQuery {
1384
+ skip?: number;
1385
+ take?: number;
1386
+ sort?: Array<{
1387
+ field: string;
1388
+ dir?: string;
1389
+ }>;
1390
+ filter?: AXPPageContextFilter[];
1391
+ }
1392
+ /** Compact widget pointer on a layout-designer canvas (name / type / path). */
1393
+ interface AXPPageContextOutlineItem {
1394
+ name: string;
1395
+ type: string;
1396
+ path: string;
1397
+ parentName?: string;
1398
+ label?: string;
1399
+ }
1400
+ interface AXPPageContextSnapshot {
1401
+ kind: AXPPageContextKind;
1402
+ title: string;
1403
+ status: AXPPageContextStatus;
1404
+ entity?: AXPPageContextEntityRef;
1405
+ view?: AXPPageContextNamedRef;
1406
+ views?: AXPPageContextNamedRef[];
1407
+ filters?: AXPPageContextFilter[];
1408
+ filterFields?: AXPPageContextFilterField[];
1409
+ quickSearch?: string;
1410
+ selectedIds?: string[];
1411
+ /** Selected rows with display titles. Parallel to {@link selectedIds} when titles are known. */
1412
+ selectedRecords?: AXPPageContextSelectedRecord[];
1413
+ columns?: AXPPageContextNamedRef[];
1414
+ previewTitles?: string[];
1415
+ appliedQuery?: AXPPageContextAppliedQuery;
1416
+ /** Live designer widget index when {@link kind} is `layout-designer`. */
1417
+ outline?: AXPPageContextOutlineItem[];
1418
+ actions: AXPPageContextAction[];
1419
+ }
1420
+ interface AXPPageContextRunResult {
1421
+ success: boolean;
1422
+ message?: string;
1423
+ snapshot: AXPPageContextSnapshot;
1424
+ }
1425
+ type AXPPageContextActionHandler = (actionId: string, args: Record<string, unknown>) => Promise<AXPPageContextRunResult>;
1426
+ type AXPPageContextSnapshotGetter = () => AXPPageContextSnapshot;
1427
+ /** Empty snapshot when no page has registered. */
1428
+ declare const AXP_PAGE_CONTEXT_EMPTY_SNAPSHOT: AXPPageContextSnapshot;
1429
+
1430
+ interface AXPPageContextRegisterOptions {
1431
+ /** Auto-unregister when the owner is destroyed. */
1432
+ owner: DestroyRef;
1433
+ /** Unique per page instance (do not reuse `entity-list` across app tabs). */
1434
+ id: string;
1435
+ priority?: AXPPageContextPriority | number;
1436
+ getSnapshot: AXPPageContextSnapshotGetter;
1437
+ run: AXPPageContextActionHandler;
1438
+ }
1439
+ declare class AXPPageContextRegistry {
1440
+ private readonly registrations;
1441
+ private registrationSeq;
1442
+ /**
1443
+ * Registers a live page snapshot. Unregisters automatically when `owner` is destroyed.
1444
+ * Same `id` replaces the previous entry (same instance re-init). Distinct ids stack for app tabs.
1445
+ */
1446
+ register(options: AXPPageContextRegisterOptions): void;
1447
+ /** Marks a registration as the current page among the same priority (app-tab focus). */
1448
+ activate(id: string): void;
1449
+ getSnapshot(): AXPPageContextSnapshot;
1450
+ runAction(actionId: string, args?: Record<string, unknown>): Promise<AXPPageContextRunResult>;
1451
+ private unregister;
1452
+ private peekRegistration;
1453
+ private safeSnapshot;
1454
+ static ɵfac: i0.ɵɵFactoryDeclaration<AXPPageContextRegistry, never>;
1455
+ static ɵprov: i0.ɵɵInjectableDeclaration<AXPPageContextRegistry>;
1456
+ }
1364
1457
 
1365
1458
  /**
1366
1459
  * Feature definition in module manifest.
@@ -1403,65 +1496,6 @@ interface AXPModuleFeatureDefinitionWithKey extends AXPModuleFeatureDefinition {
1403
1496
  */
1404
1497
  key: string;
1405
1498
  }
1406
- /**
1407
- * Module manifest structure.
1408
- * Defines module metadata and dependencies.
1409
- * Features are provided via AXP_FEATURE_DEFINITION_PROVIDER token.
1410
- */
1411
- interface AXPModuleManifest {
1412
- /**
1413
- * Module name (must match RootConfig.module.name)
1414
- */
1415
- name: string;
1416
- /**
1417
- * Module version
1418
- */
1419
- version: string;
1420
- /**
1421
- * Module title (can reference const.ts or be translation key)
1422
- */
1423
- title: string;
1424
- /**
1425
- * Module description (optional)
1426
- */
1427
- description?: string;
1428
- /**
1429
- * Module icon (can reference const.ts)
1430
- */
1431
- icon?: string;
1432
- /**
1433
- * i18n scope name (can reference const.ts)
1434
- */
1435
- i18n?: string;
1436
- /**
1437
- * Module dependencies.
1438
- * Simple array format: module names (e.g., "MeasurementCore") or feature keys (e.g., "DataManagement.MetaDataDefinitions").
1439
- * Features use ModuleName.FeatureKey format (dot separator).
1440
- */
1441
- dependencies?: string[];
1442
- /**
1443
- * Whether this module is required (always enabled, cannot be disabled).
1444
- * Required modules like 'auth' and 'common' are always available.
1445
- */
1446
- required?: boolean;
1447
- /**
1448
- * Packaging kind for edition modules UI grouping (By Type).
1449
- * Falls back via {@link resolveModuleType} when omitted.
1450
- */
1451
- type?: AXPModuleType;
1452
- /**
1453
- * Business-area domain id for edition modules UI grouping (By Domain).
1454
- * Use values from {@link AXP_MODULE_DOMAIN} (or matching integration domain ids).
1455
- * Falls back via {@link resolveModuleDomain} when omitted.
1456
- */
1457
- domain?: string;
1458
- /**
1459
- * Additional metadata
1460
- */
1461
- metadata?: {
1462
- [key: string]: any;
1463
- };
1464
- }
1465
1499
  /**
1466
1500
  * Full feature name with module prefix.
1467
1501
  * Format: ModuleName.FeatureKey
@@ -1497,14 +1531,18 @@ declare class AXPModuleManifestRegistry {
1497
1531
  private isInitialized;
1498
1532
  /**
1499
1533
  * Initialize registry by loading all manifest providers.
1500
- * Should be called during app startup.
1501
- * Safe to call multiple times - will only initialize once.
1534
+ * An empty result is not kept: startup runs before login, and the ModuleDefinition
1535
+ * catalog is empty until a session exists. The next call (feature load after login) retries.
1502
1536
  */
1503
1537
  initialize(): Promise<void>;
1504
1538
  /**
1505
1539
  * Internal initialization logic.
1506
1540
  */
1507
1541
  private _doInitialize;
1542
+ /**
1543
+ * Resolves `useValue` manifests and async catalog factories (Promise / array of rows).
1544
+ */
1545
+ private resolveInjectedManifests;
1508
1546
  /**
1509
1547
  * Register a module manifest.
1510
1548
  */
@@ -1591,13 +1629,14 @@ declare const AXP_APP_STARTUP_PRIORITY: {
1591
1629
  readonly conversationSessionSync: 4;
1592
1630
  readonly regionalSettings: 5;
1593
1631
  readonly terms: 6;
1632
+ /** After settings: apply User → Tenant → Platform theme before first paint. */
1633
+ readonly layoutTheme: 3.6;
1594
1634
  /** Topic handlers / bridges that must exist before the socket connects. */
1595
1635
  readonly realtimeHandlers: 40;
1596
1636
  /** Long-lived subscriptions that listen to connection/bus streams. */
1597
1637
  readonly realtimeSubscriptions: 45;
1598
1638
  readonly realtimeConnect: 50;
1599
1639
  readonly activityInsight: 80;
1600
- readonly layoutTheme: 100;
1601
1640
  };
1602
1641
  /** Register one startup task via the multi token (preferred over APP_INITIALIZER). */
1603
1642
  declare function provideAppStartUpTask(factory: () => AXPStartUpTask): Provider;
@@ -1694,11 +1733,17 @@ interface AXPISessionService {
1694
1733
  * Implementation: @acorex-platform/framework-client/auth
1695
1734
  */
1696
1735
  declare const AXP_SESSION_SERVICE: InjectionToken<AXPISessionService>;
1736
+ /**
1737
+ * Static manifest, a list, a promise, or a loader called on each registry init.
1738
+ * A loader is required for API catalogs: Angular caches `useFactory` results, so a
1739
+ * one-shot promise would keep an empty pre-login response for the whole SPA session.
1740
+ */
1741
+ type AXPModuleManifestProviderEntry = AXPModuleManifest | AXPModuleManifest[] | Promise<AXPModuleManifest | AXPModuleManifest[] | null> | (() => Promise<AXPModuleManifest | AXPModuleManifest[] | null>);
1697
1742
  /**
1698
1743
  * Injection token for module manifest providers.
1699
1744
  * Modules register their manifest providers using this token.
1700
1745
  */
1701
- declare const AXP_MODULE_MANIFEST_PROVIDER: InjectionToken<AXPModuleManifest[]>;
1746
+ declare const AXP_MODULE_MANIFEST_PROVIDER: InjectionToken<AXPModuleManifestProviderEntry>;
1702
1747
 
1703
1748
  interface AXPIdleSchedulerWaitOptions {
1704
1749
  /** Max wait before running anyway (ms). Default 2000. */
@@ -2119,5 +2164,5 @@ declare function createProviderWithInjectionContext<T>(injector: Injector, loade
2119
2164
  */
2120
2165
  declare function provideLazyProvider<TProvider>(token: InjectionToken<any>, loader: () => Promise<new (injector?: Injector) => TProvider>, multi?: boolean): Provider;
2121
2166
 
2122
- export { AXHighlightService, AXPActivityLogProvider, AXPActivityLogService, AXPAppStartUpProvider, AXPAppStartUpService, AXPBroadcastEventService, AXPCatalogScopeDefinitionProviderService, AXPColorPaletteProvider, AXPColorPaletteService, AXPColumnWidthService, AXPComponentLogoConfig, AXPComponentSlot, AXPComponentSlotDirective, AXPComponentSlotModule, AXPComponentSlotRegistryService, AXPContentCheckerDirective, AXPContextDefinitionProviderService, AXPContextEvalFactory, AXPContextStore, AXPCountdownPipe, AXPDataGenerator, AXPDblClickDirective, AXPDebugService, AXPDefaultColorPalettesProvider, AXPDeviceService, AXPDeviceType, AXPDistributedEventListenerService, AXPElementDataDirective, AXPEntityBroadcastService, AXPEntityLogoRegistrationService, AXPExpressionEvaluatorScopeProviderService, AXPExpressionEvaluatorService, AXPFeatureDefinitionProviderContext, AXPGridLayoutDirective, AXPHookService, AXPIconLogoConfig, AXPIdleSchedulerService, AXPImageUrlLogoConfig, AXPKeyboardShortcutRegistry, AXPLogoComponent, AXPLogoRegistryService, AXPModuleManifestModule, AXPModuleManifestRegistry, AXPScreenSize, AXPTagProvider, AXPTagService, AXP_ACTIVITY_LOG_PROVIDER, AXP_APP_STARTUP_PRIORITY, AXP_APP_STARTUP_TASK, AXP_CATALOG_SCOPE_DEFINITION_PROVIDER, AXP_COLOR_PALETTE_PROVIDER, AXP_COLUMN_WIDTH_PROVIDER, AXP_CONTEXT_DEFINITION_PROVIDER, AXP_DISTRIBUTED_EVENT_LISTENER_PROVIDER, AXP_ENTITY_LOGO_FALLBACK_RESOLVER, AXP_EXPRESSION_EVALUATOR_SCOPE_PROVIDER, AXP_FEATURE_DEFINITION_PROVIDER, AXP_LOGO_IMAGE_SRC_RESOLVER, AXP_LOGO_PROVIDER, AXP_LOGO_THEME_RESOLVER, AXP_MODULE_DOMAIN, AXP_MODULE_MANIFEST_PROVIDER, AXP_MODULE_TYPE, AXP_PLATFORM_LOGO_KEY, AXP_SESSION_SERVICE, AXP_SETTINGS_DEFINITION_DIALOG_OPENER, AXP_TAG_PROVIDER, AX_OVERLAY_CONTAINER_SELECTOR, AX_OVERLAY_PANE_SELECTOR, DEFAULT_CANCEL_DIALOG_ACTION_SHORTCUTS, DEFAULT_SUBMIT_DIALOG_ACTION_SHORTCUTS, FORM_DIRTY_TRACE_NS, OVERLAY_DETAILS_VIEW_TRACE_NS, OVERLAY_LAYOUT_TRACE_NS, OVERLAY_ROOT_LAYOUT_TRACE_NS, OVERLAY_WIDGET_SETTLE_TRACE_NS, applyContextEvalPipes, applyFilterArray, applyPagination, applyQueryArray, applySortArray, applySystemActionDefault, axpApplicationLogoKey, axpExtractLogoUrl, axpSsoLogoKey, axpTenantLogoKey, chordToKbdItemKeys, contextEvalWithPipes, createProviderWithInjectionContext, defaultColumnWidthProvider, ensureRuntimeSurfaceClass, ensureRuntimeSurfaceClasses, findOverlayContainerAncestor, formatKeyboardShortcutChord, formatKeyboardShortcutChords, getNestedVisibleOverlayPanes, getPrimaryKeyboardShortcutChord, getTopVisibleOverlayContainer, getVisibleAnchoredOverlayPanes, getVisibleOverlayContainers, hasForegroundOverlayLayer, instantiateWithInjectionContext, isDialogShortcutAllowedInEditableField, isHorizontalDirectionalShortcutKey, isKeyboardTargetInsideEditableField, isMacPlatform, isVisibleOverlayElement, matchesDialogActionShortcut, matchesKeyboardShortcutChord, mirrorHorizontalDirectionalKey, normalizeContextEvalPipes, normalizeDialogActionShortcutChord, normalizeExpressionTemplate, normalizeKeyboardShortcut, normalizeKeyboardShortcuts, objectKeyValueTransforms, parseDialogActionShortcut, parseKeyboardShortcutChord, provideAppStartUpTask, provideLazyProvider, registerPopupFooterKeyboardShortcuts, resolveConfiguredFooterActionShortcuts, resolveDialogActionShortcuts, resolveDisplayShortcutChord, resolveEffectiveDirectionBehavior, resolveModuleDomain, resolveModuleType, resolveSemanticDirectionalKey, setupPopupFooterKeyboardShortcuts, shouldDeferEscapeToOpenOverlay, shouldTriggerDialogActionShortcut };
2123
- export type { AXPActivityLog, AXPActivityLogChange, AXPBroadcastPublishPolicy, AXPBroadcastPublishStrategy, AXPCatalogScopeDefinition, AXPCatalogScopeDefinitionProvider, AXPColorPalette, AXPColorPaletteFilterOptions, AXPColumnWidthMatcher, AXPColumnWidthProvider, AXPComponentSlotConfig, AXPComponentSlotModuleConfigs, AXPContextDefinitionProvider, AXPContextEvalFn, AXPContextEvalOptions, AXPContextEvalPipe, AXPContextEvalPipeName, AXPContextEvalPipeSpec, AXPDebugData, AXPDebugDataFactory, AXPDebugDataInput, AXPDialogActionOptions, AXPDialogActionShortcut, AXPDistributedEventListenerProvider, AXPDistributedEventListenerProviderToken, AXPEntityLogoFallbackResolver, AXPEntityLogoSource, AXPExpressionEvaluatorScopeProviders, AXPFeatureDefinition, AXPFeatureDefinitionProvider, AXPFeatureName, AXPISessionService, AXPIdleSchedulerEnqueueOptions, AXPIdleSchedulerWaitOptions, AXPKeyboardShortcutFormatOptions, AXPKeyboardShortcutRegisterOptions, AXPLogoAppearance, AXPLogoFormat, AXPLogoImageSrcResolver, AXPLogoProvider, AXPLogoRequest, AXPLogoResolvedView, AXPLogoThemeResolver, AXPLogoView, AXPModuleDomain, AXPModuleFeatureDefinition, AXPModuleFeatureDefinitionWithKey, AXPModuleManifest, AXPModuleType, AXPNavigateActionCommand, AXPNavigateActionOptions, AXPOpenSettingsDefinitionDialogConfig, AXPPopupFooterKeyboardShortcutsOptions, AXPPopupFooterKeyboardShortcutsSetupConfig, AXPPopupFooterShortcutAction, AXPSettingsDefinitionDialogOpenRequest, AXPSettingsDefinitionDialogOpener, AXPSettingsDefinitionDialogScope, AXPSettingsDefinitionDialogSection, AXPSettingsDefinitionDialogSetting, AXPSettingsDefinitionDialogSize, AXPStartUpTask, AXPTag, AXPTagFilterOptions, AXPValueTransformerFunction, AXPValueTransformerFunctions, ColumnNameMatcher, ColumnWidthValue, IColumnWithWidth, WidgetTypeMatcher };
2167
+ export { AXHighlightService, AXPActivityLogProvider, AXPActivityLogService, AXPAppStartUpProvider, AXPAppStartUpService, AXPBroadcastEventService, AXPCatalogScopeDefinitionProviderService, AXPColorPaletteProvider, AXPColorPaletteService, AXPColumnWidthService, AXPComponentLogoConfig, AXPComponentSlot, AXPComponentSlotDirective, AXPComponentSlotModule, AXPComponentSlotRegistryService, AXPContentCheckerDirective, AXPContextDefinitionProviderService, AXPContextEvalFactory, AXPContextStore, AXPCountdownPipe, AXPDataGenerator, AXPDblClickDirective, AXPDebugService, AXPDefaultColorPalettesProvider, AXPDeviceService, AXPDeviceType, AXPDistributedEventListenerService, AXPElementDataDirective, AXPEntityBroadcastService, AXPEntityLogoRegistrationService, AXPExpressionEvaluatorScopeProviderService, AXPExpressionEvaluatorService, AXPFeatureDefinitionProviderContext, AXPGridLayoutDirective, AXPHookService, AXPIconLogoConfig, AXPIdleSchedulerService, AXPImageUrlLogoConfig, AXPKeyboardShortcutRegistry, AXPLogoComponent, AXPLogoRegistryService, AXPModuleManifestModule, AXPModuleManifestRegistry, AXPPageContextPriority, AXPPageContextRegistry, AXPScreenSize, AXPTagProvider, AXPTagService, AXP_ACTIVITY_LOG_PROVIDER, AXP_APP_STARTUP_PRIORITY, AXP_APP_STARTUP_TASK, AXP_CATALOG_SCOPE_DEFINITION_PROVIDER, AXP_COLOR_PALETTE_PROVIDER, AXP_COLUMN_WIDTH_PROVIDER, AXP_CONTEXT_DEFINITION_PROVIDER, AXP_DISTRIBUTED_EVENT_LISTENER_PROVIDER, AXP_ENTITY_LOGO_FALLBACK_RESOLVER, AXP_EXPRESSION_EVALUATOR_SCOPE_PROVIDER, AXP_FEATURE_DEFINITION_PROVIDER, AXP_HOOK_PROVIDER, AXP_LOGO_IMAGE_SRC_RESOLVER, AXP_LOGO_PROVIDER, AXP_LOGO_THEME_RESOLVER, AXP_MODULE_MANIFEST_PROVIDER, AXP_PAGE_CONTEXT_EMPTY_SNAPSHOT, AXP_PLATFORM_LOGO_KEY, AXP_SESSION_SERVICE, AXP_SETTINGS_DEFINITION_DIALOG_OPENER, AXP_TAG_PROVIDER, AX_OVERLAY_CONTAINER_SELECTOR, AX_OVERLAY_PANE_SELECTOR, DEFAULT_CANCEL_DIALOG_ACTION_SHORTCUTS, DEFAULT_SUBMIT_DIALOG_ACTION_SHORTCUTS, FORM_DIRTY_TRACE_NS, OVERLAY_DETAILS_VIEW_TRACE_NS, OVERLAY_LAYOUT_TRACE_NS, OVERLAY_ROOT_LAYOUT_TRACE_NS, OVERLAY_WIDGET_SETTLE_TRACE_NS, applyContextEvalPipes, applyFilterArray, applyPagination, applyQueryArray, applySortArray, applySystemActionDefault, axpApplicationLogoKey, axpExtractLogoUrl, axpSsoLogoKey, axpTenantLogoKey, chordToKbdItemKeys, contextEvalWithPipes, createCommandExpressionScope, createProviderWithInjectionContext, defaultColumnWidthProvider, ensureRuntimeSurfaceClass, ensureRuntimeSurfaceClasses, findOverlayContainerAncestor, formatKeyboardShortcutChord, formatKeyboardShortcutChords, getNestedVisibleOverlayPanes, getPrimaryKeyboardShortcutChord, getTopVisibleOverlayContainer, getVisibleAnchoredOverlayPanes, getVisibleOverlayContainers, hasForegroundOverlayLayer, instantiateWithInjectionContext, isDialogShortcutAllowedInEditableField, isHorizontalDirectionalShortcutKey, isKeyboardTargetInsideEditableField, isMacPlatform, isVisibleOverlayElement, matchesDialogActionShortcut, matchesKeyboardShortcutChord, mirrorHorizontalDirectionalKey, normalizeContextEvalPipes, normalizeDialogActionShortcutChord, normalizeExpressionTemplate, normalizeKeyboardShortcut, normalizeKeyboardShortcuts, objectKeyValueTransforms, parseDialogActionShortcut, parseKeyboardShortcutChord, provideAppStartUpTask, provideLazyProvider, registerPopupFooterKeyboardShortcuts, resolveCommandExpressionData, resolveConfiguredFooterActionShortcuts, resolveDialogActionShortcuts, resolveDisplayShortcutChord, resolveEffectiveDirectionBehavior, resolveSemanticDirectionalKey, setupPopupFooterKeyboardShortcuts, shouldDeferEscapeToOpenOverlay, shouldTriggerDialogActionShortcut, toExpressionRecord };
2168
+ export type { AXPActivityLog, AXPActivityLogChange, AXPBroadcastPublishPolicy, AXPBroadcastPublishStrategy, AXPCatalogScopeDefinition, AXPCatalogScopeDefinitionProvider, AXPColorPalette, AXPColorPaletteFilterOptions, AXPColumnWidthMatcher, AXPColumnWidthProvider, AXPComponentSlotConfig, AXPComponentSlotModuleConfigs, AXPContextDefinitionProvider, AXPContextEvalFn, AXPContextEvalOptions, AXPContextEvalPipe, AXPContextEvalPipeName, AXPContextEvalPipeSpec, AXPContextEvalScope, AXPDebugData, AXPDebugDataFactory, AXPDebugDataInput, AXPDialogActionOptions, AXPDialogActionShortcut, AXPDistributedEventListenerProvider, AXPDistributedEventListenerProviderToken, AXPEntityLogoFallbackResolver, AXPEntityLogoSource, AXPExpressionEvaluatorScopeProviders, AXPFeatureDefinition, AXPFeatureDefinitionProvider, AXPFeatureName, AXPHookProvider, AXPHookProviderToken, AXPISessionService, AXPIdleSchedulerEnqueueOptions, AXPIdleSchedulerWaitOptions, AXPKeyboardShortcutFormatOptions, AXPKeyboardShortcutRegisterOptions, AXPLogoAppearance, AXPLogoFormat, AXPLogoImageSrcResolver, AXPLogoProvider, AXPLogoRequest, AXPLogoResolvedView, AXPLogoThemeResolver, AXPLogoView, AXPModuleFeatureDefinition, AXPModuleFeatureDefinitionWithKey, AXPModuleManifestProviderEntry, AXPNavigateActionCommand, AXPNavigateActionOptions, AXPOpenSettingsDefinitionDialogConfig, AXPPageContextAction, AXPPageContextActionHandler, AXPPageContextActionParam, AXPPageContextAppliedQuery, AXPPageContextEntityRef, AXPPageContextFilter, AXPPageContextFilterField, AXPPageContextKind, AXPPageContextNamedRef, AXPPageContextOutlineItem, AXPPageContextRegisterOptions, AXPPageContextRunResult, AXPPageContextSelectedRecord, AXPPageContextSnapshot, AXPPageContextSnapshotGetter, AXPPageContextStatus, AXPPopupFooterKeyboardShortcutsOptions, AXPPopupFooterKeyboardShortcutsSetupConfig, AXPPopupFooterShortcutAction, AXPSettingsDefinitionDialogOpenRequest, AXPSettingsDefinitionDialogOpener, AXPSettingsDefinitionDialogScope, AXPSettingsDefinitionDialogSection, AXPSettingsDefinitionDialogSetting, AXPSettingsDefinitionDialogSize, AXPStartUpTask, AXPTag, AXPTagFilterOptions, AXPValueTransformerFunction, AXPValueTransformerFunctions, ColumnNameMatcher, ColumnWidthValue, IColumnWithWidth, WidgetTypeMatcher };
@@ -274,6 +274,8 @@ interface AXPDialogContainerOptions extends LayoutWidgetOptions {
274
274
  message?: string;
275
275
  size?: AXPopupSizeType;
276
276
  closeButton?: boolean;
277
+ /** Header drag. Defaults to true when the dialog opens. */
278
+ draggable?: boolean;
277
279
  context?: any;
278
280
  metadata?: AXPMetaData;
279
281
  /**
@@ -640,6 +642,7 @@ interface IDialogBuilder<T = AXPDialogRef> {
640
642
  setMessage(message?: string): IDialogBuilder<T>;
641
643
  setSize(size: AXPopupSizeType): IDialogBuilder<T>;
642
644
  setCloseButton(closeButton: boolean): IDialogBuilder<T>;
645
+ setDraggable(draggable: boolean): IDialogBuilder<T>;
643
646
  setContext(context: any): IDialogBuilder<T>;
644
647
  content(delegate: (layoutBuilder: IFlexContainerBuilder) => void): IDialogBuilder<T>;
645
648
  setActions(delegate?: (actions: IActionBuilder) => void): IDialogBuilder<T>;
@@ -995,6 +998,9 @@ declare class AXPDialogRendererComponent extends AXBasePageComponent implements
995
998
  private readonly document;
996
999
  private readonly host;
997
1000
  private readonly shortcutRegistry;
1001
+ private readonly loadingDialog;
1002
+ private readonly widgetRegistry;
1003
+ private readonly debug;
998
1004
  private dialogResult?;
999
1005
  /** Ensures `show()` resolves once when the dialog closes (footer action or header close). */
1000
1006
  private callbackInvoked;
@@ -1004,6 +1010,16 @@ declare class AXPDialogRendererComponent extends AXBasePageComponent implements
1004
1010
  private skipNextOnClosingDirtyCheck;
1005
1011
  /** Blocks re-entrant {@link onClosing} while the first close gate is still resolving. */
1006
1012
  private closeGateInProgress;
1013
+ /** Loading dialog shown while the popup shell is held hidden. */
1014
+ private revealLoading?;
1015
+ /** Deferred open of the loading dialog when the tree is predicted to be fast. */
1016
+ private revealLoadingTimer?;
1017
+ /** Predicted first-paint cost from the widget tree, used for the loading decision and debug trace. */
1018
+ private estimatedRenderMs;
1019
+ /** `performance.now()` at `ngOnInit`, for estimated-vs-measured traces. */
1020
+ private revealStartedAt;
1021
+ /** Keeps the reveal pipeline to a single run (widget debounce and fallback timer both call it). */
1022
+ private revealRequested;
1007
1023
  private readonly destroyRef;
1008
1024
  context: i0.WritableSignal<any>;
1009
1025
  callBack: (result: unknown) => void;
@@ -1011,6 +1027,7 @@ declare class AXPDialogRendererComponent extends AXBasePageComponent implements
1011
1027
  private isDialogLoading;
1012
1028
  footerPrefix: i0.WritableSignal<AXPWidgetCoreElementAction[]>;
1013
1029
  footerSuffix: i0.WritableSignal<AXPWidgetCoreElementAction[]>;
1030
+ protected readonly hasDefaultFooterActions: i0.Signal<boolean>;
1014
1031
  /**
1015
1032
  * Correlate layout context snapshots for distributed hooks (`layout-builder.dialog.context-changed`).
1016
1033
  */
@@ -1070,6 +1087,18 @@ declare class AXPDialogRendererComponent extends AXBasePageComponent implements
1070
1087
  }): Promise<void>;
1071
1088
  private footerActionsEvalSeq;
1072
1089
  private aggregateAndEvaluateActions;
1090
+ /**
1091
+ * AX popup lifts `:scope > ax-footer` once after first paint. Widget footer
1092
+ * actions can appear later — move the footer into chrome when it is created.
1093
+ */
1094
+ private scheduleRelocateFooterToPopupChrome;
1095
+ /**
1096
+ * The popup box is on screen before widgets and footer chrome are laid out, so it is held
1097
+ * hidden by the reveal panel class. Wait for the shell to stop resizing, then fade it in.
1098
+ */
1099
+ private revealWhenLayoutStable;
1100
+ private openRevealLoading;
1101
+ private closeRevealLoading;
1073
1102
  private collectWidgetActions;
1074
1103
  private collectDialogActionsFromConfig;
1075
1104
  private evaluatePredicates;