@acorex/platform 20.6.0-next.1 → 20.6.0-next.11

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 (100) hide show
  1. package/common/index.d.ts +5 -1
  2. package/core/index.d.ts +104 -34
  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 +98 -76
  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 +17 -17
  14. package/fesm2022/acorex-platform-layout-builder.mjs.map +1 -1
  15. package/fesm2022/acorex-platform-layout-components.mjs +1208 -308
  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-create-entity.command-BsLbiAdA.mjs → acorex-platform-layout-entity-create-entity.command-Bui87lV1.mjs} +40 -9
  20. package/fesm2022/acorex-platform-layout-entity-create-entity.command-Bui87lV1.mjs.map +1 -0
  21. package/fesm2022/acorex-platform-layout-entity.mjs +948 -389
  22. package/fesm2022/acorex-platform-layout-entity.mjs.map +1 -1
  23. package/fesm2022/acorex-platform-layout-views.mjs +39 -25
  24. package/fesm2022/acorex-platform-layout-views.mjs.map +1 -1
  25. package/fesm2022/acorex-platform-layout-widget-core.mjs +157 -131
  26. package/fesm2022/acorex-platform-layout-widget-core.mjs.map +1 -1
  27. 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
  28. 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
  29. 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
  30. 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
  31. 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
  32. 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
  33. 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
  34. 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
  35. 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
  36. 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
  37. 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
  38. 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
  39. 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
  40. 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
  41. 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
  42. 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
  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-C1l2KSDa.mjs} +6 -6
  46. package/fesm2022/acorex-platform-layout-widgets-tabular-data-edit-popup.component-C1l2KSDa.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-D-31ej0C.mjs} +4 -4
  48. package/fesm2022/{acorex-platform-layout-widgets-tabular-data-view-popup.component-CvZTRhct.mjs.map → acorex-platform-layout-widgets-tabular-data-view-popup.component-D-31ej0C.mjs.map} +1 -1
  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 +2410 -1028
  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-WbPPqDON.mjs} +4 -4
  58. package/fesm2022/acorex-platform-themes-default-entity-master-create-view.component-WbPPqDON.mjs.map +1 -0
  59. package/fesm2022/{acorex-platform-themes-default-entity-master-list-view.component-BkY9HXcT.mjs → acorex-platform-themes-default-entity-master-list-view.component-xq3eQ6t2.mjs} +37 -16
  60. package/fesm2022/acorex-platform-themes-default-entity-master-list-view.component-xq3eQ6t2.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 +148 -47
  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 +46 -46
  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/components/index.d.ts +255 -12
  86. package/layout/entity/index.d.ts +82 -19
  87. package/layout/views/index.d.ts +1 -0
  88. package/layout/widget-core/index.d.ts +16 -5
  89. package/layout/widgets/index.d.ts +264 -53
  90. package/package.json +5 -5
  91. package/runtime/index.d.ts +36 -8
  92. package/themes/default/index.d.ts +28 -6
  93. package/workflow/index.d.ts +909 -457
  94. package/fesm2022/acorex-platform-common-common-settings.provider-CLb2KMfv.mjs.map +0 -1
  95. package/fesm2022/acorex-platform-layout-entity-create-entity.command-BsLbiAdA.mjs.map +0 -1
  96. package/fesm2022/acorex-platform-layout-widgets-tabular-data-edit-popup.component-fr77M8Z0.mjs.map +0 -1
  97. package/fesm2022/acorex-platform-themes-default-entity-master-create-view.component-C_XmJV7Y.mjs.map +0 -1
  98. package/fesm2022/acorex-platform-themes-default-entity-master-list-view.component-BkY9HXcT.mjs.map +0 -1
  99. package/fesm2022/acorex-platform-themes-default-entity-master-modify-view.component-DJPDil7w.mjs.map +0 -1
  100. package/fesm2022/acorex-platform-themes-default-entity-master-single-view.component-BArdGNfr.mjs.map +0 -1
@@ -8,7 +8,7 @@ import { AXTreeViewComponent, AXTreeItemClickBaseEvent } from '@acorex/component
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';
@@ -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
  }
@@ -1023,6 +1049,101 @@ declare class AXPImageEditorService {
1023
1049
  static ɵprov: _angular_core.ɵɵInjectableDeclaration<AXPImageEditorService>;
1024
1050
  }
1025
1051
 
