@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,4 +1,4 @@
1
- import{a as k}from"./chunks/chunk-4DRU3IYJ.js";import"./chunks/chunk-HGX6GPHM.js";import"./chunks/chunk-E6UOI36Q.js";import"./chunks/chunk-5LXGJVJR.js";import{a as s}from"./chunks/chunk-YYCEPZUN.js";import{a as b}from"./chunks/chunk-OTX6FWAF.js";import{a as g}from"./chunks/chunk-6TIEBY34.js";import{a as v}from"./chunks/chunk-JGV7LHEI.js";import"./chunks/chunk-GNAUNTS5.js";import{a as r,f as c,h,j as i,l as d,n as p,p as n,r as l,u}from"./chunks/chunk-YITWLCD3.js";var y=h`
1
+ import{a as g,b as k}from"./chunks/chunk-M6ZJHL4Q.js";import"./chunks/chunk-XCBQ4CKH.js";import"./chunks/chunk-HXESKTK2.js";import"./chunks/chunk-5LXGJVJR.js";import{a as b}from"./chunks/chunk-YYCEPZUN.js";import{a as v}from"./chunks/chunk-OTX6FWAF.js";import{a as u}from"./chunks/chunk-WP6ZYBAC.js";import"./chunks/chunk-2XPIGFBD.js";import{a as r,f as p,h as c,j as i,l,n as d,p as n,r as s,u as h}from"./chunks/chunk-YITWLCD3.js";var y=c`
2
2
  :host {
3
3
  --_height: var(--toolbar-height, 72px);
4
4
  --_heightCollapsed: var(--toolbar-height-collapsed, 56px);
@@ -36,6 +36,14 @@ import{a as k}from"./chunks/chunk-4DRU3IYJ.js";import"./chunks/chunk-HGX6GPHM.js
36
36
  --toolbar-transition-duration,
37
37
  var(--eun-duration-l, 250ms)
38
38
  );
39
+ --_colorTransitionDuration: var(
40
+ --toolbar-color-transition-duration,
41
+ var(--_transitionDuration)
42
+ );
43
+ --_easing: var(
44
+ --toolbar-transition-easing,
45
+ var(--eun-easing-default, ease)
46
+ );
39
47
  --_panelSize: var(--toolbar-panel-size, 100%);
40
48
  --_panelBackground: var(
41
49
  --toolbar-panel-background,
@@ -73,6 +81,10 @@ import{a as k}from"./chunks/chunk-4DRU3IYJ.js";import"./chunks/chunk-HGX6GPHM.js
73
81
  );
74
82
  --_skipLinksColor: var(--toolbar-skip-links-color, #fff);
75
83
  --_skipLinksGap: var(--toolbar-skip-links-gap, var(--eun-space-m, 16px));
84
+ --_skipLinkPadding: var(
85
+ --toolbar-skip-link-padding,
86
+ var(--eun-space-xs, 4px)
87
+ );
76
88
  --_skipLinksSeparatorColor: var(
77
89
  --toolbar-skip-links-separator-color,
78
90
  color-mix(in srgb, var(--_skipLinksColor) 50%, transparent)
@@ -105,7 +117,8 @@ import{a as k}from"./chunks/chunk-4DRU3IYJ.js";import"./chunks/chunk-HGX6GPHM.js
105
117
  box-sizing: border-box;
106
118
  position: relative;
107
119
  display: grid;
108
- grid-template-columns: 1fr auto 1fr;
120
+ grid-template-columns: var(--toolbar-columns, 1fr auto 1fr);
121
+ grid-template-rows: minmax(0, 1fr);
109
122
  align-items: center;
110
123
  gap: var(--_gap);
111
124
  height: var(--_currentHeight);
@@ -114,21 +127,26 @@ import{a as k}from"./chunks/chunk-4DRU3IYJ.js";import"./chunks/chunk-HGX6GPHM.js
114
127
  color: var(--_color);
115
128
  border-block-end: var(--eun-border-width-s, 1px) solid var(--_borderColor);
116
129
  box-shadow: var(--_shadow);
130
+ backdrop-filter: blur(var(--toolbar-backdrop-blur));
131
+ -webkit-backdrop-filter: blur(var(--toolbar-backdrop-blur));
117
132
  transition:
118
- height var(--_transitionDuration) var(--eun-easing-default, ease),
119
- background-color var(--_transitionDuration)
120
- var(--eun-easing-default, ease),
121
- color var(--_transitionDuration) var(--eun-easing-default, ease),
122
- border-color var(--_transitionDuration) var(--eun-easing-default, ease),
123
- box-shadow var(--_transitionDuration) var(--eun-easing-default, ease);
133
+ height var(--_transitionDuration) var(--_easing),
134
+ background-color var(--_colorTransitionDuration) var(--_easing),
135
+ color var(--_colorTransitionDuration) var(--_easing),
136
+ border-color var(--_colorTransitionDuration) var(--_easing),
137
+ box-shadow var(--_colorTransitionDuration) var(--_easing);
138
+ }
139
+ :host([layout="between"]) #bar {
140
+ grid-template-columns: var(--toolbar-columns, auto 1fr auto);
124
141
  }
125
142
  :host([transparent-at-top][at-top]) #bar {
