@lucca-front/ng 21.3.0-rc.7 → 21.3.0

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 (76) hide show
  1. package/fesm2022/lucca-front-ng-a11y.mjs +110 -6
  2. package/fesm2022/lucca-front-ng-a11y.mjs.map +1 -1
  3. package/fesm2022/lucca-front-ng-api.mjs +2 -2
  4. package/fesm2022/lucca-front-ng-api.mjs.map +1 -1
  5. package/fesm2022/lucca-front-ng-callout.mjs +10 -10
  6. package/fesm2022/lucca-front-ng-callout.mjs.map +1 -1
  7. package/fesm2022/lucca-front-ng-core.mjs +35 -15
  8. package/fesm2022/lucca-front-ng-core.mjs.map +1 -1
  9. package/fesm2022/lucca-front-ng-data-table.mjs +18 -12
  10. package/fesm2022/lucca-front-ng-data-table.mjs.map +1 -1
  11. package/fesm2022/lucca-front-ng-date.mjs +2 -2
  12. package/fesm2022/lucca-front-ng-date.mjs.map +1 -1
  13. package/fesm2022/lucca-front-ng-date2.mjs +6 -6
  14. package/fesm2022/lucca-front-ng-date2.mjs.map +1 -1
  15. package/fesm2022/lucca-front-ng-department.mjs +2 -2
  16. package/fesm2022/lucca-front-ng-department.mjs.map +1 -1
  17. package/fesm2022/lucca-front-ng-dialog.mjs +2 -2
  18. package/fesm2022/lucca-front-ng-dialog.mjs.map +1 -1
  19. package/fesm2022/lucca-front-ng-divider.mjs +2 -2
  20. package/fesm2022/lucca-front-ng-divider.mjs.map +1 -1
  21. package/fesm2022/lucca-front-ng-establishment.mjs +2 -2
  22. package/fesm2022/lucca-front-ng-establishment.mjs.map +1 -1
  23. package/fesm2022/lucca-front-ng-file-upload.mjs +6 -6
  24. package/fesm2022/lucca-front-ng-file-upload.mjs.map +1 -1
  25. package/fesm2022/lucca-front-ng-filter-pills.mjs +4 -4
  26. package/fesm2022/lucca-front-ng-filter-pills.mjs.map +1 -1
  27. package/fesm2022/lucca-front-ng-form-field.mjs +2 -2
  28. package/fesm2022/lucca-front-ng-form-field.mjs.map +1 -1
  29. package/fesm2022/lucca-front-ng-form-label.mjs +7 -4
  30. package/fesm2022/lucca-front-ng-form-label.mjs.map +1 -1
  31. package/fesm2022/lucca-front-ng-forms-rich-text-input.mjs +19 -4
  32. package/fesm2022/lucca-front-ng-forms-rich-text-input.mjs.map +1 -1
  33. package/fesm2022/lucca-front-ng-forms.mjs +11 -7
  34. package/fesm2022/lucca-front-ng-forms.mjs.map +1 -1
  35. package/fesm2022/lucca-front-ng-horizontal-navigation.mjs +2 -2
  36. package/fesm2022/lucca-front-ng-horizontal-navigation.mjs.map +1 -1
  37. package/fesm2022/lucca-front-ng-impersonation.mjs +2 -2
  38. package/fesm2022/lucca-front-ng-impersonation.mjs.map +1 -1
  39. package/fesm2022/lucca-front-ng-index-table.mjs +10 -10
  40. package/fesm2022/lucca-front-ng-index-table.mjs.map +1 -1
  41. package/fesm2022/lucca-front-ng-link.mjs +15 -4
  42. package/fesm2022/lucca-front-ng-link.mjs.map +1 -1
  43. package/fesm2022/lucca-front-ng-multi-select.mjs +36 -18
  44. package/fesm2022/lucca-front-ng-multi-select.mjs.map +1 -1
  45. package/fesm2022/lucca-front-ng-numeric-badge.mjs +2 -2
  46. package/fesm2022/lucca-front-ng-numeric-badge.mjs.map +1 -1
  47. package/fesm2022/lucca-front-ng-page-header.mjs +2 -2
  48. package/fesm2022/lucca-front-ng-page-header.mjs.map +1 -1
  49. package/fesm2022/lucca-front-ng-popover2.mjs +2 -2
  50. package/fesm2022/lucca-front-ng-popover2.mjs.map +1 -1
  51. package/fesm2022/lucca-front-ng-resource-card.mjs +2 -2
  52. package/fesm2022/lucca-front-ng-resource-card.mjs.map +1 -1
  53. package/fesm2022/lucca-front-ng-segmented-control-tabs.mjs +2 -2
  54. package/fesm2022/lucca-front-ng-segmented-control-tabs.mjs.map +1 -1
  55. package/fesm2022/lucca-front-ng-segmented-control.mjs +2 -2
  56. package/fesm2022/lucca-front-ng-segmented-control.mjs.map +1 -1
  57. package/fesm2022/lucca-front-ng-select.mjs +2 -2
  58. package/fesm2022/lucca-front-ng-select.mjs.map +1 -1
  59. package/fesm2022/lucca-front-ng-skeleton.mjs +12 -12
  60. package/fesm2022/lucca-front-ng-skeleton.mjs.map +1 -1
  61. package/fesm2022/lucca-front-ng-sortable-list.mjs +4 -4
  62. package/fesm2022/lucca-front-ng-sortable-list.mjs.map +1 -1
  63. package/fesm2022/lucca-front-ng-user.mjs +2 -2
  64. package/fesm2022/lucca-front-ng-user.mjs.map +1 -1
  65. package/fesm2022/lucca-front-ng-vertical-navigation.mjs +4 -4
  66. package/fesm2022/lucca-front-ng-vertical-navigation.mjs.map +1 -1
  67. package/package.json +4 -4
  68. package/schematics/lu-grid/migration.js +4 -4
  69. package/types/lucca-front-ng-a11y.d.ts +30 -2
  70. package/types/lucca-front-ng-core.d.ts +12 -8
  71. package/types/lucca-front-ng-data-table.d.ts +15 -12
  72. package/types/lucca-front-ng-form-label.d.ts +5 -4
  73. package/types/lucca-front-ng-forms.d.ts +3 -1
  74. package/types/lucca-front-ng-index-table.d.ts +12 -10
  75. package/types/lucca-front-ng-link.d.ts +13 -3
  76. package/types/lucca-front-ng-vertical-navigation.d.ts +1 -1
