@lucca-front/ng 22.1.0-rc.4 → 22.1.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 (175) hide show
  1. package/README.md +6 -0
  2. package/fesm2022/lucca-front-ng-a11y.mjs +9 -9
  3. package/fesm2022/lucca-front-ng-activity-feed.mjs +12 -12
  4. package/fesm2022/lucca-front-ng-api.mjs +40 -40
  5. package/fesm2022/lucca-front-ng-app-layout.mjs +3 -3
  6. package/fesm2022/lucca-front-ng-approbation-inbox.mjs +37 -36
  7. package/fesm2022/lucca-front-ng-approbation-inbox.mjs.map +1 -1
  8. package/fesm2022/lucca-front-ng-box.mjs +3 -3
  9. package/fesm2022/lucca-front-ng-breadcrumbs.mjs +6 -6
  10. package/fesm2022/lucca-front-ng-bubble-icon.mjs +12 -7
  11. package/fesm2022/lucca-front-ng-bubble-icon.mjs.map +1 -1
  12. package/fesm2022/lucca-front-ng-bubble-illustration.mjs +3 -3
  13. package/fesm2022/lucca-front-ng-callout.mjs +24 -24
  14. package/fesm2022/lucca-front-ng-chip.mjs +4 -4
  15. package/fesm2022/lucca-front-ng-chip.mjs.map +1 -1
  16. package/fesm2022/lucca-front-ng-clear.mjs +4 -4
  17. package/fesm2022/lucca-front-ng-clear.mjs.map +1 -1
  18. package/fesm2022/lucca-front-ng-code.mjs +3 -3
  19. package/fesm2022/lucca-front-ng-color.mjs +3 -3
  20. package/fesm2022/lucca-front-ng-comment.mjs +12 -12
  21. package/fesm2022/lucca-front-ng-comment.mjs.map +1 -1
  22. package/fesm2022/lucca-front-ng-container.mjs +3 -3
  23. package/fesm2022/lucca-front-ng-core-select-api.mjs +9 -9
  24. package/fesm2022/lucca-front-ng-core-select-department.mjs +6 -6
  25. package/fesm2022/lucca-front-ng-core-select-establishment.mjs +9 -9
  26. package/fesm2022/lucca-front-ng-core-select-job-qualification.mjs +6 -6
  27. package/fesm2022/lucca-front-ng-core-select-legal-units.mjs +8 -8
  28. package/fesm2022/lucca-front-ng-core-select-legal-units.mjs.map +1 -1
  29. package/fesm2022/lucca-front-ng-core-select-occupation-category.mjs +3 -3
  30. package/fesm2022/lucca-front-ng-core-select-user.mjs +20 -20
  31. package/fesm2022/lucca-front-ng-core-select-user.mjs.map +1 -1
  32. package/fesm2022/lucca-front-ng-core-select.mjs +73 -58
  33. package/fesm2022/lucca-front-ng-core-select.mjs.map +1 -1
  34. package/fesm2022/lucca-front-ng-core.mjs +19 -19
  35. package/fesm2022/lucca-front-ng-data-table.mjs +40 -32
  36. package/fesm2022/lucca-front-ng-data-table.mjs.map +1 -1
  37. package/fesm2022/lucca-front-ng-date.mjs +40 -40
  38. package/fesm2022/lucca-front-ng-date2.mjs +37 -34
  39. package/fesm2022/lucca-front-ng-date2.mjs.map +1 -1
  40. package/fesm2022/lucca-front-ng-department.mjs +24 -24
  41. package/fesm2022/lucca-front-ng-dialog.mjs +55 -48
  42. package/fesm2022/lucca-front-ng-dialog.mjs.map +1 -1
  43. package/fesm2022/lucca-front-ng-divider.mjs +3 -3
  44. package/fesm2022/lucca-front-ng-dropdown.mjs +42 -42
  45. package/fesm2022/lucca-front-ng-dropdown.mjs.map +1 -1
  46. package/fesm2022/lucca-front-ng-empty-state.mjs +9 -9
  47. package/fesm2022/lucca-front-ng-error-page.mjs +3 -3
  48. package/fesm2022/lucca-front-ng-establishment.mjs +33 -33
  49. package/fesm2022/lucca-front-ng-fancy-box.mjs +3 -3
  50. package/fesm2022/lucca-front-ng-file-upload.mjs +33 -26
  51. package/fesm2022/lucca-front-ng-file-upload.mjs.map +1 -1
  52. package/fesm2022/lucca-front-ng-filter-pills-core.mjs +6 -6
  53. package/fesm2022/lucca-front-ng-filter-pills.mjs +90 -21
  54. package/fesm2022/lucca-front-ng-filter-pills.mjs.map +1 -1
  55. package/fesm2022/lucca-front-ng-footer.mjs +3 -3
  56. package/fesm2022/lucca-front-ng-form-field.mjs +18 -18
  57. package/fesm2022/lucca-front-ng-form-header.mjs +3 -3
  58. package/fesm2022/lucca-front-ng-form-label.mjs +3 -3
  59. package/fesm2022/lucca-front-ng-form.mjs +3 -3
  60. package/fesm2022/lucca-front-ng-formly.mjs +58 -58
  61. package/fesm2022/lucca-front-ng-forms-phone-number-input.mjs +6 -6
  62. package/fesm2022/lucca-front-ng-forms-rich-text-input-formatters-html.mjs +3 -3
  63. package/fesm2022/lucca-front-ng-forms-rich-text-input-formatters-markdown.mjs +6 -6
  64. package/fesm2022/lucca-front-ng-forms-rich-text-input-formatters-plain-text.mjs +3 -3
  65. package/fesm2022/lucca-front-ng-forms-rich-text-input.mjs +35 -35
  66. package/fesm2022/lucca-front-ng-forms-rich-text-input.mjs.map +1 -1
  67. package/fesm2022/lucca-front-ng-forms.mjs +68 -48
  68. package/fesm2022/lucca-front-ng-forms.mjs.map +1 -1
  69. package/fesm2022/lucca-front-ng-gauge.mjs +3 -3
  70. package/fesm2022/lucca-front-ng-grid.mjs +6 -6
  71. package/fesm2022/lucca-front-ng-highlight-data.mjs +3 -3
  72. package/fesm2022/lucca-front-ng-highlight-section.mjs +3 -3
  73. package/fesm2022/lucca-front-ng-highlight-text.mjs +3 -3
  74. package/fesm2022/lucca-front-ng-horizontal-navigation.mjs +9 -9
  75. package/fesm2022/lucca-front-ng-impersonation.mjs +3 -3
  76. package/fesm2022/lucca-front-ng-index-table.mjs +44 -38
  77. package/fesm2022/lucca-front-ng-index-table.mjs.map +1 -1
  78. package/fesm2022/lucca-front-ng-inline-message.mjs +3 -3
  79. package/fesm2022/lucca-front-ng-input.mjs +21 -21
  80. package/fesm2022/lucca-front-ng-kbd.mjs +306 -0
  81. package/fesm2022/lucca-front-ng-kbd.mjs.map +1 -0
  82. package/fesm2022/lucca-front-ng-link.mjs +6 -6
  83. package/fesm2022/lucca-front-ng-listbox.mjs +13 -10
  84. package/fesm2022/lucca-front-ng-listbox.mjs.map +1 -1
  85. package/fesm2022/lucca-front-ng-listing.mjs +6 -6
  86. package/fesm2022/lucca-front-ng-loading.mjs +51 -10
  87. package/fesm2022/lucca-front-ng-loading.mjs.map +1 -1
  88. package/fesm2022/lucca-front-ng-main-layout.mjs +6 -6
  89. package/fesm2022/lucca-front-ng-markdown.mjs +3 -3
  90. package/fesm2022/lucca-front-ng-mobile-push.mjs +3 -3
  91. package/fesm2022/lucca-front-ng-modal.mjs +22 -22
  92. package/fesm2022/lucca-front-ng-multi-select.mjs +38 -38
  93. package/fesm2022/lucca-front-ng-multi-select.mjs.map +1 -1
  94. package/fesm2022/lucca-front-ng-new-badge.mjs +3 -3
  95. package/fesm2022/lucca-front-ng-number-format.mjs +6 -6
  96. package/fesm2022/lucca-front-ng-number.mjs +7 -7
  97. package/fesm2022/lucca-front-ng-option.mjs +130 -130
  98. package/fesm2022/lucca-front-ng-option.mjs.map +1 -1
  99. package/fesm2022/lucca-front-ng-page-header.mjs +3 -3
  100. package/fesm2022/lucca-front-ng-pagination.mjs +3 -3
  101. package/fesm2022/lucca-front-ng-plg-push.mjs +3 -3
  102. package/fesm2022/lucca-front-ng-popover.mjs +17 -17
  103. package/fesm2022/lucca-front-ng-popover2.mjs +54 -21
  104. package/fesm2022/lucca-front-ng-popover2.mjs.map +1 -1
  105. package/fesm2022/lucca-front-ng-popup.mjs +10 -10
  106. package/fesm2022/lucca-front-ng-priority-levels.mjs +3 -3
  107. package/fesm2022/lucca-front-ng-progress-bar.mjs +3 -3
  108. package/fesm2022/lucca-front-ng-progress-stepper.mjs +6 -6
  109. package/fesm2022/lucca-front-ng-read-more.mjs +6 -6
  110. package/fesm2022/lucca-front-ng-read-more.mjs.map +1 -1
  111. package/fesm2022/lucca-front-ng-resource-card.mjs +12 -12
  112. package/fesm2022/lucca-front-ng-safe-content.mjs +10 -10
  113. package/fesm2022/lucca-front-ng-scroll-box.mjs +4 -4
  114. package/fesm2022/lucca-front-ng-scroll-box.mjs.map +1 -1
  115. package/fesm2022/lucca-front-ng-scroll.mjs +9 -10
  116. package/fesm2022/lucca-front-ng-scroll.mjs.map +1 -1
  117. package/fesm2022/lucca-front-ng-segmented-control-tabs.mjs +6 -6
  118. package/fesm2022/lucca-front-ng-segmented-control.mjs +6 -6
  119. package/fesm2022/lucca-front-ng-select.mjs +14 -14
  120. package/fesm2022/lucca-front-ng-sidepanel.mjs +7 -7
  121. package/fesm2022/lucca-front-ng-simple-select.mjs +14 -14
  122. package/fesm2022/lucca-front-ng-simple-select.mjs.map +1 -1
  123. package/fesm2022/lucca-front-ng-software-icon-wrapper.mjs +6 -6
  124. package/fesm2022/lucca-front-ng-software-icon.mjs +3 -3
  125. package/fesm2022/lucca-front-ng-sortable-list.mjs +6 -6
  126. package/fesm2022/lucca-front-ng-status-badge.mjs +3 -3
  127. package/fesm2022/lucca-front-ng-table-of-content.mjs +6 -6
  128. package/fesm2022/lucca-front-ng-text-flow.mjs +4 -4
  129. package/fesm2022/lucca-front-ng-text-flow.mjs.map +1 -1
  130. package/fesm2022/lucca-front-ng-time.mjs +18 -18
  131. package/fesm2022/lucca-front-ng-title.mjs +10 -10
  132. package/fesm2022/lucca-front-ng-toast.mjs +10 -10
  133. package/fesm2022/lucca-front-ng-tree-select.mjs +6 -6
  134. package/fesm2022/lucca-front-ng-user-popover.mjs +22 -22
  135. package/fesm2022/lucca-front-ng-user-popover.mjs.map +1 -1
  136. package/fesm2022/lucca-front-ng-user.mjs +59 -59
  137. package/fesm2022/lucca-front-ng-vertical-navigation.mjs +12 -12
  138. package/package.json +16 -6
  139. package/schematics/lib/local-deps/package-lock.json +7 -7
  140. package/schematics/lib/local-deps/package.json +1 -1
  141. package/src/definitions/option/_option-item.scss +7 -4
  142. package/types/lucca-front-ng-a11y.d.ts +1 -1
  143. package/types/lucca-front-ng-api.d.ts +3 -3
  144. package/types/lucca-front-ng-approbation-inbox.d.ts +3 -3
  145. package/types/lucca-front-ng-bubble-icon.d.ts +4 -1
  146. package/types/lucca-front-ng-chip.d.ts +1 -1
  147. package/types/lucca-front-ng-clear.d.ts +1 -1
  148. package/types/lucca-front-ng-comment.d.ts +3 -3
  149. package/types/lucca-front-ng-core-select-establishment.d.ts +1 -1
  150. package/types/lucca-front-ng-core-select.d.ts +18 -3
  151. package/types/lucca-front-ng-core.d.ts +3 -3
  152. package/types/lucca-front-ng-data-table.d.ts +7 -2
  153. package/types/lucca-front-ng-date.d.ts +2 -2
  154. package/types/lucca-front-ng-date2.d.ts +5 -2
  155. package/types/lucca-front-ng-department.d.ts +2 -2
  156. package/types/lucca-front-ng-dialog.d.ts +1 -1
  157. package/types/lucca-front-ng-establishment.d.ts +2 -2
  158. package/types/lucca-front-ng-file-upload.d.ts +8 -2
  159. package/types/lucca-front-ng-filter-pills.d.ts +11 -2
  160. package/types/lucca-front-ng-forms.d.ts +13 -3
  161. package/types/lucca-front-ng-index-table.d.ts +4 -2
  162. package/types/lucca-front-ng-kbd.d.ts +59 -0
  163. package/types/lucca-front-ng-listbox.d.ts +1 -0
  164. package/types/lucca-front-ng-loading.d.ts +16 -4
  165. package/types/lucca-front-ng-modal.d.ts +2 -2
  166. package/types/lucca-front-ng-multi-select.d.ts +1 -1
  167. package/types/lucca-front-ng-popover2.d.ts +1 -0
  168. package/types/lucca-front-ng-popup.d.ts +2 -2
  169. package/types/lucca-front-ng-read-more.d.ts +2 -2
  170. package/types/lucca-front-ng-sidepanel.d.ts +1 -1
  171. package/types/lucca-front-ng-simple-select.d.ts +1 -1
  172. package/types/lucca-front-ng-title.d.ts +2 -2
  173. package/types/lucca-front-ng-toast.d.ts +1 -1
  174. package/types/lucca-front-ng-user-popover.d.ts +0 -1
  175. package/types/lucca-front-ng-user.d.ts +2 -2
