@lucca-front/ng 21.0.2 → 21.0.3

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 (159) hide show
  1. package/fesm2022/lucca-front-ng-app-layout.mjs +2 -2
  2. package/fesm2022/lucca-front-ng-app-layout.mjs.map +1 -1
  3. package/fesm2022/lucca-front-ng-box.mjs.map +1 -1
  4. package/fesm2022/lucca-front-ng-breadcrumbs.mjs.map +1 -1
  5. package/fesm2022/lucca-front-ng-button.mjs +21 -0
  6. package/fesm2022/lucca-front-ng-button.mjs.map +1 -1
  7. package/fesm2022/lucca-front-ng-callout.mjs +38 -12
  8. package/fesm2022/lucca-front-ng-callout.mjs.map +1 -1
  9. package/fesm2022/lucca-front-ng-chip.mjs +32 -2
  10. package/fesm2022/lucca-front-ng-chip.mjs.map +1 -1
  11. package/fesm2022/lucca-front-ng-clear.mjs +17 -2
  12. package/fesm2022/lucca-front-ng-clear.mjs.map +1 -1
  13. package/fesm2022/lucca-front-ng-comment.mjs +20 -18
  14. package/fesm2022/lucca-front-ng-comment.mjs.map +1 -1
  15. package/fesm2022/lucca-front-ng-container.mjs +5 -7
  16. package/fesm2022/lucca-front-ng-container.mjs.map +1 -1
  17. package/fesm2022/lucca-front-ng-core-select-job-qualification.mjs +0 -2
  18. package/fesm2022/lucca-front-ng-core-select-job-qualification.mjs.map +1 -1
  19. package/fesm2022/lucca-front-ng-core-select-user.mjs +2 -2
  20. package/fesm2022/lucca-front-ng-core-select-user.mjs.map +1 -1
  21. package/fesm2022/lucca-front-ng-core-select.mjs +3 -4
  22. package/fesm2022/lucca-front-ng-core-select.mjs.map +1 -1
  23. package/fesm2022/lucca-front-ng-date.mjs +4 -4
  24. package/fesm2022/lucca-front-ng-date.mjs.map +1 -1
  25. package/fesm2022/lucca-front-ng-date2.mjs +4 -4
  26. package/fesm2022/lucca-front-ng-date2.mjs.map +1 -1
  27. package/fesm2022/lucca-front-ng-dialog.mjs +2 -2
  28. package/fesm2022/lucca-front-ng-dialog.mjs.map +1 -1
  29. package/fesm2022/lucca-front-ng-divider.mjs +10 -1
  30. package/fesm2022/lucca-front-ng-divider.mjs.map +1 -1
  31. package/fesm2022/lucca-front-ng-empty-state.mjs +16 -0
  32. package/fesm2022/lucca-front-ng-empty-state.mjs.map +1 -1
  33. package/fesm2022/lucca-front-ng-fancy-box.mjs +12 -0
  34. package/fesm2022/lucca-front-ng-fancy-box.mjs.map +1 -1
  35. package/fesm2022/lucca-front-ng-filter-pills.mjs +3 -3
  36. package/fesm2022/lucca-front-ng-filter-pills.mjs.map +1 -1
  37. package/fesm2022/lucca-front-ng-footer.mjs +3 -0
  38. package/fesm2022/lucca-front-ng-footer.mjs.map +1 -1
  39. package/fesm2022/lucca-front-ng-form-field.mjs +2 -2
  40. package/fesm2022/lucca-front-ng-form-field.mjs.map +1 -1
  41. package/fesm2022/lucca-front-ng-form-header.mjs +3 -0
  42. package/fesm2022/lucca-front-ng-form-header.mjs.map +1 -1
  43. package/fesm2022/lucca-front-ng-form.mjs +2 -2
  44. package/fesm2022/lucca-front-ng-form.mjs.map +1 -1
  45. package/fesm2022/lucca-front-ng-forms-phone-number-input.mjs +2 -3
  46. package/fesm2022/lucca-front-ng-forms-phone-number-input.mjs.map +1 -1
  47. package/fesm2022/lucca-front-ng-forms-rich-text-input.mjs +1 -1
  48. package/fesm2022/lucca-front-ng-forms-rich-text-input.mjs.map +1 -1
  49. package/fesm2022/lucca-front-ng-forms.mjs +14 -13
  50. package/fesm2022/lucca-front-ng-forms.mjs.map +1 -1
  51. package/fesm2022/lucca-front-ng-gauge.mjs +28 -5
  52. package/fesm2022/lucca-front-ng-gauge.mjs.map +1 -1
  53. package/fesm2022/lucca-front-ng-grid.mjs +3 -3
  54. package/fesm2022/lucca-front-ng-grid.mjs.map +1 -1
  55. package/fesm2022/lucca-front-ng-highlight-data.mjs +31 -26
  56. package/fesm2022/lucca-front-ng-highlight-data.mjs.map +1 -1
  57. package/fesm2022/lucca-front-ng-horizontal-navigation.mjs +3 -0
  58. package/fesm2022/lucca-front-ng-horizontal-navigation.mjs.map +1 -1
  59. package/fesm2022/lucca-front-ng-icon.mjs +15 -0
  60. package/fesm2022/lucca-front-ng-icon.mjs.map +1 -1
  61. package/fesm2022/lucca-front-ng-inline-message.mjs +12 -0
  62. package/fesm2022/lucca-front-ng-inline-message.mjs.map +1 -1
  63. package/fesm2022/lucca-front-ng-link.mjs +15 -0
  64. package/fesm2022/lucca-front-ng-link.mjs.map +1 -1
  65. package/fesm2022/lucca-front-ng-listbox.mjs +17 -5
  66. package/fesm2022/lucca-front-ng-listbox.mjs.map +1 -1
  67. package/fesm2022/lucca-front-ng-listing.mjs +36 -7
  68. package/fesm2022/lucca-front-ng-listing.mjs.map +1 -1
  69. package/fesm2022/lucca-front-ng-loading.mjs.map +1 -1
  70. package/fesm2022/lucca-front-ng-main-layout.mjs +8 -2
  71. package/fesm2022/lucca-front-ng-main-layout.mjs.map +1 -1
  72. package/fesm2022/lucca-front-ng-mobile-push.mjs +18 -10
  73. package/fesm2022/lucca-front-ng-mobile-push.mjs.map +1 -1
  74. package/fesm2022/lucca-front-ng-multi-select.mjs +7 -4
  75. package/fesm2022/lucca-front-ng-multi-select.mjs.map +1 -1
  76. package/fesm2022/lucca-front-ng-new-badge.mjs +3 -0
  77. package/fesm2022/lucca-front-ng-new-badge.mjs.map +1 -1
  78. package/fesm2022/lucca-front-ng-numeric-badge.mjs +10 -1
  79. package/fesm2022/lucca-front-ng-numeric-badge.mjs.map +1 -1
  80. package/fesm2022/lucca-front-ng-option.mjs +5 -5
  81. package/fesm2022/lucca-front-ng-option.mjs.map +1 -1
  82. package/fesm2022/lucca-front-ng-page-header.mjs +9 -0
  83. package/fesm2022/lucca-front-ng-page-header.mjs.map +1 -1
  84. package/fesm2022/lucca-front-ng-pagination.mjs +24 -0
  85. package/fesm2022/lucca-front-ng-pagination.mjs.map +1 -1
  86. package/fesm2022/lucca-front-ng-plg-push.mjs +6 -0
  87. package/fesm2022/lucca-front-ng-plg-push.mjs.map +1 -1
  88. package/fesm2022/lucca-front-ng-popover2.mjs +18 -8
  89. package/fesm2022/lucca-front-ng-popover2.mjs.map +1 -1
  90. package/fesm2022/lucca-front-ng-progress-bar.mjs +12 -5
  91. package/fesm2022/lucca-front-ng-progress-bar.mjs.map +1 -1
  92. package/fesm2022/lucca-front-ng-read-more.mjs +16 -1
  93. package/fesm2022/lucca-front-ng-read-more.mjs.map +1 -1
  94. package/fesm2022/lucca-front-ng-resource-card.mjs +6 -6
  95. package/fesm2022/lucca-front-ng-resource-card.mjs.map +1 -1
  96. package/fesm2022/lucca-front-ng-scroll-box.mjs +5 -2
  97. package/fesm2022/lucca-front-ng-scroll-box.mjs.map +1 -1
  98. package/fesm2022/lucca-front-ng-segmented-control-tabs.mjs +9 -3
  99. package/fesm2022/lucca-front-ng-segmented-control-tabs.mjs.map +1 -1
  100. package/fesm2022/lucca-front-ng-segmented-control.mjs +16 -1
  101. package/fesm2022/lucca-front-ng-segmented-control.mjs.map +1 -1
  102. package/fesm2022/lucca-front-ng-simple-select.mjs +6 -3
  103. package/fesm2022/lucca-front-ng-simple-select.mjs.map +1 -1
  104. package/fesm2022/lucca-front-ng-skeleton.mjs +63 -12
  105. package/fesm2022/lucca-front-ng-skeleton.mjs.map +1 -1
  106. package/fesm2022/lucca-front-ng-sortable-list.mjs +24 -0
  107. package/fesm2022/lucca-front-ng-sortable-list.mjs.map +1 -1
  108. package/fesm2022/lucca-front-ng-status-badge.mjs +12 -0
  109. package/fesm2022/lucca-front-ng-status-badge.mjs.map +1 -1
  110. package/fesm2022/lucca-front-ng-tag.mjs +6 -0
  111. package/fesm2022/lucca-front-ng-tag.mjs.map +1 -1
  112. package/fesm2022/lucca-front-ng-time.mjs +4 -4
  113. package/fesm2022/lucca-front-ng-time.mjs.map +1 -1
  114. package/fesm2022/lucca-front-ng-vertical-navigation.mjs +30 -0
  115. package/fesm2022/lucca-front-ng-vertical-navigation.mjs.map +1 -1
  116. package/package.json +3 -3
  117. package/src/components/cdk/_overlay.scss +5 -0
  118. package/src/definitions/option/_option-item.scss +1 -0
  119. package/types/lucca-front-ng-breadcrumbs.d.ts +1 -1
  120. package/types/lucca-front-ng-button.d.ts +21 -0
  121. package/types/lucca-front-ng-callout.d.ts +32 -2
  122. package/types/lucca-front-ng-chip.d.ts +32 -2
  123. package/types/lucca-front-ng-clear.d.ts +20 -5
  124. package/types/lucca-front-ng-comment.d.ts +19 -11
  125. package/types/lucca-front-ng-container.d.ts +4 -4
  126. package/types/lucca-front-ng-divider.d.ts +10 -0
  127. package/types/lucca-front-ng-empty-state.d.ts +16 -0
  128. package/types/lucca-front-ng-fancy-box.d.ts +12 -0
  129. package/types/lucca-front-ng-footer.d.ts +3 -0
  130. package/types/lucca-front-ng-form-header.d.ts +3 -0
  131. package/types/lucca-front-ng-forms.d.ts +3 -2
  132. package/types/lucca-front-ng-gauge.d.ts +25 -0
  133. package/types/lucca-front-ng-grid.d.ts +1 -1
  134. package/types/lucca-front-ng-highlight-data.d.ts +36 -15
  135. package/types/lucca-front-ng-horizontal-navigation.d.ts +3 -0
  136. package/types/lucca-front-ng-icon.d.ts +15 -0
  137. package/types/lucca-front-ng-inline-message.d.ts +12 -0
  138. package/types/lucca-front-ng-link.d.ts +15 -0
  139. package/types/lucca-front-ng-listbox.d.ts +16 -4
  140. package/types/lucca-front-ng-listing.d.ts +33 -2
  141. package/types/lucca-front-ng-main-layout.d.ts +6 -0
  142. package/types/lucca-front-ng-mobile-push.d.ts +7 -0
  143. package/types/lucca-front-ng-new-badge.d.ts +3 -0
  144. package/types/lucca-front-ng-numeric-badge.d.ts +9 -0
  145. package/types/lucca-front-ng-page-header.d.ts +9 -0
  146. package/types/lucca-front-ng-pagination.d.ts +24 -0
  147. package/types/lucca-front-ng-plg-push.d.ts +6 -0
  148. package/types/lucca-front-ng-popover2.d.ts +5 -3
  149. package/types/lucca-front-ng-progress-bar.d.ts +9 -0
  150. package/types/lucca-front-ng-read-more.d.ts +16 -1
  151. package/types/lucca-front-ng-resource-card.d.ts +6 -0
  152. package/types/lucca-front-ng-scroll-box.d.ts +4 -1
  153. package/types/lucca-front-ng-segmented-control-tabs.d.ts +7 -1
  154. package/types/lucca-front-ng-segmented-control.d.ts +16 -1
  155. package/types/lucca-front-ng-skeleton.d.ts +61 -6
  156. package/types/lucca-front-ng-sortable-list.d.ts +24 -0
  157. package/types/lucca-front-ng-status-badge.d.ts +12 -0
  158. package/types/lucca-front-ng-tag.d.ts +6 -0
  159. package/types/lucca-front-ng-vertical-navigation.d.ts +30 -0
