@acorex/platform 21.0.0-next.34 → 21.0.0-next.39

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 (37) hide show
  1. package/fesm2022/acorex-platform-common.mjs +19 -1
  2. package/fesm2022/acorex-platform-common.mjs.map +1 -1
  3. package/fesm2022/acorex-platform-core.mjs +11 -172
  4. package/fesm2022/acorex-platform-core.mjs.map +1 -1
  5. package/fesm2022/acorex-platform-layout-builder.mjs +7 -8
  6. package/fesm2022/acorex-platform-layout-builder.mjs.map +1 -1
  7. package/fesm2022/acorex-platform-layout-components.mjs +39 -29
  8. package/fesm2022/acorex-platform-layout-components.mjs.map +1 -1
  9. package/fesm2022/acorex-platform-layout-designer.mjs +8 -9
  10. package/fesm2022/acorex-platform-layout-designer.mjs.map +1 -1
  11. package/fesm2022/acorex-platform-layout-entity.mjs +468 -255
  12. package/fesm2022/acorex-platform-layout-entity.mjs.map +1 -1
  13. package/fesm2022/acorex-platform-layout-views.mjs +171 -86
  14. package/fesm2022/acorex-platform-layout-views.mjs.map +1 -1
  15. package/fesm2022/acorex-platform-layout-widget-core.mjs +36 -13
  16. package/fesm2022/acorex-platform-layout-widget-core.mjs.map +1 -1
  17. package/fesm2022/{acorex-platform-layout-widgets-file-list-popup.component-9uCkMxcc.mjs → acorex-platform-layout-widgets-file-list-popup.component-CDYAGBku.mjs} +5 -60
  18. package/fesm2022/acorex-platform-layout-widgets-file-list-popup.component-CDYAGBku.mjs.map +1 -0
  19. package/fesm2022/acorex-platform-layout-widgets.mjs +101 -128
  20. package/fesm2022/acorex-platform-layout-widgets.mjs.map +1 -1
  21. package/fesm2022/acorex-platform-themes-default.mjs +16 -4
  22. package/fesm2022/acorex-platform-themes-default.mjs.map +1 -1
  23. package/fesm2022/acorex-platform-workflow.mjs +25 -5
  24. package/fesm2022/acorex-platform-workflow.mjs.map +1 -1
  25. package/package.json +1 -1
  26. package/types/acorex-platform-common.d.ts +11 -6
  27. package/types/acorex-platform-core.d.ts +56 -101
  28. package/types/acorex-platform-layout-builder.d.ts +0 -1
  29. package/types/acorex-platform-layout-components.d.ts +4 -3
  30. package/types/acorex-platform-layout-designer.d.ts +1 -1
  31. package/types/acorex-platform-layout-entity.d.ts +36 -30
  32. package/types/acorex-platform-layout-views.d.ts +31 -29
  33. package/types/acorex-platform-layout-widget-core.d.ts +30 -14
  34. package/types/acorex-platform-layout-widgets.d.ts +17 -11
  35. package/types/acorex-platform-themes-default.d.ts +1 -0
  36. package/types/acorex-platform-workflow.d.ts +28 -51
  37. package/fesm2022/acorex-platform-layout-widgets-file-list-popup.component-9uCkMxcc.mjs.map +0 -1
@@ -20,9 +20,9 @@ import { AXTabsModule } from '@acorex/components/tabs';
20
20
  import * as i1$6 from '@acorex/components/text-box';
21
21
  import { AXTextBoxModule } from '@acorex/components/text-box';
22
22
  import * as i6 from '@acorex/core/translation';
23
- import { AXTranslationModule, AXTranslationService } from '@acorex/core/translation';
23
+ import { AXTranslationModule, AXTranslationService, resolveMultiLanguageString } from '@acorex/core/translation';
24
24
  import { AXP_LOCALE_MANAGEMENT_PORT, AXPFilterOperatorMiddlewareService, AXPCleanNestedFilters, AXPClipBoardService, AXPSettingsService, AXPRegionalSetting, AXPFileStorageService, AXPFileTypeProviderService, AXPFileActionsService, AXPStatusDefinitionProviderService, AXPRefreshEvent, AXPCommonSettings, ALL_DEFAULT_OPERATORS, DATE_OPERATORS, BOOLEAN_OPERATORS, NUMBER_OPERATORS, STRING_OPERATORS } from '@acorex/platform/common';
25
- import { AXPDeviceService, setSmart, AXPColorPaletteService, extractValue, AXPResolveMultiLanguageStringPipe, AXPMultiLanguageStringResolverService, AXPTagService, AXPExpressionEvaluatorService, AXPHookService, AXPDataGenerator, AXPComponentSlotModule, AXPDataSourceDefinitionProviderService, sortByMultiLanguageString, applyQueryArray, objectKeyValueTransforms, resolveMultiLanguageString } from '@acorex/platform/core';
25
+ import { AXPDeviceService, setSmart, AXPColorPaletteService, extractValue, AXPTagService, AXPExpressionEvaluatorService, AXPHookService, AXPDataGenerator, AXPComponentSlotModule, AXPDataSourceDefinitionProviderService, sortByMultiLanguageString, applyQueryArray, objectKeyValueTransforms } from '@acorex/platform/core';
26
26
  import * as i1$4 from '@angular/common';
27
27
  import { CommonModule, AsyncPipe } from '@angular/common';
28
28
  import * as i0 from '@angular/core';
