@lucca-front/ng 21.1.0-rc.0 → 21.1.0-rc.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (159) hide show
  1. package/fesm2022/lucca-front-ng-a11y.mjs +6 -6
  2. package/fesm2022/lucca-front-ng-a11y.mjs.map +1 -1
  3. package/fesm2022/lucca-front-ng-api.mjs +3 -3
  4. package/fesm2022/lucca-front-ng-api.mjs.map +1 -1
  5. package/fesm2022/lucca-front-ng-box.mjs +1 -1
  6. package/fesm2022/lucca-front-ng-box.mjs.map +1 -1
  7. package/fesm2022/lucca-front-ng-breadcrumbs.mjs +5 -5
  8. package/fesm2022/lucca-front-ng-breadcrumbs.mjs.map +1 -1
  9. package/fesm2022/lucca-front-ng-bubble-icon.mjs +51 -0
  10. package/fesm2022/lucca-front-ng-bubble-icon.mjs.map +1 -0
  11. package/fesm2022/lucca-front-ng-bubble-illustration.mjs +135 -0
  12. package/fesm2022/lucca-front-ng-bubble-illustration.mjs.map +1 -0
  13. package/fesm2022/lucca-front-ng-button.mjs +1 -98
  14. package/fesm2022/lucca-front-ng-button.mjs.map +1 -1
  15. package/fesm2022/lucca-front-ng-callout.mjs +7 -7
  16. package/fesm2022/lucca-front-ng-callout.mjs.map +1 -1
  17. package/fesm2022/lucca-front-ng-chip.mjs +6 -6
  18. package/fesm2022/lucca-front-ng-chip.mjs.map +1 -1
  19. package/fesm2022/lucca-front-ng-clear.mjs +6 -6
  20. package/fesm2022/lucca-front-ng-clear.mjs.map +1 -1
  21. package/fesm2022/lucca-front-ng-color.mjs +28 -0
  22. package/fesm2022/lucca-front-ng-color.mjs.map +1 -0
  23. package/fesm2022/lucca-front-ng-container.mjs +2 -2
  24. package/fesm2022/lucca-front-ng-container.mjs.map +1 -1
  25. package/fesm2022/lucca-front-ng-core-select-user.mjs +12 -12
  26. package/fesm2022/lucca-front-ng-core-select-user.mjs.map +1 -1
  27. package/fesm2022/lucca-front-ng-core-select.mjs +67 -48
  28. package/fesm2022/lucca-front-ng-core-select.mjs.map +1 -1
  29. package/fesm2022/lucca-front-ng-core.mjs +15 -75
  30. package/fesm2022/lucca-front-ng-core.mjs.map +1 -1
  31. package/fesm2022/lucca-front-ng-data-table.mjs +8 -8
  32. package/fesm2022/lucca-front-ng-data-table.mjs.map +1 -1
  33. package/fesm2022/lucca-front-ng-date.mjs +63 -64
  34. package/fesm2022/lucca-front-ng-date.mjs.map +1 -1
  35. package/fesm2022/lucca-front-ng-date2.mjs +41 -45
  36. package/fesm2022/lucca-front-ng-date2.mjs.map +1 -1
  37. package/fesm2022/lucca-front-ng-department.mjs +7 -7
  38. package/fesm2022/lucca-front-ng-department.mjs.map +1 -1
  39. package/fesm2022/lucca-front-ng-dialog.mjs +31 -8
  40. package/fesm2022/lucca-front-ng-dialog.mjs.map +1 -1
  41. package/fesm2022/lucca-front-ng-empty-state.mjs +52 -10
  42. package/fesm2022/lucca-front-ng-empty-state.mjs.map +1 -1
  43. package/fesm2022/lucca-front-ng-establishment.mjs +10 -10
  44. package/fesm2022/lucca-front-ng-establishment.mjs.map +1 -1
  45. package/fesm2022/lucca-front-ng-file-upload.mjs +40 -34
  46. package/fesm2022/lucca-front-ng-file-upload.mjs.map +1 -1
  47. package/fesm2022/lucca-front-ng-filter-pills.mjs +14 -13
  48. package/fesm2022/lucca-front-ng-filter-pills.mjs.map +1 -1
  49. package/fesm2022/lucca-front-ng-form-field.mjs +9 -63
  50. package/fesm2022/lucca-front-ng-form-field.mjs.map +1 -1
  51. package/fesm2022/lucca-front-ng-form.mjs +2 -2
  52. package/fesm2022/lucca-front-ng-form.mjs.map +1 -1
  53. package/fesm2022/lucca-front-ng-formly.mjs +4 -4
  54. package/fesm2022/lucca-front-ng-formly.mjs.map +1 -1
  55. package/fesm2022/lucca-front-ng-forms-phone-number-input.mjs +8 -9
  56. package/fesm2022/lucca-front-ng-forms-phone-number-input.mjs.map +1 -1
  57. package/fesm2022/lucca-front-ng-forms-rich-text-input.mjs +48 -48
  58. package/fesm2022/lucca-front-ng-forms-rich-text-input.mjs.map +1 -1
  59. package/fesm2022/lucca-front-ng-forms.mjs +119 -98
  60. package/fesm2022/lucca-front-ng-forms.mjs.map +1 -1
  61. package/fesm2022/lucca-front-ng-horizontal-navigation.mjs +2 -2
  62. package/fesm2022/lucca-front-ng-horizontal-navigation.mjs.map +1 -1
  63. package/fesm2022/lucca-front-ng-icon.mjs +1 -27
  64. package/fesm2022/lucca-front-ng-icon.mjs.map +1 -1
  65. package/fesm2022/lucca-front-ng-index-table.mjs +3 -3
  66. package/fesm2022/lucca-front-ng-index-table.mjs.map +1 -1
  67. package/fesm2022/lucca-front-ng-input.mjs +7 -7
  68. package/fesm2022/lucca-front-ng-input.mjs.map +1 -1
  69. package/fesm2022/lucca-front-ng-link.mjs +6 -6
  70. package/fesm2022/lucca-front-ng-link.mjs.map +1 -1
  71. package/fesm2022/lucca-front-ng-listbox.mjs +1 -1
  72. package/fesm2022/lucca-front-ng-listbox.mjs.map +1 -1
  73. package/fesm2022/lucca-front-ng-listing.mjs +1 -1
  74. package/fesm2022/lucca-front-ng-listing.mjs.map +1 -1
  75. package/fesm2022/lucca-front-ng-main-layout.mjs +2 -2
  76. package/fesm2022/lucca-front-ng-main-layout.mjs.map +1 -1
  77. package/fesm2022/lucca-front-ng-mobile-push.mjs +6 -6
  78. package/fesm2022/lucca-front-ng-mobile-push.mjs.map +1 -1
  79. package/fesm2022/lucca-front-ng-modal.mjs +1 -1
  80. package/fesm2022/lucca-front-ng-modal.mjs.map +1 -1
  81. package/fesm2022/lucca-front-ng-multi-select.mjs +29 -29
  82. package/fesm2022/lucca-front-ng-multi-select.mjs.map +1 -1
  83. package/fesm2022/lucca-front-ng-option.mjs +26 -24
  84. package/fesm2022/lucca-front-ng-option.mjs.map +1 -1
  85. package/fesm2022/lucca-front-ng-pagination.mjs +5 -5
  86. package/fesm2022/lucca-front-ng-pagination.mjs.map +1 -1
  87. package/fesm2022/lucca-front-ng-plg-push.mjs +5 -5
  88. package/fesm2022/lucca-front-ng-plg-push.mjs.map +1 -1
  89. package/fesm2022/lucca-front-ng-popover2.mjs +13 -13
  90. package/fesm2022/lucca-front-ng-popover2.mjs.map +1 -1
  91. package/fesm2022/lucca-front-ng-read-more.mjs +23 -21
  92. package/fesm2022/lucca-front-ng-read-more.mjs.map +1 -1
  93. package/fesm2022/lucca-front-ng-resource-card.mjs +2 -2
  94. package/fesm2022/lucca-front-ng-resource-card.mjs.map +1 -1
  95. package/fesm2022/lucca-front-ng-simple-select.mjs +18 -27
  96. package/fesm2022/lucca-front-ng-simple-select.mjs.map +1 -1
  97. package/fesm2022/lucca-front-ng-skeleton.mjs +2 -2
  98. package/fesm2022/lucca-front-ng-skeleton.mjs.map +1 -1
  99. package/fesm2022/lucca-front-ng-sortable-list.mjs +1 -1
  100. package/fesm2022/lucca-front-ng-sortable-list.mjs.map +1 -1
  101. package/fesm2022/lucca-front-ng-tag.mjs +1 -1
  102. package/fesm2022/lucca-front-ng-tag.mjs.map +1 -1
  103. package/fesm2022/lucca-front-ng-time.mjs +13 -13
  104. package/fesm2022/lucca-front-ng-time.mjs.map +1 -1
  105. package/fesm2022/lucca-front-ng-toast.mjs +5 -5
  106. package/fesm2022/lucca-front-ng-toast.mjs.map +1 -1
  107. package/fesm2022/lucca-front-ng-tooltip.mjs +8 -6
  108. package/fesm2022/lucca-front-ng-tooltip.mjs.map +1 -1
  109. package/fesm2022/lucca-front-ng-tree-select.mjs +1 -1
  110. package/fesm2022/lucca-front-ng-tree-select.mjs.map +1 -1
  111. package/fesm2022/lucca-front-ng-user-popover.mjs +6 -6
  112. package/fesm2022/lucca-front-ng-user-popover.mjs.map +1 -1
  113. package/fesm2022/lucca-front-ng-user.mjs +11 -11
  114. package/fesm2022/lucca-front-ng-user.mjs.map +1 -1
  115. package/fesm2022/lucca-front-ng-vertical-navigation.mjs +2 -2
  116. package/fesm2022/lucca-front-ng-vertical-navigation.mjs.map +1 -1
  117. package/package.json +17 -3
  118. package/schematics/lib/local-deps/package-lock.json +2 -0
  119. package/schematics/lib/local-deps/package.json +1 -2
  120. package/types/lucca-front-ng-a11y.d.ts +3 -3
  121. package/types/lucca-front-ng-breadcrumbs.d.ts +9 -9
  122. package/types/lucca-front-ng-bubble-icon.d.ts +20 -0
  123. package/types/lucca-front-ng-bubble-illustration.d.ts +24 -0
  124. package/types/lucca-front-ng-button.d.ts +1 -40
  125. package/types/lucca-front-ng-callout.d.ts +2 -2
  126. package/types/lucca-front-ng-chip.d.ts +2 -2
  127. package/types/lucca-front-ng-clear.d.ts +2 -2
  128. package/types/lucca-front-ng-color.d.ts +12 -0
  129. package/types/lucca-front-ng-core-select.d.ts +21 -17
  130. package/types/lucca-front-ng-core.d.ts +25 -19
  131. package/types/lucca-front-ng-data-table.d.ts +2 -2
  132. package/types/lucca-front-ng-date.d.ts +5 -5
  133. package/types/lucca-front-ng-date2.d.ts +7 -7
  134. package/types/lucca-front-ng-department.d.ts +2 -2
  135. package/types/lucca-front-ng-dialog.d.ts +12 -5
  136. package/types/lucca-front-ng-empty-state.d.ts +6 -4
  137. package/types/lucca-front-ng-establishment.d.ts +2 -2
  138. package/types/lucca-front-ng-file-upload.d.ts +18 -8
  139. package/types/lucca-front-ng-filter-pills.d.ts +6 -5
  140. package/types/lucca-front-ng-form-field.d.ts +5 -26
  141. package/types/lucca-front-ng-forms-phone-number-input.d.ts +0 -1
  142. package/types/lucca-front-ng-forms-rich-text-input.d.ts +14 -16
  143. package/types/lucca-front-ng-forms.d.ts +40 -23
  144. package/types/lucca-front-ng-icon.d.ts +1 -17
  145. package/types/lucca-front-ng-input.d.ts +2 -2
  146. package/types/lucca-front-ng-link.d.ts +2 -2
  147. package/types/lucca-front-ng-mobile-push.d.ts +2 -2
  148. package/types/lucca-front-ng-multi-select.d.ts +26 -24
  149. package/types/lucca-front-ng-option.d.ts +8 -8
  150. package/types/lucca-front-ng-pagination.d.ts +2 -2
  151. package/types/lucca-front-ng-plg-push.d.ts +2 -2
  152. package/types/lucca-front-ng-popover2.d.ts +4 -4
  153. package/types/lucca-front-ng-read-more.d.ts +9 -9
  154. package/types/lucca-front-ng-simple-select.d.ts +5 -4
  155. package/types/lucca-front-ng-time.d.ts +6 -6
  156. package/types/lucca-front-ng-toast.d.ts +2 -2
  157. package/types/lucca-front-ng-tooltip.d.ts +5 -3
  158. package/types/lucca-front-ng-user-popover.d.ts +6 -7
  159. package/types/lucca-front-ng-user.d.ts +4 -4
