@eunomia/elements 1.0.0-beta.9 → 1.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 (322) hide show
  1. package/README.md +28 -6
  2. package/dist/angular/forms.d.ts +80 -0
  3. package/dist/angular/forms.js +267 -0
  4. package/dist/cdn/components/chunks/chunk-2XPIGFBD.js +1 -0
  5. package/dist/cdn/components/chunks/chunk-5IUNSTM3.js +1 -0
  6. package/dist/cdn/components/chunks/chunk-7HXPLZ7C.js +1 -0
  7. package/dist/cdn/components/chunks/{chunk-J3SZBXM6.js → chunk-A2NO4RSF.js} +7 -7
  8. package/dist/cdn/components/chunks/{chunk-Q34EQ5HZ.js → chunk-A623JJXJ.js} +1 -1
  9. package/dist/cdn/components/chunks/{chunk-Y3HOIL64.js → chunk-AW7PU43S.js} +2 -2
  10. package/dist/cdn/components/chunks/{chunk-FF3I7C3C.js → chunk-DWTNRFWW.js} +1 -3
  11. package/dist/cdn/components/chunks/chunk-FPNWPMHA.js +1 -0
  12. package/dist/cdn/components/chunks/chunk-GMWUHGNI.js +319 -0
  13. package/dist/cdn/components/chunks/{chunk-FQUWHNQT.js → chunk-GXOEPXDW.js} +1 -1
  14. package/dist/cdn/components/chunks/chunk-HXESKTK2.js +1 -0
  15. package/dist/cdn/components/chunks/chunk-JDUWKPHW.js +46 -0
  16. package/dist/cdn/components/chunks/{chunk-D3JJBHXN.js → chunk-JLKCBPD2.js} +2 -2
  17. package/dist/cdn/components/chunks/chunk-M6ZJHL4Q.js +1 -0
  18. package/dist/cdn/components/chunks/{chunk-TN3HGHQO.js → chunk-MDSUMP3O.js} +4 -4
  19. package/dist/cdn/components/chunks/chunk-MSQWOKBB.js +1 -0
  20. package/dist/cdn/components/chunks/{chunk-3UUZM7X2.js → chunk-NPXRQHUN.js} +3 -3
  21. package/dist/cdn/components/chunks/chunk-OB7DEGNX.js +1 -0
  22. package/dist/cdn/components/chunks/{chunk-JANNHW4Q.js → chunk-PADHCLBG.js} +4 -4
  23. package/dist/cdn/components/chunks/chunk-QMXE3KLT.js +1 -0
  24. package/dist/cdn/components/chunks/chunk-QNWKRPOW.js +1 -0
  25. package/dist/cdn/components/chunks/{chunk-KQUUMZ7U.js → chunk-RZF7QQDX.js} +7 -7
  26. package/dist/cdn/components/chunks/chunk-SCAP7J35.js +1 -0
  27. package/dist/cdn/components/chunks/chunk-TISMX7UL.js +1 -0
  28. package/dist/cdn/components/chunks/chunk-TWLI2ZOT.js +1 -0
  29. package/dist/cdn/components/chunks/chunk-W4VCWRY7.js +210 -0
  30. package/dist/cdn/components/chunks/{chunk-SZZRMJ65.js → chunk-WEG3KO6T.js} +3 -3
  31. package/dist/cdn/components/chunks/chunk-WP6ZYBAC.js +1 -0
  32. package/dist/cdn/components/chunks/{chunk-HGX6GPHM.js → chunk-XCBQ4CKH.js} +1 -1
  33. package/dist/cdn/components/chunks/{chunk-3UW2LJ7T.js → chunk-XZ3LFOQP.js} +2 -2
  34. package/dist/cdn/components/eun-alert.js +1 -1
  35. package/dist/cdn/components/eun-animate.js +92 -180
  36. package/dist/cdn/components/eun-breadcrumb.js +4 -4
  37. package/dist/cdn/components/eun-button.js +1 -1
  38. package/dist/cdn/components/eun-calendar.js +188 -115
  39. package/dist/cdn/components/eun-card.js +1 -1
  40. package/dist/cdn/components/eun-carousel.js +36 -28
  41. package/dist/cdn/components/eun-check-card.js +3 -3
  42. package/dist/cdn/components/eun-checkbox-list.js +2 -2
  43. package/dist/cdn/components/eun-checkbox.js +1 -1
  44. package/dist/cdn/components/eun-chip.js +11 -15
  45. package/dist/cdn/components/eun-collapse.js +21 -10
  46. package/dist/cdn/components/eun-color-picker.js +32 -32
  47. package/dist/cdn/components/eun-counter.js +8 -8
  48. package/dist/cdn/components/eun-date-picker.js +83 -79
  49. package/dist/cdn/components/eun-description-list.js +1 -1
  50. package/dist/cdn/components/eun-divider.js +9 -8
  51. package/dist/cdn/components/eun-drawer.js +8 -6
  52. package/dist/cdn/components/eun-dropdown-button.js +1 -1
  53. package/dist/cdn/components/eun-dropdown-item.js +4 -4
  54. package/dist/cdn/components/eun-fab.js +1 -1
  55. package/dist/cdn/components/eun-image-card.js +2 -2
  56. package/dist/cdn/components/eun-image-carousel.js +55 -29
  57. package/dist/cdn/components/eun-infinite-list.js +2 -2
  58. package/dist/cdn/components/eun-input-file.js +3 -3
  59. package/dist/cdn/components/eun-input-phone.js +6 -6
  60. package/dist/cdn/components/eun-input.js +1 -1
  61. package/dist/cdn/components/eun-label.js +1 -1
  62. package/dist/cdn/components/eun-link.js +18 -329
  63. package/dist/cdn/components/eun-loader.js +1 -1
  64. package/dist/cdn/components/eun-modal.js +9 -7
  65. package/dist/cdn/components/eun-nav-menu.js +363 -0
  66. package/dist/cdn/components/eun-pagination.js +4 -4
  67. package/dist/cdn/components/eun-password-strength.js +2 -2
  68. package/dist/cdn/components/eun-progress-bar.js +1 -1
  69. package/dist/cdn/components/eun-radio-card.js +4 -4
  70. package/dist/cdn/components/eun-radio-list.js +1 -1
  71. package/dist/cdn/components/eun-radio.js +1 -1
  72. package/dist/cdn/components/eun-rating.js +9 -9
  73. package/dist/cdn/components/eun-scheduler-event-editor.js +113 -77
  74. package/dist/cdn/components/eun-scheduler-event.js +1 -1
  75. package/dist/cdn/components/eun-scheduler.js +137 -79
  76. package/dist/cdn/components/eun-search.js +6 -6
  77. package/dist/cdn/components/eun-select.js +1 -1
  78. package/dist/cdn/components/eun-sidebar.js +23 -14
  79. package/dist/cdn/components/eun-slider.js +2 -2
  80. package/dist/cdn/components/eun-sliding-card.js +1 -1
  81. package/dist/cdn/components/eun-step.js +2 -2
  82. package/dist/cdn/components/eun-stepper.js +11 -12
  83. package/dist/cdn/components/eun-switch.js +2 -2
  84. package/dist/cdn/components/eun-tab-group.js +1 -1
  85. package/dist/cdn/components/eun-tab-panel.js +1 -1
  86. package/dist/cdn/components/eun-table-action-bar.js +1 -1
  87. package/dist/cdn/components/eun-table.js +13 -10
  88. package/dist/cdn/components/eun-tag.js +1 -1
  89. package/dist/cdn/components/eun-textarea.js +4 -4
  90. package/dist/cdn/components/eun-time-picker.js +28 -25
  91. package/dist/cdn/components/eun-toast.js +8 -8
  92. package/dist/cdn/components/eun-toggle-group.js +8 -2
  93. package/dist/cdn/components/eun-toggle-item.js +8 -2
  94. package/dist/cdn/components/eun-toggle.js +4 -1
  95. package/dist/cdn/components/eun-toolbar.js +114 -36
  96. package/dist/cdn/components/eun-tooltip.js +1 -1
  97. package/dist/cdn/styles/eunomia-themes.css +1 -1
  98. package/dist/cdn/styles/themes/eunomia-theme.css +1 -1
  99. package/dist/cdn/styles/themes/mixins/eunomia-neutrals.mixin.scss +2 -2
  100. package/dist/cdn/styles/themes/prebuilt-themes/eunomia/eunomia.theme.css +1 -1
  101. package/dist/cdn/styles/themes/prebuilt-themes/fire/eunomia-fire.theme.css +1 -1
  102. package/dist/cdn/styles/themes/prebuilt-themes/forest/eunomia-forest.theme.css +1 -1
  103. package/dist/cdn/styles/themes/prebuilt-themes/gold/eunomia-gold.theme.css +1 -1
  104. package/dist/cdn/styles/themes/prebuilt-themes/ocean/eunomia-ocean.theme.css +1 -1
  105. package/dist/cdn/styles/themes/prebuilt-themes/salmon/eunomia-salmon.theme.css +1 -1
  106. package/dist/cdn/styles/themes/prebuilt-themes/violet/eunomia-violet.theme.css +1 -1
  107. package/dist/cdn/styles/tools/mixins/layout/eunomia-grid.mixin.scss +116 -8
  108. package/dist/components/action/button/button.styles.js +2 -2
  109. package/dist/components/action/dropdown-button/dropdown-button.d.ts +4 -0
  110. package/dist/components/action/dropdown-button/dropdown-button.js +1 -0
  111. package/dist/components/action/dropdown-button/dropdown-button.styles.js +5 -4
  112. package/dist/components/action/dropdown-button/dropdown-item.d.ts +1 -0
  113. package/dist/components/action/dropdown-button/dropdown-item.js +1 -0
  114. package/dist/components/action/dropdown-button/dropdown-item.styles.js +4 -4
  115. package/dist/components/action/link/link.d.ts +2 -1
  116. package/dist/components/action/link/link.js +2 -1
  117. package/dist/components/action/link/link.styles.d.ts +40 -1
  118. package/dist/components/action/link/link.styles.js +83 -60
  119. package/dist/components/action/shared-styles/button-palette.styles.js +1 -1
  120. package/dist/components/action/toggle/toggle-group.d.ts +1 -0
  121. package/dist/components/action/toggle/toggle-group.js +1 -0
  122. package/dist/components/action/toggle/toggle-group.styles.d.ts +1 -0
  123. package/dist/components/action/toggle/toggle-group.styles.js +9 -2
  124. package/dist/components/action/toggle/toggle-item.styles.js +8 -2
  125. package/dist/components/action/toggle/toggle.d.ts +1 -0
  126. package/dist/components/action/toggle/toggle.js +1 -0
  127. package/dist/components/action/toggle/toggle.styles.d.ts +1 -0
  128. package/dist/components/action/toggle/toggle.styles.js +5 -1
  129. package/dist/components/alert/drawer/drawer.d.ts +14 -13
  130. package/dist/components/alert/drawer/drawer.js +20 -28
  131. package/dist/components/alert/modal/modal.d.ts +14 -13
  132. package/dist/components/alert/modal/modal.js +20 -28
  133. package/dist/components/alert/modal/modal.styles.js +1 -1
  134. package/dist/components/alert/toast/toast.d.ts +5 -5
  135. package/dist/components/alert/toast/toast.js +9 -10
  136. package/dist/components/alert/toast/toast.styles.js +3 -3
  137. package/dist/components/content/card/image-card.styles.js +1 -1
  138. package/dist/components/content/chip/chip.d.ts +7 -9
  139. package/dist/components/content/chip/chip.js +11 -14
  140. package/dist/components/content/chip/chip.styles.js +1 -5
  141. package/dist/components/content/collapse/collapse.d.ts +5 -0
  142. package/dist/components/content/collapse/collapse.js +7 -0
  143. package/dist/components/content/collapse/collapse.styles.d.ts +3 -0
  144. package/dist/components/content/collapse/collapse.styles.js +13 -1
  145. package/dist/components/content/description-list/description-list.styles.js +1 -1
  146. package/dist/components/content/image-carousel/image-carousel.d.ts +60 -13
  147. package/dist/components/content/image-carousel/image-carousel.js +100 -22
  148. package/dist/components/content/image-carousel/image-carousel.styles.js +32 -6
  149. package/dist/components/content/password-strength/password-strength.styles.js +1 -1
  150. package/dist/components/content/progress-bar/progress-bar.styles.js +1 -1
  151. package/dist/components/content/shared-styles/card-link.styles.js +1 -1
  152. package/dist/components/content/shared-styles/tone-surface.styles.js +1 -3
  153. package/dist/components/form/checkbox/check-card.styles.js +2 -2
  154. package/dist/components/form/checkbox/checkbox-list.d.ts +3 -1
  155. package/dist/components/form/checkbox/checkbox-list.js +3 -1
  156. package/dist/components/form/checkbox/checkbox.styles.js +1 -1
  157. package/dist/components/form/color-picker/color-picker.d.ts +28 -3
  158. package/dist/components/form/color-picker/color-picker.js +53 -7
  159. package/dist/components/form/counter/counter.js +1 -1
  160. package/dist/components/form/counter/counter.styles.js +2 -2
  161. package/dist/components/form/date-picker/date-picker-day-grid.styles.js +1 -1
  162. package/dist/components/form/date-picker/date-picker-month-grid.js +1 -1
  163. package/dist/components/form/date-picker/date-picker.d.ts +50 -13
  164. package/dist/components/form/date-picker/date-picker.js +178 -43
  165. package/dist/components/form/input/input.js +1 -4
  166. package/dist/components/form/input-file/input-file.styles.js +2 -2
  167. package/dist/components/form/input-phone/input-phone.js +4 -3
  168. package/dist/components/form/label/label.styles.js +1 -1
  169. package/dist/components/form/radio/radio-card.styles.js +2 -2
  170. package/dist/components/form/radio/radio.styles.js +1 -1
  171. package/dist/components/form/rating/rating.js +3 -5
  172. package/dist/components/form/rating/rating.styles.js +2 -2
  173. package/dist/components/form/search/search.d.ts +1 -7
  174. package/dist/components/form/search/search.js +2 -12
  175. package/dist/components/form/shared-styles/field.styles.js +2 -2
  176. package/dist/components/form/slider/slider.styles.js +1 -1
  177. package/dist/components/form/switch/switch.styles.js +1 -1
  178. package/dist/components/form/textarea/textarea.js +1 -5
  179. package/dist/components/form/textarea/textarea.styles.js +2 -2
  180. package/dist/components/form/time-picker/time-picker-columns.d.ts +4 -1
  181. package/dist/components/form/time-picker/time-picker-columns.js +64 -15
  182. package/dist/components/form/time-picker/time-picker-columns.styles.js +5 -1
  183. package/dist/components/form/time-picker/time-picker-list.d.ts +4 -1
  184. package/dist/components/form/time-picker/time-picker-list.js +15 -8
  185. package/dist/components/form/time-picker/time-picker.d.ts +11 -2
  186. package/dist/components/form/time-picker/time-picker.js +22 -8
  187. package/dist/components/layout/animate/animate.d.ts +35 -17
  188. package/dist/components/layout/animate/animate.js +27 -14
  189. package/dist/components/layout/animate/animate.styles.d.ts +2 -1
  190. package/dist/components/layout/animate/animate.styles.js +107 -179
  191. package/dist/components/layout/divider/divider.d.ts +1 -0
  192. package/dist/components/layout/divider/divider.js +2 -1
  193. package/dist/components/layout/divider/divider.styles.js +7 -6
  194. package/dist/components/layout/infinite-list/infinite-list.styles.js +1 -1
  195. package/dist/components/navigation/breadcrumb/breadcrumb.styles.js +3 -3
  196. package/dist/components/navigation/carousel/carousel.d.ts +23 -14
  197. package/dist/components/navigation/carousel/carousel.js +39 -27
  198. package/dist/components/navigation/carousel/carousel.styles.js +16 -8
  199. package/dist/components/navigation/nav-menu/nav-menu.d.ts +201 -0
  200. package/dist/components/navigation/nav-menu/nav-menu.js +673 -0
  201. package/dist/components/navigation/nav-menu/nav-menu.styles.d.ts +1 -0
  202. package/dist/components/navigation/nav-menu/nav-menu.styles.js +352 -0
  203. package/dist/components/navigation/pagination/pagination.d.ts +3 -0
  204. package/dist/components/navigation/pagination/pagination.styles.js +2 -2
  205. package/dist/components/navigation/sidebar/sidebar.d.ts +8 -10
  206. package/dist/components/navigation/sidebar/sidebar.js +12 -15
  207. package/dist/components/navigation/sidebar/sidebar.styles.js +13 -4
  208. package/dist/components/navigation/stepper/step.styles.js +2 -2
  209. package/dist/components/navigation/stepper/stepper.d.ts +24 -13
  210. package/dist/components/navigation/stepper/stepper.js +36 -23
  211. package/dist/components/navigation/stepper/stepper.styles.js +2 -2
  212. package/dist/components/navigation/tabs/tab-group/tab-group.js +1 -1
  213. package/dist/components/navigation/tabs/tab-panel/tab-panel.styles.js +1 -1
  214. package/dist/components/navigation/toolbar/toolbar.d.ts +121 -20
  215. package/dist/components/navigation/toolbar/toolbar.js +176 -45
  216. package/dist/components/navigation/toolbar/toolbar.styles.js +113 -28
  217. package/dist/events/editor-state-change.event.d.ts +28 -0
  218. package/dist/events/editor-state-change.event.js +22 -0
  219. package/dist/events/event-cancel.event.d.ts +20 -0
  220. package/dist/events/event-cancel.event.js +17 -0
  221. package/dist/events/period-change.event.d.ts +14 -6
  222. package/dist/events/period-change.event.js +9 -6
  223. package/dist/features/scheduler/calendar/calendar.d.ts +52 -20
  224. package/dist/features/scheduler/calendar/calendar.js +84 -36
  225. package/dist/features/scheduler/calendar/calendar.styles.js +5 -2
  226. package/dist/features/scheduler/scheduler/scheduler.d.ts +69 -4
  227. package/dist/features/scheduler/scheduler/scheduler.js +172 -47
  228. package/dist/features/scheduler/scheduler/scheduler.styles.js +6 -0
  229. package/dist/features/scheduler/scheduler-event/scheduler-event.d.ts +18 -20
  230. package/dist/features/scheduler/scheduler-event/scheduler-event.js +29 -38
  231. package/dist/features/scheduler/scheduler-event/scheduler-event.styles.js +2 -2
  232. package/dist/features/scheduler/scheduler-event-editor/scheduler-event-editor.d.ts +102 -18
  233. package/dist/features/scheduler/scheduler-event-editor/scheduler-event-editor.js +249 -112
  234. package/dist/features/scheduler/scheduler-event-editor/scheduler-event-editor.styles.js +11 -1
  235. package/dist/features/scheduler/shared/scheduler-event-popover.d.ts +9 -1
  236. package/dist/features/scheduler/shared/scheduler-event-popover.js +77 -42
  237. package/dist/features/scheduler/shared/scheduler-event-popover.styles.js +14 -3
  238. package/dist/features/scheduler/shared/scheduler-hour-grid.d.ts +3 -2
  239. package/dist/features/scheduler/shared/scheduler-hour-grid.js +53 -46
  240. package/dist/features/scheduler/shared/scheduler-hour-grid.styles.js +13 -7
  241. package/dist/features/scheduler/shared/scheduler-month-view.js +1 -1
  242. package/dist/features/scheduler/shared/scheduler-month-view.styles.js +13 -7
  243. package/dist/features/scheduler/shared/scheduler-year-view.d.ts +6 -5
  244. package/dist/features/scheduler/shared/scheduler-year-view.js +11 -7
  245. package/dist/features/scheduler/shared/scheduler-year-view.styles.js +57 -3
  246. package/dist/features/scheduler/shared/scheduler.types.d.ts +5 -9
  247. package/dist/features/scheduler/shared/scheduler.utils.d.ts +61 -0
  248. package/dist/features/scheduler/shared/scheduler.utils.js +78 -4
  249. package/dist/features/table/table/table-native.styles.js +8 -4
  250. package/dist/features/table/table/table.d.ts +2 -1
  251. package/dist/features/table/table/table.js +2 -1
  252. package/dist/features/table/table/table.styles.js +6 -4
  253. package/dist/i18n/en.d.ts +17 -0
  254. package/dist/i18n/en.js +17 -0
  255. package/dist/i18n/fr.js +17 -0
  256. package/dist/index.d.ts +6 -0
  257. package/dist/index.js +4 -0
  258. package/dist/jsx.d.ts +48 -6
  259. package/dist/mixins/anchor-position.mixin.d.ts +17 -0
  260. package/dist/mixins/anchor-position.mixin.js +45 -7
  261. package/dist/mixins/button.mixin.js +2 -1
  262. package/dist/mixins/check.mixin.js +14 -5
  263. package/dist/mixins/dialog-surface.mixin.d.ts +1 -1
  264. package/dist/mixins/dialog-surface.mixin.js +5 -5
  265. package/dist/mixins/form.mixin.js +33 -13
  266. package/dist/mixins/localizable.mixin.d.ts +1 -0
  267. package/dist/mixins/localizable.mixin.js +9 -2
  268. package/dist/mixins/radio.mixin.js +14 -5
  269. package/dist/mixins/validators.mixin.js +4 -3
  270. package/dist/react.d.ts +59 -0
  271. package/dist/react.js +42 -0
  272. package/dist/ssr/animate-ssr.css +35 -0
  273. package/dist/ssr/breadcrumb-ssr.css +3 -3
  274. package/dist/ssr/button-ssr.css +8 -2
  275. package/dist/ssr/card-ssr.css +1 -1
  276. package/dist/ssr/carousel-ssr.css +15 -4
  277. package/dist/ssr/chip-ssr.css +3 -3
  278. package/dist/ssr/collapse-ssr.css +2 -2
  279. package/dist/ssr/description-list-ssr.css +1 -1
  280. package/dist/ssr/divider-ssr.css +23 -0
  281. package/dist/ssr/field-ssr.css +245 -42
  282. package/dist/ssr/image-carousel-ssr.css +2 -4
  283. package/dist/ssr/links-ssr.css +17 -3
  284. package/dist/ssr/nav-menu-ssr.css +82 -0
  285. package/dist/ssr/overlay-ssr.css +4 -0
  286. package/dist/ssr/scheduler-ssr.css +182 -0
  287. package/dist/ssr/stepper-ssr.css +136 -0
  288. package/dist/ssr/table-ssr.css +7 -4
  289. package/dist/ssr/tag-ssr.css +1 -1
  290. package/dist/ssr/toolbar-ssr.css +7 -5
  291. package/dist/utils/css-length.utils.d.ts +14 -0
  292. package/dist/utils/css-length.utils.js +32 -0
  293. package/dist/utils/form-validation.utils.d.ts +36 -0
  294. package/dist/utils/form-validation.utils.js +113 -0
  295. package/dist/utils/implicit-submission.utils.js +2 -14
  296. package/dist/utils/interactive-content.utils.d.ts +10 -0
  297. package/dist/utils/interactive-content.utils.js +43 -0
  298. package/dist/utils/popover.utils.js +3 -2
  299. package/dist/utils/scroll-lock.utils.d.ts +9 -1
  300. package/dist/utils/scroll-lock.utils.js +21 -2
  301. package/dist/utils/theme-generator.utils.d.ts +1 -0
  302. package/dist/utils/theme-generator.utils.js +23 -10
  303. package/dist/utils/validity.utils.d.ts +18 -4
  304. package/dist/utils/validity.utils.js +74 -4
  305. package/package.json +34 -3
  306. package/styles/themes/mixins/eunomia-neutrals.mixin.scss +2 -2
  307. package/styles/tools/mixins/layout/eunomia-grid.mixin.scss +116 -8
  308. package/dist/cdn/components/chunks/chunk-4DRU3IYJ.js +0 -1
  309. package/dist/cdn/components/chunks/chunk-647ISUF4.js +0 -1
  310. package/dist/cdn/components/chunks/chunk-6TIEBY34.js +0 -1
  311. package/dist/cdn/components/chunks/chunk-E6UOI36Q.js +0 -1
  312. package/dist/cdn/components/chunks/chunk-GNAUNTS5.js +0 -1
  313. package/dist/cdn/components/chunks/chunk-IJJ67C66.js +0 -1
  314. package/dist/cdn/components/chunks/chunk-J7ETIRSK.js +0 -1
  315. package/dist/cdn/components/chunks/chunk-JGV7LHEI.js +0 -1
  316. package/dist/cdn/components/chunks/chunk-L74LXUGL.js +0 -1
  317. package/dist/cdn/components/chunks/chunk-MY6ORZJR.js +0 -46
  318. package/dist/cdn/components/chunks/chunk-QWTFP56P.js +0 -1
  319. package/dist/cdn/components/chunks/chunk-SFX2LQ4K.js +0 -205
  320. package/dist/cdn/components/chunks/chunk-WW4BTWMH.js +0 -1
  321. package/dist/utils/boolean.utils.d.ts +0 -14
  322. package/dist/utils/boolean.utils.js +0 -20
