@lucca-front/ng 21.0.0-rc.7 → 21.0.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 (295) hide show
  1. package/fesm2022/lucca-front-ng-a11y.mjs +3 -3
  2. package/fesm2022/lucca-front-ng-a11y.mjs.map +1 -1
  3. package/fesm2022/lucca-front-ng-animations.mjs.map +1 -1
  4. package/fesm2022/lucca-front-ng-api.mjs +52 -52
  5. package/fesm2022/lucca-front-ng-api.mjs.map +1 -1
  6. package/fesm2022/lucca-front-ng-app-layout.mjs +6 -6
  7. package/fesm2022/lucca-front-ng-app-layout.mjs.map +1 -1
  8. package/fesm2022/lucca-front-ng-box.mjs +7 -7
  9. package/fesm2022/lucca-front-ng-box.mjs.map +1 -1
  10. package/fesm2022/lucca-front-ng-breadcrumbs.mjs +11 -11
  11. package/fesm2022/lucca-front-ng-breadcrumbs.mjs.map +1 -1
  12. package/fesm2022/lucca-front-ng-button.mjs +20 -16
  13. package/fesm2022/lucca-front-ng-button.mjs.map +1 -1
  14. package/fesm2022/lucca-front-ng-callout.mjs +72 -72
  15. package/fesm2022/lucca-front-ng-callout.mjs.map +1 -1
  16. package/fesm2022/lucca-front-ng-chip.mjs +15 -15
  17. package/fesm2022/lucca-front-ng-chip.mjs.map +1 -1
  18. package/fesm2022/lucca-front-ng-clear.mjs +10 -10
  19. package/fesm2022/lucca-front-ng-clear.mjs.map +1 -1
  20. package/fesm2022/lucca-front-ng-code.mjs +5 -5
  21. package/fesm2022/lucca-front-ng-code.mjs.map +1 -1
  22. package/fesm2022/lucca-front-ng-comment.mjs +31 -31
  23. package/fesm2022/lucca-front-ng-comment.mjs.map +1 -1
  24. package/fesm2022/lucca-front-ng-container.mjs +8 -8
  25. package/fesm2022/lucca-front-ng-container.mjs.map +1 -1
  26. package/fesm2022/lucca-front-ng-core-select-api.mjs +14 -14
  27. package/fesm2022/lucca-front-ng-core-select-api.mjs.map +1 -1
  28. package/fesm2022/lucca-front-ng-core-select-department.mjs +16 -16
  29. package/fesm2022/lucca-front-ng-core-select-department.mjs.map +1 -1
  30. package/fesm2022/lucca-front-ng-core-select-establishment.mjs +16 -16
  31. package/fesm2022/lucca-front-ng-core-select-establishment.mjs.map +1 -1
  32. package/fesm2022/lucca-front-ng-core-select-job-qualification.mjs +10 -10
  33. package/fesm2022/lucca-front-ng-core-select-job-qualification.mjs.map +1 -1
  34. package/fesm2022/lucca-front-ng-core-select-occupation-category.mjs +7 -7
  35. package/fesm2022/lucca-front-ng-core-select-occupation-category.mjs.map +1 -1
  36. package/fesm2022/lucca-front-ng-core-select-user.mjs +38 -38
  37. package/fesm2022/lucca-front-ng-core-select-user.mjs.map +1 -1
  38. package/fesm2022/lucca-front-ng-core-select.mjs +90 -89
  39. package/fesm2022/lucca-front-ng-core-select.mjs.map +1 -1
  40. package/fesm2022/lucca-front-ng-core.mjs +36 -19
  41. package/fesm2022/lucca-front-ng-core.mjs.map +1 -1
  42. package/fesm2022/lucca-front-ng-data-table.mjs +88 -88
  43. package/fesm2022/lucca-front-ng-data-table.mjs.map +1 -1
  44. package/fesm2022/lucca-front-ng-date.mjs +50 -50
  45. package/fesm2022/lucca-front-ng-date.mjs.map +1 -1
  46. package/fesm2022/lucca-front-ng-date2.mjs +125 -132
  47. package/fesm2022/lucca-front-ng-date2.mjs.map +1 -1
  48. package/fesm2022/lucca-front-ng-department.mjs +30 -30
  49. package/fesm2022/lucca-front-ng-department.mjs.map +1 -1
  50. package/fesm2022/lucca-front-ng-dialog.mjs +42 -42
  51. package/fesm2022/lucca-front-ng-dialog.mjs.map +1 -1
  52. package/fesm2022/lucca-front-ng-divider.mjs +10 -10
  53. package/fesm2022/lucca-front-ng-divider.mjs.map +1 -1
  54. package/fesm2022/lucca-front-ng-dropdown.mjs +47 -47
  55. package/fesm2022/lucca-front-ng-dropdown.mjs.map +1 -1
  56. package/fesm2022/lucca-front-ng-empty-state.mjs +27 -27
  57. package/fesm2022/lucca-front-ng-empty-state.mjs.map +1 -1
  58. package/fesm2022/lucca-front-ng-establishment.mjs +52 -52
  59. package/fesm2022/lucca-front-ng-establishment.mjs.map +1 -1
  60. package/fesm2022/lucca-front-ng-fancy-box.mjs +12 -12
  61. package/fesm2022/lucca-front-ng-fancy-box.mjs.map +1 -1
  62. package/fesm2022/lucca-front-ng-file-upload.mjs +56 -56
  63. package/fesm2022/lucca-front-ng-file-upload.mjs.map +1 -1
  64. package/fesm2022/lucca-front-ng-filter-pills.mjs +52 -52
  65. package/fesm2022/lucca-front-ng-filter-pills.mjs.map +1 -1
  66. package/fesm2022/lucca-front-ng-footer.mjs +11 -11
  67. package/fesm2022/lucca-front-ng-footer.mjs.map +1 -1
  68. package/fesm2022/lucca-front-ng-form-field.mjs +48 -50
  69. package/fesm2022/lucca-front-ng-form-field.mjs.map +1 -1
  70. package/fesm2022/lucca-front-ng-form-header.mjs +5 -5
  71. package/fesm2022/lucca-front-ng-form-header.mjs.map +1 -1
  72. package/fesm2022/lucca-front-ng-form.mjs +6 -6
  73. package/fesm2022/lucca-front-ng-form.mjs.map +1 -1
  74. package/fesm2022/lucca-front-ng-formly.mjs +58 -58
  75. package/fesm2022/lucca-front-ng-formly.mjs.map +1 -1
  76. package/fesm2022/lucca-front-ng-forms-phone-number-input.mjs +20 -20
  77. package/fesm2022/lucca-front-ng-forms-phone-number-input.mjs.map +1 -1
  78. package/fesm2022/lucca-front-ng-forms-rich-text-input-formatters-html.mjs +3 -3
  79. package/fesm2022/lucca-front-ng-forms-rich-text-input-formatters-html.mjs.map +1 -1
  80. package/fesm2022/lucca-front-ng-forms-rich-text-input-formatters-markdown.mjs +3 -3
  81. package/fesm2022/lucca-front-ng-forms-rich-text-input-formatters-markdown.mjs.map +1 -1
  82. package/fesm2022/lucca-front-ng-forms-rich-text-input-formatters-plain-text.mjs.map +1 -1
  83. package/fesm2022/lucca-front-ng-forms-rich-text-input.mjs +90 -88
  84. package/fesm2022/lucca-front-ng-forms-rich-text-input.mjs.map +1 -1
  85. package/fesm2022/lucca-front-ng-forms.mjs +139 -139
  86. package/fesm2022/lucca-front-ng-forms.mjs.map +1 -1
  87. package/fesm2022/lucca-front-ng-gauge.mjs +21 -21
  88. package/fesm2022/lucca-front-ng-gauge.mjs.map +1 -1
  89. package/fesm2022/lucca-front-ng-grid.mjs +27 -27
  90. package/fesm2022/lucca-front-ng-grid.mjs.map +1 -1
  91. package/fesm2022/lucca-front-ng-highlight-data.mjs +19 -19
  92. package/fesm2022/lucca-front-ng-highlight-data.mjs.map +1 -1
  93. package/fesm2022/lucca-front-ng-horizontal-navigation.mjs +12 -12
  94. package/fesm2022/lucca-front-ng-horizontal-navigation.mjs.map +1 -1
  95. package/fesm2022/lucca-front-ng-icon.mjs +10 -10
  96. package/fesm2022/lucca-front-ng-icon.mjs.map +1 -1
  97. package/fesm2022/lucca-front-ng-index-table.mjs +69 -69
  98. package/fesm2022/lucca-front-ng-index-table.mjs.map +1 -1
  99. package/fesm2022/lucca-front-ng-inline-message.mjs +8 -8
  100. package/fesm2022/lucca-front-ng-inline-message.mjs.map +1 -1
  101. package/fesm2022/lucca-front-ng-input.mjs +21 -21
  102. package/fesm2022/lucca-front-ng-input.mjs.map +1 -1
  103. package/fesm2022/lucca-front-ng-link.mjs +12 -12
  104. package/fesm2022/lucca-front-ng-link.mjs.map +1 -1
  105. package/fesm2022/lucca-front-ng-listbox.mjs +28 -28
  106. package/fesm2022/lucca-front-ng-listbox.mjs.map +1 -1
  107. package/fesm2022/lucca-front-ng-listing.mjs +21 -21
  108. package/fesm2022/lucca-front-ng-listing.mjs.map +1 -1
  109. package/fesm2022/lucca-front-ng-loading.mjs +10 -10
  110. package/fesm2022/lucca-front-ng-loading.mjs.map +1 -1
  111. package/fesm2022/lucca-front-ng-main-layout.mjs +12 -12
  112. package/fesm2022/lucca-front-ng-main-layout.mjs.map +1 -1
  113. package/fesm2022/lucca-front-ng-mobile-push.mjs +4 -4
  114. package/fesm2022/lucca-front-ng-mobile-push.mjs.map +1 -1
  115. package/fesm2022/lucca-front-ng-modal.mjs +23 -23
  116. package/fesm2022/lucca-front-ng-modal.mjs.map +1 -1
  117. package/fesm2022/lucca-front-ng-multi-select.mjs +68 -68
  118. package/fesm2022/lucca-front-ng-multi-select.mjs.map +1 -1
  119. package/fesm2022/lucca-front-ng-new-badge.mjs +5 -5
  120. package/fesm2022/lucca-front-ng-new-badge.mjs.map +1 -1
  121. package/fesm2022/lucca-front-ng-number-format.mjs +11 -11
  122. package/fesm2022/lucca-front-ng-number-format.mjs.map +1 -1
  123. package/fesm2022/lucca-front-ng-number.mjs +7 -7
  124. package/fesm2022/lucca-front-ng-number.mjs.map +1 -1
  125. package/fesm2022/lucca-front-ng-numeric-badge.mjs +13 -13
  126. package/fesm2022/lucca-front-ng-numeric-badge.mjs.map +1 -1
  127. package/fesm2022/lucca-front-ng-option.mjs +161 -161
  128. package/fesm2022/lucca-front-ng-option.mjs.map +1 -1
  129. package/fesm2022/lucca-front-ng-page-header.mjs +10 -10
  130. package/fesm2022/lucca-front-ng-page-header.mjs.map +1 -1
  131. package/fesm2022/lucca-front-ng-pagination.mjs +10 -10
  132. package/fesm2022/lucca-front-ng-pagination.mjs.map +1 -1
  133. package/fesm2022/lucca-front-ng-plg-push.mjs +7 -7
  134. package/fesm2022/lucca-front-ng-plg-push.mjs.map +1 -1
  135. package/fesm2022/lucca-front-ng-popover.mjs +25 -25
  136. package/fesm2022/lucca-front-ng-popover.mjs.map +1 -1
  137. package/fesm2022/lucca-front-ng-popover2.mjs +19 -23
  138. package/fesm2022/lucca-front-ng-popover2.mjs.map +1 -1
  139. package/fesm2022/lucca-front-ng-popup.mjs +10 -10
  140. package/fesm2022/lucca-front-ng-popup.mjs.map +1 -1
  141. package/fesm2022/lucca-front-ng-progress-bar.mjs +9 -9
  142. package/fesm2022/lucca-front-ng-progress-bar.mjs.map +1 -1
  143. package/fesm2022/lucca-front-ng-read-more.mjs +14 -14
  144. package/fesm2022/lucca-front-ng-read-more.mjs.map +1 -1
  145. package/fesm2022/lucca-front-ng-resource-card.mjs +120 -0
  146. package/fesm2022/lucca-front-ng-resource-card.mjs.map +1 -0
  147. package/fesm2022/lucca-front-ng-safe-content.mjs +13 -13
  148. package/fesm2022/lucca-front-ng-safe-content.mjs.map +1 -1
  149. package/fesm2022/lucca-front-ng-scroll-box.mjs +7 -7
  150. package/fesm2022/lucca-front-ng-scroll-box.mjs.map +1 -1
  151. package/fesm2022/lucca-front-ng-scroll.mjs +9 -9
  152. package/fesm2022/lucca-front-ng-scroll.mjs.map +1 -1
  153. package/fesm2022/lucca-front-ng-scrollBox.mjs +6 -0
  154. package/fesm2022/lucca-front-ng-scrollBox.mjs.map +1 -0
  155. package/fesm2022/lucca-front-ng-segmented-control-tabs.mjs +18 -18
  156. package/fesm2022/lucca-front-ng-segmented-control-tabs.mjs.map +1 -1
  157. package/fesm2022/lucca-front-ng-segmented-control.mjs +15 -15
  158. package/fesm2022/lucca-front-ng-segmented-control.mjs.map +1 -1
  159. package/fesm2022/lucca-front-ng-select.mjs +16 -16
  160. package/fesm2022/lucca-front-ng-select.mjs.map +1 -1
  161. package/fesm2022/lucca-front-ng-sidepanel.mjs +7 -7
  162. package/fesm2022/lucca-front-ng-sidepanel.mjs.map +1 -1
  163. package/fesm2022/lucca-front-ng-simple-select.mjs +22 -22
  164. package/fesm2022/lucca-front-ng-simple-select.mjs.map +1 -1
  165. package/fesm2022/lucca-front-ng-skeleton.mjs +67 -53
  166. package/fesm2022/lucca-front-ng-skeleton.mjs.map +1 -1
  167. package/fesm2022/lucca-front-ng-sortable-list.mjs +18 -18
  168. package/fesm2022/lucca-front-ng-sortable-list.mjs.map +1 -1
  169. package/fesm2022/lucca-front-ng-status-badge.mjs +9 -9
  170. package/fesm2022/lucca-front-ng-status-badge.mjs.map +1 -1
  171. package/fesm2022/lucca-front-ng-table-of-content.mjs +8 -8
  172. package/fesm2022/lucca-front-ng-table-of-content.mjs.map +1 -1
  173. package/fesm2022/lucca-front-ng-tag.mjs +14 -14
  174. package/fesm2022/lucca-front-ng-tag.mjs.map +1 -1
  175. package/fesm2022/lucca-front-ng-time.mjs +63 -75
  176. package/fesm2022/lucca-front-ng-time.mjs.map +1 -1
  177. package/fesm2022/lucca-front-ng-title.mjs +10 -10
  178. package/fesm2022/lucca-front-ng-title.mjs.map +1 -1
  179. package/fesm2022/lucca-front-ng-toast.mjs +14 -14
  180. package/fesm2022/lucca-front-ng-toast.mjs.map +1 -1
  181. package/fesm2022/lucca-front-ng-tooltip.mjs +39 -41
  182. package/fesm2022/lucca-front-ng-tooltip.mjs.map +1 -1
  183. package/fesm2022/lucca-front-ng-tree-select.mjs +20 -20
  184. package/fesm2022/lucca-front-ng-tree-select.mjs.map +1 -1
  185. package/fesm2022/lucca-front-ng-user-popover.mjs +22 -22
  186. package/fesm2022/lucca-front-ng-user-popover.mjs.map +1 -1
  187. package/fesm2022/lucca-front-ng-user.mjs +86 -86
  188. package/fesm2022/lucca-front-ng-user.mjs.map +1 -1
  189. package/fesm2022/lucca-front-ng-vertical-navigation.mjs +31 -31
  190. package/fesm2022/lucca-front-ng-vertical-navigation.mjs.map +1 -1
  191. package/package.json +159 -151
  192. package/src/components/cdk/_dragDrop.scss +1 -1
  193. package/{a11y/index.d.ts → types/lucca-front-ng-a11y.d.ts} +9 -8
  194. package/{button/index.d.ts → types/lucca-front-ng-button.d.ts} +1 -1
  195. package/{callout/index.d.ts → types/lucca-front-ng-callout.d.ts} +2 -1
  196. package/{core-select/index.d.ts → types/lucca-front-ng-core-select.d.ts} +11 -10
  197. package/{core/index.d.ts → types/lucca-front-ng-core.d.ts} +17 -1
  198. package/{date2/index.d.ts → types/lucca-front-ng-date2.d.ts} +1 -1
  199. package/{department/index.d.ts → types/lucca-front-ng-department.d.ts} +9 -8
  200. package/{dialog/index.d.ts → types/lucca-front-ng-dialog.d.ts} +43 -42
  201. package/{dropdown/index.d.ts → types/lucca-front-ng-dropdown.d.ts} +2 -2
  202. package/{establishment/index.d.ts → types/lucca-front-ng-establishment.d.ts} +10 -9
  203. package/{form-field/index.d.ts → types/lucca-front-ng-form-field.d.ts} +11 -11
  204. package/{forms/phone-number-input/index.d.ts → types/lucca-front-ng-forms-phone-number-input.d.ts} +1 -2
  205. package/{forms/index.d.ts → types/lucca-front-ng-forms.d.ts} +18 -17
  206. package/{modal/index.d.ts → types/lucca-front-ng-modal.d.ts} +13 -12
  207. package/{multi-select/index.d.ts → types/lucca-front-ng-multi-select.d.ts} +32 -31
  208. package/{option/index.d.ts → types/lucca-front-ng-option.d.ts} +28 -27
  209. package/{popover2/index.d.ts → types/lucca-front-ng-popover2.d.ts} +22 -21
  210. package/{popup/index.d.ts → types/lucca-front-ng-popup.d.ts} +2 -1
  211. package/types/lucca-front-ng-resource-card.d.ts +33 -0
  212. package/types/lucca-front-ng-scrollBox.d.ts +1 -0
  213. package/{select/index.d.ts → types/lucca-front-ng-select.d.ts} +1 -1
  214. package/{simple-select/index.d.ts → types/lucca-front-ng-simple-select.d.ts} +16 -15
  215. package/{skeleton/index.d.ts → types/lucca-front-ng-skeleton.d.ts} +9 -1
  216. package/{time/index.d.ts → types/lucca-front-ng-time.d.ts} +16 -15
  217. package/{toast/index.d.ts → types/lucca-front-ng-toast.d.ts} +11 -10
  218. package/{user-popover/index.d.ts → types/lucca-front-ng-user-popover.d.ts} +23 -22
  219. package/{user/index.d.ts → types/lucca-front-ng-user.d.ts} +18 -17
  220. /package/{animations/index.d.ts → types/lucca-front-ng-animations.d.ts} +0 -0
  221. /package/{api/index.d.ts → types/lucca-front-ng-api.d.ts} +0 -0
  222. /package/{app-layout/index.d.ts → types/lucca-front-ng-app-layout.d.ts} +0 -0
  223. /package/{box/index.d.ts → types/lucca-front-ng-box.d.ts} +0 -0
  224. /package/{breadcrumbs/index.d.ts → types/lucca-front-ng-breadcrumbs.d.ts} +0 -0
  225. /package/{chip/index.d.ts → types/lucca-front-ng-chip.d.ts} +0 -0
  226. /package/{clear/index.d.ts → types/lucca-front-ng-clear.d.ts} +0 -0
  227. /package/{code/index.d.ts → types/lucca-front-ng-code.d.ts} +0 -0
  228. /package/{comment/index.d.ts → types/lucca-front-ng-comment.d.ts} +0 -0
  229. /package/{container/index.d.ts → types/lucca-front-ng-container.d.ts} +0 -0
  230. /package/{core-select/api/index.d.ts → types/lucca-front-ng-core-select-api.d.ts} +0 -0
  231. /package/{core-select/department/index.d.ts → types/lucca-front-ng-core-select-department.d.ts} +0 -0
  232. /package/{core-select/establishment/index.d.ts → types/lucca-front-ng-core-select-establishment.d.ts} +0 -0
  233. /package/{core-select/job-qualification/index.d.ts → types/lucca-front-ng-core-select-job-qualification.d.ts} +0 -0
  234. /package/{core-select/occupation-category/index.d.ts → types/lucca-front-ng-core-select-occupation-category.d.ts} +0 -0
  235. /package/{core-select/user/index.d.ts → types/lucca-front-ng-core-select-user.d.ts} +0 -0
  236. /package/{data-table/index.d.ts → types/lucca-front-ng-data-table.d.ts} +0 -0
  237. /package/{date/index.d.ts → types/lucca-front-ng-date.d.ts} +0 -0
  238. /package/{dialog/testing/index.d.ts → types/lucca-front-ng-dialog-testing.d.ts} +0 -0
  239. /package/{divider/index.d.ts → types/lucca-front-ng-divider.d.ts} +0 -0
  240. /package/{empty-state/index.d.ts → types/lucca-front-ng-empty-state.d.ts} +0 -0
  241. /package/{fancy-box/index.d.ts → types/lucca-front-ng-fancy-box.d.ts} +0 -0
  242. /package/{file-upload/index.d.ts → types/lucca-front-ng-file-upload.d.ts} +0 -0
  243. /package/{filter-pills/index.d.ts → types/lucca-front-ng-filter-pills.d.ts} +0 -0
  244. /package/{footer/index.d.ts → types/lucca-front-ng-footer.d.ts} +0 -0
  245. /package/{form-header/index.d.ts → types/lucca-front-ng-form-header.d.ts} +0 -0
  246. /package/{form/index.d.ts → types/lucca-front-ng-form.d.ts} +0 -0
  247. /package/{formly/index.d.ts → types/lucca-front-ng-formly.d.ts} +0 -0
  248. /package/{forms/rich-text-input/formatters/html/index.d.ts → types/lucca-front-ng-forms-rich-text-input-formatters-html.d.ts} +0 -0
  249. /package/{forms/rich-text-input/formatters/markdown/index.d.ts → types/lucca-front-ng-forms-rich-text-input-formatters-markdown.d.ts} +0 -0
  250. /package/{forms/rich-text-input/formatters/plain-text/index.d.ts → types/lucca-front-ng-forms-rich-text-input-formatters-plain-text.d.ts} +0 -0
  251. /package/{forms/rich-text-input/index.d.ts → types/lucca-front-ng-forms-rich-text-input.d.ts} +0 -0
  252. /package/{gauge/index.d.ts → types/lucca-front-ng-gauge.d.ts} +0 -0
  253. /package/{grid/index.d.ts → types/lucca-front-ng-grid.d.ts} +0 -0
  254. /package/{highlight-data/index.d.ts → types/lucca-front-ng-highlight-data.d.ts} +0 -0
  255. /package/{horizontal-navigation/index.d.ts → types/lucca-front-ng-horizontal-navigation.d.ts} +0 -0
  256. /package/{icon/index.d.ts → types/lucca-front-ng-icon.d.ts} +0 -0
  257. /package/{index-table/index.d.ts → types/lucca-front-ng-index-table.d.ts} +0 -0
  258. /package/{inline-message/index.d.ts → types/lucca-front-ng-inline-message.d.ts} +0 -0
  259. /package/{input/index.d.ts → types/lucca-front-ng-input.d.ts} +0 -0
  260. /package/{link/index.d.ts → types/lucca-front-ng-link.d.ts} +0 -0
  261. /package/{listbox/index.d.ts → types/lucca-front-ng-listbox.d.ts} +0 -0
  262. /package/{listing/index.d.ts → types/lucca-front-ng-listing.d.ts} +0 -0
  263. /package/{loading/index.d.ts → types/lucca-front-ng-loading.d.ts} +0 -0
  264. /package/{main-layout/index.d.ts → types/lucca-front-ng-main-layout.d.ts} +0 -0
  265. /package/{mobile-push/index.d.ts → types/lucca-front-ng-mobile-push.d.ts} +0 -0
  266. /package/{new-badge/index.d.ts → types/lucca-front-ng-new-badge.d.ts} +0 -0
  267. /package/{number-format/index.d.ts → types/lucca-front-ng-number-format.d.ts} +0 -0
  268. /package/{number/index.d.ts → types/lucca-front-ng-number.d.ts} +0 -0
  269. /package/{numeric-badge/index.d.ts → types/lucca-front-ng-numeric-badge.d.ts} +0 -0
  270. /package/{page-header/index.d.ts → types/lucca-front-ng-page-header.d.ts} +0 -0
  271. /package/{pagination/index.d.ts → types/lucca-front-ng-pagination.d.ts} +0 -0
  272. /package/{picker/index.d.ts → types/lucca-front-ng-picker.d.ts} +0 -0
  273. /package/{plg-push/index.d.ts → types/lucca-front-ng-plg-push.d.ts} +0 -0
  274. /package/{popover/index.d.ts → types/lucca-front-ng-popover.d.ts} +0 -0
  275. /package/{progress-bar/index.d.ts → types/lucca-front-ng-progress-bar.d.ts} +0 -0
  276. /package/{read-more/index.d.ts → types/lucca-front-ng-read-more.d.ts} +0 -0
  277. /package/{safe-content/index.d.ts → types/lucca-front-ng-safe-content.d.ts} +0 -0
  278. /package/{scroll-box/index.d.ts → types/lucca-front-ng-scroll-box.d.ts} +0 -0
  279. /package/{scroll/index.d.ts → types/lucca-front-ng-scroll.d.ts} +0 -0
  280. /package/{segmented-control-tabs/index.d.ts → types/lucca-front-ng-segmented-control-tabs.d.ts} +0 -0
  281. /package/{segmented-control/index.d.ts → types/lucca-front-ng-segmented-control.d.ts} +0 -0
  282. /package/{segmentedControl/index.d.ts → types/lucca-front-ng-segmentedControl.d.ts} +0 -0
  283. /package/{segmentedControlTabs/index.d.ts → types/lucca-front-ng-segmentedControlTabs.d.ts} +0 -0
  284. /package/{sidepanel/index.d.ts → types/lucca-front-ng-sidepanel.d.ts} +0 -0
  285. /package/{simple-select/api/index.d.ts → types/lucca-front-ng-simple-select-api.d.ts} +0 -0
  286. /package/{sortable-list/index.d.ts → types/lucca-front-ng-sortable-list.d.ts} +0 -0
  287. /package/{status-badge/index.d.ts → types/lucca-front-ng-status-badge.d.ts} +0 -0
  288. /package/{statusBadge/index.d.ts → types/lucca-front-ng-statusBadge.d.ts} +0 -0
  289. /package/{table-of-content/index.d.ts → types/lucca-front-ng-table-of-content.d.ts} +0 -0
  290. /package/{tag/index.d.ts → types/lucca-front-ng-tag.d.ts} +0 -0
  291. /package/{title/index.d.ts → types/lucca-front-ng-title.d.ts} +0 -0
  292. /package/{tooltip/index.d.ts → types/lucca-front-ng-tooltip.d.ts} +0 -0
  293. /package/{tree-select/index.d.ts → types/lucca-front-ng-tree-select.d.ts} +0 -0
  294. /package/{vertical-navigation/index.d.ts → types/lucca-front-ng-vertical-navigation.d.ts} +0 -0
  295. /package/{index.d.ts → types/lucca-front-ng.d.ts} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"lucca-front-ng-date.mjs","sources":["../../../packages/ng/date/adapter/date-adapter.pipe.ts","../../../packages/ng/date/adapter/date-adapter.module.ts","../../../packages/ng/date/calendar/translations.ts","../../../packages/ng/date/calendar/calendar-input.translate.ts","../../../packages/ng/date/calendar/calendar-item.class.ts","../../../packages/ng/date/calendar/calendar-item.factory.ts","../../../packages/ng/date/calendar/calendar-input.component.ts","../../../packages/ng/date/calendar/calendar-input.component.html","../../../packages/ng/date/calendar/calendar-input.module.ts","../../../packages/ng/date/input/translations.ts","../../../packages/ng/date/input/date-input.translate.ts","../../../packages/ng/date/input/date-input.directive.ts","../../../packages/ng/date/input/date-input.module.ts","../../../packages/ng/date/picker/date-picker.component.ts","../../../packages/ng/date/picker/date-picker.component.html","../../../packages/ng/date/picker/date-picker.module.ts","../../../packages/ng/date/select/translations.ts","../../../packages/ng/date/select/date-select-input.translate.ts","../../../packages/ng/date/select/date-select-input.component.ts","../../../packages/ng/date/select/date-select-input.component.html","../../../packages/ng/date/select/date-select-input.module.ts","../../../packages/ng/date/date.module.ts","../../../packages/ng/date/humanize/humanize.formatter.ts","../../../packages/ng/date/humanize/humanize.model.ts","../../../packages/ng/date/humanize/humanize.utils.ts","../../../packages/ng/date/humanize/humanize.pipe.ts","../../../packages/ng/date/lucca-front-ng-date.ts"],"sourcesContent":["import { Pipe, PipeTransform } from '@angular/core';\nimport { ALuDateAdapter } from '@lucca-front/ng/core';\n\n@Pipe({\n\tname: 'luDate',\n\tpure: true,\n})\nexport class LuDateAdapterPipe<D> implements PipeTransform {\n\tconstructor(private _adapter: ALuDateAdapter<D>) {}\n\ttransform(d: D, format = 'mediumDate'): string {\n\t\tif (d && this._adapter.isValid(d)) {\n\t\t\treturn this._adapter.format(d, format);\n\t\t}\n\t\treturn '';\n\t}\n}\n","import { NgModule } from '@angular/core';\nimport { LuDateAdapterPipe } from './date-adapter.pipe';\n\n/**\n * @deprecated use `LuDateAdapterPipe` instead\n */\n@NgModule({\n\timports: [LuDateAdapterPipe],\n\texports: [LuDateAdapterPipe],\n})\nexport class LuDateAdapterModule {}\n","export const Translations = {\n\ten: {\n\t\tprevious: 'Previous',\n\t\tnext: 'Next',\n\t},\n\tde: {\n\t\tprevious: 'Abbrechen',\n\t\tnext: 'Weiter',\n\t},\n\tfr: {\n\t\tprevious: 'Précédent',\n\t\tnext: 'Suivant',\n\t},\n\tit: {\n\t\tprevious: 'Precedente',\n\t\tnext: 'Seguente',\n\t},\n\tnl: {\n\t\tprevious: 'Vorige',\n\t\tnext: 'Volgende',\n\t},\n\t'nl-BE': {\n\t\tprevious: '',\n\t\tnext: '',\n\t},\n\tes: {\n\t\tprevious: 'Anterior',\n\t\tnext: 'Siguiente',\n\t},\n\tpt: {\n\t\tprevious: 'Anterior',\n\t\tnext: 'Seguinte',\n\t},\n};\n","import { InjectionToken } from '@angular/core';\nimport { LuTranslation } from '@lucca-front/ng/core';\nimport { Translations } from './translations';\n\nexport const LU_CALENDARINPUT_TRANSLATIONS = new InjectionToken('LuCalendarInputTranslations', {\n\tfactory: () => luCalendarInputTranslations,\n});\n\nexport interface LuCalendarInputLabel {\n\tprevious: string;\n\tnext: string;\n}\n\nexport const luCalendarInputTranslations: LuTranslation<LuCalendarInputLabel> = Translations;\n","import { ELuDateGranularity, LuDateGranularity } from '@lucca-front/ng/core';\nimport { ICalendarItem } from './calendar-item.interface';\n\nexport abstract class ACalendarItem<D> implements ICalendarItem<D> {\n\tget id() {\n\t\treturn `${this.granularity}-${this.date.toString()}`;\n\t}\n\tdate: D;\n\tmods: string[] = [];\n\tisDisabled = false;\n\tlabel: string;\n\treadonly granularity: LuDateGranularity;\n}\nexport class DayItem<D> extends ACalendarItem<D> implements ICalendarItem<D> {\n\toverride readonly granularity = ELuDateGranularity.day;\n\tconstructor(\n\t\tpublic override date: D,\n\t\tpublic override label: string,\n\t) {\n\t\tsuper();\n\t}\n}\nexport class MonthItem<D> extends ACalendarItem<D> implements ICalendarItem<D> {\n\toverride readonly granularity = ELuDateGranularity.month;\n\tconstructor(\n\t\tpublic override date: D,\n\t\tpublic override label: string,\n\t) {\n\t\tsuper();\n\t}\n}\nexport class YearItem<D> extends ACalendarItem<D> implements ICalendarItem<D> {\n\toverride readonly granularity = ELuDateGranularity.year;\n\tconstructor(\n\t\tpublic override date: D,\n\t\tpublic override label: string,\n\t) {\n\t\tsuper();\n\t}\n}\nexport class DecadeItem<D> extends ACalendarItem<D> implements ICalendarItem<D> {\n\toverride readonly granularity = ELuDateGranularity.decade;\n\tconstructor(\n\t\tpublic override date: D,\n\t\tpublic override label: string,\n\t) {\n\t\tsuper();\n\t}\n}\n","import { Injectable } from '@angular/core';\nimport { ALuDateAdapter } from '@lucca-front/ng/core';\nimport { DayItem, DecadeItem, MonthItem, YearItem } from './calendar-item.class';\n\n@Injectable()\nexport class LuCalendarItemFactory<D> {\n\tconstructor(private _adapter: ALuDateAdapter<D>) {}\n\tforgeDay(d: D, format = 'd'): DayItem<D> {\n\t\tconst date = this._adapter.clone(d);\n\t\treturn new DayItem(date, this._adapter.format(date, format));\n\t}\n\tforgeMonth(d: D, format = 'MMM'): MonthItem<D> {\n\t\tconst year = this._adapter.getYear(d);\n\t\tconst month = this._adapter.getMonth(d);\n\t\tconst monthStart = this._adapter.forge(year, month, 1);\n\t\treturn new MonthItem(monthStart, this._adapter.format(monthStart, format));\n\t}\n\tforgeYear(d: D, format = 'y'): YearItem<D> {\n\t\tconst year = this._adapter.getYear(d);\n\t\tconst yearStart = this._adapter.forge(year, 1, 1);\n\t\treturn new YearItem(yearStart, this._adapter.format(yearStart, format));\n\t}\n\tforgeDecade(d: D, format = 'y'): DecadeItem<D> {\n\t\tconst year = this._adapter.getYear(d);\n\t\tconst decadeStart = this._adapter.forge(10 * Math.floor(year / 10), 1, 1);\n\t\tconst decadeEnd = this._adapter.forge(10 * Math.floor(year / 10) + 9, 1, 1);\n\t\tconst label = `${this._adapter.format(decadeStart, format)} - ${this._adapter.format(decadeEnd, format)}`;\n\t\treturn new DecadeItem(decadeStart, label);\n\t}\n}\n","import { FormStyle, getLocaleDayNames, getLocaleFirstDayOfWeek, TranslationWidth } from '@angular/common';\nimport { ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, forwardRef, Inject, Input, LOCALE_ID, OnInit, Renderer2 } from '@angular/core';\nimport { AbstractControl, ControlValueAccessor, FormsModule, NG_VALIDATORS, NG_VALUE_ACCESSOR, ValidationErrors, Validator } from '@angular/forms';\nimport { ALuDateAdapter, ELuDateGranularity, getIntl, LuDateGranularity } from '@lucca-front/ng/core';\nimport { ALuInput } from '@lucca-front/ng/input';\nimport { LU_CALENDARINPUT_TRANSLATIONS } from './calendar-input.translate';\nimport { LuCalendarItemFactory } from './calendar-item.factory';\nimport { ICalendarItem } from './calendar-item.interface';\n\n@Component({\n\tselector: 'lu-calendar',\n\ttemplateUrl: './calendar-input.component.html',\n\tstyleUrl: './calendar-input.component.scss',\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\timports: [FormsModule],\n\tproviders: [\n\t\t{\n\t\t\tprovide: NG_VALUE_ACCESSOR,\n\t\t\tuseExisting: forwardRef(() => LuCalendarInputComponent),\n\t\t\tmulti: true,\n\t\t},\n\t\t{\n\t\t\tprovide: NG_VALIDATORS,\n\t\t\tuseExisting: LuCalendarInputComponent,\n\t\t\tmulti: true,\n\t\t},\n\t\tLuCalendarItemFactory,\n\t],\n})\nexport class LuCalendarInputComponent<D> extends ALuInput<D> implements ControlValueAccessor, OnInit, Validator {\n\tintl = getIntl(LU_CALENDARINPUT_TRANSLATIONS);\n\n\t@Input() min?: D;\n\t@Input() max?: D;\n\t@Input() granularity: LuDateGranularity = ELuDateGranularity.day;\n\t@Input() startOn: D = this._adapter.forgeToday();\n\n\tviewGranularity: LuDateGranularity;\n\theader: ICalendarItem<D>;\n\titems: ICalendarItem<D>[] = [];\n\tget mod() {\n\t\tswitch (this.viewGranularity) {\n\t\t\tcase ELuDateGranularity.year:\n\t\t\t\treturn 'mod-yearlyView';\n\t\t\tcase ELuDateGranularity.month:\n\t\t\t\treturn 'mod-monthlyView';\n\t\t\tcase ELuDateGranularity.day:\n\t\t\tdefault:\n\t\t\t\treturn 'mod-dailyView';\n\t\t}\n\t}\n\n\t// daily view\n\tlabels: string[] = [];\n\tconstructor(\n\t\t_changeDetectorRef: ChangeDetectorRef,\n\t\t_elementRef: ElementRef<HTMLElement>,\n\t\t_renderer: Renderer2,\n\t\t@Inject(LOCALE_ID) private _locale: string,\n\t\tprivate _factory: LuCalendarItemFactory<D>,\n\t\tprivate _adapter: ALuDateAdapter<D>,\n\t) {\n\t\tsuper(_changeDetectorRef, _elementRef, _renderer);\n\t}\n\tngOnInit() {\n\t\tthis.viewGranularity = this.granularity;\n\t\tthis.initDayLabels();\n\t}\n\toverride writeValue(value?: D) {\n\t\tconst date = value && this._adapter.isValid(value) ? this._adapter.clone(value) : this.startOn;\n\t\tthis.header = this._factory.forgeMonth(date);\n\t\tsuper.writeValue(value);\n\t}\n\tinitDayLabels() {\n\t\tthis.labels = [...getLocaleDayNames(this._locale, FormStyle.Standalone, TranslationWidth.Abbreviated)];\n\t\tif (getLocaleFirstDayOfWeek(this._locale) === 1) {\n\t\t\tthis.labels.push(this.labels.shift());\n\t\t}\n\t}\n\tprotected render() {\n\t\tswitch (this.viewGranularity) {\n\t\t\tcase ELuDateGranularity.year:\n\t\t\t\tthis.renderYearlyView();\n\t\t\t\tbreak;\n\t\t\tcase ELuDateGranularity.month:\n\t\t\t\tthis.renderMonthlyView();\n\t\t\t\tbreak;\n\t\t\tcase ELuDateGranularity.day:\n\t\t\tdefault:\n\t\t\t\tthis.renderDailyView();\n\t\t\t\tbreak;\n\t\t}\n\t}\n\n\tprotected renderDailyView(month: D = this.header.date) {\n\t\tthis.items = [];\n\t\tconst start = this._adapter.forge(this._adapter.getYear(month), this._adapter.getMonth(month), 1);\n\t\tlet index = 0;\n\t\tconst isFirstDayOfWeek = this._adapter.getDay(start) === getLocaleFirstDayOfWeek(this._locale);\n\t\tthis.header = this._factory.forgeMonth(month, 'MMMM y');\n\t\tif (!isFirstDayOfWeek) {\n\t\t\tconst offset = (this._adapter.getDay(start) - getLocaleFirstDayOfWeek(this._locale) + 7) % 7;\n\t\t\tindex = -1 * offset;\n\t\t}\n\t\t// TODO\n\t\tlet isFDOW = false;\n\t\tlet isNextMonth = false;\n\t\tdo {\n\t\t\tconst d = this._adapter.add(start, index++, ELuDateGranularity.day);\n\t\t\tconst day = this._factory.forgeDay(d);\n\t\t\tisNextMonth = this._adapter.compare(d, month, ELuDateGranularity.month) > 0;\n\t\t\tisFDOW = this._adapter.getDay(d) === getLocaleFirstDayOfWeek(this._locale);\n\t\t\tthis.items.push(day);\n\t\t} while (!isFDOW || !isNextMonth);\n\t\tthis.applyDailyMods();\n\t}\n\n\tprotected renderMonthlyView(year: D = this.header.date) {\n\t\tthis.header = this._factory.forgeYear(year);\n\t\tthis.items = [...Array(12).keys()].map((i) => {\n\t\t\tconst d = this._adapter.forge(this._adapter.getYear(year), i + 1, 1);\n\t\t\treturn this._factory.forgeMonth(d);\n\t\t});\n\t\tthis.applyMonthlyMods();\n\t}\n\n\tprotected renderYearlyView(decade: D = this.header.date) {\n\t\tconst year = Math.floor(this._adapter.getYear(decade) / 10) * 10;\n\t\tconst d = this._adapter.forge(year, 1, 1);\n\t\tthis.header = this._factory.forgeDecade(d);\n\t\tthis.items = [...Array(10).keys()].map((i) => {\n\t\t\tconst y = this._adapter.forge(year + i, 1, 1);\n\t\t\treturn this._factory.forgeYear(y);\n\t\t});\n\t\tthis.applyYearlyMods();\n\t}\n\n\tprotected applyDailyMods() {\n\t\tconst month = this.header.date;\n\t\tconst today = this._adapter.forgeToday();\n\t\tconst min = this.min && this._adapter.isValid(this.min) ? this.min : undefined;\n\t\tconst max = this.max && this._adapter.isValid(this.max) ? this.max : undefined;\n\t\tthis.items.forEach((item) => {\n\t\t\tconst day = item.date;\n\t\t\tif (this._adapter.compare(day, month, ELuDateGranularity.month) < 0) {\n\t\t\t\titem.mods.push('is-previousMonth');\n\t\t\t}\n\t\t\tif (this._adapter.compare(day, month, ELuDateGranularity.month) > 0) {\n\t\t\t\titem.mods.push('is-nextMonth');\n\t\t\t}\n\t\t\tif (this._adapter.compare(day, today, ELuDateGranularity.day) === 0) {\n\t\t\t\titem.mods.push('is-today');\n\t\t\t}\n\t\t\tif (this.value && this._adapter.isValid(this.value) && this._adapter.compare(day, this.value, ELuDateGranularity.day) === 0) {\n\t\t\t\titem.mods.push('is-active');\n\t\t\t}\n\t\t\tif (min && this._adapter.compare(day, min, ELuDateGranularity.day) < 0) {\n\t\t\t\titem.isDisabled = true;\n\t\t\t}\n\t\t\tif (max && this._adapter.compare(day, max, ELuDateGranularity.day) > 0) {\n\t\t\t\titem.isDisabled = true;\n\t\t\t}\n\t\t});\n\t}\n\n\tprotected applyMonthlyMods() {\n\t\tconst today = this._adapter.forgeToday();\n\t\tconst min = this.min && this._adapter.isValid(this.min) ? this.min : undefined;\n\t\tconst max = this.max && this._adapter.isValid(this.max) ? this.max : undefined;\n\t\tthis.items.forEach((item) => {\n\t\t\tconst month = item.date;\n\t\t\tif (this._adapter.compare(month, today, ELuDateGranularity.month) === 0) {\n\t\t\t\titem.mods.push('is-today');\n\t\t\t}\n\t\t\tif (this.value && this._adapter.isValid(this.value) && this._adapter.compare(month, this.value, ELuDateGranularity.month) === 0) {\n\t\t\t\titem.mods.push('is-active');\n\t\t\t}\n\t\t\tif (min && this._adapter.compare(month, min, ELuDateGranularity.month) < 0) {\n\t\t\t\titem.isDisabled = true;\n\t\t\t}\n\t\t\tif (max && this._adapter.compare(month, max, ELuDateGranularity.month) > 0) {\n\t\t\t\titem.isDisabled = true;\n\t\t\t}\n\t\t});\n\t}\n\n\tprotected applyYearlyMods() {\n\t\tconst today = this._adapter.forgeToday();\n\t\tconst min = this.min && this._adapter.isValid(this.min) ? this.min : undefined;\n\t\tconst max = this.max && this._adapter.isValid(this.max) ? this.max : undefined;\n\t\tthis.items.forEach((item) => {\n\t\t\tconst year = item.date;\n\t\t\tif (this._adapter.compare(year, today, ELuDateGranularity.year) === 0) {\n\t\t\t\titem.mods.push('is-today');\n\t\t\t}\n\t\t\tif (this.value && this._adapter.isValid(this.value) && this._adapter.compare(year, this.value, ELuDateGranularity.year) === 0) {\n\t\t\t\titem.mods.push('is-active');\n\t\t\t}\n\t\t\tif (min && this._adapter.compare(year, min, ELuDateGranularity.year) < 0) {\n\t\t\t\titem.isDisabled = true;\n\t\t\t}\n\t\t\tif (max && this._adapter.compare(year, max, ELuDateGranularity.year) > 0) {\n\t\t\t\titem.isDisabled = true;\n\t\t\t}\n\t\t});\n\t}\n\n\tselect(item: ICalendarItem<D>) {\n\t\tswitch (this.viewGranularity) {\n\t\t\tcase ELuDateGranularity.year:\n\t\t\t\tthis.selectYear(item);\n\t\t\t\tbreak;\n\t\t\tcase ELuDateGranularity.month:\n\t\t\t\tthis.selectMonth(item);\n\t\t\t\tbreak;\n\t\t\tcase ELuDateGranularity.day:\n\t\t\tdefault:\n\t\t\t\tthis.selectDay(item);\n\t\t\t\tbreak;\n\t\t}\n\t}\n\n\tprotected selectDay(item: ICalendarItem<D>) {\n\t\tconst year = this._adapter.getYear(item.date);\n\t\tconst month = this._adapter.getMonth(item.date);\n\t\tconst d = this._adapter.forge(year, month, 1);\n\t\tthis.header = this._factory.forgeMonth(d);\n\t\tthis.setValue(item.date);\n\t}\n\n\tprotected selectMonth(item: ICalendarItem<D>) {\n\t\tif (this.granularity === ELuDateGranularity.month) {\n\t\t\tthis.setValue(item.date);\n\t\t} else {\n\t\t\tthis.header = item;\n\t\t\tthis.viewGranularity = ELuDateGranularity.day;\n\t\t\tthis.render();\n\t\t}\n\t}\n\n\tprotected selectYear(item: ICalendarItem<D>) {\n\t\tif (this.granularity === ELuDateGranularity.year) {\n\t\t\tthis.setValue(item.date);\n\t\t} else {\n\t\t\tthis.header = item;\n\t\t\tthis.viewGranularity = ELuDateGranularity.month;\n\t\t\tthis.render();\n\t\t}\n\t}\n\n\tprevious() {\n\t\tswitch (this.viewGranularity) {\n\t\t\tcase ELuDateGranularity.year:\n\t\t\t\tthis.previousDecade();\n\t\t\t\tbreak;\n\t\t\tcase ELuDateGranularity.month:\n\t\t\t\tthis.previousYear();\n\t\t\t\tbreak;\n\t\t\tcase ELuDateGranularity.day:\n\t\t\tdefault:\n\t\t\t\tthis.previousMonth();\n\t\t\t\tbreak;\n\t\t}\n\t\tthis.render();\n\t}\n\n\tnext() {\n\t\tswitch (this.viewGranularity) {\n\t\t\tcase ELuDateGranularity.year:\n\t\t\t\tthis.nextDecade();\n\t\t\t\tbreak;\n\t\t\tcase ELuDateGranularity.month:\n\t\t\t\tthis.nextYear();\n\t\t\t\tbreak;\n\t\t\tcase ELuDateGranularity.day:\n\t\t\tdefault:\n\t\t\t\tthis.nextMonth();\n\t\t\t\tbreak;\n\t\t}\n\t\tthis.render();\n\t}\n\n\tincreaseGranularity() {\n\t\tif (this.header.granularity !== ELuDateGranularity.decade) {\n\t\t\tthis.viewGranularity = this.header.granularity;\n\t\t\tthis.render();\n\t\t}\n\t}\n\n\tprotected nextMonth() {\n\t\tconst d = this._adapter.add(this.header.date, 1, ELuDateGranularity.month);\n\t\tthis.header = this._factory.forgeMonth(d);\n\t}\n\n\tprotected nextYear() {\n\t\tconst d = this._adapter.add(this.header.date, 1, ELuDateGranularity.year);\n\t\tthis.header = this._factory.forgeYear(d);\n\t}\n\n\tprotected nextDecade() {\n\t\tconst d = this._adapter.add(this.header.date, 1, ELuDateGranularity.decade);\n\t\tthis.header = this._factory.forgeDecade(d);\n\t}\n\n\tprotected previousMonth() {\n\t\tconst d = this._adapter.add(this.header.date, -1, ELuDateGranularity.month);\n\t\tthis.header = this._factory.forgeMonth(d);\n\t}\n\n\tprotected previousYear() {\n\t\tconst d = this._adapter.add(this.header.date, -1, ELuDateGranularity.year);\n\t\tthis.header = this._factory.forgeYear(d);\n\t}\n\n\tprotected previousDecade() {\n\t\tconst d = this._adapter.add(this.header.date, -1, ELuDateGranularity.decade);\n\t\tthis.header = this._factory.forgeDecade(d);\n\t}\n\n\tvalidate(control: AbstractControl): ValidationErrors | null {\n\t\tconst d = control.value as D;\n\t\tif (!d) {\n\t\t\treturn null;\n\t\t}\n\t\tif (!this._adapter.isValid(d)) {\n\t\t\treturn { date: true };\n\t\t}\n\t\tif (!!this.min && this._adapter.isValid(this.min) && this._adapter.compare(this.min, d, ELuDateGranularity.day) > 0) {\n\t\t\treturn { min: true };\n\t\t}\n\t\tif (!!this.max && this._adapter.isValid(this.max) && this._adapter.compare(this.max, d, ELuDateGranularity.day) < 0) {\n\t\t\treturn { max: true };\n\t\t}\n\t\treturn null;\n\t}\n}\n","<section class=\"calendar\">\n\t<header class=\"calendar-header\">\n\t\t<button type=\"button\" class=\"button mod-onlyIcon mod-ghost mod-S\" (click)=\"previous()\">\n\t\t\t<span aria-hidden=\"true\" class=\"lucca-icon icon-arrowChevronLeft\"></span>\n\t\t\t<span class=\"pr-u-mask\">{{ intl.previous }}</span>\n\t\t</button>\n\t\t<button type=\"button\" class=\"calendar-header-date\" (click)=\"increaseGranularity()\">{{ header.label }}</button>\n\t\t<button type=\"button\" class=\"button mod-onlyIcon mod-ghost mod-S\" (click)=\"next()\">\n\t\t\t<span aria-hidden=\"true\" class=\"lucca-icon icon-arrowChevronRight\"></span>\n\t\t\t<span class=\"pr-u-mask\">{{ intl.next }}</span>\n\t\t</button>\n\t</header>\n\t<section class=\"calendar-labels\" [class]=\"mod\">\n\t\t@for (label of labels; track label) {\n\t\t\t<div class=\"calendar-labels-item\">{{ label }}</div>\n\t\t}\n\t</section>\n\t<section class=\"calendar-grid\" [class]=\"mod\">\n\t\t@for (item of items; track item.id) {\n\t\t\t<button type=\"button\" class=\"calendar-grid-item\" [class]=\"item.mods\" [disabled]=\"item.isDisabled\" (click)=\"select(item)\">\n\t\t\t\t<div class=\"calendar-grid-item-content\">{{ item.label }}</div>\n\t\t\t</button>\n\t\t}\n\t</section>\n</section>\n","import { NgModule } from '@angular/core';\nimport { LuCalendarInputComponent } from './calendar-input.component';\n\n/**\n * @deprecated use `LuCalendarInputComponent` instead\n */\n@NgModule({\n\timports: [LuCalendarInputComponent],\n\texports: [LuCalendarInputComponent],\n})\nexport class LuCalendarInputModule {}\n","export const Translations = {\n\tpt: {\n\t\tplaceholderDay: 'DD/MM/AAAA',\n\t\tplaceholderMonth: 'MM/AAAA',\n\t\tplaceholderYear: 'AAAA',\n\t},\n\tes: {\n\t\tplaceholderDay: 'DD/MM/AAAA',\n\t\tplaceholderMonth: 'MM/AAAA',\n\t\tplaceholderYear: 'AAAA',\n\t},\n\t'nl-BE': {\n\t\tplaceholderDay: 'DD/MM/JJJJ',\n\t\tplaceholderMonth: 'MM/JJJJ',\n\t\tplaceholderYear: 'JJJJ',\n\t},\n\tnl: {\n\t\tplaceholderDay: 'DD/MM/JJJJ',\n\t\tplaceholderMonth: 'MM/JJJJ',\n\t\tplaceholderYear: 'JJJJ',\n\t},\n\tit: {\n\t\tplaceholderDay: 'GG/MM/AAAA',\n\t\tplaceholderMonth: 'MM/AAAA',\n\t\tplaceholderYear: 'AAAA',\n\t},\n\tde: {\n\t\tplaceholderDay: 'TT/MM/JJJJ',\n\t\tplaceholderMonth: 'MM/JJJJ',\n\t\tplaceholderYear: 'JJJJ',\n\t},\n\tfr: {\n\t\tplaceholderDay: 'JJ/MM/AAAA',\n\t\tplaceholderMonth: 'MM/AAAA',\n\t\tplaceholderYear: 'AAAA',\n\t},\n\ten: {\n\t\tplaceholderDay: 'DD/MM/YYYY',\n\t\tplaceholderMonth: 'MM/YYYY',\n\t\tplaceholderYear: 'YYYY',\n\t},\n};\n","import { InjectionToken } from '@angular/core';\nimport { LuTranslation } from '@lucca-front/ng/core';\nimport { Translations } from './translations';\n\nexport const LU_DATE_INPUT_TRANSLATIONS = new InjectionToken('LuDateInputtranslations', {\n\tfactory: () => luDateInputTranslations,\n});\n\nexport interface ILuDateInputLabel {\n\tplaceholderDay: string;\n\tplaceholderMonth: string;\n\tplaceholderYear: string;\n}\n\nexport const luDateInputTranslations: LuTranslation<ILuDateInputLabel> = Translations;\n","import { ChangeDetectorRef, Directive, ElementRef, forwardRef, HostListener, Input, OnInit, Renderer2 } from '@angular/core';\nimport { AbstractControl, NG_VALIDATORS, NG_VALUE_ACCESSOR, ValidationErrors, Validator } from '@angular/forms';\nimport { ALuDateAdapter, ELuDateGranularity, getIntl, LuDateGranularity } from '@lucca-front/ng/core';\nimport { ALuInput } from '@lucca-front/ng/input';\nimport { LU_DATE_INPUT_TRANSLATIONS } from './date-input.translate';\n\n@Directive({\n\tselector: 'input[luDateInput]',\n\tproviders: [\n\t\t{\n\t\t\tprovide: NG_VALUE_ACCESSOR,\n\t\t\tuseExisting: forwardRef(() => LuDateInputDirective),\n\t\t\tmulti: true,\n\t\t},\n\t\t{\n\t\t\tprovide: NG_VALIDATORS,\n\t\t\tuseExisting: LuDateInputDirective,\n\t\t\tmulti: true,\n\t\t},\n\t],\n})\nexport class LuDateInputDirective<D> extends ALuInput<D, HTMLInputElement> implements Validator, OnInit {\n\tprivate _focused = false;\n\t@Input() min?: D;\n\t@Input() max?: D;\n\t@Input() granularity: LuDateGranularity = ELuDateGranularity.day;\n\n\t@Input() override set placeholder(p: string) {\n\t\tthis._elementRef.nativeElement.placeholder = p;\n\t}\n\tprivate _intl = getIntl(LU_DATE_INPUT_TRANSLATIONS);\n\tconstructor(\n\t\t_changeDetectorRef: ChangeDetectorRef,\n\t\t_elementRef: ElementRef<HTMLInputElement>,\n\t\t_renderer: Renderer2,\n\t\tprivate _adapter: ALuDateAdapter<D>,\n\t) {\n\t\tsuper(_changeDetectorRef, _elementRef, _renderer);\n\t}\n\tngOnInit() {\n\t\tswitch (this.granularity) {\n\t\t\tcase ELuDateGranularity.year:\n\t\t\t\tthis.placeholder = this._intl.placeholderYear;\n\t\t\t\tbreak;\n\t\t\tcase ELuDateGranularity.month:\n\t\t\t\tthis.placeholder = this._intl.placeholderMonth;\n\t\t\t\tbreak;\n\t\t\tcase ELuDateGranularity.day:\n\t\t\tdefault:\n\t\t\t\tthis.placeholder = this._intl.placeholderDay;\n\t\t\t\tbreak;\n\t\t}\n\t}\n\tprotected render() {\n\t\tif (this._focused) {\n\t\t\treturn;\n\t\t}\n\t\tlet format: string;\n\t\tswitch (this.granularity) {\n\t\t\tcase ELuDateGranularity.year:\n\t\t\t\tformat = 'y';\n\t\t\t\tbreak;\n\t\t\tcase ELuDateGranularity.month:\n\t\t\t\tformat = 'MM/y';\n\t\t\t\tbreak;\n\t\t\tcase ELuDateGranularity.day:\n\t\t\tdefault:\n\t\t\t\tformat = 'shortDate';\n\t\t\t\tbreak;\n\t\t}\n\t\tconst text = this.value && this._adapter.isValid(this.value) ? this._adapter.format(this.value, format) : '';\n\t\tthis._elementRef.nativeElement.value = text;\n\t}\n\t@HostListener('input', ['$event'])\n\tonInput(event) {\n\t\t// FIXME\n\t\t// eslint-disable-next-line @typescript-eslint/no-unsafe-member-access\n\t\tconst text = event.target.value as string;\n\t\tconst value = this.parse(text);\n\t\tthis.setValue(value);\n\t}\n\tprivate parse(text: string): D {\n\t\tconst date = this._adapter.parse(text, this.granularity);\n\t\treturn date;\n\t}\n\t@HostListener('focus')\n\tonFocus() {\n\t\tthis._focused = true;\n\t}\n\t@HostListener('blur')\n\tonBlur() {\n\t\tthis._focused = false;\n\t\tthis.render();\n\t}\n\tvalidate(control: AbstractControl): ValidationErrors | null {\n\t\tconst d = control.value as D;\n\t\tif (!d) {\n\t\t\treturn null;\n\t\t}\n\t\tif (!this._adapter.isValid(d)) {\n\t\t\treturn { date: true };\n\t\t}\n\t\tif (!!this.min && this._adapter.isValid(this.min) && this._adapter.compare(this.min, d, ELuDateGranularity.day) > 0) {\n\t\t\treturn { min: true };\n\t\t}\n\t\tif (!!this.max && this._adapter.isValid(this.max) && this._adapter.compare(this.max, d, ELuDateGranularity.day) < 0) {\n\t\t\treturn { max: true };\n\t\t}\n\t\treturn null;\n\t}\n}\n","import { NgModule } from '@angular/core';\nimport { LuDateInputDirective } from './date-input.directive';\n\n/**\n * @deprecated use `LuDateInputDirective` instead\n */\n@NgModule({\n\timports: [LuDateInputDirective],\n\texports: [LuDateInputDirective],\n})\nexport class LuDateInputModule {}\n","//FIXME\n/* eslint-disable @angular-eslint/no-output-on-prefix */\n/* eslint-disable @angular-eslint/no-output-native */\nimport { A11yModule } from '@angular/cdk/a11y';\nimport { ChangeDetectionStrategy, Component, EventEmitter, forwardRef, Input, Output, TemplateRef, ViewChild } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { ALuDateAdapter, ELuDateGranularity, LuDateGranularity } from '@lucca-front/ng/core';\nimport { ALuPickerPanel } from '@lucca-front/ng/picker';\nimport { luTransformPopover } from '@lucca-front/ng/popover';\nimport { LuCalendarInputComponent } from '../calendar';\nimport { LuDateInputDirective } from '../input';\n\n@Component({\n\tselector: 'lu-date-picker',\n\ttemplateUrl: './date-picker.component.html',\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\texportAs: 'LuDatePicker',\n\tanimations: [luTransformPopover],\n\timports: [FormsModule, LuCalendarInputComponent, LuDateInputDirective, A11yModule],\n\tproviders: [\n\t\t{\n\t\t\tprovide: ALuPickerPanel,\n\t\t\tuseExisting: forwardRef(() => LuDatePickerComponent),\n\t\t},\n\t],\n})\nexport class LuDatePickerComponent<D = Date> extends ALuPickerPanel<D> {\n\t_value: D;\n\n\t@Input() min?: D;\n\t@Input() max?: D;\n\t@Input() granularity: LuDateGranularity = ELuDateGranularity.day;\n\t@Input() startOn: D = this._adapter.forgeToday();\n\n\t@Output() override close = new EventEmitter<void>();\n\t@Output() override open = new EventEmitter<void>();\n\t@Output() override hovered = new EventEmitter<boolean>();\n\t@Output() override onSelectValue = new EventEmitter<D>();\n\n\t@ViewChild(TemplateRef, { static: true })\n\tset vcTemplateRef(tr: TemplateRef<unknown>) {\n\t\tthis.templateRef = tr;\n\t}\n\n\tconstructor(private _adapter: ALuDateAdapter<D>) {\n\t\tsuper();\n\t}\n\t_emitOpenEvent(): void {\n\t\tthis.open.emit();\n\t}\n\t_emitCloseEvent(): void {\n\t\tthis.close.emit();\n\t}\n\t_emitHoveredEvent(h: boolean): void {\n\t\tthis.hovered.emit(h);\n\t}\n\t_emitSelectValue(val: D) {\n\t\tthis.onSelectValue.emit(val);\n\t}\n\tsetValue(value: D) {\n\t\tthis._value = value;\n\t}\n\t_onCalendar(val: D) {\n\t\tthis._value = val;\n\t\tthis._emitSelectValue(val);\n\t\t// if (!this.multiple) {\n\t\tthis._emitCloseEvent();\n\t\t// }\n\t}\n\t_onInput(val: D) {\n\t\tthis._value = val;\n\t\tthis._emitSelectValue(val);\n\t}\n\t_onEnter() {\n\t\tthis._emitCloseEvent();\n\t}\n\toverride _handleKeydown(event: KeyboardEvent) {\n\t\tswitch (event.key) {\n\t\t\tcase 'Escape':\n\t\t\t\tthis._emitCloseEvent();\n\t\t\t\tevent.preventDefault();\n\t\t\t\tevent.stopPropagation();\n\t\t\t\tbreak;\n\t\t\tcase 'Tab':\n\t\t\t\tthis._emitCloseEvent();\n\t\t\t\tbreak;\n\t\t}\n\t}\n\t// ngAfterViewInit() {\n\t// \tthis._dateInput.nativeElement.focus();\n\t// }\n}\n","<ng-template>\n\t<div\n\t\tclass=\"lu-picker-panel lu-date-picker-panel\"\n\t\trole=\"dialog\"\n\t\t[class]=\"panelClassesMap\"\n\t\t(click)=\"onClick()\"\n\t\t(mouseover)=\"onMouseOver()\"\n\t\t(mouseleave)=\"onMouseLeave()\"\n\t\t(mousedown)=\"onMouseDown()\"\n\t>\n\t\t<div class=\"lu-picker-content\" [class]=\"contentClassesMap\" cdkTrapFocus=\"false\" cdkTrapFocusAutoCapture=\"true\">\n\t\t\t<label class=\"textfield lu-picker-textfield\">\n\t\t\t\t<input\n\t\t\t\t\tluDateInput\n\t\t\t\t\tclass=\"textfield-input\"\n\t\t\t\t\t[ngModel]=\"_value\"\n\t\t\t\t\t(ngModelChange)=\"_onInput($event)\"\n\t\t\t\t\t[ngModelOptions]=\"{ standalone: true }\"\n\t\t\t\t\t(keydown.enter)=\"_onEnter()\"\n\t\t\t\t\t[min]=\"min\"\n\t\t\t\t\t[max]=\"max\"\n\t\t\t\t\t[granularity]=\"granularity\"\n\t\t\t\t/>\n\t\t\t</label>\n\t\t\t<lu-calendar\n\t\t\t\t[ngModel]=\"_value\"\n\t\t\t\t(ngModelChange)=\"_onCalendar($event)\"\n\t\t\t\t[ngModelOptions]=\"{ standalone: true }\"\n\t\t\t\t[min]=\"min\"\n\t\t\t\t[max]=\"max\"\n\t\t\t\t[granularity]=\"granularity\"\n\t\t\t\t[startOn]=\"startOn\"\n\t\t\t/>\n\t\t</div>\n\t</div>\n</ng-template>\n","import { NgModule } from '@angular/core';\nimport { LuDatePickerComponent } from './date-picker.component';\n\n/**\n * @deprecated use `LuDatePickerComponent` instead\n */\n@NgModule({\n\timports: [LuDatePickerComponent],\n\texports: [LuDatePickerComponent],\n})\nexport class LuDatePickerModule {}\n","export const Translations = {\n\tpt: {\n\t\tplaceholderDay: 'DD/MM/AAAA',\n\t\tplaceholderMonth: 'MM/AAAA',\n\t\tplaceholderYear: 'AAAA',\n\t},\n\tes: {\n\t\tplaceholderDay: 'DD/MM/AAAA',\n\t\tplaceholderMonth: 'MM/AAAA',\n\t\tplaceholderYear: 'AAAA',\n\t},\n\t'nl-BE': {\n\t\tplaceholderDay: 'DD/MM/JJJJ',\n\t\tplaceholderMonth: 'MM/JJJJ',\n\t\tplaceholderYear: 'JJJJ',\n\t},\n\tnl: {\n\t\tplaceholderDay: 'DD/MM/JJJJ',\n\t\tplaceholderMonth: 'MM/JJJJ',\n\t\tplaceholderYear: 'JJJJ',\n\t},\n\tit: {\n\t\tplaceholderDay: 'GG/MM/AAAA',\n\t\tplaceholderMonth: 'MM/AAAA',\n\t\tplaceholderYear: 'AAAA',\n\t},\n\tde: {\n\t\tplaceholderDay: 'TT/MM/JJJJ',\n\t\tplaceholderMonth: 'MM/JJJJ',\n\t\tplaceholderYear: 'JJJJ',\n\t},\n\tfr: {\n\t\tplaceholderDay: 'JJ/MM/AAAA',\n\t\tplaceholderMonth: 'MM/AAAA',\n\t\tplaceholderYear: 'AAAA',\n\t},\n\ten: {\n\t\tplaceholderDay: 'DD/MM/YYYY',\n\t\tplaceholderMonth: 'MM/YYYY',\n\t\tplaceholderYear: 'YYYY',\n\t},\n};\n","import { InjectionToken } from '@angular/core';\nimport { LuTranslation } from '@lucca-front/ng/core';\nimport { Translations } from './translations';\n\nexport const LU_DATE_SELECT_INPUT_TRANSLATIONS = new InjectionToken('LuDateSelectInputtranslations', {\n\tfactory: () => luDateSelectInputTranslations,\n});\n\nexport interface ILuDateSelectInputLabel {\n\tplaceholderDay: string;\n\tplaceholderMonth: string;\n\tplaceholderYear: string;\n}\n\nexport const luDateSelectInputTranslations: LuTranslation<ILuDateSelectInputLabel> = Translations;\n","import { Overlay, OverlayModule } from '@angular/cdk/overlay';\nimport { AfterViewInit, ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, Input, Renderer2, ViewContainerRef, forwardRef } from '@angular/core';\nimport { AbstractControl, ControlValueAccessor, NG_VALIDATORS, NG_VALUE_ACCESSOR, ValidationErrors, Validator } from '@angular/forms';\nimport { ClearComponent } from '@lucca-front/ng/clear';\nimport { ALuDateAdapter, ELuDateGranularity, LuDateGranularity, getIntl } from '@lucca-front/ng/core';\nimport { LuInputDirective, LuInputDisplayerDirective } from '@lucca-front/ng/input';\nimport { ILuInputWithPicker } from '@lucca-front/ng/picker';\nimport { ALuSelectInputComponent } from '@lucca-front/ng/select';\nimport { LuDateAdapterPipe } from '../adapter';\nimport { LuDatePickerComponent } from '../picker';\nimport { LU_DATE_SELECT_INPUT_TRANSLATIONS } from './date-select-input.translate';\n\n@Component({\n\tselector: 'lu-date-select',\n\ttemplateUrl: './date-select-input.component.html',\n\tstyleUrl: './date-select-input.component.scss',\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\timports: [LuDateAdapterPipe, LuDatePickerComponent, LuInputDirective, OverlayModule, ClearComponent, LuInputDisplayerDirective],\n\tproviders: [\n\t\t{\n\t\t\tprovide: NG_VALUE_ACCESSOR,\n\t\t\tuseExisting: forwardRef(() => LuDateSelectInputComponent),\n\t\t\tmulti: true,\n\t\t},\n\t\t{\n\t\t\tprovide: NG_VALIDATORS,\n\t\t\tuseExisting: LuDateSelectInputComponent,\n\t\t\tmulti: true,\n\t\t},\n\t],\n})\nexport class LuDateSelectInputComponent<D> extends ALuSelectInputComponent<D> implements ControlValueAccessor, ILuInputWithPicker<D>, AfterViewInit, Validator {\n\t@Input() min?: D;\n\t@Input() max?: D;\n\t@Input() granularity: LuDateGranularity = ELuDateGranularity.day;\n\t@Input('placeholder') override set inputPlaceholder(p: string) {\n\t\tthis._placeholder = p;\n\t}\n\t@Input() hideClearer = false;\n\tprotected _startOn: D = this._adapter.forgeToday();\n\t@Input() set startOn(s: D) {\n\t\tthis._startOn = s ?? this._adapter.forgeToday();\n\t}\n\tget startOn(): D {\n\t\treturn this._startOn;\n\t}\n\n\tget format(): string {\n\t\tswitch (this.granularity) {\n\t\t\tcase ELuDateGranularity.year:\n\t\t\t\treturn 'y';\n\t\t\tcase ELuDateGranularity.month:\n\t\t\t\treturn 'MM/y';\n\t\t\tcase ELuDateGranularity.day:\n\t\t\tdefault:\n\t\t\t\treturn 'shortDate';\n\t\t}\n\t}\n\tprivate _intl = getIntl(LU_DATE_SELECT_INPUT_TRANSLATIONS);\n\tconstructor(\n\t\tprotected override _changeDetectorRef: ChangeDetectorRef,\n\t\tprotected override _overlay: Overlay,\n\t\tprotected override _elementRef: ElementRef<HTMLElement>,\n\t\tprotected override _viewContainerRef: ViewContainerRef,\n\t\tprotected override _renderer: Renderer2,\n\t\tprivate _adapter: ALuDateAdapter<D>,\n\t) {\n\t\tsuper(_changeDetectorRef, _overlay, _elementRef, _viewContainerRef, _renderer);\n\t\tthis.overlapInput = true;\n\t}\n\n\tvalidate(control: AbstractControl): ValidationErrors | null {\n\t\tconst d = control.value as D;\n\t\tif (!d) {\n\t\t\treturn null;\n\t\t}\n\t\tif (!this._adapter.isValid(d)) {\n\t\t\treturn { date: true };\n\t\t}\n\t\tif (!!this.min && this._adapter.isValid(this.min) && this._adapter.compare(this.min, d, ELuDateGranularity.day) > 0) {\n\t\t\treturn { min: true };\n\t\t}\n\t\tif (!!this.max && this._adapter.isValid(this.max) && this._adapter.compare(this.max, d, ELuDateGranularity.day) < 0) {\n\t\t\treturn { max: true };\n\t\t}\n\t\treturn null;\n\t}\n}\n","<div class=\"lu-select-placeholder\">{{ placeholder }}</div>\n<div class=\"lu-select-value\">\n\t<div class=\"lu-select-display-wrapper notranslate\">\n\t\t<ng-container #display />\n\t</div>\n</div>\n<div class=\"lu-select-suffix\">\n\t<lu-clear [attr.hidden]=\"hideClearer ? 'hidden' : null\" />\n</div>\n<ng-template luDisplayer let-value> {{ value | luDate: format }} </ng-template>\n<lu-date-picker [min]=\"min\" [max]=\"max\" [granularity]=\"granularity\" [startOn]=\"startOn\" />\n","import { NgModule } from '@angular/core';\nimport { LuDateSelectInputComponent } from './date-select-input.component';\n\n/**\n * @deprecated use `LuDateSelectInputComponent` instead\n */\n@NgModule({\n\timports: [LuDateSelectInputComponent],\n\texports: [LuDateSelectInputComponent],\n})\nexport class LuDateSelectInputModule {}\n","import { NgModule } from '@angular/core';\nimport { LuDateAdapterPipe } from './adapter/index';\nimport { LuCalendarInputComponent } from './calendar/index';\nimport { LuDateInputDirective } from './input/index';\nimport { LuDatePickerComponent } from './picker/index';\nimport { LuDateSelectInputComponent } from './select/index';\n\n/**\n * @deprecated use `LuCalendarInputComponent, LuDatePickerComponent, LuDateInputDirective, LuDateAdapterPipe, LuDateSelectInputComponent` instead\n */\n@NgModule({\n\timports: [LuCalendarInputComponent, LuDatePickerComponent, LuDateInputDirective, LuDateAdapterPipe, LuDateSelectInputComponent],\n\texports: [LuCalendarInputComponent, LuDatePickerComponent, LuDateInputDirective, LuDateAdapterPipe, LuDateSelectInputComponent],\n})\nexport class LuDateModule {}\n","import { Injectable, LOCALE_ID, inject } from '@angular/core';\nimport { LuRelativeTime } from './humanize.model';\n\n@Injectable()\nexport class LuHumanizeDateFormatter {\n\t#intlRelativeTimeFormat = new Intl.RelativeTimeFormat(inject(LOCALE_ID));\n\n\tformat(relativeTime: LuRelativeTime): string {\n\t\treturn this.#intlRelativeTimeFormat.format(relativeTime.value, relativeTime.unit);\n\t}\n}\n","export const luRelativeTimeFormatUnit = ['second', 'minute', 'hour', 'day', 'week', 'month', 'year'] as const;\nexport type LuRelativeTimeFormatUnit = (typeof luRelativeTimeFormatUnit)[number];\n\nexport interface LuRelativeTime {\n\t/**\n\t * The relevant unit for the relative time.\n\t */\n\tunit: LuRelativeTimeFormatUnit;\n\t/**\n\t * The integer value of the relative time.\n\t * Negative values are used for past dates.\n\t */\n\tvalue: number;\n}\n","import { differenceInDays, differenceInHours, differenceInMinutes, differenceInMonths, differenceInSeconds, differenceInWeeks, differenceInYears } from 'date-fns';\nimport { Observable } from 'rxjs';\nimport { LuRelativeTime, LuRelativeTimeFormatUnit, luRelativeTimeFormatUnit } from './humanize.model';\n\nconst getDifferenceByUnit: Record<LuRelativeTimeFormatUnit, (date: number | Date, reference: number | Date) => number> = {\n\tsecond: differenceInSeconds,\n\tminute: differenceInMinutes,\n\thour: differenceInHours,\n\tday: differenceInDays,\n\tweek: differenceInWeeks,\n\tmonth: differenceInMonths,\n\tyear: differenceInYears,\n};\n\nexport function getRelativeTime(date: number | Date, reference: number | Date, allowedUnits: readonly LuRelativeTimeFormatUnit[] = luRelativeTimeFormatUnit): LuRelativeTime {\n\tif (!allowedUnits.length) {\n\t\tthrow new Error('[getRelativeTime] Pass at least one unit');\n\t}\n\n\tfor (let i = 0; i < allowedUnits.length; i++) {\n\t\tconst unit = allowedUnits[i];\n\t\tconst isLastUnit = i === allowedUnits.length - 1;\n\n\t\tif (isLastUnit) {\n\t\t\treturn { unit, value: getDifferenceByUnit[unit](date, reference) };\n\t\t}\n\n\t\tconst nextUnit = allowedUnits[i + 1];\n\t\tconst diff = getDifferenceByUnit[nextUnit](date, reference);\n\n\t\tif (Math.abs(diff) < 1) {\n\t\t\treturn { unit, value: getDifferenceByUnit[unit](date, reference) };\n\t\t}\n\t}\n\n\t// Should never happen as the for loop should always return\n\tthrow new Error('[getRelativeTime] No unit found for the given date');\n}\n\nconst nextRelativeTimeTickInMsByUnit: Record<LuRelativeTimeFormatUnit, number> = {\n\tsecond: 1_000,\n\tminute: 60_000,\n\thour: 60 * 60_000,\n\tday: 24 * 60 * 60_000,\n\tweek: 24 * 60 * 60_000,\n\tmonth: 24 * 60 * 60_000,\n\tyear: 24 * 60 * 60_000,\n};\n\nconst previousRelativeTimeUnitByUnit: Record<LuRelativeTimeFormatUnit, LuRelativeTimeFormatUnit | null> = {\n\tsecond: null,\n\tminute: 'second',\n\thour: 'minute',\n\tday: 'hour',\n\tweek: 'day',\n\tmonth: 'week',\n\tyear: 'month',\n};\n\nexport function relativeTimeTimer(date: Date | number, allowedUnits?: readonly LuRelativeTimeFormatUnit[]): Observable<LuRelativeTime> {\n\treturn new Observable<LuRelativeTime>((subscriber) => {\n\t\tlet timeoutId: ReturnType<typeof setTimeout> | null = null;\n\t\tconst dateAsNumber = typeof date === 'number' ? date : date.getTime();\n\n\t\tfunction next() {\n\t\t\tconst now = Date.now();\n\t\t\tconst relativeTime = getRelativeTime(date, now, allowedUnits);\n\t\t\tsubscriber.next(relativeTime);\n\n\t\t\tconst unit =\n\t\t\t\trelativeTime.value === 1 && relativeTime.unit !== 'second'\n\t\t\t\t\t? // We a future date come closer, we need to switch to the previous unit\n\t\t\t\t\t\t// For example, if we are at 1 minutes, we should switch to second to avoid displaying '1 minute' during '1 minute' (we want to wait one second to display '59 seconds')\n\t\t\t\t\t\tpreviousRelativeTimeUnitByUnit[relativeTime.unit]\n\t\t\t\t\t: relativeTime.unit;\n\n\t\t\tconst delta = now - dateAsNumber;\n\t\t\tconst nextTick = nextRelativeTimeTickInMsByUnit[unit];\n\n\t\t\t// setTimeout is not an exact science, so we need to adjust the next tick to avoid drift over time\n\t\t\tconst shift = Math.abs(delta) % nextTick;\n\t\t\tconst nextWait = relativeTime.value !== 1 ? nextTick - shift : 1000;\n\n\t\t\ttimeoutId = setTimeout(next, nextWait);\n\t\t}\n\n\t\t// Trigger the recursive loop\n\t\tnext();\n\n\t\treturn () => {\n\t\t\tif (timeoutId) {\n\t\t\t\tclearTimeout(timeoutId);\n\t\t\t}\n\t\t};\n\t});\n}\n","import { Pipe, PipeTransform, inject } from '@angular/core';\nimport { Observable, map } from 'rxjs';\nimport { LuHumanizeDateFormatter } from './humanize.formatter';\nimport { LuRelativeTimeFormatUnit } from './humanize.model';\nimport { relativeTimeTimer } from './humanize.utils';\n\n@Pipe({\n\tname: 'luHumanizeDate',\n})\nexport class LuHumanizeDatePipe implements PipeTransform {\n\t#formatter = inject(LuHumanizeDateFormatter, { optional: true }) ?? new LuHumanizeDateFormatter();\n\n\ttransform(value: Date | string | number, allowedUnits?: readonly LuRelativeTimeFormatUnit[]): Observable<string> {\n\t\treturn relativeTimeTimer(new Date(value), allowedUnits).pipe(map((relativeTime) => this.#formatter.format(relativeTime)));\n\t}\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["Translations","i1.LuCalendarItemFactory","i2","i1"],"mappings":";;;;;;;;;;;;;;;;;;;MAOa,iBAAiB,CAAA;AAC7B,IAAA,WAAA,CAAoB,QAA2B,EAAA;QAA3B,IAAQ,CAAA,QAAA,GAAR,QAAQ;;AAC5B,IAAA,SAAS,CAAC,CAAI,EAAE,MAAM,GAAG,YAAY,EAAA;QACpC,IAAI,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;YAClC,OAAO,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,EAAE,MAAM,CAAC;;AAEvC,QAAA,OAAO,EAAE;;8GANE,iBAAiB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,cAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,IAAA,EAAA,CAAA,CAAA;4GAAjB,iBAAiB,EAAA,YAAA,EAAA,IAAA,EAAA,IAAA,EAAA,QAAA,EAAA,CAAA,CAAA;;2FAAjB,iBAAiB,EAAA,UAAA,EAAA,CAAA;kBAJ7B,IAAI;AAAC,YAAA,IAAA,EAAA,CAAA;AACL,oBAAA,IAAI,EAAE,QAAQ;AACd,oBAAA,IAAI,EAAE,IAAI;AACV,iBAAA;;;ACHD;;AAEG;MAKU,mBAAmB,CAAA;8GAAnB,mBAAmB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;+GAAnB,mBAAmB,EAAA,OAAA,EAAA,CAHrB,iBAAiB,CAAA,EAAA,OAAA,EAAA,CACjB,iBAAiB,CAAA,EAAA,CAAA,CAAA;+GAEf,mBAAmB,EAAA,CAAA,CAAA;;2FAAnB,mBAAmB,EAAA,UAAA,EAAA,CAAA;kBAJ/B,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;oBACT,OAAO,EAAE,CAAC,iBAAiB,CAAC;oBAC5B,OAAO,EAAE,CAAC,iBAAiB,CAAC;AAC5B,iBAAA;;;ACTM,MAAMA,cAAY,GAAG;AAC3B,IAAA,EAAE,EAAE;AACH,QAAA,QAAQ,EAAE,UAAU;AACpB,QAAA,IAAI,EAAE,MAAM;AACZ,KAAA;AACD,IAAA,EAAE,EAAE;AACH,QAAA,QAAQ,EAAE,WAAW;AACrB,QAAA,IAAI,EAAE,QAAQ;AACd,KAAA;AACD,IAAA,EAAE,EAAE;AACH,QAAA,QAAQ,EAAE,WAAW;AACrB,QAAA,IAAI,EAAE,SAAS;AACf,KAAA;AACD,IAAA,EAAE,EAAE;AACH,QAAA,QAAQ,EAAE,YAAY;AACtB,QAAA,IAAI,EAAE,UAAU;AAChB,KAAA;AACD,IAAA,EAAE,EAAE;AACH,QAAA,QAAQ,EAAE,QAAQ;AAClB,QAAA,IAAI,EAAE,UAAU;AAChB,KAAA;AACD,IAAA,OAAO,EAAE;AACR,QAAA,QAAQ,EAAE,EAAE;AACZ,QAAA,IAAI,EAAE,EAAE;AACR,KAAA;AACD,IAAA,EAAE,EAAE;AACH,QAAA,QAAQ,EAAE,UAAU;AACpB,QAAA,IAAI,EAAE,WAAW;AACjB,KAAA;AACD,IAAA,EAAE,EAAE;AACH,QAAA,QAAQ,EAAE,UAAU;AACpB,QAAA,IAAI,EAAE,UAAU;AAChB,KAAA;CACD;;AC7BM,MAAM,6BAA6B,GAAG,IAAI,cAAc,CAAC,6BAA6B,EAAE;AAC9F,IAAA,OAAO,EAAE,MAAM,2BAA2B;AAC1C,CAAA,CAAC;AAOK,MAAM,2BAA2B,GAAwCA,cAAY;;MCVtE,aAAa,CAAA;AAAnC,IAAA,WAAA,GAAA;QAKC,IAAI,CAAA,IAAA,GAAa,EAAE;QACnB,IAAU,CAAA,UAAA,GAAG,KAAK;;AALlB,IAAA,IAAI,EAAE,GAAA;AACL,QAAA,OAAO,CAAG,EAAA,IAAI,CAAC,WAAW,CAAI,CAAA,EAAA,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAA,CAAE;;AAOrD;AACK,MAAO,OAAW,SAAQ,aAAgB,CAAA;IAE/C,WACiB,CAAA,IAAO,EACP,KAAa,EAAA;AAE7B,QAAA,KAAK,EAAE;QAHS,IAAI,CAAA,IAAA,GAAJ,IAAI;QACJ,IAAK,CAAA,KAAA,GAAL,KAAK;AAHJ,QAAA,IAAA,CAAA,WAAW,GAAG,kBAAkB,CAAC,GAAG;;AAOtD;AACK,MAAO,SAAa,SAAQ,aAAgB,CAAA;IAEjD,WACiB,CAAA,IAAO,EACP,KAAa,EAAA;AAE7B,QAAA,KAAK,EAAE;QAHS,IAAI,CAAA,IAAA,GAAJ,IAAI;QACJ,IAAK,CAAA,KAAA,GAAL,KAAK;AAHJ,QAAA,IAAA,CAAA,WAAW,GAAG,kBAAkB,CAAC,KAAK;;AAOxD;AACK,MAAO,QAAY,SAAQ,aAAgB,CAAA;IAEhD,WACiB,CAAA,IAAO,EACP,KAAa,EAAA;AAE7B,QAAA,KAAK,EAAE;QAHS,IAAI,CAAA,IAAA,GAAJ,IAAI;QACJ,IAAK,CAAA,KAAA,GAAL,KAAK;AAHJ,QAAA,IAAA,CAAA,WAAW,GAAG,kBAAkB,CAAC,IAAI;;AAOvD;AACK,MAAO,UAAc,SAAQ,aAAgB,CAAA;IAElD,WACiB,CAAA,IAAO,EACP,KAAa,EAAA;AAE7B,QAAA,KAAK,EAAE;QAHS,IAAI,CAAA,IAAA,GAAJ,IAAI;QACJ,IAAK,CAAA,KAAA,GAAL,KAAK;AAHJ,QAAA,IAAA,CAAA,WAAW,GAAG,kBAAkB,CAAC,MAAM;;AAOzD;;MC3CY,qBAAqB,CAAA;AACjC,IAAA,WAAA,CAAoB,QAA2B,EAAA;QAA3B,IAAQ,CAAA,QAAA,GAAR,QAAQ;;AAC5B,IAAA,QAAQ,CAAC,CAAI,EAAE,MAAM,GAAG,GAAG,EAAA;QAC1B,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC;AACnC,QAAA,OAAO,IAAI,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;;AAE7D,IAAA,UAAU,CAAC,CAAI,EAAE,MAAM,GAAG,KAAK,EAAA;QAC9B,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC;QACrC,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC;AACvC,QAAA,MAAM,UAAU,GAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;AACtD,QAAA,OAAO,IAAI,SAAS,CAAC,UAAU,EAAE,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;;AAE3E,IAAA,SAAS,CAAC,CAAI,EAAE,MAAM,GAAG,GAAG,EAAA;QAC3B,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC;AACrC,QAAA,MAAM,SAAS,GAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC;AACjD,QAAA,OAAO,IAAI,QAAQ,CAAC,SAAS,EAAE,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;;AAExE,IAAA,WAAW,CAAC,CAAI,EAAE,MAAM,GAAG,GAAG,EAAA;QAC7B,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC;QACrC,MAAM,WAAW,GAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;QACzE,MAAM,SAAS,GAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,GAAG,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;QAC3E,MAAM,KAAK,GAAG,CAAA,EAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,WAAW,EAAE,MAAM,CAAC,CAAM,GAAA,EAAA,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,CAAA,CAAE;AACzG,QAAA,OAAO,IAAI,UAAU,CAAC,WAAW,EAAE,KAAK,CAAC;;8GAtB9B,qBAAqB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,cAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;kHAArB,qBAAqB,EAAA,CAAA,CAAA;;2FAArB,qBAAqB,EAAA,UAAA,EAAA,CAAA;kBADjC;;;ACyBK,MAAO,wBAA4B,SAAQ,QAAW,CAAA;AAW3D,IAAA,IAAI,GAAG,GAAA;AACN,QAAA,QAAQ,IAAI,CAAC,eAAe;YAC3B,KAAK,kBAAkB,CAAC,IAAI;AAC3B,gBAAA,OAAO,gBAAgB;YACxB,KAAK,kBAAkB,CAAC,KAAK;AAC5B,gBAAA,OAAO,iBAAiB;YACzB,KAAK,kBAAkB,CAAC,GAAG;AAC3B,YAAA;AACC,gBAAA,OAAO,eAAe;;;IAMzB,WACC,CAAA,kBAAqC,EACrC,WAAoC,EACpC,SAAoB,EACO,OAAe,EAClC,QAAkC,EAClC,QAA2B,EAAA;AAEnC,QAAA,KAAK,CAAC,kBAAkB,EAAE,WAAW,EAAE,SAAS,CAAC;QAJtB,IAAO,CAAA,OAAA,GAAP,OAAO;QAC1B,IAAQ,CAAA,QAAA,GAAR,QAAQ;QACR,IAAQ,CAAA,QAAA,GAAR,QAAQ;AA9BjB,QAAA,IAAA,CAAA,IAAI,GAAG,OAAO,CAAC,6BAA6B,CAAC;AAIpC,QAAA,IAAA,CAAA,WAAW,GAAsB,kBAAkB,CAAC,GAAG;AACvD,QAAA,IAAA,CAAA,OAAO,GAAM,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE;QAIhD,IAAK,CAAA,KAAA,GAAuB,EAAE;;QAc9B,IAAM,CAAA,MAAA,GAAa,EAAE;;IAWrB,QAAQ,GAAA;AACP,QAAA,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,WAAW;QACvC,IAAI,CAAC,aAAa,EAAE;;AAEZ,IAAA,UAAU,CAAC,KAAS,EAAA;AAC5B,QAAA,MAAM,IAAI,GAAG,KAAK,IAAI,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,OAAO;QAC9F,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC;AAC5C,QAAA,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC;;IAExB,aAAa,GAAA;QACZ,IAAI,CAAC,MAAM,GAAG,CAAC,GAAG,iBAAiB,CAAC,IAAI,CAAC,OAAO,EAAE,SAAS,CAAC,UAAU,EAAE,gBAAgB,CAAC,WAAW,CAAC,CAAC;QACtG,IAAI,uBAAuB,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;AAChD,YAAA,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;;;IAG7B,MAAM,GAAA;AACf,QAAA,QAAQ,IAAI,CAAC,eAAe;YAC3B,KAAK,kBAAkB,CAAC,IAAI;gBAC3B,IAAI,CAAC,gBAAgB,EAAE;gBACvB;YACD,KAAK,kBAAkB,CAAC,KAAK;gBAC5B,IAAI,CAAC,iBAAiB,EAAE;gBACxB;YACD,KAAK,kBAAkB,CAAC,GAAG;AAC3B,YAAA;gBACC,IAAI,CAAC,eAAe,EAAE;gBACtB;;;AAIO,IAAA,eAAe,CAAC,KAAW,GAAA,IAAI,CAAC,MAAM,CAAC,IAAI,EAAA;AACpD,QAAA,IAAI,CAAC,KAAK,GAAG,EAAE;AACf,QAAA,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QACjG,IAAI,KAAK,GAAG,CAAC;AACb,QAAA,MAAM,gBAAgB,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,uBAAuB,CAAC,IAAI,CAAC,OAAO,CAAC;AAC9F,QAAA,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,KAAK,EAAE,QAAQ,CAAC;QACvD,IAAI,CAAC,gBAAgB,EAAE;YACtB,MAAM,MAAM,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,uBAAuB,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC;AAC5F,YAAA,KAAK,GAAG,CAAC,CAAC,GAAG,MAAM;;;QAGpB,IAAI,MAAM,GAAG,KAAK;QAClB,IAAI,WAAW,GAAG,KAAK;AACvB,QAAA,GAAG;AACF,YAAA,MAAM,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,kBAAkB,CAAC,GAAG,CAAC;YACnE,MAAM,GAAG,GAAG,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC;AACrC,YAAA,WAAW,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,EAAE,KAAK,EAAE,kBAAkB,CAAC,KAAK,CAAC,GAAG,CAAC;AAC3E,YAAA,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,uBAAuB,CAAC,IAAI,CAAC,OAAO,CAAC;AAC1E,YAAA,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC;AACrB,SAAC,QAAQ,CAAC,MAAM,IAAI,CAAC,WAAW;QAChC,IAAI,CAAC,cAAc,EAAE;;AAGZ,IAAA,iBAAiB,CAAC,IAAU,GAAA,IAAI,CAAC,MAAM,CAAC,IAAI,EAAA;QACrD,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,CAAC;AAC3C,QAAA,IAAI,CAAC,KAAK,GAAG,CAAC,GAAG,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAI;YAC5C,MAAM,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YACpE,OAAO,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC;AACnC,SAAC,CAAC;QACF,IAAI,CAAC,gBAAgB,EAAE;;AAGd,IAAA,gBAAgB,CAAC,MAAY,GAAA,IAAI,CAAC,MAAM,CAAC,IAAI,EAAA;AACtD,QAAA,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE;AAChE,QAAA,MAAM,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC;QACzC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC;AAC1C,QAAA,IAAI,CAAC,KAAK,GAAG,CAAC,GAAG,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAI;AAC5C,YAAA,MAAM,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;YAC7C,OAAO,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC;AAClC,SAAC,CAAC;QACF,IAAI,CAAC,eAAe,EAAE;;IAGb,cAAc,GAAA;AACvB,QAAA,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI;QAC9B,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE;QACxC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,IAAI,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,GAAG,GAAG,SAAS;QAC9E,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,IAAI,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,GAAG,GAAG,SAAS;QAC9E,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,KAAI;AAC3B,YAAA,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI;AACrB,YAAA,IAAI,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,EAAE,KAAK,EAAE,kBAAkB,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE;AACpE,gBAAA,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC;;AAEnC,YAAA,IAAI,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,EAAE,KAAK,EAAE,kBAAkB,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE;AACpE,gBAAA,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC;;AAE/B,YAAA,IAAI,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,EAAE,KAAK,EAAE,kBAAkB,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE;AACpE,gBAAA,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC;;AAE3B,YAAA,IAAI,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,EAAE,IAAI,CAAC,KAAK,EAAE,kBAAkB,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE;AAC5H,gBAAA,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC;;AAE5B,YAAA,IAAI,GAAG,IAAI,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,EAAE,kBAAkB,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;AACvE,gBAAA,IAAI,CAAC,UAAU,GAAG,IAAI;;AAEvB,YAAA,IAAI,GAAG,IAAI,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,EAAE,kBAAkB,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;AACvE,gBAAA,IAAI,CAAC,UAAU,GAAG,IAAI;;AAExB,SAAC,CAAC;;IAGO,gBAAgB,GAAA;QACzB,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE;QACxC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,IAAI,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,GAAG,GAAG,SAAS;QAC9E,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,IAAI,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,GAAG,GAAG,SAAS;QAC9E,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,KAAI;AAC3B,YAAA,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI;AACvB,YAAA,IAAI,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,EAAE,KAAK,EAAE,kBAAkB,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE;AACxE,gBAAA,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC;;AAE3B,YAAA,IAAI,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,kBAAkB,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE;AAChI,gBAAA,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC;;AAE5B,YAAA,IAAI,GAAG,IAAI,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,EAAE,kBAAkB,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE;AAC3E,gBAAA,IAAI,CAAC,UAAU,GAAG,IAAI;;AAEvB,YAAA,IAAI,GAAG,IAAI,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,EAAE,kBAAkB,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE;AAC3E,gBAAA,IAAI,CAAC,UAAU,GAAG,IAAI;;AAExB,SAAC,CAAC;;IAGO,eAAe,GAAA;QACxB,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE;QACxC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,IAAI,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,GAAG,GAAG,SAAS;QAC9E,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,IAAI,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,GAAG,GAAG,SAAS;QAC9E,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,KAAI;AAC3B,YAAA,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI;AACtB,YAAA,IAAI,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,EAAE,kBAAkB,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;AACtE,gBAAA,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC;;AAE3B,YAAA,IAAI,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,EAAE,kBAAkB,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;AAC9H,gBAAA,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC;;AAE5B,YAAA,IAAI,GAAG,IAAI,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,EAAE,kBAAkB,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE;AACzE,gBAAA,IAAI,CAAC,UAAU,GAAG,IAAI;;AAEvB,YAAA,IAAI,GAAG,IAAI,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,EAAE,kBAAkB,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE;AACzE,gBAAA,IAAI,CAAC,UAAU,GAAG,IAAI;;AAExB,SAAC,CAAC;;AAGH,IAAA,MAAM,CAAC,IAAsB,EAAA;AAC5B,QAAA,QAAQ,IAAI,CAAC,eAAe;YAC3B,KAAK,kBAAkB,CAAC,IAAI;AAC3B,gBAAA,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC;gBACrB;YACD,KAAK,kBAAkB,CAAC,KAAK;AAC5B,gBAAA,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC;gBACtB;YACD,KAAK,kBAAkB,CAAC,GAAG;AAC3B,YAAA;AACC,gBAAA,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;gBACpB;;;AAIO,IAAA,SAAS,CAAC,IAAsB,EAAA;AACzC,QAAA,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC;AAC7C,QAAA,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC;AAC/C,QAAA,MAAM,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;QAC7C,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC;AACzC,QAAA,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC;;AAGf,IAAA,WAAW,CAAC,IAAsB,EAAA;QAC3C,IAAI,IAAI,CAAC,WAAW,KAAK,kBAAkB,CAAC,KAAK,EAAE;AAClD,YAAA,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC;;aAClB;AACN,YAAA,IAAI,CAAC,MAAM,GAAG,IAAI;AAClB,YAAA,IAAI,CAAC,eAAe,GAAG,kBAAkB,CAAC,GAAG;YAC7C,IAAI,CAAC,MAAM,EAAE;;;AAIL,IAAA,UAAU,CAAC,IAAsB,EAAA;QAC1C,IAAI,IAAI,CAAC,WAAW,KAAK,kBAAkB,CAAC,IAAI,EAAE;AACjD,YAAA,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC;;aAClB;AACN,YAAA,IAAI,CAAC,MAAM,GAAG,IAAI;AAClB,YAAA,IAAI,CAAC,eAAe,GAAG,kBAAkB,CAAC,KAAK;YAC/C,IAAI,CAAC,MAAM,EAAE;;;IAIf,QAAQ,GAAA;AACP,QAAA,QAAQ,IAAI,CAAC,eAAe;YAC3B,KAAK,kBAAkB,CAAC,IAAI;gBAC3B,IAAI,CAAC,cAAc,EAAE;gBACrB;YACD,KAAK,kBAAkB,CAAC,KAAK;gBAC5B,IAAI,CAAC,YAAY,EAAE;gBACnB;YACD,KAAK,kBAAkB,CAAC,GAAG;AAC3B,YAAA;gBACC,IAAI,CAAC,aAAa,EAAE;gBACpB;;QAEF,IAAI,CAAC,MAAM,EAAE;;IAGd,IAAI,GAAA;AACH,QAAA,QAAQ,IAAI,CAAC,eAAe;YAC3B,KAAK,kBAAkB,CAAC,IAAI;gBAC3B,IAAI,CAAC,UAAU,EAAE;gBACjB;YACD,KAAK,kBAAkB,CAAC,KAAK;gBAC5B,IAAI,CAAC,QAAQ,EAAE;gBACf;YACD,KAAK,kBAAkB,CAAC,GAAG;AAC3B,YAAA;gBACC,IAAI,CAAC,SAAS,EAAE;gBAChB;;QAEF,IAAI,CAAC,MAAM,EAAE;;IAGd,mBAAmB,GAAA;QAClB,IAAI,IAAI,CAAC,MAAM,CAAC,WAAW,KAAK,kBAAkB,CAAC,MAAM,EAAE;YAC1D,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,MAAM,CAAC,WAAW;YAC9C,IAAI,CAAC,MAAM,EAAE;;;IAIL,SAAS,GAAA;QAClB,MAAM,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,EAAE,kBAAkB,CAAC,KAAK,CAAC;QAC1E,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC;;IAGhC,QAAQ,GAAA;QACjB,MAAM,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,EAAE,kBAAkB,CAAC,IAAI,CAAC;QACzE,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC;;IAG/B,UAAU,GAAA;QACnB,MAAM,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,EAAE,kBAAkB,CAAC,MAAM,CAAC;QAC3E,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC;;IAGjC,aAAa,GAAA;QACtB,MAAM,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,kBAAkB,CAAC,KAAK,CAAC;QAC3E,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC;;IAGhC,YAAY,GAAA;QACrB,MAAM,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,kBAAkB,CAAC,IAAI,CAAC;QAC1E,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC;;IAG/B,cAAc,GAAA;QACvB,MAAM,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,kBAAkB,CAAC,MAAM,CAAC;QAC5E,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC;;AAG3C,IAAA,QAAQ,CAAC,OAAwB,EAAA;AAChC,QAAA,MAAM,CAAC,GAAG,OAAO,CAAC,KAAU;QAC5B,IAAI,CAAC,CAAC,EAAE;AACP,YAAA,OAAO,IAAI;;QAEZ,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;AAC9B,YAAA,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE;;AAEtB,QAAA,IAAI,CAAC,CAAC,IAAI,CAAC,GAAG,IAAI,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,EAAE,kBAAkB,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;AACpH,YAAA,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE;;AAErB,QAAA,IAAI,CAAC,CAAC,IAAI,CAAC,GAAG,IAAI,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,EAAE,kBAAkB,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;AACpH,YAAA,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE;;AAErB,QAAA,OAAO,IAAI;;AAhTA,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,wBAAwB,sGA6B3B,SAAS,EAAA,EAAA,EAAA,KAAA,EAAAC,qBAAA,EAAA,EAAA,EAAA,KAAA,EAAAC,EAAA,CAAA,cAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AA7BN,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,wBAAwB,EAdzB,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,aAAA,EAAA,MAAA,EAAA,EAAA,GAAA,EAAA,KAAA,EAAA,GAAA,EAAA,KAAA,EAAA,WAAA,EAAA,aAAA,EAAA,OAAA,EAAA,SAAA,EAAA,EAAA,SAAA,EAAA;AACV,YAAA;AACC,gBAAA,OAAO,EAAE,iBAAiB;AAC1B,gBAAA,WAAW,EAAE,UAAU,CAAC,MAAM,wBAAwB,CAAC;AACvD,gBAAA,KAAK,EAAE,IAAI;AACX,aAAA;AACD,YAAA;AACC,gBAAA,OAAO,EAAE,aAAa;AACtB,gBAAA,WAAW,EAAE,wBAAwB;AACrC,gBAAA,KAAK,EAAE,IAAI;AACX,aAAA;YACD,qBAAqB;SACrB,EC3BF,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAAA,uuCAyBA,uxIDXW,WAAW,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;;2FAeT,wBAAwB,EAAA,UAAA,EAAA,CAAA;kBApBpC,SAAS;+BACC,aAAa,EAAA,eAAA,EAGN,uBAAuB,CAAC,MAAM,WACtC,CAAC,WAAW,CAAC,EACX,SAAA,EAAA;AACV,wBAAA;AACC,4BAAA,OAAO,EAAE,iBAAiB;AAC1B,4BAAA,WAAW,EAAE,UAAU,CAAC,8BAA8B,CAAC;AACvD,4BAAA,KAAK,EAAE,IAAI;AACX,yBAAA;AACD,wBAAA;AACC,4BAAA,OAAO,EAAE,aAAa;AACtB,4BAAA,WAAW,EAA0B,wBAAA;AACrC,4BAAA,KAAK,EAAE,IAAI;AACX,yBAAA;wBACD,qBAAqB;AACrB,qBAAA,EAAA,QAAA,EAAA,uuCAAA,EAAA,MAAA,EAAA,CAAA,guIAAA,CAAA,EAAA;;0BA+BC,MAAM;2BAAC,SAAS;uGA1BT,GAAG,EAAA,CAAA;sBAAX;gBACQ,GAAG,EAAA,CAAA;sBAAX;gBACQ,WAAW,EAAA,CAAA;sBAAnB;gBACQ,OAAO,EAAA,CAAA;sBAAf;;;AEhCF;;AAEG;MAKU,qBAAqB,CAAA;8GAArB,qBAAqB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;+GAArB,qBAAqB,EAAA,OAAA,EAAA,CAHvB,wBAAwB,CAAA,EAAA,OAAA,EAAA,CACxB,wBAAwB,CAAA,EAAA,CAAA,CAAA;AAEtB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,qBAAqB,YAHvB,wBAAwB,CAAA,EAAA,CAAA,CAAA;;2FAGtB,qBAAqB,EAAA,UAAA,EAAA,CAAA;kBAJjC,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;oBACT,OAAO,EAAE,CAAC,wBAAwB,CAAC;oBACnC,OAAO,EAAE,CAAC,wBAAwB,CAAC;AACnC,iBAAA;;;ACTM,MAAMF,cAAY,GAAG;AAC3B,IAAA,EAAE,EAAE;AACH,QAAA,cAAc,EAAE,YAAY;AAC5B,QAAA,gBAAgB,EAAE,SAAS;AAC3B,QAAA,eAAe,EAAE,MAAM;AACvB,KAAA;AACD,IAAA,EAAE,EAAE;AACH,QAAA,cAAc,EAAE,YAAY;AAC5B,QAAA,gBAAgB,EAAE,SAAS;AAC3B,QAAA,eAAe,EAAE,MAAM;AACvB,KAAA;AACD,IAAA,OAAO,EAAE;AACR,QAAA,cAAc,EAAE,YAAY;AAC5B,QAAA,gBAAgB,EAAE,SAAS;AAC3B,QAAA,eAAe,EAAE,MAAM;AACvB,KAAA;AACD,IAAA,EAAE,EAAE;AACH,QAAA,cAAc,EAAE,YAAY;AAC5B,QAAA,gBAAgB,EAAE,SAAS;AAC3B,QAAA,eAAe,EAAE,MAAM;AACvB,KAAA;AACD,IAAA,EAAE,EAAE;AACH,QAAA,cAAc,EAAE,YAAY;AAC5B,QAAA,gBAAgB,EAAE,SAAS;AAC3B,QAAA,eAAe,EAAE,MAAM;AACvB,KAAA;AACD,IAAA,EAAE,EAAE;AACH,QAAA,cAAc,EAAE,YAAY;AAC5B,QAAA,gBAAgB,EAAE,SAAS;AAC3B,QAAA,eAAe,EAAE,MAAM;AACvB,KAAA;AACD,IAAA,EAAE,EAAE;AACH,QAAA,cAAc,EAAE,YAAY;AAC5B,QAAA,gBAAgB,EAAE,SAAS;AAC3B,QAAA,eAAe,EAAE,MAAM;AACvB,KAAA;AACD,IAAA,EAAE,EAAE;AACH,QAAA,cAAc,EAAE,YAAY;AAC5B,QAAA,gBAAgB,EAAE,SAAS;AAC3B,QAAA,eAAe,EAAE,MAAM;AACvB,KAAA;CACD;;MCrCY,0BAA0B,GAAG,IAAI,cAAc,CAAC,yBAAyB,EAAE;AACvF,IAAA,OAAO,EAAE,MAAM,uBAAuB;AACtC,CAAA;AAQM,MAAM,uBAAuB,GAAqCA;;ACOnE,MAAO,oBAAwB,SAAQ,QAA6B,CAAA;IAMzE,IAAsB,WAAW,CAAC,CAAS,EAAA;QAC1C,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,WAAW,GAAG,CAAC;;AAG/C,IAAA,WAAA,CACC,kBAAqC,EACrC,WAAyC,EACzC,SAAoB,EACZ,QAA2B,EAAA;AAEnC,QAAA,KAAK,CAAC,kBAAkB,EAAE,WAAW,EAAE,SAAS,CAAC;QAFzC,IAAQ,CAAA,QAAA,GAAR,QAAQ;QAbT,IAAQ,CAAA,QAAA,GAAG,KAAK;AAGf,QAAA,IAAA,CAAA,WAAW,GAAsB,kBAAkB,CAAC,GAAG;AAKxD,QAAA,IAAA,CAAA,KAAK,GAAG,OAAO,CAAC,0BAA0B,CAAC;;IASnD,QAAQ,GAAA;AACP,QAAA,QAAQ,IAAI,CAAC,WAAW;YACvB,KAAK,kBAAkB,CAAC,IAAI;gBAC3B,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,eAAe;gBAC7C;YACD,KAAK,kBAAkB,CAAC,KAAK;gBAC5B,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,gBAAgB;gBAC9C;YACD,KAAK,kBAAkB,CAAC,GAAG;AAC3B,YAAA;gBACC,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,cAAc;gBAC5C;;;IAGO,MAAM,GAAA;AACf,QAAA,IAAI,IAAI,CAAC,QAAQ,EAAE;YAClB;;AAED,QAAA,IAAI,MAAc;AAClB,QAAA,QAAQ,IAAI,CAAC,WAAW;YACvB,KAAK,kBAAkB,CAAC,IAAI;gBAC3B,MAAM,GAAG,GAAG;gBACZ;YACD,KAAK,kBAAkB,CAAC,KAAK;gBAC5B,MAAM,GAAG,MAAM;gBACf;YACD,KAAK,kBAAkB,CAAC,GAAG;AAC3B,YAAA;gBACC,MAAM,GAAG,WAAW;gBACpB;;AAEF,QAAA,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,MAAM,CAAC,GAAG,EAAE;QAC5G,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,KAAK,GAAG,IAAI;;AAG5C,IAAA,OAAO,CAAC,KAAK,EAAA;;;AAGZ,QAAA,MAAM,IAAI,GAAG,KAAK,CAAC,MAAM,CAAC,KAAe;QACzC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC;AAC9B,QAAA,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC;;AAEb,IAAA,KAAK,CAAC,IAAY,EAAA;AACzB,QAAA,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,WAAW,CAAC;AACxD,QAAA,OAAO,IAAI;;IAGZ,OAAO,GAAA;AACN,QAAA,IAAI,CAAC,QAAQ,GAAG,IAAI;;IAGrB,MAAM,GAAA;AACL,QAAA,IAAI,CAAC,QAAQ,GAAG,KAAK;QACrB,IAAI,CAAC,MAAM,EAAE;;AAEd,IAAA,QAAQ,CAAC,OAAwB,EAAA;AAChC,QAAA,MAAM,CAAC,GAAG,OAAO,CAAC,KAAU;QAC5B,IAAI,CAAC,CAAC,EAAE;AACP,YAAA,OAAO,IAAI;;QAEZ,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;AAC9B,YAAA,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE;;AAEtB,QAAA,IAAI,CAAC,CAAC,IAAI,CAAC,GAAG,IAAI,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,EAAE,kBAAkB,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;AACpH,YAAA,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE;;AAErB,QAAA,IAAI,CAAC,CAAC,IAAI,CAAC,GAAG,IAAI,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,EAAE,kBAAkB,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;AACpH,YAAA,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE;;AAErB,QAAA,OAAO,IAAI;;8GAvFA,oBAAoB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,iBAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,UAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,SAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,cAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAApB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,oBAAoB,EAbrB,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,oBAAA,EAAA,MAAA,EAAA,EAAA,GAAA,EAAA,KAAA,EAAA,GAAA,EAAA,KAAA,EAAA,WAAA,EAAA,aAAA,EAAA,WAAA,EAAA,aAAA,EAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,OAAA,EAAA,iBAAA,EAAA,OAAA,EAAA,WAAA,EAAA,MAAA,EAAA,UAAA,EAAA,EAAA,EAAA,SAAA,EAAA;AACV,YAAA;AACC,gBAAA,OAAO,EAAE,iBAAiB;AAC1B,gBAAA,WAAW,EAAE,UAAU,CAAC,MAAM,oBAAoB,CAAC;AACnD,gBAAA,KAAK,EAAE,IAAI;AACX,aAAA;AACD,YAAA;AACC,gBAAA,OAAO,EAAE,aAAa;AACtB,gBAAA,WAAW,EAAE,oBAAoB;AACjC,gBAAA,KAAK,EAAE,IAAI;AACX,aAAA;AACD,SAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;2FAEW,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBAfhC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACV,oBAAA,QAAQ,EAAE,oBAAoB;AAC9B,oBAAA,SAAS,EAAE;AACV,wBAAA;AACC,4BAAA,OAAO,EAAE,iBAAiB;AAC1B,4BAAA,WAAW,EAAE,UAAU,CAAC,0BAA0B,CAAC;AACnD,4BAAA,KAAK,EAAE,IAAI;AACX,yBAAA;AACD,wBAAA;AACC,4BAAA,OAAO,EAAE,aAAa;AACtB,4BAAA,WAAW,EAAsB,oBAAA;AACjC,4BAAA,KAAK,EAAE,IAAI;AACX,yBAAA;AACD,qBAAA;AACD,iBAAA;oKAGS,GAAG,EAAA,CAAA;sBAAX;gBACQ,GAAG,EAAA,CAAA;sBAAX;gBACQ,WAAW,EAAA,CAAA;sBAAnB;gBAEqB,WAAW,EAAA,CAAA;sBAAhC;gBA+CD,OAAO,EAAA,CAAA;sBADN,YAAY;uBAAC,OAAO,EAAE,CAAC,QAAQ,CAAC;gBAajC,OAAO,EAAA,CAAA;sBADN,YAAY;uBAAC,OAAO;gBAKrB,MAAM,EAAA,CAAA;sBADL,YAAY;uBAAC,MAAM;;;ACtFrB;;AAEG;MAKU,iBAAiB,CAAA;8GAAjB,iBAAiB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;+GAAjB,iBAAiB,EAAA,OAAA,EAAA,CAHnB,oBAAoB,CAAA,EAAA,OAAA,EAAA,CACpB,oBAAoB,CAAA,EAAA,CAAA,CAAA;+GAElB,iBAAiB,EAAA,CAAA,CAAA;;2FAAjB,iBAAiB,EAAA,UAAA,EAAA,CAAA;kBAJ7B,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;oBACT,OAAO,EAAE,CAAC,oBAAoB,CAAC;oBAC/B,OAAO,EAAE,CAAC,oBAAoB,CAAC;AAC/B,iBAAA;;;ACTD;AACA;AACA;AAwBM,MAAO,qBAAgC,SAAQ,cAAiB,CAAA;IAarE,IACI,aAAa,CAAC,EAAwB,EAAA;AACzC,QAAA,IAAI,CAAC,WAAW,GAAG,EAAE;;AAGtB,IAAA,WAAA,CAAoB,QAA2B,EAAA;AAC9C,QAAA,KAAK,EAAE;QADY,IAAQ,CAAA,QAAA,GAAR,QAAQ;AAbnB,QAAA,IAAA,CAAA,WAAW,GAAsB,kBAAkB,CAAC,GAAG;AACvD,QAAA,IAAA,CAAA,OAAO,GAAM,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE;AAE7B,QAAA,IAAA,CAAA,KAAK,GAAG,IAAI,YAAY,EAAQ;AAChC,QAAA,IAAA,CAAA,IAAI,GAAG,IAAI,YAAY,EAAQ;AAC/B,QAAA,IAAA,CAAA,OAAO,GAAG,IAAI,YAAY,EAAW;AACrC,QAAA,IAAA,CAAA,aAAa,GAAG,IAAI,YAAY,EAAK;;IAUxD,cAAc,GAAA;AACb,QAAA,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE;;IAEjB,eAAe,GAAA;AACd,QAAA,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE;;AAElB,IAAA,iBAAiB,CAAC,CAAU,EAAA;AAC3B,QAAA,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;;AAErB,IAAA,gBAAgB,CAAC,GAAM,EAAA;AACtB,QAAA,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,GAAG,CAAC;;AAE7B,IAAA,QAAQ,CAAC,KAAQ,EAAA;AAChB,QAAA,IAAI,CAAC,MAAM,GAAG,KAAK;;AAEpB,IAAA,WAAW,CAAC,GAAM,EAAA;AACjB,QAAA,IAAI,CAAC,MAAM,GAAG,GAAG;AACjB,QAAA,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC;;QAE1B,IAAI,CAAC,eAAe,EAAE;;;AAGvB,IAAA,QAAQ,CAAC,GAAM,EAAA;AACd,QAAA,IAAI,CAAC,MAAM,GAAG,GAAG;AACjB,QAAA,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC;;IAE3B,QAAQ,GAAA;QACP,IAAI,CAAC,eAAe,EAAE;;AAEd,IAAA,cAAc,CAAC,KAAoB,EAAA;AAC3C,QAAA,QAAQ,KAAK,CAAC,GAAG;AAChB,YAAA,KAAK,QAAQ;gBACZ,IAAI,CAAC,eAAe,EAAE;gBACtB,KAAK,CAAC,cAAc,EAAE;gBACtB,KAAK,CAAC,eAAe,EAAE;gBACvB;AACD,YAAA,KAAK,KAAK;gBACT,IAAI,CAAC,eAAe,EAAE;gBACtB;;;8GA3DS,qBAAqB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,cAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAArB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,qBAAqB,EAPtB,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,EAAA,GAAA,EAAA,KAAA,EAAA,GAAA,EAAA,KAAA,EAAA,WAAA,EAAA,aAAA,EAAA,OAAA,EAAA,SAAA,EAAA,EAAA,OAAA,EAAA,EAAA,KAAA,EAAA,OAAA,EAAA,IAAA,EAAA,MAAA,EAAA,OAAA,EAAA,SAAA,EAAA,aAAA,EAAA,eAAA,EAAA,EAAA,SAAA,EAAA;AACV,YAAA;AACC,gBAAA,OAAO,EAAE,cAAc;AACvB,gBAAA,WAAW,EAAE,UAAU,CAAC,MAAM,qBAAqB,CAAC;AACpD,aAAA;AACD,SAAA,EAAA,WAAA,EAAA,CAAA,EAAA,YAAA,EAAA,eAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAeU,WAAW,EAAA,WAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,CAAA,cAAA,CAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECvCvB,8mCAoCA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EDlBW,WAAW,EAAE,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,oBAAA,EAAA,QAAA,EAAA,8MAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,eAAA,EAAA,QAAA,EAAA,2CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,qDAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,SAAA,EAAA,gBAAA,CAAA,EAAA,OAAA,EAAA,CAAA,eAAA,CAAA,EAAA,QAAA,EAAA,CAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,wBAAwB,EAAE,QAAA,EAAA,aAAA,EAAA,MAAA,EAAA,CAAA,KAAA,EAAA,KAAA,EAAA,aAAA,EAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,oBAAoB,EAAE,QAAA,EAAA,oBAAA,EAAA,MAAA,EAAA,CAAA,KAAA,EAAA,KAAA,EAAA,aAAA,EAAA,aAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAA,UAAU,EADrE,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,YAAA,EAAA,QAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,CAAA,cAAA,EAAA,yBAAA,CAAA,EAAA,QAAA,EAAA,CAAA,cAAA,CAAA,EAAA,CAAA,EAAA,UAAA,EAAA,CAAC,kBAAkB,CAAC,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;;2FASpB,qBAAqB,EAAA,UAAA,EAAA,CAAA;kBAdjC,SAAS;+BACC,gBAAgB,EAAA,eAAA,EAET,uBAAuB,CAAC,MAAM,YACrC,cAAc,EAAA,UAAA,EACZ,CAAC,kBAAkB,CAAC,WACvB,CAAC,WAAW,EAAE,wBAAwB,EAAE,oBAAoB,EAAE,UAAU,CAAC,EACvE,SAAA,EAAA;AACV,wBAAA;AACC,4BAAA,OAAO,EAAE,cAAc;AACvB,4BAAA,WAAW,EAAE,UAAU,CAAC,2BAA2B,CAAC;AACpD,yBAAA;AACD,qBAAA,EAAA,QAAA,EAAA,8mCAAA,EAAA;mFAKQ,GAAG,EAAA,CAAA;sBAAX;gBACQ,GAAG,EAAA,CAAA;sBAAX;gBACQ,WAAW,EAAA,CAAA;sBAAnB;gBACQ,OAAO,EAAA,CAAA;sBAAf;gBAEkB,KAAK,EAAA,CAAA;sBAAvB;gBACkB,IAAI,EAAA,CAAA;sBAAtB;gBACkB,OAAO,EAAA,CAAA;sBAAzB;gBACkB,aAAa,EAAA,CAAA;sBAA/B;gBAGG,aAAa,EAAA,CAAA;sBADhB,SAAS;AAAC,gBAAA,IAAA,EAAA,CAAA,WAAW,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE;;;AEpCzC;;AAEG;MAKU,kBAAkB,CAAA;8GAAlB,kBAAkB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;+GAAlB,kBAAkB,EAAA,OAAA,EAAA,CAHpB,qBAAqB,CAAA,EAAA,OAAA,EAAA,CACrB,qBAAqB,CAAA,EAAA,CAAA,CAAA;AAEnB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,kBAAkB,YAHpB,qBAAqB,CAAA,EAAA,CAAA,CAAA;;2FAGnB,kBAAkB,EAAA,UAAA,EAAA,CAAA;kBAJ9B,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;oBACT,OAAO,EAAE,CAAC,qBAAqB,CAAC;oBAChC,OAAO,EAAE,CAAC,qBAAqB,CAAC;AAChC,iBAAA;;;ACTM,MAAM,YAAY,GAAG;AAC3B,IAAA,EAAE,EAAE;AACH,QAAA,cAAc,EAAE,YAAY;AAC5B,QAAA,gBAAgB,EAAE,SAAS;AAC3B,QAAA,eAAe,EAAE,MAAM;AACvB,KAAA;AACD,IAAA,EAAE,EAAE;AACH,QAAA,cAAc,EAAE,YAAY;AAC5B,QAAA,gBAAgB,EAAE,SAAS;AAC3B,QAAA,eAAe,EAAE,MAAM;AACvB,KAAA;AACD,IAAA,OAAO,EAAE;AACR,QAAA,cAAc,EAAE,YAAY;AAC5B,QAAA,gBAAgB,EAAE,SAAS;AAC3B,QAAA,eAAe,EAAE,MAAM;AACvB,KAAA;AACD,IAAA,EAAE,EAAE;AACH,QAAA,cAAc,EAAE,YAAY;AAC5B,QAAA,gBAAgB,EAAE,SAAS;AAC3B,QAAA,eAAe,EAAE,MAAM;AACvB,KAAA;AACD,IAAA,EAAE,EAAE;AACH,QAAA,cAAc,EAAE,YAAY;AAC5B,QAAA,gBAAgB,EAAE,SAAS;AAC3B,QAAA,eAAe,EAAE,MAAM;AACvB,KAAA;AACD,IAAA,EAAE,EAAE;AACH,QAAA,cAAc,EAAE,YAAY;AAC5B,QAAA,gBAAgB,EAAE,SAAS;AAC3B,QAAA,eAAe,EAAE,MAAM;AACvB,KAAA;AACD,IAAA,EAAE,EAAE;AACH,QAAA,cAAc,EAAE,YAAY;AAC5B,QAAA,gBAAgB,EAAE,SAAS;AAC3B,QAAA,eAAe,EAAE,MAAM;AACvB,KAAA;AACD,IAAA,EAAE,EAAE;AACH,QAAA,cAAc,EAAE,YAAY;AAC5B,QAAA,gBAAgB,EAAE,SAAS;AAC3B,QAAA,eAAe,EAAE,MAAM;AACvB,KAAA;CACD;;MCrCY,iCAAiC,GAAG,IAAI,cAAc,CAAC,+BAA+B,EAAE;AACpG,IAAA,OAAO,EAAE,MAAM,6BAA6B;AAC5C,CAAA;AAQM,MAAM,6BAA6B,GAA2C;;ACiB/E,MAAO,0BAA8B,SAAQ,uBAA0B,CAAA;IAI5E,IAAmC,gBAAgB,CAAC,CAAS,EAAA;AAC5D,QAAA,IAAI,CAAC,YAAY,GAAG,CAAC;;IAItB,IAAa,OAAO,CAAC,CAAI,EAAA;QACxB,IAAI,CAAC,QAAQ,GAAG,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE;;AAEhD,IAAA,IAAI,OAAO,GAAA;QACV,OAAO,IAAI,CAAC,QAAQ;;AAGrB,IAAA,IAAI,MAAM,GAAA;AACT,QAAA,QAAQ,IAAI,CAAC,WAAW;YACvB,KAAK,kBAAkB,CAAC,IAAI;AAC3B,gBAAA,OAAO,GAAG;YACX,KAAK,kBAAkB,CAAC,KAAK;AAC5B,gBAAA,OAAO,MAAM;YACd,KAAK,kBAAkB,CAAC,GAAG;AAC3B,YAAA;AACC,gBAAA,OAAO,WAAW;;;IAIrB,WACoB,CAAA,kBAAqC,EACrC,QAAiB,EACjB,WAAoC,EACpC,iBAAmC,EACnC,SAAoB,EAC/B,QAA2B,EAAA;QAEnC,KAAK,CAAC,kBAAkB,EAAE,QAAQ,EAAE,WAAW,EAAE,iBAAiB,EAAE,SAAS,CAAC;QAP3D,IAAkB,CAAA,kBAAA,GAAlB,kBAAkB;QAClB,IAAQ,CAAA,QAAA,GAAR,QAAQ;QACR,IAAW,CAAA,WAAA,GAAX,WAAW;QACX,IAAiB,CAAA,iBAAA,GAAjB,iBAAiB;QACjB,IAAS,CAAA,SAAA,GAAT,SAAS;QACpB,IAAQ,CAAA,QAAA,GAAR,QAAQ;AA/BR,QAAA,IAAA,CAAA,WAAW,GAAsB,kBAAkB,CAAC,GAAG;QAIvD,IAAW,CAAA,WAAA,GAAG,KAAK;AAClB,QAAA,IAAA,CAAA,QAAQ,GAAM,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE;AAmB1C,QAAA,IAAA,CAAA,KAAK,GAAG,OAAO,CAAC,iCAAiC,CAAC;AAUzD,QAAA,IAAI,CAAC,YAAY,GAAG,IAAI;;AAGzB,IAAA,QAAQ,CAAC,OAAwB,EAAA;AAChC,QAAA,MAAM,CAAC,GAAG,OAAO,CAAC,KAAU;QAC5B,IAAI,CAAC,CAAC,EAAE;AACP,YAAA,OAAO,IAAI;;QAEZ,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;AAC9B,YAAA,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE;;AAEtB,QAAA,IAAI,CAAC,CAAC,IAAI,CAAC,GAAG,IAAI,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,EAAE,kBAAkB,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;AACpH,YAAA,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE;;AAErB,QAAA,IAAI,CAAC,CAAC,IAAI,CAAC,GAAG,IAAI,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,EAAE,kBAAkB,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;AACpH,YAAA,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE;;AAErB,QAAA,OAAO,IAAI;;8GAtDA,0BAA0B,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,iBAAA,EAAA,EAAA,EAAA,KAAA,EAAAG,IAAA,CAAA,OAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,UAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,gBAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,SAAA,EAAA,EAAA,EAAA,KAAA,EAAAD,EAAA,CAAA,cAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAA1B,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,0BAA0B,EAb3B,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,EAAA,GAAA,EAAA,KAAA,EAAA,GAAA,EAAA,KAAA,EAAA,WAAA,EAAA,aAAA,EAAA,gBAAA,EAAA,CAAA,aAAA,EAAA,kBAAA,CAAA,EAAA,WAAA,EAAA,aAAA,EAAA,OAAA,EAAA,SAAA,EAAA,EAAA,SAAA,EAAA;AACV,YAAA;AACC,gBAAA,OAAO,EAAE,iBAAiB;AAC1B,gBAAA,WAAW,EAAE,UAAU,CAAC,MAAM,0BAA0B,CAAC;AACzD,gBAAA,KAAK,EAAE,IAAI;AACX,aAAA;AACD,YAAA;AACC,gBAAA,OAAO,EAAE,aAAa;AACtB,gBAAA,WAAW,EAAE,0BAA0B;AACvC,gBAAA,KAAK,EAAE,IAAI;AACX,aAAA;SACD,EC7BF,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAAA,0eAWA,EDMW,MAAA,EAAA,CAAA,qpRAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAA,iBAAiB,EAAE,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,qBAAqB,gMAAoB,aAAa,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAE,cAAc,EAAA,QAAA,EAAA,UAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,SAAA,EAAA,UAAA,CAAA,EAAA,OAAA,EAAA,CAAA,SAAA,CAAA,EAAA,QAAA,EAAA,CAAA,WAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAE,yBAAyB,EAAA,QAAA,EAAA,eAAA,EAAA,MAAA,EAAA,CAAA,qBAAA,EAAA,UAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;;2FAclH,0BAA0B,EAAA,UAAA,EAAA,CAAA;kBAnBtC,SAAS;AACC,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,gBAAgB,mBAGT,uBAAuB,CAAC,MAAM,EACtC,OAAA,EAAA,CAAC,iBAAiB,EAAE,qBAAqB,EAAE,gBAAgB,EAAE,aAAa,EAAE,cAAc,EAAE,yBAAyB,CAAC,EACpH,SAAA,EAAA;AACV,wBAAA;AACC,4BAAA,OAAO,EAAE,iBAAiB;AAC1B,4BAAA,WAAW,EAAE,UAAU,CAAC,gCAAgC,CAAC;AACzD,4BAAA,KAAK,EAAE,IAAI;AACX,yBAAA;AACD,wBAAA;AACC,4BAAA,OAAO,EAAE,aAAa;AACtB,4BAAA,WAAW,EAA4B,0BAAA;AACvC,4BAAA,KAAK,EAAE,IAAI;AACX,yBAAA;AACD,qBAAA,EAAA,QAAA,EAAA,0eAAA,EAAA,MAAA,EAAA,CAAA,qpRAAA,CAAA,EAAA;2NAGQ,GAAG,EAAA,CAAA;sBAAX;gBACQ,GAAG,EAAA,CAAA;sBAAX;gBACQ,WAAW,EAAA,CAAA;sBAAnB;gBACkC,gBAAgB,EAAA,CAAA;sBAAlD,KAAK;uBAAC,aAAa;gBAGX,WAAW,EAAA,CAAA;sBAAnB;gBAEY,OAAO,EAAA,CAAA;sBAAnB;;;AErCF;;AAEG;MAKU,uBAAuB,CAAA;8GAAvB,uBAAuB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;+GAAvB,uBAAuB,EAAA,OAAA,EAAA,CAHzB,0BAA0B,CAAA,EAAA,OAAA,EAAA,CAC1B,0BAA0B,CAAA,EAAA,CAAA,CAAA;AAExB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,uBAAuB,YAHzB,0BAA0B,CAAA,EAAA,CAAA,CAAA;;2FAGxB,uBAAuB,EAAA,UAAA,EAAA,CAAA;kBAJnC,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;oBACT,OAAO,EAAE,CAAC,0BAA0B,CAAC;oBACrC,OAAO,EAAE,CAAC,0BAA0B,CAAC;AACrC,iBAAA;;;ACFD;;AAEG;MAKU,YAAY,CAAA;8GAAZ,YAAY,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAAZ,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,YAAY,YAHd,wBAAwB,EAAE,qBAAqB,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,0BAA0B,CACpH,EAAA,OAAA,EAAA,CAAA,wBAAwB,EAAE,qBAAqB,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,0BAA0B,CAAA,EAAA,CAAA,CAAA;AAElH,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,YAAY,EAHd,OAAA,EAAA,CAAA,wBAAwB,EAAE,qBAAqB,EAA2C,0BAA0B,CAAA,EAAA,CAAA,CAAA;;2FAGlH,YAAY,EAAA,UAAA,EAAA,CAAA;kBAJxB,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;oBACT,OAAO,EAAE,CAAC,wBAAwB,EAAE,qBAAqB,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,0BAA0B,CAAC;oBAC/H,OAAO,EAAE,CAAC,wBAAwB,EAAE,qBAAqB,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,0BAA0B,CAAC;AAC/H,iBAAA;;;MCTY,uBAAuB,CAAA;IACnC,uBAAuB,GAAG,IAAI,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;AAExE,IAAA,MAAM,CAAC,YAA4B,EAAA;AAClC,QAAA,OAAO,IAAI,CAAC,uBAAuB,CAAC,MAAM,CAAC,YAAY,CAAC,KAAK,EAAE,YAAY,CAAC,IAAI,CAAC;;8GAJtE,uBAAuB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;kHAAvB,uBAAuB,EAAA,CAAA,CAAA;;2FAAvB,uBAAuB,EAAA,UAAA,EAAA,CAAA;kBADnC;;;ACHY,MAAA,wBAAwB,GAAG,CAAC,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM;;ACInG,MAAM,mBAAmB,GAAgG;AACxH,IAAA,MAAM,EAAE,mBAAmB;AAC3B,IAAA,MAAM,EAAE,mBAAmB;AAC3B,IAAA,IAAI,EAAE,iBAAiB;AACvB,IAAA,GAAG,EAAE,gBAAgB;AACrB,IAAA,IAAI,EAAE,iBAAiB;AACvB,IAAA,KAAK,EAAE,kBAAkB;AACzB,IAAA,IAAI,EAAE,iBAAiB;CACvB;AAEK,SAAU,eAAe,CAAC,IAAmB,EAAE,SAAwB,EAAE,eAAoD,wBAAwB,EAAA;AAC1J,IAAA,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE;AACzB,QAAA,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC;;AAG5D,IAAA,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,YAAY,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;AAC7C,QAAA,MAAM,IAAI,GAAG,YAAY,CAAC,CAAC,CAAC;QAC5B,MAAM,UAAU,GAAG,CAAC,KAAK,YAAY,CAAC,MAAM,GAAG,CAAC;QAEhD,IAAI,UAAU,EAAE;AACf,YAAA,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,mBAAmB,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,SAAS,CAAC,EAAE;;QAGnE,MAAM,QAAQ,GAAG,YAAY,CAAC,CAAC,GAAG,CAAC,CAAC;QACpC,MAAM,IAAI,GAAG,mBAAmB,CAAC,QAAQ,CAAC,CAAC,IAAI,EAAE,SAAS,CAAC;QAE3D,IAAI,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE;AACvB,YAAA,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,mBAAmB,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,SAAS,CAAC,EAAE;;;;AAKpE,IAAA,MAAM,IAAI,KAAK,CAAC,oDAAoD,CAAC;AACtE;AAEA,MAAM,8BAA8B,GAA6C;AAChF,IAAA,MAAM,EAAE,KAAK;AACb,IAAA,MAAM,EAAE,MAAM;IACd,IAAI,EAAE,EAAE,GAAG,MAAM;AACjB,IAAA,GAAG,EAAE,EAAE,GAAG,EAAE,GAAG,MAAM;AACrB,IAAA,IAAI,EAAE,EAAE,GAAG,EAAE,GAAG,MAAM;AACtB,IAAA,KAAK,EAAE,EAAE,GAAG,EAAE,GAAG,MAAM;AACvB,IAAA,IAAI,EAAE,EAAE,GAAG,EAAE,GAAG,MAAM;CACtB;AAED,MAAM,8BAA8B,GAAsE;AACzG,IAAA,MAAM,EAAE,IAAI;AACZ,IAAA,MAAM,EAAE,QAAQ;AAChB,IAAA,IAAI,EAAE,QAAQ;AACd,IAAA,GAAG,EAAE,MAAM;AACX,IAAA,IAAI,EAAE,KAAK;AACX,IAAA,KAAK,EAAE,MAAM;AACb,IAAA,IAAI,EAAE,OAAO;CACb;AAEe,SAAA,iBAAiB,CAAC,IAAmB,EAAE,YAAkD,EAAA;AACxG,IAAA,OAAO,IAAI,UAAU,CAAiB,CAAC,UAAU,KAAI;QACpD,IAAI,SAAS,GAAyC,IAAI;AAC1D,QAAA,MAAM,YAAY,GAAG,OAAO,IAAI,KAAK,QAAQ,GAAG,IAAI,GAAG,IAAI,CAAC,OAAO,EAAE;AAErE,QAAA,SAAS,IAAI,GAAA;AACZ,YAAA,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE;YACtB,MAAM,YAAY,GAAG,eAAe,CAAC,IAAI,EAAE,GAAG,EAAE,YAAY,CAAC;AAC7D,YAAA,UAAU,CAAC,IAAI,CAAC,YAAY,CAAC;AAE7B,YAAA,MAAM,IAAI,GACT,YAAY,CAAC,KAAK,KAAK,CAAC,IAAI,YAAY,CAAC,IAAI,KAAK;AACjD;;AAEC,oBAAA,8BAA8B,CAAC,YAAY,CAAC,IAAI;AACjD,kBAAE,YAAY,CAAC,IAAI;AAErB,YAAA,MAAM,KAAK,GAAG,GAAG,GAAG,YAAY;AAChC,YAAA,MAAM,QAAQ,GAAG,8BAA8B,CAAC,IAAI,CAAC;;YAGrD,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,QAAQ;AACxC,YAAA,MAAM,QAAQ,GAAG,YAAY,CAAC,KAAK,KAAK,CAAC,GAAG,QAAQ,GAAG,KAAK,GAAG,IAAI;AAEnE,YAAA,SAAS,GAAG,UAAU,CAAC,IAAI,EAAE,QAAQ,CAAC;;;AAIvC,QAAA,IAAI,EAAE;AAEN,QAAA,OAAO,MAAK;YACX,IAAI,SAAS,EAAE;gBACd,YAAY,CAAC,SAAS,CAAC;;AAEzB,SAAC;AACF,KAAC,CAAC;AACH;;MCtFa,kBAAkB,CAAA;AAC9B,IAAA,UAAU,GAAG,MAAM,CAAC,uBAAuB,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,IAAI,IAAI,uBAAuB,EAAE;IAEjG,SAAS,CAAC,KAA6B,EAAE,YAAkD,EAAA;AAC1F,QAAA,OAAO,iBAAiB,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,EAAE,YAAY,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,YAAY,KAAK,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC;;8GAJ9G,kBAAkB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,IAAA,EAAA,CAAA,CAAA;4GAAlB,kBAAkB,EAAA,YAAA,EAAA,IAAA,EAAA,IAAA,EAAA,gBAAA,EAAA,CAAA,CAAA;;2FAAlB,kBAAkB,EAAA,UAAA,EAAA,CAAA;kBAH9B,IAAI;AAAC,YAAA,IAAA,EAAA,CAAA;AACL,oBAAA,IAAI,EAAE,gBAAgB;AACtB,iBAAA;;;ACRD;;AAEG;;;;"}
1
+ {"version":3,"file":"lucca-front-ng-date.mjs","sources":["../../../packages/ng/date/adapter/date-adapter.pipe.ts","../../../packages/ng/date/adapter/date-adapter.module.ts","../../../packages/ng/date/calendar/translations.ts","../../../packages/ng/date/calendar/calendar-input.translate.ts","../../../packages/ng/date/calendar/calendar-item.class.ts","../../../packages/ng/date/calendar/calendar-item.factory.ts","../../../packages/ng/date/calendar/calendar-input.component.ts","../../../packages/ng/date/calendar/calendar-input.component.html","../../../packages/ng/date/calendar/calendar-input.module.ts","../../../packages/ng/date/input/translations.ts","../../../packages/ng/date/input/date-input.translate.ts","../../../packages/ng/date/input/date-input.directive.ts","../../../packages/ng/date/input/date-input.module.ts","../../../packages/ng/date/picker/date-picker.component.ts","../../../packages/ng/date/picker/date-picker.component.html","../../../packages/ng/date/picker/date-picker.module.ts","../../../packages/ng/date/select/translations.ts","../../../packages/ng/date/select/date-select-input.translate.ts","../../../packages/ng/date/select/date-select-input.component.ts","../../../packages/ng/date/select/date-select-input.component.html","../../../packages/ng/date/select/date-select-input.module.ts","../../../packages/ng/date/date.module.ts","../../../packages/ng/date/humanize/humanize.formatter.ts","../../../packages/ng/date/humanize/humanize.model.ts","../../../packages/ng/date/humanize/humanize.utils.ts","../../../packages/ng/date/humanize/humanize.pipe.ts","../../../packages/ng/date/lucca-front-ng-date.ts"],"sourcesContent":["import { Pipe, PipeTransform } from '@angular/core';\nimport { ALuDateAdapter } from '@lucca-front/ng/core';\n\n@Pipe({\n\tname: 'luDate',\n\tpure: true,\n})\nexport class LuDateAdapterPipe<D> implements PipeTransform {\n\tconstructor(private _adapter: ALuDateAdapter<D>) {}\n\ttransform(d: D, format = 'mediumDate'): string {\n\t\tif (d && this._adapter.isValid(d)) {\n\t\t\treturn this._adapter.format(d, format);\n\t\t}\n\t\treturn '';\n\t}\n}\n","import { NgModule } from '@angular/core';\nimport { LuDateAdapterPipe } from './date-adapter.pipe';\n\n/**\n * @deprecated use `LuDateAdapterPipe` instead\n */\n@NgModule({\n\timports: [LuDateAdapterPipe],\n\texports: [LuDateAdapterPipe],\n})\nexport class LuDateAdapterModule {}\n","export const Translations = {\n\ten: {\n\t\tprevious: 'Previous',\n\t\tnext: 'Next',\n\t},\n\tde: {\n\t\tprevious: 'Abbrechen',\n\t\tnext: 'Weiter',\n\t},\n\tfr: {\n\t\tprevious: 'Précédent',\n\t\tnext: 'Suivant',\n\t},\n\tit: {\n\t\tprevious: 'Precedente',\n\t\tnext: 'Seguente',\n\t},\n\tnl: {\n\t\tprevious: 'Vorige',\n\t\tnext: 'Volgende',\n\t},\n\t'nl-BE': {\n\t\tprevious: '',\n\t\tnext: '',\n\t},\n\tes: {\n\t\tprevious: 'Anterior',\n\t\tnext: 'Siguiente',\n\t},\n\tpt: {\n\t\tprevious: 'Anterior',\n\t\tnext: 'Seguinte',\n\t},\n};\n","import { InjectionToken } from '@angular/core';\nimport { LuTranslation } from '@lucca-front/ng/core';\nimport { Translations } from './translations';\n\nexport const LU_CALENDARINPUT_TRANSLATIONS = new InjectionToken('LuCalendarInputTranslations', {\n\tfactory: () => luCalendarInputTranslations,\n});\n\nexport interface LuCalendarInputLabel {\n\tprevious: string;\n\tnext: string;\n}\n\nexport const luCalendarInputTranslations: LuTranslation<LuCalendarInputLabel> = Translations;\n","import { ELuDateGranularity, LuDateGranularity } from '@lucca-front/ng/core';\nimport { ICalendarItem } from './calendar-item.interface';\n\nexport abstract class ACalendarItem<D> implements ICalendarItem<D> {\n\tget id() {\n\t\treturn `${this.granularity}-${this.date.toString()}`;\n\t}\n\tdate: D;\n\tmods: string[] = [];\n\tisDisabled = false;\n\tlabel: string;\n\treadonly granularity: LuDateGranularity;\n}\nexport class DayItem<D> extends ACalendarItem<D> implements ICalendarItem<D> {\n\toverride readonly granularity = ELuDateGranularity.day;\n\tconstructor(\n\t\tpublic override date: D,\n\t\tpublic override label: string,\n\t) {\n\t\tsuper();\n\t}\n}\nexport class MonthItem<D> extends ACalendarItem<D> implements ICalendarItem<D> {\n\toverride readonly granularity = ELuDateGranularity.month;\n\tconstructor(\n\t\tpublic override date: D,\n\t\tpublic override label: string,\n\t) {\n\t\tsuper();\n\t}\n}\nexport class YearItem<D> extends ACalendarItem<D> implements ICalendarItem<D> {\n\toverride readonly granularity = ELuDateGranularity.year;\n\tconstructor(\n\t\tpublic override date: D,\n\t\tpublic override label: string,\n\t) {\n\t\tsuper();\n\t}\n}\nexport class DecadeItem<D> extends ACalendarItem<D> implements ICalendarItem<D> {\n\toverride readonly granularity = ELuDateGranularity.decade;\n\tconstructor(\n\t\tpublic override date: D,\n\t\tpublic override label: string,\n\t) {\n\t\tsuper();\n\t}\n}\n","import { Injectable } from '@angular/core';\nimport { ALuDateAdapter } from '@lucca-front/ng/core';\nimport { DayItem, DecadeItem, MonthItem, YearItem } from './calendar-item.class';\n\n@Injectable()\nexport class LuCalendarItemFactory<D> {\n\tconstructor(private _adapter: ALuDateAdapter<D>) {}\n\tforgeDay(d: D, format = 'd'): DayItem<D> {\n\t\tconst date = this._adapter.clone(d);\n\t\treturn new DayItem(date, this._adapter.format(date, format));\n\t}\n\tforgeMonth(d: D, format = 'MMM'): MonthItem<D> {\n\t\tconst year = this._adapter.getYear(d);\n\t\tconst month = this._adapter.getMonth(d);\n\t\tconst monthStart = this._adapter.forge(year, month, 1);\n\t\treturn new MonthItem(monthStart, this._adapter.format(monthStart, format));\n\t}\n\tforgeYear(d: D, format = 'y'): YearItem<D> {\n\t\tconst year = this._adapter.getYear(d);\n\t\tconst yearStart = this._adapter.forge(year, 1, 1);\n\t\treturn new YearItem(yearStart, this._adapter.format(yearStart, format));\n\t}\n\tforgeDecade(d: D, format = 'y'): DecadeItem<D> {\n\t\tconst year = this._adapter.getYear(d);\n\t\tconst decadeStart = this._adapter.forge(10 * Math.floor(year / 10), 1, 1);\n\t\tconst decadeEnd = this._adapter.forge(10 * Math.floor(year / 10) + 9, 1, 1);\n\t\tconst label = `${this._adapter.format(decadeStart, format)} - ${this._adapter.format(decadeEnd, format)}`;\n\t\treturn new DecadeItem(decadeStart, label);\n\t}\n}\n","import { FormStyle, getLocaleDayNames, getLocaleFirstDayOfWeek, TranslationWidth } from '@angular/common';\nimport { ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, forwardRef, Inject, Input, LOCALE_ID, OnInit, Renderer2 } from '@angular/core';\nimport { AbstractControl, ControlValueAccessor, FormsModule, NG_VALIDATORS, NG_VALUE_ACCESSOR, ValidationErrors, Validator } from '@angular/forms';\nimport { ALuDateAdapter, ELuDateGranularity, getIntl, LuDateGranularity } from '@lucca-front/ng/core';\nimport { ALuInput } from '@lucca-front/ng/input';\nimport { LU_CALENDARINPUT_TRANSLATIONS } from './calendar-input.translate';\nimport { LuCalendarItemFactory } from './calendar-item.factory';\nimport { ICalendarItem } from './calendar-item.interface';\n\n@Component({\n\tselector: 'lu-calendar',\n\ttemplateUrl: './calendar-input.component.html',\n\tstyleUrl: './calendar-input.component.scss',\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\timports: [FormsModule],\n\tproviders: [\n\t\t{\n\t\t\tprovide: NG_VALUE_ACCESSOR,\n\t\t\tuseExisting: forwardRef(() => LuCalendarInputComponent),\n\t\t\tmulti: true,\n\t\t},\n\t\t{\n\t\t\tprovide: NG_VALIDATORS,\n\t\t\tuseExisting: LuCalendarInputComponent,\n\t\t\tmulti: true,\n\t\t},\n\t\tLuCalendarItemFactory,\n\t],\n})\nexport class LuCalendarInputComponent<D> extends ALuInput<D> implements ControlValueAccessor, OnInit, Validator {\n\tintl = getIntl(LU_CALENDARINPUT_TRANSLATIONS);\n\n\t@Input() min?: D;\n\t@Input() max?: D;\n\t@Input() granularity: LuDateGranularity = ELuDateGranularity.day;\n\t@Input() startOn: D = this._adapter.forgeToday();\n\n\tviewGranularity: LuDateGranularity;\n\theader: ICalendarItem<D>;\n\titems: ICalendarItem<D>[] = [];\n\tget mod() {\n\t\tswitch (this.viewGranularity) {\n\t\t\tcase ELuDateGranularity.year:\n\t\t\t\treturn 'mod-yearlyView';\n\t\t\tcase ELuDateGranularity.month:\n\t\t\t\treturn 'mod-monthlyView';\n\t\t\tcase ELuDateGranularity.day:\n\t\t\tdefault:\n\t\t\t\treturn 'mod-dailyView';\n\t\t}\n\t}\n\n\t// daily view\n\tlabels: string[] = [];\n\tconstructor(\n\t\t_changeDetectorRef: ChangeDetectorRef,\n\t\t_elementRef: ElementRef<HTMLElement>,\n\t\t_renderer: Renderer2,\n\t\t@Inject(LOCALE_ID) private _locale: string,\n\t\tprivate _factory: LuCalendarItemFactory<D>,\n\t\tprivate _adapter: ALuDateAdapter<D>,\n\t) {\n\t\tsuper(_changeDetectorRef, _elementRef, _renderer);\n\t}\n\tngOnInit() {\n\t\tthis.viewGranularity = this.granularity;\n\t\tthis.initDayLabels();\n\t}\n\toverride writeValue(value?: D) {\n\t\tconst date = value && this._adapter.isValid(value) ? this._adapter.clone(value) : this.startOn;\n\t\tthis.header = this._factory.forgeMonth(date);\n\t\tsuper.writeValue(value);\n\t}\n\tinitDayLabels() {\n\t\tthis.labels = [...getLocaleDayNames(this._locale, FormStyle.Standalone, TranslationWidth.Abbreviated)];\n\t\tif (getLocaleFirstDayOfWeek(this._locale) === 1) {\n\t\t\tthis.labels.push(this.labels.shift());\n\t\t}\n\t}\n\tprotected render() {\n\t\tswitch (this.viewGranularity) {\n\t\t\tcase ELuDateGranularity.year:\n\t\t\t\tthis.renderYearlyView();\n\t\t\t\tbreak;\n\t\t\tcase ELuDateGranularity.month:\n\t\t\t\tthis.renderMonthlyView();\n\t\t\t\tbreak;\n\t\t\tcase ELuDateGranularity.day:\n\t\t\tdefault:\n\t\t\t\tthis.renderDailyView();\n\t\t\t\tbreak;\n\t\t}\n\t}\n\n\tprotected renderDailyView(month: D = this.header.date) {\n\t\tthis.items = [];\n\t\tconst start = this._adapter.forge(this._adapter.getYear(month), this._adapter.getMonth(month), 1);\n\t\tlet index = 0;\n\t\tconst isFirstDayOfWeek = this._adapter.getDay(start) === getLocaleFirstDayOfWeek(this._locale);\n\t\tthis.header = this._factory.forgeMonth(month, 'MMMM y');\n\t\tif (!isFirstDayOfWeek) {\n\t\t\tconst offset = (this._adapter.getDay(start) - getLocaleFirstDayOfWeek(this._locale) + 7) % 7;\n\t\t\tindex = -1 * offset;\n\t\t}\n\t\t// TODO\n\t\tlet isFDOW = false;\n\t\tlet isNextMonth = false;\n\t\tdo {\n\t\t\tconst d = this._adapter.add(start, index++, ELuDateGranularity.day);\n\t\t\tconst day = this._factory.forgeDay(d);\n\t\t\tisNextMonth = this._adapter.compare(d, month, ELuDateGranularity.month) > 0;\n\t\t\tisFDOW = this._adapter.getDay(d) === getLocaleFirstDayOfWeek(this._locale);\n\t\t\tthis.items.push(day);\n\t\t} while (!isFDOW || !isNextMonth);\n\t\tthis.applyDailyMods();\n\t}\n\n\tprotected renderMonthlyView(year: D = this.header.date) {\n\t\tthis.header = this._factory.forgeYear(year);\n\t\tthis.items = [...Array(12).keys()].map((i) => {\n\t\t\tconst d = this._adapter.forge(this._adapter.getYear(year), i + 1, 1);\n\t\t\treturn this._factory.forgeMonth(d);\n\t\t});\n\t\tthis.applyMonthlyMods();\n\t}\n\n\tprotected renderYearlyView(decade: D = this.header.date) {\n\t\tconst year = Math.floor(this._adapter.getYear(decade) / 10) * 10;\n\t\tconst d = this._adapter.forge(year, 1, 1);\n\t\tthis.header = this._factory.forgeDecade(d);\n\t\tthis.items = [...Array(10).keys()].map((i) => {\n\t\t\tconst y = this._adapter.forge(year + i, 1, 1);\n\t\t\treturn this._factory.forgeYear(y);\n\t\t});\n\t\tthis.applyYearlyMods();\n\t}\n\n\tprotected applyDailyMods() {\n\t\tconst month = this.header.date;\n\t\tconst today = this._adapter.forgeToday();\n\t\tconst min = this.min && this._adapter.isValid(this.min) ? this.min : undefined;\n\t\tconst max = this.max && this._adapter.isValid(this.max) ? this.max : undefined;\n\t\tthis.items.forEach((item) => {\n\t\t\tconst day = item.date;\n\t\t\tif (this._adapter.compare(day, month, ELuDateGranularity.month) < 0) {\n\t\t\t\titem.mods.push('is-previousMonth');\n\t\t\t}\n\t\t\tif (this._adapter.compare(day, month, ELuDateGranularity.month) > 0) {\n\t\t\t\titem.mods.push('is-nextMonth');\n\t\t\t}\n\t\t\tif (this._adapter.compare(day, today, ELuDateGranularity.day) === 0) {\n\t\t\t\titem.mods.push('is-today');\n\t\t\t}\n\t\t\tif (this.value && this._adapter.isValid(this.value) && this._adapter.compare(day, this.value, ELuDateGranularity.day) === 0) {\n\t\t\t\titem.mods.push('is-active');\n\t\t\t}\n\t\t\tif (min && this._adapter.compare(day, min, ELuDateGranularity.day) < 0) {\n\t\t\t\titem.isDisabled = true;\n\t\t\t}\n\t\t\tif (max && this._adapter.compare(day, max, ELuDateGranularity.day) > 0) {\n\t\t\t\titem.isDisabled = true;\n\t\t\t}\n\t\t});\n\t}\n\n\tprotected applyMonthlyMods() {\n\t\tconst today = this._adapter.forgeToday();\n\t\tconst min = this.min && this._adapter.isValid(this.min) ? this.min : undefined;\n\t\tconst max = this.max && this._adapter.isValid(this.max) ? this.max : undefined;\n\t\tthis.items.forEach((item) => {\n\t\t\tconst month = item.date;\n\t\t\tif (this._adapter.compare(month, today, ELuDateGranularity.month) === 0) {\n\t\t\t\titem.mods.push('is-today');\n\t\t\t}\n\t\t\tif (this.value && this._adapter.isValid(this.value) && this._adapter.compare(month, this.value, ELuDateGranularity.month) === 0) {\n\t\t\t\titem.mods.push('is-active');\n\t\t\t}\n\t\t\tif (min && this._adapter.compare(month, min, ELuDateGranularity.month) < 0) {\n\t\t\t\titem.isDisabled = true;\n\t\t\t}\n\t\t\tif (max && this._adapter.compare(month, max, ELuDateGranularity.month) > 0) {\n\t\t\t\titem.isDisabled = true;\n\t\t\t}\n\t\t});\n\t}\n\n\tprotected applyYearlyMods() {\n\t\tconst today = this._adapter.forgeToday();\n\t\tconst min = this.min && this._adapter.isValid(this.min) ? this.min : undefined;\n\t\tconst max = this.max && this._adapter.isValid(this.max) ? this.max : undefined;\n\t\tthis.items.forEach((item) => {\n\t\t\tconst year = item.date;\n\t\t\tif (this._adapter.compare(year, today, ELuDateGranularity.year) === 0) {\n\t\t\t\titem.mods.push('is-today');\n\t\t\t}\n\t\t\tif (this.value && this._adapter.isValid(this.value) && this._adapter.compare(year, this.value, ELuDateGranularity.year) === 0) {\n\t\t\t\titem.mods.push('is-active');\n\t\t\t}\n\t\t\tif (min && this._adapter.compare(year, min, ELuDateGranularity.year) < 0) {\n\t\t\t\titem.isDisabled = true;\n\t\t\t}\n\t\t\tif (max && this._adapter.compare(year, max, ELuDateGranularity.year) > 0) {\n\t\t\t\titem.isDisabled = true;\n\t\t\t}\n\t\t});\n\t}\n\n\tselect(item: ICalendarItem<D>) {\n\t\tswitch (this.viewGranularity) {\n\t\t\tcase ELuDateGranularity.year:\n\t\t\t\tthis.selectYear(item);\n\t\t\t\tbreak;\n\t\t\tcase ELuDateGranularity.month:\n\t\t\t\tthis.selectMonth(item);\n\t\t\t\tbreak;\n\t\t\tcase ELuDateGranularity.day:\n\t\t\tdefault:\n\t\t\t\tthis.selectDay(item);\n\t\t\t\tbreak;\n\t\t}\n\t}\n\n\tprotected selectDay(item: ICalendarItem<D>) {\n\t\tconst year = this._adapter.getYear(item.date);\n\t\tconst month = this._adapter.getMonth(item.date);\n\t\tconst d = this._adapter.forge(year, month, 1);\n\t\tthis.header = this._factory.forgeMonth(d);\n\t\tthis.setValue(item.date);\n\t}\n\n\tprotected selectMonth(item: ICalendarItem<D>) {\n\t\tif (this.granularity === ELuDateGranularity.month) {\n\t\t\tthis.setValue(item.date);\n\t\t} else {\n\t\t\tthis.header = item;\n\t\t\tthis.viewGranularity = ELuDateGranularity.day;\n\t\t\tthis.render();\n\t\t}\n\t}\n\n\tprotected selectYear(item: ICalendarItem<D>) {\n\t\tif (this.granularity === ELuDateGranularity.year) {\n\t\t\tthis.setValue(item.date);\n\t\t} else {\n\t\t\tthis.header = item;\n\t\t\tthis.viewGranularity = ELuDateGranularity.month;\n\t\t\tthis.render();\n\t\t}\n\t}\n\n\tprevious() {\n\t\tswitch (this.viewGranularity) {\n\t\t\tcase ELuDateGranularity.year:\n\t\t\t\tthis.previousDecade();\n\t\t\t\tbreak;\n\t\t\tcase ELuDateGranularity.month:\n\t\t\t\tthis.previousYear();\n\t\t\t\tbreak;\n\t\t\tcase ELuDateGranularity.day:\n\t\t\tdefault:\n\t\t\t\tthis.previousMonth();\n\t\t\t\tbreak;\n\t\t}\n\t\tthis.render();\n\t}\n\n\tnext() {\n\t\tswitch (this.viewGranularity) {\n\t\t\tcase ELuDateGranularity.year:\n\t\t\t\tthis.nextDecade();\n\t\t\t\tbreak;\n\t\t\tcase ELuDateGranularity.month:\n\t\t\t\tthis.nextYear();\n\t\t\t\tbreak;\n\t\t\tcase ELuDateGranularity.day:\n\t\t\tdefault:\n\t\t\t\tthis.nextMonth();\n\t\t\t\tbreak;\n\t\t}\n\t\tthis.render();\n\t}\n\n\tincreaseGranularity() {\n\t\tif (this.header.granularity !== ELuDateGranularity.decade) {\n\t\t\tthis.viewGranularity = this.header.granularity;\n\t\t\tthis.render();\n\t\t}\n\t}\n\n\tprotected nextMonth() {\n\t\tconst d = this._adapter.add(this.header.date, 1, ELuDateGranularity.month);\n\t\tthis.header = this._factory.forgeMonth(d);\n\t}\n\n\tprotected nextYear() {\n\t\tconst d = this._adapter.add(this.header.date, 1, ELuDateGranularity.year);\n\t\tthis.header = this._factory.forgeYear(d);\n\t}\n\n\tprotected nextDecade() {\n\t\tconst d = this._adapter.add(this.header.date, 1, ELuDateGranularity.decade);\n\t\tthis.header = this._factory.forgeDecade(d);\n\t}\n\n\tprotected previousMonth() {\n\t\tconst d = this._adapter.add(this.header.date, -1, ELuDateGranularity.month);\n\t\tthis.header = this._factory.forgeMonth(d);\n\t}\n\n\tprotected previousYear() {\n\t\tconst d = this._adapter.add(this.header.date, -1, ELuDateGranularity.year);\n\t\tthis.header = this._factory.forgeYear(d);\n\t}\n\n\tprotected previousDecade() {\n\t\tconst d = this._adapter.add(this.header.date, -1, ELuDateGranularity.decade);\n\t\tthis.header = this._factory.forgeDecade(d);\n\t}\n\n\tvalidate(control: AbstractControl): ValidationErrors | null {\n\t\tconst d = control.value as D;\n\t\tif (!d) {\n\t\t\treturn null;\n\t\t}\n\t\tif (!this._adapter.isValid(d)) {\n\t\t\treturn { date: true };\n\t\t}\n\t\tif (!!this.min && this._adapter.isValid(this.min) && this._adapter.compare(this.min, d, ELuDateGranularity.day) > 0) {\n\t\t\treturn { min: true };\n\t\t}\n\t\tif (!!this.max && this._adapter.isValid(this.max) && this._adapter.compare(this.max, d, ELuDateGranularity.day) < 0) {\n\t\t\treturn { max: true };\n\t\t}\n\t\treturn null;\n\t}\n}\n","<section class=\"calendar\">\n\t<header class=\"calendar-header\">\n\t\t<button type=\"button\" class=\"button mod-onlyIcon mod-ghost mod-S\" (click)=\"previous()\">\n\t\t\t<span aria-hidden=\"true\" class=\"lucca-icon icon-arrowChevronLeft\"></span>\n\t\t\t<span class=\"pr-u-mask\">{{ intl.previous }}</span>\n\t\t</button>\n\t\t<button type=\"button\" class=\"calendar-header-date\" (click)=\"increaseGranularity()\">{{ header.label }}</button>\n\t\t<button type=\"button\" class=\"button mod-onlyIcon mod-ghost mod-S\" (click)=\"next()\">\n\t\t\t<span aria-hidden=\"true\" class=\"lucca-icon icon-arrowChevronRight\"></span>\n\t\t\t<span class=\"pr-u-mask\">{{ intl.next }}</span>\n\t\t</button>\n\t</header>\n\t<section class=\"calendar-labels\" [class]=\"mod\">\n\t\t@for (label of labels; track label) {\n\t\t\t<div class=\"calendar-labels-item\">{{ label }}</div>\n\t\t}\n\t</section>\n\t<section class=\"calendar-grid\" [class]=\"mod\">\n\t\t@for (item of items; track item.id) {\n\t\t\t<button type=\"button\" class=\"calendar-grid-item\" [class]=\"item.mods\" [disabled]=\"item.isDisabled\" (click)=\"select(item)\">\n\t\t\t\t<div class=\"calendar-grid-item-content\">{{ item.label }}</div>\n\t\t\t</button>\n\t\t}\n\t</section>\n</section>\n","import { NgModule } from '@angular/core';\nimport { LuCalendarInputComponent } from './calendar-input.component';\n\n/**\n * @deprecated use `LuCalendarInputComponent` instead\n */\n@NgModule({\n\timports: [LuCalendarInputComponent],\n\texports: [LuCalendarInputComponent],\n})\nexport class LuCalendarInputModule {}\n","export const Translations = {\n\tpt: {\n\t\tplaceholderDay: 'DD/MM/AAAA',\n\t\tplaceholderMonth: 'MM/AAAA',\n\t\tplaceholderYear: 'AAAA',\n\t},\n\tes: {\n\t\tplaceholderDay: 'DD/MM/AAAA',\n\t\tplaceholderMonth: 'MM/AAAA',\n\t\tplaceholderYear: 'AAAA',\n\t},\n\t'nl-BE': {\n\t\tplaceholderDay: 'DD/MM/JJJJ',\n\t\tplaceholderMonth: 'MM/JJJJ',\n\t\tplaceholderYear: 'JJJJ',\n\t},\n\tnl: {\n\t\tplaceholderDay: 'DD/MM/JJJJ',\n\t\tplaceholderMonth: 'MM/JJJJ',\n\t\tplaceholderYear: 'JJJJ',\n\t},\n\tit: {\n\t\tplaceholderDay: 'GG/MM/AAAA',\n\t\tplaceholderMonth: 'MM/AAAA',\n\t\tplaceholderYear: 'AAAA',\n\t},\n\tde: {\n\t\tplaceholderDay: 'TT/MM/JJJJ',\n\t\tplaceholderMonth: 'MM/JJJJ',\n\t\tplaceholderYear: 'JJJJ',\n\t},\n\tfr: {\n\t\tplaceholderDay: 'JJ/MM/AAAA',\n\t\tplaceholderMonth: 'MM/AAAA',\n\t\tplaceholderYear: 'AAAA',\n\t},\n\ten: {\n\t\tplaceholderDay: 'DD/MM/YYYY',\n\t\tplaceholderMonth: 'MM/YYYY',\n\t\tplaceholderYear: 'YYYY',\n\t},\n};\n","import { InjectionToken } from '@angular/core';\nimport { LuTranslation } from '@lucca-front/ng/core';\nimport { Translations } from './translations';\n\nexport const LU_DATE_INPUT_TRANSLATIONS = new InjectionToken('LuDateInputtranslations', {\n\tfactory: () => luDateInputTranslations,\n});\n\nexport interface ILuDateInputLabel {\n\tplaceholderDay: string;\n\tplaceholderMonth: string;\n\tplaceholderYear: string;\n}\n\nexport const luDateInputTranslations: LuTranslation<ILuDateInputLabel> = Translations;\n","import { ChangeDetectorRef, Directive, ElementRef, forwardRef, HostListener, Input, OnInit, Renderer2 } from '@angular/core';\nimport { AbstractControl, NG_VALIDATORS, NG_VALUE_ACCESSOR, ValidationErrors, Validator } from '@angular/forms';\nimport { ALuDateAdapter, ELuDateGranularity, getIntl, LuDateGranularity } from '@lucca-front/ng/core';\nimport { ALuInput } from '@lucca-front/ng/input';\nimport { LU_DATE_INPUT_TRANSLATIONS } from './date-input.translate';\n\n@Directive({\n\tselector: 'input[luDateInput]',\n\tproviders: [\n\t\t{\n\t\t\tprovide: NG_VALUE_ACCESSOR,\n\t\t\tuseExisting: forwardRef(() => LuDateInputDirective),\n\t\t\tmulti: true,\n\t\t},\n\t\t{\n\t\t\tprovide: NG_VALIDATORS,\n\t\t\tuseExisting: LuDateInputDirective,\n\t\t\tmulti: true,\n\t\t},\n\t],\n})\nexport class LuDateInputDirective<D> extends ALuInput<D, HTMLInputElement> implements Validator, OnInit {\n\tprivate _focused = false;\n\t@Input() min?: D;\n\t@Input() max?: D;\n\t@Input() granularity: LuDateGranularity = ELuDateGranularity.day;\n\n\t@Input() override set placeholder(p: string) {\n\t\tthis._elementRef.nativeElement.placeholder = p;\n\t}\n\tprivate _intl = getIntl(LU_DATE_INPUT_TRANSLATIONS);\n\tconstructor(\n\t\t_changeDetectorRef: ChangeDetectorRef,\n\t\t_elementRef: ElementRef<HTMLInputElement>,\n\t\t_renderer: Renderer2,\n\t\tprivate _adapter: ALuDateAdapter<D>,\n\t) {\n\t\tsuper(_changeDetectorRef, _elementRef, _renderer);\n\t}\n\tngOnInit() {\n\t\tswitch (this.granularity) {\n\t\t\tcase ELuDateGranularity.year:\n\t\t\t\tthis.placeholder = this._intl.placeholderYear;\n\t\t\t\tbreak;\n\t\t\tcase ELuDateGranularity.month:\n\t\t\t\tthis.placeholder = this._intl.placeholderMonth;\n\t\t\t\tbreak;\n\t\t\tcase ELuDateGranularity.day:\n\t\t\tdefault:\n\t\t\t\tthis.placeholder = this._intl.placeholderDay;\n\t\t\t\tbreak;\n\t\t}\n\t}\n\tprotected render() {\n\t\tif (this._focused) {\n\t\t\treturn;\n\t\t}\n\t\tlet format: string;\n\t\tswitch (this.granularity) {\n\t\t\tcase ELuDateGranularity.year:\n\t\t\t\tformat = 'y';\n\t\t\t\tbreak;\n\t\t\tcase ELuDateGranularity.month:\n\t\t\t\tformat = 'MM/y';\n\t\t\t\tbreak;\n\t\t\tcase ELuDateGranularity.day:\n\t\t\tdefault:\n\t\t\t\tformat = 'shortDate';\n\t\t\t\tbreak;\n\t\t}\n\t\tconst text = this.value && this._adapter.isValid(this.value) ? this._adapter.format(this.value, format) : '';\n\t\tthis._elementRef.nativeElement.value = text;\n\t}\n\t@HostListener('input', ['$event'])\n\tonInput(event) {\n\t\t// FIXME\n\t\t// eslint-disable-next-line @typescript-eslint/no-unsafe-member-access\n\t\tconst text = event.target.value as string;\n\t\tconst value = this.parse(text);\n\t\tthis.setValue(value);\n\t}\n\tprivate parse(text: string): D {\n\t\tconst date = this._adapter.parse(text, this.granularity);\n\t\treturn date;\n\t}\n\t@HostListener('focus')\n\tonFocus() {\n\t\tthis._focused = true;\n\t}\n\t@HostListener('blur')\n\tonBlur() {\n\t\tthis._focused = false;\n\t\tthis.render();\n\t}\n\tvalidate(control: AbstractControl): ValidationErrors | null {\n\t\tconst d = control.value as D;\n\t\tif (!d) {\n\t\t\treturn null;\n\t\t}\n\t\tif (!this._adapter.isValid(d)) {\n\t\t\treturn { date: true };\n\t\t}\n\t\tif (!!this.min && this._adapter.isValid(this.min) && this._adapter.compare(this.min, d, ELuDateGranularity.day) > 0) {\n\t\t\treturn { min: true };\n\t\t}\n\t\tif (!!this.max && this._adapter.isValid(this.max) && this._adapter.compare(this.max, d, ELuDateGranularity.day) < 0) {\n\t\t\treturn { max: true };\n\t\t}\n\t\treturn null;\n\t}\n}\n","import { NgModule } from '@angular/core';\nimport { LuDateInputDirective } from './date-input.directive';\n\n/**\n * @deprecated use `LuDateInputDirective` instead\n */\n@NgModule({\n\timports: [LuDateInputDirective],\n\texports: [LuDateInputDirective],\n})\nexport class LuDateInputModule {}\n","//FIXME\n/* eslint-disable @angular-eslint/no-output-on-prefix */\n/* eslint-disable @angular-eslint/no-output-native */\nimport { A11yModule } from '@angular/cdk/a11y';\nimport { ChangeDetectionStrategy, Component, EventEmitter, forwardRef, Input, Output, TemplateRef, ViewChild } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { ALuDateAdapter, ELuDateGranularity, LuDateGranularity } from '@lucca-front/ng/core';\nimport { ALuPickerPanel } from '@lucca-front/ng/picker';\nimport { luTransformPopover } from '@lucca-front/ng/popover';\nimport { LuCalendarInputComponent } from '../calendar';\nimport { LuDateInputDirective } from '../input';\n\n@Component({\n\tselector: 'lu-date-picker',\n\ttemplateUrl: './date-picker.component.html',\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\texportAs: 'LuDatePicker',\n\tanimations: [luTransformPopover],\n\timports: [FormsModule, LuCalendarInputComponent, LuDateInputDirective, A11yModule],\n\tproviders: [\n\t\t{\n\t\t\tprovide: ALuPickerPanel,\n\t\t\tuseExisting: forwardRef(() => LuDatePickerComponent),\n\t\t},\n\t],\n})\nexport class LuDatePickerComponent<D = Date> extends ALuPickerPanel<D> {\n\t_value: D;\n\n\t@Input() min?: D;\n\t@Input() max?: D;\n\t@Input() granularity: LuDateGranularity = ELuDateGranularity.day;\n\t@Input() startOn: D = this._adapter.forgeToday();\n\n\t@Output() override close = new EventEmitter<void>();\n\t@Output() override open = new EventEmitter<void>();\n\t@Output() override hovered = new EventEmitter<boolean>();\n\t@Output() override onSelectValue = new EventEmitter<D>();\n\n\t@ViewChild(TemplateRef, { static: true })\n\tset vcTemplateRef(tr: TemplateRef<unknown>) {\n\t\tthis.templateRef = tr;\n\t}\n\n\tconstructor(private _adapter: ALuDateAdapter<D>) {\n\t\tsuper();\n\t}\n\t_emitOpenEvent(): void {\n\t\tthis.open.emit();\n\t}\n\t_emitCloseEvent(): void {\n\t\tthis.close.emit();\n\t}\n\t_emitHoveredEvent(h: boolean): void {\n\t\tthis.hovered.emit(h);\n\t}\n\t_emitSelectValue(val: D) {\n\t\tthis.onSelectValue.emit(val);\n\t}\n\tsetValue(value: D) {\n\t\tthis._value = value;\n\t}\n\t_onCalendar(val: D) {\n\t\tthis._value = val;\n\t\tthis._emitSelectValue(val);\n\t\t// if (!this.multiple) {\n\t\tthis._emitCloseEvent();\n\t\t// }\n\t}\n\t_onInput(val: D) {\n\t\tthis._value = val;\n\t\tthis._emitSelectValue(val);\n\t}\n\t_onEnter() {\n\t\tthis._emitCloseEvent();\n\t}\n\toverride _handleKeydown(event: KeyboardEvent) {\n\t\tswitch (event.key) {\n\t\t\tcase 'Escape':\n\t\t\t\tthis._emitCloseEvent();\n\t\t\t\tevent.preventDefault();\n\t\t\t\tevent.stopPropagation();\n\t\t\t\tbreak;\n\t\t\tcase 'Tab':\n\t\t\t\tthis._emitCloseEvent();\n\t\t\t\tbreak;\n\t\t}\n\t}\n\t// ngAfterViewInit() {\n\t// \tthis._dateInput.nativeElement.focus();\n\t// }\n}\n","<ng-template>\n\t<div\n\t\tclass=\"lu-picker-panel lu-date-picker-panel\"\n\t\trole=\"dialog\"\n\t\t[class]=\"panelClassesMap\"\n\t\t(click)=\"onClick()\"\n\t\t(mouseover)=\"onMouseOver()\"\n\t\t(mouseleave)=\"onMouseLeave()\"\n\t\t(mousedown)=\"onMouseDown()\"\n\t>\n\t\t<div class=\"lu-picker-content\" [class]=\"contentClassesMap\" cdkTrapFocus=\"false\" cdkTrapFocusAutoCapture=\"true\">\n\t\t\t<label class=\"textfield lu-picker-textfield\">\n\t\t\t\t<input\n\t\t\t\t\tluDateInput\n\t\t\t\t\tclass=\"textfield-input\"\n\t\t\t\t\t[ngModel]=\"_value\"\n\t\t\t\t\t(ngModelChange)=\"_onInput($event)\"\n\t\t\t\t\t[ngModelOptions]=\"{ standalone: true }\"\n\t\t\t\t\t(keydown.enter)=\"_onEnter()\"\n\t\t\t\t\t[min]=\"min\"\n\t\t\t\t\t[max]=\"max\"\n\t\t\t\t\t[granularity]=\"granularity\"\n\t\t\t\t/>\n\t\t\t</label>\n\t\t\t<lu-calendar\n\t\t\t\t[ngModel]=\"_value\"\n\t\t\t\t(ngModelChange)=\"_onCalendar($event)\"\n\t\t\t\t[ngModelOptions]=\"{ standalone: true }\"\n\t\t\t\t[min]=\"min\"\n\t\t\t\t[max]=\"max\"\n\t\t\t\t[granularity]=\"granularity\"\n\t\t\t\t[startOn]=\"startOn\"\n\t\t\t/>\n\t\t</div>\n\t</div>\n</ng-template>\n","import { NgModule } from '@angular/core';\nimport { LuDatePickerComponent } from './date-picker.component';\n\n/**\n * @deprecated use `LuDatePickerComponent` instead\n */\n@NgModule({\n\timports: [LuDatePickerComponent],\n\texports: [LuDatePickerComponent],\n})\nexport class LuDatePickerModule {}\n","export const Translations = {\n\tpt: {\n\t\tplaceholderDay: 'DD/MM/AAAA',\n\t\tplaceholderMonth: 'MM/AAAA',\n\t\tplaceholderYear: 'AAAA',\n\t},\n\tes: {\n\t\tplaceholderDay: 'DD/MM/AAAA',\n\t\tplaceholderMonth: 'MM/AAAA',\n\t\tplaceholderYear: 'AAAA',\n\t},\n\t'nl-BE': {\n\t\tplaceholderDay: 'DD/MM/JJJJ',\n\t\tplaceholderMonth: 'MM/JJJJ',\n\t\tplaceholderYear: 'JJJJ',\n\t},\n\tnl: {\n\t\tplaceholderDay: 'DD/MM/JJJJ',\n\t\tplaceholderMonth: 'MM/JJJJ',\n\t\tplaceholderYear: 'JJJJ',\n\t},\n\tit: {\n\t\tplaceholderDay: 'GG/MM/AAAA',\n\t\tplaceholderMonth: 'MM/AAAA',\n\t\tplaceholderYear: 'AAAA',\n\t},\n\tde: {\n\t\tplaceholderDay: 'TT/MM/JJJJ',\n\t\tplaceholderMonth: 'MM/JJJJ',\n\t\tplaceholderYear: 'JJJJ',\n\t},\n\tfr: {\n\t\tplaceholderDay: 'JJ/MM/AAAA',\n\t\tplaceholderMonth: 'MM/AAAA',\n\t\tplaceholderYear: 'AAAA',\n\t},\n\ten: {\n\t\tplaceholderDay: 'DD/MM/YYYY',\n\t\tplaceholderMonth: 'MM/YYYY',\n\t\tplaceholderYear: 'YYYY',\n\t},\n};\n","import { InjectionToken } from '@angular/core';\nimport { LuTranslation } from '@lucca-front/ng/core';\nimport { Translations } from './translations';\n\nexport const LU_DATE_SELECT_INPUT_TRANSLATIONS = new InjectionToken('LuDateSelectInputtranslations', {\n\tfactory: () => luDateSelectInputTranslations,\n});\n\nexport interface ILuDateSelectInputLabel {\n\tplaceholderDay: string;\n\tplaceholderMonth: string;\n\tplaceholderYear: string;\n}\n\nexport const luDateSelectInputTranslations: LuTranslation<ILuDateSelectInputLabel> = Translations;\n","import { Overlay, OverlayModule } from '@angular/cdk/overlay';\nimport { AfterViewInit, ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, Input, Renderer2, ViewContainerRef, forwardRef } from '@angular/core';\nimport { AbstractControl, ControlValueAccessor, NG_VALIDATORS, NG_VALUE_ACCESSOR, ValidationErrors, Validator } from '@angular/forms';\nimport { ClearComponent } from '@lucca-front/ng/clear';\nimport { ALuDateAdapter, ELuDateGranularity, LuDateGranularity, getIntl } from '@lucca-front/ng/core';\nimport { LuInputDirective, LuInputDisplayerDirective } from '@lucca-front/ng/input';\nimport { ILuInputWithPicker } from '@lucca-front/ng/picker';\nimport { ALuSelectInputComponent } from '@lucca-front/ng/select';\nimport { LuDateAdapterPipe } from '../adapter';\nimport { LuDatePickerComponent } from '../picker';\nimport { LU_DATE_SELECT_INPUT_TRANSLATIONS } from './date-select-input.translate';\n\n@Component({\n\tselector: 'lu-date-select',\n\ttemplateUrl: './date-select-input.component.html',\n\tstyleUrl: './date-select-input.component.scss',\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\timports: [LuDateAdapterPipe, LuDatePickerComponent, LuInputDirective, OverlayModule, ClearComponent, LuInputDisplayerDirective],\n\tproviders: [\n\t\t{\n\t\t\tprovide: NG_VALUE_ACCESSOR,\n\t\t\tuseExisting: forwardRef(() => LuDateSelectInputComponent),\n\t\t\tmulti: true,\n\t\t},\n\t\t{\n\t\t\tprovide: NG_VALIDATORS,\n\t\t\tuseExisting: LuDateSelectInputComponent,\n\t\t\tmulti: true,\n\t\t},\n\t],\n})\nexport class LuDateSelectInputComponent<D> extends ALuSelectInputComponent<D> implements ControlValueAccessor, ILuInputWithPicker<D>, AfterViewInit, Validator {\n\t@Input() min?: D;\n\t@Input() max?: D;\n\t@Input() granularity: LuDateGranularity = ELuDateGranularity.day;\n\t@Input('placeholder') override set inputPlaceholder(p: string) {\n\t\tthis._placeholder = p;\n\t}\n\t@Input() hideClearer = false;\n\tprotected _startOn: D = this._adapter.forgeToday();\n\t@Input() set startOn(s: D) {\n\t\tthis._startOn = s ?? this._adapter.forgeToday();\n\t}\n\tget startOn(): D {\n\t\treturn this._startOn;\n\t}\n\n\tget format(): string {\n\t\tswitch (this.granularity) {\n\t\t\tcase ELuDateGranularity.year:\n\t\t\t\treturn 'y';\n\t\t\tcase ELuDateGranularity.month:\n\t\t\t\treturn 'MM/y';\n\t\t\tcase ELuDateGranularity.day:\n\t\t\tdefault:\n\t\t\t\treturn 'shortDate';\n\t\t}\n\t}\n\tprivate _intl = getIntl(LU_DATE_SELECT_INPUT_TRANSLATIONS);\n\tconstructor(\n\t\tprotected override _changeDetectorRef: ChangeDetectorRef,\n\t\tprotected override _overlay: Overlay,\n\t\tprotected override _elementRef: ElementRef<HTMLElement>,\n\t\tprotected override _viewContainerRef: ViewContainerRef,\n\t\tprotected override _renderer: Renderer2,\n\t\tprivate _adapter: ALuDateAdapter<D>,\n\t) {\n\t\tsuper(_changeDetectorRef, _overlay, _elementRef, _viewContainerRef, _renderer);\n\t\tthis.overlapInput = true;\n\t}\n\n\tvalidate(control: AbstractControl): ValidationErrors | null {\n\t\tconst d = control.value as D;\n\t\tif (!d) {\n\t\t\treturn null;\n\t\t}\n\t\tif (!this._adapter.isValid(d)) {\n\t\t\treturn { date: true };\n\t\t}\n\t\tif (!!this.min && this._adapter.isValid(this.min) && this._adapter.compare(this.min, d, ELuDateGranularity.day) > 0) {\n\t\t\treturn { min: true };\n\t\t}\n\t\tif (!!this.max && this._adapter.isValid(this.max) && this._adapter.compare(this.max, d, ELuDateGranularity.day) < 0) {\n\t\t\treturn { max: true };\n\t\t}\n\t\treturn null;\n\t}\n}\n","<div class=\"lu-select-placeholder\">{{ placeholder }}</div>\n<div class=\"lu-select-value\">\n\t<div class=\"lu-select-display-wrapper notranslate\">\n\t\t<ng-container #display />\n\t</div>\n</div>\n<div class=\"lu-select-suffix\">\n\t<lu-clear [attr.hidden]=\"hideClearer ? 'hidden' : null\" />\n</div>\n<ng-template luDisplayer let-value> {{ value | luDate: format }} </ng-template>\n<lu-date-picker [min]=\"min\" [max]=\"max\" [granularity]=\"granularity\" [startOn]=\"startOn\" />\n","import { NgModule } from '@angular/core';\nimport { LuDateSelectInputComponent } from './date-select-input.component';\n\n/**\n * @deprecated use `LuDateSelectInputComponent` instead\n */\n@NgModule({\n\timports: [LuDateSelectInputComponent],\n\texports: [LuDateSelectInputComponent],\n})\nexport class LuDateSelectInputModule {}\n","import { NgModule } from '@angular/core';\nimport { LuDateAdapterPipe } from './adapter/index';\nimport { LuCalendarInputComponent } from './calendar/index';\nimport { LuDateInputDirective } from './input/index';\nimport { LuDatePickerComponent } from './picker/index';\nimport { LuDateSelectInputComponent } from './select/index';\n\n/**\n * @deprecated use `LuCalendarInputComponent, LuDatePickerComponent, LuDateInputDirective, LuDateAdapterPipe, LuDateSelectInputComponent` instead\n */\n@NgModule({\n\timports: [LuCalendarInputComponent, LuDatePickerComponent, LuDateInputDirective, LuDateAdapterPipe, LuDateSelectInputComponent],\n\texports: [LuCalendarInputComponent, LuDatePickerComponent, LuDateInputDirective, LuDateAdapterPipe, LuDateSelectInputComponent],\n})\nexport class LuDateModule {}\n","import { Injectable, LOCALE_ID, inject } from '@angular/core';\nimport { LuRelativeTime } from './humanize.model';\n\n@Injectable()\nexport class LuHumanizeDateFormatter {\n\t#intlRelativeTimeFormat = new Intl.RelativeTimeFormat(inject(LOCALE_ID));\n\n\tformat(relativeTime: LuRelativeTime): string {\n\t\treturn this.#intlRelativeTimeFormat.format(relativeTime.value, relativeTime.unit);\n\t}\n}\n","export const luRelativeTimeFormatUnit = ['second', 'minute', 'hour', 'day', 'week', 'month', 'year'] as const;\nexport type LuRelativeTimeFormatUnit = (typeof luRelativeTimeFormatUnit)[number];\n\nexport interface LuRelativeTime {\n\t/**\n\t * The relevant unit for the relative time.\n\t */\n\tunit: LuRelativeTimeFormatUnit;\n\t/**\n\t * The integer value of the relative time.\n\t * Negative values are used for past dates.\n\t */\n\tvalue: number;\n}\n","import { differenceInDays, differenceInHours, differenceInMinutes, differenceInMonths, differenceInSeconds, differenceInWeeks, differenceInYears } from 'date-fns';\nimport { Observable } from 'rxjs';\nimport { LuRelativeTime, LuRelativeTimeFormatUnit, luRelativeTimeFormatUnit } from './humanize.model';\n\nconst getDifferenceByUnit: Record<LuRelativeTimeFormatUnit, (date: number | Date, reference: number | Date) => number> = {\n\tsecond: differenceInSeconds,\n\tminute: differenceInMinutes,\n\thour: differenceInHours,\n\tday: differenceInDays,\n\tweek: differenceInWeeks,\n\tmonth: differenceInMonths,\n\tyear: differenceInYears,\n};\n\nexport function getRelativeTime(date: number | Date, reference: number | Date, allowedUnits: readonly LuRelativeTimeFormatUnit[] = luRelativeTimeFormatUnit): LuRelativeTime {\n\tif (!allowedUnits.length) {\n\t\tthrow new Error('[getRelativeTime] Pass at least one unit');\n\t}\n\n\tfor (let i = 0; i < allowedUnits.length; i++) {\n\t\tconst unit = allowedUnits[i];\n\t\tconst isLastUnit = i === allowedUnits.length - 1;\n\n\t\tif (isLastUnit) {\n\t\t\treturn { unit, value: getDifferenceByUnit[unit](date, reference) };\n\t\t}\n\n\t\tconst nextUnit = allowedUnits[i + 1];\n\t\tconst diff = getDifferenceByUnit[nextUnit](date, reference);\n\n\t\tif (Math.abs(diff) < 1) {\n\t\t\treturn { unit, value: getDifferenceByUnit[unit](date, reference) };\n\t\t}\n\t}\n\n\t// Should never happen as the for loop should always return\n\tthrow new Error('[getRelativeTime] No unit found for the given date');\n}\n\nconst nextRelativeTimeTickInMsByUnit: Record<LuRelativeTimeFormatUnit, number> = {\n\tsecond: 1_000,\n\tminute: 60_000,\n\thour: 60 * 60_000,\n\tday: 24 * 60 * 60_000,\n\tweek: 24 * 60 * 60_000,\n\tmonth: 24 * 60 * 60_000,\n\tyear: 24 * 60 * 60_000,\n};\n\nconst previousRelativeTimeUnitByUnit: Record<LuRelativeTimeFormatUnit, LuRelativeTimeFormatUnit | null> = {\n\tsecond: null,\n\tminute: 'second',\n\thour: 'minute',\n\tday: 'hour',\n\tweek: 'day',\n\tmonth: 'week',\n\tyear: 'month',\n};\n\nexport function relativeTimeTimer(date: Date | number, allowedUnits?: readonly LuRelativeTimeFormatUnit[]): Observable<LuRelativeTime> {\n\treturn new Observable<LuRelativeTime>((subscriber) => {\n\t\tlet timeoutId: ReturnType<typeof setTimeout> | null = null;\n\t\tconst dateAsNumber = typeof date === 'number' ? date : date.getTime();\n\n\t\tfunction next() {\n\t\t\tconst now = Date.now();\n\t\t\tconst relativeTime = getRelativeTime(date, now, allowedUnits);\n\t\t\tsubscriber.next(relativeTime);\n\n\t\t\tconst unit =\n\t\t\t\trelativeTime.value === 1 && relativeTime.unit !== 'second'\n\t\t\t\t\t? // We a future date come closer, we need to switch to the previous unit\n\t\t\t\t\t\t// For example, if we are at 1 minutes, we should switch to second to avoid displaying '1 minute' during '1 minute' (we want to wait one second to display '59 seconds')\n\t\t\t\t\t\tpreviousRelativeTimeUnitByUnit[relativeTime.unit]\n\t\t\t\t\t: relativeTime.unit;\n\n\t\t\tconst delta = now - dateAsNumber;\n\t\t\tconst nextTick = nextRelativeTimeTickInMsByUnit[unit];\n\n\t\t\t// setTimeout is not an exact science, so we need to adjust the next tick to avoid drift over time\n\t\t\tconst shift = Math.abs(delta) % nextTick;\n\t\t\tconst nextWait = relativeTime.value !== 1 ? nextTick - shift : 1000;\n\n\t\t\ttimeoutId = setTimeout(next, nextWait);\n\t\t}\n\n\t\t// Trigger the recursive loop\n\t\tnext();\n\n\t\treturn () => {\n\t\t\tif (timeoutId) {\n\t\t\t\tclearTimeout(timeoutId);\n\t\t\t}\n\t\t};\n\t});\n}\n","import { Pipe, PipeTransform, inject } from '@angular/core';\nimport { Observable, map } from 'rxjs';\nimport { LuHumanizeDateFormatter } from './humanize.formatter';\nimport { LuRelativeTimeFormatUnit } from './humanize.model';\nimport { relativeTimeTimer } from './humanize.utils';\n\n@Pipe({\n\tname: 'luHumanizeDate',\n})\nexport class LuHumanizeDatePipe implements PipeTransform {\n\t#formatter = inject(LuHumanizeDateFormatter, { optional: true }) ?? new LuHumanizeDateFormatter();\n\n\ttransform(value: Date | string | number, allowedUnits?: readonly LuRelativeTimeFormatUnit[]): Observable<string> {\n\t\treturn relativeTimeTimer(new Date(value), allowedUnits).pipe(map((relativeTime) => this.#formatter.format(relativeTime)));\n\t}\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["Translations","i1.LuCalendarItemFactory","i2","i1"],"mappings":"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"}