@@ -314,10 +314,10 @@ class ALuSelectInputComponent extends ALuSelectInput {
314
314
  _emitClose() {
315
315
  this.onClose.emit();
316
316
  }
317
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.4", ngImport: i0, type: ALuSelectInputComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i1.Overlay }, { token: i0.ElementRef }, { token: i0.ViewContainerRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Directive }); }
318
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.2.0", version: "22.1.4", type: ALuSelectInputComponent, isStandalone: true, inputs: { pickerOverlap: { classPropertyName: "pickerOverlap", publicName: "pickerOverlap", isSignal: true, isRequired: false, transformFunction: null }, placeholderInput: { classPropertyName: "placeholderInput", publicName: "placeholder", isSignal: true, isRequired: false, transformFunction: null }, multipleInput: { classPropertyName: "multipleInput", publicName: "multiple", isSignal: true, isRequired: false, transformFunction: null }, disabledInput: { classPropertyName: "disabledInput", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { onOpenOutput: "onOpen", onCloseOutput: "onClose" }, host: { listeners: { "click": "onClick()", "mouseenter": "onMouseEnter()", "mouseleave": "onMouseLeave()", "focus": "onFocus()", "blur": "onBlur()", "keydown.space": "onKeydown($event)", "keydown.enter": "onKeydown($event)" }, properties: { "tabindex": "tabindex", "class.is-disabled": "disabledInput()", "class.is-focused": "isFocused", "class.mod-multiple": "modMultiple", "class.is-clearable": "isClearable" } }, queries: [{ propertyName: "ccPicker", first: true, predicate: ALuPickerPanel, descendants: true, isSignal: true }, { propertyName: "ccDisplayer", first: true, predicate: ALuInputDisplayer, descendants: true, isSignal: true }, { propertyName: "ccClearer", first: true, predicate: ALuClear, descendants: true, isSignal: true }], viewQueries: [{ propertyName: "_vcDisplayContainer", first: true, predicate: ["display"], descendants: true, read: ViewContainerRef, isSignal: true }, { propertyName: "vcPicker", first: true, predicate: ALuPickerPanel, descendants: true, isSignal: true }, { propertyName: "vcDisplayer", first: true, predicate: ALuInputDisplayer, descendants: true, isSignal: true }, { propertyName: "vcClearer", first: true, predicate: ALuClear, descendants: true, isSignal: true }], usesInheritance: true, ngImport: i0 }); }
317
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.2.1", ngImport: i0, type: ALuSelectInputComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i1.Overlay }, { token: i0.ElementRef }, { token: i0.ViewContainerRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Directive }); }
318
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.2.0", version: "22.2.1", type: ALuSelectInputComponent, isStandalone: true, inputs: { pickerOverlap: { classPropertyName: "pickerOverlap", publicName: "pickerOverlap", isSignal: true, isRequired: false, transformFunction: null }, placeholderInput: { classPropertyName: "placeholderInput", publicName: "placeholder", isSignal: true, isRequired: false, transformFunction: null }, multipleInput: { classPropertyName: "multipleInput", publicName: "multiple", isSignal: true, isRequired: false, transformFunction: null }, disabledInput: { classPropertyName: "disabledInput", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { onOpenOutput: "onOpen", onCloseOutput: "onClose" }, host: { listeners: { "click": "onClick()", "mouseenter": "onMouseEnter()", "mouseleave": "onMouseLeave()", "focus": "onFocus()", "blur": "onBlur()", "keydown.space": "onKeydown($event)", "keydown.enter": "onKeydown($event)" }, properties: { "tabindex": "tabindex", "class.is-disabled": "disabledInput()", "class.is-focused": "isFocused", "class.mod-multiple": "modMultiple", "class.is-clearable": "isClearable" } }, queries: [{ propertyName: "ccPicker", first: true, predicate: ALuPickerPanel, descendants: true, isSignal: true }, { propertyName: "ccDisplayer", first: true, predicate: ALuInputDisplayer, descendants: true, isSignal: true }, { propertyName: "ccClearer", first: true, predicate: ALuClear, descendants: true, isSignal: true }], viewQueries: [{ propertyName: "_vcDisplayContainer", first: true, predicate: ["display"], descendants: true, read: ViewContainerRef, isSignal: true }, { propertyName: "vcPicker", first: true, predicate: ALuPickerPanel, descendants: true, isSignal: true }, { propertyName: "vcDisplayer", first: true, predicate: ALuInputDisplayer, descendants: true, isSignal: true }, { propertyName: "vcClearer", first: true, predicate: ALuClear, descendants: true, isSignal: true }], usesInheritance: true, ngImport: i0 }); }
319
319
  }
320
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.4", ngImport: i0, type: ALuSelectInputComponent, decorators: [{
320
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.2.1", ngImport: i0, type: ALuSelectInputComponent, decorators: [{
321
321
  type: Directive,
322
322
  args: [{
323
323
  host: {
@@ -366,8 +366,8 @@ class LuSelectInputComponent extends ALuSelectInputComponent {
366
366
  super.ngAfterViewInit();
367
367
  this.displayClearer(); // dont keep
368
368
  }
369
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.4", ngImport: i0, type: LuSelectInputComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i1.Overlay }, { token: i0.ElementRef }, { token: i0.ViewContainerRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Component }); }
370
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "22.1.4", type: LuSelectInputComponent, isStandalone: true, selector: "lu-select", host: { properties: { "class.mod-multipleView": "modMultipleView" } }, providers: [
369
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.2.1", ngImport: i0, type: LuSelectInputComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i1.Overlay }, { token: i0.ElementRef }, { token: i0.ViewContainerRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Component }); }
370
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "22.2.1", type: LuSelectInputComponent, isStandalone: true, selector: "lu-select", host: { properties: { "class.mod-multipleView": "modMultipleView" } }, providers: [
371
371
  {
372
372
  provide: NG_VALUE_ACCESSOR,
373
373
  useExisting: forwardRef(() => LuSelectInputComponent),
@@ -375,7 +375,7 @@ class LuSelectInputComponent extends ALuSelectInputComponent {
375
375
  },
376
376
  ], queries: [{ propertyName: "clearerEltRef", first: true, predicate: ALuClear, descendants: true, read: ElementRef, isSignal: true }], viewQueries: [{ propertyName: "suffixEltRef", first: true, predicate: ["suffix"], descendants: true, read: ElementRef, isSignal: true }], usesInheritance: true, ngImport: i0, template: "<div class=\"lu-select-placeholder\">{{ placeholder }}</div>\n<div class=\"lu-select-value\">\n\t<div class=\"lu-select-display-wrapper\">\n\t\t<ng-container #display />\n\t</div>\n</div>\n<div #suffix class=\"lu-select-suffix\"></div>\n", styles: ["@charset \"UTF-8\";@layer base{:root{--components-options-item-padding-vertical: var(--pr-t-spacings-50);--components-options-item-padding-horizontal: var(--pr-t-spacings-100);--components-options-item-multiple-padding: 2.25rem;--components-options-item-icon-color: var(--palettes-neutral-800);--components-options-checkbox-size: 1.25rem;--components-options-checkbox-color: var(--palettes-700, var(--palettes-product-700));--components-options-checkbox-border-radius: var(--pr-t-border-radius-small);--components-options-checkbox-border-color: var(--palettes-neutral-700);--components-options-establishment-multiple-padding: 2rem}}@layer reset,base,components,mods,product,utils;@layer components{:host{--components-select-input-padding-horizontal: var(--pr-t-spacings-100);--components-select-input-padding-vertical: var(--pr-t-spacings-100);--components-select-framed-color: var(--palettes-neutral-500);--components-select-framed-color50: var(--palettes-neutral-50);--components-select-framed-see-through: var(--palettes-neutral-50);--components-select-framed-text: var(--pr-t-color-text);--components-select-framed-placeholder: #cccccc;--components-select-framed-side-padding: var(--pr-t-spacings-200);--components-select-framed-top-padding: var(--pr-t-spacings-400);--components-select-framed-bottom-padding: var(--pr-t-spacings-200);--components-select-framed-label-top-offset: var(--pr-t-spacings-100);cursor:pointer;outline:none;padding:0;gap:0}:host:after{--icon-content: \"\\e97c\";font-weight:var(--pr-t-font-fontWeight-regular);display:inline-block;vertical-align:text-bottom;font-style:normal;font-family:var(--icon-fontFamily);content:var(--icon-content)/\"\";-webkit-font-smoothing:antialiased;text-transform:none;color:var(--palettes-neutral-600);inset-block-end:var(--components-select-input-padding-vertical);font-size:var(--pr-t-font-body-M-lineHeight);line-height:var(--pr-t-font-body-M-lineHeight);pointer-events:none;position:absolute;inset-inline-end:var(--components-select-input-padding-horizontal);transition:transform var(--commons-animations-durations-standard) ease}}@layer mods{:host[disabled],:host.is-disabled{cursor:not-allowed;pointer-events:all}}@layer components{.lu-select-display-wrapper{display:block;inline-size:100%;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.lu-select-value{font:var(--pr-t-font-body-M);min-block-size:calc(var(--components-select-framed-bottom-padding) + var(--pr-t-font-body-M-lineHeight));padding-block:var(--components-select-input-padding-vertical);padding-inline:var(--components-select-input-padding-horizontal) 3.5rem;transition:all var(--commons-animations-durations-standard);display:none}.lu-select-placeholder{color:var(--palettes-neutral-400);font:var(--pr-t-font-body-M);min-block-size:calc(var(--components-select-framed-bottom-padding) + var(--pr-t-font-body-M-lineHeight));padding-block:var(--components-select-input-padding-vertical);padding-inline:var(--components-select-input-padding-horizontal) 3.5rem;transition:all var(--commons-animations-durations-standard);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lu-select-suffix,.lu-select-clearer{position:absolute;inset-block-end:var(--pr-t-spacings-150);inset-inline-end:2.5rem}::ng-deep .lu-select-value .chip{display:inline-flex;max-inline-size:100%;margin-block:0 var(--pr-t-spacings-50);margin-inline:0 var(--pr-t-spacings-50);text-overflow:ellipsis;overflow:hidden;white-space:nowrap}}@layer mods{:host-context(.textfield.mod-S){padding:0}:host-context(.textfield.mod-S) .lu-select-value,:host-context(.textfield.mod-S) .lu-select-placeholder{font-size:var(--pr-t-font-body-S-fontSize);line-height:var(--pr-t-font-body-XS-lineHeight);min-block-size:calc(var(--components-select-framed-bottom-padding) + var(--pr-t-font-body-XS-lineHeight))}:host-context(.textfield.mod-S) .lu-select-clearer{inset-block-end:var(--pr-t-spacings-100)}:host-context(.textfield.mod-S):after{line-height:var(--pr-t-font-body-XS-lineHeight);font-size:var(--pr-t-font-body-S-lineHeight)}:host-context(.textfield.mod-S) .lu-select-suffix{inset-block-end:.5rem;inset-inline-end:2rem}:host-context(.textfield.mod-S) ::ng-deep .lu-select-value .chip{block-size:var(--pr-t-font-body-XS-lineHeight);line-height:var(--pr-t-font-body-XS-lineHeight);font-size:var(--pr-t-font-body-XS-fontSize);padding-inline:var(--pr-t-spacings-50);gap:var(--pr-t-spacings-50)}:host-context(.textfield.mod-S) ::ng-deep .lu-select-value .numericBadge{--components-numericBadge-size: 1.25rem;--components-numericBadge-borderRadius: var(--pr-t-border-radius-small);--components-numericBadge-font: var(--pr-t-font-body-XS)}:host-context(.textfield.mod-framed).textfield-input,:host-context(.form.mod-framed).textfield-input{padding-block:var(--components-select-framed-top-padding) 0;padding-inline:0}:host-context(.textfield.mod-framed).textfield-input:after,:host-context(.form.mod-framed).textfield-input:after{color:var(--palettes-neutral-500);inset-block-end:var(--components-select-framed-bottom-padding);inset-inline-end:var(--pr-t-spacings-100)}:host-context(.textfield.mod-framed).textfield-input .lu-select-value,:host-context(.form.mod-framed).textfield-input .lu-select-value{padding-block:0 var(--components-select-framed-bottom-padding);padding-inline:var(--components-select-framed-side-padding) calc(var(--components-select-framed-side-padding) * 3)}:host-context(.textfield.mod-framed).textfield-input .lu-select-placeholder,:host-context(.form.mod-framed).textfield-input .lu-select-placeholder{color:var(--palettes-neutral-400);padding-block:0 var(--components-select-framed-bottom-padding);padding-inline:var(--components-select-framed-side-padding) calc(var(--components-select-framed-side-padding) * 3)}:host-context(.textfield.mod-framed).textfield-input .lu-select-suffix,:host-context(.form.mod-framed).textfield-input .lu-select-suffix{inset-block-end:var(--components-select-framed-bottom-padding);inset-inline-end:1.7rem}:host-context(.textfield.mod-filter) .lu-select-value,:host-context(.textfield.mod-filter) .lu-select-placeholder{padding:0;block-size:auto;padding-block-start:var(--pr-t-spacings-200);color:var(--pr-t-color-text)}:host-context(.textfield.mod-material):after{color:var(--palettes-neutral-500);inset-block-end:.6rem;inset-inline-end:0}:host-context(.textfield.mod-material) .lu-select-value,:host-context(.textfield.mod-material) .lu-select-placeholder{padding-inline:0 .8rem}:host-context(.textfield.mod-material) .lu-select-suffix{inset-inline-end:calc(2 * var(--components-select-input-padding-horizontal))}:host-context(.textfield.mod-material).is-select .lu-select-placeholder{display:none}:host-context(.textfield.mod-material).mod-search:after{inset-block-end:0}:host-context(.textfield.mod-material).mod-search .lu-select-suffix{inset-inline-end:calc(2.75 * var(--components-select-input-padding-horizontal))}:host-context(.textfield.mod-material .textfield-input.is-focused) .lu-select-placeholder{display:none}:host(.mod-multiple) .lu-select-value{block-size:auto;align-items:center}:host(.mod-multiple) .lu-select-display-wrapper{overflow:visible;white-space:normal;margin-block-end:calc(var(--pr-t-spacings-50) * -1)}:host-context(.textfield.mod-outlined).textfield-input:after{color:var(--palettes-neutral-600)}:host-context(.textfield.mod-outlined).textfield-input .lu-select-placeholder{color:var(--palettes-neutral-400)}:host-context(.textfield.mod-outlined) :host-context(.textfield-input.is-error):after{color:var(--palettes-error-600)}:host-context(.textfield.mod-outlined) :host-context(.textfield-input.is-error) .lu-select-placeholder{color:var(--palettes-error-400)}:host-context(.textfield-input.is-filled) .lu-select-placeholder{display:none}:host-context(.textfield-input.is-filled) .lu-select-value{display:flex;align-items:flex-start}:host-context(.textfield .textfield-input.is-focused):after{transform:rotate(180deg)}:host-context(.textfield-input.is-clearable) .lu-select-value{padding-inline-end:3.5rem}:host-context(.textfield-input.is-error,.textfield-input.is-invalid,.textfield-input.ng-invalid.ng-touched) .lu-select-placeholder{color:var(--palettes-error-400)}:host-context(.textfield-input.is-disabled,.textfield-input[disabled]):after{color:var(--commons-disabled-color)}:host-context(.textfield-input.is-disabled,.textfield-input[disabled]) .lu-select-placeholder{color:var(--commons-disabled-placeholder)}}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
377
377
  }
378
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.4", ngImport: i0, type: LuSelectInputComponent, decorators: [{
378
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.2.1", ngImport: i0, type: LuSelectInputComponent, decorators: [{
379
379
  type: Component,
380
380
  args: [{ selector: 'lu-select', changeDetection: ChangeDetectionStrategy.OnPush, host: {
381
381
  '[class.mod-multipleView]': 'modMultipleView',
@@ -392,11 +392,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.4", ngImpor
392
392
  * @deprecated prefer SimpleSelect or MultipleSelect
393
393
  */
394
394
  class LuSelectInputModule {
395
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.4", ngImport: i0, type: LuSelectInputModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
396
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "22.1.4", ngImport: i0, type: LuSelectInputModule, imports: [LuSelectInputComponent], exports: [LuSelectInputComponent] }); }
397
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "22.1.4", ngImport: i0, type: LuSelectInputModule }); }
395
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.2.1", ngImport: i0, type: LuSelectInputModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
396
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "22.2.1", ngImport: i0, type: LuSelectInputModule, imports: [LuSelectInputComponent], exports: [LuSelectInputComponent] }); }
397
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "22.2.1", ngImport: i0, type: LuSelectInputModule }); }
398
398
  }
