@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
@@ -49,14 +49,16 @@ export const EunomiaCollapseTagName = "eun-collapse";
49
49
  * trigger, so it's never dropped into now-hidden content.
50
50
  *
51
51
  * @slot [default] - The panel's content, shown when expanded, combining with richText if both are set. Only the panel's own padding and text color apply to it, with no margins, typography, or list styles forced onto slotted content
52
+ * @slot [heading] - The trigger's heading as light DOM content, so it's part of the server-rendered HTML. Falls back to heading when empty. Keep it to text and inline phrasing, since it renders inside the trigger button
52
53
  * @slot [icon] - Replaces the leading icon entirely with any content, not just an icon element. Falls back to icon when empty
53
- * @slot [tag] - Replaces the trigger's tag entirely, for example with a custom colored tag. Falls back to the plain text tag when empty
54
+ * @slot [subheading] - The secondary text under the heading as light DOM content, so it's part of the server-rendered HTML. Falls back to subheading when empty
55
+ * @slot [tag] - The trigger's tag as light DOM content. Plain elements, such as a span of text, keep the default tag style, while a custom element, such as a colored eun-tag, replaces the tag entirely. Falls back to tag when empty
54
56
  * @slot [chevron] - Replaces the trailing indicator entirely with any content, not just an icon element. Falls back to chevronIcon when empty. Whatever ends up there still rotates while open, unless that rotation is set to zero
55
- * @prop {string} heading - The trigger's heading text
56
- * @prop {string} [subheading] - Optional secondary text shown under the heading
57
+ * @prop {string} heading - The trigger's heading text. Ignored once something is slotted into heading
58
+ * @prop {string} [subheading] - Optional secondary text shown under the heading. Ignored once something is slotted into subheading
57
59
  * @prop {2 | 3 | 4 | 5 | 6} [level] - Wraps the trigger in a heading element of this level, so screen reader users can jump between items, such as several FAQ entries, by heading. Matches the page's own outline, so it's opt-in rather than assumed
58
60
  * @prop {import('../icon/icon.type.js').EunomiaIconName} [icon] - An optional leading icon for the trigger. Ignored once the icon slot has content
59
- * @prop {string} [tag] - An optional short label rendered as a default tag in the trigger, such as a count or category. Use the tag slot instead for a custom colored badge
61
+ * @prop {string} [tag] - An optional short label rendered as a default tag in the trigger, such as a count or category. Ignored once something is slotted into tag
60
62
  * @prop {import('../icon/icon.type.js').EunomiaIconName} [chevronIcon='add'] - The trailing indicator icon. Ignored once the chevron slot has content. Pair a non-default icon with the chevron rotation custom property, since the default plus-sign-to-cross rotation doesn't suit every icon
61
63
  * @prop {string} [richText] - Lightweight formatted content rendered above the default slot. Supports simple lists, links, bold, and italic text
62
64
  * @prop {boolean} [open=false] - Whether the panel is currently expanded
@@ -78,7 +80,16 @@ export const EunomiaCollapseTagName = "eun-collapse";
78
80
  * @cssprop [--collapse-focus-outline-color] - Sets the focus outline color of the trigger
79
81
  * @cssprop [--collapse-disabled-opacity] - Sets the opacity while disabled
80
82
  * @cssprop [--collapse-border-radius] - Sets the corner radius of the trigger and panel
81
- * @cssprop [--collapse-padding] - Sets the padding of the trigger and panel
83
+ * @cssprop [--collapse-padding] - Sets the padding of the trigger, and of the panel unless --collapse-panel-padding is set
84
+ * @cssprop [--collapse-padding-block] - Sets the vertical padding, as one length applied to both sides. Ignored when --collapse-padding is set
85
+ * @cssprop [--collapse-padding-inline] - Sets the horizontal padding, as one length applied to both sides. Ignored when --collapse-padding is set
86
+ * @cssprop [--collapse-panel-padding] - Sets the padding of the panel, falling back to the trigger's padding
87
+ * @cssprop [--collapse-panel-padding-block] - Sets the vertical padding of the panel, as one length applied to both sides. Ignored when --collapse-panel-padding or --collapse-padding is set
88
+ * @cssprop [--collapse-panel-padding-inline] - Sets the horizontal padding of the panel, as one length applied to both sides. Ignored when --collapse-panel-padding or --collapse-padding is set
89
+ * @cssprop [--collapse-heading-font-size] - Sets the font size of the heading
90
+ * @cssprop [--collapse-subheading-font-size] - Sets the font size of the subheading
91
+ * @cssprop [--collapse-divider-width] - Sets the width of the line between the trigger and the panel. Zero removes it
92
+ * @cssprop [--collapse-divider-color] - Sets the color of the line between the trigger and the panel
82
93
  * @cssprop [--collapse-gap] - Sets the gap between the trigger's leading icon, heading, and actions