126
- background: transparent;
143
+ background: var(--toolbar-background-at-top, transparent);
127
144
  border-color: transparent;
128
145
  box-shadow: none;
129
146
  }
130
147
 
131
148
  #start {
149
+ align-self: stretch;
132
150
  grid-column: 1;
133
151
  justify-self: start;
134
152
  display: flex;
@@ -137,6 +155,7 @@ import{a as k}from"./chunks/chunk-4DRU3IYJ.js";import"./chunks/chunk-HGX6GPHM.js
137
155
  min-width: 0;
138
156
  }
139
157
  #center {
158
+ align-self: stretch;
140
159
  grid-column: 2;
141
160
  justify-self: center;
142
161
  display: flex;
@@ -145,6 +164,7 @@ import{a as k}from"./chunks/chunk-4DRU3IYJ.js";import"./chunks/chunk-HGX6GPHM.js
145
164
  min-width: 0;
146
165
  }
147
166
  #end {
167
+ align-self: stretch;
148
168
  grid-column: 3;
149
169
  justify-self: end;
150
170
  display: flex;
@@ -162,14 +182,18 @@ import{a as k}from"./chunks/chunk-4DRU3IYJ.js";import"./chunks/chunk-HGX6GPHM.js
162
182
  #start ::slotted(*),
163
183
  #center ::slotted(*),
164
184
  #end ::slotted(*) {
165
- max-height: var(--_currentHeight);
185
+ max-height: 100%;
166
186
  }
167
187
 
168
188
  #start ::slotted(eun-link),
169
189
  #center ::slotted(eun-link),
170
190
  #end ::slotted(eun-link) {
171
191
  --link-padding: var(--eun-space-xs, 4px);
172
- --link-background-focus: var(--eun-color-primary-alpha-20, #3d6fff33);
192
+ --link-background-focus: var(
193
+ --toolbar-link-background-focus,
194
+ var(--eun-color-primary-alpha-20, #3d6fff33)
195
+ );
196
+ --link-focus-outline-color: var(--toolbar-focus-outline-color);
173
197
  }
174
198
 
175
199
  #start ::slotted(a) {
@@ -182,12 +206,28 @@ import{a as k}from"./chunks/chunk-4DRU3IYJ.js";import"./chunks/chunk-HGX6GPHM.js
182
206
  border-radius: var(--eun-border-radius-s);
183
207
  }
184
208
  #start ::slotted(a:focus-visible) {
185
- outline-color: var(--eun-color-primary-500);
209
+ outline-color: var(
210
+ --toolbar-focus-outline-color,
211
+ var(--eun-color-primary-500, #3d6fff)
212
+ );
186
213
  }
187
214
 
188
215
  #burger {
216
+ --_burgerColor: var(--toolbar-burger-color, var(--_color));
217
+ --button-text: var(--_burgerColor);
218
+ --button-background-hover: var(
219
+ --toolbar-burger-background-hover,
220
+ color-mix(in srgb, var(--_burgerColor) 10%, transparent)
221
+ );
222
+ --button-background-active: var(
223
+ --toolbar-burger-background-active,
224
+ color-mix(in srgb, var(--_burgerColor) 16%, transparent)
225
+ );
189
226
  flex-shrink: 0;
190
227
  }
228
+ :host([open]) #burger {
229
+ --_burgerColor: var(--toolbar-burger-color, var(--_panelColor));
230
+ }
191
231
 
192
232
  #skip-links {
193
233
  box-sizing: border-box;
@@ -200,15 +240,18 @@ import{a as k}from"./chunks/chunk-4DRU3IYJ.js";import"./chunks/chunk-HGX6GPHM.js
200
240
  gap: var(--_skipLinksGap);
201
241
  overflow: hidden;
202
242
  height: var(--_skipLinksHeight);
203
- padding-inline: var(--eun-space-m);
243
+ padding-inline: var(
244
+ --toolbar-skip-links-padding-inline,
245
+ var(--eun-space-m, 16px)
246
+ );
204
247
  background: var(--_skipLinksBackground);
205
248
  color: var(--_skipLinksColor);
206
249
  box-shadow: var(--eun-shadow-m, rgba(0, 0, 0, 0.1) 0 4px 6px -2px);
207
250
  transform: translateY(-100%);
208
251
  opacity: 0;
209
252
  transition:
210
- transform var(--_transitionDuration) var(--eun-easing-default, ease),
211
- opacity var(--_transitionDuration) var(--eun-easing-default, ease);
253
+ transform var(--_transitionDuration) var(--_easing),
254
+ opacity var(--_transitionDuration) var(--_easing);
212
255
  }
213
256
  #skip-links:focus-within {
214
257
  transform: translateY(0);
@@ -221,7 +264,10 @@ import{a as k}from"./chunks/chunk-4DRU3IYJ.js";import"./chunks/chunk-HGX6GPHM.js
221
264
  display: inline-flex;
222
265
  align-items: center;
223
266
  color: inherit;
224
- font-size: var(--eun-font-size-s, 13px);
267
+ font-size: var(
268
+ --toolbar-skip-links-font-size,
269
+ var(--eun-font-size-s, 13px)
270
+ );
225
271
  text-decoration: none;
