@acorex/platform 20.8.5 → 21.0.0-beta.1

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 (125) hide show
  1. package/fesm2022/acorex-platform-auth.mjs +121 -27
  2. package/fesm2022/acorex-platform-auth.mjs.map +1 -1
  3. package/fesm2022/{acorex-platform-common-common-settings.provider-41RhWqb4.mjs → acorex-platform-common-common-settings.provider-G9XcXXOG.mjs} +4 -4
  4. package/fesm2022/acorex-platform-common-common-settings.provider-G9XcXXOG.mjs.map +1 -0
  5. package/fesm2022/acorex-platform-common.mjs +669 -268
  6. package/fesm2022/acorex-platform-common.mjs.map +1 -1
  7. package/fesm2022/acorex-platform-core.mjs +333 -140
  8. package/fesm2022/acorex-platform-core.mjs.map +1 -1
  9. package/fesm2022/acorex-platform-domain.mjs +557 -826
  10. package/fesm2022/acorex-platform-domain.mjs.map +1 -1
  11. package/fesm2022/acorex-platform-layout-builder.mjs +539 -110
  12. package/fesm2022/acorex-platform-layout-builder.mjs.map +1 -1
  13. package/fesm2022/{acorex-platform-layout-components-binding-expression-editor-popup.component-CSxCnzwU.mjs → acorex-platform-layout-components-binding-expression-editor-popup.component-CWV4XD36.mjs} +15 -15
  14. package/fesm2022/acorex-platform-layout-components-binding-expression-editor-popup.component-CWV4XD36.mjs.map +1 -0
  15. package/fesm2022/acorex-platform-layout-components.mjs +3285 -1035
  16. package/fesm2022/acorex-platform-layout-components.mjs.map +1 -1
  17. package/fesm2022/acorex-platform-layout-designer.mjs +488 -284
  18. package/fesm2022/acorex-platform-layout-designer.mjs.map +1 -1
  19. package/fesm2022/acorex-platform-layout-entity.mjs +15955 -11978
  20. package/fesm2022/acorex-platform-layout-entity.mjs.map +1 -1
  21. package/fesm2022/acorex-platform-layout-views.mjs +410 -170
  22. package/fesm2022/acorex-platform-layout-views.mjs.map +1 -1
  23. package/fesm2022/acorex-platform-layout-widget-core.mjs +548 -474
  24. package/fesm2022/acorex-platform-layout-widget-core.mjs.map +1 -1
  25. package/fesm2022/{acorex-platform-layout-widgets-button-widget-designer.component-CPBzE96V.mjs → acorex-platform-layout-widgets-button-widget-designer.component-fLjWiSFE.mjs} +11 -11
  26. package/fesm2022/acorex-platform-layout-widgets-button-widget-designer.component-fLjWiSFE.mjs.map +1 -0
  27. package/fesm2022/{acorex-platform-layout-widgets-file-list-popup.component-Dtv6U3df.mjs → acorex-platform-layout-widgets-file-list-popup.component-3oRAKxTo.mjs} +22 -77
  28. package/fesm2022/acorex-platform-layout-widgets-file-list-popup.component-3oRAKxTo.mjs.map +1 -0
  29. package/fesm2022/{acorex-platform-layout-widgets-image-preview.popup-QxJfswhK.mjs → acorex-platform-layout-widgets-image-preview.popup-CazpERbX.mjs} +8 -9
  30. package/fesm2022/acorex-platform-layout-widgets-image-preview.popup-CazpERbX.mjs.map +1 -0
  31. package/fesm2022/{acorex-platform-layout-widgets-page-widget-designer.component-CVdssZBD.mjs → acorex-platform-layout-widgets-page-widget-designer.component-BQ4G6aYf.mjs} +17 -17
  32. package/fesm2022/acorex-platform-layout-widgets-page-widget-designer.component-BQ4G6aYf.mjs.map +1 -0
  33. package/fesm2022/acorex-platform-layout-widgets-repeater-widget-column.component-DWuWxUF_.mjs +116 -0
  34. package/fesm2022/acorex-platform-layout-widgets-repeater-widget-column.component-DWuWxUF_.mjs.map +1 -0
  35. package/fesm2022/{acorex-platform-layout-widgets-tabular-data-edit-popup.component-DVaZN9QN.mjs → acorex-platform-layout-widgets-tabular-data-edit-popup.component-fV94u3t2.mjs} +25 -19
  36. package/fesm2022/acorex-platform-layout-widgets-tabular-data-edit-popup.component-fV94u3t2.mjs.map +1 -0
  37. package/fesm2022/{acorex-platform-layout-widgets-tabular-data-view-popup.component-DPGHgXa6.mjs → acorex-platform-layout-widgets-tabular-data-view-popup.component-DyuvQhgN.mjs} +9 -9
  38. package/fesm2022/acorex-platform-layout-widgets-tabular-data-view-popup.component-DyuvQhgN.mjs.map +1 -0
  39. package/fesm2022/{acorex-platform-layout-widgets-text-block-widget-designer.component-CdiNW691.mjs → acorex-platform-layout-widgets-text-block-widget-designer.component-EJMMdpIs.mjs} +7 -7
  40. package/fesm2022/acorex-platform-layout-widgets-text-block-widget-designer.component-EJMMdpIs.mjs.map +1 -0
  41. package/fesm2022/acorex-platform-layout-widgets.mjs +6396 -4058
  42. package/fesm2022/acorex-platform-layout-widgets.mjs.map +1 -1
  43. package/fesm2022/acorex-platform-native.mjs +8 -7
  44. package/fesm2022/acorex-platform-native.mjs.map +1 -1
  45. package/fesm2022/acorex-platform-runtime.mjs +328 -166
  46. package/fesm2022/acorex-platform-runtime.mjs.map +1 -1
  47. package/fesm2022/acorex-platform-themes-default-entity-master-create-view.component-CkptOSO3.mjs +160 -0
  48. package/fesm2022/acorex-platform-themes-default-entity-master-create-view.component-CkptOSO3.mjs.map +1 -0
  49. package/fesm2022/acorex-platform-themes-default-entity-master-modify-view.component-DXC2qtvK.mjs +120 -0
  50. package/fesm2022/acorex-platform-themes-default-entity-master-modify-view.component-DXC2qtvK.mjs.map +1 -0
  51. package/fesm2022/{acorex-platform-themes-default-entity-master-single-view.component-rGsMVAZj.mjs → acorex-platform-themes-default-entity-master-single-view.component-DYyunzKZ.mjs} +16 -23
  52. package/fesm2022/acorex-platform-themes-default-entity-master-single-view.component-DYyunzKZ.mjs.map +1 -0
  53. package/fesm2022/acorex-platform-themes-default-error-401.component-C5lQECDP.mjs +31 -0
  54. package/fesm2022/acorex-platform-themes-default-error-401.component-C5lQECDP.mjs.map +1 -0
  55. package/fesm2022/acorex-platform-themes-default-error-404.component-D5wBXAB-.mjs +25 -0
  56. package/fesm2022/acorex-platform-themes-default-error-404.component-D5wBXAB-.mjs.map +1 -0
  57. package/fesm2022/acorex-platform-themes-default-error-offline.component-AhDiY3DI.mjs +19 -0
  58. package/fesm2022/acorex-platform-themes-default-error-offline.component-AhDiY3DI.mjs.map +1 -0
  59. package/fesm2022/acorex-platform-themes-default.mjs +1687 -69
  60. package/fesm2022/acorex-platform-themes-default.mjs.map +1 -1
  61. package/fesm2022/{acorex-platform-themes-shared-icon-chooser-column.component-TJ9PWHMY.mjs → acorex-platform-themes-shared-icon-chooser-column.component-QL2-ZUVg.mjs} +8 -8
  62. package/fesm2022/acorex-platform-themes-shared-icon-chooser-column.component-QL2-ZUVg.mjs.map +1 -0
  63. package/fesm2022/{acorex-platform-themes-shared-icon-chooser-view.component-BHcKkIx0.mjs → acorex-platform-themes-shared-icon-chooser-view.component-BXydqPt_.mjs} +8 -8
  64. package/fesm2022/acorex-platform-themes-shared-icon-chooser-view.component-BXydqPt_.mjs.map +1 -0
  65. package/fesm2022/{acorex-platform-themes-shared-settings.provider-DSs1o1M6.mjs → acorex-platform-themes-shared-settings.provider-D13QB3Hr.mjs} +2 -2
  66. package/fesm2022/acorex-platform-themes-shared-settings.provider-D13QB3Hr.mjs.map +1 -0
  67. package/fesm2022/acorex-platform-themes-shared-theme-color-chooser-column.component-Cb9iY6k9.mjs +88 -0
  68. package/fesm2022/acorex-platform-themes-shared-theme-color-chooser-column.component-Cb9iY6k9.mjs.map +1 -0
  69. package/fesm2022/acorex-platform-themes-shared-theme-color-chooser-view.component-KP4-BND5.mjs +80 -0
  70. package/fesm2022/acorex-platform-themes-shared-theme-color-chooser-view.component-KP4-BND5.mjs.map +1 -0
  71. package/fesm2022/acorex-platform-themes-shared.mjs +572 -465
  72. package/fesm2022/acorex-platform-themes-shared.mjs.map +1 -1
  73. package/fesm2022/acorex-platform-workflow.mjs +276 -98
  74. package/fesm2022/acorex-platform-workflow.mjs.map +1 -1
  75. package/fesm2022/acorex-platform.mjs.map +1 -1
  76. package/package.json +38 -38
  77. package/{auth/index.d.ts → types/acorex-platform-auth.d.ts} +14 -2
  78. package/{common/index.d.ts → types/acorex-platform-common.d.ts} +261 -24
  79. package/{core/index.d.ts → types/acorex-platform-core.d.ts} +163 -42
  80. package/{domain/index.d.ts → types/acorex-platform-domain.d.ts} +744 -412
  81. package/{layout/builder/index.d.ts → types/acorex-platform-layout-builder.d.ts} +137 -38
  82. package/{layout/components/index.d.ts → types/acorex-platform-layout-components.d.ts} +808 -131
  83. package/{layout/designer/index.d.ts → types/acorex-platform-layout-designer.d.ts} +96 -18
  84. package/{layout/entity/index.d.ts → types/acorex-platform-layout-entity.d.ts} +686 -61
  85. package/{layout/views/index.d.ts → types/acorex-platform-layout-views.d.ts} +80 -47
  86. package/{layout/widget-core/index.d.ts → types/acorex-platform-layout-widget-core.d.ts} +274 -197
  87. package/{layout/widgets/index.d.ts → types/acorex-platform-layout-widgets.d.ts} +583 -104
  88. package/{native/index.d.ts → types/acorex-platform-native.d.ts} +0 -7
  89. package/types/acorex-platform-runtime.d.ts +565 -0
  90. package/{themes/default/index.d.ts → types/acorex-platform-themes-default.d.ts} +105 -4
  91. package/{themes/shared/index.d.ts → types/acorex-platform-themes-shared.d.ts} +14 -5
  92. package/{workflow/index.d.ts → types/acorex-platform-workflow.d.ts} +96 -81
  93. package/fesm2022/acorex-platform-common-common-settings.provider-41RhWqb4.mjs.map +0 -1
  94. package/fesm2022/acorex-platform-layout-components-binding-expression-editor-popup.component-CSxCnzwU.mjs.map +0 -1
  95. package/fesm2022/acorex-platform-layout-widgets-button-widget-designer.component-CPBzE96V.mjs.map +0 -1
  96. package/fesm2022/acorex-platform-layout-widgets-file-list-popup.component-Dtv6U3df.mjs.map +0 -1
  97. package/fesm2022/acorex-platform-layout-widgets-image-preview.popup-QxJfswhK.mjs.map +0 -1
  98. package/fesm2022/acorex-platform-layout-widgets-page-widget-designer.component-CVdssZBD.mjs.map +0 -1
  99. package/fesm2022/acorex-platform-layout-widgets-repeater-widget-column.component-BCxE0RTB.mjs +0 -111
  100. package/fesm2022/acorex-platform-layout-widgets-repeater-widget-column.component-BCxE0RTB.mjs.map +0 -1
  101. package/fesm2022/acorex-platform-layout-widgets-tabular-data-edit-popup.component-DVaZN9QN.mjs.map +0 -1
  102. package/fesm2022/acorex-platform-layout-widgets-tabular-data-view-popup.component-DPGHgXa6.mjs.map +0 -1
  103. package/fesm2022/acorex-platform-layout-widgets-text-block-widget-designer.component-CdiNW691.mjs.map +0 -1
  104. package/fesm2022/acorex-platform-themes-default-entity-master-create-view.component-D4hU2SCE.mjs +0 -160
  105. package/fesm2022/acorex-platform-themes-default-entity-master-create-view.component-D4hU2SCE.mjs.map +0 -1
  106. package/fesm2022/acorex-platform-themes-default-entity-master-list-view.component-CLDoygoI.mjs +0 -1610
  107. package/fesm2022/acorex-platform-themes-default-entity-master-list-view.component-CLDoygoI.mjs.map +0 -1
  108. package/fesm2022/acorex-platform-themes-default-entity-master-modify-view.component-BVTklnzs.mjs +0 -120
  109. package/fesm2022/acorex-platform-themes-default-entity-master-modify-view.component-BVTklnzs.mjs.map +0 -1
  110. package/fesm2022/acorex-platform-themes-default-entity-master-single-view.component-rGsMVAZj.mjs.map +0 -1
  111. package/fesm2022/acorex-platform-themes-default-error-401.component-53VB-PS_.mjs +0 -31
  112. package/fesm2022/acorex-platform-themes-default-error-401.component-53VB-PS_.mjs.map +0 -1
  113. package/fesm2022/acorex-platform-themes-default-error-404.component-DVF9soT5.mjs +0 -25
  114. package/fesm2022/acorex-platform-themes-default-error-404.component-DVF9soT5.mjs.map +0 -1
  115. package/fesm2022/acorex-platform-themes-default-error-offline.component-CwNNHzZn.mjs +0 -19
  116. package/fesm2022/acorex-platform-themes-default-error-offline.component-CwNNHzZn.mjs.map +0 -1
  117. package/fesm2022/acorex-platform-themes-shared-icon-chooser-column.component-TJ9PWHMY.mjs.map +0 -1
  118. package/fesm2022/acorex-platform-themes-shared-icon-chooser-view.component-BHcKkIx0.mjs.map +0 -1
  119. package/fesm2022/acorex-platform-themes-shared-settings.provider-DSs1o1M6.mjs.map +0 -1
  120. package/fesm2022/acorex-platform-themes-shared-theme-color-chooser-column.component-BUPs84MI.mjs +0 -65
  121. package/fesm2022/acorex-platform-themes-shared-theme-color-chooser-column.component-BUPs84MI.mjs.map +0 -1
  122. package/fesm2022/acorex-platform-themes-shared-theme-color-chooser-view.component-BotknoHn.mjs +0 -64
  123. package/fesm2022/acorex-platform-themes-shared-theme-color-chooser-view.component-BotknoHn.mjs.map +0 -1
  124. package/runtime/index.d.ts +0 -307
  125. /package/{index.d.ts → types/acorex-platform.d.ts} +0 -0