83
94
  * @cssprop [--collapse-panel-gap] - Sets the gap between the trigger and the panel while open, with independent set
84
95
  * @cssprop [--collapse-transition-duration] - Sets the duration of the open, close, and color transitions
@@ -143,8 +154,9 @@ let EunomiaCollapse = class EunomiaCollapse extends LitElement {
143
154
  this.openedViaFocus = false;
144
155
  /**
145
156
  * Re-renders when a named slot's assigned content changes, so the
146
- * `icon`/`tag`/`chevron` prop fallback correctly appears/disappears as
147
- * content is slotted in or removed after the initial render.
157
+ * `icon`/`subheading`/`tag`/`chevron` prop fallback correctly
158
+ * appears/disappears as content is slotted in or removed after the
159
+ * initial render.
148
160
  * @private
149
161
  */
150
162
  this.handleSlotChange = () => {
@@ -164,7 +176,8 @@ let EunomiaCollapse = class EunomiaCollapse extends LitElement {
164
176
  * @private
165
177
  */
166
178
  this.handlePanelTransitionEnd = (event) => {
167
- if (event.target !== this.panelEl || event.propertyName !== "grid-template-rows") {
179
+ if (event.target !== this.panelEl ||
180
+ event.propertyName !== "grid-template-rows") {
168
181
  return;
169
182
  }
170
183
  this.panelEl?.removeEventListener("transitionend", this.handlePanelTransitionEnd);
@@ -364,6 +377,35 @@ let EunomiaCollapse = class EunomiaCollapse extends LitElement {
364
377
  return trigger;
365
378
  }
366
379
  }
380
+ /**
381
+ * Renders the `tag` slot. Plain elements slotted into it (a span of
382
+ * text, typically) are wrapped in the default tag, so server-rendered
383
+ * text keeps the tag style ; a custom element (a colored `eun-tag`, a
384
+ * badge, ...) replaces the tag entirely instead. Read from the light DOM
385
+ * rather than the slot's assigned elements, so the first render already
386
+ * picks the right shape before the slot exists.
387
+ * @private
388
+ */
389
+ renderTag() {
390
+ const slotted = [
391
+ ...this.querySelectorAll(':scope > [slot="tag"]'),
392
+ ];
393
+ const replaced = slotted.some((el) => el.localName.includes("-"));
394
+ const slot = html `<slot name="tag" @slotchange=${this.handleSlotChange}
395
+ >${this.tag}</slot
396
+ >`;
397
+ if (replaced) {
398
+ return slot;
399
+ }
400
+ if (!this.tag && !slotted.length) {
401
+ return html `<slot
402
+ name="tag"
403
+ class="hidden"
404
+ @slotchange=${this.handleSlotChange}
405
+ ></slot>`;
406
+ }
407
+ return html `<eun-tag color="primary" size="s" rounded>${slot}</eun-tag>`;
408
+ }
367
409
  render() {
368
410
  const trigger = html `
369
411
  <button
@@ -388,24 +430,22 @@ let EunomiaCollapse = class EunomiaCollapse extends LitElement {
388
430
  : nothing}
389
431
  </slot>
390
432
  <span id="heading-group">
391
- <span id="heading">${this.heading}</span>
392
- ${this.subheading
393
- ? html `<span id="subheading">${this.subheading}</span>`
394
- : nothing}
433
+ <span id="heading"
434
+ ><slot name="heading">${this.heading}</slot></span
435
+ >
436
+ <span
437
+ id="subheading"
438
+ class=${classMap({
439
+ hidden: !this.subheading && !this.subheadingSlotEls.length,
440
+ })}
441
+ ><slot name="subheading" @slotchange=${this.handleSlotChange}
442
+ >${this.subheading}</slot
443
+ ></span
444
+ >
395
445
  </span>
396
446
  </span>
397
447
  <span id="actions">
398
- <slot
399
- name="tag"
400
- class=${classMap({ hidden: !this.tag && !this.tagSlotEls.length })}
401
- @slotchange=${this.handleSlotChange}
402
- >
403
- ${this.tag
404
- ? html `<eun-tag color="primary" size="s" rounded
405
- >${this.tag}</eun-tag
406
- >`
407
- : nothing}
408
- </slot>
448
+ ${this.renderTag()}
409
449
  <span id="chevron">
410
450
  <slot name="chevron" @slotchange=${this.handleSlotChange}>
411
451
  ${this.chevronSlotEls.length
@@ -497,8 +537,8 @@ __decorate([
497
537
  queryAssignedElements({ slot: "icon" })
498
538
  ], EunomiaCollapse.prototype, "iconSlotEls", void 0);
499
539
  __decorate([
500
- queryAssignedElements({ slot: "tag" })
501
- ], EunomiaCollapse.prototype, "tagSlotEls", void 0);
540
+ queryAssignedElements({ slot: "subheading" })
541
+ ], EunomiaCollapse.prototype, "subheadingSlotEls", void 0);
502
542
  __decorate([
503
543
  queryAssignedElements({ slot: "chevron" })
504
544
  ], EunomiaCollapse.prototype, "chevronSlotEls", void 0);
@@ -17,7 +17,16 @@
17
17
  * [--collapse-focus-outline-color] - Set a custom focus outline color for the trigger
18
18
  * [--collapse-disabled-opacity] - Set a custom opacity while disabled
19
19
  * [--collapse-border-radius] - Set a custom border radius for the trigger and panel
20
- * [--collapse-padding] - Set a custom padding for the trigger and panel
20
+ * [--collapse-padding] - Set a custom padding for the trigger, and for the panel unless --collapse-panel-padding is set
21
+ * [--collapse-padding-block] - Set a custom vertical padding, as one length applied to both sides. Ignored when --collapse-padding is set
22
+ * [--collapse-padding-inline] - Set a custom horizontal padding, as one length applied to both sides. Ignored when --collapse-padding is set
23
+ * [--collapse-panel-padding] - Set a custom padding for the panel, falling back to the trigger's padding
24
+ * [--collapse-panel-padding-block] - Set a custom vertical padding for the panel, as one length applied to both sides. Ignored when --collapse-panel-padding or --collapse-padding is set
25
+ * [--collapse-panel-padding-inline] - Set a custom horizontal padding for the panel, as one length applied to both sides. Ignored when --collapse-panel-padding or --collapse-padding is set
26
+ * [--collapse-heading-font-size] - Set a custom font size for the heading
27
+ * [--collapse-subheading-font-size] - Set a custom font size for the subheading
28
+ * [--collapse-divider-width] - Set a custom width for the line between the trigger and the panel. 0 removes it
29
+ * [--collapse-divider-color] - Set a custom color for the line between the trigger and the panel
21
30
  * [--collapse-gap] - Set a custom gap between the trigger's leading icon, heading, and actions
22
31
  * [--collapse-panel-gap] - Set a custom gap between the trigger and the panel while open, with `independent` set
23
32
  * [--collapse-transition-duration] - Set a custom duration for the open/close and color transitions
@@ -18,7 +18,16 @@ import { css } from "lit";
18
18
  * [--collapse-focus-outline-color] - Set a custom focus outline color for the trigger
19
19
  * [--collapse-disabled-opacity] - Set a custom opacity while disabled
20
20
  * [--collapse-border-radius] - Set a custom border radius for the trigger and panel
21
- * [--collapse-padding] - Set a custom padding for the trigger and panel
21
+ * [--collapse-padding] - Set a custom padding for the trigger, and for the panel unless --collapse-panel-padding is set
22
+ * [--collapse-padding-block] - Set a custom vertical padding, as one length applied to both sides. Ignored when --collapse-padding is set
23
+ * [--collapse-padding-inline] - Set a custom horizontal padding, as one length applied to both sides. Ignored when --collapse-padding is set
24
+ * [--collapse-panel-padding] - Set a custom padding for the panel, falling back to the trigger's padding
25
+ * [--collapse-panel-padding-block] - Set a custom vertical padding for the panel, as one length applied to both sides. Ignored when --collapse-panel-padding or --collapse-padding is set
26
+ * [--collapse-panel-padding-inline] - Set a custom horizontal padding for the panel, as one length applied to both sides. Ignored when --collapse-panel-padding or --collapse-padding is set
27
+ * [--collapse-heading-font-size] - Set a custom font size for the heading
28
+ * [--collapse-subheading-font-size] - Set a custom font size for the subheading
29
+ * [--collapse-divider-width] - Set a custom width for the line between the trigger and the panel. 0 removes it
30
+ * [--collapse-divider-color] - Set a custom color for the line between the trigger and the panel
22
31
  * [--collapse-gap] - Set a custom gap between the trigger's leading icon, heading, and actions
23
32
  * [--collapse-panel-gap] - Set a custom gap between the trigger and the panel while open, with `independent` set
24
33
  * [--collapse-transition-duration] - Set a custom duration for the open/close and color transitions
@@ -72,8 +81,29 @@ export const collapseStyles = css `
72
81
  --collapse-border-radius,
73
82
  var(--eun-border-radius-l, 16px)
74
83
  );
75
- --_padding: var(--collapse-padding, var(--eun-space-m, 16px));
76
- --_transitionDuration: var(--collapse-transition-duration, 0.3s);
84
+ --_padding: var(
85
+ --collapse-padding,
86
+ var(--collapse-padding-block, var(--eun-space-m, 16px))
87
+ var(--collapse-padding-inline, var(--eun-space-m, 16px))
88
+ );
89
+ --_panelPadding: var(
90
+ --collapse-panel-padding,
91
+ var(
92
+ --collapse-padding,
93
+ var(
94
+ --collapse-panel-padding-block,
95
+ var(--collapse-padding-block, var(--eun-space-m, 16px))
96
+ )
97
+ var(
98
+ --collapse-panel-padding-inline,
99
+ var(--collapse-padding-inline, var(--eun-space-m, 16px))
100
+ )
101
+ )
102
+ );
103
+ --_transitionDuration: var(
104
+ --collapse-transition-duration,
105
+ var(--eun-duration-xl, 300ms)
106
+ );
77
107
  }
78
108
  #header {
79
109
  display: flex;
@@ -93,10 +123,11 @@ export const collapseStyles = css `
93
123
  cursor: pointer;
94
124
  outline: 2px solid transparent;
95
125
  transition:
96
- color var(--_transitionDuration) ease-out,
97
- background-color var(--_transitionDuration) ease-out,
98
- outline-color var(--_transitionDuration) ease-out,
99
- border-radius var(--_transitionDuration) ease-out
126
+ color var(--_transitionDuration) var(--eun-easing-out, ease-out),
127
+ background-color var(--_transitionDuration)
128
+ var(--eun-easing-out, ease-out),
129
+ outline-color var(--_transitionDuration) var(--eun-easing-out, ease-out),
130
+ border-radius var(--_transitionDuration) var(--eun-easing-out, ease-out)
100
131
  var(--_transitionDuration);
101
132
  }
102
133
  #header eun-icon {
@@ -138,13 +169,29 @@ export const collapseStyles = css `
138
169
  #heading {
139
170
  overflow: hidden;
140
171
  text-overflow: ellipsis;
141
- font-size: var(--eun-font-size-s, 14px);
172
+ font-size: var(--collapse-heading-font-size, var(--eun-font-size-s, 14px));
173
+ }
174
+ #heading ::slotted(*) {
175
+ margin: 0;
176
+ font: inherit;
177
+ color: inherit;
142
178
  }
143
179
  #subheading {
144
- font-size: var(--eun-font-size-xs, 14px);
180
+ font-size: var(
181
+ --collapse-subheading-font-size,
182
+ var(--eun-font-size-xs, 14px)
183
+ );
145
184
  font-weight: var(--eun-font-weight-m);
146
185
  color: var(--_subheadingColor);
147
186
  }
