@acorex/platform 20.6.0-next.2 → 20.6.0-next.21

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 (107) hide show
  1. package/common/index.d.ts +7 -3
  2. package/core/index.d.ts +210 -56
  3. package/fesm2022/acorex-platform-auth.mjs +19 -19
  4. package/fesm2022/acorex-platform-auth.mjs.map +1 -1
  5. package/fesm2022/{acorex-platform-common-common-settings.provider-CLb2KMfv.mjs → acorex-platform-common-common-settings.provider-zhqNP3xb.mjs} +28 -4
  6. package/fesm2022/acorex-platform-common-common-settings.provider-zhqNP3xb.mjs.map +1 -0
  7. package/fesm2022/acorex-platform-common.mjs +104 -103
  8. package/fesm2022/acorex-platform-common.mjs.map +1 -1
  9. package/fesm2022/acorex-platform-core.mjs +279 -78
  10. package/fesm2022/acorex-platform-core.mjs.map +1 -1
  11. package/fesm2022/acorex-platform-domain.mjs +65 -20
  12. package/fesm2022/acorex-platform-domain.mjs.map +1 -1
  13. package/fesm2022/acorex-platform-layout-builder.mjs +56 -135
  14. package/fesm2022/acorex-platform-layout-builder.mjs.map +1 -1
  15. package/fesm2022/acorex-platform-layout-components.mjs +1322 -409
  16. package/fesm2022/acorex-platform-layout-components.mjs.map +1 -1
  17. package/fesm2022/acorex-platform-layout-designer.mjs +73 -73
  18. package/fesm2022/acorex-platform-layout-designer.mjs.map +1 -1
  19. package/fesm2022/acorex-platform-layout-entity.mjs +7736 -3813
  20. package/fesm2022/acorex-platform-layout-entity.mjs.map +1 -1
  21. package/fesm2022/acorex-platform-layout-views.mjs +58 -40
  22. package/fesm2022/acorex-platform-layout-views.mjs.map +1 -1
  23. package/fesm2022/acorex-platform-layout-widget-core.mjs +91 -82
  24. package/fesm2022/acorex-platform-layout-widget-core.mjs.map +1 -1
  25. package/fesm2022/{acorex-platform-layout-widgets-button-widget-designer.component-lHfg4JFJ.mjs → acorex-platform-layout-widgets-button-widget-designer.component-C3VoBb_b.mjs} +4 -4
  26. package/fesm2022/{acorex-platform-layout-widgets-button-widget-designer.component-lHfg4JFJ.mjs.map → acorex-platform-layout-widgets-button-widget-designer.component-C3VoBb_b.mjs.map} +1 -1
  27. package/fesm2022/{acorex-platform-layout-widgets-extra-properties-schema-widget-edit.component-CMSnecnD.mjs → acorex-platform-layout-widgets-extra-properties-schema-widget-edit.component-fhhZOWul.mjs} +4 -4
  28. package/fesm2022/{acorex-platform-layout-widgets-extra-properties-schema-widget-edit.component-CMSnecnD.mjs.map → acorex-platform-layout-widgets-extra-properties-schema-widget-edit.component-fhhZOWul.mjs.map} +1 -1
  29. package/fesm2022/{acorex-platform-layout-widgets-extra-properties-schema-widget-view.component-DN-sIFYe.mjs → acorex-platform-layout-widgets-extra-properties-schema-widget-view.component-C3Qbs0fz.mjs} +4 -4
  30. package/fesm2022/{acorex-platform-layout-widgets-extra-properties-schema-widget-view.component-DN-sIFYe.mjs.map → acorex-platform-layout-widgets-extra-properties-schema-widget-view.component-C3Qbs0fz.mjs.map} +1 -1
  31. package/fesm2022/{acorex-platform-layout-widgets-extra-properties-values-widget-edit.component-Bn9w0SEz.mjs → acorex-platform-layout-widgets-extra-properties-values-widget-edit.component-CngQBUlN.mjs} +4 -4
  32. package/fesm2022/{acorex-platform-layout-widgets-extra-properties-values-widget-edit.component-Bn9w0SEz.mjs.map → acorex-platform-layout-widgets-extra-properties-values-widget-edit.component-CngQBUlN.mjs.map} +1 -1
  33. package/fesm2022/{acorex-platform-layout-widgets-extra-properties-values-widget-view.component-B8mgcvoX.mjs → acorex-platform-layout-widgets-extra-properties-values-widget-view.component-DSNo9e4W.mjs} +4 -4
  34. package/fesm2022/{acorex-platform-layout-widgets-extra-properties-values-widget-view.component-B8mgcvoX.mjs.map → acorex-platform-layout-widgets-extra-properties-values-widget-view.component-DSNo9e4W.mjs.map} +1 -1
  35. package/fesm2022/{acorex-platform-layout-widgets-extra-properties-widget-edit.component-Bhof2SY8.mjs → acorex-platform-layout-widgets-extra-properties-widget-edit.component-CL0CwEHX.mjs} +4 -4
  36. package/fesm2022/{acorex-platform-layout-widgets-extra-properties-widget-edit.component-Bhof2SY8.mjs.map → acorex-platform-layout-widgets-extra-properties-widget-edit.component-CL0CwEHX.mjs.map} +1 -1
  37. package/fesm2022/{acorex-platform-layout-widgets-extra-properties-widget-view.component-CeQIvKVV.mjs → acorex-platform-layout-widgets-extra-properties-widget-view.component-B6Fi0xTw.mjs} +4 -4
  38. package/fesm2022/{acorex-platform-layout-widgets-extra-properties-widget-view.component-CeQIvKVV.mjs.map → acorex-platform-layout-widgets-extra-properties-widget-view.component-B6Fi0xTw.mjs.map} +1 -1
  39. package/fesm2022/{acorex-platform-layout-widgets-file-list-popup.component-BOP7jFp4.mjs → acorex-platform-layout-widgets-file-list-popup.component-D0y-9nE5.mjs} +6 -6
  40. package/fesm2022/{acorex-platform-layout-widgets-file-list-popup.component-BOP7jFp4.mjs.map → acorex-platform-layout-widgets-file-list-popup.component-D0y-9nE5.mjs.map} +1 -1
  41. package/fesm2022/acorex-platform-layout-widgets-image-preview.popup-V31OpYah.mjs +30 -0
  42. package/fesm2022/acorex-platform-layout-widgets-image-preview.popup-V31OpYah.mjs.map +1 -0
  43. package/fesm2022/{acorex-platform-layout-widgets-page-widget-designer.component-C57lyBs3.mjs → acorex-platform-layout-widgets-page-widget-designer.component-BtZMBxYp.mjs} +4 -4
  44. package/fesm2022/{acorex-platform-layout-widgets-page-widget-designer.component-C57lyBs3.mjs.map → acorex-platform-layout-widgets-page-widget-designer.component-BtZMBxYp.mjs.map} +1 -1
  45. package/fesm2022/{acorex-platform-layout-widgets-tabular-data-edit-popup.component-fr77M8Z0.mjs → acorex-platform-layout-widgets-tabular-data-edit-popup.component-m8rHZP8L.mjs} +6 -6
  46. package/fesm2022/acorex-platform-layout-widgets-tabular-data-edit-popup.component-m8rHZP8L.mjs.map +1 -0
  47. package/fesm2022/{acorex-platform-layout-widgets-tabular-data-view-popup.component-CvZTRhct.mjs → acorex-platform-layout-widgets-tabular-data-view-popup.component-y8vjUiVs.mjs} +5 -5
  48. package/fesm2022/acorex-platform-layout-widgets-tabular-data-view-popup.component-y8vjUiVs.mjs.map +1 -0
  49. package/fesm2022/{acorex-platform-layout-widgets-text-block-widget-designer.component-DHES_0ot.mjs → acorex-platform-layout-widgets-text-block-widget-designer.component-Df1BFkSa.mjs} +4 -4
  50. package/fesm2022/{acorex-platform-layout-widgets-text-block-widget-designer.component-DHES_0ot.mjs.map → acorex-platform-layout-widgets-text-block-widget-designer.component-Df1BFkSa.mjs.map} +1 -1
  51. package/fesm2022/acorex-platform-layout-widgets.mjs +3809 -2060
  52. package/fesm2022/acorex-platform-layout-widgets.mjs.map +1 -1
  53. package/fesm2022/acorex-platform-native.mjs +7 -7
  54. package/fesm2022/acorex-platform-native.mjs.map +1 -1
  55. package/fesm2022/acorex-platform-runtime.mjs +119 -43
  56. package/fesm2022/acorex-platform-runtime.mjs.map +1 -1
  57. package/fesm2022/{acorex-platform-themes-default-entity-master-create-view.component-C_XmJV7Y.mjs → acorex-platform-themes-default-entity-master-create-view.component-mARj77Mr.mjs} +30 -9
  58. package/fesm2022/acorex-platform-themes-default-entity-master-create-view.component-mARj77Mr.mjs.map +1 -0
  59. package/fesm2022/acorex-platform-themes-default-entity-master-list-view.component-D5K0XUqM.mjs +1522 -0
  60. package/fesm2022/acorex-platform-themes-default-entity-master-list-view.component-D5K0XUqM.mjs.map +1 -0
  61. package/fesm2022/{acorex-platform-themes-default-entity-master-modify-view.component-DJPDil7w.mjs → acorex-platform-themes-default-entity-master-modify-view.component-BTA6h7Xd.mjs} +4 -4
  62. package/fesm2022/acorex-platform-themes-default-entity-master-modify-view.component-BTA6h7Xd.mjs.map +1 -0
  63. package/fesm2022/{acorex-platform-themes-default-entity-master-single-view.component-BArdGNfr.mjs → acorex-platform-themes-default-entity-master-single-view.component-B_P0a5KW.mjs} +7 -7
  64. package/fesm2022/acorex-platform-themes-default-entity-master-single-view.component-B_P0a5KW.mjs.map +1 -0
  65. package/fesm2022/{acorex-platform-themes-default-error-401.component-D7rEInHg.mjs → acorex-platform-themes-default-error-401.component-cfREo88K.mjs} +4 -4
  66. package/fesm2022/{acorex-platform-themes-default-error-401.component-D7rEInHg.mjs.map → acorex-platform-themes-default-error-401.component-cfREo88K.mjs.map} +1 -1
  67. package/fesm2022/{acorex-platform-themes-default-error-404.component-BTZlVrd8.mjs → acorex-platform-themes-default-error-404.component-CdCV5ZoA.mjs} +4 -4
  68. package/fesm2022/{acorex-platform-themes-default-error-404.component-BTZlVrd8.mjs.map → acorex-platform-themes-default-error-404.component-CdCV5ZoA.mjs.map} +1 -1
  69. package/fesm2022/{acorex-platform-themes-default-error-offline.component-BhvEi6nX.mjs → acorex-platform-themes-default-error-offline.component-E7SzBcAt.mjs} +4 -4
  70. package/fesm2022/{acorex-platform-themes-default-error-offline.component-BhvEi6nX.mjs.map → acorex-platform-themes-default-error-offline.component-E7SzBcAt.mjs.map} +1 -1
  71. package/fesm2022/acorex-platform-themes-default.mjs +156 -53
  72. package/fesm2022/acorex-platform-themes-default.mjs.map +1 -1
  73. package/fesm2022/acorex-platform-themes-shared-icon-chooser-column.component-C0EpfU2k.mjs +55 -0
  74. package/fesm2022/acorex-platform-themes-shared-icon-chooser-column.component-C0EpfU2k.mjs.map +1 -0
  75. package/fesm2022/{acorex-platform-themes-shared-icon-chooser-view.component-BXV40gay.mjs → acorex-platform-themes-shared-icon-chooser-view.component-9W52W6Nu.mjs} +4 -4
  76. package/fesm2022/{acorex-platform-themes-shared-icon-chooser-view.component-BXV40gay.mjs.map → acorex-platform-themes-shared-icon-chooser-view.component-9W52W6Nu.mjs.map} +1 -1
  77. package/fesm2022/{acorex-platform-themes-shared-theme-color-chooser-column.component-BpIf4s53.mjs → acorex-platform-themes-shared-theme-color-chooser-column.component-DTnfRy5f.mjs} +4 -4
  78. package/fesm2022/{acorex-platform-themes-shared-theme-color-chooser-column.component-BpIf4s53.mjs.map → acorex-platform-themes-shared-theme-color-chooser-column.component-DTnfRy5f.mjs.map} +1 -1
  79. package/fesm2022/{acorex-platform-themes-shared-theme-color-chooser-view.component-C9gvfQfX.mjs → acorex-platform-themes-shared-theme-color-chooser-view.component-DY0JtT1v.mjs} +4 -4
  80. package/fesm2022/{acorex-platform-themes-shared-theme-color-chooser-view.component-C9gvfQfX.mjs.map → acorex-platform-themes-shared-theme-color-chooser-view.component-DY0JtT1v.mjs.map} +1 -1
  81. package/fesm2022/acorex-platform-themes-shared.mjs +58 -153
  82. package/fesm2022/acorex-platform-themes-shared.mjs.map +1 -1
  83. package/fesm2022/acorex-platform-workflow.mjs +327 -151
  84. package/fesm2022/acorex-platform-workflow.mjs.map +1 -1
  85. package/layout/builder/index.d.ts +6 -33
  86. package/layout/components/index.d.ts +306 -61
  87. package/layout/designer/index.d.ts +1 -1
  88. package/layout/entity/index.d.ts +595 -94
  89. package/layout/views/index.d.ts +6 -58
  90. package/layout/widget-core/index.d.ts +31 -26
  91. package/layout/widgets/README.md +0 -1
  92. package/layout/widgets/index.d.ts +325 -99
  93. package/package.json +1 -1
  94. package/runtime/index.d.ts +36 -8
  95. package/themes/default/index.d.ts +32 -77
  96. package/themes/shared/index.d.ts +1 -39
  97. package/workflow/index.d.ts +909 -457
  98. package/fesm2022/acorex-platform-common-common-settings.provider-CLb2KMfv.mjs.map +0 -1
  99. package/fesm2022/acorex-platform-layout-entity-create-entity.command-BsLbiAdA.mjs +0 -52
  100. package/fesm2022/acorex-platform-layout-entity-create-entity.command-BsLbiAdA.mjs.map +0 -1
  101. package/fesm2022/acorex-platform-layout-widgets-tabular-data-edit-popup.component-fr77M8Z0.mjs.map +0 -1
  102. package/fesm2022/acorex-platform-layout-widgets-tabular-data-view-popup.component-CvZTRhct.mjs.map +0 -1
  103. package/fesm2022/acorex-platform-themes-default-entity-master-create-view.component-C_XmJV7Y.mjs.map +0 -1
  104. package/fesm2022/acorex-platform-themes-default-entity-master-list-view.component-BkY9HXcT.mjs +0 -782
  105. package/fesm2022/acorex-platform-themes-default-entity-master-list-view.component-BkY9HXcT.mjs.map +0 -1
  106. package/fesm2022/acorex-platform-themes-default-entity-master-modify-view.component-DJPDil7w.mjs.map +0 -1
  107. package/fesm2022/acorex-platform-themes-default-entity-master-single-view.component-BArdGNfr.mjs.map +0 -1