399
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.4", ngImport: i0, type: LuSelectInputModule, decorators: [{
399
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.2.1", ngImport: i0, type: LuSelectInputModule, decorators: [{
400
400
  type: NgModule,
401
401
  args: [{
402
402
  imports: [LuSelectInputComponent],
@@ -408,11 +408,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.4", ngImpor
408
408
  * @deprecated prefer SimpleSelect or MultipleSelect
409
409
  */
410
410
  class LuSelectModule {
411
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.4", ngImport: i0, type: LuSelectModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
412
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "22.1.4", ngImport: i0, type: LuSelectModule, imports: [LuSelectInputModule], exports: [LuSelectInputModule] }); }
413
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "22.1.4", ngImport: i0, type: LuSelectModule, imports: [LuSelectInputModule, LuSelectInputModule] }); }
411
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.2.1", ngImport: i0, type: LuSelectModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
412
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "22.2.1", ngImport: i0, type: LuSelectModule, imports: [LuSelectInputModule], exports: [LuSelectInputModule] }); }
413
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "22.2.1", ngImport: i0, type: LuSelectModule, imports: [LuSelectInputModule, LuSelectInputModule] }); }
414
414
  }
415
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.4", ngImport: i0, type: LuSelectModule, decorators: [{
415
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.2.1", ngImport: i0, type: LuSelectModule, decorators: [{
416
416
  type: NgModule,
417
417
  args: [{
418
418
  imports: [LuSelectInputModule],
@@ -26,10 +26,10 @@ class LuSidepanel extends LuModal {
26
26
  open(component, data = undefined, config = {}) {
27
27
  return super.open(component, data, config);
28
28
  }
29
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.4", ngImport: i0, type: LuSidepanel, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
30
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "22.1.4", ngImport: i0, type: LuSidepanel }); }
29
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.2.1", ngImport: i0, type: LuSidepanel, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
30
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "22.2.1", ngImport: i0, type: LuSidepanel }); }
31
31
  }
32
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.4", ngImport: i0, type: LuSidepanel, decorators: [{
32
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.2.1", ngImport: i0, type: LuSidepanel, decorators: [{
33
33
  type: Injectable
34
34
  }] });
35
35
 
@@ -37,11 +37,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.4", ngImpor
37
37
  * @deprecated Use LuModal with `modal.open(component, data, { mode: 'sidepanel' })` instead.
38
38
  */
39
39
  class LuSidepanelModule {
40
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.4", ngImport: i0, type: LuSidepanelModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
41
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "22.1.4", ngImport: i0, type: LuSidepanelModule, imports: [LuModalModule] }); }
42
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "22.1.4", ngImport: i0, type: LuSidepanelModule, providers: [LuSidepanel], imports: [LuModalModule] }); }
40
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.2.1", ngImport: i0, type: LuSidepanelModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
41
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "22.2.1", ngImport: i0, type: LuSidepanelModule, imports: [LuModalModule] }); }
42
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "22.2.1", ngImport: i0, type: LuSidepanelModule, providers: [LuSidepanel], imports: [LuModalModule] }); }
43
43
  }
44
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.4", ngImport: i0, type: LuSidepanelModule, decorators: [{
44
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.2.1", ngImport: i0, type: LuSidepanelModule, decorators: [{
45
45
  type: NgModule,
46
46
  args: [{
47
47
  imports: [LuModalModule],
@@ -104,10 +104,10 @@ class LuIsOptionSelectedPipe {
104
104
  transform(option, comparer, selectedOption) {
105
105
  return !!selectedOption && comparer(option, selectedOption);
106
106
  }
107
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.4", ngImport: i0, type: LuIsOptionSelectedPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
108
- static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "22.1.4", ngImport: i0, type: LuIsOptionSelectedPipe, isStandalone: true, name: "luIsOptionSelected" }); }
107
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.2.1", ngImport: i0, type: LuIsOptionSelectedPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
108
+ static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "22.2.1", ngImport: i0, type: LuIsOptionSelectedPipe, isStandalone: true, name: "luIsOptionSelected" }); }
109
109
  }
110
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.4", ngImport: i0, type: LuIsOptionSelectedPipe, decorators: [{
110
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.2.1", ngImport: i0, type: LuIsOptionSelectedPipe, decorators: [{
111
111
  type: Pipe,
