@lucca-front/ng 22.0.5-rc.1 → 22.0.5

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 (104) hide show
  1. package/fesm2022/lucca-front-ng-a11y.mjs +1 -0
  2. package/fesm2022/lucca-front-ng-a11y.mjs.map +1 -1
  3. package/fesm2022/lucca-front-ng-activity-feed.mjs +6 -6
  4. package/fesm2022/lucca-front-ng-activity-feed.mjs.map +1 -1
  5. package/fesm2022/lucca-front-ng-approbation-inbox.mjs +3 -3
  6. package/fesm2022/lucca-front-ng-approbation-inbox.mjs.map +1 -1
  7. package/fesm2022/lucca-front-ng-box.mjs +1 -1
  8. package/fesm2022/lucca-front-ng-box.mjs.map +1 -1
  9. package/fesm2022/lucca-front-ng-breadcrumbs.mjs +1 -1
  10. package/fesm2022/lucca-front-ng-breadcrumbs.mjs.map +1 -1
  11. package/fesm2022/lucca-front-ng-chip.mjs +14 -7
  12. package/fesm2022/lucca-front-ng-chip.mjs.map +1 -1
  13. package/fesm2022/lucca-front-ng-clear.mjs +1 -1
  14. package/fesm2022/lucca-front-ng-clear.mjs.map +1 -1
  15. package/fesm2022/lucca-front-ng-core-select-user.mjs +22 -27
  16. package/fesm2022/lucca-front-ng-core-select-user.mjs.map +1 -1
  17. package/fesm2022/lucca-front-ng-core-select.mjs +1 -1
  18. package/fesm2022/lucca-front-ng-core-select.mjs.map +1 -1
  19. package/fesm2022/lucca-front-ng-data-table.mjs +12 -7
  20. package/fesm2022/lucca-front-ng-data-table.mjs.map +1 -1
  21. package/fesm2022/lucca-front-ng-date.mjs +1 -1
  22. package/fesm2022/lucca-front-ng-date.mjs.map +1 -1
  23. package/fesm2022/lucca-front-ng-date2.mjs +86 -9
  24. package/fesm2022/lucca-front-ng-date2.mjs.map +1 -1
  25. package/fesm2022/lucca-front-ng-file-upload.mjs +6 -6
  26. package/fesm2022/lucca-front-ng-file-upload.mjs.map +1 -1
  27. package/fesm2022/lucca-front-ng-filter-pills.mjs +24 -7
  28. package/fesm2022/lucca-front-ng-filter-pills.mjs.map +1 -1
  29. package/fesm2022/lucca-front-ng-form-field.mjs +76 -26
  30. package/fesm2022/lucca-front-ng-form-field.mjs.map +1 -1
  31. package/fesm2022/lucca-front-ng-form-label.mjs +2 -2
  32. package/fesm2022/lucca-front-ng-form-label.mjs.map +1 -1
  33. package/fesm2022/lucca-front-ng-forms-phone-number-input.mjs +1 -1
  34. package/fesm2022/lucca-front-ng-forms-phone-number-input.mjs.map +1 -1
  35. package/fesm2022/lucca-front-ng-forms-rich-text-input.mjs +6 -6
  36. package/fesm2022/lucca-front-ng-forms-rich-text-input.mjs.map +1 -1
  37. package/fesm2022/lucca-front-ng-forms.mjs +12 -11
  38. package/fesm2022/lucca-front-ng-forms.mjs.map +1 -1
  39. package/fesm2022/lucca-front-ng-impersonation.mjs +1 -1
  40. package/fesm2022/lucca-front-ng-impersonation.mjs.map +1 -1
  41. package/fesm2022/lucca-front-ng-index-table.mjs +11 -6
  42. package/fesm2022/lucca-front-ng-index-table.mjs.map +1 -1
  43. package/fesm2022/lucca-front-ng-inline-message.mjs +1 -1
  44. package/fesm2022/lucca-front-ng-inline-message.mjs.map +1 -1
  45. package/fesm2022/lucca-front-ng-link.mjs +1 -1
  46. package/fesm2022/lucca-front-ng-link.mjs.map +1 -1
  47. package/fesm2022/lucca-front-ng-listbox.mjs +3 -3
  48. package/fesm2022/lucca-front-ng-listbox.mjs.map +1 -1
  49. package/fesm2022/lucca-front-ng-mobile-push.mjs +2 -2
  50. package/fesm2022/lucca-front-ng-mobile-push.mjs.map +1 -1
  51. package/fesm2022/lucca-front-ng-modal.mjs +2 -2
  52. package/fesm2022/lucca-front-ng-modal.mjs.map +1 -1
  53. package/fesm2022/lucca-front-ng-multi-select.mjs +4 -4
  54. package/fesm2022/lucca-front-ng-multi-select.mjs.map +1 -1
  55. package/fesm2022/lucca-front-ng-option.mjs +1 -1
  56. package/fesm2022/lucca-front-ng-option.mjs.map +1 -1
  57. package/fesm2022/lucca-front-ng-pagination.mjs +1 -1
  58. package/fesm2022/lucca-front-ng-pagination.mjs.map +1 -1
  59. package/fesm2022/lucca-front-ng-plg-push.mjs +1 -1
  60. package/fesm2022/lucca-front-ng-plg-push.mjs.map +1 -1
  61. package/fesm2022/lucca-front-ng-popover2.mjs +9 -6
  62. package/fesm2022/lucca-front-ng-popover2.mjs.map +1 -1
  63. package/fesm2022/lucca-front-ng-progress-stepper.mjs +2 -2
  64. package/fesm2022/lucca-front-ng-progress-stepper.mjs.map +1 -1
  65. package/fesm2022/lucca-front-ng-read-more.mjs +3 -3
  66. package/fesm2022/lucca-front-ng-read-more.mjs.map +1 -1
  67. package/fesm2022/lucca-front-ng-segmented-control-tabs.mjs +9 -4
  68. package/fesm2022/lucca-front-ng-segmented-control-tabs.mjs.map +1 -1
  69. package/fesm2022/lucca-front-ng-segmented-control.mjs +10 -5
  70. package/fesm2022/lucca-front-ng-segmented-control.mjs.map +1 -1
  71. package/fesm2022/lucca-front-ng-simple-select.mjs +2 -2
  72. package/fesm2022/lucca-front-ng-simple-select.mjs.map +1 -1
  73. package/fesm2022/lucca-front-ng-software-icon.mjs +1 -1
  74. package/fesm2022/lucca-front-ng-software-icon.mjs.map +1 -1
  75. package/fesm2022/lucca-front-ng-status-badge.mjs +1 -1
  76. package/fesm2022/lucca-front-ng-status-badge.mjs.map +1 -1
  77. package/fesm2022/lucca-front-ng-time.mjs +1 -1
  78. package/fesm2022/lucca-front-ng-time.mjs.map +1 -1
  79. package/package.json +4 -4
  80. package/types/lucca-front-ng-activity-feed.d.ts +13 -9
  81. package/types/lucca-front-ng-approbation-inbox.d.ts +32 -25
  82. package/types/lucca-front-ng-box.d.ts +12 -6
  83. package/types/lucca-front-ng-breadcrumbs.d.ts +12 -7
  84. package/types/lucca-front-ng-chip.d.ts +16 -9
  85. package/types/lucca-front-ng-clear.d.ts +12 -8
  86. package/types/lucca-front-ng-data-table.d.ts +13 -9
  87. package/types/lucca-front-ng-date.d.ts +12 -10
  88. package/types/lucca-front-ng-date2.d.ts +21 -18
  89. package/types/lucca-front-ng-file-upload.d.ts +41 -36
  90. package/types/lucca-front-ng-filter-pills.d.ts +27 -16
  91. package/types/lucca-front-ng-form-field.d.ts +22 -1
  92. package/types/lucca-front-ng-form-label.d.ts +13 -8
  93. package/types/lucca-front-ng-forms-rich-text-input.d.ts +38 -34
  94. package/types/lucca-front-ng-forms.d.ts +29 -42
  95. package/types/lucca-front-ng-impersonation.d.ts +14 -9
  96. package/types/lucca-front-ng-index-table.d.ts +3 -1
  97. package/types/lucca-front-ng-link.d.ts +11 -6
  98. package/types/lucca-front-ng-mobile-push.d.ts +18 -12
  99. package/types/lucca-front-ng-multi-select.d.ts +1 -1
  100. package/types/lucca-front-ng-pagination.d.ts +15 -10
  101. package/types/lucca-front-ng-plg-push.d.ts +12 -6
  102. package/types/lucca-front-ng-read-more.d.ts +13 -9
  103. package/types/lucca-front-ng-segmented-control-tabs.d.ts +5 -1
  104. package/types/lucca-front-ng-segmented-control.d.ts +5 -1
