@acorex/platform 20.3.0-next.1 → 20.3.0-next.10

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 (119) hide show
  1. package/common/index.d.ts +125 -12
  2. package/core/index.d.ts +656 -100
  3. package/fesm2022/acorex-platform-auth.mjs +20 -20
  4. package/fesm2022/acorex-platform-auth.mjs.map +1 -1
  5. package/fesm2022/acorex-platform-common.mjs +120 -148
  6. package/fesm2022/acorex-platform-common.mjs.map +1 -1
  7. package/fesm2022/acorex-platform-core.mjs +885 -261
  8. package/fesm2022/acorex-platform-core.mjs.map +1 -1
  9. package/fesm2022/acorex-platform-domain.mjs +16 -16
  10. package/fesm2022/acorex-platform-domain.mjs.map +1 -1
  11. package/fesm2022/acorex-platform-layout-builder.mjs +1615 -662
  12. package/fesm2022/acorex-platform-layout-builder.mjs.map +1 -1
  13. package/fesm2022/acorex-platform-layout-components.mjs +3327 -157
  14. package/fesm2022/acorex-platform-layout-components.mjs.map +1 -1
  15. package/fesm2022/acorex-platform-layout-designer.mjs +172 -210
  16. package/fesm2022/acorex-platform-layout-designer.mjs.map +1 -1
  17. package/fesm2022/acorex-platform-layout-entity-create-entity.command-764ie8R8.mjs +52 -0
  18. package/fesm2022/acorex-platform-layout-entity-create-entity.command-764ie8R8.mjs.map +1 -0
  19. package/fesm2022/acorex-platform-layout-entity.mjs +4522 -1643
  20. package/fesm2022/acorex-platform-layout-entity.mjs.map +1 -1
  21. package/fesm2022/acorex-platform-layout-views.mjs +398 -89
  22. package/fesm2022/acorex-platform-layout-views.mjs.map +1 -1
  23. package/fesm2022/acorex-platform-native.mjs +7 -7
  24. package/fesm2022/acorex-platform-native.mjs.map +1 -1
  25. package/fesm2022/acorex-platform-runtime.mjs +40 -40
  26. package/fesm2022/acorex-platform-runtime.mjs.map +1 -1
  27. package/fesm2022/{acorex-platform-themes-default-entity-master-create-view.component-hHXxHlFG.mjs → acorex-platform-themes-default-entity-master-create-view.component-Ct-ri59W.mjs} +7 -7
  28. package/fesm2022/acorex-platform-themes-default-entity-master-create-view.component-Ct-ri59W.mjs.map +1 -0
  29. package/fesm2022/acorex-platform-themes-default-entity-master-list-view.component-7BB4LdjK.mjs +706 -0
  30. package/fesm2022/acorex-platform-themes-default-entity-master-list-view.component-7BB4LdjK.mjs.map +1 -0
  31. package/fesm2022/acorex-platform-themes-default-entity-master-modify-view.component-BDJR088o.mjs +101 -0
  32. package/fesm2022/acorex-platform-themes-default-entity-master-modify-view.component-BDJR088o.mjs.map +1 -0
  33. package/fesm2022/acorex-platform-themes-default-entity-master-single-view.component-BExtm1JE.mjs +244 -0
  34. package/fesm2022/acorex-platform-themes-default-entity-master-single-view.component-BExtm1JE.mjs.map +1 -0
  35. package/fesm2022/{acorex-platform-themes-default-error-401.component-D4glpFvU.mjs → acorex-platform-themes-default-error-401.component-DrO1PEOH.mjs} +4 -4
  36. package/fesm2022/{acorex-platform-themes-default-error-401.component-D4glpFvU.mjs.map → acorex-platform-themes-default-error-401.component-DrO1PEOH.mjs.map} +1 -1
  37. package/fesm2022/{acorex-platform-themes-default-error-404.component-BvGeDMjo.mjs → acorex-platform-themes-default-error-404.component-DqVq0oHX.mjs} +4 -4
  38. package/fesm2022/{acorex-platform-themes-default-error-404.component-BvGeDMjo.mjs.map → acorex-platform-themes-default-error-404.component-DqVq0oHX.mjs.map} +1 -1
  39. package/fesm2022/{acorex-platform-themes-default-error-offline.component-BINy-Zo3.mjs → acorex-platform-themes-default-error-offline.component-Bt2PTL7_.mjs} +4 -4
  40. package/fesm2022/{acorex-platform-themes-default-error-offline.component-BINy-Zo3.mjs.map → acorex-platform-themes-default-error-offline.component-Bt2PTL7_.mjs.map} +1 -1
  41. package/fesm2022/acorex-platform-themes-default.mjs +64 -509
  42. package/fesm2022/acorex-platform-themes-default.mjs.map +1 -1
  43. package/fesm2022/{acorex-platform-themes-shared-icon-chooser-view.component-C833prGO.mjs → acorex-platform-themes-shared-icon-chooser-view.component-BgEh06Tn.mjs} +24 -14
  44. package/fesm2022/acorex-platform-themes-shared-icon-chooser-view.component-BgEh06Tn.mjs.map +1 -0
  45. package/fesm2022/{acorex-platform-themes-shared-settings.provider-CXiRmniv.mjs → acorex-platform-themes-shared-settings.provider-CLUKU4y0.mjs} +2 -2
  46. package/fesm2022/acorex-platform-themes-shared-settings.provider-CLUKU4y0.mjs.map +1 -0
  47. package/fesm2022/{acorex-platform-themes-shared-color-chooser-column.component-DjKLg513.mjs → acorex-platform-themes-shared-theme-color-chooser-column.component-AeOQxjbS.mjs} +23 -8
  48. package/fesm2022/acorex-platform-themes-shared-theme-color-chooser-column.component-AeOQxjbS.mjs.map +1 -0
  49. package/fesm2022/{acorex-platform-themes-shared-color-chooser-view.component-DE0wO98F.mjs → acorex-platform-themes-shared-theme-color-chooser-view.component-DEVzRd6-.mjs} +23 -8
  50. package/fesm2022/acorex-platform-themes-shared-theme-color-chooser-view.component-DEVzRd6-.mjs.map +1 -0
  51. package/fesm2022/acorex-platform-themes-shared.mjs +250 -85
  52. package/fesm2022/acorex-platform-themes-shared.mjs.map +1 -1
  53. package/fesm2022/{acorex-platform-widgets-button-widget-designer.component-lNF95FJv.mjs → acorex-platform-widgets-button-widget-designer.component-DSaD9Fwc.mjs} +7 -7
  54. package/fesm2022/acorex-platform-widgets-button-widget-designer.component-DSaD9Fwc.mjs.map +1 -0
  55. package/fesm2022/acorex-platform-widgets-extra-properties-schema-widget-edit.component-D9mf08rU.mjs +50 -0
  56. package/fesm2022/acorex-platform-widgets-extra-properties-schema-widget-edit.component-D9mf08rU.mjs.map +1 -0
  57. package/fesm2022/acorex-platform-widgets-extra-properties-schema-widget-view.component-D6GQ-eyr.mjs +42 -0
  58. package/fesm2022/acorex-platform-widgets-extra-properties-schema-widget-view.component-D6GQ-eyr.mjs.map +1 -0
  59. package/fesm2022/acorex-platform-widgets-extra-properties-values-widget-edit.component-DVbIdVZ6.mjs +55 -0
  60. package/fesm2022/acorex-platform-widgets-extra-properties-values-widget-edit.component-DVbIdVZ6.mjs.map +1 -0
  61. package/fesm2022/acorex-platform-widgets-extra-properties-values-widget-view.component-D-aM64Hu.mjs +50 -0
  62. package/fesm2022/acorex-platform-widgets-extra-properties-values-widget-view.component-D-aM64Hu.mjs.map +1 -0
  63. package/fesm2022/acorex-platform-widgets-extra-properties-widget-edit.component-em2-aU8E.mjs +48 -0
  64. package/fesm2022/acorex-platform-widgets-extra-properties-widget-edit.component-em2-aU8E.mjs.map +1 -0
  65. package/fesm2022/acorex-platform-widgets-extra-properties-widget-view.component-BeuIofdr.mjs +42 -0
  66. package/fesm2022/acorex-platform-widgets-extra-properties-widget-view.component-BeuIofdr.mjs.map +1 -0
  67. package/fesm2022/{acorex-platform-widgets-file-list-popup.component-DFbPO0ud.mjs → acorex-platform-widgets-file-list-popup.component-Cmtq2bBV.mjs} +72 -7
  68. package/fesm2022/acorex-platform-widgets-file-list-popup.component-Cmtq2bBV.mjs.map +1 -0
  69. package/fesm2022/{acorex-platform-widgets-page-widget-designer.component-DRsLkulH.mjs → acorex-platform-widgets-page-widget-designer.component-B-ZEi2yd.mjs} +79 -69
  70. package/fesm2022/acorex-platform-widgets-page-widget-designer.component-B-ZEi2yd.mjs.map +1 -0
  71. package/fesm2022/{acorex-platform-widgets-tabular-data-edit-popup.component-nLZYiPnF.mjs → acorex-platform-widgets-tabular-data-edit-popup.component-CMqq_iOj.mjs} +13 -13
  72. package/fesm2022/acorex-platform-widgets-tabular-data-edit-popup.component-CMqq_iOj.mjs.map +1 -0
  73. package/fesm2022/{acorex-platform-widgets-tabular-data-view-popup.component-D6kiasYM.mjs → acorex-platform-widgets-tabular-data-view-popup.component-CRpjdiNz.mjs} +8 -7
  74. package/fesm2022/acorex-platform-widgets-tabular-data-view-popup.component-CRpjdiNz.mjs.map +1 -0
  75. package/fesm2022/{acorex-platform-widgets-text-block-widget-designer.component-CCMQtH3e.mjs → acorex-platform-widgets-text-block-widget-designer.component-DeSmBqMa.mjs} +9 -14
  76. package/fesm2022/acorex-platform-widgets-text-block-widget-designer.component-DeSmBqMa.mjs.map +1 -0
  77. package/fesm2022/acorex-platform-widgets.mjs +9152 -7182
  78. package/fesm2022/acorex-platform-widgets.mjs.map +1 -1
  79. package/fesm2022/acorex-platform-workflow.mjs +28 -25
  80. package/fesm2022/acorex-platform-workflow.mjs.map +1 -1
  81. package/layout/builder/index.d.ts +419 -185
  82. package/layout/components/index.d.ts +1129 -24
  83. package/layout/designer/index.d.ts +20 -49
  84. package/layout/entity/index.d.ts +424 -332
  85. package/layout/views/index.d.ts +129 -22
  86. package/package.json +25 -39
  87. package/widgets/index.d.ts +1908 -783
  88. package/workflow/index.d.ts +4 -1
  89. package/fesm2022/acorex-platform-themes-default-create-entity-view.component-SY0oMDoH.mjs +0 -22
  90. package/fesm2022/acorex-platform-themes-default-create-entity-view.component-SY0oMDoH.mjs.map +0 -1
  91. package/fesm2022/acorex-platform-themes-default-entity-master-create-view.component-hHXxHlFG.mjs.map +0 -1
  92. package/fesm2022/acorex-platform-themes-default-entity-master-list-view.component-hf4QOz_4.mjs +0 -665
  93. package/fesm2022/acorex-platform-themes-default-entity-master-list-view.component-hf4QOz_4.mjs.map +0 -1
  94. package/fesm2022/acorex-platform-themes-default-entity-master-modify-view.component-DC3MrDtI.mjs +0 -108
  95. package/fesm2022/acorex-platform-themes-default-entity-master-modify-view.component-DC3MrDtI.mjs.map +0 -1
  96. package/fesm2022/acorex-platform-themes-default-entity-master-single-view.component-Bb90PeHq.mjs +0 -236
  97. package/fesm2022/acorex-platform-themes-default-entity-master-single-view.component-Bb90PeHq.mjs.map +0 -1
  98. package/fesm2022/acorex-platform-themes-shared-color-chooser-column.component-DjKLg513.mjs.map +0 -1
  99. package/fesm2022/acorex-platform-themes-shared-color-chooser-view.component-DE0wO98F.mjs.map +0 -1
  100. package/fesm2022/acorex-platform-themes-shared-icon-chooser-view.component-C833prGO.mjs.map +0 -1
  101. package/fesm2022/acorex-platform-themes-shared-settings.provider-CXiRmniv.mjs.map +0 -1
  102. package/fesm2022/acorex-platform-widgets-button-widget-designer.component-lNF95FJv.mjs.map +0 -1
  103. package/fesm2022/acorex-platform-widgets-checkbox-widget-column.component-BNBOATPB.mjs +0 -85
  104. package/fesm2022/acorex-platform-widgets-checkbox-widget-column.component-BNBOATPB.mjs.map +0 -1
  105. package/fesm2022/acorex-platform-widgets-checkbox-widget-designer.component-BI18uzNZ.mjs +0 -55
  106. package/fesm2022/acorex-platform-widgets-checkbox-widget-designer.component-BI18uzNZ.mjs.map +0 -1
  107. package/fesm2022/acorex-platform-widgets-checkbox-widget-view.component-C6-QPsnb.mjs +0 -76
  108. package/fesm2022/acorex-platform-widgets-checkbox-widget-view.component-C6-QPsnb.mjs.map +0 -1
  109. package/fesm2022/acorex-platform-widgets-color-box-widget-designer.component-pYOQv5g8.mjs +0 -55
  110. package/fesm2022/acorex-platform-widgets-color-box-widget-designer.component-pYOQv5g8.mjs.map +0 -1
  111. package/fesm2022/acorex-platform-widgets-file-list-popup.component-DFbPO0ud.mjs.map +0 -1
  112. package/fesm2022/acorex-platform-widgets-file-rename-popup.component-DA_CgIvm.mjs +0 -211
  113. package/fesm2022/acorex-platform-widgets-file-rename-popup.component-DA_CgIvm.mjs.map +0 -1
  114. package/fesm2022/acorex-platform-widgets-page-widget-designer.component-DRsLkulH.mjs.map +0 -1
  115. package/fesm2022/acorex-platform-widgets-rich-text-popup.component-CM_v-cL4.mjs +0 -40
  116. package/fesm2022/acorex-platform-widgets-rich-text-popup.component-CM_v-cL4.mjs.map +0 -1
  117. package/fesm2022/acorex-platform-widgets-tabular-data-edit-popup.component-nLZYiPnF.mjs.map +0 -1
  118. package/fesm2022/acorex-platform-widgets-tabular-data-view-popup.component-D6kiasYM.mjs.map +0 -1
  119. package/fesm2022/acorex-platform-widgets-text-block-widget-designer.component-CCMQtH3e.mjs.map +0 -1