@@ -1 +1 @@
1
- {"version":3,"file":"lucca-front-ng-data-table.mjs","sources":["../../../packages/ng/data-table/data-table.token.ts","../../../packages/ng/data-table/data-table-body/data-table-body.token.ts","../../../packages/ng/data-table/data-table-body/data-table-body.component.ts","../../../packages/ng/data-table/data-table-body/data-table-body.component.html","../../../packages/ng/data-table/data-table-foot/data-table-foot.token.ts","../../../packages/ng/data-table/data-table-head/data-table-head.token.ts","../../../packages/ng/data-table/data-table-row/data-table-row.token.ts","../../../packages/ng/data-table/base-data-table-cell.ts","../../../packages/ng/data-table/data-table-cell.token.ts","../../../packages/ng/data-table/data-table-cell-header/data-table-cell-header.component.ts","../../../packages/ng/data-table/data-table-cell-header/data-table-cell-header.component.html","../../../packages/ng/data-table/data-table-cell/data-table-cell.component.ts","../../../packages/ng/data-table/data-table-foot/data-table-foot.component.ts","../../../packages/ng/data-table/data-table-head/data-table-head.component.ts","../../../packages/ng/data-table/translations.ts","../../../packages/ng/data-table/data-table.translate.ts","../../../packages/ng/data-table/data-table-row/data-table-row.component.ts","../../../packages/ng/data-table/data-table-row/data-table-row.component.html","../../../packages/ng/data-table/data-table.component.ts","../../../packages/ng/data-table/data-table.component.html","../../../packages/ng/data-table/lucca-front-ng-data-table.ts"],"sourcesContent":["import { InjectionToken } from '@angular/core';\nimport { DataTableComponent } from './data-table.component';\n\nexport const LU_DATA_TABLE_INSTANCE = new InjectionToken<DataTableComponent>('LU_DATA_TABLE_INSTANCE');\n","import { InjectionToken } from '@angular/core';\nimport { DataTableBodyComponent } from './data-table-body.component';\n\nexport const LU_DATA_TABLE_BODY_INSTANCE = new InjectionToken<DataTableBodyComponent>('LU_DATA_TABLE_BODY_INSTANCE');\n","import { ChangeDetectionStrategy, Component, computed, forwardRef, inject, input, model, ViewEncapsulation } from '@angular/core';\nimport { ButtonComponent } from '@lucca-front/ng/button';\nimport { PortalContent, PortalDirective } from '@lucca-front/ng/core';\nimport { IconComponent } from '@lucca-front/ng/icon';\nimport { LU_DATA_TABLE_INSTANCE } from '../data-table.token';\nimport { LU_DATA_TABLE_BODY_INSTANCE } from './data-table-body.token';\n\n@Component({\n\t// eslint-disable-next-line @angular-eslint/component-selector\n\tselector: 'tbody[luDataTableBody]',\n\ttemplateUrl: `./data-table-body.component.html`,\n\tencapsulation: ViewEncapsulation.None,\n\thost: {\n\t\tclass: 'dataTable-body',\n\t},\n\timports: [ButtonComponent, PortalDirective, IconComponent],\n\tproviders: [\n\t\t{\n\t\t\tprovide: LU_DATA_TABLE_BODY_INSTANCE,\n\t\t\tuseExisting: forwardRef(() => DataTableBodyComponent),\n\t\t},\n\t],\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class DataTableBodyComponent {\n\tgroup = input<PortalContent | null>(null);\n\tgroupButtonAlt = input<string | null>(null);\n\n\texpanded = model(false);\n\n\texpandedToggle() {\n\t\tthis.expanded.set(!this.expanded());\n\t}\n\n\tprotected tableRef = inject(LU_DATA_TABLE_INSTANCE, { optional: true });\n\n\tcolspan = computed(() => this.tableRef?.cols().length + (this.tableRef?.selectable() ? 1 : 0));\n}\n","@if (group() && groupButtonAlt()) {\n\t<tr class=\"dataTable-body-row mod-group\">\n\t\t<td class=\"dataTable-body-row-cell\" [attr.colspan]=\"colspan()\">\n\t\t\t<div class=\"dataTable-body-row-cell-expand\">\n\t\t\t\t<button\n\t\t\t\t\ttype=\"button\"\n\t\t\t\t\tclass=\"dataTable-body-row-cell-expand-button\"\n\t\t\t\t\tluButton\n\t\t\t\t\tdisclosure\n\t\t\t\t\t[attr.aria-expanded]=\"expanded()\"\n\t\t\t\t\t(click)=\"expandedToggle()\"\n\t\t\t\t>\n\t\t\t\t\t<lu-icon icon=\"arrowChevronTop\" [alt]=\"groupButtonAlt()\" />\n\t\t\t\t</button>\n\t\t\t\t<ng-container *luPortal=\"group()\" />\n\t\t\t</div>\n\t\t</td>\n\t</tr>\n}\n<ng-content />\n","import { InjectionToken } from '@angular/core';\nimport { DataTableFootComponent } from './data-table-foot.component';\n\nexport const LU_DATA_TABLE_FOOT_INSTANCE = new InjectionToken<DataTableFootComponent>('LU_DATA_TABLE_FOOT_INSTANCE');\n","import { InjectionToken } from '@angular/core';\nimport { DataTableHeadComponent } from './data-table-head.component';\n\nexport const LU_DATA_TABLE_HEAD_INSTANCE = new InjectionToken<DataTableHeadComponent>('LU_DATA_TABLE_HEAD_INSTANCE');\n","import { InjectionToken } from '@angular/core';\nimport { DataTableRowComponent } from './data-table-row.component';\n\nexport const LU_DATA_TABLE_ROW_INSTANCE = new InjectionToken<DataTableRowComponent>('LU_DATA_TABLE_ROW_INSTANCE');\n","import { booleanAttribute, ChangeDetectionStrategy, Component, computed, inject, input } from '@angular/core';\nimport { LU_DATA_TABLE_BODY_INSTANCE } from './data-table-body/data-table-body.token';\nimport { LU_DATA_TABLE_FOOT_INSTANCE } from './data-table-foot/data-table-foot.token';\nimport { LU_DATA_TABLE_HEAD_INSTANCE } from './data-table-head/data-table-head.token';\nimport { LU_DATA_TABLE_ROW_INSTANCE } from './data-table-row/data-table-row.token';\nimport { LU_DATA_TABLE_INSTANCE } from './data-table.token';\n\n@Component({\n\tselector: 'lu-base-data-table-cell',\n\ttemplate: '',\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport abstract class BaseDataTableCell {\n\ttableRef = inject(LU_DATA_TABLE_INSTANCE, { optional: true });\n\tbodyRef = inject(LU_DATA_TABLE_BODY_INSTANCE, { optional: true });\n\theadRef = inject(LU_DATA_TABLE_HEAD_INSTANCE, { optional: true });\n\tfootRef = inject(LU_DATA_TABLE_FOOT_INSTANCE, { optional: true });\n\trowRef = inject(LU_DATA_TABLE_ROW_INSTANCE, { optional: true });\n\n\teditable = input(false, { transform: booleanAttribute });\n\talign = input<null | 'start' | 'center' | 'end'>(null);\n\n\tisStickyStart = computed(() => {\n\t\treturn this.position() <= this.tableRef?.stickyColsStart() - 1;\n\t});\n\n\tisStickyEnd = computed(() => {\n\t\treturn this.position() >= this.rowRef?.cells().length - this.tableRef?.stickyColsEnd();\n\t});\n\n\tposition = computed(() => {\n\t\treturn this.rowRef?.cells().indexOf(this);\n\t});\n}\n","import { InjectionToken } from '@angular/core';\nimport { BaseDataTableCell } from './base-data-table-cell';\n\nexport const LU_DATA_TABLE_CELL_INSTANCE = new InjectionToken<BaseDataTableCell>('LU_DATA_TABLE_CELL_INSTANCE');\n","import { NgTemplateOutlet } from '@angular/common';\nimport { AfterContentInit, ChangeDetectionStrategy, Component, computed, ElementRef, forwardRef, inject, input, model, ViewEncapsulation } from '@angular/core';\nimport { toSignal } from '@angular/core/rxjs-interop';\nimport { FormsModule } from '@angular/forms';\nimport { ButtonComponent } from '@lucca-front/ng/button';\nimport { IconComponent } from '@lucca-front/ng/icon';\nimport { ReplaySubject } from 'rxjs';\nimport { BaseDataTableCell } from '../base-data-table-cell';\nimport { LU_DATA_TABLE_CELL_INSTANCE } from '../data-table-cell.token';\n\n@Component({\n\t// eslint-disable-next-line @angular-eslint/component-selector\n\tselector: 'th[luDataTableCell]',\n\ttemplateUrl: './data-table-cell-header.component.html',\n\tstyleUrl: './data-table-cell-header.component.scss',\n\tencapsulation: ViewEncapsulation.None,\n\thost: {\n\t\t'[class.dataTable-body-row-cell]': 'bodyRef !== null',\n\t\t'[class.dataTable-head-row-cell]': 'headRef !== null',\n\t\t'[class.dataTable-foot-row-cell]': 'footRef !== null',\n\t\t'[class.mod-alignStart]': 'align() === \"start\"',\n\t\t'[class.mod-alignCenter]': 'align() === \"center\"',\n\t\t'[class.mod-alignEnd]': 'align() === \"end\"',\n\t\t'[class.mod-stickyColumn]': 'isStickyStart() || isStickyEnd()',\n\t\t'[attr.aria-sort]': 'sort()',\n\t\t'[class.mod-editable]': 'editable()',\n\t\t'[attr.scope]': 'bodyRef !== null ? \"row\" : \"col\"',\n\t\t'[style.--dataTable-layoutFixed-width]': 'inlineSize() || fixedWidth()',\n\t\t'[style.insetInlineStart]': 'insetInlineStart()',\n\t\t'[style.insetInlineEnd]': 'insetInlineEnd()',\n\t},\n\timports: [NgTemplateOutlet, ButtonComponent, IconComponent, FormsModule],\n\tproviders: [\n\t\t{\n\t\t\tprovide: LU_DATA_TABLE_CELL_INSTANCE,\n\t\t\tuseExisting: forwardRef(() => DataTableRowCellHeaderComponent),\n\t\t},\n\t],\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class DataTableRowCellHeaderComponent extends BaseDataTableCell implements AfterContentInit {\n\telementRef = inject<ElementRef<HTMLTableCellElement>>(ElementRef);\n\n\tsort = model<null | 'none' | 'ascending' | 'descending'>(null);\n\tfixedWidth = input<string | null>(null);\n\tinlineSize = input<string | null>(null);\n\n\tinsetInlineStart = computed(() => {\n\t\tif (!this.isStickyStart() || !this.headRef) {\n\t\t\treturn '';\n\t\t}\n\t\treturn (\n\t\t\tthis.headRef\n\t\t\t\t.cols()\n\t\t\t\t.slice(0, this.position())\n\t\t\t\t.reduce((acc, col) => {\n\t\t\t\t\treturn acc + col.inlineSizePx();\n\t\t\t\t}, 0) + 'px'\n\t\t);\n\t});\n\n\tinsetInlineEnd = computed(() => {\n\t\tif (!this.isStickyEnd() || !this.headRef) {\n\t\t\treturn '';\n\t\t}\n\t\treturn (\n\t\t\tthis.headRef\n\t\t\t\t.cols()\n\t\t\t\t.slice(this.position() + 1)\n\t\t\t\t.reduce((acc, col) => {\n\t\t\t\t\treturn acc + col.inlineSizePx();\n\t\t\t\t}, 0) + 'px'\n\t\t);\n\t});\n\n\t#inlineSizePx$ = new ReplaySubject<number>();\n\n\tinlineSizePx = toSignal(this.#inlineSizePx$);\n\n\tngAfterContentInit(): void {\n\t\tnew ResizeObserver(() => {\n\t\t\tthis.#inlineSizePx$.next(this.elementRef.nativeElement.clientWidth);\n\t\t}).observe(this.elementRef.nativeElement);\n\t}\n}\n","@if (sort()) {\n\t<button luButton type=\"button\" class=\"tableSortable\" [(ngModel)]=\"sort\">\n\t\t<ng-container *ngTemplateOutlet=\"contentTpl\" />\n\t\t<span class=\"tableSortable-arrows\">\n\t\t\t<lu-icon icon=\"chevronTop\" class=\"tableSortable-arrows-ascending\" />\n\t\t\t<lu-icon icon=\"chevronBottom\" class=\"tableSortable-arrows-descending\" />\n\t\t</span>\n\t</button>\n} @else {\n\t<ng-container *ngTemplateOutlet=\"contentTpl\" />\n}\n\n<ng-template #contentTpl><ng-content /></ng-template>\n","import { booleanAttribute, ChangeDetectionStrategy, Component, computed, forwardRef, input, ViewEncapsulation } from '@angular/core';\n\nimport { BaseDataTableCell } from '../base-data-table-cell';\nimport { LU_DATA_TABLE_CELL_INSTANCE } from '../data-table-cell.token';\n\n@Component({\n\t// eslint-disable-next-line @angular-eslint/component-selector\n\tselector: 'td[luDataTableCell]',\n\ttemplate: '<ng-content />',\n\tencapsulation: ViewEncapsulation.None,\n\thost: {\n\t\t'[class.dataTable-body-row-cell]': 'bodyRef !== null',\n\t\t'[class.dataTable-head-row-cell]': 'headRef !== null',\n\t\t'[class.dataTable-foot-row-cell]': 'footRef !== null',\n\t\t'[class.mod-alignStart]': 'align() === \"start\" || alignCol() === \"start\"',\n\t\t'[class.mod-alignCenter]': 'align() === \"center\" || alignCol() === \"center\"',\n\t\t'[class.mod-alignEnd]': 'align() === \"end\" || alignCol() === \"end\"',\n\t\t'[class.mod-editable]': 'editable()',\n\t\t'[class.mod-actions]': 'actions()',\n\t\t'[class.mod-stickyColumn]': 'isSticky()',\n\t\t'[style.insetInlineStart]': 'insetInlineStart()',\n\t\t'[style.insetInlineEnd]': 'insetInlineEnd()',\n\t},\n\tproviders: [\n\t\t{\n\t\t\tprovide: LU_DATA_TABLE_CELL_INSTANCE,\n\t\t\tuseExisting: forwardRef(() => DataTableRowCellComponent),\n\t\t},\n\t],\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class DataTableRowCellComponent extends BaseDataTableCell {\n\tactions = input(false, { transform: booleanAttribute });\n\n\tisSticky = computed(() => {\n\t\treturn this.isStickyStart() || this.isStickyEnd();\n\t});\n\n\talignCol = computed(() => {\n\t\treturn this.tableRef?.header().cols()?.[this.position()]?.align();\n\t});\n\n\tinsetInlineStart = computed(() => {\n\t\treturn this.tableRef?.header()?.cols()?.[this.position()]?.insetInlineStart();\n\t});\n\n\tinsetInlineEnd = computed(() => {\n\t\treturn this.tableRef?.header()?.cols()?.[this.position()]?.insetInlineEnd();\n\t});\n}\n","import { ChangeDetectionStrategy, Component, forwardRef, ViewEncapsulation } from '@angular/core';\nimport { LU_DATA_TABLE_FOOT_INSTANCE } from './data-table-foot.token';\n\n@Component({\n\t// eslint-disable-next-line @angular-eslint/component-selector\n\tselector: 'tfoot[luDataTableFoot]',\n\ttemplate: '<ng-content />',\n\tencapsulation: ViewEncapsulation.None,\n\thost: {\n\t\tclass: 'dataTable-foot',\n\t},\n\tproviders: [\n\t\t{\n\t\t\tprovide: LU_DATA_TABLE_FOOT_INSTANCE,\n\t\t\tuseExisting: forwardRef(() => DataTableFootComponent),\n\t\t},\n\t],\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class DataTableFootComponent {}\n","import { booleanAttribute, ChangeDetectionStrategy, Component, contentChildren, forwardRef, input, signal, ViewEncapsulation } from '@angular/core';\n\nimport { DataTableRowCellHeaderComponent } from '../data-table-cell-header/data-table-cell-header.component';\nimport { LU_DATA_TABLE_HEAD_INSTANCE } from './data-table-head.token';\n\n@Component({\n\t// eslint-disable-next-line @angular-eslint/component-selector\n\tselector: 'thead[luDataTableHead]',\n\ttemplate: '<ng-content />',\n\tstyleUrl: './data-table-head.component.scss',\n\tencapsulation: ViewEncapsulation.None,\n\thost: {\n\t\tclass: 'dataTable-head',\n\t\t'[class.mod-sticky]': 'sticky()',\n\t\t'[class.is-firstBodyRowVisible]': 'isFirstVisible()',\n\t},\n\tproviders: [\n\t\t{\n\t\t\tprovide: LU_DATA_TABLE_HEAD_INSTANCE,\n\t\t\tuseExisting: forwardRef(() => DataTableHeadComponent),\n\t\t},\n\t],\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class DataTableHeadComponent {\n\treadonly sticky = input(false, { transform: booleanAttribute });\n\treadonly isFirstVisible = signal(false);\n\n\tcols = contentChildren(DataTableRowCellHeaderComponent, { descendants: true });\n}\n","export const Translations = {\n\t'nl-BE': {\n\t\tmove: 'Verplaatsen',\n\t},\n\tfr: {\n\t\tmove: 'Déplacer',\n\t},\n\tde: {\n\t\tmove: 'Verschieben',\n\t},\n\ten: {\n\t\tmove: 'Move',\n\t},\n\tes: {\n\t\tmove: 'Desplazar',\n\t},\n\tit: {\n\t\tmove: 'Spostare',\n\t},\n\tnl: {\n\t\tmove: 'Verplaatsen',\n\t},\n\tpt: {\n\t\tmove: 'Mover',\n\t},\n};\n","import { InjectionToken } from '@angular/core';\nimport { LuTranslation } from '@lucca-front/ng/core';\nimport { Translations } from './translations';\n\nexport const LU_DATA_TABLE_TRANSLATIONS = new InjectionToken('LuDataTableTranslations', {\n\tfactory: () => luDataTableTranslations,\n});\n\nexport interface LuDataTableTranslations {\n\tmove: string;\n}\n\nexport const luDataTableTranslations: LuTranslation<LuDataTableTranslations> = Translations;\n","import { CdkDragHandle } from '@angular/cdk/drag-drop';\nimport { NgTemplateOutlet } from '@angular/common';\nimport { booleanAttribute, ChangeDetectionStrategy, Component, contentChildren, ElementRef, forwardRef, inject, input, model, ViewEncapsulation } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { getIntl } from '@lucca-front/ng/core';\nimport { FormFieldComponent } from '@lucca-front/ng/form-field';\nimport { CheckboxInputComponent } from '@lucca-front/ng/forms';\nimport { IconComponent } from '@lucca-front/ng/icon';\nimport { LU_DATA_TABLE_BODY_INSTANCE } from '../data-table-body/data-table-body.token';\nimport { LU_DATA_TABLE_CELL_INSTANCE } from '../data-table-cell.token';\nimport { LU_DATA_TABLE_FOOT_INSTANCE } from '../data-table-foot/data-table-foot.token';\nimport { LU_DATA_TABLE_HEAD_INSTANCE } from '../data-table-head/data-table-head.token';\nimport { LU_DATA_TABLE_INSTANCE } from '../data-table.token';\nimport { LU_DATA_TABLE_TRANSLATIONS } from '../data-table.translate';\nimport { LU_DATA_TABLE_ROW_INSTANCE } from './data-table-row.token';\n\n@Component({\n\t// eslint-disable-next-line @angular-eslint/component-selector\n\tselector: 'tr[luDataTableRow]',\n\ttemplateUrl: './data-table-row.component.html',\n\tencapsulation: ViewEncapsulation.None,\n\thost: {\n\t\t'[class.dataTable-body-row]': 'bodyRef !== null',\n\t\t'[class.dataTable-head-row]': 'headRef !== null',\n\t\t'[class.dataTable-foot-row]': 'footRef !== null',\n\t\t'[class.mod-selectable]': 'tableRef.selectable() ?? false',\n\t\t'[class.mod-draggable]': 'tableRef.drag() ?? false',\n\t},\n\timports: [CheckboxInputComponent, FormFieldComponent, FormsModule, NgTemplateOutlet, IconComponent, CdkDragHandle],\n\tproviders: [\n\t\t{\n\t\t\tprovide: LU_DATA_TABLE_ROW_INSTANCE,\n\t\t\tuseExisting: forwardRef(() => DataTableRowComponent),\n\t\t},\n\t],\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class DataTableRowComponent {\n\tintl = getIntl(LU_DATA_TABLE_TRANSLATIONS);\n\tbodyRef = inject(LU_DATA_TABLE_BODY_INSTANCE, { optional: true });\n\theadRef = inject(LU_DATA_TABLE_HEAD_INSTANCE, { optional: true });\n\tfootRef = inject(LU_DATA_TABLE_FOOT_INSTANCE, { optional: true });\n\n\telementRef = inject<ElementRef<Element>>(ElementRef);\n\n\tpublic readonly cells = contentChildren(LU_DATA_TABLE_CELL_INSTANCE);\n\n\tprotected tableRef = inject(LU_DATA_TABLE_INSTANCE, { optional: true });\n\n\tselected = model<boolean>(false);\n\treadonly selectedLabel = input<string | null>(null);\n\treadonly disabled = input(false, { transform: booleanAttribute });\n}\n","@if (tableRef.drag()) {\n\t<td class=\"dataTable-body-row-cell\" aria-hidden=\"true\">\n\t\t@if (bodyRef) {\n\t\t\t<span class=\"button dataTable-body-row-cell-drag\" cdkDragHandle>\n\t\t\t\t<lu-icon icon=\"dotsDrag\" [alt]=\"intl.move\" />\n\t\t\t</span>\n\t\t}\n\t</td>\n}\n\n@if (tableRef.selectable()) {\n\t@if (headRef) {\n\t\t<th class=\"dataTable-head-row-cell\" scope=\"col\"><ng-container *ngTemplateOutlet=\"input\" /></th>\n\t} @else {\n\t\t<td [class.dataTable-body-row-cell]=\"bodyRef !== null\" [class.dataTable-foot-row-cell]=\"footRef !== null\">\n\t\t\t<ng-container *ngTemplateOutlet=\"input\" />\n\t\t</td>\n\t}\n}\n<ng-content />\n\n<ng-template #input>\n\t@if (!footRef && selectedLabel()) {\n\t\t<lu-form-field [label]=\"selectedLabel()\" hiddenLabel>\n\t\t\t<lu-checkbox-input [(ngModel)]=\"selected\" [disabled]=\"disabled()\" />\n\t\t</lu-form-field>\n\t}\n</ng-template>\n","import {\n\tafterNextRender,\n\tbooleanAttribute,\n\tChangeDetectionStrategy,\n\tComponent,\n\tcomputed,\n\tcontentChild,\n\tcontentChildren,\n\tElementRef,\n\tforwardRef,\n\tinject,\n\tinput,\n\tnumberAttribute,\n\tOnInit,\n\tsignal,\n\tviewChild,\n\tViewEncapsulation,\n} from '@angular/core';\nimport { ResponsiveConfig, ɵeffectWithDeps } from '@lucca-front/ng/core';\nimport { DataTableHeadComponent } from './data-table-head/data-table-head.component';\nimport { DataTableRowComponent } from './data-table-row/data-table-row.component';\nimport { LU_DATA_TABLE_INSTANCE } from './data-table.token';\n\n@Component({\n\tselector: 'lu-data-table',\n\ttemplateUrl: './data-table.component.html',\n\tstyleUrl: './data-table.component.scss',\n\tencapsulation: ViewEncapsulation.None,\n\thost: {\n\t\tclass: 'dataTableWrapper',\n\t\t'[class.mod-nested]': 'this.nested()',\n\t\t'[class.mod-noOverflow]': 'this.noOverflow()',\n\t\t'(scroll)': 'scroll()',\n\t},\n\tproviders: [\n\t\t{\n\t\t\tprovide: LU_DATA_TABLE_INSTANCE,\n\t\t\tuseExisting: forwardRef(() => DataTableComponent),\n\t\t},\n\t],\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class DataTableComponent implements OnInit {\n\t#elementRef = inject<ElementRef<Element>>(ElementRef);\n\ttableRef = viewChild<ElementRef<Element>>('tableRef');\n\n\treadonly hover = input(false, { transform: booleanAttribute });\n\treadonly selectable = input(false, { transform: booleanAttribute });\n\treadonly layoutFixed = input(false, { transform: booleanAttribute });\n\treadonly cellBorder = input(false, { transform: booleanAttribute });\n\treadonly nested = input(false, { transform: booleanAttribute });\n\treadonly drag = input(false, { transform: booleanAttribute });\n\treadonly noOverflow = input(false, { transform: booleanAttribute });\n\n\treadonly responsive = input<ResponsiveConfig<'layoutFixed', true>>({});\n\n\treadonly verticalAlign = input<null | 'top' | 'middle' | 'bottom'>(null);\n\n\treadonly rows = contentChildren(DataTableRowComponent, { descendants: true });\n\treadonly header = contentChild(DataTableHeadComponent, { descendants: true });\n\n\treadonly stickyHeader = computed(() => this.header().sticky());\n\n\treadonly stickyColsStart = input(0, { transform: numberAttribute });\n\treadonly stickyColsEnd = input(0, { transform: numberAttribute });\n\n\tfirstColumnVisibleAfterColsStart = signal(true);\n\tlastColumnVisibleBeforeColsEnd = signal(false);\n\n\tfirstColumnVisible = signal(true);\n\tlastColumnVisible = signal(false);\n\n\tfirstRowVisible = signal(true);\n\tlastRowVisible = signal(false);\n\n\treadonly cols = computed(() => this.header().cols());\n\n\treadonly classMods = computed(() => {\n\t\treturn {\n\t\t\tdataTable: true,\n\t\t\t['mod-stickyHeader']: this.stickyHeader(),\n\t\t\t['mod-hover']: this.hover(),\n\t\t\t['mod-cellBorder']: this.cellBorder(),\n\t\t\t['mod-verticalAlignTop']: this.verticalAlign() === 'top',\n\t\t\t['mod-verticalAlignMiddle']: this.verticalAlign() === 'middle',\n\t\t\t['mod-verticalAlignBottom']: this.verticalAlign() === 'bottom',\n\t\t\t['mod-columnsOverflow']: this.stickyColsStart() || this.stickyColsEnd(),\n\t\t\t['is-firstColumnVisible']: this.stickyColsStart() || this.firstColumnVisible(),\n\t\t\t['is-lastColumnVisible']: this.stickyColsEnd() || this.lastColumnVisible(),\n\t\t\t['is-firstColumnVisibleAfterColsStart']: this.firstColumnVisibleAfterColsStart(),\n\t\t\t['is-lastColumnVisibleBeforeColsEnd']: this.lastColumnVisibleBeforeColsEnd(),\n\t\t\t['is-firstRowVisible']: this.firstRowVisible(),\n\t\t\t['is-lastRowVisible']: this.lastRowVisible(),\n\t\t\t['mod-layoutFixed']: this.layoutFixed(),\n\t\t\t...Object.entries(this.responsive()).reduce((acc, [key, value]) => {\n\t\t\t\treturn {\n\t\t\t\t\t...acc,\n\t\t\t\t\t[`mod-${key}`]: value,\n\t\t\t\t};\n\t\t\t}, {}),\n\t\t};\n\t});\n\n\tscroll() {\n\t\tthis.header()?.isFirstVisible.set(this.#elementRef.nativeElement.scrollTop === 0);\n\n\t\tthis.firstRowVisible.set(this.#elementRef.nativeElement.scrollTop === 0);\n\t\tthis.lastRowVisible.set(this.#elementRef.nativeElement.scrollTop >= this.#elementRef.nativeElement.scrollHeight - this.#elementRef.nativeElement.clientHeight);\n\n\t\tthis.firstColumnVisibleAfterColsStart.set(this.#elementRef.nativeElement.scrollLeft === 0);\n\t\tthis.lastColumnVisibleBeforeColsEnd.set(this.#elementRef.nativeElement.scrollLeft >= this.#elementRef.nativeElement.scrollWidth - this.#elementRef.nativeElement.clientWidth);\n\n\t\tthis.firstColumnVisible.set(this.#elementRef.nativeElement.scrollLeft === 0);\n\t\tthis.lastColumnVisible.set(this.#elementRef.nativeElement.scrollLeft >= this.#elementRef.nativeElement.scrollWidth - this.#elementRef.nativeElement.clientWidth);\n\t}\n\n\tconstructor() {\n\t\tɵeffectWithDeps([this.rows], () => this.scroll());\n\n\t\tafterNextRender(() => {\n\t\t\tthis.scroll();\n\t\t});\n\t}\n\n\tngOnInit(): void {\n\t\tnew ResizeObserver(() => {\n\t\t\tthis.scroll();\n\t\t}).observe(this.tableRef().nativeElement);\n\t}\n}\n","<div class=\"dataTableShadows\">\n\t<table [class]=\"classMods()\" #tableRef>\n\t\t<ng-content />\n\t</table>\n\t<div class=\"dataTableWrapper-pagination\">\n\t\t<ng-content select=\"[dataTablePagination]\" />\n\t</div>\n</div>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["ɵeffectWithDeps"],"mappings":"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"}
1
+ {"version":3,"file":"lucca-front-ng-data-table.mjs","sources":["../../../packages/ng/data-table/data-table.token.ts","../../../packages/ng/data-table/data-table-body/data-table-body.token.ts","../../../packages/ng/data-table/data-table-body/data-table-body.component.ts","../../../packages/ng/data-table/data-table-body/data-table-body.component.html","../../../packages/ng/data-table/data-table-foot/data-table-foot.token.ts","../../../packages/ng/data-table/data-table-head/data-table-head.token.ts","../../../packages/ng/data-table/data-table-row/data-table-row.token.ts","../../../packages/ng/data-table/base-data-table-cell.ts","../../../packages/ng/data-table/data-table-cell.token.ts","../../../packages/ng/data-table/data-table-cell-header/data-table-cell-header.component.ts","../../../packages/ng/data-table/data-table-cell-header/data-table-cell-header.component.html","../../../packages/ng/data-table/data-table-cell/data-table-cell.component.ts","../../../packages/ng/data-table/data-table-foot/data-table-foot.component.ts","../../../packages/ng/data-table/data-table-head/data-table-head.component.ts","../../../packages/ng/data-table/translations.ts","../../../packages/ng/data-table/data-table.translate.ts","../../../packages/ng/data-table/data-table-row/data-table-row.component.ts","../../../packages/ng/data-table/data-table-row/data-table-row.component.html","../../../packages/ng/data-table/data-table.component.ts","../../../packages/ng/data-table/data-table.component.html","../../../packages/ng/data-table/lucca-front-ng-data-table.ts"],"sourcesContent":["import { InjectionToken } from '@angular/core';\nimport { DataTableComponent } from './data-table.component';\n\nexport const LU_DATA_TABLE_INSTANCE = new InjectionToken<DataTableComponent>('LU_DATA_TABLE_INSTANCE');\n","import { InjectionToken } from '@angular/core';\nimport { DataTableBodyComponent } from './data-table-body.component';\n\nexport const LU_DATA_TABLE_BODY_INSTANCE = new InjectionToken<DataTableBodyComponent>('LU_DATA_TABLE_BODY_INSTANCE');\n","import { ChangeDetectionStrategy, Component, computed, forwardRef, inject, input, model, ViewEncapsulation } from '@angular/core';\nimport { ButtonComponent } from '@lucca-front/ng/button';\nimport { PortalContent, PortalDirective } from '@lucca-front/ng/core';\nimport { IconComponent } from '@lucca-front/ng/icon';\nimport { LU_DATA_TABLE_INSTANCE } from '../data-table.token';\nimport { LU_DATA_TABLE_BODY_INSTANCE } from './data-table-body.token';\n\n@Component({\n\t// eslint-disable-next-line @angular-eslint/component-selector\n\tselector: 'tbody[luDataTableBody]',\n\ttemplateUrl: `./data-table-body.component.html`,\n\tencapsulation: ViewEncapsulation.None,\n\thost: {\n\t\tclass: 'dataTable-body',\n\t},\n\timports: [ButtonComponent, PortalDirective, IconComponent],\n\tproviders: [\n\t\t{\n\t\t\tprovide: LU_DATA_TABLE_BODY_INSTANCE,\n\t\t\tuseExisting: forwardRef(() => DataTableBodyComponent),\n\t\t},\n\t],\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class DataTableBodyComponent {\n\tgroup = input<PortalContent | null>(null);\n\tgroupButtonAlt = input<string | null>(null);\n\n\texpanded = model(false);\n\n\texpandedToggle() {\n\t\tthis.expanded.set(!this.expanded());\n\t}\n\n\tprotected tableRef = inject(LU_DATA_TABLE_INSTANCE, { optional: true });\n\n\tcolspan = computed(() => this.tableRef?.cols().length + (this.tableRef?.selectable() ? 1 : 0));\n}\n","@if (group() && groupButtonAlt()) {\n\t<tr class=\"dataTable-body-row mod-group\">\n\t\t<td class=\"dataTable-body-row-cell\" [attr.colspan]=\"colspan()\">\n\t\t\t<div class=\"dataTable-body-row-cell-expand\">\n\t\t\t\t<button\n\t\t\t\t\ttype=\"button\"\n\t\t\t\t\tclass=\"dataTable-body-row-cell-expand-button\"\n\t\t\t\t\tluButton\n\t\t\t\t\tdisclosure\n\t\t\t\t\t[attr.aria-expanded]=\"expanded()\"\n\t\t\t\t\t(click)=\"expandedToggle()\"\n\t\t\t\t>\n\t\t\t\t\t<lu-icon icon=\"arrowChevronTop\" [alt]=\"groupButtonAlt()\" />\n\t\t\t\t</button>\n\t\t\t\t<ng-container *luPortal=\"group()\" />\n\t\t\t</div>\n\t\t</td>\n\t</tr>\n}\n<ng-content />\n","import { InjectionToken } from '@angular/core';\nimport { DataTableFootComponent } from './data-table-foot.component';\n\nexport const LU_DATA_TABLE_FOOT_INSTANCE = new InjectionToken<DataTableFootComponent>('LU_DATA_TABLE_FOOT_INSTANCE');\n","import { InjectionToken } from '@angular/core';\nimport { DataTableHeadComponent } from './data-table-head.component';\n\nexport const LU_DATA_TABLE_HEAD_INSTANCE = new InjectionToken<DataTableHeadComponent>('LU_DATA_TABLE_HEAD_INSTANCE');\n","import { InjectionToken } from '@angular/core';\nimport { DataTableRowComponent } from './data-table-row.component';\n\nexport const LU_DATA_TABLE_ROW_INSTANCE = new InjectionToken<DataTableRowComponent>('LU_DATA_TABLE_ROW_INSTANCE');\n","import { booleanAttribute, ChangeDetectionStrategy, Component, computed, inject, input } from '@angular/core';\nimport { LU_DATA_TABLE_BODY_INSTANCE } from './data-table-body/data-table-body.token';\nimport { LU_DATA_TABLE_FOOT_INSTANCE } from './data-table-foot/data-table-foot.token';\nimport { LU_DATA_TABLE_HEAD_INSTANCE } from './data-table-head/data-table-head.token';\nimport { LU_DATA_TABLE_ROW_INSTANCE } from './data-table-row/data-table-row.token';\nimport { LU_DATA_TABLE_INSTANCE } from './data-table.token';\n\n@Component({\n\tselector: 'lu-base-data-table-cell',\n\ttemplate: '',\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport abstract class BaseDataTableCell {\n\ttableRef = inject(LU_DATA_TABLE_INSTANCE, { optional: true });\n\tbodyRef = inject(LU_DATA_TABLE_BODY_INSTANCE, { optional: true });\n\theadRef = inject(LU_DATA_TABLE_HEAD_INSTANCE, { optional: true });\n\tfootRef = inject(LU_DATA_TABLE_FOOT_INSTANCE, { optional: true });\n\trowRef = inject(LU_DATA_TABLE_ROW_INSTANCE, { optional: true });\n\n\teditable = input(false, { transform: booleanAttribute });\n\talign = input<null | 'start' | 'center' | 'end'>(null);\n\n\tisStickyStart = computed(() => {\n\t\treturn this.position() <= this.tableRef?.stickyColsStart() - 1;\n\t});\n\n\tisStickyEnd = computed(() => {\n\t\treturn this.position() >= this.rowRef?.cells().length - this.tableRef?.stickyColsEnd();\n\t});\n\n\tposition = computed(() => {\n\t\treturn this.rowRef?.cells().indexOf(this);\n\t});\n}\n","import { InjectionToken } from '@angular/core';\nimport { BaseDataTableCell } from './base-data-table-cell';\n\nexport const LU_DATA_TABLE_CELL_INSTANCE = new InjectionToken<BaseDataTableCell>('LU_DATA_TABLE_CELL_INSTANCE');\n","import { NgTemplateOutlet } from '@angular/common';\nimport { AfterContentInit, ChangeDetectionStrategy, Component, computed, ElementRef, forwardRef, inject, input, model, ViewEncapsulation } from '@angular/core';\nimport { toSignal } from '@angular/core/rxjs-interop';\nimport { FormsModule } from '@angular/forms';\nimport { ButtonComponent } from '@lucca-front/ng/button';\nimport { IconComponent } from '@lucca-front/ng/icon';\nimport { ReplaySubject } from 'rxjs';\nimport { BaseDataTableCell } from '../base-data-table-cell';\nimport { LU_DATA_TABLE_CELL_INSTANCE } from '../data-table-cell.token';\n\n@Component({\n\t// eslint-disable-next-line @angular-eslint/component-selector\n\tselector: 'th[luDataTableCell]',\n\ttemplateUrl: './data-table-cell-header.component.html',\n\tstyleUrl: './data-table-cell-header.component.scss',\n\tencapsulation: ViewEncapsulation.None,\n\thost: {\n\t\t'[class.dataTable-body-row-cell]': 'bodyRef !== null',\n\t\t'[class.dataTable-head-row-cell]': 'headRef !== null',\n\t\t'[class.dataTable-foot-row-cell]': 'footRef !== null',\n\t\t'[class.mod-alignStart]': 'align() === \"start\"',\n\t\t'[class.mod-alignCenter]': 'align() === \"center\"',\n\t\t'[class.mod-alignEnd]': 'align() === \"end\"',\n\t\t'[class.mod-stickyColumn]': 'isStickyStart() || isStickyEnd()',\n\t\t'[attr.aria-sort]': 'sort()',\n\t\t'[class.mod-editable]': 'editable()',\n\t\t'[attr.scope]': 'bodyRef !== null ? \"row\" : \"col\"',\n\t\t'[style.--dataTable-layoutFixed-width]': 'inlineSize() || fixedWidth()',\n\t\t'[style.insetInlineStart]': 'insetInlineStart()',\n\t\t'[style.insetInlineEnd]': 'insetInlineEnd()',\n\t},\n\timports: [NgTemplateOutlet, ButtonComponent, IconComponent, FormsModule],\n\tproviders: [\n\t\t{\n\t\t\tprovide: LU_DATA_TABLE_CELL_INSTANCE,\n\t\t\tuseExisting: forwardRef(() => DataTableRowCellHeaderComponent),\n\t\t},\n\t],\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class DataTableRowCellHeaderComponent extends BaseDataTableCell implements AfterContentInit {\n\telementRef = inject<ElementRef<HTMLTableCellElement>>(ElementRef);\n\n\tsort = model<null | 'none' | 'ascending' | 'descending'>(null);\n\tfixedWidth = input<string | null>(null);\n\tinlineSize = input<string | null>(null);\n\n\tinsetInlineStart = computed(() => {\n\t\tif (!this.isStickyStart() || !this.headRef) {\n\t\t\treturn '';\n\t\t}\n\t\treturn (\n\t\t\tthis.headRef\n\t\t\t\t.cols()\n\t\t\t\t.slice(0, this.position())\n\t\t\t\t.reduce((acc, col) => {\n\t\t\t\t\treturn acc + col.inlineSizePx();\n\t\t\t\t}, 0) + 'px'\n\t\t);\n\t});\n\n\tinsetInlineEnd = computed(() => {\n\t\tif (!this.isStickyEnd() || !this.headRef) {\n\t\t\treturn '';\n\t\t}\n\t\treturn (\n\t\t\tthis.headRef\n\t\t\t\t.cols()\n\t\t\t\t.slice(this.position() + 1)\n\t\t\t\t.reduce((acc, col) => {\n\t\t\t\t\treturn acc + col.inlineSizePx();\n\t\t\t\t}, 0) + 'px'\n\t\t);\n\t});\n\n\t#inlineSizePx$ = new ReplaySubject<number>();\n\n\tinlineSizePx = toSignal(this.#inlineSizePx$);\n\n\tngAfterContentInit(): void {\n\t\tnew ResizeObserver(() => {\n\t\t\tthis.#inlineSizePx$.next(this.elementRef.nativeElement.clientWidth);\n\t\t}).observe(this.elementRef.nativeElement);\n\t}\n}\n","@if (sort()) {\n\t<button luButton type=\"button\" class=\"tableSortable\" [(ngModel)]=\"sort\">\n\t\t<ng-container *ngTemplateOutlet=\"contentTpl\" />\n\t\t<span class=\"tableSortable-arrows\">\n\t\t\t<lu-icon icon=\"chevronTop\" class=\"tableSortable-arrows-ascending\" />\n\t\t\t<lu-icon icon=\"chevronBottom\" class=\"tableSortable-arrows-descending\" />\n\t\t</span>\n\t</button>\n} @else {\n\t<ng-container *ngTemplateOutlet=\"contentTpl\" />\n}\n\n<ng-template #contentTpl><ng-content /></ng-template>\n","import { booleanAttribute, ChangeDetectionStrategy, Component, computed, forwardRef, input, ViewEncapsulation } from '@angular/core';\n\nimport { BaseDataTableCell } from '../base-data-table-cell';\nimport { LU_DATA_TABLE_CELL_INSTANCE } from '../data-table-cell.token';\n\n@Component({\n\t// eslint-disable-next-line @angular-eslint/component-selector\n\tselector: 'td[luDataTableCell]',\n\ttemplate: '<ng-content />',\n\tencapsulation: ViewEncapsulation.None,\n\thost: {\n\t\t'[class.dataTable-body-row-cell]': 'bodyRef !== null',\n\t\t'[class.dataTable-head-row-cell]': 'headRef !== null',\n\t\t'[class.dataTable-foot-row-cell]': 'footRef !== null',\n\t\t'[class.mod-alignStart]': 'align() === \"start\" || alignCol() === \"start\"',\n\t\t'[class.mod-alignCenter]': 'align() === \"center\" || alignCol() === \"center\"',\n\t\t'[class.mod-alignEnd]': 'align() === \"end\" || alignCol() === \"end\"',\n\t\t'[class.mod-editable]': 'editable()',\n\t\t'[class.mod-actions]': 'actions()',\n\t\t'[class.mod-stickyColumn]': 'isSticky()',\n\t\t'[style.insetInlineStart]': 'insetInlineStart()',\n\t\t'[style.insetInlineEnd]': 'insetInlineEnd()',\n\t},\n\tproviders: [\n\t\t{\n\t\t\tprovide: LU_DATA_TABLE_CELL_INSTANCE,\n\t\t\tuseExisting: forwardRef(() => DataTableRowCellComponent),\n\t\t},\n\t],\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class DataTableRowCellComponent extends BaseDataTableCell {\n\tactions = input(false, { transform: booleanAttribute });\n\n\tisSticky = computed(() => {\n\t\treturn this.isStickyStart() || this.isStickyEnd();\n\t});\n\n\talignCol = computed(() => {\n\t\treturn this.tableRef?.header().cols()?.[this.position()]?.align();\n\t});\n\n\tinsetInlineStart = computed(() => {\n\t\treturn this.tableRef?.header()?.cols()?.[this.position()]?.insetInlineStart();\n\t});\n\n\tinsetInlineEnd = computed(() => {\n\t\treturn this.tableRef?.header()?.cols()?.[this.position()]?.insetInlineEnd();\n\t});\n}\n","import { ChangeDetectionStrategy, Component, forwardRef, ViewEncapsulation } from '@angular/core';\nimport { LU_DATA_TABLE_FOOT_INSTANCE } from './data-table-foot.token';\n\n@Component({\n\t// eslint-disable-next-line @angular-eslint/component-selector\n\tselector: 'tfoot[luDataTableFoot]',\n\ttemplate: '<ng-content />',\n\tencapsulation: ViewEncapsulation.None,\n\thost: {\n\t\tclass: 'dataTable-foot',\n\t},\n\tproviders: [\n\t\t{\n\t\t\tprovide: LU_DATA_TABLE_FOOT_INSTANCE,\n\t\t\tuseExisting: forwardRef(() => DataTableFootComponent),\n\t\t},\n\t],\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class DataTableFootComponent {}\n","import { booleanAttribute, ChangeDetectionStrategy, Component, contentChildren, forwardRef, input, signal, ViewEncapsulation } from '@angular/core';\n\nimport { DataTableRowCellHeaderComponent } from '../data-table-cell-header/data-table-cell-header.component';\nimport { LU_DATA_TABLE_HEAD_INSTANCE } from './data-table-head.token';\n\n@Component({\n\t// eslint-disable-next-line @angular-eslint/component-selector\n\tselector: 'thead[luDataTableHead]',\n\ttemplate: '<ng-content />',\n\tstyleUrl: './data-table-head.component.scss',\n\tencapsulation: ViewEncapsulation.None,\n\thost: {\n\t\tclass: 'dataTable-head',\n\t\t'[class.mod-sticky]': 'sticky()',\n\t\t'[class.is-firstBodyRowVisible]': 'isFirstVisible()',\n\t},\n\tproviders: [\n\t\t{\n\t\t\tprovide: LU_DATA_TABLE_HEAD_INSTANCE,\n\t\t\tuseExisting: forwardRef(() => DataTableHeadComponent),\n\t\t},\n\t],\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class DataTableHeadComponent {\n\treadonly sticky = input(false, { transform: booleanAttribute });\n\treadonly isFirstVisible = signal(false);\n\n\tcols = contentChildren(DataTableRowCellHeaderComponent, { descendants: true });\n}\n","export const Translations = {\n\t'nl-BE': {\n\t\tmove: 'Verplaatsen',\n\t},\n\tfr: {\n\t\tmove: 'Déplacer',\n\t},\n\tde: {\n\t\tmove: 'Verschieben',\n\t},\n\ten: {\n\t\tmove: 'Move',\n\t},\n\tes: {\n\t\tmove: 'Desplazar',\n\t},\n\tit: {\n\t\tmove: 'Spostare',\n\t},\n\tnl: {\n\t\tmove: 'Verplaatsen',\n\t},\n\tpt: {\n\t\tmove: 'Mover',\n\t},\n};\n","import { InjectionToken } from '@angular/core';\nimport { LuTranslation } from '@lucca-front/ng/core';\nimport { Translations } from './translations';\n\nexport const LU_DATA_TABLE_TRANSLATIONS = new InjectionToken('LuDataTableTranslations', {\n\tfactory: () => luDataTableTranslations,\n});\n\nexport interface LuDataTableTranslations {\n\tmove: string;\n}\n\nexport const luDataTableTranslations: LuTranslation<LuDataTableTranslations> = Translations;\n","import { CdkDragHandle } from '@angular/cdk/drag-drop';\nimport { NgTemplateOutlet } from '@angular/common';\nimport { booleanAttribute, ChangeDetectionStrategy, Component, contentChildren, ElementRef, forwardRef, inject, input, model, ViewEncapsulation } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { intlInputOptions } from '@lucca-front/ng/core';\nimport { FormFieldComponent } from '@lucca-front/ng/form-field';\nimport { CheckboxInputComponent } from '@lucca-front/ng/forms';\nimport { IconComponent } from '@lucca-front/ng/icon';\nimport { LU_DATA_TABLE_BODY_INSTANCE } from '../data-table-body/data-table-body.token';\nimport { LU_DATA_TABLE_CELL_INSTANCE } from '../data-table-cell.token';\nimport { LU_DATA_TABLE_FOOT_INSTANCE } from '../data-table-foot/data-table-foot.token';\nimport { LU_DATA_TABLE_HEAD_INSTANCE } from '../data-table-head/data-table-head.token';\nimport { LU_DATA_TABLE_INSTANCE } from '../data-table.token';\nimport { LU_DATA_TABLE_TRANSLATIONS } from '../data-table.translate';\nimport { LU_DATA_TABLE_ROW_INSTANCE } from './data-table-row.token';\n\n@Component({\n\t// eslint-disable-next-line @angular-eslint/component-selector\n\tselector: 'tr[luDataTableRow]',\n\ttemplateUrl: './data-table-row.component.html',\n\tencapsulation: ViewEncapsulation.None,\n\thost: {\n\t\t'[class.dataTable-body-row]': 'bodyRef !== null',\n\t\t'[class.dataTable-head-row]': 'headRef !== null',\n\t\t'[class.dataTable-foot-row]': 'footRef !== null',\n\t\t'[class.mod-selectable]': 'tableRef.selectable() ?? false',\n\t\t'[class.mod-draggable]': 'tableRef.drag() ?? false',\n\t},\n\timports: [CheckboxInputComponent, FormFieldComponent, FormsModule, NgTemplateOutlet, IconComponent, CdkDragHandle],\n\tproviders: [\n\t\t{\n\t\t\tprovide: LU_DATA_TABLE_ROW_INSTANCE,\n\t\t\tuseExisting: forwardRef(() => DataTableRowComponent),\n\t\t},\n\t],\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class DataTableRowComponent {\n\tintl = input(...intlInputOptions(LU_DATA_TABLE_TRANSLATIONS));\n\tbodyRef = inject(LU_DATA_TABLE_BODY_INSTANCE, { optional: true });\n\theadRef = inject(LU_DATA_TABLE_HEAD_INSTANCE, { optional: true });\n\tfootRef = inject(LU_DATA_TABLE_FOOT_INSTANCE, { optional: true });\n\n\telementRef = inject<ElementRef<Element>>(ElementRef);\n\n\tpublic readonly cells = contentChildren(LU_DATA_TABLE_CELL_INSTANCE);\n\n\tprotected tableRef = inject(LU_DATA_TABLE_INSTANCE, { optional: true });\n\n\tselected = model<boolean>(false);\n\treadonly selectedLabel = input<string | null>(null);\n\treadonly disabled = input(false, { transform: booleanAttribute });\n}\n","@if (tableRef.drag()) {\n\t<td class=\"dataTable-body-row-cell\" aria-hidden=\"true\">\n\t\t@if (bodyRef) {\n\t\t\t<span class=\"button dataTable-body-row-cell-drag\" cdkDragHandle>\n\t\t\t\t<lu-icon icon=\"dotsDrag\" [alt]=\"intl().move\" />\n\t\t\t</span>\n\t\t}\n\t</td>\n}\n\n@if (tableRef.selectable()) {\n\t@if (headRef) {\n\t\t<th class=\"dataTable-head-row-cell\" scope=\"col\"><ng-container *ngTemplateOutlet=\"input\" /></th>\n\t} @else {\n\t\t<td [class.dataTable-body-row-cell]=\"bodyRef !== null\" [class.dataTable-foot-row-cell]=\"footRef !== null\">\n\t\t\t<ng-container *ngTemplateOutlet=\"input\" />\n\t\t</td>\n\t}\n}\n<ng-content />\n\n<ng-template #input>\n\t@if (!footRef && selectedLabel()) {\n\t\t<lu-form-field [label]=\"selectedLabel()\" hiddenLabel>\n\t\t\t<lu-checkbox-input [(ngModel)]=\"selected\" [disabled]=\"disabled()\" />\n\t\t</lu-form-field>\n\t}\n</ng-template>\n","import {\n\tafterNextRender,\n\tbooleanAttribute,\n\tChangeDetectionStrategy,\n\tComponent,\n\tcomputed,\n\tcontentChild,\n\tcontentChildren,\n\tElementRef,\n\tforwardRef,\n\tinject,\n\tinput,\n\tnumberAttribute,\n\tOnInit,\n\tsignal,\n\tviewChild,\n\tViewEncapsulation,\n} from '@angular/core';\nimport { ResponsiveConfig, ɵeffectWithDeps } from '@lucca-front/ng/core';\nimport { DataTableHeadComponent } from './data-table-head/data-table-head.component';\nimport { DataTableRowComponent } from './data-table-row/data-table-row.component';\nimport { LU_DATA_TABLE_INSTANCE } from './data-table.token';\n\n@Component({\n\tselector: 'lu-data-table',\n\ttemplateUrl: './data-table.component.html',\n\tstyleUrl: './data-table.component.scss',\n\tencapsulation: ViewEncapsulation.None,\n\thost: {\n\t\tclass: 'dataTableWrapper',\n\t\t'[class.mod-nested]': 'this.nested()',\n\t\t'[class.mod-noOverflow]': 'this.noOverflow()',\n\t\t'(scroll)': 'scroll()',\n\t},\n\tproviders: [\n\t\t{\n\t\t\tprovide: LU_DATA_TABLE_INSTANCE,\n\t\t\tuseExisting: forwardRef(() => DataTableComponent),\n\t\t},\n\t],\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class DataTableComponent implements OnInit {\n\t#elementRef = inject<ElementRef<Element>>(ElementRef);\n\ttableRef = viewChild<ElementRef<Element>>('tableRef');\n\n\treadonly hover = input(false, { transform: booleanAttribute });\n\treadonly selectable = input(false, { transform: booleanAttribute });\n\treadonly layoutFixed = input(false, { transform: booleanAttribute });\n\treadonly cellBorder = input(false, { transform: booleanAttribute });\n\treadonly nested = input(false, { transform: booleanAttribute });\n\treadonly drag = input(false, { transform: booleanAttribute });\n\treadonly noOverflow = input(false, { transform: booleanAttribute });\n\n\treadonly responsive = input<ResponsiveConfig<'layoutFixed', true>>({});\n\n\treadonly verticalAlign = input<null | 'top' | 'middle' | 'bottom'>(null);\n\n\treadonly rows = contentChildren(DataTableRowComponent, { descendants: true });\n\treadonly header = contentChild(DataTableHeadComponent, { descendants: true });\n\n\treadonly stickyHeader = computed(() => this.header().sticky());\n\n\treadonly stickyColsStart = input(0, { transform: numberAttribute });\n\treadonly stickyColsEnd = input(0, { transform: numberAttribute });\n\n\tfirstColumnVisibleAfterColsStart = signal(true);\n\tlastColumnVisibleBeforeColsEnd = signal(false);\n\n\tfirstColumnVisible = signal(true);\n\tlastColumnVisible = signal(false);\n\n\tfirstRowVisible = signal(true);\n\tlastRowVisible = signal(false);\n\n\treadonly cols = computed(() => this.header().cols());\n\n\treadonly classMods = computed(() => {\n\t\treturn {\n\t\t\tdataTable: true,\n\t\t\t['mod-stickyHeader']: this.stickyHeader(),\n\t\t\t['mod-hover']: this.hover(),\n\t\t\t['mod-cellBorder']: this.cellBorder(),\n\t\t\t['mod-verticalAlignTop']: this.verticalAlign() === 'top',\n\t\t\t['mod-verticalAlignMiddle']: this.verticalAlign() === 'middle',\n\t\t\t['mod-verticalAlignBottom']: this.verticalAlign() === 'bottom',\n\t\t\t['mod-columnsOverflow']: this.stickyColsStart() || this.stickyColsEnd(),\n\t\t\t['is-firstColumnVisible']: this.stickyColsStart() || this.firstColumnVisible(),\n\t\t\t['is-lastColumnVisible']: this.stickyColsEnd() || this.lastColumnVisible(),\n\t\t\t['is-firstColumnVisibleAfterColsStart']: this.firstColumnVisibleAfterColsStart(),\n\t\t\t['is-lastColumnVisibleBeforeColsEnd']: this.lastColumnVisibleBeforeColsEnd(),\n\t\t\t['is-firstRowVisible']: this.firstRowVisible(),\n\t\t\t['is-lastRowVisible']: this.lastRowVisible(),\n\t\t\t['mod-layoutFixed']: this.layoutFixed(),\n\t\t\t...Object.entries(this.responsive()).reduce((acc, [key, value]) => {\n\t\t\t\treturn {\n\t\t\t\t\t...acc,\n\t\t\t\t\t[`mod-${key}`]: value,\n\t\t\t\t};\n\t\t\t}, {}),\n\t\t};\n\t});\n\n\tscroll() {\n\t\tthis.header()?.isFirstVisible.set(this.#elementRef.nativeElement.scrollTop === 0);\n\n\t\tthis.firstRowVisible.set(this.#elementRef.nativeElement.scrollTop === 0);\n\t\tthis.lastRowVisible.set(this.#elementRef.nativeElement.scrollTop >= this.#elementRef.nativeElement.scrollHeight - this.#elementRef.nativeElement.clientHeight);\n\n\t\tthis.firstColumnVisibleAfterColsStart.set(this.#elementRef.nativeElement.scrollLeft === 0);\n\t\tthis.lastColumnVisibleBeforeColsEnd.set(this.#elementRef.nativeElement.scrollLeft >= this.#elementRef.nativeElement.scrollWidth - this.#elementRef.nativeElement.clientWidth);\n\n\t\tthis.firstColumnVisible.set(this.#elementRef.nativeElement.scrollLeft === 0);\n\t\tthis.lastColumnVisible.set(this.#elementRef.nativeElement.scrollLeft >= this.#elementRef.nativeElement.scrollWidth - this.#elementRef.nativeElement.clientWidth);\n\t}\n\n\tconstructor() {\n\t\tɵeffectWithDeps([this.rows], () => this.scroll());\n\n\t\tafterNextRender(() => {\n\t\t\tthis.scroll();\n\t\t});\n\t}\n\n\tngOnInit(): void {\n\t\tnew ResizeObserver(() => {\n\t\t\tthis.scroll();\n\t\t}).observe(this.tableRef().nativeElement);\n\t}\n}\n","<div class=\"dataTableShadows\">\n\t<table [class]=\"classMods()\" #tableRef>\n\t\t<ng-content />\n\t</table>\n\t<div class=\"dataTableWrapper-pagination\">\n\t\t<ng-content select=\"[dataTablePagination]\" />\n\t</div>\n</div>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["ɵeffectWithDeps"],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  import * as i0 from '@angular/core';
2
- import { Pipe, NgModule, InjectionToken, Injectable, LOCALE_ID, forwardRef, Input, Inject, ChangeDetectionStrategy, Component, HostListener, Directive, EventEmitter, TemplateRef, ViewChild, Output, inject } from '@angular/core';
2
+ import { Pipe, NgModule, InjectionToken, Injectable, input, LOCALE_ID, forwardRef, Input, Inject, ChangeDetectionStrategy, Component, HostListener, Directive, EventEmitter, TemplateRef, ViewChild, Output, inject } from '@angular/core';
3
3
  import * as i1 from '@lucca-front/ng/core';
4
- import { ELuDateGranularity, getIntl } from '@lucca-front/ng/core';
4
+ import { ELuDateGranularity, intlInputOptions } from '@lucca-front/ng/core';
5
5
  import { getLocaleDayNames, FormStyle, TranslationWidth, getLocaleFirstDayOfWeek } from '@angular/common';
6
6
  import * as i2 from '@angular/forms';
7
7
  import { FormsModule, NG_VALUE_ACCESSOR, NG_VALIDATORS } from '@angular/forms';
@@ -186,7 +186,7 @@ class LuCalendarInputComponent extends ALuInput {
186
186
  this._locale = _locale;
187
187
  this._factory = _factory;
188
188
  this._adapter = _adapter;
189
- this.intl = getIntl(LU_CALENDARINPUT_TRANSLATIONS);
189
+ this.intl = input(...intlInputOptions(LU_CALENDARINPUT_TRANSLATIONS), ...(ngDevMode ? [{ debugName: "intl" }] : []));
190
190
  this.granularity = ELuDateGranularity.day;
191
191
  this.startOn = this._adapter.forgeToday();
192
192
  this.items = [];
@@ -447,7 +447,7 @@ class LuCalendarInputComponent extends ALuInput {
447
447
  return null;
448
448
  }
449
449
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.8", ngImport: i0, type: LuCalendarInputComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.Renderer2 }, { token: LOCALE_ID }, { token: LuCalendarItemFactory }, { token: i1.ALuDateAdapter }], target: i0.ɵɵFactoryTarget.Component }); }
450
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.0.8", type: LuCalendarInputComponent, isStandalone: true, selector: "lu-calendar", inputs: { min: "min", max: "max", granularity: "granularity", startOn: "startOn" }, providers: [
450
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.0.8", type: LuCalendarInputComponent, isStandalone: true, selector: "lu-calendar", inputs: { intl: { classPropertyName: "intl", publicName: "intl", isSignal: true, isRequired: false, transformFunction: null }, min: { classPropertyName: "min", publicName: "min", isSignal: false, isRequired: false, transformFunction: null }, max: { classPropertyName: "max", publicName: "max", isSignal: false, isRequired: false, transformFunction: null }, granularity: { classPropertyName: "granularity", publicName: "granularity", isSignal: false, isRequired: false, transformFunction: null }, startOn: { classPropertyName: "startOn", publicName: "startOn", isSignal: false, isRequired: false, transformFunction: null } }, providers: [
451
451
  {
452
452
  provide: NG_VALUE_ACCESSOR,
453
453
  useExisting: forwardRef(() => LuCalendarInputComponent),
@@ -459,7 +459,7 @@ class LuCalendarInputComponent extends ALuInput {
459
459
  multi: true,
460
460
  },
461
461
  LuCalendarItemFactory,
462
- ], usesInheritance: true, ngImport: i0, template: "<section class=\"calendar\">\n\t<header class=\"calendar-header\">\n\t\t<button type=\"button\" class=\"button mod-onlyIcon mod-ghost mod-S\" (click)=\"previous()\">\n\t\t\t<span aria-hidden=\"true\" class=\"lucca-icon icon-arrowChevronLeft\"></span>\n\t\t\t<span class=\"pr-u-mask\">{{ intl.previous }}</span>\n\t\t</button>\n\t\t<button type=\"button\" class=\"calendar-header-date\" (click)=\"increaseGranularity()\">{{ header.label }}</button>\n\t\t<button type=\"button\" class=\"button mod-onlyIcon mod-ghost mod-S\" (click)=\"next()\">\n\t\t\t<span aria-hidden=\"true\" class=\"lucca-icon icon-arrowChevronRight\"></span>\n\t\t\t<span class=\"pr-u-mask\">{{ intl.next }}</span>\n\t\t</button>\n\t</header>\n\t<section class=\"calendar-labels\" [class]=\"mod\">\n\t\t@for (label of labels; track label) {\n\t\t\t<div class=\"calendar-labels-item\">{{ label }}</div>\n\t\t}\n\t</section>\n\t<section class=\"calendar-grid\" [class]=\"mod\">\n\t\t@for (item of items; track item.id) {\n\t\t\t<button type=\"button\" class=\"calendar-grid-item\" [class]=\"item.mods\" [disabled]=\"item.isDisabled\" (click)=\"select(item)\">\n\t\t\t\t<div class=\"calendar-grid-item-content\">{{ item.label }}</div>\n\t\t\t</button>\n\t\t}\n\t</section>\n</section>\n", styles: ["@layer components{.calendar{background-color:var(--pr-t-elevation-surface-raised);inline-size:var(--components-calendar-width)}}@layer mods{:host-context(.mod-block) .calendar{inline-size:auto;max-inline-size:var(--components-calendar-width)}}@layer components{.calendar-header{display:flex;align-items:center;justify-content:space-between}}@layer components{.calendar-header-date{font:var(--pr-t-font-heading-3);color:var(--pr-t-color-text-heading);font-weight:var(--pr-t-font-fontWeight-semibold);padding:0;background:transparent;border:none;cursor:pointer}}@layer mods{.calendar-header-date:focus-visible{outline:2px solid var(--palettes-product-700);outline-offset:2px;border-radius:4px}}@layer components{.calendar-labels{display:none}}@layer mods{.calendar-labels.mod-dailyView{display:flex;align-items:center;flex-wrap:wrap;text-align:center;block-size:var(--components-calendar-day-size);font-size:var(--pr-t-font-body-S-fontSize);color:var(--palettes-product-700)}.calendar-labels.mod-dailyView .calendar-labels-item{inline-size:var(--components-calendar-day-size)}}@layer components{.calendar-grid{display:flex;text-align:center;align-self:stretch;flex-wrap:wrap;inline-size:var(--components-calendar-width)}}@layer mods{.calendar-grid.mod-dailyView .calendar-grid-item{inline-size:var(--components-calendar-day-size)}.calendar-grid.mod-monthlyView .calendar-grid-item-content,.calendar-grid.mod-yearlyView .calendar-grid-item-content{inline-size:5.83rem}}@layer components{.calendar-grid-item{block-size:var(--components-calendar-day-size);border:none;cursor:pointer;background:transparent;position:relative;padding:0;outline:none;color:var(--pr-t-color-text)}}@layer mods{.calendar-grid-item.is-previousMonth,.calendar-grid-item.is-nextMonth{color:var(--palettes-neutral-500)}.calendar-grid-item.is-today{color:var(--palettes-product-700);font-weight:var(--pr-t-font-fontWeight-semibold)}.calendar-grid-item.is-today:after{content:\"\";position:absolute;inset-block-end:var(--pr-t-spacings-50);inset-inline:var(--pr-t-spacings-100) var(--pr-t-spacings-100);block-size:2px;background:var(--palettes-product-700);z-index:1}.calendar-grid-item:hover .calendar-grid-item-content{background:var(--palettes-neutral-50)}.calendar-grid-item:active .calendar-grid-item-content{background:var(--palettes-neutral-100)}.calendar-grid-item:focus-visible{outline:2px solid var(--palettes-product-700);outline-offset:2px;border-radius:var(--pr-t-border-radius-default);z-index:1}.calendar-grid-item.is-active .calendar-grid-item-content{background:var(--palettes-product-700);color:var(--palettes-product-0)}.calendar-grid-item.is-active.is-today{color:var(--palettes-product-700);font-weight:600}.calendar-grid-item.is-active.is-today:after{content:\"\";position:absolute;inset-block-end:var(--pr-t-spacings-50);inset-inline:var(--pr-t-spacings-100) var(--pr-t-spacings-100);block-size:2px;background:var(--palettes-product-700);z-index:1}.calendar-grid-item.is-active:hover .calendar-grid-item-content{background:var(--palettes-neutral-50)}.calendar-grid-item.is-active:active .calendar-grid-item-content{background:var(--palettes-neutral-100)}.calendar-grid-item.is-active:focus-visible{outline:2px solid var(--palettes-product-700);outline-offset:2px;border-radius:var(--pr-t-border-radius-default);z-index:1}.calendar-grid-item.is-active.is-active .calendar-grid-item-content{background:var(--palettes-product-700);color:var(--palettes-product-0)}.calendar-grid-item.is-active.is-active.is-today:after{background-color:var(--palettes-neutral-0)!important;transition:background-color var(--commons-animations-durations-fast)}.calendar-grid-item.is-active.is-disabled,.calendar-grid-item.is-active[disabled]{color:var(--palettes-neutral-500);pointer-events:none}.calendar-grid-item.is-active.is-disabled:hover .calendar-grid-item-content,.calendar-grid-item.is-active[disabled]:hover .calendar-grid-item-content{background-color:var(--palettes-neutral-0)}}@layer components{.calendar-grid-item-content{position:relative;block-size:var(--components-calendar-day-size);inline-size:var(--components-calendar-day-size);line-height:var(--components-calendar-day-size);border-radius:var(--pr-t-border-radius-default);transition-duration:var(--commons-animations-durations-fast);transition-property:background-color,color}}\n"], dependencies: [{ kind: "ngmodule", type: FormsModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
462
+ ], usesInheritance: true, ngImport: i0, template: "<section class=\"calendar\">\n\t<header class=\"calendar-header\">\n\t\t<button type=\"button\" class=\"button mod-onlyIcon mod-ghost mod-S\" (click)=\"previous()\">\n\t\t\t<span aria-hidden=\"true\" class=\"lucca-icon icon-arrowChevronLeft\"></span>\n\t\t\t<span class=\"pr-u-mask\">{{ intl().previous }}</span>\n\t\t</button>\n\t\t<button type=\"button\" class=\"calendar-header-date\" (click)=\"increaseGranularity()\">{{ header.label }}</button>\n\t\t<button type=\"button\" class=\"button mod-onlyIcon mod-ghost mod-S\" (click)=\"next()\">\n\t\t\t<span aria-hidden=\"true\" class=\"lucca-icon icon-arrowChevronRight\"></span>\n\t\t\t<span class=\"pr-u-mask\">{{ intl().next }}</span>\n\t\t</button>\n\t</header>\n\t<section class=\"calendar-labels\" [class]=\"mod\">\n\t\t@for (label of labels; track label) {\n\t\t\t<div class=\"calendar-labels-item\">{{ label }}</div>\n\t\t}\n\t</section>\n\t<section class=\"calendar-grid\" [class]=\"mod\">\n\t\t@for (item of items; track item.id) {\n\t\t\t<button type=\"button\" class=\"calendar-grid-item\" [class]=\"item.mods\" [disabled]=\"item.isDisabled\" (click)=\"select(item)\">\n\t\t\t\t<div class=\"calendar-grid-item-content\">{{ item.label }}</div>\n\t\t\t</button>\n\t\t}\n\t</section>\n</section>\n", styles: ["@layer components{.calendar{background-color:var(--pr-t-elevation-surface-raised);inline-size:var(--components-calendar-width)}}@layer mods{:host-context(.mod-block) .calendar{inline-size:auto;max-inline-size:var(--components-calendar-width)}}@layer components{.calendar-header{display:flex;align-items:center;justify-content:space-between}}@layer components{.calendar-header-date{font:var(--pr-t-font-heading-3);color:var(--pr-t-color-text-heading);font-weight:var(--pr-t-font-fontWeight-semibold);padding:0;background:transparent;border:none;cursor:pointer}}@layer mods{.calendar-header-date:focus-visible{outline:2px solid var(--palettes-product-700);outline-offset:2px;border-radius:4px}}@layer components{.calendar-labels{display:none}}@layer mods{.calendar-labels.mod-dailyView{display:flex;align-items:center;flex-wrap:wrap;text-align:center;block-size:var(--components-calendar-day-size);font-size:var(--pr-t-font-body-S-fontSize);color:var(--palettes-product-700)}.calendar-labels.mod-dailyView .calendar-labels-item{inline-size:var(--components-calendar-day-size)}}@layer components{.calendar-grid{display:flex;text-align:center;align-self:stretch;flex-wrap:wrap;inline-size:var(--components-calendar-width)}}@layer mods{.calendar-grid.mod-dailyView .calendar-grid-item{inline-size:var(--components-calendar-day-size)}.calendar-grid.mod-monthlyView .calendar-grid-item-content,.calendar-grid.mod-yearlyView .calendar-grid-item-content{inline-size:5.83rem}}@layer components{.calendar-grid-item{block-size:var(--components-calendar-day-size);border:none;cursor:pointer;background:transparent;position:relative;padding:0;outline:none;color:var(--pr-t-color-text)}}@layer mods{.calendar-grid-item.is-previousMonth,.calendar-grid-item.is-nextMonth{color:var(--palettes-neutral-500)}.calendar-grid-item.is-today{color:var(--palettes-product-700);font-weight:var(--pr-t-font-fontWeight-semibold)}.calendar-grid-item.is-today:after{content:\"\";position:absolute;inset-block-end:var(--pr-t-spacings-50);inset-inline:var(--pr-t-spacings-100) var(--pr-t-spacings-100);block-size:2px;background:var(--palettes-product-700);z-index:1}.calendar-grid-item:hover .calendar-grid-item-content{background:var(--palettes-neutral-50)}.calendar-grid-item:active .calendar-grid-item-content{background:var(--palettes-neutral-100)}.calendar-grid-item:focus-visible{outline:2px solid var(--palettes-product-700);outline-offset:2px;border-radius:var(--pr-t-border-radius-default);z-index:1}.calendar-grid-item.is-active .calendar-grid-item-content{background:var(--palettes-product-700);color:var(--palettes-product-0)}.calendar-grid-item.is-active.is-today{color:var(--palettes-product-700);font-weight:600}.calendar-grid-item.is-active.is-today:after{content:\"\";position:absolute;inset-block-end:var(--pr-t-spacings-50);inset-inline:var(--pr-t-spacings-100) var(--pr-t-spacings-100);block-size:2px;background:var(--palettes-product-700);z-index:1}.calendar-grid-item.is-active:hover .calendar-grid-item-content{background:var(--palettes-neutral-50)}.calendar-grid-item.is-active:active .calendar-grid-item-content{background:var(--palettes-neutral-100)}.calendar-grid-item.is-active:focus-visible{outline:2px solid var(--palettes-product-700);outline-offset:2px;border-radius:var(--pr-t-border-radius-default);z-index:1}.calendar-grid-item.is-active.is-active .calendar-grid-item-content{background:var(--palettes-product-700);color:var(--palettes-product-0)}.calendar-grid-item.is-active.is-active.is-today:after{background-color:var(--palettes-neutral-0)!important;transition:background-color var(--commons-animations-durations-fast)}.calendar-grid-item.is-active.is-disabled,.calendar-grid-item.is-active[disabled]{color:var(--palettes-neutral-500);pointer-events:none}.calendar-grid-item.is-active.is-disabled:hover .calendar-grid-item-content,.calendar-grid-item.is-active[disabled]:hover .calendar-grid-item-content{background-color:var(--palettes-neutral-0)}}@layer components{.calendar-grid-item-content{position:relative;block-size:var(--components-calendar-day-size);inline-size:var(--components-calendar-day-size);line-height:var(--components-calendar-day-size);border-radius:var(--pr-t-border-radius-default);transition-duration:var(--commons-animations-durations-fast);transition-property:background-color,color}}\n"], dependencies: [{ kind: "ngmodule", type: FormsModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
463
463
  }
464
464
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.8", ngImport: i0, type: LuCalendarInputComponent, decorators: [{
465
465
  type: Component,
@@ -475,11 +475,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.8", ngImpor
475
475
  multi: true,
476
476
  },
477
477
  LuCalendarItemFactory,
478
- ], template: "<section class=\"calendar\">\n\t<header class=\"calendar-header\">\n\t\t<button type=\"button\" class=\"button mod-onlyIcon mod-ghost mod-S\" (click)=\"previous()\">\n\t\t\t<span aria-hidden=\"true\" class=\"lucca-icon icon-arrowChevronLeft\"></span>\n\t\t\t<span class=\"pr-u-mask\">{{ intl.previous }}</span>\n\t\t</button>\n\t\t<button type=\"button\" class=\"calendar-header-date\" (click)=\"increaseGranularity()\">{{ header.label }}</button>\n\t\t<button type=\"button\" class=\"button mod-onlyIcon mod-ghost mod-S\" (click)=\"next()\">\n\t\t\t<span aria-hidden=\"true\" class=\"lucca-icon icon-arrowChevronRight\"></span>\n\t\t\t<span class=\"pr-u-mask\">{{ intl.next }}</span>\n\t\t</button>\n\t</header>\n\t<section class=\"calendar-labels\" [class]=\"mod\">\n\t\t@for (label of labels; track label) {\n\t\t\t<div class=\"calendar-labels-item\">{{ label }}</div>\n\t\t}\n\t</section>\n\t<section class=\"calendar-grid\" [class]=\"mod\">\n\t\t@for (item of items; track item.id) {\n\t\t\t<button type=\"button\" class=\"calendar-grid-item\" [class]=\"item.mods\" [disabled]=\"item.isDisabled\" (click)=\"select(item)\">\n\t\t\t\t<div class=\"calendar-grid-item-content\">{{ item.label }}</div>\n\t\t\t</button>\n\t\t}\n\t</section>\n</section>\n", styles: ["@layer components{.calendar{background-color:var(--pr-t-elevation-surface-raised);inline-size:var(--components-calendar-width)}}@layer mods{:host-context(.mod-block) .calendar{inline-size:auto;max-inline-size:var(--components-calendar-width)}}@layer components{.calendar-header{display:flex;align-items:center;justify-content:space-between}}@layer components{.calendar-header-date{font:var(--pr-t-font-heading-3);color:var(--pr-t-color-text-heading);font-weight:var(--pr-t-font-fontWeight-semibold);padding:0;background:transparent;border:none;cursor:pointer}}@layer mods{.calendar-header-date:focus-visible{outline:2px solid var(--palettes-product-700);outline-offset:2px;border-radius:4px}}@layer components{.calendar-labels{display:none}}@layer mods{.calendar-labels.mod-dailyView{display:flex;align-items:center;flex-wrap:wrap;text-align:center;block-size:var(--components-calendar-day-size);font-size:var(--pr-t-font-body-S-fontSize);color:var(--palettes-product-700)}.calendar-labels.mod-dailyView .calendar-labels-item{inline-size:var(--components-calendar-day-size)}}@layer components{.calendar-grid{display:flex;text-align:center;align-self:stretch;flex-wrap:wrap;inline-size:var(--components-calendar-width)}}@layer mods{.calendar-grid.mod-dailyView .calendar-grid-item{inline-size:var(--components-calendar-day-size)}.calendar-grid.mod-monthlyView .calendar-grid-item-content,.calendar-grid.mod-yearlyView .calendar-grid-item-content{inline-size:5.83rem}}@layer components{.calendar-grid-item{block-size:var(--components-calendar-day-size);border:none;cursor:pointer;background:transparent;position:relative;padding:0;outline:none;color:var(--pr-t-color-text)}}@layer mods{.calendar-grid-item.is-previousMonth,.calendar-grid-item.is-nextMonth{color:var(--palettes-neutral-500)}.calendar-grid-item.is-today{color:var(--palettes-product-700);font-weight:var(--pr-t-font-fontWeight-semibold)}.calendar-grid-item.is-today:after{content:\"\";position:absolute;inset-block-end:var(--pr-t-spacings-50);inset-inline:var(--pr-t-spacings-100) var(--pr-t-spacings-100);block-size:2px;background:var(--palettes-product-700);z-index:1}.calendar-grid-item:hover .calendar-grid-item-content{background:var(--palettes-neutral-50)}.calendar-grid-item:active .calendar-grid-item-content{background:var(--palettes-neutral-100)}.calendar-grid-item:focus-visible{outline:2px solid var(--palettes-product-700);outline-offset:2px;border-radius:var(--pr-t-border-radius-default);z-index:1}.calendar-grid-item.is-active .calendar-grid-item-content{background:var(--palettes-product-700);color:var(--palettes-product-0)}.calendar-grid-item.is-active.is-today{color:var(--palettes-product-700);font-weight:600}.calendar-grid-item.is-active.is-today:after{content:\"\";position:absolute;inset-block-end:var(--pr-t-spacings-50);inset-inline:var(--pr-t-spacings-100) var(--pr-t-spacings-100);block-size:2px;background:var(--palettes-product-700);z-index:1}.calendar-grid-item.is-active:hover .calendar-grid-item-content{background:var(--palettes-neutral-50)}.calendar-grid-item.is-active:active .calendar-grid-item-content{background:var(--palettes-neutral-100)}.calendar-grid-item.is-active:focus-visible{outline:2px solid var(--palettes-product-700);outline-offset:2px;border-radius:var(--pr-t-border-radius-default);z-index:1}.calendar-grid-item.is-active.is-active .calendar-grid-item-content{background:var(--palettes-product-700);color:var(--palettes-product-0)}.calendar-grid-item.is-active.is-active.is-today:after{background-color:var(--palettes-neutral-0)!important;transition:background-color var(--commons-animations-durations-fast)}.calendar-grid-item.is-active.is-disabled,.calendar-grid-item.is-active[disabled]{color:var(--palettes-neutral-500);pointer-events:none}.calendar-grid-item.is-active.is-disabled:hover .calendar-grid-item-content,.calendar-grid-item.is-active[disabled]:hover .calendar-grid-item-content{background-color:var(--palettes-neutral-0)}}@layer components{.calendar-grid-item-content{position:relative;block-size:var(--components-calendar-day-size);inline-size:var(--components-calendar-day-size);line-height:var(--components-calendar-day-size);border-radius:var(--pr-t-border-radius-default);transition-duration:var(--commons-animations-durations-fast);transition-property:background-color,color}}\n"] }]
478
+ ], template: "<section class=\"calendar\">\n\t<header class=\"calendar-header\">\n\t\t<button type=\"button\" class=\"button mod-onlyIcon mod-ghost mod-S\" (click)=\"previous()\">\n\t\t\t<span aria-hidden=\"true\" class=\"lucca-icon icon-arrowChevronLeft\"></span>\n\t\t\t<span class=\"pr-u-mask\">{{ intl().previous }}</span>\n\t\t</button>\n\t\t<button type=\"button\" class=\"calendar-header-date\" (click)=\"increaseGranularity()\">{{ header.label }}</button>\n\t\t<button type=\"button\" class=\"button mod-onlyIcon mod-ghost mod-S\" (click)=\"next()\">\n\t\t\t<span aria-hidden=\"true\" class=\"lucca-icon icon-arrowChevronRight\"></span>\n\t\t\t<span class=\"pr-u-mask\">{{ intl().next }}</span>\n\t\t</button>\n\t</header>\n\t<section class=\"calendar-labels\" [class]=\"mod\">\n\t\t@for (label of labels; track label) {\n\t\t\t<div class=\"calendar-labels-item\">{{ label }}</div>\n\t\t}\n\t</section>\n\t<section class=\"calendar-grid\" [class]=\"mod\">\n\t\t@for (item of items; track item.id) {\n\t\t\t<button type=\"button\" class=\"calendar-grid-item\" [class]=\"item.mods\" [disabled]=\"item.isDisabled\" (click)=\"select(item)\">\n\t\t\t\t<div class=\"calendar-grid-item-content\">{{ item.label }}</div>\n\t\t\t</button>\n\t\t}\n\t</section>\n</section>\n", styles: ["@layer components{.calendar{background-color:var(--pr-t-elevation-surface-raised);inline-size:var(--components-calendar-width)}}@layer mods{:host-context(.mod-block) .calendar{inline-size:auto;max-inline-size:var(--components-calendar-width)}}@layer components{.calendar-header{display:flex;align-items:center;justify-content:space-between}}@layer components{.calendar-header-date{font:var(--pr-t-font-heading-3);color:var(--pr-t-color-text-heading);font-weight:var(--pr-t-font-fontWeight-semibold);padding:0;background:transparent;border:none;cursor:pointer}}@layer mods{.calendar-header-date:focus-visible{outline:2px solid var(--palettes-product-700);outline-offset:2px;border-radius:4px}}@layer components{.calendar-labels{display:none}}@layer mods{.calendar-labels.mod-dailyView{display:flex;align-items:center;flex-wrap:wrap;text-align:center;block-size:var(--components-calendar-day-size);font-size:var(--pr-t-font-body-S-fontSize);color:var(--palettes-product-700)}.calendar-labels.mod-dailyView .calendar-labels-item{inline-size:var(--components-calendar-day-size)}}@layer components{.calendar-grid{display:flex;text-align:center;align-self:stretch;flex-wrap:wrap;inline-size:var(--components-calendar-width)}}@layer mods{.calendar-grid.mod-dailyView .calendar-grid-item{inline-size:var(--components-calendar-day-size)}.calendar-grid.mod-monthlyView .calendar-grid-item-content,.calendar-grid.mod-yearlyView .calendar-grid-item-content{inline-size:5.83rem}}@layer components{.calendar-grid-item{block-size:var(--components-calendar-day-size);border:none;cursor:pointer;background:transparent;position:relative;padding:0;outline:none;color:var(--pr-t-color-text)}}@layer mods{.calendar-grid-item.is-previousMonth,.calendar-grid-item.is-nextMonth{color:var(--palettes-neutral-500)}.calendar-grid-item.is-today{color:var(--palettes-product-700);font-weight:var(--pr-t-font-fontWeight-semibold)}.calendar-grid-item.is-today:after{content:\"\";position:absolute;inset-block-end:var(--pr-t-spacings-50);inset-inline:var(--pr-t-spacings-100) var(--pr-t-spacings-100);block-size:2px;background:var(--palettes-product-700);z-index:1}.calendar-grid-item:hover .calendar-grid-item-content{background:var(--palettes-neutral-50)}.calendar-grid-item:active .calendar-grid-item-content{background:var(--palettes-neutral-100)}.calendar-grid-item:focus-visible{outline:2px solid var(--palettes-product-700);outline-offset:2px;border-radius:var(--pr-t-border-radius-default);z-index:1}.calendar-grid-item.is-active .calendar-grid-item-content{background:var(--palettes-product-700);color:var(--palettes-product-0)}.calendar-grid-item.is-active.is-today{color:var(--palettes-product-700);font-weight:600}.calendar-grid-item.is-active.is-today:after{content:\"\";position:absolute;inset-block-end:var(--pr-t-spacings-50);inset-inline:var(--pr-t-spacings-100) var(--pr-t-spacings-100);block-size:2px;background:var(--palettes-product-700);z-index:1}.calendar-grid-item.is-active:hover .calendar-grid-item-content{background:var(--palettes-neutral-50)}.calendar-grid-item.is-active:active .calendar-grid-item-content{background:var(--palettes-neutral-100)}.calendar-grid-item.is-active:focus-visible{outline:2px solid var(--palettes-product-700);outline-offset:2px;border-radius:var(--pr-t-border-radius-default);z-index:1}.calendar-grid-item.is-active.is-active .calendar-grid-item-content{background:var(--palettes-product-700);color:var(--palettes-product-0)}.calendar-grid-item.is-active.is-active.is-today:after{background-color:var(--palettes-neutral-0)!important;transition:background-color var(--commons-animations-durations-fast)}.calendar-grid-item.is-active.is-disabled,.calendar-grid-item.is-active[disabled]{color:var(--palettes-neutral-500);pointer-events:none}.calendar-grid-item.is-active.is-disabled:hover .calendar-grid-item-content,.calendar-grid-item.is-active[disabled]:hover .calendar-grid-item-content{background-color:var(--palettes-neutral-0)}}@layer components{.calendar-grid-item-content{position:relative;block-size:var(--components-calendar-day-size);inline-size:var(--components-calendar-day-size);line-height:var(--components-calendar-day-size);border-radius:var(--pr-t-border-radius-default);transition-duration:var(--commons-animations-durations-fast);transition-property:background-color,color}}\n"] }]
479
479
  }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.Renderer2 }, { type: undefined, decorators: [{
480
480
  type: Inject,
481
481
  args: [LOCALE_ID]
482
- }] }, { type: LuCalendarItemFactory }, { type: i1.ALuDateAdapter }], propDecorators: { min: [{
482
+ }] }, { type: LuCalendarItemFactory }, { type: i1.ALuDateAdapter }], propDecorators: { intl: [{ type: i0.Input, args: [{ isSignal: true, alias: "intl", required: false }] }], min: [{
483
483
  type: Input
484
484
  }], max: [{
485
485
  type: Input
@@ -562,19 +562,19 @@ class LuDateInputDirective extends ALuInput {
562
562
  this._adapter = _adapter;
563
563
  this._focused = false;
564
564
  this.granularity = ELuDateGranularity.day;
565
- this._intl = getIntl(LU_DATE_INPUT_TRANSLATIONS);
565
+ this.intl = input(...intlInputOptions(LU_DATE_INPUT_TRANSLATIONS), ...(ngDevMode ? [{ debugName: "intl" }] : []));
566
566
  }
567
567
  ngOnInit() {
568
568
  switch (this.granularity) {
569
569
  case ELuDateGranularity.year:
570
- this.placeholder = this._intl.placeholderYear;
570
+ this.placeholder = this.intl().placeholderYear;
571
571
  break;
572
572
  case ELuDateGranularity.month:
573
- this.placeholder = this._intl.placeholderMonth;
573
+ this.placeholder = this.intl().placeholderMonth;
574
574
  break;
575
575
  case ELuDateGranularity.day:
576
576
  default:
577
- this.placeholder = this._intl.placeholderDay;
577
+ this.placeholder = this.intl().placeholderDay;
578
578
  break;
579
579
  }
580
580
  }
@@ -633,7 +633,7 @@ class LuDateInputDirective extends ALuInput {
633
633
  return null;
634
634
  }
635
635
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.8", ngImport: i0, type: LuDateInputDirective, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i1.ALuDateAdapter }], target: i0.ɵɵFactoryTarget.Directive }); }
636
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.0.8", type: LuDateInputDirective, isStandalone: true, selector: "input[luDateInput]", inputs: { min: "min", max: "max", granularity: "granularity", placeholder: "placeholder" }, host: { listeners: { "input": "onInput($event)", "focus": "onFocus()", "blur": "onBlur()" } }, providers: [
636
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "21.0.8", type: LuDateInputDirective, isStandalone: true, selector: "input[luDateInput]", inputs: { min: { classPropertyName: "min", publicName: "min", isSignal: false, isRequired: false, transformFunction: null }, max: { classPropertyName: "max", publicName: "max", isSignal: false, isRequired: false, transformFunction: null }, granularity: { classPropertyName: "granularity", publicName: "granularity", isSignal: false, isRequired: false, transformFunction: null }, placeholder: { classPropertyName: "placeholder", publicName: "placeholder", isSignal: false, isRequired: false, transformFunction: null }, intl: { classPropertyName: "intl", publicName: "intl", isSignal: true, isRequired: false, transformFunction: null } }, host: { listeners: { "input": "onInput($event)", "focus": "onFocus()", "blur": "onBlur()" } }, providers: [
637
637
  {
638
638
  provide: NG_VALUE_ACCESSOR,
639
639
  useExisting: forwardRef(() => LuDateInputDirective),
@@ -671,7 +671,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.8", ngImpor
671
671
  type: Input
672
672
  }], placeholder: [{
673
673
  type: Input
674
- }], onInput: [{
674
+ }], intl: [{ type: i0.Input, args: [{ isSignal: true, alias: "intl", required: false }] }], onInput: [{
675
675
  type: HostListener,
676
676
  args: ['input', ['$event']]
677
677
  }], onFocus: [{
@@ -762,7 +762,7 @@ class LuDatePickerComponent extends ALuPickerPanel {
762
762
  provide: ALuPickerPanel,
763
763
  useExisting: forwardRef(() => LuDatePickerComponent),
764
764
  },
765
- ], viewQueries: [{ propertyName: "vcTemplateRef", first: true, predicate: TemplateRef, descendants: true, static: true }], exportAs: ["LuDatePicker"], usesInheritance: true, ngImport: i0, template: "<ng-template>\n\t<div\n\t\tclass=\"lu-picker-panel lu-date-picker-panel\"\n\t\trole=\"dialog\"\n\t\t[class]=\"panelClassesMap\"\n\t\t(click)=\"onClick()\"\n\t\t(mouseover)=\"onMouseOver()\"\n\t\t(mouseleave)=\"onMouseLeave()\"\n\t\t(mousedown)=\"onMouseDown()\"\n\t>\n\t\t<div class=\"lu-picker-content\" [class]=\"contentClassesMap\" cdkTrapFocus=\"false\" cdkTrapFocusAutoCapture=\"true\">\n\t\t\t<label class=\"textfield lu-picker-textfield\">\n\t\t\t\t<input\n\t\t\t\t\tluDateInput\n\t\t\t\t\tclass=\"textfield-input\"\n\t\t\t\t\t[ngModel]=\"_value\"\n\t\t\t\t\t(ngModelChange)=\"_onInput($event)\"\n\t\t\t\t\t[ngModelOptions]=\"{ standalone: true }\"\n\t\t\t\t\t(keydown.enter)=\"_onEnter()\"\n\t\t\t\t\t[min]=\"min\"\n\t\t\t\t\t[max]=\"max\"\n\t\t\t\t\t[granularity]=\"granularity\"\n\t\t\t\t/>\n\t\t\t</label>\n\t\t\t<lu-calendar\n\t\t\t\t[ngModel]=\"_value\"\n\t\t\t\t(ngModelChange)=\"_onCalendar($event)\"\n\t\t\t\t[ngModelOptions]=\"{ standalone: true }\"\n\t\t\t\t[min]=\"min\"\n\t\t\t\t[max]=\"max\"\n\t\t\t\t[granularity]=\"granularity\"\n\t\t\t\t[startOn]=\"startOn\"\n\t\t\t/>\n\t\t</div>\n\t</div>\n</ng-template>\n", dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: LuCalendarInputComponent, selector: "lu-calendar", inputs: ["min", "max", "granularity", "startOn"] }, { kind: "directive", type: LuDateInputDirective, selector: "input[luDateInput]", inputs: ["min", "max", "granularity", "placeholder"] }, { kind: "ngmodule", type: A11yModule }, { kind: "directive", type: i3.CdkTrapFocus, selector: "[cdkTrapFocus]", inputs: ["cdkTrapFocus", "cdkTrapFocusAutoCapture"], exportAs: ["cdkTrapFocus"] }], animations: [luTransformPopover], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
765
+ ], viewQueries: [{ propertyName: "vcTemplateRef", first: true, predicate: TemplateRef, descendants: true, static: true }], exportAs: ["LuDatePicker"], usesInheritance: true, ngImport: i0, template: "<ng-template>\n\t<div\n\t\tclass=\"lu-picker-panel lu-date-picker-panel\"\n\t\trole=\"dialog\"\n\t\t[class]=\"panelClassesMap\"\n\t\t(click)=\"onClick()\"\n\t\t(mouseover)=\"onMouseOver()\"\n\t\t(mouseleave)=\"onMouseLeave()\"\n\t\t(mousedown)=\"onMouseDown()\"\n\t>\n\t\t<div class=\"lu-picker-content\" [class]=\"contentClassesMap\" cdkTrapFocus=\"false\" cdkTrapFocusAutoCapture=\"true\">\n\t\t\t<label class=\"textfield lu-picker-textfield\">\n\t\t\t\t<input\n\t\t\t\t\tluDateInput\n\t\t\t\t\tclass=\"textfield-input\"\n\t\t\t\t\t[ngModel]=\"_value\"\n\t\t\t\t\t(ngModelChange)=\"_onInput($event)\"\n\t\t\t\t\t[ngModelOptions]=\"{ standalone: true }\"\n\t\t\t\t\t(keydown.enter)=\"_onEnter()\"\n\t\t\t\t\t[min]=\"min\"\n\t\t\t\t\t[max]=\"max\"\n\t\t\t\t\t[granularity]=\"granularity\"\n\t\t\t\t/>\n\t\t\t</label>\n\t\t\t<lu-calendar\n\t\t\t\t[ngModel]=\"_value\"\n\t\t\t\t(ngModelChange)=\"_onCalendar($event)\"\n\t\t\t\t[ngModelOptions]=\"{ standalone: true }\"\n\t\t\t\t[min]=\"min\"\n\t\t\t\t[max]=\"max\"\n\t\t\t\t[granularity]=\"granularity\"\n\t\t\t\t[startOn]=\"startOn\"\n\t\t\t/>\n\t\t</div>\n\t</div>\n</ng-template>\n", dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: LuCalendarInputComponent, selector: "lu-calendar", inputs: ["intl", "min", "max", "granularity", "startOn"] }, { kind: "directive", type: LuDateInputDirective, selector: "input[luDateInput]", inputs: ["min", "max", "granularity", "placeholder", "intl"] }, { kind: "ngmodule", type: A11yModule }, { kind: "directive", type: i3.CdkTrapFocus, selector: "[cdkTrapFocus]", inputs: ["cdkTrapFocus", "cdkTrapFocusAutoCapture"], exportAs: ["cdkTrapFocus"] }], animations: [luTransformPopover], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
766
766
  }
