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

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 (496) hide show
  1. package/README.md +1 -1
  2. package/dist/breakpoints.d.ts +37 -10
  3. package/dist/breakpoints.js +38 -10
  4. package/dist/cdn/components/chunks/{chunk-MMLIPCOY.js → chunk-22D3SRFR.js} +1 -1
  5. package/dist/cdn/components/chunks/{chunk-4MXL6PZC.js → chunk-2Y2EU2CI.js} +28 -28
  6. package/dist/cdn/components/chunks/chunk-3MTUVMM5.js +1 -0
  7. package/dist/cdn/components/chunks/chunk-4PI6RDUS.js +1 -0
  8. package/dist/cdn/components/chunks/chunk-5GKM5DIB.js +1 -0
  9. package/dist/cdn/components/chunks/chunk-624VJYNA.js +1 -0
  10. package/dist/cdn/components/chunks/{chunk-5XJLIHAU.js → chunk-7KKWYPHY.js} +4 -2
  11. package/dist/cdn/components/chunks/chunk-A3X4KD2X.js +1 -0
  12. package/dist/cdn/components/chunks/chunk-BKZGTCMF.js +1 -0
  13. package/dist/cdn/components/chunks/{chunk-GW3VP2L7.js → chunk-BO3JOEWM.js} +1 -1
  14. package/dist/cdn/components/chunks/{chunk-NHFWATVN.js → chunk-BQFJR2UP.js} +5 -5
  15. package/dist/cdn/components/chunks/chunk-EUWUDCBZ.js +1 -0
  16. package/dist/cdn/components/chunks/{chunk-P32B7BFD.js → chunk-FF3I7C3C.js} +15 -15
  17. package/dist/cdn/components/chunks/{chunk-74AOAB4X.js → chunk-FOILAXLL.js} +6 -5
  18. package/dist/cdn/components/chunks/{chunk-E4IS25H7.js → chunk-G5SBDQQ3.js} +1 -1
  19. package/dist/cdn/components/chunks/{chunk-LGLQ36QB.js → chunk-GDBPWZN6.js} +1 -1
  20. package/dist/cdn/components/chunks/{chunk-S2UCEWNG.js → chunk-JYIIWN2P.js} +13 -11
  21. package/dist/cdn/components/chunks/{chunk-EOWBYZV7.js → chunk-KDN4O5W2.js} +26 -13
  22. package/dist/cdn/components/chunks/chunk-KSZRQRN4.js +1 -0
  23. package/dist/cdn/components/chunks/{chunk-PED5ATYN.js → chunk-L2ADCEN7.js} +1 -1
  24. package/dist/cdn/components/chunks/chunk-LMVW522V.js +1 -0
  25. package/dist/cdn/components/chunks/{chunk-5XJGYXW7.js → chunk-MOMYII3P.js} +1 -1
  26. package/dist/cdn/components/chunks/{chunk-SIHZFOTK.js → chunk-MQQ4BGVJ.js} +5 -5
  27. package/dist/cdn/components/chunks/{chunk-A4EQSU36.js → chunk-O7PHBLH2.js} +1 -1
  28. package/dist/cdn/components/chunks/chunk-PD62MBOJ.js +1 -0
  29. package/dist/cdn/components/chunks/{chunk-KBH5PCUO.js → chunk-PE4DAXHQ.js} +1 -1
  30. package/dist/cdn/components/chunks/{chunk-GSJEJLFA.js → chunk-PMPSJG5V.js} +7 -7
  31. package/dist/cdn/components/chunks/{chunk-5EVP7YNE.js → chunk-PPCHQG7P.js} +1 -1
  32. package/dist/cdn/components/chunks/{chunk-EJIX2D4Z.js → chunk-QZ5SHR3I.js} +15 -11
  33. package/dist/cdn/components/chunks/chunk-RS7TWEMQ.js +1 -0
  34. package/dist/cdn/components/chunks/chunk-SMTIDNGW.js +1 -0
  35. package/dist/cdn/components/chunks/{chunk-YGUJJ25C.js → chunk-SZYEBMG6.js} +11 -10
  36. package/dist/cdn/components/chunks/chunk-UDVB4LAE.js +56 -0
  37. package/dist/cdn/components/chunks/{chunk-UAGCQF23.js → chunk-UYZR4JXZ.js} +17 -12
  38. package/dist/cdn/components/chunks/chunk-VG6NAAIV.js +1 -0
  39. package/dist/cdn/components/chunks/chunk-VJCNHMQZ.js +10 -0
  40. package/dist/cdn/components/chunks/chunk-VOTRXBDS.js +38 -0
  41. package/dist/cdn/components/chunks/{chunk-BMQOI7HX.js → chunk-VYFR364B.js} +128 -74
  42. package/dist/cdn/components/chunks/{chunk-IJ5WFMK4.js → chunk-XDPRWUKN.js} +7 -6
  43. package/dist/cdn/components/chunks/{chunk-XH6NREVZ.js → chunk-YITWLCD3.js} +1 -1
  44. package/dist/cdn/components/chunks/{chunk-BQHYZB2W.js → chunk-ZBN4HTWP.js} +1 -1
  45. package/dist/cdn/components/chunks/{chunk-RJCJXB7Y.js → chunk-ZKZV2YG5.js} +18 -18
  46. package/dist/cdn/components/eun-alert.js +24 -16
  47. package/dist/cdn/components/eun-animate.js +12 -6
  48. package/dist/cdn/components/eun-badge.js +7 -7
  49. package/dist/cdn/components/eun-breadcrumb.js +25 -41
  50. package/dist/cdn/components/eun-button.js +1 -1
  51. package/dist/cdn/components/eun-calendar.js +68 -66
  52. package/dist/cdn/components/eun-card.js +67 -13
  53. package/dist/cdn/components/eun-carousel.js +66 -35
  54. package/dist/cdn/components/eun-check-card.js +13 -6
  55. package/dist/cdn/components/eun-checkbox-list.js +4 -4
  56. package/dist/cdn/components/eun-checkbox.js +1 -1
  57. package/dist/cdn/components/eun-chip.js +1 -1
  58. package/dist/cdn/components/eun-collapse.js +87 -39
  59. package/dist/cdn/components/eun-color-picker.js +54 -53
  60. package/dist/cdn/components/eun-counter.js +14 -13
  61. package/dist/cdn/components/eun-date-picker.js +66 -63
  62. package/dist/cdn/components/eun-description-list.js +152 -0
  63. package/dist/cdn/components/eun-divider.js +1 -1
  64. package/dist/cdn/components/eun-drawer.js +26 -12
  65. package/dist/cdn/components/eun-dropdown-button.js +1 -1
  66. package/dist/cdn/components/eun-dropdown-item.js +6 -5
  67. package/dist/cdn/components/eun-fab.js +20 -19
  68. package/dist/cdn/components/eun-icon.js +1 -1
  69. package/dist/cdn/components/eun-image-card.js +79 -22
  70. package/dist/cdn/components/eun-image-carousel.js +92 -47
  71. package/dist/cdn/components/eun-infinite-list.js +23 -11
  72. package/dist/cdn/components/eun-input-file.js +14 -13
  73. package/dist/cdn/components/eun-input-phone.js +26 -26
  74. package/dist/cdn/components/eun-input.js +1 -1
  75. package/dist/cdn/components/eun-label.js +4 -4
  76. package/dist/cdn/components/eun-link.js +174 -27
  77. package/dist/cdn/components/eun-loader.js +1 -1
  78. package/dist/cdn/components/eun-modal.js +29 -22
  79. package/dist/cdn/components/eun-pagination.js +17 -12
  80. package/dist/cdn/components/eun-password-strength.js +6 -2
  81. package/dist/cdn/components/eun-progress-bar.js +13 -5
  82. package/dist/cdn/components/eun-radio-card.js +16 -9
  83. package/dist/cdn/components/eun-radio-list.js +4 -4
  84. package/dist/cdn/components/eun-radio.js +1 -1
  85. package/dist/cdn/components/eun-scheduler-event-editor.js +8 -8
  86. package/dist/cdn/components/eun-scheduler-event.js +1 -1
  87. package/dist/cdn/components/eun-scheduler.js +42 -42
  88. package/dist/cdn/components/eun-search.js +21 -20
  89. package/dist/cdn/components/eun-select.js +12 -11
  90. package/dist/cdn/components/eun-sidebar.js +34 -20
  91. package/dist/cdn/components/eun-skeleton.js +1 -1
  92. package/dist/cdn/components/eun-slider.js +15 -14
  93. package/dist/cdn/components/eun-sliding-card.js +8 -4
  94. package/dist/cdn/components/eun-step.js +17 -6
  95. package/dist/cdn/components/eun-stepper.js +17 -6
  96. package/dist/cdn/components/eun-switch.js +10 -8
  97. package/dist/cdn/components/eun-tab-group.js +22 -17
  98. package/dist/cdn/components/eun-tab-panel.js +11 -3
  99. package/dist/cdn/components/eun-tab.js +1 -1
  100. package/dist/cdn/components/eun-table-action-bar.js +1 -1
  101. package/dist/cdn/components/eun-table.js +572 -31
  102. package/dist/cdn/components/eun-tag.js +13 -7
  103. package/dist/cdn/components/eun-textarea.js +24 -24
  104. package/dist/cdn/components/eun-time-picker.js +21 -19
  105. package/dist/cdn/components/eun-toast.js +36 -16
  106. package/dist/cdn/components/eun-toggle-group.js +64 -37
  107. package/dist/cdn/components/eun-toggle-item.js +24 -21
  108. package/dist/cdn/components/eun-toggle.js +12 -10
  109. package/dist/cdn/components/eun-toolbar.js +62 -52
  110. package/dist/cdn/components/eun-tooltip.js +30 -14
  111. package/dist/cdn/styles/breakpoints.scss +8 -0
  112. package/dist/cdn/styles/eunomia-grid.scss +6 -0
  113. package/dist/cdn/styles/eunomia-themes.css +1 -1
  114. package/dist/cdn/styles/themes/eunomia-theme.css +1 -1
  115. package/dist/cdn/styles/themes/eunomia-theme.scss +4 -3
  116. package/dist/cdn/styles/themes/mixins/eunomia-a11y-color.mixin.scss +34 -1
  117. package/dist/cdn/styles/themes/mixins/eunomia-neutrals.mixin.scss +4 -0
  118. package/dist/cdn/styles/themes/mixins/eunomia-states.mixin.scss +36 -12
  119. package/dist/cdn/styles/themes/prebuilt-themes/eunomia/eunomia-dark.mixin.scss +10 -10
  120. package/dist/cdn/styles/themes/prebuilt-themes/eunomia/eunomia.mixin.scss +10 -10
  121. package/dist/cdn/styles/themes/prebuilt-themes/eunomia/eunomia.theme.css +1 -1
  122. package/dist/cdn/styles/themes/prebuilt-themes/eunomia/eunomia.theme.scss +3 -2
  123. package/dist/cdn/styles/themes/prebuilt-themes/fire/eunomia-fire-dark.mixin.scss +10 -10
  124. package/dist/cdn/styles/themes/prebuilt-themes/fire/eunomia-fire.mixin.scss +10 -10
  125. package/dist/cdn/styles/themes/prebuilt-themes/fire/eunomia-fire.theme.css +1 -1
  126. package/dist/cdn/styles/themes/prebuilt-themes/fire/eunomia-fire.theme.scss +3 -2
  127. package/dist/cdn/styles/themes/prebuilt-themes/forest/eunomia-forest-dark.mixin.scss +10 -10
  128. package/dist/cdn/styles/themes/prebuilt-themes/forest/eunomia-forest.mixin.scss +10 -10
  129. package/dist/cdn/styles/themes/prebuilt-themes/forest/eunomia-forest.theme.css +1 -1
  130. package/dist/cdn/styles/themes/prebuilt-themes/forest/eunomia-forest.theme.scss +3 -2
  131. package/dist/cdn/styles/themes/prebuilt-themes/gold/eunomia-gold-dark.mixin.scss +10 -10
  132. package/dist/cdn/styles/themes/prebuilt-themes/gold/eunomia-gold.mixin.scss +10 -10
  133. package/dist/cdn/styles/themes/prebuilt-themes/gold/eunomia-gold.theme.css +1 -1
  134. package/dist/cdn/styles/themes/prebuilt-themes/gold/eunomia-gold.theme.scss +3 -2
  135. package/dist/cdn/styles/themes/prebuilt-themes/ocean/eunomia-ocean-dark.mixin.scss +10 -10
  136. package/dist/cdn/styles/themes/prebuilt-themes/ocean/eunomia-ocean.mixin.scss +10 -10
  137. package/dist/cdn/styles/themes/prebuilt-themes/ocean/eunomia-ocean.theme.css +1 -1
  138. package/dist/cdn/styles/themes/prebuilt-themes/ocean/eunomia-ocean.theme.scss +3 -2
  139. package/dist/cdn/styles/themes/prebuilt-themes/salmon/eunomia-salmon-dark.mixin.scss +10 -10
  140. package/dist/cdn/styles/themes/prebuilt-themes/salmon/eunomia-salmon.mixin.scss +10 -10
  141. package/dist/cdn/styles/themes/prebuilt-themes/salmon/eunomia-salmon.theme.css +1 -1
  142. package/dist/cdn/styles/themes/prebuilt-themes/salmon/eunomia-salmon.theme.scss +3 -2
  143. package/dist/cdn/styles/themes/prebuilt-themes/violet/eunomia-violet-dark.mixin.scss +10 -10
  144. package/dist/cdn/styles/themes/prebuilt-themes/violet/eunomia-violet.mixin.scss +10 -10
  145. package/dist/cdn/styles/themes/prebuilt-themes/violet/eunomia-violet.theme.css +1 -1
  146. package/dist/cdn/styles/themes/prebuilt-themes/violet/eunomia-violet.theme.scss +3 -2
  147. package/dist/cdn/styles/tools/indexes/eunomia-media-queries.index.scss +1 -3
  148. package/dist/cdn/styles/tools/indexes/eunomia-tools.index.scss +1 -0
  149. package/dist/cdn/styles/tools/mixins/layout/eunomia-grid.mixin.scss +117 -53
  150. package/dist/cdn/styles/tools/mixins/media-queries/eunomia-media-queries.mixin.scss +69 -0
  151. package/dist/cdn/styles/tools/mixins/settings/eunomia-alpha.mixin.scss +28 -4
  152. package/dist/cdn/styles/tools/mixins/settings/eunomia-motion.mixin.scss +9 -0
  153. package/dist/cdn/styles/tools/variables/eunomia.breakpoints.scss +4 -0
  154. package/dist/components/action/button/button.d.ts +51 -19
  155. package/dist/components/action/button/button.js +107 -24
  156. package/dist/components/action/button/button.styles.js +115 -62
  157. package/dist/components/action/dropdown-button/dropdown-button.d.ts +10 -10
  158. package/dist/components/action/dropdown-button/dropdown-button.js +18 -17
  159. package/dist/components/action/dropdown-button/dropdown-button.styles.js +3 -2
  160. package/dist/components/action/dropdown-button/dropdown-item.js +5 -6
  161. package/dist/components/action/dropdown-button/dropdown-item.styles.js +3 -2
  162. package/dist/components/action/fab/fab.d.ts +7 -6
  163. package/dist/components/action/fab/fab.js +11 -8
  164. package/dist/components/action/fab/fab.styles.js +18 -17
  165. package/dist/components/action/link/link.d.ts +72 -9
  166. package/dist/components/action/link/link.js +183 -23
  167. package/dist/components/action/link/link.styles.js +146 -10
  168. package/dist/components/action/shared-styles/button-palette.styles.d.ts +3 -3
  169. package/dist/components/action/shared-styles/button-palette.styles.js +29 -29
  170. package/dist/components/action/toggle/toggle-group.d.ts +17 -5
  171. package/dist/components/action/toggle/toggle-group.js +46 -19
  172. package/dist/components/action/toggle/toggle-group.styles.d.ts +4 -1
  173. package/dist/components/action/toggle/toggle-group.styles.js +56 -27
  174. package/dist/components/action/toggle/toggle-item.d.ts +4 -4
  175. package/dist/components/action/toggle/toggle-item.js +2 -2
  176. package/dist/components/action/toggle/toggle-item.styles.js +20 -17
  177. package/dist/components/action/toggle/toggle.d.ts +2 -0
  178. package/dist/components/action/toggle/toggle.js +2 -0
  179. package/dist/components/action/toggle/toggle.styles.d.ts +2 -0
  180. package/dist/components/action/toggle/toggle.styles.js +12 -8
  181. package/dist/components/alert/alert/alert.d.ts +2 -0
  182. package/dist/components/alert/alert/alert.js +2 -0
  183. package/dist/components/alert/alert/alert.styles.js +23 -13
  184. package/dist/components/alert/drawer/drawer.d.ts +3 -1
  185. package/dist/components/alert/drawer/drawer.js +5 -3
  186. package/dist/components/alert/drawer/drawer.styles.js +25 -9
  187. package/dist/components/alert/modal/modal.d.ts +11 -9
  188. package/dist/components/alert/modal/modal.js +15 -13
  189. package/dist/components/alert/modal/modal.styles.js +16 -7
  190. package/dist/components/alert/toast/toast.d.ts +2 -0
  191. package/dist/components/alert/toast/toast.js +2 -0
  192. package/dist/components/alert/toast/toast.styles.js +37 -15
  193. package/dist/components/content/badge/badge.d.ts +6 -6
  194. package/dist/components/content/badge/badge.js +4 -4
  195. package/dist/components/content/badge/badge.styles.js +4 -4
  196. package/dist/components/content/card/card.d.ts +39 -7
  197. package/dist/components/content/card/card.js +71 -7
  198. package/dist/components/content/card/card.styles.js +58 -11
  199. package/dist/components/content/card/image-card.d.ts +62 -7
  200. package/dist/components/content/card/image-card.js +121 -11
  201. package/dist/components/content/card/image-card.styles.js +66 -15
  202. package/dist/components/content/card/sliding-card.d.ts +4 -1
  203. package/dist/components/content/card/sliding-card.js +3 -0
  204. package/dist/components/content/card/sliding-card.styles.js +5 -1
  205. package/dist/components/content/collapse/collapse.d.ts +39 -12
  206. package/dist/components/content/collapse/collapse.js +65 -25
  207. package/dist/components/content/collapse/collapse.styles.d.ts +10 -1
  208. package/dist/components/content/collapse/collapse.styles.js +69 -18
  209. package/dist/components/content/description-list/description-list.d.ts +87 -0
  210. package/dist/components/content/description-list/description-list.js +107 -0
  211. package/dist/components/content/description-list/description-list.styles.d.ts +1 -0
  212. package/dist/components/content/description-list/description-list.styles.js +185 -0
  213. package/dist/components/content/icon/icon.d.ts +14 -2
  214. package/dist/components/content/icon/icon.js +54 -22
  215. package/dist/components/content/icon/icon.style.d.ts +2 -0
  216. package/dist/components/content/icon/icon.style.js +8 -2
  217. package/dist/components/content/image-carousel/image-carousel.d.ts +30 -19
  218. package/dist/components/content/image-carousel/image-carousel.js +48 -45
  219. package/dist/components/content/image-carousel/image-carousel.styles.js +69 -30
  220. package/dist/components/content/password-strength/password-strength.styles.js +5 -1
  221. package/dist/components/content/progress-bar/progress-bar.styles.js +12 -4
  222. package/dist/components/content/shared-styles/card-link.styles.js +5 -3
  223. package/dist/components/content/shared-styles/tone-surface.styles.d.ts +5 -0
  224. package/dist/components/content/shared-styles/tone-surface.styles.js +19 -14
  225. package/dist/components/content/tag/tag.d.ts +4 -0
  226. package/dist/components/content/tag/tag.js +4 -0
  227. package/dist/components/content/tag/tag.styles.js +14 -4
  228. package/dist/components/content/tooltip/tooltip.d.ts +3 -2
  229. package/dist/components/content/tooltip/tooltip.js +9 -16
  230. package/dist/components/content/tooltip/tooltip.styles.js +25 -7
  231. package/dist/components/form/checkbox/check-card.d.ts +4 -1
  232. package/dist/components/form/checkbox/check-card.js +4 -1
  233. package/dist/components/form/checkbox/check-card.styles.js +13 -4
  234. package/dist/components/form/checkbox/checkbox-list.d.ts +4 -1
  235. package/dist/components/form/checkbox/checkbox-list.js +11 -7
  236. package/dist/components/form/checkbox/checkbox.d.ts +4 -1
  237. package/dist/components/form/checkbox/checkbox.js +4 -1
  238. package/dist/components/form/checkbox/checkbox.styles.js +2 -2
  239. package/dist/components/form/color-picker/color-picker.d.ts +10 -4
  240. package/dist/components/form/color-picker/color-picker.js +23 -25
  241. package/dist/components/form/color-picker/color-picker.styles.js +6 -5
  242. package/dist/components/form/counter/counter.d.ts +7 -4
  243. package/dist/components/form/counter/counter.js +8 -5
  244. package/dist/components/form/counter/counter.styles.js +10 -9
  245. package/dist/components/form/date-picker/date-picker.d.ts +40 -36
  246. package/dist/components/form/date-picker/date-picker.js +35 -45
  247. package/dist/components/form/date-picker/date-picker.styles.js +13 -10
  248. package/dist/components/form/input/input.d.ts +10 -4
  249. package/dist/components/form/input/input.js +12 -6
  250. package/dist/components/form/input-file/input-file.d.ts +4 -1
  251. package/dist/components/form/input-file/input-file.js +8 -5
  252. package/dist/components/form/input-file/input-file.styles.js +3 -2
  253. package/dist/components/form/input-phone/input-phone.d.ts +11 -5
  254. package/dist/components/form/input-phone/input-phone.js +16 -20
  255. package/dist/components/form/input-phone/input-phone.styles.js +16 -16
  256. package/dist/components/form/label/label.styles.js +3 -3
  257. package/dist/components/form/radio/radio-card.d.ts +5 -2
  258. package/dist/components/form/radio/radio-card.js +5 -2
  259. package/dist/components/form/radio/radio-card.styles.js +14 -5
  260. package/dist/components/form/radio/radio-list.d.ts +5 -2
  261. package/dist/components/form/radio/radio-list.js +14 -10
  262. package/dist/components/form/radio/radio.d.ts +5 -2
  263. package/dist/components/form/radio/radio.js +5 -2
  264. package/dist/components/form/radio/radio.styles.js +4 -4
  265. package/dist/components/form/search/search.d.ts +2 -1
  266. package/dist/components/form/search/search.js +6 -15
  267. package/dist/components/form/search/search.styles.js +8 -7
  268. package/dist/components/form/select/select.d.ts +12 -5
  269. package/dist/components/form/select/select.js +18 -21
  270. package/dist/components/form/select/select.styles.js +3 -2
  271. package/dist/components/form/shared-styles/card.styles.js +5 -4
  272. package/dist/components/form/shared-styles/field.styles.js +21 -11
  273. package/dist/components/form/shared-styles/form-labels.styles.js +1 -1
  274. package/dist/components/form/slider/slider.d.ts +4 -1
  275. package/dist/components/form/slider/slider.js +5 -2
  276. package/dist/components/form/slider/slider.styles.js +8 -7
  277. package/dist/components/form/switch/switch.d.ts +4 -1
  278. package/dist/components/form/switch/switch.js +4 -1
  279. package/dist/components/form/switch/switch.styles.js +7 -5
  280. package/dist/components/form/textarea/textarea.d.ts +10 -4
  281. package/dist/components/form/textarea/textarea.js +18 -12
  282. package/dist/components/form/time-picker/time-picker-columns.styles.js +4 -2
  283. package/dist/components/form/time-picker/time-picker-list.styles.js +2 -1
  284. package/dist/components/form/time-picker/time-picker.d.ts +9 -5
  285. package/dist/components/form/time-picker/time-picker.js +25 -29
  286. package/dist/components/form/time-picker/time-picker.styles.js +9 -8
  287. package/dist/components/layout/animate/animate.d.ts +41 -11
  288. package/dist/components/layout/animate/animate.js +48 -16
  289. package/dist/components/layout/animate/animate.styles.js +9 -16
  290. package/dist/components/layout/infinite-list/infinite-list.d.ts +33 -10
  291. package/dist/components/layout/infinite-list/infinite-list.js +115 -18
  292. package/dist/components/layout/infinite-list/infinite-list.styles.d.ts +3 -0
  293. package/dist/components/layout/infinite-list/infinite-list.styles.js +17 -5
  294. package/dist/components/loader/loader/loader.styles.js +3 -1
  295. package/dist/components/navigation/breadcrumb/breadcrumb.d.ts +31 -45
  296. package/dist/components/navigation/breadcrumb/breadcrumb.js +111 -77
  297. package/dist/components/navigation/breadcrumb/breadcrumb.styles.d.ts +3 -0
  298. package/dist/components/navigation/breadcrumb/breadcrumb.styles.js +22 -26
  299. package/dist/components/navigation/carousel/carousel.d.ts +30 -10
  300. package/dist/components/navigation/carousel/carousel.js +37 -18
  301. package/dist/components/navigation/carousel/carousel.styles.js +60 -20
  302. package/dist/components/navigation/pagination/pagination.styles.js +8 -3
  303. package/dist/components/navigation/sidebar/sidebar.d.ts +2 -0
  304. package/dist/components/navigation/sidebar/sidebar.js +2 -0
  305. package/dist/components/navigation/sidebar/sidebar.styles.js +27 -11
  306. package/dist/components/navigation/stepper/step.styles.js +16 -5
  307. package/dist/components/navigation/stepper/stepper.styles.js +16 -5
  308. package/dist/components/navigation/tabs/tab/tab.d.ts +11 -0
  309. package/dist/components/navigation/tabs/tab/tab.js +11 -0
  310. package/dist/components/navigation/tabs/tab/tab.styles.js +22 -16
  311. package/dist/components/navigation/tabs/tab-group/tab-group.js +7 -8
  312. package/dist/components/navigation/tabs/tab-group/tab-group.styles.js +19 -14
  313. package/dist/components/navigation/tabs/tab-panel/tab-panel.d.ts +4 -0
  314. package/dist/components/navigation/tabs/tab-panel/tab-panel.js +4 -0
  315. package/dist/components/navigation/tabs/tab-panel/tab-panel.styles.js +18 -1
  316. package/dist/components/navigation/toolbar/toolbar.d.ts +17 -49
  317. package/dist/components/navigation/toolbar/toolbar.js +23 -71
  318. package/dist/components/navigation/toolbar/toolbar.styles.js +59 -36
  319. package/dist/events/table-row-click.event.d.ts +5 -4
  320. package/dist/events/table-row-click.event.js +10 -5
  321. package/dist/features/scheduler/calendar/calendar.d.ts +12 -12
  322. package/dist/features/scheduler/calendar/calendar.js +15 -14
  323. package/dist/features/scheduler/calendar/calendar.styles.js +8 -6
  324. package/dist/features/scheduler/scheduler/scheduler.d.ts +7 -7
  325. package/dist/features/scheduler/scheduler/scheduler.js +21 -35
  326. package/dist/features/scheduler/scheduler/scheduler.styles.js +6 -4
  327. package/dist/features/scheduler/scheduler-event/scheduler-event.d.ts +12 -8
  328. package/dist/features/scheduler/scheduler-event/scheduler-event.js +9 -7
  329. package/dist/features/scheduler/scheduler-event/scheduler-event.styles.js +16 -10
  330. package/dist/features/scheduler/scheduler-event-editor/scheduler-event-editor.js +5 -5
  331. package/dist/features/scheduler/shared/scheduler-event-popover.js +2 -2
  332. package/dist/features/scheduler/shared/scheduler-hour-grid.d.ts +2 -2
  333. package/dist/features/scheduler/shared/scheduler-hour-grid.js +3 -3
  334. package/dist/features/scheduler/shared/scheduler-hour-grid.styles.js +3 -3
  335. package/dist/features/scheduler/shared/scheduler-month-view.d.ts +3 -3
  336. package/dist/features/scheduler/shared/scheduler-month-view.js +2 -2
  337. package/dist/features/scheduler/shared/scheduler-month-view.styles.js +2 -2
  338. package/dist/features/scheduler/shared/scheduler-year-view.styles.js +2 -2
  339. package/dist/features/table/table/table-native.styles.d.ts +28 -0
  340. package/dist/features/table/table/table-native.styles.js +502 -0
  341. package/dist/features/table/table/table.d.ts +342 -294
  342. package/dist/features/table/table/table.js +820 -546
  343. package/dist/features/table/table/table.styles.js +31 -17
  344. package/dist/features/table/table/table.types.d.ts +18 -23
  345. package/dist/features/table/table/table.utils.d.ts +6 -36
  346. package/dist/features/table/table/table.utils.js +16 -65
  347. package/dist/features/table/table-action-bar/table-action-bar.d.ts +33 -16
  348. package/dist/features/table/table-action-bar/table-action-bar.js +18 -25
  349. package/dist/features/table/table-action-bar/table-action-bar.styles.js +15 -3
  350. package/dist/i18n/en.d.ts +34 -0
  351. package/dist/i18n/en.js +34 -0
  352. package/dist/i18n/fr.js +38 -0
  353. package/dist/index.d.ts +7 -13
  354. package/dist/index.js +6 -10
  355. package/dist/jsx.d.ts +1 -1
  356. package/dist/mixins/button.mixin.d.ts +10 -9
  357. package/dist/mixins/button.mixin.js +14 -6
  358. package/dist/mixins/card-link.mixin.d.ts +3 -2
  359. package/dist/mixins/card-link.mixin.js +12 -5
  360. package/dist/mixins/check.mixin.js +4 -5
  361. package/dist/mixins/disabled.mixin.d.ts +3 -3
  362. package/dist/mixins/disabled.mixin.js +10 -5
  363. package/dist/mixins/field-appearance.mixin.d.ts +19 -0
  364. package/dist/mixins/{field-variant.mixin.js → field-appearance.mixin.js} +11 -11
  365. package/dist/mixins/form.mixin.d.ts +17 -1
  366. package/dist/mixins/form.mixin.js +80 -25
  367. package/dist/mixins/radio.mixin.js +4 -5
  368. package/dist/mixins/validators.mixin.d.ts +7 -1
  369. package/dist/mixins/validators.mixin.js +36 -17
  370. package/dist/ssr/animate-ssr.css +27 -72
  371. package/dist/ssr/button-ssr.css +319 -0
  372. package/dist/ssr/card-ssr.css +184 -0
  373. package/dist/ssr/description-list-ssr.css +150 -0
  374. package/dist/ssr/links-ssr.css +35 -0
  375. package/dist/ssr/overlay-ssr.css +0 -41
  376. package/dist/ssr/rich-text.css +38 -0
  377. package/dist/ssr/sidebar-ssr.css +0 -38
  378. package/dist/ssr/table-ssr.css +472 -0
  379. package/dist/ssr/tag-ssr.css +197 -0
  380. package/dist/ssr/toolbar-ssr.css +77 -39
  381. package/dist/types/variant.type.d.ts +26 -10
  382. package/dist/utils/drag-drop.utils.js +18 -2
  383. package/dist/utils/dropdown-menu.utils.d.ts +2 -2
  384. package/dist/utils/dropdown-menu.utils.js +4 -14
  385. package/dist/utils/light-dom-styles.utils.d.ts +14 -0
  386. package/dist/utils/light-dom-styles.utils.js +37 -0
  387. package/dist/utils/media.styles.d.ts +19 -0
  388. package/dist/utils/media.styles.js +23 -0
  389. package/dist/utils/motion.utils.d.ts +40 -0
  390. package/dist/utils/motion.utils.js +51 -0
  391. package/dist/utils/navigation.utils.d.ts +14 -0
  392. package/dist/utils/navigation.utils.js +33 -0
  393. package/dist/utils/new-tab-anchor.controller.d.ts +44 -0
  394. package/dist/utils/new-tab-anchor.controller.js +102 -0
  395. package/dist/utils/severity-icon.utils.d.ts +1 -1
  396. package/dist/utils/severity-icon.utils.js +1 -1
  397. package/dist/utils/theme-generator.utils.d.ts +9 -2
  398. package/dist/utils/theme-generator.utils.js +62 -21
  399. package/package.json +24 -29
  400. package/styles/breakpoints.scss +8 -0
  401. package/styles/eunomia-grid.scss +6 -0
  402. package/styles/themes/eunomia-theme.scss +4 -3
  403. package/styles/themes/mixins/eunomia-a11y-color.mixin.scss +34 -1
  404. package/styles/themes/mixins/eunomia-neutrals.mixin.scss +4 -0
  405. package/styles/themes/mixins/eunomia-states.mixin.scss +36 -12
  406. package/styles/themes/prebuilt-themes/eunomia/eunomia-dark.mixin.scss +10 -10
  407. package/styles/themes/prebuilt-themes/eunomia/eunomia.mixin.scss +10 -10
  408. package/styles/themes/prebuilt-themes/eunomia/eunomia.theme.scss +3 -2
  409. package/styles/themes/prebuilt-themes/fire/eunomia-fire-dark.mixin.scss +10 -10
  410. package/styles/themes/prebuilt-themes/fire/eunomia-fire.mixin.scss +10 -10
  411. package/styles/themes/prebuilt-themes/fire/eunomia-fire.theme.scss +3 -2
  412. package/styles/themes/prebuilt-themes/forest/eunomia-forest-dark.mixin.scss +10 -10
  413. package/styles/themes/prebuilt-themes/forest/eunomia-forest.mixin.scss +10 -10
  414. package/styles/themes/prebuilt-themes/forest/eunomia-forest.theme.scss +3 -2
  415. package/styles/themes/prebuilt-themes/gold/eunomia-gold-dark.mixin.scss +10 -10
  416. package/styles/themes/prebuilt-themes/gold/eunomia-gold.mixin.scss +10 -10
  417. package/styles/themes/prebuilt-themes/gold/eunomia-gold.theme.scss +3 -2
  418. package/styles/themes/prebuilt-themes/ocean/eunomia-ocean-dark.mixin.scss +10 -10
  419. package/styles/themes/prebuilt-themes/ocean/eunomia-ocean.mixin.scss +10 -10
  420. package/styles/themes/prebuilt-themes/ocean/eunomia-ocean.theme.scss +3 -2
  421. package/styles/themes/prebuilt-themes/salmon/eunomia-salmon-dark.mixin.scss +10 -10
  422. package/styles/themes/prebuilt-themes/salmon/eunomia-salmon.mixin.scss +10 -10
  423. package/styles/themes/prebuilt-themes/salmon/eunomia-salmon.theme.scss +3 -2
  424. package/styles/themes/prebuilt-themes/violet/eunomia-violet-dark.mixin.scss +10 -10
  425. package/styles/themes/prebuilt-themes/violet/eunomia-violet.mixin.scss +10 -10
  426. package/styles/themes/prebuilt-themes/violet/eunomia-violet.theme.scss +3 -2
  427. package/styles/tools/indexes/eunomia-media-queries.index.scss +1 -3
  428. package/styles/tools/indexes/eunomia-tools.index.scss +1 -0
  429. package/styles/tools/mixins/layout/eunomia-grid.mixin.scss +117 -53
  430. package/styles/tools/mixins/media-queries/eunomia-media-queries.mixin.scss +69 -0
  431. package/styles/tools/mixins/settings/eunomia-alpha.mixin.scss +28 -4
  432. package/styles/tools/mixins/settings/eunomia-motion.mixin.scss +9 -0
  433. package/styles/tools/variables/eunomia.breakpoints.scss +4 -0
  434. package/dist/cdn/components/chunks/chunk-2JLDJFYD.js +0 -48
  435. package/dist/cdn/components/chunks/chunk-A6KGFALA.js +0 -132
  436. package/dist/cdn/components/chunks/chunk-ATH2OAMU.js +0 -1
  437. package/dist/cdn/components/chunks/chunk-BKHD4S57.js +0 -1
  438. package/dist/cdn/components/chunks/chunk-CEDHJUUH.js +0 -1
  439. package/dist/cdn/components/chunks/chunk-D2M4BV5Y.js +0 -328
  440. package/dist/cdn/components/chunks/chunk-E74CM7UG.js +0 -66
  441. package/dist/cdn/components/chunks/chunk-EST3M4AO.js +0 -1
  442. package/dist/cdn/components/chunks/chunk-GU6BVMFJ.js +0 -1
  443. package/dist/cdn/components/chunks/chunk-KVYUNKUO.js +0 -27
  444. package/dist/cdn/components/chunks/chunk-OAULRKHQ.js +0 -38
  445. package/dist/cdn/components/chunks/chunk-PCM7D3YF.js +0 -84
  446. package/dist/cdn/components/chunks/chunk-T4PTHUYF.js +0 -10
  447. package/dist/cdn/components/chunks/chunk-T7WABJEJ.js +0 -1
  448. package/dist/cdn/components/chunks/chunk-VRGRCYIO.js +0 -1
  449. package/dist/cdn/components/chunks/chunk-X2AUBZD2.js +0 -30
  450. package/dist/cdn/components/chunks/chunk-XSMCT4DF.js +0 -1
  451. package/dist/cdn/components/eun-breadcrumb-item.js +0 -93
  452. package/dist/cdn/components/eun-table-cell.js +0 -1
  453. package/dist/cdn/components/eun-table-column.js +0 -1
  454. package/dist/cdn/components/eun-table-header.js +0 -1
  455. package/dist/cdn/components/eun-table-item.js +0 -1
  456. package/dist/cdn/components/eun-table-skeleton-row.js +0 -1
  457. package/dist/cdn/styles/tools/mixins/media-queries/eunomia-device.mixin.scss +0 -14
  458. package/dist/cdn/styles/tools/mixins/media-queries/eunomia-gte.mixin.scss +0 -26
  459. package/dist/cdn/styles/tools/mixins/media-queries/eunomia-lte.mixin.scss +0 -26
  460. package/dist/components/navigation/breadcrumb/breadcrumb-item.d.ts +0 -77
  461. package/dist/components/navigation/breadcrumb/breadcrumb-item.js +0 -130
  462. package/dist/components/navigation/breadcrumb/breadcrumb-item.styles.d.ts +0 -6
  463. package/dist/components/navigation/breadcrumb/breadcrumb-item.styles.js +0 -78
  464. package/dist/features/table/native-table.css +0 -276
  465. package/dist/features/table/shared-styles/table-row.styles.d.ts +0 -7
  466. package/dist/features/table/shared-styles/table-row.styles.js +0 -47
  467. package/dist/features/table/shared-styles/table-shared.styles.d.ts +0 -23
  468. package/dist/features/table/shared-styles/table-shared.styles.js +0 -33
  469. package/dist/features/table/table-cell/table-cell.d.ts +0 -59
  470. package/dist/features/table/table-cell/table-cell.js +0 -73
  471. package/dist/features/table/table-cell/table-cell.styles.d.ts +0 -1
  472. package/dist/features/table/table-cell/table-cell.styles.js +0 -46
  473. package/dist/features/table/table-column/table-column.d.ts +0 -73
  474. package/dist/features/table/table-column/table-column.js +0 -89
  475. package/dist/features/table/table-column/table-column.styles.d.ts +0 -1
  476. package/dist/features/table/table-column/table-column.styles.js +0 -51
  477. package/dist/features/table/table-header/table-header.d.ts +0 -102
  478. package/dist/features/table/table-header/table-header.js +0 -165
  479. package/dist/features/table/table-header/table-header.styles.d.ts +0 -1
  480. package/dist/features/table/table-header/table-header.styles.js +0 -147
  481. package/dist/features/table/table-item/table-item.d.ts +0 -179
  482. package/dist/features/table/table-item/table-item.js +0 -291
  483. package/dist/features/table/table-item/table-item.styles.d.ts +0 -1
  484. package/dist/features/table/table-item/table-item.styles.js +0 -404
  485. package/dist/features/table/table-managed/table-managed.d.ts +0 -19
  486. package/dist/features/table/table-managed/table-managed.js +0 -128
  487. package/dist/features/table/table-skeleton-row/table-skeleton-row.d.ts +0 -46
  488. package/dist/features/table/table-skeleton-row/table-skeleton-row.js +0 -110
  489. package/dist/features/table/table-skeleton-row/table-skeleton-row.styles.d.ts +0 -12
  490. package/dist/features/table/table-skeleton-row/table-skeleton-row.styles.js +0 -65
  491. package/dist/mixins/field-variant.mixin.d.ts +0 -22
  492. package/dist/mixins/table-row.mixin.d.ts +0 -37
  493. package/dist/mixins/table-row.mixin.js +0 -103
  494. package/styles/tools/mixins/media-queries/eunomia-device.mixin.scss +0 -14
  495. package/styles/tools/mixins/media-queries/eunomia-gte.mixin.scss +0 -26
  496. package/styles/tools/mixins/media-queries/eunomia-lte.mixin.scss +0 -26