@@ -1,9 +1,10 @@
1
1
  /**
2
2
  * Any open popover that isn't `manual`, i.e. one the browser light-dismisses
3
3
  * on its own (an `eun-select` listbox, a date picker calendar, a dropdown
4
- * menu, ...).
4
+ * menu, ...), or a `manual` one marked `data-light-dismiss` that closes
5
+ * itself on `Escape` the same way (an `eun-nav-menu` panel).
5
6
  */
6
- const OPEN_AUTO_POPOVER_SELECTOR = ':popover-open:not([popover="manual"])';
7
+ const OPEN_AUTO_POPOVER_SELECTOR = ':popover-open:not([popover="manual"]), :popover-open[data-light-dismiss]';
7
8
  /**
8
9
  * Whether an open `auto` popover sits along `event`'s composed path : either
9
10
  * crossed directly (focus is inside the panel) or in a shadow root crossed on
@@ -1,3 +1,9 @@
1
+ /**
2
+ * Whether page scroll is currently locked by at least one overlay. While it
3
+ * is, `window.scrollY` reads `0` whatever the page's real position, so
4
+ * anything deriving state from it should wait for the unlock.
5
+ */
6
+ export declare function isScrollLocked(): boolean;
1
7
  /**
2
8
  * Locks page scroll. Reference-counted so nested overlays (e.g. a
3
9
  * `eun-modal` opened from within an already-open dialog) don't unlock
@@ -14,6 +20,8 @@ export declare function lockScroll(): void;
14
20
  /**
15
21
  * Releases one scroll lock reference, restoring page scroll (and the exact
16
22
  * scroll position captured when the lock was first acquired) once none
17
- * remain.
23
+ * remain. The position is only restored on the same page : after a
24
+ * client-side navigation from inside the overlay, the new page stays at
25
+ * the top, where its router meant to put it.
18
26
  */
