@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
@@ -10,6 +10,7 @@ import { AppTag } from "./components/eds-cards/eds-card-app/eds-card-app";
10
10
  import { CtaLink } from "./components/eds-cards/eds-card-cta/eds-card-cta";
11
11
  import { Tag } from "./components/eds-cards/eds-card-generic/eds-card-generic";
12
12
  import { HeroTag } from "./components/eds-cards/eds-card-hero/eds-card-hero";
13
+ import { EdsFooterColumn } from "./components/eds-footer/eds-footer";
13
14
  import { Event, VNode } from "./stencil-public-runtime";
14
15
  import { SidebarItem } from "./components/eds-sidebar/eds-sidebar";
15
16
  import { Step } from "./components/eds-steps/eds-steps";
@@ -20,6 +21,7 @@ export { AppTag } from "./components/eds-cards/eds-card-app/eds-card-app";
20
21
  export { CtaLink } from "./components/eds-cards/eds-card-cta/eds-card-cta";
21
22
  export { Tag } from "./components/eds-cards/eds-card-generic/eds-card-generic";
22
23
  export { HeroTag } from "./components/eds-cards/eds-card-hero/eds-card-hero";
24
+ export { EdsFooterColumn } from "./components/eds-footer/eds-footer";
23
25
  export { Event, VNode } from "./stencil-public-runtime";
24
26
  export { SidebarItem } from "./components/eds-sidebar/eds-sidebar";
25
27
  export { Step } from "./components/eds-steps/eds-steps";