112
112
  args: [{
113
113
  name: 'luIsOptionSelected',
@@ -193,16 +193,16 @@ class LuSelectPanelComponent {
193
193
  this.keyManager.highlightOption(this.initialValue);
194
194
  }
195
195
  }
196
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.4", ngImport: i0, type: LuSelectPanelComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
197
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.1.4", type: LuSelectPanelComponent, isStandalone: true, selector: "lu-select-panel", host: { properties: { "class.colorPanel": "colorPanel()", "class.is-pointerNavigation": "pointerNavigation()" }, classAttribute: "selectPanel" }, providers: [
196
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.2.1", ngImport: i0, type: LuSelectPanelComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
197
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.2.1", type: LuSelectPanelComponent, isStandalone: true, selector: "lu-select-panel", host: { properties: { "class.colorPanel": "colorPanel()", "class.is-pointerNavigation": "pointerNavigation()" }, classAttribute: "selectPanel" }, providers: [
198
198
  CoreSelectKeyManager,
199
199
  {
200
200
  provide: SELECT_PANEL_INSTANCE,
201
201
  useExisting: forwardRef(() => LuSelectPanelComponent),
202
202
  },
203
- ], viewQueries: [{ propertyName: "sheetViewport", first: true, predicate: ["sheetViewport"], descendants: true, read: ElementRef, isSignal: true }], ngImport: i0, template: "@if (selectInput.panelBottomSheetMode()) {\n\t<!-- Below the S breakpoint the panel is a dialog in `sheet` mode: the surface, the backdrop, the focus\n\ttrap, the close button and the focus restoration all come from the dialog, so the panel only fills in\n\tits title, its own search input \u2014 the field it covers is no longer reachable \u2014 and its content. -->\n\t<lu-dialog>\n\t\t<lu-dialog-header>\n\t\t\t@if (selectInput.panelTitle(); as title) {\n\t\t\t\t<!-- The interpolation and the marker must stay adjacent in the source: any whitespace between\n\t\t\t\tthem (even just a line break) renders as a literal space, pushing the asterisk away from the\n\t\t\t\ttitle instead of hugging it the way `.formLabel-required`'s own margin expects. -->\n\t\t\t\t@if (selectInput.panelTitleRequired()) {\n\t\t\t\t\t<h1>{{ title }}<sup class=\"formLabel-required\" aria-hidden=\"true\">*</sup></h1>\n\t\t\t\t} @else {\n\t\t\t\t\t<h1>{{ title }}</h1>\n\t\t\t\t}\n\t\t\t}\n\t\t\t<div dialogHeaderContent>\n\t\t\t\t<ng-container [ngTemplateOutlet]=\"sheetSearch\" />\n\t\t\t</div>\n\t\t</lu-dialog-header>\n\t\t<lu-dialog-content #sheetViewport (scroll)=\"onScroll($event)\">\n\t\t\t<ng-container [ngTemplateOutlet]=\"panelContent\" />\n\t\t</lu-dialog-content>\n\t</lu-dialog>\n} @else {\n\t<lu-select-panel-layout [loading]=\"loading()\" trapFocus (scrolled)=\"onScroll($event)\">\n\t\t<ng-container [ngTemplateOutlet]=\"panelContent\" />\n\t</lu-select-panel-layout>\n}\n\n<ng-template #sheetSearch>\n\t<div class=\"textField\">\n\t\t<div class=\"textField-input\">\n\t\t\t<input\n\t\t\t\tclass=\"textField-input-value\"\n\t\t\t\ttype=\"text\"\n\t\t\t\trole=\"combobox\"\n\t\t\t\taria-haspopup=\"listbox\"\n\t\t\t\t[attr.aria-expanded]=\"true\"\n\t\t\t\t[attr.aria-controls]=\"selectId\"\n\t\t\t\t[attr.placeholder]=\"intl().placeholder\"\n\t\t\t\t[ngModel]=\"clue()\"\n\t\t\t\t(ngModelChange)=\"selectInput.clueChanged($event)\"\n\t\t\t\t[ngModelOptions]=\"{ standalone: true }\"\n\t\t\t\t[readonly]=\"!searchable\"\n\t\t\t\t(keydown)=\"selectInput.onKeyDownNavigation($event)\"\n\t\t\t/>\n\t\t\t<div class=\"textField-input-affix\">\n\t\t\t\t<lu-icon class=\"textField-input-affix-icon\" icon=\"searchMagnifyingGlass\" />\n\t\t\t</div>\n\t\t</div>\n\t</div>\n</ng-template>\n\n<ng-template #panelContent>\n\t<lu-listbox [tree]=\"!!treeGenerator\" [state]=\"listboxState()\" [statusMsg]=\"listboxStatusMsg()\">\n\t\t<!-- The header is projected inside the listbox because it can contain selectable elements\n\t\tthat are referenced by aria-activedescendant -->\n\t\t<ng-container ngProjectAs=\"[listbox-header]\">\n\t\t\t@if (selectInput.panelHeaderTpl(); as tpl) {\n\t\t\t\t<div>\n\t\t\t\t\t<ng-container *luPortal=\"tpl\" />\n\t\t\t\t</div>\n\t\t\t}\n\t\t</ng-container>\n\t\t@if (grouping() && groupTemplateLocation() === \"group-header\") {\n\t\t\t@for (group of dataSourceOptions() | luOptionGroup: grouping().selector; track group.key; let groupIndex = $index) {\n\t\t\t\t<lu-listbox-option group [groupId]=\"selectId + '-group-' + group.key\" [elementId]=\"selectId + '-group-' + group.key\">\n\t\t\t\t\t<ng-container *luPortal=\"grouping().content; context: { $implicit: group }\" />\n\t\t\t\t\t<div optgroup class=\"listboxOptionWrapper\">\n\t\t\t\t\t\t<ng-template\n\t\t\t\t\t\t\t[ngTemplateOutlet]=\"optionsList\"\n\t\t\t\t\t\t\t[ngTemplateOutletContext]=\"{ $implicit: group.options, groupIndex: groupIndex }\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t</div>\n\t\t\t\t</lu-listbox-option>\n\t\t\t}\n\t\t}\n\t\t@if (!grouping() || groupTemplateLocation() !== \"group-header\") {\n\t\t\t<ng-template [ngTemplateOutlet]=\"optionsList\" [ngTemplateOutletContext]=\"{ $implicit: dataSourceOptions() }\" />\n\t\t}\n\t\t<ng-template #optionsList let-options let-groupIndex=\"groupIndex\">\n\t\t\t@if (treeGenerator) {\n\t\t\t\t@for (branch of options | luTreeDisplay: treeGenerator; let index = $index; track optionKey()(branch.node)) {\n\t\t\t\t\t<lu-tree-branch\n\t\t\t\t\t\t[branch]=\"branch\"\n\t\t\t\t\t\t[optionTpl]=\"optionTpl()\"\n\t\t\t\t\t\t[optionComparer]=\"optionComparer()\"\n\t\t\t\t\t\t[selectedOptions]=\"selectedOptions()\"\n\t\t\t\t\t\t[optionIndex]=\"index\"\n\t\t\t\t\t\t(toggleOne)=\"panelRef.emitValue($event)\"\n\t\t\t\t\t\tsimpleMode\n\t\t\t\t\t/>\n\t\t\t\t}\n\t\t\t} @else {\n\t\t\t\t@for (option of options; track optionKey()(option); let index = $index) {\n\t\t\t\t\t<lu-select-option\n\t\t\t\t\t\tluCoreSelectPanelElement\n\t\t\t\t\t\t[option]=\"option\"\n\t\t\t\t\t\t[optionTpl]=\"optionTpl()\"\n\t\t\t\t\t\t[optionIndex]=\"index\"\n\t\t\t\t\t\t[groupTemplateLocation]=\"groupTemplateLocation()\"\n\t\t\t\t\t\t[groupIndex]=\"groupIndex\"\n\t\t\t\t\t\t[grouping]=\"grouping()\"\n\t\t\t\t\t\t[scrollIntoViewOptions]=\"{ block: 'nearest' }\"\n\t\t\t\t\t\t[isSelected]=\"option | luIsOptionSelected: optionComparer() : selected()\"\n\t\t\t\t\t\t[class.withAddOption]=\"shouldDisplayAddOption()\"\n\t\t\t\t\t\t(selected)=\"panelRef.emitValue(option)\"\n\t\t\t\t\t\t(click)=\"panelRef.emitValue(option)\"\n\t\t\t\t\t/>\n\t\t\t\t}\n\t\t\t}\n\t\t</ng-template>\n\t</lu-listbox>\n\t@if (shouldDisplayAddOption()) {\n\t\t<lu-listbox-option\n\t\t\tadd\n\t\t\tclass=\"palette-product\"\n\t\t\tluCoreSelectPanelElement\n\t\t\t#addOptionElement=\"luCoreSelectPanelElement\"\n\t\t\telementId=\"picker-content-add\"\n\t\t\t[hovered]=\"addOptionElement.isHighlighted()\"\n\t\t\t(click)=\"selectInput.emitAddOption()\"\n\t\t\t(selected)=\"selectInput.emitAddOption()\"\n\t\t>\n\t\t\t<ng-container *luPortal=\"selectInput.addOptionLabel\" />\n\t\t</lu-listbox-option>\n\t}\n\t@if (selectInput.panelFooterTpl(); as tpl) {\n\t\t<div>\n\t\t\t<ng-container *luPortal=\"tpl\" />\n\t\t</div>\n\t}\n</ng-template>\n", styles: ["@layer base{:root{--components-options-item-padding-vertical: var(--pr-t-spacings-50);--components-options-item-padding-horizontal: var(--pr-t-spacings-100);--components-options-item-multiple-padding: 2.25rem;--components-options-item-icon-color: var(--palettes-neutral-800);--components-options-checkbox-size: 1.25rem;--components-options-checkbox-color: var(--palettes-700, var(--palettes-product-700));--components-options-checkbox-border-radius: var(--pr-t-border-radius-small);--components-options-checkbox-border-color: var(--palettes-neutral-700);--components-options-establishment-multiple-padding: 2rem}}@layer reset,base,components,mods,product,utils;@layer mods{.textfield.mod-search{inline-size:100%}.textfield-input{outline:none}.checkbox.mod-formerEmployee{padding-block:var(--pr-t-spacings-50);padding-inline:var(--components-options-item-padding-horizontal);border-block-end:var(--commons-divider-width) solid var(--commons-divider-color);background-color:var(--palettes-neutral-50);font-style:italic}}@layer components{.optionPlaceholder{display:block;padding-block:var(--components-options-item-padding-vertical);padding-inline:var(--components-options-item-padding-horizontal);font-style:italic;color:var(--palettes-neutral-600)}}\n"], dependencies: [{ kind: "component", type: LuSelectPanelLayoutComponent, selector: "lu-select-panel-layout", inputs: ["loading", "trapFocus", "contentTabIndex"], outputs: ["scrolled"] }, { kind: "component", type: DialogComponent, selector: "lu-dialog", inputs: ["stacked", "fancyIllustration", "fancyIllustrationUrl"] }, { kind: "component", type: DialogHeaderComponent, selector: "lu-dialog-header", inputs: ["intl"] }, { kind: "component", type: DialogContentComponent, selector: "lu-dialog-content" }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox]):not([ngNoCva])[formControlName],textarea:not([ngNoCva])[formControlName],input:not([type=checkbox]):not([ngNoCva])[formControl],textarea:not([ngNoCva])[formControl],input:not([type=checkbox]):not([ngNoCva])[ngModel],textarea:not([ngNoCva])[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: _LuOptionComponent, selector: "lu-select-option", inputs: ["intl", "optionTpl", "option", "grouping", "hasChildren", "groupIndex", "optionIndex", "scrollIntoViewOptions", "groupTemplateLocation"], outputs: ["onlyParent", "onlyChildren"] }, { kind: "directive", type: PortalDirective, selector: "[luPortal]", inputs: ["luPortal", "luPortalContext"] }, { kind: "directive", type: _CoreSelectPanelElement, selector: "[luCoreSelectPanelElement]", inputs: ["elementId", "isSelected", "option", "disabled"], outputs: ["isSelectedChange", "selected"], exportAs: ["luCoreSelectPanelElement"] }, { kind: "component", type: ListboxComponent, selector: "lu-listbox", inputs: ["multiple", "tree", "state", "statusMsg"] }, { kind: "component", type: OptionComponent, selector: "lu-listbox-option", inputs: ["elementId", "checked", "mixed", "disabled", "hovered", "add", "group", "groupId", "select", "selectAll", "treeitemLevel"] }, { kind: "component", type: IconComponent, selector: "lu-icon, pr-icon", inputs: ["icon", "alt", "size", "color", "AI"] }, { kind: "component", type: TreeBranchComponent, selector: "lu-tree-branch", inputs: ["branch", "optionTpl", "optionIndex", "optionComparer", "selectedOptions", "simpleMode"], outputs: ["toggleOne", "selectMany", "unselectMany"] }, { kind: "pipe", type: _LuOptionGroupPipe, name: "luOptionGroup" }, { kind: "pipe", type: LuIsOptionSelectedPipe, name: "luIsOptionSelected" }, { kind: "pipe", type: TreeDisplayPipe, name: "luTreeDisplay" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
203
+ ], viewQueries: [{ propertyName: "sheetViewport", first: true, predicate: ["sheetViewport"], descendants: true, read: ElementRef, isSignal: true }], ngImport: i0, template: "@if (selectInput.panelBottomSheetMode()) {\n\t<!-- Below the S breakpoint the panel is a dialog in `sheet` mode: the surface, the backdrop, the focus\n\ttrap, the close button and the focus restoration all come from the dialog, so the panel only fills in\n\tits title, its own search input \u2014 the field it covers is no longer reachable \u2014 and its content. -->\n\t<lu-dialog>\n\t\t<lu-dialog-header>\n\t\t\t@if (selectInput.panelTitle(); as title) {\n\t\t\t\t<!-- The interpolation and the marker must stay adjacent in the source: any whitespace between\n\t\t\t\tthem (even just a line break) renders as a literal space, pushing the asterisk away from the\n\t\t\t\ttitle instead of hugging it the way `.formLabel-required`'s own margin expects. -->\n\t\t\t\t@if (selectInput.panelTitleRequired()) {\n\t\t\t\t\t<h1>{{ title }}<sup class=\"formLabel-required\" aria-hidden=\"true\">*</sup></h1>\n\t\t\t\t} @else {\n\t\t\t\t\t<h1>{{ title }}</h1>\n\t\t\t\t}\n\t\t\t}\n\t\t\t<div dialogHeaderContent>\n\t\t\t\t<ng-container [ngTemplateOutlet]=\"sheetSearch\" />\n\t\t\t</div>\n\t\t</lu-dialog-header>\n\t\t<lu-dialog-content #sheetViewport (scroll)=\"onScroll($event)\">\n\t\t\t<ng-container [ngTemplateOutlet]=\"panelContent\" />\n\t\t</lu-dialog-content>\n\t</lu-dialog>\n} @else {\n\t<lu-select-panel-layout [loading]=\"loading()\" trapFocus (scrolled)=\"onScroll($event)\">\n\t\t<ng-container [ngTemplateOutlet]=\"panelContent\" />\n\t</lu-select-panel-layout>\n}\n\n<ng-template #sheetSearch>\n\t<!-- A select with no search has nothing to type into, so its field is masked rather than rendered as a\n\tdead read-only input. It stays in the DOM: it carries the combobox semantics, it is the element\n\t`openSelectPanelSheet` focuses, and its `keydown` handler is what drives keyboard navigation. -->\n\t<div class=\"textField\" [class.pr-u-mask]=\"!searchable\">\n\t\t<div class=\"textField-input\">\n\t\t\t<input\n\t\t\t\tclass=\"textField-input-value\"\n\t\t\t\ttype=\"text\"\n\t\t\t\trole=\"combobox\"\n\t\t\t\taria-haspopup=\"listbox\"\n\t\t\t\t[attr.aria-expanded]=\"true\"\n\t\t\t\t[attr.aria-controls]=\"selectId\"\n\t\t\t\t[attr.placeholder]=\"intl().placeholder\"\n\t\t\t\t[ngModel]=\"clue()\"\n\t\t\t\t(ngModelChange)=\"selectInput.clueChanged($event)\"\n\t\t\t\t[ngModelOptions]=\"{ standalone: true }\"\n\t\t\t\t[readonly]=\"!searchable\"\n\t\t\t\t(keydown)=\"selectInput.onKeyDownNavigation($event)\"\n\t\t\t/>\n\t\t\t<div class=\"textField-input-affix\">\n\t\t\t\t<lu-icon class=\"textField-input-affix-icon\" icon=\"searchMagnifyingGlass\" />\n\t\t\t</div>\n\t\t</div>\n\t</div>\n</ng-template>\n\n<ng-template #panelContent>\n\t<lu-listbox [tree]=\"!!treeGenerator\" [state]=\"listboxState()\" [statusMsg]=\"listboxStatusMsg()\">\n\t\t<!-- The header is projected inside the listbox because it can contain selectable elements\n\t\tthat are referenced by aria-activedescendant -->\n\t\t<ng-container ngProjectAs=\"[listbox-header]\">\n\t\t\t@if (selectInput.panelHeaderTpl(); as tpl) {\n\t\t\t\t<div>\n\t\t\t\t\t<ng-container *luPortal=\"tpl\" />\n\t\t\t\t</div>\n\t\t\t}\n\t\t</ng-container>\n\t\t@if (grouping() && groupTemplateLocation() === \"group-header\") {\n\t\t\t@for (group of dataSourceOptions() | luOptionGroup: grouping().selector; track group.key; let groupIndex = $index) {\n\t\t\t\t<lu-listbox-option group [groupId]=\"selectId + '-group-' + group.key\" [elementId]=\"selectId + '-group-' + group.key\">\n\t\t\t\t\t<ng-container *luPortal=\"grouping().content; context: { $implicit: group }\" />\n\t\t\t\t\t<div optgroup class=\"listboxOptionWrapper\">\n\t\t\t\t\t\t<ng-template\n\t\t\t\t\t\t\t[ngTemplateOutlet]=\"optionsList\"\n\t\t\t\t\t\t\t[ngTemplateOutletContext]=\"{ $implicit: group.options, groupIndex: groupIndex }\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t</div>\n\t\t\t\t</lu-listbox-option>\n\t\t\t}\n\t\t}\n\t\t@if (!grouping() || groupTemplateLocation() !== \"group-header\") {\n\t\t\t<ng-template [ngTemplateOutlet]=\"optionsList\" [ngTemplateOutletContext]=\"{ $implicit: dataSourceOptions() }\" />\n\t\t}\n\t\t<ng-template #optionsList let-options let-groupIndex=\"groupIndex\">\n\t\t\t@if (treeGenerator) {\n\t\t\t\t@for (branch of options | luTreeDisplay: treeGenerator; let index = $index; track optionKey()(branch.node)) {\n\t\t\t\t\t<lu-tree-branch\n\t\t\t\t\t\t[branch]=\"branch\"\n\t\t\t\t\t\t[optionTpl]=\"optionTpl()\"\n\t\t\t\t\t\t[optionComparer]=\"optionComparer()\"\n\t\t\t\t\t\t[selectedOptions]=\"selectedOptions()\"\n\t\t\t\t\t\t[optionIndex]=\"index\"\n\t\t\t\t\t\t(toggleOne)=\"panelRef.emitValue($event)\"\n\t\t\t\t\t\tsimpleMode\n\t\t\t\t\t/>\n\t\t\t\t}\n\t\t\t} @else {\n\t\t\t\t@for (option of options; track optionKey()(option); let index = $index) {\n\t\t\t\t\t<lu-select-option\n\t\t\t\t\t\tluCoreSelectPanelElement\n\t\t\t\t\t\t[option]=\"option\"\n\t\t\t\t\t\t[optionTpl]=\"optionTpl()\"\n\t\t\t\t\t\t[optionIndex]=\"index\"\n\t\t\t\t\t\t[groupTemplateLocation]=\"groupTemplateLocation()\"\n\t\t\t\t\t\t[groupIndex]=\"groupIndex\"\n\t\t\t\t\t\t[grouping]=\"grouping()\"\n\t\t\t\t\t\t[scrollIntoViewOptions]=\"{ block: 'nearest' }\"\n\t\t\t\t\t\t[isSelected]=\"option | luIsOptionSelected: optionComparer() : selected()\"\n\t\t\t\t\t\t[class.withAddOption]=\"shouldDisplayAddOption()\"\n\t\t\t\t\t\t(selected)=\"panelRef.emitValue(option)\"\n\t\t\t\t\t\t(click)=\"panelRef.emitValue(option)\"\n\t\t\t\t\t/>\n\t\t\t\t}\n\t\t\t}\n\t\t</ng-template>\n\t</lu-listbox>\n\t@if (shouldDisplayAddOption()) {\n\t\t<lu-listbox-option\n\t\t\tadd\n\t\t\tclass=\"palette-product\"\n\t\t\tluCoreSelectPanelElement\n\t\t\t#addOptionElement=\"luCoreSelectPanelElement\"\n\t\t\telementId=\"picker-content-add\"\n\t\t\t[hovered]=\"addOptionElement.isHighlighted()\"\n\t\t\t(click)=\"selectInput.emitAddOption()\"\n\t\t\t(selected)=\"selectInput.emitAddOption()\"\n\t\t>\n\t\t\t<ng-container *luPortal=\"selectInput.addOptionLabel\" />\n\t\t</lu-listbox-option>\n\t}\n\t@if (selectInput.panelFooterTpl(); as tpl) {\n\t\t<div>\n\t\t\t<ng-container *luPortal=\"tpl\" />\n\t\t</div>\n\t}\n</ng-template>\n", styles: ["@layer base{:root{--components-options-item-padding-vertical: var(--pr-t-spacings-50);--components-options-item-padding-horizontal: var(--pr-t-spacings-100);--components-options-item-multiple-padding: 2.25rem;--components-options-item-icon-color: var(--palettes-neutral-800);--components-options-checkbox-size: 1.25rem;--components-options-checkbox-color: var(--palettes-700, var(--palettes-product-700));--components-options-checkbox-border-radius: var(--pr-t-border-radius-small);--components-options-checkbox-border-color: var(--palettes-neutral-700);--components-options-establishment-multiple-padding: 2rem}}@layer reset,base,components,mods,product,utils;@layer mods{.textfield.mod-search{inline-size:100%}.textfield-input{outline:none}.checkbox.mod-formerEmployee{padding-block:var(--pr-t-spacings-50);padding-inline:var(--components-options-item-padding-horizontal);border-block-end:var(--commons-divider-width) solid var(--commons-divider-color);background-color:var(--palettes-neutral-50);font-style:italic}}@layer components{.optionPlaceholder{display:block;padding-block:var(--components-options-item-padding-vertical);padding-inline:var(--components-options-item-padding-horizontal);font-style:italic;color:var(--palettes-neutral-600)}}\n"], dependencies: [{ kind: "component", type: LuSelectPanelLayoutComponent, selector: "lu-select-panel-layout", inputs: ["loading", "trapFocus", "contentTabIndex"], outputs: ["scrolled"] }, { kind: "component", type: DialogComponent, selector: "lu-dialog", inputs: ["stacked", "fancyIllustration", "fancyIllustrationUrl"] }, { kind: "component", type: DialogHeaderComponent, selector: "lu-dialog-header", inputs: ["intl"] }, { kind: "component", type: DialogContentComponent, selector: "lu-dialog-content" }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox]):not([ngNoCva])[formControlName],textarea:not([ngNoCva])[formControlName],input:not([type=checkbox]):not([ngNoCva])[formControl],textarea:not([ngNoCva])[formControl],input:not([type=checkbox]):not([ngNoCva])[ngModel],textarea:not([ngNoCva])[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: _LuOptionComponent, selector: "lu-select-option", inputs: ["intl", "optionTpl", "option", "grouping", "hasChildren", "groupIndex", "optionIndex", "scrollIntoViewOptions", "groupTemplateLocation"], outputs: ["onlyParent", "onlyChildren"] }, { kind: "directive", type: PortalDirective, selector: "[luPortal]", inputs: ["luPortal", "luPortalContext"] }, { kind: "directive", type: _CoreSelectPanelElement, selector: "[luCoreSelectPanelElement]", inputs: ["elementId", "isSelected", "option", "disabled"], outputs: ["isSelectedChange", "selected"], exportAs: ["luCoreSelectPanelElement"] }, { kind: "component", type: ListboxComponent, selector: "lu-listbox", inputs: ["multiple", "tree", "state", "statusMsg"] }, { kind: "component", type: OptionComponent, selector: "lu-listbox-option", inputs: ["elementId", "checked", "mixed", "disabled", "hovered", "add", "group", "groupId", "select", "selectAll", "treeitemLevel"] }, { kind: "component", type: IconComponent, selector: "lu-icon, pr-icon", inputs: ["icon", "alt", "size", "color", "AI"] }, { kind: "component", type: TreeBranchComponent, selector: "lu-tree-branch", inputs: ["branch", "optionTpl", "optionIndex", "optionComparer", "selectedOptions", "simpleMode"], outputs: ["toggleOne", "selectMany", "unselectMany"] }, { kind: "pipe", type: _LuOptionGroupPipe, name: "luOptionGroup" }, { kind: "pipe", type: LuIsOptionSelectedPipe, name: "luIsOptionSelected" }, { kind: "pipe", type: TreeDisplayPipe, name: "luTreeDisplay" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
204
204
  }