@@ -1,31 +1,33 @@
1
1
  import * as _acorex_platform_core from '@acorex/platform/core';
2
- import { AXPExecuteCommandResult, AXPMetaData, AXPDataSourceDefinitionProvider, AXPDataSourceDefinition, AXPGridLayoutOptions, AXPBreadcrumbItem, AXPFilterQuery, AXPFilterDefinition, AXPExecuteCommand, AXPUserReference, AXPQueryRequest, AXPPagedListResult, AXPCategoryEntity as AXPCategoryEntity$1, AXPEntityOp, AXPMiddlewareErrorResponse, AXHighlightService, AXPExpression, AXPColumnQuery, AXPSortDefinition, AXPDeviceService, AXPBroadcastEventService, AXPActionMenuItem } from '@acorex/platform/core';
2
+ import { AXPExecuteCommandResult, AXPMetaData, AXPDataSourceDefinitionProvider, AXPDataSourceDefinition, AXPGridLayoutOptions, AXPBreadcrumbItem, AXPFilterQuery, AXPFilterDefinition, AXPExecuteCommand, AXPUserReference, AXPQueryRequest, AXPPagedListResult, AXPCategoryEntity as AXPCategoryEntity$1, AXPEntityOp, AXPMiddlewareErrorResponse, AXHighlightService, AXPExpression, AXPMultiLanguageString, AXPColumnQuery, AXPSortDefinition, AXPDeviceService, AXPBroadcastEventService, AXPActionMenuItem, AXPContextChangeEvent } from '@acorex/platform/core';
3
3
  import { AXPCommand, AXPQueryExecutor, AXPCommandService, AXPQuery } from '@acorex/platform/runtime';
4
4
  import * as _angular_core from '@angular/core';
5
- import { ElementRef, InjectionToken, Injector, Type, OnInit, ChangeDetectorRef, OnDestroy } from '@angular/core';
5
+ import { ElementRef, InjectionToken, Injector, Type, EnvironmentProviders, OnInit, ChangeDetectorRef, OnDestroy } from '@angular/core';
6
6
  import { AXPopoverComponent } from '@acorex/components/popover';
7
7
  import * as i3 from '@acorex/platform/layout/widget-core';
8
8
  import { AXPWidgetNode, AXPWidgetColumnNode, AXPWidgetCoreService, AXPColumnWidgetComponent, AXPValueWidgetComponent, AXPWidgetConfig, AXPWidgetRendererDirective } from '@acorex/platform/layout/widget-core';
9
- import { AXPPreloadFiltersApplyEvent, AXPColumnItemListItem, AXPCategoryTreeDataSource } from '@acorex/platform/layout/components';
9
+ import { AXPPreloadFiltersApplyEvent, AXPColumnItemListItem, AXPDataSelectorAllowCreate, AXPCategoryTreeDataSource } from '@acorex/platform/layout/components';
10
10
  import { AXPPageLayoutBaseComponent } from '@acorex/platform/layout/views';
11
- import { AXStyleColorType, AXDataSource, AXDataSourceFilterOption, AXValueChangedEvent, AXClickEvent, AXFocusEvent, AXHtmlEvent } from '@acorex/cdk/common';
11
+ import { AXStyleColorType, AXDataSource, AXDataSourceFilterOption, AXDataSourceSortOption, AXValueChangedEvent, AXClickEvent, AXFocusEvent, AXHtmlEvent } from '@acorex/cdk/common';
12
12
  import * as _acorex_platform_common from '@acorex/platform/common';
13
- import { AXPEntityCommandScope, AXPEntity, AXPEntityAction, AXPEntityProperty, AXPEntityTableColumn, AXPRelatedEntity, AXPEntitySectionView, AXPEntityPropertyCreateView, AXPEntityPropertyLayoutConfig, AXPQueryView, AXPEntityPropertyView, AXPCategoryEntity, AXPEntityPropertyGroup, AXPEntityMasterCreateLayoutView, AXPEntityMasterUpdateLayoutView, AXPEntityMasterSingleLayoutView, AXPEntityMasterListView, AXPEntityDetailListView, AXPQueryFilter } from '@acorex/platform/common';
13
+ import { AXPEntityCommandScope, AXPEntity, AXPEntityAction, AXPEntityProperty, AXPEntityTableColumn, AXPRelatedEntity, AXPEntitySectionView, AXPEntityPropertyCreateView, AXPEntityPropertyLayoutConfig, AXPQueryView, AXPEntityPropertyView, AXPCategoryEntity, AXPEntityPropertyGroup, AXPEntityMasterCreateLayoutView, AXPEntityMasterUpdateLayoutView, AXPEntityMasterSingleLayoutView, AXPEntityMasterListView, AXPEntityDetailListView, AXPEntityPage, AXPQueryFilter } from '@acorex/platform/common';
14
14
  import * as i1 from '@angular/router';
15
15
  import { ResolveFn } from '@angular/router';
16
16
  import * as rxjs from 'rxjs';
17
17
  import { Subject } from 'rxjs';
18
+ export { AXPEntityDefinitionCrudService, AXP_ENTITY_DEFINITION_CRUD_SERVICE } from '@acorex/platform/domain';
18
19
  import * as i2 from '@acorex/platform/workflow';
19
20
  import { AXPWorkflowService, AXPWorkflow, AXPWorkflowAction, AXPWorkflowContext } from '@acorex/platform/workflow';
21
+ import * as i4 from '@acorex/platform/layout/builder';
22
+ import { IActionBuilder, AXPDialogRef, IFormFieldBuilder } from '@acorex/platform/layout/builder';
20
23
  import { AXPSessionService } from '@acorex/platform/auth';
21
24
  import { AXTreeViewNode, AXTreeViewComponent, AXTreeViewNodeSelectEvent } from '@acorex/components/tree-view';
22
- import { AXTranslationService } from '@acorex/core/translation';
23
25
  import { AXPopupSizeType, AXPopupService } from '@acorex/components/popup';
24
- import { IActionBuilder, AXPDialogRef, IFormFieldBuilder } from '@acorex/platform/layout/builder';
25
26
  import { AXBasePageComponent } from '@acorex/components/page';
26
27
  import { AXFormatService } from '@acorex/core/format';
27
28
  import { AXTagBoxComponent } from '@acorex/components/tag-box';
28
- import { AXPDataListWidgetComponentOptions } from '@acorex/platform/layout/widgets';
29
+ import * as _acorex_core_translation from '@acorex/core/translation';
30
+ import { AXPProviderSelectWidgetEditBase, AXPDataListWidgetComponentOptions } from '@acorex/platform/layout/widgets';
29
31
 