@@ -18,7 +18,7 @@ import { debounceTime } from 'rxjs/operators';
18
18
  import * as i2$1 from '@acorex/core/translation';
19
19
  import { AXTranslationModule } from '@acorex/core/translation';
20
20
  import * as i3$1 from '@acorex/platform/layout/builder';
21
- import { AXPValueWidgetComponent, AXPWidgetGroupEnum, AXP_WIDGETS_LAYOUT_CATEGORY, AXPLayoutBuilderModule } from '@acorex/platform/layout/builder';
21
+ import { AXPValueWidgetComponent, AXP_WIDGETS_LAYOUT_CATEGORY, AXPLayoutBuilderModule } from '@acorex/platform/layout/builder';
22
22
  import * as i2$4 from '@acorex/platform/layout/components';
23
23
  import { AXPComponentSlotModule } from '@acorex/platform/layout/components';
24
24
  import * as i2$2 from '@acorex/components/form';
@@ -425,8 +425,8 @@ class AXPThemeSlotComponent {
425
425
  this.store = inject(AXPLayoutThemeService);
426
426
  this.variants = AXPThemeMode;
427
427
  }
428
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.6", ngImport: i0, type: AXPThemeSlotComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
429
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.1.6", type: AXPThemeSlotComponent, isStandalone: true, selector: "ng-component", ngImport: i0, template: `
428
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.8", ngImport: i0, type: AXPThemeSlotComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
429
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.1.8", type: AXPThemeSlotComponent, isStandalone: true, selector: "ng-component", ngImport: i0, template: `
430
430
  <ax-button color="primary">
431
431
  <ax-icon
432
432
  class="fa-regular "
@@ -441,7 +441,7 @@ class AXPThemeSlotComponent {
441
441
  <ax-button-item-list>
442
442
  <ax-button-item
443
443
  (onClick)="store.changeThemeMode(variants.Light)"
444
- [text]="(t('theme-modes.light',{scope:'layout'}) | async)!"
444
+ [text]="('@layout:theme-modes.light' | translate | async)!"
445
445
  [selected]="!store.isSystemMode() && !store.isDarkMode()"
446
446
  >
447
447
  <ax-prefix>
@@ -450,7 +450,7 @@ class AXPThemeSlotComponent {
450
450
  </ax-button-item>
451
451
  <ax-button-item
452
452
  (onClick)="store.changeThemeMode(variants.Dark)"
453
- [text]="(t('theme-modes.dark',{scope:'layout'}) | async)!"
453
+ [text]="('@layout:theme-modes.dark' | translate | async)!"
454
454
  [selected]="!store.isSystemMode() && store.isDarkMode()"
455
455
  >
456
456
  <ax-prefix>
@@ -459,7 +459,7 @@ class AXPThemeSlotComponent {
459
459
  </ax-button-item>
460
460
  <ax-button-item
461
461
  (onClick)="store.changeThemeMode(variants.System)"
462
- [text]="(t('theme-modes.system',{scope:'layout'}) | async)!"
462
+ [text]="('@layout:theme-modes.system' | translate | async)!"
463
463
  [selected]="store.isSystemMode()"
464
464
  >
465
465
  <ax-prefix>
@@ -469,9 +469,9 @@ class AXPThemeSlotComponent {
469
469
  </ax-button-item-list>
470
470
  </ax-dropdown-panel>
471
471
  </ax-button>
472
- `, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "ngmodule", type: AXButtonModule }, { kind: "component", type: i2.AXButtonComponent, selector: "ax-button", inputs: ["disabled", "size", "tabIndex", "color", "look", "text", "toggleable", "selected", "iconOnly", "type", "loadingText"], outputs: ["onBlur", "onFocus", "onClick", "selectedChange", "toggleableChange", "lookChange", "colorChange", "disabledChange", "loadingTextChange"] }, { kind: "component", type: i2.AXButtonItemComponent, selector: "ax-button-item", inputs: ["color", "disabled", "text", "selected", "divided", "data", "name"], outputs: ["onClick", "onFocus", "onBlur", "disabledChange"] }, { kind: "component", type: i2.AXButtonItemListComponent, selector: "ax-button-item-list", inputs: ["items"], outputs: ["onItemClick"] }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i3.AXDecoratorIconComponent, selector: "ax-icon", inputs: ["icon"] }, { kind: "component", type: i3.AXDecoratorGenericComponent, selector: "ax-footer, ax-header, ax-content, ax-divider, ax-form-hint, ax-prefix, ax-suffix, ax-text, ax-title, ax-subtitle, ax-placeholder, ax-overlay" }, { kind: "ngmodule", type: AXDropdownModule }, { kind: "component", type: i4.AXDropdownPanelComponent, selector: "ax-dropdown-panel", inputs: ["isOpen", "fitParent", "dropdownWidth", "position", "placement", "_target", "adaptivityEnabled"], outputs: ["onOpened", "onClosed"] }, { kind: "ngmodule", type: AXTranslationModule }, { kind: "directive", type: i2$1.AXTranslatorDirective, selector: "[translate]" }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }] }); }
472
+ `, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "ngmodule", type: AXButtonModule }, { kind: "component", type: i2.AXButtonComponent, selector: "ax-button", inputs: ["disabled", "size", "tabIndex", "color", "look", "text", "toggleable", "selected", "iconOnly", "type", "loadingText"], outputs: ["onBlur", "onFocus", "onClick", "selectedChange", "toggleableChange", "lookChange", "colorChange", "disabledChange", "loadingTextChange"] }, { kind: "component", type: i2.AXButtonItemComponent, selector: "ax-button-item", inputs: ["color", "disabled", "text", "selected", "divided", "data", "name"], outputs: ["onClick", "onFocus", "onBlur", "disabledChange"] }, { kind: "component", type: i2.AXButtonItemListComponent, selector: "ax-button-item-list", inputs: ["items"], outputs: ["onItemClick"] }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i3.AXDecoratorIconComponent, selector: "ax-icon", inputs: ["icon"] }, { kind: "component", type: i3.AXDecoratorGenericComponent, selector: "ax-footer, ax-header, ax-content, ax-divider, ax-form-hint, ax-prefix, ax-suffix, ax-text, ax-title, ax-subtitle, ax-placeholder, ax-overlay" }, { kind: "ngmodule", type: AXDropdownModule }, { kind: "component", type: i4.AXDropdownPanelComponent, selector: "ax-dropdown-panel", inputs: ["isOpen", "fitParent", "dropdownWidth", "position", "placement", "_target", "adaptivityEnabled"], outputs: ["onOpened", "onClosed"] }, { kind: "ngmodule", type: AXTranslationModule }, { kind: "directive", type: i2$1.AXTranslatorDirective, selector: "[translate]" }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: i2$1.AXTranslatorPipe, name: "translate" }] }); }
473
473
  }
