@ebrains/components 3.1.0 → 3.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (347) hide show
  1. package/dist/cjs/color-primary-palette_6.cjs.entry.js +14 -14
  2. package/dist/cjs/components-section.cjs.entry.js +1 -1
  3. package/dist/cjs/components.cjs.js +1 -1
  4. package/dist/cjs/correct-use-of-colors.cjs.entry.js +1 -1
  5. package/dist/cjs/docs-palettes.cjs.entry.js +1 -1
  6. package/dist/cjs/docs-tokens.cjs.entry.js +1 -1
  7. package/dist/cjs/eds-accordion_53.cjs.entry.js +367 -248
  8. package/dist/cjs/eds-app-root.cjs.entry.js +1 -1
  9. package/dist/cjs/eds-cookies-preference.cjs.entry.js +1 -1
  10. package/dist/cjs/eds-frame.cjs.entry.js +1 -1
  11. package/dist/cjs/eds-gitlab-contributors.cjs.entry.js +26 -30
  12. package/dist/cjs/eds-icon-bluesky.cjs.entry.js +1 -1
  13. package/dist/cjs/eds-icon-eu.cjs.entry.js +1 -1
  14. package/dist/cjs/eds-icon-facebook.cjs.entry.js +1 -1
  15. package/dist/cjs/eds-icon-gitlab.cjs.entry.js +1 -1
  16. package/dist/cjs/eds-icon-linkedin.cjs.entry.js +1 -1
  17. package/dist/cjs/eds-icon-mastodon.cjs.entry.js +1 -1
  18. package/dist/cjs/eds-icon-twitter.cjs.entry.js +1 -1
  19. package/dist/cjs/eds-icon-youtube.cjs.entry.js +1 -1
  20. package/dist/cjs/eds-input-search.cjs.entry.js +1 -1
  21. package/dist/cjs/eds-modal.cjs.entry.js +18 -9
  22. package/dist/cjs/eds-pie.cjs.entry.js +2 -2
  23. package/dist/cjs/eds-section-core_2.cjs.entry.js +3 -3
  24. package/dist/cjs/eds-timeline.cjs.entry.js +1 -1
  25. package/dist/cjs/eds-toast-manager.cjs.entry.js +1 -1
  26. package/dist/cjs/eds-trl-badge.cjs.entry.js +14 -11
  27. package/dist/cjs/incorrect-use-of-colors.cjs.entry.js +1 -1
  28. package/dist/cjs/loader.cjs.js +1 -1
  29. package/dist/cjs/logo-space.cjs.entry.js +58 -1
  30. package/dist/cjs/logo-variations-horizontal_2.cjs.entry.js +2 -2
  31. package/dist/cjs/logo-variations-tabs.cjs.entry.js +1 -1
  32. package/dist/cjs/logo-wrong-usage.cjs.entry.js +1 -1
  33. package/dist/cjs/svg-repository.cjs.entry.js +1 -1
  34. package/dist/cjs/token-list_3.cjs.entry.js +3 -3
  35. package/dist/cjs/token-ratios.cjs.entry.js +1 -1
  36. package/dist/cjs/token-spacing.cjs.entry.js +1 -1
  37. package/dist/cjs/token-typography.cjs.entry.js +8 -2
  38. package/dist/collection/components/eds-accordion/eds-accordion.js +2 -5
  39. package/dist/collection/components/eds-alert/eds-alert.css +14 -0
  40. package/dist/collection/components/eds-alert/eds-alert.js +2 -1
  41. package/dist/collection/components/eds-button/eds-button.js +6 -10
  42. package/dist/collection/components/eds-button/eds-button.stories.js +4 -1
  43. package/dist/collection/components/eds-cards/eds-card-app/eds-card-app.js +2 -5
  44. package/dist/collection/components/eds-cards/eds-card-composer/eds-card-title/eds-card-title.js +1 -1
  45. package/dist/collection/components/eds-cards/eds-card-cta/eds-card-cta.js +2 -5
  46. package/dist/collection/components/eds-cards/eds-card-cta/eds-card-cta.stories.js +4 -1
  47. package/dist/collection/components/eds-cards/eds-card-feature/eds-card-feature.js +2 -5
  48. package/dist/collection/components/eds-cards/eds-card-generic/eds-card-generic.js +2 -4
  49. package/dist/collection/components/eds-cards/eds-card-hero/eds-card-hero.js +6 -7
  50. package/dist/collection/components/eds-cards/eds-card-stat/eds-card-stat.js +6 -7
  51. package/dist/collection/components/eds-charts/eds-pie/eds-pie.js +2 -2
  52. package/dist/collection/components/eds-code-block/eds-code-block.css +72 -106
  53. package/dist/collection/components/eds-code-block/eds-code-block.js +1 -1
  54. package/dist/collection/components/eds-footer/eds-footer.js +23 -18
  55. package/dist/collection/components/eds-footer/eds-footer.stories.js +3 -4
  56. package/dist/collection/components/eds-form/eds-form.css +456 -0
  57. package/dist/collection/components/eds-form/eds-form.js +218 -14
  58. package/dist/collection/components/eds-form/eds-form.stories.js +110 -3
  59. package/dist/collection/components/eds-frame/eds-frame.js +1 -1
  60. package/dist/collection/components/eds-header/eds-header.js +1 -1
  61. package/dist/collection/components/eds-icons/eds-icon-eu/eds-icon-eu.js +1 -1
  62. package/dist/collection/components/eds-icons/eds-icon-gitlab/eds-icon-gitlab.js +1 -1
  63. package/dist/collection/components/eds-icons/social/eds-icon-bluesky/eds-icon-bluesky.js +1 -1
  64. package/dist/collection/components/eds-icons/social/eds-icon-facebook/eds-icon-facebook.js +1 -1
  65. package/dist/collection/components/eds-icons/social/eds-icon-linkedin/eds-icon-linkedin.js +1 -1
  66. package/dist/collection/components/eds-icons/social/eds-icon-mastodon/eds-icon-mastodon.js +1 -1
  67. package/dist/collection/components/eds-icons/social/eds-icon-twitter/eds-icon-twitter.js +1 -1
  68. package/dist/collection/components/eds-icons/social/eds-icon-youtube/eds-icon-youtube.js +1 -1
  69. package/dist/collection/components/eds-img/eds-img.js +2 -2
  70. package/dist/collection/components/eds-input-dropzone/eds-input-dropzone.js +7 -4
  71. package/dist/collection/components/eds-input-elements/eds-input/eds-input.js +2 -2
  72. package/dist/collection/components/eds-input-elements/eds-input-footer/eds-input-footer.css +10 -0
  73. package/dist/collection/components/eds-input-elements/eds-input-footer/eds-input-footer.js +1 -1
  74. package/dist/collection/components/eds-input-elements/eds-input-label/eds-input-label.css +17 -5
  75. package/dist/collection/components/eds-input-elements/eds-input-label/eds-input-label.js +1 -1
  76. package/dist/collection/components/eds-input-elements/eds-input-range/eds-input-range.js +15 -5
  77. package/dist/collection/components/eds-input-elements/eds-input-search/eds-input-search.js +1 -1
  78. package/dist/collection/components/eds-input-elements/eds-input-select/eds-input-select.js +6 -2
  79. package/dist/collection/components/eds-input-field/eds-input-field.css +219 -0
  80. package/dist/collection/components/eds-input-field/eds-input-field.js +7 -2
  81. package/dist/collection/components/eds-input-field/eds-input-field.stories.js +35 -7
  82. package/dist/collection/components/eds-input-file/eds-input-file.js +5 -3
  83. package/dist/collection/components/eds-link/eds-link.js +4 -8
  84. package/dist/collection/components/eds-logo/eds-logo.js +13 -66
  85. package/dist/collection/components/eds-logo/eds-logo.stories.js +36 -17
  86. package/dist/collection/components/eds-modal/eds-modal.js +18 -9
  87. package/dist/collection/components/eds-modal/eds-modal.stories.js +3 -1
  88. package/dist/collection/components/eds-nps/eds-nps.js +2 -2
  89. package/dist/collection/components/eds-pagination/eds-pagination.js +1 -1
  90. package/dist/collection/components/eds-progress-bar/eds-progress-bar.js +1 -8
  91. package/dist/collection/components/eds-rating/eds-rating.js +1 -1
  92. package/dist/collection/components/eds-section/eds-section-core/eds-section-core.js +1 -1
  93. package/dist/collection/components/eds-section/eds-section-heading/eds-section-heading.js +2 -2
  94. package/dist/collection/components/eds-social-networks/eds-social-networks.js +1 -1
  95. package/dist/collection/components/eds-spinner/eds-spinner.js +1 -1
  96. package/dist/collection/components/eds-steps/eds-steps.css +56 -25
  97. package/dist/collection/components/eds-steps/eds-steps.js +27 -7
  98. package/dist/collection/components/eds-steps-v2/eds-steps-v2.css +93 -28
  99. package/dist/collection/components/eds-steps-v2/eds-steps-v2.js +57 -10
  100. package/dist/collection/components/eds-steps-v2/eds-steps-v2.stories.js +80 -17
  101. package/dist/collection/components/eds-switch/eds-switch.css +26 -3
  102. package/dist/collection/components/eds-switch/eds-switch.js +10 -7
  103. package/dist/collection/components/eds-switch/eds-switch.stories.js +20 -1
  104. package/dist/collection/components/eds-table/eds-table.js +1 -3
  105. package/dist/collection/components/eds-table/eds-table.stories.js +2 -6
  106. package/dist/collection/components/eds-tabs/eds-tabs.js +4 -11
  107. package/dist/collection/components/eds-tabs/eds-tabs.stories.js +2 -2
  108. package/dist/collection/components/eds-tag/eds-tag.js +1 -1
  109. package/dist/collection/components/eds-timeline/eds-timeline.js +1 -1
  110. package/dist/collection/components/eds-toast/eds-toast.css +146 -0
  111. package/dist/collection/components/eds-toast/eds-toast.js +106 -4
  112. package/dist/collection/components/eds-toast/eds-toast.stories.js +102 -5
  113. package/dist/collection/components/eds-toast-manager/eds-toast-manager.js +1 -1
  114. package/dist/collection/components/eds-tooltip/eds-tooltip.js +1 -1
  115. package/dist/collection/components/eds-tooltip/eds-tooltip.stories.js +7 -1
  116. package/dist/collection/components/eds-user/eds-user.js +2 -5
  117. package/dist/collection/components/eds-user/eds-user.stories.js +8 -11
  118. package/dist/collection/eds-docs-ui/colors/color-palette/primary.js +1 -1
  119. package/dist/collection/eds-docs-ui/colors/color-palette/secondary.js +1 -1
  120. package/dist/collection/eds-docs-ui/colors/color-palette/support.js +1 -1
  121. package/dist/collection/eds-docs-ui/colors/gradient-palette/primary.js +1 -1
  122. package/dist/collection/eds-docs-ui/colors/gradient-palette/secondary.js +7 -7
  123. package/dist/collection/eds-docs-ui/colors/gradient-palette/support.js +3 -3
  124. package/dist/collection/eds-docs-ui/colors/use-of-colors/correct-use-of-colors.js +1 -1
  125. package/dist/collection/eds-docs-ui/colors/use-of-colors/incorrect-use-of-colors.js +1 -1
  126. package/dist/collection/eds-docs-ui/components-section/components-section.js +1 -1
  127. package/dist/collection/eds-docs-ui/design-tokens/docs-tokens/docs-tokens.js +1 -1
  128. package/dist/collection/eds-docs-ui/design-tokens/token-list/token-list.js +1 -1
  129. package/dist/collection/eds-docs-ui/design-tokens/token-radii/token-radii.js +1 -1
  130. package/dist/collection/eds-docs-ui/design-tokens/token-ratios/token-ratios.js +1 -1
  131. package/dist/collection/eds-docs-ui/design-tokens/token-shadows/token-shadows.js +1 -1
  132. package/dist/collection/eds-docs-ui/design-tokens/token-spacing/token-spacing.js +1 -1
  133. package/dist/collection/eds-docs-ui/design-tokens/token-typography/token-typography.js +8 -2
  134. package/dist/collection/eds-docs-ui/docs-palettes/docs-palettes.js +1 -1
  135. package/dist/collection/eds-docs-ui/logo/logo-space/logo-space.js +58 -1
  136. package/dist/collection/eds-docs-ui/logo/logo-variations/horizontal/logo-variations-horizontal.js +1 -1
  137. package/dist/collection/eds-docs-ui/logo/logo-variations/vertical/logo-variations-vertical.js +1 -1
  138. package/dist/collection/eds-docs-ui/logo/logo-variations-tabs/logo-variations.js +1 -1
  139. package/dist/collection/eds-docs-ui/logo/logo-wrong-usage/logo-wrong-usage.js +1 -1
  140. package/dist/collection/eds-docs-ui/svg-repository/svg-repository.js +1 -1
  141. package/dist/collection/shared-ui/eds-cookies-preference/eds-cookies-preference.js +1 -1
  142. package/dist/collection/shared-ui/eds-gitlab-contributors/eds-gitlab-contributors.js +26 -30
  143. package/dist/collection/shared-ui/eds-global-search/eds-global-search.js +18 -12
  144. package/dist/collection/shared-ui/eds-kg-learning-resources/eds-kg-learning-resources.js +15 -19
  145. package/dist/collection/shared-ui/eds-kg-web-services-select/eds-kg-web-services-select.js +2 -2
  146. package/dist/collection/shared-ui/eds-kg-web-services-select/eds-kg-web-services-select.stories.js +1 -3
  147. package/dist/collection/shared-ui/eds-matomo-notice/eds-matomo-notice.stories.js +1 -1
  148. package/dist/collection/shared-ui/eds-search-select/eds-search-select.css +11 -1
  149. package/dist/collection/shared-ui/eds-search-select/eds-search-select.js +37 -16
  150. package/dist/collection/shared-ui/eds-search-select/eds-search-select.stories.js +10 -5
  151. package/dist/collection/shared-ui/eds-trl-badge/eds-trl-badge.js +14 -11
  152. package/dist/collection/shared-ui/eds-trl-badge/eds-trl-badge.stories.js +4 -1
  153. package/dist/collection/shared-ui/examples/eds-app-root/eds-app-root.js +1 -1
  154. package/dist/collection/utils/eds-form/safeFormat.js +1 -5
  155. package/dist/components/components-section.js +1 -1
  156. package/dist/components/components.css +9 -7
  157. package/dist/components/components.esm.js +1 -1
  158. package/dist/components/correct-use-of-colors.js +1 -1
  159. package/dist/components/docs-palettes.js +1 -1
  160. package/dist/components/docs-tokens.js +1 -1
  161. package/dist/components/eds-accordion2.js +2 -5
  162. package/dist/components/eds-alert2.js +3 -2
  163. package/dist/components/eds-app-root.js +1 -1
  164. package/dist/components/eds-button2.js +5 -9
  165. package/dist/components/eds-card-app.js +2 -5
  166. package/dist/components/eds-card-cta.js +2 -5
  167. package/dist/components/eds-card-feature.js +2 -5
  168. package/dist/components/eds-card-generic2.js +2 -4
  169. package/dist/components/eds-card-hero.js +6 -7
  170. package/dist/components/eds-card-stat.js +6 -7
  171. package/dist/components/eds-card-title2.js +1 -1
  172. package/dist/components/eds-code-block2.js +2 -2
  173. package/dist/components/eds-cookies-preference.js +1 -1
  174. package/dist/components/eds-footer2.js +23 -18
  175. package/dist/components/eds-form.js +101 -38
  176. package/dist/components/eds-frame.js +1 -1
  177. package/dist/components/eds-gitlab-contributors.js +26 -30
  178. package/dist/components/eds-global-search.js +18 -12
  179. package/dist/components/eds-header.js +1 -1
  180. package/dist/components/eds-icon-bluesky.js +1 -1
  181. package/dist/components/eds-icon-eu.js +1 -1
  182. package/dist/components/eds-icon-facebook.js +1 -1
  183. package/dist/components/eds-icon-gitlab.js +1 -1
  184. package/dist/components/eds-icon-linkedin.js +1 -1
  185. package/dist/components/eds-icon-mastodon.js +1 -1
  186. package/dist/components/eds-icon-twitter.js +1 -1
  187. package/dist/components/eds-icon-youtube.js +1 -1
  188. package/dist/components/eds-img2.js +2 -2
  189. package/dist/components/eds-input-dropzone2.js +7 -4
  190. package/dist/components/eds-input-field2.js +8 -3
  191. package/dist/components/eds-input-file2.js +5 -3
  192. package/dist/components/eds-input-footer2.js +3 -7
  193. package/dist/components/eds-input-label2.js +2 -2
  194. package/dist/components/eds-input-range2.js +15 -5
  195. package/dist/components/eds-input-search.js +1 -1
  196. package/dist/components/eds-input-select2.js +6 -2
  197. package/dist/components/eds-input2.js +2 -2
  198. package/dist/components/eds-kg-learning-resources.js +15 -19
  199. package/dist/components/eds-kg-web-services-select2.js +2 -2
  200. package/dist/components/eds-link2.js +3 -7
  201. package/dist/components/eds-logo2.js +4 -22
  202. package/dist/components/eds-modal.js +18 -9
  203. package/dist/components/eds-nps2.js +2 -2
  204. package/dist/components/eds-pagination2.js +1 -1
  205. package/dist/components/eds-pie.js +2 -2
  206. package/dist/components/eds-progress-bar.js +1 -8
  207. package/dist/components/eds-rating2.js +1 -1
  208. package/dist/components/eds-search-select2.js +38 -17
  209. package/dist/components/eds-section-core2.js +1 -1
  210. package/dist/components/eds-section-heading2.js +2 -2
  211. package/dist/components/eds-social-networks2.js +1 -1
  212. package/dist/components/eds-spinner2.js +1 -1
  213. package/dist/components/eds-steps-v2.js +41 -11
  214. package/dist/components/eds-steps2.js +28 -8
  215. package/dist/components/eds-switch2.js +8 -5
  216. package/dist/components/eds-table2.js +1 -3
  217. package/dist/components/eds-tabs.js +4 -11
  218. package/dist/components/eds-tag2.js +1 -1
  219. package/dist/components/eds-timeline.js +1 -1
  220. package/dist/components/eds-toast-manager.js +1 -1
  221. package/dist/components/eds-toast2.js +39 -3
  222. package/dist/components/eds-tooltip2.js +1 -1
  223. package/dist/components/eds-trl-badge.js +14 -11
  224. package/dist/components/eds-user.js +1 -4
  225. package/dist/components/incorrect-use-of-colors.js +1 -1
  226. package/dist/components/logo-space.js +58 -1
  227. package/dist/components/logo-variations-horizontal2.js +1 -1
  228. package/dist/components/logo-variations-tabs.js +1 -1
  229. package/dist/components/logo-variations-vertical2.js +1 -1
  230. package/dist/components/logo-wrong-usage.js +1 -1
  231. package/dist/components/{p-d59d6fda.entry.js → p-05e96609.entry.js} +1 -1
  232. package/dist/components/p-0d778d10.entry.js +1 -0
  233. package/dist/components/{p-62f53e7a.entry.js → p-114f6d54.entry.js} +1 -1
  234. package/dist/components/p-1534204d.entry.js +1 -0
  235. package/dist/components/p-337d4ee3.entry.js +9 -0
  236. package/dist/components/p-340bc935.entry.js +1 -0
  237. package/dist/components/p-39dbb964.entry.js +1 -0
  238. package/dist/components/{p-25729ade.entry.js → p-3f66bc26.entry.js} +1 -1
  239. package/dist/components/p-43f9e64f.entry.js +1 -0
  240. package/dist/components/p-46cc6c1a.entry.js +1 -0
  241. package/dist/components/{p-e9e6ec19.entry.js → p-4b8a7979.entry.js} +1 -1
  242. package/dist/components/{p-bdcb71e1.entry.js → p-6b94b2ec.entry.js} +1 -1
  243. package/dist/components/p-6d965fef.entry.js +1 -0
  244. package/dist/components/{p-62580004.entry.js → p-6e370182.entry.js} +1 -1
  245. package/dist/components/p-6ffe581c.entry.js +1 -0
  246. package/dist/components/{p-e027bc90.entry.js → p-726637b1.entry.js} +1 -1
  247. package/dist/components/{p-8a483358.entry.js → p-86ccc09f.entry.js} +1 -1
  248. package/dist/components/{p-e71a4f29.entry.js → p-8755a21b.entry.js} +1 -1
  249. package/dist/components/{p-e4df206e.entry.js → p-8ab461e2.entry.js} +1 -1
  250. package/dist/components/p-8cb162b8.entry.js +1 -0
  251. package/dist/components/p-8cdbc280.entry.js +1 -0
  252. package/dist/components/{p-42791331.entry.js → p-8e034c4e.entry.js} +1 -1
  253. package/dist/components/p-9f649fa3.entry.js +1 -0
  254. package/dist/components/{p-f9a9fa34.entry.js → p-a26dad9b.entry.js} +1 -1
  255. package/dist/components/p-a2d6a9ca.entry.js +1 -0
  256. package/dist/components/p-afabe1be.entry.js +1 -0
  257. package/dist/components/{p-1fbcc480.entry.js → p-b1519098.entry.js} +1 -1
  258. package/dist/components/{p-12acc48d.entry.js → p-b4023b45.entry.js} +1 -1
  259. package/dist/components/p-c53b3563.entry.js +1 -0
  260. package/dist/components/p-c7d612d1.entry.js +1 -0
  261. package/dist/components/p-dc9aef22.entry.js +1 -0
  262. package/dist/components/{p-e339d0b5.entry.js → p-f66a7cf9.entry.js} +1 -1
  263. package/dist/components/{p-80a32e20.entry.js → p-f97f62f2.entry.js} +1 -1
  264. package/dist/components/primary.js +1 -1
  265. package/dist/components/primary2.js +1 -1
  266. package/dist/components/secondary.js +1 -1
  267. package/dist/components/secondary2.js +7 -7
  268. package/dist/components/support.js +1 -1
  269. package/dist/components/support2.js +3 -3
  270. package/dist/components/svg-repository.js +1 -1
  271. package/dist/components/token-list2.js +1 -1
  272. package/dist/components/token-radii2.js +1 -1
  273. package/dist/components/token-ratios.js +1 -1
  274. package/dist/components/token-shadows2.js +1 -1
  275. package/dist/components/token-spacing.js +1 -1
  276. package/dist/components/token-typography.js +8 -2
  277. package/dist/esm/color-primary-palette_6.entry.js +14 -14
  278. package/dist/esm/components-section.entry.js +1 -1
  279. package/dist/esm/components.js +1 -1
  280. package/dist/esm/correct-use-of-colors.entry.js +1 -1
  281. package/dist/esm/docs-palettes.entry.js +1 -1
  282. package/dist/esm/docs-tokens.entry.js +1 -1
  283. package/dist/esm/eds-accordion_53.entry.js +367 -248
  284. package/dist/esm/eds-app-root.entry.js +1 -1
  285. package/dist/esm/eds-cookies-preference.entry.js +1 -1
  286. package/dist/esm/eds-frame.entry.js +1 -1
  287. package/dist/esm/eds-gitlab-contributors.entry.js +26 -30
  288. package/dist/esm/eds-icon-bluesky.entry.js +1 -1
  289. package/dist/esm/eds-icon-eu.entry.js +1 -1
  290. package/dist/esm/eds-icon-facebook.entry.js +1 -1
  291. package/dist/esm/eds-icon-gitlab.entry.js +1 -1
  292. package/dist/esm/eds-icon-linkedin.entry.js +1 -1
  293. package/dist/esm/eds-icon-mastodon.entry.js +1 -1
  294. package/dist/esm/eds-icon-twitter.entry.js +1 -1
  295. package/dist/esm/eds-icon-youtube.entry.js +1 -1
  296. package/dist/esm/eds-input-search.entry.js +1 -1
  297. package/dist/esm/eds-modal.entry.js +18 -9
  298. package/dist/esm/eds-pie.entry.js +2 -2
  299. package/dist/esm/eds-section-core_2.entry.js +3 -3
  300. package/dist/esm/eds-timeline.entry.js +1 -1
  301. package/dist/esm/eds-toast-manager.entry.js +1 -1
  302. package/dist/esm/eds-trl-badge.entry.js +14 -11
  303. package/dist/esm/incorrect-use-of-colors.entry.js +1 -1
  304. package/dist/esm/loader.js +1 -1
  305. package/dist/esm/logo-space.entry.js +58 -1
  306. package/dist/esm/logo-variations-horizontal_2.entry.js +2 -2
  307. package/dist/esm/logo-variations-tabs.entry.js +1 -1
  308. package/dist/esm/logo-wrong-usage.entry.js +1 -1
  309. package/dist/esm/svg-repository.entry.js +1 -1
  310. package/dist/esm/token-list_3.entry.js +3 -3
  311. package/dist/esm/token-ratios.entry.js +1 -1
  312. package/dist/esm/token-spacing.entry.js +1 -1
  313. package/dist/esm/token-typography.entry.js +8 -2
  314. package/dist/hydrate/index.js +572 -368
  315. package/dist/hydrate/index.mjs +572 -368
  316. package/dist/types/components/eds-form/eds-form.d.ts +56 -0
  317. package/dist/types/components/eds-form/eds-form.stories.d.ts +63 -0
  318. package/dist/types/components/eds-logo/eds-logo.d.ts +11 -28
  319. package/dist/types/components/eds-logo/eds-logo.stories.d.ts +22 -2
  320. package/dist/types/components/eds-steps/eds-steps.d.ts +7 -0
  321. package/dist/types/components/eds-steps-v2/eds-steps-v2.d.ts +14 -1
  322. package/dist/types/components/eds-steps-v2/eds-steps-v2.stories.d.ts +40 -9
  323. package/dist/types/components/eds-switch/eds-switch.d.ts +6 -2
  324. package/dist/types/components/eds-switch/eds-switch.stories.d.ts +8 -0
  325. package/dist/types/components/eds-toast/eds-toast.d.ts +33 -1
  326. package/dist/types/components/eds-toast/eds-toast.stories.d.ts +49 -1
  327. package/dist/types/components/eds-user/eds-user.d.ts +0 -2
  328. package/dist/types/components/eds-user/eds-user.stories.d.ts +5 -9
  329. package/dist/types/components.d.ts +210 -60
  330. package/package.json +1 -1
  331. package/dist/components/p-00ba405d.entry.js +0 -1
  332. package/dist/components/p-03342030.entry.js +0 -1
  333. package/dist/components/p-0e2bac0f.entry.js +0 -1
  334. package/dist/components/p-18399fe1.entry.js +0 -1
  335. package/dist/components/p-1e6f0572.entry.js +0 -1
  336. package/dist/components/p-27e093c3.entry.js +0 -1
  337. package/dist/components/p-3d1bb2fe.entry.js +0 -1
  338. package/dist/components/p-5ff4b1d0.entry.js +0 -1
  339. package/dist/components/p-6be1730a.entry.js +0 -1
  340. package/dist/components/p-786ff09b.entry.js +0 -1
  341. package/dist/components/p-85476a6f.entry.js +0 -9
  342. package/dist/components/p-c2127276.entry.js +0 -1
  343. package/dist/components/p-c3ee9163.entry.js +0 -1
  344. package/dist/components/p-c4cfbf98.entry.js +0 -1
  345. package/dist/components/p-c65082fe.entry.js +0 -1
  346. package/dist/components/p-cc096938.entry.js +0 -1
  347. package/dist/components/p-f4d2f882.entry.js +0 -1
