@lucca-front/ng 21.0.3 → 21.1.0-split.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (243) hide show
  1. package/fesm2022/lucca-front-ng-a11y.mjs +8 -8
  2. package/fesm2022/lucca-front-ng-a11y.mjs.map +1 -1
  3. package/fesm2022/lucca-front-ng-api.mjs +51 -51
  4. package/fesm2022/lucca-front-ng-api.mjs.map +1 -1
  5. package/fesm2022/lucca-front-ng-app-layout.mjs +4 -4
  6. package/fesm2022/lucca-front-ng-app-layout.mjs.map +1 -1
  7. package/fesm2022/lucca-front-ng-box.mjs +3 -3
  8. package/fesm2022/lucca-front-ng-box.mjs.map +1 -1
  9. package/fesm2022/lucca-front-ng-breadcrumbs.mjs +10 -10
  10. package/fesm2022/lucca-front-ng-breadcrumbs.mjs.map +1 -1
  11. package/fesm2022/lucca-front-ng-bubble-icon.mjs +51 -0
  12. package/fesm2022/lucca-front-ng-bubble-icon.mjs.map +1 -0
  13. package/fesm2022/lucca-front-ng-bubble-illustration.mjs +135 -0
  14. package/fesm2022/lucca-front-ng-bubble-illustration.mjs.map +1 -0
  15. package/fesm2022/lucca-front-ng-button.mjs +1 -119
  16. package/fesm2022/lucca-front-ng-button.mjs.map +1 -1
  17. package/fesm2022/lucca-front-ng-callout.mjs +37 -63
  18. package/fesm2022/lucca-front-ng-callout.mjs.map +1 -1
  19. package/fesm2022/lucca-front-ng-chip.mjs +9 -39
  20. package/fesm2022/lucca-front-ng-chip.mjs.map +1 -1
  21. package/fesm2022/lucca-front-ng-clear.mjs +8 -23
  22. package/fesm2022/lucca-front-ng-clear.mjs.map +1 -1
  23. package/fesm2022/lucca-front-ng-code.mjs +3 -3
  24. package/fesm2022/lucca-front-ng-color.mjs +28 -0
  25. package/fesm2022/lucca-front-ng-color.mjs.map +1 -0
  26. package/fesm2022/lucca-front-ng-comment.mjs +26 -28
  27. package/fesm2022/lucca-front-ng-comment.mjs.map +1 -1
  28. package/fesm2022/lucca-front-ng-container.mjs +11 -9
  29. package/fesm2022/lucca-front-ng-container.mjs.map +1 -1
  30. package/fesm2022/lucca-front-ng-core-select-api.mjs +9 -9
  31. package/fesm2022/lucca-front-ng-core-select-department.mjs +6 -6
  32. package/fesm2022/lucca-front-ng-core-select-establishment.mjs +9 -9
  33. package/fesm2022/lucca-front-ng-core-select-job-qualification.mjs +8 -6
  34. package/fesm2022/lucca-front-ng-core-select-job-qualification.mjs.map +1 -1
  35. package/fesm2022/lucca-front-ng-core-select-occupation-category.mjs +3 -3
  36. package/fesm2022/lucca-front-ng-core-select-user.mjs +30 -30
  37. package/fesm2022/lucca-front-ng-core-select-user.mjs.map +1 -1
  38. package/fesm2022/lucca-front-ng-core-select.mjs +117 -96
  39. package/fesm2022/lucca-front-ng-core-select.mjs.map +1 -1
  40. package/fesm2022/lucca-front-ng-core.mjs +27 -87
  41. package/fesm2022/lucca-front-ng-core.mjs.map +1 -1
  42. package/fesm2022/lucca-front-ng-data-table.mjs +31 -31
  43. package/fesm2022/lucca-front-ng-data-table.mjs.map +1 -1
  44. package/fesm2022/lucca-front-ng-date.mjs +111 -112
  45. package/fesm2022/lucca-front-ng-date.mjs.map +1 -1
  46. package/fesm2022/lucca-front-ng-date2.mjs +50 -44
  47. package/fesm2022/lucca-front-ng-date2.mjs.map +1 -1
  48. package/fesm2022/lucca-front-ng-department.mjs +34 -34
  49. package/fesm2022/lucca-front-ng-department.mjs.map +1 -1
  50. package/fesm2022/lucca-front-ng-dialog.mjs +61 -38
  51. package/fesm2022/lucca-front-ng-dialog.mjs.map +1 -1
  52. package/fesm2022/lucca-front-ng-divider.mjs +4 -13
  53. package/fesm2022/lucca-front-ng-divider.mjs.map +1 -1
  54. package/fesm2022/lucca-front-ng-dropdown.mjs +40 -40
  55. package/fesm2022/lucca-front-ng-empty-state.mjs +56 -30
  56. package/fesm2022/lucca-front-ng-empty-state.mjs.map +1 -1
  57. package/fesm2022/lucca-front-ng-establishment.mjs +58 -58
  58. package/fesm2022/lucca-front-ng-establishment.mjs.map +1 -1
  59. package/fesm2022/lucca-front-ng-fancy-box.mjs +3 -15
  60. package/fesm2022/lucca-front-ng-fancy-box.mjs.map +1 -1
  61. package/fesm2022/lucca-front-ng-file-upload.mjs +67 -44
  62. package/fesm2022/lucca-front-ng-file-upload.mjs.map +1 -1
  63. package/fesm2022/lucca-front-ng-filter-pills.mjs +30 -29
  64. package/fesm2022/lucca-front-ng-filter-pills.mjs.map +1 -1
  65. package/fesm2022/lucca-front-ng-footer.mjs +3 -6
  66. package/fesm2022/lucca-front-ng-footer.mjs.map +1 -1
  67. package/fesm2022/lucca-front-ng-form-field.mjs +15 -15
  68. package/fesm2022/lucca-front-ng-form-field.mjs.map +1 -1
  69. package/fesm2022/lucca-front-ng-form-header.mjs +3 -6
  70. package/fesm2022/lucca-front-ng-form-header.mjs.map +1 -1
  71. package/fesm2022/lucca-front-ng-form.mjs +4 -4
  72. package/fesm2022/lucca-front-ng-form.mjs.map +1 -1
  73. package/fesm2022/lucca-front-ng-formly.mjs +58 -58
  74. package/fesm2022/lucca-front-ng-formly.mjs.map +1 -1
  75. package/fesm2022/lucca-front-ng-forms-phone-number-input.mjs +10 -9
  76. package/fesm2022/lucca-front-ng-forms-phone-number-input.mjs.map +1 -1
  77. package/fesm2022/lucca-front-ng-forms-rich-text-input.mjs +74 -74
  78. package/fesm2022/lucca-front-ng-forms-rich-text-input.mjs.map +1 -1
  79. package/fesm2022/lucca-front-ng-forms.mjs +136 -69
  80. package/fesm2022/lucca-front-ng-forms.mjs.map +1 -1
  81. package/fesm2022/lucca-front-ng-gauge.mjs +8 -31
  82. package/fesm2022/lucca-front-ng-gauge.mjs.map +1 -1
  83. package/fesm2022/lucca-front-ng-grid.mjs +9 -9
  84. package/fesm2022/lucca-front-ng-grid.mjs.map +1 -1
  85. package/fesm2022/lucca-front-ng-highlight-data.mjs +28 -33
  86. package/fesm2022/lucca-front-ng-highlight-data.mjs.map +1 -1
  87. package/fesm2022/lucca-front-ng-horizontal-navigation.mjs +7 -10
  88. package/fesm2022/lucca-front-ng-horizontal-navigation.mjs.map +1 -1
  89. package/fesm2022/lucca-front-ng-icon.mjs +1 -42
  90. package/fesm2022/lucca-front-ng-icon.mjs.map +1 -1
  91. package/fesm2022/lucca-front-ng-index-table.mjs +33 -33
  92. package/fesm2022/lucca-front-ng-index-table.mjs.map +1 -1
  93. package/fesm2022/lucca-front-ng-inline-message.mjs +3 -15
  94. package/fesm2022/lucca-front-ng-inline-message.mjs.map +1 -1
  95. package/fesm2022/lucca-front-ng-input.mjs +27 -27
  96. package/fesm2022/lucca-front-ng-input.mjs.map +1 -1
  97. package/fesm2022/lucca-front-ng-link.mjs +21 -30
  98. package/fesm2022/lucca-front-ng-link.mjs.map +1 -1
  99. package/fesm2022/lucca-front-ng-listbox.mjs +14 -26
  100. package/fesm2022/lucca-front-ng-listbox.mjs.map +1 -1
  101. package/fesm2022/lucca-front-ng-listing.mjs +13 -42
  102. package/fesm2022/lucca-front-ng-listing.mjs.map +1 -1
  103. package/fesm2022/lucca-front-ng-loading.mjs +3 -3
  104. package/fesm2022/lucca-front-ng-loading.mjs.map +1 -1
  105. package/fesm2022/lucca-front-ng-main-layout.mjs +7 -13
  106. package/fesm2022/lucca-front-ng-main-layout.mjs.map +1 -1
  107. package/fesm2022/lucca-front-ng-mobile-push.mjs +16 -24
  108. package/fesm2022/lucca-front-ng-mobile-push.mjs.map +1 -1
  109. package/fesm2022/lucca-front-ng-modal.mjs +22 -22
  110. package/fesm2022/lucca-front-ng-modal.mjs.map +1 -1
  111. package/fesm2022/lucca-front-ng-multi-select.mjs +61 -64
  112. package/fesm2022/lucca-front-ng-multi-select.mjs.map +1 -1
  113. package/fesm2022/lucca-front-ng-new-badge.mjs +3 -6
  114. package/fesm2022/lucca-front-ng-new-badge.mjs.map +1 -1
  115. package/fesm2022/lucca-front-ng-number-format.mjs +6 -6
  116. package/fesm2022/lucca-front-ng-number.mjs +7 -7
  117. package/fesm2022/lucca-front-ng-numeric-badge.mjs +4 -13
  118. package/fesm2022/lucca-front-ng-numeric-badge.mjs.map +1 -1
  119. package/fesm2022/lucca-front-ng-option.mjs +179 -177
  120. package/fesm2022/lucca-front-ng-option.mjs.map +1 -1
  121. package/fesm2022/lucca-front-ng-page-header.mjs +3 -12
  122. package/fesm2022/lucca-front-ng-page-header.mjs.map +1 -1
  123. package/fesm2022/lucca-front-ng-pagination.mjs +7 -31
  124. package/fesm2022/lucca-front-ng-pagination.mjs.map +1 -1
  125. package/fesm2022/lucca-front-ng-plg-push.mjs +7 -13
  126. package/fesm2022/lucca-front-ng-plg-push.mjs.map +1 -1
  127. package/fesm2022/lucca-front-ng-popover.mjs +25 -25
  128. package/fesm2022/lucca-front-ng-popover2.mjs +27 -37
  129. package/fesm2022/lucca-front-ng-popover2.mjs.map +1 -1
  130. package/fesm2022/lucca-front-ng-popup.mjs +10 -10
  131. package/fesm2022/lucca-front-ng-progress-bar.mjs +8 -15
  132. package/fesm2022/lucca-front-ng-progress-bar.mjs.map +1 -1
  133. package/fesm2022/lucca-front-ng-read-more.mjs +25 -38
  134. package/fesm2022/lucca-front-ng-read-more.mjs.map +1 -1
  135. package/fesm2022/lucca-front-ng-resource-card.mjs +19 -19
  136. package/fesm2022/lucca-front-ng-resource-card.mjs.map +1 -1
  137. package/fesm2022/lucca-front-ng-safe-content.mjs +10 -10
  138. package/fesm2022/lucca-front-ng-scroll-box.mjs +6 -9
  139. package/fesm2022/lucca-front-ng-scroll-box.mjs.map +1 -1
  140. package/fesm2022/lucca-front-ng-scroll.mjs +7 -7
  141. package/fesm2022/lucca-front-ng-segmented-control-tabs.mjs +9 -15
  142. package/fesm2022/lucca-front-ng-segmented-control-tabs.mjs.map +1 -1
  143. package/fesm2022/lucca-front-ng-segmented-control.mjs +7 -22
  144. package/fesm2022/lucca-front-ng-segmented-control.mjs.map +1 -1
  145. package/fesm2022/lucca-front-ng-select.mjs +14 -14
  146. package/fesm2022/lucca-front-ng-sidepanel.mjs +7 -7
  147. package/fesm2022/lucca-front-ng-simple-select.mjs +27 -27
  148. package/fesm2022/lucca-front-ng-simple-select.mjs.map +1 -1
  149. package/fesm2022/lucca-front-ng-skeleton.mjs +31 -82
  150. package/fesm2022/lucca-front-ng-skeleton.mjs.map +1 -1
  151. package/fesm2022/lucca-front-ng-sortable-list.mjs +6 -30
  152. package/fesm2022/lucca-front-ng-sortable-list.mjs.map +1 -1
  153. package/fesm2022/lucca-front-ng-status-badge.mjs +3 -15
  154. package/fesm2022/lucca-front-ng-status-badge.mjs.map +1 -1
  155. package/fesm2022/lucca-front-ng-table-of-content.mjs +6 -6
  156. package/fesm2022/lucca-front-ng-tag.mjs +3 -9
  157. package/fesm2022/lucca-front-ng-tag.mjs.map +1 -1
  158. package/fesm2022/lucca-front-ng-time.mjs +30 -30
  159. package/fesm2022/lucca-front-ng-time.mjs.map +1 -1
  160. package/fesm2022/lucca-front-ng-title.mjs +10 -10
  161. package/fesm2022/lucca-front-ng-toast.mjs +14 -14
  162. package/fesm2022/lucca-front-ng-toast.mjs.map +1 -1
  163. package/fesm2022/lucca-front-ng-tooltip.mjs +28 -26
  164. package/fesm2022/lucca-front-ng-tooltip.mjs.map +1 -1
  165. package/fesm2022/lucca-front-ng-tree-select.mjs +6 -6
  166. package/fesm2022/lucca-front-ng-tree-select.mjs.map +1 -1
  167. package/fesm2022/lucca-front-ng-user-popover.mjs +23 -23
  168. package/fesm2022/lucca-front-ng-user-popover.mjs.map +1 -1
  169. package/fesm2022/lucca-front-ng-user.mjs +72 -72
  170. package/fesm2022/lucca-front-ng-user.mjs.map +1 -1
  171. package/fesm2022/lucca-front-ng-vertical-navigation.mjs +12 -42
  172. package/fesm2022/lucca-front-ng-vertical-navigation.mjs.map +1 -1
  173. package/package.json +17 -3
  174. package/schematics/lib/local-deps/package-lock.json +2 -0
  175. package/schematics/lib/local-deps/package.json +1 -2
  176. package/src/components/cdk/_overlay.scss +0 -5
  177. package/src/definitions/option/_option-item.scss +0 -1
  178. package/types/lucca-front-ng-a11y.d.ts +3 -3
  179. package/types/lucca-front-ng-breadcrumbs.d.ts +9 -9
  180. package/types/lucca-front-ng-bubble-icon.d.ts +20 -0
  181. package/types/lucca-front-ng-bubble-illustration.d.ts +24 -0
  182. package/types/lucca-front-ng-button.d.ts +1 -61
  183. package/types/lucca-front-ng-callout.d.ts +3 -33
  184. package/types/lucca-front-ng-chip.d.ts +3 -33
  185. package/types/lucca-front-ng-clear.d.ts +6 -21
  186. package/types/lucca-front-ng-color.d.ts +12 -0
  187. package/types/lucca-front-ng-comment.d.ts +11 -19
  188. package/types/lucca-front-ng-container.d.ts +4 -4
  189. package/types/lucca-front-ng-core-select.d.ts +83 -78
  190. package/types/lucca-front-ng-core.d.ts +25 -19
  191. package/types/lucca-front-ng-data-table.d.ts +2 -2
  192. package/types/lucca-front-ng-date.d.ts +5 -5
  193. package/types/lucca-front-ng-date2.d.ts +6 -5
  194. package/types/lucca-front-ng-department.d.ts +2 -2
  195. package/types/lucca-front-ng-dialog.d.ts +12 -5
  196. package/types/lucca-front-ng-divider.d.ts +0 -10
  197. package/types/lucca-front-ng-empty-state.d.ts +6 -20
  198. package/types/lucca-front-ng-establishment.d.ts +2 -2
  199. package/types/lucca-front-ng-fancy-box.d.ts +0 -12
  200. package/types/lucca-front-ng-file-upload.d.ts +18 -8
  201. package/types/lucca-front-ng-filter-pills.d.ts +6 -5
  202. package/types/lucca-front-ng-footer.d.ts +0 -3
  203. package/types/lucca-front-ng-form-field.d.ts +2 -2
  204. package/types/lucca-front-ng-form-header.d.ts +0 -3
  205. package/types/lucca-front-ng-forms-rich-text-input.d.ts +14 -16
  206. package/types/lucca-front-ng-forms.d.ts +40 -13
  207. package/types/lucca-front-ng-gauge.d.ts +0 -25
  208. package/types/lucca-front-ng-grid.d.ts +1 -1
  209. package/types/lucca-front-ng-highlight-data.d.ts +15 -36
  210. package/types/lucca-front-ng-horizontal-navigation.d.ts +0 -3
  211. package/types/lucca-front-ng-icon.d.ts +1 -32
  212. package/types/lucca-front-ng-inline-message.d.ts +0 -12
  213. package/types/lucca-front-ng-input.d.ts +2 -2
  214. package/types/lucca-front-ng-link.d.ts +4 -20
  215. package/types/lucca-front-ng-listbox.d.ts +4 -16
  216. package/types/lucca-front-ng-listing.d.ts +2 -33
  217. package/types/lucca-front-ng-main-layout.d.ts +0 -6
  218. package/types/lucca-front-ng-mobile-push.d.ts +2 -9
  219. package/types/lucca-front-ng-multi-select.d.ts +26 -24
  220. package/types/lucca-front-ng-new-badge.d.ts +0 -3
  221. package/types/lucca-front-ng-numeric-badge.d.ts +0 -9
  222. package/types/lucca-front-ng-option.d.ts +8 -8
  223. package/types/lucca-front-ng-page-header.d.ts +0 -9
  224. package/types/lucca-front-ng-pagination.d.ts +2 -26
  225. package/types/lucca-front-ng-plg-push.d.ts +2 -8
  226. package/types/lucca-front-ng-popover2.d.ts +6 -8
  227. package/types/lucca-front-ng-progress-bar.d.ts +0 -9
  228. package/types/lucca-front-ng-read-more.d.ts +10 -25
  229. package/types/lucca-front-ng-resource-card.d.ts +0 -6
  230. package/types/lucca-front-ng-scroll-box.d.ts +1 -4
  231. package/types/lucca-front-ng-segmented-control-tabs.d.ts +1 -7
  232. package/types/lucca-front-ng-segmented-control.d.ts +1 -16
  233. package/types/lucca-front-ng-simple-select.d.ts +5 -4
  234. package/types/lucca-front-ng-skeleton.d.ts +6 -61
  235. package/types/lucca-front-ng-sortable-list.d.ts +0 -24
  236. package/types/lucca-front-ng-status-badge.d.ts +0 -12
  237. package/types/lucca-front-ng-tag.d.ts +0 -6
  238. package/types/lucca-front-ng-time.d.ts +6 -6
  239. package/types/lucca-front-ng-toast.d.ts +2 -2
  240. package/types/lucca-front-ng-tooltip.d.ts +5 -3
  241. package/types/lucca-front-ng-user-popover.d.ts +6 -7
  242. package/types/lucca-front-ng-user.d.ts +4 -4
  243. package/types/lucca-front-ng-vertical-navigation.d.ts +0 -30
