@eunomia/elements 1.0.0-beta.3 → 1.0.0-beta.4

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 (321) hide show
  1. package/README.md +1 -1
  2. package/dist/cdn/components/chunks/{chunk-3LMI7KUA.js → chunk-2JLDJFYD.js} +1 -1
  3. package/dist/cdn/components/chunks/chunk-4MXL6PZC.js +124 -0
  4. package/dist/cdn/components/chunks/{chunk-32KRPOPV.js → chunk-5XJGYXW7.js} +6 -6
  5. package/dist/cdn/components/chunks/{chunk-O2HNWH65.js → chunk-5XJLIHAU.js} +7 -7
  6. package/dist/cdn/components/chunks/{chunk-5GF2Q3NR.js → chunk-74AOAB4X.js} +1 -1
  7. package/dist/cdn/components/chunks/{chunk-WYMBUIKX.js → chunk-A6KGFALA.js} +4 -4
  8. package/dist/cdn/components/chunks/chunk-BMQOI7HX.js +371 -0
  9. package/dist/cdn/components/chunks/{chunk-LJYTHDZP.js → chunk-D2M4BV5Y.js} +6 -6
  10. package/dist/cdn/components/chunks/{chunk-NEYBPT3D.js → chunk-EJIX2D4Z.js} +2 -2
  11. package/dist/cdn/components/chunks/{chunk-BYBUXKXC.js → chunk-EOWBYZV7.js} +2 -2
  12. package/dist/cdn/components/chunks/chunk-EST3M4AO.js +1 -0
  13. package/dist/cdn/components/chunks/{chunk-TBKKTJOX.js → chunk-GSJEJLFA.js} +3 -3
  14. package/dist/cdn/components/chunks/{chunk-5RCCZVFZ.js → chunk-IJ5WFMK4.js} +1 -1
  15. package/dist/cdn/components/chunks/{chunk-RWONCXTF.js → chunk-KVYUNKUO.js} +2 -2
  16. package/dist/cdn/components/chunks/chunk-LGLQ36QB.js +16 -0
  17. package/dist/cdn/components/chunks/{chunk-53QH6MPM.js → chunk-NHFWATVN.js} +1 -1
  18. package/dist/cdn/components/chunks/chunk-OAULRKHQ.js +38 -0
  19. package/dist/cdn/components/chunks/chunk-P32B7BFD.js +118 -0
  20. package/dist/cdn/components/chunks/{chunk-ZPFHTJSS.js → chunk-PCM7D3YF.js} +1 -1
  21. package/dist/cdn/components/chunks/{chunk-ABYEBP57.js → chunk-PED5ATYN.js} +11 -8
  22. package/dist/cdn/components/chunks/{chunk-ON42P6FI.js → chunk-RJCJXB7Y.js} +5 -5
  23. package/dist/cdn/components/chunks/{chunk-5C7YND22.js → chunk-S2UCEWNG.js} +8 -8
  24. package/dist/cdn/components/chunks/{chunk-EAGGN3ZI.js → chunk-SIHZFOTK.js} +9 -9
  25. package/dist/cdn/components/chunks/{chunk-6UPI7GHJ.js → chunk-UAGCQF23.js} +7 -7
  26. package/dist/cdn/components/chunks/{chunk-6IILPCSQ.js → chunk-X2AUBZD2.js} +3 -3
  27. package/dist/cdn/components/chunks/chunk-YGUJJ25C.js +263 -0
  28. package/dist/cdn/components/eun-alert.js +65 -45
  29. package/dist/cdn/components/eun-badge.js +1 -1
  30. package/dist/cdn/components/eun-breadcrumb-item.js +14 -10
  31. package/dist/cdn/components/eun-breadcrumb.js +11 -7
  32. package/dist/cdn/components/eun-button.js +1 -1
  33. package/dist/cdn/components/eun-calendar.js +16 -16
  34. package/dist/cdn/components/eun-card.js +21 -12
  35. package/dist/cdn/components/eun-carousel.js +35 -27
  36. package/dist/cdn/components/eun-check-card.js +3 -3
  37. package/dist/cdn/components/eun-checkbox-list.js +3 -3
  38. package/dist/cdn/components/eun-checkbox.js +1 -1
  39. package/dist/cdn/components/eun-chip.js +45 -207
  40. package/dist/cdn/components/eun-collapse.js +13 -12
  41. package/dist/cdn/components/eun-color-picker.js +12 -12
  42. package/dist/cdn/components/eun-counter.js +8 -8
  43. package/dist/cdn/components/eun-date-picker.js +50 -50
  44. package/dist/cdn/components/eun-drawer.js +3 -3
  45. package/dist/cdn/components/eun-dropdown-button.js +1 -1
  46. package/dist/cdn/components/eun-dropdown-item.js +6 -6
  47. package/dist/cdn/components/eun-fab.js +31 -53
  48. package/dist/cdn/components/eun-icon.js +1 -1
  49. package/dist/cdn/components/eun-image-card.js +18 -11
  50. package/dist/cdn/components/eun-image-carousel.js +16 -16
  51. package/dist/cdn/components/eun-infinite-list.js +1 -1
  52. package/dist/cdn/components/eun-input-file.js +12 -12
  53. package/dist/cdn/components/eun-input-phone.js +13 -13
  54. package/dist/cdn/components/eun-input.js +1 -1
  55. package/dist/cdn/components/eun-label.js +4 -4
  56. package/dist/cdn/components/eun-link.js +29 -11
  57. package/dist/cdn/components/eun-loader.js +1 -1
  58. package/dist/cdn/components/eun-modal.js +6 -6
  59. package/dist/cdn/components/eun-pagination.js +3 -3
  60. package/dist/cdn/components/eun-password-strength.js +9 -6
  61. package/dist/cdn/components/eun-progress-bar.js +13 -13
  62. package/dist/cdn/components/eun-radio-card.js +2 -2
  63. package/dist/cdn/components/eun-radio-list.js +1 -1
  64. package/dist/cdn/components/eun-radio.js +1 -1
  65. package/dist/cdn/components/eun-scheduler-event-editor.js +2 -2
  66. package/dist/cdn/components/eun-scheduler-event.js +1 -1
  67. package/dist/cdn/components/eun-scheduler.js +10 -10
  68. package/dist/cdn/components/eun-search.js +7 -7
  69. package/dist/cdn/components/eun-select.js +10 -10
  70. package/dist/cdn/components/eun-sidebar.js +9 -9
  71. package/dist/cdn/components/eun-skeleton.js +1 -1
  72. package/dist/cdn/components/eun-slider.js +8 -8
  73. package/dist/cdn/components/eun-sliding-card.js +4 -3
  74. package/dist/cdn/components/eun-step.js +8 -8
  75. package/dist/cdn/components/eun-stepper.js +8 -8
  76. package/dist/cdn/components/eun-switch.js +10 -10
  77. package/dist/cdn/components/eun-tab-group.js +19 -11
  78. package/dist/cdn/components/eun-tab-panel.js +1 -1
  79. package/dist/cdn/components/eun-tab.js +1 -1
  80. package/dist/cdn/components/eun-table-action-bar.js +1 -1
  81. package/dist/cdn/components/eun-table-cell.js +1 -1
  82. package/dist/cdn/components/eun-table-column.js +1 -1
  83. package/dist/cdn/components/eun-table-header.js +1 -1
  84. package/dist/cdn/components/eun-table-item.js +1 -1
  85. package/dist/cdn/components/eun-table-skeleton-row.js +1 -1
  86. package/dist/cdn/components/eun-table.js +3 -3
  87. package/dist/cdn/components/eun-tag.js +34 -126
  88. package/dist/cdn/components/eun-textarea.js +22 -22
  89. package/dist/cdn/components/eun-time-picker.js +25 -25
  90. package/dist/cdn/components/eun-toast.js +40 -36
  91. package/dist/cdn/components/eun-toggle-group.js +199 -66
  92. package/dist/cdn/components/eun-toggle-item.js +41 -24
  93. package/dist/cdn/components/eun-toggle.js +11 -8
  94. package/dist/cdn/components/eun-toolbar.js +14 -7
  95. package/dist/cdn/components/eun-tooltip.js +122 -87
  96. package/dist/cdn/styles/eunomia-themes.css +1 -1
  97. package/dist/cdn/styles/themes/eunomia-theme.css +1 -1
  98. package/dist/cdn/styles/themes/eunomia-theme.scss +1 -0
  99. package/dist/cdn/styles/themes/mixins/eunomia-neutrals.mixin.scss +71 -0
  100. package/dist/cdn/styles/themes/prebuilt-themes/eunomia/eunomia-dark.mixin.scss +3 -13
  101. package/dist/cdn/styles/themes/prebuilt-themes/eunomia/eunomia.mixin.scss +3 -13
  102. package/dist/cdn/styles/themes/prebuilt-themes/eunomia/eunomia.theme.css +1 -1
  103. package/dist/cdn/styles/themes/prebuilt-themes/eunomia/eunomia.theme.scss +2 -0
  104. package/dist/cdn/styles/themes/prebuilt-themes/fire/eunomia-fire-dark.mixin.scss +3 -13
  105. package/dist/cdn/styles/themes/prebuilt-themes/fire/eunomia-fire.mixin.scss +3 -13
  106. package/dist/cdn/styles/themes/prebuilt-themes/fire/eunomia-fire.theme.css +1 -1
  107. package/dist/cdn/styles/themes/prebuilt-themes/fire/eunomia-fire.theme.scss +2 -0
  108. package/dist/cdn/styles/themes/prebuilt-themes/forest/eunomia-forest-dark.mixin.scss +3 -13
  109. package/dist/cdn/styles/themes/prebuilt-themes/forest/eunomia-forest.mixin.scss +3 -13
  110. package/dist/cdn/styles/themes/prebuilt-themes/forest/eunomia-forest.theme.css +1 -1
  111. package/dist/cdn/styles/themes/prebuilt-themes/forest/eunomia-forest.theme.scss +2 -0
  112. package/dist/cdn/styles/themes/prebuilt-themes/gold/eunomia-gold-dark.mixin.scss +3 -13
  113. package/dist/cdn/styles/themes/prebuilt-themes/gold/eunomia-gold.mixin.scss +3 -13
  114. package/dist/cdn/styles/themes/prebuilt-themes/gold/eunomia-gold.theme.css +1 -1
  115. package/dist/cdn/styles/themes/prebuilt-themes/gold/eunomia-gold.theme.scss +2 -0
  116. package/dist/cdn/styles/themes/prebuilt-themes/ocean/eunomia-ocean-dark.mixin.scss +3 -13
  117. package/dist/cdn/styles/themes/prebuilt-themes/ocean/eunomia-ocean.mixin.scss +3 -13
  118. package/dist/cdn/styles/themes/prebuilt-themes/ocean/eunomia-ocean.theme.css +1 -1
  119. package/dist/cdn/styles/themes/prebuilt-themes/ocean/eunomia-ocean.theme.scss +2 -0
  120. package/dist/cdn/styles/themes/prebuilt-themes/salmon/eunomia-salmon-dark.mixin.scss +3 -13
  121. package/dist/cdn/styles/themes/prebuilt-themes/salmon/eunomia-salmon.mixin.scss +3 -13
  122. package/dist/cdn/styles/themes/prebuilt-themes/salmon/eunomia-salmon.theme.css +1 -1
  123. package/dist/cdn/styles/themes/prebuilt-themes/salmon/eunomia-salmon.theme.scss +2 -0
  124. package/dist/cdn/styles/themes/prebuilt-themes/violet/eunomia-violet-dark.mixin.scss +3 -13
  125. package/dist/cdn/styles/themes/prebuilt-themes/violet/eunomia-violet.mixin.scss +3 -13
  126. package/dist/cdn/styles/themes/prebuilt-themes/violet/eunomia-violet.theme.css +1 -1
  127. package/dist/cdn/styles/themes/prebuilt-themes/violet/eunomia-violet.theme.scss +2 -0
  128. package/dist/cdn/styles/tools/indexes/eunomia-tools.index.scss +1 -0
  129. package/dist/cdn/styles/tools/mixins/settings/eunomia-alpha.mixin.scss +39 -0
  130. package/dist/cdn/styles/tools/mixins/settings/eunomia-border.mixin.scss +3 -3
  131. package/dist/cdn/styles/tools/mixins/settings/eunomia-font.mixin.scss +12 -12
  132. package/dist/cdn/styles/tools/mixins/settings/eunomia-radius.mixin.scss +4 -4
  133. package/dist/components/action/button/button.d.ts +2 -0
  134. package/dist/components/action/button/button.js +2 -0
  135. package/dist/components/action/button/button.styles.js +132 -384
  136. package/dist/components/action/dropdown-button/dropdown-button.d.ts +7 -0
  137. package/dist/components/action/dropdown-button/dropdown-button.js +11 -0
  138. package/dist/components/action/dropdown-button/dropdown-button.styles.js +8 -8
  139. package/dist/components/action/dropdown-button/dropdown-item.styles.js +6 -6
  140. package/dist/components/action/fab/fab.d.ts +3 -1
  141. package/dist/components/action/fab/fab.js +3 -1
  142. package/dist/components/action/fab/fab.styles.js +26 -49
  143. package/dist/components/action/link/link.d.ts +50 -0
  144. package/dist/components/action/link/link.js +69 -1
  145. package/dist/components/action/link/link.styles.js +19 -2
  146. package/dist/components/action/shared-styles/button-palette.styles.d.ts +27 -0
  147. package/dist/components/action/shared-styles/button-palette.styles.js +151 -0
  148. package/dist/components/action/toggle/toggle-group.d.ts +41 -7
  149. package/dist/components/action/toggle/toggle-group.js +161 -45
  150. package/dist/components/action/toggle/toggle-group.styles.d.ts +6 -5
  151. package/dist/components/action/toggle/toggle-group.styles.js +152 -35
  152. package/dist/components/action/toggle/toggle-item.styles.js +37 -20
  153. package/dist/components/action/toggle/toggle.d.ts +1 -1
  154. package/dist/components/action/toggle/toggle.js +1 -1
  155. package/dist/components/action/toggle/toggle.styles.d.ts +2 -2
  156. package/dist/components/action/toggle/toggle.styles.js +13 -10
  157. package/dist/components/alert/alert/alert.d.ts +4 -3
  158. package/dist/components/alert/alert/alert.js +4 -3
  159. package/dist/components/alert/alert/alert.styles.js +57 -36
  160. package/dist/components/alert/drawer/drawer.styles.js +3 -3
  161. package/dist/components/alert/modal/modal.styles.js +6 -6
  162. package/dist/components/alert/toast/toast.d.ts +4 -3
  163. package/dist/components/alert/toast/toast.js +4 -3
  164. package/dist/components/alert/toast/toast.styles.js +41 -36
  165. package/dist/components/content/badge/badge.styles.js +1 -1
  166. package/dist/components/content/card/card.d.ts +4 -4
  167. package/dist/components/content/card/card.js +4 -4
  168. package/dist/components/content/card/card.styles.js +19 -10
  169. package/dist/components/content/card/image-card.d.ts +1 -1
  170. package/dist/components/content/card/image-card.js +1 -1
  171. package/dist/components/content/card/image-card.styles.js +17 -10
  172. package/dist/components/content/card/sliding-card.styles.js +3 -2
  173. package/dist/components/content/chip/chip.d.ts +16 -7
  174. package/dist/components/content/chip/chip.js +18 -6
  175. package/dist/components/content/chip/chip.styles.d.ts +1 -1
  176. package/dist/components/content/chip/chip.styles.js +43 -207
  177. package/dist/components/content/collapse/collapse.styles.js +10 -9
  178. package/dist/components/content/icon/icon.style.js +1 -1
  179. package/dist/components/content/image-carousel/image-carousel.styles.js +14 -14
  180. package/dist/components/content/password-strength/password-strength.styles.js +7 -4
  181. package/dist/components/content/progress-bar/progress-bar.styles.js +9 -9
  182. package/dist/components/content/shared-styles/tone-surface.styles.d.ts +31 -0
  183. package/dist/components/content/shared-styles/tone-surface.styles.js +149 -0
  184. package/dist/components/content/tag/tag.d.ts +16 -6
  185. package/dist/components/content/tag/tag.js +19 -6
  186. package/dist/components/content/tag/tag.styles.d.ts +1 -1
  187. package/dist/components/content/tag/tag.styles.js +40 -125
  188. package/dist/components/content/tooltip/tooltip.d.ts +15 -4
  189. package/dist/components/content/tooltip/tooltip.js +21 -4
  190. package/dist/components/content/tooltip/tooltip.styles.js +115 -79
  191. package/dist/components/form/checkbox/check-card.styles.js +2 -2
  192. package/dist/components/form/checkbox/checkbox-list.d.ts +1 -1
  193. package/dist/components/form/checkbox/checkbox.d.ts +1 -1
  194. package/dist/components/form/checkbox/checkbox.styles.js +6 -6
  195. package/dist/components/form/color-picker/color-picker.d.ts +1 -1
  196. package/dist/components/form/color-picker/color-picker.styles.js +7 -7
  197. package/dist/components/form/counter/counter.d.ts +1 -1
  198. package/dist/components/form/counter/counter.styles.js +7 -7
  199. package/dist/components/form/date-picker/date-picker-day-grid.styles.js +2 -2
  200. package/dist/components/form/date-picker/date-picker-grid.styles.js +15 -15
  201. package/dist/components/form/date-picker/date-picker-month-grid.styles.js +1 -1
  202. package/dist/components/form/date-picker/date-picker-year-grid.styles.js +1 -1
  203. package/dist/components/form/date-picker/date-picker.d.ts +1 -1
  204. package/dist/components/form/date-picker/date-picker.styles.js +12 -12
  205. package/dist/components/form/input/input.d.ts +1 -1
  206. package/dist/components/form/input-file/input-file.d.ts +1 -1
  207. package/dist/components/form/input-file/input-file.styles.js +9 -9
  208. package/dist/components/form/input-phone/input-phone.d.ts +1 -1
  209. package/dist/components/form/input-phone/input-phone.styles.js +7 -7
  210. package/dist/components/form/label/label.styles.js +4 -4
  211. package/dist/components/form/radio/radio-card.styles.js +1 -1
  212. package/dist/components/form/radio/radio-list.d.ts +1 -1
  213. package/dist/components/form/radio/radio.d.ts +1 -1
  214. package/dist/components/form/radio/radio.styles.js +2 -2
  215. package/dist/components/form/search/search.styles.js +6 -6
  216. package/dist/components/form/select/select.d.ts +1 -1
  217. package/dist/components/form/select/select.styles.js +6 -6
  218. package/dist/components/form/shared-styles/card.styles.js +1 -1
  219. package/dist/components/form/shared-styles/field.styles.js +7 -7
  220. package/dist/components/form/shared-styles/form-labels.styles.js +1 -1
  221. package/dist/components/form/shared-styles/listbox.styles.js +6 -6
  222. package/dist/components/form/slider/slider.d.ts +1 -1
  223. package/dist/components/form/slider/slider.styles.js +6 -6
  224. package/dist/components/form/switch/switch.d.ts +1 -1
  225. package/dist/components/form/switch/switch.styles.js +8 -8
  226. package/dist/components/form/textarea/textarea.d.ts +1 -1
  227. package/dist/components/form/textarea/textarea.styles.js +6 -6
  228. package/dist/components/form/time-picker/time-picker-columns.styles.js +6 -6
  229. package/dist/components/form/time-picker/time-picker-list.styles.js +2 -2
  230. package/dist/components/form/time-picker/time-picker.d.ts +1 -1
  231. package/dist/components/form/time-picker/time-picker.styles.js +8 -8
  232. package/dist/components/loader/loader/loader.styles.js +2 -2
  233. package/dist/components/loader/skeleton/skeleton.styles.js +8 -5
  234. package/dist/components/navigation/breadcrumb/breadcrumb-item.d.ts +7 -0
  235. package/dist/components/navigation/breadcrumb/breadcrumb-item.js +15 -1
  236. package/dist/components/navigation/breadcrumb/breadcrumb-item.styles.js +3 -3
  237. package/dist/components/navigation/breadcrumb/breadcrumb.d.ts +1 -0
  238. package/dist/components/navigation/breadcrumb/breadcrumb.js +7 -1
  239. package/dist/components/navigation/breadcrumb/breadcrumb.styles.js +3 -3
  240. package/dist/components/navigation/carousel/carousel.d.ts +40 -6
  241. package/dist/components/navigation/carousel/carousel.js +61 -12
  242. package/dist/components/navigation/carousel/carousel.styles.js +19 -7
  243. package/dist/components/navigation/pagination/pagination.styles.js +3 -3
  244. package/dist/components/navigation/sidebar/sidebar.styles.js +9 -9
  245. package/dist/components/navigation/stepper/step.styles.js +8 -8
  246. package/dist/components/navigation/stepper/stepper.styles.js +8 -8
  247. package/dist/components/navigation/tabs/tab/tab.styles.js +5 -5
  248. package/dist/components/navigation/tabs/tab-group/tab-group.d.ts +9 -0
  249. package/dist/components/navigation/tabs/tab-group/tab-group.js +19 -2
  250. package/dist/components/navigation/tabs/tab-group/tab-group.styles.js +12 -4
  251. package/dist/components/navigation/tabs/tab-panel/tab-panel.styles.js +1 -1
  252. package/dist/components/navigation/toolbar/toolbar.d.ts +2 -0
  253. package/dist/components/navigation/toolbar/toolbar.js +2 -0
  254. package/dist/components/navigation/toolbar/toolbar.styles.js +16 -7
  255. package/dist/features/scheduler/calendar/calendar.js +1 -1
  256. package/dist/features/scheduler/calendar/calendar.styles.js +3 -3
  257. package/dist/features/scheduler/scheduler/scheduler.styles.js +2 -2
  258. package/dist/features/scheduler/scheduler-event/scheduler-event.styles.js +2 -2
  259. package/dist/features/scheduler/scheduler-event-editor/scheduler-event-editor.styles.js +2 -2
  260. package/dist/features/scheduler/shared/scheduler-event-popover.styles.js +4 -4
  261. package/dist/features/scheduler/shared/scheduler-hour-grid.styles.js +1 -1
  262. package/dist/features/scheduler/shared/scheduler-month-view.styles.js +1 -1
  263. package/dist/features/scheduler/shared/scheduler-year-view.styles.js +1 -1
  264. package/dist/features/table/native-table.css +11 -11
  265. package/dist/features/table/table/table.styles.js +2 -2
  266. package/dist/features/table/table-action-bar/table-action-bar.styles.js +2 -2
  267. package/dist/features/table/table-cell/table-cell.styles.js +2 -2
  268. package/dist/features/table/table-column/table-column.styles.js +3 -3
  269. package/dist/features/table/table-header/table-header.styles.js +4 -4
  270. package/dist/features/table/table-item/table-item.styles.js +6 -6
  271. package/dist/features/table/table-skeleton-row/table-skeleton-row.styles.js +1 -1
  272. package/dist/index.d.ts +4 -4
  273. package/dist/index.js +5 -2
  274. package/dist/jsx.d.ts +18 -5
  275. package/dist/mixins/button.mixin.d.ts +1 -0
  276. package/dist/mixins/button.mixin.js +10 -0
  277. package/dist/mixins/check.mixin.d.ts +1 -1
  278. package/dist/mixins/editable.mixin.d.ts +1 -1
  279. package/dist/mixins/form.mixin.d.ts +5 -1
  280. package/dist/mixins/form.mixin.js +32 -12
  281. package/dist/mixins/overflow-navigation.mixin.js +2 -1
  282. package/dist/mixins/radio.mixin.d.ts +1 -1
  283. package/dist/mixins/validators.mixin.d.ts +9 -3
  284. package/dist/utils/rich-text.utils.d.ts +33 -0
  285. package/dist/utils/rich-text.utils.js +140 -49
  286. package/dist/utils/theme-generator.utils.d.ts +24 -3
  287. package/dist/utils/theme-generator.utils.js +66 -21
  288. package/package.json +6 -1
  289. package/styles/themes/eunomia-theme.scss +1 -0
  290. package/styles/themes/mixins/eunomia-neutrals.mixin.scss +71 -0
  291. package/styles/themes/prebuilt-themes/eunomia/eunomia-dark.mixin.scss +3 -13
  292. package/styles/themes/prebuilt-themes/eunomia/eunomia.mixin.scss +3 -13
  293. package/styles/themes/prebuilt-themes/eunomia/eunomia.theme.scss +2 -0
  294. package/styles/themes/prebuilt-themes/fire/eunomia-fire-dark.mixin.scss +3 -13
  295. package/styles/themes/prebuilt-themes/fire/eunomia-fire.mixin.scss +3 -13
  296. package/styles/themes/prebuilt-themes/fire/eunomia-fire.theme.scss +2 -0
  297. package/styles/themes/prebuilt-themes/forest/eunomia-forest-dark.mixin.scss +3 -13
  298. package/styles/themes/prebuilt-themes/forest/eunomia-forest.mixin.scss +3 -13
  299. package/styles/themes/prebuilt-themes/forest/eunomia-forest.theme.scss +2 -0
  300. package/styles/themes/prebuilt-themes/gold/eunomia-gold-dark.mixin.scss +3 -13
  301. package/styles/themes/prebuilt-themes/gold/eunomia-gold.mixin.scss +3 -13
  302. package/styles/themes/prebuilt-themes/gold/eunomia-gold.theme.scss +2 -0
  303. package/styles/themes/prebuilt-themes/ocean/eunomia-ocean-dark.mixin.scss +3 -13
  304. package/styles/themes/prebuilt-themes/ocean/eunomia-ocean.mixin.scss +3 -13
  305. package/styles/themes/prebuilt-themes/ocean/eunomia-ocean.theme.scss +2 -0
  306. package/styles/themes/prebuilt-themes/salmon/eunomia-salmon-dark.mixin.scss +3 -13
  307. package/styles/themes/prebuilt-themes/salmon/eunomia-salmon.mixin.scss +3 -13
  308. package/styles/themes/prebuilt-themes/salmon/eunomia-salmon.theme.scss +2 -0
  309. package/styles/themes/prebuilt-themes/violet/eunomia-violet-dark.mixin.scss +3 -13
  310. package/styles/themes/prebuilt-themes/violet/eunomia-violet.mixin.scss +3 -13
  311. package/styles/themes/prebuilt-themes/violet/eunomia-violet.theme.scss +2 -0
  312. package/styles/tools/indexes/eunomia-tools.index.scss +1 -0
  313. package/styles/tools/mixins/settings/eunomia-alpha.mixin.scss +39 -0
  314. package/styles/tools/mixins/settings/eunomia-border.mixin.scss +3 -3
  315. package/styles/tools/mixins/settings/eunomia-font.mixin.scss +12 -12
  316. package/styles/tools/mixins/settings/eunomia-radius.mixin.scss +4 -4
  317. package/dist/cdn/components/chunks/chunk-5TH3P53V.js +0 -16
  318. package/dist/cdn/components/chunks/chunk-KNM5QHDK.js +0 -38
  319. package/dist/cdn/components/chunks/chunk-MBF52GEL.js +0 -1
  320. package/dist/cdn/components/chunks/chunk-Z6PJYSC3.js +0 -622
  321. package/dist/cdn/components/chunks/chunk-ZKPCO5RB.js +0 -262