226
272
  white-space: nowrap;
227
273
  }
@@ -230,14 +276,21 @@ import{a as k}from"./chunks/chunk-4DRU3IYJ.js";import"./chunks/chunk-HGX6GPHM.js
230
276
  --link-color: var(--_skipLinksColor);
231
277
  --link-color-hover: var(--_skipLinksColor);
232
278
  --link-color-focus: var(--_skipLinksColor);
233
- --link-padding: var(--eun-space-xs, 4px);
234
- --link-background-focus: var(--eun-color-secondary-alpha-20, #edbd6f33);
279
+ --link-focus-outline-color: var(
280
+ --toolbar-skip-links-focus-outline-color,
281
+ var(--_skipLinksColor)
282
+ );
283
+ --link-padding: var(--_skipLinkPadding);
284
+ --link-background-focus: var(
285
+ --toolbar-skip-links-background-focus,
286
+ var(--eun-color-secondary-alpha-20, #edbd6f33)
287
+ );
235
288
  --link-border-radius: var(--eun-border-radius-l, 999px);
236
289
  }
237
290
 
238
291
  #skip-links ::slotted(a),
239
292
  .skip-link {
240
- padding: var(--eun-space-xs, 4px);
293
+ padding: var(--_skipLinkPadding);
241
294
  outline: 2px solid transparent;
242
295
  outline-offset: 2px;
243
296
  border-radius: var(--eun-border-radius-l, 999px);
@@ -252,12 +305,27 @@ import{a as k}from"./chunks/chunk-4DRU3IYJ.js";import"./chunks/chunk-HGX6GPHM.js
252
305
  }
253
306
  #skip-links ::slotted(a:not(:first-child))::before,
254
307
  #skip-links ::slotted(eun-link:not(:first-child))::before {
255
- content: "";
308
+ content: var(--toolbar-skip-links-separator, "");
256
309
  position: absolute;
257
- inset-inline-start: calc(var(--_skipLinksGap) / -2);
310
+ inset-inline-start: calc(var(--_skipLinksGap) * -1);
258
311
  inset-block: 0;
259
- width: 1px;
260
- background: var(--_skipLinksSeparatorColor);
312
+ width: var(--_skipLinksGap);
313
+ display: flex;
314
+ align-items: center;
315
+ justify-content: center;
316
+ color: var(--_skipLinksSeparatorColor);
317
+ /* The 1px line, centered in the gap. A glyph set through
318
+ --toolbar-skip-links-separator turns it off : a string is never a
319
+ valid image, so the declaration falls back to none. */
320
+ background: var(
321
+ --toolbar-skip-links-separator,
322
+ linear-gradient(
323
+ var(--_skipLinksSeparatorColor),
324
+ var(--_skipLinksSeparatorColor)
325
+ )
326
+ )
327
+ center / 1px 100% no-repeat;
328
+ pointer-events: none;
261
329
  }
262
330
  #skip-links ::slotted(a:hover),
263
331
  #skip-links ::slotted(a:focus-visible),
@@ -267,8 +335,14 @@ import{a as k}from"./chunks/chunk-4DRU3IYJ.js";import"./chunks/chunk-HGX6GPHM.js
267
335
  }
268
336
  #skip-links ::slotted(a:focus-visible),
269
337
  .skip-link:focus-visible {
270
- outline-color: var(--_skipLinksColor);
271
- background: var(--eun-color-secondary-alpha-20, #edbd6f33);
338
+ outline-color: var(
339
+ --toolbar-skip-links-focus-outline-color,
340
+ var(--_skipLinksColor)
341
+ );
342
+ background: var(
343
+ --toolbar-skip-links-background-focus,
344
+ var(--eun-color-secondary-alpha-20, #edbd6f33)
345
+ );
272
346
  }
273
347
 
274
348
  #panel {
@@ -303,8 +377,7 @@ import{a as k}from"./chunks/chunk-4DRU3IYJ.js";import"./chunks/chunk-HGX6GPHM.js
303
377
  height: calc(var(--_currentHeight) - var(--eun-border-width-s, 1px));
304
378
  padding: var(--_burgerPadding);
305
379
  pointer-events: auto;
306
- transition: height var(--_transitionDuration)
307
- var(--eun-easing-default, ease);
380
+ transition: height var(--_transitionDuration) var(--_easing);
308
381
  }
309
382
 
310
383
  #panel-body {
@@ -322,8 +395,8 @@ import{a as k}from"./chunks/chunk-4DRU3IYJ.js";import"./chunks/chunk-HGX6GPHM.js
322
395
  opacity: 0;
323
396
  pointer-events: none;
324
397
  transition:
325
- opacity var(--_transitionDuration) var(--eun-easing-default, ease),
326
- transform var(--_transitionDuration) var(--eun-easing-default, ease);
398
+ opacity var(--_transitionDuration) var(--_easing),
399
+ transform var(--_transitionDuration) var(--_easing);
327
400
  }
328
401
  #panel[data-direction="top"] #panel-body {
329
402
  inset-block-end: calc(100% - var(--_panelSize));
@@ -381,7 +454,7 @@ import{a as k}from"./chunks/chunk-4DRU3IYJ.js";import"./chunks/chunk-HGX6GPHM.js
381
454
  transition-duration: 0.01ms;