19
27
  export declare function unlockScroll(): void;
@@ -1,5 +1,21 @@
1
1
  let lockCount = 0;
2
2
  let savedScrollY = 0;
3
+ let savedPageUrl = "";
4
+ /**
5
+ * The current page URL without its hash, so a same-page anchor jump still
6
+ * counts as the same page.
7
+ */
8
+ function currentPageUrl() {
9
+ return window.location.href.split("#")[0];
10
+ }
11
+ /**
12
+ * Whether page scroll is currently locked by at least one overlay. While it
13
+ * is, `window.scrollY` reads `0` whatever the page's real position, so
14
+ * anything deriving state from it should wait for the unlock.
15
+ */
16
+ export function isScrollLocked() {
17
+ return lockCount > 0;
18
+ }
3
19
  /**
4
20
  * Locks page scroll. Reference-counted so nested overlays (e.g. a
5
21
  * `eun-modal` opened from within an already-open dialog) don't unlock
@@ -15,6 +31,7 @@ let savedScrollY = 0;
15
31
  export function lockScroll() {
16
32
  if (lockCount === 0) {
17
33
  savedScrollY = window.scrollY;
34
+ savedPageUrl = currentPageUrl();
18
35
  const { style } = document.body;
19
36
  style.position = "fixed";
20
37
  style.top = `-${savedScrollY}px`;
@@ -27,7 +44,9 @@ export function lockScroll() {
27
44
  /**
28
45
  * Releases one scroll lock reference, restoring page scroll (and the exact
29
46
  * scroll position captured when the lock was first acquired) once none
30
- * remain.
47
+ * remain. The position is only restored on the same page : after a
48
+ * client-side navigation from inside the overlay, the new page stays at
49
+ * the top, where its router meant to put it.
31
50
  */