@@ -1 +1 @@
1
- {"version":3,"file":"lucca-front-ng-core.mjs","sources":["../../../packages/ng/core/date/date-granularity.enum.ts","../../../packages/ng/core/date/date-adapter.class.ts","../../../packages/ng/core/date/native/native-date.option.ts","../../../packages/ng/core/date/native/native-date.adapter.ts","../../../packages/ng/core/date/string/string-date.adapter.ts","../../../packages/ng/core/event/on-close.subscriber.ts","../../../packages/ng/core/event/on-open.subscriber.ts","../../../packages/ng/core/event/on-scroll-bottom.subscriber.ts","../../../packages/ng/core/id/id.generator.ts","../../../packages/ng/core/misc.ts","../../../packages/ng/core/portal/portal-content.ts","../../../packages/ng/core/portal/portal.directive.ts","../../../packages/ng/core/signal.ts","../../../packages/ng/core/tools/class.ts","../../../packages/ng/core/translate/intl.model.ts","../../../packages/ng/core/translate/intl-params.pipe.ts","../../../packages/ng/core/type/responsive.ts","../../../packages/ng/core/lucca-front-ng-core.ts"],"sourcesContent":["import { EnumValue } from '../type';\n\nexport enum ELuDateGranularity {\n\tday = 'day',\n\tmonth = 'month',\n\tyear = 'year',\n\tdecade = 'decade',\n}\n\nexport type LuDateGranularity = EnumValue<ELuDateGranularity>;\n","import { ILuDateAdapter } from './date-adapter.interface';\nimport { ELuDateGranularity, LuDateGranularity } from './date-granularity.enum';\n\nexport abstract class ALuDateAdapter<D> implements ILuDateAdapter<D> {\n\tabstract forge(year: number, month: number, date: number): D;\n\tabstract forgeToday(): D;\n\tabstract forgeInvalid(): D;\n\tabstract isValid(d: D): boolean;\n\tcompare(a: D, b: D, granularity: LuDateGranularity): number {\n\t\tif (!a || !b || !this.isValid(a) || !this.isValid(b)) {\n\t\t\tthrow new Error('you must provide valid and not null dates to be compared');\n\t\t}\n\t\tconst aDecade = Math.floor(this.getYear(a) / 10);\n\t\tconst bDecade = Math.floor(this.getYear(b) / 10);\n\t\tif (aDecade < bDecade) {\n\t\t\treturn -1;\n\t\t}\n\t\tif (aDecade > bDecade) {\n\t\t\treturn 1;\n\t\t}\n\t\tif (granularity === ELuDateGranularity.decade) {\n\t\t\treturn 0;\n\t\t}\n\n\t\tconst aYear = this.getYear(a);\n\t\tconst bYear = this.getYear(b);\n\t\tif (aYear < bYear) {\n\t\t\treturn -1;\n\t\t}\n\t\tif (aYear > bYear) {\n\t\t\treturn 1;\n\t\t}\n\t\tif (granularity === ELuDateGranularity.year) {\n\t\t\treturn 0;\n\t\t}\n\n\t\tconst aMonth = this.getMonth(a);\n\t\tconst bMonth = this.getMonth(b);\n\t\tif (aMonth < bMonth) {\n\t\t\treturn -1;\n\t\t}\n\t\tif (aMonth > bMonth) {\n\t\t\treturn 1;\n\t\t}\n\t\tif (granularity === ELuDateGranularity.month) {\n\t\t\treturn 0;\n\t\t}\n\n\t\tconst aDate = this.getDate(a);\n\t\tconst bDate = this.getDate(b);\n\t\tif (aDate < bDate) {\n\t\t\treturn -1;\n\t\t}\n\t\tif (aDate > bDate) {\n\t\t\treturn 1;\n\t\t}\n\t\tif (granularity === ELuDateGranularity.day) {\n\t\t\treturn 0;\n\t\t}\n\n\t\treturn 0;\n\t}\n\tabstract isParsable(text: string, granularity?: LuDateGranularity): boolean;\n\tabstract parse(text: string, granularity?: LuDateGranularity): D;\n\tabstract format(d: D, format: string): string;\n\tabstract clone(d: D): D;\n\n\tabstract getYear(d: D): number;\n\tabstract getMonth(d: D): number;\n\tabstract getDate(d: D): number;\n\tabstract getDay(d: D): number;\n\n\tabstract add(d: D, count: number, granularity: LuDateGranularity): D;\n}\n","import { InjectionToken } from '@angular/core';\n\nexport interface ILuNativeDateAdapterOptions {\n\tuseUtc?: boolean;\n}\nexport const luDefaultNativeDateAdapterOptions: ILuNativeDateAdapterOptions = {\n\tuseUtc: false,\n};\nexport const LU_NATIVE_DATE_ADAPTER_OPTIONS = new InjectionToken<ILuNativeDateAdapterOptions>('Native date adapter options');\n","import { formatDate, FormatWidth, getLocaleDateFormat } from '@angular/common';\nimport { Inject, Injectable, LOCALE_ID, Optional } from '@angular/core';\nimport { ALuDateAdapter } from '../date-adapter.class';\nimport { ILuDateAdapter } from '../date-adapter.interface';\nimport { ELuDateGranularity, LuDateGranularity } from '../date-granularity.enum';\nimport { ILuNativeDateAdapterOptions, LU_NATIVE_DATE_ADAPTER_OPTIONS, luDefaultNativeDateAdapterOptions } from './native-date.option';\n\n@Injectable()\nexport class LuNativeDateAdapter extends ALuDateAdapter<Date> implements ILuDateAdapter<Date> {\n\tprivate _regex = /[/,.\\-\\s]/i;\n\tprivate _order = {\n\t\tdate: 0,\n\t\tmonth: 1,\n\t\tyear: 2,\n\t};\n\tconstructor(\n\t\t@Inject(LOCALE_ID) private _locale: string,\n\t\t@Inject(LU_NATIVE_DATE_ADAPTER_OPTIONS)\n\t\t@Optional()\n\t\tprivate _options: ILuNativeDateAdapterOptions,\n\t) {\n\t\tsuper();\n\t\tthis._options = this._options || luDefaultNativeDateAdapterOptions;\n\t\tthis.initOrder();\n\t}\n\tprivate initOrder() {\n\t\tconst format = getLocaleDateFormat(this._locale, FormatWidth.Short);\n\t\tconst groups = format.split(this._regex);\n\t\tgroups.forEach((g, i) => {\n\t\t\tif (g.indexOf('d') !== -1) {\n\t\t\t\tthis._order.date = i;\n\t\t\t}\n\t\t\tif (g.indexOf('M') !== -1) {\n\t\t\t\tthis._order.month = i;\n\t\t\t}\n\t\t\tif (g.indexOf('y') !== -1) {\n\t\t\t\tthis._order.year = i;\n\t\t\t}\n\t\t});\n\t}\n\tprivate extract(text: string, granularity: LuDateGranularity = ELuDateGranularity.day): { date: number; month: number; year: number } {\n\t\tconst groups = text.split(this._regex);\n\t\tlet date = 1,\n\t\t\tmonth = 1,\n\t\t\tyear = 1;\n\t\tswitch (granularity) {\n\t\t\tcase ELuDateGranularity.year:\n\t\t\t\tyear = parseInt(groups[Math.max(this._order.year - 2, 0)], 10);\n\t\t\t\tbreak;\n\t\t\tcase ELuDateGranularity.month:\n\t\t\t\tmonth = parseInt(groups[Math.max(this._order.month - 1, 0)], 10);\n\t\t\t\tyear = parseInt(groups[Math.max(this._order.year - 1, 0)], 10) || new Date().getFullYear();\n\t\t\t\tbreak;\n\t\t\tcase ELuDateGranularity.day:\n\t\t\tdefault:\n\t\t\t\tdate = parseInt(groups[this._order.date], 10);\n\t\t\t\tmonth = parseInt(groups[this._order.month], 10);\n\t\t\t\tyear = parseInt(groups[this._order.year], 10) || new Date().getFullYear();\n\t\t}\n\t\treturn { date, month, year };\n\t}\n\tisParsable(text: string, granularity: LuDateGranularity = ELuDateGranularity.day): boolean {\n\t\tif (!text) {\n\t\t\treturn false;\n\t\t}\n\t\tconst groups = text.split(this._regex);\n\t\tconst dayTextInvalid = granularity === ELuDateGranularity.day && groups.length !== 3;\n\t\tconst monthTextInvalid = granularity === ELuDateGranularity.month && groups.length !== 2;\n\t\tconst yearTextInvalid = granularity === ELuDateGranularity.year && groups.length !== 1;\n\t\tif (dayTextInvalid || monthTextInvalid || yearTextInvalid) {\n\t\t\treturn false;\n\t\t}\n\n\t\ttry {\n\t\t\tconst { date, month, year } = this.extract(text, granularity);\n\n\t\t\t// When year is equal or greater than 10_000 ISO string goes from 2000-01-01 to +010000-01-01 which is not supported by backends\n\t\t\tif (year >= 10_000) {\n\t\t\t\treturn false;\n\t\t\t}\n\n\t\t\tlet d: Date;\n\t\t\tif (this._options.useUtc) {\n\t\t\t\td = new Date(Date.UTC(year, month - 1, date));\n\t\t\t} else {\n\t\t\t\td = new Date(year, month - 1, date);\n\t\t\t}\n\t\t\t// checking if its a valid date\n\t\t\t// https://stackoverflow.com/questions/1353684/detecting-an-invalid-date-date-instance-in-javascript\n\t\t\tif (!(d instanceof Date)) {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t\tif (isNaN(d.getTime())) {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t\t// d is a valid date, but\n\t\t\t// as i can write new Date(1234, 56, 78) and mr javascript accepts it\n\t\t\t// i check now that the generated date has the same year/month/date as what i entered\n\t\t\tif (this._options.useUtc) {\n\t\t\t\tif (d.getUTCFullYear() !== year) {\n\t\t\t\t\treturn false;\n\t\t\t\t}\n\t\t\t\tif (d.getUTCMonth() !== month - 1) {\n\t\t\t\t\treturn false;\n\t\t\t\t}\n\t\t\t\tif (d.getUTCDate() !== date) {\n\t\t\t\t\treturn false;\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tif (d.getFullYear() !== year) {\n\t\t\t\t\treturn false;\n\t\t\t\t}\n\t\t\t\tif (d.getMonth() !== month - 1) {\n\t\t\t\t\treturn false;\n\t\t\t\t}\n\t\t\t\tif (d.getDate() !== date) {\n\t\t\t\t\treturn false;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\treturn true;\n\t\t} catch {\n\t\t\treturn false;\n\t\t}\n\t}\n\tparse(text: string, granularity: LuDateGranularity = ELuDateGranularity.day): Date {\n\t\tif (!text) {\n\t\t\treturn undefined;\n\t\t}\n\n\t\tif (!this.isParsable(text, granularity)) {\n\t\t\treturn this.forgeInvalid();\n\t\t}\n\n\t\tconst { date, month, year } = this.extract(text, granularity);\n\n\t\treturn this.forge(year, month, date);\n\t}\n\tformat(d: Date, format: string): string {\n\t\tif (this._options.useUtc) {\n\t\t\treturn formatDate(d, format, this._locale, 'UTC');\n\t\t} else {\n\t\t\treturn formatDate(d, format, this._locale);\n\t\t}\n\t}\n\tforge(year: number, month: number, date: number): Date {\n\t\tif (this._options.useUtc) {\n\t\t\treturn new Date(Date.UTC(year, month - 1, date)); // month-1 cuz 0 -> january\n\t\t} else {\n\t\t\treturn new Date(year, month - 1, date); // month-1 cuz 0 -> january\n\t\t}\n\t}\n\tforgeToday(): Date {\n\t\tif (this._options.useUtc) {\n\t\t\tconst nonUTCToday = new Date();\n\t\t\treturn new Date(Date.UTC(nonUTCToday.getFullYear(), nonUTCToday.getMonth(), nonUTCToday.getDate()));\n\t\t} else {\n\t\t\tconst today = new Date();\n\t\t\treturn new Date(today.getFullYear(), today.getMonth(), today.getDate());\n\t\t}\n\t}\n\tforgeInvalid(): Date {\n\t\treturn new Date('Invalid Date');\n\t}\n\tisValid(d: Date): boolean {\n\t\tif (!(d instanceof Date)) {\n\t\t\treturn false;\n\t\t}\n\t\tif (isNaN(d.getTime())) {\n\t\t\treturn false;\n\t\t}\n\t\treturn true;\n\t}\n\n\tclone(d: Date): Date {\n\t\treturn new Date(d);\n\t}\n\n\tgetYear(d: Date): number {\n\t\tif (this._options.useUtc) {\n\t\t\treturn d.getUTCFullYear();\n\t\t} else {\n\t\t\treturn d.getFullYear();\n\t\t}\n\t}\n\tgetMonth(d: Date): number {\n\t\tif (this._options.useUtc) {\n\t\t\treturn d.getUTCMonth() + 1;\n\t\t} else {\n\t\t\treturn d.getMonth() + 1;\n\t\t}\n\t}\n\tgetDate(d: Date): number {\n\t\tif (this._options.useUtc) {\n\t\t\treturn d.getUTCDate();\n\t\t} else {\n\t\t\treturn d.getDate();\n\t\t}\n\t}\n\tgetDay(d: Date): number {\n\t\tif (this._options.useUtc) {\n\t\t\treturn d.getUTCDay();\n\t\t} else {\n\t\t\treturn d.getDay();\n\t\t}\n\t}\n\n\tadd(d: Date, count: number, granularity: LuDateGranularity): Date {\n\t\tlet year = this.getYear(d);\n\t\tlet month = this.getMonth(d);\n\t\tlet date = this.getDate(d);\n\t\tswitch (granularity) {\n\t\t\tcase ELuDateGranularity.decade:\n\t\t\t\tyear += 10 * count;\n\t\t\t\tbreak;\n\t\t\tcase ELuDateGranularity.year:\n\t\t\t\tyear += count;\n\t\t\t\tbreak;\n\t\t\tcase ELuDateGranularity.month:\n\t\t\t\tmonth += count;\n\t\t\t\tbreak;\n\t\t\tcase ELuDateGranularity.day:\n\t\t\t\tdate += count;\n\t\t\t\tbreak;\n\t\t}\n\t\treturn this.forge(year, month, date);\n\t}\n}\n","import { Inject, Injectable, LOCALE_ID } from '@angular/core';\nimport { ALuDateAdapter } from '../date-adapter.class';\nimport { ILuDateAdapter } from '../date-adapter.interface';\nimport { LuDateGranularity } from '../date-granularity.enum';\nimport { LuNativeDateAdapter } from '../native/index';\n\n/** bind to a string with iso 26001 format YYYY-MM-DD */\n@Injectable()\nexport class LuStringDateAdapter extends ALuDateAdapter<string> implements ILuDateAdapter<string> {\n\t// i'm going to implement this by doing some inheritance by composition\n\t// i'll just use the native date adapter and just parse/format to interface it with a string\n\n\tprivate _nativeAdapter: LuNativeDateAdapter;\n\n\tconstructor(@Inject(LOCALE_ID) private _locale: string) {\n\t\tsuper();\n\t\tthis._nativeAdapter = new LuNativeDateAdapter(this._locale, {\n\t\t\tuseUtc: true,\n\t\t});\n\t}\n\n\tforge(year: number, month: number, date: number): string {\n\t\treturn this.dateToString(this._nativeAdapter.forge(year, month, date));\n\t}\n\n\tforgeToday(): string {\n\t\treturn this.dateToString(this._nativeAdapter.forgeToday());\n\t}\n\n\tforgeInvalid(): string {\n\t\treturn 'Invalid Date';\n\t}\n\n\tisValid(d: string): boolean {\n\t\treturn this._nativeAdapter.isValid(this.stringToDate(d));\n\t}\n\n\toverride compare(a: string, b: string, granularity: LuDateGranularity): number {\n\t\tconst da = this.stringToDate(a);\n\t\tconst db = this.stringToDate(b);\n\n\t\treturn this._nativeAdapter.compare(da, db, granularity);\n\t}\n\n\tisParsable(text: string): boolean {\n\t\treturn this._nativeAdapter.isParsable(text);\n\t}\n\n\tparse(text: string, granularity: LuDateGranularity): string {\n\t\treturn this.dateToString(this._nativeAdapter.parse(text, granularity));\n\t}\n\n\tformat(d: string, format: string): string {\n\t\treturn this._nativeAdapter.format(this.stringToDate(d), format);\n\t}\n\n\tclone(d: string): string {\n\t\treturn `${d}`;\n\t}\n\n\tgetYear(d: string): number {\n\t\treturn this._nativeAdapter.getYear(this.stringToDate(d));\n\t}\n\n\tgetMonth(d: string): number {\n\t\treturn this._nativeAdapter.getMonth(this.stringToDate(d));\n\t}\n\n\tgetDate(d: string): number {\n\t\treturn this._nativeAdapter.getDate(this.stringToDate(d));\n\t}\n\n\tgetDay(d: string): number {\n\t\treturn this._nativeAdapter.getDay(this.stringToDate(d));\n\t}\n\n\tadd(d: string, count: number, granularity: LuDateGranularity): string {\n\t\treturn this.dateToString(this._nativeAdapter.add(this.stringToDate(d), count, granularity));\n\t}\n\n\tprotected stringToDate(s: string): Date {\n\t\treturn new Date(`${s}T00:00:00Z`);\n\t}\n\n\tprotected dateToString(d: Date): string {\n\t\tlet result: string;\n\n\t\tif (d === undefined) {\n\t\t\tresult = undefined;\n\t\t} else if (!this._nativeAdapter.isValid(d)) {\n\t\t\tresult = this.forgeInvalid();\n\t\t} else {\n\t\t\tresult = d.toISOString().substring(0, 10);\n\t\t}\n\n\t\treturn result;\n\t}\n}\n","export interface ILuOnCloseSubscriber {\n\tonClose(): void;\n}\nexport abstract class ALuOnCloseSubscriber implements ILuOnCloseSubscriber {\n\tabstract onClose(): void;\n}\n","export interface ILuOnOpenSubscriber {\n\tonOpen(): void;\n}\nexport abstract class ALuOnOpenSubscriber implements ILuOnOpenSubscriber {\n\tabstract onOpen(): void;\n}\n","export interface ILuOnScrollBottomSubscriber {\n\tonScrollBottom(): void;\n}\nexport abstract class ALuOnScrollBottomSubscriber implements ILuOnScrollBottomSubscriber {\n\tabstract onScrollBottom(): void;\n}\n","const ID_LENGTH = 8;\nconst ID_BASE = 16;\nexport function generateId(): string {\n\treturn Array(ID_LENGTH)\n\t\t.fill(0)\n\t\t.map(() => Math.floor(Math.random() * ID_BASE).toString(ID_BASE))\n\t\t.join('');\n}\n","type Nil = null | undefined;\n\nexport const isNil = <T>(value: T | Nil): value is Nil => typeof value === 'undefined' || value === null;\n\nexport const isNotNil = <T>(value: T): value is NonNullable<T> => !isNil(value);\n\nexport const isNilOrEmptyString = (str: string | Nil): str is Nil | '' => isNil(str) || str === '';\n\nexport const isNotNilOrEmptyString = (str: string | Nil): str is string => !isNilOrEmptyString(str);\n","import { InjectionToken, TemplateRef, Type } from '@angular/core';\n\nexport type PortalContent<T = unknown> = string | TemplateRef<T> | Type<unknown>;\n\nexport const PORTAL_CONTEXT = new InjectionToken<unknown>('PORTAL_CONTEXT');\n","import { ComponentRef, Directive, effect, EmbeddedViewRef, inject, Injector, input, OnDestroy, Renderer2, TemplateRef, untracked, ViewContainerRef } from '@angular/core';\nimport { PORTAL_CONTEXT, PortalContent } from './portal-content';\n\n@Directive({\n\tselector: '[luPortal]',\n})\nexport class PortalDirective<T = unknown> implements OnDestroy {\n\tprivate viewContainerRef = inject(ViewContainerRef);\n\tprivate renderer = inject(Renderer2);\n\tprivate templateRef = inject(TemplateRef);\n\tprivate injector = inject(Injector);\n\n\tluPortal = input.required<PortalContent<T>>();\n\n\tluPortalContext = input<T | null>(null);\n\n\tprivate createdTextElement: Text | null = null;\n\tprivate embeddedViewRef?: EmbeddedViewRef<T>;\n\tprivate componentRef?: ComponentRef<unknown>;\n\n\tconstructor() {\n\t\teffect(() => {\n\t\t\tconst portal = this.luPortal();\n\t\t\tuntracked(() => {\n\t\t\t\tif (portal) {\n\t\t\t\t\tthis.render(portal, this.luPortalContext());\n\t\t\t\t}\n\t\t\t});\n\t\t});\n\t\teffect(() => {\n\t\t\tconst ctx = this.luPortalContext();\n\t\t\tuntracked(() => {\n\t\t\t\tif (this.embeddedViewRef && ctx) {\n\t\t\t\t\tthis.updateEmbeddedViewContext(ctx);\n\t\t\t\t}\n\t\t\t});\n\t\t});\n\t}\n\n\tprivate render(luPortal: PortalContent<T>, ctx: T | null): void {\n\t\tthis.viewContainerRef.clear();\n\t\tthis.embeddedViewRef = undefined;\n\t\tthis.componentRef = undefined;\n\n\t\tif (typeof luPortal !== 'string') {\n\t\t\tthis.destroyRenderedText();\n\t\t}\n\n\t\tif (!luPortal) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (luPortal instanceof TemplateRef) {\n\t\t\tconst context = Object.assign({}, ctx);\n\t\t\tthis.embeddedViewRef = this.viewContainerRef.createEmbeddedView<T>(luPortal, context, { injector: this.injector });\n\t\t} else if (typeof luPortal === 'string') {\n\t\t\tthis.renderText(luPortal);\n\t\t} else {\n\t\t\tconst injector = Injector.create({\n\t\t\t\tparent: this.injector,\n\t\t\t\tproviders: [{ provide: PORTAL_CONTEXT, useValue: ctx }],\n\t\t\t});\n\t\t\ttry {\n\t\t\t\tthis.componentRef = this.viewContainerRef.createComponent(luPortal, { injector });\n\t\t\t\tthis.componentRef.changeDetectorRef.detectChanges();\n\t\t\t} catch (e) {\n\t\t\t\tconsole.error(e);\n\t\t\t\tthrow new Error('[LuPortal] Angular failed to create component, make sure you are not giving LuPortal an Object that is not a Type<>');\n\t\t\t}\n\t\t}\n\t}\n\n\tngOnDestroy(): void {\n\t\tthis.destroyRenderedText();\n\t\tthis.embeddedViewRef?.destroy();\n\t\tthis.componentRef?.destroy();\n\t}\n\n\tprivate renderText(text: string): void {\n\t\tif (this.createdTextElement) {\n\t\t\tthis.createdTextElement.textContent = text;\n\t\t} else {\n\t\t\tconst ref = this.viewContainerRef.createEmbeddedView(this.templateRef);\n\t\t\tconst container: HTMLElement = ref.rootNodes[0] as HTMLElement;\n\t\t\tconst parent = container.parentElement;\n\t\t\tthis.createdTextElement = document.createTextNode(text);\n\t\t\tthis.renderer.insertBefore(parent, this.createdTextElement, container);\n\t\t}\n\t}\n\n\tprivate destroyRenderedText(): void {\n\t\tif (this.createdTextElement) {\n\t\t\tthis.renderer.removeChild(this.createdTextElement.parentNode, this.createdTextElement);\n\t\t\tthis.createdTextElement = null;\n\t\t}\n\t}\n\n\t/**\n\t * Embeded view context should not be overwritten, but updated.\n\t * @see https://github.com/angular/angular/pull/51887\n\t */\n\tprivate updateEmbeddedViewContext(context: T): void {\n\t\tif (this.embeddedViewRef) {\n\t\t\tconst props = Object.keys(context);\n\n\t\t\tfor (const prop of props) {\n\t\t\t\tdelete this.embeddedViewRef.context[prop];\n\t\t\t}\n\n\t\t\tObject.assign(this.embeddedViewRef.context, context);\n\t\t\tthis.embeddedViewRef.detectChanges();\n\t\t}\n\t}\n\n\tpublic static ngTemplateContextGuard<T>(_dir: PortalDirective<T>, ctx: unknown): ctx is void {\n\t\treturn true;\n\t}\n}\n","import { CreateEffectOptions, effect, EffectCleanupRegisterFn, EffectRef, Signal, untracked } from '@angular/core';\n\ntype SignalsValue<T> = T extends readonly unknown[] ? TupleOfSignalValues<T> : [RecordOfSignalValues<T>];\n\ntype TupleOfSignalValues<T> = T extends readonly [Signal<infer U>, ...infer R] ? [U, ...TupleOfSignalValues<R>] : [];\ntype RecordOfSignalValues<T> = { [K in keyof T]: T[K] extends Signal<infer U> ? U : never };\n\nexport type EffectWithDepsInput = ReadonlyArray<Signal<unknown>> | Record<string, Signal<unknown>>;\n\n/**\n * Effect peut être dangereux car l'action accomplie peut elle-même déclencher des écritures dans des signaux.\n * C'est une mauvaise pratique, interdite par défaut par Angular.\n * La plupart du temps, seule la lecture des signaux est intéressante à tracker, pas les actions qui en découlent.\n */\nexport function ɵeffectWithDeps<const T extends EffectWithDepsInput>(\n\tdependencies: T,\n\taction: (...values: [...SignalsValue<T>, EffectCleanupRegisterFn]) => unknown,\n\toptions?: CreateEffectOptions,\n): EffectRef {\n\treturn effect((onCleanup) => {\n\t\tconst deps = isReadonlyArray(dependencies) ? readTupleOfSignalValues(dependencies) : [readRecordOfSignalValues(dependencies)];\n\n\t\tuntracked(() => action(...(deps as SignalsValue<T>), onCleanup));\n\t}, options);\n}\n\nfunction readTupleOfSignalValues<T extends readonly Signal<unknown>[]>(signals: T): TupleOfSignalValues<T> {\n\treturn signals.map((signal) => signal()) as TupleOfSignalValues<T>;\n}\n\nfunction readRecordOfSignalValues<T extends Record<string, Signal<unknown>>>(signals: T): RecordOfSignalValues<T> {\n\treturn Object.fromEntries(Object.entries(signals).map(([key, signal]) => [key, signal()])) as RecordOfSignalValues<T>;\n}\n\nfunction isReadonlyArray(input: EffectWithDepsInput): input is ReadonlyArray<Signal<unknown>> {\n\treturn Array.isArray(input);\n}\n","import { ElementRef, inject, Injectable, Renderer2 } from '@angular/core';\n\ntype LuClassSupportedTypes = string | string[] | Set<string> | { [klass: string]: boolean };\n\ninterface CssClassState {\n\tenabled: boolean;\n\tchanged: boolean;\n\ttouched: boolean;\n}\n\n@Injectable()\nexport class LuClass {\n\t#elementRef = inject<ElementRef<HTMLElement>>(ElementRef);\n\t#renderer = inject(Renderer2);\n\n\t#state: Record<string, boolean> = {};\n\t#stateMap = new Map<string, CssClassState>();\n\n\tpublic setState(value: LuClassSupportedTypes) {\n\t\tthis.#state = normalizeToRecord(value);\n\n\t\tfor (const [klass, enabled] of Object.entries(this.#state)) {\n\t\t\tthis.#updateState(klass, enabled);\n\t\t}\n\n\t\tthis.#applyStateDiff();\n\t}\n\n\t#updateState(klass: string, nextEnabled: boolean) {\n\t\tconst state = this.#stateMap.get(klass);\n\t\tif (state !== undefined) {\n\t\t\tif (state.enabled !== nextEnabled) {\n\t\t\t\tstate.changed = true;\n\t\t\t\tstate.enabled = nextEnabled;\n\t\t\t}\n\t\t\tstate.touched = true;\n\t\t} else {\n\t\t\tthis.#stateMap.set(klass, { enabled: nextEnabled, changed: true, touched: true });\n\t\t}\n\t}\n\n\t#applyStateDiff() {\n\t\tfor (const stateEntry of this.#stateMap) {\n\t\t\tconst klass = stateEntry[0];\n\t\t\tconst state = stateEntry[1];\n\n\t\t\tif (state.changed) {\n\t\t\t\tthis.#toggleClass(klass, state.enabled);\n\t\t\t\tstate.changed = false;\n\t\t\t} else if (!state.touched) {\n\t\t\t\t// A class that was previously active got removed from the new collection of classes -\n\t\t\t\t// remove from the DOM as well.\n\t\t\t\tif (state.enabled) {\n\t\t\t\t\tthis.#toggleClass(klass, false);\n\t\t\t\t}\n\t\t\t\tthis.#stateMap.delete(klass);\n\t\t\t}\n\n\t\t\tstate.touched = false;\n\t\t}\n\t}\n\n\t#toggleClass(klass: string, enabled: boolean): void {\n\t\tif (enabled) {\n\t\t\tthis.#renderer.addClass(this.#elementRef.nativeElement, klass);\n\t\t} else {\n\t\t\tthis.#renderer.removeClass(this.#elementRef.nativeElement, klass);\n\t\t}\n\t}\n}\n\nfunction normalizeToRecord(obj: LuClassSupportedTypes): Record<string, boolean> {\n\tif (Array.isArray(obj) || obj instanceof Set) {\n\t\tconst result: Record<string, boolean> = {};\n\n\t\tfor (const item of obj) {\n\t\t\tresult[item] = true;\n\t\t}\n\n\t\treturn result;\n\t}\n\n\tif (typeof obj === 'string') {\n\t\tobj = obj.trim();\n\t\treturn obj ? { [obj]: true } : {};\n\t}\n\n\treturn obj;\n}\n","import { inject, InjectionToken, LOCALE_ID } from '@angular/core';\nimport { ILuTranslation, LuTranslation } from './translation.model';\n\nexport function getIntl<T>(translationsToken: InjectionToken<LuTranslation<T>> | InjectionToken<ILuTranslation<T>>): T {\n\tconst locale = inject(LOCALE_ID);\n\tconst translations = inject(translationsToken);\n\n\tif (locale in translations) {\n\t\treturn translations[locale];\n\t}\n\n\tconst shortLocale = locale.substring(0, 2);\n\tif (shortLocale in translations) {\n\t\treturn translations[shortLocale];\n\t}\n\n\treturn translations['en'] ?? translations['en-GB'] ?? translations['en-US'];\n}\n","import { Pipe, PipeTransform } from '@angular/core';\n\n@Pipe({\n\tname: 'intlParams',\n})\nexport class IntlParamsPipe implements PipeTransform {\n\t#matcher = /{{\\s?([^{}\\s]*)\\s?}}/g;\n\n\ttransform(value: string, args: Record<string, string | number>): string {\n\t\treturn value.replace(this.#matcher, (base, key: string) => {\n\t\t\treturn args[key]?.toString() ?? base;\n\t\t});\n\t}\n}\n","export type At = 'media' | 'container';\nexport type Breakpoint = 'XXXS' | 'XXS' | 'XS' | 'S' | 'M' | 'L' | 'XL' | 'XXL' | 'XXXL';\n\n/**\n * Breakpoints in em, useful for media queries\n *\n * Equivalent of `$breakpoints` (from scss/src/commons/config.scss)\n */\nexport const defaultBreakpoints = {\n\tXXXS: `${320 / 16}em`,\n\tXXS: `${480 / 16}em`,\n\tXS: `${640 / 16}em`,\n\tS: `${800 / 16}em`,\n\tM: `${1024 / 16}em`,\n\tL: `${1280 / 16}em`,\n\tXL: `${1366 / 16}em`,\n\tXXL: `${1600 / 16}em`,\n\tXXXL: `${1920 / 16}em`,\n} as const satisfies Record<Breakpoint, `${number}em`>;\n\nexport type ResponsiveConfig<T extends string, V> = Partial<Record<ResponsiveProperty<T>, V>>;\nexport type ResponsiveProperty<T extends string> = `${T}At${Capitalize<At>}Min${Breakpoint}`;\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"lucca-front-ng-core.mjs","sources":["../../../packages/ng/core/date/date-granularity.enum.ts","../../../packages/ng/core/date/date-adapter.class.ts","../../../packages/ng/core/date/native/native-date.option.ts","../../../packages/ng/core/date/native/native-date.adapter.ts","../../../packages/ng/core/date/string/string-date.adapter.ts","../../../packages/ng/core/event/on-close.subscriber.ts","../../../packages/ng/core/event/on-open.subscriber.ts","../../../packages/ng/core/event/on-scroll-bottom.subscriber.ts","../../../packages/ng/core/id/id.generator.ts","../../../packages/ng/core/misc.ts","../../../packages/ng/core/portal/portal-content.ts","../../../packages/ng/core/portal/portal.directive.ts","../../../packages/ng/core/signal.ts","../../../packages/ng/core/translate/intl.model.ts","../../../packages/ng/core/translate/intl-params.pipe.ts","../../../packages/ng/core/type/responsive.ts","../../../packages/ng/core/lucca-front-ng-core.ts"],"sourcesContent":["import { EnumValue } from '../type';\n\nexport enum ELuDateGranularity {\n\tday = 'day',\n\tmonth = 'month',\n\tyear = 'year',\n\tdecade = 'decade',\n}\n\nexport type LuDateGranularity = EnumValue<ELuDateGranularity>;\n","import { ILuDateAdapter } from './date-adapter.interface';\nimport { ELuDateGranularity, LuDateGranularity } from './date-granularity.enum';\n\nexport abstract class ALuDateAdapter<D> implements ILuDateAdapter<D> {\n\tabstract forge(year: number, month: number, date: number): D;\n\tabstract forgeToday(): D;\n\tabstract forgeInvalid(): D;\n\tabstract isValid(d: D): boolean;\n\tcompare(a: D, b: D, granularity: LuDateGranularity): number {\n\t\tif (!a || !b || !this.isValid(a) || !this.isValid(b)) {\n\t\t\tthrow new Error('you must provide valid and not null dates to be compared');\n\t\t}\n\t\tconst aDecade = Math.floor(this.getYear(a) / 10);\n\t\tconst bDecade = Math.floor(this.getYear(b) / 10);\n\t\tif (aDecade < bDecade) {\n\t\t\treturn -1;\n\t\t}\n\t\tif (aDecade > bDecade) {\n\t\t\treturn 1;\n\t\t}\n\t\tif (granularity === ELuDateGranularity.decade) {\n\t\t\treturn 0;\n\t\t}\n\n\t\tconst aYear = this.getYear(a);\n\t\tconst bYear = this.getYear(b);\n\t\tif (aYear < bYear) {\n\t\t\treturn -1;\n\t\t}\n\t\tif (aYear > bYear) {\n\t\t\treturn 1;\n\t\t}\n\t\tif (granularity === ELuDateGranularity.year) {\n\t\t\treturn 0;\n\t\t}\n\n\t\tconst aMonth = this.getMonth(a);\n\t\tconst bMonth = this.getMonth(b);\n\t\tif (aMonth < bMonth) {\n\t\t\treturn -1;\n\t\t}\n\t\tif (aMonth > bMonth) {\n\t\t\treturn 1;\n\t\t}\n\t\tif (granularity === ELuDateGranularity.month) {\n\t\t\treturn 0;\n\t\t}\n\n\t\tconst aDate = this.getDate(a);\n\t\tconst bDate = this.getDate(b);\n\t\tif (aDate < bDate) {\n\t\t\treturn -1;\n\t\t}\n\t\tif (aDate > bDate) {\n\t\t\treturn 1;\n\t\t}\n\t\tif (granularity === ELuDateGranularity.day) {\n\t\t\treturn 0;\n\t\t}\n\n\t\treturn 0;\n\t}\n\tabstract isParsable(text: string, granularity?: LuDateGranularity): boolean;\n\tabstract parse(text: string, granularity?: LuDateGranularity): D;\n\tabstract format(d: D, format: string): string;\n\tabstract clone(d: D): D;\n\n\tabstract getYear(d: D): number;\n\tabstract getMonth(d: D): number;\n\tabstract getDate(d: D): number;\n\tabstract getDay(d: D): number;\n\n\tabstract add(d: D, count: number, granularity: LuDateGranularity): D;\n}\n","import { InjectionToken } from '@angular/core';\n\nexport interface ILuNativeDateAdapterOptions {\n\tuseUtc?: boolean;\n}\nexport const luDefaultNativeDateAdapterOptions: ILuNativeDateAdapterOptions = {\n\tuseUtc: false,\n};\nexport const LU_NATIVE_DATE_ADAPTER_OPTIONS = new InjectionToken<ILuNativeDateAdapterOptions>('Native date adapter options');\n","import { formatDate, FormatWidth, getLocaleDateFormat } from '@angular/common';\nimport { Inject, Injectable, LOCALE_ID, Optional } from '@angular/core';\nimport { ALuDateAdapter } from '../date-adapter.class';\nimport { ILuDateAdapter } from '../date-adapter.interface';\nimport { ELuDateGranularity, LuDateGranularity } from '../date-granularity.enum';\nimport { ILuNativeDateAdapterOptions, LU_NATIVE_DATE_ADAPTER_OPTIONS, luDefaultNativeDateAdapterOptions } from './native-date.option';\n\n@Injectable()\nexport class LuNativeDateAdapter extends ALuDateAdapter<Date> implements ILuDateAdapter<Date> {\n\tprivate _regex = /[/,.\\-\\s]/i;\n\tprivate _order = {\n\t\tdate: 0,\n\t\tmonth: 1,\n\t\tyear: 2,\n\t};\n\tconstructor(\n\t\t@Inject(LOCALE_ID) private _locale: string,\n\t\t@Inject(LU_NATIVE_DATE_ADAPTER_OPTIONS)\n\t\t@Optional()\n\t\tprivate _options: ILuNativeDateAdapterOptions,\n\t) {\n\t\tsuper();\n\t\tthis._options = this._options || luDefaultNativeDateAdapterOptions;\n\t\tthis.initOrder();\n\t}\n\tprivate initOrder() {\n\t\tconst format = getLocaleDateFormat(this._locale, FormatWidth.Short);\n\t\tconst groups = format.split(this._regex);\n\t\tgroups.forEach((g, i) => {\n\t\t\tif (g.indexOf('d') !== -1) {\n\t\t\t\tthis._order.date = i;\n\t\t\t}\n\t\t\tif (g.indexOf('M') !== -1) {\n\t\t\t\tthis._order.month = i;\n\t\t\t}\n\t\t\tif (g.indexOf('y') !== -1) {\n\t\t\t\tthis._order.year = i;\n\t\t\t}\n\t\t});\n\t}\n\tprivate extract(text: string, granularity: LuDateGranularity = ELuDateGranularity.day): { date: number; month: number; year: number } {\n\t\tconst groups = text.split(this._regex);\n\t\tlet date = 1,\n\t\t\tmonth = 1,\n\t\t\tyear = 1;\n\t\tswitch (granularity) {\n\t\t\tcase ELuDateGranularity.year:\n\t\t\t\tyear = parseInt(groups[Math.max(this._order.year - 2, 0)], 10);\n\t\t\t\tbreak;\n\t\t\tcase ELuDateGranularity.month:\n\t\t\t\tmonth = parseInt(groups[Math.max(this._order.month - 1, 0)], 10);\n\t\t\t\tyear = parseInt(groups[Math.max(this._order.year - 1, 0)], 10) || new Date().getFullYear();\n\t\t\t\tbreak;\n\t\t\tcase ELuDateGranularity.day:\n\t\t\tdefault:\n\t\t\t\tdate = parseInt(groups[this._order.date], 10);\n\t\t\t\tmonth = parseInt(groups[this._order.month], 10);\n\t\t\t\tyear = parseInt(groups[this._order.year], 10) || new Date().getFullYear();\n\t\t}\n\t\treturn { date, month, year };\n\t}\n\tisParsable(text: string, granularity: LuDateGranularity = ELuDateGranularity.day): boolean {\n\t\tif (!text) {\n\t\t\treturn false;\n\t\t}\n\t\tconst groups = text.split(this._regex);\n\t\tconst dayTextInvalid = granularity === ELuDateGranularity.day && groups.length !== 3;\n\t\tconst monthTextInvalid = granularity === ELuDateGranularity.month && groups.length !== 2;\n\t\tconst yearTextInvalid = granularity === ELuDateGranularity.year && groups.length !== 1;\n\t\tif (dayTextInvalid || monthTextInvalid || yearTextInvalid) {\n\t\t\treturn false;\n\t\t}\n\n\t\ttry {\n\t\t\tconst { date, month, year } = this.extract(text, granularity);\n\n\t\t\t// When year is equal or greater than 10_000 ISO string goes from 2000-01-01 to +010000-01-01 which is not supported by backends\n\t\t\tif (year >= 10_000) {\n\t\t\t\treturn false;\n\t\t\t}\n\n\t\t\tlet d: Date;\n\t\t\tif (this._options.useUtc) {\n\t\t\t\td = new Date(Date.UTC(year, month - 1, date));\n\t\t\t} else {\n\t\t\t\td = new Date(year, month - 1, date);\n\t\t\t}\n\t\t\t// checking if its a valid date\n\t\t\t// https://stackoverflow.com/questions/1353684/detecting-an-invalid-date-date-instance-in-javascript\n\t\t\tif (!(d instanceof Date)) {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t\tif (isNaN(d.getTime())) {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t\t// d is a valid date, but\n\t\t\t// as i can write new Date(1234, 56, 78) and mr javascript accepts it\n\t\t\t// i check now that the generated date has the same year/month/date as what i entered\n\t\t\tif (this._options.useUtc) {\n\t\t\t\tif (d.getUTCFullYear() !== year) {\n\t\t\t\t\treturn false;\n\t\t\t\t}\n\t\t\t\tif (d.getUTCMonth() !== month - 1) {\n\t\t\t\t\treturn false;\n\t\t\t\t}\n\t\t\t\tif (d.getUTCDate() !== date) {\n\t\t\t\t\treturn false;\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tif (d.getFullYear() !== year) {\n\t\t\t\t\treturn false;\n\t\t\t\t}\n\t\t\t\tif (d.getMonth() !== month - 1) {\n\t\t\t\t\treturn false;\n\t\t\t\t}\n\t\t\t\tif (d.getDate() !== date) {\n\t\t\t\t\treturn false;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\treturn true;\n\t\t} catch {\n\t\t\treturn false;\n\t\t}\n\t}\n\tparse(text: string, granularity: LuDateGranularity = ELuDateGranularity.day): Date {\n\t\tif (!text) {\n\t\t\treturn undefined;\n\t\t}\n\n\t\tif (!this.isParsable(text, granularity)) {\n\t\t\treturn this.forgeInvalid();\n\t\t}\n\n\t\tconst { date, month, year } = this.extract(text, granularity);\n\n\t\treturn this.forge(year, month, date);\n\t}\n\tformat(d: Date, format: string): string {\n\t\tif (this._options.useUtc) {\n\t\t\treturn formatDate(d, format, this._locale, 'UTC');\n\t\t} else {\n\t\t\treturn formatDate(d, format, this._locale);\n\t\t}\n\t}\n\tforge(year: number, month: number, date: number): Date {\n\t\tif (this._options.useUtc) {\n\t\t\treturn new Date(Date.UTC(year, month - 1, date)); // month-1 cuz 0 -> january\n\t\t} else {\n\t\t\treturn new Date(year, month - 1, date); // month-1 cuz 0 -> january\n\t\t}\n\t}\n\tforgeToday(): Date {\n\t\tif (this._options.useUtc) {\n\t\t\tconst nonUTCToday = new Date();\n\t\t\treturn new Date(Date.UTC(nonUTCToday.getFullYear(), nonUTCToday.getMonth(), nonUTCToday.getDate()));\n\t\t} else {\n\t\t\tconst today = new Date();\n\t\t\treturn new Date(today.getFullYear(), today.getMonth(), today.getDate());\n\t\t}\n\t}\n\tforgeInvalid(): Date {\n\t\treturn new Date('Invalid Date');\n\t}\n\tisValid(d: Date): boolean {\n\t\tif (!(d instanceof Date)) {\n\t\t\treturn false;\n\t\t}\n\t\tif (isNaN(d.getTime())) {\n\t\t\treturn false;\n\t\t}\n\t\treturn true;\n\t}\n\n\tclone(d: Date): Date {\n\t\treturn new Date(d);\n\t}\n\n\tgetYear(d: Date): number {\n\t\tif (this._options.useUtc) {\n\t\t\treturn d.getUTCFullYear();\n\t\t} else {\n\t\t\treturn d.getFullYear();\n\t\t}\n\t}\n\tgetMonth(d: Date): number {\n\t\tif (this._options.useUtc) {\n\t\t\treturn d.getUTCMonth() + 1;\n\t\t} else {\n\t\t\treturn d.getMonth() + 1;\n\t\t}\n\t}\n\tgetDate(d: Date): number {\n\t\tif (this._options.useUtc) {\n\t\t\treturn d.getUTCDate();\n\t\t} else {\n\t\t\treturn d.getDate();\n\t\t}\n\t}\n\tgetDay(d: Date): number {\n\t\tif (this._options.useUtc) {\n\t\t\treturn d.getUTCDay();\n\t\t} else {\n\t\t\treturn d.getDay();\n\t\t}\n\t}\n\n\tadd(d: Date, count: number, granularity: LuDateGranularity): Date {\n\t\tlet year = this.getYear(d);\n\t\tlet month = this.getMonth(d);\n\t\tlet date = this.getDate(d);\n\t\tswitch (granularity) {\n\t\t\tcase ELuDateGranularity.decade:\n\t\t\t\tyear += 10 * count;\n\t\t\t\tbreak;\n\t\t\tcase ELuDateGranularity.year:\n\t\t\t\tyear += count;\n\t\t\t\tbreak;\n\t\t\tcase ELuDateGranularity.month:\n\t\t\t\tmonth += count;\n\t\t\t\tbreak;\n\t\t\tcase ELuDateGranularity.day:\n\t\t\t\tdate += count;\n\t\t\t\tbreak;\n\t\t}\n\t\treturn this.forge(year, month, date);\n\t}\n}\n","import { Inject, Injectable, LOCALE_ID } from '@angular/core';\nimport { ALuDateAdapter } from '../date-adapter.class';\nimport { ILuDateAdapter } from '../date-adapter.interface';\nimport { LuDateGranularity } from '../date-granularity.enum';\nimport { LuNativeDateAdapter } from '../native/index';\n\n/** bind to a string with iso 26001 format YYYY-MM-DD */\n@Injectable()\nexport class LuStringDateAdapter extends ALuDateAdapter<string> implements ILuDateAdapter<string> {\n\t// i'm going to implement this by doing some inheritance by composition\n\t// i'll just use the native date adapter and just parse/format to interface it with a string\n\n\tprivate _nativeAdapter: LuNativeDateAdapter;\n\n\tconstructor(@Inject(LOCALE_ID) private _locale: string) {\n\t\tsuper();\n\t\tthis._nativeAdapter = new LuNativeDateAdapter(this._locale, {\n\t\t\tuseUtc: true,\n\t\t});\n\t}\n\n\tforge(year: number, month: number, date: number): string {\n\t\treturn this.dateToString(this._nativeAdapter.forge(year, month, date));\n\t}\n\n\tforgeToday(): string {\n\t\treturn this.dateToString(this._nativeAdapter.forgeToday());\n\t}\n\n\tforgeInvalid(): string {\n\t\treturn 'Invalid Date';\n\t}\n\n\tisValid(d: string): boolean {\n\t\treturn this._nativeAdapter.isValid(this.stringToDate(d));\n\t}\n\n\toverride compare(a: string, b: string, granularity: LuDateGranularity): number {\n\t\tconst da = this.stringToDate(a);\n\t\tconst db = this.stringToDate(b);\n\n\t\treturn this._nativeAdapter.compare(da, db, granularity);\n\t}\n\n\tisParsable(text: string): boolean {\n\t\treturn this._nativeAdapter.isParsable(text);\n\t}\n\n\tparse(text: string, granularity: LuDateGranularity): string {\n\t\treturn this.dateToString(this._nativeAdapter.parse(text, granularity));\n\t}\n\n\tformat(d: string, format: string): string {\n\t\treturn this._nativeAdapter.format(this.stringToDate(d), format);\n\t}\n\n\tclone(d: string): string {\n\t\treturn `${d}`;\n\t}\n\n\tgetYear(d: string): number {\n\t\treturn this._nativeAdapter.getYear(this.stringToDate(d));\n\t}\n\n\tgetMonth(d: string): number {\n\t\treturn this._nativeAdapter.getMonth(this.stringToDate(d));\n\t}\n\n\tgetDate(d: string): number {\n\t\treturn this._nativeAdapter.getDate(this.stringToDate(d));\n\t}\n\n\tgetDay(d: string): number {\n\t\treturn this._nativeAdapter.getDay(this.stringToDate(d));\n\t}\n\n\tadd(d: string, count: number, granularity: LuDateGranularity): string {\n\t\treturn this.dateToString(this._nativeAdapter.add(this.stringToDate(d), count, granularity));\n\t}\n\n\tprotected stringToDate(s: string): Date {\n\t\treturn new Date(`${s}T00:00:00Z`);\n\t}\n\n\tprotected dateToString(d: Date): string {\n\t\tlet result: string;\n\n\t\tif (d === undefined) {\n\t\t\tresult = undefined;\n\t\t} else if (!this._nativeAdapter.isValid(d)) {\n\t\t\tresult = this.forgeInvalid();\n\t\t} else {\n\t\t\tresult = d.toISOString().substring(0, 10);\n\t\t}\n\n\t\treturn result;\n\t}\n}\n","export interface ILuOnCloseSubscriber {\n\tonClose(): void;\n}\nexport abstract class ALuOnCloseSubscriber implements ILuOnCloseSubscriber {\n\tabstract onClose(): void;\n}\n","export interface ILuOnOpenSubscriber {\n\tonOpen(): void;\n}\nexport abstract class ALuOnOpenSubscriber implements ILuOnOpenSubscriber {\n\tabstract onOpen(): void;\n}\n","export interface ILuOnScrollBottomSubscriber {\n\tonScrollBottom(): void;\n}\nexport abstract class ALuOnScrollBottomSubscriber implements ILuOnScrollBottomSubscriber {\n\tabstract onScrollBottom(): void;\n}\n","const ID_LENGTH = 8;\nconst ID_BASE = 16;\nexport function generateId(): string {\n\treturn Array(ID_LENGTH)\n\t\t.fill(0)\n\t\t.map(() => Math.floor(Math.random() * ID_BASE).toString(ID_BASE))\n\t\t.join('');\n}\n","type Nil = null | undefined;\n\nexport const isNil = <T>(value: T | Nil): value is Nil => typeof value === 'undefined' || value === null;\n\nexport const isNotNil = <T>(value: T): value is NonNullable<T> => !isNil(value);\n\nexport const isNilOrEmptyString = (str: string | Nil): str is Nil | '' => isNil(str) || str === '';\n\nexport const isNotNilOrEmptyString = (str: string | Nil): str is string => !isNilOrEmptyString(str);\n","import { InjectionToken, TemplateRef, Type } from '@angular/core';\n\nexport type PortalContent<T = unknown> = string | TemplateRef<T> | Type<unknown>;\n\nexport const PORTAL_CONTEXT = new InjectionToken<unknown>('PORTAL_CONTEXT');\n","import { ComponentRef, Directive, effect, EmbeddedViewRef, inject, Injector, input, OnDestroy, Renderer2, TemplateRef, untracked, ViewContainerRef } from '@angular/core';\nimport { PORTAL_CONTEXT, PortalContent } from './portal-content';\n\n@Directive({\n\tselector: '[luPortal]',\n})\nexport class PortalDirective<T = unknown> implements OnDestroy {\n\tprivate viewContainerRef = inject(ViewContainerRef);\n\tprivate renderer = inject(Renderer2);\n\tprivate templateRef = inject(TemplateRef);\n\tprivate injector = inject(Injector);\n\n\tluPortal = input.required<PortalContent<T>>();\n\n\tluPortalContext = input<T | null>(null);\n\n\tprivate createdTextElement: Text | null = null;\n\tprivate embeddedViewRef?: EmbeddedViewRef<T>;\n\tprivate componentRef?: ComponentRef<unknown>;\n\n\tconstructor() {\n\t\teffect(() => {\n\t\t\tconst portal = this.luPortal();\n\t\t\tuntracked(() => {\n\t\t\t\tif (portal) {\n\t\t\t\t\tthis.render(portal, this.luPortalContext());\n\t\t\t\t}\n\t\t\t});\n\t\t});\n\t\teffect(() => {\n\t\t\tconst ctx = this.luPortalContext();\n\t\t\tuntracked(() => {\n\t\t\t\tif (this.embeddedViewRef && ctx) {\n\t\t\t\t\tthis.updateEmbeddedViewContext(ctx);\n\t\t\t\t}\n\t\t\t});\n\t\t});\n\t}\n\n\tprivate render(luPortal: PortalContent<T>, ctx: T | null): void {\n\t\tthis.viewContainerRef.clear();\n\t\tthis.embeddedViewRef = undefined;\n\t\tthis.componentRef = undefined;\n\n\t\tif (typeof luPortal !== 'string') {\n\t\t\tthis.destroyRenderedText();\n\t\t}\n\n\t\tif (!luPortal) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (luPortal instanceof TemplateRef) {\n\t\t\tconst context = Object.assign({}, ctx);\n\t\t\tthis.embeddedViewRef = this.viewContainerRef.createEmbeddedView<T>(luPortal, context, { injector: this.injector });\n\t\t} else if (typeof luPortal === 'string') {\n\t\t\tthis.renderText(luPortal);\n\t\t} else {\n\t\t\tconst injector = Injector.create({\n\t\t\t\tparent: this.injector,\n\t\t\t\tproviders: [{ provide: PORTAL_CONTEXT, useValue: ctx }],\n\t\t\t});\n\t\t\ttry {\n\t\t\t\tthis.componentRef = this.viewContainerRef.createComponent(luPortal, { injector });\n\t\t\t\tthis.componentRef.changeDetectorRef.detectChanges();\n\t\t\t} catch (e) {\n\t\t\t\tconsole.error(e);\n\t\t\t\tthrow new Error('[LuPortal] Angular failed to create component, make sure you are not giving LuPortal an Object that is not a Type<>');\n\t\t\t}\n\t\t}\n\t}\n\n\tngOnDestroy(): void {\n\t\tthis.destroyRenderedText();\n\t\tthis.embeddedViewRef?.destroy();\n\t\tthis.componentRef?.destroy();\n\t}\n\n\tprivate renderText(text: string): void {\n\t\tif (this.createdTextElement) {\n\t\t\tthis.createdTextElement.textContent = text;\n\t\t} else {\n\t\t\tconst ref = this.viewContainerRef.createEmbeddedView(this.templateRef);\n\t\t\tconst container: HTMLElement = ref.rootNodes[0] as HTMLElement;\n\t\t\tconst parent = container.parentElement;\n\t\t\tthis.createdTextElement = document.createTextNode(text);\n\t\t\tthis.renderer.insertBefore(parent, this.createdTextElement, container);\n\t\t}\n\t}\n\n\tprivate destroyRenderedText(): void {\n\t\tif (this.createdTextElement) {\n\t\t\tthis.renderer.removeChild(this.createdTextElement.parentNode, this.createdTextElement);\n\t\t\tthis.createdTextElement = null;\n\t\t}\n\t}\n\n\t/**\n\t * Embeded view context should not be overwritten, but updated.\n\t * @see https://github.com/angular/angular/pull/51887\n\t */\n\tprivate updateEmbeddedViewContext(context: T): void {\n\t\tif (this.embeddedViewRef) {\n\t\t\tconst props = Object.keys(context);\n\n\t\t\tfor (const prop of props) {\n\t\t\t\tdelete this.embeddedViewRef.context[prop];\n\t\t\t}\n\n\t\t\tObject.assign(this.embeddedViewRef.context, context);\n\t\t\tthis.embeddedViewRef.detectChanges();\n\t\t}\n\t}\n\n\tpublic static ngTemplateContextGuard<T>(_dir: PortalDirective<T>, ctx: unknown): ctx is void {\n\t\treturn true;\n\t}\n}\n","import { CreateEffectOptions, effect, EffectCleanupRegisterFn, EffectRef, Signal, untracked } from '@angular/core';\n\ntype SignalsValue<T> = T extends readonly unknown[] ? TupleOfSignalValues<T> : [RecordOfSignalValues<T>];\n\ntype TupleOfSignalValues<T> = T extends readonly [Signal<infer U>, ...infer R] ? [U, ...TupleOfSignalValues<R>] : [];\ntype RecordOfSignalValues<T> = { [K in keyof T]: T[K] extends Signal<infer U> ? U : never };\n\nexport type EffectWithDepsInput = ReadonlyArray<Signal<unknown>> | Record<string, Signal<unknown>>;\n\n/**\n * Effect peut être dangereux car l'action accomplie peut elle-même déclencher des écritures dans des signaux.\n * C'est une mauvaise pratique, interdite par défaut par Angular.\n * La plupart du temps, seule la lecture des signaux est intéressante à tracker, pas les actions qui en découlent.\n */\nexport function ɵeffectWithDeps<const T extends EffectWithDepsInput>(\n\tdependencies: T,\n\taction: (...values: [...SignalsValue<T>, EffectCleanupRegisterFn]) => unknown,\n\toptions?: CreateEffectOptions,\n): EffectRef {\n\treturn effect((onCleanup) => {\n\t\tconst deps = isReadonlyArray(dependencies) ? readTupleOfSignalValues(dependencies) : [readRecordOfSignalValues(dependencies)];\n\n\t\tuntracked(() => action(...(deps as SignalsValue<T>), onCleanup));\n\t}, options);\n}\n\nfunction readTupleOfSignalValues<T extends readonly Signal<unknown>[]>(signals: T): TupleOfSignalValues<T> {\n\treturn signals.map((signal) => signal()) as TupleOfSignalValues<T>;\n}\n\nfunction readRecordOfSignalValues<T extends Record<string, Signal<unknown>>>(signals: T): RecordOfSignalValues<T> {\n\treturn Object.fromEntries(Object.entries(signals).map(([key, signal]) => [key, signal()])) as RecordOfSignalValues<T>;\n}\n\nfunction isReadonlyArray(input: EffectWithDepsInput): input is ReadonlyArray<Signal<unknown>> {\n\treturn Array.isArray(input);\n}\n","import { inject, InjectionToken, InputOptionsWithTransform, LOCALE_ID } from '@angular/core';\nimport { ILuTranslation, LuTranslation } from './translation.model';\n\nexport function getIntl<T>(translationsToken: InjectionToken<LuTranslation<T>> | InjectionToken<ILuTranslation<T>>): T {\n\tconst locale = inject(LOCALE_ID);\n\tconst translations = inject(translationsToken);\n\n\tif (locale in translations) {\n\t\treturn translations[locale];\n\t}\n\n\tconst shortLocale = locale.substring(0, 2);\n\tif (shortLocale in translations) {\n\t\treturn translations[shortLocale];\n\t}\n\n\treturn translations['en'] ?? translations['en-GB'] ?? translations['en-US'];\n}\n\n/**\n * Creates configuration for an Angular signal input that supports internationalization with optional overrides.\n *\n * This function merges translations from one or more injection tokens and returns a tuple\n * compatible with Angular's `input()` function. Users can override specific translations\n * via the component's `[intl]` input while inheriting defaults from the provided tokens.\n *\n * @example\n * ```typescript\n * // In a component\n * intl = input(...intlInputOptions(LU_SOME_COMPONENT_TRANSLATIONS));\n *\n * // Usage in template\n * <lu-some-component [intl]=\"{ stuff: 'Some custom stuff' }\" />\n * ```\n *\n * @param tokens - One or more injection tokens containing locale-based translations\n * @returns A tuple of [defaultValue, inputOptions] to spread into Angular's `input()` function\n */\nexport function intlInputOptions<T1>(token1: InjectionToken<LuTranslation<T1>>): [T1, InputOptionsWithTransform<T1, Partial<T1>>];\nexport function intlInputOptions<T1, T2>(token1: InjectionToken<LuTranslation<T1>>, token2: InjectionToken<LuTranslation<T2>>): [T1 & T2, InputOptionsWithTransform<T1 & T2, Partial<T1 & T2>>];\nexport function intlInputOptions<T>(...tokens: InjectionToken<LuTranslation<T>>[]): [T, InputOptionsWithTransform<T, Partial<T>>] {\n\tconst base = tokens.reduce((acc, token) => ({ ...acc, ...getIntl(token) }), {} as T);\n\treturn [\n\t\tbase,\n\t\t{\n\t\t\ttransform: (patch: Partial<T>): T => ({\n\t\t\t\t...base,\n\t\t\t\t...patch,\n\t\t\t}),\n\t\t},\n\t];\n}\n","import { Pipe, PipeTransform } from '@angular/core';\n\n@Pipe({\n\tname: 'intlParams',\n})\nexport class IntlParamsPipe implements PipeTransform {\n\t#matcher = /{{\\s?([^{}\\s]*)\\s?}}/g;\n\n\ttransform(value: string, args: Record<string, string | number>): string {\n\t\treturn value.replace(this.#matcher, (base, key: string) => {\n\t\t\treturn args[key]?.toString() ?? base;\n\t\t});\n\t}\n}\n","export type At = 'media' | 'container';\nexport type Breakpoint = 'XXXS' | 'XXS' | 'XS' | 'S' | 'M' | 'L' | 'XL' | 'XXL' | 'XXXL';\n\n/**\n * Breakpoints in em, useful for media queries\n *\n * Equivalent of `$breakpoints` (from scss/src/commons/config.scss)\n */\nexport const defaultBreakpoints = {\n\tXXXS: `${320 / 16}em`,\n\tXXS: `${480 / 16}em`,\n\tXS: `${640 / 16}em`,\n\tS: `${800 / 16}em`,\n\tM: `${1024 / 16}em`,\n\tL: `${1280 / 16}em`,\n\tXL: `${1366 / 16}em`,\n\tXXL: `${1600 / 16}em`,\n\tXXXL: `${1920 / 16}em`,\n} as const satisfies Record<Breakpoint, `${number}em`>;\n\nexport type ResponsiveConfig<T extends string, V> = Partial<Record<ResponsiveProperty<T>, V>>;\nexport type ResponsiveProperty<T extends string> = `${T}At${Capitalize<At>}Min${Breakpoint}`;\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  import * as i0 from '@angular/core';
2
2
  import { InjectionToken, input, model, inject, computed, forwardRef, ChangeDetectionStrategy, ViewEncapsulation, Component, booleanAttribute, ElementRef, signal, contentChildren, viewChild, contentChild, numberAttribute, afterNextRender } from '@angular/core';
3
3
  import { ButtonComponent } from '@lucca-front/ng/button';
4
- import { PortalDirective, getIntl, ɵeffectWithDeps as _effectWithDeps } from '@lucca-front/ng/core';
4
+ import { PortalDirective, intlInputOptions, ɵeffectWithDeps as _effectWithDeps } from '@lucca-front/ng/core';
5
5
  import { IconComponent } from '@lucca-front/ng/icon';
6
6
  import { NgTemplateOutlet } from '@angular/common';
7
7
  import { toSignal } from '@angular/core/rxjs-interop';
@@ -27,15 +27,15 @@ class DataTableBodyComponent {
27
27
  expandedToggle() {
28
28
  this.expanded.set(!this.expanded());
29
29
  }
30
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: DataTableBodyComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
31
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.0.6", type: DataTableBodyComponent, isStandalone: true, selector: "tbody[luDataTableBody]", inputs: { group: { classPropertyName: "group", publicName: "group", isSignal: true, isRequired: false, transformFunction: null }, groupButtonAlt: { classPropertyName: "groupButtonAlt", publicName: "groupButtonAlt", isSignal: true, isRequired: false, transformFunction: null }, expanded: { classPropertyName: "expanded", publicName: "expanded", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { expanded: "expandedChange" }, host: { classAttribute: "dataTable-body" }, providers: [
30
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.8", ngImport: i0, type: DataTableBodyComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
31
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.0.8", type: DataTableBodyComponent, isStandalone: true, selector: "tbody[luDataTableBody]", inputs: { group: { classPropertyName: "group", publicName: "group", isSignal: true, isRequired: false, transformFunction: null }, groupButtonAlt: { classPropertyName: "groupButtonAlt", publicName: "groupButtonAlt", isSignal: true, isRequired: false, transformFunction: null }, expanded: { classPropertyName: "expanded", publicName: "expanded", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { expanded: "expandedChange" }, host: { classAttribute: "dataTable-body" }, providers: [
32
32
  {
33
33
  provide: LU_DATA_TABLE_BODY_INSTANCE,
34
34
  useExisting: forwardRef(() => DataTableBodyComponent),
35
35
  },
36
- ], ngImport: i0, template: "@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", dependencies: [{ kind: "component", type: ButtonComponent, selector: "button[luButton],a[luButton]", inputs: ["size", "block", "critical", "delete", "disclosure", "palette", "state", "luButton"] }, { kind: "directive", type: PortalDirective, selector: "[luPortal]", inputs: ["luPortal", "luPortalContext"] }, { kind: "component", type: IconComponent, selector: "lu-icon", inputs: ["icon", "alt", "size", "color", "AI"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
36
+ ], ngImport: i0, template: "@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", dependencies: [{ kind: "component", type: ButtonComponent, selector: "button[prButton],a[prButton],button[luButton],a[luButton]", inputs: ["size", "block", "critical", "delete", "disclosure", "palette", "state", "luButton", "prButton"] }, { kind: "directive", type: PortalDirective, selector: "[luPortal]", inputs: ["luPortal", "luPortalContext"] }, { kind: "component", type: IconComponent, selector: "pr-icon,lu-icon", inputs: ["icon", "alt", "size", "color", "AI"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
37
37
  }
38
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: DataTableBodyComponent, decorators: [{
38
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.8", ngImport: i0, type: DataTableBodyComponent, decorators: [{
39
39
  type: Component,
40
40
  args: [{ selector: 'tbody[luDataTableBody]', encapsulation: ViewEncapsulation.None, host: {
41
41
  class: 'dataTable-body',
@@ -72,10 +72,10 @@ class BaseDataTableCell {
72
72
  return this.rowRef?.cells().indexOf(this);
73
73
  }, ...(ngDevMode ? [{ debugName: "position" }] : []));
74
74
  }
75
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: BaseDataTableCell, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
76
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "21.0.6", type: BaseDataTableCell, isStandalone: true, selector: "lu-base-data-table-cell", inputs: { editable: { classPropertyName: "editable", publicName: "editable", isSignal: true, isRequired: false, transformFunction: null }, align: { classPropertyName: "align", publicName: "align", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: '', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
75
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.8", ngImport: i0, type: BaseDataTableCell, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
76
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "21.0.8", type: BaseDataTableCell, isStandalone: true, selector: "lu-base-data-table-cell", inputs: { editable: { classPropertyName: "editable", publicName: "editable", isSignal: true, isRequired: false, transformFunction: null }, align: { classPropertyName: "align", publicName: "align", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: '', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
77
77
  }
78
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: BaseDataTableCell, decorators: [{
78
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.8", ngImport: i0, type: BaseDataTableCell, decorators: [{
79
79
  type: Component,
80
80
  args: [{
81
81
  selector: 'lu-base-data-table-cell',
@@ -124,15 +124,15 @@ class DataTableRowCellHeaderComponent extends BaseDataTableCell {
124
124
  this.#inlineSizePx$.next(this.elementRef.nativeElement.clientWidth);
125
125
  }).observe(this.elementRef.nativeElement);
126
126
  }
127
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: DataTableRowCellHeaderComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
128
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.0.6", type: DataTableRowCellHeaderComponent, isStandalone: true, selector: "th[luDataTableCell]", inputs: { sort: { classPropertyName: "sort", publicName: "sort", isSignal: true, isRequired: false, transformFunction: null }, fixedWidth: { classPropertyName: "fixedWidth", publicName: "fixedWidth", isSignal: true, isRequired: false, transformFunction: null }, inlineSize: { classPropertyName: "inlineSize", publicName: "inlineSize", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { sort: "sortChange" }, host: { properties: { "class.dataTable-body-row-cell": "bodyRef !== null", "class.dataTable-head-row-cell": "headRef !== null", "class.dataTable-foot-row-cell": "footRef !== null", "class.mod-alignStart": "align() === \"start\"", "class.mod-alignCenter": "align() === \"center\"", "class.mod-alignEnd": "align() === \"end\"", "class.mod-stickyColumn": "isStickyStart() || isStickyEnd()", "attr.aria-sort": "sort()", "class.mod-editable": "editable()", "attr.scope": "bodyRef !== null ? \"row\" : \"col\"", "style.--dataTable-layoutFixed-width": "inlineSize() || fixedWidth()", "style.insetInlineStart": "insetInlineStart()", "style.insetInlineEnd": "insetInlineEnd()" } }, providers: [
127
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.8", ngImport: i0, type: DataTableRowCellHeaderComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
128
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.0.8", type: DataTableRowCellHeaderComponent, isStandalone: true, selector: "th[luDataTableCell]", inputs: { sort: { classPropertyName: "sort", publicName: "sort", isSignal: true, isRequired: false, transformFunction: null }, fixedWidth: { classPropertyName: "fixedWidth", publicName: "fixedWidth", isSignal: true, isRequired: false, transformFunction: null }, inlineSize: { classPropertyName: "inlineSize", publicName: "inlineSize", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { sort: "sortChange" }, host: { properties: { "class.dataTable-body-row-cell": "bodyRef !== null", "class.dataTable-head-row-cell": "headRef !== null", "class.dataTable-foot-row-cell": "footRef !== null", "class.mod-alignStart": "align() === \"start\"", "class.mod-alignCenter": "align() === \"center\"", "class.mod-alignEnd": "align() === \"end\"", "class.mod-stickyColumn": "isStickyStart() || isStickyEnd()", "attr.aria-sort": "sort()", "class.mod-editable": "editable()", "attr.scope": "bodyRef !== null ? \"row\" : \"col\"", "style.--dataTable-layoutFixed-width": "inlineSize() || fixedWidth()", "style.insetInlineStart": "insetInlineStart()", "style.insetInlineEnd": "insetInlineEnd()" } }, providers: [
129
129
  {
130
130
  provide: LU_DATA_TABLE_CELL_INSTANCE,
131
131
  useExisting: forwardRef(() => DataTableRowCellHeaderComponent),
132
132
  },
133
- ], usesInheritance: true, ngImport: i0, template: "@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", styles: ["@layer components{.tableSortable.button{--components-sortable-arrowColor: var(--palettes-neutral-500);--components-sortable-arrowScale: 1;--components-sortable-direction: row;--components-sortable-offset: calc(var(--pr-t-spacings-50) * -1);--components-sortable-fontWeight: 400;--components-sortable-fontSize: var(--pr-t-font-body-M-fontSize);--components-sortable-lineHeight: var(--pr-t-font-body-M-lineHeight);--components-sortable-arrowsOffset: var(--pr-t-spacings-50);-webkit-user-select:none;user-select:none;font-weight:var(--components-sortable-fontWeight);vertical-align:top;align-items:flex-end;white-space:wrap;inset-inline-start:var(--components-sortable-offset);padding:0 var(--pr-t-spacings-50);gap:var(--pr-t-spacings-25);text-align:inherit;flex-direction:var(--components-sortable-direction);font-size:var(--components-sortable-fontSize);line-height:var(--components-sortable-lineHeight);color:currentColor;--components-button-backgroundColor: transparent;--components-button-color: var(--palettes-700, var(--pr-t-color-text-subtle));--components-button-boxShadow: none}.tableSortable.button:hover,.tableSortable.button:focus-visible{--components-button-color: var(--palettes-700, var(--pr-t-color-text-subtle));--components-button-backgroundColor: var(--palettes-50, var(--palettes-neutral-50))}.tableSortable.button:active{--components-button-backgroundColor: var(--palettes-100, var(--palettes-neutral-100))}.tableSortable.button:disabled{--components-button-backgroundColor: transparent;--components-button-color: var(--pr-t-color-text-disabled)}.tableSortable-arrows{margin-block-end:var(--components-sortable-arrowsOffset);position:relative;inline-size:1rem;block-size:1rem}.tableSortable-arrows-ascending,.tableSortable-arrows-descending{--icon-size: 1rem;position:absolute;inset:0;color:var(--components-sortable-arrowColor);transition-property:translate,scale,color;transition-duration:var(--commons-animations-durations-slow);scale:var(--components-sortable-arrowScale)}.tableSortable-arrows-ascending{translate:0 calc(var(--pr-t-spacings-50) * -1)}.tableSortable-arrows-descending{translate:0 var(--pr-t-spacings-50)}}@layer mods{.table-head-row-cell.mod-alignStart .tableSortable,.table-head-row-cell.mod-alignLeft .tableSortable,.dataTable-head-row-cell.mod-alignStart .tableSortable,.dataTable-head-row-cell.mod-alignLeft .tableSortable,.indexTable-head-row-cell.mod-alignStart .tableSortable,.indexTable-head-row-cell.mod-alignLeft .tableSortable{--components-sortable-direction: row;--components-sortable-offset: calc(var(--pr-t-spacings-50) * -1)}.table-head-row-cell.mod-alignEnd .tableSortable,.table-head-row-cell.mod-alignRight .tableSortable,.dataTable-head-row-cell.mod-alignEnd .tableSortable,.dataTable-head-row-cell.mod-alignRight .tableSortable,.indexTable-head-row-cell.mod-alignEnd .tableSortable,.indexTable-head-row-cell.mod-alignRight .tableSortable{--components-sortable-direction: row-reverse;--components-sortable-offset: var(--pr-t-spacings-50)}.table-head-row-cell.mod-alignCenter .tableSortable,.dataTable-head-row-cell.mod-alignCenter .tableSortable,.indexTable-head-row-cell.mod-alignCenter .tableSortable{--components-sortable-offset: var(--pr-t-spacings-100)}.table-head-row-cell[aria-sort=ascending] .tableSortable .tableSortable-arrows-ascending,.dataTable-head-row-cell[aria-sort=ascending] .tableSortable .tableSortable-arrows-ascending,.indexTable-head-row-cell[aria-sort=ascending] .tableSortable .tableSortable-arrows-ascending,.table-head-row-cell[aria-sort=descending] .tableSortable .tableSortable-arrows-descending,.dataTable-head-row-cell[aria-sort=descending] .tableSortable .tableSortable-arrows-descending,.indexTable-head-row-cell[aria-sort=descending] .tableSortable .tableSortable-arrows-descending{--components-sortable-arrowColor: var(--palettes-neutral-700);--components-sortable-arrowScale: 1.25}}\n"], dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: ButtonComponent, selector: "button[luButton],a[luButton]", inputs: ["size", "block", "critical", "delete", "disclosure", "palette", "state", "luButton"] }, { kind: "component", type: IconComponent, selector: "lu-icon", inputs: ["icon", "alt", "size", "color", "AI"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
133
+ ], usesInheritance: true, ngImport: i0, template: "@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", styles: ["@layer components{.tableSortable.button{--components-sortable-arrowColor: var(--palettes-neutral-500);--components-sortable-arrowScale: 1;--components-sortable-direction: row;--components-sortable-offset: calc(var(--pr-t-spacings-50) * -1);--components-sortable-fontWeight: 400;--components-sortable-fontSize: var(--pr-t-font-body-M-fontSize);--components-sortable-lineHeight: var(--pr-t-font-body-M-lineHeight);--components-sortable-arrowsOffset: var(--pr-t-spacings-50);-webkit-user-select:none;user-select:none;font-weight:var(--components-sortable-fontWeight);vertical-align:top;align-items:flex-end;white-space:wrap;inset-inline-start:var(--components-sortable-offset);padding:0 var(--pr-t-spacings-50);gap:var(--pr-t-spacings-25);text-align:inherit;flex-direction:var(--components-sortable-direction);font-size:var(--components-sortable-fontSize);line-height:var(--components-sortable-lineHeight);color:currentColor;--components-button-backgroundColor: transparent;--components-button-color: var(--palettes-700, var(--pr-t-color-text-subtle));--components-button-boxShadow: none}.tableSortable.button:hover,.tableSortable.button:focus-visible{--components-button-color: var(--palettes-700, var(--pr-t-color-text-subtle));--components-button-backgroundColor: var(--palettes-50, var(--palettes-neutral-50))}.tableSortable.button:active{--components-button-backgroundColor: var(--palettes-100, var(--palettes-neutral-100))}.tableSortable.button:disabled{--components-button-backgroundColor: transparent;--components-button-color: var(--pr-t-color-text-disabled)}.tableSortable-arrows{margin-block-end:var(--components-sortable-arrowsOffset);position:relative;inline-size:1rem;block-size:1rem}.tableSortable-arrows-ascending,.tableSortable-arrows-descending{--icon-size: 1rem;position:absolute;inset:0;color:var(--components-sortable-arrowColor);transition-property:translate,scale,color;transition-duration:var(--commons-animations-durations-slow);scale:var(--components-sortable-arrowScale)}.tableSortable-arrows-ascending{translate:0 calc(var(--pr-t-spacings-50) * -1)}.tableSortable-arrows-descending{translate:0 var(--pr-t-spacings-50)}}@layer mods{.table-head-row-cell.mod-alignStart .tableSortable,.table-head-row-cell.mod-alignLeft .tableSortable,.dataTable-head-row-cell.mod-alignStart .tableSortable,.dataTable-head-row-cell.mod-alignLeft .tableSortable,.indexTable-head-row-cell.mod-alignStart .tableSortable,.indexTable-head-row-cell.mod-alignLeft .tableSortable{--components-sortable-direction: row;--components-sortable-offset: calc(var(--pr-t-spacings-50) * -1)}.table-head-row-cell.mod-alignEnd .tableSortable,.table-head-row-cell.mod-alignRight .tableSortable,.dataTable-head-row-cell.mod-alignEnd .tableSortable,.dataTable-head-row-cell.mod-alignRight .tableSortable,.indexTable-head-row-cell.mod-alignEnd .tableSortable,.indexTable-head-row-cell.mod-alignRight .tableSortable{--components-sortable-direction: row-reverse;--components-sortable-offset: var(--pr-t-spacings-50)}.table-head-row-cell.mod-alignCenter .tableSortable,.dataTable-head-row-cell.mod-alignCenter .tableSortable,.indexTable-head-row-cell.mod-alignCenter .tableSortable{--components-sortable-offset: var(--pr-t-spacings-100)}.table-head-row-cell[aria-sort=ascending] .tableSortable .tableSortable-arrows-ascending,.dataTable-head-row-cell[aria-sort=ascending] .tableSortable .tableSortable-arrows-ascending,.indexTable-head-row-cell[aria-sort=ascending] .tableSortable .tableSortable-arrows-ascending,.table-head-row-cell[aria-sort=descending] .tableSortable .tableSortable-arrows-descending,.dataTable-head-row-cell[aria-sort=descending] .tableSortable .tableSortable-arrows-descending,.indexTable-head-row-cell[aria-sort=descending] .tableSortable .tableSortable-arrows-descending{--components-sortable-arrowColor: var(--palettes-neutral-700);--components-sortable-arrowScale: 1.25}}\n"], dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: ButtonComponent, selector: "button[prButton],a[prButton],button[luButton],a[luButton]", inputs: ["size", "block", "critical", "delete", "disclosure", "palette", "state", "luButton", "prButton"] }, { kind: "component", type: IconComponent, selector: "pr-icon,lu-icon", inputs: ["icon", "alt", "size", "color", "AI"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
134
134
  }
135
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: DataTableRowCellHeaderComponent, decorators: [{
135
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.8", ngImport: i0, type: DataTableRowCellHeaderComponent, decorators: [{
136
136
  type: Component,
137
137
  args: [{ selector: 'th[luDataTableCell]', encapsulation: ViewEncapsulation.None, host: {
138
138
  '[class.dataTable-body-row-cell]': 'bodyRef !== null',
@@ -173,15 +173,15 @@ class DataTableRowCellComponent extends BaseDataTableCell {
173
173
  return this.tableRef?.header()?.cols()?.[this.position()]?.insetInlineEnd();
174
174
  }, ...(ngDevMode ? [{ debugName: "insetInlineEnd" }] : []));
175
175
  }
176
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: DataTableRowCellComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
177
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "21.0.6", type: DataTableRowCellComponent, isStandalone: true, selector: "td[luDataTableCell]", inputs: { actions: { classPropertyName: "actions", publicName: "actions", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "class.dataTable-body-row-cell": "bodyRef !== null", "class.dataTable-head-row-cell": "headRef !== null", "class.dataTable-foot-row-cell": "footRef !== null", "class.mod-alignStart": "align() === \"start\" || alignCol() === \"start\"", "class.mod-alignCenter": "align() === \"center\" || alignCol() === \"center\"", "class.mod-alignEnd": "align() === \"end\" || alignCol() === \"end\"", "class.mod-editable": "editable()", "class.mod-actions": "actions()", "class.mod-stickyColumn": "isSticky()", "style.insetInlineStart": "insetInlineStart()", "style.insetInlineEnd": "insetInlineEnd()" } }, providers: [
176
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.8", ngImport: i0, type: DataTableRowCellComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
177
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "21.0.8", type: DataTableRowCellComponent, isStandalone: true, selector: "td[luDataTableCell]", inputs: { actions: { classPropertyName: "actions", publicName: "actions", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "class.dataTable-body-row-cell": "bodyRef !== null", "class.dataTable-head-row-cell": "headRef !== null", "class.dataTable-foot-row-cell": "footRef !== null", "class.mod-alignStart": "align() === \"start\" || alignCol() === \"start\"", "class.mod-alignCenter": "align() === \"center\" || alignCol() === \"center\"", "class.mod-alignEnd": "align() === \"end\" || alignCol() === \"end\"", "class.mod-editable": "editable()", "class.mod-actions": "actions()", "class.mod-stickyColumn": "isSticky()", "style.insetInlineStart": "insetInlineStart()", "style.insetInlineEnd": "insetInlineEnd()" } }, providers: [
178
178
  {
179
179
  provide: LU_DATA_TABLE_CELL_INSTANCE,
180
180
  useExisting: forwardRef(() => DataTableRowCellComponent),
181
181
  },
182
182
  ], usesInheritance: true, ngImport: i0, template: '<ng-content />', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
183
183
  }
184
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: DataTableRowCellComponent, decorators: [{
184
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.8", ngImport: i0, type: DataTableRowCellComponent, decorators: [{
185
185
  type: Component,
186
186
  args: [{
187
187
  // eslint-disable-next-line @angular-eslint/component-selector
@@ -212,15 +212,15 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.6", ngImpor
212
212
  }], propDecorators: { actions: [{ type: i0.Input, args: [{ isSignal: true, alias: "actions", required: false }] }] } });
213
213
 
214
214
  class DataTableFootComponent {
215
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: DataTableFootComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
216
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.0.6", type: DataTableFootComponent, isStandalone: true, selector: "tfoot[luDataTableFoot]", host: { classAttribute: "dataTable-foot" }, providers: [
215
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.8", ngImport: i0, type: DataTableFootComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
216
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.0.8", type: DataTableFootComponent, isStandalone: true, selector: "tfoot[luDataTableFoot]", host: { classAttribute: "dataTable-foot" }, providers: [
217
217
  {
218
218
  provide: LU_DATA_TABLE_FOOT_INSTANCE,
219
219
  useExisting: forwardRef(() => DataTableFootComponent),
220
220
  },
221
221
  ], ngImport: i0, template: '<ng-content />', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
222
222
  }
223
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: DataTableFootComponent, decorators: [{
223
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.8", ngImport: i0, type: DataTableFootComponent, decorators: [{
224
224
  type: Component,
225
225
  args: [{
226
226
  // eslint-disable-next-line @angular-eslint/component-selector
@@ -246,15 +246,15 @@ class DataTableHeadComponent {
246
246
  this.isFirstVisible = signal(false, ...(ngDevMode ? [{ debugName: "isFirstVisible" }] : []));
247
247
  this.cols = contentChildren(DataTableRowCellHeaderComponent, { ...(ngDevMode ? { debugName: "cols" } : {}), descendants: true });
248
248
  }
249
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: DataTableHeadComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
250
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "21.0.6", type: DataTableHeadComponent, isStandalone: true, selector: "thead[luDataTableHead]", inputs: { sticky: { classPropertyName: "sticky", publicName: "sticky", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "class.mod-sticky": "sticky()", "class.is-firstBodyRowVisible": "isFirstVisible()" }, classAttribute: "dataTable-head" }, providers: [
249
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.8", ngImport: i0, type: DataTableHeadComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
250
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "21.0.8", type: DataTableHeadComponent, isStandalone: true, selector: "thead[luDataTableHead]", inputs: { sticky: { classPropertyName: "sticky", publicName: "sticky", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "class.mod-sticky": "sticky()", "class.is-firstBodyRowVisible": "isFirstVisible()" }, classAttribute: "dataTable-head" }, providers: [
251
251
  {
252
252
  provide: LU_DATA_TABLE_HEAD_INSTANCE,
253
253
  useExisting: forwardRef(() => DataTableHeadComponent),
254
254
  },
255
255
  ], queries: [{ propertyName: "cols", predicate: DataTableRowCellHeaderComponent, descendants: true, isSignal: true }], ngImport: i0, template: '<ng-content />', isInline: true, styles: ["@layer components{.dataTableWrapper{--components-dataTable-shadow-firstColumnOpacity: 1;--components-dataTable-shadow-lastColumnOpacity: 1;--components-dataTable-shadow-firstRowOpacity: 1;--components-dataTable-shadow-lastRowOpacity: 1;--components-dataTable-header-shadow-opacity: 1;--components-dataTable-shadow-colsStart-opacity: 1;--components-dataTable-shadow-colsEnd-opacity: 1;--components-dataTable-shadow-lastRowInsetBlockEnd: 0}}@layer mods{.dataTableWrapper:has(.dataTable.mod-stickyHeader,.dataTable-head.mod-sticky) .dataTable-head{position:sticky;inset-block-start:-1px;z-index:2}.dataTableWrapper:has(.dataTable.mod-stickyHeader,.dataTable-head.mod-sticky) .dataTable-head:after{content:\"\";inset-inline:0;block-size:var(--pr-t-spacings-100);position:absolute;background-image:linear-gradient(color-mix(in var(--commons-colorSpace, srgb),var(--palettes-neutral-400) 24%,transparent),transparent);pointer-events:none;box-shadow:0 1px var(--commons-border-200) inset;opacity:var(--components-dataTable-header-shadow-opacity)}.dataTableWrapper:has(.dataTable.mod-stickyHeader,.dataTable-head.mod-sticky){--components-dataTable-shadow-firstRowOpacity: 0}.dataTableWrapper:has(.dataTableShadows),.dataTableWrapper:has(.dataTable.mod-columnsOverflow){display:flex}.dataTableWrapper:has(.dataTableShadows):before,.dataTableWrapper:has(.dataTableShadows):after,.dataTableWrapper:has(.dataTable.mod-columnsOverflow):before,.dataTableWrapper:has(.dataTable.mod-columnsOverflow):after{content:\"\";position:sticky;inline-size:var(--pr-t-spacings-100);background-image:linear-gradient(to right,color-mix(in var(--commons-colorSpace, srgb),var(--palettes-neutral-400) 24%,transparent),transparent);flex-shrink:0;margin-inline-start:calc(var(--pr-t-spacings-100) * -1);inset-block-start:0;pointer-events:none;z-index:3}.dataTableWrapper:has(.dataTableShadows):before,.dataTableWrapper:has(.dataTable.mod-columnsOverflow):before{inset-inline-start:0;opacity:var(--components-dataTable-shadow-firstColumnOpacity)}.dataTableWrapper:has(.dataTableShadows):after,.dataTableWrapper:has(.dataTable.mod-columnsOverflow):after{inset-inline-end:0;transform:scaleX(-1);opacity:var(--components-dataTable-shadow-lastColumnOpacity)}.dataTableWrapper:has(.dataTableShadows) .dataTableShadows,.dataTableWrapper:has(.dataTable.mod-rowsOverflow) .dataTableShadows{display:flex;flex-direction:column;flex-grow:1}.dataTableWrapper:has(.dataTableShadows) .dataTableShadows:before,.dataTableWrapper:has(.dataTableShadows) .dataTableShadows:after,.dataTableWrapper:has(.dataTable.mod-rowsOverflow) .dataTableShadows:before,.dataTableWrapper:has(.dataTable.mod-rowsOverflow) .dataTableShadows:after{content:\"\";position:sticky;display:block;block-size:var(--pr-t-spacings-100);background-image:linear-gradient(to bottom,color-mix(in var(--commons-colorSpace, srgb),var(--palettes-neutral-400) 24%,transparent),transparent);margin-block-start:calc(var(--pr-t-spacings-100) * -1);flex-shrink:0;pointer-events:none;z-index:2}.dataTableWrapper:has(.dataTableShadows) .dataTableShadows:before,.dataTableWrapper:has(.dataTable.mod-rowsOverflow) .dataTableShadows:before{inset-block-start:0;opacity:var(--components-dataTable-shadow-firstRowOpacity)}.dataTableWrapper:has(.dataTableShadows) .dataTableShadows:after,.dataTableWrapper:has(.dataTable.mod-rowsOverflow) .dataTableShadows:after{inset-block-end:var(--components-dataTable-shadow-lastRowInsetBlockEnd);transform:scaleY(-1);opacity:var(--components-dataTable-shadow-lastRowOpacity)}.dataTableWrapper:has(.dataTable.is-firstColumnVisible){--components-dataTable-shadow-firstColumnOpacity: 0}.dataTableWrapper:has(.dataTable.is-lastColumnVisible){--components-dataTable-shadow-lastColumnOpacity: 0}.dataTableWrapper:has(.dataTable.is-firstRowVisible){--components-dataTable-shadow-firstRowOpacity: 0}.dataTableWrapper:has(.dataTable.is-lastRowVisible){--components-dataTable-shadow-lastRowOpacity: 0}.dataTableWrapper:has(:is(.dataTable-head-row-cell,.dataTable-head-body-cell,.dataTable-foot-row-cell).mod-stickyColumn) :is(.dataTable-head-row-cell,.dataTable-body-row-cell,.dataTable-foot-row-cell):not(.mod-stickyColumn)~:is(.dataTable-head-row-cell,.dataTable-body-row-cell,.dataTable-foot-row-cell).mod-stickyColumn:after,.dataTableWrapper:has(:is(.dataTable-head-row-cell,.dataTable-head-body-cell,.dataTable-foot-row-cell).mod-stickyColumn) :is(.dataTable-head-row-cell,.dataTable-body-row-cell,.dataTable-foot-row-cell).mod-stickyColumn:has(~:is(.dataTable-body-row-cell,.dataTable-head-row-cell,.dataTable-foot-row-cell):not(.mod-stickyColumn)):not(:has(+:is(.dataTable-head-row-cell,.dataTable-body-row-cell,.dataTable-foot-row-cell).mod-stickyColumn)):after{content:\"\";position:absolute;inset-block:0;inset-inline-start:100%;inline-size:var(--pr-t-spacings-100);pointer-events:none;background-image:linear-gradient(to right,color-mix(in var(--commons-colorSpace, srgb),var(--palettes-neutral-400) 24%,transparent),transparent)}.dataTableWrapper:has(:is(.dataTable-head-row-cell,.dataTable-head-body-cell,.dataTable-foot-row-cell).mod-stickyColumn) :is(.dataTable-head-row-cell,.dataTable-body-row-cell,.dataTable-foot-row-cell):not(.mod-stickyColumn)~:is(.dataTable-head-row-cell,.dataTable-body-row-cell,.dataTable-foot-row-cell).mod-stickyColumn~:is(.dataTable-head-row-cell,.dataTable-body-row-cell,.dataTable-foot-row-cell).mod-stickyColumn:after{content:none}.dataTableWrapper:has(:is(.dataTable-head-row-cell,.dataTable-head-body-cell,.dataTable-foot-row-cell).mod-stickyColumn) .dataTable-head-row-cell.mod-stickyColumn:first-child{z-index:2}.dataTableWrapper:has(:is(.dataTable-head-row-cell,.dataTable-head-body-cell,.dataTable-foot-row-cell).mod-stickyColumn) :is(.dataTable-head-row-cell,.dataTable-body-row-cell,.dataTable-foot-row-cell).mod-stickyColumn{position:sticky}.dataTableWrapper:has(:is(.dataTable-head-row-cell,.dataTable-head-body-cell,.dataTable-foot-row-cell).mod-stickyColumn) :is(.dataTable-head-row-cell,.dataTable-body-row-cell,.dataTable-foot-row-cell).mod-stickyColumn:first-child{inset-inline-start:0}.dataTableWrapper:has(:is(.dataTable-head-row-cell,.dataTable-head-body-cell,.dataTable-foot-row-cell).mod-stickyColumn) :is(.dataTable-head-row-cell,.dataTable-body-row-cell,.dataTable-foot-row-cell).mod-stickyColumn:last-child{inset-inline-end:0;--components-dataTable-cell-shadow: 0 1px inset var(--commons-border-200), 1px 0 var(--palettes-neutral-0)}.dataTableWrapper:has(:is(.dataTable-head-row-cell,.dataTable-head-body-cell,.dataTable-foot-row-cell).mod-stickyColumn) :is(.dataTable-head-row-cell,.dataTable-body-row-cell,.dataTable-foot-row-cell).mod-stickyColumn:has(~:is(.dataTable-body-row-cell,.dataTable-head-row-cell,.dataTable-foot-row-cell):not(.mod-stickyColumn)){transform:translate(-1px);z-index:1}.dataTableWrapper:has(:is(.dataTable-head-row-cell,.dataTable-head-body-cell,.dataTable-foot-row-cell).mod-stickyColumn) :is(.dataTable-head-row-cell,.dataTable-body-row-cell,.dataTable-foot-row-cell).mod-stickyColumn:has(~:is(.dataTable-body-row-cell,.dataTable-head-row-cell,.dataTable-foot-row-cell):not(.mod-stickyColumn)):not(:has(+:is(.dataTable-head-row-cell,.dataTable-body-row-cell,.dataTable-foot-row-cell).mod-stickyColumn)):after{opacity:var(--components-dataTable-shadow-colsStart-opacity)}.dataTableWrapper:has(:is(.dataTable-head-row-cell,.dataTable-head-body-cell,.dataTable-foot-row-cell).mod-stickyColumn) :is(.dataTable-head-row-cell,.dataTable-body-row-cell,.dataTable-foot-row-cell):not(.mod-stickyColumn)~:is(.dataTable-head-row-cell,.dataTable-body-row-cell,.dataTable-foot-row-cell).mod-stickyColumn:after{inset-inline-start:auto;inset-inline-end:100%;transform:scaleX(-1);opacity:var(--components-dataTable-shadow-colsEnd-opacity)}.dataTableWrapper:has(:is(.dataTable-head-row-cell,.dataTable-head-body-cell,.dataTable-foot-row-cell).mod-stickyColumn):has(.dataTable.mod-cellBorder) :is(.dataTable-head-row-cell,.dataTable-body-row-cell,.dataTable-foot-row-cell).mod-stickyColumn:has(~:is(.dataTable-body-row-cell,.dataTable-head-row-cell,.dataTable-foot-row-cell):not(.mod-stickyColumn)):not(:has(+:is(.dataTable-body-row-cell,.dataTable-head-row-cell,.dataTable-foot-row-cell).mod-stickyColumn)):after{--components-dataTable-cell-shadow: 1px 0 var(--commons-border-200) inset}.dataTableWrapper:has(:is(.dataTable-head-row-cell,.dataTable-head-body-cell,.dataTable-foot-row-cell).mod-stickyColumn):has(.dataTable.mod-cellBorder) :is(.dataTable-head-row-cell,.dataTable-body-row-cell,.dataTable-foot-row-cell).mod-stickyColumn:last-child{--components-dataTable-cell-shadow: 0 1px inset var(--commons-border-200), 1px 0 inset var(--commons-border-200), 1px 0 var(--palettes-neutral-0)}.dataTableWrapper:has(.dataTable.is-firstColumnVisibleAfterColsStart){--components-dataTable-shadow-colsStart-opacity: 0}.dataTableWrapper:has(.dataTable.is-lastColumnVisibleBeforeColsEnd){--components-dataTable-shadow-colsEnd-opacity: 0}.dataTableWrapper:has(.dataTableWrapper-pagination:not(:empty)){--components-dataTable-shadow-lastRowInsetBlockEnd: var(--pr-t-spacings-600)}}.dataTableWrapper:has(.dataTable-head.is-firstBodyRowVisible){--components-dataTable-header-shadow-opacity: 0}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
256
256
  }
257
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: DataTableHeadComponent, decorators: [{
257
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.8", ngImport: i0, type: DataTableHeadComponent, decorators: [{
258
258
  type: Component,
259
259
  args: [{ selector: 'thead[luDataTableHead]', template: '<ng-content />', encapsulation: ViewEncapsulation.None, host: {
260
260
  class: 'dataTable-head',
@@ -302,7 +302,7 @@ const luDataTableTranslations = Translations;
302
302
 
303
303
  class DataTableRowComponent {
304
304
  constructor() {
305
- this.intl = getIntl(LU_DATA_TABLE_TRANSLATIONS);
305
+ this.intl = input(...intlInputOptions(LU_DATA_TABLE_TRANSLATIONS), ...(ngDevMode ? [{ debugName: "intl" }] : []));
306
306
  this.bodyRef = inject(LU_DATA_TABLE_BODY_INSTANCE, { optional: true });
307
307
  this.headRef = inject(LU_DATA_TABLE_HEAD_INSTANCE, { optional: true });
308
308
  this.footRef = inject(LU_DATA_TABLE_FOOT_INSTANCE, { optional: true });
@@ -313,15 +313,15 @@ class DataTableRowComponent {
313
313
  this.selectedLabel = input(null, ...(ngDevMode ? [{ debugName: "selectedLabel" }] : []));
314
314
  this.disabled = input(false, { ...(ngDevMode ? { debugName: "disabled" } : {}), transform: booleanAttribute });
315
315
  }
316
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: DataTableRowComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
317
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.0.6", type: DataTableRowComponent, isStandalone: true, selector: "tr[luDataTableRow]", inputs: { selected: { classPropertyName: "selected", publicName: "selected", isSignal: true, isRequired: false, transformFunction: null }, selectedLabel: { classPropertyName: "selectedLabel", publicName: "selectedLabel", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { selected: "selectedChange" }, host: { properties: { "class.dataTable-body-row": "bodyRef !== null", "class.dataTable-head-row": "headRef !== null", "class.dataTable-foot-row": "footRef !== null", "class.mod-selectable": "tableRef.selectable() ?? false", "class.mod-draggable": "tableRef.drag() ?? false" } }, providers: [
316
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.8", ngImport: i0, type: DataTableRowComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
317
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.0.8", type: DataTableRowComponent, isStandalone: true, selector: "tr[luDataTableRow]", inputs: { intl: { classPropertyName: "intl", publicName: "intl", isSignal: true, isRequired: false, transformFunction: null }, selected: { classPropertyName: "selected", publicName: "selected", isSignal: true, isRequired: false, transformFunction: null }, selectedLabel: { classPropertyName: "selectedLabel", publicName: "selectedLabel", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { selected: "selectedChange" }, host: { properties: { "class.dataTable-body-row": "bodyRef !== null", "class.dataTable-head-row": "headRef !== null", "class.dataTable-foot-row": "footRef !== null", "class.mod-selectable": "tableRef.selectable() ?? false", "class.mod-draggable": "tableRef.drag() ?? false" } }, providers: [
318
318
  {
319
319
  provide: LU_DATA_TABLE_ROW_INSTANCE,
320
320
  useExisting: forwardRef(() => DataTableRowComponent),
321
321
  },
322
- ], queries: [{ propertyName: "cells", predicate: LU_DATA_TABLE_CELL_INSTANCE, isSignal: true }], ngImport: i0, template: "@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", dependencies: [{ kind: "component", type: CheckboxInputComponent, selector: "lu-checkbox-input", inputs: ["checklist", "mixed"] }, { kind: "component", type: FormFieldComponent, selector: "lu-form-field", inputs: ["label", "hiddenLabel", "rolePresentationLabel", "inline", "statusControl", "tooltip", "tag", "AI", "iconAItooltip", "iconAIalt", "width", "invalid", "inlineMessage", "errorInlineMessage", "inlineMessageState", "size", "extraDescribedBy", "layout", "counter"], outputs: ["rolePresentationLabelChange", "layoutChange"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: IconComponent, selector: "lu-icon", inputs: ["icon", "alt", "size", "color", "AI"] }, { kind: "directive", type: CdkDragHandle, selector: "[cdkDragHandle]", inputs: ["cdkDragHandleDisabled"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
322
+ ], queries: [{ propertyName: "cells", predicate: LU_DATA_TABLE_CELL_INSTANCE, isSignal: true }], ngImport: i0, template: "@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", dependencies: [{ kind: "component", type: CheckboxInputComponent, selector: "lu-checkbox-input", inputs: ["checklist", "mixed"] }, { kind: "component", type: FormFieldComponent, selector: "lu-form-field", inputs: ["intl", "label", "hiddenLabel", "rolePresentationLabel", "inline", "statusControl", "tooltip", "tag", "AI", "iconAItooltip", "iconAIalt", "width", "invalid", "inlineMessage", "errorInlineMessage", "inlineMessageState", "size", "extraDescribedBy", "layout", "counter"], outputs: ["rolePresentationLabelChange", "layoutChange"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: IconComponent, selector: "pr-icon,lu-icon", inputs: ["icon", "alt", "size", "color", "AI"] }, { kind: "directive", type: CdkDragHandle, selector: "[cdkDragHandle]", inputs: ["cdkDragHandleDisabled"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
323
323
  }
324
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: DataTableRowComponent, decorators: [{
324
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.8", ngImport: i0, type: DataTableRowComponent, decorators: [{
325
325
  type: Component,
326
326
  args: [{ selector: 'tr[luDataTableRow]', encapsulation: ViewEncapsulation.None, host: {
327
327
  '[class.dataTable-body-row]': 'bodyRef !== null',
@@ -334,8 +334,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.6", ngImpor
334
334
  provide: LU_DATA_TABLE_ROW_INSTANCE,
335
335
  useExisting: forwardRef(() => DataTableRowComponent),
336
336
  },
337
- ], changeDetection: ChangeDetectionStrategy.OnPush, template: "@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" }]
338
- }], propDecorators: { cells: [{ type: i0.ContentChildren, args: [i0.forwardRef(() => LU_DATA_TABLE_CELL_INSTANCE), { isSignal: true }] }], selected: [{ type: i0.Input, args: [{ isSignal: true, alias: "selected", required: false }] }, { type: i0.Output, args: ["selectedChange"] }], selectedLabel: [{ type: i0.Input, args: [{ isSignal: true, alias: "selectedLabel", required: false }] }], disabled: [{ type: i0.Input, args: [{ isSignal: true, alias: "disabled", required: false }] }] } });
337
+ ], changeDetection: ChangeDetectionStrategy.OnPush, template: "@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" }]
338
+ }], propDecorators: { intl: [{ type: i0.Input, args: [{ isSignal: true, alias: "intl", required: false }] }], cells: [{ type: i0.ContentChildren, args: [i0.forwardRef(() => LU_DATA_TABLE_CELL_INSTANCE), { isSignal: true }] }], selected: [{ type: i0.Input, args: [{ isSignal: true, alias: "selected", required: false }] }, { type: i0.Output, args: ["selectedChange"] }], selectedLabel: [{ type: i0.Input, args: [{ isSignal: true, alias: "selectedLabel", required: false }] }], disabled: [{ type: i0.Input, args: [{ isSignal: true, alias: "disabled", required: false }] }] } });
339
339
 
340
340
  class DataTableComponent {
341
341
  #elementRef;
@@ -407,15 +407,15 @@ class DataTableComponent {
407
407
  this.scroll();
408
408
  }).observe(this.tableRef().nativeElement);
409
409
  }
410
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: DataTableComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
411
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "21.0.6", type: DataTableComponent, isStandalone: true, selector: "lu-data-table", inputs: { hover: { classPropertyName: "hover", publicName: "hover", isSignal: true, isRequired: false, transformFunction: null }, selectable: { classPropertyName: "selectable", publicName: "selectable", isSignal: true, isRequired: false, transformFunction: null }, layoutFixed: { classPropertyName: "layoutFixed", publicName: "layoutFixed", isSignal: true, isRequired: false, transformFunction: null }, cellBorder: { classPropertyName: "cellBorder", publicName: "cellBorder", isSignal: true, isRequired: false, transformFunction: null }, nested: { classPropertyName: "nested", publicName: "nested", isSignal: true, isRequired: false, transformFunction: null }, drag: { classPropertyName: "drag", publicName: "drag", isSignal: true, isRequired: false, transformFunction: null }, noOverflow: { classPropertyName: "noOverflow", publicName: "noOverflow", isSignal: true, isRequired: false, transformFunction: null }, responsive: { classPropertyName: "responsive", publicName: "responsive", isSignal: true, isRequired: false, transformFunction: null }, verticalAlign: { classPropertyName: "verticalAlign", publicName: "verticalAlign", isSignal: true, isRequired: false, transformFunction: null }, stickyColsStart: { classPropertyName: "stickyColsStart", publicName: "stickyColsStart", isSignal: true, isRequired: false, transformFunction: null }, stickyColsEnd: { classPropertyName: "stickyColsEnd", publicName: "stickyColsEnd", isSignal: true, isRequired: false, transformFunction: null } }, host: { listeners: { "scroll": "scroll()" }, properties: { "class.mod-nested": "this.nested()", "class.mod-noOverflow": "this.noOverflow()" }, classAttribute: "dataTableWrapper" }, providers: [
410
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.8", ngImport: i0, type: DataTableComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
411
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "21.0.8", type: DataTableComponent, isStandalone: true, selector: "lu-data-table", inputs: { hover: { classPropertyName: "hover", publicName: "hover", isSignal: true, isRequired: false, transformFunction: null }, selectable: { classPropertyName: "selectable", publicName: "selectable", isSignal: true, isRequired: false, transformFunction: null }, layoutFixed: { classPropertyName: "layoutFixed", publicName: "layoutFixed", isSignal: true, isRequired: false, transformFunction: null }, cellBorder: { classPropertyName: "cellBorder", publicName: "cellBorder", isSignal: true, isRequired: false, transformFunction: null }, nested: { classPropertyName: "nested", publicName: "nested", isSignal: true, isRequired: false, transformFunction: null }, drag: { classPropertyName: "drag", publicName: "drag", isSignal: true, isRequired: false, transformFunction: null }, noOverflow: { classPropertyName: "noOverflow", publicName: "noOverflow", isSignal: true, isRequired: false, transformFunction: null }, responsive: { classPropertyName: "responsive", publicName: "responsive", isSignal: true, isRequired: false, transformFunction: null }, verticalAlign: { classPropertyName: "verticalAlign", publicName: "verticalAlign", isSignal: true, isRequired: false, transformFunction: null }, stickyColsStart: { classPropertyName: "stickyColsStart", publicName: "stickyColsStart", isSignal: true, isRequired: false, transformFunction: null }, stickyColsEnd: { classPropertyName: "stickyColsEnd", publicName: "stickyColsEnd", isSignal: true, isRequired: false, transformFunction: null } }, host: { listeners: { "scroll": "scroll()" }, properties: { "class.mod-nested": "this.nested()", "class.mod-noOverflow": "this.noOverflow()" }, classAttribute: "dataTableWrapper" }, providers: [
412
412
  {
413
413
  provide: LU_DATA_TABLE_INSTANCE,
414
414
  useExisting: forwardRef(() => DataTableComponent),
415
415
  },
416
416
  ], queries: [{ propertyName: "rows", predicate: DataTableRowComponent, descendants: true, isSignal: true }, { propertyName: "header", first: true, predicate: DataTableHeadComponent, descendants: true, isSignal: true }], viewQueries: [{ propertyName: "tableRef", first: true, predicate: ["tableRef"], descendants: true, isSignal: true }], ngImport: i0, template: "<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", styles: ["@layer components{.dataTableWrapper{--components-dataTable-cell-padding-inline: var(--pr-t-spacings-150);--components-dataTable-cell-paddingInlineStart: var(--components-dataTable-cell-padding-inline);--components-dataTable-cell-padding-block: var(--pr-t-spacings-100);--components-dataTable-cell-padding: var(--components-dataTable-cell-padding-block) var(--components-dataTable-cell-padding-inline);--components-dataTable-treeLevel: 1;--components-dataTable-cell-verticalAlign: middle;--components-dataTable-cell-shadow: 0 1px inset var(--commons-border-200);--components-dataTable-cell-background: var(--pr-t-elevation-surface-raised);--components-dataTable-cell-textAlign: left;--components-dataTable-tableLayout: auto;--components-dataTable-cellFirst-width: auto;--components-dataTable-row-display: table-row;--components-dataTable-expand-rotation: 180deg;--components-dataTable-borderRadius: var(--pr-t-border-radius-structure);--components-dataTable-minInlineSize: none}}@layer mods{.dataTableWrapper.mod-nested{--components-dataTable-borderRadius: var(--pr-t-border-radius-default)}.dataTableWrapper.mod-noOverflow{--components-dataTable-minInlineSize: fit-content}}@layer components{.dataTable{display:table;text-align:start;inline-size:calc(100% + 1px);block-size:calc(100% + 1px);border-spacing:0;margin-inline-start:-1px;margin-block-start:-1px;table-layout:var(--components-dataTable-tableLayout)}.dataTableWrapper{border-radius:var(--components-dataTable-borderRadius);border:1px solid var(--commons-border-200);overflow:auto;contain:paint;background-color:var(--components-dataTable-cell-background);display:block;min-inline-size:var(--components-dataTable-minInlineSize)}.dataTableWrapper:focus-visible{outline:2px solid var(--palettes-product-700);outline-offset:2px}.dataTableWrapper-pagination{border-block-start:1px solid var(--commons-border-200);background-color:var(--components-dataTable-cell-background);display:flex;justify-content:flex-end;position:sticky;inset-block-end:0;z-index:4}.dataTableWrapper-pagination>*{position:sticky;inset-inline-end:0}.dataTableWrapper-pagination:empty{display:none}.dataTable-head-row-cell{color:var(--pr-t-color-text-subtle);padding:var(--components-dataTable-cell-padding);display:table-cell;font-weight:var(--pr-t-font-fontWeight-regular)}.dataTable-head-row-cell .checkboxField{margin-block-end:.125rem}.dataTable-head{display:table-header-group;vertical-align:bottom}.dataTable-body{display:table-row-group}.dataTable-foot{display:table-footer-group}.dataTable-head-row,.dataTable-body-row,.dataTable-foot-row{display:var(--components-dataTable-row-display)}.dataTable-head-row-cell,.dataTable-body-row-cell,.dataTable-foot-row-cell{display:table-cell;box-shadow:var(--components-dataTable-cell-shadow);background-color:var(--components-dataTable-cell-background);text-align:var(--components-dataTable-cell-textAlign);transition-property:background-color;transition-duration:var(--commons-animations-durations-fast);font-weight:var(--pr-t-font-fontWeight-regular)}.dataTable-head-row-cell:first-child,.dataTable-body-row-cell:first-child,.dataTable-foot-row-cell:first-child{inline-size:var(--components-dataTable-cellFirst-width)}.dataTable-head-row-cell:first-child .checkboxField,.dataTable-body-row-cell:first-child .checkboxField,.dataTable-foot-row-cell:first-child .checkboxField{--component-checkboxField-top: 0}.dataTable-body-row-cell,.dataTable-foot-row-cell{padding:var(--components-dataTable-cell-padding);padding-inline-start:var(--components-dataTable-cell-paddingInlineStart);vertical-align:middle}.dataTable-head-row:first-child .dataTable-head-row-cell{--components-dataTable-cell-shadow: none}.dataTable-body-row-cell{vertical-align:var(--components-dataTable-cell-verticalAlign)}.dataTable-foot-row-cell{font-weight:var(--pr-t-font-fontWeight-semibold)}.dataTable-body-row-cell-expand{display:flex;gap:var(--pr-t-spacings-100);align-items:flex-start;font-weight:var(--pr-t-font-fontWeight-semibold)}.dataTable-body-row-cell-expand-button.button{vertical-align:top;margin-left:calc(var(--pr-t-spacings-25) * -1)}.dataTable-body-row-cell-expand-button.button .lucca-icon{transform:rotate(var(--components-dataTable-expand-rotation));transition-property:transform;transition-duration:var(--commons-animations-durations-fast)}.dataTable-body-row-cell-drag.button{--icon-size: 1.25rem;--components-button-font: var(--pr-t-font-body-S);--components-button-paddingBlock: var(--pr-t-spacings-75);--components-button-paddingInline: var(--pr-t-spacings-100);--components-button-gap: var(--pr-t-spacings-75)}.dataTable-body-row-cell-drag.button .numericBadge{--components-numericBadge-size: 1.25rem;--components-numericBadge-borderRadius: var(--pr-t-border-radius-small);--components-numericBadge-font: var(--pr-t-font-body-XS);--components-numericBadge-fontSize: var(--pr-t-font-body-XS-fontSize);--components-numericBadge-lineHeight: var(--pr-t-font-body-XS-lineHeight)}.dataTable-body-row-cell-drag.button{--components-button-font-size: var(--pr-t-font-body-S-fontSize);--components-button-line-height: var(--pr-t-font-body-S-lineHeight);--components-button-padding: var(--pr-t-spacings-100);--components-button-backgroundColor: transparent;--components-button-color: var(--palettes-700, var(--pr-t-color-text-subtle));--components-button-boxShadow: none}.dataTable-body-row-cell-drag.button:hover,.dataTable-body-row-cell-drag.button:focus-visible{--components-button-color: var(--palettes-700, var(--pr-t-color-text-subtle));--components-button-backgroundColor: var(--palettes-50, var(--palettes-neutral-50))}.dataTable-body-row-cell-drag.button:active{--components-button-backgroundColor: var(--palettes-100, var(--palettes-neutral-100))}.dataTable-body-row-cell-drag.button:disabled{--components-button-backgroundColor: transparent;--components-button-color: var(--pr-t-color-text-disabled)}.dataTable-body-row-cell-drag.button{--components-button-padding: var(--pr-t-spacings-50);--components-button-color: var(--palettes-neutral-700);cursor:move;vertical-align:top}.dataTable .statusBadge,.dataTable .tag,.dataTable .avatar{vertical-align:top}.dataTable .statusBadge,.dataTable .tag{margin-block-start:var(--pr-t-spacings-25)}.dataTable .avatarWrapper{display:inline-flex}}@layer mods{.dataTable.mod-cellBorder{--components-dataTable-cell-shadow: 0 1px inset var(--commons-border-200), 1px 0 inset var(--commons-border-200)}.dataTable.mod-cellBorder .dataTable-head-row:first-child .dataTable-head-row-cell{--components-dataTable-cell-shadow: 1px 0 inset var(--commons-border-200)}.dataTable.mod-alignTop,.dataTable.mod-verticalAlignTop{--components-dataTable-cell-verticalAlign: top}.dataTable.mod-verticalAlignBottom{--components-dataTable-cell-verticalAlign: bottom}.dataTable.mod-verticalAlignMiddle{@includeverticalAlignMiddle;}.dataTable.mod-layoutFixed{--components-dataTable-tableLayout: fixed}@media(min-width:20em){.dataTable[class*=mod-layoutFixedAtMediaMin].mod-layoutFixedAtMediaMinXXXS{--components-dataTable-tableLayout: fixed}}@media(min-width:30em){.dataTable[class*=mod-layoutFixedAtMediaMin].mod-layoutFixedAtMediaMinXXS{--components-dataTable-tableLayout: fixed}}@media(min-width:40em){.dataTable[class*=mod-layoutFixedAtMediaMin].mod-layoutFixedAtMediaMinXS{--components-dataTable-tableLayout: fixed}}@media(min-width:50em){.dataTable[class*=mod-layoutFixedAtMediaMin].mod-layoutFixedAtMediaMinS{--components-dataTable-tableLayout: fixed}}@media(min-width:64em){.dataTable[class*=mod-layoutFixedAtMediaMin].mod-layoutFixedAtMediaMinM{--components-dataTable-tableLayout: fixed}}@media(min-width:80em){.dataTable[class*=mod-layoutFixedAtMediaMin].mod-layoutFixedAtMediaMinL{--components-dataTable-tableLayout: fixed}}@media(min-width:85.375em){.dataTable[class*=mod-layoutFixedAtMediaMin].mod-layoutFixedAtMediaMinXL{--components-dataTable-tableLayout: fixed}}@media(min-width:100em){.dataTable[class*=mod-layoutFixedAtMediaMin].mod-layoutFixedAtMediaMinXXL{--components-dataTable-tableLayout: fixed}}@media(min-width:120em){.dataTable[class*=mod-layoutFixedAtMediaMin].mod-layoutFixedAtMediaMinXXXL{--components-dataTable-tableLayout: fixed}}.dataTable[class*=mod-layoutFixed].mod-layoutFixed .dataTable-head-row-cell,.dataTable[class*=mod-layoutFixed].mod-layoutFixed .dataTable-body-row-cell,.dataTable[class*=mod-layoutFixed].mod-layoutFixed .dataTable-foot-row-cell{min-inline-size:var(--dataTable-layoutFixed-width, auto);inline-size:var(--dataTable-layoutFixed-width, auto)}@media(min-width:20em){.dataTable[class*=mod-layoutFixed].mod-layoutFixedAtMediaMinXXXS .dataTable-head-row-cell,.dataTable[class*=mod-layoutFixed].mod-layoutFixedAtMediaMinXXXS .dataTable-body-row-cell,.dataTable[class*=mod-layoutFixed].mod-layoutFixedAtMediaMinXXXS .dataTable-foot-row-cell{min-inline-size:var(--dataTable-layoutFixed-width, auto);inline-size:var(--dataTable-layoutFixed-width, auto)}}@media(min-width:30em){.dataTable[class*=mod-layoutFixed].mod-layoutFixedAtMediaMinXXS .dataTable-head-row-cell,.dataTable[class*=mod-layoutFixed].mod-layoutFixedAtMediaMinXXS .dataTable-body-row-cell,.dataTable[class*=mod-layoutFixed].mod-layoutFixedAtMediaMinXXS .dataTable-foot-row-cell{min-inline-size:var(--dataTable-layoutFixed-width, auto);inline-size:var(--dataTable-layoutFixed-width, auto)}}@media(min-width:40em){.dataTable[class*=mod-layoutFixed].mod-layoutFixedAtMediaMinXS .dataTable-head-row-cell,.dataTable[class*=mod-layoutFixed].mod-layoutFixedAtMediaMinXS .dataTable-body-row-cell,.dataTable[class*=mod-layoutFixed].mod-layoutFixedAtMediaMinXS .dataTable-foot-row-cell{min-inline-size:var(--dataTable-layoutFixed-width, auto);inline-size:var(--dataTable-layoutFixed-width, auto)}}@media(min-width:50em){.dataTable[class*=mod-layoutFixed].mod-layoutFixedAtMediaMinS .dataTable-head-row-cell,.dataTable[class*=mod-layoutFixed].mod-layoutFixedAtMediaMinS .dataTable-body-row-cell,.dataTable[class*=mod-layoutFixed].mod-layoutFixedAtMediaMinS .dataTable-foot-row-cell{min-inline-size:var(--dataTable-layoutFixed-width, auto);inline-size:var(--dataTable-layoutFixed-width, auto)}}@media(min-width:64em){.dataTable[class*=mod-layoutFixed].mod-layoutFixedAtMediaMinM .dataTable-head-row-cell,.dataTable[class*=mod-layoutFixed].mod-layoutFixedAtMediaMinM .dataTable-body-row-cell,.dataTable[class*=mod-layoutFixed].mod-layoutFixedAtMediaMinM .dataTable-foot-row-cell{min-inline-size:var(--dataTable-layoutFixed-width, auto);inline-size:var(--dataTable-layoutFixed-width, auto)}}@media(min-width:80em){.dataTable[class*=mod-layoutFixed].mod-layoutFixedAtMediaMinL .dataTable-head-row-cell,.dataTable[class*=mod-layoutFixed].mod-layoutFixedAtMediaMinL .dataTable-body-row-cell,.dataTable[class*=mod-layoutFixed].mod-layoutFixedAtMediaMinL .dataTable-foot-row-cell{min-inline-size:var(--dataTable-layoutFixed-width, auto);inline-size:var(--dataTable-layoutFixed-width, auto)}}@media(min-width:85.375em){.dataTable[class*=mod-layoutFixed].mod-layoutFixedAtMediaMinXL .dataTable-head-row-cell,.dataTable[class*=mod-layoutFixed].mod-layoutFixedAtMediaMinXL .dataTable-body-row-cell,.dataTable[class*=mod-layoutFixed].mod-layoutFixedAtMediaMinXL .dataTable-foot-row-cell{min-inline-size:var(--dataTable-layoutFixed-width, auto);inline-size:var(--dataTable-layoutFixed-width, auto)}}@media(min-width:100em){.dataTable[class*=mod-layoutFixed].mod-layoutFixedAtMediaMinXXL .dataTable-head-row-cell,.dataTable[class*=mod-layoutFixed].mod-layoutFixedAtMediaMinXXL .dataTable-body-row-cell,.dataTable[class*=mod-layoutFixed].mod-layoutFixedAtMediaMinXXL .dataTable-foot-row-cell{min-inline-size:var(--dataTable-layoutFixed-width, auto);inline-size:var(--dataTable-layoutFixed-width, auto)}}@media(min-width:120em){.dataTable[class*=mod-layoutFixed].mod-layoutFixedAtMediaMinXXXL .dataTable-head-row-cell,.dataTable[class*=mod-layoutFixed].mod-layoutFixedAtMediaMinXXXL .dataTable-body-row-cell,.dataTable[class*=mod-layoutFixed].mod-layoutFixedAtMediaMinXXXL .dataTable-foot-row-cell{min-inline-size:var(--dataTable-layoutFixed-width, auto);inline-size:var(--dataTable-layoutFixed-width, auto)}}.dataTable.mod-hover :is(.mod-selectable,.dataTable-body-row:not(.mod-group)):hover{--components-dataTable-cell-background: var(--palettes-neutral-25)}.dataTable.mod-hover :is(.mod-selectable,.dataTable-body-row:not(.mod-group)).mod-selectable:has(input:checked):hover{--components-dataTable-cell-background: var(--palettes-product-100)}}@layer mods{:is(.dataTable-head-row,.dataTable-body-row,.dataTable-foot-row).mod-group{--components-dataTable-tree-extraPadding: calc(1.5rem + var(--pr-t-spacings-100))}:is(.dataTable-head-row,.dataTable-body-row,.dataTable-foot-row).mod-group:has(.dataTable-body-row-cell-expand-button.button){--components-dataTable-tree-extraPadding: 0rem}:is(.dataTable-head-row,.dataTable-body-row,.dataTable-foot-row).mod-group .dataTable-body-row-cell-expand-button.button{--icon-size: 1.25rem;--components-button-font: var(--pr-t-font-body-S);--components-button-paddingBlock: var(--pr-t-spacings-75);--components-button-paddingInline: var(--pr-t-spacings-100);--components-button-gap: var(--pr-t-spacings-75)}:is(.dataTable-head-row,.dataTable-body-row,.dataTable-foot-row).mod-group .dataTable-body-row-cell-expand-button.button .numericBadge{--components-numericBadge-size: 1.25rem;--components-numericBadge-borderRadius: var(--pr-t-border-radius-small);--components-numericBadge-font: var(--pr-t-font-body-XS);--components-numericBadge-fontSize: var(--pr-t-font-body-XS-fontSize);--components-numericBadge-lineHeight: var(--pr-t-font-body-XS-lineHeight)}:is(.dataTable-head-row,.dataTable-body-row,.dataTable-foot-row).mod-group .dataTable-body-row-cell-expand-button.button{--components-button-font-size: var(--pr-t-font-body-S-fontSize);--components-button-line-height: var(--pr-t-font-body-S-lineHeight);--components-button-padding: var(--pr-t-spacings-75);--components-button-backgroundColor: transparent;--components-button-color: var(--palettes-700, var(--pr-t-color-text-subtle));--components-button-boxShadow: none}:is(.dataTable-head-row,.dataTable-body-row,.dataTable-foot-row).mod-group .dataTable-body-row-cell-expand-button.button:hover,:is(.dataTable-head-row,.dataTable-body-row,.dataTable-foot-row).mod-group .dataTable-body-row-cell-expand-button.button:focus-visible{--components-button-color: var(--palettes-700, var(--pr-t-color-text-subtle));--components-button-backgroundColor: var(--palettes-50, var(--palettes-neutral-50))}:is(.dataTable-head-row,.dataTable-body-row,.dataTable-foot-row).mod-group .dataTable-body-row-cell-expand-button.button:active{--components-button-backgroundColor: var(--palettes-100, var(--palettes-neutral-100))}:is(.dataTable-head-row,.dataTable-body-row,.dataTable-foot-row).mod-group .dataTable-body-row-cell-expand-button.button:disabled{--components-button-backgroundColor: transparent;--components-button-color: var(--pr-t-color-text-disabled)}:is(.dataTable-head-row,.dataTable-body-row,.dataTable-foot-row).mod-group .dataTable-body-row-cell-expand-button.button{--components-button-padding: var(--pr-t-spacings-25);--components-button-color: var(--palettes-neutral-800)}:is(.dataTable-head-row,.dataTable-body-row,.dataTable-foot-row).mod-group{font:var(--pr-t-font-heading-4)}:is(.dataTable-head-row,.dataTable-body-row,.dataTable-foot-row).mod-group,:is(.dataTable-head-row,.dataTable-body-row,.dataTable-foot-row).mod-group:hover{--components-dataTable-cell-background: var(--palettes-neutral-50)}:is(.dataTable-head-row,.dataTable-body-row,.dataTable-foot-row):has([selectable]),:is(.dataTable-head-row,.dataTable-body-row,.dataTable-foot-row).mod-selectable{--components-dataTable-cellFirst-width: 2.625rem}:is(.dataTable-head-row,.dataTable-body-row,.dataTable-foot-row):has([selectable]) .dataTable-head-row-cell:first-child,:is(.dataTable-head-row,.dataTable-body-row,.dataTable-foot-row):has([selectable]) .dataTable-body-row-cell:first-child,:is(.dataTable-head-row,.dataTable-body-row,.dataTable-foot-row):has([selectable]) .dataTable-foot-row-cell:first-child,:is(.dataTable-head-row,.dataTable-body-row,.dataTable-foot-row).mod-selectable .dataTable-head-row-cell:first-child,:is(.dataTable-head-row,.dataTable-body-row,.dataTable-foot-row).mod-selectable .dataTable-body-row-cell:first-child,:is(.dataTable-head-row,.dataTable-body-row,.dataTable-foot-row).mod-selectable .dataTable-foot-row-cell:first-child{inline-size:var(--components-dataTable-cellFirst-width);max-inline-size:var(--components-dataTable-cellFirst-width)}:is(.dataTable-head-row,.dataTable-body-row,.dataTable-foot-row).mod-draggable .dataTable-head-row-cell:first-child,:is(.dataTable-head-row,.dataTable-body-row,.dataTable-foot-row).mod-draggable .dataTable-body-row-cell:first-child,:is(.dataTable-head-row,.dataTable-body-row,.dataTable-foot-row).mod-draggable .dataTable-foot-row-cell:first-child{--components-dataTable-cellFirst-width: 2.5rem;padding-inline:var(--pr-t-spacings-75)}:is(.dataTable-head-row,.dataTable-body-row,.dataTable-foot-row).mod-draggable:has([selectable]) .dataTable-head-row-cell:nth-child(2),:is(.dataTable-head-row,.dataTable-body-row,.dataTable-foot-row).mod-draggable:has([selectable]) .dataTable-body-row-cell:nth-child(2),:is(.dataTable-head-row,.dataTable-body-row,.dataTable-foot-row).mod-draggable:has([selectable]) .dataTable-foot-row-cell:nth-child(2),:is(.dataTable-head-row,.dataTable-body-row,.dataTable-foot-row).mod-draggable.mod-selectable .dataTable-head-row-cell:nth-child(2),:is(.dataTable-head-row,.dataTable-body-row,.dataTable-foot-row).mod-draggable.mod-selectable .dataTable-body-row-cell:nth-child(2),:is(.dataTable-head-row,.dataTable-body-row,.dataTable-foot-row).mod-draggable.mod-selectable .dataTable-foot-row-cell:nth-child(2){--components-dataTable-cellFirst-width: 2.625rem;inline-size:var(--components-dataTable-cellFirst-width);max-inline-size:var(--components-dataTable-cellFirst-width)}:is(.dataTable-body-row,.dataTable-foot-row):has([selectable]):has(input:checked),:is(.dataTable-body-row,.dataTable-foot-row).mod-selectable:has(input:checked){--components-dataTable-cell-background: var(--palettes-product-50)}:is(.dataTable-head-row-cell,.dataTable-body-row-cell,.dataTable-foot-row-cell).mod-actions{padding-block:0;padding-inline:var(--pr-t-spacings-50);text-align:end;white-space:nowrap}:is(.dataTable-head-row-cell,.dataTable-body-row-cell,.dataTable-foot-row-cell).mod-actions .button{--icon-size: 1.25rem;--components-button-font: var(--pr-t-font-body-S);--components-button-paddingBlock: var(--pr-t-spacings-75);--components-button-paddingInline: var(--pr-t-spacings-100);--components-button-gap: var(--pr-t-spacings-75)}:is(.dataTable-head-row-cell,.dataTable-body-row-cell,.dataTable-foot-row-cell).mod-actions .button .numericBadge{--components-numericBadge-size: 1.25rem;--components-numericBadge-borderRadius: var(--pr-t-border-radius-small);--components-numericBadge-font: var(--pr-t-font-body-XS);--components-numericBadge-fontSize: var(--pr-t-font-body-XS-fontSize);--components-numericBadge-lineHeight: var(--pr-t-font-body-XS-lineHeight)}:is(.dataTable-head-row-cell,.dataTable-body-row-cell,.dataTable-foot-row-cell).mod-actions .button{--components-button-font-size: var(--pr-t-font-body-S-fontSize);--components-button-line-height: var(--pr-t-font-body-S-lineHeight);--components-button-padding: var(--pr-t-spacings-100);--components-button-padding: var(--pr-t-spacings-75);--components-button-backgroundColor: transparent;--components-button-color: var(--palettes-700, var(--pr-t-color-text-subtle));--components-button-boxShadow: none}:is(.dataTable-head-row-cell,.dataTable-body-row-cell,.dataTable-foot-row-cell).mod-actions .button:hover,:is(.dataTable-head-row-cell,.dataTable-body-row-cell,.dataTable-foot-row-cell).mod-actions .button:focus-visible{--components-button-color: var(--palettes-700, var(--pr-t-color-text-subtle));--components-button-backgroundColor: var(--palettes-50, var(--palettes-neutral-50))}:is(.dataTable-head-row-cell,.dataTable-body-row-cell,.dataTable-foot-row-cell).mod-actions .button:active{--components-button-backgroundColor: var(--palettes-100, var(--palettes-neutral-100))}:is(.dataTable-head-row-cell,.dataTable-body-row-cell,.dataTable-foot-row-cell).mod-actions .button:disabled{--components-button-backgroundColor: transparent;--components-button-color: var(--pr-t-color-text-disabled)}:is(.dataTable-head-row-cell,.dataTable-body-row-cell,.dataTable-foot-row-cell).mod-actions .button{transition-property:box-shadow,color}:is(.dataTable-head-row-cell,.dataTable-body-row-cell,.dataTable-foot-row-cell).mod-actions:is(.dataTable-head-row-cell) .button{position:relative;inset-block-end:var(--pr-t-spacings-50)}:is(.dataTable-head-row-cell,.dataTable-body-row-cell,.dataTable-foot-row-cell).mod-alignCenter{--components-dataTable-cell-textAlign: center}:is(.dataTable-head-row-cell,.dataTable-body-row-cell,.dataTable-foot-row-cell).mod-alignRight,:is(.dataTable-head-row-cell,.dataTable-body-row-cell,.dataTable-foot-row-cell).mod-alignEnd{--components-dataTable-cell-textAlign: end}:is(.dataTable-head-row-cell,.dataTable-body-row-cell,.dataTable-foot-row-cell).mod-alignStart{--components-dataTable-cell-textAlign: start}:is(.dataTable-head-row-cell,.dataTable-body-row-cell,.dataTable-foot-row-cell).mod-editable{--components-dataTable-cell-padding: var(--pr-t-spacings-100);--components-dataTable-cell-paddingInlineStart: var(--pr-t-spacings-50)}:is(.dataTable-head-row-cell,.dataTable-body-row-cell,.dataTable-foot-row-cell).mod-tree{--components-dataTable-tree-extraPadding: calc(1.5rem + var(--pr-t-spacings-100))}:is(.dataTable-head-row-cell,.dataTable-body-row-cell,.dataTable-foot-row-cell).mod-tree:has(.dataTable-body-row-cell-expand-button.button){--components-dataTable-tree-extraPadding: 0rem}:is(.dataTable-head-row-cell,.dataTable-body-row-cell,.dataTable-foot-row-cell).mod-tree .dataTable-body-row-cell-expand-button.button{--icon-size: 1.25rem;--components-button-font: var(--pr-t-font-body-S);--components-button-paddingBlock: var(--pr-t-spacings-75);--components-button-paddingInline: var(--pr-t-spacings-100);--components-button-gap: var(--pr-t-spacings-75)}:is(.dataTable-head-row-cell,.dataTable-body-row-cell,.dataTable-foot-row-cell).mod-tree .dataTable-body-row-cell-expand-button.button .numericBadge{--components-numericBadge-size: 1.25rem;--components-numericBadge-borderRadius: var(--pr-t-border-radius-small);--components-numericBadge-font: var(--pr-t-font-body-XS);--components-numericBadge-fontSize: var(--pr-t-font-body-XS-fontSize);--components-numericBadge-lineHeight: var(--pr-t-font-body-XS-lineHeight)}:is(.dataTable-head-row-cell,.dataTable-body-row-cell,.dataTable-foot-row-cell).mod-tree .dataTable-body-row-cell-expand-button.button{--components-button-font-size: var(--pr-t-font-body-S-fontSize);--components-button-line-height: var(--pr-t-font-body-S-lineHeight);--components-button-padding: var(--pr-t-spacings-75);--components-button-backgroundColor: transparent;--components-button-color: var(--palettes-700, var(--pr-t-color-text-subtle));--components-button-boxShadow: none}:is(.dataTable-head-row-cell,.dataTable-body-row-cell,.dataTable-foot-row-cell).mod-tree .dataTable-body-row-cell-expand-button.button:hover,:is(.dataTable-head-row-cell,.dataTable-body-row-cell,.dataTable-foot-row-cell).mod-tree .dataTable-body-row-cell-expand-button.button:focus-visible{--components-button-color: var(--palettes-700, var(--pr-t-color-text-subtle));--components-button-backgroundColor: var(--palettes-50, var(--palettes-neutral-50))}:is(.dataTable-head-row-cell,.dataTable-body-row-cell,.dataTable-foot-row-cell).mod-tree .dataTable-body-row-cell-expand-button.button:active{--components-button-backgroundColor: var(--palettes-100, var(--palettes-neutral-100))}:is(.dataTable-head-row-cell,.dataTable-body-row-cell,.dataTable-foot-row-cell).mod-tree .dataTable-body-row-cell-expand-button.button:disabled{--components-button-backgroundColor: transparent;--components-button-color: var(--pr-t-color-text-disabled)}:is(.dataTable-head-row-cell,.dataTable-body-row-cell,.dataTable-foot-row-cell).mod-tree .dataTable-body-row-cell-expand-button.button{--components-button-padding: var(--pr-t-spacings-25);--components-button-color: var(--palettes-neutral-800)}:is(.dataTable-head-row-cell,.dataTable-body-row-cell,.dataTable-foot-row-cell).mod-tree{--components-dataTable-cell-paddingInlineStart: calc( var(--components-dataTable-cell-padding-inline) + var(--pr-t-spacings-300) * calc(var(--components-dataTable-treeLevel) - 1) + var(--components-dataTable-tree-extraPadding) )}.dataTable-body-row.is-collapsed{--components-dataTable-row-display: none}.dataTable-body-row:first-child:has(.dataTable-body-row-cell-expand-button.button[aria-expanded=false])~.dataTable-body-row{--components-dataTable-row-display: none}.dataTable-body-row-cell-expand-button[aria-expanded=true]{--components-dataTable-expand-rotation: 0deg}}@layer components{:not(.dataTable-body)>.dataTable-body-row{--components-dataTable-cell-padding-inline: var(--pr-t-spacings-150);--components-dataTable-cell-paddingInlineStart: var(--components-dataTable-cell-padding-inline);--components-dataTable-cell-padding-block: var(--pr-t-spacings-100);--components-dataTable-cell-padding: var(--components-dataTable-cell-padding-block) var(--components-dataTable-cell-padding-inline);--components-dataTable-treeLevel: 1;--components-dataTable-cell-verticalAlign: middle;--components-dataTable-cell-shadow: 0 1px inset var(--commons-border-200);--components-dataTable-cell-background: var(--pr-t-elevation-surface-raised);--components-dataTable-cell-textAlign: left;--components-dataTable-tableLayout: auto;--components-dataTable-cellFirst-width: auto;--components-dataTable-row-display: table-row;--components-dataTable-expand-rotation: 180deg;--components-dataTable-borderRadius: var(--pr-t-border-radius-structure);--components-dataTable-minInlineSize: none}}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
417
417
  }
418
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: DataTableComponent, decorators: [{
418
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.8", ngImport: i0, type: DataTableComponent, decorators: [{
419
419
  type: Component,
420
420
  args: [{ selector: 'lu-data-table', encapsulation: ViewEncapsulation.None, host: {
421
421
  class: 'dataTableWrapper',