187
+ #subheading.hidden {
188
+ display: none;
189
+ }
190
+ #subheading ::slotted(*) {
191
+ margin: 0;
192
+ font: inherit;
193
+ color: inherit;
194
+ }
148
195
  #actions {
149
196
  display: flex;
150
197
  align-items: center;
@@ -153,7 +200,8 @@ export const collapseStyles = css `
153
200
  }
154
201
  #chevron {
155
202
  display: inline-flex;
156
- transition: transform var(--_transitionDuration) ease-out;
203
+ transition: transform var(--_transitionDuration)
204
+ var(--eun-easing-out, ease-out);
157
205
  }
158
206
  #panel {
159
207
  display: grid;
@@ -164,17 +212,19 @@ export const collapseStyles = css `
164
212
  border-bottom-right-radius: var(--_borderRadius);
165
213
  overflow-anchor: none;
166
214
  transition:
167
- grid-template-rows var(--_transitionDuration) ease-out,
168
- margin-top var(--_transitionDuration) ease-out,
169
- background-color var(--_transitionDuration) ease-out;
215
+ grid-template-rows var(--_transitionDuration)
216
+ var(--eun-easing-out, ease-out),
217
+ margin-top var(--_transitionDuration) var(--eun-easing-out, ease-out),
218
+ background-color var(--_transitionDuration)
219
+ var(--eun-easing-out, ease-out);
170
220
  }