32
51
  export function unlockScroll() {
33
52
  lockCount = Math.max(0, lockCount - 1);
@@ -38,6 +57,6 @@ export function unlockScroll() {
38
57
  style.left = "";
39
58
  style.right = "";
40
59
  style.width = "";
41
- window.scrollTo(0, savedScrollY);
60
+ window.scrollTo(0, currentPageUrl() === savedPageUrl ? savedScrollY : 0);
42
61
  }
43
62
  }
@@ -79,6 +79,7 @@ export interface EunomiaThemeCssOptions {
79
79
  darkInverseSurfaceColor?: EunomiaHexColor;
80
80
  textColor?: EunomiaHexColor;
81
81
  darkTextColor?: EunomiaHexColor;
82
+ pageBackgroundColor?: EunomiaHexColor;
82
83
  borderColor?: EunomiaHexColor;
83
84
  darkBorderColor?: EunomiaHexColor;
84
85
  fontFamily?: string;
@@ -222,14 +222,21 @@ export function buildTints(primaryHex, isDark, borderColor) {
222
222
  };
223
223
  }
224
224
  /**
225
- * The muted `--eun-text-secondary` for a custom text color: `text` mixed
226
- * 30% toward `surface`, backed off in 5% steps until it still clears WCAG
227
- * AA against that surface.
225
+ * The dark `--eun-text-secondary`: the near-white translucent text every
226
+ * theme already defines, rather than a mix that greys out on a dark surface.
228
227
  */