@@ -1 +1 @@
1
- {"version":3,"file":"lucca-front-ng-read-more.mjs","sources":["../../../packages/ng/read-more/translations.ts","../../../packages/ng/read-more/read-more.translate.ts","../../../packages/ng/read-more/read-more.component.ts","../../../packages/ng/read-more/read-more.component.html","../../../packages/ng/read-more/lucca-front-ng-read-more.ts"],"sourcesContent":["export const Translations = {\n\tfr: {\n\t\treadMore: 'Lire plus',\n\t\treadLess: 'Lire moins',\n\t},\n\tpt: {\n\t\treadMore: 'Ler mais',\n\t\treadLess: 'Ler menos',\n\t},\n\tes: {\n\t\treadMore: 'Leer más',\n\t\treadLess: 'Leer menos',\n\t},\n\t'nl-BE': {\n\t\treadMore: 'Meer lezen',\n\t\treadLess: 'Minder lezen',\n\t},\n\tnl: {\n\t\treadMore: 'Meer lezen',\n\t\treadLess: 'Minder lezen',\n\t},\n\tit: {\n\t\treadMore: 'Mostra di più',\n\t\treadLess: 'Mostra di meno',\n\t},\n\tde: {\n\t\treadMore: 'Mehr lesen',\n\t\treadLess: 'Weniger lesen',\n\t},\n\ten: {\n\t\treadMore: 'Read more',\n\t\treadLess: 'Read less',\n\t},\n};\n","import { InjectionToken } from '@angular/core';\nimport { LuTranslation } from '@lucca-front/ng/core';\nimport { Translations } from './translations';\n\nexport const LU_READMORE_TRANSLATIONS = new InjectionToken('luReadMoreTranslations', {\n\tfactory: () => luReadMoreTranslations,\n});\n\nexport interface ReadMoreTranslate {\n\treadMore: string;\n\treadLess: string;\n}\n\nexport const luReadMoreTranslations: LuTranslation<ReadMoreTranslate> = Translations;\n","import { booleanAttribute, ChangeDetectionStrategy, Component, computed, ElementRef, input, OnInit, signal, viewChild, ViewEncapsulation } from '@angular/core';\nimport { getIntl, isNil } from '@lucca-front/ng/core';\nimport { LU_READMORE_TRANSLATIONS } from './read-more.translate';\n\n@Component({\n\tselector: 'lu-read-more',\n\ttemplateUrl: './read-more.component.html',\n\tstyleUrl: './read-more.component.scss',\n\tencapsulation: ViewEncapsulation.None,\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\thost: {\n\t\tclass: 'readMore',\n\t\t'[style.--components-readMore-lineClamp]': 'lineClamp()',\n\t\t'[style.--components-readMore-content-lastChild-content]': 'labelReadLess',\n\t\t'[class.is-disabled]': '!expanded() && !isClamped()',\n\t\t'[class.mod-openOnly]': 'openOnly()',\n\t\t'[class.mod-sunken]': 'surface() === `sunken`',\n\t\t'[class.mod-default]': 'surface() === `default`',\n\t\t'[style.--components-readMore-link-backgroudColor]': 'backgroundColor()',\n\t},\n})\nexport class ReadMoreComponent implements OnInit {\n\tintl = getIntl(LU_READMORE_TRANSLATIONS);\n\n\treadonly lineClamp = input<number>(5);\n\treadonly openOnly = input(false, { transform: booleanAttribute });\n\treadonly textFlow = input(false, { transform: booleanAttribute });\n\treadonly surface = input<null | 'sunken' | 'default' | string>(null);\n\n\tlabelReadMore = this.intl.readMore;\n\tlabelReadLess = this.intl.readLess;\n\n\tlabel = signal<string>(this.labelReadMore);\n\n\tinnerContent = input<null | string>(null);\n\n\treadonly contentRef = viewChild<ElementRef<HTMLDivElement>>('content');\n\n\texpanded = signal(false);\n\tisClamped = signal(false);\n\n\treadonly backgroundColor = computed(() => {\n\t\tif (this.surface() === 'sunken' || this.surface() === 'default' || this.surface() === null) {\n\t\t\treturn null;\n\t\t}\n\t\treturn `${this.surface()}`;\n\t});\n\n\tisNil = isNil;\n\n\tngOnInit(): void {\n\t\tsetTimeout(() => {\n\t\t\tnew ResizeObserver(() => {\n\t\t\t\tconst contentElement = this.contentRef()?.nativeElement;\n\t\t\t\tconst lineHeight = parseFloat(window.getComputedStyle(contentElement).lineHeight);\n\t\t\t\tconst totalLines = Math.round(contentElement.scrollHeight / lineHeight);\n\n\t\t\t\tthis.isClamped.set(contentElement.scrollHeight > contentElement.clientHeight);\n\t\t\t\tif (!this.isClamped() && totalLines <= this.lineClamp()) {\n\t\t\t\t\tthis.expanded.set(false);\n\t\t\t\t}\n\t\t\t}).observe(this.contentRef().nativeElement, { box: 'border-box' });\n\t\t});\n\t}\n\n\ttoggleExpanded() {\n\t\tthis.expanded.set(!this.expanded());\n\n\t\tif (this.expanded()) {\n\t\t\tthis.label.set(this.labelReadLess);\n\t\t} else {\n\t\t\tthis.label.set(this.labelReadMore);\n\t\t}\n\t}\n}\n","<button\n\ttype=\"button\"\n\taria-hidden=\"true\"\n\t[attr.tabindex]=\"isClamped() ? null : '-1'\"\n\t[attr.aria-expanded]=\"expanded()\"\n\tclass=\"readMore-link link\"\n\t(click)=\"toggleExpanded()\"\n>\n\t{{ label() }}\n</button>\n@if (isNil(innerContent())) {\n\t<div class=\"readMore-content\" [class.textFlow]=\"textFlow()\" #content>\n\t\t<ng-content />\n\t</div>\n} @else {\n\t<div class=\"readMore-content\" [class.textFlow]=\"textFlow()\" [innerHTML]=\"innerContent()\" #content></div>\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"lucca-front-ng-read-more.mjs","sources":["../../../packages/ng/read-more/translations.ts","../../../packages/ng/read-more/read-more.translate.ts","../../../packages/ng/read-more/read-more.component.ts","../../../packages/ng/read-more/read-more.component.html","../../../packages/ng/read-more/lucca-front-ng-read-more.ts"],"sourcesContent":["export const Translations = {\n\tfr: {\n\t\treadMore: 'Lire plus',\n\t\treadLess: 'Lire moins',\n\t},\n\tpt: {\n\t\treadMore: 'Ler mais',\n\t\treadLess: 'Ler menos',\n\t},\n\tes: {\n\t\treadMore: 'Leer más',\n\t\treadLess: 'Leer menos',\n\t},\n\t'nl-BE': {\n\t\treadMore: 'Meer lezen',\n\t\treadLess: 'Minder lezen',\n\t},\n\tnl: {\n\t\treadMore: 'Meer lezen',\n\t\treadLess: 'Minder lezen',\n\t},\n\tit: {\n\t\treadMore: 'Mostra di più',\n\t\treadLess: 'Mostra di meno',\n\t},\n\tde: {\n\t\treadMore: 'Mehr lesen',\n\t\treadLess: 'Weniger lesen',\n\t},\n\ten: {\n\t\treadMore: 'Read more',\n\t\treadLess: 'Read less',\n\t},\n};\n","import { InjectionToken } from '@angular/core';\nimport { LuTranslation } from '@lucca-front/ng/core';\nimport { Translations } from './translations';\n\nexport const LU_READMORE_TRANSLATIONS = new InjectionToken('luReadMoreTranslations', {\n\tfactory: () => luReadMoreTranslations,\n});\n\nexport interface ReadMoreTranslate {\n\treadMore: string;\n\treadLess: string;\n}\n\nexport const luReadMoreTranslations: LuTranslation<ReadMoreTranslate> = Translations;\n","import { booleanAttribute, ChangeDetectionStrategy, Component, computed, ElementRef, input, OnInit, signal, viewChild, ViewEncapsulation } from '@angular/core';\nimport { getIntl, isNil } from '@lucca-front/ng/core';\nimport { LU_READMORE_TRANSLATIONS } from './read-more.translate';\n\n@Component({\n\tselector: 'lu-read-more',\n\ttemplateUrl: './read-more.component.html',\n\tstyleUrl: './read-more.component.scss',\n\tencapsulation: ViewEncapsulation.None,\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\thost: {\n\t\tclass: 'readMore',\n\t\t'[style.--components-readMore-lineClamp]': 'lineClamp()',\n\t\t'[style.--components-readMore-content-lastChild-content]': 'labelReadLess',\n\t\t'[class.is-disabled]': '!expanded() && !isClamped()',\n\t\t'[class.mod-openOnly]': 'openOnly()',\n\t\t'[class.mod-sunken]': 'surface() === `sunken`',\n\t\t'[class.mod-default]': 'surface() === `default`',\n\t\t'[style.--components-readMore-link-backgroudColor]': 'backgroundColor()',\n\t},\n})\nexport class ReadMoreComponent implements OnInit {\n\tintl = getIntl(LU_READMORE_TRANSLATIONS);\n\n\t/**\n\t * Change the number of lines displayed when collapsed\n\t */\n\treadonly lineClamp = input<number>(5);\n\n\t/**\n\t * Prevent the component from closing by hiding the \"Read less\" button\n\t */\n\treadonly openOnly = input(false, { transform: booleanAttribute });\n\n\t/**\n\t * Change the background color under the \"Read more / less\" button\n\t */\n\treadonly textFlow = input(false, { transform: booleanAttribute });\n\n\t/**\n\t * Apply the spacing of the Text Flow component\n\t */\n\treadonly surface = input<null | 'sunken' | 'default' | string>(null);\n\n\t/**\n\t * Allow content to be passed via innerHTML\n\t */\n\treadonly innerContent = input<null | string>(null);\n\n\tlabelReadMore = this.intl.readMore;\n\tlabelReadLess = this.intl.readLess;\n\n\tlabel = signal<string>(this.labelReadMore);\n\n\treadonly contentRef = viewChild<ElementRef<HTMLDivElement>>('content');\n\n\texpanded = signal(false);\n\tisClamped = signal(false);\n\n\treadonly backgroundColor = computed(() => {\n\t\tif (this.surface() === 'sunken' || this.surface() === 'default' || this.surface() === null) {\n\t\t\treturn null;\n\t\t}\n\t\treturn `${this.surface()}`;\n\t});\n\n\tisNil = isNil;\n\n\tngOnInit(): void {\n\t\tsetTimeout(() => {\n\t\t\tnew ResizeObserver(() => {\n\t\t\t\tconst contentElement = this.contentRef()?.nativeElement;\n\t\t\t\tconst lineHeight = parseFloat(window.getComputedStyle(contentElement).lineHeight);\n\t\t\t\tconst totalLines = Math.round(contentElement.scrollHeight / lineHeight);\n\n\t\t\t\tthis.isClamped.set(contentElement.scrollHeight > contentElement.clientHeight);\n\t\t\t\tif (!this.isClamped() && totalLines <= this.lineClamp()) {\n\t\t\t\t\tthis.expanded.set(false);\n\t\t\t\t}\n\t\t\t}).observe(this.contentRef().nativeElement, { box: 'border-box' });\n\t\t});\n\t}\n\n\ttoggleExpanded() {\n\t\tthis.expanded.set(!this.expanded());\n\n\t\tif (this.expanded()) {\n\t\t\tthis.label.set(this.labelReadLess);\n\t\t} else {\n\t\t\tthis.label.set(this.labelReadMore);\n\t\t}\n\t}\n}\n","<button\n\ttype=\"button\"\n\taria-hidden=\"true\"\n\t[attr.tabindex]=\"isClamped() ? null : '-1'\"\n\t[attr.aria-expanded]=\"expanded()\"\n\tclass=\"readMore-link link\"\n\t(click)=\"toggleExpanded()\"\n>\n\t{{ label() }}\n</button>\n@if (isNil(innerContent())) {\n\t<div class=\"readMore-content\" [class.textFlow]=\"textFlow()\" #content>\n\t\t<ng-content />\n\t</div>\n} @else {\n\t<div class=\"readMore-content\" [class.textFlow]=\"textFlow()\" [innerHTML]=\"innerContent()\" #content></div>\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
@@ -5,6 +5,9 @@ import { IconComponent } from '@lucca-front/ng/icon';
5
5
 
6
6
  class ResourceCardButtonComponent {
7
7
  constructor() {
8
+ /**
9
+ * Disabled the resource card button
10
+ */
8
11
  this.disabled = input(false, { ...(ngDevMode ? { debugName: "disabled" } : {}), transform: booleanAttribute });
9
12
  }
10
13
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: ResourceCardButtonComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
@@ -27,6 +30,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.6", ngImpor
27
30
 
28
31
  class ResourceCardLinkComponent {
29
32
  constructor() {
33
+ /**
34
+ * Disabled the resource card link
35
+ */
30
36
  this.disabled = input(false, { ...(ngDevMode ? { debugName: "disabled" } : {}), transform: booleanAttribute });
31
37
  }
32
38
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: ResourceCardLinkComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
@@ -45,12 +51,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.6", ngImpor
45
51
  '[class.is-disabled]': 'disabled()',
46
52
  '[attr.role]': 'disabled() ? "presentation" : null',
47
53
  },
48
- // hostDirectives: [
49
- // {
50
- // directive: LuTooltipTriggerDirective,
51
- // inputs: ['luTooltip', 'luTooltipOnlyForDisplay', 'luTooltipWhenEllipsis'],
52
- // },
53
- // ],
54
54
  }]
55
55
  }], propDecorators: { disabled: [{ type: i0.Input, args: [{ isSignal: true, alias: "disabled", required: false }] }] } });
56
56
 