1052
+ interface AXPPropertyViewerGroup {
1053
+ name: string;
1054
+ title: string;
1055
+ isCollapsed: boolean;
1056
+ props: AXPWidgetProperty[];
1057
+ }
1058
+ interface AXPPropertyViewerTab {
1059
+ name: string;
1060
+ title: string;
1061
+ groups: AXPPropertyViewerGroup[];
1062
+ }
1063
+ interface AXPPropertyViewerChangedEvent {
1064
+ values: any;
1065
+ mode: 'init' | 'update';
1066
+ }
1067
+
1068
+ declare class AXPPropertyViewerComponent {
1069
+ /**
1070
+ * List of tabs that should be rendered inside the property viewer.
1071
+ */
1072
+ tabsInput: _angular_core.InputSignal<AXPPropertyViewerTab[]>;
1073
+ /**
1074
+ * Determines rendering mode.
1075
+ */
1076
+ mode: _angular_core.InputSignal<"simple" | "advanced">;
1077
+ /**
1078
+ * Emits when property context changes.
1079
+ */
1080
+ onChanged: EventEmitter<AXPPropertyViewerChangedEvent>;
1081
+ protected currentTabIndex: WritableSignal<number>;
1082
+ protected tabs: _angular_core.Signal<AXPPropertyViewerTab[]>;
1083
+ protected groups: _angular_core.Signal<AXPPropertyViewerGroup[]>;
1084
+ protected context: WritableSignal<any>;
1085
+ protected groupCollapsedStates: Map<string, boolean>;
1086
+ constructor();
1087
+ /**
1088
+ * Replaces the current context with the provided value and emits an init event.
1089
+ */
1090
+ initializeContext(value: any): void;
1091
+ /**
1092
+ * Merges the provided value into the current context and emits an update event.
1093
+ */
1094
+ update(value: any): void;
1095
+ /**
1096
+ * Handles context changes produced by rendered widgets.
1097
+ */
1098
+ protected handleContextChange(event: AXPWidgetCoreContextChangeEvent): void;
1099
+ /**
1100
+ * Handles tab selection changes.
1101
+ */
1102
+ protected handleTabChange(event: AXTabStripChangedEvent): void;
1103
+ /**
1104
+ * Stores collapsed state for a group.
1105
+ */
1106
+ protected handleCollapsedChange(groupName: string, isCollapsed: boolean): void;
1107
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPPropertyViewerComponent, never>;
1108
+ 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>;
1109
+ }
1110
+
1111
+ declare class AXPPropertyViewerPopupComponent extends AXBasePageComponent {
1112
+ tabs: _angular_core.InputSignal<AXPPropertyViewerTab[]>;
1113
+ mode: _angular_core.InputSignal<"simple" | "advanced">;
1114
+ context: _angular_core.InputSignal<any>;
1115
+ protected readonly propertyViewer: _angular_core.Signal<AXPPropertyViewerComponent | undefined>;
1116
+ protected readonly currentValues: _angular_core.WritableSignal<any>;
1117
+ protected currentMode: 'init' | 'update';
1118
+ constructor();
1119
+ protected handlePropertyChanged(event: AXPPropertyViewerChangedEvent): void;
1120
+ protected handleCloseClick(): void;
1121
+ protected handleApplyClick(): void;
1122
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPPropertyViewerPopupComponent, never>;
1123
+ 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>;
1124
+ }
1125
+
1126
+ interface AXPPropertyViewerConfig {
1127
+ title: string;
1128
+ tabs: AXPPropertyViewerTab[];
1129
+ context?: any;
1130
+ mode?: 'simple' | 'advanced';
1131
+ size?: 'sm' | 'md' | 'lg' | 'full';
1132
+ }
1133
+ interface AXPPropertyViewerResult {
1134
+ values: any;
1135
+ mode: 'init' | 'update';
1136
+ }
1137
+ declare class AXPPropertyViewerService {
1138
+ private readonly popupService;
1139
+ /**
1140
+ * Open property viewer popup with predefined tabs and context.
1141
+ */
1142
+ open(config: AXPPropertyViewerConfig): Promise<AXPPropertyViewerResult | null>;
1143
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPPropertyViewerService, never>;
1144
+ static ɵprov: _angular_core.ɵɵInjectableDeclaration<AXPPropertyViewerService>;
1145
+ }
1146
+
1026
1147
  interface AXPWidgetPropertyTab {
1027
1148
  name: string;
1028
1149
  title: string;
@@ -1079,22 +1200,60 @@ declare class AXPWidgetPropertyViewerPopupComponent extends AXBasePageComponent
1079
1200
  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>;
1080
1201
  }
1081
1202
 
1203
+ interface AXPWidgetPropertyInjection {
1204
+ property: AXPWidgetProperty;
1205
+ tab?: {
1206
+ name?: string;
1207
+ title?: string;
1208
+ };
1209
+ group?: {
1210
+ name?: string;
1211
+ title?: string;
1212
+ };
1213
+ }
1082
1214
  interface AXPWidgetPropertyViewerConfig {
1083
1215
  title: string;
1084
1216
  widget: AXPWidgetNode;
1085
1217
  mode?: 'simple' | 'advanced';
1086
- size?: 'sm' | 'md' | 'lg' | 'full';
1218
+ /**
1219
+ * Custom property injection configuration.
1220
+ */
1221
+ custom?: {
1222
+ /**
1223
+ * Custom property injection entries.
1224
+ */
1225
+ properties: AXPWidgetPropertyInjection[];
1226
+ /**
1227
+ * Default tab fallback if property injection doesn't specify one.
1228
+ * When omitted, falls back to the first tab or "general".
1229
+ */
1230
+ defaultTab?: {
1231
+ name?: string;
1232
+ title?: string;
1233
+ };
1234
+ /**
1235
+ * Default group fallback when injection doesn't specify a group.
1236
+ * When omitted, falls back to the tab's first group or property defined group.
1237
+ */
1238
+ defaultGroup?: {
1239
+ name?: string;
1240
+ title?: string;
1241
+ };
1242
+ };
1087
1243
  }