@@ -15,6 +15,10 @@ import { toneSurfaceStyles } from "../shared-styles/tone-surface.styles.js";
15
15
  * [--tag-border-width] - Set a custom border width, for every appearance. Defaults to 1px, only drawn (in a color) by outline, or when --tag-border-color is set
16
16
  * [--tag-border-radius] - Set a custom border radius to the tag, also over rounded
17
17
  * [--tag-gap] - Set a custom gap between the tag icon and the label
18
+ * [--tag-padding-block] - Set a custom vertical padding, for every size. The border is taken out of it
19
+ * [--tag-padding-inline] - Set a custom horizontal padding, for every size. The border is taken out of it
20
+ * [--tag-font-size] - Set a custom font size, for every size
21
+ * [--tag-font-weight] - Set a custom font weight
18
22
  */
19
23
  const base = css `
20
24
  :host {
@@ -90,11 +94,17 @@ const base = css `
90
94
  color: var(--tag-color, var(--_fg));
91
95
  border: var(--_borderWidth) solid var(--tag-border-color, var(--_bd));
92
96
  border-radius: var(--tag-border-radius, var(--_radius));
93
- padding: max(0px, calc(var(--_padV) - var(--_borderWidth)))
94
- max(0px, calc(var(--_padH) - var(--_borderWidth)));
95
- font-size: var(--_fontSize);
97
+ padding: max(
98
+ 0px,
99
+ calc(var(--tag-padding-block, var(--_padV)) - var(--_borderWidth))
100
+ )
101
+ max(
102
+ 0px,
103
+ calc(var(--tag-padding-inline, var(--_padH)) - var(--_borderWidth))
104
+ );
105
+ font-size: var(--tag-font-size, var(--_fontSize));
96
106
  gap: var(--tag-gap, var(--_gap));