474
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.6", ngImport: i0, type: AXPThemeSlotComponent, decorators: [{
474
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.8", ngImport: i0, type: AXPThemeSlotComponent, decorators: [{
475
475
  type: Component,
476
476
  args: [{
477
477
  template: `
@@ -489,7 +489,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.6", ngImpor
489
489
  <ax-button-item-list>
490
490
  <ax-button-item
491
491
  (onClick)="store.changeThemeMode(variants.Light)"
492
- [text]="(t('theme-modes.light',{scope:'layout'}) | async)!"
492
+ [text]="('@layout:theme-modes.light' | translate | async)!"
493
493
  [selected]="!store.isSystemMode() && !store.isDarkMode()"
494
494
  >
495
495
  <ax-prefix>
@@ -498,7 +498,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.6", ngImpor
498
498
  </ax-button-item>
499
499
  <ax-button-item
500
500
  (onClick)="store.changeThemeMode(variants.Dark)"
501
- [text]="(t('theme-modes.dark',{scope:'layout'}) | async)!"
501
+ [text]="('@layout:theme-modes.dark' | translate | async)!"
502
502
  [selected]="!store.isSystemMode() && store.isDarkMode()"
503
503
  >
504
504
  <ax-prefix>
@@ -507,7 +507,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.6", ngImpor
507
507
  </ax-button-item>
508
508
  <ax-button-item
509
509
  (onClick)="store.changeThemeMode(variants.System)"
510
- [text]="(t('theme-modes.system',{scope:'layout'}) | async)!"
510
+ [text]="('@layout:theme-modes.system' | translate | async)!"
511
511
  [selected]="store.isSystemMode()"
512
512
  >
513
513
  <ax-prefix>
@@ -624,10 +624,10 @@ class AXPColorChooserService {
624
624
  this.cache = uniqueColors;
625
625
  return uniqueColors;
626
626
  }
627
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.6", ngImport: i0, type: AXPColorChooserService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
628
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.1.6", ngImport: i0, type: AXPColorChooserService, providedIn: 'root' }); }
627
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.8", ngImport: i0, type: AXPColorChooserService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
628
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.1.8", ngImport: i0, type: AXPColorChooserService, providedIn: 'root' }); }
629
629
  }
630
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.6", ngImport: i0, type: AXPColorChooserService, decorators: [{
630
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.8", ngImport: i0, type: AXPColorChooserService, decorators: [{
631
631
  type: Injectable,
632
632
  args: [{
633
633
  providedIn: 'root',
@@ -639,12 +639,22 @@ class AXPColorChooserWidgetEditComponent extends AXPValueWidgetComponent {
639
639
  super(...arguments);
640
640
  this.colorService = inject(AXPColorChooserService);
641
641
  this.colors = signal([], ...(ngDevMode ? [{ debugName: "colors" }] : []));
642
+ this.placeholder = computed(() => this.options()['placeholder'] ?? '', ...(ngDevMode ? [{ debugName: "placeholder" }] : []));
642
643
  this.selectedColor = computed(() => {
643
- const color = this.getValue();
644
- if (typeof color === 'string') {
645
- return color;
644
+ const value = this.getValue();
645
+ if (!value) {
646
+ return this.colors()[0];
646
647
  }
647
- return color?.name;
648
+ // If value is a string in the format: "ax-text-* ax-bg-* ax-border-*"
649
+ if (typeof value === 'string') {
650
+ const parsed = this.parseStringValue(value);
651
+ if (parsed) {
652
+ return parsed;
653
+ }
654
+ return this.colors()[0];
655
+ }
656
+ // Otherwise value is an object
657
+ return value.name;
648
658
  }, ...(ngDevMode ? [{ debugName: "selectedColor" }] : []));
649
659
  }
650
660
  async ngOnInit() {
@@ -658,21 +668,30 @@ class AXPColorChooserWidgetEditComponent extends AXPValueWidgetComponent {
658
668
  this.setValue(undefined);
659
669
  return;
660
670
  }
661
- // const color = this.colors().find((c) => c.name === event.value);
662
671
  const color = event.component.selectedItems[0];
663
- this.setValue(color);
672
+ // Always store as ordered string: "color background border"
673
+ const stringValue = `${color.color} ${color.background} ${color.border}`;
674
+ this.setValue(stringValue);
664
675
  }
665
676
  }
666
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.6", ngImport: i0, type: AXPColorChooserWidgetEditComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
667
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.1.6", type: AXPColorChooserWidgetEditComponent, isStandalone: true, selector: "ax-color-chooser-widget", usesInheritance: true, ngImport: i0, template: `
668
- <div class="ax-p-4">
677
+ parseStringValue(value) {
678
+ const parts = value.trim().split(/\s+/);
679
+ if (parts.length !== 3) {
680
+ return null;
681
+ }
682
+ const [color, background, border] = parts;
683
+ const match = this.colors().find((c) => c.color === color && c.background === background && c.border === border);
684
+ return match?.name ?? null;
685
+ }
686
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.8", ngImport: i0, type: AXPColorChooserWidgetEditComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
687
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.1.8", type: AXPColorChooserWidgetEditComponent, isStandalone: true, selector: "ax-color-chooser-widget", usesInheritance: true, ngImport: i0, template: `
669
688
  <ax-form [messageStyle]="'float'" [updateOn]="'change'">
670
689
  <ax-form-field>
671
690
  <ax-select-box
672
691
  [dataSource]="colors()"
673
692
  textField="title"
674
693
  valueField="name"
675
- [placeholder]="options()?.placeholder || 'Select a color...'"
694
+ [placeholder]="placeholder()"
676
695
  [itemTemplate]="customItemTemplate"
677
696
  [ngModel]="selectedColor()"
678
697
  (onValueChanged)="handleValueChange($event)"
@@ -694,22 +713,20 @@ class AXPColorChooserWidgetEditComponent extends AXPValueWidgetComponent {
694
713
  </ax-select-box>
695
714
  </ax-form-field>
696
715
  </ax-form>
697
- </div>
698
- `, isInline: true, dependencies: [{ kind: "ngmodule", type: AXSelectBoxModule }, { kind: "component", type: i1$1.AXSelectBoxComponent, selector: "ax-select-box", inputs: ["disabled", "readonly", "tabIndex", "placeholder", "minValue", "maxValue", "value", "state", "name", "id", "type", "look", "multiple", "valueField", "textField", "disabledField", "textTemplate", "selectedItems", "isItemTruncated", "showItemTooltip", "dataSource", "minRecordsForSearch", "caption", "itemTemplate", "selectedTemplate", "emptyTemplate", "loadingTemplate", "dropdownWidth", "searchBoxAutoFocus"], outputs: ["valueChange", "stateChange", "onValueChanged", "onBlur", "onFocus", "readonlyChange", "disabledChange", "onOpened", "onClosed"] }, { kind: "ngmodule", type: AXFormModule }, { kind: "component", type: i2$2.AXFormFieldComponent, selector: "ax-form-field", inputs: ["labelMode"] }, { kind: "component", type: i2$2.AXFormComponent, selector: "ax-form", inputs: ["labelMode", "look", "messageStyle", "updateOn"], outputs: ["onValidate", "updateOnChange"] }, { kind: "directive", type: i2$2.AXValidationRuleDirective, selector: "ax-validation-rule", inputs: ["rule", "options", "message", "disabled"] }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "ngmodule", type: AXSearchBoxModule }, { kind: "component", type: i4$1.AXSearchBoxComponent, selector: "ax-search-box", inputs: ["disabled", "readonly", "tabIndex", "placeholder", "value", "state", "name", "id", "look", "class", "delayTime", "type"], outputs: ["valueChange", "stateChange", "onValueChanged", "onBlur", "onFocus", "readonlyChange", "disabledChange", "onKeyDown", "onKeyUp", "onKeyPress"] }, { kind: "ngmodule", type: AXButtonModule }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
716
+ `, isInline: true, dependencies: [{ kind: "ngmodule", type: AXSelectBoxModule }, { kind: "component", type: i1$1.AXSelectBoxComponent, selector: "ax-select-box", inputs: ["disabled", "readonly", "tabIndex", "placeholder", "minValue", "maxValue", "value", "state", "name", "id", "type", "look", "multiple", "valueField", "textField", "disabledField", "textTemplate", "selectedItems", "isItemTruncated", "showItemTooltip", "dataSource", "minRecordsForSearch", "caption", "itemTemplate", "selectedTemplate", "emptyTemplate", "loadingTemplate", "dropdownWidth", "searchBoxAutoFocus"], outputs: ["valueChange", "stateChange", "onValueChanged", "onBlur", "onFocus", "readonlyChange", "disabledChange", "onOpened", "onClosed", "onItemSelected", "onItemClick"] }, { kind: "ngmodule", type: AXFormModule }, { kind: "component", type: i2$2.AXFormFieldComponent, selector: "ax-form-field", inputs: ["labelMode"] }, { kind: "component", type: i2$2.AXFormComponent, selector: "ax-form", inputs: ["labelMode", "look", "messageStyle", "updateOn"], outputs: ["onValidate", "updateOnChange"] }, { kind: "directive", type: i2$2.AXValidationRuleDirective, selector: "ax-validation-rule", inputs: ["rule", "options", "message", "disabled"] }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "ngmodule", type: AXSearchBoxModule }, { kind: "component", type: i4$1.AXSearchBoxComponent, selector: "ax-search-box", inputs: ["disabled", "readonly", "tabIndex", "placeholder", "value", "state", "name", "id", "look", "class", "delayTime", "type"], outputs: ["valueChange", "stateChange", "onValueChanged", "onBlur", "onFocus", "readonlyChange", "disabledChange", "onKeyDown", "onKeyUp", "onKeyPress"] }, { kind: "ngmodule", type: AXButtonModule }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
699
717
  }
700
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.6", ngImport: i0, type: AXPColorChooserWidgetEditComponent, decorators: [{
718
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.8", ngImport: i0, type: AXPColorChooserWidgetEditComponent, decorators: [{
701
719
  type: Component,
702
720
  args: [{
703
721
  selector: 'ax-color-chooser-widget',
704
722
  template: `
705
- <div class="ax-p-4">
706
723
  <ax-form [messageStyle]="'float'" [updateOn]="'change'">
707
724
  <ax-form-field>
708
725
  <ax-select-box
709
726
  [dataSource]="colors()"
710
727
  textField="title"
711
728
  valueField="name"
712
- [placeholder]="options()?.placeholder || 'Select a color...'"
729
+ [placeholder]="placeholder()"
713
730
  [itemTemplate]="customItemTemplate"
714
731
  [ngModel]="selectedColor()"
715
732
  (onValueChanged)="handleValueChange($event)"
@@ -731,35 +748,33 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.6", ngImpor
731
748
  </ax-select-box>
732
749
  </ax-form-field>
733
750
  </ax-form>
734
- </div>
735
751
  `,
736
752
  imports: [AXSelectBoxModule, AXFormModule, CommonModule, AXSearchBoxModule, AXButtonModule, FormsModule],
737
753
  changeDetection: ChangeDetectionStrategy.OnPush,
738
754
  }]
739
755
  }] });