@@ -1,4 +1,4 @@
1
- import{a as l}from"./chunks/chunk-T7WABJEJ.js";import{a as e,f as i,g as n,h as r,n as t,p as c,s}from"./chunks/chunk-XH6NREVZ.js";var u=n`
1
+ import{a as s}from"./chunks/chunk-T7WABJEJ.js";import{a as e,f as i,g as n,h as r,n as t,p as l,s as c}from"./chunks/chunk-XH6NREVZ.js";var u=n`
2
2
  :host {
3
3
  --_hoverColor: var(
4
4
  --toggle-group-hover-color,
@@ -10,22 +10,28 @@ import{a as l}from"./chunks/chunk-T7WABJEJ.js";import{a as e,f as i,g as n,h as
10
10
  position: relative;
11
11
  z-index: 1;
12
12
  display: inline-block;
13
+ flex-shrink: 0;
13
14
  outline: none !important;
14
15
  }
16
+ :host([full]) {
17
+ flex: 1 1 0%;
18
+ }
15
19
  #item {
16
20
  box-sizing: border-box;
21
+ width: 100%;
17
22
  display: inline-flex;
18
23
  align-items: center;
19
24
  gap: var(--eun-space-xs, 4px);
20
25
  font-family: var(--eun-font-family, "Mulish", sans-serif);
21
- font-size: var(--eun-fontSize-s, 14px);
22
- font-weight: var(--eun-fontWeight-m, 500);
26
+ font-size: var(--eun-font-size-s, 14px);
27
+ font-weight: var(--eun-font-weight-m, 500);
23
28
  text-transform: capitalize;
29
+ white-space: nowrap;
24
30
  cursor: pointer;
25
31
  color: var(--toggle-group-color, var(--eun-color-grey-600, #666e8a));
26
32
  padding: 6px 14px;
27
33
  border-radius: calc(
28
- var(--toggle-group-border-radius, var(--eun-borderRadius-m, 8px)) - 3px
34
+ var(--toggle-group-border-radius, var(--eun-border-radius-m, 8px)) - 3px
29
35
  );
30
36
  outline: 2px solid transparent;
31
37
  box-shadow: var(--_boxShadow);
@@ -53,6 +59,9 @@ import{a as l}from"./chunks/chunk-T7WABJEJ.js";import{a as e,f as i,g as n,h as
53
59
  cursor: not-allowed;
54
60
  opacity: 0.5;
55
61
  }
62
+ :host([full]) #item {
63
+ justify-content: center;
64
+ }
56
65
  :host([checked]:not([exclusive])) #item {
57
66
  background: var(
58
67
  --toggle-group-active-background,
@@ -67,69 +76,77 @@ import{a as l}from"./chunks/chunk-T7WABJEJ.js";import{a as e,f as i,g as n,h as
67
76
  }
68
77
 
69
78
  :host {
79
+ --_variantColorDefault: var(--eun-color-primary-500, #3d6fff);
80
+ --_variantTintDefault: var(--eun-color-primary-transparent, #3d6fff33);
70
81
  --_variantColor: var(
71
82
  --toggle-group-active-background,
72
- var(--eun-color-primary-500, #3d6fff)
83
+ var(--_variantColorDefault)
84
+ );
85
+ --_variantTint: var(--_customTint, var(--_variantTintDefault));
86
+ --_customTint: color-mix(
87
+ in srgb,
88
+ var(--toggle-group-active-background) 15%,
89
+ transparent
73
90
  );
74
- --_variantTint: var(--eun-color-primary-transparent, #3d6fff33);
75
91
  }
76
92
  :host([variant="secondary"]) {
77
- --_variantColor: var(--eun-color-secondary-500, #e5a030);
78
- --_variantTint: var(--eun-color-secondary-transparent, #e5a03033);
93
+ --_variantColorDefault: var(--eun-color-secondary-500, #e5a030);
94
+ --_variantTintDefault: var(--eun-color-secondary-transparent, #e5a03033);
79
95
  }
80
96
  :host([variant="critical"]) {
81
- --_variantColor: var(--eun-color-critical-100, #aa0014);
82
- --_variantTint: var(--eun-color-critical-30, #faf0f1);
97
+ --_variantColorDefault: var(--eun-color-critical-100, #aa0014);
98
+ --_variantTintDefault: var(--eun-color-critical-30, #faf0f1);
83
99
  }
84
100
  :host([variant="success"]) {
85
- --_variantColor: var(--eun-color-success-100, #1a9948);
86
- --_variantTint: var(--eun-color-success-30, #f1f9f4);
101
+ --_variantColorDefault: var(--eun-color-success-100, #1a9948);
102
+ --_variantTintDefault: var(--eun-color-success-30, #f1f9f4);
87
103
  }
88
104
  :host([variant="warning"]) {
89
- --_variantColor: var(--eun-color-warning-100, #c85207);
90
- --_variantTint: var(--eun-color-warning-30, #fcf5f0);
105
+ --_variantColorDefault: var(--eun-color-warning-100, #c85207);
106
+ --_variantTintDefault: var(--eun-color-warning-30, #fcf5f0);
91
107
  }
92
108
  :host([appearance="outline"]) #item,
93
109
  :host([appearance="flat"]) #item {
94
110
  border-radius: var(
95
111
  --toggle-group-border-radius,
96
- var(--eun-borderRadius-m, 8px)
112
+ var(--eun-border-radius-m, 8px)
97
113
  );
98
114
  }
99
115
  :host([appearance="outline"]) #item {
100
- border: var(--eun-borderWidth-s, 1px) solid
116
+ border: var(--eun-border-width-s, 1px) solid
101
117
  var(--toggle-group-border-color, var(--eun-color-grey-300, #dee0e7));
102
118
  }
103
119
  :host([appearance="flat"]) #item {
104
- border: var(--eun-borderWidth-s, 1px) solid transparent;
120
+ border: var(--eun-border-width-s, 1px) solid
121
+ var(--toggle-group-border-color, transparent);
105
122
  }
106
123
  :host([appearance="outline"][checked]) #item,
107
124
  :host([appearance="flat"][checked]) #item {
108
125
  background: var(--_variantTint);
109
- color: var(--_variantColor);
110
- font-weight: var(--eun-fontWeight-b, 700);
126
+ color: var(--toggle-group-active-color, var(--_variantColor));
127
+ font-weight: var(--eun-font-weight-b, 700);
111
128
  }
112
129
  :host([appearance="outline"][checked]) #item {
113
130
  border-color: var(--_variantColor);
114
131
  }
115
132
  :host([appearance="outline"]:not([disabled]):not([checked]):hover) #item,
116
133
  :host([appearance="flat"]:not([disabled]):not([checked]):hover) #item {
117
- color: var(--_variantColor);
134
+ color: var(--toggle-group-hover-color, var(--_variantColor));
118
135
  }
119
136
  :host([appearance="outline"]:focus-visible) #item,
120
137
  :host([appearance="flat"]:focus-visible) #item {
121
138
  outline-color: var(--_variantColor);
122
- color: var(--_variantColor);
139
+ color: var(--toggle-group-hover-color, var(--_variantColor));
123
140
  }
124
141
  :host([appearance="outline"]:not([disabled]):not([checked]):hover) #item,
125
142
  :host([appearance="outline"]:focus-visible) #item {
126
143
  border-color: var(--_variantColor);
127
144
  }
128
- `;var d="eun-toggle-item",v="eun-toggle-group",o=class extends l(s){constructor(){super(...arguments);this.checked=!1;this.activate=()=>{this.disabled||this.closest(v)?.activateItem(this)}}connectedCallback(){super.connectedCallback?.(),this.hasAttribute("role")||this.setAttribute("role","checkbox"),this.hasAttribute("tabindex")||this.setAttribute("tabindex","0"),this.addEventListener("click",this.activate)}disconnectedCallback(){this.removeEventListener("click",this.activate),super.disconnectedCallback?.()}updated(a){super.updated(a),a.has("checked")&&this.setAttribute("aria-checked",String(this.checked))}render(){return t`
145
+ `;var v="eun-toggle-item",d="eun-toggle-group",o=class extends s(c){constructor(){super(...arguments);this.checked=!1;this.activate=()=>{this.disabled||this.closest(d)?.activateItem(this)}}connectedCallback(){super.connectedCallback?.(),this.hasAttribute("role")||this.setAttribute("role","checkbox"),this.hasAttribute("tabindex")||this.setAttribute("tabindex","0"),this.addEventListener("click",this.activate)}disconnectedCallback(){this.removeEventListener("click",this.activate),super.disconnectedCallback?.()}updated(a){super.updated(a),a.has("checked")&&this.setAttribute("aria-checked",String(this.checked))}render(){return t`
129
146
  <div id="item" part="item">
130
147
  <slot name="icon">
131
- ${this.icon?t`<eun-icon name=${this.icon} size="16"></eun-icon>`:c}
148
+ ${this.icon?t`<eun-icon name=${this.icon} size="16"></eun-icon>`:l}
132
149
  </slot>
133
150
  <slot></slot>
134
151
  </div>
135
- `}};o.styles=[u],e([r({reflect:!0})],o.prototype,"value",2),e([r()],o.prototype,"icon",2),e([r({reflect:!0})],o.prototype,"variant",2),e([r({type:Boolean,reflect:!0})],o.prototype,"checked",2),o=e([i(d)],o);export{o as EunomiaToggleItem,d as EunomiaToggleItemTagName};
152
+ `}};o.styles=[u],e([r({reflect:!0})],o.prototype,"value",2),e([r()],o.prototype,"icon",2),e([r({reflect:!0})],o.prototype,"variant",2),e([r({type:Boolean,reflect:!0})],o.prototype,"checked",2),o=e([i(v)],o);export{o as EunomiaToggleItem,v as EunomiaToggleItemTagName};
@@ -19,8 +19,8 @@ import{a as c}from"./chunks/chunk-YYCEPZUN.js";import{a as d}from"./chunks/chunk
19
19
  gap: var(--eun-space-xs, 4px);
20
20
  cursor: pointer;
21
21
  font-family: var(--eun-font-family, "Mulish", sans-serif);
22
- font-size: var(--eun-fontSize-s, 14px);
23
- font-weight: var(--eun-fontWeight-m, 500);
22
+ font-size: var(--eun-font-size-s, 14px);
23
+ font-weight: var(--eun-font-weight-m, 500);
24
24
  text-transform: capitalize;
25
25
  color: var(--toggle-color, var(--eun-color-grey-600, #666e8a));
26
26
  padding: var(
@@ -28,9 +28,9 @@ import{a as c}from"./chunks/chunk-YYCEPZUN.js";import{a as d}from"./chunks/chunk
28
28
  calc(var(--eun-space-xs, 4px) * 1.5) var(--eun-space-m, 16px)
29
29
  );
30
30
  outline: 2px solid transparent;
31
- border-radius: var(--toggle-border-radius, var(--eun-borderRadius-m, 8px));
32
- background: var(--toggle-background, var(--eun-color-grey-100, #f7f8fa));
33
- border: var(--toggle-border-size, var(--eun-borderWidth-s, 1px)) solid
31
+ border-radius: var(--toggle-border-radius, var(--eun-border-radius-m, 8px));
32
+ background: var(--toggle-background, var(--eun-surface-sunken, #f7f8fa));
33
+ border: var(--toggle-border-size, var(--eun-border-width-s, 1px)) solid
34
34
  var(--toggle-border-color, var(--eun-color-grey-300, #dee0e7));
35
35
  box-shadow: var(--_boxShadow);
36
36
  transition:
@@ -73,11 +73,14 @@ import{a as c}from"./chunks/chunk-YYCEPZUN.js";import{a as d}from"./chunks/chunk
73
73
  );
74
74
  }
75
75
  :host([appearance="flat"]:not([disabled])) #toggle {
76
- background: var(--toggle-background, var(--eun-color-grey-100, #f7f8fa));
77
- border-color: transparent;
76
+ background: var(--toggle-background, var(--eun-surface-sunken, #f7f8fa));
77
+ border-color: var(--toggle-border-color, transparent);
78
78
  }
79
79
  :host([appearance="flat"]:not([disabled]):hover) #toggle {
80
- border-color: var(--toggle-border-color-hover, transparent);
80
+ border-color: var(
81
+ --toggle-border-color-hover,
82
+ var(--toggle-border-color, transparent)
83
+ );
81
84
  }
82
85
  :host([checked]:not([swap])) #toggle {
83
86
  background: var(
@@ -31,7 +31,9 @@ import{a as g}from"./chunks/chunk-N6ZW5CDN.js";import"./chunks/chunk-RIFF2D2F.js
31
31
  color-mix(in srgb, var(--_background) 90%, transparent)
32
32
  );
33
33
  --_panelColor: var(--toolbar-panel-color, var(--_color));
34
- --_panelPadding: var(--toolbar-panel-padding, 24px);
34
+ --_panelPadding: var(--toolbar-panel-padding, 14px);
35
+ --_burgerAlign: var(--toolbar-burger-align, center);
36
+ --_burgerPadding: var(--toolbar-burger-padding, 0 var(--_panelPadding));
35
37
  --_panelGap: var(--toolbar-panel-gap, 8px);
36
38
  --_panelBackdropBlur: var(--toolbar-panel-backdrop-blur, 8px);
37
39
  --_skipLinksHeight: var(--toolbar-skip-links-height, 40px);
@@ -85,7 +87,7 @@ import{a as g}from"./chunks/chunk-N6ZW5CDN.js";import"./chunks/chunk-RIFF2D2F.js
85
87
  padding: var(--_padding);
86
88
  background: var(--_background);
87
89
  color: var(--_color);
88
- border-block-end: var(--eun-borderWidth-s, 1px) solid var(--_borderColor);
90
+ border-block-end: var(--eun-border-width-s, 1px) solid var(--_borderColor);
89
91
  box-shadow: var(--_shadow);
90
92
  transition:
91
93
  height var(--_transitionDuration) ease,
@@ -144,7 +146,7 @@ import{a as g}from"./chunks/chunk-N6ZW5CDN.js";import"./chunks/chunk-RIFF2D2F.js
144
146
  outline-offset: 2px;
145
147
  outline: 2px solid transparent;
146
148
  transition: outline 0.2s ease-out;
147
- border-radius: var(--eun-borderRadius-s);
149
+ border-radius: var(--eun-border-radius-s);
148
150
  }
149
151
  #logo-link:focus-visible {
150
152
  outline-color: var(--eun-color-primary-500);
@@ -191,7 +193,7 @@ import{a as g}from"./chunks/chunk-N6ZW5CDN.js";import"./chunks/chunk-RIFF2D2F.js
191
193
  display: inline-flex;
192
194
  align-items: center;
193
195
  color: inherit;
194
- font-size: var(--eun-fontSize-s, 13px);
196
+ font-size: var(--eun-font-size-s, 13px);
195
197
  text-decoration: none;
196
198
  white-space: nowrap;
197
199
  }
@@ -202,7 +204,7 @@ import{a as g}from"./chunks/chunk-N6ZW5CDN.js";import"./chunks/chunk-RIFF2D2F.js
202
204
  --link-color-focus: var(--_skipLinksColor);
203
205
  --link-padding: var(--eun-space-xs, 4px);
204
206
  --link-background-focus: var(--eun-color-secondary-transparent, #edbd6f33);
205
- --link-border-radius: var(--eun-borderRadius-l, 999px);
207
+ --link-border-radius: var(--eun-border-radius-l, 999px);
206
208
  }
207
209
 
208
210
  #skip-links ::slotted(a),
@@ -210,7 +212,7 @@ import{a as g}from"./chunks/chunk-N6ZW5CDN.js";import"./chunks/chunk-RIFF2D2F.js
210
212
  padding: var(--eun-space-xs, 4px);
211
213
  outline: 2px solid transparent;
212
214
  outline-offset: 2px;
213
- border-radius: var(--eun-borderRadius-l, 999px);
215
+ border-radius: var(--eun-border-radius-l, 999px);
214
216
  transition:
215
217
  outline 0.2s ease-out,
216
218
  background 0.2s ease-out;
@@ -279,13 +281,17 @@ import{a as g}from"./chunks/chunk-N6ZW5CDN.js";import"./chunks/chunk-RIFF2D2F.js
279
281
  }
280
282
 
281
283
  #panel-header {
284
+ box-sizing: border-box;
282
285
  position: absolute;
283
286
  inset-block-start: 0;
284
287
  inset-inline-end: 0;
285
288
  z-index: 1;
286
289
  display: flex;
287
- padding: var(--_panelPadding);
290
+ align-items: var(--_burgerAlign);
291
+ height: calc(var(--_currentHeight) - var(--eun-border-width-s, 1px));
292
+ padding: var(--_burgerPadding);
288
293
  pointer-events: auto;
294
+ transition: height var(--_transitionDuration) ease;
289
295
  }
290
296
 
291
297
  #panel-body {
@@ -350,6 +356,7 @@ import{a as g}from"./chunks/chunk-N6ZW5CDN.js";import"./chunks/chunk-RIFF2D2F.js
350
356
  @media (prefers-reduced-motion: reduce) {
351
357
  #bar,
352
358
  #panel,
359
+ #panel-header,
353
360
  #panel-body,
354
361
  #skip-links {
355
362
  transition-duration: 0.01ms;
@@ -1,64 +1,126 @@
1
- import{c as f}from"./chunks/chunk-CEDHJUUH.js";import{a as k}from"./chunks/chunk-LK5BJ4SH.js";import{a as m}from"./chunks/chunk-LYYQAALT.js";import{e as C}from"./chunks/chunk-5TH3P53V.js";import{a as v}from"./chunks/chunk-A4EQSU36.js";import"./chunks/chunk-SGM2X2TC.js";import{a as T}from"./chunks/chunk-5EVP7YNE.js";import{a,f as E,g as h,h as s,l as x,m as u,n as c,p as A,r as P,s as S}from"./chunks/chunk-XH6NREVZ.js";var L=h`
1
+ import{c as y}from"./chunks/chunk-CEDHJUUH.js";import{a as C}from"./chunks/chunk-LK5BJ4SH.js";import{a as m}from"./chunks/chunk-LYYQAALT.js";import{e as T}from"./chunks/chunk-LGLQ36QB.js";import{a as f}from"./chunks/chunk-A4EQSU36.js";import"./chunks/chunk-SGM2X2TC.js";import{a as v}from"./chunks/chunk-5EVP7YNE.js";import{a,f as E,g as c,h as l,l as S,m as u,n as h,p as A,r as _,s as P}from"./chunks/chunk-XH6NREVZ.js";var L=c`
2
2
  :host {
3
3
  display: contents;
4
4
  }
5
- `,R=h`
6
- .eun-tooltip-panel:not([data-severity]) {
7
- --_accent: var(--tooltip-color, var(--eun-text-color, #071621));
8
- --_borderColor: var(--eun-color-grey-300, #dee0e7);
9
- --_backgroundFilled: var(--eun-color-grey-700, #484e61);
5
+ `,R=c`
6
+ /*
7
+ * Step 1 : the palette (severity, else color) fills --_solid (strong
8
+ * color), --_onSolid (text on it) and --_accent (text on a pale or neutral
9
+ * surface). Step 2 : the appearance reads them into --_bg, --_head (the
10
+ * heading and links), --_body (the description) and --_bd (the border).
11
+ * The --tooltip-* custom properties are applied last, on the panel, so they
12
+ * win over every combination.
13
+ */
14
+ .eun-tooltip-panel {
15
+ --_solid: var(--eun-color-primary-500, #3d6fff);
16
+ --_onSolid: var(--eun-color-on-primary-500, #ffffff);
17
+ --_accent: var(--eun-color-primary-500, #3d6fff);
10
18
  }
11
19
  .eun-tooltip-panel[data-severity="info"] {
20
+ --_solid: var(--eun-color-info-100, #097faf);
12
21
  --_accent: var(--eun-color-info-100, #097faf);
13
- --_borderColor: var(--eun-color-info-100, #097faf);
14
- --_backgroundFilled: var(--eun-color-info-100, #097faf);
15
22
  }
16
23
  .eun-tooltip-panel[data-severity="success"] {
24
+ --_solid: var(--eun-color-success-100, #1a9948);
17
25
  --_accent: var(--eun-color-success-100, #1a9948);
18
- --_borderColor: var(--eun-color-success-100, #1a9948);
19
- --_backgroundFilled: var(--eun-color-success-100, #1a9948);
20
26
  }
21
27
  .eun-tooltip-panel[data-severity="warning"] {
28
+ --_solid: var(--eun-color-warning-100, #c85207);
22
29
  --_accent: var(--eun-color-warning-100, #c85207);
23
- --_borderColor: var(--eun-color-warning-100, #c85207);
24
- --_backgroundFilled: var(--eun-color-warning-100, #c85207);
25
30
  }
26
31
  .eun-tooltip-panel[data-severity="critical"] {
32
+ --_solid: var(--eun-color-critical-100, #aa0014);
27
33
  --_accent: var(--eun-color-critical-100, #aa0014);
28
- --_borderColor: var(--eun-color-critical-100, #aa0014);
29
- --_backgroundFilled: var(--eun-color-critical-100, #aa0014);
30
34
  }
31
35
  .eun-tooltip-panel[data-severity="neutral"] {
36
+ --_onSolid: var(--eun-color-grey-0, #ffffff);
37
+ --_solid: var(--eun-color-grey-700, #484e61);
32
38
  --_accent: var(--eun-color-grey-700, #484e61);
33
- --_borderColor: var(--eun-color-grey-700, #484e61);
34
- --_backgroundFilled: var(--eun-color-grey-700, #484e61);
35
- }
36
- .eun-tooltip-panel:not([data-severity])[data-color="primary"] {
37
- --_accent: var(--eun-color-primary-500, #3d6fff);
38
- --_borderColor: var(--eun-color-primary-500, #3d6fff);
39
- --_backgroundFilled: var(--eun-color-primary-500, #3d6fff);
40
39
  }
41
40
  .eun-tooltip-panel:not([data-severity])[data-color="secondary"] {
41
+ --_onSolid: var(--eun-color-on-secondary-500, #000000de);
42
+ --_solid: var(--eun-color-secondary-500, #e5a030);
42
43
  --_accent: var(--eun-color-secondary-500, #e5a030);
43
- --_borderColor: var(--eun-color-secondary-500, #e5a030);
44
- --_backgroundFilled: var(--eun-color-secondary-500, #e5a030);
45
- }
46
- .eun-tooltip-panel:not([data-severity])[data-color="light"] {
47
- --_accent: var(--eun-color-grey-600, #666e8a);
48
- --_borderColor: var(--eun-color-grey-300, #dee0e7);
49
- --_backgroundFilled: var(--eun-color-grey-0, #ffffff);
50
44
  }
51
45
  .eun-tooltip-panel:not([data-severity])[data-color="medium"] {
46
+ --_onSolid: var(--eun-color-grey-0, #ffffff);
47
+ --_solid: var(--eun-color-grey-700, #484e61);
52
48
  --_accent: var(--eun-color-grey-900, #000000);
53
- --_borderColor: var(--eun-color-grey-300, #dee0e7);
54
- --_backgroundFilled: var(--eun-color-grey-700, #484e61);
55
49
  }
50
+
51
+ /*
52
+ * light and dark are absolute colors : white and black whatever the
53
+ * appearance. The panel is always opaque, so there's no pale wash and no
54
+ * transparent outline : default is as solid as fill, and outline is the
55
+ * color as border and text over a surface of the opposite tone. flat is
56
+ * the same neutral surface as every other palette. By default they follow
57
+ * the grey scale, which flips with the active theme ; fixed-color pins
58
+ * them to the light theme's white and black.
59
+ */
60
+ .eun-tooltip-panel:not([data-severity])[data-color="light"] {
61
+ --_solid: var(--eun-color-grey-0, #ffffff);
62
+ --_onSolid: var(--eun-color-grey-900, #000000);
63
+ --_opposite: var(--eun-color-grey-800, #071621);
64
+ }
65
+ .eun-tooltip-panel:not([data-severity])[data-color="light"][data-fixed-color] {
66
+ --_solid: #ffffff;
67
+ --_onSolid: #000000;
68
+ --_opposite: #071621;
69
+ }
70
+ .eun-tooltip-panel:not([data-severity])[data-color="dark"] {
71
+ --_solid: var(--eun-color-grey-800, #071621);
72
+ --_onSolid: var(--eun-color-grey-0, #ffffff);
73
+ --_opposite: var(--eun-color-grey-0, #ffffff);
74
+ }
75
+ .eun-tooltip-panel:not([data-severity])[data-color="dark"][data-fixed-color] {
76
+ --_solid: #071621;
77
+ --_onSolid: #ffffff;
78
+ --_opposite: #ffffff;
79
+ }
80
+ .eun-tooltip-panel:not([data-severity])[data-color="light"],
56
81
  .eun-tooltip-panel:not([data-severity])[data-color="dark"] {
57
- --_accent: var(--eun-color-grey-800, #071621);
58
- --_borderColor: var(--eun-color-grey-800, #071621);
59
- --_backgroundFilled: var(--eun-color-grey-800, #071621);
60
- --_defaultBackground: var(--_accent);
61
- --_defaultText: var(--eun-color-grey-0, #ffffff);
82
+ --_accent: var(--eun-text-color, #071621);
83
+ }
84
+
85
+ .eun-tooltip-panel[data-appearance="default"] {
86
+ --_bg: color-mix(
87
+ in srgb,
88
+ var(--_accent) 12%,
89
+ var(--eun-surface-color, #ffffff)
90
+ );
91
+ --_head: var(--_accent);
92
+ --_body: var(--_accent);
93
+ --_bd: transparent;
94
+ }
95
+ .eun-tooltip-panel[data-appearance="flat"] {
96
+ --_bg: var(--eun-color-grey-100, #f7f8fa);
97
+ --_head: var(--_accent);
98
+ --_body: var(--eun-text-color, #071621);
99
+ --_bd: transparent;
100
+ }
101
+ .eun-tooltip-panel[data-appearance="outline"] {
102
+ --_bg: var(--eun-color-grey-100, #f7f8fa);
103
+ --_head: var(--_accent);
104
+ --_body: var(--eun-text-color, #071621);
105
+ --_bd: var(--_solid);
106
+ }
107
+ .eun-tooltip-panel[data-appearance="fill"] {
108
+ --_bg: var(--_solid);
109
+ --_head: var(--_onSolid);
110
+ --_body: var(--_onSolid);
111
+ --_bd: transparent;
112
+ }
113
+ .eun-tooltip-panel:not([data-severity])[data-color="light"][data-appearance="default"],
114
+ .eun-tooltip-panel:not([data-severity])[data-color="dark"][data-appearance="default"] {
115
+ --_bg: var(--_solid);
116
+ --_head: var(--_onSolid);
117
+ --_body: var(--_onSolid);
118
+ }
119
+ .eun-tooltip-panel:not([data-severity])[data-color="light"][data-appearance="outline"],
120
+ .eun-tooltip-panel:not([data-severity])[data-color="dark"][data-appearance="outline"] {
121
+ --_bg: var(--_opposite);
122
+ --_head: var(--_solid);
123
+ --_body: var(--_solid);
62
124
  }
63
125
 
64
126
  .eun-tooltip-panel {
@@ -75,13 +137,20 @@ import{c as f}from"./chunks/chunk-CEDHJUUH.js";import{a as k}from"./chunks/chunk
75
137
  max-width: var(--tooltip-max-width, 280px);
76
138
  padding: var(
77
139
  --tooltip-padding,
78
- var(--eun-space-s, 8px) var(--eun-space-m, 16px)
140
+ max(0px, calc(var(--eun-space-s, 8px) - var(--_bw)))
141
+ max(0px, calc(var(--eun-space-m, 16px) - var(--_bw)))
79
142
  );
80
143
  border-radius: var(
81
144
  --tooltip-border-radius,
82
- var(--eun-borderRadius-m, 10px)
145
+ var(--eun-border-radius-m, 10px)
83
146
  );
84
- color: var(--tooltip-content-color, var(--eun-text-color, #071621));
147
+ --_bw: var(--tooltip-border-width, var(--eun-border-width-s, 1px));
148
+ background: var(--tooltip-background-color, var(--_bg));
149
+ color: var(--tooltip-content-color, var(--_body));
150
+ /* Every appearance carries the same border box (transparent unless
151
+ drawn), taken out of the padding, so switching appearance or adding a
152
+ --tooltip-border-* never changes the panel's size. */
153
+ border: var(--_bw) solid var(--tooltip-border-color, var(--_bd));
85
154
  box-shadow: var(
86
155
  --tooltip-shadow,
87
156
  var(
@@ -91,15 +160,9 @@ import{c as f}from"./chunks/chunk-CEDHJUUH.js";import{a as k}from"./chunks/chunk
91
160
  )
92
161
  );
93
162
  font-family: var(--eun-font-family, "Mulish", sans-serif);
94
- font-size: var(--eun-fontSize-s, 14px);
163
+ font-size: var(--eun-font-size-s, 14px);
95
164
  opacity: 0;
96
165
  scale: 0.96;
97
- --_defaultBackground: color-mix(
98
- in srgb,
99
- var(--_accent) 12%,
100
- var(--eun-surface-color, #ffffff)
101
- );
102
- --_defaultText: var(--_accent);
103
166
  }
104
167
  .eun-tooltip-panel.no-heading {
105
168
  row-gap: 0;
@@ -112,35 +175,9 @@ import{c as f}from"./chunks/chunk-CEDHJUUH.js";import{a as k}from"./chunks/chunk
112
175
  scale: 1;
113
176
  }
114
177
 
115
- .eun-tooltip-panel[data-appearance="default"] {
116
- background: var(--tooltip-background-color, var(--_defaultBackground));
117
- color: var(--tooltip-content-color, var(--_defaultText));
118
- }
119
- .eun-tooltip-panel[data-appearance="flat"] {
120
- background: var(
121
- --tooltip-background-color,
122
- var(--eun-color-grey-100, #f7f8fa)
123
- );
124
- }
125
- .eun-tooltip-panel[data-appearance="outline"] {
126
- background: var(
127
- --tooltip-background-color,
128
- var(--eun-color-grey-100, #f7f8fa)
129
- );
130
- border: var(--eun-borderWidth-s, 1px) solid var(--_borderColor);
131
- }
132
- .eun-tooltip-panel[data-appearance="fill"] {
133
- background: var(--tooltip-background-color, var(--_backgroundFilled));
134
- --_accent: var(--tooltip-color, #fff);
135
- color: var(--tooltip-content-color, #fff);
136
- }
137
-
138
178
  .eun-tooltip-heading {
139
- color: var(--_accent);
140
- font-weight: var(--eun-fontWeight-l, 700);
141
- }
142
- .eun-tooltip-panel[data-appearance="default"] .eun-tooltip-heading {
143
- color: var(--tooltip-color, var(--_defaultText));
179
+ color: var(--tooltip-color, var(--_head));
180
+ font-weight: var(--eun-font-weight-l, 700);
144
181
  }
145
182
  .eun-tooltip-heading-mirror,
146
183
  .eun-tooltip-description-mirror {
@@ -151,7 +188,7 @@ import{c as f}from"./chunks/chunk-CEDHJUUH.js";import{a as k}from"./chunks/chunk
151
188
  }
152
189
  .eun-tooltip-description {
153
190
  color: var(--tooltip-content-color, inherit);
154
- font-weight: var(--tooltip-font-weight, var(--eun-fontWeight-s, 300));
191
+ font-weight: var(--tooltip-font-weight, var(--eun-font-weight-s, 300));
155
192
  }
156
193
  .eun-tooltip-description.hidden {
157
194
  display: none;
@@ -166,16 +203,13 @@ import{c as f}from"./chunks/chunk-CEDHJUUH.js";import{a as k}from"./chunks/chunk
166
203
  margin-block-end: 0;
167
204
  }
168
205
  .eun-tooltip-rich-text a {
169
- color: var(--_accent);
170
- }
171
- .eun-tooltip-panel[data-appearance="default"] .eun-tooltip-rich-text a {
172
- color: var(--tooltip-color, var(--_defaultText));
206
+ color: var(--tooltip-color, var(--_head));
173
207
  }
174
208
  .eun-tooltip-description ::slotted(*) {
175
209
  margin: 0;
176
210
  color: inherit;
177
211
  }
178
- `,y=R,H=h`
212
+ `,g=R,H=c`
179
213
  @supports (anchor-name: --a) {
180
214
  .eun-tooltip-panel[data-placement="top"]:popover-open {
181
215
  position-try-fallbacks: --eun-tooltip-try-bottom;
@@ -229,16 +263,17 @@ import{c as f}from"./chunks/chunk-CEDHJUUH.js";import{a as k}from"./chunks/chunk
229
263
  right: calc(anchor(left) + var(--tooltip-gap, 8px));
230
264
  }
231
265
  }
232
- `,g=H;var N="eun-tooltip",F=0,$=0,_=new WeakSet,B=["--tooltip-z-index","--tooltip-gap","--tooltip-viewport-gap","--tooltip-min-width","--tooltip-max-width","--tooltip-background-color","--tooltip-color","--tooltip-content-color","--tooltip-font-weight","--tooltip-border-radius","--tooltip-padding","--tooltip-row-gap","--tooltip-shadow","--tooltip-transition-duration"],V=k(S),i=class extends V{constructor(){super(...arguments);this.color="primary";this.appearance="default";this.placement="top";this.open=!1;this.lazy=!1;this.showDelay=100;this.hideDelay=150;this.pinned=!1;this.panelId=`eun-tooltip-panel-${++$}`;this.headingId=`${this.panelId}-heading`;this.ariaDescribedByApplied=!1;this.handleReposition=()=>{this.reposition()};this.handleDocumentKeydown=e=>{e.key==="Escape"&&this.hide()};this.handleDocumentPointerDown=e=>{if(!this.pinned)return;let t=e.composedPath();this.anchorEl&&t.includes(this.anchorEl)||this.panelEl&&t.includes(this.panelEl)||this.hide()};this.handleAnchorSlotChange=()=>{this.rebindAnchorListeners()};this.handleAnchorPointerEnter=()=>{this.scheduleShow()};this.handleAnchorPointerLeave=()=>{this.scheduleHide()};this.handleAnchorFocusIn=()=>{this.clearShowTimer(),this.clearHideTimer(),this.show()};this.handleAnchorFocusOut=()=>{this.pinned=!1,this.hide()};this.handleAnchorClick=()=>{this.pinned=!this.pinned,this.pinned?(this.clearShowTimer(),this.clearHideTimer(),this.show()):this.scheduleHide()};this.handlePanelPointerEnter=()=>{this.clearHideTimer()};this.handlePanelPointerLeave=()=>{this.scheduleHide()};this.handleSlotChange=()=>{this.requestUpdate()}}supportsAnchorPositioning(){return i.nativeAnchorPositioningSupported}connectedCallback(){super.connectedCallback(),this.hasUpdated&&!this.lazy&&this.ensurePortal()}firstUpdated(e){super.firstUpdated(e),this.rebindAnchorListeners(),this.lazy||this.ensurePortal()}disconnectedCallback(){this.unbindAnchorListeners(),this.clearShowTimer(),this.clearHideTimer(),this.panelAnimation?.cancel(),this.panelAnimation=void 0,this.removeGlobalListeners(),this.portalContainer?.remove(),this.portalContainer=void 0,this.portalRoot=void 0,this.panelEl=void 0,super.disconnectedCallback?.()}updated(e){if(super.updated(e),this.portalContainer&&this.renderPortal(),e.has("open")){this.open?this.openTooltip():this.closeTooltip();return}e.has("placement")&&this.open&&this.reposition()}show(){this.open=!0}hide(){this.open=!1}toggle(){this.open=!this.open}get anchorEl(){return this.anchorSlotEls[0]}ensurePortal(){if(this.portalContainer||!this.anchorEl)return;let e=this.anchorEl.getRootNode();this.portalRoot=e,this.installPanelStyles(e);let t=document.createElement("div");t.style.display="contents",(e===document?document.body:e).appendChild(t),this.portalContainer=t,this.renderPortal()}installPanelStyles(e){if(_.has(e)||!y.styleSheet)return;_.add(e);let t=[y.styleSheet];!m&&g.styleSheet&&t.push(g.styleSheet),e.adoptedStyleSheets=[...e.adoptedStyleSheets,...t]}renderPortal(){this.portalContainer&&(P(this.renderPanel(),this.portalContainer,{host:this}),this.panelEl=this.portalContainer.querySelector(".eun-tooltip-panel")??void 0,this.forwardCssVariables(),this.mirrorSlottedContent())}forwardCssVariables(){if(!this.panelEl)return;let e=getComputedStyle(this);for(let t of B)this.panelEl.style.setProperty(t,e.getPropertyValue(t))}openTooltip(){if(this.ensurePortal(),!this.anchorEl||!this.panelEl)return;this.applyAriaDescribedBy();let e=this.panelEl,t=this.panelAnimation!==void 0;this.panelAnimation?.cancel(),this.panelAnimation=void 0;let n=!e.matches(":popover-open");n&&e.showPopover(),this.reposition(),(n||t)&&this.playEnterAnimation(e),window.addEventListener("resize",this.handleReposition),window.addEventListener("scroll",this.handleReposition,!0),document.addEventListener("keydown",this.handleDocumentKeydown),document.addEventListener("pointerdown",this.handleDocumentPointerDown,!0),this.observeAnchorVisibility(this.anchorEl,()=>this.hide())}closeTooltip(){this.pinned=!1;let e=this.panelEl;this.panelAnimation?.cancel(),this.panelAnimation=void 0,e?.matches(":popover-open")&&this.playExitAnimation(e),this.removeGlobalListeners(),this.unobserveAnchorVisibility()}static panelAnimationDuration(e){if(window.matchMedia("(prefers-reduced-motion: reduce)").matches)return 0;let t=getComputedStyle(e).getPropertyValue("--tooltip-transition-duration").trim();if(t){let n=t.endsWith("ms")?Number.parseFloat(t):Number.parseFloat(t)*1e3;if(Number.isFinite(n)&&n>=0)return n}return 150}playEnterAnimation(e){e.style.removeProperty("pointer-events");let t=i.panelAnimationDuration(e);t!==0&&(this.panelAnimation=e.animate([{opacity:0,scale:.96},{opacity:1,scale:1}],{duration:t,easing:"ease",fill:"forwards"}))}playExitAnimation(e){e.style.pointerEvents="none";let t=i.panelAnimationDuration(e);if(t===0){e.hidePopover();return}let n=e.animate([{opacity:1,scale:1},{opacity:0,scale:.96}],{duration:t,easing:"ease",fill:"forwards"});this.panelAnimation=n,n.finished.then(()=>{this.panelAnimation===n&&(this.panelAnimation=void 0),e.hidePopover()}).catch(()=>{})}removeGlobalListeners(){window.removeEventListener("resize",this.handleReposition),window.removeEventListener("scroll",this.handleReposition,!0),document.removeEventListener("keydown",this.handleDocumentKeydown),document.removeEventListener("pointerdown",this.handleDocumentPointerDown,!0)}reposition(){!this.anchorEl||!this.panelEl||(this.supportsAnchorPositioning()?(this.anchorPositionName??=`--eun-tooltip-anchor-${++F}`,this.anchorEl.style.setProperty("anchor-name",this.anchorPositionName),this.panelEl.style.setProperty("position-anchor",this.anchorPositionName)):this.updateFallbackPosition(),this.clampPanelToViewport())}getEffectivePlacementFallback(e,t,n,o){let r=this.readGap();if(this.placement==="left"||this.placement==="right"){let D=window.innerWidth,b=e.right+r+t.width<=D,w=e.left-r-t.width>=0;return this.placement==="right"&&!b&&w?"left":this.placement==="left"&&!w&&b?"right":this.placement}let p=window.innerHeight,d=e.bottom+r+t.height<=p-o,l=e.top-r-t.height>=n;return this.placement==="top"&&!l&&d?"bottom":this.placement==="bottom"&&!d&&l?"top":this.placement}updateFallbackPosition(){if(!this.anchorEl||!this.panelEl)return;let e=this.readGap(),t=this.readViewportInset(this.panelEl,"--eun-viewport-inset-top"),n=this.readViewportInset(this.panelEl,"--eun-viewport-inset-bottom"),o=this.anchorEl.getBoundingClientRect(),r=this.panelEl.getBoundingClientRect(),p=this.getEffectivePlacementFallback(o,r,t,n),d,l;p==="top"||p==="bottom"?(d=p==="top"?o.top-r.height-e:o.bottom+e,l=f(o.left+o.width/2-r.width/2,r.width,window.innerWidth,e)):(l=p==="left"?o.left-r.width-e:o.right+e,d=f(o.top+o.height/2-r.height/2,r.height,window.innerHeight,e)),this.panelEl.style.setProperty("--_panelTop",`${d}px`),this.panelEl.style.setProperty("--_panelLeft",`${l}px`)}clampPanelToViewport(){if(!this.panelEl)return;let e=this.readPixelVar("--tooltip-viewport-gap",8),t=this.readViewportInset(this.panelEl,"--eun-viewport-inset-top"),n=this.readViewportInset(this.panelEl,"--eun-viewport-inset-bottom"),o=this.panelEl.getBoundingClientRect(),r=0;o.left<e?r=e-o.left:o.right>window.innerWidth-e&&(r=window.innerWidth-e-o.right);let p=t+e,d=window.innerHeight-n-e,l=0;o.top<p?l=p-o.top:o.bottom>d&&(l=d-o.bottom),this.panelEl.style.transform=r||l?`translate(${r}px, ${l}px)`:""}readPixelVar(e,t){if(!this.panelEl)return t;let n=getComputedStyle(this.panelEl).getPropertyValue(e),o=Number.parseFloat(n);return Number.isFinite(o)?o:t}readGap(){return this.readPixelVar("--tooltip-gap",8)}applyAriaDescribedBy(){if(this.ariaDescribedByApplied||!this.anchorEl)return;this.ariaDescribedByApplied=!0;let e=this.anchorEl.getAttribute("aria-describedby"),t=e?e.split(/\s+/):[];t.includes(this.panelId)||(t.push(this.panelId),this.anchorEl.setAttribute("aria-describedby",t.join(" ")))}clearShowTimer(){this.showTimer!==void 0&&(clearTimeout(this.showTimer),this.showTimer=void 0)}clearHideTimer(){this.hideTimer!==void 0&&(clearTimeout(this.hideTimer),this.hideTimer=void 0)}scheduleShow(){this.clearHideTimer(),!this.open&&(this.clearShowTimer(),this.showTimer=setTimeout(()=>{this.showTimer=void 0,this.show()},this.showDelay))}scheduleHide(){this.clearShowTimer(),!this.pinned&&(this.clearHideTimer(),this.hideTimer=setTimeout(()=>{this.hideTimer=void 0,this.pinned||this.hide()},this.hideDelay))}rebindAnchorListeners(){let e=this.anchorEl;this.boundAnchorEl!==e&&(this.unbindAnchorListeners(),this.boundAnchorEl=e,this.ariaDescribedByApplied=!1,e&&(e.addEventListener("pointerenter",this.handleAnchorPointerEnter),e.addEventListener("pointerleave",this.handleAnchorPointerLeave),e.addEventListener("focusin",this.handleAnchorFocusIn),e.addEventListener("focusout",this.handleAnchorFocusOut),e.addEventListener("click",this.handleAnchorClick)))}unbindAnchorListeners(){this.boundAnchorEl?.removeEventListener("pointerenter",this.handleAnchorPointerEnter),this.boundAnchorEl?.removeEventListener("pointerleave",this.handleAnchorPointerLeave),this.boundAnchorEl?.removeEventListener("focusin",this.handleAnchorFocusIn),this.boundAnchorEl?.removeEventListener("focusout",this.handleAnchorFocusOut),this.boundAnchorEl?.removeEventListener("click",this.handleAnchorClick)}hasDescription(){return!!this.richText||this.descriptionSlotNodes.length>0}hasHeading(){return!!this.heading||this.defaultSlotNodes.some(e=>e.nodeType!==Node.TEXT_NODE||!!e.textContent?.trim())}mirrorSlottedContent(){if(!this.panelEl)return;this.heading||this.panelEl.querySelector(".eun-tooltip-heading-mirror")?.replaceChildren(...this.defaultSlotNodes.map(n=>n.cloneNode(!0))),this.panelEl.querySelector(".eun-tooltip-description-mirror")?.replaceChildren(...this.descriptionSlotNodes.map(t=>t.cloneNode(!0)))}renderPanel(){let e=this.heading?this.heading:c`<span class="eun-tooltip-heading-mirror"></span>`;return c`
266
+ `,b=H;var N="eun-tooltip",$=0,V=0,D=new WeakSet,B=["--tooltip-z-index","--tooltip-gap","--tooltip-viewport-gap","--tooltip-min-width","--tooltip-max-width","--tooltip-background-color","--tooltip-color","--tooltip-content-color","--tooltip-border-color","--tooltip-border-width","--tooltip-font-weight","--tooltip-border-radius","--tooltip-padding","--tooltip-row-gap","--tooltip-shadow","--tooltip-transition-duration"],M=C(P),o=class extends M{constructor(){super(...arguments);this.color="primary";this.appearance="default";this.fixedColor=!1;this.placement="top";this.open=!1;this.lazy=!1;this.showDelay=100;this.hideDelay=150;this.pinned=!1;this.panelId=`eun-tooltip-panel-${++V}`;this.headingId=`${this.panelId}-heading`;this.ariaDescribedByApplied=!1;this.handleReposition=()=>{this.reposition()};this.handleDocumentKeydown=e=>{e.key==="Escape"&&this.hide()};this.handleDocumentPointerDown=e=>{if(!this.pinned)return;let t=e.composedPath();this.anchorEl&&t.includes(this.anchorEl)||this.panelEl&&t.includes(this.panelEl)||this.hide()};this.handleAnchorSlotChange=()=>{this.rebindAnchorListeners()};this.handleAnchorPointerEnter=()=>{this.scheduleShow()};this.handleAnchorPointerLeave=()=>{this.scheduleHide()};this.handleAnchorFocusIn=()=>{this.clearShowTimer(),this.clearHideTimer(),this.show()};this.handleAnchorFocusOut=()=>{this.pinned=!1,this.hide()};this.handleAnchorClick=()=>{this.pinned=!this.pinned,this.pinned?(this.clearShowTimer(),this.clearHideTimer(),this.show()):this.scheduleHide()};this.handlePanelPointerEnter=()=>{this.clearHideTimer()};this.handlePanelPointerLeave=()=>{this.scheduleHide()};this.handleSlotChange=()=>{this.requestUpdate()}}supportsAnchorPositioning(){return o.nativeAnchorPositioningSupported}connectedCallback(){super.connectedCallback(),this.hasUpdated&&!this.lazy&&this.ensurePortal()}firstUpdated(e){super.firstUpdated(e),this.rebindAnchorListeners(),this.lazy||this.ensurePortal()}disconnectedCallback(){this.unbindAnchorListeners(),this.clearShowTimer(),this.clearHideTimer(),this.panelAnimation?.cancel(),this.panelAnimation=void 0,this.removeGlobalListeners(),this.portalContainer?.remove(),this.portalContainer=void 0,this.portalRoot=void 0,this.panelEl=void 0,super.disconnectedCallback?.()}updated(e){if(super.updated(e),this.portalContainer&&this.renderPortal(),e.has("open")){this.open?this.openTooltip():this.closeTooltip();return}e.has("placement")&&this.open&&this.reposition()}show(){this.open=!0}hide(){this.open=!1}toggle(){this.open=!this.open}get anchorEl(){return this.anchorSlotEls[0]}ensurePortal(){if(this.portalContainer||!this.anchorEl)return;let e=this.anchorEl.getRootNode();this.portalRoot=e,this.installPanelStyles(e);let t=document.createElement("div");t.style.display="contents",(e===document?document.body:e).appendChild(t),this.portalContainer=t,this.renderPortal()}installPanelStyles(e){if(D.has(e)||!g.styleSheet)return;D.add(e);let t=[g.styleSheet];!m&&b.styleSheet&&t.push(b.styleSheet),e.adoptedStyleSheets=[...e.adoptedStyleSheets,...t]}renderPortal(){this.portalContainer&&(_(this.renderPanel(),this.portalContainer,{host:this}),this.panelEl=this.portalContainer.querySelector(".eun-tooltip-panel")??void 0,this.forwardCssVariables(),this.mirrorSlottedContent())}forwardCssVariables(){if(!this.panelEl)return;let e=getComputedStyle(this);for(let t of B)this.panelEl.style.setProperty(t,e.getPropertyValue(t))}openTooltip(){if(this.ensurePortal(),!this.anchorEl||!this.panelEl)return;this.applyAriaDescribedBy();let e=this.panelEl,t=this.panelAnimation!==void 0;this.panelAnimation?.cancel(),this.panelAnimation=void 0;let n=!e.matches(":popover-open");n&&e.showPopover(),this.reposition(),(n||t)&&this.playEnterAnimation(e),window.addEventListener("resize",this.handleReposition),window.addEventListener("scroll",this.handleReposition,!0),document.addEventListener("keydown",this.handleDocumentKeydown),document.addEventListener("pointerdown",this.handleDocumentPointerDown,!0),this.observeAnchorVisibility(this.anchorEl,()=>this.hide())}closeTooltip(){this.pinned=!1;let e=this.panelEl;this.panelAnimation?.cancel(),this.panelAnimation=void 0,e?.matches(":popover-open")&&this.playExitAnimation(e),this.removeGlobalListeners(),this.unobserveAnchorVisibility()}static panelAnimationDuration(e){if(window.matchMedia("(prefers-reduced-motion: reduce)").matches)return 0;let t=getComputedStyle(e).getPropertyValue("--tooltip-transition-duration").trim();if(t){let n=t.endsWith("ms")?Number.parseFloat(t):Number.parseFloat(t)*1e3;if(Number.isFinite(n)&&n>=0)return n}return 150}playEnterAnimation(e){e.style.removeProperty("pointer-events");let t=o.panelAnimationDuration(e);t!==0&&(this.panelAnimation=e.animate([{opacity:0,scale:.96},{opacity:1,scale:1}],{duration:t,easing:"ease",fill:"forwards"}))}playExitAnimation(e){e.style.pointerEvents="none";let t=o.panelAnimationDuration(e);if(t===0){e.hidePopover();return}let n=e.animate([{opacity:1,scale:1},{opacity:0,scale:.96}],{duration:t,easing:"ease",fill:"forwards"});this.panelAnimation=n,n.finished.then(()=>{this.panelAnimation===n&&(this.panelAnimation=void 0),e.hidePopover()}).catch(()=>{})}removeGlobalListeners(){window.removeEventListener("resize",this.handleReposition),window.removeEventListener("scroll",this.handleReposition,!0),document.removeEventListener("keydown",this.handleDocumentKeydown),document.removeEventListener("pointerdown",this.handleDocumentPointerDown,!0)}reposition(){!this.anchorEl||!this.panelEl||(this.supportsAnchorPositioning()?(this.anchorPositionName??=`--eun-tooltip-anchor-${++$}`,this.anchorEl.style.setProperty("anchor-name",this.anchorPositionName),this.panelEl.style.setProperty("position-anchor",this.anchorPositionName)):this.updateFallbackPosition(),this.clampPanelToViewport())}getEffectivePlacementFallback(e,t,n,i){let r=this.readGap();if(this.placement==="left"||this.placement==="right"){let k=window.innerWidth,w=e.right+r+t.width<=k,x=e.left-r-t.width>=0;return this.placement==="right"&&!w&&x?"left":this.placement==="left"&&!x&&w?"right":this.placement}let p=window.innerHeight,d=e.bottom+r+t.height<=p-i,s=e.top-r-t.height>=n;return this.placement==="top"&&!s&&d?"bottom":this.placement==="bottom"&&!d&&s?"top":this.placement}updateFallbackPosition(){if(!this.anchorEl||!this.panelEl)return;let e=this.readGap(),t=this.readViewportInset(this.panelEl,"--eun-viewport-inset-top"),n=this.readViewportInset(this.panelEl,"--eun-viewport-inset-bottom"),i=this.anchorEl.getBoundingClientRect(),r=this.panelEl.getBoundingClientRect(),p=this.getEffectivePlacementFallback(i,r,t,n),d,s;p==="top"||p==="bottom"?(d=p==="top"?i.top-r.height-e:i.bottom+e,s=y(i.left+i.width/2-r.width/2,r.width,window.innerWidth,e)):(s=p==="left"?i.left-r.width-e:i.right+e,d=y(i.top+i.height/2-r.height/2,r.height,window.innerHeight,e)),this.panelEl.style.setProperty("--_panelTop",`${d}px`),this.panelEl.style.setProperty("--_panelLeft",`${s}px`)}clampPanelToViewport(){if(!this.panelEl)return;let e=this.readPixelVar("--tooltip-viewport-gap",8),t=this.readViewportInset(this.panelEl,"--eun-viewport-inset-top"),n=this.readViewportInset(this.panelEl,"--eun-viewport-inset-bottom"),i=this.panelEl.getBoundingClientRect(),r=0;i.left<e?r=e-i.left:i.right>window.innerWidth-e&&(r=window.innerWidth-e-i.right);let p=t+e,d=window.innerHeight-n-e,s=0;i.top<p?s=p-i.top:i.bottom>d&&(s=d-i.bottom),this.panelEl.style.transform=r||s?`translate(${r}px, ${s}px)`:""}readPixelVar(e,t){if(!this.panelEl)return t;let n=getComputedStyle(this.panelEl).getPropertyValue(e),i=Number.parseFloat(n);return Number.isFinite(i)?i:t}readGap(){return this.readPixelVar("--tooltip-gap",8)}applyAriaDescribedBy(){if(this.ariaDescribedByApplied||!this.anchorEl)return;this.ariaDescribedByApplied=!0;let e=this.anchorEl.getAttribute("aria-describedby"),t=e?e.split(/\s+/):[];t.includes(this.panelId)||(t.push(this.panelId),this.anchorEl.setAttribute("aria-describedby",t.join(" ")))}clearShowTimer(){this.showTimer!==void 0&&(clearTimeout(this.showTimer),this.showTimer=void 0)}clearHideTimer(){this.hideTimer!==void 0&&(clearTimeout(this.hideTimer),this.hideTimer=void 0)}scheduleShow(){this.clearHideTimer(),!this.open&&(this.clearShowTimer(),this.showTimer=setTimeout(()=>{this.showTimer=void 0,this.show()},this.showDelay))}scheduleHide(){this.clearShowTimer(),!this.pinned&&(this.clearHideTimer(),this.hideTimer=setTimeout(()=>{this.hideTimer=void 0,this.pinned||this.hide()},this.hideDelay))}rebindAnchorListeners(){let e=this.anchorEl;this.boundAnchorEl!==e&&(this.unbindAnchorListeners(),this.boundAnchorEl=e,this.ariaDescribedByApplied=!1,e&&(e.addEventListener("pointerenter",this.handleAnchorPointerEnter),e.addEventListener("pointerleave",this.handleAnchorPointerLeave),e.addEventListener("focusin",this.handleAnchorFocusIn),e.addEventListener("focusout",this.handleAnchorFocusOut),e.addEventListener("click",this.handleAnchorClick)))}unbindAnchorListeners(){this.boundAnchorEl?.removeEventListener("pointerenter",this.handleAnchorPointerEnter),this.boundAnchorEl?.removeEventListener("pointerleave",this.handleAnchorPointerLeave),this.boundAnchorEl?.removeEventListener("focusin",this.handleAnchorFocusIn),this.boundAnchorEl?.removeEventListener("focusout",this.handleAnchorFocusOut),this.boundAnchorEl?.removeEventListener("click",this.handleAnchorClick)}hasDescription(){return!!this.richText||this.descriptionSlotNodes.length>0}hasHeading(){return!!this.heading||this.defaultSlotNodes.some(e=>e.nodeType!==Node.TEXT_NODE||!!e.textContent?.trim())}mirrorSlottedContent(){if(!this.panelEl)return;this.heading||this.panelEl.querySelector(".eun-tooltip-heading-mirror")?.replaceChildren(...this.defaultSlotNodes.map(n=>n.cloneNode(!0))),this.panelEl.querySelector(".eun-tooltip-description-mirror")?.replaceChildren(...this.descriptionSlotNodes.map(t=>t.cloneNode(!0)))}renderPanel(){let e=this.heading?this.heading:h`<span class="eun-tooltip-heading-mirror"></span>`;return h`
233
267
  <div
234
268
  id=${this.panelId}
235
- class=${v({"eun-tooltip-panel":!0,"no-heading":!this.hasHeading()})}
269
+ class=${f({"eun-tooltip-panel":!0,"no-heading":!this.hasHeading()})}
236
270
  role="tooltip"
237
271
  aria-labelledby=${this.headingId}
238
272
  popover="manual"
239
- data-severity=${T(this.severity)}
273
+ data-severity=${v(this.severity)}
240
274
  data-color=${this.color}
241
275
  data-appearance=${this.appearance}
276
+ data-fixed-color=${v(this.fixedColor?"":void 0)}
242
277
  data-placement=${this.placement}
243
278
  @pointerenter=${this.handlePanelPointerEnter}
244
279
  @pointerleave=${this.handlePanelPointerLeave}
@@ -247,15 +282,15 @@ import{c as f}from"./chunks/chunk-CEDHJUUH.js";import{a as k}from"./chunks/chunk
247
282
  ${e}
248
283
  </div>
249
284
  <div
250
- class=${v({"eun-tooltip-description":!0,hidden:!this.hasDescription()})}
285
+ class=${f({"eun-tooltip-description":!0,hidden:!this.hasDescription()})}
251
286
  >
252
- ${this.richText?c`<div class="eun-tooltip-rich-text">
253
- ${C(this.richText)}
287
+ ${this.richText?h`<div class="eun-tooltip-rich-text">
288
+ ${T(this.richText)}
254
289
  </div>`:A}
255
290
  <span class="eun-tooltip-description-mirror"></span>
256
291
  </div>
257
292
  </div>
258
- `}render(){return c`
293
+ `}render(){return h`
259
294
  <slot name="anchor" @slotchange=${this.handleAnchorSlotChange}></slot>
260
295
  <slot hidden @slotchange=${this.handleSlotChange}></slot>
261
296
  <slot
@@ -263,4 +298,4 @@ import{c as f}from"./chunks/chunk-CEDHJUUH.js";import{a as k}from"./chunks/chunk
263
298
  hidden
264
299
  @slotchange=${this.handleSlotChange}
265
300
  ></slot>
266
- `}};i.styles=L,i.nativeAnchorPositioningSupported=typeof CSS<"u"&&CSS.supports("anchor-name: --a")&&!m,a([s({reflect:!0})],i.prototype,"severity",2),a([s({reflect:!0})],i.prototype,"color",2),a([s({reflect:!0})],i.prototype,"appearance",2),a([s({reflect:!0})],i.prototype,"placement",2),a([s()],i.prototype,"heading",2),a([s({attribute:"rich-text"})],i.prototype,"richText",2),a([s({type:Boolean,reflect:!0})],i.prototype,"open",2),a([s({type:Boolean,reflect:!0})],i.prototype,"lazy",2),a([s({type:Number,attribute:"show-delay"})],i.prototype,"showDelay",2),a([s({type:Number,attribute:"hide-delay"})],i.prototype,"hideDelay",2),a([x({slot:"anchor"})],i.prototype,"anchorSlotEls",2),a([u()],i.prototype,"defaultSlotNodes",2),a([u({slot:"description"})],i.prototype,"descriptionSlotNodes",2),i=a([E(N)],i);export{i as EunomiaTooltip,N as EunomiaTooltipTagName};
301
+ `}};o.styles=L,o.nativeAnchorPositioningSupported=typeof CSS<"u"&&CSS.supports("anchor-name: --a")&&!m,a([l({reflect:!0})],o.prototype,"severity",2),a([l({reflect:!0})],o.prototype,"color",2),a([l({reflect:!0})],o.prototype,"appearance",2),a([l({type:Boolean,reflect:!0,attribute:"fixed-color"})],o.prototype,"fixedColor",2),a([l({reflect:!0})],o.prototype,"placement",2),a([l()],o.prototype,"heading",2),a([l({attribute:"rich-text"})],o.prototype,"richText",2),a([l({type:Boolean,reflect:!0})],o.prototype,"open",2),a([l({type:Boolean,reflect:!0})],o.prototype,"lazy",2),a([l({type:Number,attribute:"show-delay"})],o.prototype,"showDelay",2),a([l({type:Number,attribute:"hide-delay"})],o.prototype,"hideDelay",2),a([S({slot:"anchor"})],o.prototype,"anchorSlotEls",2),a([u()],o.prototype,"defaultSlotNodes",2),a([u({slot:"description"})],o.prototype,"descriptionSlotNodes",2),o=a([E(N)],o);export{o as EunomiaTooltip,N as EunomiaTooltipTagName};