205
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.4", ngImport: i0, type: LuSelectPanelComponent, decorators: [{
205
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.2.1", ngImport: i0, type: LuSelectPanelComponent, decorators: [{
206
206
  type: Component,
207
207
  args: [{ selector: 'lu-select-panel', changeDetection: ChangeDetectionStrategy.OnPush, host: {
208
208
  class: 'selectPanel',
@@ -231,7 +231,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.4", ngImpor
231
231
  provide: SELECT_PANEL_INSTANCE,
232
232
  useExisting: forwardRef(() => LuSelectPanelComponent),
233
233
  },
234
- ], template: "@if (selectInput.panelBottomSheetMode()) {\n\t<!-- Below the S breakpoint the panel is a dialog in `sheet` mode: the surface, the backdrop, the focus\n\ttrap, the close button and the focus restoration all come from the dialog, so the panel only fills in\n\tits title, its own search input \u2014 the field it covers is no longer reachable \u2014 and its content. -->\n\t<lu-dialog>\n\t\t<lu-dialog-header>\n\t\t\t@if (selectInput.panelTitle(); as title) {\n\t\t\t\t<!-- The interpolation and the marker must stay adjacent in the source: any whitespace between\n\t\t\t\tthem (even just a line break) renders as a literal space, pushing the asterisk away from the\n\t\t\t\ttitle instead of hugging it the way `.formLabel-required`'s own margin expects. -->\n\t\t\t\t@if (selectInput.panelTitleRequired()) {\n\t\t\t\t\t<h1>{{ title }}<sup class=\"formLabel-required\" aria-hidden=\"true\">*</sup></h1>\n\t\t\t\t} @else {\n\t\t\t\t\t<h1>{{ title }}</h1>\n\t\t\t\t}\n\t\t\t}\n\t\t\t<div dialogHeaderContent>\n\t\t\t\t<ng-container [ngTemplateOutlet]=\"sheetSearch\" />\n\t\t\t</div>\n\t\t</lu-dialog-header>\n\t\t<lu-dialog-content #sheetViewport (scroll)=\"onScroll($event)\">\n\t\t\t<ng-container [ngTemplateOutlet]=\"panelContent\" />\n\t\t</lu-dialog-content>\n\t</lu-dialog>\n} @else {\n\t<lu-select-panel-layout [loading]=\"loading()\" trapFocus (scrolled)=\"onScroll($event)\">\n\t\t<ng-container [ngTemplateOutlet]=\"panelContent\" />\n\t</lu-select-panel-layout>\n}\n\n<ng-template #sheetSearch>\n\t<div class=\"textField\">\n\t\t<div class=\"textField-input\">\n\t\t\t<input\n\t\t\t\tclass=\"textField-input-value\"\n\t\t\t\ttype=\"text\"\n\t\t\t\trole=\"combobox\"\n\t\t\t\taria-haspopup=\"listbox\"\n\t\t\t\t[attr.aria-expanded]=\"true\"\n\t\t\t\t[attr.aria-controls]=\"selectId\"\n\t\t\t\t[attr.placeholder]=\"intl().placeholder\"\n\t\t\t\t[ngModel]=\"clue()\"\n\t\t\t\t(ngModelChange)=\"selectInput.clueChanged($event)\"\n\t\t\t\t[ngModelOptions]=\"{ standalone: true }\"\n\t\t\t\t[readonly]=\"!searchable\"\n\t\t\t\t(keydown)=\"selectInput.onKeyDownNavigation($event)\"\n\t\t\t/>\n\t\t\t<div class=\"textField-input-affix\">\n\t\t\t\t<lu-icon class=\"textField-input-affix-icon\" icon=\"searchMagnifyingGlass\" />\n\t\t\t</div>\n\t\t</div>\n\t</div>\n</ng-template>\n\n<ng-template #panelContent>\n\t<lu-listbox [tree]=\"!!treeGenerator\" [state]=\"listboxState()\" [statusMsg]=\"listboxStatusMsg()\">\n\t\t<!-- The header is projected inside the listbox because it can contain selectable elements\n\t\tthat are referenced by aria-activedescendant -->\n\t\t<ng-container ngProjectAs=\"[listbox-header]\">\n\t\t\t@if (selectInput.panelHeaderTpl(); as tpl) {\n\t\t\t\t<div>\n\t\t\t\t\t<ng-container *luPortal=\"tpl\" />\n\t\t\t\t</div>\n\t\t\t}\n\t\t</ng-container>\n\t\t@if (grouping() && groupTemplateLocation() === \"group-header\") {\n\t\t\t@for (group of dataSourceOptions() | luOptionGroup: grouping().selector; track group.key; let groupIndex = $index) {\n\t\t\t\t<lu-listbox-option group [groupId]=\"selectId + '-group-' + group.key\" [elementId]=\"selectId + '-group-' + group.key\">\n\t\t\t\t\t<ng-container *luPortal=\"grouping().content; context: { $implicit: group }\" />\n\t\t\t\t\t<div optgroup class=\"listboxOptionWrapper\">\n\t\t\t\t\t\t<ng-template\n\t\t\t\t\t\t\t[ngTemplateOutlet]=\"optionsList\"\n\t\t\t\t\t\t\t[ngTemplateOutletContext]=\"{ $implicit: group.options, groupIndex: groupIndex }\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t</div>\n\t\t\t\t</lu-listbox-option>\n\t\t\t}\n\t\t}\n\t\t@if (!grouping() || groupTemplateLocation() !== \"group-header\") {\n\t\t\t<ng-template [ngTemplateOutlet]=\"optionsList\" [ngTemplateOutletContext]=\"{ $implicit: dataSourceOptions() }\" />\n\t\t}\n\t\t<ng-template #optionsList let-options let-groupIndex=\"groupIndex\">\n\t\t\t@if (treeGenerator) {\n\t\t\t\t@for (branch of options | luTreeDisplay: treeGenerator; let index = $index; track optionKey()(branch.node)) {\n\t\t\t\t\t<lu-tree-branch\n\t\t\t\t\t\t[branch]=\"branch\"\n\t\t\t\t\t\t[optionTpl]=\"optionTpl()\"\n\t\t\t\t\t\t[optionComparer]=\"optionComparer()\"\n\t\t\t\t\t\t[selectedOptions]=\"selectedOptions()\"\n\t\t\t\t\t\t[optionIndex]=\"index\"\n\t\t\t\t\t\t(toggleOne)=\"panelRef.emitValue($event)\"\n\t\t\t\t\t\tsimpleMode\n\t\t\t\t\t/>\n\t\t\t\t}\n\t\t\t} @else {\n\t\t\t\t@for (option of options; track optionKey()(option); let index = $index) {\n\t\t\t\t\t<lu-select-option\n\t\t\t\t\t\tluCoreSelectPanelElement\n\t\t\t\t\t\t[option]=\"option\"\n\t\t\t\t\t\t[optionTpl]=\"optionTpl()\"\n\t\t\t\t\t\t[optionIndex]=\"index\"\n\t\t\t\t\t\t[groupTemplateLocation]=\"groupTemplateLocation()\"\n\t\t\t\t\t\t[groupIndex]=\"groupIndex\"\n\t\t\t\t\t\t[grouping]=\"grouping()\"\n\t\t\t\t\t\t[scrollIntoViewOptions]=\"{ block: 'nearest' }\"\n\t\t\t\t\t\t[isSelected]=\"option | luIsOptionSelected: optionComparer() : selected()\"\n\t\t\t\t\t\t[class.withAddOption]=\"shouldDisplayAddOption()\"\n\t\t\t\t\t\t(selected)=\"panelRef.emitValue(option)\"\n\t\t\t\t\t\t(click)=\"panelRef.emitValue(option)\"\n\t\t\t\t\t/>\n\t\t\t\t}\n\t\t\t}\n\t\t</ng-template>\n\t</lu-listbox>\n\t@if (shouldDisplayAddOption()) {\n\t\t<lu-listbox-option\n\t\t\tadd\n\t\t\tclass=\"palette-product\"\n\t\t\tluCoreSelectPanelElement\n\t\t\t#addOptionElement=\"luCoreSelectPanelElement\"\n\t\t\telementId=\"picker-content-add\"\n\t\t\t[hovered]=\"addOptionElement.isHighlighted()\"\n\t\t\t(click)=\"selectInput.emitAddOption()\"\n\t\t\t(selected)=\"selectInput.emitAddOption()\"\n\t\t>\n\t\t\t<ng-container *luPortal=\"selectInput.addOptionLabel\" />\n\t\t</lu-listbox-option>\n\t}\n\t@if (selectInput.panelFooterTpl(); as tpl) {\n\t\t<div>\n\t\t\t<ng-container *luPortal=\"tpl\" />\n\t\t</div>\n\t}\n</ng-template>\n", styles: ["@layer base{:root{--components-options-item-padding-vertical: var(--pr-t-spacings-50);--components-options-item-padding-horizontal: var(--pr-t-spacings-100);--components-options-item-multiple-padding: 2.25rem;--components-options-item-icon-color: var(--palettes-neutral-800);--components-options-checkbox-size: 1.25rem;--components-options-checkbox-color: var(--palettes-700, var(--palettes-product-700));--components-options-checkbox-border-radius: var(--pr-t-border-radius-small);--components-options-checkbox-border-color: var(--palettes-neutral-700);--components-options-establishment-multiple-padding: 2rem}}@layer reset,base,components,mods,product,utils;@layer mods{.textfield.mod-search{inline-size:100%}.textfield-input{outline:none}.checkbox.mod-formerEmployee{padding-block:var(--pr-t-spacings-50);padding-inline:var(--components-options-item-padding-horizontal);border-block-end:var(--commons-divider-width) solid var(--commons-divider-color);background-color:var(--palettes-neutral-50);font-style:italic}}@layer components{.optionPlaceholder{display:block;padding-block:var(--components-options-item-padding-vertical);padding-inline:var(--components-options-item-padding-horizontal);font-style:italic;color:var(--palettes-neutral-600)}}\n"] }]
234
+ ], template: "@if (selectInput.panelBottomSheetMode()) {\n\t<!-- Below the S breakpoint the panel is a dialog in `sheet` mode: the surface, the backdrop, the focus\n\ttrap, the close button and the focus restoration all come from the dialog, so the panel only fills in\n\tits title, its own search input \u2014 the field it covers is no longer reachable \u2014 and its content. -->\n\t<lu-dialog>\n\t\t<lu-dialog-header>\n\t\t\t@if (selectInput.panelTitle(); as title) {\n\t\t\t\t<!-- The interpolation and the marker must stay adjacent in the source: any whitespace between\n\t\t\t\tthem (even just a line break) renders as a literal space, pushing the asterisk away from the\n\t\t\t\ttitle instead of hugging it the way `.formLabel-required`'s own margin expects. -->\n\t\t\t\t@if (selectInput.panelTitleRequired()) {\n\t\t\t\t\t<h1>{{ title }}<sup class=\"formLabel-required\" aria-hidden=\"true\">*</sup></h1>\n\t\t\t\t} @else {\n\t\t\t\t\t<h1>{{ title }}</h1>\n\t\t\t\t}\n\t\t\t}\n\t\t\t<div dialogHeaderContent>\n\t\t\t\t<ng-container [ngTemplateOutlet]=\"sheetSearch\" />\n\t\t\t</div>\n\t\t</lu-dialog-header>\n\t\t<lu-dialog-content #sheetViewport (scroll)=\"onScroll($event)\">\n\t\t\t<ng-container [ngTemplateOutlet]=\"panelContent\" />\n\t\t</lu-dialog-content>\n\t</lu-dialog>\n} @else {\n\t<lu-select-panel-layout [loading]=\"loading()\" trapFocus (scrolled)=\"onScroll($event)\">\n\t\t<ng-container [ngTemplateOutlet]=\"panelContent\" />\n\t</lu-select-panel-layout>\n}\n\n<ng-template #sheetSearch>\n\t<!-- A select with no search has nothing to type into, so its field is masked rather than rendered as a\n\tdead read-only input. It stays in the DOM: it carries the combobox semantics, it is the element\n\t`openSelectPanelSheet` focuses, and its `keydown` handler is what drives keyboard navigation. -->\n\t<div class=\"textField\" [class.pr-u-mask]=\"!searchable\">\n\t\t<div class=\"textField-input\">\n\t\t\t<input\n\t\t\t\tclass=\"textField-input-value\"\n\t\t\t\ttype=\"text\"\n\t\t\t\trole=\"combobox\"\n\t\t\t\taria-haspopup=\"listbox\"\n\t\t\t\t[attr.aria-expanded]=\"true\"\n\t\t\t\t[attr.aria-controls]=\"selectId\"\n\t\t\t\t[attr.placeholder]=\"intl().placeholder\"\n\t\t\t\t[ngModel]=\"clue()\"\n\t\t\t\t(ngModelChange)=\"selectInput.clueChanged($event)\"\n\t\t\t\t[ngModelOptions]=\"{ standalone: true }\"\n\t\t\t\t[readonly]=\"!searchable\"\n\t\t\t\t(keydown)=\"selectInput.onKeyDownNavigation($event)\"\n\t\t\t/>\n\t\t\t<div class=\"textField-input-affix\">\n\t\t\t\t<lu-icon class=\"textField-input-affix-icon\" icon=\"searchMagnifyingGlass\" />\n\t\t\t</div>\n\t\t</div>\n\t</div>\n</ng-template>\n\n<ng-template #panelContent>\n\t<lu-listbox [tree]=\"!!treeGenerator\" [state]=\"listboxState()\" [statusMsg]=\"listboxStatusMsg()\">\n\t\t<!-- The header is projected inside the listbox because it can contain selectable elements\n\t\tthat are referenced by aria-activedescendant -->\n\t\t<ng-container ngProjectAs=\"[listbox-header]\">\n\t\t\t@if (selectInput.panelHeaderTpl(); as tpl) {\n\t\t\t\t<div>\n\t\t\t\t\t<ng-container *luPortal=\"tpl\" />\n\t\t\t\t</div>\n\t\t\t}\n\t\t</ng-container>\n\t\t@if (grouping() && groupTemplateLocation() === \"group-header\") {\n\t\t\t@for (group of dataSourceOptions() | luOptionGroup: grouping().selector; track group.key; let groupIndex = $index) {\n\t\t\t\t<lu-listbox-option group [groupId]=\"selectId + '-group-' + group.key\" [elementId]=\"selectId + '-group-' + group.key\">\n\t\t\t\t\t<ng-container *luPortal=\"grouping().content; context: { $implicit: group }\" />\n\t\t\t\t\t<div optgroup class=\"listboxOptionWrapper\">\n\t\t\t\t\t\t<ng-template\n\t\t\t\t\t\t\t[ngTemplateOutlet]=\"optionsList\"\n\t\t\t\t\t\t\t[ngTemplateOutletContext]=\"{ $implicit: group.options, groupIndex: groupIndex }\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t</div>\n\t\t\t\t</lu-listbox-option>\n\t\t\t}\n\t\t}\n\t\t@if (!grouping() || groupTemplateLocation() !== \"group-header\") {\n\t\t\t<ng-template [ngTemplateOutlet]=\"optionsList\" [ngTemplateOutletContext]=\"{ $implicit: dataSourceOptions() }\" />\n\t\t}\n\t\t<ng-template #optionsList let-options let-groupIndex=\"groupIndex\">\n\t\t\t@if (treeGenerator) {\n\t\t\t\t@for (branch of options | luTreeDisplay: treeGenerator; let index = $index; track optionKey()(branch.node)) {\n\t\t\t\t\t<lu-tree-branch\n\t\t\t\t\t\t[branch]=\"branch\"\n\t\t\t\t\t\t[optionTpl]=\"optionTpl()\"\n\t\t\t\t\t\t[optionComparer]=\"optionComparer()\"\n\t\t\t\t\t\t[selectedOptions]=\"selectedOptions()\"\n\t\t\t\t\t\t[optionIndex]=\"index\"\n\t\t\t\t\t\t(toggleOne)=\"panelRef.emitValue($event)\"\n\t\t\t\t\t\tsimpleMode\n\t\t\t\t\t/>\n\t\t\t\t}\n\t\t\t} @else {\n\t\t\t\t@for (option of options; track optionKey()(option); let index = $index) {\n\t\t\t\t\t<lu-select-option\n\t\t\t\t\t\tluCoreSelectPanelElement\n\t\t\t\t\t\t[option]=\"option\"\n\t\t\t\t\t\t[optionTpl]=\"optionTpl()\"\n\t\t\t\t\t\t[optionIndex]=\"index\"\n\t\t\t\t\t\t[groupTemplateLocation]=\"groupTemplateLocation()\"\n\t\t\t\t\t\t[groupIndex]=\"groupIndex\"\n\t\t\t\t\t\t[grouping]=\"grouping()\"\n\t\t\t\t\t\t[scrollIntoViewOptions]=\"{ block: 'nearest' }\"\n\t\t\t\t\t\t[isSelected]=\"option | luIsOptionSelected: optionComparer() : selected()\"\n\t\t\t\t\t\t[class.withAddOption]=\"shouldDisplayAddOption()\"\n\t\t\t\t\t\t(selected)=\"panelRef.emitValue(option)\"\n\t\t\t\t\t\t(click)=\"panelRef.emitValue(option)\"\n\t\t\t\t\t/>\n\t\t\t\t}\n\t\t\t}\n\t\t</ng-template>\n\t</lu-listbox>\n\t@if (shouldDisplayAddOption()) {\n\t\t<lu-listbox-option\n\t\t\tadd\n\t\t\tclass=\"palette-product\"\n\t\t\tluCoreSelectPanelElement\n\t\t\t#addOptionElement=\"luCoreSelectPanelElement\"\n\t\t\telementId=\"picker-content-add\"\n\t\t\t[hovered]=\"addOptionElement.isHighlighted()\"\n\t\t\t(click)=\"selectInput.emitAddOption()\"\n\t\t\t(selected)=\"selectInput.emitAddOption()\"\n\t\t>\n\t\t\t<ng-container *luPortal=\"selectInput.addOptionLabel\" />\n\t\t</lu-listbox-option>\n\t}\n\t@if (selectInput.panelFooterTpl(); as tpl) {\n\t\t<div>\n\t\t\t<ng-container *luPortal=\"tpl\" />\n\t\t</div>\n\t}\n</ng-template>\n", styles: ["@layer base{:root{--components-options-item-padding-vertical: var(--pr-t-spacings-50);--components-options-item-padding-horizontal: var(--pr-t-spacings-100);--components-options-item-multiple-padding: 2.25rem;--components-options-item-icon-color: var(--palettes-neutral-800);--components-options-checkbox-size: 1.25rem;--components-options-checkbox-color: var(--palettes-700, var(--palettes-product-700));--components-options-checkbox-border-radius: var(--pr-t-border-radius-small);--components-options-checkbox-border-color: var(--palettes-neutral-700);--components-options-establishment-multiple-padding: 2rem}}@layer reset,base,components,mods,product,utils;@layer mods{.textfield.mod-search{inline-size:100%}.textfield-input{outline:none}.checkbox.mod-formerEmployee{padding-block:var(--pr-t-spacings-50);padding-inline:var(--components-options-item-padding-horizontal);border-block-end:var(--commons-divider-width) solid var(--commons-divider-color);background-color:var(--palettes-neutral-50);font-style:italic}}@layer components{.optionPlaceholder{display:block;padding-block:var(--components-options-item-padding-vertical);padding-inline:var(--components-options-item-padding-horizontal);font-style:italic;color:var(--palettes-neutral-600)}}\n"] }]
235
235
  }], ctorParameters: () => [], propDecorators: { sheetViewport: [{ type: i0.ViewChild, args: ['sheetViewport', { ...{ read: ElementRef }, isSignal: true }] }] } });