382
455
  }
383
456
  }
384
- `,m=y;var _="eun-toolbar",t=class extends k(v(u)){constructor(){super(...arguments);this.position="sticky";this.mobileBreakpoint=b.tablet;this.open=!1;this.panelDirection="top";this.closeOnBackdrop=!0;this.collapseOnScroll=!1;this.collapseThreshold=24;this.collapsed=!1;this.transparentAtTop=!1;this.atTop=!0;this.adaptiveTheme=!1;this.adaptiveThemeSelector="[data-toolbar-theme]";this.theme="light";this.defaultTheme="light";this.mobile=!1;this.handleIconSlotChange=()=>{this.requestUpdate()};this.scrollTargetEl=window;this.scrollListenerAttached=!1;this.intersectingThemeEls=new Set;this.handleMediaChange=e=>{this.mobile=e.matches,!this.mobile&&this.open&&this.hide()};this.handleScroll=()=>{this.scrollRafId===void 0&&(this.scrollRafId=requestAnimationFrame(()=>{this.scrollRafId=void 0,this.updateScrollState()}))};this.handleThemeIntersect=e=>{for(let a of e)a.isIntersecting?this.intersectingThemeEls.add(a.target):this.intersectingThemeEls.delete(a.target);this.resolveAdaptiveTheme()};this.handlePanelToggle=e=>{let a=e;if(this.syncingFromPopover=!0,this.open=a.newState==="open",this.syncingFromPopover=!1,this.open){this.openDialogSurface({surfaceEl:this.panelEl,onEscape:()=>this.hide(),onOutsideClick:()=>{this.closeOnBackdrop&&this.hide()}}),this.dispatchEvent(new s),this.updateComplete.then(()=>this.focusInitialElement());return}this.closeDialogSurface(this.burgerEl),this.dispatchEvent(new s)};this.handleSkipLinkClick=e=>{let o=e.composedPath().find(f=>f instanceof HTMLAnchorElement)?.getAttribute("href");!o||!o.startsWith("#")||o.length<2||document.getElementById(o.slice(1))?.focus()}}connectedCallback(){super.connectedCallback(),this.updateMediaQuery(),this.syncScrollListener()}disconnectedCallback(){this.mediaQueryList?.removeEventListener("change",this.handleMediaChange),this.detachScrollListener(),this.teardownAdaptiveThemeObserver(),this.teardownDialogSurface(this.open),super.disconnectedCallback()}updated(e){super.updated(e),e.has("mobileBreakpoint")&&this.updateMediaQuery(),e.has("open")&&this.syncPopoverOpenState(this.open,this.panelEl),e.has("panelSize")&&(this.panelSize?this.style.setProperty("--toolbar-panel-size",this.panelSize):this.style.removeProperty("--toolbar-panel-size")),this.updateScrollListenerFor(e),this.updateAdaptiveThemeObserverFor(e)}updateScrollListenerFor(e){(e.has("collapseOnScroll")||e.has("transparentAtTop"))&&this.syncScrollListener(),e.has("scrollTarget")&&this.scrollListenerAttached&&this.attachScrollListener()}updateAdaptiveThemeObserverFor(e){if(e.has("adaptiveTheme")){this.adaptiveTheme?this.setupAdaptiveThemeObserver():e.get("adaptiveTheme")===!0&&(this.teardownAdaptiveThemeObserver(),this.theme=this.defaultTheme);return}this.adaptiveTheme&&(e.has("adaptiveThemeSelector")||e.has("collapsed")||e.has("scrollTarget"))&&this.setupAdaptiveThemeObserver()}show(){this.open=!0}hide(){this.open=!1}toggle(){this.open=!this.open}refreshAdaptiveTheme(){this.themeObserver&&(this.themeObserver.disconnect(),this.intersectingThemeEls.clear(),document.querySelectorAll(this.adaptiveThemeSelector).forEach(e=>this.themeObserver?.observe(e)),this.resolveAdaptiveTheme())}updateMediaQuery(){this.mediaQueryList?.removeEventListener("change",this.handleMediaChange),this.mediaQueryList=window.matchMedia(`(width < ${this.mobileBreakpoint}px)`),this.mediaQueryList.addEventListener("change",this.handleMediaChange),this.mobile=this.mediaQueryList.matches}resolveScrollTarget(){if(this.scrollTarget){let e=document.querySelector(this.scrollTarget);if(e)return e}return window}resolveIntersectionRoot(){if(this.scrollTarget){let e=document.querySelector(this.scrollTarget);if(e)return e}return null}syncScrollListener(){let e=this.collapseOnScroll||this.transparentAtTop;e&&!this.scrollListenerAttached?(this.attachScrollListener(),this.scrollListenerAttached=!0):!e&&this.scrollListenerAttached&&(this.detachScrollListener(),this.scrollListenerAttached=!1)}attachScrollListener(){this.scrollTargetEl?.removeEventListener("scroll",this.handleScroll),this.scrollTargetEl=this.resolveScrollTarget(),this.scrollTargetEl.addEventListener("scroll",this.handleScroll,{passive:!0}),this.updateScrollState()}detachScrollListener(){this.scrollTargetEl?.removeEventListener("scroll",this.handleScroll),this.scrollRafId!==void 0&&(cancelAnimationFrame(this.scrollRafId),this.scrollRafId=void 0)}currentScrollY(){return this.scrollTargetEl instanceof Element?this.scrollTargetEl.scrollTop:window.scrollY}updateScrollState(){let e=this.currentScrollY();this.collapseOnScroll&&this.setCollapsed(e>this.collapseThreshold),this.transparentAtTop&&(this.atTop=e<=0)}setCollapsed(e){this.collapsed!==e&&(this.collapsed=e,this.dispatchEvent(new s))}setTheme(e){this.theme!==e&&(this.theme=e,this.dispatchEvent(new s))}barHeightPx(){return this.barEl?.getBoundingClientRect().height??(this.collapsed?56:72)}setupAdaptiveThemeObserver(){this.teardownAdaptiveThemeObserver();let e=this.barHeightPx();this.themeObserver=new IntersectionObserver(this.handleThemeIntersect,{root:this.resolveIntersectionRoot(),rootMargin:`-${e}px 0px -85% 0px`}),document.querySelectorAll(this.adaptiveThemeSelector).forEach(a=>this.themeObserver?.observe(a)),this.resolveAdaptiveTheme()}teardownAdaptiveThemeObserver(){this.themeObserver?.disconnect(),this.themeObserver=void 0,this.intersectingThemeEls.clear()}resolveAdaptiveTheme(){if(this.intersectingThemeEls.size===0){this.setTheme(this.defaultTheme);return}let e=document.querySelectorAll(this.adaptiveThemeSelector);for(let a=e.length-1;a>=0;a-=1)if(this.intersectingThemeEls.has(e[a])){this.setTheme(e[a].getAttribute("data-toolbar-theme")==="dark"?"dark":"light");return}this.setTheme(this.defaultTheme)}focusInitialElement(){let e=this.querySelector("[autofocus]");if(e){e.focus();return}this.panelEl?.focus()}hasSkipLinksContent(){return this.skipLinkTarget!==void 0||this.querySelector('[slot="skip-links"]')!==null}renderSkipLinks(){return n`
457
+ `,m=y;var _="eun-toolbar",t=class extends k(u(h)){constructor(){super(...arguments);this.position="sticky";this.layout="centered";this.mobileBreakpoint=v.tablet;this.open=!1;this.panelDirection="top";this.closeOnBackdrop=!1;this.collapseOnScroll=!1;this.collapseThreshold=24;this.collapsed=!1;this.transparentAtTop=!1;this.atTop=!0;this.adaptiveTheme=!1;this.adaptiveThemeAttribute="data-toolbar-theme";this.theme="light";this.defaultTheme="light";this.mobile=!1;this.handleIconSlotChange=()=>{this.requestUpdate()};this.scrollTargetEl=window;this.scrollListenerAttached=!1;this.intersectingThemeEls=new Set;this.observedThemeEls=new Set;this.handleMediaChange=e=>{this.mobile=e.matches,!this.mobile&&this.open&&this.hide()};this.handleScroll=()=>{this.scrollRafId===void 0&&(this.scrollRafId=requestAnimationFrame(()=>{this.scrollRafId=void 0,this.updateScrollState()}))};this.handleThemeMutation=()=>{this.themeMarkerRafId===void 0&&(this.themeMarkerRafId=requestAnimationFrame(()=>{this.themeMarkerRafId=void 0,this.syncThemeMarkers()}))};this.handleThemeIntersect=e=>{for(let a of e)a.isIntersecting?this.intersectingThemeEls.add(a.target):this.intersectingThemeEls.delete(a.target);this.resolveAdaptiveTheme()};this.handlePanelToggle=e=>{let a=e;if(this.syncingFromPopover=!0,this.open=a.newState==="open",this.syncingFromPopover=!1,this.open){this.openDialogSurface({surfaceEl:this.panelEl,onEscape:()=>this.hide(),onOutsideClick:()=>{this.closeOnBackdrop&&this.hide()}}),this.dispatchChange("open"),this.updateComplete.then(()=>this.focusInitialElement());return}this.closeDialogSurface(this.burgerEl),this.dispatchChange("open")};this.handleSkipLinkClick=e=>{let o=e.composedPath().find(f=>f instanceof HTMLAnchorElement)?.getAttribute("href");!o||!o.startsWith("#")||o.length<2||document.getElementById(o.slice(1))?.focus()}}connectedCallback(){super.connectedCallback(),this.updateMediaQuery(),this.syncScrollListener()}disconnectedCallback(){this.mediaQueryList?.removeEventListener("change",this.handleMediaChange),this.detachScrollListener(),this.teardownAdaptiveThemeObserver(),this.teardownDialogSurface(),super.disconnectedCallback()}updated(e){super.updated(e),e.has("mobileBreakpoint")&&this.updateMediaQuery(),e.has("open")&&this.syncPopoverOpenState(this.open,this.panelEl),e.has("panelSize")&&(this.panelSize?this.style.setProperty("--toolbar-panel-size",this.panelSize):this.style.removeProperty("--toolbar-panel-size")),this.updateScrollListenerFor(e),this.updateAdaptiveThemeObserverFor(e)}updateScrollListenerFor(e){(e.has("collapseOnScroll")||e.has("transparentAtTop"))&&this.syncScrollListener(),e.has("scrollTarget")&&this.scrollListenerAttached&&this.attachScrollListener()}updateAdaptiveThemeObserverFor(e){if(e.has("adaptiveTheme")){this.adaptiveTheme?this.setupAdaptiveThemeObserver():e.get("adaptiveTheme")===!0&&(this.teardownAdaptiveThemeObserver(),this.theme=this.defaultTheme);return}this.adaptiveTheme&&(e.has("adaptiveThemeSelector")||e.has("adaptiveThemeAttribute")||e.has("collapsed")||e.has("scrollTarget"))&&this.setupAdaptiveThemeObserver()}show(){this.open=!0}hide(){this.open=!1}toggle(){this.open=!this.open}refreshAdaptiveTheme(){this.syncThemeMarkers()}get themeMarkerSelector(){return this.adaptiveThemeSelector??`[${this.adaptiveThemeAttribute}]`}updateMediaQuery(){this.mediaQueryList?.removeEventListener("change",this.handleMediaChange),this.mediaQueryList=window.matchMedia(`(width < ${this.mobileBreakpoint}px)`),this.mediaQueryList.addEventListener("change",this.handleMediaChange),this.mobile=this.mediaQueryList.matches}resolveScrollTarget(){if(this.scrollTarget){let e=document.querySelector(this.scrollTarget);if(e)return e}return window}resolveIntersectionRoot(){if(this.scrollTarget){let e=document.querySelector(this.scrollTarget);if(e)return e}return null}syncScrollListener(){let e=this.collapseOnScroll||this.transparentAtTop;e&&!this.scrollListenerAttached?(this.attachScrollListener(),this.scrollListenerAttached=!0):!e&&this.scrollListenerAttached&&(this.detachScrollListener(),this.scrollListenerAttached=!1)}attachScrollListener(){this.scrollTargetEl?.removeEventListener("scroll",this.handleScroll),this.scrollTargetEl=this.resolveScrollTarget(),this.scrollTargetEl.addEventListener("scroll",this.handleScroll,{passive:!0}),this.updateScrollState()}detachScrollListener(){this.scrollTargetEl?.removeEventListener("scroll",this.handleScroll),this.scrollRafId!==void 0&&(cancelAnimationFrame(this.scrollRafId),this.scrollRafId=void 0)}currentScrollY(){return this.scrollTargetEl instanceof Element?this.scrollTargetEl.scrollTop:window.scrollY}updateScrollState(){if(this.scrollTargetEl===window&&g())return;let e=this.currentScrollY();this.collapseOnScroll&&this.setCollapsed(e>this.collapseThreshold),this.transparentAtTop&&(this.atTop=e<=0)}setCollapsed(e){this.collapsed!==e&&(this.collapsed=e,this.dispatchChange("collapsed"))}setTheme(e){this.theme!==e&&(this.theme=e,this.dispatchChange("theme"))}dispatchChange(e){this.dispatchEvent(new b({property:e,open:this.open,collapsed:this.collapsed,theme:this.theme}))}barHeightPx(){return this.barEl?.getBoundingClientRect().height??(this.collapsed?56:72)}setupAdaptiveThemeObserver(){this.teardownAdaptiveThemeObserver();let e=this.barHeightPx();this.themeObserver=new IntersectionObserver(this.handleThemeIntersect,{root:this.resolveIntersectionRoot(),rootMargin:`-${e}px 0px -85% 0px`}),document.querySelectorAll(this.themeMarkerSelector).forEach(a=>{this.themeObserver?.observe(a),this.observedThemeEls.add(a)}),this.themeMarkerObserver=new MutationObserver(this.handleThemeMutation),this.themeMarkerObserver.observe(document.documentElement,{childList:!0,subtree:!0,attributes:!0,attributeFilter:[this.adaptiveThemeAttribute]}),this.resolveAdaptiveTheme()}teardownAdaptiveThemeObserver(){this.themeObserver?.disconnect(),this.themeObserver=void 0,this.themeMarkerObserver?.disconnect(),this.themeMarkerObserver=void 0,this.themeMarkerRafId!==void 0&&(cancelAnimationFrame(this.themeMarkerRafId),this.themeMarkerRafId=void 0),this.observedThemeEls.clear(),this.intersectingThemeEls.clear()}syncThemeMarkers(){if(!this.themeObserver)return;let e=new Set(document.querySelectorAll(this.themeMarkerSelector));for(let o of this.observedThemeEls)e.has(o)||(this.themeObserver.unobserve(o),this.observedThemeEls.delete(o),this.intersectingThemeEls.delete(o));let a=!1;for(let o of e)this.observedThemeEls.has(o)||(this.themeObserver.observe(o),this.observedThemeEls.add(o),a=!0);a||this.resolveAdaptiveTheme()}resolveAdaptiveTheme(){if(this.intersectingThemeEls.size===0){this.setTheme(this.defaultTheme);return}let e=document.querySelectorAll(this.themeMarkerSelector);for(let a=e.length-1;a>=0;a-=1)if(this.intersectingThemeEls.has(e[a])){this.setTheme(e[a].getAttribute(this.adaptiveThemeAttribute)==="dark"?"dark":"light");return}this.setTheme(this.defaultTheme)}focusInitialElement(){let e=this.querySelector("[autofocus]");if(e){e.focus();return}this.burgerEl?.focus()}hasSkipLinksContent(){return this.skipLinkTarget!==void 0||this.querySelector('[slot="skip-links"]')!==null}renderSkipLinks(){return n`
385
458
  <div id="skip-links" @click=${this.handleSkipLinkClick}>