767
767
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.8", ngImport: i0, type: LuDatePickerComponent, decorators: [{
768
768
  type: Component,
@@ -809,54 +809,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.8", ngImpor
809
809
  }]
810
810
  }] });
811
811
 
812
- const Translations = {
813
- pt: {
814
- placeholderDay: 'DD/MM/AAAA',
815
- placeholderMonth: 'MM/AAAA',
816
- placeholderYear: 'AAAA',
817
- },
818
- es: {
819
- placeholderDay: 'DD/MM/AAAA',
820
- placeholderMonth: 'MM/AAAA',
821
- placeholderYear: 'AAAA',
822
- },
823
- 'nl-BE': {
824
- placeholderDay: 'DD/MM/JJJJ',
825
- placeholderMonth: 'MM/JJJJ',
826
- placeholderYear: 'JJJJ',
827
- },
828
- nl: {
829
- placeholderDay: 'DD/MM/JJJJ',
830
- placeholderMonth: 'MM/JJJJ',
831
- placeholderYear: 'JJJJ',
832
- },
833
- it: {
834
- placeholderDay: 'GG/MM/AAAA',
835
- placeholderMonth: 'MM/AAAA',
836
- placeholderYear: 'AAAA',
837
- },
838
- de: {
839
- placeholderDay: 'TT/MM/JJJJ',
840
- placeholderMonth: 'MM/JJJJ',
841
- placeholderYear: 'JJJJ',
842
- },
843
- fr: {
844
- placeholderDay: 'JJ/MM/AAAA',
845
- placeholderMonth: 'MM/AAAA',
846
- placeholderYear: 'AAAA',
847
- },
848
- en: {
849
- placeholderDay: 'DD/MM/YYYY',
850
- placeholderMonth: 'MM/YYYY',
851
- placeholderYear: 'YYYY',
852
- },
853
- };
854
-
855
- const LU_DATE_SELECT_INPUT_TRANSLATIONS = new InjectionToken('LuDateSelectInputtranslations', {
856
- factory: () => luDateSelectInputTranslations,
857
- });
858
- const luDateSelectInputTranslations = Translations;
859
-
860
812
  class LuDateSelectInputComponent extends ALuSelectInputComponent {
861
813
  set inputPlaceholder(p) {
862
814
  this._placeholder = p;
@@ -889,7 +841,6 @@ class LuDateSelectInputComponent extends ALuSelectInputComponent {
889
841
  this.granularity = ELuDateGranularity.day;
890
842
  this.hideClearer = false;
891
843
  this._startOn = this._adapter.forgeToday();
892
- this._intl = getIntl(LU_DATE_SELECT_INPUT_TRANSLATIONS);
893
844
  this.overlapInput = true;
894
845
  }
895
846
  validate(control) {
@@ -920,7 +871,7 @@ class LuDateSelectInputComponent extends ALuSelectInputComponent {
920
871
  useExisting: LuDateSelectInputComponent,
921
872
  multi: true,
922
873
  },
923
- ], usesInheritance: true, ngImport: i0, template: "<div class=\"lu-select-placeholder\">{{ placeholder }}</div>\n<div class=\"lu-select-value\">\n\t<div class=\"lu-select-display-wrapper notranslate\">\n\t\t<ng-container #display />\n\t</div>\n</div>\n<div class=\"lu-select-suffix\">\n\t<lu-clear [attr.hidden]=\"hideClearer ? 'hidden' : null\" />\n</div>\n<ng-template luDisplayer let-value> {{ value | luDate: format }} </ng-template>\n<lu-date-picker [min]=\"min\" [max]=\"max\" [granularity]=\"granularity\" [startOn]=\"startOn\" />\n", styles: ["@charset \"UTF-8\";@layer base{:root{--components-options-item-padding-vertical: var(--pr-t-spacings-50);--components-options-item-padding-horizontal: var(--pr-t-spacings-100);--components-options-item-multiple-padding: 2.25rem;--components-options-item-icon-color: var(--palettes-neutral-800);--components-options-checkbox-size: 1.25rem;--components-options-checkbox-color: var(--palettes-700, var(--palettes-product-700));--components-options-checkbox-border-radius: var(--pr-t-border-radius-small);--components-options-checkbox-border-color: var(--palettes-neutral-700);--components-options-establishment-multiple-padding: 2rem}}@layer reset,base,components,mods,product,utils;@layer components{:host{--components-select-input-padding-horizontal: var(--pr-t-spacings-100);--components-select-input-padding-vertical: var(--pr-t-spacings-100);--components-select-framed-color: var(--palettes-neutral-500);--components-select-framed-color50: var(--palettes-neutral-50);--components-select-framed-see-through: var(--palettes-neutral-50);--components-select-framed-text: var(--pr-t-color-text);--components-select-framed-placeholder: #cccccc;--components-select-framed-side-padding: var(--pr-t-spacings-200);--components-select-framed-top-padding: var(--pr-t-spacings-400);--components-select-framed-bottom-padding: var(--pr-t-spacings-200);--components-select-framed-label-top-offset: var(--pr-t-spacings-100);cursor:pointer;outline:none;padding:0;gap:0}:host:after{--icon-content: \"\\e97c\";font-weight:var(--pr-t-font-fontWeight-regular);display:inline-block;vertical-align:text-bottom;font-style:normal;font-family:var(--icon-fontFamily);content:var(--icon-content)/\"\";-webkit-font-smoothing:antialiased;text-transform:none;color:var(--palettes-neutral-600);inset-block-end:var(--components-select-input-padding-vertical);font-size:var(--pr-t-font-body-M-lineHeight);line-height:var(--pr-t-font-body-M-lineHeight);pointer-events:none;position:absolute;inset-inline-end:var(--components-select-input-padding-horizontal);transition:transform var(--commons-animations-durations-standard) ease}}@layer mods{:host[disabled],:host.is-disabled{cursor:not-allowed;pointer-events:all}}@layer components{.lu-select-display-wrapper{display:block;inline-size:100%;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.lu-select-value{font:var(--pr-t-font-body-M);min-block-size:calc(var(--components-select-framed-bottom-padding) + var(--pr-t-font-body-M-lineHeight));padding-block:var(--components-select-input-padding-vertical);padding-inline:var(--components-select-input-padding-horizontal) 3.5rem;transition:all var(--commons-animations-durations-standard);display:none}.lu-select-placeholder{color:var(--palettes-neutral-400);font:var(--pr-t-font-body-M);min-block-size:calc(var(--components-select-framed-bottom-padding) + var(--pr-t-font-body-M-lineHeight));padding-block:var(--components-select-input-padding-vertical);padding-inline:var(--components-select-input-padding-horizontal) 3.5rem;transition:all var(--commons-animations-durations-standard);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lu-select-suffix,.lu-select-clearer{position:absolute;inset-block-end:var(--pr-t-spacings-150);inset-inline-end:2.5rem}::ng-deep .lu-select-value .chip{display:inline-flex;max-inline-size:100%;margin-block:0 var(--pr-t-spacings-50);margin-inline:0 var(--pr-t-spacings-50);text-overflow:ellipsis;overflow:hidden;white-space:nowrap}}@layer mods{:host-context(.textfield.mod-S){padding:0}:host-context(.textfield.mod-S) .lu-select-value,:host-context(.textfield.mod-S) .lu-select-placeholder{font-size:var(--pr-t-font-body-S-fontSize);line-height:var(--pr-t-font-body-XS-lineHeight);min-block-size:calc(var(--components-select-framed-bottom-padding) + var(--pr-t-font-body-XS-lineHeight))}:host-context(.textfield.mod-S) .lu-select-clearer{inset-block-end:var(--pr-t-spacings-100)}:host-context(.textfield.mod-S):after{line-height:var(--pr-t-font-body-XS-lineHeight);font-size:var(--pr-t-font-body-S-lineHeight)}:host-context(.textfield.mod-S) .lu-select-suffix{inset-block-end:.5rem;inset-inline-end:2rem}:host-context(.textfield.mod-S) ::ng-deep .lu-select-value .chip{block-size:var(--pr-t-font-body-XS-lineHeight);line-height:var(--pr-t-font-body-XS-lineHeight);font-size:var(--pr-t-font-body-XS-fontSize);padding-inline:var(--pr-t-spacings-50);gap:var(--pr-t-spacings-50)}:host-context(.textfield.mod-S) ::ng-deep .lu-select-value .numericBadge{--components-numericBadge-size: 1.25rem;--components-numericBadge-borderRadius: var(--pr-t-border-radius-small);--components-numericBadge-font: var(--pr-t-font-body-XS);--components-numericBadge-fontSize: var(--pr-t-font-body-XS-fontSize);--components-numericBadge-lineHeight: var(--pr-t-font-body-XS-lineHeight)}:host-context(.textfield.mod-framed).textfield-input,:host-context(.form.mod-framed).textfield-input{padding-block:var(--components-select-framed-top-padding) 0;padding-inline:0}:host-context(.textfield.mod-framed).textfield-input:after,:host-context(.form.mod-framed).textfield-input:after{color:var(--palettes-neutral-500);inset-block-end:var(--components-select-framed-bottom-padding);inset-inline-end:var(--pr-t-spacings-100)}:host-context(.textfield.mod-framed).textfield-input .lu-select-value,:host-context(.form.mod-framed).textfield-input .lu-select-value{padding-block:0 var(--components-select-framed-bottom-padding);padding-inline:var(--components-select-framed-side-padding) calc(var(--components-select-framed-side-padding) * 3)}:host-context(.textfield.mod-framed).textfield-input .lu-select-placeholder,:host-context(.form.mod-framed).textfield-input .lu-select-placeholder{color:var(--palettes-neutral-400);padding-block:0 var(--components-select-framed-bottom-padding);padding-inline:var(--components-select-framed-side-padding) calc(var(--components-select-framed-side-padding) * 3)}:host-context(.textfield.mod-framed).textfield-input .lu-select-suffix,:host-context(.form.mod-framed).textfield-input .lu-select-suffix{inset-block-end:var(--components-select-framed-bottom-padding);inset-inline-end:1.7rem}:host-context(.textfield.mod-filter) .lu-select-value,:host-context(.textfield.mod-filter) .lu-select-placeholder{padding:0;block-size:auto;padding-block-start:var(--pr-t-spacings-200);color:var(--pr-t-color-text)}:host-context(.textfield.mod-material):after{color:var(--palettes-neutral-500);inset-block-end:.6rem;inset-inline-end:0}:host-context(.textfield.mod-material) .lu-select-value,:host-context(.textfield.mod-material) .lu-select-placeholder{padding-inline:0 .8rem}:host-context(.textfield.mod-material) .lu-select-suffix{inset-inline-end:calc(2 * var(--components-select-input-padding-horizontal))}:host-context(.textfield.mod-material).is-select .lu-select-placeholder{display:none}:host-context(.textfield.mod-material).mod-search:after{inset-block-end:0}:host-context(.textfield.mod-material).mod-search .lu-select-suffix{inset-inline-end:calc(2.75 * var(--components-select-input-padding-horizontal))}:host-context(.textfield.mod-material .textfield-input.is-focused) .lu-select-placeholder{display:none}:host(.mod-multiple) .lu-select-value{block-size:auto;align-items:center}:host(.mod-multiple) .lu-select-display-wrapper{overflow:visible;white-space:normal;margin-block-end:calc(var(--pr-t-spacings-50) * -1)}:host-context(.textfield.mod-outlined).textfield-input:after{color:var(--palettes-neutral-600)}:host-context(.textfield.mod-outlined).textfield-input .lu-select-placeholder{color:var(--palettes-neutral-400)}:host-context(.textfield.mod-outlined) :host-context(.textfield-input.is-error):after{color:var(--palettes-error-600)}:host-context(.textfield.mod-outlined) :host-context(.textfield-input.is-error) .lu-select-placeholder{color:var(--palettes-error-400)}:host-context(.textfield-input.is-filled) .lu-select-placeholder{display:none}:host-context(.textfield-input.is-filled) .lu-select-value{display:flex;align-items:flex-start}:host-context(.textfield .textfield-input.is-focused):after{transform:rotate(-180deg)}:host-context(.textfield-input.is-clearable) .lu-select-value{padding-inline-end:3.5rem}:host-context(.textfield-input.is-error,.textfield-input.is-invalid,.textfield-input.ng-invalid.ng-touched) .lu-select-placeholder{color:var(--palettes-error-400)}:host-context(.textfield-input.is-disabled,.textfield-input[disabled]):after{color:var(--commons-disabled-color)}:host-context(.textfield-input.is-disabled,.textfield-input[disabled]) .lu-select-placeholder{color:var(--commons-disabled-placeholder)}}@layer components{:host:after{--icon-content: \"\\e920\";font-weight:var(--pr-t-font-fontWeight-regular);display:inline-block;vertical-align:text-bottom;font-style:normal;font-family:var(--icon-fontFamily);content:var(--icon-content)/\"\";-webkit-font-smoothing:antialiased;text-transform:none;transform:none!important}}\n"], dependencies: [{ kind: "component", type: LuDatePickerComponent, selector: "lu-date-picker", inputs: ["min", "max", "granularity", "startOn"], outputs: ["close", "open", "hovered", "onSelectValue"], exportAs: ["LuDatePicker"] }, { kind: "ngmodule", type: OverlayModule }, { kind: "component", type: ClearComponent, selector: "lu-clear", inputs: ["size", "disabled", "palette", "inverted"], outputs: ["onClear"], exportAs: ["luClearer"] }, { kind: "directive", type: LuInputDisplayerDirective, selector: "[luDisplayer]", inputs: ["luDisplayerMultiple", "multiple"] }, { kind: "pipe", type: LuDateAdapterPipe, name: "luDate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
874
+ ], usesInheritance: true, ngImport: i0, template: "<div class=\"lu-select-placeholder\">{{ placeholder }}</div>\n<div class=\"lu-select-value\">\n\t<div class=\"lu-select-display-wrapper notranslate\">\n\t\t<ng-container #display />\n\t</div>\n</div>\n<div class=\"lu-select-suffix\">\n\t<lu-clear [attr.hidden]=\"hideClearer ? 'hidden' : null\" />\n</div>\n<ng-template luDisplayer let-value> {{ value | luDate: format }} </ng-template>\n<lu-date-picker [min]=\"min\" [max]=\"max\" [granularity]=\"granularity\" [startOn]=\"startOn\" />\n", styles: ["@charset \"UTF-8\";@layer base{:root{--components-options-item-padding-vertical: var(--pr-t-spacings-50);--components-options-item-padding-horizontal: var(--pr-t-spacings-100);--components-options-item-multiple-padding: 2.25rem;--components-options-item-icon-color: var(--palettes-neutral-800);--components-options-checkbox-size: 1.25rem;--components-options-checkbox-color: var(--palettes-700, var(--palettes-product-700));--components-options-checkbox-border-radius: var(--pr-t-border-radius-small);--components-options-checkbox-border-color: var(--palettes-neutral-700);--components-options-establishment-multiple-padding: 2rem}}@layer reset,base,components,mods,product,utils;@layer components{:host{--components-select-input-padding-horizontal: var(--pr-t-spacings-100);--components-select-input-padding-vertical: var(--pr-t-spacings-100);--components-select-framed-color: var(--palettes-neutral-500);--components-select-framed-color50: var(--palettes-neutral-50);--components-select-framed-see-through: var(--palettes-neutral-50);--components-select-framed-text: var(--pr-t-color-text);--components-select-framed-placeholder: #cccccc;--components-select-framed-side-padding: var(--pr-t-spacings-200);--components-select-framed-top-padding: var(--pr-t-spacings-400);--components-select-framed-bottom-padding: var(--pr-t-spacings-200);--components-select-framed-label-top-offset: var(--pr-t-spacings-100);cursor:pointer;outline:none;padding:0;gap:0}:host:after{--icon-content: \"\\e97c\";font-weight:var(--pr-t-font-fontWeight-regular);display:inline-block;vertical-align:text-bottom;font-style:normal;font-family:var(--icon-fontFamily);content:var(--icon-content)/\"\";-webkit-font-smoothing:antialiased;text-transform:none;color:var(--palettes-neutral-600);inset-block-end:var(--components-select-input-padding-vertical);font-size:var(--pr-t-font-body-M-lineHeight);line-height:var(--pr-t-font-body-M-lineHeight);pointer-events:none;position:absolute;inset-inline-end:var(--components-select-input-padding-horizontal);transition:transform var(--commons-animations-durations-standard) ease}}@layer mods{:host[disabled],:host.is-disabled{cursor:not-allowed;pointer-events:all}}@layer components{.lu-select-display-wrapper{display:block;inline-size:100%;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.lu-select-value{font:var(--pr-t-font-body-M);min-block-size:calc(var(--components-select-framed-bottom-padding) + var(--pr-t-font-body-M-lineHeight));padding-block:var(--components-select-input-padding-vertical);padding-inline:var(--components-select-input-padding-horizontal) 3.5rem;transition:all var(--commons-animations-durations-standard);display:none}.lu-select-placeholder{color:var(--palettes-neutral-400);font:var(--pr-t-font-body-M);min-block-size:calc(var(--components-select-framed-bottom-padding) + var(--pr-t-font-body-M-lineHeight));padding-block:var(--components-select-input-padding-vertical);padding-inline:var(--components-select-input-padding-horizontal) 3.5rem;transition:all var(--commons-animations-durations-standard);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lu-select-suffix,.lu-select-clearer{position:absolute;inset-block-end:var(--pr-t-spacings-150);inset-inline-end:2.5rem}::ng-deep .lu-select-value .chip{display:inline-flex;max-inline-size:100%;margin-block:0 var(--pr-t-spacings-50);margin-inline:0 var(--pr-t-spacings-50);text-overflow:ellipsis;overflow:hidden;white-space:nowrap}}@layer mods{:host-context(.textfield.mod-S){padding:0}:host-context(.textfield.mod-S) .lu-select-value,:host-context(.textfield.mod-S) .lu-select-placeholder{font-size:var(--pr-t-font-body-S-fontSize);line-height:var(--pr-t-font-body-XS-lineHeight);min-block-size:calc(var(--components-select-framed-bottom-padding) + var(--pr-t-font-body-XS-lineHeight))}:host-context(.textfield.mod-S) .lu-select-clearer{inset-block-end:var(--pr-t-spacings-100)}:host-context(.textfield.mod-S):after{line-height:var(--pr-t-font-body-XS-lineHeight);font-size:var(--pr-t-font-body-S-lineHeight)}:host-context(.textfield.mod-S) .lu-select-suffix{inset-block-end:.5rem;inset-inline-end:2rem}:host-context(.textfield.mod-S) ::ng-deep .lu-select-value .chip{block-size:var(--pr-t-font-body-XS-lineHeight);line-height:var(--pr-t-font-body-XS-lineHeight);font-size:var(--pr-t-font-body-XS-fontSize);padding-inline:var(--pr-t-spacings-50);gap:var(--pr-t-spacings-50)}:host-context(.textfield.mod-S) ::ng-deep .lu-select-value .numericBadge{--components-numericBadge-size: 1.25rem;--components-numericBadge-borderRadius: var(--pr-t-border-radius-small);--components-numericBadge-font: var(--pr-t-font-body-XS);--components-numericBadge-fontSize: var(--pr-t-font-body-XS-fontSize);--components-numericBadge-lineHeight: var(--pr-t-font-body-XS-lineHeight)}:host-context(.textfield.mod-framed).textfield-input,:host-context(.form.mod-framed).textfield-input{padding-block:var(--components-select-framed-top-padding) 0;padding-inline:0}:host-context(.textfield.mod-framed).textfield-input:after,:host-context(.form.mod-framed).textfield-input:after{color:var(--palettes-neutral-500);inset-block-end:var(--components-select-framed-bottom-padding);inset-inline-end:var(--pr-t-spacings-100)}:host-context(.textfield.mod-framed).textfield-input .lu-select-value,:host-context(.form.mod-framed).textfield-input .lu-select-value{padding-block:0 var(--components-select-framed-bottom-padding);padding-inline:var(--components-select-framed-side-padding) calc(var(--components-select-framed-side-padding) * 3)}:host-context(.textfield.mod-framed).textfield-input .lu-select-placeholder,:host-context(.form.mod-framed).textfield-input .lu-select-placeholder{color:var(--palettes-neutral-400);padding-block:0 var(--components-select-framed-bottom-padding);padding-inline:var(--components-select-framed-side-padding) calc(var(--components-select-framed-side-padding) * 3)}:host-context(.textfield.mod-framed).textfield-input .lu-select-suffix,:host-context(.form.mod-framed).textfield-input .lu-select-suffix{inset-block-end:var(--components-select-framed-bottom-padding);inset-inline-end:1.7rem}:host-context(.textfield.mod-filter) .lu-select-value,:host-context(.textfield.mod-filter) .lu-select-placeholder{padding:0;block-size:auto;padding-block-start:var(--pr-t-spacings-200);color:var(--pr-t-color-text)}:host-context(.textfield.mod-material):after{color:var(--palettes-neutral-500);inset-block-end:.6rem;inset-inline-end:0}:host-context(.textfield.mod-material) .lu-select-value,:host-context(.textfield.mod-material) .lu-select-placeholder{padding-inline:0 .8rem}:host-context(.textfield.mod-material) .lu-select-suffix{inset-inline-end:calc(2 * var(--components-select-input-padding-horizontal))}:host-context(.textfield.mod-material).is-select .lu-select-placeholder{display:none}:host-context(.textfield.mod-material).mod-search:after{inset-block-end:0}:host-context(.textfield.mod-material).mod-search .lu-select-suffix{inset-inline-end:calc(2.75 * var(--components-select-input-padding-horizontal))}:host-context(.textfield.mod-material .textfield-input.is-focused) .lu-select-placeholder{display:none}:host(.mod-multiple) .lu-select-value{block-size:auto;align-items:center}:host(.mod-multiple) .lu-select-display-wrapper{overflow:visible;white-space:normal;margin-block-end:calc(var(--pr-t-spacings-50) * -1)}:host-context(.textfield.mod-outlined).textfield-input:after{color:var(--palettes-neutral-600)}:host-context(.textfield.mod-outlined).textfield-input .lu-select-placeholder{color:var(--palettes-neutral-400)}:host-context(.textfield.mod-outlined) :host-context(.textfield-input.is-error):after{color:var(--palettes-error-600)}:host-context(.textfield.mod-outlined) :host-context(.textfield-input.is-error) .lu-select-placeholder{color:var(--palettes-error-400)}:host-context(.textfield-input.is-filled) .lu-select-placeholder{display:none}:host-context(.textfield-input.is-filled) .lu-select-value{display:flex;align-items:flex-start}:host-context(.textfield .textfield-input.is-focused):after{transform:rotate(-180deg)}:host-context(.textfield-input.is-clearable) .lu-select-value{padding-inline-end:3.5rem}:host-context(.textfield-input.is-error,.textfield-input.is-invalid,.textfield-input.ng-invalid.ng-touched) .lu-select-placeholder{color:var(--palettes-error-400)}:host-context(.textfield-input.is-disabled,.textfield-input[disabled]):after{color:var(--commons-disabled-color)}:host-context(.textfield-input.is-disabled,.textfield-input[disabled]) .lu-select-placeholder{color:var(--commons-disabled-placeholder)}}@layer components{:host:after{--icon-content: \"\\e920\";font-weight:var(--pr-t-font-fontWeight-regular);display:inline-block;vertical-align:text-bottom;font-style:normal;font-family:var(--icon-fontFamily);content:var(--icon-content)/\"\";-webkit-font-smoothing:antialiased;text-transform:none;transform:none!important}}\n"], dependencies: [{ kind: "component", type: LuDatePickerComponent, selector: "lu-date-picker", inputs: ["min", "max", "granularity", "startOn"], outputs: ["close", "open", "hovered", "onSelectValue"], exportAs: ["LuDatePicker"] }, { kind: "ngmodule", type: OverlayModule }, { kind: "component", type: ClearComponent, selector: "lu-clear", inputs: ["intl", "size", "disabled", "palette", "inverted"], outputs: ["onClear"], exportAs: ["luClearer"] }, { kind: "directive", type: LuInputDisplayerDirective, selector: "[luDisplayer]", inputs: ["luDisplayerMultiple", "multiple"] }, { kind: "pipe", type: LuDateAdapterPipe, name: "luDate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
924
875
  }
925
876
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.8", ngImport: i0, type: LuDateSelectInputComponent, decorators: [{
926
877
  type: Component,
@@ -967,6 +918,54 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.8", ngImpor
967
918
  }]
968
919
  }] });