1088
1244
  interface AXPWidgetPropertyViewerResult {
1089
1245
  values: any;
1090
1246
  mode: 'init' | 'update';
1091
1247
  }
1092
1248
  declare class AXPWidgetPropertyViewerService {
1093
- private readonly popupService;
1249
+ private readonly widgetRegistryService;
1250
+ private readonly propertyViewerService;
1094
1251
  /**
1095
1252
  * Open widget property viewer popup
1096
1253
  */
1097
1254
  open(config: AXPWidgetPropertyViewerConfig): Promise<AXPWidgetPropertyViewerResult | null>;
1255
+ private buildTabs;
1256
+ private buildInitialContext;
1098
1257
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPWidgetPropertyViewerService, never>;
1099
1258
  static ɵprov: _angular_core.ɵɵInjectableDeclaration<AXPWidgetPropertyViewerService>;
1100
1259
  }
@@ -1340,5 +1499,89 @@ declare class AXPWidgetItemComponent {
1340
1499
  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
1500
  }
1342
1501
 
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 };
1502
+ /**
1503
+ * Compact widget field configurator component
1504
+ * Designed to be embedded in entity definition forms for configuring widget properties
1505
+ */
1506
+ declare class AXPWidgetFieldConfiguratorComponent {
1507
+ /**
1508
+ * Widget node configuration (two-way binding)
1509
+ */
1510
+ widget: _angular_core.ModelSignal<AXPWidgetNode>;
1511
+ /**
1512
+ * Label for the widget selector
1513
+ */
1514
+ label: _angular_core.InputSignal<string>;
1515
+ /**
1516
+ * Field name (used in property viewer title)
1517
+ */
1518
+ fieldName: _angular_core.InputSignal<string>;
1519
+ /**
1520
+ * Readonly mode
1521
+ */
1522
+ readonly: _angular_core.InputSignal<boolean>;
1523
+ private readonly widgetRegistry;
1524
+ private readonly widgetPropertyViewerService;
1525
+ private readonly translationService;
1526
+ private readonly formBuilderService;
1527
+ /**
1528
+ * Currently selected widget type
1529
+ */
1530
+ protected selectedWidgetType: _angular_core.WritableSignal<string>;
1531
+ /**
1532
+ * Whether the component is in edit mode (showing select box)
1533
+ */
1534
+ protected isEditMode: _angular_core.WritableSignal<boolean>;
1535
+ /**
1536
+ * Available widgets filtered by FormElement group
1537
+ */
1538
+ protected availableWidgets: _angular_core.Signal<{
1539
+ value: string;
1540
+ text: string;
1541
+ icon: string | undefined;
1542
+ description: string | undefined;
1543
+ }[]>;
1544
+ /**
1545
+ * Current widget configuration details
1546
+ */
1547
+ protected currentWidgetConfig: _angular_core.Signal<{
1548
+ title: string;
1549
+ description: string | undefined;
1550
+ icon: string | undefined;
1551
+ hasProperties: boolean | undefined;
1552
+ } | null>;
1553
+ /**
1554
+ * Whether configure button should be enabled
1555
+ */
1556
+ protected canConfigure: _angular_core.Signal<boolean>;
1557
+ /**
1558
+ * Whether widget has been configured (has options)
1559
+ */
1560
+ protected isConfigured: _angular_core.Signal<boolean>;
1561
+ /**
1562
+ * Whether preview button should be enabled
1563
+ */
1564
+ protected canPreview: _angular_core.Signal<boolean>;
1565
+ /**
1566
+ * Enter edit mode (show select box)
1567
+ */
1568
+ protected enterEditMode(): void;
1569
+ constructor();
1570
+ /**
1571
+ * Handle widget type change
1572
+ */
1573
+ protected onWidgetTypeChange(event: any): Promise<void>;
1574
+ /**
1575
+ * Open widget property viewer
1576
+ */
1577
+ protected openPropertyViewer(): Promise<void>;
1578
+ /**
1579
+ * Open widget preview with actual rendered widget
1580
+ */
1581
+ protected openPreview(): Promise<void>;
1582
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPWidgetFieldConfiguratorComponent, never>;
1583
+ 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>;
1584
+ }
1585
+
1586
+ 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 };
1587
+ 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 };