@@ -352,6 +352,7 @@ class MultilanguageInputComponent {
352
352
  this.openOnFocus = input(false, { ...(ngDevMode ? { debugName: "openOnFocus" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
353
353
  this.autocomplete = input('off', ...(ngDevMode ? [{ debugName: "autocomplete" }] : /* istanbul ignore next */ []));
354
354
  this.hasNoInvariant = input(false, { ...(ngDevMode ? { debugName: "hasNoInvariant" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
355
+ this.hasAIButtons = input(false, { ...(ngDevMode ? { debugName: "hasAIButtons" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
355
356
  this.displayLocale = input('', ...(ngDevMode ? [{ debugName: "displayLocale" }] : /* istanbul ignore next */ []));
356
357
  this.translateWithAI = output();
357
358
  this.shouldOpenOnFocus = computed(() => this.openOnFocus() || this.hasNoInvariant(), ...(ngDevMode ? [{ debugName: "shouldOpenOnFocus" }] : /* istanbul ignore next */ []));
@@ -366,6 +367,9 @@ class MultilanguageInputComponent {
366
367
  return this.model().find((row) => row.cultureCode === INVARIANT_CULTURE_CODE) || { value: '', required: false, cultureCode: INVARIANT_CULTURE_CODE };
367
368
  }
368
369
  }, ...(ngDevMode ? [{ debugName: "displayRow" }] : /* istanbul ignore next */ []));
370
+ this.cultureCodeDisplay = computed(() => {
371
+ return this.displayLocale().split('-')[0]?.toUpperCase();
372
+ }, ...(ngDevMode ? [{ debugName: "cultureCodeDisplay" }] : /* istanbul ignore next */ []));
369
373
  this.panelInputs = computed(() => {
370
374
  return this.model().filter((row) => (this.hasNoInvariant() ? row.cultureCode !== this.displayLocale() && row.cultureCode !== INVARIANT_CULTURE_CODE : row.cultureCode !== INVARIANT_CULTURE_CODE));
371
375
  }, ...(ngDevMode ? [{ debugName: "panelInputs" }] : /* istanbul ignore next */ []));
@@ -398,7 +402,7 @@ class MultilanguageInputComponent {
398
402
  value = [];
399
403
  }
400
404
  if (value.length > 0) {
401
- if (!value.some((row) => row.cultureCode === INVARIANT_CULTURE_CODE)) {
405
+ if (!this.hasNoInvariant() && !value.some((row) => row.cultureCode === INVARIANT_CULTURE_CODE)) {
402
406
  throw new Error('Please provide an invariant translation in translation array');
403
407
  }
404
408
  this.model.set(value);
@@ -417,13 +421,13 @@ class MultilanguageInputComponent {
417
421
  this.onChange?.(this.model());
418
422
  }
419
423
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: MultilanguageInputComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
420
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.14", type: MultilanguageInputComponent, isStandalone: true, selector: "lu-multilanguage-input", inputs: { intl: { classPropertyName: "intl", publicName: "intl", isSignal: true, isRequired: false, transformFunction: null }, placeholder: { classPropertyName: "placeholder", publicName: "placeholder", isSignal: true, isRequired: false, transformFunction: null }, openOnFocus: { classPropertyName: "openOnFocus", publicName: "openOnFocus", isSignal: true, isRequired: false, transformFunction: null }, autocomplete: { classPropertyName: "autocomplete", publicName: "autocomplete", isSignal: true, isRequired: false, transformFunction: null }, hasNoInvariant: { classPropertyName: "hasNoInvariant", publicName: "hasNoInvariant", isSignal: true, isRequired: false, transformFunction: null }, displayLocale: { classPropertyName: "displayLocale", publicName: "displayLocale", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { translateWithAI: "translateWithAI" }, providers: [
424
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.14", type: MultilanguageInputComponent, isStandalone: true, selector: "lu-multilanguage-input", inputs: { intl: { classPropertyName: "intl", publicName: "intl", isSignal: true, isRequired: false, transformFunction: null }, placeholder: { classPropertyName: "placeholder", publicName: "placeholder", isSignal: true, isRequired: false, transformFunction: null }, openOnFocus: { classPropertyName: "openOnFocus", publicName: "openOnFocus", isSignal: true, isRequired: false, transformFunction: null }, autocomplete: { classPropertyName: "autocomplete", publicName: "autocomplete", isSignal: true, isRequired: false, transformFunction: null }, hasNoInvariant: { classPropertyName: "hasNoInvariant", publicName: "hasNoInvariant", isSignal: true, isRequired: false, transformFunction: null }, hasAIButtons: { classPropertyName: "hasAIButtons", publicName: "hasAIButtons", isSignal: true, isRequired: false, transformFunction: null }, displayLocale: { classPropertyName: "displayLocale", publicName: "displayLocale", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { translateWithAI: "translateWithAI" }, providers: [
421
425
  {
422
426
  provide: NG_VALUE_ACCESSOR,
423
427
  useExisting: forwardRef(() => MultilanguageInputComponent),
424
428
  multi: true,
425
429
  },
426
- ], ngImport: i0, template: "<div class=\"textField mod-multilanguage\">\n\t<div class=\"textField-input\">\n\t\t<input\n\t\t\tluInput\n\t\t\ttype=\"text\"\n\t\t\tclass=\"textField-input-value\"\n\t\t\t[placeholder]=\"placeholder()\"\n\t\t\t[(ngModel)]=\"displayRow().value\"\n\t\t\t(ngModelChange)=\"valueChange()\"\n\t\t\t[ngModelOptions]=\"{ standalone: true }\"\n\t\t\t(blur)=\"onTouched?.()\"\n\t\t\t(focus)=\"shouldOpenOnFocus() ? popoverRef.openPopover(true, true, true) : null\"\n\t\t\t[disabled]=\"disabledInternal()\"\n\t\t\t[autocomplete]=\"autocomplete()\"\n\t\t\t#inputElement\n\t\t/>\n\t\t<div class=\"textField-input-affix\">\n\t\t\t<button\n\t\t\t\t[luPopover2]=\"popoverMultilanguage\"\n\t\t\t\t#popoverRef=\"luPopover2\"\n\t\t\t\tluPopoverNoCloseButton\n\t\t\t\t[customPositions]=\"popoverPositions\"\n\t\t\t\t[luTooltip]=\"intl().toggleMultilanguage\"\n\t\t\t\tluTooltipOnlyForDisplay\n\t\t\t\tluButton\n\t\t\t\ttype=\"button\"\n\t\t\t\tclass=\"textField-input-affix-toggle\"\n\t\t\t>\n\t\t\t\t<lu-icon icon=\"signTranslation\" [alt]=\"intl().toggleMultilanguage\" />\n\t\t\t</button>\n\t\t\t<ng-template #popoverMultilanguage>\n\t\t\t\t<div class=\"popover-contentOptional multilanguage_popover-content\" [style.inlineSize.rem]=\"getPopoverInlineSizeRem(inputElement)\">\n\t\t\t\t\t<div class=\"pr-u-displayFlex pr-u-gap100 pr-u-flexDirectionColumn\">\n\t\t\t\t\t\t@if (!hasNoInvariant()) {\n\t\t\t\t\t\t\t<p class=\"pr-u-colorTextSubtle\" [class]=\"formFieldSize() === 'S' ? 'pr-u-bodyXS' : 'pr-u-bodyS'\">\n\t\t\t\t\t\t\t\t{{ intl().invariantInfo }}\n\t\t\t\t\t\t\t</p>\n\t\t\t\t\t\t}\n\t\t\t\t\t\t@for (row of panelInputs(); track row.cultureCode) {\n\t\t\t\t\t\t\t<ng-template #prefixLang>\n\t\t\t\t\t\t\t\t<div class=\"textField-prefix-lang\">\n\t\t\t\t\t\t\t\t\t@if (formFieldRef.isInputRequired()) {\n\t\t\t\t\t\t\t\t\t\t{{ row.cultureCode.slice(0, 2).toUpperCase() }}<sup class=\"formLabel-required\" aria-hidden=\"true\">*</sup>\n\t\t\t\t\t\t\t\t\t} @else {\n\t\t\t\t\t\t\t\t\t\t{{ row.cultureCode.slice(0, 2).toUpperCase() }}\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t</ng-template>\n\t\t\t\t\t\t\t<ng-template #aiSuffix>\n\t\t\t\t\t\t\t\t<button\n\t\t\t\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\t\t\t\t[size]=\"formFieldSize() === 'S' ? 'XS' : 'S'\"\n\t\t\t\t\t\t\t\t\tluButton=\"AI\"\n\t\t\t\t\t\t\t\t\t[luTooltip]=\"intl().translateWithAI\"\n\t\t\t\t\t\t\t\t\tluTooltipOnlyForDisplay\n\t\t\t\t\t\t\t\t\t[disabled]=\"disabledInternal()\"\n\t\t\t\t\t\t\t\t\t(click)=\"translateWithAI.emit(row.cultureCode)\"\n\t\t\t\t\t\t\t\t\tclass=\"multilanguage_popover-content-button\"\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t<lu-icon icon=\"officePenStar\" alt=\"intl().translateWithAI\" />\n\t\t\t\t\t\t\t\t</button>\n\t\t\t\t\t\t\t</ng-template>\n\t\t\t\t\t\t\t<lu-form-field\n\t\t\t\t\t\t\t\t[size]=\"formFieldSize()\"\n\t\t\t\t\t\t\t\t[label]=\"intl().translateTo | intlParams: { lang: getLocaleDisplayName(row.cultureCode) }\"\n\t\t\t\t\t\t\t\thiddenLabel\n\t\t\t\t\t\t\t\t[errorInlineMessage]=\"formFieldRef.isInputRequired() && !row.value ? intl().requiredError : ''\"\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<lu-text-input\n\t\t\t\t\t\t\t\t\t[prefix]=\"{ content: prefixLang, ariaLabel: '' }\"\n\t\t\t\t\t\t\t\t\t[(ngModel)]=\"row.value\"\n\t\t\t\t\t\t\t\t\t[required]=\"formFieldRef.isInputRequired()\"\n\t\t\t\t\t\t\t\t\t(ngModelChange)=\"valueChange()\"\n\t\t\t\t\t\t\t\t\t[ngModelOptions]=\"{ standalone: true }\"\n\t\t\t\t\t\t\t\t\t[disabled]=\"disabledInternal()\"\n\t\t\t\t\t\t\t\t\t[autocomplete]=\"autocomplete()\"\n\t\t\t\t\t\t\t\t\t[suffix]=\"{ content: aiSuffix, ariaLabel: '' }\"\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</lu-form-field>\n\t\t\t\t\t\t}\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t</ng-template>\n\t\t</div>\n\t</div>\n</div>\n<ng-container *luPresentationDisplayDefault>\n\t@if (presentationValue()) {\n\t\t{{ presentationValue() }}\n\t} @else {\n\t\t<span aria-hidden=\"true\" data-content-before=\"\u2013\"></span>\n\t}\n</ng-container>\n", styles: ["@layer components{.multilanguage_popover-content.popover-contentOptional{max-block-size:20rem;max-inline-size:100%;overflow:auto}.multilanguage_popover-content.popover-contentOptional .multilanguage_popover-content-button{padding:var(--pr-t-spacings-50)}.multilanguage_popover-content.popover-contentOptional .textField:not(:focus-within,:hover) .multilanguage_popover-content-button{border:0;clip-path:rect(1px 1px 1px 1px);margin:-1px;overflow:hidden;padding:0;position:absolute;block-size:1px;inline-size:1px;white-space:nowrap;contain:paint}}@layer mods{.multilanguage_popover-content.popover-contentOptional:focus-visible{outline:2px solid var(--palettes-700, var(--palettes-product-700));outline-offset:2px;border-radius:var(--pr-t-border-radius-structure)}}\n"], dependencies: [{ kind: "component", type: FormFieldComponent, selector: "lu-form-field", inputs: ["intl", "label", "hiddenLabel", "rolePresentationLabel", "inline", "statusControl", "tooltip", "tag", "AI", "iconAItooltip", "iconAIalt", "width", "invalid", "inlineMessage", "errorInlineMessage", "inlineMessageState", "size", "extraDescribedBy", "layout", "counter", "presentation"], outputs: ["rolePresentationLabelChange", "layoutChange"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: PopoverDirective, selector: "[luPopover2]", inputs: ["intl", "luPopover2", "luPopoverPosition", "luPopoverMaxBlockSize", "luPopoverMaxInlineSize", "overlayScrollStrategy", "luPopoverDisabled", "luPopoverTrigger", "customPositions", "luPopoverNoCloseButton", "luPopoverAnchor", "luPopoverOpenDelay", "luPopoverCloseDelay"], outputs: ["luPopoverTriggerChange", "luPopoverClosed", "luPopoverOpened"], exportAs: ["luPopover2"] }, { kind: "component", type: TextInputComponent, selector: "lu-text-input", inputs: ["intl", "mask", "placeholder", "autocomplete", "hasClearer", "hasSearchIcon", "valueAlignRight", "prefix", "suffix", "searchIcon", "type"], outputs: ["blur"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: InputDirective, selector: "[luInput]", inputs: ["luInputStandalone"] }, { kind: "directive", type: LuTooltipTriggerDirective, selector: "[luTooltip]", inputs: ["luTooltip", "luTooltipEnterDelay", "luTooltipLeaveDelay", "luTooltipDisabled", "luTooltipOnlyForDisplay", "luTooltipPosition", "luTooltipWhenEllipsis", "luTooltipAnchor", "id"], exportAs: ["luTooltip"] }, { kind: "directive", type: _PresentationDisplayDefaultDirective, selector: "[luPresentationDisplayDefault]" }, { kind: "component", type: IconComponent, selector: "lu-icon, pr-icon", inputs: ["icon", "alt", "size", "color", "AI"] }, { kind: "component", type: ButtonComponent, selector: "button[luButton], a[luButton], span[luButton], button[prButton], a[prButton], span[prButton]", inputs: ["size", "block", "critical", "delete", "disclosure", "palette", "state", "luButton", "prButton"] }, { kind: "pipe", type: IntlParamsPipe, name: "intlParams" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
430
+ ], ngImport: i0, template: "<div class=\"textField mod-multilanguage\">\n\t@if (hasNoInvariant()) {\n\t\t<div class=\"textField-prefix\">\n\t\t\t<div class=\"textField-prefix-lang\">\n\t\t\t\t@if (formFieldRef.isInputRequired()) {\n\t\t\t\t\t{{ cultureCodeDisplay() }}<sup class=\"formLabel-required\" aria-hidden=\"true\">*</sup>\n\t\t\t\t} @else {\n\t\t\t\t\t{{ cultureCodeDisplay() }}\n\t\t\t\t}\n\t\t\t</div>\n\t\t</div>\n\t}\n\t<div class=\"textField-input\">\n\t\t<input\n\t\t\tluInput\n\t\t\ttype=\"text\"\n\t\t\tclass=\"textField-input-value\"\n\t\t\t[placeholder]=\"placeholder()\"\n\t\t\t[(ngModel)]=\"displayRow().value\"\n\t\t\t(ngModelChange)=\"valueChange()\"\n\t\t\t[ngModelOptions]=\"{ standalone: true }\"\n\t\t\t(blur)=\"onTouched?.()\"\n\t\t\t(focus)=\"shouldOpenOnFocus() ? popoverRef.openPopover(true, true, true) : null\"\n\t\t\t[disabled]=\"disabledInternal()\"\n\t\t\t[autocomplete]=\"autocomplete()\"\n\t\t\t#inputElement\n\t\t/>\n\t\t<div class=\"textField-input-affix\">\n\t\t\t<button\n\t\t\t\t[luPopover2]=\"popoverMultilanguage\"\n\t\t\t\t#popoverRef=\"luPopover2\"\n\t\t\t\tluPopoverNoCloseButton\n\t\t\t\t[customPositions]=\"popoverPositions\"\n\t\t\t\t[luTooltip]=\"intl().toggleMultilanguage\"\n\t\t\t\tluTooltipOnlyForDisplay\n\t\t\t\tluButton\n\t\t\t\ttype=\"button\"\n\t\t\t\tclass=\"textField-input-affix-toggle\"\n\t\t\t>\n\t\t\t\t<lu-icon icon=\"signTranslation\" [alt]=\"intl().toggleMultilanguage\" />\n\t\t\t</button>\n\t\t\t<ng-template #popoverMultilanguage>\n\t\t\t\t<div class=\"popover-contentOptional multilanguage_popover-content\" [style.inlineSize.rem]=\"getPopoverInlineSizeRem(inputElement)\">\n\t\t\t\t\t<div class=\"pr-u-displayFlex pr-u-gap100 pr-u-flexDirectionColumn\">\n\t\t\t\t\t\t@if (!hasNoInvariant()) {\n\t\t\t\t\t\t\t<p class=\"pr-u-colorTextSubtle\" [class]=\"formFieldSize() === 'S' ? 'pr-u-bodyXS' : 'pr-u-bodyS'\">\n\t\t\t\t\t\t\t\t{{ intl().invariantInfo }}\n\t\t\t\t\t\t\t</p>\n\t\t\t\t\t\t}\n\t\t\t\t\t\t@for (row of panelInputs(); track row.cultureCode) {\n\t\t\t\t\t\t\t<ng-template #prefixLang>\n\t\t\t\t\t\t\t\t<div class=\"textField-prefix-lang\">\n\t\t\t\t\t\t\t\t\t@if (formFieldRef.isInputRequired()) {\n\t\t\t\t\t\t\t\t\t\t{{ row.cultureCode.slice(0, 2).toUpperCase() }}<sup class=\"formLabel-required\" aria-hidden=\"true\">*</sup>\n\t\t\t\t\t\t\t\t\t} @else {\n\t\t\t\t\t\t\t\t\t\t{{ row.cultureCode.slice(0, 2).toUpperCase() }}\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t</ng-template>\n\t\t\t\t\t\t\t<ng-template #aiSuffix>\n\t\t\t\t\t\t\t\t<button\n\t\t\t\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\t\t\t\t[size]=\"formFieldSize() === 'S' ? 'XS' : 'S'\"\n\t\t\t\t\t\t\t\t\tluButton=\"AI\"\n\t\t\t\t\t\t\t\t\t[luTooltip]=\"intl().translateWithAI\"\n\t\t\t\t\t\t\t\t\tluTooltipOnlyForDisplay\n\t\t\t\t\t\t\t\t\t[disabled]=\"disabledInternal()\"\n\t\t\t\t\t\t\t\t\t(click)=\"translateWithAI.emit(row.cultureCode)\"\n\t\t\t\t\t\t\t\t\tclass=\"multilanguage_popover-content-button\"\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t<lu-icon icon=\"officePenStar\" alt=\"intl().translateWithAI\" />\n\t\t\t\t\t\t\t\t</button>\n\t\t\t\t\t\t\t</ng-template>\n\t\t\t\t\t\t\t<lu-form-field\n\t\t\t\t\t\t\t\t[size]=\"formFieldSize()\"\n\t\t\t\t\t\t\t\t[label]=\"intl().translateTo | intlParams: { lang: getLocaleDisplayName(row.cultureCode) }\"\n\t\t\t\t\t\t\t\thiddenLabel\n\t\t\t\t\t\t\t\t[errorInlineMessage]=\"formFieldRef.isInputRequired() && !row.value ? intl().requiredError : ''\"\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<lu-text-input\n\t\t\t\t\t\t\t\t\t[prefix]=\"{ content: prefixLang, ariaLabel: '' }\"\n\t\t\t\t\t\t\t\t\t[(ngModel)]=\"row.value\"\n\t\t\t\t\t\t\t\t\t[required]=\"formFieldRef.isInputRequired()\"\n\t\t\t\t\t\t\t\t\t(ngModelChange)=\"valueChange()\"\n\t\t\t\t\t\t\t\t\t[ngModelOptions]=\"{ standalone: true }\"\n\t\t\t\t\t\t\t\t\t[disabled]=\"disabledInternal()\"\n\t\t\t\t\t\t\t\t\t[autocomplete]=\"autocomplete()\"\n\t\t\t\t\t\t\t\t\t[suffix]=\"hasAIButtons() ? { content: aiSuffix, ariaLabel: '' } : null\"\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</lu-form-field>\n\t\t\t\t\t\t}\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t</ng-template>\n\t\t</div>\n\t</div>\n</div>\n<ng-container *luPresentationDisplayDefault>\n\t@if (presentationValue()) {\n\t\t{{ presentationValue() }}\n\t} @else {\n\t\t<span aria-hidden=\"true\" data-content-before=\"\u2013\"></span>\n\t}\n</ng-container>\n", styles: ["@layer components{.multilanguage_popover-content.popover-contentOptional{max-block-size:20rem;max-inline-size:100%;overflow:auto}.multilanguage_popover-content.popover-contentOptional .multilanguage_popover-content-button{padding:var(--pr-t-spacings-50)}.multilanguage_popover-content.popover-contentOptional .textField:not(:focus-within,:hover) .multilanguage_popover-content-button{border:0;clip-path:rect(1px 1px 1px 1px);margin:-1px;overflow:hidden;padding:0;position:absolute;block-size:1px;inline-size:1px;white-space:nowrap;contain:paint}}@layer mods{.multilanguage_popover-content.popover-contentOptional:focus-visible{outline:2px solid var(--palettes-700, var(--palettes-product-700));outline-offset:2px;border-radius:var(--pr-t-border-radius-structure)}}\n"], dependencies: [{ kind: "component", type: FormFieldComponent, selector: "lu-form-field", inputs: ["intl", "label", "hiddenLabel", "rolePresentationLabel", "inline", "statusControl", "tooltip", "tag", "AI", "iconAItooltip", "iconAIalt", "width", "invalid", "inlineMessage", "errorInlineMessage", "inlineMessageState", "size", "extraDescribedBy", "layout", "counter", "presentation"], outputs: ["rolePresentationLabelChange", "layoutChange"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: PopoverDirective, selector: "[luPopover2]", inputs: ["intl", "luPopover2", "luPopoverPosition", "luPopoverMaxBlockSize", "luPopoverMaxInlineSize", "overlayScrollStrategy", "luPopoverDisabled", "luPopoverTrigger", "customPositions", "luPopoverNoCloseButton", "luPopoverAnchor", "luPopoverOpenDelay", "luPopoverCloseDelay"], outputs: ["luPopoverTriggerChange", "luPopoverClosed", "luPopoverOpened"], exportAs: ["luPopover2"] }, { kind: "component", type: TextInputComponent, selector: "lu-text-input", inputs: ["intl", "mask", "placeholder", "autocomplete", "hasClearer", "hasSearchIcon", "valueAlignRight", "prefix", "suffix", "searchIcon", "type"], outputs: ["blur"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: InputDirective, selector: "[luInput]", inputs: ["luInputStandalone"] }, { kind: "directive", type: LuTooltipTriggerDirective, selector: "[luTooltip]", inputs: ["luTooltip", "luTooltipEnterDelay", "luTooltipLeaveDelay", "luTooltipDisabled", "luTooltipOnlyForDisplay", "luTooltipPosition", "luTooltipWhenEllipsis", "luTooltipAnchor", "id"], exportAs: ["luTooltip"] }, { kind: "directive", type: _PresentationDisplayDefaultDirective, selector: "[luPresentationDisplayDefault]" }, { kind: "component", type: IconComponent, selector: "lu-icon, pr-icon", inputs: ["icon", "alt", "size", "color", "AI"] }, { kind: "component", type: ButtonComponent, selector: "button[luButton], a[luButton], span[luButton], button[prButton], a[prButton], span[prButton]", inputs: ["size", "block", "critical", "delete", "disclosure", "palette", "state", "luButton", "prButton"] }, { kind: "pipe", type: IntlParamsPipe, name: "intlParams" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
427
431
  }
428
432
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: MultilanguageInputComponent, decorators: [{
429
433
  type: Component,
@@ -446,8 +450,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImpo
446
450
  useExisting: forwardRef(() => MultilanguageInputComponent),
447
451
  multi: true,
448
452
  },
449
- ], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"textField mod-multilanguage\">\n\t<div class=\"textField-input\">\n\t\t<input\n\t\t\tluInput\n\t\t\ttype=\"text\"\n\t\t\tclass=\"textField-input-value\"\n\t\t\t[placeholder]=\"placeholder()\"\n\t\t\t[(ngModel)]=\"displayRow().value\"\n\t\t\t(ngModelChange)=\"valueChange()\"\n\t\t\t[ngModelOptions]=\"{ standalone: true }\"\n\t\t\t(blur)=\"onTouched?.()\"\n\t\t\t(focus)=\"shouldOpenOnFocus() ? popoverRef.openPopover(true, true, true) : null\"\n\t\t\t[disabled]=\"disabledInternal()\"\n\t\t\t[autocomplete]=\"autocomplete()\"\n\t\t\t#inputElement\n\t\t/>\n\t\t<div class=\"textField-input-affix\">\n\t\t\t<button\n\t\t\t\t[luPopover2]=\"popoverMultilanguage\"\n\t\t\t\t#popoverRef=\"luPopover2\"\n\t\t\t\tluPopoverNoCloseButton\n\t\t\t\t[customPositions]=\"popoverPositions\"\n\t\t\t\t[luTooltip]=\"intl().toggleMultilanguage\"\n\t\t\t\tluTooltipOnlyForDisplay\n\t\t\t\tluButton\n\t\t\t\ttype=\"button\"\n\t\t\t\tclass=\"textField-input-affix-toggle\"\n\t\t\t>\n\t\t\t\t<lu-icon icon=\"signTranslation\" [alt]=\"intl().toggleMultilanguage\" />\n\t\t\t</button>\n\t\t\t<ng-template #popoverMultilanguage>\n\t\t\t\t<div class=\"popover-contentOptional multilanguage_popover-content\" [style.inlineSize.rem]=\"getPopoverInlineSizeRem(inputElement)\">\n\t\t\t\t\t<div class=\"pr-u-displayFlex pr-u-gap100 pr-u-flexDirectionColumn\">\n\t\t\t\t\t\t@if (!hasNoInvariant()) {\n\t\t\t\t\t\t\t<p class=\"pr-u-colorTextSubtle\" [class]=\"formFieldSize() === 'S' ? 'pr-u-bodyXS' : 'pr-u-bodyS'\">\n\t\t\t\t\t\t\t\t{{ intl().invariantInfo }}\n\t\t\t\t\t\t\t</p>\n\t\t\t\t\t\t}\n\t\t\t\t\t\t@for (row of panelInputs(); track row.cultureCode) {\n\t\t\t\t\t\t\t<ng-template #prefixLang>\n\t\t\t\t\t\t\t\t<div class=\"textField-prefix-lang\">\n\t\t\t\t\t\t\t\t\t@if (formFieldRef.isInputRequired()) {\n\t\t\t\t\t\t\t\t\t\t{{ row.cultureCode.slice(0, 2).toUpperCase() }}<sup class=\"formLabel-required\" aria-hidden=\"true\">*</sup>\n\t\t\t\t\t\t\t\t\t} @else {\n\t\t\t\t\t\t\t\t\t\t{{ row.cultureCode.slice(0, 2).toUpperCase() }}\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t</ng-template>\n\t\t\t\t\t\t\t<ng-template #aiSuffix>\n\t\t\t\t\t\t\t\t<button\n\t\t\t\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\t\t\t\t[size]=\"formFieldSize() === 'S' ? 'XS' : 'S'\"\n\t\t\t\t\t\t\t\t\tluButton=\"AI\"\n\t\t\t\t\t\t\t\t\t[luTooltip]=\"intl().translateWithAI\"\n\t\t\t\t\t\t\t\t\tluTooltipOnlyForDisplay\n\t\t\t\t\t\t\t\t\t[disabled]=\"disabledInternal()\"\n\t\t\t\t\t\t\t\t\t(click)=\"translateWithAI.emit(row.cultureCode)\"\n\t\t\t\t\t\t\t\t\tclass=\"multilanguage_popover-content-button\"\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t<lu-icon icon=\"officePenStar\" alt=\"intl().translateWithAI\" />\n\t\t\t\t\t\t\t\t</button>\n\t\t\t\t\t\t\t</ng-template>\n\t\t\t\t\t\t\t<lu-form-field\n\t\t\t\t\t\t\t\t[size]=\"formFieldSize()\"\n\t\t\t\t\t\t\t\t[label]=\"intl().translateTo | intlParams: { lang: getLocaleDisplayName(row.cultureCode) }\"\n\t\t\t\t\t\t\t\thiddenLabel\n\t\t\t\t\t\t\t\t[errorInlineMessage]=\"formFieldRef.isInputRequired() && !row.value ? intl().requiredError : ''\"\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<lu-text-input\n\t\t\t\t\t\t\t\t\t[prefix]=\"{ content: prefixLang, ariaLabel: '' }\"\n\t\t\t\t\t\t\t\t\t[(ngModel)]=\"row.value\"\n\t\t\t\t\t\t\t\t\t[required]=\"formFieldRef.isInputRequired()\"\n\t\t\t\t\t\t\t\t\t(ngModelChange)=\"valueChange()\"\n\t\t\t\t\t\t\t\t\t[ngModelOptions]=\"{ standalone: true }\"\n\t\t\t\t\t\t\t\t\t[disabled]=\"disabledInternal()\"\n\t\t\t\t\t\t\t\t\t[autocomplete]=\"autocomplete()\"\n\t\t\t\t\t\t\t\t\t[suffix]=\"{ content: aiSuffix, ariaLabel: '' }\"\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</lu-form-field>\n\t\t\t\t\t\t}\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t</ng-template>\n\t\t</div>\n\t</div>\n</div>\n<ng-container *luPresentationDisplayDefault>\n\t@if (presentationValue()) {\n\t\t{{ presentationValue() }}\n\t} @else {\n\t\t<span aria-hidden=\"true\" data-content-before=\"\u2013\"></span>\n\t}\n</ng-container>\n", styles: ["@layer components{.multilanguage_popover-content.popover-contentOptional{max-block-size:20rem;max-inline-size:100%;overflow:auto}.multilanguage_popover-content.popover-contentOptional .multilanguage_popover-content-button{padding:var(--pr-t-spacings-50)}.multilanguage_popover-content.popover-contentOptional .textField:not(:focus-within,:hover) .multilanguage_popover-content-button{border:0;clip-path:rect(1px 1px 1px 1px);margin:-1px;overflow:hidden;padding:0;position:absolute;block-size:1px;inline-size:1px;white-space:nowrap;contain:paint}}@layer mods{.multilanguage_popover-content.popover-contentOptional:focus-visible{outline:2px solid var(--palettes-700, var(--palettes-product-700));outline-offset:2px;border-radius:var(--pr-t-border-radius-structure)}}\n"] }]
450
- }], ctorParameters: () => [], propDecorators: { intl: [{ type: i0.Input, args: [{ isSignal: true, alias: "intl", required: false }] }], placeholder: [{ type: i0.Input, args: [{ isSignal: true, alias: "placeholder", required: false }] }], openOnFocus: [{ type: i0.Input, args: [{ isSignal: true, alias: "openOnFocus", required: false }] }], autocomplete: [{ type: i0.Input, args: [{ isSignal: true, alias: "autocomplete", required: false }] }], hasNoInvariant: [{ type: i0.Input, args: [{ isSignal: true, alias: "hasNoInvariant", required: false }] }], displayLocale: [{ type: i0.Input, args: [{ isSignal: true, alias: "displayLocale", required: false }] }], translateWithAI: [{ type: i0.Output, args: ["translateWithAI"] }] } });
453
+ ], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"textField mod-multilanguage\">\n\t@if (hasNoInvariant()) {\n\t\t<div class=\"textField-prefix\">\n\t\t\t<div class=\"textField-prefix-lang\">\n\t\t\t\t@if (formFieldRef.isInputRequired()) {\n\t\t\t\t\t{{ cultureCodeDisplay() }}<sup class=\"formLabel-required\" aria-hidden=\"true\">*</sup>\n\t\t\t\t} @else {\n\t\t\t\t\t{{ cultureCodeDisplay() }}\n\t\t\t\t}\n\t\t\t</div>\n\t\t</div>\n\t}\n\t<div class=\"textField-input\">\n\t\t<input\n\t\t\tluInput\n\t\t\ttype=\"text\"\n\t\t\tclass=\"textField-input-value\"\n\t\t\t[placeholder]=\"placeholder()\"\n\t\t\t[(ngModel)]=\"displayRow().value\"\n\t\t\t(ngModelChange)=\"valueChange()\"\n\t\t\t[ngModelOptions]=\"{ standalone: true }\"\n\t\t\t(blur)=\"onTouched?.()\"\n\t\t\t(focus)=\"shouldOpenOnFocus() ? popoverRef.openPopover(true, true, true) : null\"\n\t\t\t[disabled]=\"disabledInternal()\"\n\t\t\t[autocomplete]=\"autocomplete()\"\n\t\t\t#inputElement\n\t\t/>\n\t\t<div class=\"textField-input-affix\">\n\t\t\t<button\n\t\t\t\t[luPopover2]=\"popoverMultilanguage\"\n\t\t\t\t#popoverRef=\"luPopover2\"\n\t\t\t\tluPopoverNoCloseButton\n\t\t\t\t[customPositions]=\"popoverPositions\"\n\t\t\t\t[luTooltip]=\"intl().toggleMultilanguage\"\n\t\t\t\tluTooltipOnlyForDisplay\n\t\t\t\tluButton\n\t\t\t\ttype=\"button\"\n\t\t\t\tclass=\"textField-input-affix-toggle\"\n\t\t\t>\n\t\t\t\t<lu-icon icon=\"signTranslation\" [alt]=\"intl().toggleMultilanguage\" />\n\t\t\t</button>\n\t\t\t<ng-template #popoverMultilanguage>\n\t\t\t\t<div class=\"popover-contentOptional multilanguage_popover-content\" [style.inlineSize.rem]=\"getPopoverInlineSizeRem(inputElement)\">\n\t\t\t\t\t<div class=\"pr-u-displayFlex pr-u-gap100 pr-u-flexDirectionColumn\">\n\t\t\t\t\t\t@if (!hasNoInvariant()) {\n\t\t\t\t\t\t\t<p class=\"pr-u-colorTextSubtle\" [class]=\"formFieldSize() === 'S' ? 'pr-u-bodyXS' : 'pr-u-bodyS'\">\n\t\t\t\t\t\t\t\t{{ intl().invariantInfo }}\n\t\t\t\t\t\t\t</p>\n\t\t\t\t\t\t}\n\t\t\t\t\t\t@for (row of panelInputs(); track row.cultureCode) {\n\t\t\t\t\t\t\t<ng-template #prefixLang>\n\t\t\t\t\t\t\t\t<div class=\"textField-prefix-lang\">\n\t\t\t\t\t\t\t\t\t@if (formFieldRef.isInputRequired()) {\n\t\t\t\t\t\t\t\t\t\t{{ row.cultureCode.slice(0, 2).toUpperCase() }}<sup class=\"formLabel-required\" aria-hidden=\"true\">*</sup>\n\t\t\t\t\t\t\t\t\t} @else {\n\t\t\t\t\t\t\t\t\t\t{{ row.cultureCode.slice(0, 2).toUpperCase() }}\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t</ng-template>\n\t\t\t\t\t\t\t<ng-template #aiSuffix>\n\t\t\t\t\t\t\t\t<button\n\t\t\t\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\t\t\t\t[size]=\"formFieldSize() === 'S' ? 'XS' : 'S'\"\n\t\t\t\t\t\t\t\t\tluButton=\"AI\"\n\t\t\t\t\t\t\t\t\t[luTooltip]=\"intl().translateWithAI\"\n\t\t\t\t\t\t\t\t\tluTooltipOnlyForDisplay\n\t\t\t\t\t\t\t\t\t[disabled]=\"disabledInternal()\"\n\t\t\t\t\t\t\t\t\t(click)=\"translateWithAI.emit(row.cultureCode)\"\n\t\t\t\t\t\t\t\t\tclass=\"multilanguage_popover-content-button\"\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t<lu-icon icon=\"officePenStar\" alt=\"intl().translateWithAI\" />\n\t\t\t\t\t\t\t\t</button>\n\t\t\t\t\t\t\t</ng-template>\n\t\t\t\t\t\t\t<lu-form-field\n\t\t\t\t\t\t\t\t[size]=\"formFieldSize()\"\n\t\t\t\t\t\t\t\t[label]=\"intl().translateTo | intlParams: { lang: getLocaleDisplayName(row.cultureCode) }\"\n\t\t\t\t\t\t\t\thiddenLabel\n\t\t\t\t\t\t\t\t[errorInlineMessage]=\"formFieldRef.isInputRequired() && !row.value ? intl().requiredError : ''\"\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<lu-text-input\n\t\t\t\t\t\t\t\t\t[prefix]=\"{ content: prefixLang, ariaLabel: '' }\"\n\t\t\t\t\t\t\t\t\t[(ngModel)]=\"row.value\"\n\t\t\t\t\t\t\t\t\t[required]=\"formFieldRef.isInputRequired()\"\n\t\t\t\t\t\t\t\t\t(ngModelChange)=\"valueChange()\"\n\t\t\t\t\t\t\t\t\t[ngModelOptions]=\"{ standalone: true }\"\n\t\t\t\t\t\t\t\t\t[disabled]=\"disabledInternal()\"\n\t\t\t\t\t\t\t\t\t[autocomplete]=\"autocomplete()\"\n\t\t\t\t\t\t\t\t\t[suffix]=\"hasAIButtons() ? { content: aiSuffix, ariaLabel: '' } : null\"\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</lu-form-field>\n\t\t\t\t\t\t}\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t</ng-template>\n\t\t</div>\n\t</div>\n</div>\n<ng-container *luPresentationDisplayDefault>\n\t@if (presentationValue()) {\n\t\t{{ presentationValue() }}\n\t} @else {\n\t\t<span aria-hidden=\"true\" data-content-before=\"\u2013\"></span>\n\t}\n</ng-container>\n", styles: ["@layer components{.multilanguage_popover-content.popover-contentOptional{max-block-size:20rem;max-inline-size:100%;overflow:auto}.multilanguage_popover-content.popover-contentOptional .multilanguage_popover-content-button{padding:var(--pr-t-spacings-50)}.multilanguage_popover-content.popover-contentOptional .textField:not(:focus-within,:hover) .multilanguage_popover-content-button{border:0;clip-path:rect(1px 1px 1px 1px);margin:-1px;overflow:hidden;padding:0;position:absolute;block-size:1px;inline-size:1px;white-space:nowrap;contain:paint}}@layer mods{.multilanguage_popover-content.popover-contentOptional:focus-visible{outline:2px solid var(--palettes-700, var(--palettes-product-700));outline-offset:2px;border-radius:var(--pr-t-border-radius-structure)}}\n"] }]
454
+ }], ctorParameters: () => [], propDecorators: { intl: [{ type: i0.Input, args: [{ isSignal: true, alias: "intl", required: false }] }], placeholder: [{ type: i0.Input, args: [{ isSignal: true, alias: "placeholder", required: false }] }], openOnFocus: [{ type: i0.Input, args: [{ isSignal: true, alias: "openOnFocus", required: false }] }], autocomplete: [{ type: i0.Input, args: [{ isSignal: true, alias: "autocomplete", required: false }] }], hasNoInvariant: [{ type: i0.Input, args: [{ isSignal: true, alias: "hasNoInvariant", required: false }] }], hasAIButtons: [{ type: i0.Input, args: [{ isSignal: true, alias: "hasAIButtons", required: false }] }], displayLocale: [{ type: i0.Input, args: [{ isSignal: true, alias: "displayLocale", required: false }] }], translateWithAI: [{ type: i0.Output, args: ["translateWithAI"] }] } });
451
455
 
452
456
  function areAllLanguagesFilled(model) {
453
457
  return model.every((row) => row.value?.length > 0);
@@ -799,11 +803,11 @@ class FieldsetComponent {
799
803
  this.id = `fieldsetTitleContent${nextId++}`;
800
804
  }
801
805
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: FieldsetComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
802
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.14", type: FieldsetComponent, isStandalone: true, selector: "lu-fieldset", inputs: { heading: { classPropertyName: "heading", publicName: "heading", isSignal: true, isRequired: false, transformFunction: null }, helper: { classPropertyName: "helper", publicName: "helper", isSignal: true, isRequired: false, transformFunction: null }, action: { classPropertyName: "action", publicName: "action", isSignal: true, isRequired: false, transformFunction: null }, size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null }, horizontal: { classPropertyName: "horizontal", publicName: "horizontal", isSignal: true, isRequired: false, transformFunction: null }, expandable: { classPropertyName: "expandable", publicName: "expandable", isSignal: true, isRequired: false, transformFunction: null }, hiddenLegend: { classPropertyName: "hiddenLegend", publicName: "hiddenLegend", isSignal: true, isRequired: false, transformFunction: null }, expanded: { classPropertyName: "expanded", publicName: "expanded", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { expanded: "expandedChange" }, ngImport: i0, template: "<fieldset\n\tclass=\"fieldset\"\n\t[attr.aria-labelledby]=\"id\"\n\t[class.mod-expandable]=\"expandable()\"\n\t[class.mod-horizontal]=\"horizontal()\"\n\t[class.mod-S]=\"size() === 'S'\"\n\t[class.mod-hiddenLegend]=\"hiddenLegend()\"\n>\n\t<legend class=\"fieldset-title\">\n\t\t@if (expandable()) {\n\t\t\t<button\n\t\t\t\ttype=\"button\"\n\t\t\t\tclass=\"fieldset-title-content\"\n\t\t\t\t[attr.id]=\"id\"\n\t\t\t\t[attr.aria-expanded]=\"expanded()\"\n\t\t\t\t(click)=\"expanded.set(!expanded())\"\n\t\t\t>\n\t\t\t\t<ng-container *ngTemplateOutlet=\"titleContent\" />\n\t\t\t\t<span luButton=\"ghost\" size=\"S\"><lu-icon icon=\"arrowChevronBottom\" /></span>\n\t\t\t</button>\n\t\t} @else if (action()) {\n\t\t\t<span class=\"fieldset-title-content\">\n\t\t\t\t<span class=\"pr-u-displayFlex\" [attr.id]=\"id\">\n\t\t\t\t\t<ng-container *ngTemplateOutlet=\"titleContent\" />\n\t\t\t\t</span>\n\t\t\t\t<div class=\"fieldset-title-content-action\">\n\t\t\t\t\t<ng-container *luPortal=\"action()\" />\n\t\t\t\t</div>\n\t\t\t</span>\n\t\t} @else {\n\t\t\t<span class=\"fieldset-title-content\" [attr.id]=\"id\">\n\t\t\t\t<ng-container *ngTemplateOutlet=\"titleContent\" />\n\t\t\t</span>\n\t\t}\n\t</legend>\n\t<div class=\"fieldset-content\" [attr.hidden]=\"!expandable() || expanded() ? null : 'hidden'\"><ng-content /></div>\n</fieldset>\n\n<ng-template #titleContent>\n\t<span class=\"fieldset-title-content-text\">\n\t\t<ng-container *luPortal=\"heading()\" />\n\t\t@if (helper()) {\n\t\t\t<span class=\"fieldset-title-content-text-helper\"><ng-container *luPortal=\"helper()\" /></span>\n\t\t}\n\t</span>\n</ng-template>\n", styles: ["@layer components{.fieldset{--components-fieldset-title: var(--pr-t-font-heading-3);--components-fieldset-gap: var(--pr-t-spacings-100);--components-fieldset-contentMaxWidth: var(--components-form-maxWidth, 50rem);--components-fieldset-title-iconRotation: 0deg;--components-fieldset-title-content-flexWrap: nowrap;border:0;margin:0;padding:0;display:grid;gap:var(--components-fieldset-gap);grid-template-columns:auto}.fieldset-title{font:var(--components-fieldset-title);color:var(--pr-t-color-text-heading);padding:0;margin:0;inline-size:100%;min-block-size:var(--pr-t-spacings-300);display:contents}.fieldset-title:has(.fieldset-title-content-text:empty){display:none}.fieldset-title-content{border:0;padding:0;margin:0;inline-size:100%;background-color:transparent;text-align:start;display:flex;flex-wrap:var(--components-fieldset-title-content-flexWrap);align-items:flex-start;justify-content:space-between;gap:var(--components-fieldset-gap);max-inline-size:var(--components-fieldset-contentMaxWidth)}.fieldset-title-content[aria-expanded] .icon-arrowChevronBottom{transform:rotate(var(--components-fieldset-title-iconRotation));transition-property:transform;transition-duration:var(--commons-animations-durations-fast);color:var(--palettes-neutral-700)}.fieldset-title-content-text{padding-block:var(--pr-t-spacings-50)}.fieldset-title-content-text-helper{font:var(--pr-t-font-body-S);font-weight:var(--pr-t-font-fontWeight-regular);color:var(--palettes-neutral-700);display:block}.fieldset-content{min-inline-size:0}}@layer mods{.fieldset.mod-S{--components-fieldset-title: var(--pr-t-font-heading-4)}.fieldset.mod-horizontal{grid-template-columns:1fr auto;--components-form-maxWidth: initial}.fieldset.mod-expandable .fieldset-title-content{border-radius:var(--pr-t-border-radius-default);cursor:pointer;font:inherit}.fieldset.mod-expandable .fieldset-title-content:focus-visible{outline:2px solid var(--palettes-700, var(--palettes-product-700));outline-offset:2px}.fieldset.mod-hiddenLegend{--components-fieldset-gap: 0}.fieldset.mod-hiddenLegend .fieldset-title-content-text{border:0;clip-path:rect(1px 1px 1px 1px);margin:-1px;overflow:hidden;padding:0;position:absolute;block-size:1px;inline-size:1px;white-space:nowrap;contain:paint}.fieldset:has(.fieldset-title-content[aria-expanded=true]){--components-fieldset-title-iconRotation: 180deg}.fieldset:has(.fieldset-title-content-action:not(:empty)) .fieldset-title-content-action .button{--components-button-backgroundColor: var(--palettes-neutral-0);--components-button-color: var(--palettes-700, var(--palettes-neutral-700));--components-button-boxShadow: var(--pr-t-elevation-shadow-button), 0 0 0 var(--commons-divider-width) var(--palettes-neutral-200)}.fieldset:has(.fieldset-title-content-action:not(:empty)) .fieldset-title-content-action .button:hover{--components-button-boxShadow: var(--pr-t-elevation-shadow-button), 0 0 0 var(--commons-divider-width) var(--palettes-300, var(--palettes-neutral-300));--components-button-color: var(--palettes-700, var(--palettes-neutral-700));--components-button-backgroundColor: var(--palettes-50, var(--palettes-neutral-50))}.fieldset:has(.fieldset-title-content-action:not(:empty)) .fieldset-title-content-action .button:active{--components-button-backgroundColor: var(--palettes-100, var(--palettes-neutral-100))}.fieldset:has(.fieldset-title-content-action:not(:empty)) .fieldset-title-content-action .button:focus-visible{outline:2px solid var(--palettes-700, var(--palettes-product-700));outline-offset:3px}.fieldset:has(.fieldset-title-content-action:not(:empty)) .fieldset-title-content-action .button:disabled{--components-button-backgroundColor: var(--palettes-neutral-0);--components-button-boxShadow: 0 0 0 1px var(--palettes-neutral-100);--components-button-color: var(--pr-t-color-text-disabled)}.fieldset:has(.fieldset-title-content-action:not(:empty)) .fieldset-title-content-action .button{--icon-size: 1.25rem;--components-button-font: var(--pr-t-font-body-S);--components-button-paddingBlock: var(--pr-t-spacings-75);--components-button-paddingInline: var(--pr-t-spacings-100);--components-button-gap: var(--pr-t-spacings-75)}.fieldset:has(.fieldset-title-content-action:not(:empty)) .fieldset-title-content-action .button .numericBadge{--components-numericBadge-size: 1.25rem;--components-numericBadge-borderRadius: var(--pr-t-border-radius-small);--components-numericBadge-font: var(--pr-t-font-body-XS);--components-numericBadge-fontSize: var(--pr-t-font-body-XS-fontSize);--components-numericBadge-lineHeight: var(--pr-t-font-body-XS-lineHeight)}.fieldset:has(.fieldset-title-content-action:not(:empty)) .fieldset-title-content-action .button{--components-button-font-size: var(--pr-t-font-body-S-fontSize);--components-button-line-height: var(--pr-t-font-body-S-lineHeight)}.fieldset:has(.fieldset-title-content-action:not(:empty)) .fieldset-title-content-action .button:after{font-size:var(--pr-t-font-body-S-lineHeight);block-size:var(--pr-t-font-body-S-lineHeight)}@media not all and (min-width:30em){.fieldset{--components-fieldset-title-content-flexWrap: wrap}}}\n"], dependencies: [{ kind: "directive", type: PortalDirective, selector: "[luPortal]", inputs: ["luPortal", "luPortalContext"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: IconComponent$1, selector: "lu-icon, pr-icon", inputs: ["icon", "alt", "size", "color", "AI"] }, { kind: "component", type: ButtonComponent, selector: "button[luButton], a[luButton], span[luButton], button[prButton], a[prButton], span[prButton]", inputs: ["size", "block", "critical", "delete", "disclosure", "palette", "state", "luButton", "prButton"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
806
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.14", type: FieldsetComponent, isStandalone: true, selector: "lu-fieldset", inputs: { heading: { classPropertyName: "heading", publicName: "heading", isSignal: true, isRequired: false, transformFunction: null }, helper: { classPropertyName: "helper", publicName: "helper", isSignal: true, isRequired: false, transformFunction: null }, action: { classPropertyName: "action", publicName: "action", isSignal: true, isRequired: false, transformFunction: null }, size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null }, horizontal: { classPropertyName: "horizontal", publicName: "horizontal", isSignal: true, isRequired: false, transformFunction: null }, expandable: { classPropertyName: "expandable", publicName: "expandable", isSignal: true, isRequired: false, transformFunction: null }, hiddenLegend: { classPropertyName: "hiddenLegend", publicName: "hiddenLegend", isSignal: true, isRequired: false, transformFunction: null }, expanded: { classPropertyName: "expanded", publicName: "expanded", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { expanded: "expandedChange" }, ngImport: i0, template: "<fieldset\n\tclass=\"fieldset\"\n\t[attr.aria-labelledby]=\"id\"\n\t[class.mod-expandable]=\"expandable()\"\n\t[class.mod-horizontal]=\"horizontal()\"\n\t[class.mod-S]=\"size() === 'S'\"\n\t[class.mod-hiddenLegend]=\"hiddenLegend()\"\n>\n\t<legend class=\"fieldset-title\">\n\t\t@if (expandable()) {\n\t\t\t<button\n\t\t\t\ttype=\"button\"\n\t\t\t\tclass=\"fieldset-title-content\"\n\t\t\t\t[attr.id]=\"id\"\n\t\t\t\t[attr.aria-expanded]=\"expanded()\"\n\t\t\t\t(click)=\"expanded.set(!expanded())\"\n\t\t\t>\n\t\t\t\t<ng-container *ngTemplateOutlet=\"titleContent\" />\n\t\t\t\t<span luButton=\"ghost\" size=\"S\"><lu-icon icon=\"arrowChevronBottom\" /></span>\n\t\t\t</button>\n\t\t} @else if (action()) {\n\t\t\t<span class=\"fieldset-title-content\">\n\t\t\t\t<span class=\"pr-u-displayFlex\" [attr.id]=\"id\">\n\t\t\t\t\t<ng-container *ngTemplateOutlet=\"titleContent\" />\n\t\t\t\t</span>\n\t\t\t\t<div class=\"fieldset-title-content-action\">\n\t\t\t\t\t<ng-container *luPortal=\"action()\" />\n\t\t\t\t</div>\n\t\t\t</span>\n\t\t} @else {\n\t\t\t<span class=\"fieldset-title-content\" [attr.id]=\"id\">\n\t\t\t\t<ng-container *ngTemplateOutlet=\"titleContent\" />\n\t\t\t</span>\n\t\t}\n\t</legend>\n\t<div class=\"fieldset-content\" [attr.hidden]=\"!expandable() || expanded() ? null : 'hidden'\"><ng-content /></div>\n</fieldset>\n\n<ng-template #titleContent>\n\t<span class=\"fieldset-title-content-text\">\n\t\t<ng-container *luPortal=\"heading()\" />\n\t\t@if (helper()) {\n\t\t\t<span class=\"fieldset-title-content-text-helper\"><ng-container *luPortal=\"helper()\" /></span>\n\t\t}\n\t</span>\n</ng-template>\n", styles: ["@layer components{.fieldset{--components-fieldset-title: var(--pr-t-font-heading-3);--components-fieldset-gap: var(--pr-t-spacings-100);--components-fieldset-contentMaxWidth: var(--components-form-maxWidth, 50rem);--components-fieldset-title-iconRotation: 0deg;--components-fieldset-title-content-flexWrap: nowrap;border:0;margin:0;padding:0;display:grid;gap:var(--components-fieldset-gap);grid-template-columns:auto}.fieldset-title{font:var(--components-fieldset-title);color:var(--pr-t-color-text-heading);padding:0;margin:0;inline-size:100%;min-block-size:var(--pr-t-spacings-300);display:contents}.fieldset-title:has(.fieldset-title-content-text:empty){display:none}.fieldset-title-content{border:0;padding:0;margin:0;inline-size:100%;background-color:transparent;text-align:start;display:flex;flex-wrap:var(--components-fieldset-title-content-flexWrap);align-items:flex-start;justify-content:space-between;gap:var(--components-fieldset-gap);max-inline-size:var(--components-fieldset-contentMaxWidth)}.fieldset-title-content[aria-expanded] .icon-arrowChevronBottom{transform:rotate(var(--components-fieldset-title-iconRotation));transition-property:transform;transition-duration:var(--commons-animations-durations-fast);color:var(--palettes-neutral-700)}.fieldset-title-content-text{padding-block:var(--pr-t-spacings-50)}.fieldset-title-content-text-helper{font:var(--pr-t-font-body-S);font-weight:var(--pr-t-font-fontWeight-regular);color:var(--palettes-neutral-700);display:block}.fieldset-content{min-inline-size:0}}@layer mods{.fieldset.mod-S{--components-fieldset-title: var(--pr-t-font-heading-4)}.fieldset.mod-horizontal{grid-template-columns:1fr auto;--components-form-maxWidth: initial}.fieldset.mod-expandable .fieldset-title-content{border-radius:var(--pr-t-border-radius-default);cursor:pointer;font:inherit}.fieldset.mod-expandable .fieldset-title-content:focus-visible{outline:2px solid var(--palettes-700, var(--palettes-product-700));outline-offset:2px}.fieldset.mod-hiddenLegend{--components-fieldset-gap: 0}.fieldset.mod-hiddenLegend .fieldset-title-content-text{border:0;clip-path:rect(1px 1px 1px 1px);margin:-1px;overflow:hidden;padding:0;position:absolute;block-size:1px;inline-size:1px;white-space:nowrap;contain:paint}.fieldset:has(.fieldset-title-content[aria-expanded=true]){--components-fieldset-title-iconRotation: 180deg}.fieldset:has(.fieldset-title-content-action:not(:empty)) .fieldset-title-content-action .button{--components-button-backgroundColor: var(--palettes-neutral-0);--components-button-color: var(--palettes-700, var(--palettes-neutral-700));--components-button-boxShadow: var(--pr-t-elevation-shadow-button), 0 0 0 var(--commons-divider-width) var(--palettes-neutral-200)}.fieldset:has(.fieldset-title-content-action:not(:empty)) .fieldset-title-content-action .button:hover{--components-button-boxShadow: var(--pr-t-elevation-shadow-button), 0 0 0 var(--commons-divider-width) var(--palettes-300, var(--palettes-neutral-300));--components-button-color: var(--palettes-700, var(--palettes-neutral-700));--components-button-backgroundColor: var(--palettes-50, var(--palettes-neutral-50))}.fieldset:has(.fieldset-title-content-action:not(:empty)) .fieldset-title-content-action .button:active{--components-button-backgroundColor: var(--palettes-100, var(--palettes-neutral-100))}.fieldset:has(.fieldset-title-content-action:not(:empty)) .fieldset-title-content-action .button:focus-visible{outline:2px solid var(--palettes-700, var(--palettes-product-700));outline-offset:3px}.fieldset:has(.fieldset-title-content-action:not(:empty)) .fieldset-title-content-action .button:disabled{--components-button-backgroundColor: var(--palettes-neutral-0);--components-button-boxShadow: 0 0 0 1px var(--palettes-neutral-100);--components-button-color: var(--pr-t-color-text-disabled)}.fieldset:has(.fieldset-title-content-action:not(:empty)) .fieldset-title-content-action .button{--icon-size: 1.25rem;--components-button-font: var(--pr-t-font-body-S);--components-button-paddingBlock: var(--pr-t-spacings-75);--components-button-paddingInline: var(--pr-t-spacings-100);--components-button-gap: var(--pr-t-spacings-75)}.fieldset:has(.fieldset-title-content-action:not(:empty)) .fieldset-title-content-action .button .numericBadge{--components-numericBadge-size: 1.25rem;--components-numericBadge-borderRadius: var(--pr-t-border-radius-small);--components-numericBadge-font: var(--pr-t-font-body-XS)}.fieldset:has(.fieldset-title-content-action:not(:empty)) .fieldset-title-content-action .button{--components-button-font-size: var(--pr-t-font-body-S-fontSize);--components-button-line-height: var(--pr-t-font-body-S-lineHeight)}.fieldset:has(.fieldset-title-content-action:not(:empty)) .fieldset-title-content-action .button:after{font-size:var(--pr-t-font-body-S-lineHeight);block-size:var(--pr-t-font-body-S-lineHeight)}@media not all and (min-width:30em){.fieldset{--components-fieldset-title-content-flexWrap: wrap}}}\n"], dependencies: [{ kind: "directive", type: PortalDirective, selector: "[luPortal]", inputs: ["luPortal", "luPortalContext"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: IconComponent$1, selector: "lu-icon, pr-icon", inputs: ["icon", "alt", "size", "color", "AI"] }, { kind: "component", type: ButtonComponent, selector: "button[luButton], a[luButton], span[luButton], button[prButton], a[prButton], span[prButton]", inputs: ["size", "block", "critical", "delete", "disclosure", "palette", "state", "luButton", "prButton"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
803
807
  }
804
808
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: FieldsetComponent, decorators: [{
805
809
  type: Component,
806
- args: [{ selector: 'lu-fieldset', encapsulation: ViewEncapsulation.None, imports: [PortalDirective, NgTemplateOutlet, IconComponent$1, ButtonComponent], changeDetection: ChangeDetectionStrategy.OnPush, template: "<fieldset\n\tclass=\"fieldset\"\n\t[attr.aria-labelledby]=\"id\"\n\t[class.mod-expandable]=\"expandable()\"\n\t[class.mod-horizontal]=\"horizontal()\"\n\t[class.mod-S]=\"size() === 'S'\"\n\t[class.mod-hiddenLegend]=\"hiddenLegend()\"\n>\n\t<legend class=\"fieldset-title\">\n\t\t@if (expandable()) {\n\t\t\t<button\n\t\t\t\ttype=\"button\"\n\t\t\t\tclass=\"fieldset-title-content\"\n\t\t\t\t[attr.id]=\"id\"\n\t\t\t\t[attr.aria-expanded]=\"expanded()\"\n\t\t\t\t(click)=\"expanded.set(!expanded())\"\n\t\t\t>\n\t\t\t\t<ng-container *ngTemplateOutlet=\"titleContent\" />\n\t\t\t\t<span luButton=\"ghost\" size=\"S\"><lu-icon icon=\"arrowChevronBottom\" /></span>\n\t\t\t</button>\n\t\t} @else if (action()) {\n\t\t\t<span class=\"fieldset-title-content\">\n\t\t\t\t<span class=\"pr-u-displayFlex\" [attr.id]=\"id\">\n\t\t\t\t\t<ng-container *ngTemplateOutlet=\"titleContent\" />\n\t\t\t\t</span>\n\t\t\t\t<div class=\"fieldset-title-content-action\">\n\t\t\t\t\t<ng-container *luPortal=\"action()\" />\n\t\t\t\t</div>\n\t\t\t</span>\n\t\t} @else {\n\t\t\t<span class=\"fieldset-title-content\" [attr.id]=\"id\">\n\t\t\t\t<ng-container *ngTemplateOutlet=\"titleContent\" />\n\t\t\t</span>\n\t\t}\n\t</legend>\n\t<div class=\"fieldset-content\" [attr.hidden]=\"!expandable() || expanded() ? null : 'hidden'\"><ng-content /></div>\n</fieldset>\n\n<ng-template #titleContent>\n\t<span class=\"fieldset-title-content-text\">\n\t\t<ng-container *luPortal=\"heading()\" />\n\t\t@if (helper()) {\n\t\t\t<span class=\"fieldset-title-content-text-helper\"><ng-container *luPortal=\"helper()\" /></span>\n\t\t}\n\t</span>\n</ng-template>\n", styles: ["@layer components{.fieldset{--components-fieldset-title: var(--pr-t-font-heading-3);--components-fieldset-gap: var(--pr-t-spacings-100);--components-fieldset-contentMaxWidth: var(--components-form-maxWidth, 50rem);--components-fieldset-title-iconRotation: 0deg;--components-fieldset-title-content-flexWrap: nowrap;border:0;margin:0;padding:0;display:grid;gap:var(--components-fieldset-gap);grid-template-columns:auto}.fieldset-title{font:var(--components-fieldset-title);color:var(--pr-t-color-text-heading);padding:0;margin:0;inline-size:100%;min-block-size:var(--pr-t-spacings-300);display:contents}.fieldset-title:has(.fieldset-title-content-text:empty){display:none}.fieldset-title-content{border:0;padding:0;margin:0;inline-size:100%;background-color:transparent;text-align:start;display:flex;flex-wrap:var(--components-fieldset-title-content-flexWrap);align-items:flex-start;justify-content:space-between;gap:var(--components-fieldset-gap);max-inline-size:var(--components-fieldset-contentMaxWidth)}.fieldset-title-content[aria-expanded] .icon-arrowChevronBottom{transform:rotate(var(--components-fieldset-title-iconRotation));transition-property:transform;transition-duration:var(--commons-animations-durations-fast);color:var(--palettes-neutral-700)}.fieldset-title-content-text{padding-block:var(--pr-t-spacings-50)}.fieldset-title-content-text-helper{font:var(--pr-t-font-body-S);font-weight:var(--pr-t-font-fontWeight-regular);color:var(--palettes-neutral-700);display:block}.fieldset-content{min-inline-size:0}}@layer mods{.fieldset.mod-S{--components-fieldset-title: var(--pr-t-font-heading-4)}.fieldset.mod-horizontal{grid-template-columns:1fr auto;--components-form-maxWidth: initial}.fieldset.mod-expandable .fieldset-title-content{border-radius:var(--pr-t-border-radius-default);cursor:pointer;font:inherit}.fieldset.mod-expandable .fieldset-title-content:focus-visible{outline:2px solid var(--palettes-700, var(--palettes-product-700));outline-offset:2px}.fieldset.mod-hiddenLegend{--components-fieldset-gap: 0}.fieldset.mod-hiddenLegend .fieldset-title-content-text{border:0;clip-path:rect(1px 1px 1px 1px);margin:-1px;overflow:hidden;padding:0;position:absolute;block-size:1px;inline-size:1px;white-space:nowrap;contain:paint}.fieldset:has(.fieldset-title-content[aria-expanded=true]){--components-fieldset-title-iconRotation: 180deg}.fieldset:has(.fieldset-title-content-action:not(:empty)) .fieldset-title-content-action .button{--components-button-backgroundColor: var(--palettes-neutral-0);--components-button-color: var(--palettes-700, var(--palettes-neutral-700));--components-button-boxShadow: var(--pr-t-elevation-shadow-button), 0 0 0 var(--commons-divider-width) var(--palettes-neutral-200)}.fieldset:has(.fieldset-title-content-action:not(:empty)) .fieldset-title-content-action .button:hover{--components-button-boxShadow: var(--pr-t-elevation-shadow-button), 0 0 0 var(--commons-divider-width) var(--palettes-300, var(--palettes-neutral-300));--components-button-color: var(--palettes-700, var(--palettes-neutral-700));--components-button-backgroundColor: var(--palettes-50, var(--palettes-neutral-50))}.fieldset:has(.fieldset-title-content-action:not(:empty)) .fieldset-title-content-action .button:active{--components-button-backgroundColor: var(--palettes-100, var(--palettes-neutral-100))}.fieldset:has(.fieldset-title-content-action:not(:empty)) .fieldset-title-content-action .button:focus-visible{outline:2px solid var(--palettes-700, var(--palettes-product-700));outline-offset:3px}.fieldset:has(.fieldset-title-content-action:not(:empty)) .fieldset-title-content-action .button:disabled{--components-button-backgroundColor: var(--palettes-neutral-0);--components-button-boxShadow: 0 0 0 1px var(--palettes-neutral-100);--components-button-color: var(--pr-t-color-text-disabled)}.fieldset:has(.fieldset-title-content-action:not(:empty)) .fieldset-title-content-action .button{--icon-size: 1.25rem;--components-button-font: var(--pr-t-font-body-S);--components-button-paddingBlock: var(--pr-t-spacings-75);--components-button-paddingInline: var(--pr-t-spacings-100);--components-button-gap: var(--pr-t-spacings-75)}.fieldset:has(.fieldset-title-content-action:not(:empty)) .fieldset-title-content-action .button .numericBadge{--components-numericBadge-size: 1.25rem;--components-numericBadge-borderRadius: var(--pr-t-border-radius-small);--components-numericBadge-font: var(--pr-t-font-body-XS);--components-numericBadge-fontSize: var(--pr-t-font-body-XS-fontSize);--components-numericBadge-lineHeight: var(--pr-t-font-body-XS-lineHeight)}.fieldset:has(.fieldset-title-content-action:not(:empty)) .fieldset-title-content-action .button{--components-button-font-size: var(--pr-t-font-body-S-fontSize);--components-button-line-height: var(--pr-t-font-body-S-lineHeight)}.fieldset:has(.fieldset-title-content-action:not(:empty)) .fieldset-title-content-action .button:after{font-size:var(--pr-t-font-body-S-lineHeight);block-size:var(--pr-t-font-body-S-lineHeight)}@media not all and (min-width:30em){.fieldset{--components-fieldset-title-content-flexWrap: wrap}}}\n"] }]
810
+ args: [{ selector: 'lu-fieldset', encapsulation: ViewEncapsulation.None, imports: [PortalDirective, NgTemplateOutlet, IconComponent$1, ButtonComponent], changeDetection: ChangeDetectionStrategy.OnPush, template: "<fieldset\n\tclass=\"fieldset\"\n\t[attr.aria-labelledby]=\"id\"\n\t[class.mod-expandable]=\"expandable()\"\n\t[class.mod-horizontal]=\"horizontal()\"\n\t[class.mod-S]=\"size() === 'S'\"\n\t[class.mod-hiddenLegend]=\"hiddenLegend()\"\n>\n\t<legend class=\"fieldset-title\">\n\t\t@if (expandable()) {\n\t\t\t<button\n\t\t\t\ttype=\"button\"\n\t\t\t\tclass=\"fieldset-title-content\"\n\t\t\t\t[attr.id]=\"id\"\n\t\t\t\t[attr.aria-expanded]=\"expanded()\"\n\t\t\t\t(click)=\"expanded.set(!expanded())\"\n\t\t\t>\n\t\t\t\t<ng-container *ngTemplateOutlet=\"titleContent\" />\n\t\t\t\t<span luButton=\"ghost\" size=\"S\"><lu-icon icon=\"arrowChevronBottom\" /></span>\n\t\t\t</button>\n\t\t} @else if (action()) {\n\t\t\t<span class=\"fieldset-title-content\">\n\t\t\t\t<span class=\"pr-u-displayFlex\" [attr.id]=\"id\">\n\t\t\t\t\t<ng-container *ngTemplateOutlet=\"titleContent\" />\n\t\t\t\t</span>\n\t\t\t\t<div class=\"fieldset-title-content-action\">\n\t\t\t\t\t<ng-container *luPortal=\"action()\" />\n\t\t\t\t</div>\n\t\t\t</span>\n\t\t} @else {\n\t\t\t<span class=\"fieldset-title-content\" [attr.id]=\"id\">\n\t\t\t\t<ng-container *ngTemplateOutlet=\"titleContent\" />\n\t\t\t</span>\n\t\t}\n\t</legend>\n\t<div class=\"fieldset-content\" [attr.hidden]=\"!expandable() || expanded() ? null : 'hidden'\"><ng-content /></div>\n</fieldset>\n\n<ng-template #titleContent>\n\t<span class=\"fieldset-title-content-text\">\n\t\t<ng-container *luPortal=\"heading()\" />\n\t\t@if (helper()) {\n\t\t\t<span class=\"fieldset-title-content-text-helper\"><ng-container *luPortal=\"helper()\" /></span>\n\t\t}\n\t</span>\n</ng-template>\n", styles: ["@layer components{.fieldset{--components-fieldset-title: var(--pr-t-font-heading-3);--components-fieldset-gap: var(--pr-t-spacings-100);--components-fieldset-contentMaxWidth: var(--components-form-maxWidth, 50rem);--components-fieldset-title-iconRotation: 0deg;--components-fieldset-title-content-flexWrap: nowrap;border:0;margin:0;padding:0;display:grid;gap:var(--components-fieldset-gap);grid-template-columns:auto}.fieldset-title{font:var(--components-fieldset-title);color:var(--pr-t-color-text-heading);padding:0;margin:0;inline-size:100%;min-block-size:var(--pr-t-spacings-300);display:contents}.fieldset-title:has(.fieldset-title-content-text:empty){display:none}.fieldset-title-content{border:0;padding:0;margin:0;inline-size:100%;background-color:transparent;text-align:start;display:flex;flex-wrap:var(--components-fieldset-title-content-flexWrap);align-items:flex-start;justify-content:space-between;gap:var(--components-fieldset-gap);max-inline-size:var(--components-fieldset-contentMaxWidth)}.fieldset-title-content[aria-expanded] .icon-arrowChevronBottom{transform:rotate(var(--components-fieldset-title-iconRotation));transition-property:transform;transition-duration:var(--commons-animations-durations-fast);color:var(--palettes-neutral-700)}.fieldset-title-content-text{padding-block:var(--pr-t-spacings-50)}.fieldset-title-content-text-helper{font:var(--pr-t-font-body-S);font-weight:var(--pr-t-font-fontWeight-regular);color:var(--palettes-neutral-700);display:block}.fieldset-content{min-inline-size:0}}@layer mods{.fieldset.mod-S{--components-fieldset-title: var(--pr-t-font-heading-4)}.fieldset.mod-horizontal{grid-template-columns:1fr auto;--components-form-maxWidth: initial}.fieldset.mod-expandable .fieldset-title-content{border-radius:var(--pr-t-border-radius-default);cursor:pointer;font:inherit}.fieldset.mod-expandable .fieldset-title-content:focus-visible{outline:2px solid var(--palettes-700, var(--palettes-product-700));outline-offset:2px}.fieldset.mod-hiddenLegend{--components-fieldset-gap: 0}.fieldset.mod-hiddenLegend .fieldset-title-content-text{border:0;clip-path:rect(1px 1px 1px 1px);margin:-1px;overflow:hidden;padding:0;position:absolute;block-size:1px;inline-size:1px;white-space:nowrap;contain:paint}.fieldset:has(.fieldset-title-content[aria-expanded=true]){--components-fieldset-title-iconRotation: 180deg}.fieldset:has(.fieldset-title-content-action:not(:empty)) .fieldset-title-content-action .button{--components-button-backgroundColor: var(--palettes-neutral-0);--components-button-color: var(--palettes-700, var(--palettes-neutral-700));--components-button-boxShadow: var(--pr-t-elevation-shadow-button), 0 0 0 var(--commons-divider-width) var(--palettes-neutral-200)}.fieldset:has(.fieldset-title-content-action:not(:empty)) .fieldset-title-content-action .button:hover{--components-button-boxShadow: var(--pr-t-elevation-shadow-button), 0 0 0 var(--commons-divider-width) var(--palettes-300, var(--palettes-neutral-300));--components-button-color: var(--palettes-700, var(--palettes-neutral-700));--components-button-backgroundColor: var(--palettes-50, var(--palettes-neutral-50))}.fieldset:has(.fieldset-title-content-action:not(:empty)) .fieldset-title-content-action .button:active{--components-button-backgroundColor: var(--palettes-100, var(--palettes-neutral-100))}.fieldset:has(.fieldset-title-content-action:not(:empty)) .fieldset-title-content-action .button:focus-visible{outline:2px solid var(--palettes-700, var(--palettes-product-700));outline-offset:3px}.fieldset:has(.fieldset-title-content-action:not(:empty)) .fieldset-title-content-action .button:disabled{--components-button-backgroundColor: var(--palettes-neutral-0);--components-button-boxShadow: 0 0 0 1px var(--palettes-neutral-100);--components-button-color: var(--pr-t-color-text-disabled)}.fieldset:has(.fieldset-title-content-action:not(:empty)) .fieldset-title-content-action .button{--icon-size: 1.25rem;--components-button-font: var(--pr-t-font-body-S);--components-button-paddingBlock: var(--pr-t-spacings-75);--components-button-paddingInline: var(--pr-t-spacings-100);--components-button-gap: var(--pr-t-spacings-75)}.fieldset:has(.fieldset-title-content-action:not(:empty)) .fieldset-title-content-action .button .numericBadge{--components-numericBadge-size: 1.25rem;--components-numericBadge-borderRadius: var(--pr-t-border-radius-small);--components-numericBadge-font: var(--pr-t-font-body-XS)}.fieldset:has(.fieldset-title-content-action:not(:empty)) .fieldset-title-content-action .button{--components-button-font-size: var(--pr-t-font-body-S-fontSize);--components-button-line-height: var(--pr-t-font-body-S-lineHeight)}.fieldset:has(.fieldset-title-content-action:not(:empty)) .fieldset-title-content-action .button:after{font-size:var(--pr-t-font-body-S-lineHeight);block-size:var(--pr-t-font-body-S-lineHeight)}@media not all and (min-width:30em){.fieldset{--components-fieldset-title-content-flexWrap: wrap}}}\n"] }]
807
811
  }], propDecorators: { heading: [{ type: i0.Input, args: [{ isSignal: true, alias: "heading", required: false }] }], helper: [{ type: i0.Input, args: [{ isSignal: true, alias: "helper", required: false }] }], action: [{ type: i0.Input, args: [{ isSignal: true, alias: "action", required: false }] }], size: [{ type: i0.Input, args: [{ isSignal: true, alias: "size", required: false }] }], horizontal: [{ type: i0.Input, args: [{ isSignal: true, alias: "horizontal", required: false }] }], expandable: [{ type: i0.Input, args: [{ isSignal: true, alias: "expandable", required: false }] }], hiddenLegend: [{ type: i0.Input, args: [{ isSignal: true, alias: "hiddenLegend", required: false }] }], expanded: [{ type: i0.Input, args: [{ isSignal: true, alias: "expanded", required: false }] }, { type: i0.Output, args: ["expandedChange"] }] } });
808
812
 
809
813
  /**