@@ -15,8 +15,9 @@ const EdsInputFile = /*@__PURE__*/ proxyCustomElement(class EdsInputFile extends
15
15
  };
16
16
  this.handleFileSelect = (event) => {
17
17
  const input = event.target;
18
- if (!input.files)
18
+ if (!input.files) {
19
19
  return;
20
+ }
20
21
  const newFiles = Array.from(input.files).map((file) => ({
21
22
  file,
22
23
  id: `${file.name}-${Date.now()}-${Math.random()}`
@@ -48,8 +49,9 @@ const EdsInputFile = /*@__PURE__*/ proxyCustomElement(class EdsInputFile extends
48
49
  this.edsfile.emit({ files });
49
50
  }
50
51
  formatFileSize(bytes) {
51
- if (bytes === 0)
52
+ if (bytes === 0) {
52
53
  return '0 B';
54
+ }
53
55
  const k = 1024;
54
56
  const sizes = ['B', 'KB', 'MB', 'GB'];
55
57
  const i = Math.floor(Math.log(bytes) / Math.log(k));
@@ -68,7 +70,7 @@ const EdsInputFile = /*@__PURE__*/ proxyCustomElement(class EdsInputFile extends
68
70
  }
69
71
  render() {
70
72
  const effectiveLabel = this.buttonLabel || (this.multiple ? 'Choose Files' : 'Choose File');
71
- return (h("div", { key: 'e02d98fbc01dbe7a89eeb3010f966ed4a373ede6', class: "eds-input-file-container" }, h("input", { key: '2013826fda9453aade4528c9f051aac98780662f', ref: (el) => (this.fileInputRef = el), type: "file", id: this.inputId || this.name, name: this.name, class: "eds-input-file-hidden", disabled: this.disabled, required: this.required, multiple: this.multiple, accept: this.accept, onChange: this.handleFileSelect }), h("button", { key: 'f5e5cf91376ccb69b39ef3c9b11095aca8bfb728', type: "button", class: "eds-input-file-btn", onClick: this.handleButtonClick, disabled: this.disabled }, h("svg", { key: '563066375b42d0a8c14f14ac9fdfb587539f4e76', viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", "stroke-width": "2", "stroke-linecap": "round", "stroke-linejoin": "round" }, h("path", { key: 'ebe5549fffa0c2453ab98891da75a464c09e9fa2', d: "M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4" }), h("polyline", { key: '69036b82e15103e481770d0ef2c500b0dcad0399', points: "17 8 12 3 7 8" }), h("line", { key: 'e0531be95796ec6dc7f9fe359e4736a15a0e3640', x1: "12", y1: "3", x2: "12", y2: "15" })), effectiveLabel), this.selectedFiles.length > 0 && (h("div", { key: '62590fb46cee89d2524f1ede71c7af341c3e426a', class: "eds-input-file-chips" }, this.selectedFiles.map((item) => (h("div", { key: item.id, class: "eds-input-file-chip" }, this.getFileIcon(item.file.name), h("span", { class: "eds-input-file-chip-name" }, item.file.name), h("span", { class: "eds-input-file-chip-size" }, this.formatFileSize(item.file.size)), h("button", { type: "button", class: "eds-input-file-chip-remove", onClick: () => this.handleRemoveFile(item.id), disabled: this.disabled, "aria-label": `Remove ${item.file.name}` }, h("svg", { viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", "stroke-width": "2" }, h("line", { x1: "18", y1: "6", x2: "6", y2: "18" }), h("line", { x1: "6", y1: "6", x2: "18", y2: "18" }))))))))));
73
+ return (h("div", { key: '810e30b054b1a6a43c9cc79e318ae487679de1d7', class: "eds-input-file-container" }, h("input", { key: '21a2162df7e6cc430b230407891bd1568bb4fe18', ref: (el) => (this.fileInputRef = el), type: "file", id: this.inputId || this.name, name: this.name, class: "eds-input-file-hidden", disabled: this.disabled, required: this.required, multiple: this.multiple, accept: this.accept, onChange: this.handleFileSelect }), h("button", { key: 'd297cf5c5e63c002558e878a140b931a68a25f54', type: "button", class: "eds-input-file-btn", onClick: this.handleButtonClick, disabled: this.disabled }, h("svg", { key: 'eb08b7516dce89647e28ca0c0ec1f70ade64b2cd', viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", "stroke-width": "2", "stroke-linecap": "round", "stroke-linejoin": "round" }, h("path", { key: 'b0eefaf19325e60d5f974039644f8ab962bbfe92', d: "M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4" }), h("polyline", { key: 'd0bfb65f3c6e3e9d019d23e94ceeb08ba3f6976e', points: "17 8 12 3 7 8" }), h("line", { key: '3e7b0172924b54c26b9100ea264e85be73beabe9', x1: "12", y1: "3", x2: "12", y2: "15" })), effectiveLabel), this.selectedFiles.length > 0 && (h("div", { key: '633d574a840479eb58ec596078960c88fbf4ce94', class: "eds-input-file-chips" }, this.selectedFiles.map((item) => (h("div", { key: item.id, class: "eds-input-file-chip" }, this.getFileIcon(item.file.name), h("span", { class: "eds-input-file-chip-name" }, item.file.name), h("span", { class: "eds-input-file-chip-size" }, this.formatFileSize(item.file.size)), h("button", { type: "button", class: "eds-input-file-chip-remove", onClick: () => this.handleRemoveFile(item.id), disabled: this.disabled, "aria-label": `Remove ${item.file.name}` }, h("svg", { viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", "stroke-width": "2" }, h("line", { x1: "18", y1: "6", x2: "6", y2: "18" }), h("line", { x1: "6", y1: "6", x2: "18", y2: "18" }))))))))));
72
74
  }