@@ -1 +1 @@
1
- {"version":3,"file":"lucca-front-ng-simple-select.mjs","sources":["../../../packages/ng/simple-select/translations.ts","../../../packages/ng/simple-select/select.translate.ts","../../../packages/ng/simple-select/select.model.ts","../../../packages/ng/simple-select/panel/option-selected.pipe.ts","../../../packages/ng/simple-select/panel/panel.component.ts","../../../packages/ng/simple-select/panel/panel.component.html","../../../packages/ng/simple-select/input/panel-ref.factory.ts","../../../packages/ng/simple-select/input/select-input.component.ts","../../../packages/ng/simple-select/input/select-input.component.html","../../../packages/ng/simple-select/lucca-front-ng-simple-select.ts"],"sourcesContent":["export const Translations = {\n\t'nl-BE': {\n\t\tplaceholder: 'Selecteren ...',\n\t\tclear: 'Wissen',\n\t\tclearSearch: 'Zoekopdracht leegmaken',\n\t\temptyResults: 'Uw zoekopdracht heeft geen resultaat opgeleverd.',\n\t\tloading: 'Bezig met laden...',\n\t\temptyOptions: 'Er zijn geen waarden beschikbaar. Neem contact op met uw beheerder voor meer informatie.',\n\t},\n\tnl: {\n\t\tplaceholder: 'Selecteren ...',\n\t\tclear: 'Wissen',\n\t\tclearSearch: 'Zoekopdracht leegmaken',\n\t\temptyResults: 'Uw zoekopdracht heeft geen resultaat opgeleverd.',\n\t\tloading: 'Bezig met laden...',\n\t\temptyOptions: 'Er zijn geen waarden beschikbaar. Neem contact op met uw beheerder voor meer informatie.',\n\t},\n\tit: {\n\t\tplaceholder: 'Selezionare…',\n\t\tclear: 'Cancellare',\n\t\tclearSearch: 'Cancellare la ricerca',\n\t\temptyResults: 'La ricerca non ha prodotto risultati.',\n\t\tloading: 'Caricamento in corso...',\n\t\temptyOptions: 'Nessun valore è disponibile. Contatta l’amministratore per maggiori informazioni.',\n\t},\n\tfr: {\n\t\tplaceholder: 'Sélectionner…',\n\t\tclear: 'Effacer',\n\t\tclearSearch: 'Vider la recherche',\n\t\temptyResults: \"Votre recherche n'a donné aucun résultat.\",\n\t\tloading: 'Chargement en cours...',\n\t\temptyOptions: \"Aucune valeur n'est disponible. Contactez votre administrateur pour plus d'informations.\",\n\t},\n\tpt: {\n\t\tplaceholder: 'Selecionar..',\n\t\tclear: 'Limpar',\n\t\tclearSearch: 'Limpar pesquisa',\n\t\temptyResults: 'A sua pesquisa não produziu resultados.',\n\t\tloading: 'Carregando...',\n\t\temptyOptions: 'Não existe nenhum valor disponível. Contacte o seu administrador para obter mais informações.',\n\t},\n\tes: {\n\t\tplaceholder: 'Seleccionar...',\n\t\tclear: 'Eliminar',\n\t\tclearSearch: 'Vaciar la búsqueda',\n\t\temptyResults: 'La búsqueda no ha dado ningún resultado.',\n\t\tloading: 'Cargando...',\n\t\temptyOptions: 'No hay ningún valor disponible. Ponte en contacto con tu administrador para obtener más información.',\n\t},\n\tde: {\n\t\tplaceholder: 'Auswählen ...',\n\t\tclear: 'Löschen',\n\t\tclearSearch: 'Suche leeren',\n\t\temptyResults: 'Ihre Suche hat keinen Treffer ergeben.',\n\t\tloading: 'Lädt...',\n\t\temptyOptions: 'Es ist kein Wert verfügbar. Wenden Sie sich für weitere Informationen an Ihre:n Administrator:in.',\n\t},\n\ten: {\n\t\tplaceholder: 'Select…',\n\t\tclear: 'Clear',\n\t\tclearSearch: 'Clear search',\n\t\temptyResults: 'We couldn’t find any results that match your search.',\n\t\tloading: 'Loading...',\n\t\temptyOptions: 'There are no values available. Contact your administrator for more information.',\n\t},\n\tpl: {\n\t\tplaceholder: 'Wybierz…',\n\t\tclear: 'Usuń',\n\t\tclearSearch: 'Wyczyść wyszukiwanie',\n\t\temptyResults: 'Wyszukiwanie nie przyniosło żadnych rezultatów.',\n\t\tloading: 'Trwa ładowanie…',\n\t\temptyOptions: 'Brak dostępnych wartości. Aby uzyskać więcej informacji, skontaktuj się z administratorem.',\n\t},\n};\n","import { InjectionToken } from '@angular/core';\nimport { LuTranslation } from '@lucca-front/ng/core';\nimport { Translations } from './translations';\n\nexport const LU_SIMPLE_SELECT_TRANSLATIONS = new InjectionToken('LuSimpleSelectTranslations', {\n\tfactory: () => luSimpleSelectTranslations,\n});\n\nexport interface ILuSimpleSelectLabel {\n\tplaceholder: string;\n\tclear: string;\n\tclearSearch: string;\n\temptyResults: string;\n\temptyOptions: string;\n\tloading: string;\n}\n\nexport const luSimpleSelectTranslations: LuTranslation<ILuSimpleSelectLabel> = Translations;\n","import { InjectionToken } from '@angular/core';\nimport type { LuSimpleSelectInputComponent } from './input';\n\nexport const SIMPLE_SELECT_INPUT = new InjectionToken<LuSimpleSelectInputComponent<unknown>>('SimpleSelectInput');\n","import { Pipe, PipeTransform } from '@angular/core';\nimport { LuOptionComparer } from '@lucca-front/ng/core-select';\n\n@Pipe({\n\tname: 'luIsOptionSelected',\n})\nexport class LuIsOptionSelectedPipe implements PipeTransform {\n\ttransform<T>(option: T, comparer: LuOptionComparer<T>, selectedOption: T): boolean {\n\t\treturn !!selectedOption && comparer(option, selectedOption);\n\t}\n}\n","import { NgTemplateOutlet } from '@angular/common';\nimport { AfterViewInit, ChangeDetectionStrategy, Component, computed, ElementRef, forwardRef, inject, signal } from '@angular/core';\nimport { toSignal } from '@angular/core/rxjs-interop';\nimport { FormsModule } from '@angular/forms';\nimport { isNotNil, PortalDirective } from '@lucca-front/ng/core';\nimport {\n\tCoreSelectKeyManager,\n\tCoreSelectPanelInstance,\n\tLuSelectPanelLayoutComponent,\n\tLuSelectPanelRef,\n\tSELECT_ID,\n\tSELECT_PANEL_INSTANCE,\n\tTreeDisplayPipe,\n\tɵCoreSelectPanelElement,\n\tɵgetGroupTemplateLocation,\n\tɵinjectPointerNavigation,\n\tɵLuOptionComponent,\n\tɵLuOptionGroupPipe,\n} from '@lucca-front/ng/core-select';\nimport { ListboxComponent, ListboxState, OptionComponent as ListboxOptionComponent } from '@lucca-front/ng/listbox';\nimport { TreeBranchComponent } from '@lucca-front/ng/tree-select';\nimport { EMPTY } from 'rxjs';\nimport { map } from 'rxjs/operators';\nimport { LuSimpleSelectInputComponent } from '../input/select-input.component';\nimport { SIMPLE_SELECT_INPUT } from '../select.model';\nimport { LuIsOptionSelectedPipe } from './option-selected.pipe';\n\n@Component({\n\tselector: 'lu-select-panel',\n\ttemplateUrl: './panel.component.html',\n\tstyleUrl: './panel.component.scss',\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\thost: {\n\t\tclass: 'selectPanel',\n\t\t'[class.colorPanel]': 'colorPanel()',\n\t\t'[class.is-pointerNavigation]': 'pointerNavigation()',\n\t},\n\timports: [\n\t\tLuSelectPanelLayoutComponent,\n\t\tFormsModule,\n\t\tNgTemplateOutlet,\n\t\tɵLuOptionGroupPipe,\n\t\tɵLuOptionComponent,\n\t\tLuIsOptionSelectedPipe,\n\t\tPortalDirective,\n\t\tɵCoreSelectPanelElement,\n\t\tListboxComponent,\n\t\tListboxOptionComponent,\n\t\tTreeBranchComponent,\n\t\tTreeDisplayPipe,\n\t],\n\tproviders: [\n\t\tCoreSelectKeyManager,\n\t\t{\n\t\t\tprovide: SELECT_PANEL_INSTANCE,\n\t\t\tuseExisting: forwardRef(() => LuSelectPanelComponent),\n\t\t},\n\t],\n})\nexport class LuSelectPanelComponent<T> implements AfterViewInit, CoreSelectPanelInstance<T> {\n\tpublic selectInput = inject<LuSimpleSelectInputComponent<T>>(SIMPLE_SELECT_INPUT);\n\tpublic panelRef = inject<LuSelectPanelRef<T, T>>(LuSelectPanelRef);\n\tpublic selectId = inject(SELECT_ID);\n\tpublic intl = this.selectInput.intl;\n\n\treadonly dataSourceOptions = this.selectInput.dataSourceOptions;\n\treadonly grouping = this.selectInput.groupingSignal;\n\ttreeGenerator = this.selectInput.treeGenerator;\n\treadonly loading = this.selectInput.loading;\n\tsearchable = this.selectInput.searchable;\n\treadonly optionComparer = this.selectInput.optionComparer;\n\treadonly optionKey = this.selectInput.optionKey;\n\tcolorPanel = this.selectInput.colorPicker;\n\n\t// `undefined` despite the select's own type when the control was written with no value,\n\t// and the key manager forwards it to the public option comparer, which only accepts options\n\tinitialValue: T | null | undefined = this.selectInput.value;\n\treadonly optionTpl = this.selectInput.optionTpl;\n\n\treadonly options = signal<ɵCoreSelectPanelElement<T>[]>([]);\n\treadonly pointerNavigation = ɵinjectPointerNavigation(inject<ElementRef<HTMLElement>>(ElementRef).nativeElement);\n\n\tpublic readonly keyManager = inject<CoreSelectKeyManager<T>>(CoreSelectKeyManager);\n\n\tpublic readonly selected = computed(() => this.selectInput.valueSignal());\n\n\t// Kept free of nil so it doesn't widen `TreeBranchComponent`'s generic, which would in turn\n\t// make its `toggleOne` output nullable and force a guard on `emitValue` — and so the public\n\t// option comparer, which only accepts options, never receives an empty value.\n\tprotected readonly selectedOptions = computed(() => {\n\t\tconst selected = this.selected();\n\t\treturn isNotNil(selected) ? [selected] : [];\n\t});\n\n\treadonly hasGrouping = computed(() => !!this.grouping());\n\tpublic readonly clue = toSignal(this.selectInput.clue$.pipe(map((clue) => clue ?? '')), { initialValue: '' });\n\tpublic shouldDisplayAddOption = this.selectInput.shouldDisplayAddOption;\n\tpublic groupTemplateLocation = ɵgetGroupTemplateLocation(this.hasGrouping, this.clue, this.dataSourceOptions, this.searchable);\n\n\t// Loading takes precedence over empty so the \"no result\" message never flashes during a fetch\n\treadonly listboxState = computed<ListboxState | null>(() => (this.loading() ? 'loading' : this.dataSourceOptions().length === 0 ? 'empty' : null));\n\n\treadonly listboxStatusMsg = computed(() => {\n\t\tif (this.loading()) {\n\t\t\treturn this.intl().loading;\n\t\t}\n\t\treturn this.clue().length ? this.intl().emptyResults : this.intl().emptyOptions;\n\t});\n\n\tonScroll(evt: Event): void {\n\t\tif (!(evt.target instanceof HTMLElement)) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (evt.target.scrollHeight - evt.target.scrollTop - evt.target.clientHeight < 1) {\n\t\t\tthis.panelRef.nextPage.emit();\n\t\t}\n\t}\n\n\tngAfterViewInit(): void {\n\t\tthis.keyManager.init({\n\t\t\tqueryList: this.options,\n\t\t\toptions: this.dataSourceOptions,\n\t\t\toptionComparer: this.optionComparer(),\n\t\t\tactiveOptionIdChanged$: this.panelRef.activeOptionIdChanged,\n\t\t\tclueChange$: this.selectInput.searchable ? this.selectInput.clueChange$ : EMPTY,\n\t\t});\n\n\t\tif (isNotNil(this.initialValue) && !this.selectInput.clue) {\n\t\t\tthis.keyManager.highlightOption(this.initialValue);\n\t\t}\n\t}\n}\n","<lu-select-panel-layout [loading]=\"loading()\" [trapFocus]=\"true\" (scrolled)=\"onScroll($event)\">\n\t<lu-listbox [tree]=\"!!treeGenerator\" [state]=\"listboxState()\" [statusMsg]=\"listboxStatusMsg()\">\n\t\t<!-- The header is projected inside the listbox because it can contain selectable elements\n\t\tthat are referenced by aria-activedescendant -->\n\t\t<ng-container ngProjectAs=\"[listbox-header]\">\n\t\t\t@if (selectInput.panelHeaderTpl(); as tpl) {\n\t\t\t\t<div>\n\t\t\t\t\t<ng-container *luPortal=\"tpl\" />\n\t\t\t\t</div>\n\t\t\t}\n\t\t</ng-container>\n\t\t@if (grouping() && groupTemplateLocation() === \"group-header\") {\n\t\t\t@for (group of dataSourceOptions() | luOptionGroup: grouping().selector; track group.key; let groupIndex = $index) {\n\t\t\t\t<lu-listbox-option group [groupId]=\"selectId + '-group-' + group.key\" [elementId]=\"selectId + '-group-' + group.key\">\n\t\t\t\t\t<ng-container *luPortal=\"grouping().content; context: { $implicit: group }\" />\n\t\t\t\t\t<div optgroup class=\"listboxOptionWrapper\">\n\t\t\t\t\t\t<ng-template\n\t\t\t\t\t\t\t[ngTemplateOutlet]=\"optionsList\"\n\t\t\t\t\t\t\t[ngTemplateOutletContext]=\"{ $implicit: group.options, groupIndex: groupIndex }\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t</div>\n\t\t\t\t</lu-listbox-option>\n\t\t\t}\n\t\t}\n\t\t@if (!grouping() || groupTemplateLocation() !== \"group-header\") {\n\t\t\t<ng-template [ngTemplateOutlet]=\"optionsList\" [ngTemplateOutletContext]=\"{ $implicit: dataSourceOptions() }\" />\n\t\t}\n\t\t<ng-template #optionsList let-options let-groupIndex=\"groupIndex\">\n\t\t\t@if (treeGenerator) {\n\t\t\t\t@for (branch of options | luTreeDisplay: treeGenerator; let index = $index; track optionKey()(branch.node)) {\n\t\t\t\t\t<lu-tree-branch\n\t\t\t\t\t\t[branch]=\"branch\"\n\t\t\t\t\t\t[optionTpl]=\"optionTpl()\"\n\t\t\t\t\t\t[optionComparer]=\"optionComparer()\"\n\t\t\t\t\t\t[selectedOptions]=\"selectedOptions()\"\n\t\t\t\t\t\t[optionIndex]=\"index\"\n\t\t\t\t\t\t(toggleOne)=\"panelRef.emitValue($event)\"\n\t\t\t\t\t\tsimpleMode\n\t\t\t\t\t/>\n\t\t\t\t}\n\t\t\t} @else {\n\t\t\t\t@for (option of options; track optionKey()(option); let index = $index) {\n\t\t\t\t\t<lu-select-option\n\t\t\t\t\t\tluCoreSelectPanelElement\n\t\t\t\t\t\t[option]=\"option\"\n\t\t\t\t\t\t[optionTpl]=\"optionTpl()\"\n\t\t\t\t\t\t[optionIndex]=\"index\"\n\t\t\t\t\t\t[groupTemplateLocation]=\"groupTemplateLocation()\"\n\t\t\t\t\t\t[groupIndex]=\"groupIndex\"\n\t\t\t\t\t\t[grouping]=\"grouping()\"\n\t\t\t\t\t\t[scrollIntoViewOptions]=\"{ block: 'nearest' }\"\n\t\t\t\t\t\t[isSelected]=\"option | luIsOptionSelected: optionComparer() : selected()\"\n\t\t\t\t\t\t[class.withAddOption]=\"shouldDisplayAddOption()\"\n\t\t\t\t\t\t(selected)=\"panelRef.emitValue(option)\"\n\t\t\t\t\t\t(click)=\"panelRef.emitValue(option)\"\n\t\t\t\t\t/>\n\t\t\t\t}\n\t\t\t}\n\t\t</ng-template>\n\t</lu-listbox>\n\t@if (shouldDisplayAddOption()) {\n\t\t<lu-listbox-option\n\t\t\tadd\n\t\t\tclass=\"palette-product\"\n\t\t\tluCoreSelectPanelElement\n\t\t\t#addOptionElement=\"luCoreSelectPanelElement\"\n\t\t\telementId=\"picker-content-add\"\n\t\t\t[hovered]=\"addOptionElement.isHighlighted()\"\n\t\t\t(click)=\"selectInput.emitAddOption()\"\n\t\t\t(selected)=\"selectInput.emitAddOption()\"\n\t\t>\n\t\t\t<ng-container *luPortal=\"selectInput.addOptionLabel\" />\n\t\t</lu-listbox-option>\n\t}\n\t@if (selectInput.panelFooterTpl(); as tpl) {\n\t\t<div>\n\t\t\t<ng-container *luPortal=\"tpl\" />\n\t\t</div>\n\t}\n</lu-select-panel-layout>\n","import { Overlay, OverlayConfig, OverlayPositionBuilder, OverlayRef, ScrollStrategyOptions } from '@angular/cdk/overlay';\nimport { ComponentPortal } from '@angular/cdk/portal';\nimport { ComponentRef, ElementRef, inject, Injectable, Injector, Type, ViewContainerRef } from '@angular/core';\nimport { getPushPanelViewportMargin } from '@lucca-front/ng/core';\nimport { addAttributesOnCdkContainer, LuSelectPanelRef, SELECT_ID, SELECT_LABEL_ID } from '@lucca-front/ng/core-select';\nimport { takeUntil } from 'rxjs';\nimport { LuSelectPanelComponent } from '../panel';\nimport { SIMPLE_SELECT_INPUT } from '../select.model';\nimport { LuSimpleSelectInputComponent } from './select-input.component';\n\nabstract class BaseSelectPanelRef<T> extends LuSelectPanelRef<T, T> {\n\tprotected readonly portalRef: ComponentPortal<LuSelectPanelComponent<T>>;\n\tinstance: LuSelectPanelComponent<T>;\n\n\tprotected panelRef: ComponentRef<LuSelectPanelComponent<T>>;\n\n\tprotected constructor(\n\t\tparentInjector: Injector,\n\t\tprotected selectInput: LuSimpleSelectInputComponent<T>,\n\t) {\n\t\tsuper();\n\n\t\tthis.portalRef = new ComponentPortal<LuSelectPanelComponent<T>>(LuSelectPanelComponent, undefined, this.createInjector(selectInput, parentInjector));\n\t}\n\n\tprotected createInjector(selectInput: LuSimpleSelectInputComponent<T>, parentInjector: Injector): Injector {\n\t\treturn Injector.create({\n\t\t\tproviders: [\n\t\t\t\t{ provide: LuSelectPanelRef, useValue: this },\n\t\t\t\t{ provide: SIMPLE_SELECT_INPUT, useValue: selectInput },\n\t\t\t],\n\t\t\tparent: parentInjector,\n\t\t});\n\t}\n\n\toverride handleKeyManagerEvent(event: KeyboardEvent) {\n\t\tthis.instance.keyManager.onKeydown(event);\n\t}\n\n\temitValue(value: T): void {\n\t\tthis.valueChanged.emit(value);\n\t\tthis.close();\n\t}\n\n\tselectCurrentlyHighlightedValue(): void {\n\t\tthis.instance.keyManager.activeItem?.selected.emit();\n\t}\n}\n\nclass SelectPanelRef<T> extends BaseSelectPanelRef<T> {\n\tconstructor(\n\t\tprivate overlayRef: OverlayRef,\n\t\tparentInjector: Injector,\n\t\tselectInput: LuSimpleSelectInputComponent<T>,\n\t) {\n\t\tsuper(parentInjector, selectInput);\n\t\tthis.panelRef = overlayRef.attach(this.portalRef);\n\t\tthis.instance = this.panelRef.instance;\n\n\t\toverlayRef\n\t\t\t.backdropClick()\n\t\t\t.pipe(takeUntil(this.closed))\n\t\t\t.subscribe(() => this.close());\n\t}\n\n\toverride close(): void {\n\t\tsuper.close();\n\t\tthis.panelRef.destroy();\n\t\tthis.overlayRef.detach();\n\t\tthis.selectInput.focusInput();\n\t}\n\n\tupdatePosition(): void {\n\t\tthis.overlayRef.updatePosition();\n\t}\n}\n\nclass SelectPanelDOMHostRef<T> extends BaseSelectPanelRef<T> {\n\tconstructor(host: ViewContainerRef, parentInjector: Injector, selectInput: LuSimpleSelectInputComponent<T>) {\n\t\tsuper(parentInjector, selectInput);\n\t\tconst panelComponent = this.portalRef.component as Type<LuSelectPanelComponent<T>>;\n\n\t\tthis.panelRef = host.createComponent(panelComponent, {\n\t\t\tinjector: this.portalRef.injector ?? undefined,\n\t\t});\n\t\tthis.instance = this.panelRef.instance;\n\t}\n\n\toverride updatePosition() {\n\t\t// do nothing, this is not a panel so repositioning is handled by the input.\n\t}\n\n\toverride close(): void {\n\t\tthis.closed.emit();\n\t}\n}\n\n@Injectable()\nexport class LuSimpleSelectPanelRefFactory {\n\tprotected overlay = inject(Overlay);\n\tprotected elementRef = inject<ElementRef<HTMLElement>>(ElementRef);\n\tprotected positionBuilder = inject(OverlayPositionBuilder);\n\tprotected scrollStrategies = inject(ScrollStrategyOptions);\n\tprotected parentInjector = inject(Injector);\n\tprivate selectLabelId = inject(SELECT_LABEL_ID);\n\tprivate selectId = inject(SELECT_ID);\n\n\tbuildPanelRef<T>(selectInput: LuSimpleSelectInputComponent<T>, overlayConfigOverride: OverlayConfig = {}): LuSelectPanelRef<T, T> {\n\t\tconst overlayConfig = this.buildOverlayConfig(overlayConfigOverride);\n\t\tconst overlayRef = this.overlay.create(overlayConfig);\n\n\t\taddAttributesOnCdkContainer(overlayRef, this.selectLabelId, this.selectId);\n\n\t\treturn new SelectPanelRef(overlayRef, this.parentInjector, selectInput);\n\t}\n\n\tbuildAndAttachPanelRef<T>(selectInput: LuSimpleSelectInputComponent<T>, host: ViewContainerRef): LuSelectPanelRef<T, T> {\n\t\treturn new SelectPanelDOMHostRef(host, this.parentInjector, selectInput);\n\t}\n\n\tprotected buildOverlayConfig(overlayConfigOverride: OverlayConfig = {}): OverlayConfig {\n\t\tconst overlayConfig: OverlayConfig = overlayConfigOverride || {};\n\t\toverlayConfig.positionStrategy = this.positionBuilder\n\t\t\t.flexibleConnectedTo(this.elementRef)\n\t\t\t// Options usually arrive after the panel has been opened: without this, every reposition is\n\t\t\t// capped to the bounding box computed while the panel was still empty, so a panel opened in a\n\t\t\t// tight space below the field can never grow nor flip above once its options are there.\n\t\t\t.withGrowAfterOpen(true)\n\t\t\t.withViewportMargin(getPushPanelViewportMargin(this.elementRef.nativeElement, 8))\n\t\t\t.withPositions([\n\t\t\t\t{\n\t\t\t\t\toriginX: 'start',\n\t\t\t\t\toriginY: 'bottom',\n\t\t\t\t\toverlayX: 'start',\n\t\t\t\t\toverlayY: 'top',\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\toriginX: 'end',\n\t\t\t\t\toriginY: 'bottom',\n\t\t\t\t\toverlayX: 'end',\n\t\t\t\t\toverlayY: 'top',\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\toriginX: 'start',\n\t\t\t\t\toriginY: 'top',\n\t\t\t\t\toverlayX: 'start',\n\t\t\t\t\toverlayY: 'bottom',\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\toriginX: 'end',\n\t\t\t\t\toriginY: 'top',\n\t\t\t\t\toverlayX: 'end',\n\t\t\t\t\toverlayY: 'bottom',\n\t\t\t\t},\n\t\t\t]);\n\t\toverlayConfig.scrollStrategy = this.scrollStrategies.reposition();\n\t\toverlayConfig.minWidth = this.elementRef.nativeElement.clientWidth;\n\t\toverlayConfig.maxHeight = '100vh';\n\t\toverlayConfig.maxWidth = '100vw';\n\n\t\treturn overlayConfig;\n\t}\n}\n","import { OverlayModule } from '@angular/cdk/overlay';\nimport { AsyncPipe, NgTemplateOutlet } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, forwardRef, inject, input, viewChild, ViewContainerRef, ViewEncapsulation } from '@angular/core';\nimport { ControlValueAccessor, FormsModule, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { ClearComponent } from '@lucca-front/ng/clear';\nimport { intlInputOptions, isNotNil, luBooleanAttribute, PortalDirective } from '@lucca-front/ng/core';\nimport { ALuSelectInputComponent, LU_CORE_SELECT_TRANSLATIONS, LuSelectPanelRef, provideLuSelectLabelsAndIds, ɵLuOptionOutletDirective } from '@lucca-front/ng/core-select';\nimport { FILTER_PILL_INPUT_COMPONENT, FilterPillDisplayerDirective } from '@lucca-front/ng/filter-pills';\nimport { InputDirective, PresentationDisplayDirective, ɵPresentationDisplayDefaultDirective } from '@lucca-front/ng/form-field';\nimport { IconComponent } from '@lucca-front/ng/icon';\nimport { LU_SIMPLE_SELECT_TRANSLATIONS } from '../select.translate';\nimport { LuSimpleSelectPanelRefFactory } from './panel-ref.factory';\n\nlet nextID = 0;\n\n@Component({\n\tselector: 'lu-simple-select',\n\ttemplateUrl: './select-input.component.html',\n\tstyleUrl: './select-input.component.scss',\n\thost: {\n\t\tclass: 'simpleSelect',\n\t\t'[class.mod-filterPill]': 'this.filterPillMode && !this.impersonation()',\n\t\t'[class.mod-impersonation]': 'this.impersonation()',\n\t},\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\timports: [\n\t\tAsyncPipe,\n\t\tɵLuOptionOutletDirective,\n\t\tOverlayModule,\n\t\tFormsModule,\n\t\tInputDirective,\n\t\tFilterPillDisplayerDirective,\n\t\tNgTemplateOutlet,\n\t\tIconComponent,\n\t\tClearComponent,\n\t\tPortalDirective,\n\t\tPresentationDisplayDirective,\n\t\tɵPresentationDisplayDefaultDirective,\n\t],\n\tproviders: [\n\t\t{\n\t\t\tprovide: NG_VALUE_ACCESSOR,\n\t\t\tuseExisting: forwardRef(() => LuSimpleSelectInputComponent),\n\t\t\tmulti: true,\n\t\t},\n\t\t{\n\t\t\tprovide: ALuSelectInputComponent,\n\t\t\tuseExisting: forwardRef(() => LuSimpleSelectInputComponent),\n\t\t},\n\t\tLuSimpleSelectPanelRefFactory,\n\t\tprovideLuSelectLabelsAndIds(),\n\t\t{\n\t\t\tprovide: FILTER_PILL_INPUT_COMPONENT,\n\t\t\tuseExisting: forwardRef(() => LuSimpleSelectInputComponent),\n\t\t},\n\t],\n\tencapsulation: ViewEncapsulation.None,\n})\nexport class LuSimpleSelectInputComponent<T> extends ALuSelectInputComponent<T, T> implements ControlValueAccessor {\n\treadonly intl = input(...intlInputOptions(LU_CORE_SELECT_TRANSLATIONS, LU_SIMPLE_SELECT_TRANSLATIONS));\n\n\tvalueID = `value-${++nextID}`;\n\n\treadonly autocomplete = input<AutoFill | null>('off');\n\n\treadonly impersonation = input(false, { transform: luBooleanAttribute });\n\n\treadonly filterPillPanelAnchorRef = viewChild('filterPillPanelAnchor', { read: ViewContainerRef });\n\n\tprotected panelRefFactory = inject(LuSimpleSelectPanelRefFactory);\n\n\tprotected buildPanelRef(): LuSelectPanelRef<T, T> {\n\t\treturn this.panelRefFactory.buildPanelRef(this, this.overlayConfig());\n\t}\n\n\tinputSpace(event: Event): void {\n\t\tif (this.filterPillMode || this.impersonation()) {\n\t\t\tif (this.clue?.length === 0) {\n\t\t\t\tevent.preventDefault();\n\t\t\t\tthis.panelRef?.selectCurrentlyHighlightedValue();\n\t\t\t}\n\t\t}\n\t}\n\n\tprotected hasValue(): boolean {\n\t\treturn isNotNil(this.value);\n\t}\n\n\toverride enableFilterPillMode() {\n\t\tconst host = this.filterPillPanelAnchorRef();\n\t\tif (host) {\n\t\t\tthis._panelRef = this.panelRefFactory.buildAndAttachPanelRef(this, host);\n\t\t}\n\t\tsuper.enableFilterPillMode();\n\t}\n}\n","<div class=\"simpleSelect-field\">\n\t<span class=\"simpleSelect-field-prefix\">\n\t\t@if (prefix(); as prefix) {\n\t\t\t<ng-container *luPortal=\"prefix\" />\n\t\t}\n\t</span>\n\t<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]=\"panelOpenSignal()\"\n\t\t[attr.aria-controls]=\"ariaControls\"\n\t\t[attr.placeholder]=\"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) ?? false\"\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\t[attr.aria-labelledby]=\"valueID\"\n\t/>\n\t<div class=\"simpleSelect-field-value\" [attr.id]=\"valueID\">\n\t\t<ng-container *ngTemplateOutlet=\"currentValueDisplayerTpl\" />\n\t</div>\n\t@if (!filterPillMode && !impersonation()) {\n\t\t@if (clearable() && hasValue() && (disabled$ | async) === false) {\n\t\t\t<lu-clear class=\"simpleSelect-field-clear\" (onClear)=\"clearValue($event); inputElement.focus()\">{{ intl().clear }}</lu-clear>\n\t\t}\n\t\t<lu-icon icon=\"arrowChevronBottom\" class=\"simpleSelect-field-icon\" />\n\t}\n\t<lu-icon icon=\"searchMagnifyingGlass\" class=\"simpleSelect-field-icon mod-search\" />\n</div>\n<ng-container #filterPillPanelAnchor />\n<ng-container *luFilterPillDisplayer>\n\t<ng-container *ngTemplateOutlet=\"currentValueDisplayerTpl\" />\n</ng-container>\n\n<ng-template #currentValueDisplayerTpl>\n\t<ng-container *luOptionOutlet=\"displayerTpl(); value: value\" />\n</ng-template>\n\n@if (!ignorePresentation()) {\n\t<ng-container *luPresentationDisplayDefault>\n\t\t@if (value) {\n\t\t\t<ng-container *ngTemplateOutlet=\"currentValueDisplayerTpl\" />\n\t\t} @else {\n\t\t\t<span aria-hidden=\"true\" data-content-before=\"–\"></span>\n\t\t}\n\t</ng-container>\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["ɵinjectPointerNavigation","ɵgetGroupTemplateLocation","ɵLuOptionComponent","ɵCoreSelectPanelElement","ListboxOptionComponent","ɵLuOptionGroupPipe","ɵLuOptionOutletDirective","ɵPresentationDisplayDefaultDirective"],"mappings":"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"}
1
+ {"version":3,"file":"lucca-front-ng-simple-select.mjs","sources":["../../../packages/ng/simple-select/translations.ts","../../../packages/ng/simple-select/select.translate.ts","../../../packages/ng/simple-select/select.model.ts","../../../packages/ng/simple-select/panel/option-selected.pipe.ts","../../../packages/ng/simple-select/panel/panel.component.ts","../../../packages/ng/simple-select/panel/panel.component.html","../../../packages/ng/simple-select/input/panel-ref.factory.ts","../../../packages/ng/simple-select/input/select-input.component.ts","../../../packages/ng/simple-select/input/select-input.component.html","../../../packages/ng/simple-select/lucca-front-ng-simple-select.ts"],"sourcesContent":["export const Translations = {\n\t'nl-BE': {\n\t\tplaceholder: 'Selecteren ...',\n\t\tclear: 'Wissen',\n\t\tclearSearch: 'Zoekopdracht leegmaken',\n\t\temptyResults: 'Uw zoekopdracht heeft geen resultaat opgeleverd.',\n\t\tloading: 'Bezig met laden...',\n\t\temptyOptions: 'Er zijn geen waarden beschikbaar. Neem contact op met uw beheerder voor meer informatie.',\n\t},\n\tnl: {\n\t\tplaceholder: 'Selecteren ...',\n\t\tclear: 'Wissen',\n\t\tclearSearch: 'Zoekopdracht leegmaken',\n\t\temptyResults: 'Uw zoekopdracht heeft geen resultaat opgeleverd.',\n\t\tloading: 'Bezig met laden...',\n\t\temptyOptions: 'Er zijn geen waarden beschikbaar. Neem contact op met uw beheerder voor meer informatie.',\n\t},\n\tit: {\n\t\tplaceholder: 'Selezionare…',\n\t\tclear: 'Cancellare',\n\t\tclearSearch: 'Cancellare la ricerca',\n\t\temptyResults: 'La ricerca non ha prodotto risultati.',\n\t\tloading: 'Caricamento in corso...',\n\t\temptyOptions: 'Nessun valore è disponibile. Contatta l’amministratore per maggiori informazioni.',\n\t},\n\tfr: {\n\t\tplaceholder: 'Sélectionner…',\n\t\tclear: 'Effacer',\n\t\tclearSearch: 'Vider la recherche',\n\t\temptyResults: \"Votre recherche n'a donné aucun résultat.\",\n\t\tloading: 'Chargement en cours...',\n\t\temptyOptions: \"Aucune valeur n'est disponible. Contactez votre administrateur pour plus d'informations.\",\n\t},\n\tpt: {\n\t\tplaceholder: 'Selecionar..',\n\t\tclear: 'Limpar',\n\t\tclearSearch: 'Limpar pesquisa',\n\t\temptyResults: 'A sua pesquisa não produziu resultados.',\n\t\tloading: 'Carregando...',\n\t\temptyOptions: 'Não existe nenhum valor disponível. Contacte o seu administrador para obter mais informações.',\n\t},\n\tes: {\n\t\tplaceholder: 'Seleccionar...',\n\t\tclear: 'Eliminar',\n\t\tclearSearch: 'Vaciar la búsqueda',\n\t\temptyResults: 'La búsqueda no ha dado ningún resultado.',\n\t\tloading: 'Cargando...',\n\t\temptyOptions: 'No hay ningún valor disponible. Ponte en contacto con tu administrador para obtener más información.',\n\t},\n\tde: {\n\t\tplaceholder: 'Auswählen ...',\n\t\tclear: 'Löschen',\n\t\tclearSearch: 'Suche leeren',\n\t\temptyResults: 'Ihre Suche hat keinen Treffer ergeben.',\n\t\tloading: 'Lädt...',\n\t\temptyOptions: 'Es ist kein Wert verfügbar. Wenden Sie sich für weitere Informationen an Ihre:n Administrator:in.',\n\t},\n\ten: {\n\t\tplaceholder: 'Select…',\n\t\tclear: 'Clear',\n\t\tclearSearch: 'Clear search',\n\t\temptyResults: 'We couldn’t find any results that match your search.',\n\t\tloading: 'Loading...',\n\t\temptyOptions: 'There are no values available. Contact your administrator for more information.',\n\t},\n\tpl: {\n\t\tplaceholder: 'Wybierz…',\n\t\tclear: 'Usuń',\n\t\tclearSearch: 'Wyczyść wyszukiwanie',\n\t\temptyResults: 'Wyszukiwanie nie przyniosło żadnych rezultatów.',\n\t\tloading: 'Trwa ładowanie…',\n\t\temptyOptions: 'Brak dostępnych wartości. Aby uzyskać więcej informacji, skontaktuj się z administratorem.',\n\t},\n};\n","import { InjectionToken } from '@angular/core';\nimport { LuTranslation } from '@lucca-front/ng/core';\nimport { Translations } from './translations';\n\nexport const LU_SIMPLE_SELECT_TRANSLATIONS = new InjectionToken('LuSimpleSelectTranslations', {\n\tfactory: () => luSimpleSelectTranslations,\n});\n\nexport interface ILuSimpleSelectLabel {\n\tplaceholder: string;\n\tclear: string;\n\tclearSearch: string;\n\temptyResults: string;\n\temptyOptions: string;\n\tloading: string;\n}\n\nexport const luSimpleSelectTranslations: LuTranslation<ILuSimpleSelectLabel> = Translations;\n","import { InjectionToken } from '@angular/core';\nimport type { LuSimpleSelectInputComponent } from './input';\n\nexport const SIMPLE_SELECT_INPUT = new InjectionToken<LuSimpleSelectInputComponent<unknown>>('SimpleSelectInput');\n","import { Pipe, PipeTransform } from '@angular/core';\nimport { LuOptionComparer } from '@lucca-front/ng/core-select';\n\n@Pipe({\n\tname: 'luIsOptionSelected',\n})\nexport class LuIsOptionSelectedPipe implements PipeTransform {\n\ttransform<T>(option: T, comparer: LuOptionComparer<T>, selectedOption: T): boolean {\n\t\treturn !!selectedOption && comparer(option, selectedOption);\n\t}\n}\n","import { NgTemplateOutlet } from '@angular/common';\nimport { AfterViewInit, ChangeDetectionStrategy, Component, computed, ElementRef, forwardRef, inject, signal } from '@angular/core';\nimport { toSignal } from '@angular/core/rxjs-interop';\nimport { FormsModule } from '@angular/forms';\nimport { isNotNil, PortalDirective } from '@lucca-front/ng/core';\nimport {\n\tCoreSelectKeyManager,\n\tCoreSelectPanelInstance,\n\tLuSelectPanelLayoutComponent,\n\tLuSelectPanelRef,\n\tSELECT_ID,\n\tSELECT_PANEL_INSTANCE,\n\tTreeDisplayPipe,\n\tɵCoreSelectPanelElement,\n\tɵgetGroupTemplateLocation,\n\tɵinjectPointerNavigation,\n\tɵLuOptionComponent,\n\tɵLuOptionGroupPipe,\n} from '@lucca-front/ng/core-select';\nimport { ListboxComponent, ListboxState, OptionComponent as ListboxOptionComponent } from '@lucca-front/ng/listbox';\nimport { TreeBranchComponent } from '@lucca-front/ng/tree-select';\nimport { EMPTY } from 'rxjs';\nimport { map } from 'rxjs/operators';\nimport { LuSimpleSelectInputComponent } from '../input/select-input.component';\nimport { SIMPLE_SELECT_INPUT } from '../select.model';\nimport { LuIsOptionSelectedPipe } from './option-selected.pipe';\n\n@Component({\n\tselector: 'lu-select-panel',\n\ttemplateUrl: './panel.component.html',\n\tstyleUrl: './panel.component.scss',\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\thost: {\n\t\tclass: 'selectPanel',\n\t\t'[class.colorPanel]': 'colorPanel()',\n\t\t'[class.is-pointerNavigation]': 'pointerNavigation()',\n\t},\n\timports: [\n\t\tLuSelectPanelLayoutComponent,\n\t\tFormsModule,\n\t\tNgTemplateOutlet,\n\t\tɵLuOptionGroupPipe,\n\t\tɵLuOptionComponent,\n\t\tLuIsOptionSelectedPipe,\n\t\tPortalDirective,\n\t\tɵCoreSelectPanelElement,\n\t\tListboxComponent,\n\t\tListboxOptionComponent,\n\t\tTreeBranchComponent,\n\t\tTreeDisplayPipe,\n\t],\n\tproviders: [\n\t\tCoreSelectKeyManager,\n\t\t{\n\t\t\tprovide: SELECT_PANEL_INSTANCE,\n\t\t\tuseExisting: forwardRef(() => LuSelectPanelComponent),\n\t\t},\n\t],\n})\nexport class LuSelectPanelComponent<T> implements AfterViewInit, CoreSelectPanelInstance<T> {\n\tpublic selectInput = inject<LuSimpleSelectInputComponent<T>>(SIMPLE_SELECT_INPUT);\n\tpublic panelRef = inject<LuSelectPanelRef<T, T>>(LuSelectPanelRef);\n\tpublic selectId = inject(SELECT_ID);\n\tpublic intl = this.selectInput.intl;\n\n\treadonly dataSourceOptions = this.selectInput.dataSourceOptions;\n\treadonly grouping = this.selectInput.groupingSignal;\n\ttreeGenerator = this.selectInput.treeGenerator;\n\treadonly loading = this.selectInput.loading;\n\tsearchable = this.selectInput.searchable;\n\treadonly optionComparer = this.selectInput.optionComparer;\n\treadonly optionKey = this.selectInput.optionKey;\n\tcolorPanel = this.selectInput.colorPicker;\n\n\t// `undefined` despite the select's own type when the control was written with no value,\n\t// and the key manager forwards it to the public option comparer, which only accepts options\n\tinitialValue: T | null | undefined = this.selectInput.value;\n\treadonly optionTpl = this.selectInput.optionTpl;\n\n\treadonly options = signal<ɵCoreSelectPanelElement<T>[]>([]);\n\treadonly pointerNavigation = ɵinjectPointerNavigation(inject<ElementRef<HTMLElement>>(ElementRef).nativeElement);\n\n\tpublic readonly keyManager = inject<CoreSelectKeyManager<T>>(CoreSelectKeyManager);\n\n\tpublic readonly selected = computed(() => this.selectInput.valueSignal());\n\n\t// Kept free of nil so it doesn't widen `TreeBranchComponent`'s generic, which would in turn\n\t// make its `toggleOne` output nullable and force a guard on `emitValue` — and so the public\n\t// option comparer, which only accepts options, never receives an empty value.\n\tprotected readonly selectedOptions = computed(() => {\n\t\tconst selected = this.selected();\n\t\treturn isNotNil(selected) ? [selected] : [];\n\t});\n\n\treadonly hasGrouping = computed(() => !!this.grouping());\n\tpublic readonly clue = toSignal(this.selectInput.clue$.pipe(map((clue) => clue ?? '')), { initialValue: '' });\n\tpublic shouldDisplayAddOption = this.selectInput.shouldDisplayAddOption;\n\tpublic groupTemplateLocation = ɵgetGroupTemplateLocation(this.hasGrouping, this.clue, this.dataSourceOptions, this.searchable);\n\n\t// Loading takes precedence over empty so the \"no result\" message never flashes during a fetch\n\treadonly listboxState = computed<ListboxState | null>(() => (this.loading() ? 'loading' : this.dataSourceOptions().length === 0 ? 'empty' : null));\n\n\treadonly listboxStatusMsg = computed(() => {\n\t\tif (this.loading()) {\n\t\t\treturn this.intl().loading;\n\t\t}\n\t\treturn this.clue().length ? this.intl().emptyResults : this.intl().emptyOptions;\n\t});\n\n\tonScroll(evt: Event): void {\n\t\tif (!(evt.target instanceof HTMLElement)) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (evt.target.scrollHeight - evt.target.scrollTop - evt.target.clientHeight < 1) {\n\t\t\tthis.panelRef.nextPage.emit();\n\t\t}\n\t}\n\n\tngAfterViewInit(): void {\n\t\tthis.keyManager.init({\n\t\t\tqueryList: this.options,\n\t\t\toptions: this.dataSourceOptions,\n\t\t\toptionComparer: this.optionComparer(),\n\t\t\tactiveOptionIdChanged$: this.panelRef.activeOptionIdChanged,\n\t\t\tclueChange$: this.selectInput.searchable ? this.selectInput.clueChange$ : EMPTY,\n\t\t});\n\n\t\tif (isNotNil(this.initialValue) && !this.selectInput.clue) {\n\t\t\tthis.keyManager.highlightOption(this.initialValue);\n\t\t}\n\t}\n}\n","<lu-select-panel-layout [loading]=\"loading()\" [trapFocus]=\"true\" (scrolled)=\"onScroll($event)\">\n\t<lu-listbox [tree]=\"!!treeGenerator\" [state]=\"listboxState()\" [statusMsg]=\"listboxStatusMsg()\">\n\t\t<!-- The header is projected inside the listbox because it can contain selectable elements\n\t\tthat are referenced by aria-activedescendant -->\n\t\t<ng-container ngProjectAs=\"[listbox-header]\">\n\t\t\t@if (selectInput.panelHeaderTpl(); as tpl) {\n\t\t\t\t<div>\n\t\t\t\t\t<ng-container *luPortal=\"tpl\" />\n\t\t\t\t</div>\n\t\t\t}\n\t\t</ng-container>\n\t\t@if (grouping() && groupTemplateLocation() === \"group-header\") {\n\t\t\t@for (group of dataSourceOptions() | luOptionGroup: grouping().selector; track group.key; let groupIndex = $index) {\n\t\t\t\t<lu-listbox-option group [groupId]=\"selectId + '-group-' + group.key\" [elementId]=\"selectId + '-group-' + group.key\">\n\t\t\t\t\t<ng-container *luPortal=\"grouping().content; context: { $implicit: group }\" />\n\t\t\t\t\t<div optgroup class=\"listboxOptionWrapper\">\n\t\t\t\t\t\t<ng-template\n\t\t\t\t\t\t\t[ngTemplateOutlet]=\"optionsList\"\n\t\t\t\t\t\t\t[ngTemplateOutletContext]=\"{ $implicit: group.options, groupIndex: groupIndex }\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t</div>\n\t\t\t\t</lu-listbox-option>\n\t\t\t}\n\t\t}\n\t\t@if (!grouping() || groupTemplateLocation() !== \"group-header\") {\n\t\t\t<ng-template [ngTemplateOutlet]=\"optionsList\" [ngTemplateOutletContext]=\"{ $implicit: dataSourceOptions() }\" />\n\t\t}\n\t\t<ng-template #optionsList let-options let-groupIndex=\"groupIndex\">\n\t\t\t@if (treeGenerator) {\n\t\t\t\t@for (branch of options | luTreeDisplay: treeGenerator; let index = $index; track optionKey()(branch.node)) {\n\t\t\t\t\t<lu-tree-branch\n\t\t\t\t\t\t[branch]=\"branch\"\n\t\t\t\t\t\t[optionTpl]=\"optionTpl()\"\n\t\t\t\t\t\t[optionComparer]=\"optionComparer()\"\n\t\t\t\t\t\t[selectedOptions]=\"selectedOptions()\"\n\t\t\t\t\t\t[optionIndex]=\"index\"\n\t\t\t\t\t\t(toggleOne)=\"panelRef.emitValue($event)\"\n\t\t\t\t\t\tsimpleMode\n\t\t\t\t\t/>\n\t\t\t\t}\n\t\t\t} @else {\n\t\t\t\t@for (option of options; track optionKey()(option); let index = $index) {\n\t\t\t\t\t<lu-select-option\n\t\t\t\t\t\tluCoreSelectPanelElement\n\t\t\t\t\t\t[option]=\"option\"\n\t\t\t\t\t\t[optionTpl]=\"optionTpl()\"\n\t\t\t\t\t\t[optionIndex]=\"index\"\n\t\t\t\t\t\t[groupTemplateLocation]=\"groupTemplateLocation()\"\n\t\t\t\t\t\t[groupIndex]=\"groupIndex\"\n\t\t\t\t\t\t[grouping]=\"grouping()\"\n\t\t\t\t\t\t[scrollIntoViewOptions]=\"{ block: 'nearest' }\"\n\t\t\t\t\t\t[isSelected]=\"option | luIsOptionSelected: optionComparer() : selected()\"\n\t\t\t\t\t\t[class.withAddOption]=\"shouldDisplayAddOption()\"\n\t\t\t\t\t\t(selected)=\"panelRef.emitValue(option)\"\n\t\t\t\t\t\t(click)=\"panelRef.emitValue(option)\"\n\t\t\t\t\t/>\n\t\t\t\t}\n\t\t\t}\n\t\t</ng-template>\n\t</lu-listbox>\n\t@if (shouldDisplayAddOption()) {\n\t\t<lu-listbox-option\n\t\t\tadd\n\t\t\tclass=\"palette-product\"\n\t\t\tluCoreSelectPanelElement\n\t\t\t#addOptionElement=\"luCoreSelectPanelElement\"\n\t\t\telementId=\"picker-content-add\"\n\t\t\t[hovered]=\"addOptionElement.isHighlighted()\"\n\t\t\t(click)=\"selectInput.emitAddOption()\"\n\t\t\t(selected)=\"selectInput.emitAddOption()\"\n\t\t>\n\t\t\t<ng-container *luPortal=\"selectInput.addOptionLabel\" />\n\t\t</lu-listbox-option>\n\t}\n\t@if (selectInput.panelFooterTpl(); as tpl) {\n\t\t<div>\n\t\t\t<ng-container *luPortal=\"tpl\" />\n\t\t</div>\n\t}\n</lu-select-panel-layout>\n","import { Overlay, OverlayConfig, OverlayPositionBuilder, OverlayRef, ScrollStrategyOptions } from '@angular/cdk/overlay';\nimport { ComponentPortal } from '@angular/cdk/portal';\nimport { ComponentRef, ElementRef, inject, Injectable, Injector, Type, ViewContainerRef } from '@angular/core';\nimport { getPushPanelViewportMargin } from '@lucca-front/ng/core';\nimport { addAttributesOnCdkContainer, LuSelectPanelRef, SELECT_ID, SELECT_LABEL_ID } from '@lucca-front/ng/core-select';\nimport { takeUntil } from 'rxjs';\nimport { LuSelectPanelComponent } from '../panel';\nimport { SIMPLE_SELECT_INPUT } from '../select.model';\nimport { LuSimpleSelectInputComponent } from './select-input.component';\n\nabstract class BaseSelectPanelRef<T> extends LuSelectPanelRef<T, T> {\n\tprotected readonly portalRef: ComponentPortal<LuSelectPanelComponent<T>>;\n\tinstance: LuSelectPanelComponent<T>;\n\n\tprotected panelRef: ComponentRef<LuSelectPanelComponent<T>>;\n\n\tprotected constructor(\n\t\tparentInjector: Injector,\n\t\tprotected selectInput: LuSimpleSelectInputComponent<T>,\n\t) {\n\t\tsuper();\n\n\t\tthis.portalRef = new ComponentPortal<LuSelectPanelComponent<T>>(LuSelectPanelComponent, undefined, this.createInjector(selectInput, parentInjector));\n\t}\n\n\tprotected createInjector(selectInput: LuSimpleSelectInputComponent<T>, parentInjector: Injector): Injector {\n\t\treturn Injector.create({\n\t\t\tproviders: [\n\t\t\t\t{ provide: LuSelectPanelRef, useValue: this },\n\t\t\t\t{ provide: SIMPLE_SELECT_INPUT, useValue: selectInput },\n\t\t\t],\n\t\t\tparent: parentInjector,\n\t\t});\n\t}\n\n\toverride handleKeyManagerEvent(event: KeyboardEvent) {\n\t\tthis.instance.keyManager.onKeydown(event);\n\t}\n\n\temitValue(value: T): void {\n\t\tthis.valueChanged.emit(value);\n\t\tthis.close();\n\t}\n\n\tselectCurrentlyHighlightedValue(): void {\n\t\tthis.instance.keyManager.activeItem?.selected.emit();\n\t}\n}\n\nclass SelectPanelRef<T> extends BaseSelectPanelRef<T> {\n\tconstructor(\n\t\tprivate overlayRef: OverlayRef,\n\t\tparentInjector: Injector,\n\t\tselectInput: LuSimpleSelectInputComponent<T>,\n\t) {\n\t\tsuper(parentInjector, selectInput);\n\t\tthis.panelRef = overlayRef.attach(this.portalRef);\n\t\tthis.instance = this.panelRef.instance;\n\n\t\toverlayRef\n\t\t\t.backdropClick()\n\t\t\t.pipe(takeUntil(this.closed))\n\t\t\t.subscribe(() => this.close());\n\t}\n\n\toverride close(): void {\n\t\tsuper.close();\n\t\tthis.panelRef.destroy();\n\t\tthis.overlayRef.detach();\n\t\tthis.selectInput.focusInput();\n\t}\n\n\tupdatePosition(): void {\n\t\tthis.overlayRef.updatePosition();\n\t}\n}\n\nclass SelectPanelDOMHostRef<T> extends BaseSelectPanelRef<T> {\n\tconstructor(host: ViewContainerRef, parentInjector: Injector, selectInput: LuSimpleSelectInputComponent<T>) {\n\t\tsuper(parentInjector, selectInput);\n\t\tconst panelComponent = this.portalRef.component as Type<LuSelectPanelComponent<T>>;\n\n\t\tthis.panelRef = host.createComponent(panelComponent, {\n\t\t\tinjector: this.portalRef.injector ?? undefined,\n\t\t});\n\t\tthis.instance = this.panelRef.instance;\n\t}\n\n\toverride updatePosition() {\n\t\t// do nothing, this is not a panel so repositioning is handled by the input.\n\t}\n\n\toverride close(): void {\n\t\tthis.closed.emit();\n\t}\n}\n\n@Injectable()\nexport class LuSimpleSelectPanelRefFactory {\n\tprotected overlay = inject(Overlay);\n\tprotected elementRef = inject<ElementRef<HTMLElement>>(ElementRef);\n\tprotected positionBuilder = inject(OverlayPositionBuilder);\n\tprotected scrollStrategies = inject(ScrollStrategyOptions);\n\tprotected parentInjector = inject(Injector);\n\tprivate selectLabelId = inject(SELECT_LABEL_ID);\n\tprivate selectId = inject(SELECT_ID);\n\n\tbuildPanelRef<T>(selectInput: LuSimpleSelectInputComponent<T>, overlayConfigOverride: OverlayConfig = {}): LuSelectPanelRef<T, T> {\n\t\tconst overlayConfig = this.buildOverlayConfig(overlayConfigOverride);\n\t\tconst overlayRef = this.overlay.create(overlayConfig);\n\n\t\taddAttributesOnCdkContainer(overlayRef, this.selectLabelId, this.selectId);\n\n\t\treturn new SelectPanelRef(overlayRef, this.parentInjector, selectInput);\n\t}\n\n\tbuildAndAttachPanelRef<T>(selectInput: LuSimpleSelectInputComponent<T>, host: ViewContainerRef): LuSelectPanelRef<T, T> {\n\t\treturn new SelectPanelDOMHostRef(host, this.parentInjector, selectInput);\n\t}\n\n\tprotected buildOverlayConfig(overlayConfigOverride: OverlayConfig = {}): OverlayConfig {\n\t\tconst overlayConfig: OverlayConfig = overlayConfigOverride || {};\n\t\toverlayConfig.positionStrategy = this.positionBuilder\n\t\t\t.flexibleConnectedTo(this.elementRef)\n\t\t\t// Options usually arrive after the panel has been opened: without this, every reposition is\n\t\t\t// capped to the bounding box computed while the panel was still empty, so a panel opened in a\n\t\t\t// tight space below the field can never grow nor flip above once its options are there.\n\t\t\t.withGrowAfterOpen(true)\n\t\t\t.withViewportMargin(getPushPanelViewportMargin(this.elementRef.nativeElement, 8))\n\t\t\t.withPositions([\n\t\t\t\t{\n\t\t\t\t\toriginX: 'start',\n\t\t\t\t\toriginY: 'bottom',\n\t\t\t\t\toverlayX: 'start',\n\t\t\t\t\toverlayY: 'top',\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\toriginX: 'end',\n\t\t\t\t\toriginY: 'bottom',\n\t\t\t\t\toverlayX: 'end',\n\t\t\t\t\toverlayY: 'top',\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\toriginX: 'start',\n\t\t\t\t\toriginY: 'top',\n\t\t\t\t\toverlayX: 'start',\n\t\t\t\t\toverlayY: 'bottom',\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\toriginX: 'end',\n\t\t\t\t\toriginY: 'top',\n\t\t\t\t\toverlayX: 'end',\n\t\t\t\t\toverlayY: 'bottom',\n\t\t\t\t},\n\t\t\t]);\n\t\toverlayConfig.scrollStrategy = this.scrollStrategies.reposition();\n\t\toverlayConfig.minWidth = this.elementRef.nativeElement.clientWidth;\n\t\toverlayConfig.maxHeight = '100vh';\n\t\toverlayConfig.maxWidth = '100vw';\n\n\t\treturn overlayConfig;\n\t}\n}\n","import { OverlayModule } from '@angular/cdk/overlay';\nimport { AsyncPipe, NgTemplateOutlet } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, forwardRef, inject, input, viewChild, ViewContainerRef, ViewEncapsulation } from '@angular/core';\nimport { ControlValueAccessor, FormsModule, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { ClearComponent } from '@lucca-front/ng/clear';\nimport { intlInputOptions, isNotNil, luBooleanAttribute, PortalDirective } from '@lucca-front/ng/core';\nimport { ALuSelectInputComponent, LU_CORE_SELECT_TRANSLATIONS, LuSelectPanelRef, provideLuSelectLabelsAndIds, ɵLuOptionOutletDirective } from '@lucca-front/ng/core-select';\nimport { FILTER_PILL_INPUT_COMPONENT, FilterPillDisplayerDirective } from '@lucca-front/ng/filter-pills';\nimport { InputDirective, PresentationDisplayDirective, ɵPresentationDisplayDefaultDirective } from '@lucca-front/ng/form-field';\nimport { IconComponent } from '@lucca-front/ng/icon';\nimport { LU_SIMPLE_SELECT_TRANSLATIONS } from '../select.translate';\nimport { LuSimpleSelectPanelRefFactory } from './panel-ref.factory';\n\nlet nextID = 0;\n\n@Component({\n\tselector: 'lu-simple-select',\n\ttemplateUrl: './select-input.component.html',\n\tstyleUrl: './select-input.component.scss',\n\thost: {\n\t\tclass: 'simpleSelect',\n\t\t'[class.mod-filterPill]': 'this.filterPillMode && !this.impersonation()',\n\t\t'[class.mod-impersonation]': 'this.impersonation()',\n\t},\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\timports: [\n\t\tAsyncPipe,\n\t\tɵLuOptionOutletDirective,\n\t\tOverlayModule,\n\t\tFormsModule,\n\t\tInputDirective,\n\t\tFilterPillDisplayerDirective,\n\t\tNgTemplateOutlet,\n\t\tIconComponent,\n\t\tClearComponent,\n\t\tPortalDirective,\n\t\tPresentationDisplayDirective,\n\t\tɵPresentationDisplayDefaultDirective,\n\t],\n\tproviders: [\n\t\t{\n\t\t\tprovide: NG_VALUE_ACCESSOR,\n\t\t\tuseExisting: forwardRef(() => LuSimpleSelectInputComponent),\n\t\t\tmulti: true,\n\t\t},\n\t\t{\n\t\t\tprovide: ALuSelectInputComponent,\n\t\t\tuseExisting: forwardRef(() => LuSimpleSelectInputComponent),\n\t\t},\n\t\tLuSimpleSelectPanelRefFactory,\n\t\tprovideLuSelectLabelsAndIds(),\n\t\t{\n\t\t\tprovide: FILTER_PILL_INPUT_COMPONENT,\n\t\t\tuseExisting: forwardRef(() => LuSimpleSelectInputComponent),\n\t\t},\n\t],\n\tencapsulation: ViewEncapsulation.None,\n})\nexport class LuSimpleSelectInputComponent<T> extends ALuSelectInputComponent<T, T> implements ControlValueAccessor {\n\treadonly intl = input(...intlInputOptions(LU_CORE_SELECT_TRANSLATIONS, LU_SIMPLE_SELECT_TRANSLATIONS));\n\n\tvalueID = `value-${++nextID}`;\n\n\treadonly autocomplete = input<AutoFill | null>('off');\n\n\treadonly impersonation = input(false, { transform: luBooleanAttribute });\n\n\treadonly filterPillPanelAnchorRef = viewChild('filterPillPanelAnchor', { read: ViewContainerRef });\n\n\tprotected panelRefFactory = inject(LuSimpleSelectPanelRefFactory);\n\n\tprotected buildPanelRef(): LuSelectPanelRef<T, T> {\n\t\treturn this.panelRefFactory.buildPanelRef(this, this.overlayConfig());\n\t}\n\n\tinputSpace(event: Event): void {\n\t\tif (this.filterPillMode || this.impersonation()) {\n\t\t\tif (this.clue?.length === 0) {\n\t\t\t\tevent.preventDefault();\n\t\t\t\tthis.panelRef?.selectCurrentlyHighlightedValue();\n\t\t\t}\n\t\t}\n\t}\n\n\tprotected hasValue(): boolean {\n\t\treturn isNotNil(this.value);\n\t}\n\n\toverride enableFilterPillMode() {\n\t\tconst host = this.filterPillPanelAnchorRef();\n\t\tif (host) {\n\t\t\tthis._panelRef = this.panelRefFactory.buildAndAttachPanelRef(this, host);\n\t\t}\n\t\tsuper.enableFilterPillMode();\n\t}\n}\n","<div class=\"simpleSelect-field\">\n\t<span class=\"simpleSelect-field-prefix\">\n\t\t@if (prefix(); as prefix) {\n\t\t\t<ng-container *luPortal=\"prefix\" />\n\t\t}\n\t</span>\n\t<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]=\"panelOpenSignal()\"\n\t\t[attr.aria-controls]=\"ariaControls\"\n\t\t[attr.placeholder]=\"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) ?? false\"\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\t[luInputLabelledBy]=\"valueID\"\n\t/>\n\t<div class=\"simpleSelect-field-value\" [attr.id]=\"valueID\">\n\t\t<ng-container *ngTemplateOutlet=\"currentValueDisplayerTpl\" />\n\t</div>\n\t@if (!filterPillMode && !impersonation()) {\n\t\t@if (clearable() && hasValue() && (disabled$ | async) === false) {\n\t\t\t<lu-clear class=\"simpleSelect-field-clear\" (onClear)=\"clearValue($event); inputElement.focus()\">{{ intl().clear }}</lu-clear>\n\t\t}\n\t\t<lu-icon icon=\"arrowChevronBottom\" class=\"simpleSelect-field-icon\" />\n\t}\n\t<lu-icon icon=\"searchMagnifyingGlass\" class=\"simpleSelect-field-icon mod-search\" />\n</div>\n<ng-container #filterPillPanelAnchor />\n<ng-container *luFilterPillDisplayer>\n\t<ng-container *ngTemplateOutlet=\"currentValueDisplayerTpl\" />\n</ng-container>\n\n<ng-template #currentValueDisplayerTpl>\n\t<ng-container *luOptionOutlet=\"displayerTpl(); value: value\" />\n</ng-template>\n\n@if (!ignorePresentation()) {\n\t<ng-container *luPresentationDisplayDefault>\n\t\t@if (value) {\n\t\t\t<ng-container *ngTemplateOutlet=\"currentValueDisplayerTpl\" />\n\t\t} @else {\n\t\t\t<span aria-hidden=\"true\" data-content-before=\"–\"></span>\n\t\t}\n\t</ng-container>\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["ɵinjectPointerNavigation","ɵgetGroupTemplateLocation","ɵLuOptionComponent","ɵCoreSelectPanelElement","ListboxOptionComponent","ɵLuOptionGroupPipe","ɵLuOptionOutletDirective","ɵPresentationDisplayDefaultDirective"],"mappings":"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"}
@@ -24,7 +24,7 @@ class SoftwareIconComponent {
24
24
  ...(ngDevMode ? [{ debugName: "iconUrl" }] : /* istanbul ignore next */ []));
25
25
  }
26
26
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.4", ngImport: i0, type: SoftwareIconComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
27
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "22.1.4", type: SoftwareIconComponent, isStandalone: true, selector: "lu-software-icon", inputs: { icon: { classPropertyName: "icon", publicName: "icon", isSignal: true, isRequired: true, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, withTooltip: { classPropertyName: "withTooltip", publicName: "withTooltip", isSignal: true, isRequired: false, transformFunction: null }, iconAlt: { classPropertyName: "iconAlt", publicName: "iconAlt", isSignal: true, isRequired: false, transformFunction: null }, size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: "<span\n\tclass=\"softwareIcon\"\n\t[class.is-disabled]=\"disabled()\"\n\t[class.mod-XXS]=\"size() === 'XXS'\"\n\t[class.mod-XS]=\"size() === 'XS'\"\n\t[class.mod-S]=\"size() === 'S'\"\n\t[class.mod-L]=\"size() === 'L'\"\n\taria-hidden=\"true\"\n\t[innerHtml]=\"iconUrl() | luSafeExternalSvg\"\n\t[luTooltip]=\"iconAlt()\"\n\tluTooltipOnlyForDisplay\n\t[luTooltipDisabled]=\"!this.withTooltip() && !this.wrapper\"\n></span>\n<span class=\"pr-u-mask\" translate=\"no\">{{ iconAlt() }}</span>\n", styles: ["@layer components{.softwareIcon{--components-softwareIcon-size: var(--pr-t-spacings-500);--components-softwareIcon-illustration-bubble-stroke: transparent;--components-softwareIcon-illustration-bubble-strokeWidth: 0px;--components-softwareIcon-display: inline-block;--components-softwareIcon-action-boxShadowSpread: 2px;--components-softwareIcon-zIndex: auto;--components-softwareIcon-transformScale: 1;display:var(--components-softwareIcon-display);inline-size:var(--components-softwareIcon-size);block-size:var(--components-softwareIcon-size);z-index:var(--components-softwareIcon-zIndex);position:relative;transform:scale(var(--components-softwareIcon-transformScale));transition-property:transform;transition-duration:var(--commons-animations-durations-fast)}.softwareIcon:focus-visible{outline:none}.softwareIcon-illustration{overflow:visible}.softwareIcon-illustration-bubble{stroke:var(--components-softwareIcon-illustration-bubble-stroke);stroke-width:var(--components-softwareIcon-illustration-bubble-strokeWidth)}.softwareIconWrapper{display:flex;flex-wrap:wrap;align-items:center;gap:var(--pr-t-spacings-25) 0;padding-inline-start:calc(var(--components-softwareIconWrapper-list-item-marginInlineStart) * -1)}.softwareIconWrapper-list{margin:0;padding:0;list-style-type:none;display:contents}.softwareIconWrapper-list-item{margin-inline-start:var(--components-softwareIconWrapper-list-item-marginInlineStart)}.softwareIconWrapper-action{padding:0;border:0;inline-size:100%;background-color:transparent;color:inherit;text-align:start;display:block;font:inherit;cursor:pointer;border-radius:68% 35% 45% 55%/40% 40% 64% 60%;background-color:var(--palettes-neutral-200);inline-size:var(--components-softwareIcon-size);block-size:var(--components-softwareIcon-size);transform:scale(var(--components-softwareIcon-transformScale));transition-property:transform;transition-duration:var(--commons-animations-durations-fast);box-shadow:0 0 0 var(--components-softwareIcon-action-boxShadowSpread) var(--palettes-neutral-0);margin-inline-start:var(--components-softwareIconWrapper-list-item-marginInlineStart)}.softwareIconWrapper-action-more{display:grid;place-items:center;font-family:var(--pr-t-font-family-brand);font-size:var(--components-softwareIconWrapper-action-more-fontSize);font-weight:var(--pr-t-font-fontWeight-semibold)}.softwareIconWrapper_popover{margin:0;padding:0;list-style-type:none;display:grid;max-inline-size:calc(var(--components-softwareIcon-size) * 8 + var(--pr-t-spacings-50) * 7);box-sizing:content-box;gap:var(--pr-t-spacings-50);grid-template-columns:repeat(auto-fit,minmax(var(--components-softwareIcon-size),1fr))}}@layer mods{.softwareIcon.mod-XXS{--components-softwareIcon-size: var(--pr-t-spacings-200)}.softwareIcon.mod-XS{--components-softwareIcon-size: var(--pr-t-spacings-300)}.softwareIcon.mod-S{--components-softwareIcon-size: var(--pr-t-spacings-400)}.softwareIcon.mod-L{--components-softwareIcon-size: var(--pr-t-spacings-600)}.softwareIcon.is-disabled{--components-softwareIcon-disabled-100: var(--palettes-neutral-100);--components-softwareIcon-disabled-200: var(--palettes-neutral-200);--components-softwareIcon-disabled-300: var(--palettes-neutral-300);--components-softwareIcon-disabled-400: var(--palettes-neutral-400);--components-softwareIcon-disabled-500: var(--palettes-neutral-500);--components-softwareIcon-disabled-600: var(--palettes-neutral-600)}}@layer components{.softwareIconWrapper{--components-softwareIcon-size: var(--pr-t-spacings-500);--components-softwareIcon-illustration-bubble-stroke: transparent;--components-softwareIcon-illustration-bubble-strokeWidth: 0px;--components-softwareIcon-display: inline-block;--components-softwareIcon-action-boxShadowSpread: 2px;--components-softwareIcon-zIndex: auto;--components-softwareIcon-transformScale: 1;--components-softwareIconWrapper-list-item-marginInlineStart: calc(var(--pr-t-spacings-75) * -1);--components-softwareIconWrapper-action-more-fontSize: var(--pr-t-font-fontSize-225)}}@layer mods{.softwareIconWrapper.mod-XS{--components-softwareIconWrapper-action-more-fontSize: var(--pr-t-font-fontSize-150);--components-softwareIconWrapper-list-item-marginInlineStart: calc(var(--pr-t-spacings-50) * -1);--components-softwareIcon-action-boxShadowSpread: 1px}.softwareIconWrapper.mod-XS,.softwareIconWrapper.mod-XS .softwareIcon{--components-softwareIcon-size: var(--pr-t-spacings-300)}.softwareIconWrapper.mod-S{--components-softwareIconWrapper-action-more-fontSize: var(--pr-t-font-fontSize-200);--components-softwareIconWrapper-list-item-marginInlineStart: calc(var(--pr-t-spacings-50) * -1)}.softwareIconWrapper.mod-S,.softwareIconWrapper.mod-S .softwareIcon{--components-softwareIcon-size: var(--pr-t-spacings-400)}.softwareIconWrapper .softwareIcon,.softwareIconWrapper .softwareIconWrapper-action{--components-softwareIcon-illustration-bubble-stroke: var(--palettes-neutral-0);--components-softwareIcon-illustration-bubble-strokeWidth: 4px;--components-softwareIcon-display: block}.softwareIconWrapper .softwareIcon:hover,.softwareIconWrapper .softwareIcon:focus,.softwareIconWrapper .softwareIconWrapper-action:hover,.softwareIconWrapper .softwareIconWrapper-action:focus{--components-softwareIcon-transformScale: 1.1;--components-softwareIcon-zIndex: 1}}@layer components{.softwareIconWrapper_popover{--components-softwareIcon-size: var(--pr-t-spacings-500)}}@layer mods{.softwareIconWrapper_popover .softwareIcon,.softwareIconWrapper_popover .softwareIconWrapper-action{--components-softwareIcon-display: block}.softwareIconWrapper_popover .softwareIcon:hover,.softwareIconWrapper_popover .softwareIcon:focus,.softwareIconWrapper_popover .softwareIconWrapper-action:hover,.softwareIconWrapper_popover .softwareIconWrapper-action:focus{--components-softwareIcon-transformScale: 1.1;--components-softwareIcon-zIndex: 1}.softwareIconWrapper_popover.mod-XS,.softwareIconWrapper_popover.mod-XS .softwareIcon{--components-softwareIcon-size: var(--pr-t-spacings-300)}.softwareIconWrapper_popover.mod-S,.softwareIconWrapper_popover.mod-S .softwareIcon{--components-softwareIcon-size: var(--pr-t-spacings-400)}}lu-software-icon{display:contents}\n"], dependencies: [{ kind: "directive", type: LuTooltipTriggerDirective, selector: "[luTooltip],[prTooltip]", inputs: ["luTooltip", "prTooltip", "luTooltipEnterDelay", "prTooltipEnterDelay", "luTooltipLeaveDelay", "prTooltipLeaveDelay", "luTooltipDisabled", "prTooltipDisabled", "luTooltipOnlyForDisplay", "prTooltipOnlyForDisplay", "luTooltipPosition", "prTooltipPosition", "luTooltipWhenEllipsis", "prTooltipWhenEllipsis", "luTooltipAnchor", "prTooltipAnchor", "id"], exportAs: ["luTooltip"] }, { kind: "pipe", type: LuSafeExternalSvgPipe, name: "luSafeExternalSvg" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
27
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "22.1.4", type: SoftwareIconComponent, isStandalone: true, selector: "lu-software-icon", inputs: { icon: { classPropertyName: "icon", publicName: "icon", isSignal: true, isRequired: true, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, withTooltip: { classPropertyName: "withTooltip", publicName: "withTooltip", isSignal: true, isRequired: false, transformFunction: null }, iconAlt: { classPropertyName: "iconAlt", publicName: "iconAlt", isSignal: true, isRequired: false, transformFunction: null }, size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: "<span\n\tclass=\"softwareIcon\"\n\t[class.is-disabled]=\"disabled()\"\n\t[class.mod-XXS]=\"size() === 'XXS'\"\n\t[class.mod-XS]=\"size() === 'XS'\"\n\t[class.mod-S]=\"size() === 'S'\"\n\t[class.mod-L]=\"size() === 'L'\"\n\taria-hidden=\"true\"\n\t[innerHtml]=\"iconUrl() | luSafeExternalSvg\"\n\t[luTooltip]=\"iconAlt()\"\n\tluTooltipOnlyForDisplay\n\t[luTooltipDisabled]=\"!this.withTooltip() && !this.wrapper\"\n></span>\n<span class=\"pr-u-mask\" translate=\"no\">{{ iconAlt() }}</span>\n", styles: ["@layer components{.softwareIcon{--components-softwareIcon-size: var(--pr-t-spacings-500);--components-softwareIcon-illustration-bubble-stroke: transparent;--components-softwareIcon-illustration-bubble-strokeWidth: 0px;--components-softwareIcon-display: inline-block;--components-softwareIcon-action-boxShadowSpread: 2px;--components-softwareIcon-zIndex: auto;--components-softwareIcon-transformScale: 1;display:var(--components-softwareIcon-display);inline-size:var(--components-softwareIcon-size);block-size:var(--components-softwareIcon-size);z-index:var(--components-softwareIcon-zIndex);position:relative;transform:scale(var(--components-softwareIcon-transformScale));transition-property:transform;transition-duration:var(--commons-animations-durations-fast)}.softwareIcon:focus-visible{outline:none}.softwareIcon-illustration{overflow:visible}.softwareIcon-illustration-bubble{stroke:var(--components-softwareIcon-illustration-bubble-stroke);stroke-width:var(--components-softwareIcon-illustration-bubble-strokeWidth)}.softwareIconWrapper{display:flex;flex-wrap:wrap;align-items:center;gap:var(--pr-t-spacings-25) 0;padding-inline-start:calc(var(--components-softwareIconWrapper-list-item-marginInlineStart) * -1)}.softwareIconWrapper-list{margin:0;padding:0;list-style-type:none;display:contents}.softwareIconWrapper-list-item{margin-inline-start:var(--components-softwareIconWrapper-list-item-marginInlineStart)}.softwareIconWrapper-action{padding:0;border:0;inline-size:100%;background-color:transparent;color:inherit;text-align:start;display:block;font:inherit;cursor:pointer;border-radius:68% 35% 45% 55%/40% 40% 64% 60%;background-color:var(--palettes-neutral-200);inline-size:var(--components-softwareIcon-size);block-size:var(--components-softwareIcon-size);transform:scale(var(--components-softwareIcon-transformScale));transition-property:transform;transition-duration:var(--commons-animations-durations-fast);box-shadow:0 0 0 var(--components-softwareIcon-action-boxShadowSpread) var(--palettes-neutral-0);margin-inline-start:var(--components-softwareIconWrapper-list-item-marginInlineStart)}.softwareIconWrapper-action-more{display:grid;place-items:center;font-family:var(--pr-t-font-family-brand);font-size:var(--components-softwareIconWrapper-action-more-fontSize);font-weight:var(--pr-t-font-fontWeight-semibold)}.softwareIconWrapper_popover{margin:0;padding:0;list-style-type:none;display:grid;max-inline-size:calc(var(--components-softwareIcon-size) * 8 + var(--pr-t-spacings-50) * 7);box-sizing:content-box;gap:var(--pr-t-spacings-50);grid-template-columns:repeat(auto-fit,minmax(var(--components-softwareIcon-size),1fr))}}@layer mods{.softwareIcon.mod-XXS{--components-softwareIcon-size: var(--pr-t-spacings-200)}.softwareIcon.mod-XS{--components-softwareIcon-size: var(--pr-t-spacings-300)}.softwareIcon.mod-S{--components-softwareIcon-size: var(--pr-t-spacings-400)}.softwareIcon.mod-L{--components-softwareIcon-size: var(--pr-t-spacings-600)}.softwareIcon.is-disabled{--components-softwareIcon-disabled-100: var(--palettes-neutral-100);--components-softwareIcon-disabled-200: var(--palettes-neutral-200);--components-softwareIcon-disabled-300: var(--palettes-neutral-300);--components-softwareIcon-disabled-400: var(--palettes-neutral-400);--components-softwareIcon-disabled-500: var(--palettes-neutral-500);--components-softwareIcon-disabled-600: var(--palettes-neutral-600)}}@layer components{.softwareIconWrapper{--components-softwareIcon-size: var(--pr-t-spacings-500);--components-softwareIcon-illustration-bubble-stroke: transparent;--components-softwareIcon-illustration-bubble-strokeWidth: 0px;--components-softwareIcon-display: inline-block;--components-softwareIcon-action-boxShadowSpread: 2px;--components-softwareIcon-zIndex: auto;--components-softwareIcon-transformScale: 1;--components-softwareIconWrapper-list-item-marginInlineStart: calc(var(--pr-t-spacings-75) * -1);--components-softwareIconWrapper-action-more-fontSize: var(--pr-t-font-fontSize-225)}}@layer mods{.softwareIconWrapper.mod-XS{--components-softwareIconWrapper-action-more-fontSize: var(--pr-t-font-fontSize-150);--components-softwareIconWrapper-list-item-marginInlineStart: calc(var(--pr-t-spacings-50) * -1);--components-softwareIcon-action-boxShadowSpread: 1px}.softwareIconWrapper.mod-XS,.softwareIconWrapper.mod-XS .softwareIcon{--components-softwareIcon-size: var(--pr-t-spacings-300)}.softwareIconWrapper.mod-S{--components-softwareIconWrapper-action-more-fontSize: var(--pr-t-font-fontSize-200);--components-softwareIconWrapper-list-item-marginInlineStart: calc(var(--pr-t-spacings-50) * -1)}.softwareIconWrapper.mod-S,.softwareIconWrapper.mod-S .softwareIcon{--components-softwareIcon-size: var(--pr-t-spacings-400)}.softwareIconWrapper .softwareIcon,.softwareIconWrapper .softwareIconWrapper-action{--components-softwareIcon-illustration-bubble-stroke: var(--palettes-neutral-0);--components-softwareIcon-illustration-bubble-strokeWidth: 4px;--components-softwareIcon-display: block}.softwareIconWrapper .softwareIcon:hover,.softwareIconWrapper .softwareIcon:focus,.softwareIconWrapper .softwareIconWrapper-action:hover,.softwareIconWrapper .softwareIconWrapper-action:focus{--components-softwareIcon-transformScale: 1.1;--components-softwareIcon-zIndex: 1}}@layer components{.softwareIconWrapper_popover{--components-softwareIcon-size: var(--pr-t-spacings-500)}}@layer mods{.softwareIconWrapper_popover .softwareIcon,.softwareIconWrapper_popover .softwareIconWrapper-action{--components-softwareIcon-display: block}.softwareIconWrapper_popover .softwareIcon:hover,.softwareIconWrapper_popover .softwareIcon:focus,.softwareIconWrapper_popover .softwareIconWrapper-action:hover,.softwareIconWrapper_popover .softwareIconWrapper-action:focus{--components-softwareIcon-transformScale: 1.1;--components-softwareIcon-zIndex: 1}.softwareIconWrapper_popover.mod-XS,.softwareIconWrapper_popover.mod-XS .softwareIcon{--components-softwareIcon-size: var(--pr-t-spacings-300)}.softwareIconWrapper_popover.mod-S,.softwareIconWrapper_popover.mod-S .softwareIcon{--components-softwareIcon-size: var(--pr-t-spacings-400)}}lu-software-icon{display:contents}\n"], dependencies: [{ kind: "directive", type: LuTooltipTriggerDirective, selector: "[luTooltip],[prTooltip]", inputs: ["luTooltip", "prTooltip", "luTooltipEnterDelay", "prTooltipEnterDelay", "luTooltipLeaveDelay", "prTooltipLeaveDelay", "luTooltipDisabled", "prTooltipDisabled", "luTooltipOnlyForDisplay", "prTooltipOnlyForDisplay", "luTooltipPosition", "prTooltipPosition", "luTooltipWhenEllipsis", "prTooltipWhenEllipsis", "luTooltipAnchor", "prTooltipAnchor", "luTooltipTriggerAnchor", "prTooltipTriggerAnchor", "id"], exportAs: ["luTooltip"] }, { kind: "pipe", type: LuSafeExternalSvgPipe, name: "luSafeExternalSvg" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
28
28
  }
29
29
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.4", ngImport: i0, type: SoftwareIconComponent, decorators: [{
30
30
  type: Component,
@@ -1 +1 @@
1
- {"version":3,"file":"lucca-front-ng-software-icon.mjs","sources":["../../../packages/ng/software-icon/software-icon-wrapper.token.ts","../../../packages/ng/software-icon/software-icon.component.ts","../../../packages/ng/software-icon/software-icon.component.html","../../../packages/ng/software-icon/software-icon.type.ts","../../../packages/ng/software-icon/lucca-front-ng-software-icon.ts"],"sourcesContent":["import { InjectionToken } from '@angular/core';\n\nexport const LU_SOFTWARE_ICON_WRAPPER = new InjectionToken<boolean>('LU_SOFTWARE_ICON_WRAPPER');\n","import { ChangeDetectionStrategy, Component, computed, inject, input, ViewEncapsulation } from '@angular/core';\nimport { luBooleanAttribute } from '@lucca-front/ng/core';\nimport { LuSafeExternalSvgPipe } from '@lucca-front/ng/safe-content';\nimport { LuTooltipTriggerDirective } from '@lucca-front/ng/tooltip';\nimport { LU_SOFTWARE_ICON_WRAPPER } from './software-icon-wrapper.token';\nimport { SoftwareIcon, SoftwareIconSize } from './software-icon.type';\n\n@Component({\n\tselector: 'lu-software-icon',\n\ttemplateUrl: './software-icon.component.html',\n\tstyleUrl: './software-icon.component.scss',\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\tencapsulation: ViewEncapsulation.None,\n\timports: [LuSafeExternalSvgPipe, LuTooltipTriggerDirective],\n})\nexport class SoftwareIconComponent {\n\treadonly wrapper = inject(LU_SOFTWARE_ICON_WRAPPER, { optional: true });\n\n\treadonly domain = 'https://cdn.lucca.fr';\n\treadonly path = '/transverse/prisme/visuals/software-icon/';\n\treadonly extension = '.svg';\n\n\treadonly icon = input.required<SoftwareIcon>();\n\n\treadonly disabled = input(false, { transform: luBooleanAttribute });\n\treadonly withTooltip = input(false, { transform: luBooleanAttribute });\n\treadonly iconAlt = input<string>('');\n\treadonly size = input<SoftwareIconSize | ''>('');\n\treadonly iconUrl = computed(() => `${this.domain}${this.path}${this.icon()}${this.extension}`);\n}\n","<span\n\tclass=\"softwareIcon\"\n\t[class.is-disabled]=\"disabled()\"\n\t[class.mod-XXS]=\"size() === 'XXS'\"\n\t[class.mod-XS]=\"size() === 'XS'\"\n\t[class.mod-S]=\"size() === 'S'\"\n\t[class.mod-L]=\"size() === 'L'\"\n\taria-hidden=\"true\"\n\t[innerHtml]=\"iconUrl() | luSafeExternalSvg\"\n\t[luTooltip]=\"iconAlt()\"\n\tluTooltipOnlyForDisplay\n\t[luTooltipDisabled]=\"!this.withTooltip() && !this.wrapper\"\n></span>\n<span class=\"pr-u-mask\" translate=\"no\">{{ iconAlt() }}</span>\n","/**\n * Available SoftwareIconComponent Types\n */\n\nexport const SOFTWARE_ICON_SIZE = ['XXS', 'XS', 'S', 'L'] as const;\nexport type SoftwareIconSize = (typeof SOFTWARE_ICON_SIZE)[number];\n\nexport const SOFTWARE_ICON = [\n\t// Time and Activities\n\t'absences',\n\t'timesheet',\n\t'office',\n\t'projects',\n\t'shifts',\n\t// Talent Management\n\t'performance',\n\t'engagement',\n\t'training',\n\t'recruitment',\n\t'mood',\n\t// Employee Administration\n\t'analytics',\n\t'employee-administration',\n\t'shared-documents',\n\t'faces',\n\t// Spend Management\n\t'business-expenses',\n\t'invoices',\n\t'payment-methods',\n\t'accounting-assistant',\n\t'certified-einvoicing-platform',\n\t// Compensation and Benefits\n\t'compensation',\n\t'payslip',\n\t'benefits',\n\t'payroll-assistant',\n\t// Lucca\n\t'cloud-control',\n\t'ask-lucca',\n\t'ask-salesforce',\n\t'calendar',\n\t'administration',\n\t'client-center',\n\t'sandbox',\n\t'store',\n\t'lucca',\n] as const;\n\nexport type SoftwareIcon = (typeof SOFTWARE_ICON)[number];\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;;;;MAEa,wBAAwB,GAAG,IAAI,cAAc,CAAU,0BAA0B;;MCajF,qBAAqB,CAAA;AARlC,IAAA,WAAA,GAAA;QASU,IAAA,CAAA,OAAO,GAAG,MAAM,CAAC,wBAAwB,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;QAE9D,IAAA,CAAA,MAAM,GAAG,sBAAsB;QAC/B,IAAA,CAAA,IAAI,GAAG,2CAA2C;QAClD,IAAA,CAAA,SAAS,GAAG,MAAM;QAElB,IAAA,CAAA,IAAI,GAAG,KAAK,CAAC,QAAQ;iFAAgB;QAErC,IAAA,CAAA,QAAQ,GAAG,KAAK,CAAC,KAAK,gFAAI,SAAS,EAAE,kBAAkB,EAAA,CAAG;QAC1D,IAAA,CAAA,WAAW,GAAG,KAAK,CAAC,KAAK,mFAAI,SAAS,EAAE,kBAAkB,EAAA,CAAG;QAC7D,IAAA,CAAA,OAAO,GAAG,KAAK,CAAS,EAAE;oFAAC;QAC3B,IAAA,CAAA,IAAI,GAAG,KAAK,CAAwB,EAAE;iFAAC;QACvC,IAAA,CAAA,OAAO,GAAG,QAAQ,CAAC,MAAM,CAAA,EAAG,IAAI,CAAC,MAAM,CAAA,EAAG,IAAI,CAAC,IAAI,CAAA,EAAG,IAAI,CAAC,IAAI,EAAE,CAAA,EAAG,IAAI,CAAC,SAAS,CAAA,CAAE;oFAAC;AAC9F,IAAA;8GAdY,qBAAqB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAArB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,qBAAqB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,EAAA,IAAA,EAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,UAAA,EAAA,MAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,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,WAAA,EAAA,EAAA,iBAAA,EAAA,aAAA,EAAA,UAAA,EAAA,aAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,OAAA,EAAA,EAAA,iBAAA,EAAA,SAAA,EAAA,UAAA,EAAA,SAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,IAAA,EAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,UAAA,EAAA,MAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECflC,6eAcA,EAAA,MAAA,EAAA,CAAA,ohMAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EDDkC,yBAAyB,gcAAhD,qBAAqB,EAAA,IAAA,EAAA,mBAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA;;2FAEnB,qBAAqB,EAAA,UAAA,EAAA,CAAA;kBARjC,SAAS;AACC,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,kBAAkB,EAAA,eAAA,EAGX,uBAAuB,CAAC,MAAM,EAAA,aAAA,EAChC,iBAAiB,CAAC,IAAI,EAAA,OAAA,EAC5B,CAAC,qBAAqB,EAAE,yBAAyB,CAAC,EAAA,QAAA,EAAA,6eAAA,EAAA,MAAA,EAAA,CAAA,ohMAAA,CAAA,EAAA;;;AEb5D;;AAEG;AAEI,MAAM,kBAAkB,GAAG,CAAC,KAAK,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG;AAGjD,MAAM,aAAa,GAAG;;IAE5B,UAAU;IACV,WAAW;IACX,QAAQ;IACR,UAAU;IACV,QAAQ;;IAER,aAAa;IACb,YAAY;IACZ,UAAU;IACV,aAAa;IACb,MAAM;;IAEN,WAAW;IACX,yBAAyB;IACzB,kBAAkB;IAClB,OAAO;;IAEP,mBAAmB;IACnB,UAAU;IACV,iBAAiB;IACjB,sBAAsB;IACtB,+BAA+B;;IAE/B,cAAc;IACd,SAAS;IACT,UAAU;IACV,mBAAmB;;IAEnB,eAAe;IACf,WAAW;IACX,gBAAgB;IAChB,UAAU;IACV,gBAAgB;IAChB,eAAe;IACf,SAAS;IACT,OAAO;IACP,OAAO;;;AC7CR;;AAEG;;"}
1
+ {"version":3,"file":"lucca-front-ng-software-icon.mjs","sources":["../../../packages/ng/software-icon/software-icon-wrapper.token.ts","../../../packages/ng/software-icon/software-icon.component.ts","../../../packages/ng/software-icon/software-icon.component.html","../../../packages/ng/software-icon/software-icon.type.ts","../../../packages/ng/software-icon/lucca-front-ng-software-icon.ts"],"sourcesContent":["import { InjectionToken } from '@angular/core';\n\nexport const LU_SOFTWARE_ICON_WRAPPER = new InjectionToken<boolean>('LU_SOFTWARE_ICON_WRAPPER');\n","import { ChangeDetectionStrategy, Component, computed, inject, input, ViewEncapsulation } from '@angular/core';\nimport { luBooleanAttribute } from '@lucca-front/ng/core';\nimport { LuSafeExternalSvgPipe } from '@lucca-front/ng/safe-content';\nimport { LuTooltipTriggerDirective } from '@lucca-front/ng/tooltip';\nimport { LU_SOFTWARE_ICON_WRAPPER } from './software-icon-wrapper.token';\nimport { SoftwareIcon, SoftwareIconSize } from './software-icon.type';\n\n@Component({\n\tselector: 'lu-software-icon',\n\ttemplateUrl: './software-icon.component.html',\n\tstyleUrl: './software-icon.component.scss',\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\tencapsulation: ViewEncapsulation.None,\n\timports: [LuSafeExternalSvgPipe, LuTooltipTriggerDirective],\n})\nexport class SoftwareIconComponent {\n\treadonly wrapper = inject(LU_SOFTWARE_ICON_WRAPPER, { optional: true });\n\n\treadonly domain = 'https://cdn.lucca.fr';\n\treadonly path = '/transverse/prisme/visuals/software-icon/';\n\treadonly extension = '.svg';\n\n\treadonly icon = input.required<SoftwareIcon>();\n\n\treadonly disabled = input(false, { transform: luBooleanAttribute });\n\treadonly withTooltip = input(false, { transform: luBooleanAttribute });\n\treadonly iconAlt = input<string>('');\n\treadonly size = input<SoftwareIconSize | ''>('');\n\treadonly iconUrl = computed(() => `${this.domain}${this.path}${this.icon()}${this.extension}`);\n}\n","<span\n\tclass=\"softwareIcon\"\n\t[class.is-disabled]=\"disabled()\"\n\t[class.mod-XXS]=\"size() === 'XXS'\"\n\t[class.mod-XS]=\"size() === 'XS'\"\n\t[class.mod-S]=\"size() === 'S'\"\n\t[class.mod-L]=\"size() === 'L'\"\n\taria-hidden=\"true\"\n\t[innerHtml]=\"iconUrl() | luSafeExternalSvg\"\n\t[luTooltip]=\"iconAlt()\"\n\tluTooltipOnlyForDisplay\n\t[luTooltipDisabled]=\"!this.withTooltip() && !this.wrapper\"\n></span>\n<span class=\"pr-u-mask\" translate=\"no\">{{ iconAlt() }}</span>\n","/**\n * Available SoftwareIconComponent Types\n */\n\nexport const SOFTWARE_ICON_SIZE = ['XXS', 'XS', 'S', 'L'] as const;\nexport type SoftwareIconSize = (typeof SOFTWARE_ICON_SIZE)[number];\n\nexport const SOFTWARE_ICON = [\n\t// Time and Activities\n\t'absences',\n\t'timesheet',\n\t'office',\n\t'projects',\n\t'shifts',\n\t// Talent Management\n\t'performance',\n\t'engagement',\n\t'training',\n\t'recruitment',\n\t'mood',\n\t// Employee Administration\n\t'analytics',\n\t'employee-administration',\n\t'shared-documents',\n\t'faces',\n\t// Spend Management\n\t'business-expenses',\n\t'invoices',\n\t'payment-methods',\n\t'accounting-assistant',\n\t'certified-einvoicing-platform',\n\t// Compensation and Benefits\n\t'compensation',\n\t'payslip',\n\t'benefits',\n\t'payroll-assistant',\n\t// Lucca\n\t'cloud-control',\n\t'ask-lucca',\n\t'ask-salesforce',\n\t'calendar',\n\t'administration',\n\t'client-center',\n\t'sandbox',\n\t'store',\n\t'lucca',\n] as const;\n\nexport type SoftwareIcon = (typeof SOFTWARE_ICON)[number];\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
@@ -37,7 +37,7 @@ class StatusBadgeComponent {
37
37
  this.#luClass.setState({ [`palette-${this.palette()}`]: !!this.palette(), [`mod-${this.size()}`]: true });
38
38
  }
39
39
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.4", ngImport: i0, type: StatusBadgeComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
40
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.1.4", type: StatusBadgeComponent, isStandalone: true, selector: "lu-status-badge", inputs: { withEllipsis: { classPropertyName: "withEllipsis", publicName: "withEllipsis", isSignal: true, isRequired: false, transformFunction: null }, label: { classPropertyName: "label", publicName: "label", isSignal: true, isRequired: true, transformFunction: null }, size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null }, palette: { classPropertyName: "palette", publicName: "palette", isSignal: true, isRequired: false, transformFunction: null } }, host: { classAttribute: "statusBadge" }, providers: [LuClass], usesOnChanges: true, ngImport: i0, template: "@if (withEllipsis()) {\n\t<span class=\"statusBadge-content pr-u-ellipsis\" luTooltip luTooltipWhenEllipsis>{{ label() }}</span>\n} @else {\n\t{{ label() }}\n}\n", styles: ["@charset \"UTF-8\";@layer components{.statusBadge{--components-statusBadge-fontSize: var(--pr-t-font-body-S-fontSize);--components-statusBadge-lineHeight: var(--pr-t-font-body-XS-lineHeight);--components-statusBadge-dot-size: .5rem;--components-statusBadge-dot-top: var(--pr-t-spacings-50);align-items:flex-start;background-color:var(--palettes-100, var(--palettes-product-100));border-radius:var(--pr-t-border-radius-full);display:inline-flex;font-size:var(--components-statusBadge-fontSize);font-weight:var(--pr-t-font-fontWeight-regular);font-family:var(--pr-t-font-family);line-height:var(--components-statusBadge-lineHeight);gap:var(--pr-t-spacings-50);padding-block:calc(var(--pr-t-spacings-50) / 2);padding-inline:var(--pr-t-spacings-75) var(--pr-t-spacings-100);white-space:nowrap;max-inline-size:100%;color:var(--pr-t-color-text)}.statusBadge:before{background-color:var(--palettes-700, var(--palettes-product-700));border-radius:var(--pr-t-border-radius-full);content:\"\\a0\"/\"\";display:block;block-size:var(--components-statusBadge-dot-size);flex-shrink:0;inline-size:var(--components-statusBadge-dot-size);inset-block-start:var(--components-statusBadge-dot-top);position:relative}.statusBadge-content{overflow:hidden;text-overflow:ellipsis;outline:none}}@layer mods{.statusBadge.mod-L{--components-statusBadge-fontSize: var(--pr-t-font-body-M-fontSize);--components-statusBadge-lineHeight: var(--pr-t-font-body-S-lineHeight);--components-statusBadge-dot-size: calc(var(--pr-t-spacings-100) + var(--pr-t-spacings-25));--components-statusBadge-dot-top: .325rem}}.statusBadge:has(.statusBadge-content:focus-visible){outline:2px solid var(--palettes-700, var(--palettes-product-700));outline-offset:2px}\n"], dependencies: [{ kind: "ngmodule", type: LuTooltipModule }, { kind: "directive", type: i1.LuTooltipTriggerDirective, selector: "[luTooltip],[prTooltip]", inputs: ["luTooltip", "prTooltip", "luTooltipEnterDelay", "prTooltipEnterDelay", "luTooltipLeaveDelay", "prTooltipLeaveDelay", "luTooltipDisabled", "prTooltipDisabled", "luTooltipOnlyForDisplay", "prTooltipOnlyForDisplay", "luTooltipPosition", "prTooltipPosition", "luTooltipWhenEllipsis", "prTooltipWhenEllipsis", "luTooltipAnchor", "prTooltipAnchor", "id"], exportAs: ["luTooltip"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
40
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.1.4", type: StatusBadgeComponent, isStandalone: true, selector: "lu-status-badge", inputs: { withEllipsis: { classPropertyName: "withEllipsis", publicName: "withEllipsis", isSignal: true, isRequired: false, transformFunction: null }, label: { classPropertyName: "label", publicName: "label", isSignal: true, isRequired: true, transformFunction: null }, size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null }, palette: { classPropertyName: "palette", publicName: "palette", isSignal: true, isRequired: false, transformFunction: null } }, host: { classAttribute: "statusBadge" }, providers: [LuClass], usesOnChanges: true, ngImport: i0, template: "@if (withEllipsis()) {\n\t<span class=\"statusBadge-content pr-u-ellipsis\" luTooltip luTooltipWhenEllipsis>{{ label() }}</span>\n} @else {\n\t{{ label() }}\n}\n", styles: ["@charset \"UTF-8\";@layer components{.statusBadge{--components-statusBadge-fontSize: var(--pr-t-font-body-S-fontSize);--components-statusBadge-lineHeight: var(--pr-t-font-body-XS-lineHeight);--components-statusBadge-dot-size: .5rem;--components-statusBadge-dot-top: var(--pr-t-spacings-50);align-items:flex-start;background-color:var(--palettes-100, var(--palettes-product-100));border-radius:var(--pr-t-border-radius-full);display:inline-flex;font-size:var(--components-statusBadge-fontSize);font-weight:var(--pr-t-font-fontWeight-regular);font-family:var(--pr-t-font-family);line-height:var(--components-statusBadge-lineHeight);gap:var(--pr-t-spacings-50);padding-block:calc(var(--pr-t-spacings-50) / 2);padding-inline:var(--pr-t-spacings-75) var(--pr-t-spacings-100);white-space:nowrap;max-inline-size:100%;color:var(--pr-t-color-text)}.statusBadge:before{background-color:var(--palettes-700, var(--palettes-product-700));border-radius:var(--pr-t-border-radius-full);content:\"\\a0\"/\"\";display:block;block-size:var(--components-statusBadge-dot-size);flex-shrink:0;inline-size:var(--components-statusBadge-dot-size);inset-block-start:var(--components-statusBadge-dot-top);position:relative}.statusBadge-content{overflow:hidden;text-overflow:ellipsis;outline:none}}@layer mods{.statusBadge.mod-L{--components-statusBadge-fontSize: var(--pr-t-font-body-M-fontSize);--components-statusBadge-lineHeight: var(--pr-t-font-body-S-lineHeight);--components-statusBadge-dot-size: calc(var(--pr-t-spacings-100) + var(--pr-t-spacings-25));--components-statusBadge-dot-top: .325rem}}.statusBadge:has(.statusBadge-content:focus-visible){outline:2px solid var(--palettes-700, var(--palettes-product-700));outline-offset:2px}\n"], dependencies: [{ kind: "ngmodule", type: LuTooltipModule }, { kind: "directive", type: i1.LuTooltipTriggerDirective, selector: "[luTooltip],[prTooltip]", inputs: ["luTooltip", "prTooltip", "luTooltipEnterDelay", "prTooltipEnterDelay", "luTooltipLeaveDelay", "prTooltipLeaveDelay", "luTooltipDisabled", "prTooltipDisabled", "luTooltipOnlyForDisplay", "prTooltipOnlyForDisplay", "luTooltipPosition", "prTooltipPosition", "luTooltipWhenEllipsis", "prTooltipWhenEllipsis", "luTooltipAnchor", "prTooltipAnchor", "luTooltipTriggerAnchor", "prTooltipTriggerAnchor", "id"], exportAs: ["luTooltip"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
41
41
  }
42
42
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.4", ngImport: i0, type: StatusBadgeComponent, decorators: [{
43
43
  type: Component,
@@ -1 +1 @@
1
- {"version":3,"file":"lucca-front-ng-status-badge.mjs","sources":["../../../packages/ng/status-badge/status-badge.type.ts","../../../packages/ng/status-badge/statusBadge.component.ts","../../../packages/ng/status-badge/statusBadge.component.html","../../../packages/ng/status-badge/lucca-front-ng-status-badge.ts"],"sourcesContent":["/**\n * Available StatusBadgeComponent Types\n */\n\nexport const STATUS_BADGE_SIZE = ['L', 'M'] as const;\nexport type StatusBadgeSize = (typeof STATUS_BADGE_SIZE)[number];\n","import { ChangeDetectionStrategy, Component, inject, input, OnChanges, ViewEncapsulation } from '@angular/core';\nimport { luBooleanAttribute, LuClass, Palette } from '@lucca-front/ng/core';\nimport { LuTooltipModule } from '@lucca-front/ng/tooltip';\nimport { StatusBadgeSize } from './status-badge.type';\n\n@Component({\n\tselector: 'lu-status-badge',\n\ttemplateUrl: './statusBadge.component.html',\n\tstyleUrl: './statusBadge.component.scss',\n\tencapsulation: ViewEncapsulation.None,\n\tproviders: [LuClass],\n\timports: [LuTooltipModule],\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\thost: {\n\t\tclass: 'statusBadge',\n\t},\n})\nexport class StatusBadgeComponent implements OnChanges {\n\treadonly #luClass = inject(LuClass);\n\n\t/**\n\t * Truncates the text with an ellipsis and adds a tooltip when the label is too long\n\t */\n\treadonly withEllipsis = input(false, { transform: luBooleanAttribute });\n\n\t/**\n\t * Changes the text displayed by the status badge\n\t */\n\treadonly label = input.required<string>();\n\n\t/**\n\t * Changes the size of the status badge (Medium by default or L)\n\t */\n\treadonly size = input<StatusBadgeSize>('M');\n\n\t/**\n\t * Applies a color palette to the status badge\n\t */\n\treadonly palette = input<Palette | null>(null);\n\n\tngOnChanges(): void {\n\t\tthis.#luClass.setState({ [`palette-${this.palette()}`]: !!this.palette(), [`mod-${this.size()}`]: true });\n\t}\n}\n","@if (withEllipsis()) {\n\t<span class=\"statusBadge-content pr-u-ellipsis\" luTooltip luTooltipWhenEllipsis>{{ label() }}</span>\n} @else {\n\t{{ label() }}\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;;;;AAAA;;AAEG;MAEU,iBAAiB,GAAG,CAAC,GAAG,EAAE,GAAG;;MCa7B,oBAAoB,CAAA;AAZjC,IAAA,WAAA,GAAA;AAaU,QAAA,IAAA,CAAA,QAAQ,GAAG,MAAM,CAAC,OAAO,CAAC;AAEnC;;AAEG;QACM,IAAA,CAAA,YAAY,GAAG,KAAK,CAAC,KAAK,oFAAI,SAAS,EAAE,kBAAkB,EAAA,CAAG;AAEvE;;AAEG;QACM,IAAA,CAAA,KAAK,GAAG,KAAK,CAAC,QAAQ;kFAAU;AAEzC;;AAEG;QACM,IAAA,CAAA,IAAI,GAAG,KAAK,CAAkB,GAAG;iFAAC;AAE3C;;AAEG;QACM,IAAA,CAAA,OAAO,GAAG,KAAK,CAAiB,IAAI;oFAAC;AAK9C,IAAA;AAzBS,IAAA,QAAQ;IAsBjB,WAAW,GAAA;AACV,QAAA,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAA,QAAA,EAAW,IAAI,CAAC,OAAO,EAAE,CAAA,CAAE,GAAG,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,IAAI,CAAC,IAAI,EAAE,EAAE,GAAG,IAAI,EAAE,CAAC;IAC1G;8GAzBY,oBAAoB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAApB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,oBAAoB,0mBAPrB,CAAC,OAAO,CAAC,EAAA,aAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECVrB,mKAKA,6uDDMW,eAAe,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,yBAAA,EAAA,QAAA,EAAA,yBAAA,EAAA,MAAA,EAAA,CAAA,WAAA,EAAA,WAAA,EAAA,qBAAA,EAAA,qBAAA,EAAA,qBAAA,EAAA,qBAAA,EAAA,mBAAA,EAAA,mBAAA,EAAA,yBAAA,EAAA,yBAAA,EAAA,mBAAA,EAAA,mBAAA,EAAA,uBAAA,EAAA,uBAAA,EAAA,iBAAA,EAAA,iBAAA,EAAA,IAAA,CAAA,EAAA,QAAA,EAAA,CAAA,WAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA;;2FAMb,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBAZhC,SAAS;AACC,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,iBAAiB,iBAGZ,iBAAiB,CAAC,IAAI,EAAA,SAAA,EAC1B,CAAC,OAAO,CAAC,EAAA,OAAA,EACX,CAAC,eAAe,CAAC,EAAA,eAAA,EACT,uBAAuB,CAAC,MAAM,EAAA,IAAA,EACzC;AACL,wBAAA,KAAK,EAAE,aAAa;AACpB,qBAAA,EAAA,QAAA,EAAA,mKAAA,EAAA,MAAA,EAAA,CAAA,srDAAA,CAAA,EAAA;;;AEfF;;AAEG;;"}
1
+ {"version":3,"file":"lucca-front-ng-status-badge.mjs","sources":["../../../packages/ng/status-badge/status-badge.type.ts","../../../packages/ng/status-badge/statusBadge.component.ts","../../../packages/ng/status-badge/statusBadge.component.html","../../../packages/ng/status-badge/lucca-front-ng-status-badge.ts"],"sourcesContent":["/**\n * Available StatusBadgeComponent Types\n */\n\nexport const STATUS_BADGE_SIZE = ['L', 'M'] as const;\nexport type StatusBadgeSize = (typeof STATUS_BADGE_SIZE)[number];\n","import { ChangeDetectionStrategy, Component, inject, input, OnChanges, ViewEncapsulation } from '@angular/core';\nimport { luBooleanAttribute, LuClass, Palette } from '@lucca-front/ng/core';\nimport { LuTooltipModule } from '@lucca-front/ng/tooltip';\nimport { StatusBadgeSize } from './status-badge.type';\n\n@Component({\n\tselector: 'lu-status-badge',\n\ttemplateUrl: './statusBadge.component.html',\n\tstyleUrl: './statusBadge.component.scss',\n\tencapsulation: ViewEncapsulation.None,\n\tproviders: [LuClass],\n\timports: [LuTooltipModule],\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\thost: {\n\t\tclass: 'statusBadge',\n\t},\n})\nexport class StatusBadgeComponent implements OnChanges {\n\treadonly #luClass = inject(LuClass);\n\n\t/**\n\t * Truncates the text with an ellipsis and adds a tooltip when the label is too long\n\t */\n\treadonly withEllipsis = input(false, { transform: luBooleanAttribute });\n\n\t/**\n\t * Changes the text displayed by the status badge\n\t */\n\treadonly label = input.required<string>();\n\n\t/**\n\t * Changes the size of the status badge (Medium by default or L)\n\t */\n\treadonly size = input<StatusBadgeSize>('M');\n\n\t/**\n\t * Applies a color palette to the status badge\n\t */\n\treadonly palette = input<Palette | null>(null);\n\n\tngOnChanges(): void {\n\t\tthis.#luClass.setState({ [`palette-${this.palette()}`]: !!this.palette(), [`mod-${this.size()}`]: true });\n\t}\n}\n","@if (withEllipsis()) {\n\t<span class=\"statusBadge-content pr-u-ellipsis\" luTooltip luTooltipWhenEllipsis>{{ label() }}</span>\n} @else {\n\t{{ label() }}\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;;;;AAAA;;AAEG;MAEU,iBAAiB,GAAG,CAAC,GAAG,EAAE,GAAG;;MCa7B,oBAAoB,CAAA;AAZjC,IAAA,WAAA,GAAA;AAaU,QAAA,IAAA,CAAA,QAAQ,GAAG,MAAM,CAAC,OAAO,CAAC;AAEnC;;AAEG;QACM,IAAA,CAAA,YAAY,GAAG,KAAK,CAAC,KAAK,oFAAI,SAAS,EAAE,kBAAkB,EAAA,CAAG;AAEvE;;AAEG;QACM,IAAA,CAAA,KAAK,GAAG,KAAK,CAAC,QAAQ;kFAAU;AAEzC;;AAEG;QACM,IAAA,CAAA,IAAI,GAAG,KAAK,CAAkB,GAAG;iFAAC;AAE3C;;AAEG;QACM,IAAA,CAAA,OAAO,GAAG,KAAK,CAAiB,IAAI;oFAAC;AAK9C,IAAA;AAzBS,IAAA,QAAQ;IAsBjB,WAAW,GAAA;AACV,QAAA,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAA,QAAA,EAAW,IAAI,CAAC,OAAO,EAAE,CAAA,CAAE,GAAG,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,IAAI,CAAC,IAAI,EAAE,EAAE,GAAG,IAAI,EAAE,CAAC;IAC1G;8GAzBY,oBAAoB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAApB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,oBAAoB,0mBAPrB,CAAC,OAAO,CAAC,EAAA,aAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECVrB,mKAKA,6uDDMW,eAAe,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,yBAAA,EAAA,QAAA,EAAA,yBAAA,EAAA,MAAA,EAAA,CAAA,WAAA,EAAA,WAAA,EAAA,qBAAA,EAAA,qBAAA,EAAA,qBAAA,EAAA,qBAAA,EAAA,mBAAA,EAAA,mBAAA,EAAA,yBAAA,EAAA,yBAAA,EAAA,mBAAA,EAAA,mBAAA,EAAA,uBAAA,EAAA,uBAAA,EAAA,iBAAA,EAAA,iBAAA,EAAA,wBAAA,EAAA,wBAAA,EAAA,IAAA,CAAA,EAAA,QAAA,EAAA,CAAA,WAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA;;2FAMb,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBAZhC,SAAS;AACC,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,iBAAiB,iBAGZ,iBAAiB,CAAC,IAAI,EAAA,SAAA,EAC1B,CAAC,OAAO,CAAC,EAAA,OAAA,EACX,CAAC,eAAe,CAAC,EAAA,eAAA,EACT,uBAAuB,CAAC,MAAM,EAAA,IAAA,EACzC;AACL,wBAAA,KAAK,EAAE,aAAa;AACpB,qBAAA,EAAA,QAAA,EAAA,mKAAA,EAAA,MAAA,EAAA,CAAA,srDAAA,CAAA,EAAA;;;AEfF;;AAEG;;"}
@@ -368,7 +368,7 @@ class TimePickerPartComponent {
368
368
  }
369
369
  }
370
370
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.4", ngImport: i0, type: TimePickerPartComponent, deps: [{ token: LOCALE_ID }], target: i0.ɵɵFactoryTarget.Component }); }
371
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.1.4", type: TimePickerPartComponent, isStandalone: true, selector: "lu-time-picker-part", inputs: { label: { classPropertyName: "label", publicName: "label", isSignal: true, isRequired: false, transformFunction: null }, decimalConf: { classPropertyName: "decimalConf", publicName: "decimalConf", isSignal: true, isRequired: false, transformFunction: null }, value: { classPropertyName: "value", publicName: "value", isSignal: true, isRequired: false, transformFunction: null }, display: { classPropertyName: "display", publicName: "display", isSignal: true, isRequired: false, transformFunction: null }, max: { classPropertyName: "max", publicName: "max", isSignal: true, isRequired: false, transformFunction: null }, autoWidth: { classPropertyName: "autoWidth", publicName: "autoWidth", isSignal: true, isRequired: false, transformFunction: null }, displayArrows: { classPropertyName: "displayArrows", publicName: "displayArrows", isSignal: true, isRequired: false, transformFunction: null }, isReadonly: { classPropertyName: "isReadonly", publicName: "isReadonly", isSignal: true, isRequired: false, transformFunction: null }, hideValue: { classPropertyName: "hideValue", publicName: "hideValue", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, focused: { classPropertyName: "focused", publicName: "focused", isSignal: true, isRequired: false, transformFunction: null }, maxDigits: { classPropertyName: "maxDigits", publicName: "maxDigits", isSignal: true, isRequired: false, transformFunction: null }, showZero: { classPropertyName: "showZero", publicName: "showZero", isSignal: true, isRequired: false, transformFunction: null }, digitNumber: { classPropertyName: "digitNumber", publicName: "digitNumber", isSignal: true, isRequired: false, transformFunction: null }, isValueSet: { classPropertyName: "isValueSet", publicName: "isValueSet", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { value: "valueChange", digitNumber: "digitNumberChange", isValueSet: "isValueSetChange", prevRequest: "prevRequest", nextRequest: "nextRequest", nonDigitKeyPressed: "nonDigitKeyPressed", inputControlClick: "inputControlClick", touched: "touched" }, viewQueries: [{ propertyName: "timePickerInput", first: true, predicate: ["timePickerInput"], descendants: true, isSignal: true }], ngImport: i0, template: "<div class=\"timePicker-fieldset-group-textfield\">\n\t<label luFormLabel class=\"pr-u-mask\" [attr.id]=\"`${inputId}-label`\" [attr.for]=\"`${inputId}-input`\">{{ label() }}</label>\n\t<div class=\"timePicker-fieldset-group-textfield\">\n\t\t<input\n\t\t\t#timePickerInput\n\t\t\ttype=\"text\"\n\t\t\tluInput\n\t\t\tluInputStandalone\n\t\t\tinputmode=\"numeric\"\n\t\t\t[attr.id]=\"inputId + '-input'\"\n\t\t\tclass=\"timePicker-fieldset-group-textfield-input\"\n\t\t\t[attr.aria-labelledby]=\"inputId + '-label'\"\n\t\t\tautocomplete=\"off\"\n\t\t\t[value]=\"currentValue()\"\n\t\t\t(input)=\"keysInputHandler($event)\"\n\t\t\t(click)=\"clickHandler($event)\"\n\t\t\t(keydown)=\"keydownHandler($event)\"\n\t\t\t(blur)=\"touched.emit()\"\n\t\t\t(focus)=\"timePickerInput.select()\"\n\t\t\t[style]=\"'--components-timepicker-input-digits:' + digitNumber()\"\n\t\t/>\n\t\t<span aria-hidden=\"true\" class=\"timePicker-fieldset-group-textfield-display\" [attr.data-content-before]=\"valueLabel()\"></span>\n\t</div>\n\t@if (displayArrows()) {\n\t\t<button class=\"timePicker-fieldset-group-stepper\" type=\"button\" tabindex=\"-1\" aria-hidden=\"true\" luRepeatOnHold (hold)=\"up()\">\n\t\t\t<span aria-hidden=\"true\" class=\"lucca-icon icon-northArrow\"></span>\n\t\t\t<span class=\"pr-u-mask\">\u2212</span>\n\t\t</button>\n\t\t<button class=\"timePicker-fieldset-group-stepper\" type=\"button\" tabindex=\"-1\" aria-hidden=\"true\" luRepeatOnHold (hold)=\"down()\">\n\t\t\t<span aria-hidden=\"true\" class=\"lucca-icon icon-southArrow\"></span>\n\t\t\t<span class=\"pr-u-mask\">+</span>\n\t\t</button>\n\t}\n</div>\n", dependencies: [{ kind: "directive", type: RepeatOnHoldDirective, selector: "[luRepeatOnHold]", outputs: ["hold"] }, { kind: "directive", type: InputDirective, selector: "[luInput]", inputs: ["luInputStandalone"] }, { kind: "component", type: FormLabelComponent, selector: "label[luFormLabel], legend[luFormLabel]", inputs: ["intl", "required", "error", "tooltip", "tag", "size", "counterStatus", "counterMax", "counterId"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
371
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.1.4", type: TimePickerPartComponent, isStandalone: true, selector: "lu-time-picker-part", inputs: { label: { classPropertyName: "label", publicName: "label", isSignal: true, isRequired: false, transformFunction: null }, decimalConf: { classPropertyName: "decimalConf", publicName: "decimalConf", isSignal: true, isRequired: false, transformFunction: null }, value: { classPropertyName: "value", publicName: "value", isSignal: true, isRequired: false, transformFunction: null }, display: { classPropertyName: "display", publicName: "display", isSignal: true, isRequired: false, transformFunction: null }, max: { classPropertyName: "max", publicName: "max", isSignal: true, isRequired: false, transformFunction: null }, autoWidth: { classPropertyName: "autoWidth", publicName: "autoWidth", isSignal: true, isRequired: false, transformFunction: null }, displayArrows: { classPropertyName: "displayArrows", publicName: "displayArrows", isSignal: true, isRequired: false, transformFunction: null }, isReadonly: { classPropertyName: "isReadonly", publicName: "isReadonly", isSignal: true, isRequired: false, transformFunction: null }, hideValue: { classPropertyName: "hideValue", publicName: "hideValue", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, focused: { classPropertyName: "focused", publicName: "focused", isSignal: true, isRequired: false, transformFunction: null }, maxDigits: { classPropertyName: "maxDigits", publicName: "maxDigits", isSignal: true, isRequired: false, transformFunction: null }, showZero: { classPropertyName: "showZero", publicName: "showZero", isSignal: true, isRequired: false, transformFunction: null }, digitNumber: { classPropertyName: "digitNumber", publicName: "digitNumber", isSignal: true, isRequired: false, transformFunction: null }, isValueSet: { classPropertyName: "isValueSet", publicName: "isValueSet", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { value: "valueChange", digitNumber: "digitNumberChange", isValueSet: "isValueSetChange", prevRequest: "prevRequest", nextRequest: "nextRequest", nonDigitKeyPressed: "nonDigitKeyPressed", inputControlClick: "inputControlClick", touched: "touched" }, viewQueries: [{ propertyName: "timePickerInput", first: true, predicate: ["timePickerInput"], descendants: true, isSignal: true }], ngImport: i0, template: "<div class=\"timePicker-fieldset-group-textfield\">\n\t<label luFormLabel class=\"pr-u-mask\" [attr.id]=\"`${inputId}-label`\" [attr.for]=\"`${inputId}-input`\">{{ label() }}</label>\n\t<div class=\"timePicker-fieldset-group-textfield\">\n\t\t<input\n\t\t\t#timePickerInput\n\t\t\ttype=\"text\"\n\t\t\tluInput\n\t\t\tluInputStandalone\n\t\t\tinputmode=\"numeric\"\n\t\t\t[attr.id]=\"inputId + '-input'\"\n\t\t\tclass=\"timePicker-fieldset-group-textfield-input\"\n\t\t\t[attr.aria-labelledby]=\"inputId + '-label'\"\n\t\t\tautocomplete=\"off\"\n\t\t\t[value]=\"currentValue()\"\n\t\t\t(input)=\"keysInputHandler($event)\"\n\t\t\t(click)=\"clickHandler($event)\"\n\t\t\t(keydown)=\"keydownHandler($event)\"\n\t\t\t(blur)=\"touched.emit()\"\n\t\t\t(focus)=\"timePickerInput.select()\"\n\t\t\t[style]=\"'--components-timepicker-input-digits:' + digitNumber()\"\n\t\t/>\n\t\t<span aria-hidden=\"true\" class=\"timePicker-fieldset-group-textfield-display\" [attr.data-content-before]=\"valueLabel()\"></span>\n\t</div>\n\t@if (displayArrows()) {\n\t\t<button class=\"timePicker-fieldset-group-stepper\" type=\"button\" tabindex=\"-1\" aria-hidden=\"true\" luRepeatOnHold (hold)=\"up()\">\n\t\t\t<span aria-hidden=\"true\" class=\"lucca-icon icon-northArrow\"></span>\n\t\t\t<span class=\"pr-u-mask\">\u2212</span>\n\t\t</button>\n\t\t<button class=\"timePicker-fieldset-group-stepper\" type=\"button\" tabindex=\"-1\" aria-hidden=\"true\" luRepeatOnHold (hold)=\"down()\">\n\t\t\t<span aria-hidden=\"true\" class=\"lucca-icon icon-southArrow\"></span>\n\t\t\t<span class=\"pr-u-mask\">+</span>\n\t\t</button>\n\t}\n</div>\n", dependencies: [{ kind: "directive", type: RepeatOnHoldDirective, selector: "[luRepeatOnHold]", outputs: ["hold"] }, { kind: "directive", type: InputDirective, selector: "[luInput]", inputs: ["luInputStandalone", "luInputLabelledBy", "luInputDescribedBy"] }, { kind: "component", type: FormLabelComponent, selector: "label[luFormLabel], legend[luFormLabel]", inputs: ["intl", "required", "error", "tooltip", "tag", "size", "counterStatus", "counterMax", "counterId"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
372
372
  }
373
373
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.4", ngImport: i0, type: TimePickerPartComponent, decorators: [{
374
374
  type: Component,