236
236
 
237
237
  class BaseSelectPanelRef extends LuSelectPanelRef {
@@ -388,10 +388,10 @@ class LuSimpleSelectPanelRefFactory {
388
388
  overlayConfig.maxWidth = '100vw';
389
389
  return overlayConfig;
390
390
  }
391
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.4", ngImport: i0, type: LuSimpleSelectPanelRefFactory, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
392
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "22.1.4", ngImport: i0, type: LuSimpleSelectPanelRefFactory }); }
391
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.2.1", ngImport: i0, type: LuSimpleSelectPanelRefFactory, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
392
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "22.2.1", ngImport: i0, type: LuSimpleSelectPanelRefFactory }); }
393
393
  }
394
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.4", ngImport: i0, type: LuSimpleSelectPanelRefFactory, decorators: [{
394
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.2.1", ngImport: i0, type: LuSimpleSelectPanelRefFactory, decorators: [{
395
395
  type: Injectable
396
396
  }] });
397
397
 
@@ -429,8 +429,8 @@ class LuSimpleSelectInputComponent extends ALuSelectInputComponent {
429
429
  }
430
430
  super.enableFilterPillMode();
431
431
  }
432
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.4", ngImport: i0, type: LuSimpleSelectInputComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
433
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.1.4", type: LuSimpleSelectInputComponent, isStandalone: true, selector: "lu-simple-select", inputs: { intl: { classPropertyName: "intl", publicName: "intl", isSignal: true, isRequired: false, transformFunction: null }, autocomplete: { classPropertyName: "autocomplete", publicName: "autocomplete", isSignal: true, isRequired: false, transformFunction: null }, impersonation: { classPropertyName: "impersonation", publicName: "impersonation", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "class.mod-filterPill": "this.filterPillMode && !this.impersonation()", "class.mod-impersonation": "this.impersonation()" }, classAttribute: "simpleSelect" }, providers: [
432
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.2.1", ngImport: i0, type: LuSimpleSelectInputComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
433
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.2.1", type: LuSimpleSelectInputComponent, isStandalone: true, selector: "lu-simple-select", inputs: { intl: { classPropertyName: "intl", publicName: "intl", isSignal: true, isRequired: false, transformFunction: null }, autocomplete: { classPropertyName: "autocomplete", publicName: "autocomplete", isSignal: true, isRequired: false, transformFunction: null }, impersonation: { classPropertyName: "impersonation", publicName: "impersonation", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "class.mod-filterPill": "this.filterPillMode && !this.impersonation()", "class.mod-impersonation": "this.impersonation()" }, classAttribute: "simpleSelect" }, providers: [
434
434
  {
435
435
  provide: NG_VALUE_ACCESSOR,
436
436
  useExisting: forwardRef(() => LuSimpleSelectInputComponent),
@@ -450,7 +450,7 @@ class LuSimpleSelectInputComponent extends ALuSelectInputComponent {
450
450
  },
451
451
  ], viewQueries: [{ propertyName: "filterPillPanelAnchorRef", first: true, predicate: ["filterPillPanelAnchor"], descendants: true, read: ViewContainerRef, isSignal: true }], usesInheritance: true, ngImport: i0, template: "<div class=\"simpleSelect-field\">\n\t<span class=\"simpleSelect-field-prefix\">\n\t\t@if (prefix(); as prefix) {\n\t\t\t<ng-container *luPortal=\"prefix\" />\n\t\t}\n\t</span>\n\t@if (bottomSheetMode()) {\n\t\t<!--\n\t\t\tThe panel opens as a modal sheet that embeds its own search input, so the field itself is only ever\n\t\t\ta trigger. Keeping a text input here makes iOS focus it and raise the software keyboard on a field\n\t\t\tthat is about to be covered by the sheet; a button is both what this control actually is and what\n\t\t\tmobile browsers treat as a tap target rather than a text entry.\n\t\t-->\n\t\t<button\n\t\t\tclass=\"simpleSelect-field-input mod-button\"\n\t\t\ttype=\"button\"\n\t\t\taria-haspopup=\"dialog\"\n\t\t\t[attr.aria-expanded]=\"panelOpenSignal()\"\n\t\t\t[attr.aria-controls]=\"ariaControls\"\n\t\t\t[disabled]=\"(disabled$ | async) ?? false\"\n\t\t\tluInput\n\t\t\t#inputElement\n\t\t\t[attr.tabindex]=\"inputTabindex()\"\n\t\t\t[luInputLabelledBy]=\"valueID\"\n\t\t>\n\t\t\t@if (!hasValue()) {\n\t\t\t\t<span class=\"simpleSelect-field-placeholder\">{{ inputPlaceholder ? inputPlaceholder : intl().placeholder }}</span>\n\t\t\t}\n\t\t</button>\n\t} @else {\n\t\t<input\n\t\t\tclass=\"simpleSelect-field-input\"\n\t\t\ttype=\"text\"\n\t\t\trole=\"combobox\"\n\t\t\taria-haspopup=\"listbox\"\n\t\t\t[attr.aria-activedescendant]=\"activeDescendant$ | async\"\n\t\t\t[attr.aria-expanded]=\"panelOpenSignal()\"\n\t\t\t[attr.aria-controls]=\"ariaControls\"\n\t\t\t[attr.placeholder]=\"inputPlaceholder ? inputPlaceholder : intl().placeholder\"\n\t\t\t[ngModel]=\"clue\"\n\t\t\t(ngModelChange)=\"clueChanged($event)\"\n\t\t\t[ngModelOptions]=\"{ standalone: true }\"\n\t\t\t[readonly]=\"!searchable\"\n\t\t\t[disabled]=\"(disabled$ | async) ?? false\"\n\t\t\t(keyup.space)=\"inputSpace($event)\"\n\t\t\tluInput\n\t\t\t#inputElement\n\t\t\t[attr.autocomplete]=\"autocomplete()\"\n\t\t\t[attr.tabindex]=\"inputTabindex()\"\n\t\t\t[luInputLabelledBy]=\"valueID\"\n\t\t/>\n\t}\n\t<div class=\"simpleSelect-field-value\" [attr.id]=\"valueID\">\n\t\t<ng-container *ngTemplateOutlet=\"currentValueDisplayerTpl\" />\n\t</div>\n\t@if (!filterPillMode && !impersonation()) {\n\t\t@if (clearable() && hasValue() && (disabled$ | async) === false) {\n\t\t\t<lu-clear class=\"simpleSelect-field-clear\" (onClear)=\"clearValue($event)\">{{ intl().clear }}</lu-clear>\n\t\t}\n\t\t<lu-icon icon=\"arrowChevronBottom\" class=\"simpleSelect-field-icon\" />\n\t}\n\t<lu-icon icon=\"searchMagnifyingGlass\" class=\"simpleSelect-field-icon mod-search\" />\n</div>\n<ng-container #filterPillPanelAnchor />\n<ng-container *luFilterPillDisplayer>\n\t<ng-container *ngTemplateOutlet=\"currentValueDisplayerTpl\" />\n</ng-container>\n\n<ng-template #currentValueDisplayerTpl>\n\t<ng-container *luOptionOutlet=\"displayerTpl(); value: value\" />\n</ng-template>\n\n@if (!ignorePresentation()) {\n\t<ng-container *luPresentationDisplayDefault>\n\t\t@if (value) {\n\t\t\t<ng-container *ngTemplateOutlet=\"currentValueDisplayerTpl\" />\n\t\t} @else {\n\t\t\t<span aria-hidden=\"true\" data-content-before=\"\u2013\"></span>\n\t\t}\n\t</ng-container>\n}\n", styles: ["@layer components{.simpleSelect{--components-simpleSelect-width: auto;--components-simpleSelect-font: var(--pr-t-font-body-M);--components-simpleSelect-padding: var(--pr-t-spacings-100);--components-simpleSelect-gap: var(--pr-t-spacings-100);--components-simpleSelect-background: var(--pr-t-color-input-background);--components-simpleSelect-value-color: var(--pr-t-color-input-text);--components-simpleSelect-border-color: var(--pr-t-color-input-border);--components-simpleSelect-placeholder: var(--pr-t-color-input-text-placeholder);--components-simpleSelect-arrow-color: var(--pr-t-color-input-icon);display:block;inline-size:var(--components-simpleSelect-width)}.simpleSelect-field{display:grid;grid-template-columns:auto 1fr auto auto;align-items:center;box-shadow:0 0 0 1px var(--components-simpleSelect-border-color);background-color:var(--components-simpleSelect-background);border-radius:var(--pr-t-border-radius-input);padding:var(--components-simpleSelect-padding);overflow:hidden;outline:none;cursor:pointer}.simpleSelect-field:hover{--components-simpleSelect-border-color: var(--pr-t-color-input-border-hover)}.simpleSelect-field-prefix{display:none}.simpleSelect-field-prefix:not(:empty){display:flex;margin-inline-end:var(--pr-t-spacings-50)}.simpleSelect-field-input{grid-column-start:2;grid-row-start:1;font:var(--components-simpleSelect-font);padding:0;background-color:transparent;color:var(--components-simpleSelect-value-color);border:0;outline:none;position:relative;z-index:1;min-inline-size:0;cursor:pointer}.simpleSelect-field-input::placeholder{color:var(--components-simpleSelect-placeholder)}.simpleSelect-field-input.mod-button{appearance:none;text-align:start;align-self:stretch;display:flex;align-items:center}.simpleSelect-field-placeholder{color:var(--components-simpleSelect-placeholder);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block}.simpleSelect-field-value{grid-column-start:2;grid-row-start:1;inline-size:100%;font:var(--components-simpleSelect-font);color:var(--components-simpleSelect-value-color);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:color var(--commons-animations-durations-fast) ease}.simpleSelect-field-clear{grid-column-start:-2;margin-inline-start:var(--components-simpleSelect-gap)}.simpleSelect-field-icon{grid-column-start:-1;margin-inline-start:var(--components-simpleSelect-gap);color:var(--components-simpleSelect-arrow-color);transition:transform var(--commons-animations-durations-standard) ease}.simpleSelect-field-icon .lucca-icon{--icon-size: 1.5rem}.simpleSelect-field-icon.mod-search{display:none}}@layer mods{.simpleSelect:has(.simpleSelect-field-input:focus-visible) .simpleSelect-field{outline:2px solid var(--palettes-700, var(--palettes-product-700));outline-offset:3px}.simpleSelect:has(.simpleSelect-field-input:focus-visible) .simpleSelect-field-value{color:var(--components-simpleSelect-value-color)}.simpleSelect:has(.simpleSelect-field-input:focus-visible):has(.simpleSelect-field-input[aria-expanded=true]) .simpleSelect-field-value{color:var(--components-simpleSelect-placeholder)}.simpleSelect:has(.simpleSelect-field-input:focus-visible):has(.simpleSelect-field-input[aria-expanded=true]) .simpleSelect-field-icon{transform:rotate(180deg)}.simpleSelect:not(.mod-noClueIcon):has(.simpleSelect-field-input:focus-visible):not(:has(.simpleSelect-field-input:read-only)) .simpleSelect-field-icon,.simpleSelect:not(.mod-noClueIcon):has(.simpleSelect-field-input[aria-expanded=true]):not(:has(.simpleSelect-field-input:read-only)) .simpleSelect-field-icon{display:none}.simpleSelect:not(.mod-noClueIcon):has(.simpleSelect-field-input:focus-visible):not(:has(.simpleSelect-field-input:read-only)) .simpleSelect-field-icon.mod-search,.simpleSelect:not(.mod-noClueIcon):has(.simpleSelect-field-input[aria-expanded=true]):not(:has(.simpleSelect-field-input:read-only)) .simpleSelect-field-icon.mod-search{display:inline-flex;transform:none}.simpleSelect:has(.simpleSelect-field-input[aria-invalid=true]){--components-simpleSelect-border-color: var(--pr-t-color-input-border-critical);--components-simpleSelect-background: var(--pr-t-color-input-background-critical);--components-simpleSelect-placeholder: var(--pr-t-color-input-text-placeholder-critical)}.simpleSelect:has(.simpleSelect-field-input[aria-invalid=true]) .simpleSelect-field:hover{--components-simpleSelect-border-color: var(--pr-t-color-input-border-critical-hover)}.simpleSelect:has(.simpleSelect-field-input:disabled){--components-simpleSelect-background: var(--pr-t-color-input-background-disabled);--components-simpleSelect-placeholder: var(--commons-disabled-placeholder);--components-simpleSelect-value-color: var(--pr-t-color-input-text-disabled);--components-simpleSelect-arrow-color: var(--pr-t-color-input-icon-disabled)}.simpleSelect:has(.simpleSelect-field-input:disabled) .simpleSelect-field{pointer-events:none}.simpleSelect.mod-width10{--components-simpleSelect-width: 5rem}.simpleSelect.mod-width20{--components-simpleSelect-width: 10rem}.simpleSelect.mod-width30{--components-simpleSelect-width: 15rem}.simpleSelect.mod-width40{--components-simpleSelect-width: 20rem}.simpleSelect.mod-width50{--components-simpleSelect-width: 25rem}.simpleSelect.mod-width60{--components-simpleSelect-width: 30rem}.simpleSelect.mod-S{--components-simpleSelect-font: var(--pr-t-font-body-S);--components-simpleSelect-padding: var(--pr-t-spacings-75);--components-simpleSelect-gap: var(--pr-t-spacings-75)}.simpleSelect.mod-S .simpleSelect-field-icon .lucca-icon{--icon-size: 1.25rem}.simpleSelect.mod-S .simpleSelect-field-clear.clear,.simpleSelect.mod-S .simpleSelect-field-clear:not(.clear){--components-clear-size: .75rem;--icon-size: .75rem}.simpleSelect.mod-XS{--components-simpleSelect-font: var(--pr-t-font-body-XS);--components-simpleSelect-padding: var(--pr-t-spacings-50);--components-simpleSelect-gap: var(--pr-t-spacings-50)}.simpleSelect.mod-XS .simpleSelect-field-icon .lucca-icon{--icon-size: 1rem}.simpleSelect.mod-XS .simpleSelect-field-clear.clear,.simpleSelect.mod-XS .simpleSelect-field-clear:not(.clear){--components-clear-size: .75rem;--icon-size: .75rem}.simpleSelect.mod-impersonation,.simpleSelect.mod-filterPill{inline-size:26.5rem;max-inline-size:calc(100vi - 2.5rem)}.simpleSelect.mod-impersonation .simpleSelect-field,.simpleSelect.mod-filterPill .simpleSelect-field{position:relative;z-index:1}.simpleSelect.mod-impersonation lu-simple-select-default-option.pr-u-ellipsis,.simpleSelect.mod-filterPill lu-simple-select-default-option.pr-u-ellipsis{white-space:normal!important}.simpleSelect.mod-impersonation .lu-picker-content,.simpleSelect.mod-filterPill .lu-picker-content{animation:none;box-shadow:none;border-radius:0;background-color:transparent;padding:var(--pr-t-spacings-50);margin:var(--pr-t-spacings-75) calc(var(--pr-t-spacings-100) * -1) calc(var(--pr-t-spacings-100) * -1)}.simpleSelect.is-searchFilled .simpleSelect-field-value{display:none}.simpleSelect.is-selected .simpleSelect-field-input::placeholder{opacity:0}.simpleSelect.is-selected.is-searchFilled .simpleSelect-field-input::placeholder{opacity:0}.simpleSelect.is-selected.is-searchFilled .simpleSelect-field-value{display:none}}@layer mods{.dialog.mod-select{--components-dialog-animationDuration: 0s;--components-dialog-insideHeaderTitleAlign: center;--components-dialog-insideHeaderTitleFont: var(--pr-t-font-heading-4);--components-dialog-insideHeaderColumns: 1fr auto 1fr;--components-dialog-inside-header-button-justifySelf: end;--components-dialog-insideHeaderAreas: \"spacer container close \" \"content content content\";--components-dialog-inside-header-paddingInline: var(--pr-t-spacings-200);--components-dialog-inside-header-content-paddingBlockStart: var(--pr-t-spacings-100);--components-dialog-insideContent-paddingInline: var(--pr-t-spacings-50);--components-dialog-insideContent-paddingBlock: var(--pr-t-spacings-50)}}@layer components{.clear{--components-clear-display: grid;--components-clear-size: 1rem;--components-clear-background: var(--palettes-800, var(--palettes-neutral-800));--components-clear-cross-color: var(--palettes-0, var(--palettes-neutral-0));--components-clear-background-image: url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' height='16' width='16' fill='none'%3E%3Cpath d='M5.80473 4.86192C5.54438 4.60157 5.12227 4.60157 4.86192 4.86192C4.60157 5.12227 4.60157 5.54438 4.86192 5.80473L7.05718 7.99999L4.86192 10.1953C4.60157 10.4556 4.60157 10.8777 4.86192 11.1381C5.12227 11.3984 5.54438 11.3984 5.80473 11.1381L7.99999 8.9428L10.1953 11.1381C10.4556 11.3984 10.8777 11.3984 11.1381 11.1381C11.3984 10.8777 11.3984 10.4556 11.1381 10.1953L8.9428 7.99999L11.1381 5.80473C11.3984 5.54438 11.3984 5.12227 11.1381 4.86192C10.8777 4.60157 10.4556 4.60157 10.1953 4.86192L7.99999 7.05718L5.80473 4.86192Z' fill='currentColor'/%3E%3C/svg%3E\");padding:0;border:0;inline-size:100%;background-color:transparent;color:inherit;text-align:start;display:block;font:inherit;cursor:pointer;display:var(--components-clear-display);grid-template-columns:1fr;grid-template-rows:1fr;grid-template-areas:\"main\";align-items:normal;flex-shrink:0;inline-size:var(--components-clear-size);block-size:var(--components-clear-size);border-radius:var(--pr-t-border-radius-full)}.clear:before,.clear:after{content:\"\";grid-area:main}.clear:before{border-radius:var(--pr-t-border-radius-full);background-color:var(--components-clear-background)}.clear:after{-webkit-mask-image:var(--components-clear-background-image);mask-image:var(--components-clear-background-image);-webkit-mask-size:var(--components-clear-size);mask-size:var(--components-clear-size);-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;background-color:var(--components-clear-cross-color)}.clear:hover{--components-clear-cross-color: var(--palettes-0, var(--palettes-neutral-0));--components-clear-background: var(--palettes-700, var(--palettes-neutral-700))}.clear:focus-visible{outline:2px solid var(--palettes-700, var(--palettes-product-700));outline-offset:2px;border-radius:50%}.clear:active{--components-clear-background: var(--palettes-900, var(--palettes-neutral-900))}.clear .lucca-icon{display:none}}@layer mods{.clear.mod-S{--components-clear-size: .75rem;--icon-size: .75rem}.clear.mod-inverted{--components-clear-cross-color: var(--palettes-800, var(--palettes-neutral-800));--components-clear-background: var(--palettes-0, var(--palettes-neutral-0))}.clear.mod-inverted:hover{--components-clear-background: var(--palettes-50, var(--palettes-neutral-50))}.clear.mod-inverted:active{--components-clear-background: var(--palettes-100, var(--palettes-neutral-100))}.clear[disabled]{cursor:default;--components-clear-cross-color: var(--palettes-neutral-500)}.clear[disabled],.clear[disabled]:hover,.clear[disabled]:active{--components-clear-background: var(--palettes-neutral-300)}.clear[hidden],.filterPill[disabled] .clear,.filterPill:not(.is-filled) .clear,.textfield-input[disabled] .clear,.textfield-input:not(.is-filled) .clear{--components-clear-display: none}.multiSelect.is-selected:has(.multipleSelect-clear) .clear{--components-clear-display: grid}}\n"], dependencies: [{ kind: "directive", type: _LuOptionOutletDirective, selector: "[luOptionOutlet]", inputs: ["luOptionOutlet", "luOptionOutletValue", "luOptionShowNull"] }, { kind: "ngmodule", type: OverlayModule }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox]):not([ngNoCva])[formControlName],textarea:not([ngNoCva])[formControlName],input:not([type=checkbox]):not([ngNoCva])[formControl],textarea:not([ngNoCva])[formControl],input:not([type=checkbox]):not([ngNoCva])[ngModel],textarea:not([ngNoCva])[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: InputDirective, selector: "[luInput]", inputs: ["luInputStandalone", "luInputLabelledBy", "luInputDescribedBy"] }, { kind: "directive", type: FilterPillDisplayerDirective, selector: "[luFilterPillDisplayer]" }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: IconComponent, selector: "lu-icon, pr-icon", inputs: ["icon", "alt", "size", "color", "AI"] }, { kind: "component", type: ClearComponent, selector: "lu-clear", inputs: ["intl", "size", "disabled", "palette", "inverted"], outputs: ["onClear"], exportAs: ["luClearer"] }, { kind: "directive", type: PortalDirective, selector: "[luPortal]", inputs: ["luPortal", "luPortalContext"] }, { kind: "directive", type: _PresentationDisplayDefaultDirective, selector: "[luPresentationDisplayDefault]" }, { kind: "pipe", type: AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
452
452
  }
453
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.4", ngImport: i0, type: LuSimpleSelectInputComponent, decorators: [{
453
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.2.1", ngImport: i0, type: LuSimpleSelectInputComponent, decorators: [{
454
454
  type: Component,
455
455
  args: [{ selector: 'lu-simple-select', host: {
456
456
  class: 'simpleSelect',