@@ -241,7 +243,17 @@ export namespace Components {
241
243
  /**
242
244
  * The visual intent or style of the button. - 'primary': Brand black background with white text - 'secondary': Transparent/white background with black border and text - 'secondaryInverse': Transparent background with white border and white text (for dark backgrounds) - 'brand': Brand green background with black text (CTA style) - 'cta': CTA link style with monospace font (gray text that turns green on hover) - 'cta-brand': CTA link style with monospace font (always green)
243
245
  */
244
- "intent": 'primary' | 'secondary' | 'secondaryInverse' | 'ghost' | 'ghostInverse' | 'brand' | 'brandInverse' | 'neutral' | 'cta' | 'cta-brand';
246
+ "intent": | 'primary'
247
+ | 'secondary'
248
+ | 'secondaryInverse'
249
+ | 'ghost'
250
+ | 'ghostInverse'
251
+ | 'brand'
252
+ | 'brandLight'
253
+ | 'brandInverse'
254
+ | 'neutral'
255
+ | 'cta'
256
+ | 'cta-brand';
245
257
  /**
246
258
  * The label text to be displayed inside the button.
247
259
  */
@@ -648,56 +660,60 @@ export namespace Components {
648
660
  "type": 'star' | 'thumbs-up' | 'thumbs-down';
649
661
  }
650
662
  /**
651
- * `EdsFooter` is a footer component designed for the EBRAINS platform, featuring social links,
652
- * legal information, and an optional cookie preferences button. It includes a "Back to top"
653
- * button and displays an acknowledgment for Horizon Europe funding.
654
- * Key Features:
655
- * - Social Network Links: Optionally display a section for social media links.
656
- * - Legal and Funding Information: Includes text for legal disclaimers and funding acknowledgments.
657
- * - Cookie Preferences: Optionally display a "Cookies Preferences" button.
658
- * - Back to Top Button: Smoothly scrolls the page back to the top when clicked.
659
- * This component is ideal for maintaining consistent branding, legal disclaimers, and navigational elements
660
- * across the EBRAINS platform, with options for social links and a "Back to top" button.
663
+ * `EdsFooter` is the EBRAINS-wide footer component.
664
+ * Renders a 4-column layout matching the eds-docs landing footer:
665
+ * [ Brand (EU flag + funding text + copyright) | Resources | Community | Legal ]
666
+ * Defaults are designed so a consumer that writes `<eds-footer></eds-footer>`
667
+ * with no props gets the full canonical EBRAINS footer rendered same
668
+ * brand block, same link columns, same dark theme as the eds-docs
669
+ * landing page. The previous minimal-strip footer is replaced; consumers
670
+ * that need different link content pass the `columns` prop (array or
671
+ * JSON-stringified array for HTML attribute use).
672
+ * Configurability without breakage:
673
+ * - All previous props remain (`social`, `variant`, `fundedBy`,
674
+ * `rightsReserved`, `enableScrollTop`, `enableCookiesSettings`,
675
+ * `cookiesPreferences`, `backToTopAriaLabel`). Their meanings are
676
+ * preserved.
677
+ * - New `columns` prop is optional — omit it for the defaults.
678
+ * - The `enableCookiesSettings` toggle now decides whether any column
679
+ * link with `action: 'cookies'` is rendered (default false; pass
680
+ * true to surface the Cookie Preferences entry in the Legal column).
661
681
  */
662
682
  interface EdsFooter {
663
683
  /**
664
- * Controls the display of the "Back to Top" aria label text.
665
- * @type {string}
684
+ * ARIA label for the "Back to top" floating button.
666
685
  */
667
686
  "backToTopAriaLabel": string;
668
687
  /**
669
- * Controls the display of the "Cookies preferences" text.
670
- * @type {string}
688
+ * Custom link columns. Accepts an array (Vue/React/JS bindings) OR a JSON-stringified array (HTML attribute use). When omitted, the canonical EBRAINS-wide columns above are used. Shape: see EdsFooterColumn / EdsFooterLink at the top of this file.
689
+ */
690
+ "columns"?: EdsFooterColumn[] | string;
691
+ /**
692
+ * Label used for any link with `action: 'cookies'` — overrides the column's `label`.
671
693
  */
672
694
  "cookiesPreferences": string;
673
695
  /**
674
- * Controls the display of the "Cookies preferences" link.
675
- * @type {string}
696
+ * When false, any column link with `action: 'cookies'` is hidden. Default false so adding the footer to a page without a Matomo notice / cookie banner doesn't surface a non-functional link. Set true once you've also mounted `<eds-matomo-notice>` on the page.
676
697
  */
677
698
  "enableCookiesSettings": boolean;
678
699
  /**
679
- * Controls the display of the "Back to Top" button. When true, the button appears in the footer.
680
- * @type {boolean}
700
+ * Float a "Back to top" button at the top-right of the footer.
681
701
  */
682
702
  "enableScrollTop": boolean;
683
703
  /**
684
- * Controls the display of the "Founded By" text.
685
- * @type {string}
704
+ * "EBRAINS is funded by…" line shown next to the EU flag in the brand column.
686
705
  */
687
706
  "fundedBy": string;
688
707
  /**
689
- * Controls the display of the "Rights Reserved" text.
690
- * @type {string}
708
+ * {year} EBRAINS. All rights reserved." line shown below the funding text.
691
709
  */
692
710
  "rightsReserved": string;
693
711
  /**
694
- * Determines if the social network section should be displayed. Adds top padding when true.
695
- * @type {boolean}
712
+ * Show the eds-social-networks section above the main grid.
696
713
  */
697
714
  "social": boolean;
698
715
  /**
699
- * Controls the visual variant of the footer. - 'default': Light background with dark text - 'inverse': Dark/black background with white text
700
- * @type {'default' | 'inverse'}
716
+ * Theme variant. Defaults to `inverse` (dark) because the canonical EBRAINS footer design uses a dark backdrop with light text. Pass `variant="default"` for the light-on-light treatment if an app's page palette demands it.
701
717
  */
702
718
  "variant": 'default' | 'inverse';
703
719
  }
@@ -732,6 +748,18 @@ export namespace Components {
732
748
  * The message displayed when the form submission fails.
733
749
  */
734
750
  "errorMessage"?: string;
751
+ /**
752
+ * Optional "time to complete" hint shown as a meta chip in the `brand` hero header (e.g. "~6 minutes"). Brand style only.
753
+ */
754
+ "estimatedTime"?: string;
755
+ /**
756
+ * Optional expiry label shown as a meta chip in the `brand` hero (e.g. "Closes Jun 28, 2026"). Brand style only.
757
+ */
758
+ "expires"?: string;
759
+ /**
760
+ * Small mono eyebrow shown above the title in the `brand` hero header (e.g. a programme or category label). Brand style only.
761
+ */
762
+ "eyebrow"?: string;
735
763
  /**
736
764
  * A JSON string representing the fields in the form. Example: ```json [ { "name": "email", "label": "Email", "type": "text", "required": true }, { "name": "password", "label": "Password", "type": "password", "required": true } ] ```
737
765
  */
@@ -748,6 +776,10 @@ export namespace Components {
748
776
  * Choose between default layout, shadow style, or brand style. - "default": Standard form layout - "shadow": Form with shadow effect - "brand": EBRAINS branded form with left border and shadow
749
777
  */
750
778
  "formStyle": 'default' | 'shadow' | 'brand';
779
+ /**
780
+ * Show the "GDPR compliant" meta chip in the `brand` hero header. Default OFF — it's an unverified compliance claim, so it must be opted into explicitly (per form) rather than advertised on every brand form.
781
+ */
782
+ "gdpr"?: boolean;
751
783
  "getData": () => Promise<FormData>;
752
784
  /**
753
785
  * New: list of groups, each with `{ id: string, title: string }`
@@ -761,11 +793,31 @@ export namespace Components {
761
793
  * The name of the form, used for grouping inputs and identifying the form.
762
794
  */
763
795
  "name": string;
796
+ /**
797
+ * Optional submission-policy label shown as a meta chip in the `brand` hero (e.g. "You can submit this form only once."). Brand style only.
798
+ */
799
+ "policy"?: string;
800
+ /**
801
+ * Completion percentage (0–100) shown as a "X% complete" chip in the `brand` hero — the single-page equivalent of the multi-step progress. Host-driven (e.g. filled required fields); omit/undefined to hide. Brand style only.
802
+ */
803
+ "progress"?: number;
804
+ /**
805
+ * Autosave label next to the dot (e.g. "Saved 5:01 PM"). Empty hides the whole save-state cluster. Brand footer only.
806
+ */
807
+ "saveLabel"?: string;
808
+ /**
809
+ * Autosave state shown at the left of the brand footer (host-driven). The dot pulses grey while saving and settles green when saved.
810
+ */
811
+ "saveStatus": 'idle' | 'saving' | 'saved' | 'error';
764
812
  "setData": (newData: { [key: string]: any; }) => Promise<void>;
765
813
  /**
766
814
  * If `true`, includes the current form URL in the submission data.
767
815
  */
768
816
  "setFormUrl"?: boolean;
817
+ /**
818
+ * Lifecycle state for the brand style (drives the hero eyebrow, glow tint and expiry meta-chip colour). "closed" additionally disables every field, desaturates the body and replaces the submit with a dead "Submissions closed" footer. No effect outside form-style="brand". - "open": accepting submissions (default) - "expiring": accepting but closing soon (amber) - "closed": expired / not accepting (red, read-only)
819
+ */
820
+ "status": 'open' | 'expiring' | 'closed';
769
821
  /**
770
822
  * The title displayed above the form.
771
823
  */
@@ -922,6 +974,10 @@ export namespace Components {
922
974
  * Placeholder text for the input
923
975
  */
924
976
  "placeholder": string;
977
+ /**
978
+ * Visual theme of the search pill. - "gray" (default): light grey surface (matches the EBRAINS header mockup) - "white": white surface with a 1px border (use when sitting on a coloured nav) - "black": brand-black surface with white text (use on dark backgrounds)
979
+ */
980
+ "variant": 'gray' | 'white' | 'black';
925
981
  }
926
982
  /**
927
983
  * `EdsHeader` is a header component designed for the EBRAINS platform.
@@ -995,6 +1051,10 @@ export namespace Components {
995
1051
  "class": string;
996
1052
  }
997
1053
  interface EdsIconWrapper {
1054
+ /**
1055
+ * Accessible label for the icon. Set this when the icon conveys meaning on its own (e.g. a standalone status/action icon) — it is exposed as `role="img"` + `aria-label`. When omitted, the icon is treated as decorative and hidden from assistive technology (`aria-hidden`), which is correct when it sits next to a text label that already describes it.
1056
+ */
1057
+ "label"?: string;
998
1058
  "name": IconName;
999
1059
  "size": 16 | 20 | 24 | 32;
1000
1060
  }
@@ -1066,6 +1126,10 @@ export namespace Components {
1066
1126
  "hasMessage": boolean;
1067
1127
  "icon"?: IconName;
1068
1128
  "inputId"?: string;
1129
+ /**
1130
+ * Explicit tabindex for the native input. Radio/checkbox groups inside the `eds-input-field` shadow root (delegatesFocus) get skipped by sequential keyboard navigation unless each input is explicitly in the tab order.
1131
+ */
1132
+ "inputTabIndex"?: number;
1069
1133
  "max"?: number;
1070
1134
  "maxLength"?: number;
1071
1135
  "min"?: number;
@@ -1394,6 +1458,28 @@ export namespace Components {
1394
1458
  */
1395
1459
  "value"?: string | number;
1396
1460
  }
1461
+ interface EdsKgLearningResources {
1462
+ /**
1463
+ * API endpoint for fetching learning resources
1464
+ */
1465
+ "apiEndpoint": string;
1466
+ /**
1467
+ * Component heading
1468
+ */
1469
+ "heading": string;
1470
+ /**
1471
+ * Whether to resolve software names
1472
+ */
1473
+ "resolveNames": boolean;
1474
+ /**
1475
+ * Max resources to fetch
1476
+ */
1477
+ "size": number;
1478
+ /**
1479
+ * Visual variant for accordions and cards
1480
+ */
1481
+ "variant": 'default' | 'inverse';
1482
+ }
1397
1483
  interface EdsKgWebServicesSelect {
1398
1484
  /**
1399
1485
  * API endpoint for fetching web services Defaults to cached endpoint for better performance
@@ -1497,7 +1583,19 @@ export namespace Components {
1497
1583
  /**
1498
1584
  * The visual style intent of the link. Options: 'primary', 'secondary', 'secondaryInverse', 'ghost', 'strong', 'weak', 'inverse', 'underline', 'underlineInverse', 'brand', 'brandInverse', 'cta', 'cta-brand'.
1499
1585
  */
1500
- "intent"?: 'primary' | 'secondary' | 'secondaryInverse' | 'ghost' | 'strong' | 'weak' | 'inverse' | 'underline' | 'underlineInverse' | 'brand' | 'brandInverse' | 'cta' | 'cta-brand';
1586
+ "intent"?: | 'primary'
1587
+ | 'secondary'
1588
+ | 'secondaryInverse'
1589
+ | 'ghost'
1590
+ | 'strong'
1591
+ | 'weak'
1592
+ | 'inverse'
1593
+ | 'underline'
1594
+ | 'underlineInverse'
1595
+ | 'brand'
1596
+ | 'brandInverse'
1597
+ | 'cta'
1598
+ | 'cta-brand';
1501
1599
  /**
1502
1600
  * The text label for the link.
1503
1601
  */
@@ -1516,28 +1614,23 @@ export namespace Components {
1516
1614
  "url"?: string;
1517
1615
  }
1518
1616
  /**
1519
- * `EdsLogo` is a logo component designed to display a clickable logo that can link to a specified URL.
1520
- * Key Features:
1521
- * - Supports various logo styles and orientations.
1522
- * - Emits a custom `matomoEvent` for tracking click interactions.
1617
+ * `EdsLogo` renders the clickable EBRAINS brand mark (inline SVG).
1523
1618
  * Props:
1524
- * - `href` (string): The URL to navigate to when the logo is clicked (defaults to the root path `/`).
1525
- * - `orientation` (string): The orientation of the logo (`horizontal` or `vertical`).
1526
- * - `type` (string): The style of the logo (`color`, `black`, `color-white`, `white`).
1527
- * Events:
1528
- * - `matomoEvent`: Emitted when the logo is clicked, carrying metadata for analytics tracking, including the event `category`, `tag`, `name`, and `action`.
1529
- * This component is ideal for navigation and branding, with options for style customization and interaction tracking.
1619
+ * - `variant` (attribute `type`): `'positive'` (dark logo for light
1620
+ * backgrounds) or `'negative'` (light logo for dark backgrounds).
1621
+ * - `href`: where the logo links to (defaults to `/`). The logo is the
1622
+ * click-to-home affordance in eds-header, eds-fullscreen-menu and the
1623
+ * eds-form brand hero.
1624
+ * Clicks emit an analytics event (category/tag/name/action).
1625
+ * NOTE: the SVG has a viewBox but no intrinsic width, so the host needs a
1626
+ * sized block parent to render (e.g. eds-header wraps it in a fixed-width
1627
+ * container).
1530
1628
  */
1531
1629
  interface EdsLogo {
1532
1630
  /**
1533
1631
  * The URL that the logo should link to. When clicked, the user will be navigated to this URL. Defaults to the root path ('/').
1534
1632
  */
1535
1633
  "href": string;
1536
- "label": string;
1537
- /**
1538
- * The orientation of the logo to display. - `"horizontal"` displays the logo horizontally. - `"vertical"` displays the logo vertically.
1539
- */
1540
- "orientation": 'horizontal' | 'vertical';
1541
1634
  /**
1542
1635
  * The visual variant of the logo. `'positive'` for dark logo on light backgrounds, `'negative'` for light logo on dark backgrounds.
1543
1636
  */
@@ -1741,6 +1834,67 @@ export namespace Components {
1741
1834
  */
1742
1835
  "selectedRating": number;
1743
1836
  }
1837
+ /**
1838
+ * Searchable, source-agnostic select for HUGE option lists (countries,
1839
+ * currencies, nationalities, …) — the generalised sibling of
1840
+ * eds-kg-web-services-select.
1841
+ * It never talks to an external API directly. It either filters an inline
1842
+ * `options` array client-side, or queries a VETTED, NAMED `source` through our
1843
+ * own datasets registry (`/api/v1/datasets/<source>/search`), which returns the
1844
+ * one normalised shape `{ items: [{label, value}], total, nextOffset }`. Any
1845
+ * messy upstream schema is flattened server-side by an adapter — the component
1846
+ * stays dumb.
1847
+ * Rendering is result-capped (we render at most `maxVisible` rows and tell the
1848
+ * user to keep typing) so a 5,000-item source never blows up the DOM. Remote
1849
+ * sources are additionally bounded by the server's page `limit`.
1850
+ */
1851
+ interface EdsSearchSelect {
1852
+ /**
1853
+ * Base path for the datasets API.
1854
+ */
1855
+ "apiBase": string;
1856
+ /**
1857
+ * Debounce (ms) before a remote search fires.
1858
+ */
1859
+ "debounceMs": number;
1860
+ "disabled": boolean;
1861
+ "error": boolean;
1862
+ "errorMessage"?: string;
1863
+ "hint"?: string;
1864
+ "label"?: string;
1865
+ /**
1866
+ * Server page size for remote sources.
1867
+ */
1868
+ "limit": number;
1869
+ /**
1870
+ * Max rows rendered at once (DOM cap).
1871
+ */
1872
+ "maxVisible": number;
1873
+ "message"?: string;
1874
+ /**
1875
+ * Allow selecting multiple values — selections render as removable tags.
1876
+ */
1877
+ "multiple": boolean;
1878
+ "name": string;
1879
+ /**
1880
+ * Inline options: an array or a JSON string of [{label, value}].
1881
+ */
1882
+ "options"?: Option[] | string;
1883
+ "placeholder": string;
1884
+ "required": boolean;
1885
+ /**
1886
+ * Query param name the search term is sent as.
1887
+ */
1888
+ "searchParam": string;
1889
+ /**
1890
+ * A vetted registry source key, e.g. "countries" / "currencies".
1891
+ */
1892
+ "source"?: string;
1893
+ /**
1894
+ * Selected value. A single value string in single-select mode, or an array of values in multi-select mode. v-model friendly.
1895
+ */
1896
+ "value"?: string | string[];
1897
+ }
1744
1898
  interface EdsSectionCore {
1745
1899
  /**
1746
1900
  * The heading level for the section title, such as 'h1', 'h2', etc. Default is 'h2'.
@@ -1889,6 +2043,10 @@ export namespace Components {
1889
2043
  }
1890
2044
  interface EdsStepsV2 {
1891
2045
  "backLabel": string;
2046
+ /**
2047
+ * Whether the stepper draws its own bordered card. Default true. Set to false when the host already provides the card chrome (e.g. a multi-step form whose form-style border lives on an outer wrapper) to avoid a double border.
2048
+ */
2049
+ "card": boolean;
1892
2050
  /**
1893
2051
  * Disable Next/Finish (boolean or per-step boolean[]). Also accepts a JSON array string.
1894
2052
  * @attr disable-next
@@ -1948,9 +2106,9 @@ export namespace Components {
1948
2106
  */
1949
2107
  "labelOn": string;
1950
2108
  /**
1951
- * Variant of the switch: 'toggle' (default) or 'segmented' (pill-style buttons)
2109
+ * Variant of the switch: - 'toggle' (default): the classic on/off switch - 'segmented': pill-style buttons — light container, green active pill - 'segmented-dark': pill-style buttons — white container with a hairline border and a dark (brand-black) active pill
1952
2110
  */
1953
- "variant": 'toggle' | 'segmented';
2111
+ "variant": 'toggle' | 'segmented' | 'segmented-dark';
1954
2112
  }
1955
2113
  /**
1956
2114
  * `EdsTable` is a customizable data table component with support for dynamic data fetching, column configuration, pagination, and search functionality.
@@ -1975,10 +2133,6 @@ export namespace Components {
1975
2133
  * Array of actions to render in each row. Can be passed as a JSON string or as a `TableAction[]`. Each action object may include: - `name` (string; required) — unique action key, e.g. `"view"`, `"delete"`. - `label` (string; required) — text shown on the button, or used as the tooltip/aria-label when icon-only. - `type` ("button" | "checkbox"; optional) — whether to render a standard button (default) or a checkbox. - `icon` (string; optional) — name of the icon to display in icon-only mode. - `field` (string; optional) — for checkboxes, the row field whose truthiness binds the checked state (defaults to `name`). - `showLabel` (boolean; optional) — if `true`, render the full `label` instead of an icon + tooltip. - `intent` ("brand" | "primary" | "secondary" | "neutral" | "ghost" | "brandInverse" | "secondaryInverse" | "ghostInverse"; optional) — button intent/style. When you pass JSON, make sure field names match exactly: ```html actions='[ { "name":"view", "label":"View", "icon":"eye", "intent":"brand" }, { "name":"edit", "label":"Edit", "icon":"pencil", "showLabel":true, "intent":"primary" }, { "name":"del", "label":"Delete","type":"checkbox", "field":"selected" } ]' ```
1976
2134
  */
1977
2135
  "actions": string | TableAction[];
1978
- /**
1979
- * Optional property to control the column sizing mode. - 'default' uses containerWidth / visibleColumns. - 'medium' divides that result by 2. - 'large' divides that result by 4.
1980
- */
1981
- "columnSize"?: 'default' | 'medium' | 'large';
1982
2136
  /**
1983
2137
  * Config object to hide or format columns
1984
2138
  */
@@ -2015,9 +2169,9 @@ export namespace Components {
2015
2169
  */
2016
2170
  "sortingEnabled": boolean;
2017
2171
  /**
2018
- * Theme for table styling: - 'default': Simple rows with no background - 'color': Alternating row colors - 'brand': Modern brand styling with hover effects and green accents
2172
+ * Theme for table styling. The 'default' (no background) and 'color' (alternating rows) themes are DISABLED — the table now always renders the EBRAINS 'brand' theme (modern styling, hover, green accents). The prop is kept for API compatibility but is coerced to 'brand' in componentWillLoad(), so any value a consumer passes is ignored.
2019
2173
  */
2020
- "theme": 'default' | 'color' | 'brand';
2174
+ "theme": 'brand';
2021
2175
  /**
2022
2176
  * View mode for displaying data: - 'table': Traditional table layout (default) - 'card': Card grid layout
2023
2177
  */
@@ -2077,18 +2231,34 @@ export namespace Components {
2077
2231
  "events": string | any[];
2078
2232
  }
2079
2233
  interface EdsToast {
2234
+ /**
2235
+ * Show a dismiss (×) button regardless of `duration`. The `toast` variant already shows one whenever `duration` is set; set this for a persistent banner the user can still close.
2236
+ */
2237
+ "dismissible": boolean;
2080
2238
  /**
2081
2239
  * Determines the duration before the toast auto-dismisses (in milliseconds). If set, the toast will auto-dismiss and show a close button. If not set (or set to 0), it will persist without a close button.
2082
2240
  */
2083
2241
  "duration"?: number;
2242
+ /**
2243
+ * Bold heading shown above the message. Banner variant only.
2244
+ */
2245
+ "heading"?: string;
2246
+ /**
2247
+ * Leading icon name (from the EBRAINS icon set). Banner variant only. Falls back to a sensible default per intent when omitted.
2248
+ */
2249
+ "icon"?: string;
2084
2250
  /**
2085
2251
  * The visual intent or style of the toast, indicating the toast type.
2086
2252
  */
2087
- "intent": 'default' | 'success' | 'error' | 'warning' | 'brand' | 'brandInverse';
2253
+ "intent": 'default' | 'success' | 'error' | 'warning' | 'info' | 'neutral' | 'brand' | 'brandInverse';
2088
2254
  /**
2089
2255
  * The main message or text to be displayed in the toast.
2090
2256
  */
2091
2257
  "message": string;
2258
+ /**
2259
+ * Visual variant: - "toast": the classic compact pill (message + close). Default; used by the global toast manager. - "banner": a richer inline banner — leading icon in a tinted square, a bold heading over a mono message, a coloured left rail on a tinted surface, an optional actions slot and an optional dismiss button. Use for persistent, in-page status (form expiry, saved draft, etc.).
2260
+ */
2261
+ "variant": 'toast' | 'banner';
2092
2262
  }
2093
2263
  interface EdsToastManager {
2094
2264
  }
@@ -2102,6 +2272,58 @@ export namespace Components {
2102
2272
  "content"?: string;
2103
2273
  "position": 'top' | 'bottom';
2104
2274
  }
2275
+ /**
2276
+ * `EdsTrlBadge` — public EBRAINS TRL badge, aligned with the EBRAINS visual
2277
+ * system (Black `#07140D`, Green `#00FF9D`, Dark Green `#00C87B`, Grey
2278
+ * `#7A7B7A`, IBM Plex Mono) and using the **official EBRAINS sphere mark**.
2279
+ * Renders a self-contained inline `<svg>` (same markup the server-side
2280
+ * `badge.svg` endpoint emits), so it embeds anywhere and stays crisp.
2281
+ * Variants:
2282
+ * - `tone` — CI-style label + value pill (dark or light `theme`).
2283
+ * - `full` — single bar with the full string.
2284
+ * - `pill` — compact rounded "TRL 7".
2285
+ * - `outline` — thin border, transparent fill, mono caps (dark or light).
2286
+ * - `scale` — nine readiness pips showing position on the 1–9 scale.
2287
+ * The value/pip colour encodes maturity within the brand palette:
2288
+ * TRL 7–9 → green, 4–6 → dark green, 1–3 → grey.
2289
+ * @example <eds-trl-badge level={7} assessed="2026-06" methodology="v8.2"></eds-trl-badge>
2290
+ * <eds-trl-badge level={7} variant="outline" theme="light"></eds-trl-badge>
2291
+ * <eds-trl-badge level={7} variant="scale" size={32}></eds-trl-badge>
2292
+ */
2293
+ interface EdsTrlBadge {
2294
+ /**
2295
+ * Assessment month, e.g. "2026-06".
2296
+ */
2297
+ "assessed"?: string;
2298
+ /**
2299
+ * Optional link (methodology or service page).
2300
+ */
2301
+ "href"?: string;
2302
+ /**
2303
+ * Left-segment / leading label.
2304
+ */
2305
+ "label": string;
2306
+ /**
2307
+ * TRL level, 1–9.
2308
+ */
2309
+ "level": number;
2310
+ /**
2311
+ * Methodology version, e.g. "v8.2".
2312
+ */
2313
+ "methodology"?: string;
2314
+ /**
2315
+ * Rendered height in px. Scales the whole badge crisply (viewBox is fixed).
2316
+ */
2317
+ "size"?: number;
2318
+ /**
2319
+ * Colour theme for the `tone` / `outline` / `scale` variants.
2320
+ */
2321
+ "theme": 'dark' | 'light';
2322
+ /**
2323
+ * 'tone' | 'full' | 'pill' | 'outline' | 'scale'.
2324
+ */
2325
+ "variant": 'tone' | 'full' | 'pill' | 'outline' | 'scale';
2326
+ }
2105
2327
  /**
2106
2328
  * `EdsUser` is a user component for managing and displaying
2107
2329
  * the user's auth information. Displays a user dropdown menu when authenticated.
@@ -2238,6 +2460,10 @@ export interface EdsRatingCustomEvent<T> extends CustomEvent<T> {
2238
2460
  detail: T;
2239
2461
  target: HTMLEdsRatingElement;
2240
2462
  }
2463
+ export interface EdsSearchSelectCustomEvent<T> extends CustomEvent<T> {
2464
+ detail: T;
2465
+ target: HTMLEdsSearchSelectElement;
2466
+ }
2241
2467
  export interface EdsSidebarCustomEvent<T> extends CustomEvent<T> {
2242
2468
  detail: T;
2243
2469
  target: HTMLEdsSidebarElement;
@@ -2619,16 +2845,24 @@ declare global {
2619
2845
  "cookies": any;
2620
2846
  }
2621
2847
  /**
2622
- * `EdsFooter` is a footer component designed for the EBRAINS platform, featuring social links,
2623
- * legal information, and an optional cookie preferences button. It includes a "Back to top"
2624
- * button and displays an acknowledgment for Horizon Europe funding.
2625
- * Key Features:
2626
- * - Social Network Links: Optionally display a section for social media links.
2627
- * - Legal and Funding Information: Includes text for legal disclaimers and funding acknowledgments.
2628
- * - Cookie Preferences: Optionally display a "Cookies Preferences" button.
2629
- * - Back to Top Button: Smoothly scrolls the page back to the top when clicked.
2630
- * This component is ideal for maintaining consistent branding, legal disclaimers, and navigational elements
2631
- * across the EBRAINS platform, with options for social links and a "Back to top" button.
2848
+ * `EdsFooter` is the EBRAINS-wide footer component.
2849
+ * Renders a 4-column layout matching the eds-docs landing footer:
2850
+ * [ Brand (EU flag + funding text + copyright) | Resources | Community | Legal ]
2851
+ * Defaults are designed so a consumer that writes `<eds-footer></eds-footer>`
2852
+ * with no props gets the full canonical EBRAINS footer rendered same
2853
+ * brand block, same link columns, same dark theme as the eds-docs
2854
+ * landing page. The previous minimal-strip footer is replaced; consumers
2855
+ * that need different link content pass the `columns` prop (array or
2856
+ * JSON-stringified array for HTML attribute use).
2857
+ * Configurability without breakage:
2858
+ * - All previous props remain (`social`, `variant`, `fundedBy`,
2859
+ * `rightsReserved`, `enableScrollTop`, `enableCookiesSettings`,
2860
+ * `cookiesPreferences`, `backToTopAriaLabel`). Their meanings are
2861
+ * preserved.
2862
+ * - New `columns` prop is optional — omit it for the defaults.
2863
+ * - The `enableCookiesSettings` toggle now decides whether any column
2864
+ * link with `action: 'cookies'` is rendered (default false; pass
2865
+ * true to surface the Cookie Preferences entry in the Legal column).
2632
2866
  */
2633
2867
  interface HTMLEdsFooterElement extends Components.EdsFooter, HTMLStencilElement {
2634
2868
  addEventListener<K extends keyof HTMLEdsFooterElementEventMap>(type: K, listener: (this: HTMLEdsFooterElement, ev: EdsFooterCustomEvent<HTMLEdsFooterElementEventMap[K]>) => any, options?: boolean | AddEventListenerOptions): void;
@@ -2652,6 +2886,8 @@ declare global {
2652
2886
  value?: any;
2653
2887
  message?: string;
2654
2888
  success?: boolean;
2889
+ /** True when this change came from the Clear button (host may skip autosave). */
2890
+ cleared?: boolean;
2655
2891
  };
2656
2892
  }
2657
2893
  /**
@@ -2969,6 +3205,12 @@ declare global {
2969
3205
  prototype: HTMLEdsInputSelectElement;
2970
3206
  new (): HTMLEdsInputSelectElement;
2971
3207
  };
3208
+ interface HTMLEdsKgLearningResourcesElement extends Components.EdsKgLearningResources, HTMLStencilElement {
3209
+ }
3210
+ var HTMLEdsKgLearningResourcesElement: {
3211
+ prototype: HTMLEdsKgLearningResourcesElement;
3212
+ new (): HTMLEdsKgLearningResourcesElement;
3213
+ };
2972
3214
  interface HTMLEdsKgWebServicesSelectElementEventMap {
2973
3215
  "edsinput": { value: string | boolean | string[] };
2974
3216
  "edschange": { value: string | boolean | string[] };
@@ -3003,17 +3245,17 @@ declare global {
3003
3245
  new (): HTMLEdsLinkElement;
3004
3246
  };
3005
3247
  /**
3006
- * `EdsLogo` is a logo component designed to display a clickable logo that can link to a specified URL.
3007
- * Key Features:
3008
- * - Supports various logo styles and orientations.
3009
- * - Emits a custom `matomoEvent` for tracking click interactions.
3248
+ * `EdsLogo` renders the clickable EBRAINS brand mark (inline SVG).
3010
3249
  * Props:
3011
- * - `href` (string): The URL to navigate to when the logo is clicked (defaults to the root path `/`).
3012
- * - `orientation` (string): The orientation of the logo (`horizontal` or `vertical`).
3013
- * - `type` (string): The style of the logo (`color`, `black`, `color-white`, `white`).
3014
- * Events:
3015
- * - `matomoEvent`: Emitted when the logo is clicked, carrying metadata for analytics tracking, including the event `category`, `tag`, `name`, and `action`.
3016
- * This component is ideal for navigation and branding, with options for style customization and interaction tracking.
3250
+ * - `variant` (attribute `type`): `'positive'` (dark logo for light
3251
+ * backgrounds) or `'negative'` (light logo for dark backgrounds).
3252
+ * - `href`: where the logo links to (defaults to `/`). The logo is the
3253
+ * click-to-home affordance in eds-header, eds-fullscreen-menu and the
3254
+ * eds-form brand hero.
3255
+ * Clicks emit an analytics event (category/tag/name/action).
3256
+ * NOTE: the SVG has a viewBox but no intrinsic width, so the host needs a
3257
+ * sized block parent to render (e.g. eds-header wraps it in a fixed-width
3258
+ * container).
3017
3259
  */
3018
3260
  interface HTMLEdsLogoElement extends Components.EdsLogo, HTMLStencilElement {
3019
3261
  }
@@ -3114,6 +3356,38 @@ declare global {
3114
3356
  prototype: HTMLEdsRatingElement;
3115
3357
  new (): HTMLEdsRatingElement;
3116
3358
  };
3359
+ interface HTMLEdsSearchSelectElementEventMap {
3360
+ "edsinput": { value: string | boolean | string[] };
3361
+ "edschange": { value: string | boolean | string[] };
3362
+ }
3363
+ /**
3364
+ * Searchable, source-agnostic select for HUGE option lists (countries,
3365
+ * currencies, nationalities, …) — the generalised sibling of
3366
+ * eds-kg-web-services-select.
3367
+ * It never talks to an external API directly. It either filters an inline
3368
+ * `options` array client-side, or queries a VETTED, NAMED `source` through our
3369
+ * own datasets registry (`/api/v1/datasets/<source>/search`), which returns the
3370
+ * one normalised shape `{ items: [{label, value}], total, nextOffset }`. Any
3371
+ * messy upstream schema is flattened server-side by an adapter — the component
3372
+ * stays dumb.
3373
+ * Rendering is result-capped (we render at most `maxVisible` rows and tell the
3374
+ * user to keep typing) so a 5,000-item source never blows up the DOM. Remote
3375
+ * sources are additionally bounded by the server's page `limit`.
3376
+ */
3377
+ interface HTMLEdsSearchSelectElement extends Components.EdsSearchSelect, HTMLStencilElement {
3378
+ addEventListener<K extends keyof HTMLEdsSearchSelectElementEventMap>(type: K, listener: (this: HTMLEdsSearchSelectElement, ev: EdsSearchSelectCustomEvent<HTMLEdsSearchSelectElementEventMap[K]>) => any, options?: boolean | AddEventListenerOptions): void;
3379
+ addEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
3380
+ addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
3381
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
3382
+ removeEventListener<K extends keyof HTMLEdsSearchSelectElementEventMap>(type: K, listener: (this: HTMLEdsSearchSelectElement, ev: EdsSearchSelectCustomEvent<HTMLEdsSearchSelectElementEventMap[K]>) => any, options?: boolean | EventListenerOptions): void;
3383
+ removeEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
3384
+ removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
3385
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
3386
+ }
3387
+ var HTMLEdsSearchSelectElement: {
3388
+ prototype: HTMLEdsSearchSelectElement;
3389
+ new (): HTMLEdsSearchSelectElement;
3390
+ };
3117
3391
  interface HTMLEdsSectionCoreElement extends Components.EdsSectionCore, HTMLStencilElement {
3118
3392
  }
3119
3393
  var HTMLEdsSectionCoreElement: {
@@ -3345,6 +3619,30 @@ declare global {
3345
3619
  prototype: HTMLEdsTooltipElement;
3346
3620
  new (): HTMLEdsTooltipElement;
3347
3621
  };
3622
+ /**
3623
+ * `EdsTrlBadge` — public EBRAINS TRL badge, aligned with the EBRAINS visual
3624
+ * system (Black `#07140D`, Green `#00FF9D`, Dark Green `#00C87B`, Grey
3625
+ * `#7A7B7A`, IBM Plex Mono) and using the **official EBRAINS sphere mark**.
3626
+ * Renders a self-contained inline `<svg>` (same markup the server-side
3627
+ * `badge.svg` endpoint emits), so it embeds anywhere and stays crisp.
3628
+ * Variants:
3629
+ * - `tone` — CI-style label + value pill (dark or light `theme`).
3630
+ * - `full` — single bar with the full string.
3631
+ * - `pill` — compact rounded "TRL 7".
3632
+ * - `outline` — thin border, transparent fill, mono caps (dark or light).
3633
+ * - `scale` — nine readiness pips showing position on the 1–9 scale.
3634
+ * The value/pip colour encodes maturity within the brand palette:
3635
+ * TRL 7–9 → green, 4–6 → dark green, 1–3 → grey.
3636
+ * @example <eds-trl-badge level={7} assessed="2026-06" methodology="v8.2"></eds-trl-badge>
3637
+ * <eds-trl-badge level={7} variant="outline" theme="light"></eds-trl-badge>
3638
+ * <eds-trl-badge level={7} variant="scale" size={32}></eds-trl-badge>
3639
+ */
3640
+ interface HTMLEdsTrlBadgeElement extends Components.EdsTrlBadge, HTMLStencilElement {
3641
+ }
3642
+ var HTMLEdsTrlBadgeElement: {
3643
+ prototype: HTMLEdsTrlBadgeElement;
3644
+ new (): HTMLEdsTrlBadgeElement;
3645
+ };
3348
3646
  /**
3349
3647
  * `EdsUser` is a user component for managing and displaying
3350
3648
  * the user's auth information. Displays a user dropdown menu when authenticated.
@@ -3506,6 +3804,7 @@ declare global {
3506
3804
  "eds-input-range": HTMLEdsInputRangeElement;
3507
3805
  "eds-input-search": HTMLEdsInputSearchElement;
3508
3806
  "eds-input-select": HTMLEdsInputSelectElement;
3807
+ "eds-kg-learning-resources": HTMLEdsKgLearningResourcesElement;
3509
3808
  "eds-kg-web-services-select": HTMLEdsKgWebServicesSelectElement;
3510
3809
  "eds-link": HTMLEdsLinkElement;
3511
3810
  "eds-logo": HTMLEdsLogoElement;
@@ -3516,6 +3815,7 @@ declare global {
3516
3815
  "eds-pie": HTMLEdsPieElement;
3517
3816
  "eds-progress-bar": HTMLEdsProgressBarElement;
3518
3817
  "eds-rating": HTMLEdsRatingElement;
3818
+ "eds-search-select": HTMLEdsSearchSelectElement;
3519
3819
  "eds-section-core": HTMLEdsSectionCoreElement;
3520
3820
  "eds-section-heading": HTMLEdsSectionHeadingElement;
3521
3821
  "eds-sidebar": HTMLEdsSidebarElement;
@@ -3532,6 +3832,7 @@ declare global {
3532
3832
  "eds-toast": HTMLEdsToastElement;
3533
3833
  "eds-toast-manager": HTMLEdsToastManagerElement;
3534
3834
  "eds-tooltip": HTMLEdsTooltipElement;
3835
+ "eds-trl-badge": HTMLEdsTrlBadgeElement;
3535
3836
  "eds-user": HTMLEdsUserElement;
3536
3837
  "gradient-primary-palette": HTMLGradientPrimaryPaletteElement;
3537
3838
  "gradient-secondary-palette": HTMLGradientSecondaryPaletteElement;
@@ -3779,7 +4080,17 @@ declare namespace LocalJSX {
3779
4080
  /**
3780
4081
  * The visual intent or style of the button. - 'primary': Brand black background with white text - 'secondary': Transparent/white background with black border and text - 'secondaryInverse': Transparent background with white border and white text (for dark backgrounds) - 'brand': Brand green background with black text (CTA style) - 'cta': CTA link style with monospace font (gray text that turns green on hover) - 'cta-brand': CTA link style with monospace font (always green)
3781
4082
  */
3782
- "intent"?: 'primary' | 'secondary' | 'secondaryInverse' | 'ghost' | 'ghostInverse' | 'brand' | 'brandInverse' | 'neutral' | 'cta' | 'cta-brand';
4083
+ "intent"?: | 'primary'
4084
+ | 'secondary'
4085
+ | 'secondaryInverse'
4086
+ | 'ghost'
4087
+ | 'ghostInverse'
4088
+ | 'brand'
4089
+ | 'brandLight'
4090
+ | 'brandInverse'
4091
+ | 'neutral'
4092
+ | 'cta'
4093
+ | 'cta-brand';
3783
4094
  /**
3784
4095
  * The label text to be displayed inside the button.
3785
4096
  */
@@ -4193,57 +4504,61 @@ declare namespace LocalJSX {
4193
4504
  "type"?: 'star' | 'thumbs-up' | 'thumbs-down';
4194
4505
  }
4195
4506
  /**
4196
- * `EdsFooter` is a footer component designed for the EBRAINS platform, featuring social links,
4197
- * legal information, and an optional cookie preferences button. It includes a "Back to top"
4198
- * button and displays an acknowledgment for Horizon Europe funding.
4199
- * Key Features:
4200
- * - Social Network Links: Optionally display a section for social media links.
4201
- * - Legal and Funding Information: Includes text for legal disclaimers and funding acknowledgments.
4202
- * - Cookie Preferences: Optionally display a "Cookies Preferences" button.
4203
- * - Back to Top Button: Smoothly scrolls the page back to the top when clicked.
4204
- * This component is ideal for maintaining consistent branding, legal disclaimers, and navigational elements
4205
- * across the EBRAINS platform, with options for social links and a "Back to top" button.
4507
+ * `EdsFooter` is the EBRAINS-wide footer component.
4508
+ * Renders a 4-column layout matching the eds-docs landing footer:
4509
+ * [ Brand (EU flag + funding text + copyright) | Resources | Community | Legal ]
4510
+ * Defaults are designed so a consumer that writes `<eds-footer></eds-footer>`
4511
+ * with no props gets the full canonical EBRAINS footer rendered same
4512
+ * brand block, same link columns, same dark theme as the eds-docs
4513
+ * landing page. The previous minimal-strip footer is replaced; consumers
4514
+ * that need different link content pass the `columns` prop (array or
4515
+ * JSON-stringified array for HTML attribute use).
4516
+ * Configurability without breakage:
4517
+ * - All previous props remain (`social`, `variant`, `fundedBy`,
4518
+ * `rightsReserved`, `enableScrollTop`, `enableCookiesSettings`,
4519
+ * `cookiesPreferences`, `backToTopAriaLabel`). Their meanings are
4520
+ * preserved.
4521
+ * - New `columns` prop is optional — omit it for the defaults.
4522
+ * - The `enableCookiesSettings` toggle now decides whether any column
4523
+ * link with `action: 'cookies'` is rendered (default false; pass
4524
+ * true to surface the Cookie Preferences entry in the Legal column).
4206
4525
  */
4207
4526
  interface EdsFooter {
4208
4527
  /**
4209
- * Controls the display of the "Back to Top" aria label text.
4210
- * @type {string}
4528
+ * ARIA label for the "Back to top" floating button.
4211
4529
  */
4212
4530
  "backToTopAriaLabel"?: string;
4213
4531
  /**
4214
- * Controls the display of the "Cookies preferences" text.
4215
- * @type {string}
4532
+ * Custom link columns. Accepts an array (Vue/React/JS bindings) OR a JSON-stringified array (HTML attribute use). When omitted, the canonical EBRAINS-wide columns above are used. Shape: see EdsFooterColumn / EdsFooterLink at the top of this file.
4533
+ */
4534
+ "columns"?: EdsFooterColumn[] | string;
4535
+ /**
4536
+ * Label used for any link with `action: 'cookies'` — overrides the column's `label`.
4216
4537
  */
4217
4538
  "cookiesPreferences"?: string;
4218
4539
  /**
4219
- * Controls the display of the "Cookies preferences" link.
4220
- * @type {string}
4540
+ * When false, any column link with `action: 'cookies'` is hidden. Default false so adding the footer to a page without a Matomo notice / cookie banner doesn't surface a non-functional link. Set true once you've also mounted `<eds-matomo-notice>` on the page.
4221
4541
  */
4222
4542
  "enableCookiesSettings"?: boolean;
4223
4543
  /**
4224
- * Controls the display of the "Back to Top" button. When true, the button appears in the footer.
4225
- * @type {boolean}
4544
+ * Float a "Back to top" button at the top-right of the footer.
4226
4545
  */
4227
4546
  "enableScrollTop"?: boolean;
4228
4547
  /**
4229
- * Controls the display of the "Founded By" text.
4230
- * @type {string}
4548
+ * "EBRAINS is funded by…" line shown next to the EU flag in the brand column.
4231
4549
  */
4232
4550
  "fundedBy"?: string;
4233
4551
  "onCookies"?: (event: EdsFooterCustomEvent<any>) => void;
4234
4552
  /**
4235
- * Controls the display of the "Rights Reserved" text.
4236
- * @type {string}
4553
+ * {year} EBRAINS. All rights reserved." line shown below the funding text.
4237
4554
  */
4238
4555
  "rightsReserved"?: string;
4239
4556
  /**
4240
- * Determines if the social network section should be displayed. Adds top padding when true.
4241
- * @type {boolean}
4557
+ * Show the eds-social-networks section above the main grid.
4242
4558
  */
4243
4559
  "social"?: boolean;
4244
4560
  /**
4245
- * Controls the visual variant of the footer. - 'default': Light background with dark text - 'inverse': Dark/black background with white text
4246
- * @type {'default' | 'inverse'}
4561
+ * Theme variant. Defaults to `inverse` (dark) because the canonical EBRAINS footer design uses a dark backdrop with light text. Pass `variant="default"` for the light-on-light treatment if an app's page palette demands it.
4247
4562
  */
4248
4563
  "variant"?: 'default' | 'inverse';
4249
4564
  }
@@ -4278,6 +4593,18 @@ declare namespace LocalJSX {
4278
4593
  * The message displayed when the form submission fails.
4279
4594
  */
4280
4595
  "errorMessage"?: string;
4596
+ /**
4597
+ * Optional "time to complete" hint shown as a meta chip in the `brand` hero header (e.g. "~6 minutes"). Brand style only.
4598
+ */
4599
+ "estimatedTime"?: string;
4600
+ /**
4601
+ * Optional expiry label shown as a meta chip in the `brand` hero (e.g. "Closes Jun 28, 2026"). Brand style only.
4602
+ */
4603
+ "expires"?: string;
4604
+ /**
4605
+ * Small mono eyebrow shown above the title in the `brand` hero header (e.g. a programme or category label). Brand style only.
4606
+ */
4607
+ "eyebrow"?: string;
4281
4608
  /**
4282
4609
  * A JSON string representing the fields in the form. Example: ```json [ { "name": "email", "label": "Email", "type": "text", "required": true }, { "name": "password", "label": "Password", "type": "password", "required": true } ] ```
4283
4610
  */
@@ -4294,6 +4621,10 @@ declare namespace LocalJSX {
4294
4621
  * Choose between default layout, shadow style, or brand style. - "default": Standard form layout - "shadow": Form with shadow effect - "brand": EBRAINS branded form with left border and shadow
4295
4622
  */
4296
4623
  "formStyle"?: 'default' | 'shadow' | 'brand';
4624
+ /**
4625
+ * Show the "GDPR compliant" meta chip in the `brand` hero header. Default OFF — it's an unverified compliance claim, so it must be opted into explicitly (per form) rather than advertised on every brand form.
4626
+ */
4627
+ "gdpr"?: boolean;
4297
4628
  /**
4298
4629
  * New: list of groups, each with `{ id: string, title: string }`
4299
4630
  */
@@ -4313,11 +4644,33 @@ declare namespace LocalJSX {
4313
4644
  value?: any;
4314
4645
  message?: string;
4315
4646
  success?: boolean;
4647
+ /** True when this change came from the Clear button (host may skip autosave). */
4648
+ cleared?: boolean;
4316
4649
  }>) => void;
4650
+ /**
4651
+ * Optional submission-policy label shown as a meta chip in the `brand` hero (e.g. "You can submit this form only once."). Brand style only.
4652
+ */
4653
+ "policy"?: string;
4654
+ /**
4655
+ * Completion percentage (0–100) shown as a "X% complete" chip in the `brand` hero — the single-page equivalent of the multi-step progress. Host-driven (e.g. filled required fields); omit/undefined to hide. Brand style only.
4656
+ */
4657
+ "progress"?: number;
4658
+ /**
4659
+ * Autosave label next to the dot (e.g. "Saved 5:01 PM"). Empty hides the whole save-state cluster. Brand footer only.
4660
+ */
4661
+ "saveLabel"?: string;
4662
+ /**
4663
+ * Autosave state shown at the left of the brand footer (host-driven). The dot pulses grey while saving and settles green when saved.
4664
+ */
4665
+ "saveStatus"?: 'idle' | 'saving' | 'saved' | 'error';
4317
4666
  /**
4318
4667
  * If `true`, includes the current form URL in the submission data.
4319
4668
  */
4320
4669
  "setFormUrl"?: boolean;
4670
+ /**
4671
+ * Lifecycle state for the brand style (drives the hero eyebrow, glow tint and expiry meta-chip colour). "closed" additionally disables every field, desaturates the body and replaces the submit with a dead "Submissions closed" footer. No effect outside form-style="brand". - "open": accepting submissions (default) - "expiring": accepting but closing soon (amber) - "closed": expired / not accepting (red, read-only)
4672
+ */
4673
+ "status"?: 'open' | 'expiring' | 'closed';
4321
4674
  /**
4322
4675
  * The title displayed above the form.
4323
4676
  */
@@ -4495,6 +4848,10 @@ declare namespace LocalJSX {
4495
4848
  * Placeholder text for the input
4496
4849
  */
4497
4850
  "placeholder"?: string;
4851
+ /**
4852
+ * Visual theme of the search pill. - "gray" (default): light grey surface (matches the EBRAINS header mockup) - "white": white surface with a 1px border (use when sitting on a coloured nav) - "black": brand-black surface with white text (use on dark backgrounds)
4853
+ */
4854
+ "variant"?: 'gray' | 'white' | 'black';
4498
4855
  }
4499
4856
  /**
4500
4857
  * `EdsHeader` is a header component designed for the EBRAINS platform.
@@ -4572,6 +4929,10 @@ declare namespace LocalJSX {
4572
4929
  "class"?: string;
4573
4930
  }
4574
4931
  interface EdsIconWrapper {
4932
+ /**
4933
+ * Accessible label for the icon. Set this when the icon conveys meaning on its own (e.g. a standalone status/action icon) — it is exposed as `role="img"` + `aria-label`. When omitted, the icon is treated as decorative and hidden from assistive technology (`aria-hidden`), which is correct when it sits next to a text label that already describes it.
4934
+ */
4935
+ "label"?: string;
4575
4936
  "name": IconName;
4576
4937
  "size"?: 16 | 20 | 24 | 32;
4577
4938
  }
@@ -4643,6 +5004,10 @@ declare namespace LocalJSX {
4643
5004
  "hasMessage"?: boolean;
4644
5005
  "icon"?: IconName;
4645
5006
  "inputId"?: string;
5007
+ /**
5008
+ * Explicit tabindex for the native input. Radio/checkbox groups inside the `eds-input-field` shadow root (delegatesFocus) get skipped by sequential keyboard navigation unless each input is explicitly in the tab order.
5009
+ */
5010
+ "inputTabIndex"?: number;
4646
5011
  "max"?: number;
4647
5012
  "maxLength"?: number;
4648
5013
  "min"?: number;
@@ -4997,6 +5362,28 @@ declare namespace LocalJSX {
4997
5362
  */
4998
5363
  "value"?: string | number;
4999
5364
  }
5365
+ interface EdsKgLearningResources {
5366
+ /**
5367
+ * API endpoint for fetching learning resources
5368
+ */
5369
+ "apiEndpoint"?: string;
5370
+ /**
5371
+ * Component heading
5372
+ */
5373
+ "heading"?: string;
5374
+ /**
5375
+ * Whether to resolve software names
5376
+ */
5377
+ "resolveNames"?: boolean;
5378
+ /**
5379
+ * Max resources to fetch
5380
+ */
5381
+ "size"?: number;
5382
+ /**
5383
+ * Visual variant for accordions and cards
5384
+ */
5385
+ "variant"?: 'default' | 'inverse';
5386
+ }
5000
5387
  interface EdsKgWebServicesSelect {
5001
5388
  /**
5002
5389
  * API endpoint for fetching web services Defaults to cached endpoint for better performance
@@ -5108,7 +5495,19 @@ declare namespace LocalJSX {
5108
5495
  /**
5109
5496
  * The visual style intent of the link. Options: 'primary', 'secondary', 'secondaryInverse', 'ghost', 'strong', 'weak', 'inverse', 'underline', 'underlineInverse', 'brand', 'brandInverse', 'cta', 'cta-brand'.
5110
5497
  */
5111
- "intent"?: 'primary' | 'secondary' | 'secondaryInverse' | 'ghost' | 'strong' | 'weak' | 'inverse' | 'underline' | 'underlineInverse' | 'brand' | 'brandInverse' | 'cta' | 'cta-brand';
5498
+ "intent"?: | 'primary'
5499
+ | 'secondary'
5500
+ | 'secondaryInverse'
5501
+ | 'ghost'
5502
+ | 'strong'
5503
+ | 'weak'
5504
+ | 'inverse'
5505
+ | 'underline'
5506
+ | 'underlineInverse'
5507
+ | 'brand'
5508
+ | 'brandInverse'
5509
+ | 'cta'
5510
+ | 'cta-brand';
5112
5511
  /**
5113
5512
  * The text label for the link.
5114
5513
  */
@@ -5127,28 +5526,23 @@ declare namespace LocalJSX {
5127
5526
  "url"?: string;
5128
5527
  }
5129
5528
  /**
5130
- * `EdsLogo` is a logo component designed to display a clickable logo that can link to a specified URL.
5131
- * Key Features:
5132
- * - Supports various logo styles and orientations.
5133
- * - Emits a custom `matomoEvent` for tracking click interactions.
5529
+ * `EdsLogo` renders the clickable EBRAINS brand mark (inline SVG).
5134
5530
  * Props:
5135
- * - `href` (string): The URL to navigate to when the logo is clicked (defaults to the root path `/`).
5136
- * - `orientation` (string): The orientation of the logo (`horizontal` or `vertical`).
5137
- * - `type` (string): The style of the logo (`color`, `black`, `color-white`, `white`).
5138
- * Events:
5139
- * - `matomoEvent`: Emitted when the logo is clicked, carrying metadata for analytics tracking, including the event `category`, `tag`, `name`, and `action`.
5140
- * This component is ideal for navigation and branding, with options for style customization and interaction tracking.
5531
+ * - `variant` (attribute `type`): `'positive'` (dark logo for light
5532
+ * backgrounds) or `'negative'` (light logo for dark backgrounds).
5533
+ * - `href`: where the logo links to (defaults to `/`). The logo is the
5534
+ * click-to-home affordance in eds-header, eds-fullscreen-menu and the
5535
+ * eds-form brand hero.
5536
+ * Clicks emit an analytics event (category/tag/name/action).
5537
+ * NOTE: the SVG has a viewBox but no intrinsic width, so the host needs a
5538
+ * sized block parent to render (e.g. eds-header wraps it in a fixed-width
5539
+ * container).
5141
5540
  */
5142
5541
  interface EdsLogo {
5143
5542
  /**
5144
5543
  * The URL that the logo should link to. When clicked, the user will be navigated to this URL. Defaults to the root path ('/').
5145
5544
  */
5146
5545
  "href"?: string;
5147
- "label"?: string;
5148
- /**
5149
- * The orientation of the logo to display. - `"horizontal"` displays the logo horizontally. - `"vertical"` displays the logo vertically.
5150
- */
5151
- "orientation"?: 'horizontal' | 'vertical';
5152
5546
  /**
5153
5547
  * The visual variant of the logo. `'positive'` for dark logo on light backgrounds, `'negative'` for light logo on dark backgrounds.
5154
5548
  */
@@ -5344,6 +5738,69 @@ declare namespace LocalJSX {
5344
5738
  */
5345
5739
  "selectedRating"?: number;
5346
5740
  }
5741
+ /**
5742
+ * Searchable, source-agnostic select for HUGE option lists (countries,
5743
+ * currencies, nationalities, …) — the generalised sibling of
5744
+ * eds-kg-web-services-select.
5745
+ * It never talks to an external API directly. It either filters an inline
5746
+ * `options` array client-side, or queries a VETTED, NAMED `source` through our
5747
+ * own datasets registry (`/api/v1/datasets/<source>/search`), which returns the
5748
+ * one normalised shape `{ items: [{label, value}], total, nextOffset }`. Any
5749
+ * messy upstream schema is flattened server-side by an adapter — the component
5750
+ * stays dumb.
5751
+ * Rendering is result-capped (we render at most `maxVisible` rows and tell the
5752
+ * user to keep typing) so a 5,000-item source never blows up the DOM. Remote
5753
+ * sources are additionally bounded by the server's page `limit`.
5754
+ */
5755
+ interface EdsSearchSelect {
5756
+ /**
5757
+ * Base path for the datasets API.
5758
+ */
5759
+ "apiBase"?: string;
5760
+ /**
5761
+ * Debounce (ms) before a remote search fires.
5762
+ */
5763
+ "debounceMs"?: number;
5764
+ "disabled"?: boolean;
5765
+ "error"?: boolean;
5766
+ "errorMessage"?: string;
5767
+ "hint"?: string;
5768
+ "label"?: string;
5769
+ /**
5770
+ * Server page size for remote sources.
5771
+ */
5772
+ "limit"?: number;
5773
+ /**
5774
+ * Max rows rendered at once (DOM cap).
5775
+ */
5776
+ "maxVisible"?: number;
5777
+ "message"?: string;
5778
+ /**
5779
+ * Allow selecting multiple values — selections render as removable tags.
5780
+ */
5781
+ "multiple"?: boolean;
5782
+ "name": string;
5783
+ "onEdschange"?: (event: EdsSearchSelectCustomEvent<{ value: string | boolean | string[] }>) => void;
5784
+ "onEdsinput"?: (event: EdsSearchSelectCustomEvent<{ value: string | boolean | string[] }>) => void;
5785
+ /**
5786
+ * Inline options: an array or a JSON string of [{label, value}].
5787
+ */
5788
+ "options"?: Option[] | string;
5789
+ "placeholder"?: string;
5790
+ "required"?: boolean;
5791
+ /**
5792
+ * Query param name the search term is sent as.
5793
+ */
5794
+ "searchParam"?: string;
5795
+ /**
5796
+ * A vetted registry source key, e.g. "countries" / "currencies".
5797
+ */
5798
+ "source"?: string;
5799
+ /**
5800
+ * Selected value. A single value string in single-select mode, or an array of values in multi-select mode. v-model friendly.
5801
+ */
5802
+ "value"?: string | string[];
5803
+ }
5347
5804
  interface EdsSectionCore {
5348
5805
  /**
5349
5806
  * The heading level for the section title, such as 'h1', 'h2', etc. Default is 'h2'.
@@ -5504,6 +5961,10 @@ declare namespace LocalJSX {
5504
5961
  }
5505
5962
  interface EdsStepsV2 {
5506
5963
  "backLabel"?: string;
5964
+ /**
5965
+ * Whether the stepper draws its own bordered card. Default true. Set to false when the host already provides the card chrome (e.g. a multi-step form whose form-style border lives on an outer wrapper) to avoid a double border.
5966
+ */
5967
+ "card"?: boolean;
5507
5968
  /**
5508
5969
  * Disable Next/Finish (boolean or per-step boolean[]). Also accepts a JSON array string.
5509
5970
  * @attr disable-next
@@ -5583,9 +6044,9 @@ declare namespace LocalJSX {
5583
6044
  */
5584
6045
  "onUiswitch"?: (event: EdsSwitchCustomEvent<{ value: boolean }>) => void;
5585
6046
  /**
5586
- * Variant of the switch: 'toggle' (default) or 'segmented' (pill-style buttons)
6047
+ * Variant of the switch: - 'toggle' (default): the classic on/off switch - 'segmented': pill-style buttons — light container, green active pill - 'segmented-dark': pill-style buttons — white container with a hairline border and a dark (brand-black) active pill
5587
6048
  */
5588
- "variant"?: 'toggle' | 'segmented';
6049
+ "variant"?: 'toggle' | 'segmented' | 'segmented-dark';
5589
6050
  }
5590
6051
  /**
5591
6052
  * `EdsTable` is a customizable data table component with support for dynamic data fetching, column configuration, pagination, and search functionality.
@@ -5610,10 +6071,6 @@ declare namespace LocalJSX {
5610
6071
  * Array of actions to render in each row. Can be passed as a JSON string or as a `TableAction[]`. Each action object may include: - `name` (string; required) — unique action key, e.g. `"view"`, `"delete"`. - `label` (string; required) — text shown on the button, or used as the tooltip/aria-label when icon-only. - `type` ("button" | "checkbox"; optional) — whether to render a standard button (default) or a checkbox. - `icon` (string; optional) — name of the icon to display in icon-only mode. - `field` (string; optional) — for checkboxes, the row field whose truthiness binds the checked state (defaults to `name`). - `showLabel` (boolean; optional) — if `true`, render the full `label` instead of an icon + tooltip. - `intent` ("brand" | "primary" | "secondary" | "neutral" | "ghost" | "brandInverse" | "secondaryInverse" | "ghostInverse"; optional) — button intent/style. When you pass JSON, make sure field names match exactly: ```html actions='[ { "name":"view", "label":"View", "icon":"eye", "intent":"brand" }, { "name":"edit", "label":"Edit", "icon":"pencil", "showLabel":true, "intent":"primary" }, { "name":"del", "label":"Delete","type":"checkbox", "field":"selected" } ]' ```
5611
6072
  */
5612
6073
  "actions"?: string | TableAction[];
5613
- /**
5614
- * Optional property to control the column sizing mode. - 'default' uses containerWidth / visibleColumns. - 'medium' divides that result by 2. - 'large' divides that result by 4.
5615
- */
5616
- "columnSize"?: 'default' | 'medium' | 'large';
5617
6074
  /**
5618
6075
  * Config object to hide or format columns
5619
6076
  */
@@ -5658,9 +6115,9 @@ declare namespace LocalJSX {
5658
6115
  */
5659
6116
  "sortingEnabled"?: boolean;
5660
6117
  /**
5661
- * Theme for table styling: - 'default': Simple rows with no background - 'color': Alternating row colors - 'brand': Modern brand styling with hover effects and green accents
6118
+ * Theme for table styling. The 'default' (no background) and 'color' (alternating rows) themes are DISABLED — the table now always renders the EBRAINS 'brand' theme (modern styling, hover, green accents). The prop is kept for API compatibility but is coerced to 'brand' in componentWillLoad(), so any value a consumer passes is ignored.
5662
6119
  */
5663
- "theme"?: 'default' | 'color' | 'brand';
6120
+ "theme"?: 'brand';
5664
6121
  /**
5665
6122
  * View mode for displaying data: - 'table': Traditional table layout (default) - 'card': Card grid layout
5666
6123
  */
@@ -5725,19 +6182,35 @@ declare namespace LocalJSX {
5725
6182
  "events"?: string | any[];
5726
6183
  }
5727
6184
  interface EdsToast {
6185
+ /**
6186
+ * Show a dismiss (×) button regardless of `duration`. The `toast` variant already shows one whenever `duration` is set; set this for a persistent banner the user can still close.
6187
+ */
6188
+ "dismissible"?: boolean;
5728
6189
  /**
5729
6190
  * Determines the duration before the toast auto-dismisses (in milliseconds). If set, the toast will auto-dismiss and show a close button. If not set (or set to 0), it will persist without a close button.
5730
6191
  */
5731
6192
  "duration"?: number;
6193
+ /**
6194
+ * Bold heading shown above the message. Banner variant only.
6195
+ */
6196
+ "heading"?: string;
6197
+ /**
6198
+ * Leading icon name (from the EBRAINS icon set). Banner variant only. Falls back to a sensible default per intent when omitted.
6199
+ */
6200
+ "icon"?: string;
5732
6201
  /**
5733
6202
  * The visual intent or style of the toast, indicating the toast type.
5734
6203
  */
5735
- "intent"?: 'default' | 'success' | 'error' | 'warning' | 'brand' | 'brandInverse';
6204
+ "intent"?: 'default' | 'success' | 'error' | 'warning' | 'info' | 'neutral' | 'brand' | 'brandInverse';
5736
6205
  /**
5737
6206
  * The main message or text to be displayed in the toast.
5738
6207
  */
5739
6208
  "message": string;
5740
6209
  "onToast"?: (event: EdsToastCustomEvent<{ visible: boolean; label: 'dismissed' | 'shown' }>) => void;
6210
+ /**
6211
+ * Visual variant: - "toast": the classic compact pill (message + close). Default; used by the global toast manager. - "banner": a richer inline banner — leading icon in a tinted square, a bold heading over a mono message, a coloured left rail on a tinted surface, an optional actions slot and an optional dismiss button. Use for persistent, in-page status (form expiry, saved draft, etc.).
6212
+ */
6213
+ "variant"?: 'toast' | 'banner';
5741
6214
  }
5742
6215
  interface EdsToastManager {
5743
6216
  }
@@ -5751,6 +6224,58 @@ declare namespace LocalJSX {
5751
6224
  "content"?: string;
5752
6225
  "position"?: 'top' | 'bottom';
5753
6226
  }
6227
+ /**
6228
+ * `EdsTrlBadge` — public EBRAINS TRL badge, aligned with the EBRAINS visual
6229
+ * system (Black `#07140D`, Green `#00FF9D`, Dark Green `#00C87B`, Grey
6230
+ * `#7A7B7A`, IBM Plex Mono) and using the **official EBRAINS sphere mark**.
6231
+ * Renders a self-contained inline `<svg>` (same markup the server-side
6232
+ * `badge.svg` endpoint emits), so it embeds anywhere and stays crisp.
6233
+ * Variants:
6234
+ * - `tone` — CI-style label + value pill (dark or light `theme`).
6235
+ * - `full` — single bar with the full string.
6236
+ * - `pill` — compact rounded "TRL 7".
6237
+ * - `outline` — thin border, transparent fill, mono caps (dark or light).
6238
+ * - `scale` — nine readiness pips showing position on the 1–9 scale.
6239
+ * The value/pip colour encodes maturity within the brand palette:
6240
+ * TRL 7–9 → green, 4–6 → dark green, 1–3 → grey.
6241
+ * @example <eds-trl-badge level={7} assessed="2026-06" methodology="v8.2"></eds-trl-badge>
6242
+ * <eds-trl-badge level={7} variant="outline" theme="light"></eds-trl-badge>
6243
+ * <eds-trl-badge level={7} variant="scale" size={32}></eds-trl-badge>
6244
+ */
6245
+ interface EdsTrlBadge {
6246
+ /**
6247
+ * Assessment month, e.g. "2026-06".
6248
+ */
6249
+ "assessed"?: string;
6250
+ /**
6251
+ * Optional link (methodology or service page).
6252
+ */
6253
+ "href"?: string;
6254
+ /**
6255
+ * Left-segment / leading label.
6256
+ */
6257
+ "label"?: string;
6258
+ /**
6259
+ * TRL level, 1–9.
6260
+ */
6261
+ "level": number;
6262
+ /**
6263
+ * Methodology version, e.g. "v8.2".
6264
+ */
6265
+ "methodology"?: string;
6266
+ /**
6267
+ * Rendered height in px. Scales the whole badge crisply (viewBox is fixed).
6268
+ */
6269
+ "size"?: number;
6270
+ /**
6271
+ * Colour theme for the `tone` / `outline` / `scale` variants.
6272
+ */
6273
+ "theme"?: 'dark' | 'light';
6274
+ /**
6275
+ * 'tone' | 'full' | 'pill' | 'outline' | 'scale'.
6276
+ */
6277
+ "variant"?: 'tone' | 'full' | 'pill' | 'outline' | 'scale';
6278
+ }
5754
6279
  /**
5755
6280
  * `EdsUser` is a user component for managing and displaying
5756
6281
  * the user's auth information. Displays a user dropdown menu when authenticated.
@@ -5863,6 +6388,7 @@ declare namespace LocalJSX {
5863
6388
  "eds-input-range": EdsInputRange;
5864
6389
  "eds-input-search": EdsInputSearch;
5865
6390
  "eds-input-select": EdsInputSelect;
6391
+ "eds-kg-learning-resources": EdsKgLearningResources;
5866
6392
  "eds-kg-web-services-select": EdsKgWebServicesSelect;
5867
6393
  "eds-link": EdsLink;
5868
6394
  "eds-logo": EdsLogo;
@@ -5873,6 +6399,7 @@ declare namespace LocalJSX {
5873
6399
  "eds-pie": EdsPie;
5874
6400
  "eds-progress-bar": EdsProgressBar;
5875
6401
  "eds-rating": EdsRating;
6402
+ "eds-search-select": EdsSearchSelect;
5876
6403
  "eds-section-core": EdsSectionCore;
5877
6404
  "eds-section-heading": EdsSectionHeading;
5878
6405
  "eds-sidebar": EdsSidebar;
@@ -5889,6 +6416,7 @@ declare namespace LocalJSX {
5889
6416
  "eds-toast": EdsToast;
5890
6417
  "eds-toast-manager": EdsToastManager;
5891
6418
  "eds-tooltip": EdsTooltip;
6419
+ "eds-trl-badge": EdsTrlBadge;
5892
6420
  "eds-user": EdsUser;
5893
6421
  "gradient-primary-palette": GradientPrimaryPalette;
5894
6422
  "gradient-secondary-palette": GradientSecondaryPalette;
@@ -6082,16 +6610,24 @@ declare module "@stencil/core" {
6082
6610
  "eds-dropdown": LocalJSX.EdsDropdown & JSXBase.HTMLAttributes<HTMLEdsDropdownElement>;
6083
6611
  "eds-feedback": LocalJSX.EdsFeedback & JSXBase.HTMLAttributes<HTMLEdsFeedbackElement>;
6084
6612
  /**
6085
- * `EdsFooter` is a footer component designed for the EBRAINS platform, featuring social links,
6086
- * legal information, and an optional cookie preferences button. It includes a "Back to top"
6087
- * button and displays an acknowledgment for Horizon Europe funding.
6088
- * Key Features:
6089
- * - Social Network Links: Optionally display a section for social media links.
6090
- * - Legal and Funding Information: Includes text for legal disclaimers and funding acknowledgments.
6091
- * - Cookie Preferences: Optionally display a "Cookies Preferences" button.
6092
- * - Back to Top Button: Smoothly scrolls the page back to the top when clicked.
6093
- * This component is ideal for maintaining consistent branding, legal disclaimers, and navigational elements
6094
- * across the EBRAINS platform, with options for social links and a "Back to top" button.
6613
+ * `EdsFooter` is the EBRAINS-wide footer component.
6614
+ * Renders a 4-column layout matching the eds-docs landing footer:
6615
+ * [ Brand (EU flag + funding text + copyright) | Resources | Community | Legal ]
6616
+ * Defaults are designed so a consumer that writes `<eds-footer></eds-footer>`
6617
+ * with no props gets the full canonical EBRAINS footer rendered same
6618
+ * brand block, same link columns, same dark theme as the eds-docs
6619
+ * landing page. The previous minimal-strip footer is replaced; consumers
6620
+ * that need different link content pass the `columns` prop (array or
6621
+ * JSON-stringified array for HTML attribute use).
6622
+ * Configurability without breakage:
6623
+ * - All previous props remain (`social`, `variant`, `fundedBy`,
6624
+ * `rightsReserved`, `enableScrollTop`, `enableCookiesSettings`,
6625
+ * `cookiesPreferences`, `backToTopAriaLabel`). Their meanings are
6626
+ * preserved.
6627
+ * - New `columns` prop is optional — omit it for the defaults.
6628
+ * - The `enableCookiesSettings` toggle now decides whether any column
6629
+ * link with `action: 'cookies'` is rendered (default false; pass
6630
+ * true to surface the Cookie Preferences entry in the Legal column).
6095
6631
  */
6096
6632
  "eds-footer": LocalJSX.EdsFooter & JSXBase.HTMLAttributes<HTMLEdsFooterElement>;
6097
6633
  /**
@@ -6157,6 +6693,7 @@ declare module "@stencil/core" {
6157
6693
  "eds-input-range": LocalJSX.EdsInputRange & JSXBase.HTMLAttributes<HTMLEdsInputRangeElement>;
6158
6694
  "eds-input-search": LocalJSX.EdsInputSearch & JSXBase.HTMLAttributes<HTMLEdsInputSearchElement>;
6159
6695
  "eds-input-select": LocalJSX.EdsInputSelect & JSXBase.HTMLAttributes<HTMLEdsInputSelectElement>;
6696
+ "eds-kg-learning-resources": LocalJSX.EdsKgLearningResources & JSXBase.HTMLAttributes<HTMLEdsKgLearningResourcesElement>;
6160
6697
  "eds-kg-web-services-select": LocalJSX.EdsKgWebServicesSelect & JSXBase.HTMLAttributes<HTMLEdsKgWebServicesSelectElement>;
6161
6698
  /**
6162
6699
  * `EdsLink` is a versatile link component offering different styles and behaviors.
@@ -6169,17 +6706,17 @@ declare module "@stencil/core" {
6169
6706
  */
6170
6707
  "eds-link": LocalJSX.EdsLink & JSXBase.HTMLAttributes<HTMLEdsLinkElement>;
6171
6708
  /**
6172
- * `EdsLogo` is a logo component designed to display a clickable logo that can link to a specified URL.
6173
- * Key Features:
6174
- * - Supports various logo styles and orientations.
6175
- * - Emits a custom `matomoEvent` for tracking click interactions.
6709
+ * `EdsLogo` renders the clickable EBRAINS brand mark (inline SVG).
6176
6710
  * Props:
6177
- * - `href` (string): The URL to navigate to when the logo is clicked (defaults to the root path `/`).
6178
- * - `orientation` (string): The orientation of the logo (`horizontal` or `vertical`).
6179
- * - `type` (string): The style of the logo (`color`, `black`, `color-white`, `white`).
6180
- * Events:
6181
- * - `matomoEvent`: Emitted when the logo is clicked, carrying metadata for analytics tracking, including the event `category`, `tag`, `name`, and `action`.
6182
- * This component is ideal for navigation and branding, with options for style customization and interaction tracking.
6711
+ * - `variant` (attribute `type`): `'positive'` (dark logo for light
6712
+ * backgrounds) or `'negative'` (light logo for dark backgrounds).
6713
+ * - `href`: where the logo links to (defaults to `/`). The logo is the
6714
+ * click-to-home affordance in eds-header, eds-fullscreen-menu and the
6715
+ * eds-form brand hero.
6716
+ * Clicks emit an analytics event (category/tag/name/action).
6717
+ * NOTE: the SVG has a viewBox but no intrinsic width, so the host needs a
6718
+ * sized block parent to render (e.g. eds-header wraps it in a fixed-width
6719
+ * container).
6183
6720
  */
6184
6721
  "eds-logo": LocalJSX.EdsLogo & JSXBase.HTMLAttributes<HTMLEdsLogoElement>;
6185
6722
  "eds-matomo-notice": LocalJSX.EdsMatomoNotice & JSXBase.HTMLAttributes<HTMLEdsMatomoNoticeElement>;
@@ -6207,6 +6744,21 @@ declare module "@stencil/core" {
6207
6744
  "eds-pie": LocalJSX.EdsPie & JSXBase.HTMLAttributes<HTMLEdsPieElement>;
6208
6745
  "eds-progress-bar": LocalJSX.EdsProgressBar & JSXBase.HTMLAttributes<HTMLEdsProgressBarElement>;
6209
6746
  "eds-rating": LocalJSX.EdsRating & JSXBase.HTMLAttributes<HTMLEdsRatingElement>;
6747
+ /**
6748
+ * Searchable, source-agnostic select for HUGE option lists (countries,
6749
+ * currencies, nationalities, …) — the generalised sibling of
6750
+ * eds-kg-web-services-select.
6751
+ * It never talks to an external API directly. It either filters an inline
6752
+ * `options` array client-side, or queries a VETTED, NAMED `source` through our
6753
+ * own datasets registry (`/api/v1/datasets/<source>/search`), which returns the
6754
+ * one normalised shape `{ items: [{label, value}], total, nextOffset }`. Any
6755
+ * messy upstream schema is flattened server-side by an adapter — the component
6756
+ * stays dumb.
6757
+ * Rendering is result-capped (we render at most `maxVisible` rows and tell the
6758
+ * user to keep typing) so a 5,000-item source never blows up the DOM. Remote
6759
+ * sources are additionally bounded by the server's page `limit`.
6760
+ */
6761
+ "eds-search-select": LocalJSX.EdsSearchSelect & JSXBase.HTMLAttributes<HTMLEdsSearchSelectElement>;
6210
6762
  "eds-section-core": LocalJSX.EdsSectionCore & JSXBase.HTMLAttributes<HTMLEdsSectionCoreElement>;
6211
6763
  "eds-section-heading": LocalJSX.EdsSectionHeading & JSXBase.HTMLAttributes<HTMLEdsSectionHeadingElement>;
6212
6764
  "eds-sidebar": LocalJSX.EdsSidebar & JSXBase.HTMLAttributes<HTMLEdsSidebarElement>;
@@ -6259,6 +6811,25 @@ declare module "@stencil/core" {
6259
6811
  * `EdsTooltip` dynamically positions a tooltip centered above the slotted element.
6260
6812
  */
6261
6813
  "eds-tooltip": LocalJSX.EdsTooltip & JSXBase.HTMLAttributes<HTMLEdsTooltipElement>;
6814
+ /**
6815
+ * `EdsTrlBadge` — public EBRAINS TRL badge, aligned with the EBRAINS visual
6816
+ * system (Black `#07140D`, Green `#00FF9D`, Dark Green `#00C87B`, Grey
6817
+ * `#7A7B7A`, IBM Plex Mono) and using the **official EBRAINS sphere mark**.
6818
+ * Renders a self-contained inline `<svg>` (same markup the server-side
6819
+ * `badge.svg` endpoint emits), so it embeds anywhere and stays crisp.
6820
+ * Variants:
6821
+ * - `tone` — CI-style label + value pill (dark or light `theme`).
6822
+ * - `full` — single bar with the full string.
6823
+ * - `pill` — compact rounded "TRL 7".
6824
+ * - `outline` — thin border, transparent fill, mono caps (dark or light).
6825
+ * - `scale` — nine readiness pips showing position on the 1–9 scale.
6826
+ * The value/pip colour encodes maturity within the brand palette:
6827
+ * TRL 7–9 → green, 4–6 → dark green, 1–3 → grey.
6828
+ * @example <eds-trl-badge level={7} assessed="2026-06" methodology="v8.2"></eds-trl-badge>
6829
+ * <eds-trl-badge level={7} variant="outline" theme="light"></eds-trl-badge>
6830
+ * <eds-trl-badge level={7} variant="scale" size={32}></eds-trl-badge>
6831
+ */
6832
+ "eds-trl-badge": LocalJSX.EdsTrlBadge & JSXBase.HTMLAttributes<HTMLEdsTrlBadgeElement>;
6262
6833
  /**
6263
6834
  * `EdsUser` is a user component for managing and displaying
6264
6835
  * the user's auth information. Displays a user dropdown menu when authenticated.