@ebrains/components 3.0.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 (427) 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_52.cjs.entry.js → eds-accordion_53.cjs.entry.js} +1095 -336
  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-feedback.cjs.entry.js +1 -1
  11. package/dist/cjs/eds-frame.cjs.entry.js +1 -1
  12. package/dist/cjs/eds-gauge.cjs.entry.js +1 -1
  13. package/dist/cjs/eds-gitlab-contributors.cjs.entry.js +35 -32
  14. package/dist/cjs/eds-icon-bluesky.cjs.entry.js +1 -1
  15. package/dist/cjs/eds-icon-eu.cjs.entry.js +1 -1
  16. package/dist/cjs/eds-icon-facebook.cjs.entry.js +1 -1
  17. package/dist/cjs/eds-icon-gitlab.cjs.entry.js +1 -1
  18. package/dist/cjs/eds-icon-linkedin.cjs.entry.js +1 -1
  19. package/dist/cjs/eds-icon-mastodon.cjs.entry.js +1 -1
  20. package/dist/cjs/eds-icon-twitter.cjs.entry.js +1 -1
  21. package/dist/cjs/eds-icon-youtube.cjs.entry.js +1 -1
  22. package/dist/cjs/eds-input-search.cjs.entry.js +76 -0
  23. package/dist/cjs/eds-modal.cjs.entry.js +18 -9
  24. package/dist/cjs/eds-pie.cjs.entry.js +2 -2
  25. package/dist/cjs/eds-section-core_2.cjs.entry.js +3 -3
  26. package/dist/cjs/eds-timeline.cjs.entry.js +1 -1
  27. package/dist/cjs/eds-toast-manager.cjs.entry.js +1 -1
  28. package/dist/cjs/eds-trl-badge.cjs.entry.js +184 -0
  29. package/dist/cjs/incorrect-use-of-colors.cjs.entry.js +1 -1
  30. package/dist/cjs/index-50bc1aa4.js +10 -2
  31. package/dist/cjs/loader.cjs.js +1 -1
  32. package/dist/cjs/logo-space.cjs.entry.js +58 -1
  33. package/dist/cjs/logo-variations-horizontal_2.cjs.entry.js +2 -2
  34. package/dist/cjs/logo-variations-tabs.cjs.entry.js +1 -1
  35. package/dist/cjs/logo-wrong-usage.cjs.entry.js +1 -1
  36. package/dist/cjs/svg-repository.cjs.entry.js +1 -1
  37. package/dist/cjs/token-list_3.cjs.entry.js +3 -3
  38. package/dist/cjs/token-ratios.cjs.entry.js +1 -1
  39. package/dist/cjs/token-spacing.cjs.entry.js +1 -1
  40. package/dist/cjs/token-typography.cjs.entry.js +8 -2
  41. package/dist/collection/collection-manifest.json +4 -1
  42. package/dist/collection/components/eds-accordion/eds-accordion.css +3 -2
  43. package/dist/collection/components/eds-accordion/eds-accordion.js +2 -5
  44. package/dist/collection/components/eds-accordion/eds-accordion.stories.js +7 -19
  45. package/dist/collection/components/eds-alert/eds-alert.css +14 -0
  46. package/dist/collection/components/eds-alert/eds-alert.js +2 -1
  47. package/dist/collection/components/eds-alert/eds-alert.stories.js +19 -147
  48. package/dist/collection/components/eds-avatar/eds-avatar.js +1 -1
  49. package/dist/collection/components/eds-avatar/eds-avatar.stories.js +2 -2
  50. package/dist/collection/components/eds-block-break/eds-block-break.js +1 -1
  51. package/dist/collection/components/eds-breadcrump/eds-breadcrump.js +1 -1
  52. package/dist/collection/components/eds-button/eds-button.css +15 -0
  53. package/dist/collection/components/eds-button/eds-button.js +17 -14
  54. package/dist/collection/components/eds-button/eds-button.stories.js +4 -1
  55. package/dist/collection/components/eds-cards/eds-card-app/eds-card-app.js +2 -5
  56. package/dist/collection/components/eds-cards/eds-card-composer/eds-card-desc/eds-card-desc.js +1 -1
  57. package/dist/collection/components/eds-cards/eds-card-composer/eds-card-title/eds-card-title.js +1 -1
  58. package/dist/collection/components/eds-cards/eds-card-cta/eds-card-cta.css +10 -1
  59. package/dist/collection/components/eds-cards/eds-card-cta/eds-card-cta.js +2 -5
  60. package/dist/collection/components/eds-cards/eds-card-cta/eds-card-cta.stories.js +4 -1
  61. package/dist/collection/components/eds-cards/eds-card-feature/eds-card-feature.js +2 -5
  62. package/dist/collection/components/eds-cards/eds-card-generic/eds-card-generic.js +2 -4
  63. package/dist/collection/components/eds-cards/eds-card-hero/eds-card-hero.js +6 -7
  64. package/dist/collection/components/eds-cards/eds-card-stat/eds-card-stat.js +6 -7
  65. package/dist/collection/components/eds-charts/eds-gauge/eds-gauge.js +1 -1
  66. package/dist/collection/components/eds-charts/eds-pie/eds-pie.js +2 -2
  67. package/dist/collection/components/eds-code-block/eds-code-block.css +72 -106
  68. package/dist/collection/components/eds-code-block/eds-code-block.js +1 -1
  69. package/dist/collection/components/eds-dropdown/eds-dropdown.js +30 -4
  70. package/dist/collection/components/eds-feedback/eds-feedback.js +1 -1
  71. package/dist/collection/components/eds-footer/eds-footer.css +143 -203
  72. package/dist/collection/components/eds-footer/eds-footer.js +176 -74
  73. package/dist/collection/components/eds-footer/eds-footer.stories.js +109 -17
  74. package/dist/collection/components/eds-form/eds-form.css +493 -1
  75. package/dist/collection/components/eds-form/eds-form.js +256 -14
  76. package/dist/collection/components/eds-form/eds-form.stories.js +110 -3
  77. package/dist/collection/components/eds-frame/eds-frame.js +1 -1
  78. package/dist/collection/components/eds-header/eds-header.js +1 -1
  79. package/dist/collection/components/eds-header/eds-header.stories.js +26 -12
  80. package/dist/collection/components/eds-icon-wrapper/eds-icon-wrapper.js +20 -1
  81. package/dist/collection/components/eds-icons/eds-icon-eu/eds-icon-eu.js +1 -1
  82. package/dist/collection/components/eds-icons/eds-icon-gitlab/eds-icon-gitlab.js +1 -1
  83. package/dist/collection/components/eds-icons/social/eds-icon-bluesky/eds-icon-bluesky.js +1 -1
  84. package/dist/collection/components/eds-icons/social/eds-icon-facebook/eds-icon-facebook.js +1 -1
  85. package/dist/collection/components/eds-icons/social/eds-icon-linkedin/eds-icon-linkedin.js +1 -1
  86. package/dist/collection/components/eds-icons/social/eds-icon-mastodon/eds-icon-mastodon.js +1 -1
  87. package/dist/collection/components/eds-icons/social/eds-icon-twitter/eds-icon-twitter.js +1 -1
  88. package/dist/collection/components/eds-icons/social/eds-icon-youtube/eds-icon-youtube.js +1 -1
  89. package/dist/collection/components/eds-img/eds-img.js +2 -2
  90. package/dist/collection/components/eds-img/eds-img.stories.js +29 -52
  91. package/dist/collection/components/eds-input-dropzone/eds-input-dropzone.js +7 -4
  92. package/dist/collection/components/eds-input-elements/eds-input/eds-input.js +20 -2
  93. package/dist/collection/components/eds-input-elements/eds-input-footer/eds-input-footer.css +39 -0
  94. package/dist/collection/components/eds-input-elements/eds-input-footer/eds-input-footer.js +2 -1
  95. package/dist/collection/components/eds-input-elements/eds-input-label/eds-input-label.css +17 -5
  96. package/dist/collection/components/eds-input-elements/eds-input-label/eds-input-label.js +1 -1
  97. package/dist/collection/components/eds-input-elements/eds-input-range/eds-input-range.js +15 -5
  98. package/dist/collection/components/eds-input-elements/eds-input-search/eds-input-search.js +1 -1
  99. package/dist/collection/components/eds-input-elements/eds-input-search/eds-input-search.stories.js +30 -0
  100. package/dist/collection/components/eds-input-elements/eds-input-select/eds-input-select.js +6 -2
  101. package/dist/collection/components/eds-input-field/eds-input-field.css +219 -0
  102. package/dist/collection/components/eds-input-field/eds-input-field.js +16 -5
  103. package/dist/collection/components/eds-input-field/eds-input-field.stories.js +105 -125
  104. package/dist/collection/components/eds-input-file/eds-input-file.js +5 -3
  105. package/dist/collection/components/eds-link/eds-link.js +4 -8
  106. package/dist/collection/components/eds-link/eds-link.stories.js +13 -8
  107. package/dist/collection/components/eds-logo/eds-logo.js +13 -66
  108. package/dist/collection/components/eds-logo/eds-logo.stories.js +36 -17
  109. package/dist/collection/components/eds-modal/eds-modal.js +18 -9
  110. package/dist/collection/components/eds-modal/eds-modal.stories.js +11 -8
  111. package/dist/collection/components/eds-nps/eds-nps.css +32 -0
  112. package/dist/collection/components/eds-nps/eds-nps.js +3 -3
  113. package/dist/collection/components/eds-pagination/eds-pagination.js +2 -2
  114. package/dist/collection/components/eds-progress-bar/eds-progress-bar.js +1 -8
  115. package/dist/collection/components/eds-rating/eds-rating.css +9 -0
  116. package/dist/collection/components/eds-rating/eds-rating.js +2 -2
  117. package/dist/collection/components/eds-section/eds-section-core/eds-section-core.js +1 -1
  118. package/dist/collection/components/eds-section/eds-section-heading/eds-section-heading.js +2 -2
  119. package/dist/collection/components/eds-sidebar/eds-sidebar.js +2 -2
  120. package/dist/collection/components/eds-social-networks/eds-social-networks.js +1 -1
  121. package/dist/collection/components/eds-spinner/eds-spinner.js +1 -1
  122. package/dist/collection/components/eds-steps/eds-steps.css +56 -25
  123. package/dist/collection/components/eds-steps/eds-steps.js +27 -7
  124. package/dist/collection/components/eds-steps-v2/eds-steps-v2.css +93 -28
  125. package/dist/collection/components/eds-steps-v2/eds-steps-v2.js +57 -10
  126. package/dist/collection/components/eds-steps-v2/eds-steps-v2.stories.js +80 -17
  127. package/dist/collection/components/eds-switch/eds-switch.css +26 -3
  128. package/dist/collection/components/eds-switch/eds-switch.js +10 -7
  129. package/dist/collection/components/eds-switch/eds-switch.stories.js +20 -1
  130. package/dist/collection/components/eds-table/eds-table.css +21 -4
  131. package/dist/collection/components/eds-table/eds-table.js +16 -51
  132. package/dist/collection/components/eds-table/eds-table.stories.js +7 -115
  133. package/dist/collection/components/eds-tabs/eds-tabs.css +7 -1
  134. package/dist/collection/components/eds-tabs/eds-tabs.js +49 -18
  135. package/dist/collection/components/eds-tabs/eds-tabs.stories.js +2 -2
  136. package/dist/collection/components/eds-tag/eds-tag.js +1 -1
  137. package/dist/collection/components/eds-timeline/eds-timeline.js +1 -1
  138. package/dist/collection/components/eds-toast/eds-toast.css +146 -0
  139. package/dist/collection/components/eds-toast/eds-toast.js +106 -4
  140. package/dist/collection/components/eds-toast/eds-toast.stories.js +102 -5
  141. package/dist/collection/components/eds-toast-manager/eds-toast-manager.js +1 -1
  142. package/dist/collection/components/eds-tooltip/eds-tooltip.js +1 -1
  143. package/dist/collection/components/eds-tooltip/eds-tooltip.stories.js +7 -1
  144. package/dist/collection/components/eds-user/eds-user.js +2 -5
  145. package/dist/collection/components/eds-user/eds-user.stories.js +8 -11
  146. package/dist/collection/eds-docs-ui/colors/color-palette/primary.js +1 -1
  147. package/dist/collection/eds-docs-ui/colors/color-palette/secondary.js +1 -1
  148. package/dist/collection/eds-docs-ui/colors/color-palette/support.js +1 -1
  149. package/dist/collection/eds-docs-ui/colors/gradient-palette/primary.js +1 -1
  150. package/dist/collection/eds-docs-ui/colors/gradient-palette/secondary.js +7 -7
  151. package/dist/collection/eds-docs-ui/colors/gradient-palette/support.js +3 -3
  152. package/dist/collection/eds-docs-ui/colors/use-of-colors/correct-use-of-colors.js +1 -1
  153. package/dist/collection/eds-docs-ui/colors/use-of-colors/incorrect-use-of-colors.js +1 -1
  154. package/dist/collection/eds-docs-ui/components-section/components-section.js +1 -1
  155. package/dist/collection/eds-docs-ui/design-tokens/docs-tokens/docs-tokens.js +1 -1
  156. package/dist/collection/eds-docs-ui/design-tokens/token-list/token-list.js +1 -1
  157. package/dist/collection/eds-docs-ui/design-tokens/token-radii/token-radii.js +1 -1
  158. package/dist/collection/eds-docs-ui/design-tokens/token-ratios/token-ratios.js +1 -1
  159. package/dist/collection/eds-docs-ui/design-tokens/token-shadows/token-shadows.js +1 -1
  160. package/dist/collection/eds-docs-ui/design-tokens/token-spacing/token-spacing.js +1 -1
  161. package/dist/collection/eds-docs-ui/design-tokens/token-typography/token-typography.js +8 -2
  162. package/dist/collection/eds-docs-ui/docs-palettes/docs-palettes.js +1 -1
  163. package/dist/collection/eds-docs-ui/logo/logo-space/logo-space.js +58 -1
  164. package/dist/collection/eds-docs-ui/logo/logo-variations/horizontal/logo-variations-horizontal.js +1 -1
  165. package/dist/collection/eds-docs-ui/logo/logo-variations/vertical/logo-variations-vertical.js +1 -1
  166. package/dist/collection/eds-docs-ui/logo/logo-variations-tabs/logo-variations.js +1 -1
  167. package/dist/collection/eds-docs-ui/logo/logo-wrong-usage/logo-wrong-usage.js +1 -1
  168. package/dist/collection/eds-docs-ui/svg-repository/svg-repository.js +1 -1
  169. package/dist/collection/shared-ui/eds-cookies-preference/eds-cookies-preference.js +1 -1
  170. package/dist/collection/shared-ui/eds-gitlab-contributors/eds-gitlab-contributors.css +19 -0
  171. package/dist/collection/shared-ui/eds-gitlab-contributors/eds-gitlab-contributors.js +34 -31
  172. package/dist/collection/shared-ui/eds-global-search/eds-global-search.css +166 -0
  173. package/dist/collection/shared-ui/eds-global-search/eds-global-search.js +69 -7
  174. package/dist/collection/shared-ui/eds-kg-learning-resources/eds-kg-learning-resources.css +205 -0
  175. package/dist/collection/shared-ui/eds-kg-learning-resources/eds-kg-learning-resources.js +253 -0
  176. package/dist/collection/shared-ui/eds-kg-web-services-select/eds-kg-web-services-select.js +2 -2
  177. package/dist/collection/shared-ui/eds-kg-web-services-select/eds-kg-web-services-select.stories.js +1 -3
  178. package/dist/collection/shared-ui/eds-matomo-notice/eds-matomo-notice.css +23 -102
  179. package/dist/collection/shared-ui/eds-matomo-notice/eds-matomo-notice.js +7 -1
  180. package/dist/collection/shared-ui/eds-matomo-notice/eds-matomo-notice.stories.js +1 -1
  181. package/dist/collection/shared-ui/eds-search-select/eds-search-select.css +213 -0
  182. package/dist/collection/shared-ui/eds-search-select/eds-search-select.js +706 -0
  183. package/dist/collection/shared-ui/eds-search-select/eds-search-select.stories.js +90 -0
  184. package/dist/collection/shared-ui/eds-trl-badge/ebrains-mark.js +26 -0
  185. package/dist/collection/shared-ui/eds-trl-badge/eds-trl-badge.css +22 -0
  186. package/dist/collection/shared-ui/eds-trl-badge/eds-trl-badge.js +324 -0
  187. package/dist/collection/shared-ui/eds-trl-badge/eds-trl-badge.stories.js +99 -0
  188. package/dist/collection/shared-ui/examples/eds-app-root/eds-app-root.js +1 -1
  189. package/dist/collection/utils/eds-form/formValidators.js +2 -1
  190. package/dist/collection/utils/eds-form/safeFormat.js +35 -0
  191. package/dist/components/components-section.js +1 -1
  192. package/dist/components/components.css +12 -11
  193. package/dist/components/components.esm.js +1 -1
  194. package/dist/components/correct-use-of-colors.js +1 -1
  195. package/dist/components/docs-palettes.js +1 -1
  196. package/dist/components/docs-tokens.js +1 -1
  197. package/dist/components/eds-accordion2.js +3 -6
  198. package/dist/components/eds-alert2.js +3 -2
  199. package/dist/components/eds-app-root.js +1 -1
  200. package/dist/components/eds-avatar2.js +1 -1
  201. package/dist/components/eds-block-break2.js +1 -1
  202. package/dist/components/eds-breadcrumb.js +1 -1
  203. package/dist/components/eds-button2.js +16 -13
  204. package/dist/components/eds-card-app.js +2 -5
  205. package/dist/components/eds-card-cta.js +3 -6
  206. package/dist/components/eds-card-desc2.js +1 -1
  207. package/dist/components/eds-card-feature.js +2 -5
  208. package/dist/components/eds-card-generic2.js +2 -4
  209. package/dist/components/eds-card-hero.js +6 -7
  210. package/dist/components/eds-card-stat.js +6 -7
  211. package/dist/components/eds-card-title2.js +1 -1
  212. package/dist/components/eds-code-block2.js +2 -2
  213. package/dist/components/eds-cookies-preference.js +1 -1
  214. package/dist/components/eds-dropdown2.js +30 -4
  215. package/dist/components/eds-feedback.js +1 -1
  216. package/dist/components/eds-footer2.js +118 -24
  217. package/dist/components/eds-form.js +146 -45
  218. package/dist/components/eds-frame.js +1 -1
  219. package/dist/components/eds-gauge.js +1 -1
  220. package/dist/components/eds-gitlab-contributors.js +35 -32
  221. package/dist/components/eds-global-search.js +55 -70
  222. package/dist/components/eds-header.js +1 -1
  223. package/dist/components/eds-icon-bluesky.js +1 -1
  224. package/dist/components/eds-icon-eu.js +1 -1
  225. package/dist/components/eds-icon-facebook.js +1 -1
  226. package/dist/components/eds-icon-gitlab.js +1 -1
  227. package/dist/components/eds-icon-linkedin.js +1 -1
  228. package/dist/components/eds-icon-mastodon.js +1 -1
  229. package/dist/components/eds-icon-twitter.js +1 -1
  230. package/dist/components/eds-icon-wrapper2.js +5 -2
  231. package/dist/components/eds-icon-youtube.js +1 -1
  232. package/dist/components/eds-img2.js +2 -2
  233. package/dist/components/eds-input-dropzone2.js +7 -4
  234. package/dist/components/eds-input-field2.js +31 -26
  235. package/dist/components/eds-input-file2.js +5 -3
  236. package/dist/components/eds-input-footer2.js +39 -3
  237. package/dist/components/eds-input-label2.js +2 -2
  238. package/dist/components/eds-input-range2.js +15 -5
  239. package/dist/components/eds-input-search.js +100 -1
  240. package/dist/components/eds-input-select2.js +6 -2
  241. package/dist/components/eds-input2.js +4 -2
  242. package/dist/components/eds-kg-learning-resources.d.ts +11 -0
  243. package/dist/components/eds-kg-learning-resources.js +217 -0
  244. package/dist/components/eds-kg-web-services-select2.js +18 -24
  245. package/dist/components/eds-link2.js +3 -7
  246. package/dist/components/eds-logo2.js +4 -22
  247. package/dist/components/eds-matomo-notice2.js +8 -2
  248. package/dist/components/eds-modal.js +18 -9
  249. package/dist/components/eds-nps2.js +4 -4
  250. package/dist/components/eds-pagination2.js +2 -2
  251. package/dist/components/eds-pie.js +2 -2
  252. package/dist/components/eds-progress-bar.js +1 -8
  253. package/dist/components/eds-rating2.js +3 -3
  254. package/dist/components/eds-search-select.d.ts +11 -0
  255. package/dist/components/eds-search-select.js +6 -0
  256. package/dist/components/eds-search-select2.js +382 -0
  257. package/dist/components/eds-section-core2.js +1 -1
  258. package/dist/components/eds-section-heading2.js +2 -2
  259. package/dist/components/eds-sidebar.js +2 -2
  260. package/dist/components/eds-social-networks2.js +1 -1
  261. package/dist/components/eds-spinner2.js +1 -1
  262. package/dist/components/eds-steps-v2.js +41 -11
  263. package/dist/components/eds-steps2.js +28 -8
  264. package/dist/components/eds-switch2.js +8 -5
  265. package/dist/components/eds-table2.js +30 -54
  266. package/dist/components/eds-tabs.js +50 -19
  267. package/dist/components/eds-tag2.js +1 -1
  268. package/dist/components/eds-timeline.js +1 -1
  269. package/dist/components/eds-toast-manager.js +1 -1
  270. package/dist/components/eds-toast2.js +39 -3
  271. package/dist/components/eds-tooltip2.js +1 -1
  272. package/dist/components/eds-trl-badge.d.ts +11 -0
  273. package/dist/components/eds-trl-badge.js +207 -0
  274. package/dist/components/eds-user.js +1 -4
  275. package/dist/components/incorrect-use-of-colors.js +1 -1
  276. package/dist/components/logo-space.js +76 -25
  277. package/dist/components/logo-variations-horizontal2.js +1 -1
  278. package/dist/components/logo-variations-tabs.js +1 -1
  279. package/dist/components/logo-variations-vertical2.js +1 -1
  280. package/dist/components/logo-wrong-usage.js +1 -1
  281. package/dist/components/p-05e96609.entry.js +1 -0
  282. package/dist/components/p-0d778d10.entry.js +1 -0
  283. package/dist/components/{p-d2576747.entry.js → p-114f6d54.entry.js} +1 -1
  284. package/dist/components/p-1534204d.entry.js +1 -0
  285. package/dist/components/p-337d4ee3.entry.js +9 -0
  286. package/dist/components/p-340bc935.entry.js +1 -0
  287. package/dist/components/{p-a6dc1f88.entry.js → p-37ef07d9.entry.js} +1 -1
  288. package/dist/components/p-39dbb964.entry.js +1 -0
  289. package/dist/components/{p-dfe93385.entry.js → p-3f66bc26.entry.js} +1 -1
  290. package/dist/components/p-43f9e64f.entry.js +1 -0
  291. package/dist/components/p-46cc6c1a.entry.js +1 -0
  292. package/dist/components/{p-773bd015.entry.js → p-4b8a7979.entry.js} +1 -1
  293. package/dist/components/p-6b94b2ec.entry.js +1 -0
  294. package/dist/components/p-6d965fef.entry.js +1 -0
  295. package/dist/components/{p-d16b5363.entry.js → p-6e370182.entry.js} +1 -1
  296. package/dist/components/{p-7b93a385.entry.js → p-6ffe581c.entry.js} +1 -1
  297. package/dist/components/p-726637b1.entry.js +1 -0
  298. package/dist/components/{p-a63e14bb.entry.js → p-86ccc09f.entry.js} +1 -1
  299. package/dist/components/{p-c2fc62f7.entry.js → p-8755a21b.entry.js} +1 -1
  300. package/dist/components/{p-0d7aee0b.entry.js → p-8ab461e2.entry.js} +1 -1
  301. package/dist/components/p-8cb162b8.entry.js +1 -0
  302. package/dist/components/p-8cdbc280.entry.js +1 -0
  303. package/dist/components/{p-940a2d42.entry.js → p-8e034c4e.entry.js} +1 -1
  304. package/dist/components/p-9f649fa3.entry.js +1 -0
  305. package/dist/components/{p-d1b3aa52.entry.js → p-a26dad9b.entry.js} +1 -1
  306. package/dist/components/p-a2d6a9ca.entry.js +1 -0
  307. package/dist/components/p-afabe1be.entry.js +1 -0
  308. package/dist/components/{p-c46675c8.entry.js → p-b1519098.entry.js} +1 -1
  309. package/dist/components/{p-04e9c2d7.entry.js → p-b1a10842.entry.js} +1 -1
  310. package/dist/components/{p-7aa4edef.entry.js → p-b4023b45.entry.js} +1 -1
  311. package/dist/components/p-c53b3563.entry.js +1 -0
  312. package/dist/components/p-c7d612d1.entry.js +1 -0
  313. package/dist/components/p-dc9aef22.entry.js +1 -0
  314. package/dist/components/{p-f364296f.entry.js → p-f66a7cf9.entry.js} +1 -1
  315. package/dist/components/p-f97f62f2.entry.js +1 -0
  316. package/dist/components/primary.js +1 -1
  317. package/dist/components/primary2.js +1 -1
  318. package/dist/components/secondary.js +1 -1
  319. package/dist/components/secondary2.js +7 -7
  320. package/dist/components/support.js +1 -1
  321. package/dist/components/support2.js +3 -3
  322. package/dist/components/svg-repository.js +19 -25
  323. package/dist/components/token-list2.js +1 -1
  324. package/dist/components/token-radii2.js +1 -1
  325. package/dist/components/token-ratios.js +1 -1
  326. package/dist/components/token-shadows2.js +1 -1
  327. package/dist/components/token-spacing.js +1 -1
  328. package/dist/components/token-typography.js +8 -2
  329. package/dist/esm/color-primary-palette_6.entry.js +14 -14
  330. package/dist/esm/components-section.entry.js +1 -1
  331. package/dist/esm/components.js +1 -1
  332. package/dist/esm/correct-use-of-colors.entry.js +1 -1
  333. package/dist/esm/docs-palettes.entry.js +1 -1
  334. package/dist/esm/docs-tokens.entry.js +1 -1
  335. package/dist/esm/{eds-accordion_52.entry.js → eds-accordion_53.entry.js} +1094 -336
  336. package/dist/esm/eds-app-root.entry.js +1 -1
  337. package/dist/esm/eds-cookies-preference.entry.js +1 -1
  338. package/dist/esm/eds-feedback.entry.js +1 -1
  339. package/dist/esm/eds-frame.entry.js +1 -1
  340. package/dist/esm/eds-gauge.entry.js +1 -1
  341. package/dist/esm/eds-gitlab-contributors.entry.js +35 -32
  342. package/dist/esm/eds-icon-bluesky.entry.js +1 -1
  343. package/dist/esm/eds-icon-eu.entry.js +1 -1
  344. package/dist/esm/eds-icon-facebook.entry.js +1 -1
  345. package/dist/esm/eds-icon-gitlab.entry.js +1 -1
  346. package/dist/esm/eds-icon-linkedin.entry.js +1 -1
  347. package/dist/esm/eds-icon-mastodon.entry.js +1 -1
  348. package/dist/esm/eds-icon-twitter.entry.js +1 -1
  349. package/dist/esm/eds-icon-youtube.entry.js +1 -1
  350. package/dist/{components/eds-input-search2.js → esm/eds-input-search.entry.js} +9 -39
  351. package/dist/esm/eds-modal.entry.js +18 -9
  352. package/dist/esm/eds-pie.entry.js +2 -2
  353. package/dist/esm/eds-section-core_2.entry.js +3 -3
  354. package/dist/esm/eds-timeline.entry.js +1 -1
  355. package/dist/esm/eds-toast-manager.entry.js +1 -1
  356. package/dist/esm/eds-trl-badge.entry.js +180 -0
  357. package/dist/esm/incorrect-use-of-colors.entry.js +1 -1
  358. package/dist/esm/index-870ab08f.js +10 -2
  359. package/dist/esm/loader.js +1 -1
  360. package/dist/esm/logo-space.entry.js +58 -1
  361. package/dist/esm/logo-variations-horizontal_2.entry.js +2 -2
  362. package/dist/esm/logo-variations-tabs.entry.js +1 -1
  363. package/dist/esm/logo-wrong-usage.entry.js +1 -1
  364. package/dist/esm/svg-repository.entry.js +1 -1
  365. package/dist/esm/token-list_3.entry.js +3 -3
  366. package/dist/esm/token-ratios.entry.js +1 -1
  367. package/dist/esm/token-spacing.entry.js +1 -1
  368. package/dist/esm/token-typography.entry.js +8 -2
  369. package/dist/hydrate/index.js +1616 -397
  370. package/dist/hydrate/index.mjs +1616 -397
  371. package/dist/types/components/eds-accordion/eds-accordion.stories.d.ts +4 -8
  372. package/dist/types/components/eds-alert/eds-alert.stories.d.ts +7 -73
  373. package/dist/types/components/eds-button/eds-button.d.ts +1 -1
  374. package/dist/types/components/eds-dropdown/eds-dropdown.d.ts +1 -0
  375. package/dist/types/components/eds-footer/eds-footer.d.ts +84 -55
  376. package/dist/types/components/eds-footer/eds-footer.stories.d.ts +62 -1
  377. package/dist/types/components/eds-form/eds-form.d.ts +66 -0
  378. package/dist/types/components/eds-form/eds-form.stories.d.ts +63 -0
  379. package/dist/types/components/eds-header/eds-header.stories.d.ts +6 -6
  380. package/dist/types/components/eds-icon-wrapper/eds-icon-wrapper.d.ts +8 -0
  381. package/dist/types/components/eds-img/eds-img.stories.d.ts +6 -20
  382. package/dist/types/components/eds-input-elements/eds-input/eds-input.d.ts +7 -0
  383. package/dist/types/components/eds-input-elements/eds-input-search/eds-input-search.stories.d.ts +36 -0
  384. package/dist/types/components/eds-input-field/eds-input-field.stories.d.ts +97 -38
  385. package/dist/types/components/eds-link/eds-link.stories.d.ts +9 -6
  386. package/dist/types/components/eds-logo/eds-logo.d.ts +11 -28
  387. package/dist/types/components/eds-logo/eds-logo.stories.d.ts +22 -2
  388. package/dist/types/components/eds-steps/eds-steps.d.ts +7 -0
  389. package/dist/types/components/eds-steps-v2/eds-steps-v2.d.ts +14 -1
  390. package/dist/types/components/eds-steps-v2/eds-steps-v2.stories.d.ts +40 -9
  391. package/dist/types/components/eds-switch/eds-switch.d.ts +6 -2
  392. package/dist/types/components/eds-switch/eds-switch.stories.d.ts +8 -0
  393. package/dist/types/components/eds-table/eds-table.d.ts +8 -14
  394. package/dist/types/components/eds-table/eds-table.stories.d.ts +0 -107
  395. package/dist/types/components/eds-tabs/eds-tabs.d.ts +10 -0
  396. package/dist/types/components/eds-toast/eds-toast.d.ts +33 -1
  397. package/dist/types/components/eds-toast/eds-toast.stories.d.ts +49 -1
  398. package/dist/types/components/eds-user/eds-user.d.ts +0 -2
  399. package/dist/types/components/eds-user/eds-user.stories.d.ts +5 -9
  400. package/dist/types/components.d.ts +715 -144
  401. package/dist/types/shared-ui/eds-global-search/eds-global-search.d.ts +12 -0
  402. package/dist/types/shared-ui/eds-kg-learning-resources/eds-kg-learning-resources.d.ts +60 -0
  403. package/dist/types/shared-ui/eds-search-select/eds-search-select.d.ts +98 -0
  404. package/dist/types/shared-ui/eds-search-select/eds-search-select.stories.d.ts +81 -0
  405. package/dist/types/shared-ui/eds-trl-badge/ebrains-mark.d.ts +7 -0
  406. package/dist/types/shared-ui/eds-trl-badge/eds-trl-badge.d.ts +54 -0
  407. package/dist/types/shared-ui/eds-trl-badge/eds-trl-badge.stories.d.ts +112 -0
  408. package/dist/types/utils/eds-form/safeFormat.d.ts +21 -0
  409. package/package.json +1 -1
  410. package/dist/components/p-0fe10e6c.entry.js +0 -1
  411. package/dist/components/p-18e852e1.entry.js +0 -1
  412. package/dist/components/p-3ccd6948.entry.js +0 -1
  413. package/dist/components/p-3d3841d6.entry.js +0 -1
  414. package/dist/components/p-3f38df99.entry.js +0 -1
  415. package/dist/components/p-527e71d0.entry.js +0 -1
  416. package/dist/components/p-55047f7f.entry.js +0 -9
  417. package/dist/components/p-64c23098.entry.js +0 -1
  418. package/dist/components/p-74b9c9a8.entry.js +0 -1
  419. package/dist/components/p-878f65a6.entry.js +0 -1
  420. package/dist/components/p-92f6d9c0.entry.js +0 -1
  421. package/dist/components/p-9eedf771.entry.js +0 -1
  422. package/dist/components/p-b4355cec.entry.js +0 -1
  423. package/dist/components/p-d2f17fac.entry.js +0 -1
  424. package/dist/components/p-db5eea95.entry.js +0 -1
  425. package/dist/components/p-e205c269.entry.js +0 -1
  426. package/dist/components/p-f55dd314.entry.js +0 -1
  427. package/dist/components/p-f88b5f21.entry.js +0 -1