@@ -5577,20 +5577,20 @@ const AXPEditorJsWidget = {
5577
5577
  class AXPLargeTextWidgetColumnComponent extends AXPColumnWidgetComponent {
5578
5578
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPLargeTextWidgetColumnComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
5579
5579
  static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.9", type: AXPLargeTextWidgetColumnComponent, isStandalone: true, selector: "axp-large-text-widget-column", inputs: { rawValue: "rawValue", rowData: "rowData" }, usesInheritance: true, ngImport: i0, template: `
5580
- @let text = rawValue | axpResolveMultiLanguageString;
5580
+ @let text = rawValue | translate | async;
5581
5581
  @if (text) {
5582
5582
  <span class="ax-truncate"> {{ text }} </span>
5583
5583
  } @else {
5584
5584
  <span class="ax-text-muted">---</span>
5585
5585
  }
5586
- `, isInline: true, dependencies: [{ kind: "pipe", type: AXPResolveMultiLanguageStringPipe, name: "axpResolveMultiLanguageString" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
5586
+ `, isInline: true, dependencies: [{ kind: "ngmodule", type: AXTranslationModule }, { kind: "pipe", type: i6.AXTranslatorPipe, name: "translate" }, { kind: "pipe", type: AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
5587
5587
  }
5588
5588
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPLargeTextWidgetColumnComponent, decorators: [{
5589
5589
  type: Component,
5590
5590
  args: [{
5591
5591
  selector: 'axp-large-text-widget-column',
5592
5592
  template: `
5593
- @let text = rawValue | axpResolveMultiLanguageString;
5593
+ @let text = rawValue | translate | async;
5594
5594
  @if (text) {
5595
5595
  <span class="ax-truncate"> {{ text }} </span>
5596
5596
  } @else {
@@ -5598,7 +5598,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImpor
5598
5598
  }
5599
5599
  `,
5600
5600
  changeDetection: ChangeDetectionStrategy.OnPush,
5601
- imports: [AXPResolveMultiLanguageStringPipe],
5601
+ imports: [AXTranslationModule, AsyncPipe],
5602
5602
  inputs: ['rawValue', 'rowData'],
5603
5603
  }]
5604
5604
  }] });
@@ -5620,11 +5620,10 @@ class AXPLargeTextWidgetEditComponent extends AXPValueWidgetComponent {
5620
5620
  this.rows = computed(() => this.options()['rows'], ...(ngDevMode ? [{ debugName: "rows" }] : /* istanbul ignore next */ []));
5621
5621
  this.popupService = inject(AXPopupService);
5622
5622
  this.translationService = inject(AXTranslationService);
5623
- this.mlResolver = inject(AXPMultiLanguageStringResolverService);
5624
5623
  this.currentLanguage = toSignal(this.translationService.langChanges$, {
5625
5624
  initialValue: this.translationService.getActiveLang(),
5626
5625
  });
5627
- this.getCurrentText = computed(() => this.mlResolver.resolve(this.getValue(), this.currentLanguage()), ...(ngDevMode ? [{ debugName: "getCurrentText" }] : /* istanbul ignore next */ []));
5626
+ this.getCurrentText = computed(() => this.translationService.resolve(this.getValue(), this.currentLanguage()), ...(ngDevMode ? [{ debugName: "getCurrentText" }] : /* istanbul ignore next */ []));
5628
5627
  }
5629
5628
  ngOnInit() {
5630
5629
  super.ngOnInit();
@@ -5658,7 +5657,7 @@ class AXPLargeTextWidgetEditComponent extends AXPValueWidgetComponent {
5658
5657
  title: 'Select Language',
5659
5658
  size: 'md',
5660
5659
  data: {
5661
- values: this.mlResolver.toLocaleMap(this.getValue(), this.currentLanguage()),
5660
+ values: this.translationService.toLocaleMap(this.getValue(), this.currentLanguage()),
5662
5661
  currentLanguage: this.currentLanguage(),
5663
5662
  node: node,
5664
5663
  mode: 'edit',
@@ -5776,50 +5775,34 @@ var largeTextWidgetEdit_component = /*#__PURE__*/Object.freeze({
5776
5775
  class AXPLargeTextWidgetViewComponent extends AXPValueWidgetComponent {
5777
5776
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPLargeTextWidgetViewComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
5778
5777
  static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.9", type: AXPLargeTextWidgetViewComponent, isStandalone: true, selector: "axp-large-text-widget-view", usesInheritance: true, ngImport: i0, template: `
5779
-
5780
5778
  <div class="ax-max-w-full ax-text-muted">
5781
-
5782
- @let text = getValue() | axpResolveMultiLanguageString;
5779
+ @let text = getValue() | translate | async;
5783
5780
 
5784
5781
  @if (text) {
5785
-
5786
5782
  <span> {{ text }} </span>
5787
-
5788
5783
  } @else {
5789
-
5790
5784
  <span class="ax-text-muted">---</span>
5791
-
5792
5785
  }
5793
-
5794
5786
  </div>
5795
-
5796
- `, isInline: true, dependencies: [{ kind: "pipe", type: AXPResolveMultiLanguageStringPipe, name: "axpResolveMultiLanguageString" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
5787
+ `, isInline: true, dependencies: [{ kind: "ngmodule", type: AXTranslationModule }, { kind: "pipe", type: i6.AXTranslatorPipe, name: "translate" }, { kind: "pipe", type: AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
5797
5788
  }
5798
5789
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPLargeTextWidgetViewComponent, decorators: [{
5799
5790
  type: Component,
5800
5791
  args: [{
5801
5792
  selector: 'axp-large-text-widget-view',
5802
5793
  template: `
5803
-
5804
5794
  <div class="ax-max-w-full ax-text-muted">
5805
-
5806
- @let text = getValue() | axpResolveMultiLanguageString;
5795
+ @let text = getValue() | translate | async;
5807
5796
 
5808
5797
  @if (text) {
5809
-
5810
5798
  <span> {{ text }} </span>
5811
-
5812
5799
  } @else {
5813
-
5814
5800
  <span class="ax-text-muted">---</span>
5815
-
5816
5801
  }
5817
-
5818
5802
  </div>
5819
-
5820
5803
  `,
5821
5804
  changeDetection: ChangeDetectionStrategy.OnPush,
5822
- imports: [AXPResolveMultiLanguageStringPipe],
5805
+ imports: [AXTranslationModule, AsyncPipe],
5823
5806
  }]
5824
5807
  }] });
5825
5808
 
@@ -7128,7 +7111,7 @@ class AXPRichTextWidgetColumnComponent extends AXPColumnWidgetComponent {
7128
7111
  super(...arguments);
7129
7112
  this.platform = inject(AXPlatform);
7130
7113
  this.layoutBuilder = inject(AXPLayoutBuilderService);
7131
- this.mlResolver = inject(AXPMultiLanguageStringResolverService);
7114
+ this.mlResolver = inject(AXTranslationService);
7132
7115
  }
7133
7116
  async openPopup() {
7134
7117
  const html = this.mlResolver.resolve(this.rawValue);
@@ -7159,7 +7142,7 @@ class AXPRichTextWidgetColumnComponent extends AXPColumnWidgetComponent {
7159
7142
  }
7160
7143
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPRichTextWidgetColumnComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
7161
7144
  static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.9", type: AXPRichTextWidgetColumnComponent, isStandalone: true, selector: "axp-rich-text-widget-column", inputs: { rawValue: "rawValue", rowData: "rowData" }, usesInheritance: true, ngImport: i0, template: `
7162
- @let html = rawValue | axpResolveMultiLanguageString;
7145
+ @let html = rawValue | translate | async;
7163
7146
  @if (html) {
7164
7147
  <span
7165
7148
  class="ax-truncate ax-underline ax-block ax-w-full ax-cursor-pointer"
@@ -7170,14 +7153,14 @@ class AXPRichTextWidgetColumnComponent extends AXPColumnWidgetComponent {
7170
7153
  } @else {
7171
7154
  <span class="ax-text-muted">---</span>
7172
7155
  }
7173
- `, isInline: true, dependencies: [{ kind: "pipe", type: AXSafePipe, name: "safe" }, { kind: "pipe", type: AXPResolveMultiLanguageStringPipe, name: "axpResolveMultiLanguageString" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
7156
+ `, isInline: true, dependencies: [{ kind: "ngmodule", type: AXTranslationModule }, { kind: "pipe", type: AXSafePipe, name: "safe" }, { kind: "pipe", type: i6.AXTranslatorPipe, name: "translate" }, { kind: "pipe", type: AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
7174
7157
  }
7175
7158
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPRichTextWidgetColumnComponent, decorators: [{
7176
7159
  type: Component,
7177
7160
  args: [{
7178
7161
  selector: 'axp-rich-text-widget-column',
7179
7162
  template: `
7180
- @let html = rawValue | axpResolveMultiLanguageString;
7163
+ @let html = rawValue | translate | async;
7181
7164
  @if (html) {
7182
7165
  <span
7183
7166
  class="ax-truncate ax-underline ax-block ax-w-full ax-cursor-pointer"
@@ -7190,7 +7173,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImpor
7190
7173
  }
7191
7174
  `,
7192
7175
  changeDetection: ChangeDetectionStrategy.OnPush,
7193
- imports: [AXSafePipe, AXPResolveMultiLanguageStringPipe],
7176
+ imports: [AXSafePipe, AXTranslationModule, AsyncPipe],
7194
7177
  inputs: ['rawValue', 'rowData'],
7195
7178
  }]
7196
7179
  }] });
@@ -7211,11 +7194,10 @@ class AXPRichTextWidgetEditComponent extends AXPValueWidgetComponent {
7211
7194
  this.maxLineCount = computed(() => this.options()['maxLineCount'] ?? this.options()['minLineCount'] ?? 3, ...(ngDevMode ? [{ debugName: "maxLineCount" }] : /* istanbul ignore next */ []));
7212
7195
  this.popupService = inject(AXPopupService);
7213
7196
  this.translationService = inject(AXTranslationService);
7214
- this.mlResolver = inject(AXPMultiLanguageStringResolverService);
7215
7197
  this.currentLanguage = toSignal(this.translationService.langChanges$, {
7216
7198
  initialValue: this.translationService.getActiveLang(),
7217
7199
  });
7218
- this.getCurrentText = computed(() => this.mlResolver.resolve(this.getValue(), this.currentLanguage()), ...(ngDevMode ? [{ debugName: "getCurrentText" }] : /* istanbul ignore next */ []));
7200
+ this.getCurrentText = computed(() => this.translationService.resolve(this.getValue(), this.currentLanguage()), ...(ngDevMode ? [{ debugName: "getCurrentText" }] : /* istanbul ignore next */ []));
7219
7201
  }
7220
7202
  onWysiwygChanged(e) {
7221
7203
  if (!e.isUserInteraction)
@@ -7250,7 +7232,7 @@ class AXPRichTextWidgetEditComponent extends AXPValueWidgetComponent {
7250
7232
  title: 'Select Language',
7251
7233
  size: 'lg',
7252
7234
  data: {
7253
- values: this.mlResolver.toLocaleMap(this.getValue(), this.currentLanguage()),
7235
+ values: this.translationService.toLocaleMap(this.getValue(), this.currentLanguage()),
7254
7236
  currentLanguage: this.currentLanguage(),
7255
7237
  node: node,
7256
7238
  mode: 'edit',
@@ -7367,7 +7349,7 @@ class AXPRichTextWidgetViewComponent extends AXPValueWidgetComponent {
7367
7349
  super(...arguments);
7368
7350
  this.platform = inject(AXPlatform);
7369
7351
  this.layoutBuilder = inject(AXPLayoutBuilderService);
7370
- this.mlResolver = inject(AXPMultiLanguageStringResolverService);
7352
+ this.mlResolver = inject(AXTranslationService);
7371
7353
  /** Resolved HTML for the preview dialog (same rules as the inline snippet). */
7372
7354
  this.displayHtml = computed(() => {
7373
7355
  const v = this.getValue();
@@ -7402,7 +7384,7 @@ class AXPRichTextWidgetViewComponent extends AXPValueWidgetComponent {
7402
7384
  }
7403
7385
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPRichTextWidgetViewComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
7404
7386
  static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.9", type: AXPRichTextWidgetViewComponent, isStandalone: true, selector: "axp-rich-text-widget-view", usesInheritance: true, ngImport: i0, template: `
7405
- @let html = getValue() | axpResolveMultiLanguageString;
7387
+ @let html = getValue() | translate | async;
7406
7388
  @if (html) {
7407
7389
  <span
7408
7390
  class="ax-truncate ax-underline ax-cursor-pointer ax-text-muted"
@@ -7413,14 +7395,14 @@ class AXPRichTextWidgetViewComponent extends AXPValueWidgetComponent {
7413
7395
  } @else {
7414
7396
  <span class="ax-text-muted">---</span>
7415
7397
  }
7416
- `, isInline: true, dependencies: [{ kind: "pipe", type: AXSafePipe, name: "safe" }, { kind: "pipe", type: AXPResolveMultiLanguageStringPipe, name: "axpResolveMultiLanguageString" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
7398
+ `, isInline: true, dependencies: [{ kind: "ngmodule", type: AXTranslationModule }, { kind: "pipe", type: AXSafePipe, name: "safe" }, { kind: "pipe", type: i6.AXTranslatorPipe, name: "translate" }, { kind: "pipe", type: AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
7417
7399
  }
7418
7400
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPRichTextWidgetViewComponent, decorators: [{
7419
7401
  type: Component,
7420
7402
  args: [{
7421
7403
  selector: 'axp-rich-text-widget-view',
7422
7404
  template: `
7423
- @let html = getValue() | axpResolveMultiLanguageString;
7405
+ @let html = getValue() | translate | async;
7424
7406
  @if (html) {
7425
7407
  <span
7426
7408
  class="ax-truncate ax-underline ax-cursor-pointer ax-text-muted"
@@ -7433,7 +7415,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImpor
7433
7415
  }
7434
7416
  `,
7435
7417
  changeDetection: ChangeDetectionStrategy.OnPush,
7436
- imports: [AXSafePipe, AXPResolveMultiLanguageStringPipe],
7418
+ imports: [AXSafePipe, AXTranslationModule, AsyncPipe],
7437
7419
  }]
7438
7420
  }] });
7439
7421
 
@@ -9198,20 +9180,20 @@ const AXPTemplateBoxWidget = {
9198
9180
  class AXPTextBoxWidgetColumnComponent extends AXPColumnWidgetComponent {
9199
9181
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPTextBoxWidgetColumnComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
9200
9182
  static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.9", type: AXPTextBoxWidgetColumnComponent, isStandalone: true, selector: "axp-text-box-widget-column", inputs: { rawValue: "rawValue", rowData: "rowData" }, usesInheritance: true, ngImport: i0, template: `
9201
- @let text = rawValue | axpResolveMultiLanguageString;
9183
+ @let text = rawValue | translate | async;
9202
9184
  @if (text) {
9203
9185
  {{ text }}
9204
9186
  } @else {
9205
9187
  <span class="ax-text-muted">---</span>
9206
9188
  }
9207
- `, isInline: true, dependencies: [{ kind: "pipe", type: AXPResolveMultiLanguageStringPipe, name: "axpResolveMultiLanguageString" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
9189
+ `, isInline: true, dependencies: [{ kind: "ngmodule", type: AXTranslationModule }, { kind: "pipe", type: i6.AXTranslatorPipe, name: "translate" }, { kind: "pipe", type: AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
9208
9190
  }
9209
9191
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPTextBoxWidgetColumnComponent, decorators: [{
9210
9192
  type: Component,
9211
9193
  args: [{
9212
9194
  selector: 'axp-text-box-widget-column',
9213
9195
  template: `
9214
- @let text = rawValue | axpResolveMultiLanguageString;
9196
+ @let text = rawValue | translate | async;
9215
9197
  @if (text) {
9216
9198
  {{ text }}
9217
9199
  } @else {
@@ -9219,7 +9201,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImpor
9219
9201
  }
9220
9202
  `,
9221
9203
  changeDetection: ChangeDetectionStrategy.OnPush,
9222
- imports: [AXPResolveMultiLanguageStringPipe],
9204
+ imports: [AXTranslationModule, AsyncPipe],
9223
9205
  inputs: ['rawValue', 'rowData'],
9224
9206
  }]
9225
9207
  }] });
@@ -9234,7 +9216,6 @@ class AXPTextBoxWidgetEditComponent extends AXPValueWidgetComponent {
9234
9216
  super(...arguments);
9235
9217
  this.popupService = inject(AXPopupService);
9236
9218
  this.translationService = inject(AXTranslationService);
9237
- this.mlResolver = inject(AXPMultiLanguageStringResolverService);
9238
9219
  this.multiLanguage = computed(() => this.options()['multiLanguage'], ...(ngDevMode ? [{ debugName: "multiLanguage" }] : /* istanbul ignore next */ []));
9239
9220
  this.hasClearButton = computed(() => this.options()['hasClearButton'], ...(ngDevMode ? [{ debugName: "hasClearButton" }] : /* istanbul ignore next */ []));
9240
9221
  this.disabled = computed(() => this.options()['disabled'], ...(ngDevMode ? [{ debugName: "disabled" }] : /* istanbul ignore next */ []));
@@ -9258,7 +9239,6 @@ class AXPTextBoxWidgetEditComponent extends AXPValueWidgetComponent {
9258
9239
  if (!e.isUserInteraction) {
9259
9240
  return;
9260
9241
  }
9261
- ;
9262
9242
  if (this.multiLanguage()) {
9263
9243
  const v = this.getValue();
9264
9244
  const obj = v && typeof v === 'object' && !Array.isArray(v) ? { ...v } : {};
@@ -9270,7 +9250,7 @@ class AXPTextBoxWidgetEditComponent extends AXPValueWidgetComponent {
9270
9250
  }
9271
9251
  }
9272
9252
  getCurrentText() {
9273
- return this.mlResolver.resolve(this.getValue(), this.currentLanguage());
9253
+ return this.translationService.resolve(this.getValue(), this.currentLanguage());
9274
9254
  }
9275
9255
  async openMultiLanguagePopup() {
9276
9256
  const node = {
@@ -9285,7 +9265,7 @@ class AXPTextBoxWidgetEditComponent extends AXPValueWidgetComponent {
9285
9265
  title: 'Multi-language Text',
9286
9266
  size: 'md',
9287
9267
  data: {
9288
- values: this.mlResolver.toLocaleMap(this.getValue(), this.currentLanguage()),
9268
+ values: this.translationService.toLocaleMap(this.getValue(), this.currentLanguage()),
9289
9269
  currentLanguage: this.currentLanguage(),
9290
9270
  node: node,
9291
9271
  mode: 'edit',
@@ -9401,33 +9381,35 @@ var textBoxWidgetEdit_component = /*#__PURE__*/Object.freeze({
9401
9381
 
9402
9382
  class AXPTextBoxWidgetViewComponent extends AXPValueWidgetComponent {
9403
9383
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPTextBoxWidgetViewComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
9404
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.9", type: AXPTextBoxWidgetViewComponent, isStandalone: true, selector: "axp-text-box-widget-view", usesInheritance: true, ngImport: i0, template: `
9405
- <div class="ax-text-muted">
9406
- @let text = getValue() | axpResolveMultiLanguageString;
9407
- @if (text) {
9408
- <p>{{ text }}</p>
9409
- } @else {
9410
- <p class="ax-text-muted">---</p>
9411
- }
9412
- </div>
9413
- `, isInline: true, dependencies: [{ kind: "pipe", type: AXPResolveMultiLanguageStringPipe, name: "axpResolveMultiLanguageString" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
9384
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.9", type: AXPTextBoxWidgetViewComponent, isStandalone: true, selector: "axp-text-box-widget-view", usesInheritance: true, ngImport: i0, template: `
9385
+ <div class="ax-text-muted">
9386
+ @let text = getValue() | translate | async;
9387
+
9388
+ @if (text) {
9389
+ <p>{{ text }}</p>
9390
+ } @else {
9391
+ <p class="ax-text-muted">---</p>
9392
+ }
9393
+ </div>
9394
+ `, isInline: true, dependencies: [{ kind: "ngmodule", type: AXTranslationModule }, { kind: "pipe", type: i6.AXTranslatorPipe, name: "translate" }, { kind: "pipe", type: AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
9414
9395
  }
9415
9396
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPTextBoxWidgetViewComponent, decorators: [{
9416
9397
  type: Component,
9417
9398
  args: [{
9418
9399
  selector: 'axp-text-box-widget-view',
9419
- template: `
9420
- <div class="ax-text-muted">
9421
- @let text = getValue() | axpResolveMultiLanguageString;
9422
- @if (text) {
9423
- <p>{{ text }}</p>
9424
- } @else {
9425
- <p class="ax-text-muted">---</p>
9426
- }
9427
- </div>
9400
+ template: `
9401
+ <div class="ax-text-muted">
9402
+ @let text = getValue() | translate | async;
9403
+
9404
+ @if (text) {
9405
+ <p>{{ text }}</p>
9406
+ } @else {
9407
+ <p class="ax-text-muted">---</p>
9408
+ }
9409
+ </div>
9428
9410
  `,
9429
9411
  changeDetection: ChangeDetectionStrategy.OnPush,
9430
- imports: [AXPResolveMultiLanguageStringPipe],
9412
+ imports: [AXTranslationModule, AsyncPipe],
9431
9413
  }]
9432
9414
  }] });
9433
9415
 
@@ -11824,7 +11806,7 @@ class AXPFileUploaderWidgetService {
11824
11806
  showEditDialogAfterSelect: false,
11825
11807
  };
11826
11808
  options = { ...defaultOptions, ...options };
11827
- const component = await import('./acorex-platform-layout-widgets-file-list-popup.component-9uCkMxcc.mjs').then((m) => m.AXPFileListPopupComponent);
11809
+ const component = await import('./acorex-platform-layout-widgets-file-list-popup.component-CDYAGBku.mjs').then((m) => m.AXPFileListPopupComponent);
11828
11810
  const result = await this.popupService.open(component, {
11829
11811
  title: await this.translate.translateAsync('@document-management:terms.common.file'),
11830
11812
  data: {
@@ -11862,9 +11844,9 @@ class AXPFileUploaderWidgetColumnComponent extends AXPColumnWidgetComponent {
11862
11844
  this.fileService = inject(AXPFileUploaderWidgetService);
11863
11845
  }
11864
11846
  async openFileList() {
11865
- console.log(this.rawValue);
11866
- this.fileService.showFileList({
11867
- files: castArray(this.rawValue ?? []),
11847
+ const files = castArray(this.rawValue ?? []).filter((item) => item != null && typeof item === 'object' && typeof item.name === 'string');
11848
+ await this.fileService.showFileList({
11849
+ files,
11868
11850
  readonly: true,
11869
11851
  });
11870
11852
  }
@@ -15230,6 +15212,10 @@ class AXPStatusWidgetColumnComponent extends AXPColumnWidgetComponent {
15230
15212
  this.definitionKey = computed(() => {
15231
15213
  return this.options['definitionKey'] ?? null;
15232
15214
  }, ...(ngDevMode ? [{ debugName: "definitionKey" }] : /* istanbul ignore next */ []));
15215
+ /**
15216
+ * When true, the grid cell is display-only (no transition popover). Default false preserves existing grids.
15217
+ */
15218
+ this.columnReadonly = computed(() => !!this.options['readonly'], ...(ngDevMode ? [{ debugName: "columnReadonly" }] : /* istanbul ignore next */ []));
15233
15219
  this.entityData = computed(() => {
15234
15220
  return this.rowDataSignal();
15235
15221
  }, ...(ngDevMode ? [{ debugName: "entityData" }] : /* istanbul ignore next */ []));
@@ -15330,7 +15316,7 @@ class AXPStatusWidgetColumnComponent extends AXPColumnWidgetComponent {
15330
15316
  static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "21.2.9", type: AXPStatusWidgetColumnComponent, isStandalone: true, selector: "axp-status-widget-column", inputs: { rawValue: "rawValue", rowData: "rowData", rawValueInput: ["rawValue", "rawValueInput"], rowDataInput: ["rowData", "rowDataInput"] }, viewQueries: [{ propertyName: "statusChip", first: true, predicate: AXPStatusChipComponent, descendants: true, isSignal: true }], usesInheritance: true, ngImport: i0, template: `
15331
15317
  <axp-status-chip
15332
15318
  [status]="statusItem()"
15333
- [readonly]="false"
15319
+ [readonly]="columnReadonly()"
15334
15320
  [availableTransitions]="getAvailableTransitions()"
15335
15321
  [definitionKey]="definitionKey()"
15336
15322
  [entityData]="entityData()"
@@ -15348,7 +15334,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImpor
15348
15334
  template: `
15349
15335
  <axp-status-chip
15350
15336
  [status]="statusItem()"
15351
- [readonly]="false"
15337
+ [readonly]="columnReadonly()"
15352
15338
  [availableTransitions]="getAvailableTransitions()"
15353
15339
  [definitionKey]="definitionKey()"
15354
15340
  [entityData]="entityData()"
@@ -15385,6 +15371,8 @@ class AXPStatusWidgetEditComponent extends AXPValueWidgetComponent {
15385
15371
  //#region ---- Properties ----
15386
15372
  this.statusService = inject(AXPStatusDefinitionProviderService);
15387
15373
  this.definitionKey = computed(() => this.options()['definitionKey'] ?? null, ...(ngDevMode ? [{ debugName: "definitionKey" }] : /* istanbul ignore next */ []));
15374
+ /** When true, the chip is display-only (no transition popover). Set via interface options. */
15375
+ this.isReadonly = computed(() => !!this.options()['readonly'] || !!this.options()['disabled'], ...(ngDevMode ? [{ debugName: "isReadonly" }] : /* istanbul ignore next */ []));
15388
15376
  this.providerSignal = signal(undefined, ...(ngDevMode ? [{ debugName: "providerSignal" }] : /* istanbul ignore next */ []));
15389
15377
  this.statuses = computed(() => this.providerSignal()?.statuses ?? [], ...(ngDevMode ? [{ debugName: "statuses" }] : /* istanbul ignore next */ []));
15390
15378
  this.transitions = computed(() => this.providerSignal()?.transitions ?? [], ...(ngDevMode ? [{ debugName: "transitions" }] : /* istanbul ignore next */ []));
@@ -15532,7 +15520,7 @@ class AXPStatusWidgetEditComponent extends AXPValueWidgetComponent {
15532
15520
  static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "21.2.9", type: AXPStatusWidgetEditComponent, isStandalone: true, selector: "axp-status-widget-edit", viewQueries: [{ propertyName: "statusChip", first: true, predicate: AXPStatusChipComponent, descendants: true, isSignal: true }], usesInheritance: true, ngImport: i0, template: `
15533
15521
  <axp-status-chip
15534
15522
  [status]="currentStatus()"
15535
- [readonly]="false"
15523
+ [readonly]="isReadonly()"
15536
15524
  [availableTransitions]="getAvailableTransitions()"
15537
15525
  [definitionKey]="definitionKey()"
15538
15526
  [entityData]="getEntityData()"
@@ -15550,7 +15538,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImpor
15550
15538
  template: `
15551
15539
  <axp-status-chip
15552
15540
  [status]="currentStatus()"
15553
- [readonly]="false"
15541
+ [readonly]="isReadonly()"
15554
15542
  [availableTransitions]="getAvailableTransitions()"
15555
15543
  [definitionKey]="definitionKey()"
15556
15544
  [entityData]="getEntityData()"
@@ -15580,11 +15568,12 @@ class AXPStatusWidgetViewComponent extends AXPDataListWidgetComponent {
15580
15568
  //#region ---- Properties ----
15581
15569
  this.statusService = inject(AXPStatusDefinitionProviderService);
15582
15570
  this.definitionKey = computed(() => this.options()['definitionKey'] ?? null, ...(ngDevMode ? [{ debugName: "definitionKey" }] : /* istanbul ignore next */ []));
15571
+ /** When true, the chip is display-only (no transition popover). Set via interface options. */
15572
+ this.isReadonly = computed(() => !!this.options()['readonly'] || !!this.options()['disabled'], ...(ngDevMode ? [{ debugName: "isReadonly" }] : /* istanbul ignore next */ []));
15583
15573
  this.providerSignal = signal(undefined, ...(ngDevMode ? [{ debugName: "providerSignal" }] : /* istanbul ignore next */ []));
15584
15574
  this.resolvedStatuses = computed(() => this.providerSignal()?.statuses ?? [], ...(ngDevMode ? [{ debugName: "resolvedStatuses" }] : /* istanbul ignore next */ []));
15585
15575
  this.resolvedTransitions = computed(() => this.providerSignal()?.transitions ?? [], ...(ngDevMode ? [{ debugName: "resolvedTransitions" }] : /* istanbul ignore next */ []));
15586
15576
  //#endregion
15587
- //#endregion
15588
15577
  //#region ---- Effects ----
15589
15578
  this.loadProvider = effect(async () => {
15590
15579
  const key = this.definitionKey();
@@ -15702,7 +15691,7 @@ class AXPStatusWidgetViewComponent extends AXPDataListWidgetComponent {
15702
15691
  static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "21.2.9", type: AXPStatusWidgetViewComponent, isStandalone: true, selector: "axp-status-widget-view", viewQueries: [{ propertyName: "statusChip", first: true, predicate: AXPStatusChipComponent, descendants: true, isSignal: true }], usesInheritance: true, ngImport: i0, template: `
15703
15692
  <axp-status-chip
15704
15693
  [status]="currentStatus()"
15705
- [readonly]="false"
15694
+ [readonly]="isReadonly()"
15706
15695
  [availableTransitions]="getAvailableTransitions()"
15707
15696
  [definitionKey]="definitionKey()"
15708
15697
  [entityData]="getEntityData()"
@@ -15720,7 +15709,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImpor
15720
15709
  template: `
15721
15710
  <axp-status-chip
15722
15711
  [status]="currentStatus()"
15723
- [readonly]="false"
15712
+ [readonly]="isReadonly()"
15724
15713
  [availableTransitions]="getAvailableTransitions()"
15725
15714
  [definitionKey]="definitionKey()"
15726
15715
  [entityData]="getEntityData()"
@@ -17661,7 +17650,7 @@ class AXPFieldsetWidgetDesignerComponent extends AXPLayoutBaseWidgetComponent {
17661
17650
  @if (icon()) {
17662
17651
  <i [class]="icon()" style="margin-inline-end: 0.5em;"></i>
17663
17652
  }
17664
- {{ title() | axpResolveMultiLanguageString | translate | async }}
17653
+ {{ title() | translate | async }}
17665
17654
  </legend>
17666
17655
  }
17667
17656
  <div class="axp-fieldset-content">
@@ -17680,7 +17669,7 @@ class AXPFieldsetWidgetDesignerComponent extends AXPLayoutBaseWidgetComponent {
17680
17669
  }
17681
17670
  </div>
17682
17671
  </fieldset>
17683
- `, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: AXTranslationModule }, { kind: "ngmodule", type: AXPWidgetCoreModule }, { kind: "directive", type: AXPWidgetDesignerRendererDirective, selector: "[axp-widget-designer-renderer]", inputs: ["parentNode", "parentElement", "parentComponent", "index", "locked", "mode", "node"] }, { kind: "component", type: AXPDesignerAddWidgetMiniButtonComponent, selector: "axp-designer-add-widget-mini-button", outputs: ["onClick"] }, { kind: "pipe", type: i1$4.AsyncPipe, name: "async" }, { kind: "pipe", type: i6.AXTranslatorPipe, name: "translate" }, { kind: "pipe", type: AXPResolveMultiLanguageStringPipe, name: "axpResolveMultiLanguageString" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
17672
+ `, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: AXTranslationModule }, { kind: "ngmodule", type: AXPWidgetCoreModule }, { kind: "directive", type: AXPWidgetDesignerRendererDirective, selector: "[axp-widget-designer-renderer]", inputs: ["parentNode", "parentElement", "parentComponent", "index", "locked", "mode", "node"] }, { kind: "component", type: AXPDesignerAddWidgetMiniButtonComponent, selector: "axp-designer-add-widget-mini-button", outputs: ["onClick"] }, { kind: "pipe", type: i1$4.AsyncPipe, name: "async" }, { kind: "pipe", type: i6.AXTranslatorPipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
17684
17673
  }
17685
17674
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPFieldsetWidgetDesignerComponent, decorators: [{
17686
17675
  type: Component,
@@ -17693,7 +17682,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImpor
17693
17682
  @if (icon()) {
17694
17683
  <i [class]="icon()" style="margin-inline-end: 0.5em;"></i>
17695
17684
  }
17696
- {{ title() | axpResolveMultiLanguageString | translate | async }}
17685
+ {{ title() | translate | async }}
17697
17686
  </legend>
17698
17687
  }
17699
17688
  <div class="axp-fieldset-content">
@@ -17720,7 +17709,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImpor
17720
17709
  AXPWidgetCoreModule,
17721
17710
  AXPWidgetDesignerRendererDirective,
17722
17711
  AXPDesignerAddWidgetMiniButtonComponent,
17723
- AXPResolveMultiLanguageStringPipe,
17724
17712
  ],
17725
17713
  providers: [
17726
17714
  {
@@ -17762,11 +17750,11 @@ class AXPFieldsetWidgetViewComponent extends AXPLayoutBaseWidgetComponent {
17762
17750
  }
17763
17751
  }
17764
17752
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPFieldsetWidgetViewComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
17765
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.9", type: AXPFieldsetWidgetViewComponent, isStandalone: true, selector: "axp-fieldset-widget-view", usesInheritance: true, ngImport: i0, template: "@switch (look()) {\n<!-- fieldset Style -->\n@case ('fieldset') {\n<fieldset class=\"fieldset\">\n @if (shouldShowTitle()) {\n <legend class=\"legend\" (click)=\"toggleCollapse()\">\n @if (icon()) {\n <i [class]=\"icon()\" class=\"ax-text-sm\"></i>\n }\n {{ title() | axpResolveMultiLanguageString | translate | async }}\n </legend>\n }\n @if (!collapsible() || isOpen()) {\n <div class=\"content\" [style.grid-template-columns]=\"'repeat(' + cols() + ', 1fr)'\">\n @if (description()) {\n <p class=\"description\" [style.grid-column]=\"'1 / -1'\">\n {{ description() | axpResolveMultiLanguageString | translate | async }}\n </p>\n }\n <!-- render widgets -->\n @for (node of children(); track $index) {\n <ng-container axp-widget-renderer [node]=\"node\" [index]=\"index\" [parentNode]=\"this\"\n [mode]=\"node.mode ?? this.mode\"></ng-container>\n }\n </div>\n }\n</fieldset>\n}\n<!-- Card Style -->\n@case ('card') {\n<div class=\"card\">\n @if (shouldShowTitle()) {\n <div class=\"legend\" (click)=\"toggleCollapse()\">\n <div class=\"caption\">\n @if (icon()) {\n <i [class]=\"icon()\" class=\"ax-text-md\"></i>\n }\n <div class=\"text-content\">\n <h3 class=\"title\">{{ title() | axpResolveMultiLanguageString | translate | async }}</h3>\n @if (description()) {\n <p class=\"description\">{{ description() | axpResolveMultiLanguageString | translate | async }}</p>\n }\n </div>\n </div>\n <div class=\"icon\" [ngClass]=\"{ 'ax-transform ax-rotate-180': isOpen() }\">\n @if (collapsible()) {\n <i class=\"fa-solid fa-chevron-down\"></i>\n }\n </div>\n </div>\n }\n\n @if (!collapsible() || isOpen()) {\n <div class=\"content\" [style.grid-template-columns]=\"'repeat(' + cols() + ', 1fr)'\">\n @for (node of children(); track $index) {\n <ng-container axp-widget-renderer [node]=\"node\" [index]=\"index\" [parentNode]=\"this\"\n [mode]=\"node.mode ?? this.mode\"></ng-container>\n }\n </div>\n }\n</div>\n}\n<!-- Group Line style -->\n@case ('group') {\n<fieldset class=\"group\">\n @if (shouldShowTitle()) {\n <legend class=\"legend\">\n @if (icon()) {\n <i [class]=\"icon()\" class=\"ax-text-sm\"></i>\n }\n <h3 class=\"title\">{{ title() | axpResolveMultiLanguageString | translate | async }}</h3>\n <div class=\"title-line\"></div>\n </legend>\n }\n @if (!collapsible() || isOpen()) {\n <div class=\"content\" [style.grid-template-columns]=\"'repeat(' + cols() + ', 1fr)'\">\n @if (description()) {\n <p class=\"description\" [style.grid-column]=\"'1 / -1'\">\n {{ description() | axpResolveMultiLanguageString | translate | async }}\n </p>\n }\n <!-- render widgets -->\n @for (node of children(); track $index) {\n <ng-container axp-widget-renderer [node]=\"node\" [index]=\"index\" [parentNode]=\"this\"\n [mode]=\"node.mode ?? this.mode\"></ng-container>\n }\n </div>\n }\n</fieldset>\n}\n<!-- Container Style -->\n@case ('container') {\n<div class=\"container\">\n @for (node of children(); track $index) {\n <ng-container axp-widget-renderer [node]=\"node\" [index]=\"index\" [parentNode]=\"this\"\n [mode]=\"node.mode ?? this.mode\"></ng-container>\n }\n</div>\n}\n<!-- End of switch-->\n}", styles: [":host{display:block;height:100%;width:100%}:host>.fieldset{border-radius:.375rem;border-width:1px;padding:.5rem 1.5rem 1.5rem;--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)}:host>.fieldset>.legend{display:inline-flex;min-width:0px;cursor:pointer;align-items:center;gap:.5rem;padding-left:.5rem;padding-right:.5rem;font-size:1rem;line-height:1.5rem;font-weight:600}:host>.fieldset>.legend .title{margin:0;flex-shrink:0;white-space:nowrap;padding:0}:host>.fieldset>.content{display:grid;gap:1rem}:host>.fieldset>.content .description{padding-top:.25rem;padding-bottom:.75rem;font-size:.875rem;line-height:1.25rem;opacity:.65}:host>.group{padding:0}:host>.group>.legend{margin-bottom:1rem;display:flex;width:100%;flex-direction:column;gap:.25rem;padding:0}:host>.group>.legend .title{margin:0;width:fit-content;white-space:nowrap;padding:0;font-size:1rem;line-height:1.5rem;font-weight:500}:host>.group>.legend .title-line{margin-top:.25rem;height:1px;width:100%;border-bottom-width:1px;--tw-border-opacity: 1;border-color:rgb(229 229 229 / var(--tw-border-opacity, 1))}:host>.group>.content{display:grid;gap:1rem}:host>.group>.content .description{padding-top:.25rem;padding-bottom:1.5rem;font-size:.875rem;line-height:1.25rem;opacity:.65}:host>.card{height:100%;overflow:hidden;border-radius:.375rem;border-width:1px;--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)}:host>.card>.legend{display:flex;width:100%;cursor:pointer;flex-direction:row;align-items:center;justify-content:space-between;padding:.625rem 1.25rem;background-color:rgb(var(--ax-sys-color-lighter-surface));color:rgb(var(--ax-sys-color-on-lighter-surface));border-color:rgb(var(--ax-sys-color-border-lighter-surface))}:host>.card>.legend .caption{display:flex;flex-direction:row;align-items:center;gap:.5rem}:host>.card>.legend .caption .title{width:fit-content;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:600;line-height:1.625}:host>.card>.legend .caption .description{width:100%;font-size:.75rem;line-height:1rem;opacity:.65}:host>.card>.legend .caption .icon{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}:host>.card>.content{display:grid;gap:1rem;border-bottom-left-radius:.375rem;border-bottom-right-radius:.375rem;border-top-width:1px;padding:1.25rem}:host>.container{display:grid;gap:1rem}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "ngmodule", type: AXPWidgetCoreModule }, { kind: "directive", type: i1$3.AXPWidgetRendererDirective, selector: "[axp-widget-renderer]", inputs: ["parentNode", "index", "mode", "node"], outputs: ["onOptionsChanged", "onValueChanged", "onLoad"], exportAs: ["widgetRenderer"] }, { kind: "ngmodule", type: AXTranslationModule }, { kind: "pipe", type: i1$4.AsyncPipe, name: "async" }, { kind: "pipe", type: i6.AXTranslatorPipe, name: "translate" }, { kind: "pipe", type: AXPResolveMultiLanguageStringPipe, name: "axpResolveMultiLanguageString" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
17753
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.9", type: AXPFieldsetWidgetViewComponent, isStandalone: true, selector: "axp-fieldset-widget-view", usesInheritance: true, ngImport: i0, template: "@switch (look()) {\n <!-- fieldset Style -->\n @case ('fieldset') {\n <fieldset class=\"fieldset\">\n @if (shouldShowTitle()) {\n <legend class=\"legend\" (click)=\"toggleCollapse()\">\n @if (icon()) {\n <i [class]=\"icon()\" class=\"ax-text-sm\"></i>\n }\n {{ title() | translate | async }}\n </legend>\n }\n @if (!collapsible() || isOpen()) {\n <div class=\"content\" [style.grid-template-columns]=\"'repeat(' + cols() + ', 1fr)'\">\n @if (description()) {\n <p class=\"description\" [style.grid-column]=\"'1 / -1'\">\n {{ description() | translate | async }}\n </p>\n }\n <!-- render widgets -->\n @for (node of children(); track $index) {\n <ng-container\n axp-widget-renderer\n [node]=\"node\"\n [index]=\"index\"\n [parentNode]=\"this\"\n [mode]=\"node.mode ?? this.mode\"\n ></ng-container>\n }\n </div>\n }\n </fieldset>\n }\n <!-- Card Style -->\n @case ('card') {\n <div class=\"card\">\n @if (shouldShowTitle()) {\n <div class=\"legend\" (click)=\"toggleCollapse()\">\n <div class=\"caption\">\n @if (icon()) {\n <i [class]=\"icon()\" class=\"ax-text-md\"></i>\n }\n <div class=\"text-content\">\n <h3 class=\"title\">{{ title() | translate | async }}</h3>\n @if (description()) {\n <p class=\"description\">{{ description() | translate | async }}</p>\n }\n </div>\n </div>\n <div class=\"icon\" [ngClass]=\"{ 'ax-transform ax-rotate-180': isOpen() }\">\n @if (collapsible()) {\n <i class=\"fa-solid fa-chevron-down\"></i>\n }\n </div>\n </div>\n }\n\n @if (!collapsible() || isOpen()) {\n <div class=\"content\" [style.grid-template-columns]=\"'repeat(' + cols() + ', 1fr)'\">\n @for (node of children(); track $index) {\n <ng-container\n axp-widget-renderer\n [node]=\"node\"\n [index]=\"index\"\n [parentNode]=\"this\"\n [mode]=\"node.mode ?? this.mode\"\n ></ng-container>\n }\n </div>\n }\n </div>\n }\n <!-- Group Line style -->\n @case ('group') {\n <fieldset class=\"group\">\n @if (shouldShowTitle()) {\n <legend class=\"legend\">\n @if (icon()) {\n <i [class]=\"icon()\" class=\"ax-text-sm\"></i>\n }\n <h3 class=\"title\">{{ title() | translate | async }}</h3>\n <div class=\"title-line\"></div>\n </legend>\n }\n @if (!collapsible() || isOpen()) {\n <div class=\"content\" [style.grid-template-columns]=\"'repeat(' + cols() + ', 1fr)'\">\n @if (description()) {\n <p class=\"description\" [style.grid-column]=\"'1 / -1'\">\n {{ description() | translate | async }}\n </p>\n }\n <!-- render widgets -->\n @for (node of children(); track $index) {\n <ng-container\n axp-widget-renderer\n [node]=\"node\"\n [index]=\"index\"\n [parentNode]=\"this\"\n [mode]=\"node.mode ?? this.mode\"\n ></ng-container>\n }\n </div>\n }\n </fieldset>\n }\n <!-- Container Style -->\n @case ('container') {\n <div class=\"container\">\n @for (node of children(); track $index) {\n <ng-container\n axp-widget-renderer\n [node]=\"node\"\n [index]=\"index\"\n [parentNode]=\"this\"\n [mode]=\"node.mode ?? this.mode\"\n ></ng-container>\n }\n </div>\n }\n <!-- End of switch-->\n}\n", styles: [":host{display:block;height:100%;width:100%}:host>.fieldset{border-radius:.375rem;border-width:1px;padding:.5rem 1.5rem 1.5rem;--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)}:host>.fieldset>.legend{display:inline-flex;min-width:0px;cursor:pointer;align-items:center;gap:.5rem;padding-left:.5rem;padding-right:.5rem;font-size:1rem;line-height:1.5rem;font-weight:600}:host>.fieldset>.legend .title{margin:0;flex-shrink:0;white-space:nowrap;padding:0}:host>.fieldset>.content{display:grid;gap:1rem}:host>.fieldset>.content .description{padding-top:.25rem;padding-bottom:.75rem;font-size:.875rem;line-height:1.25rem;opacity:.65}:host>.group{padding:0}:host>.group>.legend{margin-bottom:1rem;display:flex;width:100%;flex-direction:column;gap:.25rem;padding:0}:host>.group>.legend .title{margin:0;width:fit-content;white-space:nowrap;padding:0;font-size:1rem;line-height:1.5rem;font-weight:500}:host>.group>.legend .title-line{margin-top:.25rem;height:1px;width:100%;border-bottom-width:1px;--tw-border-opacity: 1;border-color:rgb(229 229 229 / var(--tw-border-opacity, 1))}:host>.group>.content{display:grid;gap:1rem}:host>.group>.content .description{padding-top:.25rem;padding-bottom:1.5rem;font-size:.875rem;line-height:1.25rem;opacity:.65}:host>.card{height:100%;overflow:hidden;border-radius:.375rem;border-width:1px;--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)}:host>.card>.legend{display:flex;width:100%;cursor:pointer;flex-direction:row;align-items:center;justify-content:space-between;padding:.625rem 1.25rem;background-color:rgb(var(--ax-sys-color-lighter-surface));color:rgb(var(--ax-sys-color-on-lighter-surface));border-color:rgb(var(--ax-sys-color-border-lighter-surface))}:host>.card>.legend .caption{display:flex;flex-direction:row;align-items:center;gap:.5rem}:host>.card>.legend .caption .title{width:fit-content;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:600;line-height:1.625}:host>.card>.legend .caption .description{width:100%;font-size:.75rem;line-height:1rem;opacity:.65}:host>.card>.legend .caption .icon{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}:host>.card>.content{display:grid;gap:1rem;border-bottom-left-radius:.375rem;border-bottom-right-radius:.375rem;border-top-width:1px;padding:1.25rem}:host>.container{display:grid;gap:1rem}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "ngmodule", type: AXPWidgetCoreModule }, { kind: "directive", type: i1$3.AXPWidgetRendererDirective, selector: "[axp-widget-renderer]", inputs: ["parentNode", "index", "mode", "node"], outputs: ["onOptionsChanged", "onValueChanged", "onLoad"], exportAs: ["widgetRenderer"] }, { kind: "ngmodule", type: AXTranslationModule }, { kind: "pipe", type: i1$4.AsyncPipe, name: "async" }, { kind: "pipe", type: i6.AXTranslatorPipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
17766
17754
  }
17767
17755
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPFieldsetWidgetViewComponent, decorators: [{
17768
17756
  type: Component,
17769
- args: [{ selector: 'axp-fieldset-widget-view', changeDetection: ChangeDetectionStrategy.OnPush, imports: [CommonModule, AXPWidgetCoreModule, AXTranslationModule, AXPResolveMultiLanguageStringPipe], standalone: true, template: "@switch (look()) {\n<!-- fieldset Style -->\n@case ('fieldset') {\n<fieldset class=\"fieldset\">\n @if (shouldShowTitle()) {\n <legend class=\"legend\" (click)=\"toggleCollapse()\">\n @if (icon()) {\n <i [class]=\"icon()\" class=\"ax-text-sm\"></i>\n }\n {{ title() | axpResolveMultiLanguageString | translate | async }}\n </legend>\n }\n @if (!collapsible() || isOpen()) {\n <div class=\"content\" [style.grid-template-columns]=\"'repeat(' + cols() + ', 1fr)'\">\n @if (description()) {\n <p class=\"description\" [style.grid-column]=\"'1 / -1'\">\n {{ description() | axpResolveMultiLanguageString | translate | async }}\n </p>\n }\n <!-- render widgets -->\n @for (node of children(); track $index) {\n <ng-container axp-widget-renderer [node]=\"node\" [index]=\"index\" [parentNode]=\"this\"\n [mode]=\"node.mode ?? this.mode\"></ng-container>\n }\n </div>\n }\n</fieldset>\n}\n<!-- Card Style -->\n@case ('card') {\n<div class=\"card\">\n @if (shouldShowTitle()) {\n <div class=\"legend\" (click)=\"toggleCollapse()\">\n <div class=\"caption\">\n @if (icon()) {\n <i [class]=\"icon()\" class=\"ax-text-md\"></i>\n }\n <div class=\"text-content\">\n <h3 class=\"title\">{{ title() | axpResolveMultiLanguageString | translate | async }}</h3>\n @if (description()) {\n <p class=\"description\">{{ description() | axpResolveMultiLanguageString | translate | async }}</p>\n }\n </div>\n </div>\n <div class=\"icon\" [ngClass]=\"{ 'ax-transform ax-rotate-180': isOpen() }\">\n @if (collapsible()) {\n <i class=\"fa-solid fa-chevron-down\"></i>\n }\n </div>\n </div>\n }\n\n @if (!collapsible() || isOpen()) {\n <div class=\"content\" [style.grid-template-columns]=\"'repeat(' + cols() + ', 1fr)'\">\n @for (node of children(); track $index) {\n <ng-container axp-widget-renderer [node]=\"node\" [index]=\"index\" [parentNode]=\"this\"\n [mode]=\"node.mode ?? this.mode\"></ng-container>\n }\n </div>\n }\n</div>\n}\n<!-- Group Line style -->\n@case ('group') {\n<fieldset class=\"group\">\n @if (shouldShowTitle()) {\n <legend class=\"legend\">\n @if (icon()) {\n <i [class]=\"icon()\" class=\"ax-text-sm\"></i>\n }\n <h3 class=\"title\">{{ title() | axpResolveMultiLanguageString | translate | async }}</h3>\n <div class=\"title-line\"></div>\n </legend>\n }\n @if (!collapsible() || isOpen()) {\n <div class=\"content\" [style.grid-template-columns]=\"'repeat(' + cols() + ', 1fr)'\">\n @if (description()) {\n <p class=\"description\" [style.grid-column]=\"'1 / -1'\">\n {{ description() | axpResolveMultiLanguageString | translate | async }}\n </p>\n }\n <!-- render widgets -->\n @for (node of children(); track $index) {\n <ng-container axp-widget-renderer [node]=\"node\" [index]=\"index\" [parentNode]=\"this\"\n [mode]=\"node.mode ?? this.mode\"></ng-container>\n }\n </div>\n }\n</fieldset>\n}\n<!-- Container Style -->\n@case ('container') {\n<div class=\"container\">\n @for (node of children(); track $index) {\n <ng-container axp-widget-renderer [node]=\"node\" [index]=\"index\" [parentNode]=\"this\"\n [mode]=\"node.mode ?? this.mode\"></ng-container>\n }\n</div>\n}\n<!-- End of switch-->\n}", styles: [":host{display:block;height:100%;width:100%}:host>.fieldset{border-radius:.375rem;border-width:1px;padding:.5rem 1.5rem 1.5rem;--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)}:host>.fieldset>.legend{display:inline-flex;min-width:0px;cursor:pointer;align-items:center;gap:.5rem;padding-left:.5rem;padding-right:.5rem;font-size:1rem;line-height:1.5rem;font-weight:600}:host>.fieldset>.legend .title{margin:0;flex-shrink:0;white-space:nowrap;padding:0}:host>.fieldset>.content{display:grid;gap:1rem}:host>.fieldset>.content .description{padding-top:.25rem;padding-bottom:.75rem;font-size:.875rem;line-height:1.25rem;opacity:.65}:host>.group{padding:0}:host>.group>.legend{margin-bottom:1rem;display:flex;width:100%;flex-direction:column;gap:.25rem;padding:0}:host>.group>.legend .title{margin:0;width:fit-content;white-space:nowrap;padding:0;font-size:1rem;line-height:1.5rem;font-weight:500}:host>.group>.legend .title-line{margin-top:.25rem;height:1px;width:100%;border-bottom-width:1px;--tw-border-opacity: 1;border-color:rgb(229 229 229 / var(--tw-border-opacity, 1))}:host>.group>.content{display:grid;gap:1rem}:host>.group>.content .description{padding-top:.25rem;padding-bottom:1.5rem;font-size:.875rem;line-height:1.25rem;opacity:.65}:host>.card{height:100%;overflow:hidden;border-radius:.375rem;border-width:1px;--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)}:host>.card>.legend{display:flex;width:100%;cursor:pointer;flex-direction:row;align-items:center;justify-content:space-between;padding:.625rem 1.25rem;background-color:rgb(var(--ax-sys-color-lighter-surface));color:rgb(var(--ax-sys-color-on-lighter-surface));border-color:rgb(var(--ax-sys-color-border-lighter-surface))}:host>.card>.legend .caption{display:flex;flex-direction:row;align-items:center;gap:.5rem}:host>.card>.legend .caption .title{width:fit-content;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:600;line-height:1.625}:host>.card>.legend .caption .description{width:100%;font-size:.75rem;line-height:1rem;opacity:.65}:host>.card>.legend .caption .icon{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}:host>.card>.content{display:grid;gap:1rem;border-bottom-left-radius:.375rem;border-bottom-right-radius:.375rem;border-top-width:1px;padding:1.25rem}:host>.container{display:grid;gap:1rem}\n"] }]
17757
+ args: [{ selector: 'axp-fieldset-widget-view', changeDetection: ChangeDetectionStrategy.OnPush, imports: [CommonModule, AXPWidgetCoreModule, AXTranslationModule], standalone: true, template: "@switch (look()) {\n <!-- fieldset Style -->\n @case ('fieldset') {\n <fieldset class=\"fieldset\">\n @if (shouldShowTitle()) {\n <legend class=\"legend\" (click)=\"toggleCollapse()\">\n @if (icon()) {\n <i [class]=\"icon()\" class=\"ax-text-sm\"></i>\n }\n {{ title() | translate | async }}\n </legend>\n }\n @if (!collapsible() || isOpen()) {\n <div class=\"content\" [style.grid-template-columns]=\"'repeat(' + cols() + ', 1fr)'\">\n @if (description()) {\n <p class=\"description\" [style.grid-column]=\"'1 / -1'\">\n {{ description() | translate | async }}\n </p>\n }\n <!-- render widgets -->\n @for (node of children(); track $index) {\n <ng-container\n axp-widget-renderer\n [node]=\"node\"\n [index]=\"index\"\n [parentNode]=\"this\"\n [mode]=\"node.mode ?? this.mode\"\n ></ng-container>\n }\n </div>\n }\n </fieldset>\n }\n <!-- Card Style -->\n @case ('card') {\n <div class=\"card\">\n @if (shouldShowTitle()) {\n <div class=\"legend\" (click)=\"toggleCollapse()\">\n <div class=\"caption\">\n @if (icon()) {\n <i [class]=\"icon()\" class=\"ax-text-md\"></i>\n }\n <div class=\"text-content\">\n <h3 class=\"title\">{{ title() | translate | async }}</h3>\n @if (description()) {\n <p class=\"description\">{{ description() | translate | async }}</p>\n }\n </div>\n </div>\n <div class=\"icon\" [ngClass]=\"{ 'ax-transform ax-rotate-180': isOpen() }\">\n @if (collapsible()) {\n <i class=\"fa-solid fa-chevron-down\"></i>\n }\n </div>\n </div>\n }\n\n @if (!collapsible() || isOpen()) {\n <div class=\"content\" [style.grid-template-columns]=\"'repeat(' + cols() + ', 1fr)'\">\n @for (node of children(); track $index) {\n <ng-container\n axp-widget-renderer\n [node]=\"node\"\n [index]=\"index\"\n [parentNode]=\"this\"\n [mode]=\"node.mode ?? this.mode\"\n ></ng-container>\n }\n </div>\n }\n </div>\n }\n <!-- Group Line style -->\n @case ('group') {\n <fieldset class=\"group\">\n @if (shouldShowTitle()) {\n <legend class=\"legend\">\n @if (icon()) {\n <i [class]=\"icon()\" class=\"ax-text-sm\"></i>\n }\n <h3 class=\"title\">{{ title() | translate | async }}</h3>\n <div class=\"title-line\"></div>\n </legend>\n }\n @if (!collapsible() || isOpen()) {\n <div class=\"content\" [style.grid-template-columns]=\"'repeat(' + cols() + ', 1fr)'\">\n @if (description()) {\n <p class=\"description\" [style.grid-column]=\"'1 / -1'\">\n {{ description() | translate | async }}\n </p>\n }\n <!-- render widgets -->\n @for (node of children(); track $index) {\n <ng-container\n axp-widget-renderer\n [node]=\"node\"\n [index]=\"index\"\n [parentNode]=\"this\"\n [mode]=\"node.mode ?? this.mode\"\n ></ng-container>\n }\n </div>\n }\n </fieldset>\n }\n <!-- Container Style -->\n @case ('container') {\n <div class=\"container\">\n @for (node of children(); track $index) {\n <ng-container\n axp-widget-renderer\n [node]=\"node\"\n [index]=\"index\"\n [parentNode]=\"this\"\n [mode]=\"node.mode ?? this.mode\"\n ></ng-container>\n }\n </div>\n }\n <!-- End of switch-->\n}\n", styles: [":host{display:block;height:100%;width:100%}:host>.fieldset{border-radius:.375rem;border-width:1px;padding:.5rem 1.5rem 1.5rem;--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)}:host>.fieldset>.legend{display:inline-flex;min-width:0px;cursor:pointer;align-items:center;gap:.5rem;padding-left:.5rem;padding-right:.5rem;font-size:1rem;line-height:1.5rem;font-weight:600}:host>.fieldset>.legend .title{margin:0;flex-shrink:0;white-space:nowrap;padding:0}:host>.fieldset>.content{display:grid;gap:1rem}:host>.fieldset>.content .description{padding-top:.25rem;padding-bottom:.75rem;font-size:.875rem;line-height:1.25rem;opacity:.65}:host>.group{padding:0}:host>.group>.legend{margin-bottom:1rem;display:flex;width:100%;flex-direction:column;gap:.25rem;padding:0}:host>.group>.legend .title{margin:0;width:fit-content;white-space:nowrap;padding:0;font-size:1rem;line-height:1.5rem;font-weight:500}:host>.group>.legend .title-line{margin-top:.25rem;height:1px;width:100%;border-bottom-width:1px;--tw-border-opacity: 1;border-color:rgb(229 229 229 / var(--tw-border-opacity, 1))}:host>.group>.content{display:grid;gap:1rem}:host>.group>.content .description{padding-top:.25rem;padding-bottom:1.5rem;font-size:.875rem;line-height:1.25rem;opacity:.65}:host>.card{height:100%;overflow:hidden;border-radius:.375rem;border-width:1px;--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)}:host>.card>.legend{display:flex;width:100%;cursor:pointer;flex-direction:row;align-items:center;justify-content:space-between;padding:.625rem 1.25rem;background-color:rgb(var(--ax-sys-color-lighter-surface));color:rgb(var(--ax-sys-color-on-lighter-surface));border-color:rgb(var(--ax-sys-color-border-lighter-surface))}:host>.card>.legend .caption{display:flex;flex-direction:row;align-items:center;gap:.5rem}:host>.card>.legend .caption .title{width:fit-content;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:600;line-height:1.625}:host>.card>.legend .caption .description{width:100%;font-size:.75rem;line-height:1rem;opacity:.65}:host>.card>.legend .caption .icon{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}:host>.card>.content{display:grid;gap:1rem;border-bottom-left-radius:.375rem;border-bottom-right-radius:.375rem;border-top-width:1px;padding:1.25rem}:host>.container{display:grid;gap:1rem}\n"] }]
17770
17758
  }] });
17771
17759
 
17772
17760
  var fieldsetWidgetView_component = /*#__PURE__*/Object.freeze({
@@ -27231,15 +27219,15 @@ class AXPFormFieldWidgetViewComponent extends AXPGridItemBaseLayoutWidgetCompone
27231
27219
  static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.9", type: AXPFormFieldWidgetViewComponent, isStandalone: true, selector: "axp-form-field-widget-view", host: { properties: { "class": "this.__class" } }, usesInheritance: true, ngImport: i0, template: `
27232
27220
  <ax-form-field>
27233
27221
  @if (showLabel() || badge()) {
27234
- <div class="ax-flex ax-gap-1 ax-items-center ax-justify-between">
27235
- @if (showLabel()) {
27236
- <ax-label [required]="isRequired()">{{ label() | axpResolveMultiLanguageString | translate | async }}</ax-label>
27237
- }
27238
- @if (badge()) {
27239
- <!-- <ax-badge [text]="(badge() | translate | async) ?? ''" color="primary" class="ax-primary-lightest"></ax-badge> -->
27240
- <span class="ax-text ax-p-1 ax-text-xs ax-rounded-md ">{{ badge() | axpResolveMultiLanguageString | translate | async }}</span>
27241
- }
27242
- </div>
27222
+ <div class="ax-flex ax-gap-1 ax-items-center ax-justify-between">
27223
+ @if (showLabel()) {
27224
+ <ax-label [required]="isRequired()">{{ label() | translate | async }}</ax-label>
27225
+ }
27226
+ @if (badge()) {
27227
+ <!-- <ax-badge [text]="(badge() | translate | async) ?? ''" color="primary" class="ax-primary-lightest"></ax-badge> -->
27228
+ <span class="ax-text ax-p-1 ax-text-xs ax-rounded-md ">{{ badge() | translate | async }}</span>
27229
+ }
27230
+ </div>
27243
27231
  }
27244
27232
  @for (node of children(); track $index) {
27245
27233
  <ng-container
@@ -27252,7 +27240,7 @@ class AXPFormFieldWidgetViewComponent extends AXPGridItemBaseLayoutWidgetCompone
27252
27240
  </ng-container>
27253
27241
  }
27254
27242
  </ax-form-field>
27255
- `, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: AXFormModule }, { kind: "component", type: i3.AXFormFieldComponent, selector: "ax-form-field", inputs: ["labelMode"] }, { kind: "ngmodule", type: AXLabelModule }, { kind: "component", type: i2.AXLabelComponent, selector: "ax-label", inputs: ["required", "for"], outputs: ["requiredChange"] }, { kind: "ngmodule", type: AXPWidgetCoreModule }, { kind: "directive", type: i1$3.AXPWidgetRendererDirective, selector: "[axp-widget-renderer]", inputs: ["parentNode", "index", "mode", "node"], outputs: ["onOptionsChanged", "onValueChanged", "onLoad"], exportAs: ["widgetRenderer"] }, { kind: "ngmodule", type: AXTranslationModule }, { kind: "ngmodule", type: AXBadgeModule }, { kind: "pipe", type: i1$4.AsyncPipe, name: "async" }, { kind: "pipe", type: i6.AXTranslatorPipe, name: "translate" }, { kind: "pipe", type: AXPResolveMultiLanguageStringPipe, name: "axpResolveMultiLanguageString" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
27243
+ `, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: AXFormModule }, { kind: "component", type: i3.AXFormFieldComponent, selector: "ax-form-field", inputs: ["labelMode"] }, { kind: "ngmodule", type: AXLabelModule }, { kind: "component", type: i2.AXLabelComponent, selector: "ax-label", inputs: ["required", "for"], outputs: ["requiredChange"] }, { kind: "ngmodule", type: AXPWidgetCoreModule }, { kind: "directive", type: i1$3.AXPWidgetRendererDirective, selector: "[axp-widget-renderer]", inputs: ["parentNode", "index", "mode", "node"], outputs: ["onOptionsChanged", "onValueChanged", "onLoad"], exportAs: ["widgetRenderer"] }, { kind: "ngmodule", type: AXTranslationModule }, { kind: "ngmodule", type: AXBadgeModule }, { kind: "pipe", type: i1$4.AsyncPipe, name: "async" }, { kind: "pipe", type: i6.AXTranslatorPipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
27256
27244
  }
27257
27245
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPFormFieldWidgetViewComponent, decorators: [{
27258
27246
  type: Component,
@@ -27261,15 +27249,15 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImpor
27261
27249
  template: `
27262
27250
  <ax-form-field>
27263
27251
  @if (showLabel() || badge()) {
27264
- <div class="ax-flex ax-gap-1 ax-items-center ax-justify-between">
27265
- @if (showLabel()) {
27266
- <ax-label [required]="isRequired()">{{ label() | axpResolveMultiLanguageString | translate | async }}</ax-label>
27267
- }
27268
- @if (badge()) {
27269
- <!-- <ax-badge [text]="(badge() | translate | async) ?? ''" color="primary" class="ax-primary-lightest"></ax-badge> -->
27270
- <span class="ax-text ax-p-1 ax-text-xs ax-rounded-md ">{{ badge() | axpResolveMultiLanguageString | translate | async }}</span>
27271
- }
27272
- </div>
27252
+ <div class="ax-flex ax-gap-1 ax-items-center ax-justify-between">
27253
+ @if (showLabel()) {
27254
+ <ax-label [required]="isRequired()">{{ label() | translate | async }}</ax-label>
27255
+ }
27256
+ @if (badge()) {
27257
+ <!-- <ax-badge [text]="(badge() | translate | async) ?? ''" color="primary" class="ax-primary-lightest"></ax-badge> -->
27258
+ <span class="ax-text ax-p-1 ax-text-xs ax-rounded-md ">{{ badge() | translate | async }}</span>
27259
+ }
27260
+ </div>
27273
27261
  }
27274
27262
  @for (node of children(); track $index) {
27275
27263
  <ng-container
@@ -27284,15 +27272,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImpor
27284
27272
  </ax-form-field>
27285
27273
  `,
27286
27274
  changeDetection: ChangeDetectionStrategy.OnPush,
27287
- imports: [
27288
- CommonModule,
27289
- AXFormModule,
27290
- AXLabelModule,
27291
- AXPWidgetCoreModule,
27292
- AXTranslationModule,
27293
- AXBadgeModule,
27294
- AXPResolveMultiLanguageStringPipe,
27295
- ],
27275
+ imports: [CommonModule, AXFormModule, AXLabelModule, AXPWidgetCoreModule, AXTranslationModule, AXBadgeModule],
27296
27276
  standalone: true,
27297
27277
  }]
27298
27278
  }], propDecorators: { __class: [{
@@ -27321,7 +27301,7 @@ class AXPFormFieldWidgetDesignerComponent extends AXPGridItemBaseLayoutWidgetCom
27321
27301
  },
27322
27302
  ], usesInheritance: true, ngImport: i0, template: `
27323
27303
  <ax-form-field>
27324
- <ax-label>{{ label() | axpResolveMultiLanguageString | translate | async }}</ax-label>
27304
+ <ax-label>{{ label() | translate | async }}</ax-label>
27325
27305
  @for (node of children(); track $index) {
27326
27306
  <ng-container
27327
27307
  axp-widget-designer-renderer
@@ -27335,7 +27315,7 @@ class AXPFormFieldWidgetDesignerComponent extends AXPGridItemBaseLayoutWidgetCom
27335
27315
  <axp-designer-add-widget-mini-button></axp-designer-add-widget-mini-button>
27336
27316
  }
27337
27317
  </ax-form-field>
27338
- `, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: AXFormModule }, { kind: "component", type: i3.AXFormFieldComponent, selector: "ax-form-field", inputs: ["labelMode"] }, { kind: "ngmodule", type: AXLabelModule }, { kind: "component", type: i2.AXLabelComponent, selector: "ax-label", inputs: ["required", "for"], outputs: ["requiredChange"] }, { kind: "ngmodule", type: AXTranslationModule }, { kind: "ngmodule", type: AXPWidgetCoreModule }, { kind: "directive", type: AXPWidgetDesignerRendererDirective, selector: "[axp-widget-designer-renderer]", inputs: ["parentNode", "parentElement", "parentComponent", "index", "locked", "mode", "node"] }, { kind: "component", type: AXPDesignerAddWidgetMiniButtonComponent, selector: "axp-designer-add-widget-mini-button", outputs: ["onClick"] }, { kind: "pipe", type: i1$4.AsyncPipe, name: "async" }, { kind: "pipe", type: i6.AXTranslatorPipe, name: "translate" }, { kind: "pipe", type: AXPResolveMultiLanguageStringPipe, name: "axpResolveMultiLanguageString" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
27318
+ `, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: AXFormModule }, { kind: "component", type: i3.AXFormFieldComponent, selector: "ax-form-field", inputs: ["labelMode"] }, { kind: "ngmodule", type: AXLabelModule }, { kind: "component", type: i2.AXLabelComponent, selector: "ax-label", inputs: ["required", "for"], outputs: ["requiredChange"] }, { kind: "ngmodule", type: AXTranslationModule }, { kind: "ngmodule", type: AXPWidgetCoreModule }, { kind: "directive", type: AXPWidgetDesignerRendererDirective, selector: "[axp-widget-designer-renderer]", inputs: ["parentNode", "parentElement", "parentComponent", "index", "locked", "mode", "node"] }, { kind: "component", type: AXPDesignerAddWidgetMiniButtonComponent, selector: "axp-designer-add-widget-mini-button", outputs: ["onClick"] }, { kind: "pipe", type: i1$4.AsyncPipe, name: "async" }, { kind: "pipe", type: i6.AXTranslatorPipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
27339
27319
  }
27340
27320
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPFormFieldWidgetDesignerComponent, decorators: [{
27341
27321
  type: Component,
@@ -27343,7 +27323,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImpor
27343
27323
  selector: 'axp-form-field-widget-designer',
27344
27324
  template: `
27345
27325
  <ax-form-field>
27346
- <ax-label>{{ label() | axpResolveMultiLanguageString | translate | async }}</ax-label>
27326
+ <ax-label>{{ label() | translate | async }}</ax-label>
27347
27327
  @for (node of children(); track $index) {
27348
27328
  <ng-container
27349
27329
  axp-widget-designer-renderer
@@ -27367,7 +27347,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImpor
27367
27347
  AXPWidgetCoreModule,
27368
27348
  AXPWidgetDesignerRendererDirective,
27369
27349
  AXPDesignerAddWidgetMiniButtonComponent,
27370
- AXPResolveMultiLanguageStringPipe,
27371
27350
  ],
27372
27351
  providers: [
27373
27352
  {
@@ -29695,12 +29674,8 @@ function toSerializableWidget(config) {
29695
29674
  ...(config.alias != null ? { alias: config.alias } : {}),
29696
29675
  title: resolveWidgetLabelForAi(config.title) || String(config.name),
29697
29676
  ...(config.icon != null ? { icon: config.icon } : {}),
29698
- ...(config.description != null
29699
- ? { description: resolveWidgetLabelForAi(config.description) || undefined }
29700
- : {}),
29701
- ...(config.aiDescription != null && config.aiDescription !== ''
29702
- ? { aiDescription: config.aiDescription }
29703
- : {}),
29677
+ ...(config.description != null ? { description: resolveWidgetLabelForAi(config.description) || undefined } : {}),
29678
+ ...(config.aiDescription != null && config.aiDescription !== '' ? { aiDescription: config.aiDescription } : {}),
29704
29679
  categories: normalizeWidgetCategories(config.categories).map((c) => ({
29705
29680
  name: c.name,
29706
29681
  title: resolveWidgetLabelForAi(c.title) || c.name,
@@ -29752,9 +29727,7 @@ class AXPGetWidgetsForAIQuery {
29752
29727
  .map((w) => ({
29753
29728
  name: String(w.name),
29754
29729
  title: resolveWidgetLabelForAi(w.title) || String(w.name),
29755
- ...(w.description != null
29756
- ? { description: resolveWidgetLabelForAi(w.description) || undefined }
29757
- : {}),
29730
+ ...(w.description != null ? { description: resolveWidgetLabelForAi(w.description) || undefined } : {}),
29758
29731
  ...(w.aiDescription != null && w.aiDescription !== '' ? { aiDescription: w.aiDescription } : {}),
29759
29732
  type: w.type,
29760
29733
  categories: normalizeWidgetCategories(w.categories).map((c) => ({