73
75
  get hostEl() { return this; }
74
76
  static get style() { return EdsInputFileStyle0; }
@@ -26,11 +26,7 @@ function safeInlineFormat(text) {
26
26
  if (!text) {
27
27
  return '';
28
28
  }
29
- let s = String(text)
30
- .replace(/&/g, '&')
31
- .replace(/</g, '&lt;')
32
- .replace(/>/g, '&gt;')
33
- .replace(/"/g, '&quot;');
29
+ let s = String(text).replace(/&/g, '&amp;').replace(/</g, '&lt;').replace(/>/g, '&gt;').replace(/"/g, '&quot;');
34
30
  // bold
35
31
  s = s.replace(/\*\*([^*]+)\*\*/g, '<strong>$1</strong>');
36
32
  // links — safe schemes only; otherwise drop to the plain label
@@ -42,7 +38,7 @@ function safeInlineFormat(text) {
42
38
  return s;
43
39
  }
44
40
 
45
- const edsInputFooterCss = "p{margin:0}.eds-desc-link{position:relative;display:inline-block;color:var(--brand-black);text-decoration:none}.eds-desc-link::after{content:'';position:absolute;bottom:-2px;left:0;width:0;height:2px;background-color:var(--brand-green);transition:width 0.3s ease}.eds-desc-link:hover::after{width:100%}.eds-desc-link:focus-visible::after{width:0}eds-link{--f-ui-02-fontSize:var(--f-ui-04-fontSize)}.text-error{color:var(--red-700)}.flex{display:flex}.items-center{align-items:center}.f-ui-04{font-family:var(--f-ui-04-fontFamily);font-weight:var(--f-ui-04-fontWeight);font-size:var(--f-ui-04-fontSize);line-height:var(--f-ui-04-lineHeight);letter-spacing:var(--f-ui-04-letterSpacing)}.ml-4{margin-left:0.25rem}.pt-4{padding-top:0.25rem}.mb-4{margin-bottom:0.25rem}.f-ui-05{font-family:var(--f-ui-05-fontFamily);font-weight:var(--f-ui-05-fontWeight);font-size:var(--f-ui-05-fontSize);line-height:var(--f-ui-05-lineHeight);letter-spacing:var(--f-ui-05-letterSpacing)}.text-lighter{color:var(--grey-600)}.effect-color{transition-property:color, background-color, border-color, text-decoration-color, fill, stroke;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:300ms;transition-timing-function:cubic-bezier(0, 0, 0.2, 1)}.hover\\:text-lighter:hover{color:var(--grey-600)}.underline{text-decoration-line:underline}.underline-offset-4{text-underline-offset:4px}";
41
+ const edsInputFooterCss = "p{margin:0}.eds-help{font-family:'IBM Plex Mono', ui-monospace, monospace;font-size:10.5px;line-height:1.45;letter-spacing:0.01em;color:#8a8c8a}.eds-desc-link{position:relative;display:inline-block;color:var(--brand-black);text-decoration:none}.eds-desc-link::after{content:'';position:absolute;bottom:-2px;left:0;width:0;height:2px;background-color:var(--brand-green);transition:width 0.3s ease}.eds-desc-link:hover::after{width:100%}.eds-desc-link:focus-visible::after{width:0}eds-link{--f-ui-02-fontSize:var(--f-ui-04-fontSize)}.text-error{color:var(--red-700)}.flex{display:flex}.items-center{align-items:center}.f-ui-04{font-family:var(--f-ui-04-fontFamily);font-weight:var(--f-ui-04-fontWeight);font-size:var(--f-ui-04-fontSize);line-height:var(--f-ui-04-lineHeight);letter-spacing:var(--f-ui-04-letterSpacing)}.ml-4{margin-left:0.25rem}.pt-4{padding-top:0.25rem}.mb-4{margin-bottom:0.25rem}.f-ui-05{font-family:var(--f-ui-05-fontFamily);font-weight:var(--f-ui-05-fontWeight);font-size:var(--f-ui-05-fontSize);line-height:var(--f-ui-05-lineHeight);letter-spacing:var(--f-ui-05-letterSpacing)}.text-lighter{color:var(--grey-600)}.effect-color{transition-property:color, background-color, border-color, text-decoration-color, fill, stroke;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:300ms;transition-timing-function:cubic-bezier(0, 0, 0.2, 1)}.hover\\:text-lighter:hover{color:var(--grey-600)}.underline{text-decoration-line:underline}.underline-offset-4{text-underline-offset:4px}";
46
42
  const EdsInputFooterStyle0 = edsInputFooterCss;
47
43
 
48
44
  const EdsInputFooter = /*@__PURE__*/ proxyCustomElement(class EdsInputFooter extends HTMLElement {
@@ -57,7 +53,7 @@ const EdsInputFooter = /*@__PURE__*/ proxyCustomElement(class EdsInputFooter ext
57
53
  this.link = undefined;
58
54
  }
59
55
  render() {
60
- return (h("div", { key: '866e375b5dd1d9c958f2255537e919a8c1f25dc7' }, this.error && this.errorMessage && (h("div", { key: '95d11c9cbb7746cc727ad9e037d00a28d9475bfc', id: `error_${this.name}`, class: "text-error flex items-center" }, h("eds-icon-wrapper", { key: 'face7f905ffa7c5f4dc7a7e6825d185e0d6b7901', name: "warning", size: 20 }), h("p", { key: '2011af93e06df1d91972843a510e843763f53b0b', class: "f-ui-04 ml-4 mb-4 pt-4", innerHTML: this.errorMessage }))), this.message && h("p", { key: '39d6833a30e7b93f75154a14bee1e6b4500575cb', id: `desc_${this.name}`, class: "f-ui-04 text-lighter", innerHTML: safeInlineFormat(this.message) }), this.link && (h("eds-link", { key: 'bfbf95e704574ada6f857ca08a90409ab38c1a5e', label: this.link.label, url: this.link.url, intent: "underline", size: "small", external: true }))));
56
+ return (h("div", { key: 'e3cf47ad941e608ec8f5daefd89d72e6d0af0f28' }, this.error && this.errorMessage && (h("div", { key: '0771ab5b0ba362a01df27c4b6ce0949ec51ec857', id: `error_${this.name}`, class: "text-error flex items-center" }, h("eds-icon-wrapper", { key: '43f86aa8632ea24b311e00a336b7d4b00b47ac80', name: "warning", size: 20 }), h("p", { key: '734a138c54dc0120fc6fdd320122c737b33b9d3b', class: "f-ui-04 ml-4 mb-4 pt-4", innerHTML: this.errorMessage }))), this.message && (h("p", { key: 'f8c6d5c1f48e10f9c556fc8d44189836b3b46dbf', id: `desc_${this.name}`, class: "eds-help text-lighter", innerHTML: safeInlineFormat(this.message) })), this.link && (h("eds-link", { key: 'fe7a52e14c6cf0791d36b781a92d7bbeca487ccc', label: this.link.label, url: this.link.url, intent: "underline", size: "small", external: true }))));
61
57
  }
62
58
  static get style() { return EdsInputFooterStyle0; }
63
59
  }, [1, "eds-input-footer", {
@@ -1,6 +1,6 @@
1
1
  import { proxyCustomElement, HTMLElement, h } from '@stencil/core/internal/client';
2
2
 
3
- const edsInputLabelCss = ".input-label{font-family:var(--f-ui-02-fontFamily);font-weight:var(--f-ui-02-fontWeight);font-size:var(--f-ui-02-fontSize);line-height:var(--f-ui-02-lineHeight);letter-spacing:var(--f-ui-02-letterSpacing)}.input-label b,.input-label strong{font-weight:var(--f-ui-02---bold-weight, bold)}.text-lighter{color:var(--grey-600)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0}";
3
+ const edsInputLabelCss = ".input-label{font-family:var(--plex-sans, 'IBM Plex Sans', system-ui, sans-serif);font-size:14.5px;font-weight:600;line-height:1.3;letter-spacing:0;color:var(--brand-black, #07140d)}.input-label b,.input-label strong{font-weight:var(--f-ui-02---bold-weight, bold)}.text-lighter{color:var(--grey-600)}.req-mark{color:var(--eds-field-accent, currentColor);margin-left:1px;font-weight:600}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0}";
4
4
  const EdsInputLabelStyle0 = edsInputLabelCss;
5
5
 
6
6
  const EdsInputLabel = /*@__PURE__*/ proxyCustomElement(class EdsInputLabel extends HTMLElement {
@@ -14,7 +14,7 @@ const EdsInputLabel = /*@__PURE__*/ proxyCustomElement(class EdsInputLabel exten
14
14
  this.disabled = false;
15
15
  }
16
16
  render() {
17
- return (h("label", { key: '40867ae01e94ab7a69b6f82658e4ee1b1e5b87cf', htmlFor: this.name, class: `input-label ${this.disabled ? 'text-lighter' : ''}` }, this.label, this.required && (h("span", { key: 'e3cfc44ea2a7f53f51c544648b3c635557cb8248' }, h("span", { key: 'ff7559b58cb22ce2a3066ed15e77f6088f299aaa', "aria-hidden": "true" }, "*"), h("span", { key: '2c831682aae410ac71589171e2b04981c60052bb', class: "sr-only" }, "required")))));
17
+ return (h("label", { key: '46f04462b12694d932be79bb1d252cd001d29e58', htmlFor: this.name, class: `input-label ${this.disabled ? 'text-lighter' : ''}` }, this.label, this.required && (h("span", { key: 'c747f5a7896b395f5c1b54725a966d54c7e5dfcd' }, h("span", { key: '2a27cfce971df8eab6186028f6c8319f19504317', "aria-hidden": "true", class: "req-mark" }, "*"), h("span", { key: '5876e15a66aa95a62b934edec0d64f01f713d1a8', class: "sr-only" }, "required")))));
18
18
  }
19
19
  static get style() { return EdsInputLabelStyle0; }
20
20
  }, [1, "eds-input-label", {
@@ -28,11 +28,13 @@ const EdsInputRange = /*@__PURE__*/ proxyCustomElement(class EdsInputRange exten
28
28
  var _a;
29
29
  this.sliderVal = (_a = this.value) !== null && _a !== void 0 ? _a : Math.round(this.min + (this.max - this.min) / 2);
30
30
  }
31
- // Keep the internal state in sync when the passed value changes.
31
+ // Keep the internal state in sync when the passed value changes. When the
32
+ // value is cleared (undefined/null — e.g. "Clear form"), fall back to the
33
+ // default midpoint so BOTH the thumb and the filled track reset together
34
+ // (the fill is derived from sliderVal, so it must be updated too).
32
35
  onValueChange(newVal) {
33
- if (newVal !== undefined) {
34
- this.sliderVal = newVal;
35
- }
36
+ this.sliderVal =
37
+ newVal !== undefined && newVal !== null ? newVal : Math.round(this.min + (this.max - this.min) / 2);
36
38
  }
37
39
  componentDidLoad() {
38
40
  // Assign the native input element after the component loads
@@ -45,7 +47,15 @@ const EdsInputRange = /*@__PURE__*/ proxyCustomElement(class EdsInputRange exten
45
47
  render() {
46
48
  var _a;
47
49
  const currentValue = (_a = this.sliderVal) !== null && _a !== void 0 ? _a : Math.round(this.min + (this.max - this.min) / 2);
48
- return (h("div", { key: '231ae0f34900dfa3b8edeb9745ce07220735c613', class: "relative flex flex-col items-start" }, h("input", { key: '2cbfbbb410694a4764f44c26a74f4cbca9b98f3c', id: this.inputId || this.name, name: this.name, min: this.min, max: this.max, step: this.step, value: currentValue, required: this.required, disabled: this.disabled, type: "range", class: "w-full py-6 input", tabindex: "0", role: "slider", "aria-describedby": `desc_${this.name}`, "aria-valuemin": this.min, "aria-valuemax": this.max, "aria-valuenow": currentValue, onInput: this.onInput, onChange: this.onChange }), h("p", { key: '8e7036cbaeebb62c6cd4b7f2105d3fa487ad463e', id: `desc_${this.name}`, class: "block f-ui-05 mt-4 text-light" }, "Current value: ", currentValue)));
50
+ // Paint the "filled" portion of the track up to the current value. Uses the
51
+ // brand accent when present (the var inherits from eds-form's brand body),
52
+ // else the default green — so non-brand forms look exactly as before.
53
+ const pct = this.max > this.min ? ((currentValue - this.min) / (this.max - this.min)) * 100 : 0;
54
+ const trackStyle = {
55
+ background: `linear-gradient(90deg, var(--eds-field-accent, var(--green-500)) ${pct}%, var(--grey-light, #ececec) ${pct}%)`
56
+ };
57
+ const mid = Math.round(this.min + (this.max - this.min) / 2);
58
+ return (h("div", { key: '742f329624bc2a8632640b6a93b6258d915f6deb', class: "eds-range" }, h("div", { key: '112ef4ef42761c85350f9624c10436fbd2600fce', class: "eds-range-top" }, h("span", { key: '2b2dbde929434f68c85a36380cbed1780707dfd8', id: `desc_${this.name}`, class: "eds-range-val" }, currentValue)), h("input", { key: 'd5bcbf157647324a1ddafab2001518707ae0de9b', id: this.inputId || this.name, name: this.name, style: trackStyle, min: this.min, max: this.max, step: this.step, value: currentValue, required: this.required, disabled: this.disabled, type: "range", class: "w-full input eds-range-input", tabindex: "0", role: "slider", "aria-describedby": `desc_${this.name}`, "aria-valuemin": this.min, "aria-valuemax": this.max, "aria-valuenow": currentValue, onInput: this.onInput, onChange: this.onChange }), h("div", { key: 'e72eed37dc3dc0bd596f9198f4d3f59ac11e1c40', class: "eds-range-scale", "aria-hidden": "true" }, h("span", { key: 'ba65117d4dc0c498878760ddf124d614c19af7b9' }, this.min), h("span", { key: '82e42ecec8f53634c005acc151f12a3c6f390ab3' }, mid), h("span", { key: 'b2272241e488952785c92b4a495b1ba744e13d19' }, this.max))));
49
59
  }
50
60
  get el() { return this; }
51
61
  static get watchers() { return {
@@ -64,7 +64,7 @@ const EdsInputSearch$1 = /*@__PURE__*/ proxyCustomElement(class EdsInputSearch e
64
64
  return this.inputElement;
65
65
  }
66
66
  render() {
67
- return (h("div", { key: '52676b3559e14b5153f7d8f0fa6cd12e49354d87', class: "relative flex items-center" }, h("eds-icon-wrapper", { key: '754e8753607c01dab63d156d306f3325547049aa', name: "search", class: "absolute top-1/2 left-[14px] -translate-y-1/2 text-lightest", "aria-hidden": "true" }), h("input", { key: 'b49d523195711316c0817de67776d379a6c7248b', id: this.inputId || this.name, name: this.name, placeholder: this.placeholder, value: this.value || '', required: this.required, disabled: this.disabled, type: "search", "aria-label": this.placeholder, class: `input pl-36 ${this.decorate}`,
67
+ return (h("div", { key: '900ca7578601ff528b717e5bc3e1fe6b43562fb6', class: "relative flex items-center" }, h("eds-icon-wrapper", { key: '722eecc1031f51f83100f9d35719a7ea837f680d', name: "search", class: "absolute top-1/2 left-[14px] -translate-y-1/2 text-lightest", "aria-hidden": "true" }), h("input", { key: '0445caabbf5e3077b708a2b8bdbe0fcee3133398', id: this.inputId || this.name, name: this.name, placeholder: this.placeholder, value: this.value || '', required: this.required, disabled: this.disabled, type: "search", "aria-label": this.placeholder, class: `input pl-36 ${this.decorate}`,
68
68
  //onInput={this.onInput}
69
69
  onChange: this.onChange })));
70
70
  }
@@ -24,12 +24,16 @@ const EdsInputSelect = /*@__PURE__*/ proxyCustomElement(class EdsInputSelect ext
24
24
  const selectId = this.inputId || this.name;
25
25
  const placeholderText = this.placeholder || `Pick from the list`;
26
26
  const describedBy = this.hasMessage || this.error ? `${this.name}-error` : undefined;
27
- return (h("div", { key: '8365ffbc8f6f6386edfc1626d16c9152fd3cce9f', class: "relative" }, h("select", { key: '52e712898a3251cea5447a379886449175e7c8b8', id: selectId, name: this.name, class: {
27
+ return (h("div", { key: '303df3cd45f076ae5b29f301c9dc742e1664887a', class: "relative" }, h("select", { key: '7635ec7c53e7f07c7c71ab25e8475ed53a8d013e', id: selectId, name: this.name, class: {
28
28
  input: true,
29
29
  'input-error': this.error,
30
+ // No real value yet → the placeholder option is showing. Lets CSS
31
+ // render the select text in the light placeholder colour (grey-500),
32
+ // matching text inputs, instead of the dark default text colour.
33
+ 'is-placeholder': !this.value && this.value !== 0,
30
34
  'px-4': true,
31
35
  'py-2': true
32
- }, "aria-invalid": this.error ? 'true' : 'false', "aria-describedby": describedBy, disabled: this.disabled, required: this.required, onChange: this.handleChange }, h("option", { key: 'd52c376ffb683abc0dec72177dba445273d148f7', value: "", disabled: true, selected: !this.value || this.value === '' }, placeholderText), this.options.map((opt, index) => (h("option", { key: index, value: opt.value, selected: opt.value === this.value }, opt.label)))), h("span", { key: 'fecbcb47793f8a57de44711b33d3650be5297aa7', class: "bg-dark rounded-xs absolute top-1/2 right-[6px] flex h-28 w-28 -translate-y-1/2 items-center justify-center" }, h("eds-icon-wrapper", { key: '4fda1345a62eeb212093057382d877f31bb6112d', class: "w-20 h-20", name: "chevron-right" }))));
36
+ }, "aria-invalid": this.error ? 'true' : 'false', "aria-describedby": describedBy, disabled: this.disabled, required: this.required, onChange: this.handleChange }, h("option", { key: '793cd7db90936a9746810075246b5408710ce7ac', value: "", disabled: true, selected: !this.value || this.value === '' }, placeholderText), this.options.map((opt, index) => (h("option", { key: index, value: opt.value, selected: opt.value === this.value }, opt.label)))), h("span", { key: '41a1eb4a753c304148ee6cdc71049fa15cbd61f6', class: "bg-dark rounded-xs absolute top-1/2 right-[6px] flex h-28 w-28 -translate-y-1/2 items-center justify-center" }, h("eds-icon-wrapper", { key: '4ee4022f9d47fc26b27006f144fc598367f50169', class: "w-20 h-20", name: "chevron-right" }))));
33
37
  }
34
38
  }, [0, "eds-input-select", {
35
39
  "inputId": [1, "input-id"],
@@ -52,7 +52,7 @@ const EdsInput = /*@__PURE__*/ proxyCustomElement(class EdsInput extends HTMLEle
52
52
  render() {
53
53
  const withIcon = !!this.icon;
54
54
  const describedBy = this.hasMessage || this.error ? `${this.name}-error` : '';
55
- return (h("div", { key: '0261b14034860a2f59dde8de72d6729ec411d2cf', class: "relative flex items-center" }, this.type === 'textarea' ? (h("textarea", { id: this.inputId || this.name, name: this.name, placeholder: this.placeholder, value: this.innerVal.toString(), required: this.required, disabled: this.disabled, class: `min-h-80 input input-textarea ${withIcon ? 'input-with-icon' : ''} ${this.error ? 'input-error' : ''} ${this.extraClass}`, "aria-invalid": this.error ? 'true' : 'false', "aria-describedby": describedBy, maxlength: this.maxLength, onInput: this.handleInput, onChange: this.handleInput })) : this.type === 'select' ? (h("select", { id: this.inputId || this.name, name: this.name, required: this.required, disabled: this.disabled, class: `input input-select ${this.error ? 'input-error' : ''} ${this.extraClass}`, "aria-invalid": this.error ? 'true' : 'false', "aria-describedby": describedBy, onInput: this.handleInput, onChange: this.handleInput }, this.options.map((option) => (h("option", { value: option.value, selected: option.value === this.innerVal, key: option.value }, option.label))))) : (h("input", Object.assign({ id: this.inputId || this.name, name: this.name, placeholder: this.placeholder, value: this.innerVal.toString(), required: this.required, disabled: this.disabled, type: this.type, tabindex: this.inputTabIndex, checked: ['radio', 'checkbox'].includes(this.type) ? this.checked : undefined }, (this.type === 'number'
55
+ return (h("div", { key: '6456b8536db4d219eb307603c986e0aca4867a66', class: "relative flex items-center" }, this.type === 'textarea' ? (h("textarea", { id: this.inputId || this.name, name: this.name, placeholder: this.placeholder, value: this.innerVal.toString(), required: this.required, disabled: this.disabled, class: `min-h-80 input input-textarea ${withIcon ? 'input-with-icon' : ''} ${this.error ? 'input-error' : ''} ${this.extraClass}`, "aria-invalid": this.error ? 'true' : 'false', "aria-describedby": describedBy, maxlength: this.maxLength, onInput: this.handleInput, onChange: this.handleInput })) : this.type === 'select' ? (h("select", { id: this.inputId || this.name, name: this.name, required: this.required, disabled: this.disabled, class: `input input-select ${this.error ? 'input-error' : ''} ${this.extraClass}`, "aria-invalid": this.error ? 'true' : 'false', "aria-describedby": describedBy, onInput: this.handleInput, onChange: this.handleInput }, this.options.map((option) => (h("option", { value: option.value, selected: option.value === this.innerVal, key: option.value }, option.label))))) : (h("input", Object.assign({ id: this.inputId || this.name, name: this.name, placeholder: this.placeholder, value: this.innerVal.toString(), required: this.required, disabled: this.disabled, type: this.type, tabindex: this.inputTabIndex, checked: ['radio', 'checkbox'].includes(this.type) ? this.checked : undefined }, (this.type === 'number'
56
56
  ? {
57
57
  min: this.min,
58
58
  max: this.max,
@@ -63,7 +63,7 @@ const EdsInput = /*@__PURE__*/ proxyCustomElement(class EdsInput extends HTMLEle
63
63
  input ${this.type === 'radio' ? 'input-radio' : this.type === 'checkbox' ? 'input-checkbox' : ''}
64
64
  ${withIcon && this.type !== 'radio' && this.type !== 'checkbox' ? 'input-icon pl-36' : ''}
65
65
  ${this.error ? 'input-error' : ''}
66
- `, "aria-invalid": this.error ? 'true' : 'false', "aria-describedby": describedBy, maxlength: this.maxLength, onInput: this.handleInput, onChange: this.handleInput }))), this.maxLength && this.type === 'textarea' && (h("span", { key: 'f2a7b410ee586d3266d05d422f3376488392fc6b', class: `input-counter f-ui-05 absolute bottom-8 right-8 ${this.maxLengthReached ? 'input-counter-error' : ''}` }, this.maxLength)), this.icon && (h("eds-icon-wrapper", { key: '37581bbd64652b25a00a401ab359736169814b1f', class: `absolute top-1/2 left-[12px] -translate-y-1/2 ${this.disabled ? 'text-lightest' : 'text-lightest'}`, name: this.icon }))));
66
+ `, "aria-invalid": this.error ? 'true' : 'false', "aria-describedby": describedBy, maxlength: this.maxLength, onInput: this.handleInput, onChange: this.handleInput }))), this.maxLength && this.type === 'textarea' && (h("span", { key: '216f52d80eefa2f89e388e020e597493015ae8d6', class: `input-counter f-ui-05 absolute bottom-8 right-8 ${this.maxLengthReached ? 'input-counter-error' : ''}` }, this.maxLength)), this.icon && (h("eds-icon-wrapper", { key: 'd3771580564237c9a8ded4e07f4293517bc885fd', class: `absolute top-1/2 left-[12px] -translate-y-1/2 ${this.disabled ? 'text-lightest' : 'text-lightest'}`, name: this.icon }))));
67
67
  }
68
68
  get el() { return this; }
69
69
  static get watchers() { return {
@@ -36,7 +36,7 @@ const EdsKgLearningResources$1 = /*@__PURE__*/ proxyCustomElement(class EdsKgLea
36
36
  }
37
37
  async fetchData() {
38
38
  const now = Date.now();
39
- if (cachedData && (now - cacheTimestamp) < CACHE_TTL) {
39
+ if (cachedData && now - cacheTimestamp < CACHE_TTL) {
40
40
  this.software = cachedData;
41
41
  return;
42
42
  }
@@ -45,7 +45,7 @@ const EdsKgLearningResources$1 = /*@__PURE__*/ proxyCustomElement(class EdsKgLea
45
45
  try {
46
46
  const params = new URLSearchParams({
47
47
  size: this.size.toString(),
48
- resolve_names: this.resolveNames.toString(),
48
+ resolve_names: this.resolveNames.toString()
49
49
  });
50
50
  const response = await fetch(`${this.apiEndpoint}?${params}`);
51
51
  if (!response.ok) {
@@ -67,29 +67,25 @@ const EdsKgLearningResources$1 = /*@__PURE__*/ proxyCustomElement(class EdsKgLea
67
67
  getFilteredSoftware() {
68
68
  let filtered = this.software;
69
69
  if (this.filterType) {
70
- filtered = filtered.filter(sw => sw.learning_resources_types.includes(this.filterType));
70
+ filtered = filtered.filter((sw) => sw.learning_resources_types.includes(this.filterType));
71
71
  }
72
72
  if (this.filterLevel) {
73
- filtered = filtered.filter(sw => sw.learning_resources_levels.includes(this.filterLevel));
73
+ filtered = filtered.filter((sw) => sw.learning_resources_levels.includes(this.filterLevel));
74
74
  }
75
75
  if (this.searchQuery) {
76
76
  const q = this.searchQuery.toLowerCase();
77
- filtered = filtered.filter(sw => sw.name.toLowerCase().includes(q) ||
78
- sw.learning_resources.some(lr => {
79
- var _a, _b;
80
- return ((_a = lr.name) === null || _a === void 0 ? void 0 : _a.toLowerCase().includes(q)) ||
81
- ((_b = lr.abstract) === null || _b === void 0 ? void 0 : _b.toLowerCase().includes(q));
82
- }));
77
+ filtered = filtered.filter((sw) => sw.name.toLowerCase().includes(q) ||
78
+ sw.learning_resources.some((lr) => { var _a, _b; return ((_a = lr.name) === null || _a === void 0 ? void 0 : _a.toLowerCase().includes(q)) || ((_b = lr.abstract) === null || _b === void 0 ? void 0 : _b.toLowerCase().includes(q)); }));
83
79
  }
84
80
  return filtered;
85
81
  }
86
82
  getFilteredResources(resources) {
87
83
  let filtered = resources;
88
84
  if (this.filterType) {
89
- filtered = filtered.filter(lr => lr.type === this.filterType);
85
+ filtered = filtered.filter((lr) => lr.type === this.filterType);
90
86
  }
91
87
  if (this.filterLevel) {
92
- filtered = filtered.filter(lr => lr.educational_level === this.filterLevel);
88
+ filtered = filtered.filter((lr) => lr.educational_level === this.filterLevel);
93
89
  }
94
90
  return filtered;
95
91
  }
@@ -116,15 +112,15 @@ const EdsKgLearningResources$1 = /*@__PURE__*/ proxyCustomElement(class EdsKgLea
116
112
  'video tutorial': 'primary',
117
113
  'user documentation': 'dark',
118
114
  'video presentation': 'inverse',
119
- 'slide deck': 'strong',
115
+ 'slide deck': 'strong'
120
116
  };
121
117
  return map[type] || 'brand-dark';
122
118
  }
123
119
  getLevelTagIntent(level) {
124
120
  const map = {
125
- 'beginner': 'brand',
126
- 'intermediate': 'dark',
127
- 'advanced': 'strong',
121
+ beginner: 'brand',
122
+ intermediate: 'dark',
123
+ advanced: 'strong'
128
124
  };
129
125
  return map[level] || 'brand-dark';
130
126
  }
@@ -135,11 +131,11 @@ const EdsKgLearningResources$1 = /*@__PURE__*/ proxyCustomElement(class EdsKgLea
135
131
  }
136
132
  renderResources(sw) {
137
133
  const filtered = this.getFilteredResources(sw.learning_resources);
138
- return (h("div", { class: "resources-content" }, sw.kg_search_url && (h("div", { class: "kg-link" }, h("eds-link", { url: sw.kg_search_url, label: "View in EBRAINS Knowledge Graph", intent: "cta", external: true }))), h("table", { class: "resources-table" }, h("thead", null, h("tr", null, h("th", { class: "col-name" }, "Name"), h("th", { class: "col-type" }, "Type"), h("th", { class: "col-level" }, "Level"))), h("tbody", null, filtered.map(lr => (h("tr", { class: `resource-row ${lr.iri ? 'resource-row--clickable' : ''}`, onClick: () => {
134
+ return (h("div", { class: "resources-content" }, sw.kg_search_url && (h("div", { class: "kg-link" }, h("eds-link", { url: sw.kg_search_url, label: "View in EBRAINS Knowledge Graph", intent: "cta", external: true }))), h("table", { class: "resources-table" }, h("thead", null, h("tr", null, h("th", { class: "col-name" }, "Name"), h("th", { class: "col-type" }, "Type"), h("th", { class: "col-level" }, "Level"))), h("tbody", null, filtered.map((lr) => (h("tr", { class: `resource-row ${lr.iri ? 'resource-row--clickable' : ''}`, onClick: () => {
139
135
  if (lr.iri) {
140
136
  window.open(lr.iri, '_blank', 'noopener,noreferrer');
141
137
  }
142
- } }, h("td", { class: "col-name" }, h("span", { class: "resource-name" }, lr.name || 'Untitled'), lr.abstract && (h("p", { class: "resource-desc" }, lr.abstract))), h("td", { class: "col-type" }, lr.type && (h("eds-tag", { label: lr.type, intent: this.getTagIntent(lr.type), size: "medium" }))), h("td", { class: "col-level" }, lr.educational_level && (h("eds-tag", { label: lr.educational_level, intent: this.getLevelTagIntent(lr.educational_level), size: "medium" })))))))), filtered.length === 0 && (h("p", { class: "no-results" }, "No resources match the current filters."))));
138
+ } }, h("td", { class: "col-name" }, h("span", { class: "resource-name" }, lr.name || 'Untitled'), lr.abstract && h("p", { class: "resource-desc" }, lr.abstract)), h("td", { class: "col-type" }, lr.type && h("eds-tag", { label: lr.type, intent: this.getTagIntent(lr.type), size: "medium" })), h("td", { class: "col-level" }, lr.educational_level && (h("eds-tag", { label: lr.educational_level, intent: this.getLevelTagIntent(lr.educational_level), size: "medium" })))))))), filtered.length === 0 && h("p", { class: "no-results" }, "No resources match the current filters.")));
143
139
  }
144
140
  render() {
145
141
  // Always render the same outer scaffold (header + content area) so the
@@ -148,7 +144,7 @@ const EdsKgLearningResources$1 = /*@__PURE__*/ proxyCustomElement(class EdsKgLea
148
144
  const filtered = !this.loading && !this.error ? this.getFilteredSoftware() : [];
149
145
  // const allTypes = this.getAllTypes();
150
146
  // const allLevels = this.getAllLevels();
151
- return (h("div", { key: '154b59a74cb32996f1bee10ee7758d916bebdd43', class: "lr-container" }, h("div", { key: '0c5c04b65f0c4e4c032b1b1a7d96e98fd6775563', class: "lr-header" }, h("h2", { key: '01ef66537b31a63521f0406cd2ec9976b532d18f', class: "lr-heading" }, this.heading)), this.loading && (h("div", { key: '134ca8e5f7349127b40aa1ae0967cd12dc12cc0b', class: "loading", role: "status", "aria-live": "polite" }, h("eds-spinner", { key: 'a3a0621b6ea041f8da4ef6f36c1688974f3c5591', size: "sm", variant: "primary", background: "transparent", message: "Loading learning resources..." }))), this.error && !this.loading && (h("eds-alert", { key: 'a0334442c175374daf8ce2be4da60ac004e4d0e2', intent: "error", message: this.error })), !this.loading && !this.error && (h("div", { key: 'f2b8244f1ee5c052cabd5eec8cbfc36d06f4d08d', class: "accordion-list" }, filtered.map(sw => (h("eds-accordion", { heading: sw.name, description: this.renderAccordionDescription(sw), variant: this.variant, icon: "book", switchBg: true, clampText: false }, this.renderResources(sw)))), filtered.length === 0 && (h("p", { key: 'd572c9eb76279c93ba2bd5f0fae20b4e1d9fc816', class: "no-results" }, "No software matches the current filters."))))));
147
+ return (h("div", { key: 'aef669885e2bc85b30f70b3db12fbf4040a306a9', class: "lr-container" }, h("div", { key: '95413849959947a851e27a404aa21368aa895e96', class: "lr-header" }, h("h2", { key: '10353aae716a1408f3f49d70501684a633bf7b51', class: "lr-heading" }, this.heading)), this.loading && (h("div", { key: 'd3318b411c4e27551997a697aa165fe4afb8f3fa', class: "loading", role: "status", "aria-live": "polite" }, h("eds-spinner", { key: 'b242ace225a2b93d5d8e6e4fd3b78a23778d1995', size: "sm", variant: "primary", background: "transparent", message: "Loading learning resources..." }))), this.error && !this.loading && h("eds-alert", { key: 'c0a5cf3aa2830cb96f253f10a34babc4bdb9aedb', intent: "error", message: this.error }), !this.loading && !this.error && (h("div", { key: '83671b3aea2286fe508742ae81d8d0d4aae9863c', class: "accordion-list" }, filtered.map((sw) => (h("eds-accordion", { heading: sw.name, description: this.renderAccordionDescription(sw), variant: this.variant, icon: "book", switchBg: true, clampText: false }, this.renderResources(sw)))), filtered.length === 0 && h("p", { key: '2d344afbcaa2f18bddf2872fd1cf1eb0993ce632', class: "no-results" }, "No software matches the current filters.")))));
152
148
  }
153
149
  get el() { return this; }
154
150
  static get style() { return EdsKgLearningResourcesStyle0; }
@@ -51,7 +51,7 @@ const EdsKgWebServicesSelect = /*@__PURE__*/ proxyCustomElement(class EdsKgWebSe
51
51
  // Check cache first
52
52
  const cachedEntry = webServicesCache.get(cacheKey);
53
53
  const now = Date.now();
54
- if (cachedEntry && (now - cachedEntry.timestamp) < CACHE_DURATION) {
54
+ if (cachedEntry && now - cachedEntry.timestamp < CACHE_DURATION) {
55
55
  // Use cached data
56
56
  this.webServices = cachedEntry.data;
57
57
  }
@@ -70,7 +70,7 @@ const EdsKgWebServicesSelect = /*@__PURE__*/ proxyCustomElement(class EdsKgWebSe
70
70
  });
71
71
  }
72
72
  // Format options for eds-input-field: "Localizoom (ebrains-localizoom)"
73
- this.selectOptions = this.webServices.map(service => ({
73
+ this.selectOptions = this.webServices.map((service) => ({
74
74
  label: `${service.name} (${service.short_name})`,
75
75
  value: service.short_name
76
76
  }));
@@ -60,12 +60,8 @@ const linkStyles = cva([
60
60
  'rounded-full',
61
61
  'aria-disabled:bg-dark aria-disabled:text-lightest'
62
62
  ],
63
- cta: [
64
- 'cta-link !px-0 !py-0 !min-h-0 !h-auto'
65
- ],
66
- 'cta-brand': [
67
- 'cta-link-brand !px-0 !py-0 !min-h-0 !h-auto'
68
- ]
63
+ cta: ['cta-link !px-0 !py-0 !min-h-0 !h-auto'],
64
+ 'cta-brand': ['cta-link-brand !px-0 !py-0 !min-h-0 !h-auto']
69
65
  },
70
66
  iconSmall: {
71
67
  true: '',
@@ -287,7 +283,7 @@ const EdsLink = /*@__PURE__*/ proxyCustomElement(class EdsLink extends HTMLEleme
287
283
  const labelClasses = this.hideLabelOnSmallScreen
288
284
  ? 'hidden lg:flex' // Tailwind example: hidden on small screens, visible on larger
289
285
  : '';
290
- return (h("a", { key: 'd167c16280b7f0b4c1fcf14f0f0d3468111e715b', class: `${classes || ''}`, href: isInteractive ? safeUrl : undefined, target: this.external && isInteractive ? '_blank' : undefined, rel: this.external && isInteractive ? 'noopener noreferrer' : undefined, tabIndex: isInteractive ? 0 : -1, "aria-label": isIconOnly ? this.ariaLabel || 'Link' : undefined, "aria-disabled": this.disabled ? 'true' : undefined, "aria-current": this.current ? 'page' : undefined, role: this.disabled ? 'link' : undefined, download: this.download ? '' : undefined, onClick: (event) => this.handleClick(event), onKeyDown: (event) => this.handleKeyDown(event) }, h("span", { key: '000476a609888f5f848722015ce5e6137f26e371', class: "z-1 relative inline-flex items-center justify-center" }, this.renderLeftIcon(), this.label && (h("span", { key: '15232cde31d23c5a466189c69fbdb9db48f08274', class: `${labelClasses} ${this.icon ? (this.iconPos === 'right' ? (this.size === 'large' ? 'pr-4' : 'pr-2') : (this.size === 'large' ? 'pl-4' : 'pl-2')) : ''}` }, this.label)), this.renderRightIcon())));
286
+ return (h("a", { key: 'a447ffc8ba377ceb4fe0dc199ad7225e222d4cf3', class: `${classes || ''}`, href: isInteractive ? safeUrl : undefined, target: this.external && isInteractive ? '_blank' : undefined, rel: this.external && isInteractive ? 'noopener noreferrer' : undefined, tabIndex: isInteractive ? 0 : -1, "aria-label": isIconOnly ? this.ariaLabel || 'Link' : undefined, "aria-disabled": this.disabled ? 'true' : undefined, "aria-current": this.current ? 'page' : undefined, role: this.disabled ? 'link' : undefined, download: this.download ? '' : undefined, onClick: (event) => this.handleClick(event), onKeyDown: (event) => this.handleKeyDown(event) }, h("span", { key: '72d84592cfd7e48e983e281d8e8f1d8a2b739e26', class: "z-1 relative inline-flex items-center justify-center" }, this.renderLeftIcon(), this.label && (h("span", { key: 'a101036d3206e7f610c04dfc9d0a4dcd5c1a2b4f', class: `${labelClasses} ${this.icon ? (this.iconPos === 'right' ? (this.size === 'large' ? 'pr-4' : 'pr-2') : this.size === 'large' ? 'pl-4' : 'pl-2') : ''}` }, this.label)), this.renderRightIcon())));
291
287
  }
292
288
  get el() { return this; }
293
289
  static get style() { return EdsLinkStyle0; }
@@ -12,17 +12,10 @@ const EdsLogo = /*@__PURE__*/ proxyCustomElement(class EdsLogo extends HTMLEleme
12
12
  this.__registerHost();
13
13
  this.__attachShadow();
14
14
  this.href = '/';
15
- this.orientation = 'horizontal';
16
15
  this.variant = 'positive';
17
- this.label = 'Home';
18
16
  }
19
17
  /**
20
- * Handles the click event on the logo link.
21
- * Emits a `matomoEvent` for analytics tracking with details about the interaction.
22
- * - `category`: Component type (e.g., "ui-component").
23
- * - `tag`: The HTML tag name of the component.
24
- * - `name`: Event name, set as "logo".
25
- * - `action`: The action, set as "click".
18
+ * Emits an analytics event when the logo link is clicked.
26
19
  */
27
20
  handleClick() {
28
21
  sendAnalytics({
@@ -32,26 +25,15 @@ const EdsLogo = /*@__PURE__*/ proxyCustomElement(class EdsLogo extends HTMLEleme
32
25
  action: 'click'
33
26
  });
34
27
  }
35
- /**
36
- * Determines the appropriate SVG content based on the `orientation` and `type` props.
37
- */
38
- getLogo() {
39
- if (this.variant == 'negative') {
40
- return logoNegative;
41
- }
42
- return logoPositive;
43
- }
44
28
  render() {
45
- const logoContent = this.getLogo();
46
- return (h("a", { key: '3f8257c9481079f011278b114e13effe9057d823', href: this.href, onClick: () => this.handleClick(), class: "eds-logo-wrapper", "aria-label": this.label }, h("div", { key: '4dac45a1a0c38c6e1613995aad2005b41acac775', innerHTML: logoContent })));
29
+ const logoContent = this.variant === 'negative' ? logoNegative : logoPositive;
30
+ return (h("a", { key: '3576feaa13063508c317d8b31817165de79ced77', href: this.href, onClick: () => this.handleClick(), class: "eds-logo-wrapper", "aria-label": "Home" }, h("div", { key: 'b43ef52813a59ba47e4a07c3d410b007a27ca186', innerHTML: logoContent })));
47
31
  }
48
32
  get el() { return this; }
49
33
  static get style() { return EdsLogoStyle0; }
50
34
  }, [1, "eds-logo", {
51
35
  "href": [1],
52
- "orientation": [1],
53
- "variant": [1, "type"],
54
- "label": [1]
36
+ "variant": [1, "type"]
55
37
  }]);
56
38
  function defineCustomElement() {
57
39
  if (typeof customElements === "undefined") {
@@ -54,7 +54,15 @@ const EdsModal$1 = /*@__PURE__*/ proxyCustomElement(class EdsModal extends HTMLE
54
54
  'md:top-20'
55
55
  ].join(' ');
56
56
  case 'bottom':
57
- return ['bottom-16', 'left-0', 'w-full', 'md:left-1/2', 'md:w-auto', 'md:-translate-x-1/2', 'md:bottom-20'].join(' ');
57
+ return [
58
+ 'bottom-16',
59
+ 'left-0',
60
+ 'w-full',
61
+ 'md:left-1/2',
62
+ 'md:w-auto',
63
+ 'md:-translate-x-1/2',
64
+ 'md:bottom-20'
65
+ ].join(' ');
58
66
  /*case 'left':
59
67
 
60
68
  case 'right':
@@ -77,11 +85,13 @@ const EdsModal$1 = /*@__PURE__*/ proxyCustomElement(class EdsModal extends HTMLE
77
85
  }
78
86
  trapFocus(event) {
79
87
  var _a;
80
- if (event.key !== 'Tab')
88
+ if (event.key !== 'Tab') {
81
89
  return;
90
+ }
82
91
  const focusableElements = (_a = this.el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelectorAll('button, [href], input, select, textarea, [tabindex]:not([tabindex="-1"])');
83
- if (!focusableElements || focusableElements.length === 0)
92
+ if (!focusableElements || focusableElements.length === 0) {
84
93
  return;
94
+ }
85
95
  const firstElement = focusableElements[0];
86
96
  const lastElement = focusableElements[focusableElements.length - 1];
87
97
  if (event.shiftKey) {
@@ -90,11 +100,9 @@ const EdsModal$1 = /*@__PURE__*/ proxyCustomElement(class EdsModal extends HTMLE
90
100
  event.preventDefault();
91
101
  }
92
102
  }
93
- else {
94
- if (document.activeElement === lastElement) {
95
- firstElement.focus();
96
- event.preventDefault();
97
- }
103
+ else if (document.activeElement === lastElement) {
104
+ firstElement.focus();
105
+ event.preventDefault();
98
106
  }
99
107
  }
100
108
  lockBodyScroll() {
@@ -177,8 +185,9 @@ const EdsModal$1 = /*@__PURE__*/ proxyCustomElement(class EdsModal extends HTMLE
177
185
  * Closes the modal when the Escape key is pressed and handles focus trapping on Tab.
178
186
  */
179
187
  handleKeyDown(event) {
180
- if (!this.isOpen)
188
+ if (!this.isOpen) {
181
189
  return;
190
+ }
182
191
  if (event.key === 'Escape') {
183
192
  this.close();
184
193
  }
@@ -86,14 +86,14 @@ const EdsNps = /*@__PURE__*/ proxyCustomElement(class EdsNps extends HTMLElement
86
86
  }
87
87
  render() {
88
88
  const count = this.max - this.min + 1;
89
- return (h("div", { key: '412ddeabf0cc97829202063af25f17e3309b0754', class: "eds-nps" }, h("eds-input-label", { key: '100a47e710fa75d6a5761a87ca68e8bc8910e248', id: "nps-question", name: "nps-question", label: this.question }), h("div", { key: '9a7a63112e17f4c725005e1ae8e42c98107db7c4', class: "eds-nps__scale" }, h("div", { key: '501029dad573cd31d956ae3cae67f2db9f2649f1', id: "nps-buttons", role: "radiogroup", "aria-labelledby": "nps-question", onKeyDown: this.handleKeyNav, class: "flex flex-wrap gap-2 my-8" }, Array.from({ length: count }, (_, i) => {
89
+ return (h("div", { key: 'edbeca6a946c3b355161d09707d6732dd5a79e67', class: "eds-nps" }, h("eds-input-label", { key: 'cf2b345b98407ee204a914e50183f5f895698adb', id: "nps-question", name: "nps-question", label: this.question }), h("div", { key: '423d0d8b676c8d3a72efd71f092a6b041a42c007', class: "eds-nps__scale" }, h("div", { key: 'b93fdd4168213fd5835a1253c5731c8dfa860572', id: "nps-buttons", role: "radiogroup", "aria-labelledby": "nps-question", onKeyDown: this.handleKeyNav, class: "flex flex-wrap gap-2 my-8" }, Array.from({ length: count }, (_, i) => {
90
90
  const val = this.min + i;
91
91
  const isSelected = val === this.internalValue;
92
92
  const tabIndex = isSelected || (this.internalValue == null && i === 0) ? 0 : -1;
93
93
  return (h("div", { class: "flex", key: val }, h("eds-button", { ref: (el) => (this.btnRefs[i] = el), size: "large", role: "radio", "aria-checked": isSelected ? 'true' : 'false', "aria-label": `${val}`, onClick: () => this.onSelect(val), tabIndex: tabIndex, intent: isSelected ? 'brand' : 'brandLight', class: isSelected ? 'eds-nps__btn is-selected' : 'eds-nps__btn', "extra-class": "!block !px-0 w-full", label: `${val}`, pill: true, onFocus: () => {
94
94
  this.internalValue = val;
95
95
  } })));
96
- })), h("div", { key: 'aa15457591f1edf6e59eed384bcfbb25d49c9fd5', class: "flex justify-between eds-nps__labels" }, h("span", { key: 'a468b290491e368e3084f17ce40c6aa39e00ad3a', class: "f-ui-04 text-light ml-4" }, this.leftLabel), h("span", { key: '146b9eea4bbc360f7765e69e319738c77beae69d', class: "f-ui-04 text-light mr-4" }, this.rightLabel)))));
96
+ })), h("div", { key: '035bf1b3da3c481084201b1edb76a4d3e900a878', class: "flex justify-between eds-nps__labels" }, h("span", { key: '218622e6374ffa7b137b38dde7654e7b671cea6a', class: "f-ui-04 text-light ml-4" }, this.leftLabel), h("span", { key: '66d04e813fa6eee2fb52b7f48540b647016e0fe7', class: "f-ui-04 text-light mr-4" }, this.rightLabel)))));
97
97
  }
98
98
  get el() { return this; }
99
99
  static get watchers() { return {
@@ -246,7 +246,7 @@ const EdsPagination = /*@__PURE__*/ proxyCustomElement(class EdsPagination exten
246
246
  }
247
247
  render() {
248
248
  const navigableIndex = -1; // Track index for keyboard navigation
249
- return (h("div", { key: '5c11fd306f0ebf47a452e44d633e18b2e3860d78' }, this.total > 0 && this.mode === 'default' && (h("p", { key: 'fe8b7f7b6c7785152f1edd90a750f4a9a7e2768b', class: "f-ui-03 text-light mb-28 w-full text-center", "aria-live": "polite", id: "pagination-info" }, h("span", { key: '5e2c67535dbf765dc662770164404f0de69315a1', class: "text-light sr-only" }, "Results:"), this.pageResults())), this.mode === 'navigator' || (this.lastPage && this.lastPage > 1) ? (h("nav", { "aria-label": "Pagination Navigation", "aria-describedby": this.mode === 'default' ? 'pagination-info' : undefined, onKeyDown: this.handleKeyDown }, h("ul", { class: "flex items-center justify-center gap-x-8", role: "list" }, h("li", { class: "mr-auto" }, this.useButtons ? (h("div", { class: "pagination-button-wrapper", onFocus: () => this.handleItemFocus(navigableIndex) }, h("eds-button", { label: this.prevLabel, disabled: this.mode === 'navigator' ? !this.prevUrl : this.isFirstPage(), "aria-label": "Go to previous page", icon: "chevron-left", "icon-pos": "left", size: "small", "icon-small": "true", intent: "ghost", "extra-class": "!p-8 lg:!pr-12 pagination-button", onClick: (event) => {
249
+ return (h("div", { key: '7968465b6c55f17657aa5bd3271448a9d780bec7' }, this.total > 0 && this.mode === 'default' && (h("p", { key: 'e266baaf3b45095b1e0d90c493d254405fa317b7', class: "f-ui-03 text-light mb-28 w-full text-center", "aria-live": "polite", id: "pagination-info" }, h("span", { key: '2acbccf0cb69248fb36b2479eb925d5cb728a3b5', class: "text-light sr-only" }, "Results:"), this.pageResults())), this.mode === 'navigator' || (this.lastPage && this.lastPage > 1) ? (h("nav", { "aria-label": "Pagination Navigation", "aria-describedby": this.mode === 'default' ? 'pagination-info' : undefined, onKeyDown: this.handleKeyDown }, h("ul", { class: "flex items-center justify-center gap-x-8", role: "list" }, h("li", { class: "mr-auto" }, this.useButtons ? (h("div", { class: "pagination-button-wrapper", onFocus: () => this.handleItemFocus(navigableIndex) }, h("eds-button", { label: this.prevLabel, disabled: this.mode === 'navigator' ? !this.prevUrl : this.isFirstPage(), "aria-label": "Go to previous page", icon: "chevron-left", "icon-pos": "left", size: "small", "icon-small": "true", intent: "ghost", "extra-class": "!p-8 lg:!pr-12 pagination-button", onClick: (event) => {
250
250
  if (this.mode === 'default' && !this.isFirstPage()) {
251
251
  this.handlePageClick(event, (this.currentPage || 1) - 1);
252
252
  }
@@ -93,7 +93,7 @@ EdsPie$1.PALETTES = {
93
93
  '#d8d8d8', // grey-400
94
94
  '#9dffb4', // green-300
95
95
  '#e6e6e6', // grey-300
96
- '#d3ffdc', // green-200
96
+ '#d3ffdc' // green-200
97
97
  ],
98
98
  mono: [
99
99
  '#666666', // grey-700
@@ -104,7 +104,7 @@ EdsPie$1.PALETTES = {
104
104
  '#6e6e6e', // grey-600
105
105
  '#d8d8d8', // grey-400
106
106
  '#f2f2f2', // grey-200
107
- '#242424', // grey-900
107
+ '#242424' // grey-900
108
108
  ]
109
109
  };
110
110
  function defineCustomElement$1() {
@@ -45,14 +45,7 @@ const EdsProgressBar$1 = /*@__PURE__*/ proxyCustomElement(class EdsProgressBar e
45
45
  ]
46
46
  .filter(Boolean)
47
47
  .join(' ');
48
- const fillClasses = [
49
- 'inner',
50
- 'h-full',
51
- 'transition-all',
52
- 'duration-300',
53
- 'bg-accent',
54
- 'z-0'
55
- ]
48
+ const fillClasses = ['inner', 'h-full', 'transition-all', 'duration-300', 'bg-accent', 'z-0']
56
49
  .filter(Boolean)
57
50
  .join(' ');
58
51
  return (h("div", { role: "progressbar", "aria-valuemin": "0", "aria-valuemax": "100", "aria-valuenow": progressValue, "aria-valuetext": `${progressValue}%`, class: outerClasses }, h("div", { class: fillClasses, style: { width: `${progressValue}%` } }), h("div", { class: "absolute inset-0 flex items-center justify-center pointer-events-none z-10" }, h("span", { class: "text-default f-ui-01" }, progressValue, "%"))));
@@ -83,7 +83,7 @@ const EdsRating = /*@__PURE__*/ proxyCustomElement(class EdsRating extends HTMLE
83
83
  this.onSelect(next);
84
84
  }
85
85
  render() {
86
- return (h("div", { key: '01857f12c63fbe53b95152902ddba594aa736f6f', id: "rating-buttons", role: "group", "aria-labelledby": "rating", class: "stars flex space-x-1 my-8", onKeyDown: (e) => this.handleKeyNav(e) }, Array.from({ length: this.ratingCount }, (_, index) => {
86
+ return (h("div", { key: '57a4d7bc36daac45ba1b2a6924a6976919614c99', id: "rating-buttons", role: "group", "aria-labelledby": "rating", class: "stars flex space-x-1 my-8", onKeyDown: (e) => this.handleKeyNav(e) }, Array.from({ length: this.ratingCount }, (_, index) => {
87
87
  const starRating = index + 1;
88
88
  const isSelected = starRating <= this.internalRating;
89
89
  // Use the mapping text if available; otherwise, fall back to a generic label.