@@ -1 +1 @@
1
- {"version":3,"file":"lucca-front-ng-resource-card.mjs","sources":["../../../packages/ng/resource-card/action/resource-card-button.component.ts","../../../packages/ng/resource-card/action/resource-card-link.component.ts","../../../packages/ng/resource-card/wrapper/resource-card-wrapper.token.ts","../../../packages/ng/resource-card/resource-card.component.ts","../../../packages/ng/resource-card/resource-card.component.html","../../../packages/ng/resource-card/wrapper/resource-card-wrapper.component.ts","../../../packages/ng/resource-card/lucca-front-ng-resource-card.ts"],"sourcesContent":["import { booleanAttribute, ChangeDetectionStrategy, Component, input, ViewEncapsulation } from '@angular/core';\n\n@Component({\n\t// eslint-disable-next-line @angular-eslint/component-selector\n\tselector: 'button[luResourceCardAction]',\n\ttemplate: '<ng-content />',\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\tencapsulation: ViewEncapsulation.None,\n\thost: {\n\t\tclass: 'resourceCard-layout-header-title-action',\n\t\t'[attr.disabled]': 'disabled() ? \"disabled\" : null',\n\t},\n})\nexport class ResourceCardButtonComponent {\n\treadonly disabled = input(false, { transform: booleanAttribute });\n}\n","import { booleanAttribute, ChangeDetectionStrategy, Component, input, ViewEncapsulation } from '@angular/core';\n\n@Component({\n\t// eslint-disable-next-line @angular-eslint/component-selector\n\tselector: 'a[luResourceCardAction]',\n\ttemplate: '<ng-content />',\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\tencapsulation: ViewEncapsulation.None,\n\thost: {\n\t\tclass: 'resourceCard-layout-header-title-action',\n\t\t'[class.is-disabled]': 'disabled()',\n\t\t'[attr.role]': 'disabled() ? \"presentation\" : null',\n\t},\n\t// hostDirectives: [\n\t// \t{\n\t// \t\tdirective: LuTooltipTriggerDirective,\n\t// \t\tinputs: ['luTooltip', 'luTooltipOnlyForDisplay', 'luTooltipWhenEllipsis'],\n\t// \t},\n\t// ],\n})\nexport class ResourceCardLinkComponent {\n\treadonly disabled = input(false, { transform: booleanAttribute });\n}\n","import { InjectionToken } from '@angular/core';\nimport { ResourceCardComponent } from '../resource-card.component';\n\nexport const LU_RESOURCE_CARD_WRAPPER_INSTANCE = new InjectionToken<ResourceCardComponent>('LU_RESOURCE_CARD_WRAPPER_INSTANCE');\n","import { CdkDragHandle } from '@angular/cdk/drag-drop';\nimport { booleanAttribute, ChangeDetectionStrategy, Component, inject, input, ViewEncapsulation } from '@angular/core';\nimport { IconComponent } from '@lucca-front/ng/icon';\nimport { LU_RESOURCE_CARD_WRAPPER_INSTANCE } from './wrapper/resource-card-wrapper.token';\n\n@Component({\n\tselector: 'lu-resource-card',\n\ttemplateUrl: './resource-card.component.html',\n\tstyleUrl: './resource-card.component.scss',\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\tencapsulation: ViewEncapsulation.None,\n\timports: [IconComponent, CdkDragHandle],\n\thost: {\n\t\tclass: 'resourceCard',\n\t\trole: 'region',\n\t\t'[class.mod-S]': 'size() === \"S\" || wrapperRef?.size() === \"S\"',\n\t\t'[class.mod-grid]': 'grid() || wrapperRef?.grid()',\n\t},\n})\nexport class ResourceCardComponent {\n\treadonly wrapperRef = inject(LU_RESOURCE_CARD_WRAPPER_INSTANCE, { optional: true });\n\n\treadonly draggable = input(false, { transform: booleanAttribute });\n\treadonly grid = input(false, { transform: booleanAttribute });\n\treadonly headingLevel = input<'1' | '2' | '3' | '4' | '5' | '6'>('3');\n\treadonly size = input<'S' | null>(null);\n}\n","<div class=\"resourceCard-layout\">\n\t<div class=\"resourceCard-layout-before\">\n\t\t@if (wrapperRef) {\n\t\t\t@if (!wrapperRef.grid() && wrapperRef.draggable()) {\n\t\t\t\t<div class=\"button cdk-drag-handle resourceCard-layout-before-button\" cdkDragHandle>\n\t\t\t\t\t<lu-icon icon=\"dotsDrag\" class=\"resourceCard-layout-before-button-icon\" />\n\t\t\t\t</div>\n\t\t\t}\n\t\t} @else {\n\t\t\t@if (!grid() && draggable()) {\n\t\t\t\t<div class=\"button cdk-drag-handle resourceCard-layout-before-button\" cdkDragHandle>\n\t\t\t\t\t<lu-icon icon=\"dotsDrag\" class=\"resourceCard-layout-before-button-icon\" />\n\t\t\t\t</div>\n\t\t\t}\n\t\t}\n\t\t<div class=\"resourceCard-layout-before-illustration\"><ng-content select=\"[resourceCardIllustration]\" /></div>\n\t</div>\n\t<header class=\"resourceCard-layout-header\">\n\t\t<div class=\"resourceCard-layout-header-title\" role=\"heading\" [attr.level]=\"headingLevel()\"><ng-content /></div>\n\t\t<div class=\"resourceCard-layout-header-infos\"><ng-content select=\"[resourceCardInfos]\" /></div>\n\t</header>\n\t<div class=\"resourceCard-layout-after\"><ng-content select=\"[resourceCardAction]\" /></div>\n\t<div class=\"resourceCard-layout-content\"><ng-content select=\"[resourceCardContent]\" /></div>\n</div>\n","import { booleanAttribute, ChangeDetectionStrategy, Component, forwardRef, input, ViewEncapsulation } from '@angular/core';\nimport { LU_RESOURCE_CARD_WRAPPER_INSTANCE } from './resource-card-wrapper.token';\n\n@Component({\n\tselector: 'lu-resource-card-wrapper',\n\ttemplate: '<ng-content />',\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\tencapsulation: ViewEncapsulation.None,\n\thost: {\n\t\tclass: 'resourceCardWrapper',\n\t\t'[class.mod-grid]': 'grid()',\n\t\t'[class.mod-S]': 'size() === \"S\"',\n\t},\n\tproviders: [\n\t\t{\n\t\t\tprovide: LU_RESOURCE_CARD_WRAPPER_INSTANCE,\n\t\t\tuseExisting: forwardRef(() => ResourceCardWrapperComponent),\n\t\t},\n\t],\n})\nexport class ResourceCardWrapperComponent {\n\treadonly grid = input(false, { transform: booleanAttribute });\n\treadonly draggable = input(false, { transform: booleanAttribute });\n\treadonly size = input<'S' | null>(null);\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"lucca-front-ng-resource-card.mjs","sources":["../../../packages/ng/resource-card/action/resource-card-button.component.ts","../../../packages/ng/resource-card/action/resource-card-link.component.ts","../../../packages/ng/resource-card/wrapper/resource-card-wrapper.token.ts","../../../packages/ng/resource-card/resource-card.component.ts","../../../packages/ng/resource-card/resource-card.component.html","../../../packages/ng/resource-card/wrapper/resource-card-wrapper.component.ts","../../../packages/ng/resource-card/lucca-front-ng-resource-card.ts"],"sourcesContent":["import { booleanAttribute, ChangeDetectionStrategy, Component, input, ViewEncapsulation } from '@angular/core';\n\n@Component({\n\t// eslint-disable-next-line @angular-eslint/component-selector\n\tselector: 'button[luResourceCardAction]',\n\ttemplate: '<ng-content />',\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\tencapsulation: ViewEncapsulation.None,\n\thost: {\n\t\tclass: 'resourceCard-layout-header-title-action',\n\t\t'[attr.disabled]': 'disabled() ? \"disabled\" : null',\n\t},\n})\nexport class ResourceCardButtonComponent {\n\t/**\n\t * Disabled the resource card button\n\t */\n\treadonly disabled = input(false, { transform: booleanAttribute });\n}\n","import { booleanAttribute, ChangeDetectionStrategy, Component, input, ViewEncapsulation } from '@angular/core';\n\n@Component({\n\t// eslint-disable-next-line @angular-eslint/component-selector\n\tselector: 'a[luResourceCardAction]',\n\ttemplate: '<ng-content />',\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\tencapsulation: ViewEncapsulation.None,\n\thost: {\n\t\tclass: 'resourceCard-layout-header-title-action',\n\t\t'[class.is-disabled]': 'disabled()',\n\t\t'[attr.role]': 'disabled() ? \"presentation\" : null',\n\t},\n})\nexport class ResourceCardLinkComponent {\n\t/**\n\t * Disabled the resource card link\n\t */\n\treadonly disabled = input(false, { transform: booleanAttribute });\n}\n","import { InjectionToken } from '@angular/core';\nimport { ResourceCardComponent } from '../resource-card.component';\n\nexport const LU_RESOURCE_CARD_WRAPPER_INSTANCE = new InjectionToken<ResourceCardComponent>('LU_RESOURCE_CARD_WRAPPER_INSTANCE');\n","import { CdkDragHandle } from '@angular/cdk/drag-drop';\nimport { booleanAttribute, ChangeDetectionStrategy, Component, inject, input, ViewEncapsulation } from '@angular/core';\nimport { IconComponent } from '@lucca-front/ng/icon';\nimport { LU_RESOURCE_CARD_WRAPPER_INSTANCE } from './wrapper/resource-card-wrapper.token';\n\n@Component({\n\tselector: 'lu-resource-card',\n\ttemplateUrl: './resource-card.component.html',\n\tstyleUrl: './resource-card.component.scss',\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\tencapsulation: ViewEncapsulation.None,\n\timports: [IconComponent, CdkDragHandle],\n\thost: {\n\t\tclass: 'resourceCard',\n\t\trole: 'region',\n\t\t'[class.mod-S]': 'size() === \"S\" || wrapperRef?.size() === \"S\"',\n\t\t'[class.mod-grid]': 'grid() || wrapperRef?.grid()',\n\t},\n})\nexport class ResourceCardComponent {\n\treadonly wrapperRef = inject(LU_RESOURCE_CARD_WRAPPER_INSTANCE, { optional: true });\n\n\treadonly draggable = input(false, { transform: booleanAttribute });\n\n\treadonly grid = input(false, { transform: booleanAttribute });\n\n\treadonly headingLevel = input<'1' | '2' | '3' | '4' | '5' | '6'>('3');\n\n\treadonly size = input<'S' | null>(null);\n}\n","<div class=\"resourceCard-layout\">\n\t<div class=\"resourceCard-layout-before\">\n\t\t@if (wrapperRef) {\n\t\t\t@if (!wrapperRef.grid() && wrapperRef.draggable()) {\n\t\t\t\t<div class=\"button cdk-drag-handle resourceCard-layout-before-button\" cdkDragHandle>\n\t\t\t\t\t<lu-icon icon=\"dotsDrag\" class=\"resourceCard-layout-before-button-icon\" />\n\t\t\t\t</div>\n\t\t\t}\n\t\t} @else {\n\t\t\t@if (!grid() && draggable()) {\n\t\t\t\t<div class=\"button cdk-drag-handle resourceCard-layout-before-button\" cdkDragHandle>\n\t\t\t\t\t<lu-icon icon=\"dotsDrag\" class=\"resourceCard-layout-before-button-icon\" />\n\t\t\t\t</div>\n\t\t\t}\n\t\t}\n\t\t<div class=\"resourceCard-layout-before-illustration\"><ng-content select=\"[resourceCardIllustration]\" /></div>\n\t</div>\n\t<header class=\"resourceCard-layout-header\">\n\t\t<div class=\"resourceCard-layout-header-title\" role=\"heading\" [attr.level]=\"headingLevel()\"><ng-content /></div>\n\t\t<div class=\"resourceCard-layout-header-infos\"><ng-content select=\"[resourceCardInfos]\" /></div>\n\t</header>\n\t<div class=\"resourceCard-layout-after\"><ng-content select=\"[resourceCardAction]\" /></div>\n\t<div class=\"resourceCard-layout-content\"><ng-content select=\"[resourceCardContent]\" /></div>\n</div>\n","import { booleanAttribute, ChangeDetectionStrategy, Component, forwardRef, input, ViewEncapsulation } from '@angular/core';\nimport { LU_RESOURCE_CARD_WRAPPER_INSTANCE } from './resource-card-wrapper.token';\n\n@Component({\n\tselector: 'lu-resource-card-wrapper',\n\ttemplate: '<ng-content />',\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\tencapsulation: ViewEncapsulation.None,\n\thost: {\n\t\tclass: 'resourceCardWrapper',\n\t\t'[class.mod-grid]': 'grid()',\n\t\t'[class.mod-S]': 'size() === \"S\"',\n\t},\n\tproviders: [\n\t\t{\n\t\t\tprovide: LU_RESOURCE_CARD_WRAPPER_INSTANCE,\n\t\t\tuseExisting: forwardRef(() => ResourceCardWrapperComponent),\n\t\t},\n\t],\n})\nexport class ResourceCardWrapperComponent {\n\treadonly grid = input(false, { transform: booleanAttribute });\n\n\treadonly draggable = input(false, { transform: booleanAttribute });\n\n\treadonly size = input<'S' | null>(null);\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import * as i0 from '@angular/core';
2
- import { inject, ElementRef, signal, input, booleanAttribute, afterNextRender, ViewEncapsulation, Component } from '@angular/core';
2
+ import { inject, ElementRef, input, booleanAttribute, signal, afterNextRender, ViewEncapsulation, Component } from '@angular/core';
3
3
 
4
4
  class ScrollBoxComponent {
5
5
  #elementRef;
@@ -15,9 +15,12 @@ class ScrollBoxComponent {
15
15
  }
16
16
  constructor() {
17
17
  this.#elementRef = inject(ElementRef);
18
+ /**
19
+ * Scroll box content vertically
20
+ */
21
+ this.vertical = input(false, { ...(ngDevMode ? { debugName: "vertical" } : {}), transform: booleanAttribute });
18
22
  this.isFirstVisible = signal(true, ...(ngDevMode ? [{ debugName: "isFirstVisible" }] : []));
19
23
  this.isLastVisible = signal(false, ...(ngDevMode ? [{ debugName: "isLastVisible" }] : []));
20
- this.vertical = input(false, { ...(ngDevMode ? { debugName: "vertical" } : {}), transform: booleanAttribute });
21
24
  afterNextRender(() => {
22
25
  this.scroll();
23
26
  });
@@ -1 +1 @@
1
- {"version":3,"file":"lucca-front-ng-scroll-box.mjs","sources":["../../../packages/ng/scroll-box/scroll-box.component.ts","../../../packages/ng/scroll-box/lucca-front-ng-scroll-box.ts"],"sourcesContent":["import { afterNextRender, booleanAttribute, Component, ElementRef, inject, input, OnInit, signal, ViewEncapsulation } from '@angular/core';\n\n@Component({\n\tselector: 'lu-scroll-box',\n\tstandalone: true,\n\ttemplate: '<ng-content />',\n\tstyleUrl: './scroll-box.component.scss',\n\tencapsulation: ViewEncapsulation.None,\n\thost: {\n\t\tclass: 'scrollBox',\n\t\t'(scroll)': 'scroll()',\n\t\t'[class.is-firstVisible]': 'isFirstVisible()',\n\t\t'[class.is-lastVisible]': 'isLastVisible()',\n\t},\n})\nexport class ScrollBoxComponent implements OnInit {\n\t#elementRef = inject<ElementRef<HTMLElement>>(ElementRef);\n\n\tisFirstVisible = signal(true);\n\tisLastVisible = signal(false);\n\n\tvertical = input(false, { transform: booleanAttribute });\n\n\tscroll() {\n\t\tif (this.vertical()) {\n\t\t\tthis.isFirstVisible.set(this.#elementRef.nativeElement.scrollTop === 0);\n\t\t\tthis.isLastVisible.set(this.#elementRef.nativeElement.scrollTop >= this.#elementRef.nativeElement.scrollHeight - this.#elementRef.nativeElement.clientHeight);\n\t\t} else {\n\t\t\tthis.isFirstVisible.set(this.#elementRef.nativeElement.scrollLeft === 0);\n\t\t\tthis.isLastVisible.set(this.#elementRef.nativeElement.scrollLeft >= this.#elementRef.nativeElement.scrollWidth - this.#elementRef.nativeElement.clientWidth);\n\t\t}\n\t}\n\n\tconstructor() {\n\t\tafterNextRender(() => {\n\t\t\tthis.scroll();\n\t\t});\n\t}\n\n\tngOnInit(): void {\n\t\tnew ResizeObserver(() => {\n\t\t\tthis.scroll();\n\t\t}).observe(this.#elementRef.nativeElement);\n\t}\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;MAea,kBAAkB,CAAA;AAC9B,IAAA,WAAW;IAOX,MAAM,GAAA;AACL,QAAA,IAAI,IAAI,CAAC,QAAQ,EAAE,EAAE;AACpB,YAAA,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,SAAS,KAAK,CAAC,CAAC;AACvE,YAAA,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,SAAS,IAAI,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,YAAY,GAAG,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,YAAY,CAAC;QAC9J;aAAO;AACN,YAAA,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,UAAU,KAAK,CAAC,CAAC;AACxE,YAAA,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,UAAU,IAAI,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,WAAW,CAAC;QAC7J;IACD;AAEA,IAAA,WAAA,GAAA;AAjBA,QAAA,IAAA,CAAA,WAAW,GAAG,MAAM,CAA0B,UAAU,CAAC;AAEzD,QAAA,IAAA,CAAA,cAAc,GAAG,MAAM,CAAC,IAAI,0DAAC;AAC7B,QAAA,IAAA,CAAA,aAAa,GAAG,MAAM,CAAC,KAAK,yDAAC;QAE7B,IAAA,CAAA,QAAQ,GAAG,KAAK,CAAC,KAAK,qDAAI,SAAS,EAAE,gBAAgB,EAAA,CAAG;QAavD,eAAe,CAAC,MAAK;YACpB,IAAI,CAAC,MAAM,EAAE;AACd,QAAA,CAAC,CAAC;IACH;IAEA,QAAQ,GAAA;QACP,IAAI,cAAc,CAAC,MAAK;YACvB,IAAI,CAAC,MAAM,EAAE;QACd,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC;IAC3C;8GA5BY,kBAAkB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAlB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,kBAAkB,0YAVpB,gBAAgB,EAAA,QAAA,EAAA,IAAA,EAAA,MAAA,EAAA,CAAA,6gJAAA,CAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA;;2FAUd,kBAAkB,EAAA,UAAA,EAAA,CAAA;kBAb9B,SAAS;+BACC,eAAe,EAAA,UAAA,EACb,IAAI,EAAA,QAAA,EACN,gBAAgB,iBAEX,iBAAiB,CAAC,IAAI,EAAA,IAAA,EAC/B;AACL,wBAAA,KAAK,EAAE,WAAW;AAClB,wBAAA,UAAU,EAAE,UAAU;AACtB,wBAAA,yBAAyB,EAAE,kBAAkB;AAC7C,wBAAA,wBAAwB,EAAE,iBAAiB;AAC3C,qBAAA,EAAA,MAAA,EAAA,CAAA,6gJAAA,CAAA,EAAA;;;ACbF;;AAEG;;;;"}
1
+ {"version":3,"file":"lucca-front-ng-scroll-box.mjs","sources":["../../../packages/ng/scroll-box/scroll-box.component.ts","../../../packages/ng/scroll-box/lucca-front-ng-scroll-box.ts"],"sourcesContent":["import { afterNextRender, booleanAttribute, Component, ElementRef, inject, input, OnInit, signal, ViewEncapsulation } from '@angular/core';\n\n@Component({\n\tselector: 'lu-scroll-box',\n\tstandalone: true,\n\ttemplate: '<ng-content />',\n\tstyleUrl: './scroll-box.component.scss',\n\tencapsulation: ViewEncapsulation.None,\n\thost: {\n\t\tclass: 'scrollBox',\n\t\t'(scroll)': 'scroll()',\n\t\t'[class.is-firstVisible]': 'isFirstVisible()',\n\t\t'[class.is-lastVisible]': 'isLastVisible()',\n\t},\n})\nexport class ScrollBoxComponent implements OnInit {\n\t#elementRef = inject<ElementRef<HTMLElement>>(ElementRef);\n\n\t/**\n\t * Scroll box content vertically\n\t */\n\tvertical = input(false, { transform: booleanAttribute });\n\n\tisFirstVisible = signal(true);\n\tisLastVisible = signal(false);\n\n\tscroll() {\n\t\tif (this.vertical()) {\n\t\t\tthis.isFirstVisible.set(this.#elementRef.nativeElement.scrollTop === 0);\n\t\t\tthis.isLastVisible.set(this.#elementRef.nativeElement.scrollTop >= this.#elementRef.nativeElement.scrollHeight - this.#elementRef.nativeElement.clientHeight);\n\t\t} else {\n\t\t\tthis.isFirstVisible.set(this.#elementRef.nativeElement.scrollLeft === 0);\n\t\t\tthis.isLastVisible.set(this.#elementRef.nativeElement.scrollLeft >= this.#elementRef.nativeElement.scrollWidth - this.#elementRef.nativeElement.clientWidth);\n\t\t}\n\t}\n\n\tconstructor() {\n\t\tafterNextRender(() => {\n\t\t\tthis.scroll();\n\t\t});\n\t}\n\n\tngOnInit(): void {\n\t\tnew ResizeObserver(() => {\n\t\t\tthis.scroll();\n\t\t}).observe(this.#elementRef.nativeElement);\n\t}\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;MAea,kBAAkB,CAAA;AAC9B,IAAA,WAAW;IAUX,MAAM,GAAA;AACL,QAAA,IAAI,IAAI,CAAC,QAAQ,EAAE,EAAE;AACpB,YAAA,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,SAAS,KAAK,CAAC,CAAC;AACvE,YAAA,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,SAAS,IAAI,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,YAAY,GAAG,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,YAAY,CAAC;QAC9J;aAAO;AACN,YAAA,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,UAAU,KAAK,CAAC,CAAC;AACxE,YAAA,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,UAAU,IAAI,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,WAAW,CAAC;QAC7J;IACD;AAEA,IAAA,WAAA,GAAA;AApBA,QAAA,IAAA,CAAA,WAAW,GAAG,MAAM,CAA0B,UAAU,CAAC;AAEzD;;AAEG;QACH,IAAA,CAAA,QAAQ,GAAG,KAAK,CAAC,KAAK,qDAAI,SAAS,EAAE,gBAAgB,EAAA,CAAG;AAExD,QAAA,IAAA,CAAA,cAAc,GAAG,MAAM,CAAC,IAAI,0DAAC;AAC7B,QAAA,IAAA,CAAA,aAAa,GAAG,MAAM,CAAC,KAAK,yDAAC;QAa5B,eAAe,CAAC,MAAK;YACpB,IAAI,CAAC,MAAM,EAAE;AACd,QAAA,CAAC,CAAC;IACH;IAEA,QAAQ,GAAA;QACP,IAAI,cAAc,CAAC,MAAK;YACvB,IAAI,CAAC,MAAM,EAAE;QACd,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC;IAC3C;8GA/BY,kBAAkB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAlB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,kBAAkB,0YAVpB,gBAAgB,EAAA,QAAA,EAAA,IAAA,EAAA,MAAA,EAAA,CAAA,6gJAAA,CAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA;;2FAUd,kBAAkB,EAAA,UAAA,EAAA,CAAA;kBAb9B,SAAS;+BACC,eAAe,EAAA,UAAA,EACb,IAAI,EAAA,QAAA,EACN,gBAAgB,iBAEX,iBAAiB,CAAC,IAAI,EAAA,IAAA,EAC/B;AACL,wBAAA,KAAK,EAAE,WAAW;AAClB,wBAAA,UAAU,EAAE,UAAU;AACtB,wBAAA,yBAAyB,EAAE,kBAAkB;AAC7C,wBAAA,wBAAwB,EAAE,iBAAiB;AAC3C,qBAAA,EAAA,MAAA,EAAA,CAAA,6gJAAA,CAAA,EAAA;;;ACbF;;AAEG;;;;"}
@@ -1,5 +1,5 @@
1
1
  import * as i0 from '@angular/core';
2
- import { InjectionToken, inject, input, ChangeDetectionStrategy, ViewEncapsulation, Component, booleanAttribute, contentChildren, viewChildren, model, computed, forwardRef } from '@angular/core';
2
+ import { InjectionToken, inject, input, ChangeDetectionStrategy, ViewEncapsulation, Component, booleanAttribute, model, contentChildren, viewChildren, computed, forwardRef } from '@angular/core';
3
3
  import { ReactiveFormsModule } from '@angular/forms';
4
4
  import { PortalDirective } from '@lucca-front/ng/core';
5
5
  import * as i1 from '@lucca-front/ng/forms';
@@ -41,12 +41,18 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.6", ngImpor
41
41
  let nextId = 0;
42
42
  class SegmentedControlTabsComponent {
43
43
  constructor() {
44
+ /**
45
+ * Applies small size to segmented control tabs
46
+ */
44
47
  this.small = input(false, { ...(ngDevMode ? { debugName: "small" } : {}), transform: booleanAttribute });
48
+ /**
49
+ * Display segmented control tabs vertically
50
+ */
45
51
  this.vertical = input(false, { ...(ngDevMode ? { debugName: "vertical" } : {}), transform: booleanAttribute });
52
+ this.active = model(null, ...(ngDevMode ? [{ debugName: "active" }] : []));
46
53
  this.id = `segmentedControl${nextId++}`;
47
54
  this.tabs = contentChildren(SegmentedControlTabsPanelComponent, ...(ngDevMode ? [{ debugName: "tabs" }] : []));
48
55
  this.tabButtons = viewChildren('tabButton', ...(ngDevMode ? [{ debugName: "tabButtons" }] : []));
49
- this.active = model(null, ...(ngDevMode ? [{ debugName: "active" }] : []));
50
56
  this.currentIndex = computed(() => this.tabs().findIndex((tab) => tab.value() === this.active()), ...(ngDevMode ? [{ debugName: "currentIndex" }] : []));
51
57
  }
52
58
  previous() {
@@ -88,7 +94,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.6", ngImpor
88
94
  useExisting: forwardRef(() => SegmentedControlTabsComponent),
89
95
  },
90
96
  ], template: "<ul class=\"segmentedControl\" role=\"tablist\" [class.mod-S]=\"small()\" [class.mod-vertical]=\"vertical()\">\n\t@for (panel of tabs(); track panel.id) {\n\t\t<li class=\"segmentedControl-item\" role=\"presentation\">\n\t\t\t<button\n\t\t\t\t#tabButton\n\t\t\t\tclass=\"segmentedControl-item-action\"\n\t\t\t\ttype=\"button\"\n\t\t\t\trole=\"tab\"\n\t\t\t\t[attr.id]=\"panel.labelId\"\n\t\t\t\t[attr.aria-controls]=\"panel.value()\"\n\t\t\t\t[attr.aria-selected]=\"active() === panel.value()\"\n\t\t\t\t[attr.tabindex]=\"active() !== panel.value() ? '-1' : null\"\n\t\t\t\t(click)=\"active.set(panel.value())\"\n\t\t\t\t(keydown.arrowleft)=\"$event.preventDefault(); previous()\"\n\t\t\t\t(keydown.arrowup)=\"$event.preventDefault(); previous()\"\n\t\t\t\t(keydown.arrowright)=\"$event.preventDefault(); next()\"\n\t\t\t\t(keydown.arrowdown)=\"$event.preventDefault(); next()\"\n\t\t\t>\n\t\t\t\t<ng-container *luPortal=\"panel.label()\" />\n\t\t\t</button>\n\t\t</li>\n\t}\n</ul>\n<ng-content />\n", styles: ["@layer components{.segmentedControl,.viewTabs{--components-segmentedControl-borderRadius: var(--pr-t-border-radius-default);--components-segmentedControl-padding: var(--pr-t-spacings-100) var(--pr-t-spacings-200);--components-segmentedControl-font: var(--pr-t-font-body-M);--components-segmentedControl-background: transparent;--components-segmentedControl-shadow: none;--components-segmentedControl-color: var(--pr-t-color-text);--components-segmentedControl-cursor: pointer;--components-segmentedControl-dividerInset: var(--pr-t-spacings-100);--components-segmentedControl-direction: row;--components-segmentedControl-width: fit-content;--components-segmentedControl-zIndex: 0;--components-segmentedControl-wrap: wrap;--components-segmentedControl-whiteSpace: normal;padding:0;margin:0;list-style-type:none;display:flex;flex-wrap:var(--components-segmentedControl-wrap);inline-size:var(--components-segmentedControl-width);flex-direction:var(--components-segmentedControl-direction);box-shadow:0 0 0 var(--commons-divider-width) var(--palettes-neutral-100);border-radius:var(--components-segmentedControl-borderRadius);background-color:var(--palettes-neutral-0);font:var(--components-segmentedControl-font);gap:var(--commons-divider-width);white-space:var(--components-segmentedControl-whiteSpace)}.segmentedControl-item-input{border:0;clip:rect(1px,1px,1px,1px);margin:-1px;overflow:hidden;padding:0;position:absolute;block-size:1px;inline-size:1px;white-space:nowrap;contain:paint}.segmentedControl-item-input:focus-visible+.segmentedControl-item-action{outline:2px solid var(--palettes-product-700);outline-offset:3px}.segmentedControl-item,.viewTabs-item{flex-grow:1;position:relative;z-index:1}.segmentedControl-item:before,.segmentedControl-item:after,.viewTabs-item:before,.viewTabs-item:after{content:\"\";border-width:0;inset:var(--components-segmentedControl-dividerInset);border-color:var(--palettes-neutral-100);position:absolute;border-style:solid}.segmentedControl-item:before,.viewTabs-item:before{inset-inline-end:calc(var(--commons-divider-width) * -1);border-inline-start-width:var(--commons-divider-width);inset-inline-start:auto}.segmentedControl-item:after,.viewTabs-item:after{inset-block-end:calc(var(--commons-divider-width) * -1);border-block-start-width:var(--commons-divider-width);inset-block-start:auto}.segmentedControl-item-action,.viewTabs-item-tab{inline-size:100%;border:0;margin:0;padding:var(--components-segmentedControl-padding);background-color:var(--components-segmentedControl-background);box-shadow:var(--components-segmentedControl-shadow);border-radius:var(--components-segmentedControl-borderRadius);gap:var(--pr-t-spacings-100);color:var(--components-segmentedControl-color);text-align:center;justify-content:center;display:flex;align-items:center;position:relative;cursor:var(--components-segmentedControl-cursor);z-index:var(--components-segmentedControl-zIndex);font:inherit;transition-property:box-shadow;transition-duration:var(--commons-animations-durations-fast)}.segmentedControl-item-action:focus-visible,.viewTabs-item-tab:focus-visible{outline:2px solid var(--palettes-product-700);outline-offset:3px}.segmentedControl-item-action:hover,.viewTabs-item-tab:hover{--components-segmentedControl-shadow: 0 0 0 var(--commons-divider-width) var(--palettes-product-400), var(--pr-t-elevation-shadow-raised);--components-segmentedControl-zIndex: 1}.segmentedControl-item-action:active,.viewTabs-item-tab:active{--components-segmentedControl-background: var(--palettes-neutral-0);--components-segmentedControl-shadow: 0 0 0 var(--commons-divider-width) var(--palettes-product-500), var(--pr-t-elevation-shadow-raised)}.segmentedControl_panel,.viewTabs_panel{display:var(--components-segmentedControl-display, block);border-radius:var(--pr-t-border-radius-default)}.segmentedControl_panel:focus-visible,.viewTabs_panel:focus-visible{outline:2px solid var(--palettes-product-700);outline-offset:2px}}@layer mods{.segmentedControl.mod-S,.viewTabs.mod-S{--components-segmentedControl-padding: var(--pr-t-spacings-75) var(--pr-t-spacings-150);--components-segmentedControl-font: var(--pr-t-font-body-S);--components-segmentedControl-dividerInset: var(--pr-t-spacings-75)}.segmentedControl.mod-S .numericBadge,.viewTabs.mod-S .numericBadge{--components-numericBadge-size: 1.25rem;--components-numericBadge-borderRadius: var(--pr-t-border-radius-small);--components-numericBadge-font: var(--pr-t-font-body-XS);--components-numericBadge-fontSize: var(--pr-t-font-body-XS-fontSize);--components-numericBadge-lineHeight: var(--pr-t-font-body-XS-lineHeight)}.segmentedControl.mod-vertical,.viewTabs.mod-vertical{--components-segmentedControl-direction: column;--components-segmentedControl-width: auto}@media not all and (min-width:30em){.segmentedControl,.viewTabs{--components-segmentedControl-direction: column;--components-segmentedControl-width: auto}}}@layer mods{.segmentedControl-item-input:checked+.segmentedControl-item-action,.segmentedControl-item-action[aria-selected=true],.segmentedControl-item-input:checked+.viewTabs-item-tab,.viewTabs-item-tab[aria-selected=true]{--components-segmentedControl-background: var(--palettes-product-50);--components-segmentedControl-shadow: 0 0 0 var(--commons-divider-width) var(--palettes-product-500);--components-segmentedControl-color: var(--palettes-product-800);--components-segmentedControl-cursor: default;--components-segmentedControl-backgroundContent: none;--components-segmentedControl-zIndex: 1}.segmentedControl-item-input:checked+.segmentedControl-item-action .numericBadge,.segmentedControl-item-action[aria-selected=true] .numericBadge,.segmentedControl-item-input:checked+.viewTabs-item-tab .numericBadge,.viewTabs-item-tab[aria-selected=true] .numericBadge{--components-numericBadge-background: var(--palettes-200, var(--palettes-product-200));--components-numericBadge-color: var(--palettes-800, var(--palettes-product-800))}.segmentedControl-item-input:checked+.segmentedControl-item-action .numericBadge.is-loading,.segmentedControl-item-action[aria-selected=true] .numericBadge.is-loading,.segmentedControl-item-input:checked+.viewTabs-item-tab .numericBadge.is-loading,.viewTabs-item-tab[aria-selected=true] .numericBadge.is-loading{--components-numericBadge-loadingColor: var(--palettes-product-500);--components-numericBadge-color: transparent}.segmentedControl-item-action:disabled,.segmentedControl-item-input:disabled~.segmentedControl-item-action{--components-segmentedControl-background: var(--palettes-neutral-100);--components-segmentedControl-shadow: 0 0 0 var(--commons-divider-width) var(--palettes-neutral-200);--components-segmentedControl-color: var(--pr-t-color-text-disabled);--components-segmentedControl-cursor: default}.segmentedControl-item-action:disabled .numericBadge,.segmentedControl-item-input:disabled~.segmentedControl-item-action .numericBadge{--components-numericBadge-background: var(--palettes-neutral-200);--components-numericBadge-color: var(--palettes-neutral-500)}.segmentedControl-item-action:disabled .numericBadge.is-loading,.segmentedControl-item-input:disabled~.segmentedControl-item-action .numericBadge.is-loading{--components-numericBadge-color: transparent}.segmentedControl_panel:not(.is-active,.active),.viewTabs_panel:not(.is-active,.active){--components-segmentedControl-display: none}}\n"] }]
91
- }], propDecorators: { small: [{ type: i0.Input, args: [{ isSignal: true, alias: "small", required: false }] }], vertical: [{ type: i0.Input, args: [{ isSignal: true, alias: "vertical", required: false }] }], tabs: [{ type: i0.ContentChildren, args: [i0.forwardRef(() => SegmentedControlTabsPanelComponent), { isSignal: true }] }], tabButtons: [{ type: i0.ViewChildren, args: ['tabButton', { isSignal: true }] }], active: [{ type: i0.Input, args: [{ isSignal: true, alias: "active", required: false }] }, { type: i0.Output, args: ["activeChange"] }] } });
97
+ }], propDecorators: { small: [{ type: i0.Input, args: [{ isSignal: true, alias: "small", required: false }] }], vertical: [{ type: i0.Input, args: [{ isSignal: true, alias: "vertical", required: false }] }], active: [{ type: i0.Input, args: [{ isSignal: true, alias: "active", required: false }] }, { type: i0.Output, args: ["activeChange"] }], tabs: [{ type: i0.ContentChildren, args: [i0.forwardRef(() => SegmentedControlTabsPanelComponent), { isSignal: true }] }], tabButtons: [{ type: i0.ViewChildren, args: ['tabButton', { isSignal: true }] }] } });
92
98
 