171
221
  #panel-inner {
172
222
  overflow: hidden;
173
223
  }
174
224
  #panel-content {
175
- border-top: var(--eun-border-width-s, 1px) solid
176
- var(--eun-color-grey-300, #dee0e7);
177
- padding: var(--_padding);
225
+ border-top: var(--collapse-divider-width, var(--eun-border-width-s, 1px))
226
+ solid var(--collapse-divider-color, var(--eun-color-grey-300, #dee0e7));
227
+ padding: var(--_panelPadding);
178
228
  color: var(--_contentColor);
179
229
  font-size: var(--_contentFontSize);
180
230
  }
@@ -196,8 +246,9 @@ export const collapseStyles = css `
196
246
  border-bottom-left-radius: 0;
197
247
  border-bottom-right-radius: 0;
198
248
  transition:
199
- color var(--_transitionDuration) ease-out,
200
- background-color var(--_transitionDuration) ease-out;
249
+ color var(--_transitionDuration) var(--eun-easing-out, ease-out),
250
+ background-color var(--_transitionDuration)
251
+ var(--eun-easing-out, ease-out);
201
252
  }
202
253
  .open #panel {
203
254
  grid-template-rows: 1fr;
@@ -0,0 +1,87 @@
1
+ import { ReactiveElement } from "lit";
2
+ /**
3
+ * Tag name of the description list component.
4
+ */
5
+ export declare const EunomiaDescriptionListTagName = "eun-description-list";
6
+ /**
7
+ * Where a description list places each label relative to its value.
8
+ */
9
+ export type EunomiaDescriptionListLayout = "inline" | "stacked";
10
+ /**
11
+ * How a description list aligns the text of its labels and values.
12
+ */
13
+ export type EunomiaDescriptionListAlign = "start" | "center" | "end" | "space-between";
14
+ /**
15
+ * A list of label and value pairs describing a single object, built on a
16
+ * native `<dl>` (`<eun-description-list><dl>…</dl></eun-description-list>`).
17
+ * The list keeps its native semantics (`<dt>` for each label, `<dd>` for
18
+ * each value), renders before any script runs, and holds any content in a
19
+ * value: text, links, tags, icons.
20
+ *
21
+ * `eun-description-list` has no shadow root and no item component of its
22
+ * own: it only styles the `<dl>` it wraps, from the light DOM, so nothing
23
+ * stands between assistive technology and the native list. Each pair is
24
+ * either a bare `<dt>` followed by one or more `<dd>`, or a `<div>`
25
+ * wrapping them, which HTML allows inside a `<dl>`. `columns` needs the
26
+ * `<div>` wrappers.
27
+ *
28
+ * The label sits beside its value, and above it below the `mobile`
29
+ * breakpoint, or always with `layout="stacked"`. `columns` also applies
30
+ * from the `mobile` breakpoint up, the pairs filling a single column
31
+ * below it.
32
+ *
33
+ * @slot [default] - A native `<dl>`, holding `<dt>`/`<dd>` pairs, each optionally wrapped in a `<div>`
34
+ * @prop {EunomiaDescriptionListLayout} [layout='inline'] - Places each label beside its value (`inline`), or above it (`stacked`)
35
+ * @prop {EunomiaDescriptionListAlign} [align='start'] - Aligns the text of the labels and values to the start, the center, or the end ; `space-between` keeps each label at the start and pushes its value to the end, when beside it
36
+ * @prop {number} [columns=1] - Lays the pairs out in up to 4 columns, from the `mobile` breakpoint up ; each pair must be wrapped in a `<div>`
37
+ * @prop {boolean} [divided=false] - Draws a divider between two pairs, never above the first row
38
+ * @cssprop [--description-list-font-size] - Sets the font size of the list
39
+ * @cssprop [--description-list-label-color] - Sets the color of the labels
40
+ * @cssprop [--description-list-label-font-weight] - Sets the font weight of the labels
41
+ * @cssprop [--description-list-value-color] - Sets the color of the values
42
+ * @cssprop [--description-list-label-width] - Sets the width of the label column when the label sits beside its value ; sized to the longest label, up to 40%, by default
43
+ * @cssprop [--description-list-row-gap] - Sets the space between two pairs
44
+ * @cssprop [--description-list-column-gap] - Sets the space between a label and the value beside it, and between two columns
45
+ * @cssprop [--description-list-label-gap] - Sets the space between a label and the value below it
46
+ * @cssprop [--description-list-divider-color] - Sets the color of the dividers drawn by `divided`
47
+ * @element eun-description-list
48
+ */
49
+ export declare class EunomiaDescriptionList extends ReactiveElement {
50
+ /**
51
+ * Places each label beside its value (`inline`), or above it (`stacked`).
52
+ * An `inline` list still stacks below the `mobile` breakpoint.
53
+ * @default inline
54
+ */
55
+ layout: EunomiaDescriptionListLayout;
56
+ /**
57
+ * Aligns the text of the labels and values: `start`, `center`, or
58
+ * `end`. `space-between` keeps each label at the start and pushes its
59
+ * value to the end, when the label sits beside it.
60
+ * @default start
61
+ */
62
+ align: EunomiaDescriptionListAlign;
63
+ /**
64
+ * Number of columns the pairs are laid out in, from 1 to 4, from the
65
+ * `mobile` breakpoint up. Below it, the pairs fill a single column.
66
+ * Each pair must be wrapped in a `<div>`.
67
+ * @default 1
68
+ */
69
+ columns: number;
70
+ /**
71
+ * Draws a divider between two pairs. With several columns, it runs
72
+ * between two rows, never above the first one.
73
+ * @default false
74
+ */
75
+ divided: boolean;
76
+ /**
77
+ * Renders into the light DOM: the slotted `<dl>` is styled from there.
78
+ * @internal
79
+ */
80
+ protected createRenderRoot(): HTMLElement;
81
+ connectedCallback(): void;
82
+ }
83
+ declare global {
84
+ interface HTMLElementTagNameMap {
85
+ [EunomiaDescriptionListTagName]: EunomiaDescriptionList;
86
+ }
87
+ }
@@ -0,0 +1,107 @@
1
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
6
+ };
7
+ import { customElement, property } from "lit/decorators.js";
8
+ import { ReactiveElement } from "lit";
9
+ import { descriptionListStyles } from "./description-list.styles.js";
10
+ import { adoptLightDomStyles } from "../../../utils/light-dom-styles.utils.js";
11
+ /**
12
+ * Tag name of the description list component.
13
+ */
14
+ export const EunomiaDescriptionListTagName = "eun-description-list";
15
+ /**
16
+ * A list of label and value pairs describing a single object, built on a
17
+ * native `<dl>` (`<eun-description-list><dl>…</dl></eun-description-list>`).
18
+ * The list keeps its native semantics (`<dt>` for each label, `<dd>` for
19
+ * each value), renders before any script runs, and holds any content in a
20
+ * value: text, links, tags, icons.
21
+ *
22
+ * `eun-description-list` has no shadow root and no item component of its
23
+ * own: it only styles the `<dl>` it wraps, from the light DOM, so nothing
24
+ * stands between assistive technology and the native list. Each pair is
25
+ * either a bare `<dt>` followed by one or more `<dd>`, or a `<div>`
26
+ * wrapping them, which HTML allows inside a `<dl>`. `columns` needs the
27
+ * `<div>` wrappers.
28
+ *
29
+ * The label sits beside its value, and above it below the `mobile`
30
+ * breakpoint, or always with `layout="stacked"`. `columns` also applies
31
+ * from the `mobile` breakpoint up, the pairs filling a single column
32
+ * below it.
33
+ *
34
+ * @slot [default] - A native `<dl>`, holding `<dt>`/`<dd>` pairs, each optionally wrapped in a `<div>`
35
+ * @prop {EunomiaDescriptionListLayout} [layout='inline'] - Places each label beside its value (`inline`), or above it (`stacked`)
36
+ * @prop {EunomiaDescriptionListAlign} [align='start'] - Aligns the text of the labels and values to the start, the center, or the end ; `space-between` keeps each label at the start and pushes its value to the end, when beside it
37
+ * @prop {number} [columns=1] - Lays the pairs out in up to 4 columns, from the `mobile` breakpoint up ; each pair must be wrapped in a `<div>`
38
+ * @prop {boolean} [divided=false] - Draws a divider between two pairs, never above the first row
39
+ * @cssprop [--description-list-font-size] - Sets the font size of the list
40
+ * @cssprop [--description-list-label-color] - Sets the color of the labels
41
+ * @cssprop [--description-list-label-font-weight] - Sets the font weight of the labels
42
+ * @cssprop [--description-list-value-color] - Sets the color of the values
43
+ * @cssprop [--description-list-label-width] - Sets the width of the label column when the label sits beside its value ; sized to the longest label, up to 40%, by default
44
+ * @cssprop [--description-list-row-gap] - Sets the space between two pairs
45
+ * @cssprop [--description-list-column-gap] - Sets the space between a label and the value beside it, and between two columns
46
+ * @cssprop [--description-list-label-gap] - Sets the space between a label and the value below it
47
+ * @cssprop [--description-list-divider-color] - Sets the color of the dividers drawn by `divided`
48
+ * @element eun-description-list
49
+ */
50
+ let EunomiaDescriptionList = class EunomiaDescriptionList extends ReactiveElement {
51
+ constructor() {
52
+ super(...arguments);
53
+ /**
54
+ * Places each label beside its value (`inline`), or above it (`stacked`).
55
+ * An `inline` list still stacks below the `mobile` breakpoint.
56
+ * @default inline
57
+ */
58
+ this.layout = "inline";
59
+ /**
60
+ * Aligns the text of the labels and values: `start`, `center`, or
61
+ * `end`. `space-between` keeps each label at the start and pushes its
62
+ * value to the end, when the label sits beside it.
63
+ * @default start
64
+ */
65
+ this.align = "start";
66
+ /**
67
+ * Number of columns the pairs are laid out in, from 1 to 4, from the
68
+ * `mobile` breakpoint up. Below it, the pairs fill a single column.
69
+ * Each pair must be wrapped in a `<div>`.
70
+ * @default 1
71
+ */
72
+ this.columns = 1;
73
+ /**
74
+ * Draws a divider between two pairs. With several columns, it runs
75
+ * between two rows, never above the first one.
76
+ * @default false
77
+ */
78
+ this.divided = false;
79
+ }
80
+ /**
81
+ * Renders into the light DOM: the slotted `<dl>` is styled from there.
82
+ * @internal
83
+ */
84
+ createRenderRoot() {
85
+ return this;
86
+ }
87
+ connectedCallback() {
88
+ super.connectedCallback();
89
+ adoptLightDomStyles(this, descriptionListStyles);
90
+ }
91
+ };
92
+ __decorate([
93
+ property({ reflect: true })
94
+ ], EunomiaDescriptionList.prototype, "layout", void 0);
95
+ __decorate([
96
+ property({ reflect: true })
97
+ ], EunomiaDescriptionList.prototype, "align", void 0);
98
+ __decorate([
99
+ property({ type: Number, reflect: true })
100
+ ], EunomiaDescriptionList.prototype, "columns", void 0);
101
+ __decorate([
102
+ property({ type: Boolean, reflect: true })
103
+ ], EunomiaDescriptionList.prototype, "divided", void 0);
104
+ EunomiaDescriptionList = __decorate([
105
+ customElement(EunomiaDescriptionListTagName)
106
+ ], EunomiaDescriptionList);
107
+ export { EunomiaDescriptionList };
@@ -0,0 +1 @@
1
+ export declare const descriptionListStyles: import("lit").CSSResult;