@@ -5,12 +5,7 @@ export default {
5
5
  argTypes: {
6
6
  steps: {
7
7
  control: 'object',
8
- description: 'Array of step objects',
9
- defaultValue: [
10
- { title: 'Step One', content: '<p>Details for step one.</p>' },
11
- { title: 'Step Two', content: '<p>Details for step two.</p>' },
12
- { title: 'Step Three', content: '<p>Details for step three.</p>' }
13
- ]
8
+ description: 'Array of step objects'
14
9
  },
15
10
  orientation: {
16
11
  control: { type: 'select' },
@@ -20,17 +15,28 @@ export default {
20
15
  type: {
21
16
  control: 'select',
22
17
  options: ['static', 'linear'],
23
- description: 'Stepper type: static (all steps) or linear (one at a time)',
24
- defaultValue: 'static'
18
+ description: 'Stepper type: static (all steps) or linear (one at a time)'
19
+ },
20
+ theme: {
21
+ control: 'select',
22
+ options: ['default', 'brand'],
23
+ description: 'Visual theme. "brand" is the dark/green look multi-step brand forms use.'
24
+ },
25
+ card: {
26
+ control: 'boolean',
27
+ description: 'Draw the stepper\'s own card chrome (border/background). Set false when an outer wrapper already carries it — e.g. the brand multi-step form card.'
28
+ },
29
+ disableNext: {
30
+ control: 'boolean',
31
+ description: 'Disable the Next button (boolean for all steps, or an array/JSON string per step) — used to gate advancing until the current step validates.'
25
32
  },
26
33
  imageSrc: {
27
34
  control: 'text',
28
35
  description: 'URL of the image to display above the steps'
29
36
  },
30
- bg: {
31
- control: 'boolean',
32
- description: 'Whether to apply inverse background to container',
33
- defaultValue: true
37
+ imageWidth: {
38
+ control: 'number',
39
+ description: 'Rendered width (px) of the image above the steps'
34
40
  },
35
41
  message: {
36
42
  control: 'text',
@@ -40,8 +46,7 @@ export default {
40
46
  name: 'heading-level',
41
47
  control: { type: 'select' },
42
48
  options: ['h3', 'h4', 'h5'],
43
- description: 'Semantic heading tag to render for each step title',
44
- defaultValue: 'h4'
49
+ description: 'Semantic heading tag to render for each step title'
45
50
  },
46
51
  nextLabel: {
47
52
  control: 'text',
@@ -68,8 +73,11 @@ export default {
68
73
  ],
69
74
  orientation: 'vertical',
70
75
  type: 'static',
76
+ theme: 'default',
77
+ card: true,
78
+ disableNext: false,
71
79
  imageSrc: '',
72
- bg: true,
80
+ imageWidth: undefined,
73
81
  message: 'No image available',
74
82
  headingLevel: 'h4',
75
83
  nextLabel: 'Next',
@@ -78,15 +86,17 @@ export default {
78
86
  showFinish: true
79
87
  }
80
88
  };
81
- const Template = ({ steps, type, orientation, imageSrc, imageWidth, bg, message, headingLevel, nextLabel, backLabel, finishLabel, showFinish }) => html `
89
+ const Template = ({ steps, type, orientation, theme, card, disableNext, imageSrc, imageWidth, message, headingLevel, nextLabel, backLabel, finishLabel, showFinish }) => html `
82
90
  <div class="grid grid-layout grid-cols-2">
83
91
  <eds-steps-v2
84
92
  .steps=${steps}
85
93
  type="${type}"
86
94
  orientation="${orientation}"
95
+ theme="${theme || 'default'}"
96
+ .card=${card}
97
+ .disableNext=${disableNext}
87
98
  .imageSrc=${imageSrc}
88
99
  .imageWidth=${imageWidth}
89
- ?bg=${bg}
90
100
  message="${message || ''}"
91
101
  heading-level="${headingLevel}"
92
102
  next-label="${nextLabel}"
@@ -131,3 +141,56 @@ LinearHorizontal.parameters = {
131
141
  }
132
142
  }
133
143
  };
144
+ /* How brand multi-step forms actually mount the stepper (FormsPage): linear +
145
+ horizontal, theme="brand", and card=false because the OUTER brand card
146
+ carries the chrome — recreated here with a dark rounded wrapper. */
147
+ export const BrandTheme = ({ steps, disableNext }) => html `
148
+ <div class="grid grid-layout grid-cols-2">
149
+ <div class="bg-inverse rounded-xs overflow-hidden" style="--eds-steps-padding-x: 2rem;">
150
+ <div class="bg-strongest p-32">
151
+ <p class="f-heading-05 text-inverse m-0">Attendee Confirmation Survey</p>
152
+ </div>
153
+ <eds-steps-v2
154
+ .steps=${steps}
155
+ type="linear"
156
+ orientation="horizontal"
157
+ theme="brand"
158
+ .card=${false}
159
+ .disableNext=${disableNext}
160
+ next-label="Next"
161
+ back-label="Back"
162
+ finish-label="Submit"
163
+ ?show-finish=${true}
164
+ ></eds-steps-v2>
165
+ </div>
166
+ </div>
167
+ `;
168
+ BrandTheme.storyName = 'Brand Theme (multi-step form)';
169
+ BrandTheme.args = {
170
+ steps: [
171
+ { title: 'Step 1', content: '<p>About you — name, email, institution.</p>' },
172
+ { title: 'Step 2', content: '<p>Logistics — attendance, dietary needs, sessions.</p>' }
173
+ ],
174
+ disableNext: false
175
+ };
176
+ BrandTheme.parameters = {
177
+ docs: {
178
+ description: {
179
+ story: 'theme="brand" + card=false, exactly as multi-step brand forms mount it: the outer card provides the chrome (dark hero above), the stepper renders flush. Toggle disableNext to see the gated Next button.'
180
+ }
181
+ }
182
+ };
183
+ export const DisabledNext = Template.bind({});
184
+ DisabledNext.storyName = 'Linear — Next disabled';
185
+ DisabledNext.args = {
186
+ type: 'linear',
187
+ orientation: 'horizontal',
188
+ disableNext: true
189
+ };
190
+ DisabledNext.parameters = {
191
+ docs: {
192
+ description: {
193
+ story: 'disableNext gates advancing (forms set it while the current step has validation errors). Accepts a boolean for all steps or an array/JSON string per step.'
194
+ }
195
+ }
196
+ };
@@ -95,12 +95,15 @@ button.switch.switch--checked .switch-handle {
95
95
  background: transparent;
96
96
  border: none;
97
97
  border-radius: 1.5rem;
98
- font-family: var(--f-ui-02-fontFamily);
99
- font-size: 0.9rem;
98
+ /* Mockup type: Plex Sans 14px medium. Note we bundle 400/600 only, so 500
99
+ resolves to 400 in-app — kept at 500 so environments that do load the
100
+ medium cut match the mockup exactly. */
101
+ font-family: var(--plex-sans, 'IBM Plex Sans', system-ui, sans-serif);
102
+ font-size: 14px;
100
103
  font-weight: 500;
101
104
  cursor: pointer;
102
105
  transition: all 0.3s;
103
- color: var(--grey-dark);
106
+ color: var(--body-l, #5a5f5c);
104
107
  white-space: nowrap;
105
108
  }
106
109
 
@@ -113,6 +116,26 @@ button.switch.switch--checked .switch-handle {
113
116
  color: var(--brand-black);
114
117
  }
115
118
 
119
+ /* Dark segmented — the mockup's quiet control bar: white pill container with a
120
+ hairline border; the active segment inverts to brand-black. */
121
+ .segmented-container--dark {
122
+ background: #fff;
123
+ border: 1px solid var(--grey-300, #e2e2e2);
124
+ padding: 4px;
125
+ gap: 3px;
126
+ }
127
+
128
+ .segmented-container--dark .segmented-btn {
129
+ padding: 9px 30px;
130
+ border-radius: 999px;
131
+ transition: 0.14s;
132
+ }
133
+
134
+ .segmented-container--dark .segmented-btn--active {
135
+ background: var(--brand-black, #07140d);
136
+ color: #fff;
137
+ }
138
+
116
139
  .segmented-btn--disabled {
117
140
  opacity: 0.6;
118
141
  cursor: not-allowed;
@@ -31,7 +31,7 @@ export class EdsSwitch {
31
31
  this.variant = 'toggle';
32
32
  }
33
33
  render() {
34
- if (this.variant === 'segmented') {
34
+ if (this.variant === 'segmented' || this.variant === 'segmented-dark') {
35
35
  return this.renderSegmented();
36
36
  }
37
37
  return this.renderToggle();
@@ -59,7 +59,10 @@ export class EdsSwitch {
59
59
  }, onClick: this.toggleSwitch, onKeyDown: this.handleKeyDown, disabled: this.disabled }, h("span", { class: "switch-handle" })), this.labelOn && (h("span", { id: `${switchId}-on`, class: "switch-label switch-label--on ml-8" }, this.labelOn))));
60
60
  }
61
61
  renderSegmented() {
62
- return (h("div", { class: "segmented-container", role: "group", "aria-label": "View toggle" }, h("button", { type: "button", tabindex: this.disabled ? '-1' : '0', class: {
62
+ return (h("div", { class: {
63
+ 'segmented-container': true,
64
+ 'segmented-container--dark': this.variant === 'segmented-dark'
65
+ }, role: "group", "aria-label": "View toggle" }, h("button", { type: "button", tabindex: this.disabled ? '-1' : '0', class: {
63
66
  'segmented-btn': true,
64
67
  'segmented-btn--active': !this.checked,
65
68
  'segmented-btn--disabled': this.disabled
@@ -67,7 +70,7 @@ export class EdsSwitch {
67
70
  if (!this.disabled && this.checked) {
68
71
  this.toggleSwitch();
69
72
  }
70
- }, onKeyDown: this.handleKeyDown, disabled: this.disabled, "aria-pressed": !this.checked ? 'true' : 'false' }, h("span", { class: "f-ui-03" }, this.labelOff)), h("button", { type: "button", tabindex: this.disabled ? '-1' : '0', class: {
73
+ }, onKeyDown: this.handleKeyDown, disabled: this.disabled, "aria-pressed": !this.checked ? 'true' : 'false' }, h("span", null, this.labelOff)), h("button", { type: "button", tabindex: this.disabled ? '-1' : '0', class: {
71
74
  'segmented-btn': true,
72
75
  'segmented-btn--active': this.checked,
73
76
  'segmented-btn--disabled': this.disabled
@@ -75,7 +78,7 @@ export class EdsSwitch {
75
78
  if (!this.disabled && !this.checked) {
76
79
  this.toggleSwitch();
77
80
  }
78
- }, onKeyDown: this.handleKeyDown, disabled: this.disabled, "aria-pressed": this.checked ? 'true' : 'false' }, h("span", { class: "f-ui-03" }, this.labelOn))));
81
+ }, onKeyDown: this.handleKeyDown, disabled: this.disabled, "aria-pressed": this.checked ? 'true' : 'false' }, h("span", null, this.labelOn))));
79
82
  }
80
83
  static get is() { return "eds-switch"; }
81
84
  static get encapsulation() { return "shadow"; }
@@ -167,15 +170,15 @@ export class EdsSwitch {
167
170
  "type": "string",
168
171
  "mutable": false,
169
172
  "complexType": {
170
- "original": "'toggle' | 'segmented'",
171
- "resolved": "\"segmented\" | \"toggle\"",
173
+ "original": "'toggle' | 'segmented' | 'segmented-dark'",
174
+ "resolved": "\"segmented\" | \"segmented-dark\" | \"toggle\"",
172
175
  "references": {}
173
176
  },
174
177
  "required": false,
175
178
  "optional": false,
176
179
  "docs": {
177
180
  "tags": [],
178
- "text": "Variant of the switch: 'toggle' (default) or 'segmented' (pill-style buttons)"
181
+ "text": "Variant of the switch:\n- 'toggle' (default): the classic on/off switch\n- 'segmented': pill-style buttons \u2014 light container, green active pill\n- 'segmented-dark': pill-style buttons \u2014 white container with a hairline\n border and a dark (brand-black) active pill"
179
182
  },
180
183
  "attribute": "variant",
181
184
  "reflect": false,
@@ -6,7 +6,11 @@ export default {
6
6
  disabled: { control: 'boolean', description: 'Disables the switch when true.' },
7
7
  labelOn: { control: 'text', description: 'Label displayed when the switch is ON.' },
8
8
  labelOff: { control: 'text', description: 'Label displayed when the switch is OFF.' },
9
- variant: { control: 'select', options: ['toggle', 'segmented'], description: 'Switch variant: toggle or segmented.' }
9
+ variant: {
10
+ control: 'select',
11
+ options: ['toggle', 'segmented', 'segmented-dark'],
12
+ description: 'Switch variant: toggle, segmented (green active pill), or segmented-dark (white container, dark active pill).'
13
+ }
10
14
  },
11
15
  args: {
12
16
  checked: false,
@@ -90,6 +94,21 @@ export const SegmentedChecked = {
90
94
  labelOff: 'Light'
91
95
  }
92
96
  };
97
+ export const SegmentedDark = {
98
+ render: (args) => `
99
+ <eds-switch
100
+ variant="segmented-dark"
101
+ ${args.checked ? 'checked' : ''}
102
+ ${args.disabled ? 'disabled' : ''}
103
+ label-on="${args.labelOn}"
104
+ label-off="${args.labelOff}">
105
+ </eds-switch>`,
106
+ args: {
107
+ labelOn: 'Results',
108
+ labelOff: 'Poll',
109
+ checked: true
110
+ }
111
+ };
93
112
  export const SegmentedDisabled = {
94
113
  render: (args) => `
95
114
  <eds-switch
@@ -12,12 +12,15 @@ table {
12
12
  /* 3 */
13
13
  }
14
14
 
15
- /* Default theme - no alternating colors */
15
+ /* DISABLED — only the brand theme is used now (theme is coerced to 'brand'
16
+ in eds-table.tsx). Kept for reference.
17
+
18
+ Default theme - no alternating colors
16
19
  tr.table-row-default {
17
20
  background-color: transparent;
18
21
  }
19
22
 
20
- /* Color theme - alternating rows */
23
+ Color theme - alternating rows
21
24
  tr.table-row-color:nth-child(even) {
22
25
  background-color:var(--grey-light);
23
26
  }
@@ -25,6 +28,7 @@ tr.table-row-color:nth-child(even) {
25
28
  tr.table-row-color:nth-child(odd) {
26
29
  background-color: transparent;
27
30
  }
31
+ */
28
32
 
29
33
  /* ============================================
30
34
  BRAND THEME STYLES
@@ -81,11 +85,14 @@ tr.table-row-color:nth-child(odd) {
81
85
  .brand-row {
82
86
  border-bottom: 1px solid var(--grey-light) !important;
83
87
  transition: all 0.3s ease;
84
- cursor: pointer;
85
88
  position: relative;
86
89
  background: transparent !important;
87
90
  }
88
91
 
92
+ .brand-row.has-actions {
93
+ cursor: pointer;
94
+ }
95
+
89
96
  .brand-row:hover {
90
97
  background: rgba(0, 255, 157, 0.05) !important;
91
98
  }
@@ -332,10 +339,20 @@ tr.table-row-color:nth-child(odd) {
332
339
  word-wrap: break-word;
333
340
  }
334
341
 
342
+ /* Emphasize the primary (first) field — the service name/title — a bit
343
+ larger than the other card values. */
344
+ .card-field:first-child .card-value {
345
+ font-size: var(--f-ui-01-fontSize);
346
+ line-height: var(--f-ui-01-lineHeight);
347
+ }
348
+
335
349
  .card-actions {
336
350
  display: flex;
351
+ flex-direction: row; /* actions in a horizontal row... */
352
+ flex-wrap: wrap; /* ...wrapping to the next line on narrow cards / many actions */
353
+ align-items: center;
354
+ justify-content: center; /* centered row, reads cleanly at any width */
337
355
  gap: 0.5rem;
338
- justify-content: flex-end;
339
356
  padding-top: 0.75rem;
340
357
  border-top: 1px solid var(--grey-light);
341
358
  }
@@ -113,11 +113,10 @@ export class EdsTable {
113
113
  this.paginationEnabled = true;
114
114
  this.searchEnabled = false;
115
115
  this.hostWidth = undefined;
116
- this.columnSize = 'default';
117
116
  this.actions = [];
118
117
  this.actionTemplate = undefined;
119
118
  this.sortingEnabled = false;
120
- this.theme = 'color';
119
+ this.theme = 'brand';
121
120
  this.view = 'table';
122
121
  this.showViewToggle = false;
123
122
  this.parsedActions = [];
@@ -149,6 +148,8 @@ export class EdsTable {
149
148
  }
150
149
  }
151
150
  componentWillLoad() {
151
+ // 'default' / 'color' themes are disabled — always render the brand theme.
152
+ this.theme = 'brand';
152
153
  this.parseConfig();
153
154
  this.handleActionsChange();
154
155
  this.parseData();
@@ -284,19 +285,6 @@ export class EdsTable {
284
285
  this.columns.push('actions');
285
286
  }
286
287
  }
287
- getVisibleColumnsCount() {
288
- return this.columns.filter((column) => { var _a; return !((_a = this.parsedConfig[column]) === null || _a === void 0 ? void 0 : _a.hidden); }).length;
289
- }
290
- divisionFactor() {
291
- let divisionFactor = 1;
292
- if (this.columnSize === 'medium') {
293
- divisionFactor = 2;
294
- }
295
- else if (this.columnSize === 'large') {
296
- divisionFactor = 4;
297
- }
298
- return divisionFactor;
299
- }
300
288
  capitalize(str) {
301
289
  return str.charAt(0).toUpperCase() + str.slice(1).toLowerCase();
302
290
  }
@@ -331,24 +319,23 @@ export class EdsTable {
331
319
  const dataColumns = this.columns.filter((col) => { var _a; return col !== 'actions' && !((_a = this.parsedConfig[col]) === null || _a === void 0 ? void 0 : _a.hidden); });
332
320
  return (h("div", { class: "card-grid" }, rows.map((row) => (h("div", { class: "data-card" }, h("div", { class: "card-content" }, dataColumns.map((col) => (h("div", { class: "card-field" }, h("span", { class: "card-label" }, this.capitalize(col)), h("span", { class: "card-value" }, this.renderCell(row[col], col)))))), this.parsedActions.length > 0 && (h("div", { class: "card-actions" }, this.parsedActions.map((act) => (h("span", null, this.renderSingleActionCell(act.name, row)))))))))));
333
321
  }
334
- renderTableView(paginatedRows, currentContainerWidth, visibleColumnsCount) {
335
- const columnWidth = visibleColumnsCount > 0 ? Math.floor((currentContainerWidth / visibleColumnsCount) * this.divisionFactor()) : 100;
322
+ renderTableView(paginatedRows) {
336
323
  return (h("div", { class: `mt-20 ${this.theme === 'brand' ? 'brand-table-wrapper' : ''}` }, h("table", { class: `${this.theme === 'brand' ? '' : 'block overflow-x-auto'} mt-6 p-0 ${this.theme === 'brand' ? 'brand-table' : ''}` }, h("thead", { class: this.theme === 'brand' ? 'brand-thead' : '' }, h("tr", { class: `m-0 p-0 border border-softer table-row-${this.theme} ${this.theme === 'brand' ? 'brand-header-row' : ''}` }, this.columns
337
324
  .filter((col) => { var _a; return col === 'actions' || !((_a = this.parsedConfig[col]) === null || _a === void 0 ? void 0 : _a.hidden); })
338
325
  .map((col) => {
339
326
  if (col === 'actions') {
340
- return (h("th", { class: "m-0 py-8 border border-softer f-ui-02 break-words", style: this.theme === 'brand' ? {} : { minWidth: `${columnWidth - 4}px` } }));
327
+ return (h("th", { class: "m-0 py-8 border border-softer f-ui-02 break-words" }));
341
328
  }
342
- return (h("th", { class: "m-0 py-8 border border-softer f-ui-02 break-words", style: this.theme === 'brand' ? {} : { minWidth: `${columnWidth - 4}px` } }, h("div", { style: { display: 'flex', alignItems: 'center', justifyContent: 'center', gap: '0.25rem' } }, h("span", null, this.capitalize(col)), this.sortingEnabled && (h("eds-icon-wrapper", { name: this.sortColumn === col
329
+ return (h("th", { class: "m-0 py-8 border border-softer f-ui-02 break-words" }, h("div", { style: { display: 'flex', alignItems: 'center', justifyContent: 'center', gap: '0.25rem' } }, h("span", null, this.capitalize(col)), this.sortingEnabled && (h("eds-icon-wrapper", { name: this.sortColumn === col
343
330
  ? this.sortDirection === 'asc'
344
331
  ? 'chevron-up'
345
332
  : 'chevron-down'
346
333
  : 'chevron-down', "aria-label": `Sort by ${col}`, onClick: () => this.handleSort(col), style: { cursor: 'pointer' } })))));
347
- }))), h("tbody", null, paginatedRows.map((row) => (h("tr", { class: `m-0 p-0 border border-softer table-row-${this.theme} ${this.theme === 'brand' ? 'brand-row' : ''}` }, this.columns
334
+ }))), h("tbody", null, paginatedRows.map((row) => (h("tr", { class: `m-0 p-0 border border-softer table-row-${this.theme} ${this.theme === 'brand' ? 'brand-row' : ''} ${this.parsedActions.length > 0 ? 'has-actions' : ''}` }, this.columns
348
335
  .filter((col) => { var _a; return col === 'actions' || !((_a = this.parsedConfig[col]) === null || _a === void 0 ? void 0 : _a.hidden); })
349
336
  .map((col) => {
350
337
  if (col === 'actions') {
351
- return (h("td", { class: "text-center border border-softer m-0 f-ui-01 break-words actions-cell", style: this.theme === 'brand' ? {} : { minWidth: `${columnWidth - 4}px` } }, h("div", { role: "toolbar", "aria-label": "Row actions", onKeyDown: this.onActionKeyDown, style: {
338
+ return (h("td", { class: "text-center border border-softer m-0 f-ui-01 break-words actions-cell" }, h("div", { role: "toolbar", "aria-label": "Row actions", onKeyDown: this.onActionKeyDown, style: {
352
339
  display: 'flex',
353
340
  gap: '0.5rem',
354
341
  justifyContent: 'center',
@@ -356,18 +343,14 @@ export class EdsTable {
356
343
  } }, this.parsedActions.map((act) => (h("span", { style: { whiteSpace: 'nowrap' } }, this.renderSingleActionCell(act.name, row)))))));
357
344
  }
358
345
  // Regular data cell
359
- return (h("td", { class: "text-center border border-softer m-0 py-8 f-ui-02 break-words", style: this.theme === 'brand' ? {} : { minWidth: `${columnWidth - 4}px` } }, this.renderCell(row[col], col)));
346
+ return (h("td", { class: "text-center border border-softer m-0 py-8 f-ui-02 break-words" }, this.renderCell(row[col], col)));
360
347
  }))))))));
361
348
  }
362
349
  render() {
363
- const currentContainerWidth = this.hostWidth && this.hostWidth.trim() !== '' ? Number(this.hostWidth) : this.containerWidth || 400;
364
- const visibleColumnsCount = this.getVisibleColumnsCount();
365
350
  const paginatedRows = this.getPaginatedRows();
366
351
  const lastPage = Math.ceil(this.totalRows / this.rowsPerPage);
367
352
  const showControls = this.showViewToggle || this.searchEnabled;
368
- return (h("div", { key: 'ca547566767c7bccd7b894dad5819ed74e9e281d' }, showControls && (h("div", { key: '47c6fa14c2dbe499617dc31df1fd578bde473c6f', class: "controls-container flex-col flex-md-row items-start items-md-center justify-between gap-16 mb-16" }, this.showViewToggle && (h("div", { key: '7f63fd07e67eaca9abc9d0700d7824e0f474dc23', class: "view-toggle-wrapper" }, h("eds-switch", { key: 'f52b744b0e83295c1641f338212bae5843970ab9', variant: "segmented", labelOff: "Table View", labelOn: "Card View", checked: this.view === 'card', onUiswitch: this.handleViewChange }))), this.searchEnabled && (h("div", { key: '5ebb3620be6161a1d7e1881cb5d33f5aac2e12a4', class: `search-wrapper w-full ${this.showViewToggle ? 'w-md-400' : ''}` }, h("eds-input-field", { key: 1, icon: "search", name: "search", "aria-label": "Search", type: "text", placeholder: "Search...", onInput: (event) => this.handleSearch(event) }))))), this.view === 'card'
369
- ? this.renderCardView(paginatedRows)
370
- : this.renderTableView(paginatedRows, currentContainerWidth, visibleColumnsCount), this.shouldEnablePagination() && (h("div", { key: 'bed5232d5ff9d7cac22ac2537876a388f35c85a6', class: "mt-20" }, h("eds-pagination", { key: 'ec91525689028f6cfe2721e290f5c5c7097ab67a', currentPage: this.currentPage, lastPage: lastPage, perPage: this.rowsPerPage, total: this.totalRows, mode: "default" })))));
353
+ return (h("div", { key: '8a025e9e12285aa3444b2f83e0b68af55cbe32e6' }, showControls && (h("div", { key: 'f97864d8b61db7ec4fa623ecadc3c225464a6c84', class: "controls-container flex-col flex-md-row items-start items-md-center justify-between gap-16 mb-16" }, this.showViewToggle && (h("div", { key: 'ddf8b1c0fb59fe81efa22a4dc02b414d41ae7208', class: "view-toggle-wrapper" }, h("eds-switch", { key: 'c3631986b456a88559face6a2ce7ce8acd5d01c2', variant: "segmented", labelOff: "Table View", labelOn: "Card View", checked: this.view === 'card', onUiswitch: this.handleViewChange }))), this.searchEnabled && (h("div", { key: 'a02d7f163dd2bb34bb26ae60bd5b018ed07291d9', class: `search-wrapper w-full ${this.showViewToggle ? 'w-md-400' : ''}` }, h("eds-input-field", { key: 1, icon: "search", name: "search", "aria-label": "Search", type: "text", placeholder: "Search...", onInput: (event) => this.handleSearch(event) }))))), this.view === 'card' ? this.renderCardView(paginatedRows) : this.renderTableView(paginatedRows), this.shouldEnablePagination() && (h("div", { key: 'ecf412674a951b4d19e87385270cb49e64e590f6', class: "mt-20" }, h("eds-pagination", { key: 'fe1365ecb4d249548ba0c936a48b6141ff14ad0e', currentPage: this.currentPage, lastPage: lastPage, perPage: this.rowsPerPage, total: this.totalRows, mode: "default" })))));
371
354
  }
372
355
  static get is() { return "eds-table"; }
373
356
  static get encapsulation() { return "shadow"; }
@@ -406,7 +389,7 @@ export class EdsTable {
406
389
  "mutable": false,
407
390
  "complexType": {
408
391
  "original": "| string\n | {\n [key: string]: {\n hidden?: boolean;\n format?: 'uppercase' | 'bold' | 'code' | 'html' | 'svg';\n };\n }",
409
- "resolved": "string | { [key: string]: { hidden?: boolean; format?: \"code\" | \"bold\" | \"html\" | \"svg\" | \"uppercase\"; }; }",
392
+ "resolved": "string | { [key: string]: { hidden?: boolean; format?: \"code\" | \"html\" | \"svg\" | \"bold\" | \"uppercase\"; }; }",
410
393
  "references": {}
411
394
  },
412
395
  "required": false,
@@ -490,24 +473,6 @@ export class EdsTable {
490
473
  "attribute": "host-width",
491
474
  "reflect": false
492
475
  },
493
- "columnSize": {
494
- "type": "string",
495
- "mutable": false,
496
- "complexType": {
497
- "original": "'default' | 'medium' | 'large'",
498
- "resolved": "\"default\" | \"large\" | \"medium\"",
499
- "references": {}
500
- },
501
- "required": false,
502
- "optional": true,
503
- "docs": {
504
- "tags": [],
505
- "text": "Optional property to control the column sizing mode.\n- 'default' uses containerWidth / visibleColumns.\n- 'medium' divides that result by 2.\n- 'large' divides that result by 4."
506
- },
507
- "attribute": "column-size",
508
- "reflect": false,
509
- "defaultValue": "'default'"
510
- },
511
476
  "actions": {
512
477
  "type": "string",
513
478
  "mutable": false,
@@ -573,21 +538,21 @@ export class EdsTable {
573
538
  },
574
539
  "theme": {
575
540
  "type": "string",
576
- "mutable": false,
541
+ "mutable": true,
577
542
  "complexType": {
578
- "original": "'default' | 'color' | 'brand'",
579
- "resolved": "\"brand\" | \"color\" | \"default\"",
543
+ "original": "'brand'",
544
+ "resolved": "\"brand\"",
580
545
  "references": {}
581
546
  },
582
547
  "required": false,
583
548
  "optional": false,
584
549
  "docs": {
585
550
  "tags": [],
586
- "text": "Theme for table styling:\n- 'default': Simple rows with no background\n- 'color': Alternating row colors\n- 'brand': Modern brand styling with hover effects and green accents"
551
+ "text": "Theme for table styling.\n\nThe 'default' (no background) and 'color' (alternating rows) themes are\nDISABLED \u2014 the table now always renders the EBRAINS 'brand' theme (modern\nstyling, hover, green accents). The prop is kept for API compatibility but\nis coerced to 'brand' in componentWillLoad(), so any value a consumer\npasses is ignored."
587
552
  },
588
553
  "attribute": "theme",
589
554
  "reflect": false,
590
- "defaultValue": "'color'"
555
+ "defaultValue": "'brand'"
591
556
  },
592
557
  "view": {
593
558
  "type": "string",