@acorex/platform 20.8.13 → 20.8.15

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 (123) hide show
  1. package/{types/acorex-platform-auth.d.ts → auth/index.d.ts} +2 -14
  2. package/{types/acorex-platform-common.d.ts → common/index.d.ts} +30 -302
  3. package/{types/acorex-platform-core.d.ts → core/index.d.ts} +44 -188
  4. package/{types/acorex-platform-domain.d.ts → domain/index.d.ts} +412 -744
  5. package/fesm2022/acorex-platform-auth.mjs +27 -125
  6. package/fesm2022/acorex-platform-auth.mjs.map +1 -1
  7. package/fesm2022/{acorex-platform-common-common-settings.provider-Bi1RYif5.mjs → acorex-platform-common-common-settings.provider-DVvuLUfF.mjs} +32 -30
  8. package/fesm2022/acorex-platform-common-common-settings.provider-DVvuLUfF.mjs.map +1 -0
  9. package/fesm2022/acorex-platform-common.mjs +205 -711
  10. package/fesm2022/acorex-platform-common.mjs.map +1 -1
  11. package/fesm2022/acorex-platform-core.mjs +127 -420
  12. package/fesm2022/acorex-platform-core.mjs.map +1 -1
  13. package/fesm2022/acorex-platform-domain.mjs +830 -561
  14. package/fesm2022/acorex-platform-domain.mjs.map +1 -1
  15. package/fesm2022/acorex-platform-layout-builder.mjs +114 -634
  16. package/fesm2022/acorex-platform-layout-builder.mjs.map +1 -1
  17. package/fesm2022/{acorex-platform-layout-components-binding-expression-editor-popup.component-CXEdvDTf.mjs → acorex-platform-layout-components-binding-expression-editor-popup.component-CSxCnzwU.mjs} +9 -9
  18. package/fesm2022/acorex-platform-layout-components-binding-expression-editor-popup.component-CSxCnzwU.mjs.map +1 -0
  19. package/fesm2022/acorex-platform-layout-components.mjs +877 -3362
  20. package/fesm2022/acorex-platform-layout-components.mjs.map +1 -1
  21. package/fesm2022/acorex-platform-layout-designer.mjs +204 -456
  22. package/fesm2022/acorex-platform-layout-designer.mjs.map +1 -1
  23. package/fesm2022/acorex-platform-layout-entity.mjs +10062 -14672
  24. package/fesm2022/acorex-platform-layout-entity.mjs.map +1 -1
  25. package/fesm2022/acorex-platform-layout-views.mjs +171 -413
  26. package/fesm2022/acorex-platform-layout-views.mjs.map +1 -1
  27. package/fesm2022/acorex-platform-layout-widget-core.mjs +441 -507
  28. package/fesm2022/acorex-platform-layout-widget-core.mjs.map +1 -1
  29. package/fesm2022/{acorex-platform-layout-widgets-button-widget-designer.component-Dy7jF-oD.mjs → acorex-platform-layout-widgets-button-widget-designer.component-CPBzE96V.mjs} +10 -10
  30. package/fesm2022/acorex-platform-layout-widgets-button-widget-designer.component-CPBzE96V.mjs.map +1 -0
  31. package/fesm2022/{acorex-platform-layout-widgets-file-list-popup.component-CDYAGBku.mjs → acorex-platform-layout-widgets-file-list-popup.component-Dtv6U3df.mjs} +76 -21
  32. package/fesm2022/acorex-platform-layout-widgets-file-list-popup.component-Dtv6U3df.mjs.map +1 -0
  33. package/fesm2022/{acorex-platform-layout-widgets-image-preview.popup-C_EPAvCU.mjs → acorex-platform-layout-widgets-image-preview.popup-QxJfswhK.mjs} +7 -6
  34. package/fesm2022/acorex-platform-layout-widgets-image-preview.popup-QxJfswhK.mjs.map +1 -0
  35. package/fesm2022/{acorex-platform-layout-widgets-page-widget-designer.component-D10yO28c.mjs → acorex-platform-layout-widgets-page-widget-designer.component-CVdssZBD.mjs} +12 -12
  36. package/fesm2022/acorex-platform-layout-widgets-page-widget-designer.component-CVdssZBD.mjs.map +1 -0
  37. package/fesm2022/acorex-platform-layout-widgets-repeater-widget-column.component-BCxE0RTB.mjs +111 -0
  38. package/fesm2022/acorex-platform-layout-widgets-repeater-widget-column.component-BCxE0RTB.mjs.map +1 -0
  39. package/fesm2022/{acorex-platform-layout-widgets-tabular-data-edit-popup.component-DmzNTYiS.mjs → acorex-platform-layout-widgets-tabular-data-edit-popup.component-DVaZN9QN.mjs} +5 -5
  40. package/fesm2022/acorex-platform-layout-widgets-tabular-data-edit-popup.component-DVaZN9QN.mjs.map +1 -0
  41. package/fesm2022/{acorex-platform-layout-widgets-tabular-data-view-popup.component-BNG_588B.mjs → acorex-platform-layout-widgets-tabular-data-view-popup.component-DPGHgXa6.mjs} +4 -4
  42. package/fesm2022/acorex-platform-layout-widgets-tabular-data-view-popup.component-DPGHgXa6.mjs.map +1 -0
  43. package/fesm2022/{acorex-platform-layout-widgets-text-block-widget-designer.component-Vo4fWHtX.mjs → acorex-platform-layout-widgets-text-block-widget-designer.component-CdiNW691.mjs} +6 -6
  44. package/fesm2022/acorex-platform-layout-widgets-text-block-widget-designer.component-CdiNW691.mjs.map +1 -0
  45. package/fesm2022/acorex-platform-layout-widgets.mjs +3429 -5632
  46. package/fesm2022/acorex-platform-layout-widgets.mjs.map +1 -1
  47. package/fesm2022/acorex-platform-native.mjs +7 -8
  48. package/fesm2022/acorex-platform-native.mjs.map +1 -1
  49. package/fesm2022/acorex-platform-runtime.mjs +166 -391
  50. package/fesm2022/acorex-platform-runtime.mjs.map +1 -1
  51. package/fesm2022/acorex-platform-themes-default-entity-master-create-view.component-D4hU2SCE.mjs +160 -0
  52. package/fesm2022/acorex-platform-themes-default-entity-master-create-view.component-D4hU2SCE.mjs.map +1 -0
  53. package/fesm2022/acorex-platform-themes-default-entity-master-list-view.component-D2CtNrSn.mjs +1716 -0
  54. package/fesm2022/acorex-platform-themes-default-entity-master-list-view.component-D2CtNrSn.mjs.map +1 -0
  55. package/fesm2022/acorex-platform-themes-default-entity-master-modify-view.component-BVTklnzs.mjs +120 -0
  56. package/fesm2022/acorex-platform-themes-default-entity-master-modify-view.component-BVTklnzs.mjs.map +1 -0
  57. package/fesm2022/{acorex-platform-themes-default-entity-master-single-view.component-BfCeUU5F.mjs → acorex-platform-themes-default-entity-master-single-view.component-rGsMVAZj.mjs} +23 -16
  58. package/fesm2022/acorex-platform-themes-default-entity-master-single-view.component-rGsMVAZj.mjs.map +1 -0
  59. package/fesm2022/{acorex-platform-themes-default-error-401.component-C7EYJzSr.mjs → acorex-platform-themes-default-error-401.component-53VB-PS_.mjs} +4 -4
  60. package/fesm2022/acorex-platform-themes-default-error-401.component-53VB-PS_.mjs.map +1 -0
  61. package/fesm2022/{acorex-platform-themes-default-error-404.component-7MVLMwIa.mjs → acorex-platform-themes-default-error-404.component-DVF9soT5.mjs} +4 -4
  62. package/fesm2022/acorex-platform-themes-default-error-404.component-DVF9soT5.mjs.map +1 -0
  63. package/fesm2022/acorex-platform-themes-default-error-offline.component-CwNNHzZn.mjs +19 -0
  64. package/fesm2022/acorex-platform-themes-default-error-offline.component-CwNNHzZn.mjs.map +1 -0
  65. package/fesm2022/acorex-platform-themes-default.mjs +61 -1784
  66. package/fesm2022/acorex-platform-themes-default.mjs.map +1 -1
  67. package/fesm2022/{acorex-platform-themes-shared-icon-chooser-column.component-CqkWJYdv.mjs → acorex-platform-themes-shared-icon-chooser-column.component-TJ9PWHMY.mjs} +6 -6
  68. package/fesm2022/acorex-platform-themes-shared-icon-chooser-column.component-TJ9PWHMY.mjs.map +1 -0
  69. package/fesm2022/{acorex-platform-themes-shared-icon-chooser-view.component-BOTuLdWN.mjs → acorex-platform-themes-shared-icon-chooser-view.component-BHcKkIx0.mjs} +6 -6
  70. package/fesm2022/acorex-platform-themes-shared-icon-chooser-view.component-BHcKkIx0.mjs.map +1 -0
  71. package/fesm2022/{acorex-platform-themes-shared-settings.provider-DK6R87Lf.mjs → acorex-platform-themes-shared-settings.provider-DSs1o1M6.mjs} +25 -24
  72. package/fesm2022/acorex-platform-themes-shared-settings.provider-DSs1o1M6.mjs.map +1 -0
  73. package/fesm2022/acorex-platform-themes-shared-theme-color-chooser-column.component-BUPs84MI.mjs +65 -0
  74. package/fesm2022/acorex-platform-themes-shared-theme-color-chooser-column.component-BUPs84MI.mjs.map +1 -0
  75. package/fesm2022/acorex-platform-themes-shared-theme-color-chooser-view.component-BotknoHn.mjs +64 -0
  76. package/fesm2022/acorex-platform-themes-shared-theme-color-chooser-view.component-BotknoHn.mjs.map +1 -0
  77. package/fesm2022/acorex-platform-themes-shared.mjs +305 -408
  78. package/fesm2022/acorex-platform-themes-shared.mjs.map +1 -1
  79. package/fesm2022/acorex-platform-workflow.mjs +100 -359
  80. package/fesm2022/acorex-platform-workflow.mjs.map +1 -1
  81. package/fesm2022/acorex-platform.mjs.map +1 -1
  82. package/{types/acorex-platform-layout-builder.d.ts → layout/builder/index.d.ts} +38 -160
  83. package/{types/acorex-platform-layout-components.d.ts → layout/components/index.d.ts} +125 -854
  84. package/{types/acorex-platform-layout-designer.d.ts → layout/designer/index.d.ts} +18 -96
  85. package/{types/acorex-platform-layout-entity.d.ts → layout/entity/index.d.ts} +65 -848
  86. package/{types/acorex-platform-layout-views.d.ts → layout/views/index.d.ts} +47 -80
  87. package/{types/acorex-platform-layout-widget-core.d.ts → layout/widget-core/index.d.ts} +197 -274
  88. package/{types/acorex-platform-layout-widgets.d.ts → layout/widgets/index.d.ts} +124 -608
  89. package/{types/acorex-platform-native.d.ts → native/index.d.ts} +7 -0
  90. package/package.json +33 -33
  91. package/runtime/index.d.ts +307 -0
  92. package/{types/acorex-platform-themes-default.d.ts → themes/default/index.d.ts} +4 -113
  93. package/{types/acorex-platform-themes-shared.d.ts → themes/shared/index.d.ts} +4 -5
  94. package/{types/acorex-platform-workflow.d.ts → workflow/index.d.ts} +81 -162
  95. package/fesm2022/acorex-platform-common-common-settings.provider-Bi1RYif5.mjs.map +0 -1
  96. package/fesm2022/acorex-platform-layout-components-binding-expression-editor-popup.component-CXEdvDTf.mjs.map +0 -1
  97. package/fesm2022/acorex-platform-layout-widgets-button-widget-designer.component-Dy7jF-oD.mjs.map +0 -1
  98. package/fesm2022/acorex-platform-layout-widgets-file-list-popup.component-CDYAGBku.mjs.map +0 -1
  99. package/fesm2022/acorex-platform-layout-widgets-image-preview.popup-C_EPAvCU.mjs.map +0 -1
  100. package/fesm2022/acorex-platform-layout-widgets-page-widget-designer.component-D10yO28c.mjs.map +0 -1
  101. package/fesm2022/acorex-platform-layout-widgets-repeater-widget-column.component-BGO75IMz.mjs +0 -116
  102. package/fesm2022/acorex-platform-layout-widgets-repeater-widget-column.component-BGO75IMz.mjs.map +0 -1
  103. package/fesm2022/acorex-platform-layout-widgets-tabular-data-edit-popup.component-DmzNTYiS.mjs.map +0 -1
  104. package/fesm2022/acorex-platform-layout-widgets-tabular-data-view-popup.component-BNG_588B.mjs.map +0 -1
  105. package/fesm2022/acorex-platform-layout-widgets-text-block-widget-designer.component-Vo4fWHtX.mjs.map +0 -1
  106. package/fesm2022/acorex-platform-themes-default-entity-master-create-view.component-Cx1lLUaR.mjs +0 -160
  107. package/fesm2022/acorex-platform-themes-default-entity-master-create-view.component-Cx1lLUaR.mjs.map +0 -1
  108. package/fesm2022/acorex-platform-themes-default-entity-master-modify-view.component-AOrcgjDF.mjs +0 -120
  109. package/fesm2022/acorex-platform-themes-default-entity-master-modify-view.component-AOrcgjDF.mjs.map +0 -1
  110. package/fesm2022/acorex-platform-themes-default-entity-master-single-view.component-BfCeUU5F.mjs.map +0 -1
  111. package/fesm2022/acorex-platform-themes-default-error-401.component-C7EYJzSr.mjs.map +0 -1
  112. package/fesm2022/acorex-platform-themes-default-error-404.component-7MVLMwIa.mjs.map +0 -1
  113. package/fesm2022/acorex-platform-themes-default-error-offline.component-DR6G8gPC.mjs +0 -19
  114. package/fesm2022/acorex-platform-themes-default-error-offline.component-DR6G8gPC.mjs.map +0 -1
  115. package/fesm2022/acorex-platform-themes-shared-icon-chooser-column.component-CqkWJYdv.mjs.map +0 -1
  116. package/fesm2022/acorex-platform-themes-shared-icon-chooser-view.component-BOTuLdWN.mjs.map +0 -1
  117. package/fesm2022/acorex-platform-themes-shared-settings.provider-DK6R87Lf.mjs.map +0 -1
  118. package/fesm2022/acorex-platform-themes-shared-theme-color-chooser-column.component-D566Kdvy.mjs +0 -94
  119. package/fesm2022/acorex-platform-themes-shared-theme-color-chooser-column.component-D566Kdvy.mjs.map +0 -1
  120. package/fesm2022/acorex-platform-themes-shared-theme-color-chooser-view.component-D7-rCGl7.mjs +0 -86
  121. package/fesm2022/acorex-platform-themes-shared-theme-color-chooser-view.component-D7-rCGl7.mjs.map +0 -1
  122. package/types/acorex-platform-runtime.d.ts +0 -571
  123. /package/{types/acorex-platform.d.ts → index.d.ts} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"acorex-platform.mjs","sources":["../../../../libs/platform/index.ts","../../../../libs/platform/acorex-platform.ts"],"sourcesContent":["export default {};\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"AAAA,YAAe,EAAE;;ACAjB;;AAEG"}
1
+ {"version":3,"file":"acorex-platform.mjs","sources":["../tmp-esm2022/index.js","../tmp-esm2022/acorex-platform.js"],"sourcesContent":["export default {};\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9saWJzL3BsYXRmb3JtL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGVBQWUsRUFBRSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGRlZmF1bHQge307XG4iXX0=","/**\n * Generated bundle index. Do not edit.\n */\nexport * from './index';\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNvcmV4LXBsYXRmb3JtLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vbGlicy9wbGF0Zm9ybS9hY29yZXgtcGxhdGZvcm0udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLFNBQVMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogR2VuZXJhdGVkIGJ1bmRsZSBpbmRleC4gRG8gbm90IGVkaXQuXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9pbmRleCc7XG4iXX0="],"names":[],"mappings":"AAAA,YAAe,EAAE;;ACAjB;AACA;AACA"}
@@ -3,13 +3,12 @@ import { OnInit, EventEmitter } from '@angular/core';
3
3
  import * as i1 from '@angular/common';
4
4
  import { AXFormComponent } from '@acorex/components/form';
5
5
  import { AXValidationSummary } from '@acorex/core/validation';
6
- import { AXPWidgetNode, AXPWidgetRenderMode, AXPWidgetContainerComponent, AXPWidgetCoreElementAction } from '@acorex/platform/layout/widget-core';
6
+ import { AXPWidgetNode, AXPWidgetRenderMode, AXPWidgetCoreContextChangeEvent, AXPWidgetContainerComponent, AXPWidgetCoreElementAction } from '@acorex/platform/layout/widget-core';
7
7
  import { AXDataSource } from '@acorex/cdk/common';
8
8
  import { AXPopupSizeType } from '@acorex/components/popup';
9
9
  import { AXStepWizardLook } from '@acorex/components/step-wizard';
10
- import { AXPMetaData, AXPGridLayoutOptions, AXPActionMenuItem, AXPMultiLanguageString, AXPExpression, AXPValidationRules, AXPOptionsData, AXPContextChangeEvent, AXPExecuteCommandResult } from '@acorex/platform/core';
10
+ import { AXPGridLayoutOptions, AXPExpression, AXPValidationRules, AXPOptionsData, AXPActionMenuItem } from '@acorex/platform/core';
11
11
  import { AXBasePageComponent } from '@acorex/components/page';
12
- import { AXPCommand } from '@acorex/platform/runtime';
13
12
 
14
13
  /**
15
14
  * Extended widget node properties (excluding type, path, name, options, children)
@@ -30,9 +29,9 @@ type AXPDynamicFormMode = 'view' | 'edit';
30
29
  type AXPDynamicFormDirection = 'vertical' | 'horizontal' | 'grid';
31
30
  interface AXPDynamicFormFieldDefinition {
32
31
  path: string;
33
- title?: AXPMultiLanguageString;
32
+ title?: string;
34
33
  badge?: string;
35
- description?: AXPMultiLanguageString;
34
+ description?: string;
36
35
  widget: AXPWidgetNode;
37
36
  /**
38
37
  * Optional per-field rendering mode. Takes precedence over section and form modes.
@@ -42,8 +41,8 @@ interface AXPDynamicFormFieldDefinition {
42
41
  }
43
42
  interface AXPDynamicFormGroupDefinition {
44
43
  name: string;
45
- title?: AXPMultiLanguageString;
46
- description?: AXPMultiLanguageString;
44
+ title?: string;
45
+ description?: string;
47
46
  parameters: AXPDynamicFormFieldDefinition[];
48
47
  /**
49
48
  * Optional per-section rendering mode. Takes precedence over form mode and is overridden by field mode.
@@ -65,7 +64,7 @@ interface AXPDialogRef {
65
64
  /**
66
65
  * Manually close the dialog (optional - dialog closes automatically after user interaction)
67
66
  */
68
- close(result?: any): void;
67
+ close(): void;
69
68
  /**
70
69
  * Get the form data from the dialog
71
70
  */
@@ -78,17 +77,6 @@ interface AXPDialogRef {
78
77
  * Set the loading state of the dialog
79
78
  */
80
79
  setLoading(loading: boolean): void;
81
- /**
82
- * Deep-merge partial values into the dialog layout context (e.g. after create returns an id).
83
- */
84
- patchContext?(partial: Record<string, unknown>): void;
85
- /**
86
- * Invoke a registered widget's public `api()` method (e.g. step-wizard `next`).
87
- */
88
- invokeWidget?(widgetName: string, method: string, options?: {
89
- setLoading?: (loading: boolean) => void;
90
- close?: (result?: any) => void;
91
- }): Promise<void>;
92
80
  }
93
81
  interface LayoutWidgetOptions {
94
82
  name?: string;
@@ -99,7 +87,7 @@ interface ValueWidgetOptions extends LayoutWidgetOptions {
99
87
  validations?: AXPValidationRules;
100
88
  }
101
89
  interface TextBoxOptions extends ValueWidgetOptions {
102
- placeholder?: AXPMultiLanguageString;
90
+ placeholder?: string;
103
91
  maxLength?: number;
104
92
  minLength?: number;
105
93
  prefix?: string;
@@ -110,14 +98,14 @@ interface NumberBoxOptions extends ValueWidgetOptions {
110
98
  min?: number;
111
99
  max?: number;
112
100
  step?: number;
113
- placeholder?: AXPMultiLanguageString;
101
+ placeholder?: string;
114
102
  format?: string;
115
103
  }
116
104
  interface SelectBoxOptions extends ValueWidgetOptions {
117
105
  dataSource: any[] | (() => any[]) | (() => Promise<any[]>) | AXDataSource<any>;
118
106
  valueField?: string;
119
107
  textField?: string;
120
- placeholder?: AXPMultiLanguageString;
108
+ placeholder?: string;
121
109
  multiple?: boolean;
122
110
  searchable?: boolean;
123
111
  clearButton?: boolean;
@@ -128,7 +116,7 @@ interface DateTimeBoxOptions extends ValueWidgetOptions {
128
116
  format?: string;
129
117
  min?: Date | string;
130
118
  max?: Date | string;
131
- placeholder?: AXPMultiLanguageString;
119
+ placeholder?: string;
132
120
  clearButton?: boolean;
133
121
  }
134
122
  interface ToggleSwitchOptions extends ValueWidgetOptions {
@@ -140,7 +128,7 @@ interface LargeTextBoxOptions extends ValueWidgetOptions {
140
128
  rows?: number;
141
129
  maxLength?: number;
142
130
  minLength?: number;
143
- placeholder?: AXPMultiLanguageString;
131
+ placeholder?: string;
144
132
  resizable?: boolean;
145
133
  }
146
134
  interface ColorBoxOptions extends ValueWidgetOptions {
@@ -239,18 +227,12 @@ interface AXPFieldsetContainerOptions extends LayoutWidgetOptions {
239
227
  isOpen?: boolean;
240
228
  look?: 'fieldset' | 'card' | 'group' | 'container';
241
229
  disabled?: boolean;
242
- showTitle?: boolean;
243
230
  showHeader?: boolean;
244
231
  cols?: number;
245
232
  }
246
- /** How optional `hint` text is rendered in `form-field` layout widgets. */
247
- type AXPFormFieldHintDisplayMode = 'icon' | 'note';
248
233
  interface AXPFormFieldOptions extends LayoutWidgetOptions {
249
234
  label?: string;
250
235
  showLabel?: boolean;
251
- /** Translated/helper copy; pairing with {@link hintDisplayMode}. */
252
- hint?: AXPMultiLanguageString;
253
- hintDisplayMode?: AXPFormFieldHintDisplayMode;
254
236
  }
255
237
  interface AXPDialogContainerOptions extends LayoutWidgetOptions {
256
238
  title?: string;
@@ -258,35 +240,14 @@ interface AXPDialogContainerOptions extends LayoutWidgetOptions {
258
240
  size?: AXPopupSizeType;
259
241
  closeButton?: boolean;
260
242
  context?: any;
261
- metadata?: AXPMetaData;
262
- /**
263
- * When set, invoked on footer action with {@link AXPDialogRef}.
264
- * Set via {@link IDialogBuilder.onAction}.
265
- */
266
- onAction?: (dialogRef: AXPDialogRef) => unknown | Promise<unknown>;
267
- }
268
- /**
269
- * Popup payload for `AXPDialogRendererComponent` (`data.config`) and the `layout-builder.dialog.config` hook.
270
- */
271
- interface AXPLayoutBuilderDialogConfig {
272
- title: string;
273
- context: Record<string, unknown>;
274
- definition: AXPWidgetNode;
275
- metadata?: AXPMetaData;
276
- actions: NonNullable<DialogBuilderState['actions']>;
277
- onAction?: (dialogRef: AXPDialogRef) => unknown | Promise<unknown>;
278
243
  }
279
244
  interface RichTextOptions extends ValueWidgetOptions {
280
- placeholder?: AXPMultiLanguageString;
245
+ placeholder?: string;
281
246
  toolbar?: string[];
282
247
  readonly?: boolean;
283
- /** Max height (px) for scrollable full preview when `showFullContent` is true. */
284
- height?: number;
285
- /** When true, view mode renders full HTML in a scrollable area instead of a truncated snippet. */
286
- showFullContent?: boolean;
287
248
  }
288
249
  interface PasswordBoxOptions extends ValueWidgetOptions {
289
- placeholder?: AXPMultiLanguageString;
250
+ placeholder?: string;
290
251
  revealToggle?: boolean;
291
252
  maxLength?: number;
292
253
  }
@@ -308,7 +269,7 @@ interface SelectionListOptions extends ValueWidgetOptions {
308
269
  textField?: string;
309
270
  multiple?: boolean;
310
271
  searchable?: boolean;
311
- placeholder?: AXPMultiLanguageString;
272
+ placeholder?: string;
312
273
  }
313
274
  interface AXPListWidgetColumn {
314
275
  name: string;
@@ -447,9 +408,7 @@ type DialogBuilderState = AXPWidgetNode & {
447
408
  interface IActionBuilder {
448
409
  cancel(text?: string): IActionBuilder;
449
410
  submit(text?: string): IActionBuilder;
450
- custom(action: AXPActionMenuItem & {
451
- position?: 'prefix' | 'suffix';
452
- }): IActionBuilder;
411
+ custom(action: AXPActionMenuItem): IActionBuilder;
453
412
  }
454
413
  interface ILayoutBuilder {
455
414
  grid(delegate: (container: IGridContainerBuilder) => void): ILayoutBuilder;
@@ -549,8 +508,6 @@ interface IGridContainerBuilder extends IBaseContainerBuilder<IGridContainerBuil
549
508
  setBackgroundColor(color: string): IGridContainerBuilder;
550
509
  setPadding(padding: string): IGridContainerBuilder;
551
510
  setMargin(margin: string): IGridContainerBuilder;
552
- /** Add a grid-item-layout child with optional placement; delegate builds the fieldset content. */
553
- item(layoutOptions: Partial<AXPGridLayoutOptions> | null | undefined, delegate: (container: IFieldsetContainerBuilder) => void): IGridContainerBuilder;
554
511
  }
555
512
  interface IPanelContainerBuilder extends IBaseContainerBuilder<IPanelContainerBuilder>, ILayoutContainerBuilder<IPanelContainerBuilder>, IChildContainerBuilder<IPanelContainerBuilder>, IWidgetContainerBuilder<IPanelContainerBuilder> {
556
513
  setOptions(options: AXPPanelContainerOptions): IPanelContainerBuilder;
@@ -702,11 +659,6 @@ declare class AXPLayoutRendererComponent implements OnInit {
702
659
  */
703
660
  mode: _angular_core.InputSignal<AXPDynamicFormMode>;
704
661
  protected widgetTree: _angular_core.WritableSignal<AXPWidgetNode | null>;
705
- /**
706
- * Prefer explicit {@link AXPWidgetNode.mode} on the root node (e.g. dialog flex `mode('view')`)
707
- * so nested widgets resolve view vs edit correctly; fall back to the layout `mode` input.
708
- */
709
- protected effectiveRenderMode: _angular_core.Signal<"view" | "edit" | "column" | "designer" | "print" | "filter">;
710
662
  /**
711
663
  * Convert layout data to widget tree when inputs change
712
664
  */
@@ -733,7 +685,7 @@ declare class AXPLayoutRendererComponent implements OnInit {
733
685
  /**
734
686
  * Handle context change events from widget container (optimized with RxJS)
735
687
  */
736
- protected handleContextChanged(event: AXPContextChangeEvent): void;
688
+ protected handleContextChanged(event: AXPWidgetCoreContextChangeEvent): void;
737
689
  /**
738
690
  * Get the form component instance
739
691
  */
@@ -788,40 +740,8 @@ declare class LayoutBuilderModule {
788
740
  static ɵinj: _angular_core.ɵɵInjectorDeclaration<LayoutBuilderModule>;
789
741
  }
790
742
 
791
- /**
792
- * Runs after dialog options and context are prepared and **before** footer customization and popup open.
793
- * Listeners may mutate {@link AXPLayoutBuilderDialogBeforeOpenPayload.context} by reference.
794
- */
795
- declare const AXP_LAYOUT_BUILDER_DIALOG_BEFORE_OPEN_HOOK_KEY = "layout-builder.dialog.before-open";
796
- interface AXPLayoutBuilderDialogBeforeOpenPayload {
797
- context: Record<string, unknown>;
798
- dialogOptions: AXPDialogContainerOptions;
799
- }
800
- /**
801
- * Runs after builder-defined footer actions exist and **before** the dialog opens.
802
- * Listeners receive the live `actions.footer.prefix` / `suffix` arrays (same references as the dialog)
803
- * so they may push, splice, filter, or replace items. They may also mutate {@link AXPLayoutBuilderDialogFooterPayload.context} by reference.
804
- */
805
- declare const AXP_LAYOUT_BUILDER_DIALOG_CONFIG_HOOK_KEY = "layout-builder.dialog.config";
806
- /**
807
- * Runs whenever the dialog layout builder context changes (debounced upstream), **after** the popup is visible.
808
- * Use for side effects that depend on live context (for example values updated by widgets after render).
809
- * Payload mirrors `AXPDialogRendererComponent` semantics: {@link AXPLayoutBuilderDialogContextChangedPayload.getContext},
810
- * {@link AXPLayoutBuilderDialogContextChangedPayload.patchContext}, and optional loading state.
811
- */
812
- declare const AXP_LAYOUT_BUILDER_DIALOG_CONTEXT_CHANGED_HOOK_KEY = "layout-builder.dialog.context-changed";
813
- interface AXPLayoutBuilderDialogContextChangedPayload {
814
- /** Stable id for this dialog instance; lets listeners correlate repeated emissions or async follow-up work. */
815
- sessionKey: string;
816
- getContext: () => Record<string, unknown>;
817
- metadata: Record<string, unknown> | undefined;
818
- patchContext: (partial: Record<string, unknown>) => void;
819
- setLoading: (loading: boolean) => void;
820
- }
821
-
822
743
  declare class AXPLayoutBuilderService {
823
744
  private popupService;
824
- private readonly hookService;
825
745
  /**
826
746
  * Create a new layout builder
827
747
  */
@@ -896,7 +816,23 @@ declare class AXPLayoutConversionService {
896
816
  static ɵprov: _angular_core.ɵɵInjectableDeclaration<AXPLayoutConversionService>;
897
817
  }
898
818
 
899
- type DialogRendererConfig = AXPLayoutBuilderDialogConfig;
819
+ interface DialogRendererConfig {
820
+ title: string;
821
+ message?: string;
822
+ context: any;
823
+ definition: AXPWidgetNode;
824
+ actions?: {
825
+ footer?: {
826
+ prefix?: any[];
827
+ suffix?: any[];
828
+ };
829
+ };
830
+ /**
831
+ * When present, handler is called on action click with AXPDialogRef.
832
+ * Throw = stay open for retry. Return = close and resolve show() with return value.
833
+ */
834
+ onAction?: (dialogRef: AXPDialogRef) => any | Promise<any>;
835
+ }
900
836
  interface DialogRendererResult {
901
837
  context: any;
902
838
  action?: string;
@@ -907,93 +843,35 @@ declare class AXPDialogRendererComponent extends AXBasePageComponent implements
907
843
  result: EventEmitter<DialogRendererResult>;
908
844
  private widgetCoreService;
909
845
  private expressionEvaluator;
910
- private readonly commandService;
911
- private readonly hookService;
912
846
  private dialogResult?;
913
847
  context: _angular_core.WritableSignal<any>;
914
- callBack: (result: unknown) => void;
848
+ callBack: (dialogRef: AXPDialogRef) => void;
915
849
  data: any;
916
850
  private isDialogLoading;
917
851
  footerPrefix: _angular_core.WritableSignal<AXPWidgetCoreElementAction[]>;
918
852
  footerSuffix: _angular_core.WritableSignal<AXPWidgetCoreElementAction[]>;
919
- /**
920
- * Correlate layout context snapshots for distributed hooks (`layout-builder.dialog.context-changed`).
921
- */
922
- private readonly contextChangedHooksSessionKey;
923
853
  ngOnInit(): void;
924
854
  private layoutRenderer;
925
855
  private debounceTimer?;
926
856
  handleContextChanged(event: any): void;
927
857
  handleContextInitiated(event: any): void;
928
- private invokeLayoutContextChangedHooks;
929
858
  footerPrefixActions(): AXPWidgetCoreElementAction[];
930
859
  footerSuffixActions(): AXPWidgetCoreElementAction[];
931
860
  isFormLoading(): boolean;
932
861
  isSubmitting(): boolean;
933
862
  executeAction(action: AXPWidgetCoreElementAction): Promise<void>;
934
- /** Whether the layout form should be validated before running this footer command. */
935
- private shouldValidateBeforeAction;
936
- /** True when a footer handler or command result asks to leave the dialog open (`keepDialogOpen` on the result or `result.data`). */
937
- private shouldKeepDialogOpenAfterCommandResult;
938
- private createDialogRef;
939
- private closeWithOptionalSkipValidate;
940
- /** Resolves footer/widget action command to a string (e.g. `cancel`, `submit`, `widget:...`). */
941
- private resolveActionCommandName;
942
863
  private parseWidgetCommand;
943
- private invokeWidget;
864
+ private executeWidgetApi;
944
865
  close(result?: DialogRendererResult): Promise<void>;
945
866
  private aggregateAndEvaluateActions;
946
867
  private collectWidgetActions;
947
868
  private collectDialogActionsFromConfig;
948
869
  private evaluatePredicates;
949
870
  private evalBool;
950
- /** Resolves footer action title when it contains {{ ... }} (e.g. wizard labels from dialog context). */
951
- private evalActionTitle;
952
871
  private resolveApi;
953
872
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPDialogRendererComponent, never>;
954
873
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXPDialogRendererComponent, "axp-dialog-renderer", never, {}, { "result": "result"; }, never, never, true, never>;
955
874
  }
956
875
 
957
- /** Registration key for {@link AXPPreviewWidgetFieldCommand}; lives alone so `LayoutBuilderModule` can reference it without static-importing the command implementation. */
958
- declare const AXP_PREVIEW_WIDGET_FIELD_COMMAND_KEY = "Widget:Preview";
959
-
960
- /** See `AXP_PREVIEW_WIDGET_FIELD_COMMAND_KEY` in `preview-widget-field.command.key.ts`. */
961
- interface AXPPreviewWidgetFieldCommandInput {
962
- /** Widget node to render (same shape as `widget-field-configurator` model). */
963
- widget?: AXPWidgetNode;
964
- /**
965
- * Alternate property name for the widget node (matches metadata definition `interface` field).
966
- */
967
- interface?: AXPWidgetNode | string;
968
- fieldName?: string;
969
- fieldTitle?: AXPMultiLanguageString;
970
- name?: string;
971
- title?: AXPMultiLanguageString;
972
- }
973
- type AXPPreviewWidgetFieldInvocation = AXPPreviewWidgetFieldCommandInput & {
974
- __context__?: {
975
- data?: Record<string, unknown>;
976
- options?: Record<string, unknown>;
977
- };
978
- };
979
- /**
980
- * Opens a dialog that previews a widget configuration (same behavior as the preview button on
981
- * `axp-widget-field-configurator`). Invoked from that component and from entity list actions.
982
- */
983
- declare class AXPPreviewWidgetFieldCommand implements AXPCommand<AXPPreviewWidgetFieldCommandInput, void> {
984
- private readonly formBuilderService;
985
- private readonly widgetRegistry;
986
- private readonly translationService;
987
- private readonly crudService;
988
- execute(input: AXPPreviewWidgetFieldInvocation): Promise<AXPExecuteCommandResult<void>>;
989
- private mergeInvocation;
990
- private normalizeWidget;
991
- private resolveFieldTitleLabel;
992
- private isCancelDialogOutcome;
993
- private resolveWidgetDisplayTitle;
994
- static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPPreviewWidgetFieldCommand, never>;
995
- static ɵprov: _angular_core.ɵɵInjectableDeclaration<AXPPreviewWidgetFieldCommand>;
996
- }
997
-
998
- export { AXPDialogRendererComponent, AXPLayoutBuilderService, AXPLayoutConversionService, AXPLayoutRendererComponent, AXPPreviewWidgetFieldCommand, AXP_LAYOUT_BUILDER_DIALOG_BEFORE_OPEN_HOOK_KEY, AXP_LAYOUT_BUILDER_DIALOG_CONFIG_HOOK_KEY, AXP_LAYOUT_BUILDER_DIALOG_CONTEXT_CHANGED_HOOK_KEY, AXP_PREVIEW_WIDGET_FIELD_COMMAND_KEY, LayoutBuilderModule };
999
- export type { AXPDialogContainerOptions, AXPDialogRef, AXPDynamicFormDefinition, AXPDynamicFormDirection, AXPDynamicFormFieldDefinition, AXPDynamicFormGroupDefinition, AXPDynamicFormLook, AXPDynamicFormMode, AXPFieldsetContainerOptions, AXPFlexContainerOptions, AXPFormFieldHintDisplayMode, AXPFormFieldOptions, AXPGridContainerOptions, AXPLayoutBuilderDialogBeforeOpenPayload, AXPLayoutBuilderDialogConfig, AXPLayoutBuilderDialogContextChangedPayload, AXPListWidgetColumn, AXPListWidgetOptions, AXPListWidgetRowCommand, AXPPageContainerOptions, AXPPanelContainerOptions, AXPPreviewWidgetFieldCommandInput, AXPStepDefinition, AXPStepWizardContainerOptions, AXPStepWizardDefinition, AXPStepWizardGuardPayload, AXPStepWizardStatus, AXPTabsetContainerOptions, AXPWidgetConfiguration, AXPWidgetNodeExtendedProperties, AXPWizardActionDefinition, AXPWizardActions, ColorBoxOptions, DateTimeBoxOptions, DialogBuilderState, DialogRendererConfig, DialogRendererResult, FormFieldBuilderState, IActionBuilder, IBaseContainerBuilder, IChildContainerBuilder, IDialogBuilder, IFieldsetContainerBuilder, IFlexContainerBuilder, IFormFieldBuilder, IGridContainerBuilder, ILayoutBuilder, ILayoutContainerBuilder, IListWidgetBuilder, IPageContainerBuilder, IPanelContainerBuilder, IStepBuilder, IStepWizardBuilder, ITabsetContainerBuilder, IWidgetBuilder, IWidgetContainerBuilder, InheritanceContext, InheritedProperties, LargeTextBoxOptions, LayoutBuilderState, LayoutWidgetOptions, LookupBoxOptions, NumberBoxOptions, PasswordBoxOptions, RichTextOptions, SelectBoxOptions, SelectionListOptions, TextBoxOptions, ToggleSwitchOptions, ValueWidgetOptions, WidgetBuilderState };
876
+ export { AXPDialogRendererComponent, AXPLayoutBuilderService, AXPLayoutConversionService, AXPLayoutRendererComponent, LayoutBuilderModule };
877
+ export type { AXPDialogContainerOptions, AXPDialogRef, AXPDynamicFormDefinition, AXPDynamicFormDirection, AXPDynamicFormFieldDefinition, AXPDynamicFormGroupDefinition, AXPDynamicFormLook, AXPDynamicFormMode, AXPFieldsetContainerOptions, AXPFlexContainerOptions, AXPFormFieldOptions, AXPGridContainerOptions, AXPListWidgetColumn, AXPListWidgetOptions, AXPListWidgetRowCommand, AXPPageContainerOptions, AXPPanelContainerOptions, AXPStepDefinition, AXPStepWizardContainerOptions, AXPStepWizardDefinition, AXPStepWizardGuardPayload, AXPStepWizardStatus, AXPTabsetContainerOptions, AXPWidgetConfiguration, AXPWidgetNodeExtendedProperties, AXPWizardActionDefinition, AXPWizardActions, ColorBoxOptions, DateTimeBoxOptions, DialogBuilderState, DialogRendererConfig, DialogRendererResult, FormFieldBuilderState, IActionBuilder, IBaseContainerBuilder, IChildContainerBuilder, IDialogBuilder, IFieldsetContainerBuilder, IFlexContainerBuilder, IFormFieldBuilder, IGridContainerBuilder, ILayoutBuilder, ILayoutContainerBuilder, IListWidgetBuilder, IPageContainerBuilder, IPanelContainerBuilder, IStepBuilder, IStepWizardBuilder, ITabsetContainerBuilder, IWidgetBuilder, IWidgetContainerBuilder, InheritanceContext, InheritedProperties, LargeTextBoxOptions, LayoutBuilderState, LayoutWidgetOptions, LookupBoxOptions, NumberBoxOptions, PasswordBoxOptions, RichTextOptions, SelectBoxOptions, SelectionListOptions, TextBoxOptions, ToggleSwitchOptions, ValueWidgetOptions, WidgetBuilderState };