@@ -369,6 +369,7 @@ interface InheritanceContext {
369
369
  readonly?: boolean | string;
370
370
  direction?: 'rtl' | 'ltr';
371
371
  visible?: boolean | string;
372
+ defaultValue?: any;
372
373
  }
373
374
  interface InheritedProperties {
374
375
  mode: AXPWidgetRenderMode;
@@ -425,6 +426,7 @@ interface IWidgetBuilder {
425
426
  visible(condition: boolean | string): IWidgetBuilder;
426
427
  disabled(condition: boolean | string): IWidgetBuilder;
427
428
  readonly(condition: boolean | string): IWidgetBuilder;
429
+ defaultValue(defaultValue: any): IWidgetBuilder;
428
430
  direction(direction: 'rtl' | 'ltr'): IWidgetBuilder;
429
431
  withInheritanceContext(context: InheritanceContext): IWidgetBuilder;
430
432
  getInheritanceContext(): InheritanceContext;
@@ -522,6 +524,7 @@ interface IFormFieldBuilder extends IBaseContainerBuilder<IFormFieldBuilder>, IL
522
524
  setOptions(options: AXPFormFieldOptions): IFormFieldBuilder;
523
525
  setLabel(label: string): IFormFieldBuilder;
524
526
  setShowLabel(showLabel: boolean): IFormFieldBuilder;
527
+ defaultValue(value: any): IFormFieldBuilder;
525
528
  textBox(options?: Omit<TextBoxOptions, 'path'>): IFormFieldBuilder;
526
529
  largeTextBox(options?: Omit<LargeTextBoxOptions, 'path'>): IFormFieldBuilder;
527
530
  richText(options?: Omit<RichTextOptions, 'path'>): IFormFieldBuilder;
@@ -612,29 +615,12 @@ interface IStepWizardBuilder extends IBaseContainerBuilder<IStepWizardBuilder>,
612
615
 
613
616
  declare class AXPLayoutRendererComponent implements OnInit {
614
617
  #private;
615
- private evaluatorService;
616
618
  private conversionService;
617
- /**
618
- * Tracks the latest scheduled evaluation to ensure last-write-wins for async evaluate
619
- */
620
- private evaluationRunId;
621
619
  /**
622
620
  * RxJS subjects for context management
623
621
  */
624
622
  private contextUpdateSubject;
625
623
  private contextChangeSubject;
626
- /**
627
- * Cache for expression evaluation results
628
- */
629
- private expressionCache;
630
- /**
631
- * Cache for widget tree comparisons
632
- */
633
- private widgetTreeCache;
634
- /**
635
- * Last layout hash for change detection
636
- */
637
- private lastLayoutHash;
638
624
  /**
639
625
  * Form definition containing groups and fields OR widget tree
640
626
  */
@@ -653,10 +639,9 @@ declare class AXPLayoutRendererComponent implements OnInit {
653
639
  mode: _angular_core.InputSignal<AXPDynamicFormMode>;
654
640
  protected widgetTree: _angular_core.WritableSignal<AXPWidgetNode | null>;
655
641
  /**
656
- * Convert and evaluate data when inputs change (optimized with RxJS)
642
+ * Convert layout data to widget tree when inputs change
657
643
  */
658
644
  conversionEffect: _angular_core.EffectRef;
659
- protected expressionEvaluator(expression: any, context: any): Promise<any>;
660
645
  /**
661
646
  * Emitted when context change is initiated
662
647
  */
@@ -721,21 +706,9 @@ declare class AXPLayoutRendererComponent implements OnInit {
721
706
  */
722
707
  private isFormDefinition;
723
708
  /**
724
- * Generate layout hash for change detection (short hash)
725
- */
726
- private generateLayoutHash;
727
- /**
728
- * Generate cache key for expression evaluation (short hash)
729
- */
730
- private generateCacheKey;
731
- /**
732
- * Generate a simple hash for context change detection
733
- */
734
- private generateContextHash;
735
- /**
736
- * Simple hash function for generating short keys
709
+ * Type guard to check if the input is a widget node
737
710
  */
738
- private simpleHash;
711
+ private isWidgetNode;
739
712
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPLayoutRendererComponent, never>;
740
713
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXPLayoutRendererComponent, "axp-layout-renderer", never, { "layout": { "alias": "layout"; "required": true; "isSignal": true; }; "context": { "alias": "context"; "required": false; "isSignal": true; }; "look": { "alias": "look"; "required": false; "isSignal": true; }; "mode": { "alias": "mode"; "required": false; "isSignal": true; }; }, { "context": "contextChange"; "contextInitiated": "contextInitiated"; "validityChange": "validityChange"; }, never, never, true, never>;
741
714
  }
@@ -4,11 +4,11 @@ import * as _acorex_platform_core from '@acorex/platform/core';
4
4
  import { AXPActivityLog, AXPSystemActionType, AXPCategoryEntity, AXPColumnQuery, AXPContextData, AXPOptionsData, AXPGridLayoutOptions, AXPFilterDefinition, AXPFilterQuery, AXPSortDefinition, AXPSortQuery, AXPMetaData, AXPViewQuery } from '@acorex/platform/core';
5
5
  import { AXPMenuItem } from '@acorex/platform/common';
6
6
  import { AXValueChangedEvent, AXClickEvent, AXDataSource, AXDataSourceFilterOption, AXHtmlEvent, AXEvent } from '@acorex/cdk/common';
7
- import { AXTreeViewComponent, AXTreeItemClickBaseEvent } from '@acorex/components/tree-view';
7
+ import { AXTreeViewLegacyComponent, AXTreeItemClickBaseEventLegacy } from '@acorex/components/tree-view-legacy';
8
8
  import { AXTranslationService } from '@acorex/core/translation';
9
9
  import { AXPopoverComponent } from '@acorex/components/popover';
10
10
  import { CdkDragDrop } from '@angular/cdk/drag-drop';
11
- import { AXPWidgetNode, AXPWidgetCoreContextChangeEvent, AXPWidgetProperty, AXPWidgetConfig } from '@acorex/platform/layout/widget-core';
11
+ import { AXPWidgetNode, AXPWidgetCoreContextChangeEvent, AXPWidgetRendererDirective, AXPWidgetProperty, AXPWidgetConfig } from '@acorex/platform/layout/widget-core';
12
12
  import * as _ngrx_signals from '@ngrx/signals';
13
13
  import { AXDataTableComponent, AXDataTableRowDbClick, AXDataTableRowClick } from '@acorex/components/data-table';
14
14
  import { AXBasePageComponent } from '@acorex/components/page';
@@ -262,7 +262,7 @@ declare class AXPCategoryTreeComponent {
262
262
  nodeDelete: _angular_core.OutputEmitterRef<AXPCategoryEntity<string>>;
263
263
  searchChange: _angular_core.OutputEmitterRef<string>;
264
264
  collapseChange: _angular_core.OutputEmitterRef<AXPCategoryEntity<string>>;
265
- tree: _angular_core.Signal<AXTreeViewComponent | undefined>;
265
+ tree: _angular_core.Signal<AXTreeViewLegacyComponent | undefined>;
266
266
  isLoading: _angular_core.WritableSignal<boolean>;
267
267
  searchValue: _angular_core.WritableSignal<string>;
268
268
  private loadingTimeoutId;
@@ -274,8 +274,8 @@ declare class AXPCategoryTreeComponent {
274
274
  loadRootNodes(): Promise<void>;
275
275
  loadChildNodes(parentId: string): Promise<void>;
276
276
  searchNodes(searchValue: string): Promise<void>;
277
- handleNodeClick(event: AXTreeItemClickBaseEvent): Promise<void>;
278
- handleCollapseChanged(event: AXTreeItemClickBaseEvent): Promise<void>;
277
+ handleNodeClick(event: AXTreeItemClickBaseEventLegacy): Promise<void>;
278
+ handleCollapseChanged(event: AXTreeItemClickBaseEventLegacy): Promise<void>;
279
279
  handleSearchChange(event: AXValueChangedEvent): Promise<void>;
280
280
  handleCreateRootClick(event: AXClickEvent): Promise<void>;
281
281
  handleCreateChildClick(node: AXPCategoryTreeNode, event: AXClickEvent): Promise<void>;
@@ -308,7 +308,7 @@ declare class AXPColorPalettePickerComponent {
308
308
  /**
309
309
  * Currently selected color
310
310
  */
311
- selectedColor: _angular_core.InputSignal<string | undefined>;
311
+ selectedColor: _angular_core.InputSignal<string | null | undefined>;
312
312
  /**
313
313
  * Disable the entire palette
314
314
  */
@@ -318,15 +318,19 @@ declare class AXPColorPalettePickerComponent {
318
318
  */
319
319
  readonly: _angular_core.InputSignal<boolean>;
320
320
  /**
321
- * Emits when a color is selected
321
+ * Show empty/null option to clear selection
322
322
  */
323
- colorSelected: _angular_core.OutputEmitterRef<string>;
323
+ allowClear: _angular_core.InputSignal<boolean>;
324
+ /**
325
+ * Emits when a color is selected or cleared (null/undefined)
326
+ */
327
+ colorSelected: _angular_core.OutputEmitterRef<string | null | undefined>;
324
328
  /**
325
329
  * Handle color selection
326
330
  */
327
- protected handleColorSelect(color: string): void;
331
+ protected handleColorSelect(color: string | null | undefined): void;
328
332
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPColorPalettePickerComponent, never>;
329
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXPColorPalettePickerComponent, "axp-color-palette-picker", never, { "colors": { "alias": "colors"; "required": false; "isSignal": true; }; "selectedColor": { "alias": "selectedColor"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "readonly": { "alias": "readonly"; "required": false; "isSignal": true; }; }, { "colorSelected": "colorSelected"; }, never, never, true, never>;
333
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXPColorPalettePickerComponent, "axp-color-palette-picker", never, { "colors": { "alias": "colors"; "required": false; "isSignal": true; }; "selectedColor": { "alias": "selectedColor"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "readonly": { "alias": "readonly"; "required": false; "isSignal": true; }; "allowClear": { "alias": "allowClear"; "required": false; "isSignal": true; }; }, { "colorSelected": "colorSelected"; }, never, never, true, never>;
330
334
  }
331
335
 
332
336
  interface AXPColumnItemListItem {
@@ -516,7 +520,11 @@ interface AXPDataSelectorConfig {
516
520
  dataSource: AXDataSource<any>;
517
521
  columns: AXPDataSelectorColumn[];
518
522
  selectionMode: 'single' | 'multiple';
519
- searchFields?: string[];
523
+ searchFields?: {
524
+ name: string;
525
+ title: string;
526
+ }[];
527
+ initialSearchTerm?: string;
520
528
  parentField?: string;
521
529
  allowCreate?: boolean;
522
530
  filters?: AXDataSourceFilterOption;
@@ -532,6 +540,7 @@ interface AXPDataSelectorConfig {
532
540
  declare class AXPDataSelectorComponent extends AXBasePageComponent {
533
541
  protected config: _angular_core.WritableSignal<AXPDataSelectorConfig>;
534
542
  protected searchTerm: string;
543
+ protected searchPlaceholderText: _angular_core.WritableSignal<string>;
535
544
  protected filter: AXDataSourceFilterOption;
536
545
  protected grid: _angular_core.Signal<AXDataTableComponent | undefined>;
537
546
  protected initialSelectedItems: any[];
@@ -540,9 +549,12 @@ declare class AXPDataSelectorComponent extends AXBasePageComponent {
540
549
  node: AXPCategoryEntity;
541
550
  filterValue: any;
542
551
  } | null>;
552
+ private placeholderUpdateToken;
553
+ private initialSearchApplied;
554
+ private readonly translationService;
555
+ constructor();
543
556
  protected allowSelect: _angular_core.Signal<boolean>;
544
557
  protected hasSearch: _angular_core.Signal<boolean | undefined>;
545
- protected searchPlaceholder: _angular_core.Signal<string>;
546
558
  protected categoryTreeConfig: _angular_core.Signal<{
547
559
  textField: string;
548
560
  valueField: string;
@@ -574,6 +586,7 @@ declare class AXPDataSelectorComponent extends AXBasePageComponent {
574
586
  private applySearchFilter;
575
587
  private applyFilterAndSort;
576
588
  private applyCategoryFilter;
589
+ private updateSearchPlaceholder;
577
590
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPDataSelectorComponent, never>;
578
591
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXPDataSelectorComponent, "axp-data-selector", never, {}, {}, never, never, true, never>;
579
592
  }
@@ -707,6 +720,7 @@ declare class AXPDynamicFormDesignerComponent {
707
720
  protected getAllFields: _angular_core.Signal<AXPDynamicFormDesignerField[]>;
708
721
  protected isDefaultGroup: (groupName: string) => boolean;
709
722
  protected canDeleteGroup: _angular_core.Signal<boolean>;
723
+ protected isPreviewDisabled: _angular_core.Signal<boolean>;
710
724
  protected designerGroups: _angular_core.Signal<AXPDynamicFormDesignerGroup[]>;
711
725
  /**
712
726
  * Create the default group for ungrouped fields
@@ -819,6 +833,12 @@ declare class AXPDynamicFormDesignerComponent {
819
833
  * Get default field grid layout based on group configuration
820
834
  */
821
835
  protected getFieldGridLayout(group: AXPDynamicFormDesignerGroup, fieldIndex?: number): AXPGridLayoutOptions;
836
+ private configurePreviewFieldset;
837
+ private configurePreviewFormField;
838
+ private configureFormFieldWidget;
839
+ private extractPreviewWidgetOptions;
840
+ private applyDesignerFieldUpdates;
841
+ private applyDesignerGroupUpdates;
822
842
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPDynamicFormDesignerComponent, never>;
823
843
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXPDynamicFormDesignerComponent, "axp-dynamic-form-designer", never, { "formDefinition": { "alias": "formDefinition"; "required": false; "isSignal": true; }; "readonly": { "alias": "readonly"; "required": false; "isSignal": true; }; }, { "formDefinition": "formDefinitionChange"; }, never, never, true, never>;
824
844
  }
@@ -956,6 +976,7 @@ declare class AXPQueryFiltersComponent {
956
976
  initialFilters: _angular_core.InputSignal<AXPFilterQuery[]>;
957
977
  onFiltersChanged: _angular_core.OutputEmitterRef<AXPFilterQuery[]>;
958
978
  protected tagBox: _angular_core.Signal<AXTagBoxComponent | undefined>;
979
+ protected widgetRenderer: _angular_core.Signal<AXPWidgetRendererDirective | undefined>;
959
980
  tagBoxInput: any;
960
981
  listItems: QueryList<any>;
961
982
  protected selectedField: _angular_core.WritableSignal<string | null>;
@@ -978,13 +999,18 @@ declare class AXPQueryFiltersComponent {
978
999
  handleApplyFilter(): void;
979
1000
  handleButtonKeyDown(e: Event): void;
980
1001
  handleKeyDown(e: AXHtmlEvent<KeyboardEvent>): void;
1002
+ onEnterKeyPressed(e: Event): void;
1003
+ handleTagClick(item: any): void;
1004
+ handleRemoveTag(e: Event, index: number): void;
981
1005
  handleSelectFilters(e: AXValueChangedEvent): void;
1006
+ handleAddAllInlineFilters(): void;
982
1007
  protected getActiveOperator(filter: AXPFilterDefinition | null): string | undefined;
983
1008
  handleSelectInlineFilter(filter: AXPFilterDefinition): void;
984
1009
  handleInlineFilterKeyDown(e: KeyboardEvent, filter: AXPFilterDefinition): void;
985
1010
  handlePopoverClosed(e: AXEvent): void;
986
1011
  protected onPopoverOpened(e: AXEvent): void;
987
1012
  protected deactivateAllListItems(): void;
1013
+ protected handleKeyboardEvent(event: KeyboardEvent): Promise<void>;
988
1014
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPQueryFiltersComponent, never>;
989
1015
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXPQueryFiltersComponent, "axp-query-filters", never, { "filtersDefinitions": { "alias": "filtersDefinitions"; "required": false; "isSignal": true; }; "initialFilters": { "alias": "initialFilters"; "required": false; "isSignal": true; }; }, { "onFiltersChanged": "onFiltersChanged"; }, never, never, true, never>;
990
1016
  }
@@ -994,6 +1020,7 @@ declare class AXPImageEditorPopupComponent extends AXBasePageComponent {
994
1020
  image: _angular_core.InputSignal<Blob>;
995
1021
  showHistory: _angular_core.InputSignal<boolean>;
996
1022
  look: _angular_core.InputSignal<"solid" | "outline" | "blank">;
1023
+ aspectRatio: _angular_core.InputSignal<string | undefined>;
997
1024
  private container;
998
1025
  private blobUrl;
999
1026
  protected url: _angular_core.WritableSignal<string | null>;
@@ -1006,7 +1033,7 @@ declare class AXPImageEditorPopupComponent extends AXBasePageComponent {
1006
1033
  handleCancel(): void;
1007
1034
  ngOnDestroy(): void;
1008
1035
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPImageEditorPopupComponent, never>;
1009
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXPImageEditorPopupComponent, "axp-image-editor-popup", never, { "image": { "alias": "image"; "required": true; "isSignal": true; }; "showHistory": { "alias": "showHistory"; "required": false; "isSignal": true; }; "look": { "alias": "look"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
1036
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXPImageEditorPopupComponent, "axp-image-editor-popup", never, { "image": { "alias": "image"; "required": true; "isSignal": true; }; "showHistory": { "alias": "showHistory"; "required": false; "isSignal": true; }; "look": { "alias": "look"; "required": false; "isSignal": true; }; "aspectRatio": { "alias": "aspectRatio"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
1010
1037
  }
1011
1038
 
1012
1039
  interface AXPImageEditorOpenOptions {
@@ -1014,6 +1041,7 @@ interface AXPImageEditorOpenOptions {
1014
1041
  image: Blob;
1015
1042
  showHistory?: boolean;
1016
1043
  look?: 'solid' | 'outline' | 'blank';
1044
+ aspectRatio?: string;
1017
1045
  }
1018
1046
  declare class AXPImageEditorService {
1019
1047
  private readonly popupService;
@@ -1023,80 +1051,99 @@ declare class AXPImageEditorService {
1023
1051
  static ɵprov: _angular_core.ɵɵInjectableDeclaration<AXPImageEditorService>;
1024
1052
  }
1025
1053
 
1026
- interface AXPWidgetPropertyTab {
1054
+ interface AXPPropertyViewerGroup {
1027
1055
  name: string;
1028
1056
  title: string;
1029
- groups: {
1030
- name: string;
1031
- title: string;
1032
- isCollapsed: boolean;
1033
- props: AXPWidgetProperty[];
1034
- }[];
1057
+ isCollapsed: boolean;
1058
+ props: AXPWidgetProperty[];
1035
1059
  }
1036
- interface AXPWidgetPropertiesChangedEvent {
1060
+ interface AXPPropertyViewerTab {
1061
+ name: string;
1062
+ title: string;
1063
+ groups: AXPPropertyViewerGroup[];
1064
+ }
1065
+ interface AXPPropertyViewerChangedEvent {
1037
1066
  values: any;
1038
1067
  mode: 'init' | 'update';
1039
1068
  }
1040
- declare class AXPWidgetPropertyViewerComponent {
1041
- widget: _angular_core.InputSignal<AXPWidgetNode>;
1069
+
1070
+ declare class AXPPropertyViewerComponent {
1071
+ /**
1072
+ * List of tabs that should be rendered inside the property viewer.
1073
+ */
1074
+ tabsInput: _angular_core.InputSignal<AXPPropertyViewerTab[]>;
1075
+ /**
1076
+ * Determines rendering mode.
1077
+ */
1042
1078
  mode: _angular_core.InputSignal<"simple" | "advanced">;
1043
- private widgetRegistryService;
1079
+ /**
1080
+ * Emits when property context changes.
1081
+ */
1082
+ onChanged: EventEmitter<AXPPropertyViewerChangedEvent>;
1044
1083
  protected currentTabIndex: WritableSignal<number>;
1045
- protected config: WritableSignal<AXPWidgetConfig<any> | null>;
1046
- protected allPoperties: AXPWidgetProperty[];
1047
- protected tabs: WritableSignal<AXPWidgetPropertyTab[]>;
1048
- protected groups: _angular_core.Signal<{
1049
- name: string;
1050
- title: string;
1051
- isCollapsed: boolean;
1052
- props: AXPWidgetProperty[];
1053
- }[]>;
1054
- protected groupCollapsedStates: Map<string, boolean>;
1055
- onChanged: EventEmitter<AXPWidgetPropertiesChangedEvent>;
1084
+ protected tabs: _angular_core.Signal<AXPPropertyViewerTab[]>;
1085
+ protected groups: _angular_core.Signal<AXPPropertyViewerGroup[]>;
1056
1086
  protected context: WritableSignal<any>;
1057
- protected initialContext: any;
1087
+ protected groupCollapsedStates: Map<string, boolean>;
1058
1088
  constructor();
1059
- update(values: any): void;
1060
- private fillTabs;
1061
- protected handleContextChange(e: AXPWidgetCoreContextChangeEvent): void;
1089
+ /**
1090
+ * Replaces the current context with the provided value and emits an init event.
1091
+ */
1092
+ initializeContext(value: any): void;
1093
+ /**
1094
+ * Merges the provided value into the current context and emits an update event.
1095
+ */
1096
+ update(value: any): void;
1097
+ /**
1098
+ * Handles context changes produced by rendered widgets.
1099
+ */
1100
+ protected handleContextChange(event: AXPWidgetCoreContextChangeEvent): void;
1101
+ /**
1102
+ * Handles tab selection changes.
1103
+ */
1062
1104
  protected handleTabChange(event: AXTabStripChangedEvent): void;
1063
- protected handleCollapsedChange(group: string, collapsed: boolean): void;
1064
- static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPWidgetPropertyViewerComponent, never>;
1065
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXPWidgetPropertyViewerComponent, "axp-widget-property-viewer", never, { "widget": { "alias": "widget"; "required": true; "isSignal": true; }; "mode": { "alias": "mode"; "required": false; "isSignal": true; }; }, { "onChanged": "onChanged"; }, never, never, true, never>;
1105
+ /**
1106
+ * Stores collapsed state for a group.
1107
+ */
1108
+ protected handleCollapsedChange(groupName: string, isCollapsed: boolean): void;
1109
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPPropertyViewerComponent, never>;
1110
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXPPropertyViewerComponent, "axp-property-viewer", never, { "tabsInput": { "alias": "tabsInput"; "required": false; "isSignal": true; }; "mode": { "alias": "mode"; "required": false; "isSignal": true; }; }, { "onChanged": "onChanged"; }, never, never, true, never>;
1066
1111
  }
1067
1112
 
1068
- declare class AXPWidgetPropertyViewerPopupComponent extends AXBasePageComponent {
1069
- widget: _angular_core.InputSignal<AXPWidgetNode>;
1113
+ declare class AXPPropertyViewerPopupComponent extends AXBasePageComponent {
1114
+ tabs: _angular_core.InputSignal<AXPPropertyViewerTab[]>;
1070
1115
  mode: _angular_core.InputSignal<"simple" | "advanced">;
1071
- protected currentValues: _angular_core.WritableSignal<any>;
1072
- protected handlePropertyChanged(event: {
1073
- values: any;
1074
- mode: 'init' | 'update';
1075
- }): void;
1116
+ context: _angular_core.InputSignal<any>;
1117
+ protected readonly propertyViewer: _angular_core.Signal<AXPPropertyViewerComponent | undefined>;
1118
+ protected readonly currentValues: _angular_core.WritableSignal<any>;
1119
+ protected currentMode: 'init' | 'update';
1120
+ constructor();
1121
+ protected handlePropertyChanged(event: AXPPropertyViewerChangedEvent): void;
1076
1122
  protected handleCloseClick(): void;
1077
1123
  protected handleApplyClick(): void;
1078
- static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPWidgetPropertyViewerPopupComponent, never>;
1079
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXPWidgetPropertyViewerPopupComponent, "axp-widget-property-viewer-popup", never, { "widget": { "alias": "widget"; "required": true; "isSignal": true; }; "mode": { "alias": "mode"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
1124
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPPropertyViewerPopupComponent, never>;
1125
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXPPropertyViewerPopupComponent, "axp-property-viewer-popup", never, { "tabs": { "alias": "tabs"; "required": true; "isSignal": true; }; "mode": { "alias": "mode"; "required": false; "isSignal": true; }; "context": { "alias": "context"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
1080
1126
  }
1081
1127
 
1082
- interface AXPWidgetPropertyViewerConfig {
1128
+ interface AXPPropertyViewerConfig {
1083
1129
  title: string;
1084
- widget: AXPWidgetNode;
1130
+ tabs: AXPPropertyViewerTab[];
1131
+ context?: any;
1085
1132
  mode?: 'simple' | 'advanced';
1086
1133
  size?: 'sm' | 'md' | 'lg' | 'full';
1087
1134
  }
1088
- interface AXPWidgetPropertyViewerResult {
1135
+ interface AXPPropertyViewerResult {
1089
1136
  values: any;
1090
1137
  mode: 'init' | 'update';
1091
1138
  }
1092
- declare class AXPWidgetPropertyViewerService {
1139
+ declare class AXPPropertyViewerService {
1093
1140
  private readonly popupService;
1094
1141
  /**
1095
- * Open widget property viewer popup
1142
+ * Open property viewer popup with predefined tabs and context.
1096
1143
  */
1097
- open(config: AXPWidgetPropertyViewerConfig): Promise<AXPWidgetPropertyViewerResult | null>;
1098
- static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPWidgetPropertyViewerService, never>;
1099
- static ɵprov: _angular_core.ɵɵInjectableDeclaration<AXPWidgetPropertyViewerService>;
1144
+ open(config: AXPPropertyViewerConfig): Promise<AXPPropertyViewerResult | null>;
1145
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPPropertyViewerService, never>;
1146
+ static ɵprov: _angular_core.ɵɵInjectableDeclaration<AXPPropertyViewerService>;
1100
1147
  }
1101
1148
 
1102
1149
  declare class AXPQuerySortsComponent {
@@ -1280,6 +1327,90 @@ declare class AXPQueryViewsComponent {
1280
1327
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXPQueryViewsComponent, "axp-query-views", never, { "views": { "alias": "views"; "required": false; "isSignal": true; }; "selectedView": { "alias": "selectedView"; "required": true; "isSignal": true; }; }, { "views": "viewsChange"; "selectedView": "selectedViewChange"; }, never, never, true, never>;
1281
1328
  }
1282
1329
 
1330
+ /**
1331
+ * Compact widget field configurator component
1332
+ * Designed to be embedded in entity definition forms for configuring widget properties
1333
+ */
1334
+ declare class AXPWidgetFieldConfiguratorComponent {
1335
+ /**
1336
+ * Widget node configuration (two-way binding)
1337
+ */
1338
+ widget: _angular_core.ModelSignal<AXPWidgetNode>;
1339
+ /**
1340
+ * Label for the widget selector
1341
+ */
1342
+ label: _angular_core.InputSignal<string>;
1343
+ /**
1344
+ * Field name (used in property viewer title)
1345
+ */
1346
+ fieldName: _angular_core.InputSignal<string>;
1347
+ /**
1348
+ * Readonly mode
1349
+ */
1350
+ readonly: _angular_core.InputSignal<boolean>;
1351
+ private readonly widgetRegistry;
1352
+ private readonly widgetPropertyViewerService;
1353
+ private readonly translationService;
1354
+ private readonly formBuilderService;
1355
+ /**
1356
+ * Currently selected widget type
1357
+ */
1358
+ protected selectedWidgetType: _angular_core.WritableSignal<string>;
1359
+ /**
1360
+ * Whether the component is in edit mode (showing select box)
1361
+ */
1362
+ protected isEditMode: _angular_core.WritableSignal<boolean>;
1363
+ /**
1364
+ * Available widgets filtered by FormElement group
1365
+ */
1366
+ protected availableWidgets: _angular_core.Signal<{
1367
+ value: string;
1368
+ text: string;
1369
+ icon: string | undefined;
1370
+ description: string | undefined;
1371
+ }[]>;
1372
+ /**
1373
+ * Current widget configuration details
1374
+ */
1375
+ protected currentWidgetConfig: _angular_core.Signal<{
1376
+ title: string;
1377
+ description: string | undefined;
1378
+ icon: string | undefined;
1379
+ hasProperties: boolean | undefined;
1380
+ } | null>;
1381
+ /**
1382
+ * Whether configure button should be enabled
1383
+ */
1384
+ protected canConfigure: _angular_core.Signal<boolean>;
1385
+ /**
1386
+ * Whether widget has been configured (has options)
1387
+ */
1388
+ protected isConfigured: _angular_core.Signal<boolean>;
1389
+ /**
1390
+ * Whether preview button should be enabled
1391
+ */
1392
+ protected canPreview: _angular_core.Signal<boolean>;
1393
+ /**
1394
+ * Enter edit mode (show select box)
1395
+ */
1396
+ protected enterEditMode(): void;
1397
+ constructor();
1398
+ /**
1399
+ * Handle widget type change
1400
+ */
1401
+ protected onWidgetTypeChange(event: any): Promise<void>;
1402
+ /**
1403
+ * Open widget property viewer
1404
+ */
1405
+ protected openPropertyViewer(): Promise<void>;
1406
+ /**
1407
+ * Open widget preview with actual rendered widget
1408
+ */
1409
+ protected openPreview(): Promise<void>;
1410
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPWidgetFieldConfiguratorComponent, never>;
1411
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXPWidgetFieldConfiguratorComponent, "axp-widget-field-configurator", never, { "widget": { "alias": "widget"; "required": false; "isSignal": true; }; "label": { "alias": "label"; "required": false; "isSignal": true; }; "fieldName": { "alias": "fieldName"; "required": false; "isSignal": true; }; "readonly": { "alias": "readonly"; "required": false; "isSignal": true; }; }, { "widget": "widgetChange"; }, never, never, true, never>;
1412
+ }
1413
+
1283
1414
  /**
1284
1415
  * Generic interface for widget item data
1285
1416
  */
@@ -1340,5 +1471,119 @@ declare class AXPWidgetItemComponent {
1340
1471
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXPWidgetItemComponent, "axp-widget-item", never, { "widget": { "alias": "widget"; "required": true; "isSignal": true; }; "isSelected": { "alias": "isSelected"; "required": false; "isSignal": true; }; "showPinButton": { "alias": "showPinButton"; "required": false; "isSignal": true; }; "customClasses": { "alias": "customClasses"; "required": false; "isSignal": true; }; }, { "onWidgetClick": "onWidgetClick"; "onPinClick": "onPinClick"; }, never, never, true, never>;
1341
1472
  }
1342
1473
 
1343
- export { AXPActivityLogComponent, AXPCategoryTreeComponent, AXPColorPalettePickerComponent, AXPColumnItemListComponent, AXPCompareViewComponent, AXPComponentSlot, AXPComponentSlotDirective, AXPComponentSlotModule, AXPComponentSlotRegistryService, AXPDataSelectorComponent, AXPDataSelectorService, AXPDragDropListComponent, AXPDynamicFormDesignerComponent, AXPExtraPropertiesComponent, AXPExtraPropertiesSchemaComponent, AXPExtraPropertiesValuesComponent, AXPImageEditorPopupComponent, AXPImageEditorService, AXPMenuBadgeHelper, AXPQueryColumnsComponent, AXPQueryFiltersComponent, AXPQuerySortsComponent, AXPQueryViewsComponent, AXPStateMessageComponent, AXPTaskBadgeDirective, AXPTaskBadgeProvider, AXPTaskBadgeService, AXPTemplateViewerComponent, AXPTemplateViewerService, AXPThemeLayoutActionsComponent, AXPThemeLayoutBlockComponent, AXPThemeLayoutContainerComponent, AXPThemeLayoutEndSideComponent, AXPThemeLayoutFooterComponent, AXPThemeLayoutHeaderComponent, AXPThemeLayoutListComponent, AXPThemeLayoutListItemComponent, AXPThemeLayoutListItemsGroupComponent, AXPThemeLayoutPageHeaderComponent, AXPThemeLayoutPagePrimaryActionsComponent, AXPThemeLayoutPageSecondaryActionsComponent, AXPThemeLayoutSectionComponent, AXPThemeLayoutStartSideComponent, AXPThemeLayoutToolbarComponent, AXPUserAvatarComponent, AXPUserAvatarService, AXPWidgetItemComponent, AXPWidgetPropertyViewerComponent, AXPWidgetPropertyViewerPopupComponent, AXPWidgetPropertyViewerService, AXP_EXTRA_PROPERTY_TYPES, AXP_TASK_BADGE_PROVIDERS, AXP_USER_AVATAR_PROVIDER, convertDesignerFieldToFormField, convertDesignerGroupToFormGroup, convertDesignerStateToFormDefinition };
1344
- export type { AXPCategoryTreeActions, AXPCategoryTreeConfig, AXPCategoryTreeDataSource, AXPCategoryTreeEvents, AXPCategoryTreeNode, AXPColumnItemListItem, AXPCompareViewField, AXPCompareViewInputs, AXPCompareViewMode, AXPCompareViewObject, AXPComponentSlotConfig, AXPComponentSlotModuleConfigs, AXPDataSelectorColumn, AXPDataSelectorConfig, AXPDragDropListConfig, AXPDragDropListDropEvent, AXPDragDropListItem, AXPDynamicFormDesignerField, AXPDynamicFormDesignerGroup, AXPDynamicFormDesignerState, AXPExtraPropertyItem, AXPExtraPropertySchemaItem, AXPExtraPropertyType, AXPFormElementWidget, AXPImageEditorOpenOptions, AXPTemplateViewerConfig, AXPTemplateViewerResult, AXPUserAvatarData, AXPUserAvatarProvider, AXPUserAvatarSize, AXPUserAvatarStatus, AXPWidgetItemClickEvent, AXPWidgetItemData, AXPWidgetPropertiesChangedEvent, AXPWidgetPropertyTab, AXPWidgetPropertyViewerConfig, AXPWidgetPropertyViewerResult, StateMode };
1474
+ interface AXPWidgetPropertyTab {
1475
+ name: string;
1476
+ title: string;
1477
+ groups: {
1478
+ name: string;
1479
+ title: string;
1480
+ isCollapsed: boolean;
1481
+ props: AXPWidgetProperty[];
1482
+ }[];
1483
+ }
1484
+ interface AXPWidgetPropertiesChangedEvent {
1485
+ values: any;
1486
+ mode: 'init' | 'update';
1487
+ }
1488
+ declare class AXPWidgetPropertyViewerComponent {
1489
+ widget: _angular_core.InputSignal<AXPWidgetNode>;
1490
+ mode: _angular_core.InputSignal<"simple" | "advanced">;
1491
+ private widgetRegistryService;
1492
+ protected currentTabIndex: WritableSignal<number>;
1493
+ protected config: WritableSignal<AXPWidgetConfig<any> | null>;
1494
+ protected allPoperties: AXPWidgetProperty[];
1495
+ protected tabs: WritableSignal<AXPWidgetPropertyTab[]>;
1496
+ protected groups: _angular_core.Signal<{
1497
+ name: string;
1498
+ title: string;
1499
+ isCollapsed: boolean;
1500
+ props: AXPWidgetProperty[];
1501
+ }[]>;
1502
+ protected groupCollapsedStates: Map<string, boolean>;
1503
+ onChanged: EventEmitter<AXPWidgetPropertiesChangedEvent>;
1504
+ protected context: WritableSignal<any>;
1505
+ protected initialContext: any;
1506
+ constructor();
1507
+ update(values: any): void;
1508
+ private fillTabs;
1509
+ protected handleContextChange(e: AXPWidgetCoreContextChangeEvent): void;
1510
+ protected handleTabChange(event: AXTabStripChangedEvent): void;
1511
+ protected handleCollapsedChange(group: string, collapsed: boolean): void;
1512
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPWidgetPropertyViewerComponent, never>;
1513
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXPWidgetPropertyViewerComponent, "axp-widget-property-viewer", never, { "widget": { "alias": "widget"; "required": true; "isSignal": true; }; "mode": { "alias": "mode"; "required": false; "isSignal": true; }; }, { "onChanged": "onChanged"; }, never, never, true, never>;
1514
+ }
1515
+
1516
+ declare class AXPWidgetPropertyViewerPopupComponent extends AXBasePageComponent {
1517
+ widget: _angular_core.InputSignal<AXPWidgetNode>;
1518
+ mode: _angular_core.InputSignal<"simple" | "advanced">;
1519
+ protected currentValues: _angular_core.WritableSignal<any>;
1520
+ protected handlePropertyChanged(event: {
1521
+ values: any;
1522
+ mode: 'init' | 'update';
1523
+ }): void;
1524
+ protected handleCloseClick(): void;
1525
+ protected handleApplyClick(): void;
1526
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPWidgetPropertyViewerPopupComponent, never>;
1527
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXPWidgetPropertyViewerPopupComponent, "axp-widget-property-viewer-popup", never, { "widget": { "alias": "widget"; "required": true; "isSignal": true; }; "mode": { "alias": "mode"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
1528
+ }
1529
+
1530
+ interface AXPWidgetPropertyInjection {
1531
+ property: AXPWidgetProperty;
1532
+ tab?: {
1533
+ name?: string;
1534
+ title?: string;
1535
+ };
1536
+ group?: {
1537
+ name?: string;
1538
+ title?: string;
1539
+ };
1540
+ }
1541
+ interface AXPWidgetPropertyViewerConfig {
1542
+ title: string;
1543
+ widget: AXPWidgetNode;
1544
+ mode?: 'simple' | 'advanced';
1545
+ /**
1546
+ * Custom property injection configuration.
1547
+ */
1548
+ custom?: {
1549
+ /**
1550
+ * Custom property injection entries.
1551
+ */
1552
+ properties: AXPWidgetPropertyInjection[];
1553
+ /**
1554
+ * Default tab fallback if property injection doesn't specify one.
1555
+ * When omitted, falls back to the first tab or "general".
1556
+ */
1557
+ defaultTab?: {
1558
+ name?: string;
1559
+ title?: string;
1560
+ };
1561
+ /**
1562
+ * Default group fallback when injection doesn't specify a group.
1563
+ * When omitted, falls back to the tab's first group or property defined group.
1564
+ */
1565
+ defaultGroup?: {
1566
+ name?: string;
1567
+ title?: string;
1568
+ };
1569
+ };
1570
+ }
1571
+ interface AXPWidgetPropertyViewerResult {
1572
+ values: any;
1573
+ mode: 'init' | 'update';
1574
+ }
1575
+ declare class AXPWidgetPropertyViewerService {
1576
+ private readonly widgetRegistryService;
1577
+ private readonly propertyViewerService;
1578
+ /**
1579
+ * Open widget property viewer popup
1580
+ */
1581
+ open(config: AXPWidgetPropertyViewerConfig): Promise<AXPWidgetPropertyViewerResult | null>;
1582
+ private buildTabs;
1583
+ private buildInitialContext;
1584
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPWidgetPropertyViewerService, never>;
1585
+ static ɵprov: _angular_core.ɵɵInjectableDeclaration<AXPWidgetPropertyViewerService>;
1586
+ }
1587
+
1588
+ export { AXPActivityLogComponent, AXPCategoryTreeComponent, AXPColorPalettePickerComponent, AXPColumnItemListComponent, AXPCompareViewComponent, AXPComponentSlot, AXPComponentSlotDirective, AXPComponentSlotModule, AXPComponentSlotRegistryService, AXPDataSelectorComponent, AXPDataSelectorService, AXPDragDropListComponent, AXPDynamicFormDesignerComponent, AXPExtraPropertiesComponent, AXPExtraPropertiesSchemaComponent, AXPExtraPropertiesValuesComponent, AXPImageEditorPopupComponent, AXPImageEditorService, AXPMenuBadgeHelper, AXPPropertyViewerComponent, AXPPropertyViewerPopupComponent, AXPPropertyViewerService, AXPQueryColumnsComponent, AXPQueryFiltersComponent, AXPQuerySortsComponent, AXPQueryViewsComponent, AXPStateMessageComponent, AXPTaskBadgeDirective, AXPTaskBadgeProvider, AXPTaskBadgeService, AXPTemplateViewerComponent, AXPTemplateViewerService, AXPThemeLayoutActionsComponent, AXPThemeLayoutBlockComponent, AXPThemeLayoutContainerComponent, AXPThemeLayoutEndSideComponent, AXPThemeLayoutFooterComponent, AXPThemeLayoutHeaderComponent, AXPThemeLayoutListComponent, AXPThemeLayoutListItemComponent, AXPThemeLayoutListItemsGroupComponent, AXPThemeLayoutPageHeaderComponent, AXPThemeLayoutPagePrimaryActionsComponent, AXPThemeLayoutPageSecondaryActionsComponent, AXPThemeLayoutSectionComponent, AXPThemeLayoutStartSideComponent, AXPThemeLayoutToolbarComponent, AXPUserAvatarComponent, AXPUserAvatarService, AXPWidgetFieldConfiguratorComponent, AXPWidgetItemComponent, AXPWidgetPropertyViewerComponent, AXPWidgetPropertyViewerPopupComponent, AXPWidgetPropertyViewerService, AXP_EXTRA_PROPERTY_TYPES, AXP_TASK_BADGE_PROVIDERS, AXP_USER_AVATAR_PROVIDER, convertDesignerFieldToFormField, convertDesignerGroupToFormGroup, convertDesignerStateToFormDefinition };
1589
+ export type { AXPCategoryTreeActions, AXPCategoryTreeConfig, AXPCategoryTreeDataSource, AXPCategoryTreeEvents, AXPCategoryTreeNode, AXPColumnItemListItem, AXPCompareViewField, AXPCompareViewInputs, AXPCompareViewMode, AXPCompareViewObject, AXPComponentSlotConfig, AXPComponentSlotModuleConfigs, AXPDataSelectorColumn, AXPDataSelectorConfig, AXPDragDropListConfig, AXPDragDropListDropEvent, AXPDragDropListItem, AXPDynamicFormDesignerField, AXPDynamicFormDesignerGroup, AXPDynamicFormDesignerState, AXPExtraPropertyItem, AXPExtraPropertySchemaItem, AXPExtraPropertyType, AXPFormElementWidget, AXPImageEditorOpenOptions, AXPPropertyViewerChangedEvent, AXPPropertyViewerConfig, AXPPropertyViewerGroup, AXPPropertyViewerResult, AXPPropertyViewerTab, AXPTemplateViewerConfig, AXPTemplateViewerResult, AXPUserAvatarData, AXPUserAvatarProvider, AXPUserAvatarSize, AXPUserAvatarStatus, AXPWidgetItemClickEvent, AXPWidgetItemData, AXPWidgetPropertiesChangedEvent, AXPWidgetPropertyInjection, AXPWidgetPropertyTab, AXPWidgetPropertyViewerConfig, AXPWidgetPropertyViewerResult, StateMode };
@@ -350,7 +350,7 @@ declare class AXPWidgetDesignerRendererDirective implements OnChanges, OnDestroy
350
350
  private currentNodeId;
351
351
  private service;
352
352
  private viewContainerRef;
353
- parentNode: _angular_core.InputSignal<AXPLayoutBaseWidgetComponent | null | undefined>;
353
+ parentNode: _angular_core.InputSignal<AXPLayoutBaseWidgetComponent<Record<string, any>> | null | undefined>;
354
354
  parentElement: _angular_core.InputSignal<HTMLElement | null | undefined>;
355
355
  parentComponent: _angular_core.InputSignal<ComponentRef<any> | null | undefined>;
356
356
  index: _angular_core.InputSignal<number | null | undefined>;