740
756
 
741
- var colorChooserEdit_component = /*#__PURE__*/Object.freeze({
757
+ var themeColorChooserEdit_component = /*#__PURE__*/Object.freeze({
742
758
  __proto__: null,
743
759
  AXPColorChooserWidgetEditComponent: AXPColorChooserWidgetEditComponent
744
760
  });
745
761
 
746
- const AXPColorChooserWidgetConfig = {
747
- name: 'color-chooser',
748
- title: 'Color Chooser',
762
+ const AXPThemeColorChooserWidgetConfig = {
763
+ name: 'theme-color-chooser',
764
+ title: 'Theme Color Chooser',
749
765
  icon: 'fa-solid fa-palette',
750
766
  type: 'editor',
751
767
  categories: AXP_WIDGETS_LAYOUT_CATEGORY,
752
- groups: [AXPWidgetGroupEnum.FormElement],
753
768
  properties: [AXP_NAME_PROPERTY, AXP_DATA_PATH_PROPERTY, AXP_DISABLED_PROPERTY],
754
769
  components: {
755
770
  edit: {
756
- component: () => Promise.resolve().then(function () { return colorChooserEdit_component; }).then((c) => c.AXPColorChooserWidgetEditComponent),
771
+ component: () => Promise.resolve().then(function () { return themeColorChooserEdit_component; }).then((c) => c.AXPColorChooserWidgetEditComponent),
757
772
  },
758
773
  column: {
759
- component: () => import('./acorex-platform-themes-shared-color-chooser-column.component-DjKLg513.mjs').then((c) => c.AXPColorChooserWidgetColumnComponent),
774
+ component: () => import('./acorex-platform-themes-shared-theme-color-chooser-column.component-AeOQxjbS.mjs').then((c) => c.AXPColorChooserWidgetColumnComponent),
760
775
  },
761
776
  view: {
762
- component: () => import('./acorex-platform-themes-shared-color-chooser-view.component-DE0wO98F.mjs').then((c) => c.AXPColorChooserWidgetViewComponent),
777
+ component: () => import('./acorex-platform-themes-shared-theme-color-chooser-view.component-DEVzRd6-.mjs').then((c) => c.AXPColorChooserWidgetViewComponent),
763
778
  },
764
779
  },
765
780
  };
@@ -779,24 +794,24 @@ class AXPFontSizeChooserWidgetComponent extends AXPValueWidgetComponent {
779
794
  onSizeClick(size) {
780
795
  this.setValue(size);
781
796
  }
782
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.6", ngImport: i0, type: AXPFontSizeChooserWidgetComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
783
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.1.6", type: AXPFontSizeChooserWidgetComponent, isStandalone: true, selector: "ng-component", usesInheritance: true, ngImport: i0, template: `
797
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.8", ngImport: i0, type: AXPFontSizeChooserWidgetComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
798
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.1.8", type: AXPFontSizeChooserWidgetComponent, isStandalone: true, selector: "ng-component", usesInheritance: true, ngImport: i0, template: `
784
799
  @for (size of sizes(); track size) {
785
800
  <div (click)="onSizeClick(size)" [style.font-size]="size" [class.--selected]="size === selectedSize()">
786
801
  <div>
787
- <span>{{ 'font-sizes.' + size | translate: { scope: 'layout' } | async }}</span>
802
+ <span>{{ '@layout:font-sizes.' + size | translate | async }}</span>
788
803
  </div>
789
804
  </div>
790
805
  }
791
806
  `, isInline: true, styles: [":host{display:flex;flex-direction:row;flex-wrap:wrap;gap:.5rem}:host>div{display:flex;cursor:pointer;flex-direction:row;align-items:center;justify-content:space-between;gap:.5rem;border-radius:.5rem;padding:.5rem 1rem;background-color:rgb(var(--ax-sys-color-light-surface));color:rgb(var(--ax-sys-color-on-light-surface));border-color:rgb(var(--ax-sys-color-border-light-surface))}:host>div:is(.ax-dark *){background-color:rgb(var(--ax-sys-color-surface));color:rgb(var(--ax-sys-color-on-surface));border-color:rgb(var(--ax-sys-color-border-surface))}:host>div{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.2s;animation-duration:.2s}:host>div:hover{background-color:rgb(var(--ax-sys-color-dark-surface));color:rgb(var(--ax-sys-color-on-dark-surface));border-color:rgb(var(--ax-sys-color-border-dark-surface))}:host>div.--selected{background-color:rgb(var(--ax-sys-color-primary-lighter-surface));color:rgb(var(--ax-sys-color-on-primary-lighter-surface));border-color:rgb(var(--ax-sys-color-border-primary-lighter-surface))}:host>div>div{display:flex;align-items:center;justify-content:center}:host>div>div i{font-size:1.25rem;line-height:1.75rem}:host>div>span{font-size:.875rem;line-height:1.25rem;font-weight:600;line-height:1.625}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: FormsModule }, { kind: "ngmodule", type: AXSelectionCdkModule }, { kind: "ngmodule", type: AXTranslationModule }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: i2$1.AXTranslatorPipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
792
807
  }
793
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.6", ngImport: i0, type: AXPFontSizeChooserWidgetComponent, decorators: [{
808
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.8", ngImport: i0, type: AXPFontSizeChooserWidgetComponent, decorators: [{
794
809
  type: Component,
795
810
  args: [{ template: `
796
811
  @for (size of sizes(); track size) {
797
812
  <div (click)="onSizeClick(size)" [style.font-size]="size" [class.--selected]="size === selectedSize()">
798
813
  <div>
799
- <span>{{ 'font-sizes.' + size | translate: { scope: 'layout' } | async }}</span>
814
+ <span>{{ '@layout:font-sizes.' + size | translate | async }}</span>
800
815
  </div>
801
816
  </div>
802
817
  }
@@ -855,8 +870,8 @@ class AXPFontStyleChooserWidgetComponent extends AXPValueWidgetComponent {
855
870
  onFontClick(font) {
856
871
  this.setValue(font.id);
857
872
  }
858
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.6", ngImport: i0, type: AXPFontStyleChooserWidgetComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
859
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.1.6", type: AXPFontStyleChooserWidgetComponent, isStandalone: true, selector: "ng-component", usesInheritance: true, ngImport: i0, template: `
873
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.8", ngImport: i0, type: AXPFontStyleChooserWidgetComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
874
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.1.8", type: AXPFontStyleChooserWidgetComponent, isStandalone: true, selector: "ng-component", usesInheritance: true, ngImport: i0, template: `
860
875
  @for (font of fonts(); track font.id) {
861
876
  <div
862
877
  (click)="onFontClick(font)"
@@ -870,7 +885,7 @@ class AXPFontStyleChooserWidgetComponent extends AXPValueWidgetComponent {
870
885
  }
871
886
  `, isInline: true, styles: [":host{display:flex;flex-direction:row;flex-wrap:wrap;gap:.5rem}:host>div{display:flex;cursor:pointer;flex-direction:row;align-items:center;justify-content:space-between;gap:.5rem;border-radius:.5rem;padding:.5rem 1rem;background-color:rgb(var(--ax-sys-color-light-surface));color:rgb(var(--ax-sys-color-on-light-surface));border-color:rgb(var(--ax-sys-color-border-light-surface))}:host>div:is(.ax-dark *){background-color:rgb(var(--ax-sys-color-surface));color:rgb(var(--ax-sys-color-on-surface));border-color:rgb(var(--ax-sys-color-border-surface))}:host>div{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.2s;animation-duration:.2s}:host>div:hover{background-color:rgb(var(--ax-sys-color-dark-surface));color:rgb(var(--ax-sys-color-on-dark-surface));border-color:rgb(var(--ax-sys-color-border-dark-surface))}:host>div.--selected{background-color:rgb(var(--ax-sys-color-primary-lighter-surface));color:rgb(var(--ax-sys-color-on-primary-lighter-surface));border-color:rgb(var(--ax-sys-color-border-primary-lighter-surface))}:host>div>div{display:flex;align-items:center;justify-content:center}:host>div>div i{font-size:1.25rem;line-height:1.75rem}:host>div>span{font-size:.875rem;line-height:1.25rem;font-weight:600;line-height:1.625}\n"], dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "ngmodule", type: AXSelectionCdkModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
872
887
  }
873
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.6", ngImport: i0, type: AXPFontStyleChooserWidgetComponent, decorators: [{
888
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.8", ngImport: i0, type: AXPFontStyleChooserWidgetComponent, decorators: [{
874
889
  type: Component,
875
890
  args: [{ template: `
876
891
  @for (font of fonts(); track font.id) {
@@ -919,11 +934,24 @@ const DEFAULT_ICON_STYLES = [
919
934
  { name: 'fa-regular', label: 'Regular' },
920
935
  ];
921
936
  const DEFAULT_ICONS = [
937
+ // Navigation & Actions
922
938
  { name: 'house', label: 'House', tags: ['home', 'building'], supportedStyle: ['fa-regular'] },
923
939
  { name: 'magnifying-glass', label: 'Search', tags: ['find', 'zoom'], supportedStyle: ['fa-solid'] },
924
940
  { name: 'user', label: 'User', tags: ['person', 'account'] },
925
941
  { name: 'check', label: 'Check', tags: ['confirm', 'done'] },
926
942
  { name: 'xmark', label: 'Close', tags: ['cancel', 'exit'] },
943
+ { name: 'plus', label: 'Add', tags: ['create', 'new', 'plus'] },
944
+ { name: 'minus', label: 'Remove', tags: ['delete', 'subtract', 'minus'] },
945
+ { name: 'edit', label: 'Edit', tags: ['modify', 'change', 'pencil'] },
946
+ { name: 'trash', label: 'Delete', tags: ['remove', 'delete', 'bin'] },
947
+ { name: 'copy', label: 'Copy', tags: ['duplicate', 'clone'] },
948
+ { name: 'download', label: 'Download', tags: ['save', 'export'] },
949
+ { name: 'upload', label: 'Upload', tags: ['import', 'send'] },
950
+ { name: 'print', label: 'Print', tags: ['printer', 'document'] },
951
+ { name: 'share', label: 'Share', tags: ['send', 'distribute'] },
952
+ { name: 'link', label: 'Link', tags: ['url', 'connection'] },
953
+ { name: 'external-link', label: 'External Link', tags: ['open', 'external'] },
954
+ // Media & Files
927
955
  { name: 'star', label: 'Star', tags: ['favorite', 'rate'] },
928
956
  { name: 'heart', label: 'Heart', tags: ['love', 'like'] },
929
957
  { name: 'cloud', label: 'Cloud', tags: ['weather', 'sky'] },
@@ -934,6 +962,128 @@ const DEFAULT_ICONS = [
934
962
  { name: 'video', label: 'Video', tags: ['film', 'movie'] },
935
963
  { name: 'music', label: 'Music', tags: ['sound', 'audio'] },
936
964
  { name: 'file-lines', label: 'File', tags: ['document', 'text'] },
965
+ { name: 'file-pdf', label: 'PDF', tags: ['document', 'pdf'] },
966
+ { name: 'file-image', label: 'Image', tags: ['picture', 'photo'] },
967
+ { name: 'file-video', label: 'Video File', tags: ['movie', 'clip'] },
968
+ { name: 'file-audio', label: 'Audio File', tags: ['sound', 'music'] },
969
+ { name: 'file-zipper', label: 'Archive', tags: ['zip', 'compressed'] },
970
+ { name: 'image', label: 'Image', tags: ['picture', 'photo'] },
971
+ { name: 'images', label: 'Images', tags: ['gallery', 'photos'] },
972
+ // Communication & Social
973
+ { name: 'phone', label: 'Phone', tags: ['call', 'telephone'] },
974
+ { name: 'mobile', label: 'Mobile', tags: ['cell', 'smartphone'] },
975
+ { name: 'comment', label: 'Comment', tags: ['message', 'chat'] },
976
+ { name: 'comments', label: 'Comments', tags: ['messages', 'discussion'] },
977
+ { name: 'thumbs-up', label: 'Like', tags: ['approve', 'good'] },
978
+ { name: 'thumbs-down', label: 'Dislike', tags: ['disapprove', 'bad'] },
979
+ { name: 'bell', label: 'Notification', tags: ['alert', 'reminder'] },
980
+ { name: 'flag', label: 'Flag', tags: ['mark', 'report'] },
981
+ { name: 'bookmark', label: 'Bookmark', tags: ['save', 'favorite'] },
982
+ { name: 'calendar', label: 'Calendar', tags: ['date', 'schedule'] },
983
+ { name: 'clock', label: 'Clock', tags: ['time', 'schedule'] },
984
+ // Business & Finance
985
+ { name: 'chart-line', label: 'Chart', tags: ['graph', 'analytics'] },
986
+ { name: 'chart-bar', label: 'Bar Chart', tags: ['graph', 'statistics'] },
987
+ { name: 'chart-pie', label: 'Pie Chart', tags: ['graph', 'percentage'] },
988
+ { name: 'calculator', label: 'Calculator', tags: ['math', 'compute'] },
989
+ { name: 'dollar-sign', label: 'Dollar', tags: ['money', 'currency'] },
990
+ { name: 'credit-card', label: 'Credit Card', tags: ['payment', 'card'] },
991
+ { name: 'receipt', label: 'Receipt', tags: ['bill', 'invoice'] },
992
+ { name: 'briefcase', label: 'Briefcase', tags: ['business', 'work'] },
993
+ { name: 'building', label: 'Building', tags: ['office', 'company'] },
994
+ { name: 'handshake', label: 'Handshake', tags: ['agreement', 'partnership'] },
995
+ // Technology & Tools
996
+ { name: 'laptop', label: 'Laptop', tags: ['computer', 'notebook'] },
997
+ { name: 'desktop', label: 'Desktop', tags: ['computer', 'monitor'] },
998
+ { name: 'tablet', label: 'Tablet', tags: ['ipad', 'device'] },
999
+ { name: 'keyboard', label: 'Keyboard', tags: ['input', 'typing'] },
1000
+ { name: 'mouse', label: 'Mouse', tags: ['pointer', 'click'] },
1001
+ { name: 'wifi', label: 'WiFi', tags: ['internet', 'connection'] },
1002
+ { name: 'database', label: 'Database', tags: ['data', 'storage'] },
1003
+ { name: 'server', label: 'Server', tags: ['hosting', 'backend'] },
1004
+ { name: 'code', label: 'Code', tags: ['programming', 'development'] },
1005
+ { name: 'bug', label: 'Bug', tags: ['error', 'debug'] },
1006
+ { name: 'shield', label: 'Shield', tags: ['security', 'protection'] },
1007
+ { name: 'lock', label: 'Lock', tags: ['security', 'private'] },
1008
+ { name: 'unlock', label: 'Unlock', tags: ['open', 'access'] },
1009
+ { name: 'key', label: 'Key', tags: ['access', 'password'] },
1010
+ // Transportation & Location
1011
+ { name: 'car', label: 'Car', tags: ['vehicle', 'automobile'] },
1012
+ { name: 'truck', label: 'Truck', tags: ['vehicle', 'delivery'] },
1013
+ { name: 'plane', label: 'Plane', tags: ['aircraft', 'travel'] },
1014
+ { name: 'train', label: 'Train', tags: ['railway', 'transport'] },
1015
+ { name: 'ship', label: 'Ship', tags: ['boat', 'vessel'] },
1016
+ { name: 'bicycle', label: 'Bicycle', tags: ['bike', 'cycle'] },
1017
+ { name: 'map', label: 'Map', tags: ['location', 'navigation'] },
1018
+ { name: 'map-pin', label: 'Location', tags: ['pin', 'marker'] },
1019
+ { name: 'globe', label: 'Globe', tags: ['world', 'earth'] },
1020
+ { name: 'compass', label: 'Compass', tags: ['direction', 'navigation'] },
1021
+ // Health & Medical
1022
+ { name: 'heart-pulse', label: 'Heart Rate', tags: ['health', 'medical'] },
1023
+ { name: 'stethoscope', label: 'Stethoscope', tags: ['medical', 'doctor'] },
1024
+ { name: 'pills', label: 'Pills', tags: ['medicine', 'drugs'] },
1025
+ { name: 'syringe', label: 'Syringe', tags: ['injection', 'medical'] },
1026
+ { name: 'bandage', label: 'Bandage', tags: ['first aid', 'wound'] },
1027
+ { name: 'hospital', label: 'Hospital', tags: ['medical', 'healthcare'] },
1028
+ // Education & Learning
1029
+ { name: 'graduation-cap', label: 'Graduation', tags: ['education', 'degree'] },
1030
+ { name: 'book', label: 'Book', tags: ['reading', 'education'] },
1031
+ { name: 'book-open', label: 'Open Book', tags: ['reading', 'study'] },
1032
+ { name: 'pen', label: 'Pen', tags: ['write', 'draw'] },
1033
+ { name: 'pencil', label: 'Pencil', tags: ['write', 'draw'] },
1034
+ { name: 'highlighter', label: 'Highlighter', tags: ['mark', 'emphasize'] },
1035
+ { name: 'ruler', label: 'Ruler', tags: ['measure', 'straight'] },
1036
+ { name: 'microscope', label: 'Microscope', tags: ['science', 'research'] },
1037
+ // Food & Dining
1038
+ { name: 'utensils', label: 'Utensils', tags: ['food', 'dining'] },
1039
+ { name: 'pizza-slice', label: 'Pizza', tags: ['food', 'slice'] },
1040
+ { name: 'coffee', label: 'Coffee', tags: ['drink', 'beverage'] },
1041
+ { name: 'wine-glass', label: 'Wine', tags: ['drink', 'alcohol'] },
1042
+ { name: 'cake', label: 'Cake', tags: ['dessert', 'sweet'] },
1043
+ { name: 'apple', label: 'Apple', tags: ['fruit', 'healthy'] },
1044
+ // Sports & Recreation
1045
+ { name: 'football', label: 'Football', tags: ['sport', 'soccer'] },
1046
+ { name: 'basketball', label: 'Basketball', tags: ['sport', 'ball'] },
1047
+ { name: 'baseball', label: 'Baseball', tags: ['sport', 'ball'] },
1048
+ { name: 'tennis-ball', label: 'Tennis', tags: ['sport', 'racket'] },
1049
+ { name: 'swimming-pool', label: 'Swimming', tags: ['sport', 'water'] },
1050
+ { name: 'dumbbell', label: 'Dumbbell', tags: ['fitness', 'weight'] },
1051
+ // Weather & Nature
1052
+ { name: 'sun', label: 'Sun', tags: ['weather', 'bright'] },
1053
+ { name: 'moon', label: 'Moon', tags: ['night', 'dark'] },
1054
+ { name: 'cloud-sun', label: 'Partly Cloudy', tags: ['weather', 'mixed'] },
1055
+ { name: 'cloud-rain', label: 'Rain', tags: ['weather', 'precipitation'] },
1056
+ { name: 'snowflake', label: 'Snow', tags: ['weather', 'cold'] },
1057
+ { name: 'bolt', label: 'Lightning', tags: ['weather', 'storm'] },
1058
+ { name: 'tree', label: 'Tree', tags: ['nature', 'plant'] },
1059
+ { name: 'leaf', label: 'Leaf', tags: ['nature', 'plant'] },
1060
+ { name: 'flower', label: 'Flower', tags: ['nature', 'plant'] },
1061
+ // Shopping & Commerce
1062
+ { name: 'shopping-cart', label: 'Shopping Cart', tags: ['buy', 'purchase'] },
1063
+ { name: 'bag-shopping', label: 'Shopping Bag', tags: ['buy', 'store'] },
1064
+ { name: 'tags', label: 'Tags', tags: ['price', 'label'] },
1065
+ { name: 'percent', label: 'Percent', tags: ['discount', 'sale'] },
1066
+ { name: 'gift', label: 'Gift', tags: ['present', 'surprise'] },
1067
+ { name: 'box', label: 'Box', tags: ['package', 'container'] },
1068
+ // Security & Safety
1069
+ { name: 'eye', label: 'Eye', tags: ['view', 'watch'] },
1070
+ { name: 'eye-slash', label: 'Hide', tags: ['hidden', 'invisible'] },
1071
+ { name: 'user-secret', label: 'Secret User', tags: ['anonymous', 'hidden'] },
1072
+ { name: 'fingerprint', label: 'Fingerprint', tags: ['biometric', 'identity'] },
1073
+ { name: 'fire', label: 'Fire', tags: ['hot', 'burn'] },
1074
+ { name: 'warning', label: 'Warning', tags: ['alert', 'caution'] },
1075
+ { name: 'exclamation-triangle', label: 'Exclamation', tags: ['warning', 'alert'] },
1076
+ // Miscellaneous
1077
+ { name: 'question', label: 'Question', tags: ['help', 'ask'] },
1078
+ { name: 'info', label: 'Info', tags: ['information', 'details'] },
1079
+ { name: 'lightbulb', label: 'Lightbulb', tags: ['idea', 'bright'] },
1080
+ { name: 'magic-wand', label: 'Magic Wand', tags: ['magic', 'wish'] },
1081
+ { name: 'puzzle-piece', label: 'Puzzle', tags: ['piece', 'solve'] },
1082
+ { name: 'gamepad', label: 'Gamepad', tags: ['gaming', 'controller'] },
1083
+ { name: 'dice', label: 'Dice', tags: ['game', 'random'] },
1084
+ { name: 'palette', label: 'Palette', tags: ['color', 'art'] },
1085
+ { name: 'brush', label: 'Brush', tags: ['paint', 'art'] },
1086
+ { name: 'scissors', label: 'Scissors', tags: ['cut', 'trim'] },
937
1087
  ];
938
1088
  class AXPIconProviderDefault extends AXPIconProvider {
939
1089
  async provide() {
@@ -996,10 +1146,10 @@ class AXPIconChooserService {
996
1146
  this.iconsCache = uniqueIcons;
997
1147
  return uniqueIcons;
998
1148
  }
999
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.6", ngImport: i0, type: AXPIconChooserService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
1000
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.1.6", ngImport: i0, type: AXPIconChooserService }); }
1149
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.8", ngImport: i0, type: AXPIconChooserService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
1150
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.1.8", ngImport: i0, type: AXPIconChooserService }); }
1001
1151
  }
1002
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.6", ngImport: i0, type: AXPIconChooserService, decorators: [{
1152
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.8", ngImport: i0, type: AXPIconChooserService, decorators: [{
1003
1153
  type: Injectable
1004
1154
  }] });
1005
1155
 
@@ -1063,8 +1213,8 @@ class AXPIconChooserPopupComponent extends AXBasePageComponent {
1063
1213
  getIconClass(icon) {
1064
1214
  return `${this.selectedIconType} fa-${icon.name}`;
1065
1215
  }
1066
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.6", ngImport: i0, type: AXPIconChooserPopupComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
1067
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.1.6", type: AXPIconChooserPopupComponent, isStandalone: true, selector: "ng-component", inputs: { value: "value" }, providers: [AXPIconChooserService], usesInheritance: true, ngImport: i0, template: `
1216
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.8", ngImport: i0, type: AXPIconChooserPopupComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
1217
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.1.8", type: AXPIconChooserPopupComponent, isStandalone: true, selector: "ng-component", inputs: { value: "value" }, providers: [AXPIconChooserService], usesInheritance: true, ngImport: i0, template: `
1068
1218
  <div class="ax-flex ax-flex-col ax-h-full ax-p-4 ax-gap-4 ax-bg-lightest">
1069
1219
  <div class="ax-flex ax-justify-center">
1070
1220
  <ax-search-box
@@ -1133,7 +1283,7 @@ class AXPIconChooserPopupComponent extends AXBasePageComponent {
1133
1283
  </div>
1134
1284
  `, isInline: true, dependencies: [{ kind: "ngmodule", type: AXSearchBoxModule }, { kind: "component", type: i4$1.AXSearchBoxComponent, selector: "ax-search-box", inputs: ["disabled", "readonly", "tabIndex", "placeholder", "value", "state", "name", "id", "look", "class", "delayTime", "type"], outputs: ["valueChange", "stateChange", "onValueChanged", "onBlur", "onFocus", "readonlyChange", "disabledChange", "onKeyDown", "onKeyUp", "onKeyPress"] }, { kind: "ngmodule", type: AXButtonGroupModule }, { kind: "component", type: i2$3.AXButtonGroupComponent, selector: "ax-button-group", inputs: ["disabled", "color", "look", "selection"], outputs: ["onBlur", "onFocus", "lookChange", "colorChange", "disabledChange", "onClick", "selectionChange", "selectedButtonChange"] }, { kind: "component", type: i2$3.AXButtonGroupItemComponent, selector: "ax-button-group-item", inputs: ["color", "disabled", "text", "selected", "divided", "data", "name"], outputs: ["onClick", "onFocus", "onBlur", "disabledChange"] }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i3.AXDecoratorIconComponent, selector: "ax-icon", inputs: ["icon"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
1135
1285
  }
1136
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.6", ngImport: i0, type: AXPIconChooserPopupComponent, decorators: [{
1286
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.8", ngImport: i0, type: AXPIconChooserPopupComponent, decorators: [{
1137
1287
  type: Component,
1138
1288
  args: [{
1139
1289
  template: `
@@ -1216,6 +1366,22 @@ class AXPIconChooserWidgetEditComponent extends AXPValueWidgetComponent {
1216
1366
  constructor() {
1217
1367
  super(...arguments);
1218
1368
  this.popupService = inject(AXPopupService);
1369
+ this.computedValue = computed(() => {
1370
+ const value = this.getValue();
1371
+ if (typeof value === 'string') {
1372
+ const parts = value.split(' ');
1373
+ if (parts.length === 1) {
1374
+ return { styleClass: 'fa-solid', iconClass: parts[0] };
1375
+ }
1376
+ else if (parts.length === 2) {
1377
+ return { styleClass: parts[0], iconClass: parts[1] };
1378
+ }
1379
+ else {
1380
+ throw new Error(`Invalid icon format: "${value}". Expected format: "icon-class" or "style-class icon-class"`);
1381
+ }
1382
+ }
1383
+ return value;
1384
+ }, ...(ngDevMode ? [{ debugName: "computedValue" }] : []));
1219
1385
  }
1220
1386
  async openPopup() {
1221
1387
  const result = await this.popupService.open(AXPIconChooserPopupComponent, {
@@ -1226,7 +1392,7 @@ class AXPIconChooserWidgetEditComponent extends AXPValueWidgetComponent {
1226
1392
  },
1227
1393
  });
1228
1394
  if (result?.data) {
1229
- this.setValue(result.data);
1395
+ this.setValue(result.data.styleClass + ' ' + result.data.iconClass);
1230
1396
  }
1231
1397
  }
1232
1398
  addIcon() {
@@ -1240,8 +1406,8 @@ class AXPIconChooserWidgetEditComponent extends AXPValueWidgetComponent {
1240
1406
  editIcon() {
1241
1407
  this.openPopup();
1242
1408
  }
1243
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.6", ngImport: i0, type: AXPIconChooserWidgetEditComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
1244
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.1.6", type: AXPIconChooserWidgetEditComponent, isStandalone: true, selector: "ax-icon-chooser-edit", usesInheritance: true, ngImport: i0, template: `<div class="ax-p-4 ax-w-fit">
1409
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.8", ngImport: i0, type: AXPIconChooserWidgetEditComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
1410
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.1.8", type: AXPIconChooserWidgetEditComponent, isStandalone: true, selector: "ax-icon-chooser-edit", usesInheritance: true, ngImport: i0, template: `
1245
1411
  <div
1246
1412
  class="ax-grid ax-grid-cols-[6rem_auto] ax-items-center ax-rounded-md ax-text-3xl ax-w-fit"
1247
1413
  [class.ax-border]="getValue()"
@@ -1252,7 +1418,7 @@ class AXPIconChooserWidgetEditComponent extends AXPValueWidgetComponent {
1252
1418
  [class]="getValue() ? 'ax-border-e ax-cursor-default' : 'icon-container ax-cursor-pointer'"
1253
1419
  (click)="addIcon()"
1254
1420
  >
1255
- <i [class]="getValue() ? getValue().styleClass + ' ' + getValue().iconClass : 'fa-solid fa-plus'"></i>
1421
+ <i [class]="getValue() ? computedValue().styleClass + ' ' + computedValue().iconClass : 'fa-solid fa-plus'"></i>
1256
1422
  </div>
1257
1423
 
1258
1424
  <!-- Right: Edit & Delete (only if value exists) -->
@@ -1270,11 +1436,11 @@ class AXPIconChooserWidgetEditComponent extends AXPValueWidgetComponent {
1270
1436
  </div>
1271
1437
  }
1272
1438
  </div>
1273
- </div> `, isInline: true, styles: [".icon-container{background-color:rgba(var(--ax-sys-color-primary-300),10%);background-image:linear-gradient(135deg,rgba(var(--ax-sys-color-primary-300),50%) 10%,transparent 0,transparent 50%,rgba(var(--ax-sys-color-primary-300),50%) 0,rgba(var(--ax-sys-color-primary-300),50%) 60%,transparent 0,transparent);background-size:7.5px 7.5px}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
1439
+ `, isInline: true, styles: [".icon-container{background-color:rgba(var(--ax-sys-color-primary-300),10%);background-image:linear-gradient(135deg,rgba(var(--ax-sys-color-primary-300),50%) 10%,transparent 0,transparent 50%,rgba(var(--ax-sys-color-primary-300),50%) 0,rgba(var(--ax-sys-color-primary-300),50%) 60%,transparent 0,transparent);background-size:7.5px 7.5px}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
1274
1440
  }
1275
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.6", ngImport: i0, type: AXPIconChooserWidgetEditComponent, decorators: [{
1441
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.8", ngImport: i0, type: AXPIconChooserWidgetEditComponent, decorators: [{
1276
1442
  type: Component,
1277
- args: [{ selector: 'ax-icon-chooser-edit', template: `<div class="ax-p-4 ax-w-fit">
1443
+ args: [{ selector: 'ax-icon-chooser-edit', template: `
1278
1444
  <div
1279
1445
  class="ax-grid ax-grid-cols-[6rem_auto] ax-items-center ax-rounded-md ax-text-3xl ax-w-fit"
1280
1446
  [class.ax-border]="getValue()"
@@ -1285,7 +1451,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.6", ngImpor
1285
1451
  [class]="getValue() ? 'ax-border-e ax-cursor-default' : 'icon-container ax-cursor-pointer'"
1286
1452
  (click)="addIcon()"
1287
1453
  >
1288
- <i [class]="getValue() ? getValue().styleClass + ' ' + getValue().iconClass : 'fa-solid fa-plus'"></i>
1454
+ <i [class]="getValue() ? computedValue().styleClass + ' ' + computedValue().iconClass : 'fa-solid fa-plus'"></i>
1289
1455
  </div>
1290
1456
 
1291
1457
  <!-- Right: Edit & Delete (only if value exists) -->
@@ -1303,7 +1469,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.6", ngImpor
1303
1469
  </div>
1304
1470
  }
1305
1471
  </div>
1306
- </div> `, changeDetection: ChangeDetectionStrategy.OnPush, styles: [".icon-container{background-color:rgba(var(--ax-sys-color-primary-300),10%);background-image:linear-gradient(135deg,rgba(var(--ax-sys-color-primary-300),50%) 10%,transparent 0,transparent 50%,rgba(var(--ax-sys-color-primary-300),50%) 0,rgba(var(--ax-sys-color-primary-300),50%) 60%,transparent 0,transparent);background-size:7.5px 7.5px}\n"] }]
1472
+ `, changeDetection: ChangeDetectionStrategy.OnPush, styles: [".icon-container{background-color:rgba(var(--ax-sys-color-primary-300),10%);background-image:linear-gradient(135deg,rgba(var(--ax-sys-color-primary-300),50%) 10%,transparent 0,transparent 50%,rgba(var(--ax-sys-color-primary-300),50%) 0,rgba(var(--ax-sys-color-primary-300),50%) 60%,transparent 0,transparent);background-size:7.5px 7.5px}\n"] }]
1307
1473
  }] });
1308
1474
 
1309
1475
  var iconChooserEdit_component = /*#__PURE__*/Object.freeze({
@@ -1317,17 +1483,16 @@ const AXPIconChooserWidget = {
1317
1483
  icon: 'fa-solid fa-icons',
1318
1484
  type: 'editor',
1319
1485
  categories: AXP_WIDGETS_LAYOUT_CATEGORY,
1320
- groups: [AXPWidgetGroupEnum.FormElement],
1321
1486
  properties: [AXP_NAME_PROPERTY, AXP_DATA_PATH_PROPERTY, AXP_DISABLED_PROPERTY],
1322
1487
  components: {
1323
1488
  edit: {
1324
1489
  component: () => Promise.resolve().then(function () { return iconChooserEdit_component; }).then((c) => c.AXPIconChooserWidgetEditComponent),
1325
1490
  },
1326
1491
  column: {
1327
- component: () => import('./acorex-platform-themes-shared-icon-chooser-view.component-C833prGO.mjs').then((c) => c.AXPIconChooserWidgetViewComponent),
1492
+ component: () => import('./acorex-platform-themes-shared-icon-chooser-view.component-BgEh06Tn.mjs').then((c) => c.AXPIconChooserWidgetViewComponent),
1328
1493
  },
1329
1494
  view: {
1330
- component: () => import('./acorex-platform-themes-shared-icon-chooser-view.component-C833prGO.mjs').then((c) => c.AXPIconChooserWidgetViewComponent),
1495
+ component: () => import('./acorex-platform-themes-shared-icon-chooser-view.component-BgEh06Tn.mjs').then((c) => c.AXPIconChooserWidgetViewComponent),
1331
1496
  },
1332
1497
  },
1333
1498
  };
@@ -1350,19 +1515,19 @@ class AXPMenuOrientationChooserWidgetComponent extends AXPValueWidgetComponent {
1350
1515
  onOrientationClick(orientation) {
1351
1516
  this.setValue(orientation.id);
1352
1517
  }
1353
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.6", ngImport: i0, type: AXPMenuOrientationChooserWidgetComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
1354
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.1.6", type: AXPMenuOrientationChooserWidgetComponent, isStandalone: true, selector: "ng-component", usesInheritance: true, ngImport: i0, template: `
1518
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.8", ngImport: i0, type: AXPMenuOrientationChooserWidgetComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
1519
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.1.8", type: AXPMenuOrientationChooserWidgetComponent, isStandalone: true, selector: "ng-component", usesInheritance: true, ngImport: i0, template: `
1355
1520
  @for (orientation of orientations(); track orientation.id) {
1356
1521
  <div (click)="onOrientationClick(orientation)" [class.--selected]="orientation.id === selectedOrientation()?.id">
1357
1522
  <div>
1358
1523
  <i [class]="orientation.icon"></i>
1359
1524
  </div>
1360
- <span>{{ 'menu-modes.' + orientation.id | translate: { scope: 'layout' } | async }}</span>
1525
+ <span>{{ '@layout:menu-modes.' + orientation.id | translate | async }}</span>
1361
1526
  </div>
1362
1527
  }
1363
1528
  `, isInline: true, styles: [":host{display:flex;flex-direction:row;flex-wrap:wrap;gap:.5rem}:host>div{display:flex;cursor:pointer;flex-direction:row;align-items:center;justify-content:space-between;gap:.5rem;border-radius:.5rem;padding:.5rem 1rem;background-color:rgb(var(--ax-sys-color-light-surface));color:rgb(var(--ax-sys-color-on-light-surface));border-color:rgb(var(--ax-sys-color-border-light-surface))}:host>div:is(.ax-dark *){background-color:rgb(var(--ax-sys-color-surface));color:rgb(var(--ax-sys-color-on-surface));border-color:rgb(var(--ax-sys-color-border-surface))}:host>div{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.2s;animation-duration:.2s}:host>div:hover{background-color:rgb(var(--ax-sys-color-dark-surface));color:rgb(var(--ax-sys-color-on-dark-surface));border-color:rgb(var(--ax-sys-color-border-dark-surface))}:host>div.--selected{background-color:rgb(var(--ax-sys-color-primary-lighter-surface));color:rgb(var(--ax-sys-color-on-primary-lighter-surface));border-color:rgb(var(--ax-sys-color-border-primary-lighter-surface))}:host>div>div{display:flex;align-items:center;justify-content:center}:host>div>div i{font-size:1.25rem;line-height:1.75rem}:host>div>span{font-size:.875rem;line-height:1.25rem;font-weight:600;line-height:1.625}:host>div{padding-top:.25rem!important;padding-bottom:.25rem!important}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: FormsModule }, { kind: "ngmodule", type: AXSelectionCdkModule }, { kind: "ngmodule", type: AXTranslationModule }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: i2$1.AXTranslatorPipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
1364
1529
  }
1365
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.6", ngImport: i0, type: AXPMenuOrientationChooserWidgetComponent, decorators: [{
1530
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.8", ngImport: i0, type: AXPMenuOrientationChooserWidgetComponent, decorators: [{
1366
1531
  type: Component,
1367
1532
  args: [{ template: `
1368
1533
  @for (orientation of orientations(); track orientation.id) {
@@ -1370,7 +1535,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.6", ngImpor
1370
1535
  <div>
1371
1536
  <i [class]="orientation.icon"></i>
1372
1537
  </div>
1373
- <span>{{ 'menu-modes.' + orientation.id | translate: { scope: 'layout' } | async }}</span>
1538
+ <span>{{ '@layout:menu-modes.' + orientation.id | translate | async }}</span>
1374
1539
  </div>
1375
1540
  }
1376
1541
  `, standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, imports: [CommonModule, FormsModule, AXSelectionCdkModule, AXTranslationModule], styles: [":host{display:flex;flex-direction:row;flex-wrap:wrap;gap:.5rem}:host>div{display:flex;cursor:pointer;flex-direction:row;align-items:center;justify-content:space-between;gap:.5rem;border-radius:.5rem;padding:.5rem 1rem;background-color:rgb(var(--ax-sys-color-light-surface));color:rgb(var(--ax-sys-color-on-light-surface));border-color:rgb(var(--ax-sys-color-border-light-surface))}:host>div:is(.ax-dark *){background-color:rgb(var(--ax-sys-color-surface));color:rgb(var(--ax-sys-color-on-surface));border-color:rgb(var(--ax-sys-color-border-surface))}:host>div{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.2s;animation-duration:.2s}:host>div:hover{background-color:rgb(var(--ax-sys-color-dark-surface));color:rgb(var(--ax-sys-color-on-dark-surface));border-color:rgb(var(--ax-sys-color-border-dark-surface))}:host>div.--selected{background-color:rgb(var(--ax-sys-color-primary-lighter-surface));color:rgb(var(--ax-sys-color-on-primary-lighter-surface));border-color:rgb(var(--ax-sys-color-border-primary-lighter-surface))}:host>div>div{display:flex;align-items:center;justify-content:center}:host>div>div i{font-size:1.25rem;line-height:1.75rem}:host>div>span{font-size:.875rem;line-height:1.25rem;font-weight:600;line-height:1.625}:host>div{padding-top:.25rem!important;padding-bottom:.25rem!important}\n"] }]
@@ -1418,19 +1583,19 @@ class AXPThemeModeChooserWidgetComponent extends AXPValueWidgetComponent {
1418
1583
  onModeClick(mode) {
1419
1584
  this.setValue(mode.id);
1420
1585
  }
1421
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.6", ngImport: i0, type: AXPThemeModeChooserWidgetComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
1422
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.1.6", type: AXPThemeModeChooserWidgetComponent, isStandalone: true, selector: "ng-component", usesInheritance: true, ngImport: i0, template: `
1586
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.8", ngImport: i0, type: AXPThemeModeChooserWidgetComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
1587
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.1.8", type: AXPThemeModeChooserWidgetComponent, isStandalone: true, selector: "ng-component", usesInheritance: true, ngImport: i0, template: `
1423
1588
  @for (mode of modes(); track mode.id) {
1424
1589
  <div (click)="onModeClick(mode)" [class.--selected]="mode.id === selectedMode()?.id">
1425
1590
  <div>
1426
1591
  <i [class]="mode.icon"></i>
1427
1592
  </div>
1428
- <span>{{ 'theme-modes.' + mode.id | translate: { scope: 'layout' } | async }}</span>
1593
+ <span>{{ '@layout:theme-modes.' + mode.id | translate | async }}</span>
1429
1594
  </div>
1430
1595
  }
1431
1596
  `, isInline: true, styles: [":host{display:flex;flex-direction:row;flex-wrap:wrap;gap:.5rem}:host>div{display:flex;cursor:pointer;flex-direction:row;align-items:center;justify-content:space-between;gap:.5rem;border-radius:.5rem;padding:.5rem 1rem;background-color:rgb(var(--ax-sys-color-light-surface));color:rgb(var(--ax-sys-color-on-light-surface));border-color:rgb(var(--ax-sys-color-border-light-surface))}:host>div:is(.ax-dark *){background-color:rgb(var(--ax-sys-color-surface));color:rgb(var(--ax-sys-color-on-surface));border-color:rgb(var(--ax-sys-color-border-surface))}:host>div{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.2s;animation-duration:.2s}:host>div:hover{background-color:rgb(var(--ax-sys-color-dark-surface));color:rgb(var(--ax-sys-color-on-dark-surface));border-color:rgb(var(--ax-sys-color-border-dark-surface))}:host>div.--selected{background-color:rgb(var(--ax-sys-color-primary-lighter-surface));color:rgb(var(--ax-sys-color-on-primary-lighter-surface));border-color:rgb(var(--ax-sys-color-border-primary-lighter-surface))}:host>div>div{display:flex;align-items:center;justify-content:center}:host>div>div i{font-size:1.25rem;line-height:1.75rem}:host>div>span{font-size:.875rem;line-height:1.25rem;font-weight:600;line-height:1.625}:host>div{padding-top:.25rem!important;padding-bottom:.25rem!important}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: FormsModule }, { kind: "ngmodule", type: AXSelectionCdkModule }, { kind: "ngmodule", type: AXTranslationModule }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: i2$1.AXTranslatorPipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
1432
1597
  }
1433
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.6", ngImport: i0, type: AXPThemeModeChooserWidgetComponent, decorators: [{
1598
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.8", ngImport: i0, type: AXPThemeModeChooserWidgetComponent, decorators: [{
1434
1599
  type: Component,
1435
1600
  args: [{ template: `
1436
1601
  @for (mode of modes(); track mode.id) {
@@ -1438,7 +1603,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.6", ngImpor
1438
1603
  <div>
1439
1604
  <i [class]="mode.icon"></i>
1440
1605
  </div>
1441
- <span>{{ 'theme-modes.' + mode.id | translate: { scope: 'layout' } | async }}</span>
1606
+ <span>{{ '@layout:theme-modes.' + mode.id | translate | async }}</span>
1442
1607
  </div>
1443
1608
  }
1444
1609
  `, standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, imports: [CommonModule, FormsModule, AXSelectionCdkModule, AXTranslationModule], styles: [":host{display:flex;flex-direction:row;flex-wrap:wrap;gap:.5rem}:host>div{display:flex;cursor:pointer;flex-direction:row;align-items:center;justify-content:space-between;gap:.5rem;border-radius:.5rem;padding:.5rem 1rem;background-color:rgb(var(--ax-sys-color-light-surface));color:rgb(var(--ax-sys-color-on-light-surface));border-color:rgb(var(--ax-sys-color-border-light-surface))}:host>div:is(.ax-dark *){background-color:rgb(var(--ax-sys-color-surface));color:rgb(var(--ax-sys-color-on-surface));border-color:rgb(var(--ax-sys-color-border-surface))}:host>div{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.2s;animation-duration:.2s}:host>div:hover{background-color:rgb(var(--ax-sys-color-dark-surface));color:rgb(var(--ax-sys-color-on-dark-surface));border-color:rgb(var(--ax-sys-color-border-dark-surface))}:host>div.--selected{background-color:rgb(var(--ax-sys-color-primary-lighter-surface));color:rgb(var(--ax-sys-color-on-primary-lighter-surface));border-color:rgb(var(--ax-sys-color-border-primary-lighter-surface))}:host>div>div{display:flex;align-items:center;justify-content:center}:host>div>div i{font-size:1.25rem;line-height:1.75rem}:host>div>span{font-size:.875rem;line-height:1.25rem;font-weight:600;line-height:1.625}:host>div{padding-top:.25rem!important;padding-bottom:.25rem!important}\n"] }]
@@ -1490,8 +1655,8 @@ class AXPThemePaletteChooserWidgetComponent extends AXPValueWidgetComponent {
1490
1655
  onPaletteClick(palette) {
1491
1656
  this.setValue(palette.name);
1492
1657
  }
1493
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.6", ngImport: i0, type: AXPThemePaletteChooserWidgetComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
1494
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.1.6", type: AXPThemePaletteChooserWidgetComponent, isStandalone: true, selector: "ng-component", usesInheritance: true, ngImport: i0, template: `
1658
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.8", ngImport: i0, type: AXPThemePaletteChooserWidgetComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
1659
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.1.8", type: AXPThemePaletteChooserWidgetComponent, isStandalone: true, selector: "ng-component", usesInheritance: true, ngImport: i0, template: `
1495
1660
  @for (palette of palettes(); track palette.name) {
1496
1661
  <div (click)="onPaletteClick(palette)" [class.--selected]="palette.name === selectedPalette()?.name">
1497
1662
  <span>{{ palette.title }}</span>
@@ -1504,7 +1669,7 @@ class AXPThemePaletteChooserWidgetComponent extends AXPValueWidgetComponent {
1504
1669
  }
1505
1670
  `, isInline: true, styles: [":host{display:flex;flex-direction:row;flex-wrap:wrap;gap:.5rem}:host>div{display:flex;cursor:pointer;flex-direction:row;align-items:center;justify-content:space-between;gap:.5rem;border-radius:.5rem;padding:.5rem 1rem;background-color:rgb(var(--ax-sys-color-light-surface));color:rgb(var(--ax-sys-color-on-light-surface));border-color:rgb(var(--ax-sys-color-border-light-surface))}:host>div:is(.ax-dark *){background-color:rgb(var(--ax-sys-color-surface));color:rgb(var(--ax-sys-color-on-surface));border-color:rgb(var(--ax-sys-color-border-surface))}:host>div{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.2s;animation-duration:.2s}:host>div:hover{background-color:rgb(var(--ax-sys-color-dark-surface));color:rgb(var(--ax-sys-color-on-dark-surface));border-color:rgb(var(--ax-sys-color-border-dark-surface))}:host>div.--selected{background-color:rgb(var(--ax-sys-color-primary-lighter-surface));color:rgb(var(--ax-sys-color-on-primary-lighter-surface));border-color:rgb(var(--ax-sys-color-border-primary-lighter-surface))}:host>div>div{display:flex;align-items:center;justify-content:center}:host>div>div i{font-size:1.25rem;line-height:1.75rem}:host>div>span{font-size:.875rem;line-height:1.25rem;font-weight:600;line-height:1.625}:host>div{height:3rem;min-width:100%}@media (min-width: 768px){:host>div{min-width:16rem}}:host>div>div{position:relative;height:100%;width:fit-content}:host>div>div div{position:absolute;height:2rem;width:2rem;border-radius:9999px;border-width:1px;border-color:rgba(255,255,255,.5);--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}\n"], dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "ngmodule", type: AXSelectionCdkModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
1506
1671
  }
1507
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.6", ngImport: i0, type: AXPThemePaletteChooserWidgetComponent, decorators: [{
1672
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.8", ngImport: i0, type: AXPThemePaletteChooserWidgetComponent, decorators: [{
1508
1673
  type: Component,
1509
1674
  args: [{ template: `
1510
1675
  @for (palette of palettes(); track palette.name) {
@@ -1555,14 +1720,14 @@ class AXPThemesSharedModule {
1555
1720
  },
1556
1721
  });
1557
1722
  }
1558
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.6", ngImport: i0, type: AXPThemesSharedModule, deps: [{ token: i1$2.AXPAppStartUpService }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.NgModule }); }
1559
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.1.6", ngImport: i0, type: AXPThemesSharedModule, imports: [i2$4.AXPComponentSlotModule, i3$1.AXPLayoutBuilderModule] }); }
1560
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.1.6", ngImport: i0, type: AXPThemesSharedModule, providers: [
1723
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.8", ngImport: i0, type: AXPThemesSharedModule, deps: [{ token: i1$2.AXPAppStartUpService }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.NgModule }); }
1724
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.1.8", ngImport: i0, type: AXPThemesSharedModule, imports: [i2$4.AXPComponentSlotModule, i3$1.AXPLayoutBuilderModule] }); }
1725
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.1.8", ngImport: i0, type: AXPThemesSharedModule, providers: [
1561
1726
  {
1562
1727
  provide: AXP_SETTING_DEFINITION_PROVIDER,
1563
1728
  useFactory: async () => {
1564
1729
  const injector = inject(Injector);
1565
- const provider = (await import('./acorex-platform-themes-shared-settings.provider-CXiRmniv.mjs')).AXPThemeSettingProvider;
1730
+ const provider = (await import('./acorex-platform-themes-shared-settings.provider-CLUKU4y0.mjs')).AXPThemeSettingProvider;
1566
1731
  return new provider(injector);
1567
1732
  },
1568
1733
  multi: true,
@@ -1584,11 +1749,11 @@ class AXPThemesSharedModule {
1584
1749
  AXPFontSizeChooserWidget,
1585
1750
  AXPFontStyleChooserWidget,
1586
1751
  AXPIconChooserWidget,
1587
- AXPColorChooserWidgetConfig,
1752
+ AXPThemeColorChooserWidgetConfig,
1588
1753
  ],
1589
1754
  })] }); }
1590
1755
  }
1591
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.6", ngImport: i0, type: AXPThemesSharedModule, decorators: [{
1756
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.8", ngImport: i0, type: AXPThemesSharedModule, decorators: [{
1592
1757
  type: NgModule,
1593
1758
  args: [{
1594
1759
  imports: [
@@ -1609,7 +1774,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.6", ngImpor
1609
1774
  AXPFontSizeChooserWidget,
1610
1775
  AXPFontStyleChooserWidget,
1611
1776
  AXPIconChooserWidget,
1612
- AXPColorChooserWidgetConfig,
1777
+ AXPThemeColorChooserWidgetConfig,
1613
1778
  ],
1614
1779
  }),
1615
1780
  ],
@@ -1620,7 +1785,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.6", ngImpor
1620
1785
  provide: AXP_SETTING_DEFINITION_PROVIDER,
1621
1786
  useFactory: async () => {
1622
1787
  const injector = inject(Injector);
1623
- const provider = (await import('./acorex-platform-themes-shared-settings.provider-CXiRmniv.mjs')).AXPThemeSettingProvider;
1788
+ const provider = (await import('./acorex-platform-themes-shared-settings.provider-CLUKU4y0.mjs')).AXPThemeSettingProvider;
1624
1789
  return new provider(injector);
1625
1790
  },
1626
1791
  multi: true,