97
- font-weight: var(--eun-font-weight-m, 500);
107
+ font-weight: var(--tag-font-weight, var(--eun-font-weight-m, 500));
98
108
  --icon-color: var(--tag-color, var(--_fg));
99
109
  }
100
110
 
@@ -93,6 +93,8 @@ declare const EunomiaTooltipMixinBase: Constructor<EunomiaTooltipBase>;
93
93
  * @cssprop [--tooltip-font-weight] - Sets the font weight of the description content, not the heading, and not richText, which stays at its own normal weight
94
94
  * @cssprop [--tooltip-border-radius] - Sets the corner radius of the panel
95
95
  * @cssprop [--tooltip-padding] - Sets the padding of the panel
96
+ * @cssprop [--tooltip-padding-block] - Sets the vertical padding, as one length applied to both sides. Ignored when --tooltip-padding is set
97
+ * @cssprop [--tooltip-padding-inline] - Sets the horizontal padding, as one length applied to both sides. Ignored when --tooltip-padding is set
96
98
  * @cssprop [--tooltip-shadow] - Sets the shadow of the panel
97
99
  * @cssprop [--tooltip-transition-duration] - Sets the duration of the open and close transition
98
100
  * @element eun-tooltip
@@ -467,8 +469,7 @@ export declare class EunomiaTooltip extends EunomiaTooltipMixinBase {
467
469
  * The enter/exit animation's duration, in ms : `0` under
468
470
  * `prefers-reduced-motion: reduce`, otherwise `--tooltip-transition-
469
471
  * duration` (forwarded onto the panel by {@link forwardCssVariables}) if
470
- * set, falling back to the same `150ms` default the old CSS transition
471
- * used.
472
+ * set, falling back to `--eun-duration-s`.
472
473
  *
473
474
  * @param panel the panel to read `--tooltip-transition-duration` off.
474
475
  * @private
@@ -14,6 +14,7 @@ import { clampToViewport } from "../../../utils/dropdown-menu.utils.js";
14
14
  import { isWebKit } from "../../../utils/browser.utils.js";
15
15
  import { formatRichText } from "../../../utils/rich-text.utils.js";
16
16
  import { tooltipHostStyles, tooltipPanelStyles, tooltipAnchorPositioningStyles, } from "./tooltip.styles.js";
17
+ import { resolveDurationMs, resolveEasing, } from "../../../utils/motion.utils.js";
17
18
  /**
18
19
  * Tag name of the tooltip component.
19
20
  */
@@ -58,6 +59,8 @@ const FORWARDED_CSS_VARS = [
58
59
  "--tooltip-font-weight",
59
60
  "--tooltip-border-radius",
60
61
  "--tooltip-padding",
62
+ "--tooltip-padding-block",
63
+ "--tooltip-padding-inline",
61
64
  "--tooltip-row-gap",
62
65
  "--tooltip-shadow",
63
66
  "--tooltip-transition-duration",
@@ -121,6 +124,8 @@ const EunomiaTooltipMixinBase = AnchorPositionMixin(LitElement);
121
124
  * @cssprop [--tooltip-font-weight] - Sets the font weight of the description content, not the heading, and not richText, which stays at its own normal weight
122
125
  * @cssprop [--tooltip-border-radius] - Sets the corner radius of the panel
123
126
  * @cssprop [--tooltip-padding] - Sets the padding of the panel
127
+ * @cssprop [--tooltip-padding-block] - Sets the vertical padding, as one length applied to both sides. Ignored when --tooltip-padding is set
128
+ * @cssprop [--tooltip-padding-inline] - Sets the horizontal padding, as one length applied to both sides. Ignored when --tooltip-padding is set
124
129
  * @cssprop [--tooltip-shadow] - Sets the shadow of the panel
125
130
  * @cssprop [--tooltip-transition-duration] - Sets the duration of the open and close transition
126
131
  * @element eun-tooltip
@@ -608,8 +613,7 @@ let EunomiaTooltip = EunomiaTooltip_1 = class EunomiaTooltip extends EunomiaTool
608
613
  * The enter/exit animation's duration, in ms : `0` under
609
614
  * `prefers-reduced-motion: reduce`, otherwise `--tooltip-transition-
610
615
  * duration` (forwarded onto the panel by {@link forwardCssVariables}) if
611
- * set, falling back to the same `150ms` default the old CSS transition
612
- * used.
616
+ * set, falling back to `--eun-duration-s`.
613
617
  *
614
618
  * @param panel the panel to read `--tooltip-transition-duration` off.
615
619
  * @private
@@ -618,18 +622,7 @@ let EunomiaTooltip = EunomiaTooltip_1 = class EunomiaTooltip extends EunomiaTool
618
622
  if (window.matchMedia("(prefers-reduced-motion: reduce)").matches) {
619
623
  return 0;
620
624
  }
621
- const raw = getComputedStyle(panel)
622
- .getPropertyValue("--tooltip-transition-duration")
623
- .trim();
624
- if (raw) {
625
- const parsed = raw.endsWith("ms")
626
- ? Number.parseFloat(raw)
627
- : Number.parseFloat(raw) * 1000;
628
- if (Number.isFinite(parsed) && parsed >= 0) {
629
- return parsed;
630
- }
631
- }
632
- return 150;
625
+ return resolveDurationMs(panel, "--tooltip-transition-duration", "s", 150);
633
626
  }
634
627
  /**
635
628
  * Plays the fade/scale-in, replacing any {@link panelAnimation} already
@@ -669,7 +662,7 @@ let EunomiaTooltip = EunomiaTooltip_1 = class EunomiaTooltip extends EunomiaTool
669
662
  { opacity: 1, scale: 1 },
670
663
  ], {
671
664
  duration,
672
- easing: "ease",
665
+ easing: resolveEasing(panel),
673
666
  fill: "forwards",
674
667
  });
675
668
  }
@@ -693,7 +686,7 @@ let EunomiaTooltip = EunomiaTooltip_1 = class EunomiaTooltip extends EunomiaTool
693
686
  const animation = panel.animate([
694
687
  { opacity: 1, scale: 1 },
695
688
  { opacity: 0, scale: 0.96 },
696
- ], { duration, easing: "ease", fill: "forwards" });
689
+ ], { duration, easing: resolveEasing(panel), fill: "forwards" });
697
690
  this.panelAnimation = animation;
698
691
  animation.finished
699
692
  .then(() => {
@@ -25,6 +25,8 @@ export const tooltipHostStyles = css `
25
25
  * [--tooltip-font-weight] - Set a custom font weight for the description content (not the heading, and not richText, which stays at its own normal weight)
26
26
  * [--tooltip-border-radius] - Set a custom border radius
27
27
  * [--tooltip-padding] - Set a custom padding
28
+ * [--tooltip-padding-block] - Set a custom vertical padding, as one length applied to both sides. Ignored when --tooltip-padding is set
29
+ * [--tooltip-padding-inline] - Set a custom horizontal padding, as one length applied to both sides. Ignored when --tooltip-padding is set
28
30
  * [--tooltip-row-gap] - Set a custom gap between the heading and description rows
29
31
  * [--tooltip-shadow] - Set a custom shadow
30
32
  * [--tooltip-transition-duration] - Set a custom duration for the open/close transition
@@ -89,7 +91,9 @@ const panel = css `
89
91
  --_onSolid: var(--eun-color-grey-900, #000000);
90
92
  --_opposite: var(--eun-color-grey-800, #071621);
91
93
  }
92
- .eun-tooltip-panel:not([data-severity])[data-color="light"][data-fixed-color] {
94
+ .eun-tooltip-panel:not(
95
+ [data-severity]
96
+ )[data-color="light"][data-fixed-color] {
93
97
  --_solid: #ffffff;
94
98
  --_onSolid: #000000;
95
99
  --_opposite: #071621;
@@ -137,14 +141,22 @@ const panel = css `
137
141
  --_body: var(--_onSolid);
138
142
  --_bd: transparent;
139
143
  }
140
- .eun-tooltip-panel:not([data-severity])[data-color="light"][data-appearance="default"],
141
- .eun-tooltip-panel:not([data-severity])[data-color="dark"][data-appearance="default"] {
144
+ .eun-tooltip-panel:not(
145
+ [data-severity]
146
+ )[data-color="light"][data-appearance="default"],
147
+ .eun-tooltip-panel:not(
148
+ [data-severity]
149
+ )[data-color="dark"][data-appearance="default"] {
142
150
  --_bg: var(--_solid);
143
151
  --_head: var(--_onSolid);
144
152
  --_body: var(--_onSolid);
145
153
  }
146
- .eun-tooltip-panel:not([data-severity])[data-color="light"][data-appearance="outline"],
147
- .eun-tooltip-panel:not([data-severity])[data-color="dark"][data-appearance="outline"] {
154
+ .eun-tooltip-panel:not(
155
+ [data-severity]
156
+ )[data-color="light"][data-appearance="outline"],
157
+ .eun-tooltip-panel:not(
158
+ [data-severity]
159
+ )[data-color="dark"][data-appearance="outline"] {
148
160
  --_bg: var(--_opposite);
149
161
  --_head: var(--_solid);
150
162
  --_body: var(--_solid);
@@ -164,8 +176,14 @@ const panel = css `
164
176
  max-width: var(--tooltip-max-width, 280px);
165
177
  padding: var(
166
178
  --tooltip-padding,
167
- max(0px, calc(var(--eun-space-s, 8px) - var(--_bw)))
168
- max(0px, calc(var(--eun-space-m, 16px) - var(--_bw)))
179
+ var(
180
+ --tooltip-padding-block,
181
+ max(0px, calc(var(--eun-space-s, 8px) - var(--_bw)))
182
+ )
183
+ var(
184
+ --tooltip-padding-inline,
185
+ max(0px, calc(var(--eun-space-m, 16px) - var(--_bw)))
186
+ )
169
187
  );
170
188
  border-radius: var(
171
189
  --tooltip-border-radius,
@@ -24,7 +24,8 @@ export declare const EunomiaCheckCardTagName = "eun-check-card";
24
24
  * @prop {boolean} [disabled=false] - Whether the card is disabled
25
25
  * @prop {boolean} [readonly=false] - Whether the card is read only
26
26
  * @prop {boolean} [indeterminate=false] - Whether the card value is indeterminate
27
- * @prop {boolean} [hideError=false] - Whether the error message is hidden
27
+ * @prop {boolean} [hideError=false] - Whether the errors are hidden. The hint stays visible
28
+ * @prop {string} [error] - An error computed outside the field, by the form or by the server. While set, the field is invalid and shows this message right away
28
29
  * @attr {boolean} [hide-error=false] - Whether the error message is hidden
29
30
  * @prop {boolean} [required=false] - Whether a selection is required
30
31
  * @prop {string} name - The name of the field
@@ -46,6 +47,8 @@ export declare const EunomiaCheckCardTagName = "eun-check-card";
46
47
  * @cssprop [--check-card-border-width] - Sets the width of the border
47
48
  * @cssprop [--check-card-border-radius] - Sets the corner radius of the card
48
49
  * @cssprop [--check-card-padding] - Sets the padding inside the card
50
+ * @cssprop [--check-card-padding-block] - Sets the vertical padding, as one length applied to both sides. Ignored when --check-card-padding is set
51
+ * @cssprop [--check-card-padding-inline] - Sets the horizontal padding, as one length applied to both sides. Ignored when --check-card-padding is set
49
52
  * @cssprop [--check-card-min-width] - Sets the minimum width of the card
50
53
  * @cssprop [--check-card-icon-color] - Sets the color of the leading icon while not checked
51
54
  * @cssprop [--check-card-icon-color-checked] - Sets the color of the leading icon while checked
@@ -35,7 +35,8 @@ export const EunomiaCheckCardTagName = "eun-check-card";
35
35
  * @prop {boolean} [disabled=false] - Whether the card is disabled
36
36
  * @prop {boolean} [readonly=false] - Whether the card is read only
37
37
  * @prop {boolean} [indeterminate=false] - Whether the card value is indeterminate
38
- * @prop {boolean} [hideError=false] - Whether the error message is hidden
38
+ * @prop {boolean} [hideError=false] - Whether the errors are hidden. The hint stays visible
39
+ * @prop {string} [error] - An error computed outside the field, by the form or by the server. While set, the field is invalid and shows this message right away
39
40
  * @attr {boolean} [hide-error=false] - Whether the error message is hidden
40
41
  * @prop {boolean} [required=false] - Whether a selection is required
41
42
  * @prop {string} name - The name of the field
@@ -57,6 +58,8 @@ export const EunomiaCheckCardTagName = "eun-check-card";
57
58
  * @cssprop [--check-card-border-width] - Sets the width of the border
58
59
  * @cssprop [--check-card-border-radius] - Sets the corner radius of the card
59
60
  * @cssprop [--check-card-padding] - Sets the padding inside the card
61
+ * @cssprop [--check-card-padding-block] - Sets the vertical padding, as one length applied to both sides. Ignored when --check-card-padding is set
62
+ * @cssprop [--check-card-padding-inline] - Sets the horizontal padding, as one length applied to both sides. Ignored when --check-card-padding is set
60
63
  * @cssprop [--check-card-min-width] - Sets the minimum width of the card
61
64
  * @cssprop [--check-card-icon-color] - Sets the color of the leading icon while not checked
62
65
  * @cssprop [--check-card-icon-color-checked] - Sets the color of the leading icon while checked
@@ -14,6 +14,8 @@ import { css } from "lit";
14
14
  * [--check-card-border-width] - Set a custom border width
15
15
  * [--check-card-border-radius] - Set a custom border radius to the card
16
16
  * [--check-card-padding] - Set a custom padding inside the card
17
+ * [--check-card-padding-block] - Set a custom vertical padding, as one length applied to both sides. Ignored when --check-card-padding is set
18
+ * [--check-card-padding-inline] - Set a custom horizontal padding, as one length applied to both sides. Ignored when --check-card-padding is set
17
19
  * [--check-card-min-width] - Set a custom minimum width for the card
18
20
  * [--check-card-icon-color] - Set a custom color to the leading icon when not checked
19
21
  * [--check-card-icon-color-checked] - Set a custom color to the leading icon when checked
@@ -28,7 +30,10 @@ const base = css `
28
30
  --check-card-border-color,
29
31
  var(--eun-border-color, #dee0e7)
30
32
  );
31
- --_background: var(--check-card-background, var(--eun-surface-color, #ffffff));
33
+ --_background: var(
34
+ --check-card-background,
35
+ var(--eun-surface-color, #ffffff)
36
+ );
32
37
  --_errorColor: var(
33
38
  --check-card-error-color,
34
39
  var(--eun-color-critical-100, #aa0014)
@@ -47,7 +52,11 @@ const base = css `
47
52
  var(--eun-color-primary-500, #3d6fff)
48
53
  );
49
54
  --_minWidth: var(--check-card-min-width, 180px);
50
- --_padding: var(--check-card-padding, var(--eun-space-m, 16px));
55
+ --_padding: var(
56
+ --check-card-padding,
57
+ var(--check-card-padding-block, var(--eun-space-m, 16px))
58
+ var(--check-card-padding-inline, var(--eun-space-m, 16px))
59
+ );
51
60
  --_borderRadius: var(
52
61
  --check-card-border-radius,
53
62
  var(--eun-border-radius-m, 10px)
@@ -64,7 +73,7 @@ const base = css `
64
73
  );
65
74
  --_background: var(
66
75
  --check-card-background-checked,
67
- var(--eun-color-primary-bg-hover, rgba(18, 123, 185, 0.08))
76
+ var(--eun-color-primary-alpha-10, rgba(18, 123, 185, 0.08))
68
77
  );
69
78
  --_iconColor: var(
70
79
  --check-card-icon-color-checked,
@@ -137,7 +146,7 @@ const base = css `
137
146
  border-radius: var(--eun-border-radius-s, 5px);
138
147
  background: var(--_indicatorBackground);
139
148
  color: var(--_indicatorIcon);
140
- transition: all 0.15s ease;
149
+ transition: all var(--eun-duration-s, 150ms) var(--eun-easing-default, ease);
141
150
  }
142
151
  `;
143
152
  export const checkCardStyles = base;
@@ -29,13 +29,16 @@ declare const EunomiaCheckboxList_base: import("../../../utils/constructor.type.
29
29
  * @prop {boolean} [inline=false] - Whether the list's elements are displayed in a row
30
30
  * @prop {string[]} [defaultValue] - The default selected values
31
31
  * @attr {string} [default-value] - The default selected values, as a comma-separated string
32
- * @prop {boolean} [hideError=false] - Whether the errors are hidden
32
+ * @prop {boolean} [hideError=false] - Whether the errors are hidden. The hint stays visible
33
+ * @prop {string} [error] - An error computed outside the field, by the form or by the server. While set, the field is invalid and shows this message right away
33
34
  * @attr {boolean} [hide-error=false] - Whether the errors are hidden
34
35
  * @prop {Array<import('../../../types/form-validators.type.js').Validators<string[]>>} validators - A list of validation rules applied to the group's selected values
35
36
  * @fires {ChangeEvent} eunchange - Fired whenever the group's selection changes
36
37
  * @cssprop [--checkbox-list-gap] - Sets the gap between the labels and the list
37
38
  * @cssprop [--checkbox-list-options-gap] - Sets the gap between the checkboxes in the list
38
39
  * @cssprop [--checkbox-list-error-color] - Sets the color of the list's error state
40
+ * @cssprop [--field-label-font-size] - Sets the font size of the label
41
+ * @cssprop [--field-message-font-size] - Sets the font size of the hint, error messages and instructions
39
42
  * @element eun-checkbox-list
40
43
  */
41
44
  export declare class EunomiaCheckboxList extends EunomiaCheckboxList_base {
@@ -8,7 +8,7 @@ import { customElement, property, query } from "lit/decorators.js";
8
8
  import { html, LitElement } from "lit";
9
9
  import { classMap } from "lit/directives/class-map.js";
10
10
  import { FormLabelMixin } from "../../../mixins/form-label.mixin.js";
11
- import { FormMixin } from "../../../mixins/form.mixin.js";
11
+ import { FormMixin, hasErrorDisplayChange, } from "../../../mixins/form.mixin.js";
12
12
  import { DisabledMixin } from "../../../mixins/disabled.mixin.js";
13
13
  import { ValidatorsMixin } from "../../../mixins/validators.mixin.js";
14
14
  import { ReadonlyMixin } from "../../../mixins/readonly.mixin.js";
@@ -78,13 +78,16 @@ const Base = DisabledMixin(ValidatorsMixin(LitElement));
78
78
  * @prop {boolean} [inline=false] - Whether the list's elements are displayed in a row
79
79
  * @prop {string[]} [defaultValue] - The default selected values
80
80
  * @attr {string} [default-value] - The default selected values, as a comma-separated string
81
- * @prop {boolean} [hideError=false] - Whether the errors are hidden
81
+ * @prop {boolean} [hideError=false] - Whether the errors are hidden. The hint stays visible
82
+ * @prop {string} [error] - An error computed outside the field, by the form or by the server. While set, the field is invalid and shows this message right away
82
83
  * @attr {boolean} [hide-error=false] - Whether the errors are hidden
83
84
  * @prop {Array<import('../../../types/form-validators.type.js').Validators<string[]>>} validators - A list of validation rules applied to the group's selected values
84
85
  * @fires {ChangeEvent} eunchange - Fired whenever the group's selection changes
85
86
  * @cssprop [--checkbox-list-gap] - Sets the gap between the labels and the list
86
87
  * @cssprop [--checkbox-list-options-gap] - Sets the gap between the checkboxes in the list
87
88
  * @cssprop [--checkbox-list-error-color] - Sets the color of the list's error state
89
+ * @cssprop [--field-label-font-size] - Sets the font size of the label
90
+ * @cssprop [--field-message-font-size] - Sets the font size of the hint, error messages and instructions
88
91
  * @element eun-checkbox-list
89
92
  */
90
93
  let EunomiaCheckboxList = class EunomiaCheckboxList extends FormLabelMixin(ReadonlyMixin(FormMixin(Base))) {
@@ -127,7 +130,7 @@ let EunomiaCheckboxList = class EunomiaCheckboxList extends FormLabelMixin(Reado
127
130
  * Setter allowing to check every child whose value is in the given list.
128
131
  */
129
132
  set value(values) {
130
- this.updateComplete.then(() => {
133
+ void this.updateComplete.then(() => {
131
134
  this.fields.forEach((field) => {
132
135
  field.checked = values.includes(field.value);
133
136
  });
@@ -172,10 +175,11 @@ let EunomiaCheckboxList = class EunomiaCheckboxList extends FormLabelMixin(Reado
172
175
  field.readonly = this.readonly;
173
176
  });
174
177
  }
175
- if (_changedProperties.has("valid") ||
176
- _changedProperties.has("hideError")) {
178
+ if (hasErrorDisplayChange(_changedProperties)) {
179
+ const { showError } = this;
177
180
  this.fields.forEach((field) => {
178
- field.valid = this.valid && !this.hideError;
181
+ field.valid = !showError;
182
+ field.validationRequested = showError;
179
183
  });
180
184
  }
181
185
  if (_changedProperties.has("label") && !this.hasAttribute("aria-label")) {
@@ -209,7 +213,7 @@ let EunomiaCheckboxList = class EunomiaCheckboxList extends FormLabelMixin(Reado
209
213
  */
210
214
  formResetCallback() {
211
215
  super.formResetCallback?.();
212
- this.updateComplete.then(() => {
216
+ void this.updateComplete.then(() => {
213
217
  this.sendChangeEvent();
214
218
  });
215
219
  }
@@ -30,7 +30,8 @@ declare const EunomiaCheckboxMixinBase: Constructor<EunomiaCheckboxBase>;
30
30
  * @prop {boolean} [disabled=false] - Whether the checkbox is disabled
31
31
  * @prop {boolean} [readonly=false] - Whether the checkbox is read only
32
32
  * @prop {boolean} [indeterminate=false] - Whether the checkbox value is indeterminate
33
- * @prop {boolean} [hideError=false] - Whether the error message is hidden
33
+ * @prop {boolean} [hideError=false] - Whether the errors are hidden. The hint stays visible
34
+ * @prop {string} [error] - An error computed outside the field, by the form or by the server. While set, the field is invalid and shows this message right away
34
35
  * @attr {boolean} [hide-error=false] - Whether the error message is hidden
35
36
  * @prop {boolean} [required=false] - Whether a selection is required
36
37
  * @prop {string} name - The name of the checkbox field
@@ -52,6 +53,8 @@ declare const EunomiaCheckboxMixinBase: Constructor<EunomiaCheckboxBase>;
52
53
  * @cssprop [--checkbox-border-color] - Sets the border color of the checkbox
53
54
  * @cssprop [--checkbox-border-radius] - Sets the corner radius of the box
54
55
  * @cssprop [--checkbox-focus-outline-color] - Sets the color of the focus outline used for keyboard navigation
56
+ * @cssprop [--field-label-font-size] - Sets the font size of the label
57
+ * @cssprop [--field-message-font-size] - Sets the font size of the hint, error messages and instructions
55
58
  * @fires click - Fired when the checkbox is clicked, including while indeterminate
56
59
  * @fires {ChangeEvent} eunchange - Fired when the checkbox's checked state changes
57
60
  * @element eun-checkbox
@@ -33,7 +33,8 @@ const EunomiaCheckboxMixinBase = CheckMixin(ReadonlyMixin(FormMixin(DisabledMixi
33
33
  * @prop {boolean} [disabled=false] - Whether the checkbox is disabled
34
34
  * @prop {boolean} [readonly=false] - Whether the checkbox is read only
35
35
  * @prop {boolean} [indeterminate=false] - Whether the checkbox value is indeterminate
36
- * @prop {boolean} [hideError=false] - Whether the error message is hidden
36
+ * @prop {boolean} [hideError=false] - Whether the errors are hidden. The hint stays visible
37
+ * @prop {string} [error] - An error computed outside the field, by the form or by the server. While set, the field is invalid and shows this message right away
37
38
  * @attr {boolean} [hide-error=false] - Whether the error message is hidden
38
39
  * @prop {boolean} [required=false] - Whether a selection is required
39
40
  * @prop {string} name - The name of the checkbox field
@@ -55,6 +56,8 @@ const EunomiaCheckboxMixinBase = CheckMixin(ReadonlyMixin(FormMixin(DisabledMixi
55
56
  * @cssprop [--checkbox-border-color] - Sets the border color of the checkbox
56
57
  * @cssprop [--checkbox-border-radius] - Sets the corner radius of the box
57
58
  * @cssprop [--checkbox-focus-outline-color] - Sets the color of the focus outline used for keyboard navigation
59
+ * @cssprop [--field-label-font-size] - Sets the font size of the label
60
+ * @cssprop [--field-message-font-size] - Sets the font size of the hint, error messages and instructions
58
61
  * @fires click - Fired when the checkbox is clicked, including while indeterminate
59
62
  * @fires {ChangeEvent} eunchange - Fired when the checkbox's checked state changes
60
63
  * @element eun-checkbox
@@ -42,7 +42,7 @@ const base = css `
42
42
  );
43
43
  --_icon: transparent;
44
44
  font-family: var(--eun-font-family, "Mulish", sans-serif);
45
- font-size: var(--eun-font-size-s, 14px);
45
+ font-size: var(--field-label-font-size, var(--eun-font-size-s, 14px));
46
46
  display: inline-flex;
47
47
  align-items: center;
48
48
  outline: none;
@@ -167,7 +167,7 @@ const base = css `
167
167
  align-items: center;
168
168
  justify-content: center;
169
169
  box-sizing: border-box;
170
- transition: all 0.15s ease;
170
+ transition: all var(--eun-duration-s, 150ms) var(--eun-easing-default, ease);
171
171
  transform: translateY(calc((var(--_boxSize) + 2px - 1em) / 2));
172
172
  outline: 0px solid transparent;
173
173
  margin-block: -1px;
@@ -5,7 +5,7 @@ import { ValidatorsMixinInterface } from "../../../mixins/validators.mixin.js";
5
5
  import { FormMixinInterface } from "../../../mixins/form.mixin.js";
6
6
  import { FormLabelMixinInterface } from "../../../mixins/form-label.mixin.js";
7
7
  import { EditableMixinInterface } from "../../../mixins/editable.mixin.js";
8
- import { FieldVariantMixinInterface } from "../../../mixins/field-variant.mixin.js";
8
+ import { FieldAppearanceMixinInterface } from "../../../mixins/field-appearance.mixin.js";
9
9
  import { AnchorPositionMixinInterface } from "../../../mixins/anchor-position.mixin.js";
10
10
  import { Constructor } from "../../../utils/constructor.type.js";
11
11
  /**
@@ -17,7 +17,7 @@ export declare const EunomiaColorPickerTagName = "eun-color-picker";
17
17
  * interface elements.
18
18
  * @internal
19
19
  */
20
- type EunomiaColorPickerBase = LitElement & DisabledMixinInterface & ReadonlyMixinInterface & ValidatorsMixinInterface<string> & FormMixinInterface<string> & EditableMixinInterface & FormLabelMixinInterface & FieldVariantMixinInterface & AnchorPositionMixinInterface;
20
+ type EunomiaColorPickerBase = LitElement & DisabledMixinInterface & ReadonlyMixinInterface & ValidatorsMixinInterface<string> & FormMixinInterface<string> & EditableMixinInterface & FormLabelMixinInterface & FieldAppearanceMixinInterface & AnchorPositionMixinInterface;
21
21
  declare const EunomiaColorPickerMixinBase: Constructor<EunomiaColorPickerBase>;
22
22
  /**
23
23
  * A field for picking a color, as a `#rrggbb` hex string. Declare preset
@@ -54,14 +54,15 @@ declare const EunomiaColorPickerMixinBase: Constructor<EunomiaColorPickerBase>;
54
54
  * @prop {string} value - The current color, as a `#rrggbb` hex string
55
55
  * @prop {string} defaultValue - The default value applied when the field connects, and restored on form reset
56
56
  * @attr {string} [default-value] - The default value
57
- * @prop {'outline' | 'fill' | 'underline'} [variant='outline'] - The visual variant to apply to the field
57
+ * @prop {'outline' | 'flat' | 'underline'} [appearance='outline'] - How the field's surface is drawn: a bordered box, a muted background with no border, or a bottom border only
58
58
  * @prop {string} label - The title label of the field, rendered through the label component
59
59
  * @prop {string} instructions - Instructions displayed below the label
60
60
  * @prop {string} name - The field name
61
61
  * @prop {boolean} [disabled=false] - Whether the field is disabled
62
62
  * @prop {boolean} [readonly=false] - Whether the field is read only
63
63
  * @prop {boolean} [required=false] - Whether a color is required
64
- * @prop {boolean} [hideError=false] - Whether the errors are hidden
64
+ * @prop {boolean} [hideError=false] - Whether the errors are hidden. The hint stays visible
65
+ * @prop {string} [error] - An error computed outside the field, by the form or by the server. While set, the field is invalid and shows this message right away
65
66
  * @prop {Array<Validators<string>>} validators - The list of validation rules applied to the field value
66
67
  * @prop {boolean} [readonlyAvailable=false] - Whether the field can switch between a static display and an editable one
67
68
  * @attr {boolean} [readonly-available=false] - Whether the field can switch between a static display and an editable one
@@ -95,6 +96,8 @@ declare const EunomiaColorPickerMixinBase: Constructor<EunomiaColorPickerBase>;
95
96
  * @cssprop [--field-border-color-focus] - Sets the border color on focus
96
97
  * @cssprop [--field-border-radius] - Sets the corner radius of the field
97
98
  * @cssprop [--field-padding] - Sets the padding of the field
99
+ * @cssprop [--field-padding-block] - Sets the vertical padding, as one length applied to both sides. Ignored when --field-padding is set
100
+ * @cssprop [--field-padding-inline] - Sets the horizontal padding, as one length applied to both sides. Ignored when --field-padding is set
98
101
  * @cssprop [--field-text-color] - Sets the text color of the field
99
102
  * @cssprop [--field-placeholder-color] - Sets the color of the empty-value text
100
103
  * @cssprop [--field-icon-color] - Sets the color of the dropdown arrow
@@ -108,6 +111,9 @@ declare const EunomiaColorPickerMixinBase: Constructor<EunomiaColorPickerBase>;
108
111
  * @cssprop [--color-picker-swatch-size=20px] - Sets the diameter of every swatch
109
112
  * @cssprop [--eun-viewport-inset-top] - Reserves space, such as a page's sticky header height, that the dropdown panel keeps clear of at the top of the viewport
110
113
  * @cssprop [--eun-viewport-inset-bottom] - The same as eun-viewport-inset-top, reserved at the bottom of the viewport
114
+ * @cssprop [--field-font-size] - Sets the font size of the field's value and placeholder
115
+ * @cssprop [--field-label-font-size] - Sets the font size of the label
116
+ * @cssprop [--field-message-font-size] - Sets the font size of the hint, error messages and instructions
111
117
  * @element eun-color-picker
112
118
  */
113
119
  export declare class EunomiaColorPicker extends EunomiaColorPickerMixinBase {
@@ -15,7 +15,7 @@ import { ValidatorsMixin, } from "../../../mixins/validators.mixin.js";
15
15
  import { FormMixin } from "../../../mixins/form.mixin.js";
16
16
  import { FormLabelMixin, } from "../../../mixins/form-label.mixin.js";
17
17
  import { EditableMixin, } from "../../../mixins/editable.mixin.js";
18
- import { FieldVariantMixin, } from "../../../mixins/field-variant.mixin.js";
18
+ import { FieldAppearanceMixin, } from "../../../mixins/field-appearance.mixin.js";
19
19
  import { AnchorPositionMixin, } from "../../../mixins/anchor-position.mixin.js";
20
20
  import { ChangeEvent } from "../../../events/change.event.js";
21
21
  import { formLabelsStyles } from "../shared-styles/form-labels.styles.js";
@@ -23,6 +23,7 @@ import { colorPickerStyles } from "./color-picker.styles.js";
23
23
  import { isWebKit } from "../../../utils/browser.utils.js";
24
24
  import { normalizeHexColor } from "../../../utils/color.utils.js";
25
25
  import { parseListboxOptions, } from "../../../utils/listbox-options.utils.js";
26
+ import { resolveDurationMs, resolveEasing, } from "../../../utils/motion.utils.js";
26
27
  /**
27
28
  * Tag name of the color picker component.
28
29
  */
@@ -32,7 +33,7 @@ export const EunomiaColorPickerTagName = "eun-color-picker";
32
33
  * @internal
33
34
  */
34
35
  const Base = DisabledMixin(ValidatorsMixin(LitElement));
35
- const EunomiaColorPickerMixinBase = AnchorPositionMixin(FieldVariantMixin(FormLabelMixin(ReadonlyMixin(EditableMixin(FormMixin(Base))))));
36
+ const EunomiaColorPickerMixinBase = AnchorPositionMixin(FieldAppearanceMixin(FormLabelMixin(ReadonlyMixin(EditableMixin(FormMixin(Base))))));
36
37
  /**
37
38
  * A field for picking a color, as a `#rrggbb` hex string. Declare preset
38
39
  * swatches as light DOM `option` children, exactly like `eun-select` does
@@ -68,14 +69,15 @@ const EunomiaColorPickerMixinBase = AnchorPositionMixin(FieldVariantMixin(FormLa
68
69
  * @prop {string} value - The current color, as a `#rrggbb` hex string
69
70
  * @prop {string} defaultValue - The default value applied when the field connects, and restored on form reset
70
71
  * @attr {string} [default-value] - The default value
71
- * @prop {'outline' | 'fill' | 'underline'} [variant='outline'] - The visual variant to apply to the field
72
+ * @prop {'outline' | 'flat' | 'underline'} [appearance='outline'] - How the field's surface is drawn: a bordered box, a muted background with no border, or a bottom border only
72
73
  * @prop {string} label - The title label of the field, rendered through the label component
73
74
  * @prop {string} instructions - Instructions displayed below the label
74
75
  * @prop {string} name - The field name
75
76
  * @prop {boolean} [disabled=false] - Whether the field is disabled
76
77
  * @prop {boolean} [readonly=false] - Whether the field is read only
77
78
  * @prop {boolean} [required=false] - Whether a color is required
78
- * @prop {boolean} [hideError=false] - Whether the errors are hidden
79
+ * @prop {boolean} [hideError=false] - Whether the errors are hidden. The hint stays visible
80
+ * @prop {string} [error] - An error computed outside the field, by the form or by the server. While set, the field is invalid and shows this message right away
79
81
  * @prop {Array<Validators<string>>} validators - The list of validation rules applied to the field value
80
82
  * @prop {boolean} [readonlyAvailable=false] - Whether the field can switch between a static display and an editable one
81
83
  * @attr {boolean} [readonly-available=false] - Whether the field can switch between a static display and an editable one
@@ -109,6 +111,8 @@ const EunomiaColorPickerMixinBase = AnchorPositionMixin(FieldVariantMixin(FormLa
109
111
  * @cssprop [--field-border-color-focus] - Sets the border color on focus
110
112
  * @cssprop [--field-border-radius] - Sets the corner radius of the field
111
113
  * @cssprop [--field-padding] - Sets the padding of the field
114
+ * @cssprop [--field-padding-block] - Sets the vertical padding, as one length applied to both sides. Ignored when --field-padding is set
115
+ * @cssprop [--field-padding-inline] - Sets the horizontal padding, as one length applied to both sides. Ignored when --field-padding is set
112
116
  * @cssprop [--field-text-color] - Sets the text color of the field
113
117
  * @cssprop [--field-placeholder-color] - Sets the color of the empty-value text
114
118
  * @cssprop [--field-icon-color] - Sets the color of the dropdown arrow
@@ -122,6 +126,9 @@ const EunomiaColorPickerMixinBase = AnchorPositionMixin(FieldVariantMixin(FormLa
122
126
  * @cssprop [--color-picker-swatch-size=20px] - Sets the diameter of every swatch
123
127
  * @cssprop [--eun-viewport-inset-top] - Reserves space, such as a page's sticky header height, that the dropdown panel keeps clear of at the top of the viewport
124
128
  * @cssprop [--eun-viewport-inset-bottom] - The same as eun-viewport-inset-top, reserved at the bottom of the viewport
129
+ * @cssprop [--field-font-size] - Sets the font size of the field's value and placeholder
130
+ * @cssprop [--field-label-font-size] - Sets the font size of the label
131
+ * @cssprop [--field-message-font-size] - Sets the font size of the hint, error messages and instructions
125
132
  * @element eun-color-picker
126
133
  */
127
134
  let EunomiaColorPicker = class EunomiaColorPicker extends EunomiaColorPickerMixinBase {
@@ -449,18 +456,7 @@ let EunomiaColorPicker = class EunomiaColorPicker extends EunomiaColorPickerMixi
449
456
  window.matchMedia("(prefers-reduced-motion: reduce)").matches) {
450
457
  return 0;
451
458
  }
452
- const raw = getComputedStyle(el)
453
- .getPropertyValue("--field-listbox-transition-duration")
454
- .trim();
455
- if (raw) {
456
- const parsed = raw.endsWith("ms")
457
- ? Number.parseFloat(raw)
458
- : Number.parseFloat(raw) * 1000;
459
- if (Number.isFinite(parsed) && parsed >= 0) {
460
- return parsed;
461
- }
462
- }
463
- return 200;
459
+ return resolveDurationMs(el, "--field-listbox-transition-duration", "m", 200);
464
460
  }
465
461
  /**
466
462
  * Plays the fade/scaleY-in, replacing any {@link listboxAnimation}
@@ -477,7 +473,7 @@ let EunomiaColorPicker = class EunomiaColorPicker extends EunomiaColorPickerMixi
477
473
  this.listboxAnimation = listbox.animate([
478
474
  { opacity: 0, transform: "scaleY(0.01)" },
479
475
  { opacity: 1, transform: "scaleY(1)" },
480
- ], { duration, easing: "ease", fill: "forwards" });
476
+ ], { duration, easing: resolveEasing(listbox), fill: "forwards" });
481
477
  }
482
478
  /**
483
479
  * Closes the dropdown panel, if open. All state cleanup happens in
@@ -509,7 +505,7 @@ let EunomiaColorPicker = class EunomiaColorPicker extends EunomiaColorPickerMixi
509
505
  const animation = listbox.animate([
510
506
  { opacity: 1, transform: "scaleY(1)" },
511
507
  { opacity: 0, transform: "scaleY(0.01)" },
512
- ], { duration, easing: "ease", fill: "forwards" });
508
+ ], { duration, easing: resolveEasing(listbox), fill: "forwards" });
513
509
  this.listboxAnimation = animation;
514
510
  animation.finished
515
511
  .then(() => {
@@ -649,7 +645,7 @@ let EunomiaColorPicker = class EunomiaColorPicker extends EunomiaColorPickerMixi
649
645
  <eun-button
650
646
  class="confirm"
651
647
  size="s"
652
- variant="primary"
648
+ color="primary"
653
649
  appearance="default"
654
650
  rounded
655
651
  type="button"
@@ -775,9 +771,10 @@ let EunomiaColorPicker = class EunomiaColorPicker extends EunomiaColorPickerMixi
775
771
  type="text"
776
772
  id="hex-input"
777
773
  aria-label=${this.hexInputLabel}
778
- aria-invalid=${!this.hideError &&
774
+ aria-invalid=${(!this.hideError &&
779
775
  !this.disabled &&
780
- this.hexDraftInvalid}
776
+ this.hexDraftInvalid) ||
777
+ this.showError}
781
778
  ?disabled=${this.disabled}
782
779
  ?readonly=${this.readonly}
783
780
  .value=${live(this.hexDraft)}
@@ -851,9 +848,10 @@ let EunomiaColorPicker = class EunomiaColorPicker extends EunomiaColorPickerMixi
851
848
  aria-label=${this.label || this.hexInputLabel}
852
849
  aria-describedby=${hasDescription ? "description" : nothing}
853
850
  aria-required=${this.required ? "true" : "false"}
854
- aria-invalid=${!this.hideError &&
851
+ aria-invalid=${(!this.hideError &&
855
852
  !this.disabled &&
856
- (this.hexDraftInvalid || !this.valid)}
853
+ this.hexDraftInvalid) ||
854
+ this.showError}
857
855
  ?disabled=${this.disabled}
858
856
  ?readonly=${this.readonly}
859
857
  .value=${live(this.hexDraft)}
@@ -915,7 +913,7 @@ let EunomiaColorPicker = class EunomiaColorPicker extends EunomiaColorPickerMixi
915
913
  aria-describedby=${hasDescription ? "description" : nothing}
916
914
  ?disabled=${this.disabled}
917
915
  aria-required=${this.required ? "true" : "false"}
918
- aria-invalid=${!this.hideError && !this.disabled && !this.valid}
916
+ aria-invalid=${this.showError}
919
917
  @click=${this.handleFieldActivate}
920
918
  @keydown=${this.handleFieldKeydown}
921
919
  >
@@ -988,7 +986,7 @@ let EunomiaColorPicker = class EunomiaColorPicker extends EunomiaColorPickerMixi
988
986
  aria-label=${ifDefined(this.triggerAccessibleLabel)}
989
987
  aria-describedby=${hasDescription ? "description" : nothing}
990
988
  ?disabled=${this.disabled || this.readonly}
991
- aria-invalid=${!this.hideError && !this.disabled && !this.valid}
989
+ aria-invalid=${this.showError}
992
990
  .value=${live(this.value || "#000000")}
993
991
  @input=${this.handleNativeInput}
994
992
  />