386
459
  <slot name="skip-links">
387
460
  ${this.skipLinkTarget?n`
@@ -392,7 +465,7 @@ import{a as k}from"./chunks/chunk-4DRU3IYJ.js";import"./chunks/chunk-HGX6GPHM.js
392
465
  >
393
466
  ${this.skipLinkLabel??this.dictionary.toolbar.skipLink}
394
467
  </a>
395
- `:l}
468
+ `:s}
396
469
  </slot>
397
470
  </div>
398
471
  `}renderStart(){return n`
@@ -409,8 +482,13 @@ import{a as k}from"./chunks/chunk-4DRU3IYJ.js";import"./chunks/chunk-HGX6GPHM.js
409
482
  aria-label=${this.open?this.menuCloseLabel??this.dictionary.toolbar.menuClose:this.menuOpenLabel??this.dictionary.toolbar.menuOpen}
410
483
  @click=${()=>this.toggle()}
411
484
  >
412
- <slot name=${e} @slotchange=${this.handleIconSlotChange}>
413
- ${o?l:n`<eun-icon name=${a} size="20"></eun-icon>`}
485
+ <!-- burger-icon holds the per-state slots as its fallback, so a
486
+ single element slotted into it stays put across both states, free
487
+ to animate between them, and wins over menu-icon/close-icon. -->
488
+ <slot name="burger-icon">
489
+ <slot name=${e} @slotchange=${this.handleIconSlotChange}>
490
+ ${o?s:n`<eun-icon name=${a} size="20"></eun-icon>`}
491
+ </slot>
414
492
  </slot>
415
493
  </eun-button>
416
494
  `}renderPanel(){return n`
@@ -430,7 +508,7 @@ import{a as k}from"./chunks/chunk-4DRU3IYJ.js";import"./chunks/chunk-HGX6GPHM.js
430
508
  </div>
431
509
  </div>
432
510
  `}render(){return n`
433
- ${this.hasSkipLinksContent()?this.renderSkipLinks():l}
511
+ ${this.hasSkipLinksContent()?this.renderSkipLinks():s}
434
512
  <nav
435
513
  id="bar"
436
514
  aria-label=${this.ariaLabel??this.dictionary.toolbar.navigation}
@@ -439,5 +517,5 @@ import{a as k}from"./chunks/chunk-4DRU3IYJ.js";import"./chunks/chunk-HGX6GPHM.js
439
517
  <div id="center"><slot name="center"></slot></div>
440
518
  ${this.renderEnd()}
441
519
  </nav>
442
- ${this.mobile?this.renderPanel():l}
443
- `}};t.styles=m,r([i({reflect:!0,useDefault:!0})],t.prototype,"position",2),r([i({type:Number,attribute:"mobile-breakpoint"})],t.prototype,"mobileBreakpoint",2),r([i({type:Boolean,reflect:!0})],t.prototype,"open",2),r([i({reflect:!0,attribute:"panel-direction",useDefault:!0})],t.prototype,"panelDirection",2),r([i({attribute:"panel-size"})],t.prototype,"panelSize",2),r([i({reflect:!0,attribute:"mobile-hide"})],t.prototype,"mobileHide",2),r([i({converter:g,attribute:"close-on-backdrop"})],t.prototype,"closeOnBackdrop",2),r([i({attribute:"menu-open-label"})],t.prototype,"menuOpenLabel",2),r([i({attribute:"menu-close-label"})],t.prototype,"menuCloseLabel",2),r([i({attribute:"menu-label"})],t.prototype,"menuLabel",2),r([i({type:Boolean,attribute:"collapse-on-scroll"})],t.prototype,"collapseOnScroll",2),r([i({type:Number,attribute:"collapse-threshold"})],t.prototype,"collapseThreshold",2),r([i({type:Boolean,reflect:!0})],t.prototype,"collapsed",2),r([i({type:Boolean,attribute:"transparent-at-top"})],t.prototype,"transparentAtTop",2),r([i({type:Boolean,reflect:!0,attribute:"at-top"})],t.prototype,"atTop",2),r([i({attribute:"scroll-target"})],t.prototype,"scrollTarget",2),r([i({type:Boolean,attribute:"adaptive-theme"})],t.prototype,"adaptiveTheme",2),r([i({attribute:"adaptive-theme-selector"})],t.prototype,"adaptiveThemeSelector",2),r([i({reflect:!0,useDefault:!0})],t.prototype,"theme",2),r([i({attribute:"default-theme"})],t.prototype,"defaultTheme",2),r([i({attribute:"skip-link-target"})],t.prototype,"skipLinkTarget",2),r([i({attribute:"skip-link-label"})],t.prototype,"skipLinkLabel",2),r([i({type:Boolean,reflect:!0})],t.prototype,"mobile",2),r([d("#bar")],t.prototype,"barEl",2),r([d("#panel")],t.prototype,"panelEl",2),r([d("#burger")],t.prototype,"burgerEl",2),r([p({slot:"menu-icon"})],t.prototype,"menuIconSlotEls",2),r([p({slot:"close-icon"})],t.prototype,"closeIconSlotEls",2),t=r([c(_)],t);export{t as EunomiaToolbar,_ as EunomiaToolbarTagName};
520
+ ${this.mobile?this.renderPanel():s}
521
+ `}};t.styles=m,r([i({reflect:!0,useDefault:!0})],t.prototype,"position",2),r([i({reflect:!0,useDefault:!0})],t.prototype,"layout",2),r([i({type:Number,attribute:"mobile-breakpoint"})],t.prototype,"mobileBreakpoint",2),r([i({type:Boolean,reflect:!0})],t.prototype,"open",2),r([i({reflect:!0,attribute:"panel-direction",useDefault:!0})],t.prototype,"panelDirection",2),r([i({attribute:"panel-size"})],t.prototype,"panelSize",2),r([i({reflect:!0,attribute:"mobile-hide"})],t.prototype,"mobileHide",2),r([i({type:Boolean,attribute:"close-on-backdrop"})],t.prototype,"closeOnBackdrop",2),r([i({attribute:"menu-open-label"})],t.prototype,"menuOpenLabel",2),r([i({attribute:"menu-close-label"})],t.prototype,"menuCloseLabel",2),r([i({attribute:"menu-label"})],t.prototype,"menuLabel",2),r([i({type:Boolean,attribute:"collapse-on-scroll"})],t.prototype,"collapseOnScroll",2),r([i({type:Number,attribute:"collapse-threshold"})],t.prototype,"collapseThreshold",2),r([i({type:Boolean,reflect:!0})],t.prototype,"collapsed",2),r([i({type:Boolean,attribute:"transparent-at-top"})],t.prototype,"transparentAtTop",2),r([i({type:Boolean,reflect:!0,attribute:"at-top"})],t.prototype,"atTop",2),r([i({attribute:"scroll-target"})],t.prototype,"scrollTarget",2),r([i({type:Boolean,attribute:"adaptive-theme"})],t.prototype,"adaptiveTheme",2),r([i({attribute:"adaptive-theme-attribute"})],t.prototype,"adaptiveThemeAttribute",2),r([i({attribute:"adaptive-theme-selector"})],t.prototype,"adaptiveThemeSelector",2),r([i({reflect:!0,useDefault:!0})],t.prototype,"theme",2),r([i({attribute:"default-theme"})],t.prototype,"defaultTheme",2),r([i({attribute:"skip-link-target"})],t.prototype,"skipLinkTarget",2),r([i({attribute:"skip-link-label"})],t.prototype,"skipLinkLabel",2),r([i({type:Boolean,reflect:!0})],t.prototype,"mobile",2),r([l("#bar")],t.prototype,"barEl",2),r([l("#panel")],t.prototype,"panelEl",2),r([l("#burger")],t.prototype,"burgerEl",2),r([d({slot:"menu-icon"})],t.prototype,"menuIconSlotEls",2),r([d({slot:"close-icon"})],t.prototype,"closeIconSlotEls",2),t=r([p(_)],t);export{t as EunomiaToolbar,_ as EunomiaToolbarTagName};
@@ -1,4 +1,4 @@
1
- import{c as g}from"./chunks/chunk-EUWUDCBZ.js";import{b as C}from"./chunks/chunk-5LXGJVJR.js";import{a as D}from"./chunks/chunk-QWTFP56P.js";import{b as k,c as y}from"./chunks/chunk-624VJYNA.js";import{a as m}from"./chunks/chunk-LYYQAALT.js";import{e as L}from"./chunks/chunk-GDBPWZN6.js";import{a as v}from"./chunks/chunk-PPCHQG7P.js";import{a as f}from"./chunks/chunk-O7PHBLH2.js";import"./chunks/chunk-SGM2X2TC.js";import{a,f as P,h as c,j as s,n as x,o as u,p as h,r as S,t as _,u as T}from"./chunks/chunk-YITWLCD3.js";var N=c`
1
+ import{c as g}from"./chunks/chunk-EUWUDCBZ.js";import{b as C}from"./chunks/chunk-5LXGJVJR.js";import{a as D}from"./chunks/chunk-7HXPLZ7C.js";import{b as k,c as y}from"./chunks/chunk-624VJYNA.js";import{a as m}from"./chunks/chunk-LYYQAALT.js";import{e as L}from"./chunks/chunk-GDBPWZN6.js";import{a as v}from"./chunks/chunk-PPCHQG7P.js";import{a as f}from"./chunks/chunk-O7PHBLH2.js";import"./chunks/chunk-SGM2X2TC.js";import{a,f as P,h as c,j as s,n as x,o as u,p as h,r as S,t as _,u as T}from"./chunks/chunk-YITWLCD3.js";var N=c`
2
2
  :host {
3
3
  display: contents;
4
4
  }