30
32
  declare class AXPCreateEntityCommand implements AXPCommand<any, any> {
31
33
  private entityForm;
@@ -40,6 +42,70 @@ declare class AXPCreateEntityCommand implements AXPCommand<any, any> {
40
42
  static ɵprov: _angular_core.ɵɵInjectableDeclaration<AXPCreateEntityCommand>;
41
43
  }
42
44
 
45
+ /**
46
+ * Merged into AI/tool payloads for `Entity:Create` so post-create navigation does not run from agent flows.
47
+ * Applied in the AI module when normalizing tool arguments (not in the generic command executor).
48
+ */
49
+ declare const axpCreateEntityAiToolInputDefaults: {
50
+ readonly __context__: {
51
+ readonly options: {
52
+ readonly process: {
53
+ readonly redirect: false;
54
+ };
55
+ };
56
+ };
57
+ };
58
+ declare const axpCreateEntityCommandDefinition: {
59
+ key: string;
60
+ title: string;
61
+ description: string;
62
+ executionMode: "frontend";
63
+ inputs: ({
64
+ name: string;
65
+ title: string;
66
+ description: string;
67
+ interface: {
68
+ name: string;
69
+ };
70
+ validations?: undefined;
71
+ } | {
72
+ name: string;
73
+ title: string;
74
+ description: string;
75
+ interface: {
76
+ name: string;
77
+ };
78
+ validations: {
79
+ rule: string;
80
+ }[];
81
+ })[];
82
+ outcomes: {
83
+ mode: "dynamic";
84
+ summary: string;
85
+ derivesFrom: string;
86
+ };
87
+ capabilities: "ai"[];
88
+ ai: {
89
+ shortDescription: string;
90
+ usage: {
91
+ whenToUse: string[];
92
+ avoidWhen: string[];
93
+ followUpTools: string[];
94
+ };
95
+ tags: string[];
96
+ toolInputDefaults: {
97
+ __context__: {
98
+ readonly options: {
99
+ readonly process: {
100
+ readonly redirect: false;
101
+ };
102
+ };
103
+ };
104
+ };
105
+ };
106
+ categories: _acorex_platform_core.AXPDefinitionCategory[];
107
+ };
108
+
43
109
  declare class AXPUpdateEntityCommand implements AXPCommand<any, any> {
44
110
  private readonly entityForm;
45
111
  private readonly settingsService;
@@ -96,6 +162,15 @@ declare class AXPEntityDetailPopoverComponent {
96
162
  protected entityDetails: _angular_core.WritableSignal<any>;
97
163
  protected isLoadingDetails: _angular_core.WritableSignal<boolean>;
98
164
  protected isDetailPopoverOpen: _angular_core.WritableSignal<boolean>;
165
+ /**
166
+ * Stable list of property widgets for the template. Must be a signal (computed), not a method:
167
+ * calling a method from the template rebuilds nodes every CD cycle and can make the widget renderer loop.
168
+ */
169
+ protected readonly entityPropertiesWithWidgets: _angular_core.Signal<{
170
+ name: string;
171
+ title: string;
172
+ node: AXPWidgetNode;
173
+ }[]>;
99
174
  /**
100
175
  * Show the entity detail popover
101
176
  */
@@ -121,11 +196,12 @@ declare class AXPEntityDetailPopoverComponent {
121
196
  * Name priority MUST come before widget-type priority.
122
197
  */
123
198
  private getNameImportanceScore;
124
- protected getEntityPropertiesWithWidgets(): Array<{
125
- name: string;
126
- title: string;
127
- node: AXPWidgetNode;
128
- }>;
199
+ private buildEntityPropertiesWithWidgets;
200
+ /**
201
+ * Resolves the data path for a property. For lookups with expose, returns the expanded path
202
+ * when data has it (e.g. personTitle). Otherwise returns property name (e.g. personTitleId).
203
+ */
204
+ private resolveDataPath;
129
205
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPEntityDetailPopoverComponent, never>;
130
206
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXPEntityDetailPopoverComponent, "axp-entity-detail-popover", never, { "entity": { "alias": "entity"; "required": true; "isSignal": true; }; "entityId": { "alias": "entityId"; "required": true; "isSignal": true; }; "textField": { "alias": "textField"; "required": false; "isSignal": true; }; "valueField": { "alias": "valueField"; "required": false; "isSignal": true; }; "item": { "alias": "item"; "required": false; "isSignal": true; }; "breadcrumb": { "alias": "breadcrumb"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
131
207
  }
@@ -214,7 +290,9 @@ declare class AXPEntityCommandTriggerViewModel {
214
290
  options: any;
215
291
  metadata?: AXPMetaData;
216
292
  default?: boolean;
217
- constructor(entity: AXPEntity, action: AXPEntityAction);
293
+ items?: AXPEntityCommandTriggerViewModel[];
294
+ isChild?: boolean;
295
+ constructor(entity: AXPEntity, action: AXPEntityAction, isChild?: boolean);
218
296
  }
219
297
  declare class AXPEntityListViewColumnViewModel {
220
298
  readonly property: AXPEntityProperty;
@@ -437,6 +515,8 @@ declare class AXPEntityMasterListViewModel {
437
515
  hasInlineFilters: _angular_core.Signal<boolean>;
438
516
  beardcrumbs: _angular_core.Signal<AXPBreadcrumbItem[]>;
439
517
  private allActions;
518
+ /** Flattened actions including children for execute lookup */
519
+ private flattenedActions;
440
520
  getPrimaryActions(): Promise<AXPEntityCommandTriggerViewModel[]>;
441
521
  getSecondaryActions(): Promise<AXPEntityCommandTriggerViewModel[]>;
442
522
  selectedScopeActionsCount: _angular_core.Signal<number>;
@@ -490,6 +570,11 @@ declare class AXPEntityMasterListViewModel {
490
570
  * pre-fills categoryIds and categories for the create form.
491
571
  */
492
572
  private mergeDefaultCategoryForCreate;
573
+ /**
574
+ * Seeds create payloads with fixed list-view conditions (e.g. scope=T on the tenant dashboards view)
575
+ * so new rows match the view context and downstream queries (such as home dashboard) can find them.
576
+ */
577
+ private mergeViewConditionsForCreate;
493
578
  private evaluateExpressions;
494
579
  execute(command: AXPExecuteCommand): Promise<void>;
495
580
  destroy(): void;
@@ -833,6 +918,7 @@ interface AXPEntityDefinitionPreloader {
833
918
  }
834
919
  declare class AXPEntityDefinitionRegistryService {
835
920
  private middleware;
921
+ private columnEnrichment;
836
922
  private onChanged;
837
923
  get onChanged$(): rxjs.Observable<{
838
924
  name: string;
@@ -894,28 +980,71 @@ declare class AXPEntityDefinitionRegistryService {
894
980
  static ɵprov: _angular_core.ɵɵInjectableDeclaration<AXPEntityDefinitionRegistryService>;
895
981
  }
896
982
 
983
+ /**
984
+ * One audit point in time for a record lifecycle event.
985
+ *
986
+ * Used inside {@link AXPRecordAuditInfo} (`created`, `updated`, `deleted`).
987
+ * Backends and mock middleware typically set `at` and `by`; `reason` and `source`
988
+ * (for example `api`, `system`, `import`) are optional diagnostic fields.
989
+ */
897
990
  interface AXPAuditEvent {
898
991
  at?: Date;
899
992
  by?: AXPUserReference;
993
+ /** Optional business or technical reason for the event. */
900
994
  reason?: string;
995
+ /** Optional origin of the change (for example `api`, `system`, `import`). */
901
996
  source?: string;
902
997
  }
998
+ /**
999
+ * Aggregated audit trail for a persisted row.
1000
+ *
1001
+ * Filled by APIs or connectivity mock middleware when creating, updating, or
1002
+ * soft-deleting records. UI surfaces may show these via the history plugin or
1003
+ * custom columns. Version snapshot pipelines often **omit** this object from
1004
+ * stored snapshots while still applying it to live payloads.
1005
+ *
1006
+ * @remarks Fields are optional today; callers should tolerate partial data.
1007
+ */
903
1008
  interface AXPRecordAuditInfo {
904
1009
  created?: AXPAuditEvent;
905
1010
  updated?: AXPAuditEvent;
906
1011
  deleted?: AXPAuditEvent;
907
1012
  }
1013
+ /**
1014
+ * Cross-cutting flags that are not part of the domain schema but affect how a
1015
+ * row is shown or edited (visibility, built-in/system rows, immutability).
1016
+ *
1017
+ * Module entity models sometimes expose only this slice (for example
1018
+ * `stateInfo` on business units) when the rest of the row uses a bespoke shape.
1019
+ *
1020
+ * @remarks Entity list/detail flows should honor these flags where applicable.
1021
+ */
908
1022
  interface AXPRecordStateInfo {
909
1023
  isHidden?: boolean;
910
1024
  isSystem?: boolean;
911
1025
  isImmutable?: boolean;
1026
+ /** @deprecated Prefer explicit domain modeling over this flag. */
912
1027
  isDistributed?: boolean;
913
1028
  }
1029
+ /**
1030
+ * Tenancy and actor scope for a row in a multi-tenant application.
1031
+ *
1032
+ * Used to associate a record with a tenant, application instance, or owning
1033
+ * user when the API returns ownership metadata alongside domain fields.
1034
+ */
914
1035
  interface AXPRecordOwnershipInfo {
915
1036
  tenantId?: string;
916
1037
  applicationId?: string;
917
1038
  userId?: string;
918
1039
  }
1040
+ /**
1041
+ * Base shape for **entity row** TypeScript models across modules: a stable
1042
+ * identifier plus optional platform metadata.
1043
+ *
1044
+ * Module-specific interfaces extend this with domain properties
1045
+ * (`extends AXPEntityModel<string>` / `AXPEntityModel<Id>`) while reusing
1046
+ * `auditInfo`, `stateInfo`, and `ownershipInfo` when the backend sends them.
1047
+ */
919
1048
  interface AXPEntityModel<Id> {
920
1049
  id: Id;
921
1050
  auditInfo?: AXPRecordAuditInfo;
@@ -1046,9 +1175,59 @@ declare class AXPEntityResolver {
1046
1175
  static ɵprov: _angular_core.ɵɵInjectableDeclaration<AXPEntityResolver>;
1047
1176
  }
1048
1177
 
1178
+ /**
1179
+ * Built-in entity detail tabs from plugins. Sidebar order (after related page-list / page-detail
1180
+ * tabs): meta-data-builder → attachments → documents → comments → history.
1181
+ */
1182
+ type EntityDetailPluginPageSlot = 'meta-data-builder' | 'attachments' | 'documents' | 'comments' | 'history';
1183
+ /** Identifies an `entity.pages` entry when skipping its order during recomputation. */
1184
+ interface SkipEntityComponentPageRef {
1185
+ componentKey: string;
1186
+ /** When set, only the page with this `field` is skipped (e.g. attachments / meta-data per field). */
1187
+ field?: string;
1188
+ }
1189
+ interface ResolveEntityPluginDetailPageOrderOptions {
1190
+ /** Component key of the page being added or updated (used to count sibling tabs in the same slot). */
1191
+ componentKey: string;
1192
+ /**
1193
+ * Ignore this page when counting siblings / recomputing (the page currently being updated).
1194
+ */
1195
+ skipPage?: SkipEntityComponentPageRef;
1196
+ /**
1197
+ * Field name for multi-page slots (`attachments`, `meta-data-builder`). Omit for single-tab slots.
1198
+ */
1199
+ field?: string;
1200
+ /** Gap between auto-assigned related tab orders. Default: 10. */
1201
+ relatedOrderStep?: number;
1202
+ /** Minimum start of the plugin zone (after related tabs). Default: 100_000. */
1203
+ pluginZoneFloor?: number;
1204
+ }
1205
+ /**
1206
+ * Resolves `layout.order` for a built-in plugin detail tab (`entity.pages`).
1207
+ *
1208
+ * 1. Assigns finite `layout.order` values to related `page-list` / `page-detail` rows that omit
1209
+ * `order` (the composer otherwise treats them as +Infinity).
1210
+ * 2. Places plugin tabs in a fixed relative order: meta-data-builder → attachments → documents →
1211
+ * comments → history, after all related tabs.
1212
+ */
1213
+ declare function resolveEntityPluginDetailPageOrder(input: {
1214
+ relatedEntities?: AXPRelatedEntity[];
1215
+ pages?: Array<AXPEntityPage & {
1216
+ field?: string;
1217
+ }>;
1218
+ }, slot: EntityDetailPluginPageSlot, options: ResolveEntityPluginDetailPageOrderOptions): number;
1219
+
1220
+ /**
1221
+ * Sort key for entries in `interfaces.master.{create|update|single}.properties`.
1222
+ * Uses `layout.order` when set and finite; otherwise the property index in that list.
1223
+ */
1224
+ declare function getMasterInterfacePropertySortKey(interfaceRow: {
1225
+ layout?: AXPEntityPropertyLayoutConfig | undefined;
1226
+ } | undefined, indexInMasterInterfaceList: number): number;
1227
+
1049
1228
  declare class AXPEntityModule {
1050
1229
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPEntityModule, never>;
1051
- static ɵmod: _angular_core.ɵɵNgModuleDeclaration<AXPEntityModule, never, [typeof i1.RouterModule, typeof i2.AXPWorkflowModule, typeof i3.AXPWidgetCoreModule], never>;
1230
+ static ɵmod: _angular_core.ɵɵNgModuleDeclaration<AXPEntityModule, never, [typeof i1.RouterModule, typeof i2.AXPWorkflowModule, typeof i3.AXPWidgetCoreModule, typeof i4.LayoutBuilderModule], never>;
1052
1231
  static ɵinj: _angular_core.ɵɵInjectorDeclaration<AXPEntityModule>;
1053
1232
  }
1054
1233
 
@@ -1218,41 +1397,57 @@ declare const columnWidthMiddleware: AXPEntityModifier;
1218
1397
  declare const columnWidthMiddlewareProvider: AXPEntityModifierProvider;
1219
1398
 
1220
1399
  /**
1221
- * Configuration for section ordering
1400
+ * Default order for common list view columns.
1401
+ * Lower numbers appear first. Columns not in this map get order 500 (middle).
1402
+ * Use high numbers (990+) for columns that should appear at the end.
1403
+ */
1404
+ declare const DEFAULT_COLUMN_ORDER: Record<string, number>;
1405
+ /**
1406
+ * Entity modifier that sorts list view columns by default order.
1407
+ * Similar to layout-ordering for sections/properties, but for list columns.
1408
+ */
1409
+ declare const columnOrderingMiddleware: AXPEntityModifier;
1410
+ /**
1411
+ * Factory to create a column ordering middleware with custom order config
1222
1412
  */
1413
+ declare const createColumnOrderingMiddlewareProvider: (columnOrder?: Record<string, number>, entityName?: string | RegExp) => AXPEntityModifierProvider;
1414
+ /**
1415
+ * Default provider that applies column ordering to all entities
1416
+ */
1417
+ declare const columnOrderingMiddlewareProvider: AXPEntityModifierProvider;
1418
+
1419
+ /**
1420
+ * Default colSpans for two properties in one section (`md` / `lg`).
1421
+ * Missing `positions[*].colSpan` are filled only; entities keep full control.
1422
+ */
1423
+ interface PairSpanRule {
1424
+ first: string;
1425
+ second: string;
1426
+ /** Col span applied to {@link first} */
1427
+ firstSpan: number;
1428
+ /** Col span applied to {@link second} */
1429
+ secondSpan: number;
1430
+ breakpoints?: readonly ('sm' | 'md' | 'lg')[];
1431
+ }
1223
1432
  interface SectionOrderConfig {
1224
- /**
1225
- * Default order for common sections
1226
- * Lower numbers appear first
1227
- */
1228
1433
  sections: Record<string, number>;
1434
+ properties: Record<string, number>;
1229
1435
  /**
1230
- * Default order for properties within sections
1231
- * Key format: 'sectionId.propertyName' or just 'propertyName' for any section
1436
+ * Defaults for pairing two columns (e.g. code + title). Replace or extend defaults.
1437
+ * - `undefined`: use {@link DEFAULT_PAIR_SPAN_RULES}
1438
+ * - `false`: do not apply any pair spans
1439
+ * - `[...]` + spread `DEFAULT_PAIR_SPAN_RULES` when you want to append custom pairs
1232
1440
  */
1233
- properties: Record<string, number>;
1441
+ pairSpanRules?: PairSpanRule[] | false;
1234
1442
  }
1235
1443
  /**
1236
- * Default order for common sections
1444
+ * Default shipped rules: narrow identifier + wider title on `md` / `lg`.
1237
1445
  */
1446
+ declare const DEFAULT_PAIR_SPAN_RULES: readonly PairSpanRule[];
1238
1447
  declare const DEFAULT_SECTION_ORDER: Record<string, number>;
1239
- /**
1240
- * Default order for common properties
1241
- * Format: 'sectionId.propertyName' for section-specific or 'propertyName' for any section
1242
- */
1243
1448
  declare const DEFAULT_PROPERTY_ORDER: Record<string, number>;
1244
- /**
1245
- * Factory to create a layout ordering middleware
1246
- */
1247
1449
  declare const layoutOrderingMiddlewareFactory: (config: SectionOrderConfig) => AXPEntityModifier;
1248
- /**
1249
- * Helper to create a provider for the layout ordering middleware
1250
- * By default it applies to all entities using the '*' pattern
1251
- */
1252
1450
  declare const createLayoutOrderingMiddlewareProvider: (config?: Partial<SectionOrderConfig>, entityName?: string | RegExp) => AXPEntityModifierProvider;
1253
- /**
1254
- * Default provider registered with the default configuration
1255
- */
1256
1451
  declare const layoutOrderingMiddlewareProvider: AXPEntityModifierProvider;
1257
1452
 
1258
1453
  /**
@@ -1271,6 +1466,28 @@ declare class AXPLayoutOrderingConfigService {
1271
1466
  static ɵprov: _angular_core.ɵɵInjectableDeclaration<AXPLayoutOrderingConfigService>;
1272
1467
  }
1273
1468
 
1469
+ /**
1470
+ * Ensures all entities have a searchResult.description.
1471
+ * Uses @{i18nScope}:module.title when missing (guaranteed to exist in i18n).
1472
+ */
1473
+ declare const searchResultDescriptionMiddleware: AXPEntityModifier;
1474
+ declare const searchResultDescriptionMiddlewareProvider: AXPEntityModifierProvider;
1475
+
1476
+ /**
1477
+ * When enabled in regional settings ({@link AXPRegionalSetting.MultiLanguageSupport}), walks each
1478
+ * property's `schema.interface` widget tree and sets `options.multiLanguage` on matching text-like
1479
+ * editors (including nested GridLayout leaves such as `pre.content` / `post.summaryContent`), unless
1480
+ * the node already specifies `multiLanguage` (including explicit false to opt out).
1481
+ */
1482
+ declare const defaultMultiLanguageMiddleware: AXPEntityModifier;
1483
+ declare const defaultMultiLanguageMiddlewareProvider: AXPEntityModifierProvider;
1484
+
1485
+ /**
1486
+ * Registers entity CRUD commands and queries for the given entity keys.
1487
+ * Use in app/module providers; consumes AXPEntityService from this package.
1488
+ */
1489
+ declare function provideEntity(entityKeys: string[]): EnvironmentProviders;
1490
+
1274
1491
  interface AXPGetEntityDetailsQueryInput {
1275
1492
  entity: string;
1276
1493
  id: string;
@@ -1304,9 +1521,14 @@ declare class AXPGetEntityDetailsQuery implements AXPQuery<AXPGetEntityDetailsQu
1304
1521
  static ɵprov: _angular_core.ɵɵInjectableDeclaration<AXPGetEntityDetailsQuery>;
1305
1522
  }
1306
1523
 
1524
+ /**
1525
+ * i18n key for the synthetic root node ("all categories"). Resolve in templates with the translate pipe.
1526
+ */
1527
+ declare const AXP_CATEGORY_TREE_ROOT_TITLE_I18N_KEY = "@general:terms.interface.selection.all-items";
1307
1528
  interface CategoryQueryEvent {
1308
1529
  skip: number;
1309
1530
  take: number;
1531
+ sort?: AXDataSourceSortOption[];
1310
1532
  filter?: {
1311
1533
  field?: string;
1312
1534
  value?: unknown;
@@ -1336,7 +1558,14 @@ interface CategoryTreeNodeData {
1336
1558
  }
1337
1559
  declare class AXPCategoryTreeService {
1338
1560
  protected readonly entityResolver: AXPEntityDefinitionRegistryService;
1339
- protected readonly translate: AXTranslationService;
1561
+ private readonly translation;
1562
+ /** Sort field for list queries (backend); matches configured category display field. */
1563
+ private getAlphabeticalSortOptions;
1564
+ /**
1565
+ * Sort tree nodes by resolved display title (locale-aware).
1566
+ * Ensures correct order for multi-language titles when storage order differs from UI order.
1567
+ */
1568
+ private sortTreeNodesByDisplayTitle;
1340
1569
  /**
1341
1570
  * Initialize category tree data source
1342
1571
  */
@@ -1374,6 +1603,48 @@ declare class AXPCategoryTreeService {
1374
1603
  static ɵprov: _angular_core.ɵɵInjectableDeclaration<AXPCategoryTreeService>;
1375
1604
  }
1376
1605
 
1606
+ declare class AXPRelatedColumnEnrichmentService {
1607
+ private readonly metadataResolver;
1608
+ /**
1609
+ * Enriches entity columns with:
1610
+ * 1. dataPath for FK columns (e.g. fromPersonId) derived from lookup property schema
1611
+ * 2. title and showAs from related entity properties for dotted paths (e.g. person.firstName)
1612
+ */
1613
+ enrich(entity: AXPEntity): Promise<AXPEntity>;
1614
+ /**
1615
+ * Derives dataPath for FK columns from lookup property schema.
1616
+ * Uses expose.target where source matches textField (default 'title').
1617
+ */
1618
+ private deriveDataPathForFkColumn;
1619
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPRelatedColumnEnrichmentService, never>;
1620
+ static ɵprov: _angular_core.ɵɵInjectableDeclaration<AXPRelatedColumnEnrichmentService>;
1621
+ }
1622
+
1623
+ interface AXPRelatedColumnMetadata {
1624
+ title?: string;
1625
+ showAs?: AXPEntityTableColumn['showAs'];
1626
+ }
1627
+ declare class AXPRelatedColumnMetadataResolver {
1628
+ private readonly entityLoader;
1629
+ /**
1630
+ * Resolves title and showAs for a column that references a related entity property via dotted path.
1631
+ * Uses relatedEntities when available; falls back to lookup expose when not.
1632
+ */
1633
+ resolve(entity: AXPEntity, columnName: string): Promise<AXPRelatedColumnMetadata | null>;
1634
+ /**
1635
+ * Finds a lookup property whose expose target matches the dotted path.
1636
+ * Returns the lookup's entity string (e.g. 'PersonCore.Person') or null.
1637
+ */
1638
+ private findLookupEntityByExposeTarget;
1639
+ /**
1640
+ * Derives showAs from source property schema.
1641
+ * Passes through the full interface (type, options, children) for column display.
1642
+ */
1643
+ private deriveShowAs;
1644
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPRelatedColumnMetadataResolver, never>;
1645
+ static ɵprov: _angular_core.ɵɵInjectableDeclaration<AXPRelatedColumnMetadataResolver>;
1646
+ }
1647
+
1377
1648
  interface IEntitySelectorStage {
1378
1649
  /** Select target entity using "module.entity" format */
1379
1650
  entity(fullName: string): IInterfaceSelectorStage;
@@ -1391,6 +1662,8 @@ interface IPropertyFilterStage {
1391
1662
  include(...propertyNames: string[]): IPropertyFilterStage;
1392
1663
  /** Exclude provided property names (by AXPEntityProperty.name). Ignored if include() was already set. */
1393
1664
  exclude(...propertyNames: string[]): IPropertyFilterStage;
1665
+ /** Mark provided property names as readonly. Overrides property schema for display. */
1666
+ readonlyProperties(...propertyNames: string[]): IPropertyFilterStage;
1394
1667
  /** Optionally override dialog title */
1395
1668
  title(text: string): IPropertyFilterStage;
1396
1669
  /** Provide initial dialog context/model data */
@@ -1419,6 +1692,7 @@ declare class AXPEntityFormBuilderService implements IEntitySelectorStage {
1419
1692
  private readonly entityRegistry;
1420
1693
  private readonly layoutBuilder;
1421
1694
  private readonly deviceService;
1695
+ private readonly expressionEvaluator;
1422
1696
  entity(fullName: string): IInterfaceSelectorStage;
1423
1697
  /**
1424
1698
  * Fetches a record by ID for the specified entity.
@@ -1480,12 +1754,23 @@ declare function entityMasterCrudActions(options?: {
1480
1754
  }): AXPEntityAction[];
1481
1755
  declare function entityMasterRecordActions(): AXPEntityAction[];
1482
1756
  declare function entityDetailsCreateActions(parentId: string): AXPEntityAction;
1757
+ /**
1758
+ * Type-level Create with empty `process.data`; the FK is supplied from `relatedEntity.persistence.foreignKeyField`
1759
+ * when the related list is built (see `mergeForeignKeyFieldIntoCreateActions`).
1760
+ */
1761
+ declare function entityDetailsCreateActionsDeferredParent(): AXPEntityAction;
1762
+ /**
1763
+ * Ensures each type-level `Entity:Create` action includes `process.data[foreignKeyField]` bound to the parent row id.
1764
+ */
1765
+ declare function mergeForeignKeyFieldIntoCreateActions(foreignKeyField: string | undefined, actions: AXPEntityAction[] | undefined): AXPEntityAction[];
1766
+ /** Property names hidden on nested Create from a related list (`excludeProperties` plus `foreignKeyField` when set). */
1767
+ declare function collectNestedCreateHiddenProperties(relatedEntity: AXPRelatedEntity): string[] | undefined;
1483
1768
  declare function entityDetailsSimpleCondition(fk: string): AXPQueryFilter;
1484
1769
  declare function entityDetailsReferenceCondition(type: string): AXPQueryFilter[];
1485
1770
  declare function entityDetailsEditAction(): AXPEntityAction;
1486
1771
  declare function entityDetailsNewEditAction(): AXPEntityAction;
1487
1772
  declare function entityOverrideDetailsViewAction(): AXPEntityAction;
1488
- declare function entityDetailsCrudActions(parentId: string, options?: {
1773
+ declare function entityDetailsCrudActions(parentId?: string, options?: {
1489
1774
  create?: boolean;
1490
1775
  delete?: boolean;
1491
1776
  view?: boolean;
@@ -1510,6 +1795,8 @@ declare function detectEntityChanges(oldObj: any, newObj: any): AXPEntityChangeS
1510
1795
 
1511
1796
  declare class AXPEntityCategoryTreeSelectorComponent extends AXBasePageComponent implements OnInit {
1512
1797
  protected readonly categoryTreeService: AXPCategoryTreeService;
1798
+ /** i18n key for the synthetic "all items" root row; resolved in the template with the translate pipe. */
1799
+ protected readonly categoryTreeRootTitleI18nKey = "@general:terms.interface.selection.all-items";
1513
1800
  private readonly translationService;
1514
1801
  protected readonly highlightService: AXHighlightService;
1515
1802
  private readonly changeDetectorRef;
@@ -1849,14 +2136,14 @@ declare class AXPEntityCategoryWidgetEditComponent extends AXPValueWidgetCompone
1849
2136
  private singleOrMultiple;
1850
2137
  protected getItemLabel(item: any): string;
1851
2138
  /**
1852
- * Get item path as array for breadcrumb component
2139
+ * Get item path as array for breadcrumb component (raw MLS or string per segment).
1853
2140
  */
1854
- protected getItemPath(item: any): string[];
2141
+ protected getItemPath(item: any): AXPMultiLanguageString[];
1855
2142
  /**
1856
2143
  * Join path array with separator.
1857
2144
  * Override this method to customize the separator (e.g., " > ", " -> ", " / ")
1858
2145
  */
1859
- protected joinPath(path: string[]): string;
2146
+ protected joinPath(path: unknown[]): string;
1860
2147
  protected getItemId(item: any): string;
1861
2148
  /**
1862
2149
  * Calculate the full path from root to the item.
@@ -1868,7 +2155,6 @@ declare class AXPEntityCategoryWidgetEditComponent extends AXPValueWidgetCompone
1868
2155
  }
1869
2156
 
1870
2157
  declare class AXPEntityCategoryWidgetViewComponent extends AXPValueWidgetComponent<any> {
1871
- protected readonly formatService: AXFormatService;
1872
2158
  protected readonly entityResolver: AXPEntityDefinitionRegistryService;
1873
2159
  protected entity: _angular_core.Signal<string>;
1874
2160
  protected multiple: _angular_core.Signal<boolean>;
@@ -1880,12 +2166,11 @@ declare class AXPEntityCategoryWidgetViewComponent extends AXPValueWidgetCompone
1880
2166
  private entityDef;
1881
2167
  protected displayItems: _angular_core.WritableSignal<{
1882
2168
  id: string;
1883
- text: string;
2169
+ titleRaw: AXPMultiLanguageString | null | undefined;
1884
2170
  }[]>;
1885
2171
  private efEntity;
1886
2172
  private efDisplay;
1887
2173
  private extractItem;
1888
- private getDisplayText;
1889
2174
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPEntityCategoryWidgetViewComponent, never>;
1890
2175
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXPEntityCategoryWidgetViewComponent, "axp-entity-category-widget-view", never, {}, {}, never, never, true, never>;
1891
2176
  }
@@ -1893,7 +2178,9 @@ declare class AXPEntityCategoryWidgetViewComponent extends AXPValueWidgetCompone
1893
2178
  declare const AXPEntityCategoryWidget: AXPWidgetConfig;
1894
2179
 
1895
2180
  declare class AXPTruncatedBreadcrumbComponent implements OnDestroy {
1896
- sections: _angular_core.InputSignal<string[]>;
2181
+ private readonly mlsResolver;
2182
+ /** Plain string or locale map per segment; truncation uses resolved text (see {@link resolvedSectionTexts}). */
2183
+ sections: _angular_core.InputSignal<readonly (_acorex_core_translation.AXMultiLanguageString | null | undefined)[]>;
1897
2184
  characterLimit: _angular_core.InputSignal<number | "auto">;
1898
2185
  sectionLimit: _angular_core.InputSignal<number | "auto">;
1899
2186
  separatorIcon: _angular_core.InputSignal<string>;
@@ -1903,6 +2190,8 @@ declare class AXPTruncatedBreadcrumbComponent implements OnDestroy {
1903
2190
  protected isExpanded: _angular_core.WritableSignal<boolean>;
1904
2191
  private containerWidth;
1905
2192
  private resizeObserver;
2193
+ /** Resolved display strings for length / ellipsis (same rules as the pipe). */
2194
+ protected resolvedSectionTexts: _angular_core.Signal<string[]>;
1906
2195
  protected effectiveCharacterLimit: _angular_core.Signal<number>;
1907
2196
  protected effectiveSectionLimit: _angular_core.Signal<number>;
1908
2197
  protected hasTruncatedText: _angular_core.Signal<boolean>;
@@ -1934,6 +2223,45 @@ declare class AXPTruncatedBreadcrumbComponent implements OnDestroy {
1934
2223
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXPTruncatedBreadcrumbComponent, "axp-truncated-breadcrumb", never, { "sections": { "alias": "sections"; "required": false; "isSignal": true; }; "characterLimit": { "alias": "characterLimit"; "required": false; "isSignal": true; }; "sectionLimit": { "alias": "sectionLimit"; "required": false; "isSignal": true; }; "separatorIcon": { "alias": "separatorIcon"; "required": false; "isSignal": true; }; "ellipsisIcon": { "alias": "ellipsisIcon"; "required": false; "isSignal": true; }; "eyeIcon": { "alias": "eyeIcon"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
1935
2224
  }
1936
2225
 
2226
+ declare const AXPEntityDefinitionProviderWidget: AXPWidgetConfig;
2227
+ declare module '@acorex/platform/layout/widget-core' {
2228
+ interface AXPWidgetTypesMap {
2229
+ entityDefinitionProvider: 'entity-definition-provider-editor';
2230
+ }
2231
+ }
2232
+
2233
+ declare class AXPEntityDefinitionProviderWidgetEditComponent extends AXPProviderSelectWidgetEditBase {
2234
+ private readonly entityRegistry;
2235
+ /**
2236
+ * Last applied module filter (from context) to avoid redundant reloads.
2237
+ */
2238
+ private readonly lastModuleFilterKey;
2239
+ /**
2240
+ * Reloads entity options when `filterModuleField` changes in form context (not only via `widget.refresh()`).
2241
+ */
2242
+ private readonly reloadWhenModuleContextChanges;
2243
+ /**
2244
+ * Options:
2245
+ * - `filterModuleField`: sibling context field name (e.g. `entityListModule`); when set, only entities in that module are listed.
2246
+ * - `valueFormat`: `fullKey` (`module.name`, default) or `entityName` (short name only, for menus that store `entityListRef.entity`).
2247
+ */
2248
+ protected loadDataSourceRows(): Promise<Array<{
2249
+ value: string;
2250
+ title: string;
2251
+ }>>;
2252
+ refresh(): void;
2253
+ /**
2254
+ * Reads sibling field from context store data (same shape as `lodash/get` paths).
2255
+ */
2256
+ private readModuleFromContext;
2257
+ /**
2258
+ * Resolves a sibling field path relative to the current widget's parent path.
2259
+ */
2260
+ private resolveSiblingContextPath;
2261
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPEntityDefinitionProviderWidgetEditComponent, never>;
2262
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXPEntityDefinitionProviderWidgetEditComponent, "axp-entity-definition-provider-widget-edit", never, {}, {}, never, never, true, never>;
2263
+ }
2264
+
1937
2265
  declare class AXPEntityListTableService {
1938
2266
  private readonly workflow;
1939
2267
  private readonly commandService;
@@ -1973,6 +2301,11 @@ declare class AXPEntityListTableService {
1973
2301
  * Handle execution of a row command (shared by double-click and command handlers)
1974
2302
  */
1975
2303
  private handleRowCommand;
2304
+ /**
2305
+ * When a related entity list declares `excludeProperties`, row commands bypass the details page
2306
+ * `execute()` merge — apply the same exclusions for embedded create/update commands.
2307
+ */
2308
+ private mergeRelatedListFormOptions;
1976
2309
  /**
1977
2310
  * Create default events
1978
2311
  */
@@ -2011,11 +2344,13 @@ declare class AXPEntityListToolbarService {
2011
2344
  */
2012
2345
  private createFilterDefinitions;
2013
2346
  /**
2014
- * Create Column Definitions for Toolbar
2347
+ * Create Column Definitions for Toolbar.
2348
+ * Includes both entity.properties and enriched columns (e.g. person.firstName with showAs).
2015
2349
  */
2016
2350
  private createColumnDefinitions;
2017
2351
  /**
2018
- * Create Sort Definitions for Toolbar
2352
+ * Create Sort Definitions for Toolbar.
2353
+ * Includes entity.properties with sort enabled, plus enriched columns (dotted paths).
2019
2354
  */
2020
2355
  private createSortDefinitions;
2021
2356
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPEntityListToolbarService, never>;
@@ -2059,6 +2394,23 @@ declare class AXPEntityListWidgetViewComponent extends AXPValueWidgetComponent {
2059
2394
  protected handleSecondaryActionClick(item: AXPActionMenuItem): void;
2060
2395
  protected execute(commandName: string, _data: unknown): Promise<void>;
2061
2396
  private evaluateToolbarExpressions;
2397
+ /**
2398
+ * Re-evaluates related-entity list filters from the live dialog form context (e.g. after create saves the main row id).
2399
+ */
2400
+ private applyRelatedFiltersFromContext;
2401
+ /**
2402
+ * Pushes current toolbar filters to the embedded list data source when both exist.
2403
+ * Returns false while data-list is still mounting (see deferred listNode.set in ngOnInit).
2404
+ */
2405
+ private pushToolbarFiltersToDataSource;
2406
+ /**
2407
+ * Writes toolbar filters from specs and pushes them onto the data source so refresh/reload keeps the parent scope.
2408
+ */
2409
+ private applyRelatedFiltersFromContextAndDatasource;
2410
+ /**
2411
+ * Refreshes the embedded data list (toolbar / workflow). In wizard mode, `refresh` is patched to re-apply scoped filters first.
2412
+ */
2413
+ private refreshGridWithParentScopedFilters;
2062
2414
  protected queries: undefined;
2063
2415
  /**
2064
2416
  * Validates that all required dependencies are available
@@ -2112,7 +2464,7 @@ declare class AXPLookupWidgetViewComponent extends AXPValueWidgetComponent<any>
2112
2464
  private efEntity;
2113
2465
  private efDisplay;
2114
2466
  private extractItem;
2115
- private getDisplayText;
2467
+ private getDisplayRaw;
2116
2468
  private get __class();
2117
2469
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPLookupWidgetViewComponent, never>;
2118
2470
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXPLookupWidgetViewComponent, "axp-lookup-widget-view", never, {}, {}, never, never, true, never>;
@@ -2129,7 +2481,7 @@ interface AXPEntityDataSelectorOptions {
2129
2481
  name: string;
2130
2482
  dir: 'asc' | 'desc';
2131
2483
  }[];
2132
- allowCreate?: boolean;
2484
+ allowCreate?: AXPDataSelectorAllowCreate;
2133
2485
  searchFields?: string[];
2134
2486
  initialSearchTerm?: string;
2135
2487
  selectedItemIds?: string[] | number[];
@@ -2150,10 +2502,21 @@ declare class AXPEntityDataSelectorService {
2150
2502
  private readonly filterOperatorMiddleware;
2151
2503
  private readonly widgetResolver;
2152
2504
  private readonly entityResolver;
2505
+ private readonly commandService;
2153
2506
  /**
2154
2507
  * Open entity data selector popup
2155
2508
  */
2156
2509
  open(options: AXPEntityDataSelectorOptions): Promise<AXPEntityDataSelectorResult | null>;
2510
+ /**
2511
+ * Execute Entity:Create and return created item.
2512
+ * Used by lookup widget and data selector for inline create.
2513
+ */
2514
+ executeEntityCreate(entity: AXPEntity, mode: 'full' | 'quick'): Promise<any | null>;
2515
+ /**
2516
+ * Normalize item's phones/emails for expose/display.
2517
+ * Call this when receiving items from any source (create, API, selector).
2518
+ */
2519
+ normalizeItemContactArrays(item: any): any;
2157
2520
  /**
2158
2521
  * Create data selector configuration from entity options
2159
2522
  */
@@ -2171,9 +2534,19 @@ declare class AXPEntityDataSelectorService {
2171
2534
  */
2172
2535
  private getSearchFields;
2173
2536
  /**
2174
- * Check if entity supports create operation
2537
+ * Get allowCreate mode from entity
2538
+ */
2539
+ private getAllowCreate;
2540
+ /**
2541
+ * Execute Entity:Create and return created item
2175
2542
  */
2176
- private canCreate;
2543
+ private executeCreate;
2544
+ /**
2545
+ * Normalize phones/emails from repeater form to plain arrays of { value: string }.
2546
+ * Repeater/ContactBox can return nested structure: { value: { label: "", value: "101010" } }
2547
+ * Contact widget expects: { value: "101010", label?: string }
2548
+ */
2549
+ private normalizeContactArrays;
2177
2550
  /**
2178
2551
  * Create category tree data source from category entity key
2179
2552
  */
@@ -2197,6 +2570,37 @@ declare abstract class LookupWidgetLookBase {
2197
2570
  }
2198
2571
 
2199
2572
  type AXPLookupWidgetLookType = 'select' | 'lookup';
2573
+ /**
2574
+ * How the lookup column resolves related items for display in entity lists.
2575
+ * - `hydrated`: titles (and optional ids) are already on the row; inline preview + overflow popover use row data only.
2576
+ * - `idsWithCount`: ids and optional count live on the row; the cell shows a count summary and loads titles via entity `byKey` when the popover opens.
2577
+ * - `countOnly`: only a count is on the row; the popover loads ids/titles via a registered `AXPQuery` when opened.
2578
+ */
2579
+ type AXPLookupColumnResolveStrategy = 'hydrated' | 'idsWithCount' | 'countOnly';
2580
+ /**
2581
+ * Column list only: controls how the lookup column loads and displays related items in grids.
2582
+ * Omitted or empty strategy defaults to `hydrated` at runtime.
2583
+ */
2584
+ interface AXPLookupColumnResolveOptions {
2585
+ /** Default `hydrated` when omitted. */
2586
+ strategy?: AXPLookupColumnResolveStrategy;
2587
+ /** Lodash-style path on `rowData` for the displayed count (e.g. `rolesCount`). */
2588
+ countFieldPath?: string;
2589
+ /** Lodash-style path on `rowData` for the related id list (`idsWithCount`). If omitted, the column `rawValue` is used. */
2590
+ idsPath?: string;
2591
+ /** Registered query key for `AXPQueryExecutor.fetch` when using `countOnly`. */
2592
+ queryKey?: string;
2593
+ /**
2594
+ * Maps query input property names to lodash-style paths on `rowData` (e.g. `{ "userId": "id" }`).
2595
+ * May be a JSON string when set from the layout designer text field.
2596
+ */
2597
+ queryParams?: Record<string, string> | string;
2598
+ /**
2599
+ * Dot path into the named query result for the items array. Defaults to `items` when the result is an object.
2600
+ * If the query returns an array directly, leave unset and handle at runtime.
2601
+ */
2602
+ queryResultItemsPath?: string;
2603
+ }
2200
2604
  interface AXPLookupWidgetOptions {
2201
2605
  disabled?: boolean | AXPExpression;
2202
2606
  readonly?: boolean | AXPExpression;
@@ -2205,6 +2609,8 @@ interface AXPLookupWidgetOptions {
2205
2609
  look?: AXPLookupWidgetLookType;
2206
2610
  allowClear?: boolean;
2207
2611
  displayFormat?: string;
2612
+ /** Column list: lazy resolve and summary behavior. */
2613
+ columnResolve?: AXPLookupColumnResolveOptions;
2208
2614
  }
2209
2615
 
2210
2616
  declare class AXPLookupWidgetEditComponent extends AXPValueWidgetComponent<any> {
@@ -2213,6 +2619,7 @@ declare class AXPLookupWidgetEditComponent extends AXPValueWidgetComponent<any>
2213
2619
  protected readonly entityResolver: AXPEntityDefinitionRegistryService;
2214
2620
  protected readonly entityService: AXPEntityService;
2215
2621
  protected readonly entityDataSelectorService: AXPEntityDataSelectorService;
2622
+ private readonly mlsResolver;
2216
2623
  protected componentLook: _angular_core.Signal<LookupWidgetLookBase | undefined>;
2217
2624
  protected expose: _angular_core.Signal<string | any[] | undefined>;
2218
2625
  protected entity: _angular_core.Signal<string>;
@@ -2221,11 +2628,13 @@ declare class AXPLookupWidgetEditComponent extends AXPValueWidgetComponent<any>
2221
2628
  protected textField: _angular_core.Signal<string>;
2222
2629
  protected hasClearButton: _angular_core.Signal<boolean>;
2223
2630
  protected customFilter: _angular_core.Signal<AXDataSourceFilterOption>;
2631
+ protected placeholder: _angular_core.Signal<string>;
2224
2632
  protected filterMode: _angular_core.Signal<boolean>;
2225
2633
  protected multiple: _angular_core.Signal<boolean>;
2226
2634
  protected look: _angular_core.Signal<AXPLookupWidgetLookType>;
2227
2635
  protected defaultTextField: _angular_core.Signal<string>;
2228
2636
  protected displayField: _angular_core.Signal<string>;
2637
+ protected allowCreate: _angular_core.Signal<"full" | "none" | "quick">;
2229
2638
  protected valueField: _angular_core.Signal<string>;
2230
2639
  protected displayFormat: _angular_core.Signal<string | undefined>;
2231
2640
  protected conditions?: AXPQueryFilter[];
@@ -2239,10 +2648,15 @@ declare class AXPLookupWidgetEditComponent extends AXPValueWidgetComponent<any>
2239
2648
  private hasValue;
2240
2649
  private findByValue;
2241
2650
  protected handleComponentValueChanged(items: any[] | null): void;
2651
+ protected handleCreateClick(_e: AXClickEvent): Promise<void>;
2652
+ private executeCreate;
2242
2653
  protected setLoading: (loading: boolean) => void;
2243
2654
  protected setItems: (items: any[]) => void;
2244
2655
  /**
2245
- * Update expose data for empty state
2656
+ * Writes expose targets into context using per-path updates.
2657
+ * Avoids `contextService.patch()` with nested objects: patch shallow-merges top-level keys only,
2658
+ * so e.g. `{ person: { educationLevel: { id, title } } }` would replace the entire `person`
2659
+ * object and drop sibling fields like `person.educationLevelId`, causing a value/effect loop.
2246
2660
  */
2247
2661
  private expoesItems;
2248
2662
  private singleOrMultiple;
@@ -2255,8 +2669,12 @@ declare class AXPLookupWidgetEditComponent extends AXPValueWidgetComponent<any>
2255
2669
 
2256
2670
  declare class AXPLookupWidgetColumnComponent extends AXPColumnWidgetComponent<any> {
2257
2671
  private readonly entityDetailPopoverService;
2672
+ private readonly translation;
2258
2673
  private readonly formatService;
2674
+ private readonly entityService;
2675
+ private readonly queryExecutor;
2259
2676
  protected moreButton: _angular_core.Signal<ElementRef<any> | undefined>;
2677
+ protected lazyTrigger: _angular_core.Signal<ElementRef<any> | undefined>;
2260
2678
  protected morePopover: _angular_core.Signal<AXPopoverComponent | undefined>;
2261
2679
  protected host: ElementRef<any>;
2262
2680
  protected valueField: string;
@@ -2266,21 +2684,51 @@ declare class AXPLookupWidgetColumnComponent extends AXPColumnWidgetComponent<an
2266
2684
  protected maxVisible: number;
2267
2685
  protected displayFormat: _angular_core.Signal<string | undefined>;
2268
2686
  protected displayField: _angular_core.Signal<string>;
2687
+ protected columnResolve: _angular_core.Signal<AXPLookupColumnResolveOptions | undefined>;
2688
+ protected resolveStrategy: _angular_core.Signal<AXPLookupColumnResolveStrategy>;
2689
+ protected isHydratedStrategy: _angular_core.Signal<boolean>;
2269
2690
  protected isMorePopoverOpen: _angular_core.WritableSignal<boolean>;
2270
2691
  protected selectedItemIndex: _angular_core.WritableSignal<number>;
2692
+ protected resolvedPopoverItems: _angular_core.WritableSignal<any[]>;
2693
+ protected resolveStatus: _angular_core.WritableSignal<"error" | "idle" | "loading" | "ready">;
2694
+ protected resolveError: _angular_core.WritableSignal<string | null>;
2695
+ protected summaryLabel: _angular_core.WritableSignal<string>;
2696
+ protected popoverHeader: _angular_core.WritableSignal<string>;
2271
2697
  protected displayItems: _angular_core.Signal<any[]>;
2272
2698
  protected allItems: _angular_core.Signal<any[]>;
2273
2699
  protected visibleItems: _angular_core.Signal<any[]>;
2274
2700
  protected hasMoreItems: _angular_core.Signal<boolean>;
2275
- protected remainingItemsCount: _angular_core.Signal<number>;
2701
+ protected idsFromRow: _angular_core.Signal<any[]>;
2702
+ protected displayCount: _angular_core.Signal<number>;
2703
+ protected popoverListItems: _angular_core.Signal<any[]>;
2704
+ /** Avoid resetting lazy cache on every CD when `rowData` is a new object reference for the same row. */
2705
+ private previousLazyRowId;
2706
+ constructor();
2276
2707
  protected showMoreItems(): void;
2277
- protected onMorePopoverOpenChange(event: any): void;
2708
+ protected openLazyPopover(): void;
2709
+ protected onPopoverOpenChange(event: unknown): void;
2278
2710
  protected showItemDetail(item: any, index: number): Promise<void>;
2279
2711
  protected handleItemClick(index: number): void;
2280
- private openMorePopover;
2712
+ protected handleResolvedItemClick(index: number): void;
2713
+ protected handlePopoverItemClick(index: number): void;
2714
+ protected getDisplayRaw(item: any): string;
2715
+ private refreshSummaryLabel;
2716
+ private refreshPopoverHeader;
2717
+ private resetLazyState;
2718
+ private openPopoverFromRef;
2281
2719
  private closeMorePopover;
2720
+ private ensureLazyItemsLoaded;
2721
+ /**
2722
+ * ax-popover may emit a boolean, CustomEvent with detail, or a DOM Event depending on version.
2723
+ */
2724
+ private coercePopoverOpenEvent;
2725
+ private loadByIds;
2726
+ private loadByNamedQuery;
2727
+ private buildNamedQueryInput;
2728
+ private parseQueryParamsMap;
2729
+ private extractItemsFromQueryResult;
2282
2730
  private extractItem;
2283
- protected getDisplayText(item: any): string;
2731
+ private resolveDisplayValue;
2284
2732
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPLookupWidgetColumnComponent, never>;
2285
2733
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXPLookupWidgetColumnComponent, "ng-component", never, { "rawValue": { "alias": "rawValue"; "required": false; }; "rowData": { "alias": "rowData"; "required": false; }; }, {}, never, never, true, never>;
2286
2734
  }
@@ -2612,6 +3060,174 @@ declare class AXPMultiSourceSelectorWidgetColumnComponent extends AXPColumnWidge
2612
3060
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXPMultiSourceSelectorWidgetColumnComponent, "axp-multi-source-selector-widget-column", never, { "rawValue": { "alias": "rawValue"; "required": false; }; "rowData": { "alias": "rowData"; "required": false; }; }, {}, never, never, true, never>;
2613
3061
  }
2614
3062
 
3063
+ declare class AXPSelectorStructureWidgetColumnComponent extends AXPValueWidgetComponent {
3064
+ protected identityField: _angular_core.Signal<string>;
3065
+ protected textField: _angular_core.Signal<string>;
3066
+ protected valueField: _angular_core.Signal<string>;
3067
+ protected previewIcon: _angular_core.Signal<string>;
3068
+ protected cellText: _angular_core.Signal<string>;
3069
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPSelectorStructureWidgetColumnComponent, never>;
3070
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXPSelectorStructureWidgetColumnComponent, "axp-selector-structure-widget-column", never, {}, {}, never, never, true, never>;
3071
+ }
3072
+
3073
+ type AXPSelectorStructureSelectorMode = 'select' | 'lookup';
3074
+ type AXPSelectorStructureStructureMode = 'schema' | 'freeform';
3075
+ type AXPSelectorStructureIdentityDisplay = 'readonly' | 'hidden';
3076
+ /** UI layout: standard = global multi-select + collapse rows; compactPanel = per-row select (address-style). */
3077
+ type AXPSelectorStructurePresentationMode = 'standard' | 'compactPanel';
3078
+ interface AXPSelectorStructureFieldDef {
3079
+ name: string;
3080
+ title: string;
3081
+ widgetType: string;
3082
+ options?: Record<string, unknown>;
3083
+ }
3084
+ declare const AXPSelectorStructureWidget: AXPWidgetConfig;
3085
+ interface AXPSelectorStructureWidgetDesignerOptions {
3086
+ selectorMode?: AXPSelectorStructureSelectorMode;
3087
+ structureMode?: AXPSelectorStructureStructureMode;
3088
+ presentation?: AXPSelectorStructurePresentationMode;
3089
+ previewIcon?: string;
3090
+ placeholder?: string;
3091
+ contextSiblingPath?: string;
3092
+ identityField?: string;
3093
+ identityDisplay?: AXPSelectorStructureIdentityDisplay;
3094
+ valueField?: string;
3095
+ textField?: string;
3096
+ dataSource?: unknown;
3097
+ multiple?: boolean;
3098
+ lookup?: {
3099
+ entity?: string;
3100
+ look?: 'select' | 'lookup';
3101
+ filter?: unknown;
3102
+ hasClearButton?: boolean;
3103
+ };
3104
+ structureFields?: AXPSelectorStructureFieldDef[];
3105
+ freeformPath?: string;
3106
+ }
3107
+ interface AXPSelectorStructureWidgetViewOptions extends AXPSelectorStructureWidgetDesignerOptions {
3108
+ }
3109
+ interface AXPSelectorStructureWidgetEditOptions extends AXPSelectorStructureWidgetDesignerOptions {
3110
+ }
3111
+ interface AXPSelectorStructureWidgetColumnOptions {
3112
+ identityField?: string;
3113
+ textField?: string;
3114
+ previewIcon?: string;
3115
+ }
3116
+ interface AXPSelectorStructureWidgetPrintOptions {
3117
+ }
3118
+ interface AXPSelectorStructureWidgetOptions {
3119
+ designer: AXPSelectorStructureWidgetDesignerOptions;
3120
+ view: AXPSelectorStructureWidgetViewOptions;
3121
+ edit: AXPSelectorStructureWidgetEditOptions;
3122
+ print: AXPSelectorStructureWidgetPrintOptions;
3123
+ column: AXPSelectorStructureWidgetColumnOptions;
3124
+ }
3125
+
3126
+ declare class AXPSelectorStructureWidgetEditComponent extends AXPValueWidgetComponent {
3127
+ #private;
3128
+ private readonly entityRegistry;
3129
+ protected selectorMode: _angular_core.Signal<"select" | "lookup">;
3130
+ protected structureMode: _angular_core.Signal<"schema" | "freeform">;
3131
+ protected contextSiblingPath: _angular_core.Signal<string>;
3132
+ protected identityField: _angular_core.Signal<string>;
3133
+ protected identityDisplay: _angular_core.Signal<"readonly" | "hidden">;
3134
+ protected valueField: _angular_core.Signal<string>;
3135
+ protected textField: _angular_core.Signal<string>;
3136
+ protected multiple: _angular_core.Signal<boolean>;
3137
+ protected freeformPath: _angular_core.Signal<string>;
3138
+ protected lookupEntityKey: _angular_core.Signal<string | undefined>;
3139
+ protected lookupHasClearButton: _angular_core.Signal<boolean>;
3140
+ protected lookupCustomFilter: _angular_core.Signal<AXDataSourceFilterOption | undefined>;
3141
+ protected disabled: _angular_core.Signal<boolean>;
3142
+ protected presentationMode: _angular_core.Signal<"standard" | "compactPanel">;
3143
+ /** Compact panel (address-style) applies only to sibling select mode; lookup falls back to standard layout. */
3144
+ protected useCompactLayout: _angular_core.Signal<boolean>;
3145
+ protected previewIcon: _angular_core.Signal<string>;
3146
+ protected placeholder: _angular_core.Signal<string>;
3147
+ protected compactSelectPlaceholder: _angular_core.Signal<string>;
3148
+ protected addCompactItemLabel: _angular_core.Signal<string>;
3149
+ protected clearRowTitle: _angular_core.Signal<string>;
3150
+ protected removeRowTitle: _angular_core.Signal<string>;
3151
+ protected resolvedSiblingPath(): string;
3152
+ /**
3153
+ * Items shown in the selector: sibling context array when path is set, otherwise optional static `dataSource` array.
3154
+ */
3155
+ protected contextItems: _angular_core.Signal<unknown[]>;
3156
+ protected contextSelectDataSource: _angular_core.Signal<AXDataSource<unknown>>;
3157
+ protected selectedSourceItems: _angular_core.WritableSignal<unknown[]>;
3158
+ protected compactRowDataSources: _angular_core.Signal<AXDataSource<unknown>[]>;
3159
+ protected compactRowSelectedItems: _angular_core.Signal<unknown[][]>;
3160
+ protected lookupEntityDef: _angular_core.WritableSignal<AXPEntity | null>;
3161
+ protected defaultLookupSorts: _angular_core.Signal<AXDataSourceSortOption[]>;
3162
+ protected lookupDataSource: _angular_core.Signal<AXDataSource<unknown> | null>;
3163
+ protected lookupTextField: _angular_core.Signal<string>;
3164
+ protected lookupSelectedItems: _angular_core.WritableSignal<unknown[]>;
3165
+ protected rows: _angular_core.Signal<Record<string, unknown>[]>;
3166
+ protected structureFields: _angular_core.Signal<AXPSelectorStructureFieldDef[]>;
3167
+ protected structureFieldNodes: _angular_core.Signal<{
3168
+ name: string;
3169
+ title: string;
3170
+ node: AXPWidgetNode;
3171
+ }[]>;
3172
+ protected identityLabel: _angular_core.Signal<string>;
3173
+ protected identityNode: _angular_core.Signal<AXPWidgetNode | null>;
3174
+ protected freeformHeading: _angular_core.Signal<string>;
3175
+ protected keyPlaceholder: _angular_core.Signal<string>;
3176
+ protected valuePlaceholder: _angular_core.Signal<string>;
3177
+ protected addPairLabel: _angular_core.Signal<string>;
3178
+ protected removePairTitle: _angular_core.Signal<string>;
3179
+ protected disabledHint: _angular_core.Signal<string>;
3180
+ protected trackRow(row: Record<string, unknown>): unknown;
3181
+ protected rowCaption(row: Record<string, unknown>): string;
3182
+ protected isDraftRow(row: Record<string, unknown>): boolean;
3183
+ protected isRowSelectLocked(row: Record<string, unknown>): boolean;
3184
+ /**
3185
+ * Items available for row `index`: all source items minus keys already chosen on other committed rows;
3186
+ * always includes the current row's selected item so the select can display it.
3187
+ */
3188
+ protected exclusiveItemsForRow(index: number): unknown[];
3189
+ private newRowUid;
3190
+ protected handleCompactSelectChange(index: number, e: AXValueChangedEvent): void;
3191
+ protected applyCompactRowFromItem(index: number, rawItem: unknown | undefined): void;
3192
+ protected clearCompactRow(index: number): void;
3193
+ protected removeCompactRow(index: number): void;
3194
+ protected addCompactRow(): void;
3195
+ protected handleSelectValueChange(e: AXValueChangedEvent): void;
3196
+ protected handleLookupValueChange(e: AXValueChangedEvent): void;
3197
+ protected applyRowsFromSourceItems(items: unknown[]): void;
3198
+ protected handleSchemaContextChange(rowKey: unknown, e: AXPContextChangeEvent): void;
3199
+ protected freeformEntries(row: Record<string, unknown>): {
3200
+ key: string;
3201
+ value: string;
3202
+ index: number;
3203
+ }[];
3204
+ private serializeFreeformValue;
3205
+ protected onFreeformKeyInput(row: Record<string, unknown>, entry: {
3206
+ key: string;
3207
+ value: string;
3208
+ index: number;
3209
+ }, nextKey: string): void;
3210
+ protected patchFreeformValue(row: Record<string, unknown>, key: string, raw: string): void;
3211
+ protected removeFreeformKey(row: Record<string, unknown>, key: string): void;
3212
+ protected addFreeformPair(row: Record<string, unknown>): void;
3213
+ private renameFreeformKey;
3214
+ private patchFreeformMap;
3215
+ private tryParseFreeformString;
3216
+ private mergeListFilter;
3217
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPSelectorStructureWidgetEditComponent, never>;
3218
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXPSelectorStructureWidgetEditComponent, "axp-selector-structure-widget-edit", never, {}, {}, never, never, true, never>;
3219
+ }
3220
+
3221
+ declare class AXPSelectorStructureWidgetViewComponent extends AXPValueWidgetComponent {
3222
+ protected identityField: _angular_core.Signal<string>;
3223
+ protected textField: _angular_core.Signal<string>;
3224
+ protected valueField: _angular_core.Signal<string>;
3225
+ protected previewIcon: _angular_core.Signal<string>;
3226
+ protected summaries: _angular_core.Signal<string[]>;
3227
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPSelectorStructureWidgetViewComponent, never>;
3228
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXPSelectorStructureWidgetViewComponent, "axp-selector-structure-widget-view", never, {}, {}, never, never, true, never>;
3229
+ }
3230
+
2615
3231
  declare const AXPEntityCreateEvent: {
2616
3232
  (payload: {
2617
3233
  entity: string;
@@ -2733,14 +3349,23 @@ declare class AXPShowDetailViewAction extends AXPWorkflowAction {
2733
3349
  }
2734
3350
  declare const AXPShowDetailsViewWorkflow: AXPWorkflow;
2735
3351
 
3352
+ /** Optional list filters passed into `show-list-view` (e.g. from `Entity:List` with `conditions`). */
3353
+ interface AXPShowListViewCondition {
3354
+ name?: string;
3355
+ field?: string;
3356
+ operator?: {
3357
+ type: string;
3358
+ };
3359
+ value?: unknown;
3360
+ }
2736
3361
  declare class AXPShowListViewAction extends AXPWorkflowAction {
2737
3362
  private navigation;
2738
3363
  private sessionService;
2739
- execute(context?: any): Promise<void>;
3364
+ execute(context: AXPWorkflowContext): Promise<void>;
2740
3365
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPShowListViewAction, never>;
2741
3366
  static ɵprov: _angular_core.ɵɵInjectableDeclaration<AXPShowListViewAction>;
2742
3367
  }
2743
3368
  declare const AXPShowListViewWorkflow: AXPWorkflow;
2744
3369
 
2745
- export { AXMEntityCrudService, AXMEntityCrudServiceImpl, AXPCategoryTreeService, AXPCreateEntityCommand, AXPCreateEntityWorkflow, AXPDataSeederService, AXPDeleteEntityWorkflow, AXPEntitiesListDataSourceDefinition, AXPEntityApplyUpdatesAction, AXPEntityCategoryTreeSelectorComponent, AXPEntityCategoryWidget, AXPEntityCategoryWidgetColumnComponent, AXPEntityCategoryWidgetEditComponent, AXPEntityCategoryWidgetViewComponent, AXPEntityCommandTriggerViewModel, AXPEntityCreateEvent, AXPEntityCreatePopupAction, AXPEntityCreateSubmittedAction, AXPEntityCreateViewElementViewModel, AXPEntityCreateViewModelFactory, AXPEntityCreateViewSectionViewModel, AXPEntityDataProvider, AXPEntityDataProviderImpl, AXPEntityDataSelectorService, AXPEntityDefinitionRegistryService, AXPEntityDeletedEvent, AXPEntityDetailListViewModel, AXPEntityDetailPopoverComponent, AXPEntityDetailPopoverService, AXPEntityDetailViewModelFactory, AXPEntityDetailViewModelResolver, AXPEntityEventDispatcherService, AXPEntityEventsKeys, AXPEntityFormBuilderService, AXPEntityListTableService, AXPEntityListToolbarService, AXPEntityListViewColumnViewModel, AXPEntityListViewModelFactory, AXPEntityListViewModelResolver, AXPEntityListWidget, AXPEntityListWidgetViewComponent, AXPEntityMasterCreateViewModel, AXPEntityMasterListViewModel, AXPEntityMasterListViewQueryViewModel, AXPEntityMasterSingleElementViewModel, AXPEntityMasterSingleViewGroupViewModel, AXPEntityMasterSingleViewModel, AXPEntityMasterUpdateElementViewModel, AXPEntityMasterUpdateViewModel, AXPEntityMasterUpdateViewModelFactory, AXPEntityMiddleware, AXPEntityModifyConfirmedAction, AXPEntityModifyEvent, AXPEntityModifySectionPopupAction, AXPEntityModule, AXPEntityPerformDeleteAction, AXPEntityPreloadFiltersContainerComponent, AXPEntityPreloadFiltersViewModel, AXPEntityPreloadFiltersViewModelResolver, AXPEntityResolver, AXPEntityService, AXPEntityStorageService, AXPEntityUpdateViewSectionViewModel, AXPGetEntityDetailsQuery, AXPLayoutOrderingConfigService, AXPLookupWidget, AXPLookupWidgetColumnComponent, AXPLookupWidgetEditComponent, AXPLookupWidgetViewComponent, AXPMiddlewareAbortError, AXPMiddlewareEntityStorageService, AXPModifyEntitySectionWorkflow, AXPMultiSourceDefinitionProviderContext, AXPMultiSourceDefinitionProviderService, AXPMultiSourceFederatedSearchService, AXPMultiSourceSelectorComponent, AXPMultiSourceSelectorService, AXPMultiSourceSelectorWidget, AXPMultiSourceSelectorWidgetColumnComponent, AXPMultiSourceSelectorWidgetEditComponent, AXPMultiSourceSelectorWidgetViewComponent, AXPMultiSourceType, AXPOpenEntityDetailsCommand, AXPQuickEntityModifyPopupAction, AXPQuickModifyEntityWorkflow, AXPShowDetailViewAction, AXPShowDetailsViewWorkflow, AXPShowListViewAction, AXPShowListViewWorkflow, AXPTruncatedBreadcrumbComponent, AXPUpdateEntityCommand, AXPViewEntityDetailsCommand, AXP_DATA_SEEDER_TOKEN, AXP_ENTITY_ACTION_PLUGIN, AXP_ENTITY_CONFIG_TOKEN, AXP_ENTITY_DEFINITION_LOADER, AXP_ENTITY_MODIFIER, AXP_ENTITY_STORAGE_BACKEND, AXP_ENTITY_STORAGE_MIDDLEWARE, AXP_MULTI_SOURCE_DEFINITION_PROVIDER, DEFAULT_PROPERTY_ORDER, DEFAULT_SECTION_ORDER, EntityBuilder, EntityDataAccessor, actionExists, cloneLayoutArrays, columnWidthMiddleware, columnWidthMiddlewareProvider, createLayoutOrderingMiddlewareProvider, createModifierContext, detectEntityChanges, ensureLayoutPropertyView, ensureLayoutSection, ensureListActions, entityDetailsCreateActions, entityDetailsCrudActions, entityDetailsEditAction, entityDetailsNewEditAction, entityDetailsReferenceCondition, entityDetailsReferenceCreateActions, entityDetailsSimpleCondition, entityMasterBulkDeleteAction, entityMasterCreateAction, entityMasterCrudActions, entityMasterDeleteAction, entityMasterEditAction, entityMasterRecordActions, entityMasterViewAction, entityOverrideDetailsViewAction, eventDispatchMiddleware, isAXPMiddlewareAbortError, layoutOrderingMiddlewareFactory, layoutOrderingMiddlewareProvider };
2746
- export type { AXPAuditEvent, AXPDataSeeder, AXPEntityActionPlugin, AXPEntityCategoryWidgetOptions, AXPEntityChangeSet, AXPEntityConfigs, AXPEntityCreateDto, AXPEntityDataSelectorOptions, AXPEntityDataSelectorResult, AXPEntityDefinitionLoader, AXPEntityDefinitionPreloader, AXPEntityDeleteOptions, AXPEntityDetailDto, AXPEntityDetailPopoverOptions, AXPEntityLayoutLike, AXPEntityLayoutPropertyLike, AXPEntityLayoutSectionLike, AXPEntityListEntry, AXPEntityListInput, AXPEntityListItemDto, AXPEntityListToolbarConvertOptions, AXPEntityMasterListViewSortPropViewModel, AXPEntityModel, AXPEntityModifier, AXPEntityModifierContext, AXPEntityModifierProvider, AXPEntityOutputDto, AXPEntityPreloadEntity, AXPEntityStorageContext, AXPEntityStorageMiddleware, AXPEntityUpdateDto, AXPGetEntityDetailsQueryInput, AXPGetEntityDetailsQueryResult, AXPLookupWidgetLookType, AXPLookupWidgetOptions, AXPMultiSourceDefinition, AXPMultiSourceDefinitionProvider, AXPMultiSourceItem, AXPMultiSourceRef, AXPMultiSourceSearchResult, AXPMultiSourceSearchResultItem, AXPMultiSourceSelectorOpenConfig, AXPMultiSourceSelectorResult, AXPMultiSourceSelectorWidgetOptions, AXPMultiSourceValue, AXPOpenEntityDetailsCommandInput, AXPRecordAuditInfo, AXPRecordOwnershipInfo, AXPRecordStateInfo, CategoryQueryEvent, CategoryQueryFunction, CategoryQueryResult, CategoryTreeConfig, CategoryTreeNodeData, SectionOrderConfig };
3370
+ export { AXMEntityCrudService, AXMEntityCrudServiceImpl, AXPCategoryTreeService, AXPCreateEntityCommand, AXPCreateEntityWorkflow, AXPDataSeederService, AXPDeleteEntityWorkflow, AXPEntitiesListDataSourceDefinition, AXPEntityApplyUpdatesAction, AXPEntityCategoryTreeSelectorComponent, AXPEntityCategoryWidget, AXPEntityCategoryWidgetColumnComponent, AXPEntityCategoryWidgetEditComponent, AXPEntityCategoryWidgetViewComponent, AXPEntityCommandTriggerViewModel, AXPEntityCreateEvent, AXPEntityCreatePopupAction, AXPEntityCreateSubmittedAction, AXPEntityCreateViewElementViewModel, AXPEntityCreateViewModelFactory, AXPEntityCreateViewSectionViewModel, AXPEntityDataProvider, AXPEntityDataProviderImpl, AXPEntityDataSelectorService, AXPEntityDefinitionProviderWidget, AXPEntityDefinitionProviderWidgetEditComponent, AXPEntityDefinitionRegistryService, AXPEntityDeletedEvent, AXPEntityDetailListViewModel, AXPEntityDetailPopoverComponent, AXPEntityDetailPopoverService, AXPEntityDetailViewModelFactory, AXPEntityDetailViewModelResolver, AXPEntityEventDispatcherService, AXPEntityEventsKeys, AXPEntityFormBuilderService, AXPEntityListTableService, AXPEntityListToolbarService, AXPEntityListViewColumnViewModel, AXPEntityListViewModelFactory, AXPEntityListViewModelResolver, AXPEntityListWidget, AXPEntityListWidgetViewComponent, AXPEntityMasterCreateViewModel, AXPEntityMasterListViewModel, AXPEntityMasterListViewQueryViewModel, AXPEntityMasterSingleElementViewModel, AXPEntityMasterSingleViewGroupViewModel, AXPEntityMasterSingleViewModel, AXPEntityMasterUpdateElementViewModel, AXPEntityMasterUpdateViewModel, AXPEntityMasterUpdateViewModelFactory, AXPEntityMiddleware, AXPEntityModifyConfirmedAction, AXPEntityModifyEvent, AXPEntityModifySectionPopupAction, AXPEntityModule, AXPEntityPerformDeleteAction, AXPEntityPreloadFiltersContainerComponent, AXPEntityPreloadFiltersViewModel, AXPEntityPreloadFiltersViewModelResolver, AXPEntityResolver, AXPEntityService, AXPEntityStorageService, AXPEntityUpdateViewSectionViewModel, AXPGetEntityDetailsQuery, AXPLayoutOrderingConfigService, AXPLookupWidget, AXPLookupWidgetColumnComponent, AXPLookupWidgetEditComponent, AXPLookupWidgetViewComponent, AXPMiddlewareAbortError, AXPMiddlewareEntityStorageService, AXPModifyEntitySectionWorkflow, AXPMultiSourceDefinitionProviderContext, AXPMultiSourceDefinitionProviderService, AXPMultiSourceFederatedSearchService, AXPMultiSourceSelectorComponent, AXPMultiSourceSelectorService, AXPMultiSourceSelectorWidget, AXPMultiSourceSelectorWidgetColumnComponent, AXPMultiSourceSelectorWidgetEditComponent, AXPMultiSourceSelectorWidgetViewComponent, AXPMultiSourceType, AXPOpenEntityDetailsCommand, AXPQuickEntityModifyPopupAction, AXPQuickModifyEntityWorkflow, AXPRelatedColumnEnrichmentService, AXPRelatedColumnMetadataResolver, AXPSelectorStructureWidget, AXPSelectorStructureWidgetColumnComponent, AXPSelectorStructureWidgetEditComponent, AXPSelectorStructureWidgetViewComponent, AXPShowDetailViewAction, AXPShowDetailsViewWorkflow, AXPShowListViewAction, AXPShowListViewWorkflow, AXPTruncatedBreadcrumbComponent, AXPUpdateEntityCommand, AXPViewEntityDetailsCommand, AXP_CATEGORY_TREE_ROOT_TITLE_I18N_KEY, AXP_DATA_SEEDER_TOKEN, AXP_ENTITY_ACTION_PLUGIN, AXP_ENTITY_CONFIG_TOKEN, AXP_ENTITY_DEFINITION_LOADER, AXP_ENTITY_MODIFIER, AXP_ENTITY_STORAGE_BACKEND, AXP_ENTITY_STORAGE_MIDDLEWARE, AXP_MULTI_SOURCE_DEFINITION_PROVIDER, DEFAULT_COLUMN_ORDER, DEFAULT_PAIR_SPAN_RULES, DEFAULT_PROPERTY_ORDER, DEFAULT_SECTION_ORDER, EntityBuilder, EntityDataAccessor, actionExists, axpCreateEntityAiToolInputDefaults, axpCreateEntityCommandDefinition, cloneLayoutArrays, collectNestedCreateHiddenProperties, columnOrderingMiddleware, columnOrderingMiddlewareProvider, columnWidthMiddleware, columnWidthMiddlewareProvider, createColumnOrderingMiddlewareProvider, createLayoutOrderingMiddlewareProvider, createModifierContext, defaultMultiLanguageMiddleware, defaultMultiLanguageMiddlewareProvider, detectEntityChanges, ensureLayoutPropertyView, ensureLayoutSection, ensureListActions, entityDetailsCreateActions, entityDetailsCreateActionsDeferredParent, entityDetailsCrudActions, entityDetailsEditAction, entityDetailsNewEditAction, entityDetailsReferenceCondition, entityDetailsReferenceCreateActions, entityDetailsSimpleCondition, entityMasterBulkDeleteAction, entityMasterCreateAction, entityMasterCrudActions, entityMasterDeleteAction, entityMasterEditAction, entityMasterRecordActions, entityMasterViewAction, entityOverrideDetailsViewAction, eventDispatchMiddleware, getMasterInterfacePropertySortKey, isAXPMiddlewareAbortError, layoutOrderingMiddlewareFactory, layoutOrderingMiddlewareProvider, mergeForeignKeyFieldIntoCreateActions, provideEntity, resolveEntityPluginDetailPageOrder, searchResultDescriptionMiddleware, searchResultDescriptionMiddlewareProvider };
3371
+ export type { AXPAuditEvent, AXPDataSeeder, AXPEntityActionPlugin, AXPEntityCategoryWidgetOptions, AXPEntityChangeSet, AXPEntityConfigs, AXPEntityCreateDto, AXPEntityDataSelectorOptions, AXPEntityDataSelectorResult, AXPEntityDefinitionLoader, AXPEntityDefinitionPreloader, AXPEntityDeleteOptions, AXPEntityDetailDto, AXPEntityDetailPopoverOptions, AXPEntityLayoutLike, AXPEntityLayoutPropertyLike, AXPEntityLayoutSectionLike, AXPEntityListEntry, AXPEntityListInput, AXPEntityListItemDto, AXPEntityListToolbarConvertOptions, AXPEntityMasterListViewSortPropViewModel, AXPEntityModel, AXPEntityModifier, AXPEntityModifierContext, AXPEntityModifierProvider, AXPEntityOutputDto, AXPEntityPreloadEntity, AXPEntityStorageContext, AXPEntityStorageMiddleware, AXPEntityUpdateDto, AXPGetEntityDetailsQueryInput, AXPGetEntityDetailsQueryResult, AXPLookupColumnResolveOptions, AXPLookupColumnResolveStrategy, AXPLookupWidgetLookType, AXPLookupWidgetOptions, AXPMultiSourceDefinition, AXPMultiSourceDefinitionProvider, AXPMultiSourceItem, AXPMultiSourceRef, AXPMultiSourceSearchResult, AXPMultiSourceSearchResultItem, AXPMultiSourceSelectorOpenConfig, AXPMultiSourceSelectorResult, AXPMultiSourceSelectorWidgetOptions, AXPMultiSourceValue, AXPOpenEntityDetailsCommandInput, AXPRecordAuditInfo, AXPRecordOwnershipInfo, AXPRecordStateInfo, AXPRelatedColumnMetadata, AXPSelectorStructureFieldDef, AXPSelectorStructureIdentityDisplay, AXPSelectorStructurePresentationMode, AXPSelectorStructureSelectorMode, AXPSelectorStructureStructureMode, AXPSelectorStructureWidgetColumnOptions, AXPSelectorStructureWidgetDesignerOptions, AXPSelectorStructureWidgetEditOptions, AXPSelectorStructureWidgetOptions, AXPSelectorStructureWidgetPrintOptions, AXPSelectorStructureWidgetViewOptions, AXPShowListViewCondition, CategoryQueryEvent, CategoryQueryFunction, CategoryQueryResult, CategoryTreeConfig, CategoryTreeNodeData, EntityDetailPluginPageSlot, PairSpanRule, ResolveEntityPluginDetailPageOrderOptions, SectionOrderConfig, SkipEntityComponentPageRef };