93
99
  /**
94
100
  * Generated bundle index. Do not edit.
@@ -1 +1 @@
1
- {"version":3,"file":"lucca-front-ng-segmented-control-tabs.mjs","sources":["../../../packages/ng/segmented-control-tabs/segmented-control-tabs.token.ts","../../../packages/ng/segmented-control-tabs/panel/panel.component.ts","../../../packages/ng/segmented-control-tabs/segmented-control-tabs.component.ts","../../../packages/ng/segmented-control-tabs/segmented-control-tabs.component.html","../../../packages/ng/segmented-control-tabs/lucca-front-ng-segmented-control-tabs.ts"],"sourcesContent":["import { InjectionToken } from '@angular/core';\nimport { SegmentedControlTabsComponent } from './segmented-control-tabs.component';\n\nexport const LU_SEGMENTEDCONTROLTABS_INSTANCE = new InjectionToken<SegmentedControlTabsComponent>('LU_SEGMENTEDCONTROLTABS_INSTANCE');\n","import { ChangeDetectionStrategy, Component, inject, input, ViewEncapsulation } from '@angular/core';\nimport { PortalContent } from '@lucca-front/ng/core';\nimport { LU_SEGMENTEDCONTROLTABS_INSTANCE } from '../segmented-control-tabs.token';\n\nlet nextId = 0;\n\n@Component({\n\tselector: 'lu-segmented-control-tabs-panel',\n\ttemplate: '<ng-content />',\n\tencapsulation: ViewEncapsulation.None,\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\thost: {\n\t\tclass: 'segmentedControl_panel',\n\t\trole: 'tabpanel',\n\t\t'[tabindex]': '0',\n\t\t'[class.is-active]': 'segmentedControlTabsRef.active() === value()',\n\t\t'[id]': 'panelId',\n\t\t'[attr.aria-labelledby]': 'labelId',\n\t},\n})\nexport class SegmentedControlTabsPanelComponent<T = unknown> {\n\tprotected segmentedControlTabsRef = inject(LU_SEGMENTEDCONTROLTABS_INSTANCE);\n\treadonly label = input<PortalContent>();\n\treadonly value = input.required<T>();\n\n\treadonly id = nextId++;\n\n\treadonly panelId = `panel${this.id}`;\n\treadonly labelId = `tab${this.id}`;\n}\n","import {\n\tAfterContentInit,\n\tbooleanAttribute,\n\tChangeDetectionStrategy,\n\tComponent,\n\tcomputed,\n\tcontentChildren,\n\tElementRef,\n\tforwardRef,\n\tinput,\n\tmodel,\n\tviewChildren,\n\tViewEncapsulation,\n} from '@angular/core';\nimport { ReactiveFormsModule } from '@angular/forms';\nimport { PortalDirective } from '@lucca-front/ng/core';\nimport { NoopValueAccessorDirective } from '@lucca-front/ng/forms';\nimport { SegmentedControlTabsPanelComponent } from './public-api';\nimport { LU_SEGMENTEDCONTROLTABS_INSTANCE } from './segmented-control-tabs.token';\n\nlet nextId = 0;\n\n@Component({\n\tselector: 'lu-segmented-control-tabs',\n\ttemplateUrl: './segmented-control-tabs.component.html',\n\tstyleUrl: './segmented-control-tabs.component.scss',\n\tencapsulation: ViewEncapsulation.None,\n\timports: [ReactiveFormsModule, PortalDirective],\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\thostDirectives: [NoopValueAccessorDirective],\n\tproviders: [\n\t\t{\n\t\t\tprovide: LU_SEGMENTEDCONTROLTABS_INSTANCE,\n\t\t\tuseExisting: forwardRef(() => SegmentedControlTabsComponent),\n\t\t},\n\t],\n})\nexport class SegmentedControlTabsComponent<T = unknown> implements AfterContentInit {\n\treadonly small = input(false, { transform: booleanAttribute });\n\treadonly vertical = input(false, { transform: booleanAttribute });\n\n\treadonly id = `segmentedControl${nextId++}`;\n\n\treadonly tabs = contentChildren<SegmentedControlTabsPanelComponent<T>>(SegmentedControlTabsPanelComponent);\n\treadonly tabButtons = viewChildren<ElementRef<HTMLButtonElement>>('tabButton');\n\n\tactive = model<T>(null);\n\n\treadonly currentIndex = computed(() => this.tabs().findIndex((tab) => tab.value() === this.active()));\n\n\tprevious() {\n\t\tlet newIndex = this.currentIndex() - 1;\n\t\tif (newIndex < 0) {\n\t\t\tnewIndex = this.tabs().length - 1;\n\t\t}\n\t\tthis.setActiveTab(newIndex);\n\t}\n\n\tnext() {\n\t\tlet newIndex = this.currentIndex() + 1;\n\t\tif (newIndex >= this.tabs().length) {\n\t\t\tnewIndex = 0;\n\t\t}\n\t\tthis.setActiveTab(newIndex);\n\t}\n\n\tsetActiveTab(index: number) {\n\t\tthis.active.set(this.tabs()[index].value());\n\t\tthis.tabButtons()[index].nativeElement.focus();\n\t}\n\n\tngAfterContentInit(): void {\n\t\tif (this.active() === null) {\n\t\t\tthis.active.set(this.tabs()[0].value());\n\t\t}\n\t}\n}\n","<ul class=\"segmentedControl\" role=\"tablist\" [class.mod-S]=\"small()\" [class.mod-vertical]=\"vertical()\">\n\t@for (panel of tabs(); track panel.id) {\n\t\t<li class=\"segmentedControl-item\" role=\"presentation\">\n\t\t\t<button\n\t\t\t\t#tabButton\n\t\t\t\tclass=\"segmentedControl-item-action\"\n\t\t\t\ttype=\"button\"\n\t\t\t\trole=\"tab\"\n\t\t\t\t[attr.id]=\"panel.labelId\"\n\t\t\t\t[attr.aria-controls]=\"panel.value()\"\n\t\t\t\t[attr.aria-selected]=\"active() === panel.value()\"\n\t\t\t\t[attr.tabindex]=\"active() !== panel.value() ? '-1' : null\"\n\t\t\t\t(click)=\"active.set(panel.value())\"\n\t\t\t\t(keydown.arrowleft)=\"$event.preventDefault(); previous()\"\n\t\t\t\t(keydown.arrowup)=\"$event.preventDefault(); previous()\"\n\t\t\t\t(keydown.arrowright)=\"$event.preventDefault(); next()\"\n\t\t\t\t(keydown.arrowdown)=\"$event.preventDefault(); next()\"\n\t\t\t>\n\t\t\t\t<ng-container *luPortal=\"panel.label()\" />\n\t\t\t</button>\n\t\t</li>\n\t}\n</ul>\n<ng-content />\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["nextId"],"mappings":";;;;;;;AAGO,MAAM,gCAAgC,GAAG,IAAI,cAAc,CAAgC,kCAAkC,CAAC;;ACCrI,IAAIA,QAAM,GAAG,CAAC;MAgBD,kCAAkC,CAAA;AAd/C,IAAA,WAAA,GAAA;AAeW,QAAA,IAAA,CAAA,uBAAuB,GAAG,MAAM,CAAC,gCAAgC,CAAC;QACnE,IAAA,CAAA,KAAK,GAAG,KAAK,CAAA,IAAA,SAAA,GAAA,CAAA,SAAA,EAAA,EAAA,SAAA,EAAA,OAAA,EAAA,CAAA,GAAA,EAAA,CAAA,CAAiB;AAC9B,QAAA,IAAA,CAAA,KAAK,GAAG,KAAK,CAAC,QAAQ,gDAAK;QAE3B,IAAA,CAAA,EAAE,GAAGA,QAAM,EAAE;AAEb,QAAA,IAAA,CAAA,OAAO,GAAG,CAAA,KAAA,EAAQ,IAAI,CAAC,EAAE,EAAE;AAC3B,QAAA,IAAA,CAAA,OAAO,GAAG,CAAA,GAAA,EAAM,IAAI,CAAC,EAAE,EAAE;AAClC,IAAA;8GATY,kCAAkC,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAlC,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,kCAAkC,skBAZpC,gBAAgB,EAAA,QAAA,EAAA,IAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA;;2FAYd,kCAAkC,EAAA,UAAA,EAAA,CAAA;kBAd9C,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACV,oBAAA,QAAQ,EAAE,iCAAiC;AAC3C,oBAAA,QAAQ,EAAE,gBAAgB;oBAC1B,aAAa,EAAE,iBAAiB,CAAC,IAAI;oBACrC,eAAe,EAAE,uBAAuB,CAAC,MAAM;AAC/C,oBAAA,IAAI,EAAE;AACL,wBAAA,KAAK,EAAE,wBAAwB;AAC/B,wBAAA,IAAI,EAAE,UAAU;AAChB,wBAAA,YAAY,EAAE,GAAG;AACjB,wBAAA,mBAAmB,EAAE,8CAA8C;AACnE,wBAAA,MAAM,EAAE,SAAS;AACjB,wBAAA,wBAAwB,EAAE,SAAS;AACnC,qBAAA;AACD,iBAAA;;;ACCD,IAAI,MAAM,GAAG,CAAC;MAiBD,6BAA6B,CAAA;AAf1C,IAAA,WAAA,GAAA;QAgBU,IAAA,CAAA,KAAK,GAAG,KAAK,CAAC,KAAK,kDAAI,SAAS,EAAE,gBAAgB,EAAA,CAAG;QACrD,IAAA,CAAA,QAAQ,GAAG,KAAK,CAAC,KAAK,qDAAI,SAAS,EAAE,gBAAgB,EAAA,CAAG;AAExD,QAAA,IAAA,CAAA,EAAE,GAAG,CAAA,gBAAA,EAAmB,MAAM,EAAE,EAAE;AAElC,QAAA,IAAA,CAAA,IAAI,GAAG,eAAe,CAAwC,kCAAkC,gDAAC;AACjG,QAAA,IAAA,CAAA,UAAU,GAAG,YAAY,CAAgC,WAAW,sDAAC;AAE9E,QAAA,IAAA,CAAA,MAAM,GAAG,KAAK,CAAI,IAAI,kDAAC;AAEd,QAAA,IAAA,CAAA,YAAY,GAAG,QAAQ,CAAC,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC,SAAS,CAAC,CAAC,GAAG,KAAK,GAAG,CAAC,KAAK,EAAE,KAAK,IAAI,CAAC,MAAM,EAAE,CAAC,wDAAC;AA4BrG,IAAA;IA1BA,QAAQ,GAAA;QACP,IAAI,QAAQ,GAAG,IAAI,CAAC,YAAY,EAAE,GAAG,CAAC;AACtC,QAAA,IAAI,QAAQ,GAAG,CAAC,EAAE;YACjB,QAAQ,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC;QAClC;AACA,QAAA,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC;IAC5B;IAEA,IAAI,GAAA;QACH,IAAI,QAAQ,GAAG,IAAI,CAAC,YAAY,EAAE,GAAG,CAAC;QACtC,IAAI,QAAQ,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,MAAM,EAAE;YACnC,QAAQ,GAAG,CAAC;QACb;AACA,QAAA,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC;IAC5B;AAEA,IAAA,YAAY,CAAC,KAAa,EAAA;AACzB,QAAA,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,CAAC;QAC3C,IAAI,CAAC,UAAU,EAAE,CAAC,KAAK,CAAC,CAAC,aAAa,CAAC,KAAK,EAAE;IAC/C;IAEA,kBAAkB,GAAA;AACjB,QAAA,IAAI,IAAI,CAAC,MAAM,EAAE,KAAK,IAAI,EAAE;AAC3B,YAAA,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC;QACxC;IACD;8GAtCY,6BAA6B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAA7B,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,6BAA6B,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,2BAAA,EAAA,MAAA,EAAA,EAAA,KAAA,EAAA,EAAA,iBAAA,EAAA,OAAA,EAAA,UAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,QAAA,EAAA,EAAA,iBAAA,EAAA,UAAA,EAAA,UAAA,EAAA,UAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,MAAA,EAAA,EAAA,iBAAA,EAAA,QAAA,EAAA,UAAA,EAAA,QAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,OAAA,EAAA,EAAA,MAAA,EAAA,cAAA,EAAA,EAAA,SAAA,EAP9B;AACV,YAAA;AACC,gBAAA,OAAO,EAAE,gCAAgC;AACzC,gBAAA,WAAW,EAAE,UAAU,CAAC,MAAM,6BAA6B,CAAC;AAC5D,aAAA;AACD,SAAA,EAAA,OAAA,EAAA,CAAA,EAAA,YAAA,EAAA,MAAA,EAAA,SAAA,EAQsE,kCAAkC,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,EAAA,WAAA,EAAA,CAAA,EAAA,YAAA,EAAA,YAAA,EAAA,SAAA,EAAA,CAAA,WAAA,CAAA,EAAA,WAAA,EAAA,IAAA,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,EAAA,cAAA,EAAA,CAAA,EAAA,SAAA,EAAA,EAAA,CAAA,0BAAA,EAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EC3C1G,y+BAwBA,EAAA,MAAA,EAAA,CAAA,wrOAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EDGW,mBAAmB,+BAAE,eAAe,EAAA,QAAA,EAAA,YAAA,EAAA,MAAA,EAAA,CAAA,UAAA,EAAA,iBAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA;;2FAUlC,6BAA6B,EAAA,UAAA,EAAA,CAAA;kBAfzC,SAAS;AACC,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,2BAA2B,iBAGtB,iBAAiB,CAAC,IAAI,EAAA,OAAA,EAC5B,CAAC,mBAAmB,EAAE,eAAe,CAAC,EAAA,eAAA,EAC9B,uBAAuB,CAAC,MAAM,kBAC/B,CAAC,0BAA0B,CAAC,EAAA,SAAA,EACjC;AACV,wBAAA;AACC,4BAAA,OAAO,EAAE,gCAAgC;AACzC,4BAAA,WAAW,EAAE,UAAU,CAAC,mCAAmC,CAAC;AAC5D,yBAAA;AACD,qBAAA,EAAA,QAAA,EAAA,y+BAAA,EAAA,MAAA,EAAA,CAAA,wrOAAA,CAAA,EAAA;AAQsE,SAAA,CAAA,EAAA,cAAA,EAAA,EAAA,KAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,OAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,QAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,UAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,IAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,eAAA,EAAA,IAAA,EAAA,CAAA,EAAA,CAAA,UAAA,CAAA,MAAA,kCAAkC,wEACvC,WAAW,EAAA,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,EAAA,CAAA,EAAA,MAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,QAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,CAAA,MAAA,EAAA,IAAA,EAAA,CAAA,cAAA,CAAA,EAAA,CAAA,EAAA,EAAA,CAAA;;AE5C9E;;AAEG;;;;"}
1
+ {"version":3,"file":"lucca-front-ng-segmented-control-tabs.mjs","sources":["../../../packages/ng/segmented-control-tabs/segmented-control-tabs.token.ts","../../../packages/ng/segmented-control-tabs/panel/panel.component.ts","../../../packages/ng/segmented-control-tabs/segmented-control-tabs.component.ts","../../../packages/ng/segmented-control-tabs/segmented-control-tabs.component.html","../../../packages/ng/segmented-control-tabs/lucca-front-ng-segmented-control-tabs.ts"],"sourcesContent":["import { InjectionToken } from '@angular/core';\nimport { SegmentedControlTabsComponent } from './segmented-control-tabs.component';\n\nexport const LU_SEGMENTEDCONTROLTABS_INSTANCE = new InjectionToken<SegmentedControlTabsComponent>('LU_SEGMENTEDCONTROLTABS_INSTANCE');\n","import { ChangeDetectionStrategy, Component, inject, input, ViewEncapsulation } from '@angular/core';\nimport { PortalContent } from '@lucca-front/ng/core';\nimport { LU_SEGMENTEDCONTROLTABS_INSTANCE } from '../segmented-control-tabs.token';\n\nlet nextId = 0;\n\n@Component({\n\tselector: 'lu-segmented-control-tabs-panel',\n\ttemplate: '<ng-content />',\n\tencapsulation: ViewEncapsulation.None,\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\thost: {\n\t\tclass: 'segmentedControl_panel',\n\t\trole: 'tabpanel',\n\t\t'[tabindex]': '0',\n\t\t'[class.is-active]': 'segmentedControlTabsRef.active() === value()',\n\t\t'[id]': 'panelId',\n\t\t'[attr.aria-labelledby]': 'labelId',\n\t},\n})\nexport class SegmentedControlTabsPanelComponent<T = unknown> {\n\tprotected segmentedControlTabsRef = inject(LU_SEGMENTEDCONTROLTABS_INSTANCE);\n\n\treadonly label = input<PortalContent>();\n\n\treadonly value = input.required<T>();\n\n\treadonly id = nextId++;\n\n\treadonly panelId = `panel${this.id}`;\n\treadonly labelId = `tab${this.id}`;\n}\n","import {\n\tAfterContentInit,\n\tbooleanAttribute,\n\tChangeDetectionStrategy,\n\tComponent,\n\tcomputed,\n\tcontentChildren,\n\tElementRef,\n\tforwardRef,\n\tinput,\n\tmodel,\n\tviewChildren,\n\tViewEncapsulation,\n} from '@angular/core';\nimport { ReactiveFormsModule } from '@angular/forms';\nimport { PortalDirective } from '@lucca-front/ng/core';\nimport { NoopValueAccessorDirective } from '@lucca-front/ng/forms';\nimport { SegmentedControlTabsPanelComponent } from './public-api';\nimport { LU_SEGMENTEDCONTROLTABS_INSTANCE } from './segmented-control-tabs.token';\n\nlet nextId = 0;\n\n@Component({\n\tselector: 'lu-segmented-control-tabs',\n\ttemplateUrl: './segmented-control-tabs.component.html',\n\tstyleUrl: './segmented-control-tabs.component.scss',\n\tencapsulation: ViewEncapsulation.None,\n\timports: [ReactiveFormsModule, PortalDirective],\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\thostDirectives: [NoopValueAccessorDirective],\n\tproviders: [\n\t\t{\n\t\t\tprovide: LU_SEGMENTEDCONTROLTABS_INSTANCE,\n\t\t\tuseExisting: forwardRef(() => SegmentedControlTabsComponent),\n\t\t},\n\t],\n})\nexport class SegmentedControlTabsComponent<T = unknown> implements AfterContentInit {\n\t/**\n\t * Applies small size to segmented control tabs\n\t */\n\treadonly small = input(false, { transform: booleanAttribute });\n\n\t/**\n\t * Display segmented control tabs vertically\n\t */\n\treadonly vertical = input(false, { transform: booleanAttribute });\n\n\tactive = model<T>(null);\n\n\treadonly id = `segmentedControl${nextId++}`;\n\n\treadonly tabs = contentChildren<SegmentedControlTabsPanelComponent<T>>(SegmentedControlTabsPanelComponent);\n\treadonly tabButtons = viewChildren<ElementRef<HTMLButtonElement>>('tabButton');\n\n\treadonly currentIndex = computed(() => this.tabs().findIndex((tab) => tab.value() === this.active()));\n\n\tprevious() {\n\t\tlet newIndex = this.currentIndex() - 1;\n\t\tif (newIndex < 0) {\n\t\t\tnewIndex = this.tabs().length - 1;\n\t\t}\n\t\tthis.setActiveTab(newIndex);\n\t}\n\n\tnext() {\n\t\tlet newIndex = this.currentIndex() + 1;\n\t\tif (newIndex >= this.tabs().length) {\n\t\t\tnewIndex = 0;\n\t\t}\n\t\tthis.setActiveTab(newIndex);\n\t}\n\n\tsetActiveTab(index: number) {\n\t\tthis.active.set(this.tabs()[index].value());\n\t\tthis.tabButtons()[index].nativeElement.focus();\n\t}\n\n\tngAfterContentInit(): void {\n\t\tif (this.active() === null) {\n\t\t\tthis.active.set(this.tabs()[0].value());\n\t\t}\n\t}\n}\n","<ul class=\"segmentedControl\" role=\"tablist\" [class.mod-S]=\"small()\" [class.mod-vertical]=\"vertical()\">\n\t@for (panel of tabs(); track panel.id) {\n\t\t<li class=\"segmentedControl-item\" role=\"presentation\">\n\t\t\t<button\n\t\t\t\t#tabButton\n\t\t\t\tclass=\"segmentedControl-item-action\"\n\t\t\t\ttype=\"button\"\n\t\t\t\trole=\"tab\"\n\t\t\t\t[attr.id]=\"panel.labelId\"\n\t\t\t\t[attr.aria-controls]=\"panel.value()\"\n\t\t\t\t[attr.aria-selected]=\"active() === panel.value()\"\n\t\t\t\t[attr.tabindex]=\"active() !== panel.value() ? '-1' : null\"\n\t\t\t\t(click)=\"active.set(panel.value())\"\n\t\t\t\t(keydown.arrowleft)=\"$event.preventDefault(); previous()\"\n\t\t\t\t(keydown.arrowup)=\"$event.preventDefault(); previous()\"\n\t\t\t\t(keydown.arrowright)=\"$event.preventDefault(); next()\"\n\t\t\t\t(keydown.arrowdown)=\"$event.preventDefault(); next()\"\n\t\t\t>\n\t\t\t\t<ng-container *luPortal=\"panel.label()\" />\n\t\t\t</button>\n\t\t</li>\n\t}\n</ul>\n<ng-content />\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["nextId"],"mappings":"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"}
@@ -12,11 +12,20 @@ let nextId$1 = 0;
12
12
  class SegmentedControlFilterComponent {
13
13
  constructor() {
14
14
  this.segmentedControlRef = inject(LU_SEGMENTEDCONTROL_INSTANCE);
15
+ /**
16
+ * Disabled the segmented control filter
17
+ */
15
18
  this.disabled = input(false, { ...(ngDevMode ? { debugName: "disabled" } : {}), transform: booleanAttribute });
19
+ /**
20
+ * Defines filtered value used
21
+ */
16
22
  this.value = input.required(...(ngDevMode ? [{ debugName: "value" }] : []));
23
+ /**
24
+ * Changes the text displayed by the segmented control filter
25
+ */
26
+ this.label = input(...(ngDevMode ? [undefined, { debugName: "label" }] : []));
17
27
  this.id = `${this.segmentedControlRef.id}item${nextId$1++}`;
18
28
  this.name = this.segmentedControlRef.id;
19
- this.label = input(...(ngDevMode ? [undefined, { debugName: "label" }] : []));
20
29
  }
21
30
  get formControl() {
22
31
  return this.segmentedControlRef.ngControl.control;
@@ -36,7 +45,13 @@ let nextId = 0;
36
45
  class SegmentedControlComponent {
37
46
  constructor() {
38
47
  this.ngControl = injectNgControl();
48
+ /**
49
+ * Applies small size to segmented control
50
+ */
39
51
  this.small = input(false, { ...(ngDevMode ? { debugName: "small" } : {}), transform: booleanAttribute });
52
+ /**
53
+ * Display segmented control vertically
54
+ */
40
55
  this.vertical = input(false, { ...(ngDevMode ? { debugName: "vertical" } : {}), transform: booleanAttribute });
41
56
  this.id = `segmentedControl${nextId++}`;
42
57
  }
@@ -1 +1 @@
1
- {"version":3,"file":"lucca-front-ng-segmented-control.mjs","sources":["../../../packages/ng/segmented-control/segmented-control.token.ts","../../../packages/ng/segmented-control/filter/filter.component.ts","../../../packages/ng/segmented-control/filter/filter.component.html","../../../packages/ng/segmented-control/segmented-control.component.ts","../../../packages/ng/segmented-control/lucca-front-ng-segmented-control.ts"],"sourcesContent":["import { InjectionToken } from '@angular/core';\nimport { SegmentedControlComponent } from './segmented-control.component';\n\nexport const LU_SEGMENTEDCONTROL_INSTANCE = new InjectionToken<SegmentedControlComponent>('LU_SEGMENTEDCONTROL_INSTANCE');\n","import { booleanAttribute, ChangeDetectionStrategy, Component, inject, input, ViewEncapsulation } from '@angular/core';\nimport { ReactiveFormsModule } from '@angular/forms';\nimport { PortalContent, PortalDirective } from '@lucca-front/ng/core';\nimport { LU_SEGMENTEDCONTROL_INSTANCE } from '../segmented-control.token';\n\nlet nextId = 0;\n\n@Component({\n\tselector: 'lu-segmented-control-filter',\n\ttemplateUrl: './filter.component.html',\n\tencapsulation: ViewEncapsulation.None,\n\timports: [ReactiveFormsModule, PortalDirective],\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\thost: {\n\t\tclass: 'segmentedControl-item',\n\t\trole: 'listitem',\n\t},\n})\nexport class SegmentedControlFilterComponent<T = unknown> {\n\tprotected segmentedControlRef = inject(LU_SEGMENTEDCONTROL_INSTANCE);\n\n\treadonly disabled = input(false, { transform: booleanAttribute });\n\n\treadonly value = input.required<T>();\n\n\treadonly id = `${this.segmentedControlRef.id}item${nextId++}`;\n\treadonly name = this.segmentedControlRef.id;\n\n\treadonly label = input<PortalContent>();\n\n\tpublic get formControl() {\n\t\treturn this.segmentedControlRef.ngControl.control;\n\t}\n}\n","<input\n\ttype=\"radio\"\n\tclass=\"segmentedControl-item-input\"\n\t[name]=\"name\"\n\t[attr.name]=\"name\"\n\t[formControl]=\"formControl\"\n\t[value]=\"value()\"\n\t[attr.id]=\"id\"\n\t[attr.disabled]=\"formControl.disabled || disabled() ? 'disabled' : null\"\n/>\n<label [attr.for]=\"id\" class=\"segmentedControl-item-action\">\n\t<ng-container *luPortal=\"label()\" />\n</label>\n","import { booleanAttribute, ChangeDetectionStrategy, Component, forwardRef, input, ViewEncapsulation } from '@angular/core';\nimport { ReactiveFormsModule } from '@angular/forms';\nimport { injectNgControl, NoopValueAccessorDirective } from '@lucca-front/ng/forms';\nimport { LU_SEGMENTEDCONTROL_INSTANCE } from './segmented-control.token';\n\nlet nextId = 0;\n\n@Component({\n\tselector: 'lu-segmented-control',\n\ttemplate: '<ng-content />',\n\tstyleUrl: './segmented-control.component.scss',\n\tencapsulation: ViewEncapsulation.None,\n\timports: [ReactiveFormsModule],\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\thostDirectives: [NoopValueAccessorDirective],\n\thost: {\n\t\trole: 'presentation',\n\t\tclass: 'segmentedControl',\n\t\t'[class.mod-S]': 'small()',\n\t\t'[class.mod-vertical]': 'vertical()',\n\t},\n\tproviders: [\n\t\t{\n\t\t\tprovide: LU_SEGMENTEDCONTROL_INSTANCE,\n\t\t\tuseExisting: forwardRef(() => SegmentedControlComponent),\n\t\t},\n\t],\n})\nexport class SegmentedControlComponent {\n\tngControl = injectNgControl();\n\n\treadonly small = input(false, { transform: booleanAttribute });\n\treadonly vertical = input(false, { transform: booleanAttribute });\n\n\treadonly id = `segmentedControl${nextId++}`;\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["nextId","i1"],"mappings":"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"}
1
+ {"version":3,"file":"lucca-front-ng-segmented-control.mjs","sources":["../../../packages/ng/segmented-control/segmented-control.token.ts","../../../packages/ng/segmented-control/filter/filter.component.ts","../../../packages/ng/segmented-control/filter/filter.component.html","../../../packages/ng/segmented-control/segmented-control.component.ts","../../../packages/ng/segmented-control/lucca-front-ng-segmented-control.ts"],"sourcesContent":["import { InjectionToken } from '@angular/core';\nimport { SegmentedControlComponent } from './segmented-control.component';\n\nexport const LU_SEGMENTEDCONTROL_INSTANCE = new InjectionToken<SegmentedControlComponent>('LU_SEGMENTEDCONTROL_INSTANCE');\n","import { booleanAttribute, ChangeDetectionStrategy, Component, inject, input, ViewEncapsulation } from '@angular/core';\nimport { ReactiveFormsModule } from '@angular/forms';\nimport { PortalContent, PortalDirective } from '@lucca-front/ng/core';\nimport { LU_SEGMENTEDCONTROL_INSTANCE } from '../segmented-control.token';\n\nlet nextId = 0;\n\n@Component({\n\tselector: 'lu-segmented-control-filter',\n\ttemplateUrl: './filter.component.html',\n\tencapsulation: ViewEncapsulation.None,\n\timports: [ReactiveFormsModule, PortalDirective],\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\thost: {\n\t\tclass: 'segmentedControl-item',\n\t\trole: 'listitem',\n\t},\n})\nexport class SegmentedControlFilterComponent<T = unknown> {\n\tprotected segmentedControlRef = inject(LU_SEGMENTEDCONTROL_INSTANCE);\n\n\t/**\n\t * Disabled the segmented control filter\n\t */\n\treadonly disabled = input(false, { transform: booleanAttribute });\n\n\t/**\n\t * Defines filtered value used\n\t */\n\treadonly value = input.required<T>();\n\n\t/**\n\t * Changes the text displayed by the segmented control filter\n\t */\n\treadonly label = input<PortalContent>();\n\n\treadonly id = `${this.segmentedControlRef.id}item${nextId++}`;\n\treadonly name = this.segmentedControlRef.id;\n\n\tpublic get formControl() {\n\t\treturn this.segmentedControlRef.ngControl.control;\n\t}\n}\n","<input\n\ttype=\"radio\"\n\tclass=\"segmentedControl-item-input\"\n\t[name]=\"name\"\n\t[attr.name]=\"name\"\n\t[formControl]=\"formControl\"\n\t[value]=\"value()\"\n\t[attr.id]=\"id\"\n\t[attr.disabled]=\"formControl.disabled || disabled() ? 'disabled' : null\"\n/>\n<label [attr.for]=\"id\" class=\"segmentedControl-item-action\">\n\t<ng-container *luPortal=\"label()\" />\n</label>\n","import { booleanAttribute, ChangeDetectionStrategy, Component, forwardRef, input, ViewEncapsulation } from '@angular/core';\nimport { ReactiveFormsModule } from '@angular/forms';\nimport { injectNgControl, NoopValueAccessorDirective } from '@lucca-front/ng/forms';\nimport { LU_SEGMENTEDCONTROL_INSTANCE } from './segmented-control.token';\n\nlet nextId = 0;\n\n@Component({\n\tselector: 'lu-segmented-control',\n\ttemplate: '<ng-content />',\n\tstyleUrl: './segmented-control.component.scss',\n\tencapsulation: ViewEncapsulation.None,\n\timports: [ReactiveFormsModule],\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\thostDirectives: [NoopValueAccessorDirective],\n\thost: {\n\t\trole: 'presentation',\n\t\tclass: 'segmentedControl',\n\t\t'[class.mod-S]': 'small()',\n\t\t'[class.mod-vertical]': 'vertical()',\n\t},\n\tproviders: [\n\t\t{\n\t\t\tprovide: LU_SEGMENTEDCONTROL_INSTANCE,\n\t\t\tuseExisting: forwardRef(() => SegmentedControlComponent),\n\t\t},\n\t],\n})\nexport class SegmentedControlComponent {\n\tngControl = injectNgControl();\n\n\t/**\n\t * Applies small size to segmented control\n\t */\n\treadonly small = input(false, { transform: booleanAttribute });\n\n\t/**\n\t * Display segmented control vertically\n\t */\n\treadonly vertical = input(false, { transform: booleanAttribute });\n\n\treadonly id = `segmentedControl${nextId++}`;\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["nextId","i1"],"mappings":"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"}
@@ -272,7 +272,10 @@ class LuSimpleSelectPanelRefFactory {
272
272
  }
273
273
  buildOverlayConfig(overlayConfigOverride = {}) {
274
274
  const overlayConfig = overlayConfigOverride || {};
275
- overlayConfig.positionStrategy = this.positionBuilder.flexibleConnectedTo(this.elementRef).withPositions([
275
+ overlayConfig.positionStrategy = this.positionBuilder
276
+ .flexibleConnectedTo(this.elementRef)
277
+ .withViewportMargin(8)
278
+ .withPositions([
276
279
  {
277
280
  originX: 'start',
278
281
  originY: 'bottom',
@@ -357,7 +360,7 @@ class LuSimpleSelectInputComponent extends ALuSelectInputComponent {
357
360
  provide: FILTER_PILL_INPUT_COMPONENT,
358
361
  useExisting: forwardRef(() => LuSimpleSelectInputComponent),
359
362
  },
360
- ], 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()) {\n\t\t\t<ng-container *luPortal=\"prefix()\" />\n\t\t}\n\t</span>\n\t<input\n\t\tclass=\"simpleSelect-field-input\"\n\t\ttype=\"text\"\n\t\trole=\"combobox\"\n\t\taria-haspopup=\"listbox\"\n\t\t[attr.aria-activedescendant]=\"activeDescendant$ | async\"\n\t\t[attr.aria-expanded]=\"isPanelOpen\"\n\t\t[attr.aria-controls]=\"ariaControls\"\n\t\tplaceholder=\"{{ inputPlaceholder ? inputPlaceholder : intl.placeholder }}\"\n\t\t[ngModel]=\"clue\"\n\t\t(ngModelChange)=\"clueChanged($event)\"\n\t\t[ngModelOptions]=\"{ standalone: true }\"\n\t\t[readonly]=\"!searchable\"\n\t\t[disabled]=\"disabled$ | async\"\n\t\t(keyup.space)=\"inputSpace($event)\"\n\t\tluInput\n\t\t#inputElement\n\t\t[attr.autocomplete]=\"autocomplete()\"\n\t\t[attr.tabindex]=\"inputTabindex()\"\n\t/>\n\t<div class=\"simpleSelect-field-value\">\n\t\t<ng-container *ngTemplateOutlet=\"currentValueDisplayerTpl\" />\n\t</div>\n\t@if (!filterPillMode) {\n\t\t@if (clearable && hasValue() && (disabled$ | async) === false) {\n\t\t\t<lu-clear class=\"simpleSelect-field-clear\" (onClear)=\"clearValue($event); inputElement.focus()\">{{ intl.clear }}</lu-clear>\n\t\t}\n\t\t<lu-icon icon=\"arrowChevronBottom\" class=\"simpleSelect-field-icon\" />\n\t\t<lu-icon icon=\"searchMagnifyingGlass\" class=\"simpleSelect-field-icon mod-search\" />\n\t}\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", styles: ["@layer components{.simpleSelect{--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}.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: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-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-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: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-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-filterPill{inline-size:26.5rem;max-inline-size:calc(100vw - 2.5rem)}.simpleSelect.mod-filterPill .simpleSelect-field{position:relative;z-index:1}.simpleSelect.mod-filterPill lu-simple-select-default-option.pr-u-ellipsis{white-space:normal!important}.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-50) 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{color:transparent}.simpleSelect.is-selected.is-searchFilled .simpleSelect-field-input::placeholder{color:transparent}.simpleSelect.is-selected.is-searchFilled .simpleSelect-field-value{display:none}}@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-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,.textfield-input:not(.is-selected) .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$1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: InputDirective, selector: "[luInput]", inputs: ["luInputStandalone"] }, { kind: "directive", type: FilterPillDisplayerDirective, selector: "[luFilterPillDisplayer]" }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: IconComponent, selector: "lu-icon", inputs: ["icon", "alt", "size", "color", "AI"] }, { kind: "component", type: ClearComponent, selector: "lu-clear", inputs: ["size", "disabled", "palette", "inverted"], outputs: ["onClear"], exportAs: ["luClearer"] }, { kind: "directive", type: PortalDirective, selector: "[luPortal]", inputs: ["luPortal", "luPortalContext"] }, { kind: "pipe", type: AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
363
+ ], 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()) {\n\t\t\t<ng-container *luPortal=\"prefix()\" />\n\t\t}\n\t</span>\n\t<input\n\t\tclass=\"simpleSelect-field-input\"\n\t\ttype=\"text\"\n\t\trole=\"combobox\"\n\t\taria-haspopup=\"listbox\"\n\t\t[attr.aria-activedescendant]=\"activeDescendant$ | async\"\n\t\t[attr.aria-expanded]=\"isPanelOpen\"\n\t\t[attr.aria-controls]=\"ariaControls\"\n\t\tplaceholder=\"{{ inputPlaceholder ? inputPlaceholder : intl.placeholder }}\"\n\t\t[ngModel]=\"clue\"\n\t\t(ngModelChange)=\"clueChanged($event)\"\n\t\t[ngModelOptions]=\"{ standalone: true }\"\n\t\t[readonly]=\"!searchable\"\n\t\t[disabled]=\"disabled$ | async\"\n\t\t(keyup.space)=\"inputSpace($event)\"\n\t\tluInput\n\t\t#inputElement\n\t\t[attr.autocomplete]=\"autocomplete()\"\n\t\t[attr.tabindex]=\"inputTabindex()\"\n\t/>\n\t<div class=\"simpleSelect-field-value\">\n\t\t<ng-container *ngTemplateOutlet=\"currentValueDisplayerTpl\" />\n\t</div>\n\t@if (!filterPillMode) {\n\t\t@if (clearable && hasValue() && (disabled$ | async) === false) {\n\t\t\t<lu-clear class=\"simpleSelect-field-clear\" (onClear)=\"clearValue($event); inputElement.focus()\">{{ intl.clear }}</lu-clear>\n\t\t}\n\t\t<lu-icon icon=\"arrowChevronBottom\" class=\"simpleSelect-field-icon\" />\n\t\t<lu-icon icon=\"searchMagnifyingGlass\" class=\"simpleSelect-field-icon mod-search\" />\n\t}\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", styles: ["@layer components{.simpleSelect{--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}.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: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-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-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: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-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-filterPill{inline-size:26.5rem;max-inline-size:calc(100vw - 2.5rem)}.simpleSelect.mod-filterPill .simpleSelect-field{position:relative;z-index:1}.simpleSelect.mod-filterPill lu-simple-select-default-option.pr-u-ellipsis{white-space:normal!important}.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{color:transparent}.simpleSelect.is-selected.is-searchFilled .simpleSelect-field-input::placeholder{color:transparent}.simpleSelect.is-selected.is-searchFilled .simpleSelect-field-value{display:none}}@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-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$1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: InputDirective, selector: "[luInput]", inputs: ["luInputStandalone"] }, { kind: "directive", type: FilterPillDisplayerDirective, selector: "[luFilterPillDisplayer]" }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: IconComponent, selector: "lu-icon", inputs: ["icon", "alt", "size", "color", "AI"] }, { kind: "component", type: ClearComponent, selector: "lu-clear", inputs: ["size", "disabled", "palette", "inverted"], outputs: ["onClear"], exportAs: ["luClearer"] }, { kind: "directive", type: PortalDirective, selector: "[luPortal]", inputs: ["luPortal", "luPortalContext"] }, { kind: "pipe", type: AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
361
364
  }
362
365
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: LuSimpleSelectInputComponent, decorators: [{
363
366
  type: Component,
@@ -377,7 +380,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.6", ngImpor
377
380
  provide: FILTER_PILL_INPUT_COMPONENT,
378
381
  useExisting: forwardRef(() => LuSimpleSelectInputComponent),
379
382
  },
380
- ], encapsulation: ViewEncapsulation.None, template: "<div class=\"simpleSelect-field\">\n\t<span class=\"simpleSelect-field-prefix\">\n\t\t@if (prefix()) {\n\t\t\t<ng-container *luPortal=\"prefix()\" />\n\t\t}\n\t</span>\n\t<input\n\t\tclass=\"simpleSelect-field-input\"\n\t\ttype=\"text\"\n\t\trole=\"combobox\"\n\t\taria-haspopup=\"listbox\"\n\t\t[attr.aria-activedescendant]=\"activeDescendant$ | async\"\n\t\t[attr.aria-expanded]=\"isPanelOpen\"\n\t\t[attr.aria-controls]=\"ariaControls\"\n\t\tplaceholder=\"{{ inputPlaceholder ? inputPlaceholder : intl.placeholder }}\"\n\t\t[ngModel]=\"clue\"\n\t\t(ngModelChange)=\"clueChanged($event)\"\n\t\t[ngModelOptions]=\"{ standalone: true }\"\n\t\t[readonly]=\"!searchable\"\n\t\t[disabled]=\"disabled$ | async\"\n\t\t(keyup.space)=\"inputSpace($event)\"\n\t\tluInput\n\t\t#inputElement\n\t\t[attr.autocomplete]=\"autocomplete()\"\n\t\t[attr.tabindex]=\"inputTabindex()\"\n\t/>\n\t<div class=\"simpleSelect-field-value\">\n\t\t<ng-container *ngTemplateOutlet=\"currentValueDisplayerTpl\" />\n\t</div>\n\t@if (!filterPillMode) {\n\t\t@if (clearable && hasValue() && (disabled$ | async) === false) {\n\t\t\t<lu-clear class=\"simpleSelect-field-clear\" (onClear)=\"clearValue($event); inputElement.focus()\">{{ intl.clear }}</lu-clear>\n\t\t}\n\t\t<lu-icon icon=\"arrowChevronBottom\" class=\"simpleSelect-field-icon\" />\n\t\t<lu-icon icon=\"searchMagnifyingGlass\" class=\"simpleSelect-field-icon mod-search\" />\n\t}\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", styles: ["@layer components{.simpleSelect{--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}.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: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-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-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: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-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-filterPill{inline-size:26.5rem;max-inline-size:calc(100vw - 2.5rem)}.simpleSelect.mod-filterPill .simpleSelect-field{position:relative;z-index:1}.simpleSelect.mod-filterPill lu-simple-select-default-option.pr-u-ellipsis{white-space:normal!important}.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-50) 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{color:transparent}.simpleSelect.is-selected.is-searchFilled .simpleSelect-field-input::placeholder{color:transparent}.simpleSelect.is-selected.is-searchFilled .simpleSelect-field-value{display:none}}@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-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,.textfield-input:not(.is-selected) .clear{--components-clear-display: none}.multiSelect.is-selected:has(.multipleSelect-clear) .clear{--components-clear-display: grid}}\n"] }]
383
+ ], encapsulation: ViewEncapsulation.None, template: "<div class=\"simpleSelect-field\">\n\t<span class=\"simpleSelect-field-prefix\">\n\t\t@if (prefix()) {\n\t\t\t<ng-container *luPortal=\"prefix()\" />\n\t\t}\n\t</span>\n\t<input\n\t\tclass=\"simpleSelect-field-input\"\n\t\ttype=\"text\"\n\t\trole=\"combobox\"\n\t\taria-haspopup=\"listbox\"\n\t\t[attr.aria-activedescendant]=\"activeDescendant$ | async\"\n\t\t[attr.aria-expanded]=\"isPanelOpen\"\n\t\t[attr.aria-controls]=\"ariaControls\"\n\t\tplaceholder=\"{{ inputPlaceholder ? inputPlaceholder : intl.placeholder }}\"\n\t\t[ngModel]=\"clue\"\n\t\t(ngModelChange)=\"clueChanged($event)\"\n\t\t[ngModelOptions]=\"{ standalone: true }\"\n\t\t[readonly]=\"!searchable\"\n\t\t[disabled]=\"disabled$ | async\"\n\t\t(keyup.space)=\"inputSpace($event)\"\n\t\tluInput\n\t\t#inputElement\n\t\t[attr.autocomplete]=\"autocomplete()\"\n\t\t[attr.tabindex]=\"inputTabindex()\"\n\t/>\n\t<div class=\"simpleSelect-field-value\">\n\t\t<ng-container *ngTemplateOutlet=\"currentValueDisplayerTpl\" />\n\t</div>\n\t@if (!filterPillMode) {\n\t\t@if (clearable && hasValue() && (disabled$ | async) === false) {\n\t\t\t<lu-clear class=\"simpleSelect-field-clear\" (onClear)=\"clearValue($event); inputElement.focus()\">{{ intl.clear }}</lu-clear>\n\t\t}\n\t\t<lu-icon icon=\"arrowChevronBottom\" class=\"simpleSelect-field-icon\" />\n\t\t<lu-icon icon=\"searchMagnifyingGlass\" class=\"simpleSelect-field-icon mod-search\" />\n\t}\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", styles: ["@layer components{.simpleSelect{--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}.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: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-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-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: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-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-filterPill{inline-size:26.5rem;max-inline-size:calc(100vw - 2.5rem)}.simpleSelect.mod-filterPill .simpleSelect-field{position:relative;z-index:1}.simpleSelect.mod-filterPill lu-simple-select-default-option.pr-u-ellipsis{white-space:normal!important}.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{color:transparent}.simpleSelect.is-selected.is-searchFilled .simpleSelect-field-input::placeholder{color:transparent}.simpleSelect.is-selected.is-searchFilled .simpleSelect-field-value{display:none}}@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-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"] }]
381
384
  }], propDecorators: { filterPillClass: [{
382
385
  type: HostBinding,
383
386
  args: ['class.mod-filterPill']