969
920
 
921
+ const Translations = {
922
+ pt: {
923
+ placeholderDay: 'DD/MM/AAAA',
924
+ placeholderMonth: 'MM/AAAA',
925
+ placeholderYear: 'AAAA',
926
+ },
927
+ es: {
928
+ placeholderDay: 'DD/MM/AAAA',
929
+ placeholderMonth: 'MM/AAAA',
930
+ placeholderYear: 'AAAA',
931
+ },
932
+ 'nl-BE': {
933
+ placeholderDay: 'DD/MM/JJJJ',
934
+ placeholderMonth: 'MM/JJJJ',
935
+ placeholderYear: 'JJJJ',
936
+ },
937
+ nl: {
938
+ placeholderDay: 'DD/MM/JJJJ',
939
+ placeholderMonth: 'MM/JJJJ',
940
+ placeholderYear: 'JJJJ',
941
+ },
942
+ it: {
943
+ placeholderDay: 'GG/MM/AAAA',
944
+ placeholderMonth: 'MM/AAAA',
945
+ placeholderYear: 'AAAA',
946
+ },
947
+ de: {
948
+ placeholderDay: 'TT/MM/JJJJ',
949
+ placeholderMonth: 'MM/JJJJ',
950
+ placeholderYear: 'JJJJ',
951
+ },
952
+ fr: {
953
+ placeholderDay: 'JJ/MM/AAAA',
954
+ placeholderMonth: 'MM/AAAA',
955
+ placeholderYear: 'AAAA',
956
+ },
957
+ en: {
958
+ placeholderDay: 'DD/MM/YYYY',
959
+ placeholderMonth: 'MM/YYYY',
960
+ placeholderYear: 'YYYY',
961
+ },
962
+ };
963
+
964
+ const LU_DATE_SELECT_INPUT_TRANSLATIONS = new InjectionToken('LuDateSelectInputtranslations', {
965
+ factory: () => luDateSelectInputTranslations,
966
+ });
967
+ const luDateSelectInputTranslations = Translations;
968
+
970
969
  /**
971
970
  * @deprecated use `LuCalendarInputComponent, LuDatePickerComponent, LuDateInputDirective, LuDateAdapterPipe, LuDateSelectInputComponent` instead
972
971
  */