229
- function secondaryText(text, surface) {
230
- let percent = 30;
228
+ const DARK_SECONDARY_TEXT = "var(--eun-text-on-dark-secondary)";
229
+ /**
230
+ * The muted light `--eun-text-secondary` for a custom text color: `text`
231
+ * mixed 40% toward `surface`, backed off in 5% steps until it still clears WCAG
232
+ * AA against that surface and against `pageBackground` when one is given.
233
+ */
234
+ function secondaryText(text, surface, pageBackground) {
235
+ const backgrounds = pageBackground ? [surface, pageBackground] : [surface];
236
+ const readable = (color) => backgrounds.every((bg) => contrastRatio(color, bg) >= MIN_CONTRAST);
237
+ let percent = 40;
231
238
  let result = mix(text, surface, percent / 100);
232
- while (contrastRatio(result, surface) < MIN_CONTRAST && percent > 0) {
239
+ while (!readable(result) && percent > 0) {
233
240
  percent -= 5;
234
241
  result = mix(text, surface, percent / 100);
235
242
  }
@@ -244,7 +251,7 @@ function secondaryText(text, surface) {
244
251
  * so the inline and the stylesheet output can never drift apart.
245
252
  */
246
253
  function buildThemeTokens(primary, secondary, isDark, options) {
247
- const { surfaceColor, fontFamily, darkSecondaryColor, inverseSurfaceColor, textColor, borderColor, } = options;
254
+ const { surfaceColor, fontFamily, darkSecondaryColor, inverseSurfaceColor, textColor, pageBackgroundColor, borderColor, } = options;
248
255
  const tokens = [];
249
256
  for (const [type, seed, checkDark] of [
250
257
  ["primary", primary, isDark],
@@ -270,7 +277,12 @@ function buildThemeTokens(primary, secondary, isDark, options) {
270
277
  tokens.push(["--eun-surface-inverse", inverseSurfaceColor], ["--eun-text-on-inverse", pickOnColor(inverseSurfaceColor)]);
271
278
  }
272
279
  if (textColor) {
273
- tokens.push(["--eun-text-color", textColor], ["--eun-text-secondary", secondaryText(textColor, surfaceColor)]);
280
+ tokens.push(["--eun-text-color", textColor], [
281
+ "--eun-text-secondary",
282
+ isDark
283
+ ? DARK_SECONDARY_TEXT
284
+ : secondaryText(textColor, surfaceColor, pageBackgroundColor),
285
+ ]);
274
286
  }
275
287
  if (fontFamily) {
276
288
  tokens.push(["--eun-font-family", fontFamily]);
@@ -331,7 +343,7 @@ export function initializeTheme(primary, secondary, isDark = false, surfaceColor
331
343
  * switching mode is just a `data-theme` change, no regeneration needed.
332
344
  */
333
345
  export function buildThemeCss(primary, secondary, options = {}) {
334
- const { surfaceColor = "#ffffff", darkSurfaceColor = DARK_SURFACE, darkSecondaryColor, inverseSurfaceColor, darkInverseSurfaceColor = inverseSurfaceColor, textColor, darkTextColor, borderColor, darkBorderColor, fontFamily, brand = "custom", } = options;
346
+ const { surfaceColor = "#ffffff", darkSurfaceColor = DARK_SURFACE, darkSecondaryColor, inverseSurfaceColor, darkInverseSurfaceColor = inverseSurfaceColor, textColor, darkTextColor, pageBackgroundColor, borderColor, darkBorderColor, fontFamily, brand = "custom", } = options;
335
347
  const rule = (selector, isDark) => {
336
348
  const tokens = buildThemeTokens(primary, secondary, isDark, {
337
349
  surfaceColor: isDark ? darkSurfaceColor : surfaceColor,
@@ -341,10 +353,11 @@ export function buildThemeCss(primary, secondary, options = {}) {
341
353
  ? darkInverseSurfaceColor
342
354
  : inverseSurfaceColor,
343
355
  textColor: isDark ? darkTextColor : textColor,
356
+ pageBackgroundColor: isDark ? undefined : pageBackgroundColor,
344
357
  borderColor: isDark ? darkBorderColor : borderColor,
345
358
  });
346
359
  if (isDark && textColor && !darkTextColor) {
347
- tokens.push(["--eun-text-color", "var(--eun-color-grey-800)"], ["--eun-text-secondary", "var(--eun-color-grey-700)"]);
360
+ tokens.push(["--eun-text-color", "var(--eun-color-grey-800)"], ["--eun-text-secondary", DARK_SECONDARY_TEXT]);
348
361
  }
349
362
  const body = tokens
350
363
  .map(([property, value]) => ` ${property}: ${value};`)
@@ -1,12 +1,21 @@
1
1
  import { Validity } from "../mixins/validators.mixin.js";
2
+ import { Dictionary } from "../i18n/index.js";
2
3
  /**
3
4
  * The shape every native form field element (`<input>`, `<textarea>`, ...)
4
5
  * exposes for constraint validation — the common surface
5
- * {@link pickValidity} reads from.
6
+ * {@link pickValidity} reads from. The constraint attributes are optional,
7
+ * read only to fill in the translated message of the matching flag.
6
8
  */
7
9
  export interface ValidityHost {
8
10
  readonly validity: ValidityState;
9
11
  readonly validationMessage: string;
12
+ readonly type?: string;
13
+ readonly value?: string;
14
+ readonly minLength?: number;
15
+ readonly maxLength?: number;
16
+ readonly min?: string;
17
+ readonly max?: string;
18
+ readonly step?: string;
10
19
  }
11
20
  /**
12
21
  * Reads native HTML constraint validation off `field`, picking only `keys`
@@ -14,11 +23,16 @@ export interface ValidityHost {
14
23
  * `checkLocalValidators` override that delegates to a native field element :
15
24
  * no field yet, or an already-valid one, reports nothing ; an invalid one
16
25
  * reports only the flags the caller actually cares about (e.g. `eun-counter`
17
- * has no `pattern`/`tooShort`, `eun-textarea` has no `min`/`max`), alongside
18
- * the field's own `validationMessage`.
26
+ * has no `pattern`/`tooShort`, `eun-textarea` has no `min`/`max`).
27
+ *
28
+ * The message is the library's own for the first violated flag of `keys`,
29
+ * so it follows the field's locale rather than the browser's language. The
30
+ * field's own `validationMessage` is kept only for a flag the dictionary
31
+ * has no message for.
19
32
  *
20
33
  * @param field the native field element to read from, or `undefined` while not yet rendered.
21
34
  * @param keys which `ValidityState` flags to report.
35
+ * @param messages the validation messages of the field's locale.
22
36
  * @returns the picked validity state and message.
23
37
  */
24
- export declare function pickValidity(field: ValidityHost | undefined, keys: readonly (keyof ValidityState)[]): Validity;
38
+ export declare function pickValidity(field: ValidityHost | undefined, keys: readonly (keyof ValidityState)[], messages: Dictionary["validation"]): Validity;
@@ -1,23 +1,93 @@
1
+ /**
2
+ * The `stepMismatch` message, naming the two valid values around the
3
+ * field's value, the way the browser's own message does. Steps count from
4
+ * `min`, or from 0 without one.
5
+ *
6
+ * @param field the native field element the flag was read from.
7
+ * @param messages the validation messages of the field's locale.
8
+ * @returns the translated message, or `undefined` without a usable step or value.
9
+ */
10
+ function stepMismatchMessage(field, messages) {
11
+ const step = Number(field.step);
12
+ const value = Number(field.value);
13
+ const base = Number(field.min || 0);
14
+ if (!(step > 0) || field.value === "" || !Number.isFinite(value)) {
15
+ return undefined;
16
+ }
17
+ // Rounded to the step's and base's precision, so 0.1 steps don't drift.
18
+ const decimals = Math.max(...[field.step, field.min].map((n) => (n?.split(".")[1] ?? "").length));
19
+ const lower = base + Math.floor((value - base) / step) * step;
20
+ return messages.stepMismatch(String(Number(lower.toFixed(decimals))), String(Number((lower + step).toFixed(decimals))));
21
+ }
22
+ /**
23
+ * The library's own message for a violated `key`, in the locale of
24
+ * `messages`, or `undefined` when it has none (e.g. a `typeMismatch` on a
25
+ * type other than `email`/`url`).
26
+ *
27
+ * @param field the native field element the flag was read from.
28
+ * @param key the violated `ValidityState` flag.
29
+ * @param messages the validation messages of the field's locale.
30
+ * @returns the translated message, if any.
31
+ */
32
+ function translateValidity(field, key, messages) {
33
+ switch (key) {
34
+ case "valueMissing":
35
+ return messages.valueMissing;
36
+ case "typeMismatch":
37
+ return field.type === "email" || field.type === "url"
38
+ ? messages.typeMismatch[field.type]
39
+ : undefined;
40
+ case "patternMismatch":
41
+ return messages.patternMismatch;
42
+ case "tooShort":
43
+ return field.minLength !== undefined && field.value !== undefined
44
+ ? messages.tooShort(field.minLength, field.value.length)
45
+ : undefined;
46
+ case "tooLong":
47
+ return field.maxLength !== undefined && field.value !== undefined
48
+ ? messages.tooLong(field.maxLength, field.value.length)
49
+ : undefined;
50
+ case "rangeUnderflow":
51
+ return field.min ? messages.rangeUnderflow(field.min) : undefined;
52
+ case "rangeOverflow":
53
+ return field.max ? messages.rangeOverflow(field.max) : undefined;
54
+ case "stepMismatch":
55
+ return stepMismatchMessage(field, messages);
56
+ case "badInput":
57
+ return messages.badInput;
58
+ default:
59
+ return undefined;
60
+ }
61
+ }
1
62
  /**
2
63
  * Reads native HTML constraint validation off `field`, picking only `keys`
3
64
  * out of its `ValidityState` — the shared shape behind every
4
65
  * `checkLocalValidators` override that delegates to a native field element :
5
66
  * no field yet, or an already-valid one, reports nothing ; an invalid one
6
67
  * reports only the flags the caller actually cares about (e.g. `eun-counter`
7
- * has no `pattern`/`tooShort`, `eun-textarea` has no `min`/`max`), alongside
8
- * the field's own `validationMessage`.
68
+ * has no `pattern`/`tooShort`, `eun-textarea` has no `min`/`max`).
69
+ *
70
+ * The message is the library's own for the first violated flag of `keys`,
71
+ * so it follows the field's locale rather than the browser's language. The
72
+ * field's own `validationMessage` is kept only for a flag the dictionary
73
+ * has no message for.
9
74
  *
10
75
  * @param field the native field element to read from, or `undefined` while not yet rendered.
11
76
  * @param keys which `ValidityState` flags to report.
77
+ * @param messages the validation messages of the field's locale.
12
78
  * @returns the picked validity state and message.
13
79
  */
14
- export function pickValidity(field, keys) {
80
+ export function pickValidity(field, keys, messages) {
15
81
  if (!field || field.validity.valid) {
16
82
  return { validity: {} };
17
83
  }
18
84
  const validity = {};
85
+ let message;
19
86
  for (const key of keys) {
20
87
  validity[key] = field.validity[key];
88
+ if (validity[key] && message === undefined) {
89
+ message = translateValidity(field, key, messages);
90
+ }
21
91
  }
22
- return { validity, message: field.validationMessage };
92
+ return { validity, message: message ?? field.validationMessage };
23
93
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@eunomia/elements",
3
- "version": "1.0.0-beta.9",
3
+ "version": "1.0.0",
4
4
  "description": "Eunomia the framework-agnostic web component design system",
5
5
  "type": "module",
6
6
  "homepage": "https://eunomia-ds.vercel.app",
@@ -145,6 +145,10 @@
145
145
  "types": "./dist/components/alert/modal/modal.d.ts",
146
146
  "default": "./dist/components/alert/modal/modal.js"
147
147
  },
148
+ "./nav-menu.js": {
149
+ "types": "./dist/components/navigation/nav-menu/nav-menu.d.ts",
150
+ "default": "./dist/components/navigation/nav-menu/nav-menu.js"
151
+ },
148
152
  "./pagination.js": {
149
153
  "types": "./dist/components/navigation/pagination/pagination.d.ts",
150
154
  "default": "./dist/components/navigation/pagination/pagination.js"
@@ -293,6 +297,14 @@
293
297
  "types": "./dist/jsx.d.ts",
294
298
  "default": "./dist/jsx.js"
295
299
  },
300
+ "./react": {
301
+ "types": "./dist/react.d.ts",
302
+ "default": "./dist/react.js"
303
+ },
304
+ "./angular": {
305
+ "types": "./dist/angular/forms.d.ts",
306
+ "default": "./dist/angular/forms.js"
307
+ },
296
308
  "./styles/*": "./styles/*",
297
309
  "./cdn/*": "./dist/cdn/*",
298
310
  "./alert-ssr.css": "./dist/ssr/alert-ssr.css",
@@ -306,16 +318,20 @@
306
318
  "./chip-ssr.css": "./dist/ssr/chip-ssr.css",
307
319
  "./collapse-ssr.css": "./dist/ssr/collapse-ssr.css",
308
320
  "./description-list-ssr.css": "./dist/ssr/description-list-ssr.css",
321
+ "./divider-ssr.css": "./dist/ssr/divider-ssr.css",
309
322
  "./field-ssr.css": "./dist/ssr/field-ssr.css",
310
323
  "./icon-ssr.css": "./dist/ssr/icon-ssr.css",
311
324
  "./image-carousel-ssr.css": "./dist/ssr/image-carousel-ssr.css",
312
325
  "./links-ssr.css": "./dist/ssr/links-ssr.css",
326
+ "./nav-menu-ssr.css": "./dist/ssr/nav-menu-ssr.css",
313
327
  "./overlay-ssr.css": "./dist/ssr/overlay-ssr.css",
314
328
  "./pagination-ssr.css": "./dist/ssr/pagination-ssr.css",
315
329
  "./rating-ssr.css": "./dist/ssr/rating-ssr.css",
316
330
  "./rich-text.css": "./dist/ssr/rich-text.css",
331
+ "./scheduler-ssr.css": "./dist/ssr/scheduler-ssr.css",
317
332
  "./sidebar-ssr.css": "./dist/ssr/sidebar-ssr.css",
318
333
  "./skeleton-ssr.css": "./dist/ssr/skeleton-ssr.css",
334
+ "./stepper-ssr.css": "./dist/ssr/stepper-ssr.css",
319
335
  "./table-ssr.css": "./dist/ssr/table-ssr.css",
320
336
  "./tabs-ssr.css": "./dist/ssr/tabs-ssr.css",
321
337
  "./tag-ssr.css": "./dist/ssr/tag-ssr.css",
@@ -333,7 +349,7 @@
333
349
  "./dist/features/**/*.js"
334
350
  ],
335
351
  "scripts": {
336
- "build": "tsc --noEmit -p tsconfig.build.json",
352
+ "build": "tsc --noEmit -p tsconfig.build.json && ngc --noEmit -p tsconfig.angular.json",
337
353
  "build:dist": "node scripts/build-dist.mjs",
338
354
  "build:dist:watch": "tsc -p tsconfig.build.json && node scripts/copy-assets.mjs && node scripts/generate-exports.mjs && tsc -p tsconfig.build.json --watch",
339
355
  "build:cdn": "node scripts/build-cdn.mjs",
@@ -348,11 +364,19 @@
348
364
  "lit": "^3.2.0"
349
365
  },
350
366
  "peerDependencies": {
351
- "@types/react": ">=18"
367
+ "@types/react": ">=18",
368
+ "@angular/core": ">=18.0.0",
369
+ "@angular/forms": ">=18.0.0"
352
370
  },
353
371
  "peerDependenciesMeta": {
354
372
  "@types/react": {
355
373
  "optional": true
374
+ },
375
+ "@angular/core": {
376
+ "optional": true
377
+ },
378
+ "@angular/forms": {
379
+ "optional": true
356
380
  }
357
381
  },
358
382
  "publishConfig": {
@@ -360,9 +384,16 @@
360
384
  "registry": "https://registry.npmjs.org/"
361
385
  },
362
386
  "devDependencies": {
387
+ "@angular/common": "~18.2.14",
388
+ "@angular/compiler": "~18.2.14",
389
+ "@angular/compiler-cli": "~18.2.14",
390
+ "@angular/core": "~18.2.14",
391
+ "@angular/forms": "~18.2.14",
392
+ "@angular/platform-browser": "~18.2.14",
363
393
  "@material-symbols/svg-400": "0.48.1",
364
394
  "@types/react": "^19.3.0",
365
395
  "esbuild": "^0.28.2",
396
+ "rxjs": "^7.8.2",
366
397
  "sass": "^1.104.1"
367
398
  }
368
399
  }
@@ -27,7 +27,7 @@
27
27
  --eun-disabled-color: #ecedf0;
28
28
  --eun-readonly-color: #666e8a;
29
29
  --eun-text-color: #071621;
30
- --eun-text-secondary: #484e61;
30
+ --eun-text-secondary: #666e8a;
31
31
  --eun-placeholder-color: var(--eun-color-grey-400, #c1c9d6);
32
32
  --eun-text-disabled-color: #8d93aa;
33
33
  --eun-text-readonly-color: #c1c9d6;
@@ -69,7 +69,7 @@
69
69
  --eun-disabled-color: var(--eun-color-grey-200);
70
70
  --eun-readonly-color: var(--eun-color-grey-600);
71
71
  --eun-text-color: var(--eun-color-grey-800);
72
- --eun-text-secondary: var(--eun-color-grey-700);
72
+ --eun-text-secondary: #d2d5de;
73
73
  --eun-placeholder-color: var(--eun-color-grey-400);
74
74
  --eun-text-disabled-color: var(--eun-color-grey-500);
75
75
  --eun-text-readonly-color: var(--eun-color-grey-400);
@@ -1,6 +1,37 @@
1
+ @use "sass:list";
1
2
  @use "./../media-queries/eunomia-media-queries.mixin.scss" as *;
2
3
 
4
+ $_eunomia-grid-own-properties: (
5
+ "--eun-grid-track-min",
6
+ "--_variantCols0",
7
+ "--_variantCols1",
8
+ "--_variantCols2",
9
+ "--_variantCols3",
10
+ "--_variantCols4",
11
+ "--_variantTpl0",
12
+ "--_variantTpl1",
13
+ "--_variantTpl2",
14
+ "--_variantTpl3",
15
+ "--_variantTpl4"
16
+ );
17
+
18
+ @each $name in ("columns", "template") {
19
+ @each $suffix in ("", "-mobile", "-tablet", "-laptop", "-desktop") {
20
+ $_eunomia-grid-own-properties: list.append(
21
+ $_eunomia-grid-own-properties,
22
+ "--eun-grid-#{$name}#{$suffix}"
23
+ );
24
+ }
25
+ }
26
+
3
27
  @mixin eunomia-grid-layouts {
28
+ @each $property in $_eunomia-grid-own-properties {
29
+ @property #{$property} {
30
+ syntax: "*";
31
+ inherits: false;
32
+ }
33
+ }
34
+
4
35
  :where(.eun-grid) {
5
36
  --_cols0: var(--eun-grid-columns, var(--_variantCols0, 1));
6
37
  --_cols1: var(
@@ -62,8 +93,65 @@
62
93
  )
63
94
  );
64
95
  --_cols: var(--_cols0);
96
+ --_tpl0: var(--eun-grid-template, var(--_variantTpl0));
97
+ --_tpl1: var(
98
+ --eun-grid-template-mobile,
99
+ var(--eun-grid-template, var(--_variantTpl1, var(--_variantTpl0)))
100
+ );
101
+ --_tpl2: var(
102
+ --eun-grid-template-tablet,
103
+ var(
104
+ --eun-grid-template-mobile,
105
+ var(
106
+ --eun-grid-template,
107
+ var(--_variantTpl2, var(--_variantTpl1, var(--_variantTpl0)))
108
+ )
109
+ )
110
+ );
111
+ --_tpl3: var(
112
+ --eun-grid-template-laptop,
113
+ var(
114
+ --eun-grid-template-tablet,
115
+ var(
116
+ --eun-grid-template-mobile,
117
+ var(
118
+ --eun-grid-template,
119
+ var(
120
+ --_variantTpl3,
121
+ var(--_variantTpl2, var(--_variantTpl1, var(--_variantTpl0)))
122
+ )
123
+ )
124
+ )
125
+ )
126
+ );
127
+ --_tpl4: var(
128
+ --eun-grid-template-desktop,
129
+ var(
130
+ --eun-grid-template-laptop,
131
+ var(
132
+ --eun-grid-template-tablet,
133
+ var(
134
+ --eun-grid-template-mobile,
135
+ var(
136
+ --eun-grid-template,
137
+ var(
138
+ --_variantTpl4,
139
+ var(
140
+ --_variantTpl3,
141
+ var(--_variantTpl2, var(--_variantTpl1, var(--_variantTpl0)))
142
+ )
143
+ )
144
+ )
145
+ )
146
+ )
147
+ )
148
+ );
149
+ --_tpl: var(--_tpl0);
65
150
  display: grid;
66
- grid-template-columns: repeat(var(--_cols), minmax(0, 1fr));
151
+ grid-template-columns: var(
152
+ --_tpl,
153
+ repeat(var(--_cols), minmax(var(--eun-grid-track-min, 0), 1fr))
154
+ );
67
155
  row-gap: var(--eun-grid-row-gap, var(--eun-space-s));
68
156
  column-gap: var(--eun-grid-column-gap, var(--eun-space-m));
69
157
  }
@@ -71,21 +159,25 @@
71
159
  @include eunomia-from(mobile) {
72
160
  :where(.eun-grid) {
73
161
  --_cols: var(--_cols1);
162
+ --_tpl: var(--_tpl1);
74
163
  }
75
164
  }
76
165
  @include eunomia-from(tablet) {
77
166
  :where(.eun-grid) {
78
167
  --_cols: var(--_cols2);
168
+ --_tpl: var(--_tpl2);
79
169
  }
80
170
  }
81
171
  @include eunomia-from(laptop) {
82
172
  :where(.eun-grid) {
83
173
  --_cols: var(--_cols3);
174
+ --_tpl: var(--_tpl3);
84
175
  }
85
176
  }
86
177
  @include eunomia-from(desktop) {
87
178
  :where(.eun-grid) {
88
179
  --_cols: var(--_cols4);
180
+ --_tpl: var(--_tpl4);
89
181
  }
90
182
  }
91
183
 
@@ -102,15 +194,31 @@
102
194
  grid-auto-flow: row;
103
195
  }
104
196
 
105
- @include eunomia-from(tablet) {
106
- :where(.eun-grid--thirds-1-2) {
107
- grid-template-columns: 1fr 2fr;
108
- }
197
+ :where(.eun-grid--thirds-1-2) {
198
+ --_variantTpl2: 1fr 2fr;
199
+ }
109
200
 
110
- :where(.eun-grid--thirds-2-1) {
111
- grid-template-columns: 2fr 1fr;
112
- }
201
+ :where(.eun-grid--thirds-2-1) {
202
+ --_variantTpl2: 2fr 1fr;
203
+ }
204
+
205
+ :where(.eun-grid--quarters-1-3) {
206
+ --_variantTpl2: 1fr 3fr;
207
+ }
208
+
209
+ :where(.eun-grid--quarters-3-1) {
210
+ --_variantTpl2: 3fr 1fr;
211
+ }
212
+
213
+ :where(.eun-grid--fifths-2-3) {
214
+ --_variantTpl2: 2fr 3fr;
215
+ }
113
216
 
217
+ :where(.eun-grid--fifths-3-2) {
218
+ --_variantTpl2: 3fr 2fr;
219
+ }
220
+
221
+ @include eunomia-from(tablet) {
114
222
  :where(.eun-grid--sidebar-left),
115
223
  :where(.eun-grid--sidebar-right) {
116
224
  grid-template-columns: repeat(2, 1fr);
@@ -1 +0,0 @@
1
- import{a as c,b as n}from"./chunk-HGX6GPHM.js";var i=0,r=0;function d(){if(i===0){r=window.scrollY;let{style:t}=document.body;t.position="fixed",t.top=`-${r}px`,t.left="0",t.right="0",t.width="100%"}i+=1}function l(){if(i=Math.max(0,i-1),i===0){let{style:t}=document.body;t.position="",t.top="",t.left="",t.right="",t.width="",window.scrollTo(0,r)}}var v=t=>{class s extends t{constructor(){super(...arguments);this.syncingFromPopover=!1}resolveActiveElement(){let e=document.activeElement===this?this.shadowRoot?.activeElement:document.activeElement;return e instanceof HTMLElement?e:void 0}syncPopoverOpenState(e,o){this.syncingFromPopover||(e?(this.cancelSurfaceClosing(o),o?.matches(":popover-open")||o?.showPopover()):o?.matches(":popover-open")&&this.beginSurfaceClosing(o))}cancelSurfaceClosing(e){this.closeTimer!==void 0&&(window.clearTimeout(this.closeTimer),this.closeTimer=void 0),e?.removeAttribute("closing")}beginSurfaceClosing(e){if(!e)return;e.setAttribute("closing","");let o=Number.parseFloat(getComputedStyle(e).transitionDuration)*1e3||0;this.closeTimer=window.setTimeout(()=>{this.closeTimer=void 0,e.removeAttribute("closing"),e.hidePopover()},o)}openDialogSurface(e){this.previouslyFocusedElement=this.resolveActiveElement(),d(),this.dialogStackEntry=e,c(e)}closeDialogSurface(e){l(),this.dialogStackEntry&&(n(this.dialogStackEntry),this.dialogStackEntry=void 0),(this.previouslyFocusedElement??e)?.focus(),this.previouslyFocusedElement=void 0}teardownDialogSurface(e){e&&l(),this.closeTimer!==void 0&&(window.clearTimeout(this.closeTimer),this.closeTimer=void 0),this.dialogStackEntry&&(n(this.dialogStackEntry),this.dialogStackEntry=void 0)}}return s};export{v as a};
@@ -1 +0,0 @@
1
- import{a as l,b as d,f,g,h as S,i as T,k as x,l as v,m as E,q as p,s as h}from"./chunk-MJ4RDZLL.js";var k={low:"success",high:"warning",critical:"critical"},b={pending:"hourglass_empty",confirmed:"check",declined:"close"},A={pending:"warning",confirmed:"success",declined:"critical"};function L(t,e,r){switch(t){case"day":return{start:l(e),end:d(e)};case"week":case"work-week":{let o=h(e,r),i=o.find(a=>a.some(n=>E(n,e)))??o[0],s=t==="work-week"?i.filter(a=>!p(a)):i;return{start:l(s[0]),end:d(s[s.length-1])}}case"month":{let o=h(e,r);return{start:l(o[0][0]),end:d(o[o.length-1][6])}}case"year":return{start:f(e),end:g(e)};default:return{start:l(e),end:d(e)}}}function C(t,e,r){switch(t){case"day":return S(e,r);case"week":case"work-week":return T(e,r);case"month":return x(e,r);case"year":return v(e,r);default:return e}}function y(t){return!!t.allDay||!E(t.start,t.end)}function M(t,e){return t.filter(r=>!y(r)&&E(r.start,e)).sort((r,o)=>r.start.getTime()-o.start.getTime())}function O(t,e){let r=l(e).getTime(),o=d(e).getTime();return t.filter(i=>i.start.getTime()<=o&&i.end.getTime()>=r).sort((i,s)=>i.start.getTime()-s.start.getTime())}function R(t){let e=[...t].sort((a,n)=>a.start.getTime()-n.start.getTime()||a.end.getTime()-n.end.getTime()),r=[],o=[],i=-1/0,s=()=>{if(o.length===0)return;let a=[];for(let u of o){let m=a.find(c=>c[c.length-1].end.getTime()<=u.start.getTime());m?m.push(u):a.push([u])}let n=a.length;a.forEach((u,m)=>{u.forEach(c=>{r.push({event:c,column:m,columnCount:n})})}),o=[]};for(let a of e)o.length>0&&a.start.getTime()>=i&&(s(),i=-1/0),o.push(a),i=Math.max(i,a.end.getTime());return s(),r}function I(t,e){if(e.length===0)return[];let r=l(e[0]).getTime(),o=d(e[e.length-1]).getTime(),i=t.filter(n=>n.start.getTime()<=o&&n.end.getTime()>=r).map(n=>{let u=Math.max(e.findIndex(c=>d(c).getTime()>=n.start.getTime()),0),m=e.length-1;for(let c=0;c<e.length;c+=1)if(l(e[c]).getTime()>n.end.getTime()){m=c-1;break}return{event:n,startIndex:u,endIndex:Math.max(m,u)}}).sort((n,u)=>n.startIndex-u.startIndex||u.endIndex-n.endIndex),s=[],a=[];for(let n of i){let u=s.findIndex(m=>m<n.startIndex);u===-1?(u=s.length,s.push(n.endIndex)):s[u]=n.endIndex,a.push({...n,row:u})}return a}function _(t,e){return I(t.filter(y),e)}function G(t,e){return I(t,e)}function W(t,e){return new Date(1970,0,1,t,0,0,0).toLocaleTimeString(e,{hour:"numeric",minute:t%1===0?void 0:"2-digit"})}function N(t,e){return t.toLocaleTimeString(e,{hour:"numeric",minute:"2-digit"})}export{k as a,b,A as c,L as d,C as e,y as f,M as g,O as h,R as i,_ as j,G as k,W as l,N as m};
@@ -1 +0,0 @@
1
- var e={fromAttribute(t){return t!==null&&t!=="false"},toAttribute(t){return t?"":"false"}};export{e as a};
@@ -1 +0,0 @@
1
- var o=':popover-open:not([popover="manual"])';function r(t,n){for(let e of t.composedPath()){if(e===n)return!1;if(e instanceof Element&&e.matches(o)||e instanceof ShadowRoot&&e.querySelector(o))return!0}return!1}export{r as a};
@@ -1 +0,0 @@
1
- var t="en";function n(){return t}var a={common:{close:"Close",cancel:"Cancel",confirm:"Confirm",noValue:"No value set",save:"Save",apply:"Apply",today:"Today",edit:"Edit",delete:"Delete",loading:"Loading\u2026",noResults:"No results",keepEditing:"Keep editing",discard:"Discard"},datePicker:{openCalendar:"Open calendar",previousMonth:"Previous month",chooseMonthYear:"Choose month and year",nextMonth:"Next month",previousYear:"Previous year",chooseYear:"Choose year",nextYear:"Next year",previousYears:"Previous years",nextYears:"Next years",time:"Time",amPm:"AM/PM",hour:"Hour",minute:"Minute",day:"Day",month:"Month",year:"Year",startDate:"Start date",endDate:"End date",heading:{day:{single:"Select a date",range:"Select a date range"},month:{single:"Select a month",range:"Select a month range"},year:{single:"Select a year",range:"Select a year range"}},modalPreview:{day:{single:"Select date",range:"Select date range"},month:{single:"Select month",range:"Select month range"},year:{single:"Select year",range:"Select year range"}},dayPlaceholder:"dd",monthPlaceholder:"mm",yearPlaceholder:"yyyy",hourPlaceholder:"hh",minutePlaceholder:"mm"},timePicker:{openClock:"Open clock",amPm:"AM/PM",hour:"Hour",minute:"Minute",time:"Time",selectATime:"Select a time",increaseHour:"Increase hour",decreaseHour:"Decrease hour",increaseMinute:"Increase minute",decreaseMinute:"Decrease minute",togglePeriod:"Toggle AM/PM",mustBeAtOrAfter:e=>`Time must be at or after ${e}`,mustBeAtOrBefore:e=>`Time must be at or before ${e}`,hourPlaceholder:"hh",minutePlaceholder:"mm"},scheduler:{previous:"Previous period",next:"Next period",calendarView:"Calendar view",newEvent:"New event",viewDay:"Day",viewWeek:"Week",viewWorkWeek:"Work week",viewMonth:"Month",viewYear:"Year",priorities:{low:"Low",medium:"Medium",high:"High",critical:"Critical"}},carousel:{label:"Carousel",ofTotal:(e,r)=>`${e} of ${r}`,slideNavigation:"Slide navigation",previous:"Previous slide",next:"Next slide",goToSlide:(e,r)=>`Go to slide ${e} of ${r}`},imageCarousel:{gallery:"Image gallery",previous:"Previous image",next:"Next image",expand:"View full-size image",lightbox:"Image viewer",selectImage:"Select image",showImage:(e,r)=>`Show image ${e} of ${r}`,imageNavigation:"Image navigation",goToImage:(e,r)=>`Go to image ${e} of ${r}`,allImages:"All images"},chip:{remove:"Remove"},passwordStrength:{label:"Password strength",levels:["Weak","Fair","Good","Strong"],caption:e=>`${e}:`},infiniteList:{loadingMore:"Loading more items\u2026",itemsLoaded:e=>`${e} more item${e>1?"s":""} loaded`},table:{loadingMore:"Loading more rows\u2026",selected:"selected",selectAll:"Select all",deselectAll:"Deselect all",selectAllRows:"Select all rows",deselectAllRows:"Deselect all rows",selectRow:"Select row",selectionActions:"Selection actions",clearSelection:"Clear selection",rowActions:"Row actions",rowNumber:"Row number",scrollRegion:"Scrollable table",rowsLoaded:e=>`${e} more row${e>1?"s":""} loaded`},link:{opensInNewTab:"opens in a new tab"},input:{clear:"Clear field",showPassword:"Show password",hidePassword:"Hide password"},search:{panel:"Search"},counter:{increment:"Increase value",decrement:"Decrease value"},inputFile:{remove:"Remove file",select:"Select file",open:"Open in a new tab",drop:"Drag and drop files here, or",browse:"browse files",removeAll:"Remove all",removeSingle:"Remove",selectAll:"Select all",deleteSelected:"Delete selected",count:e=>`${e} file${e>1?"s":""}`},inputPhone:{selectCountry:"Select a country",searchCountry:"Search a country\u2026"},colorPicker:{noColor:"No color selected",swatches:"Presets",custom:"Custom",nativeInput:"Pick a custom color",hexInput:"Hex color"},pagination:{previous:"Previous page",next:"Next page",first:"First page",last:"Last page",page:"Page",label:"Pagination",pageSize:"Items per page"},sidebar:{expand:"Expand sidebar",collapse:"Collapse sidebar",resize:"Resize sidebar"},toolbar:{menuOpen:"Open menu",menuClose:"Close menu",menu:"Menu",skipLink:"Skip to main content",navigation:"Main navigation"},rating:{label:"Rating",valueText:(e,r)=>`${e} out of ${r}`,summary:(e,r)=>`${e}: ${r}`,noValue:"Not rated",clear:"Clear rating"},select:{searchPlaceholder:"Search\u2026",selectPlaceholder:"Select\u2026"},calendar:{moreEvents:"+{count} more"},textarea:{formatToolbar:"Text formatting",bold:"Bold",italic:"Italic",underline:"Underline",align:"Text alignment",alignStart:"Align left",alignCenter:"Center",alignEnd:"Align right",alignJustify:"Justify",textColor:"Text color",highlight:"Highlight",colorClear:"Default"},schedulerEventEditor:{colors:{red:"Red",purple:"Purple",yellow:"Yellow",blue:"Blue",green:"Green",pink:"Pink"},title:"Title",description:"Description",allDay:"All day",date:"Date",endDate:"End date",startTime:"Start time",endTime:"End time",location:"Location",notes:"Notes",priority:"Priority",color:"Color",required:"is required",guests:"Guests",addGuest:"Add guest",removeGuest:"Remove"},breadcrumb:{label:"Breadcrumb"},stepper:{label:"Progress"},validation:{valueMissing:"This field is required",tooShort:(e,r)=>`Please lengthen this text to ${e} characters or more (you are currently using ${r} characters).`,tooLong:(e,r)=>`Please shorten this text to ${e} characters or less (you are currently using ${r} characters).`,invalidDate:"Enter a valid date",invalidTime:"Enter a valid time"}};var i={common:{close:"Fermer",cancel:"Annuler",confirm:"Confirmer",save:"Enregistrer",noValue:"Aucune valeur",apply:"Appliquer",today:"Aujourd'hui",edit:"Modifier",delete:"Supprimer",loading:"Chargement\u2026",noResults:"Aucun r\xE9sultat",keepEditing:"Continuer la modification",discard:"Abandonner"},datePicker:{openCalendar:"Ouvrir le calendrier",previousMonth:"Mois pr\xE9c\xE9dent",chooseMonthYear:"Choisir le mois et l'ann\xE9e",nextMonth:"Mois suivant",previousYear:"Ann\xE9e pr\xE9c\xE9dente",chooseYear:"Choisir l'ann\xE9e",nextYear:"Ann\xE9e suivante",previousYears:"Ann\xE9es pr\xE9c\xE9dentes",nextYears:"Ann\xE9es suivantes",time:"Heure",amPm:"AM/PM",hour:"Heure",minute:"Minute",day:"Jour",month:"Mois",year:"Ann\xE9e",startDate:"Date de d\xE9but",endDate:"Date de fin",heading:{day:{single:"S\xE9lectionner une date",range:"S\xE9lectionner une plage de dates"},month:{single:"S\xE9lectionner un mois",range:"S\xE9lectionner une plage de mois"},year:{single:"S\xE9lectionner une ann\xE9e",range:"S\xE9lectionner une plage d'ann\xE9es"}},modalPreview:{day:{single:"S\xE9lectionner une date",range:"S\xE9lectionner une plage de dates"},month:{single:"S\xE9lectionner un mois",range:"S\xE9lectionner une plage de mois"},year:{single:"S\xE9lectionner une ann\xE9e",range:"S\xE9lectionner une plage d'ann\xE9es"}},dayPlaceholder:"jj",monthPlaceholder:"mm",yearPlaceholder:"aaaa",hourPlaceholder:"hh",minutePlaceholder:"mm"},timePicker:{openClock:"Ouvrir l'horloge",amPm:"AM/PM",hour:"Heure",minute:"Minute",time:"Heure",selectATime:"S\xE9lectionner une heure",increaseHour:"Augmenter l'heure",decreaseHour:"Diminuer l'heure",increaseMinute:"Augmenter les minutes",decreaseMinute:"Diminuer les minutes",togglePeriod:"Basculer AM/PM",mustBeAtOrAfter:e=>`L'heure doit \xEAtre \xE0 ${e} ou apr\xE8s`,mustBeAtOrBefore:e=>`L'heure doit \xEAtre \xE0 ${e} ou avant`,hourPlaceholder:"hh",minutePlaceholder:"mm"},scheduler:{previous:"P\xE9riode pr\xE9c\xE9dente",next:"P\xE9riode suivante",calendarView:"Vue du calendrier",newEvent:"Nouvel \xE9v\xE9nement",viewDay:"Jour",viewWeek:"Semaine",viewWorkWeek:"Semaine de travail",viewMonth:"Mois",viewYear:"Ann\xE9e",priorities:{low:"Basse",medium:"Moyenne",high:"Haute",critical:"Critique"}},carousel:{label:"Carrousel",ofTotal:(e,r)=>`${e} sur ${r}`,slideNavigation:"Navigation des diapositives",previous:"Diapositive pr\xE9c\xE9dente",next:"Diapositive suivante",goToSlide:(e,r)=>`Aller \xE0 la diapositive ${e} sur ${r}`},imageCarousel:{gallery:"Galerie d'images",previous:"Image pr\xE9c\xE9dente",next:"Image suivante",expand:"Voir l'image en taille r\xE9elle",lightbox:"Visionneuse d'images",selectImage:"S\xE9lectionner une image",showImage:(e,r)=>`Afficher l'image ${e} sur ${r}`,imageNavigation:"Navigation des images",goToImage:(e,r)=>`Aller \xE0 l'image ${e} sur ${r}`,allImages:"Toutes les images"},chip:{remove:"Retirer"},passwordStrength:{label:"Robustesse du mot de passe",levels:["Faible","Moyen","Bon","Fort"],caption:e=>`${e}\xA0:`},infiniteList:{loadingMore:"Chargement d'autres \xE9l\xE9ments\u2026",itemsLoaded:e=>e>1?`${e} \xE9l\xE9ments suppl\xE9mentaires charg\xE9s`:`${e} \xE9l\xE9ment suppl\xE9mentaire charg\xE9`},table:{loadingMore:"Chargement d'autres lignes\u2026",selected:"s\xE9lectionn\xE9e(s)",selectAll:"Tout s\xE9lectionner",deselectAll:"Tout d\xE9s\xE9lectionner",selectAllRows:"S\xE9lectionner toutes les lignes",deselectAllRows:"D\xE9s\xE9lectionner toutes les lignes",selectRow:"S\xE9lectionner la ligne",selectionActions:"Actions de s\xE9lection",clearSelection:"Vider la s\xE9lection",rowActions:"Actions de la ligne",rowNumber:"Num\xE9ro de ligne",scrollRegion:"Tableau d\xE9filant",rowsLoaded:e=>e>1?`${e} lignes suppl\xE9mentaires charg\xE9es`:`${e} ligne suppl\xE9mentaire charg\xE9e`},link:{opensInNewTab:"ouvre dans un nouvel onglet"},input:{clear:"Effacer le champ",showPassword:"Afficher le mot de passe",hidePassword:"Masquer le mot de passe"},search:{panel:"Rechercher"},counter:{increment:"Augmenter la valeur",decrement:"Diminuer la valeur"},inputFile:{remove:"Retirer le fichier",select:"S\xE9lectionner un fichier",open:"Ouvrir dans un nouvel onglet",drop:"Glissez-d\xE9posez des fichiers ici, ou",browse:"parcourez vos fichiers",removeAll:"Tout retirer",removeSingle:"Retirer",selectAll:"Tout s\xE9lectionner",deleteSelected:"Supprimer la s\xE9lection",count:e=>`${e} fichier${e>1?"s":""}`},inputPhone:{selectCountry:"S\xE9lectionner un pays",searchCountry:"Rechercher un pays\u2026"},colorPicker:{noColor:"Aucune couleur s\xE9lectionn\xE9e",swatches:"Pr\xE9d\xE9finies",custom:"Personnalis\xE9e",nativeInput:"Choisir une couleur personnalis\xE9e",hexInput:"Couleur hexad\xE9cimale"},pagination:{previous:"Page pr\xE9c\xE9dente",next:"Page suivante",first:"Premi\xE8re page",last:"Derni\xE8re page",page:"Page",label:"Pagination",pageSize:"\xC9l\xE9ments par page"},sidebar:{expand:"D\xE9plier la barre lat\xE9rale",collapse:"Replier la barre lat\xE9rale",resize:"Redimensionner la barre lat\xE9rale"},toolbar:{menuOpen:"Ouvrir le menu",menuClose:"Fermer le menu",menu:"Menu",skipLink:"Aller au contenu principal",navigation:"Navigation principale"},rating:{label:"Note",valueText:(e,r)=>`${e} sur ${r}`,summary:(e,r)=>`${e}\xA0: ${r}`,noValue:"Non not\xE9",clear:"Effacer la note"},select:{searchPlaceholder:"Rechercher\u2026",selectPlaceholder:"S\xE9lectionner\u2026"},calendar:{moreEvents:"+{count} autres"},textarea:{formatToolbar:"Mise en forme du texte",bold:"Gras",italic:"Italique",underline:"Soulign\xE9",align:"Alignement du texte",alignStart:"Aligner \xE0 gauche",alignCenter:"Centrer",alignEnd:"Aligner \xE0 droite",alignJustify:"Justifier",textColor:"Couleur du texte",highlight:"Surlignage",colorClear:"Par d\xE9faut"},schedulerEventEditor:{colors:{red:"Rouge",purple:"Violet",yellow:"Jaune",blue:"Bleu",green:"Vert",pink:"Rose"},title:"Titre",description:"Description",allDay:"Toute la journ\xE9e",date:"Date",endDate:"Date de fin",startTime:"Heure de d\xE9but",endTime:"Heure de fin",location:"Lieu",notes:"Notes",priority:"Priorit\xE9",color:"Couleur",required:"est obligatoire",guests:"Invit\xE9s",addGuest:"Ajouter un invit\xE9",removeGuest:"Retirer"},breadcrumb:{label:"Fil d'Ariane"},stepper:{label:"Progression"},validation:{valueMissing:"Ce champ est obligatoire",tooShort:(e,r)=>`Saisissez au moins ${e} caract\xE8res (actuellement ${r}).`,tooLong:(e,r)=>`Saisissez au plus ${e} caract\xE8res (actuellement ${r}).`,invalidDate:"Saisissez une date valide",invalidTime:"Saisissez une heure valide"}};var g={en:a,fr:i};export{n as a,g as b};
@@ -1 +0,0 @@
1
- var e=class a extends Event{static{this.eventName="eunperiodchange"}constructor(n,t,r){super(a.eventName,{bubbles:!0,composed:!1}),this.view=n,this.rangeStart=t,this.rangeEnd=r}};export{e as a};