@ebrains/components 3.0.0 → 3.1.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 (371) 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} +847 -207
  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 +9 -2
  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-section-core_2.cjs.entry.js +3 -3
  24. package/dist/cjs/eds-timeline.cjs.entry.js +1 -1
  25. package/dist/cjs/eds-toast-manager.cjs.entry.js +1 -1
  26. package/dist/cjs/eds-trl-badge.cjs.entry.js +181 -0
  27. package/dist/cjs/incorrect-use-of-colors.cjs.entry.js +1 -1
  28. package/dist/cjs/index-50bc1aa4.js +10 -2
  29. package/dist/cjs/loader.cjs.js +1 -1
  30. package/dist/cjs/logo-space.cjs.entry.js +1 -1
  31. package/dist/cjs/logo-variations-horizontal_2.cjs.entry.js +2 -2
  32. package/dist/cjs/logo-variations-tabs.cjs.entry.js +1 -1
  33. package/dist/cjs/logo-wrong-usage.cjs.entry.js +1 -1
  34. package/dist/cjs/svg-repository.cjs.entry.js +1 -1
  35. package/dist/cjs/token-list_3.cjs.entry.js +3 -3
  36. package/dist/cjs/token-ratios.cjs.entry.js +1 -1
  37. package/dist/cjs/token-spacing.cjs.entry.js +1 -1
  38. package/dist/cjs/token-typography.cjs.entry.js +1 -1
  39. package/dist/collection/collection-manifest.json +4 -1
  40. package/dist/collection/components/eds-accordion/eds-accordion.css +3 -2
  41. package/dist/collection/components/eds-accordion/eds-accordion.js +1 -1
  42. package/dist/collection/components/eds-accordion/eds-accordion.stories.js +7 -19
  43. package/dist/collection/components/eds-alert/eds-alert.stories.js +19 -147
  44. package/dist/collection/components/eds-avatar/eds-avatar.js +1 -1
  45. package/dist/collection/components/eds-avatar/eds-avatar.stories.js +2 -2
  46. package/dist/collection/components/eds-block-break/eds-block-break.js +1 -1
  47. package/dist/collection/components/eds-breadcrump/eds-breadcrump.js +1 -1
  48. package/dist/collection/components/eds-button/eds-button.css +15 -0
  49. package/dist/collection/components/eds-button/eds-button.js +13 -6
  50. package/dist/collection/components/eds-cards/eds-card-composer/eds-card-desc/eds-card-desc.js +1 -1
  51. package/dist/collection/components/eds-cards/eds-card-cta/eds-card-cta.css +10 -1
  52. package/dist/collection/components/eds-cards/eds-card-cta/eds-card-cta.js +1 -1
  53. package/dist/collection/components/eds-cards/eds-card-feature/eds-card-feature.js +1 -1
  54. package/dist/collection/components/eds-cards/eds-card-generic/eds-card-generic.js +1 -1
  55. package/dist/collection/components/eds-cards/eds-card-hero/eds-card-hero.js +1 -1
  56. package/dist/collection/components/eds-cards/eds-card-stat/eds-card-stat.js +1 -1
  57. package/dist/collection/components/eds-charts/eds-gauge/eds-gauge.js +1 -1
  58. package/dist/collection/components/eds-code-block/eds-code-block.js +1 -1
  59. package/dist/collection/components/eds-dropdown/eds-dropdown.js +30 -4
  60. package/dist/collection/components/eds-feedback/eds-feedback.js +1 -1
  61. package/dist/collection/components/eds-footer/eds-footer.css +143 -203
  62. package/dist/collection/components/eds-footer/eds-footer.js +173 -76
  63. package/dist/collection/components/eds-footer/eds-footer.stories.js +108 -15
  64. package/dist/collection/components/eds-form/eds-form.css +37 -1
  65. package/dist/collection/components/eds-form/eds-form.js +45 -7
  66. package/dist/collection/components/eds-frame/eds-frame.js +1 -1
  67. package/dist/collection/components/eds-header/eds-header.js +1 -1
  68. package/dist/collection/components/eds-header/eds-header.stories.js +26 -12
  69. package/dist/collection/components/eds-icon-wrapper/eds-icon-wrapper.js +20 -1
  70. package/dist/collection/components/eds-icons/eds-icon-eu/eds-icon-eu.js +1 -1
  71. package/dist/collection/components/eds-icons/eds-icon-gitlab/eds-icon-gitlab.js +1 -1
  72. package/dist/collection/components/eds-icons/social/eds-icon-bluesky/eds-icon-bluesky.js +1 -1
  73. package/dist/collection/components/eds-icons/social/eds-icon-facebook/eds-icon-facebook.js +1 -1
  74. package/dist/collection/components/eds-icons/social/eds-icon-linkedin/eds-icon-linkedin.js +1 -1
  75. package/dist/collection/components/eds-icons/social/eds-icon-mastodon/eds-icon-mastodon.js +1 -1
  76. package/dist/collection/components/eds-icons/social/eds-icon-twitter/eds-icon-twitter.js +1 -1
  77. package/dist/collection/components/eds-icons/social/eds-icon-youtube/eds-icon-youtube.js +1 -1
  78. package/dist/collection/components/eds-img/eds-img.js +2 -2
  79. package/dist/collection/components/eds-img/eds-img.stories.js +29 -52
  80. package/dist/collection/components/eds-input-dropzone/eds-input-dropzone.js +1 -1
  81. package/dist/collection/components/eds-input-elements/eds-input/eds-input.js +20 -2
  82. package/dist/collection/components/eds-input-elements/eds-input-footer/eds-input-footer.css +29 -0
  83. package/dist/collection/components/eds-input-elements/eds-input-footer/eds-input-footer.js +2 -1
  84. package/dist/collection/components/eds-input-elements/eds-input-label/eds-input-label.js +1 -1
  85. package/dist/collection/components/eds-input-elements/eds-input-range/eds-input-range.js +1 -1
  86. package/dist/collection/components/eds-input-elements/eds-input-search/eds-input-search.js +1 -1
  87. package/dist/collection/components/eds-input-elements/eds-input-search/eds-input-search.stories.js +30 -0
  88. package/dist/collection/components/eds-input-elements/eds-input-select/eds-input-select.js +2 -2
  89. package/dist/collection/components/eds-input-field/eds-input-field.js +11 -5
  90. package/dist/collection/components/eds-input-field/eds-input-field.stories.js +82 -130
  91. package/dist/collection/components/eds-input-file/eds-input-file.js +1 -1
  92. package/dist/collection/components/eds-link/eds-link.js +1 -1
  93. package/dist/collection/components/eds-link/eds-link.stories.js +13 -8
  94. package/dist/collection/components/eds-logo/eds-logo.js +1 -1
  95. package/dist/collection/components/eds-modal/eds-modal.stories.js +9 -8
  96. package/dist/collection/components/eds-nps/eds-nps.css +32 -0
  97. package/dist/collection/components/eds-nps/eds-nps.js +3 -3
  98. package/dist/collection/components/eds-pagination/eds-pagination.js +2 -2
  99. package/dist/collection/components/eds-rating/eds-rating.css +9 -0
  100. package/dist/collection/components/eds-rating/eds-rating.js +2 -2
  101. package/dist/collection/components/eds-section/eds-section-core/eds-section-core.js +1 -1
  102. package/dist/collection/components/eds-section/eds-section-heading/eds-section-heading.js +2 -2
  103. package/dist/collection/components/eds-sidebar/eds-sidebar.js +2 -2
  104. package/dist/collection/components/eds-social-networks/eds-social-networks.js +1 -1
  105. package/dist/collection/components/eds-spinner/eds-spinner.js +1 -1
  106. package/dist/collection/components/eds-steps-v2/eds-steps-v2.js +1 -1
  107. package/dist/collection/components/eds-table/eds-table.css +21 -4
  108. package/dist/collection/components/eds-table/eds-table.js +17 -50
  109. package/dist/collection/components/eds-table/eds-table.stories.js +5 -109
  110. package/dist/collection/components/eds-tabs/eds-tabs.css +7 -1
  111. package/dist/collection/components/eds-tabs/eds-tabs.js +47 -9
  112. package/dist/collection/components/eds-tag/eds-tag.js +1 -1
  113. package/dist/collection/components/eds-timeline/eds-timeline.js +1 -1
  114. package/dist/collection/components/eds-toast-manager/eds-toast-manager.js +1 -1
  115. package/dist/collection/components/eds-tooltip/eds-tooltip.js +1 -1
  116. package/dist/collection/components/eds-tooltip/eds-tooltip.stories.js +1 -1
  117. package/dist/collection/components/eds-user/eds-user.js +1 -1
  118. package/dist/collection/eds-docs-ui/colors/color-palette/primary.js +1 -1
  119. package/dist/collection/eds-docs-ui/colors/color-palette/secondary.js +1 -1
  120. package/dist/collection/eds-docs-ui/colors/color-palette/support.js +1 -1
  121. package/dist/collection/eds-docs-ui/colors/gradient-palette/primary.js +1 -1
  122. package/dist/collection/eds-docs-ui/colors/gradient-palette/secondary.js +7 -7
  123. package/dist/collection/eds-docs-ui/colors/gradient-palette/support.js +3 -3
  124. package/dist/collection/eds-docs-ui/colors/use-of-colors/correct-use-of-colors.js +1 -1
  125. package/dist/collection/eds-docs-ui/colors/use-of-colors/incorrect-use-of-colors.js +1 -1
  126. package/dist/collection/eds-docs-ui/components-section/components-section.js +1 -1
  127. package/dist/collection/eds-docs-ui/design-tokens/docs-tokens/docs-tokens.js +1 -1
  128. package/dist/collection/eds-docs-ui/design-tokens/token-list/token-list.js +1 -1
  129. package/dist/collection/eds-docs-ui/design-tokens/token-radii/token-radii.js +1 -1
  130. package/dist/collection/eds-docs-ui/design-tokens/token-ratios/token-ratios.js +1 -1
  131. package/dist/collection/eds-docs-ui/design-tokens/token-shadows/token-shadows.js +1 -1
  132. package/dist/collection/eds-docs-ui/design-tokens/token-spacing/token-spacing.js +1 -1
  133. package/dist/collection/eds-docs-ui/design-tokens/token-typography/token-typography.js +1 -1
  134. package/dist/collection/eds-docs-ui/docs-palettes/docs-palettes.js +1 -1
  135. package/dist/collection/eds-docs-ui/logo/logo-space/logo-space.js +1 -1
  136. package/dist/collection/eds-docs-ui/logo/logo-variations/horizontal/logo-variations-horizontal.js +1 -1
  137. package/dist/collection/eds-docs-ui/logo/logo-variations/vertical/logo-variations-vertical.js +1 -1
  138. package/dist/collection/eds-docs-ui/logo/logo-variations-tabs/logo-variations.js +1 -1
  139. package/dist/collection/eds-docs-ui/logo/logo-wrong-usage/logo-wrong-usage.js +1 -1
  140. package/dist/collection/eds-docs-ui/svg-repository/svg-repository.js +1 -1
  141. package/dist/collection/shared-ui/eds-cookies-preference/eds-cookies-preference.js +1 -1
  142. package/dist/collection/shared-ui/eds-gitlab-contributors/eds-gitlab-contributors.css +19 -0
  143. package/dist/collection/shared-ui/eds-gitlab-contributors/eds-gitlab-contributors.js +8 -1
  144. package/dist/collection/shared-ui/eds-global-search/eds-global-search.css +166 -0
  145. package/dist/collection/shared-ui/eds-global-search/eds-global-search.js +62 -6
  146. package/dist/collection/shared-ui/eds-kg-learning-resources/eds-kg-learning-resources.css +205 -0
  147. package/dist/collection/shared-ui/eds-kg-learning-resources/eds-kg-learning-resources.js +257 -0
  148. package/dist/collection/shared-ui/eds-matomo-notice/eds-matomo-notice.css +23 -102
  149. package/dist/collection/shared-ui/eds-matomo-notice/eds-matomo-notice.js +7 -1
  150. package/dist/collection/shared-ui/eds-search-select/eds-search-select.css +203 -0
  151. package/dist/collection/shared-ui/eds-search-select/eds-search-select.js +685 -0
  152. package/dist/collection/shared-ui/eds-search-select/eds-search-select.stories.js +85 -0
  153. package/dist/collection/shared-ui/eds-trl-badge/ebrains-mark.js +26 -0
  154. package/dist/collection/shared-ui/eds-trl-badge/eds-trl-badge.css +22 -0
  155. package/dist/collection/shared-ui/eds-trl-badge/eds-trl-badge.js +321 -0
  156. package/dist/collection/shared-ui/eds-trl-badge/eds-trl-badge.stories.js +96 -0
  157. package/dist/collection/shared-ui/examples/eds-app-root/eds-app-root.js +1 -1
  158. package/dist/collection/utils/eds-form/formValidators.js +2 -1
  159. package/dist/collection/utils/eds-form/safeFormat.js +39 -0
  160. package/dist/components/components-section.js +1 -1
  161. package/dist/components/components.css +3 -4
  162. package/dist/components/components.esm.js +1 -1
  163. package/dist/components/correct-use-of-colors.js +1 -1
  164. package/dist/components/docs-palettes.js +1 -1
  165. package/dist/components/docs-tokens.js +1 -1
  166. package/dist/components/eds-accordion2.js +2 -2
  167. package/dist/components/eds-app-root.js +1 -1
  168. package/dist/components/eds-avatar2.js +1 -1
  169. package/dist/components/eds-block-break2.js +1 -1
  170. package/dist/components/eds-breadcrumb.js +1 -1
  171. package/dist/components/eds-button2.js +12 -5
  172. package/dist/components/eds-card-cta.js +2 -2
  173. package/dist/components/eds-card-desc2.js +1 -1
  174. package/dist/components/eds-card-feature.js +1 -1
  175. package/dist/components/eds-card-generic2.js +1 -1
  176. package/dist/components/eds-card-hero.js +1 -1
  177. package/dist/components/eds-card-stat.js +1 -1
  178. package/dist/components/eds-code-block2.js +1 -1
  179. package/dist/components/eds-cookies-preference.js +1 -1
  180. package/dist/components/eds-dropdown2.js +30 -4
  181. package/dist/components/eds-feedback.js +1 -1
  182. package/dist/components/eds-footer2.js +115 -26
  183. package/dist/components/eds-form.js +61 -23
  184. package/dist/components/eds-frame.js +1 -1
  185. package/dist/components/eds-gauge.js +1 -1
  186. package/dist/components/eds-gitlab-contributors.js +9 -2
  187. package/dist/components/eds-global-search.js +48 -69
  188. package/dist/components/eds-header.js +1 -1
  189. package/dist/components/eds-icon-bluesky.js +1 -1
  190. package/dist/components/eds-icon-eu.js +1 -1
  191. package/dist/components/eds-icon-facebook.js +1 -1
  192. package/dist/components/eds-icon-gitlab.js +1 -1
  193. package/dist/components/eds-icon-linkedin.js +1 -1
  194. package/dist/components/eds-icon-mastodon.js +1 -1
  195. package/dist/components/eds-icon-twitter.js +1 -1
  196. package/dist/components/eds-icon-wrapper2.js +5 -2
  197. package/dist/components/eds-icon-youtube.js +1 -1
  198. package/dist/components/eds-img2.js +2 -2
  199. package/dist/components/eds-input-dropzone2.js +1 -1
  200. package/dist/components/eds-input-field2.js +25 -25
  201. package/dist/components/eds-input-file2.js +1 -1
  202. package/dist/components/eds-input-footer2.js +43 -3
  203. package/dist/components/eds-input-label2.js +1 -1
  204. package/dist/components/eds-input-range2.js +1 -1
  205. package/dist/components/eds-input-search.js +100 -1
  206. package/dist/components/eds-input-select2.js +2 -2
  207. package/dist/components/eds-input2.js +4 -2
  208. package/dist/components/eds-kg-learning-resources.d.ts +11 -0
  209. package/dist/components/eds-kg-learning-resources.js +221 -0
  210. package/dist/components/eds-kg-web-services-select2.js +16 -22
  211. package/dist/components/eds-link2.js +1 -1
  212. package/dist/components/eds-logo2.js +1 -1
  213. package/dist/components/eds-matomo-notice2.js +8 -2
  214. package/dist/components/eds-nps2.js +4 -4
  215. package/dist/components/eds-pagination2.js +2 -2
  216. package/dist/components/eds-rating2.js +3 -3
  217. package/dist/components/eds-search-select.d.ts +11 -0
  218. package/dist/components/eds-search-select.js +6 -0
  219. package/dist/components/eds-search-select2.js +361 -0
  220. package/dist/components/eds-section-core2.js +1 -1
  221. package/dist/components/eds-section-heading2.js +2 -2
  222. package/dist/components/eds-sidebar.js +2 -2
  223. package/dist/components/eds-social-networks2.js +1 -1
  224. package/dist/components/eds-spinner2.js +1 -1
  225. package/dist/components/eds-steps-v2.js +1 -1
  226. package/dist/components/eds-table2.js +31 -53
  227. package/dist/components/eds-tabs.js +48 -10
  228. package/dist/components/eds-tag2.js +1 -1
  229. package/dist/components/eds-timeline.js +1 -1
  230. package/dist/components/eds-toast-manager.js +1 -1
  231. package/dist/components/eds-tooltip2.js +1 -1
  232. package/dist/components/eds-trl-badge.d.ts +11 -0
  233. package/dist/components/eds-trl-badge.js +204 -0
  234. package/dist/components/eds-user.js +1 -1
  235. package/dist/components/incorrect-use-of-colors.js +1 -1
  236. package/dist/components/logo-space.js +19 -25
  237. package/dist/components/logo-variations-horizontal2.js +1 -1
  238. package/dist/components/logo-variations-tabs.js +1 -1
  239. package/dist/components/logo-variations-vertical2.js +1 -1
  240. package/dist/components/logo-wrong-usage.js +1 -1
  241. package/dist/components/p-00ba405d.entry.js +1 -0
  242. package/dist/components/p-03342030.entry.js +1 -0
  243. package/dist/components/{p-0fe10e6c.entry.js → p-0e2bac0f.entry.js} +1 -1
  244. package/dist/components/{p-7aa4edef.entry.js → p-12acc48d.entry.js} +1 -1
  245. package/dist/components/p-18399fe1.entry.js +1 -0
  246. package/dist/components/p-1e6f0572.entry.js +1 -0
  247. package/dist/components/{p-c46675c8.entry.js → p-1fbcc480.entry.js} +1 -1
  248. package/dist/components/{p-dfe93385.entry.js → p-25729ade.entry.js} +1 -1
  249. package/dist/components/p-27e093c3.entry.js +1 -0
  250. package/dist/components/{p-a6dc1f88.entry.js → p-37ef07d9.entry.js} +1 -1
  251. package/dist/components/{p-74b9c9a8.entry.js → p-3d1bb2fe.entry.js} +1 -1
  252. package/dist/components/{p-940a2d42.entry.js → p-42791331.entry.js} +1 -1
  253. package/dist/components/p-5ff4b1d0.entry.js +1 -0
  254. package/dist/components/{p-d16b5363.entry.js → p-62580004.entry.js} +1 -1
  255. package/dist/components/{p-d2576747.entry.js → p-62f53e7a.entry.js} +1 -1
  256. package/dist/components/p-6be1730a.entry.js +1 -0
  257. package/dist/components/p-786ff09b.entry.js +1 -0
  258. package/dist/components/p-80a32e20.entry.js +1 -0
  259. package/dist/components/p-85476a6f.entry.js +9 -0
  260. package/dist/components/{p-a63e14bb.entry.js → p-8a483358.entry.js} +1 -1
  261. package/dist/components/{p-04e9c2d7.entry.js → p-b1a10842.entry.js} +1 -1
  262. package/dist/components/p-bdcb71e1.entry.js +1 -0
  263. package/dist/components/p-c2127276.entry.js +1 -0
  264. package/dist/components/p-c3ee9163.entry.js +1 -0
  265. package/dist/components/{p-f55dd314.entry.js → p-c4cfbf98.entry.js} +1 -1
  266. package/dist/components/p-c65082fe.entry.js +1 -0
  267. package/dist/components/p-cc096938.entry.js +1 -0
  268. package/dist/components/p-d59d6fda.entry.js +1 -0
  269. package/dist/components/p-e027bc90.entry.js +1 -0
  270. package/dist/components/{p-f364296f.entry.js → p-e339d0b5.entry.js} +1 -1
  271. package/dist/components/{p-0d7aee0b.entry.js → p-e4df206e.entry.js} +1 -1
  272. package/dist/components/{p-c2fc62f7.entry.js → p-e71a4f29.entry.js} +1 -1
  273. package/dist/components/{p-773bd015.entry.js → p-e9e6ec19.entry.js} +1 -1
  274. package/dist/components/p-f4d2f882.entry.js +1 -0
  275. package/dist/components/{p-d1b3aa52.entry.js → p-f9a9fa34.entry.js} +1 -1
  276. package/dist/components/primary.js +1 -1
  277. package/dist/components/primary2.js +1 -1
  278. package/dist/components/secondary.js +1 -1
  279. package/dist/components/secondary2.js +7 -7
  280. package/dist/components/support.js +1 -1
  281. package/dist/components/support2.js +3 -3
  282. package/dist/components/svg-repository.js +19 -25
  283. package/dist/components/token-list2.js +1 -1
  284. package/dist/components/token-radii2.js +1 -1
  285. package/dist/components/token-ratios.js +1 -1
  286. package/dist/components/token-shadows2.js +1 -1
  287. package/dist/components/token-spacing.js +1 -1
  288. package/dist/components/token-typography.js +1 -1
  289. package/dist/esm/color-primary-palette_6.entry.js +14 -14
  290. package/dist/esm/components-section.entry.js +1 -1
  291. package/dist/esm/components.js +1 -1
  292. package/dist/esm/correct-use-of-colors.entry.js +1 -1
  293. package/dist/esm/docs-palettes.entry.js +1 -1
  294. package/dist/esm/docs-tokens.entry.js +1 -1
  295. package/dist/esm/{eds-accordion_52.entry.js → eds-accordion_53.entry.js} +846 -207
  296. package/dist/esm/eds-app-root.entry.js +1 -1
  297. package/dist/esm/eds-cookies-preference.entry.js +1 -1
  298. package/dist/esm/eds-feedback.entry.js +1 -1
  299. package/dist/esm/eds-frame.entry.js +1 -1
  300. package/dist/esm/eds-gauge.entry.js +1 -1
  301. package/dist/esm/eds-gitlab-contributors.entry.js +9 -2
  302. package/dist/esm/eds-icon-bluesky.entry.js +1 -1
  303. package/dist/esm/eds-icon-eu.entry.js +1 -1
  304. package/dist/esm/eds-icon-facebook.entry.js +1 -1
  305. package/dist/esm/eds-icon-gitlab.entry.js +1 -1
  306. package/dist/esm/eds-icon-linkedin.entry.js +1 -1
  307. package/dist/esm/eds-icon-mastodon.entry.js +1 -1
  308. package/dist/esm/eds-icon-twitter.entry.js +1 -1
  309. package/dist/esm/eds-icon-youtube.entry.js +1 -1
  310. package/dist/{components/eds-input-search2.js → esm/eds-input-search.entry.js} +9 -39
  311. package/dist/esm/eds-section-core_2.entry.js +3 -3
  312. package/dist/esm/eds-timeline.entry.js +1 -1
  313. package/dist/esm/eds-toast-manager.entry.js +1 -1
  314. package/dist/esm/eds-trl-badge.entry.js +177 -0
  315. package/dist/esm/incorrect-use-of-colors.entry.js +1 -1
  316. package/dist/esm/index-870ab08f.js +10 -2
  317. package/dist/esm/loader.js +1 -1
  318. package/dist/esm/logo-space.entry.js +1 -1
  319. package/dist/esm/logo-variations-horizontal_2.entry.js +2 -2
  320. package/dist/esm/logo-variations-tabs.entry.js +1 -1
  321. package/dist/esm/logo-wrong-usage.entry.js +1 -1
  322. package/dist/esm/svg-repository.entry.js +1 -1
  323. package/dist/esm/token-list_3.entry.js +3 -3
  324. package/dist/esm/token-ratios.entry.js +1 -1
  325. package/dist/esm/token-spacing.entry.js +1 -1
  326. package/dist/esm/token-typography.entry.js +1 -1
  327. package/dist/hydrate/index.js +1222 -207
  328. package/dist/hydrate/index.mjs +1222 -207
  329. package/dist/types/components/eds-accordion/eds-accordion.stories.d.ts +4 -8
  330. package/dist/types/components/eds-alert/eds-alert.stories.d.ts +7 -73
  331. package/dist/types/components/eds-button/eds-button.d.ts +1 -1
  332. package/dist/types/components/eds-dropdown/eds-dropdown.d.ts +1 -0
  333. package/dist/types/components/eds-footer/eds-footer.d.ts +84 -55
  334. package/dist/types/components/eds-footer/eds-footer.stories.d.ts +62 -1
  335. package/dist/types/components/eds-form/eds-form.d.ts +10 -0
  336. package/dist/types/components/eds-header/eds-header.stories.d.ts +6 -6
  337. package/dist/types/components/eds-icon-wrapper/eds-icon-wrapper.d.ts +8 -0
  338. package/dist/types/components/eds-img/eds-img.stories.d.ts +6 -20
  339. package/dist/types/components/eds-input-elements/eds-input/eds-input.d.ts +7 -0
  340. package/dist/types/components/eds-input-elements/eds-input-search/eds-input-search.stories.d.ts +36 -0
  341. package/dist/types/components/eds-input-field/eds-input-field.stories.d.ts +97 -38
  342. package/dist/types/components/eds-link/eds-link.stories.d.ts +9 -6
  343. package/dist/types/components/eds-table/eds-table.d.ts +8 -14
  344. package/dist/types/components/eds-table/eds-table.stories.d.ts +0 -107
  345. package/dist/types/components/eds-tabs/eds-tabs.d.ts +10 -0
  346. package/dist/types/components.d.ts +507 -86
  347. package/dist/types/shared-ui/eds-global-search/eds-global-search.d.ts +12 -0
  348. package/dist/types/shared-ui/eds-kg-learning-resources/eds-kg-learning-resources.d.ts +60 -0
  349. package/dist/types/shared-ui/eds-search-select/eds-search-select.d.ts +98 -0
  350. package/dist/types/shared-ui/eds-search-select/eds-search-select.stories.d.ts +81 -0
  351. package/dist/types/shared-ui/eds-trl-badge/ebrains-mark.d.ts +7 -0
  352. package/dist/types/shared-ui/eds-trl-badge/eds-trl-badge.d.ts +54 -0
  353. package/dist/types/shared-ui/eds-trl-badge/eds-trl-badge.stories.d.ts +112 -0
  354. package/dist/types/utils/eds-form/safeFormat.d.ts +21 -0
  355. package/package.json +1 -1
  356. package/dist/components/p-18e852e1.entry.js +0 -1
  357. package/dist/components/p-3ccd6948.entry.js +0 -1
  358. package/dist/components/p-3d3841d6.entry.js +0 -1
  359. package/dist/components/p-3f38df99.entry.js +0 -1
  360. package/dist/components/p-527e71d0.entry.js +0 -1
  361. package/dist/components/p-55047f7f.entry.js +0 -9
  362. package/dist/components/p-64c23098.entry.js +0 -1
  363. package/dist/components/p-7b93a385.entry.js +0 -1
  364. package/dist/components/p-878f65a6.entry.js +0 -1
  365. package/dist/components/p-92f6d9c0.entry.js +0 -1
  366. package/dist/components/p-9eedf771.entry.js +0 -1
  367. package/dist/components/p-b4355cec.entry.js +0 -1
  368. package/dist/components/p-d2f17fac.entry.js +0 -1
  369. package/dist/components/p-db5eea95.entry.js +0 -1
  370. package/dist/components/p-e205c269.entry.js +0 -1
  371. 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,7 @@ 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' | 'secondary' | 'secondaryInverse' | 'ghost' | 'ghostInverse' | 'brand' | 'brandLight' | 'brandInverse' | 'neutral' | 'cta' | 'cta-brand';
245
247
  /**
246
248
  * The label text to be displayed inside the button.
247
249
  */
@@ -648,56 +650,60 @@ export namespace Components {
648
650
  "type": 'star' | 'thumbs-up' | 'thumbs-down';
649
651
  }
650
652
  /**
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.
653
+ * `EdsFooter` is the EBRAINS-wide footer component.
654
+ * Renders a 4-column layout matching the eds-docs landing footer:
655
+ * [ Brand (EU flag + funding text + copyright) | Resources | Community | Legal ]
656
+ * Defaults are designed so a consumer that writes `<eds-footer></eds-footer>`
657
+ * with no props gets the full canonical EBRAINS footer rendered same
658
+ * brand block, same link columns, same dark theme as the eds-docs
659
+ * landing page. The previous minimal-strip footer is replaced; consumers
660
+ * that need different link content pass the `columns` prop (array or
661
+ * JSON-stringified array for HTML attribute use).
662
+ * Configurability without breakage:
663
+ * - All previous props remain (`social`, `variant`, `fundedBy`,
664
+ * `rightsReserved`, `enableScrollTop`, `enableCookiesSettings`,
665
+ * `cookiesPreferences`, `backToTopAriaLabel`). Their meanings are
666
+ * preserved.
667
+ * - New `columns` prop is optional — omit it for the defaults.
668
+ * - The `enableCookiesSettings` toggle now decides whether any column
669
+ * link with `action: 'cookies'` is rendered (default false; pass
670
+ * true to surface the Cookie Preferences entry in the Legal column).
661
671
  */
662
672
  interface EdsFooter {
663
673
  /**
664
- * Controls the display of the "Back to Top" aria label text.
665
- * @type {string}
674
+ * ARIA label for the "Back to top" floating button.
666
675
  */
667
676
  "backToTopAriaLabel": string;
668
677
  /**
669
- * Controls the display of the "Cookies preferences" text.
670
- * @type {string}
678
+ * 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.
679
+ */
680
+ "columns"?: EdsFooterColumn[] | string;
681
+ /**
682
+ * Label used for any link with `action: 'cookies'` — overrides the column's `label`.
671
683
  */
672
684
  "cookiesPreferences": string;
673
685
  /**
674
- * Controls the display of the "Cookies preferences" link.
675
- * @type {string}
686
+ * 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
687
  */
677
688
  "enableCookiesSettings": boolean;
678
689
  /**
679
- * Controls the display of the "Back to Top" button. When true, the button appears in the footer.
680
- * @type {boolean}
690
+ * Float a "Back to top" button at the top-right of the footer.
681
691
  */
682
692
  "enableScrollTop": boolean;
683
693
  /**
684
- * Controls the display of the "Founded By" text.
685
- * @type {string}
694
+ * "EBRAINS is funded by…" line shown next to the EU flag in the brand column.
686
695
  */
687
696
  "fundedBy": string;
688
697
  /**
689
- * Controls the display of the "Rights Reserved" text.
690
- * @type {string}
698
+ * {year} EBRAINS. All rights reserved." line shown below the funding text.
691
699
  */
692
700
  "rightsReserved": string;
693
701
  /**
694
- * Determines if the social network section should be displayed. Adds top padding when true.
695
- * @type {boolean}
702
+ * Show the eds-social-networks section above the main grid.
696
703
  */
697
704
  "social": boolean;
698
705
  /**
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'}
706
+ * 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
707
  */
702
708
  "variant": 'default' | 'inverse';
703
709
  }
@@ -922,6 +928,10 @@ export namespace Components {
922
928
  * Placeholder text for the input
923
929
  */
924
930
  "placeholder": string;
931
+ /**
932
+ * 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)
933
+ */
934
+ "variant": 'gray' | 'white' | 'black';
925
935
  }
926
936
  /**
927
937
  * `EdsHeader` is a header component designed for the EBRAINS platform.
@@ -995,6 +1005,10 @@ export namespace Components {
995
1005
  "class": string;
996
1006
  }
997
1007
  interface EdsIconWrapper {
1008
+ /**
1009
+ * 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.
1010
+ */
1011
+ "label"?: string;
998
1012
  "name": IconName;
999
1013
  "size": 16 | 20 | 24 | 32;
1000
1014
  }
@@ -1066,6 +1080,10 @@ export namespace Components {
1066
1080
  "hasMessage": boolean;
1067
1081
  "icon"?: IconName;
1068
1082
  "inputId"?: string;
1083
+ /**
1084
+ * 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.
1085
+ */
1086
+ "inputTabIndex"?: number;
1069
1087
  "max"?: number;
1070
1088
  "maxLength"?: number;
1071
1089
  "min"?: number;
@@ -1394,6 +1412,28 @@ export namespace Components {
1394
1412
  */
1395
1413
  "value"?: string | number;
1396
1414
  }
1415
+ interface EdsKgLearningResources {
1416
+ /**
1417
+ * API endpoint for fetching learning resources
1418
+ */
1419
+ "apiEndpoint": string;
1420
+ /**
1421
+ * Component heading
1422
+ */
1423
+ "heading": string;
1424
+ /**
1425
+ * Whether to resolve software names
1426
+ */
1427
+ "resolveNames": boolean;
1428
+ /**
1429
+ * Max resources to fetch
1430
+ */
1431
+ "size": number;
1432
+ /**
1433
+ * Visual variant for accordions and cards
1434
+ */
1435
+ "variant": 'default' | 'inverse';
1436
+ }
1397
1437
  interface EdsKgWebServicesSelect {
1398
1438
  /**
1399
1439
  * API endpoint for fetching web services Defaults to cached endpoint for better performance
@@ -1741,6 +1781,67 @@ export namespace Components {
1741
1781
  */
1742
1782
  "selectedRating": number;
1743
1783
  }
1784
+ /**
1785
+ * Searchable, source-agnostic select for HUGE option lists (countries,
1786
+ * currencies, nationalities, …) — the generalised sibling of
1787
+ * eds-kg-web-services-select.
1788
+ * It never talks to an external API directly. It either filters an inline
1789
+ * `options` array client-side, or queries a VETTED, NAMED `source` through our
1790
+ * own datasets registry (`/api/v1/datasets/<source>/search`), which returns the
1791
+ * one normalised shape `{ items: [{label, value}], total, nextOffset }`. Any
1792
+ * messy upstream schema is flattened server-side by an adapter — the component
1793
+ * stays dumb.
1794
+ * Rendering is result-capped (we render at most `maxVisible` rows and tell the
1795
+ * user to keep typing) so a 5,000-item source never blows up the DOM. Remote
1796
+ * sources are additionally bounded by the server's page `limit`.
1797
+ */
1798
+ interface EdsSearchSelect {
1799
+ /**
1800
+ * Base path for the datasets API.
1801
+ */
1802
+ "apiBase": string;
1803
+ /**
1804
+ * Debounce (ms) before a remote search fires.
1805
+ */
1806
+ "debounceMs": number;
1807
+ "disabled": boolean;
1808
+ "error": boolean;
1809
+ "errorMessage"?: string;
1810
+ "hint"?: string;
1811
+ "label"?: string;
1812
+ /**
1813
+ * Server page size for remote sources.
1814
+ */
1815
+ "limit": number;
1816
+ /**
1817
+ * Max rows rendered at once (DOM cap).
1818
+ */
1819
+ "maxVisible": number;
1820
+ "message"?: string;
1821
+ /**
1822
+ * Allow selecting multiple values — selections render as removable tags.
1823
+ */
1824
+ "multiple": boolean;
1825
+ "name": string;
1826
+ /**
1827
+ * Inline options: an array or a JSON string of [{label, value}].
1828
+ */
1829
+ "options"?: Option[] | string;
1830
+ "placeholder": string;
1831
+ "required": boolean;
1832
+ /**
1833
+ * Query param name the search term is sent as.
1834
+ */
1835
+ "searchParam": string;
1836
+ /**
1837
+ * A vetted registry source key, e.g. "countries" / "currencies".
1838
+ */
1839
+ "source"?: string;
1840
+ /**
1841
+ * Selected value. A single value string in single-select mode, or an array of values in multi-select mode. v-model friendly.
1842
+ */
1843
+ "value"?: string | string[];
1844
+ }
1744
1845
  interface EdsSectionCore {
1745
1846
  /**
1746
1847
  * The heading level for the section title, such as 'h1', 'h2', etc. Default is 'h2'.
@@ -1975,10 +2076,6 @@ export namespace Components {
1975
2076
  * 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
2077
  */
1977
2078
  "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
2079
  /**
1983
2080
  * Config object to hide or format columns
1984
2081
  */
@@ -2015,9 +2112,9 @@ export namespace Components {
2015
2112
  */
2016
2113
  "sortingEnabled": boolean;
2017
2114
  /**
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
2115
+ * 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
2116
  */
2020
- "theme": 'default' | 'color' | 'brand';
2117
+ "theme": 'brand';
2021
2118
  /**
2022
2119
  * View mode for displaying data: - 'table': Traditional table layout (default) - 'card': Card grid layout
2023
2120
  */
@@ -2102,6 +2199,58 @@ export namespace Components {
2102
2199
  "content"?: string;
2103
2200
  "position": 'top' | 'bottom';
2104
2201
  }
2202
+ /**
2203
+ * `EdsTrlBadge` — public EBRAINS TRL badge, aligned with the EBRAINS visual
2204
+ * system (Black `#07140D`, Green `#00FF9D`, Dark Green `#00C87B`, Grey
2205
+ * `#7A7B7A`, IBM Plex Mono) and using the **official EBRAINS sphere mark**.
2206
+ * Renders a self-contained inline `<svg>` (same markup the server-side
2207
+ * `badge.svg` endpoint emits), so it embeds anywhere and stays crisp.
2208
+ * Variants:
2209
+ * - `tone` — CI-style label + value pill (dark or light `theme`).
2210
+ * - `full` — single bar with the full string.
2211
+ * - `pill` — compact rounded "TRL 7".
2212
+ * - `outline` — thin border, transparent fill, mono caps (dark or light).
2213
+ * - `scale` — nine readiness pips showing position on the 1–9 scale.
2214
+ * The value/pip colour encodes maturity within the brand palette:
2215
+ * TRL 7–9 → green, 4–6 → dark green, 1–3 → grey.
2216
+ * @example <eds-trl-badge level={7} assessed="2026-06" methodology="v8.2"></eds-trl-badge>
2217
+ * <eds-trl-badge level={7} variant="outline" theme="light"></eds-trl-badge>
2218
+ * <eds-trl-badge level={7} variant="scale" size={32}></eds-trl-badge>
2219
+ */
2220
+ interface EdsTrlBadge {
2221
+ /**
2222
+ * Assessment month, e.g. "2026-06".
2223
+ */
2224
+ "assessed"?: string;
2225
+ /**
2226
+ * Optional link (methodology or service page).
2227
+ */
2228
+ "href"?: string;
2229
+ /**
2230
+ * Left-segment / leading label.
2231
+ */
2232
+ "label": string;
2233
+ /**
2234
+ * TRL level, 1–9.
2235
+ */
2236
+ "level": number;
2237
+ /**
2238
+ * Methodology version, e.g. "v8.2".
2239
+ */
2240
+ "methodology"?: string;
2241
+ /**
2242
+ * Rendered height in px. Scales the whole badge crisply (viewBox is fixed).
2243
+ */
2244
+ "size"?: number;
2245
+ /**
2246
+ * Colour theme for the `tone` / `outline` / `scale` variants.
2247
+ */
2248
+ "theme": 'dark' | 'light';
2249
+ /**
2250
+ * 'tone' | 'full' | 'pill' | 'outline' | 'scale'.
2251
+ */
2252
+ "variant": 'tone' | 'full' | 'pill' | 'outline' | 'scale';
2253
+ }
2105
2254
  /**
2106
2255
  * `EdsUser` is a user component for managing and displaying
2107
2256
  * the user's auth information. Displays a user dropdown menu when authenticated.
@@ -2238,6 +2387,10 @@ export interface EdsRatingCustomEvent<T> extends CustomEvent<T> {
2238
2387
  detail: T;
2239
2388
  target: HTMLEdsRatingElement;
2240
2389
  }
2390
+ export interface EdsSearchSelectCustomEvent<T> extends CustomEvent<T> {
2391
+ detail: T;
2392
+ target: HTMLEdsSearchSelectElement;
2393
+ }
2241
2394
  export interface EdsSidebarCustomEvent<T> extends CustomEvent<T> {
2242
2395
  detail: T;
2243
2396
  target: HTMLEdsSidebarElement;
@@ -2619,16 +2772,24 @@ declare global {
2619
2772
  "cookies": any;
2620
2773
  }
2621
2774
  /**
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.
2775
+ * `EdsFooter` is the EBRAINS-wide footer component.
2776
+ * Renders a 4-column layout matching the eds-docs landing footer:
2777
+ * [ Brand (EU flag + funding text + copyright) | Resources | Community | Legal ]
2778
+ * Defaults are designed so a consumer that writes `<eds-footer></eds-footer>`
2779
+ * with no props gets the full canonical EBRAINS footer rendered same
2780
+ * brand block, same link columns, same dark theme as the eds-docs
2781
+ * landing page. The previous minimal-strip footer is replaced; consumers
2782
+ * that need different link content pass the `columns` prop (array or
2783
+ * JSON-stringified array for HTML attribute use).
2784
+ * Configurability without breakage:
2785
+ * - All previous props remain (`social`, `variant`, `fundedBy`,
2786
+ * `rightsReserved`, `enableScrollTop`, `enableCookiesSettings`,
2787
+ * `cookiesPreferences`, `backToTopAriaLabel`). Their meanings are
2788
+ * preserved.
2789
+ * - New `columns` prop is optional — omit it for the defaults.
2790
+ * - The `enableCookiesSettings` toggle now decides whether any column
2791
+ * link with `action: 'cookies'` is rendered (default false; pass
2792
+ * true to surface the Cookie Preferences entry in the Legal column).
2632
2793
  */
2633
2794
  interface HTMLEdsFooterElement extends Components.EdsFooter, HTMLStencilElement {
2634
2795
  addEventListener<K extends keyof HTMLEdsFooterElementEventMap>(type: K, listener: (this: HTMLEdsFooterElement, ev: EdsFooterCustomEvent<HTMLEdsFooterElementEventMap[K]>) => any, options?: boolean | AddEventListenerOptions): void;
@@ -2969,6 +3130,12 @@ declare global {
2969
3130
  prototype: HTMLEdsInputSelectElement;
2970
3131
  new (): HTMLEdsInputSelectElement;
2971
3132
  };
3133
+ interface HTMLEdsKgLearningResourcesElement extends Components.EdsKgLearningResources, HTMLStencilElement {
3134
+ }
3135
+ var HTMLEdsKgLearningResourcesElement: {
3136
+ prototype: HTMLEdsKgLearningResourcesElement;
3137
+ new (): HTMLEdsKgLearningResourcesElement;
3138
+ };
2972
3139
  interface HTMLEdsKgWebServicesSelectElementEventMap {
2973
3140
  "edsinput": { value: string | boolean | string[] };
2974
3141
  "edschange": { value: string | boolean | string[] };
@@ -3114,6 +3281,38 @@ declare global {
3114
3281
  prototype: HTMLEdsRatingElement;
3115
3282
  new (): HTMLEdsRatingElement;
3116
3283
  };
3284
+ interface HTMLEdsSearchSelectElementEventMap {
3285
+ "edsinput": { value: string | boolean | string[] };
3286
+ "edschange": { value: string | boolean | string[] };
3287
+ }
3288
+ /**
3289
+ * Searchable, source-agnostic select for HUGE option lists (countries,
3290
+ * currencies, nationalities, …) — the generalised sibling of
3291
+ * eds-kg-web-services-select.
3292
+ * It never talks to an external API directly. It either filters an inline
3293
+ * `options` array client-side, or queries a VETTED, NAMED `source` through our
3294
+ * own datasets registry (`/api/v1/datasets/<source>/search`), which returns the
3295
+ * one normalised shape `{ items: [{label, value}], total, nextOffset }`. Any
3296
+ * messy upstream schema is flattened server-side by an adapter — the component
3297
+ * stays dumb.
3298
+ * Rendering is result-capped (we render at most `maxVisible` rows and tell the
3299
+ * user to keep typing) so a 5,000-item source never blows up the DOM. Remote
3300
+ * sources are additionally bounded by the server's page `limit`.
3301
+ */
3302
+ interface HTMLEdsSearchSelectElement extends Components.EdsSearchSelect, HTMLStencilElement {
3303
+ addEventListener<K extends keyof HTMLEdsSearchSelectElementEventMap>(type: K, listener: (this: HTMLEdsSearchSelectElement, ev: EdsSearchSelectCustomEvent<HTMLEdsSearchSelectElementEventMap[K]>) => any, options?: boolean | AddEventListenerOptions): void;
3304
+ addEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
3305
+ addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
3306
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
3307
+ removeEventListener<K extends keyof HTMLEdsSearchSelectElementEventMap>(type: K, listener: (this: HTMLEdsSearchSelectElement, ev: EdsSearchSelectCustomEvent<HTMLEdsSearchSelectElementEventMap[K]>) => any, options?: boolean | EventListenerOptions): void;
3308
+ removeEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
3309
+ removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
3310
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
3311
+ }
3312
+ var HTMLEdsSearchSelectElement: {
3313
+ prototype: HTMLEdsSearchSelectElement;
3314
+ new (): HTMLEdsSearchSelectElement;
3315
+ };
3117
3316
  interface HTMLEdsSectionCoreElement extends Components.EdsSectionCore, HTMLStencilElement {
3118
3317
  }
3119
3318
  var HTMLEdsSectionCoreElement: {
@@ -3345,6 +3544,30 @@ declare global {
3345
3544
  prototype: HTMLEdsTooltipElement;
3346
3545
  new (): HTMLEdsTooltipElement;
3347
3546
  };
3547
+ /**
3548
+ * `EdsTrlBadge` — public EBRAINS TRL badge, aligned with the EBRAINS visual
3549
+ * system (Black `#07140D`, Green `#00FF9D`, Dark Green `#00C87B`, Grey
3550
+ * `#7A7B7A`, IBM Plex Mono) and using the **official EBRAINS sphere mark**.
3551
+ * Renders a self-contained inline `<svg>` (same markup the server-side
3552
+ * `badge.svg` endpoint emits), so it embeds anywhere and stays crisp.
3553
+ * Variants:
3554
+ * - `tone` — CI-style label + value pill (dark or light `theme`).
3555
+ * - `full` — single bar with the full string.
3556
+ * - `pill` — compact rounded "TRL 7".
3557
+ * - `outline` — thin border, transparent fill, mono caps (dark or light).
3558
+ * - `scale` — nine readiness pips showing position on the 1–9 scale.
3559
+ * The value/pip colour encodes maturity within the brand palette:
3560
+ * TRL 7–9 → green, 4–6 → dark green, 1–3 → grey.
3561
+ * @example <eds-trl-badge level={7} assessed="2026-06" methodology="v8.2"></eds-trl-badge>
3562
+ * <eds-trl-badge level={7} variant="outline" theme="light"></eds-trl-badge>
3563
+ * <eds-trl-badge level={7} variant="scale" size={32}></eds-trl-badge>
3564
+ */
3565
+ interface HTMLEdsTrlBadgeElement extends Components.EdsTrlBadge, HTMLStencilElement {
3566
+ }
3567
+ var HTMLEdsTrlBadgeElement: {
3568
+ prototype: HTMLEdsTrlBadgeElement;
3569
+ new (): HTMLEdsTrlBadgeElement;
3570
+ };
3348
3571
  /**
3349
3572
  * `EdsUser` is a user component for managing and displaying
3350
3573
  * the user's auth information. Displays a user dropdown menu when authenticated.
@@ -3506,6 +3729,7 @@ declare global {
3506
3729
  "eds-input-range": HTMLEdsInputRangeElement;
3507
3730
  "eds-input-search": HTMLEdsInputSearchElement;
3508
3731
  "eds-input-select": HTMLEdsInputSelectElement;
3732
+ "eds-kg-learning-resources": HTMLEdsKgLearningResourcesElement;
3509
3733
  "eds-kg-web-services-select": HTMLEdsKgWebServicesSelectElement;
3510
3734
  "eds-link": HTMLEdsLinkElement;
3511
3735
  "eds-logo": HTMLEdsLogoElement;
@@ -3516,6 +3740,7 @@ declare global {
3516
3740
  "eds-pie": HTMLEdsPieElement;
3517
3741
  "eds-progress-bar": HTMLEdsProgressBarElement;
3518
3742
  "eds-rating": HTMLEdsRatingElement;
3743
+ "eds-search-select": HTMLEdsSearchSelectElement;
3519
3744
  "eds-section-core": HTMLEdsSectionCoreElement;
3520
3745
  "eds-section-heading": HTMLEdsSectionHeadingElement;
3521
3746
  "eds-sidebar": HTMLEdsSidebarElement;
@@ -3532,6 +3757,7 @@ declare global {
3532
3757
  "eds-toast": HTMLEdsToastElement;
3533
3758
  "eds-toast-manager": HTMLEdsToastManagerElement;
3534
3759
  "eds-tooltip": HTMLEdsTooltipElement;
3760
+ "eds-trl-badge": HTMLEdsTrlBadgeElement;
3535
3761
  "eds-user": HTMLEdsUserElement;
3536
3762
  "gradient-primary-palette": HTMLGradientPrimaryPaletteElement;
3537
3763
  "gradient-secondary-palette": HTMLGradientSecondaryPaletteElement;
@@ -3779,7 +4005,7 @@ declare namespace LocalJSX {
3779
4005
  /**
3780
4006
  * 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
4007
  */
3782
- "intent"?: 'primary' | 'secondary' | 'secondaryInverse' | 'ghost' | 'ghostInverse' | 'brand' | 'brandInverse' | 'neutral' | 'cta' | 'cta-brand';
4008
+ "intent"?: 'primary' | 'secondary' | 'secondaryInverse' | 'ghost' | 'ghostInverse' | 'brand' | 'brandLight' | 'brandInverse' | 'neutral' | 'cta' | 'cta-brand';
3783
4009
  /**
3784
4010
  * The label text to be displayed inside the button.
3785
4011
  */
@@ -4193,57 +4419,61 @@ declare namespace LocalJSX {
4193
4419
  "type"?: 'star' | 'thumbs-up' | 'thumbs-down';
4194
4420
  }
4195
4421
  /**
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.
4422
+ * `EdsFooter` is the EBRAINS-wide footer component.
4423
+ * Renders a 4-column layout matching the eds-docs landing footer:
4424
+ * [ Brand (EU flag + funding text + copyright) | Resources | Community | Legal ]
4425
+ * Defaults are designed so a consumer that writes `<eds-footer></eds-footer>`
4426
+ * with no props gets the full canonical EBRAINS footer rendered same
4427
+ * brand block, same link columns, same dark theme as the eds-docs
4428
+ * landing page. The previous minimal-strip footer is replaced; consumers
4429
+ * that need different link content pass the `columns` prop (array or
4430
+ * JSON-stringified array for HTML attribute use).
4431
+ * Configurability without breakage:
4432
+ * - All previous props remain (`social`, `variant`, `fundedBy`,
4433
+ * `rightsReserved`, `enableScrollTop`, `enableCookiesSettings`,
4434
+ * `cookiesPreferences`, `backToTopAriaLabel`). Their meanings are
4435
+ * preserved.
4436
+ * - New `columns` prop is optional — omit it for the defaults.
4437
+ * - The `enableCookiesSettings` toggle now decides whether any column
4438
+ * link with `action: 'cookies'` is rendered (default false; pass
4439
+ * true to surface the Cookie Preferences entry in the Legal column).
4206
4440
  */
4207
4441
  interface EdsFooter {
4208
4442
  /**
4209
- * Controls the display of the "Back to Top" aria label text.
4210
- * @type {string}
4443
+ * ARIA label for the "Back to top" floating button.
4211
4444
  */
4212
4445
  "backToTopAriaLabel"?: string;
4213
4446
  /**
4214
- * Controls the display of the "Cookies preferences" text.
4215
- * @type {string}
4447
+ * 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.
4448
+ */
4449
+ "columns"?: EdsFooterColumn[] | string;
4450
+ /**
4451
+ * Label used for any link with `action: 'cookies'` — overrides the column's `label`.
4216
4452
  */
4217
4453
  "cookiesPreferences"?: string;
4218
4454
  /**
4219
- * Controls the display of the "Cookies preferences" link.
4220
- * @type {string}
4455
+ * 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
4456
  */
4222
4457
  "enableCookiesSettings"?: boolean;
4223
4458
  /**
4224
- * Controls the display of the "Back to Top" button. When true, the button appears in the footer.
4225
- * @type {boolean}
4459
+ * Float a "Back to top" button at the top-right of the footer.
4226
4460
  */
4227
4461
  "enableScrollTop"?: boolean;
4228
4462
  /**
4229
- * Controls the display of the "Founded By" text.
4230
- * @type {string}
4463
+ * "EBRAINS is funded by…" line shown next to the EU flag in the brand column.
4231
4464
  */
4232
4465
  "fundedBy"?: string;
4233
4466
  "onCookies"?: (event: EdsFooterCustomEvent<any>) => void;
4234
4467
  /**
4235
- * Controls the display of the "Rights Reserved" text.
4236
- * @type {string}
4468
+ * {year} EBRAINS. All rights reserved." line shown below the funding text.
4237
4469
  */
4238
4470
  "rightsReserved"?: string;
4239
4471
  /**
4240
- * Determines if the social network section should be displayed. Adds top padding when true.
4241
- * @type {boolean}
4472
+ * Show the eds-social-networks section above the main grid.
4242
4473
  */
4243
4474
  "social"?: boolean;
4244
4475
  /**
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'}
4476
+ * 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
4477
  */
4248
4478
  "variant"?: 'default' | 'inverse';
4249
4479
  }
@@ -4495,6 +4725,10 @@ declare namespace LocalJSX {
4495
4725
  * Placeholder text for the input
4496
4726
  */
4497
4727
  "placeholder"?: string;
4728
+ /**
4729
+ * 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)
4730
+ */
4731
+ "variant"?: 'gray' | 'white' | 'black';
4498
4732
  }
4499
4733
  /**
4500
4734
  * `EdsHeader` is a header component designed for the EBRAINS platform.
@@ -4572,6 +4806,10 @@ declare namespace LocalJSX {
4572
4806
  "class"?: string;
4573
4807
  }
4574
4808
  interface EdsIconWrapper {
4809
+ /**
4810
+ * 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.
4811
+ */
4812
+ "label"?: string;
4575
4813
  "name": IconName;
4576
4814
  "size"?: 16 | 20 | 24 | 32;
4577
4815
  }
@@ -4643,6 +4881,10 @@ declare namespace LocalJSX {
4643
4881
  "hasMessage"?: boolean;
4644
4882
  "icon"?: IconName;
4645
4883
  "inputId"?: string;
4884
+ /**
4885
+ * 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.
4886
+ */
4887
+ "inputTabIndex"?: number;
4646
4888
  "max"?: number;
4647
4889
  "maxLength"?: number;
4648
4890
  "min"?: number;
@@ -4997,6 +5239,28 @@ declare namespace LocalJSX {
4997
5239
  */
4998
5240
  "value"?: string | number;
4999
5241
  }
5242
+ interface EdsKgLearningResources {
5243
+ /**
5244
+ * API endpoint for fetching learning resources
5245
+ */
5246
+ "apiEndpoint"?: string;
5247
+ /**
5248
+ * Component heading
5249
+ */
5250
+ "heading"?: string;
5251
+ /**
5252
+ * Whether to resolve software names
5253
+ */
5254
+ "resolveNames"?: boolean;
5255
+ /**
5256
+ * Max resources to fetch
5257
+ */
5258
+ "size"?: number;
5259
+ /**
5260
+ * Visual variant for accordions and cards
5261
+ */
5262
+ "variant"?: 'default' | 'inverse';
5263
+ }
5000
5264
  interface EdsKgWebServicesSelect {
5001
5265
  /**
5002
5266
  * API endpoint for fetching web services Defaults to cached endpoint for better performance
@@ -5344,6 +5608,69 @@ declare namespace LocalJSX {
5344
5608
  */
5345
5609
  "selectedRating"?: number;
5346
5610
  }
5611
+ /**
5612
+ * Searchable, source-agnostic select for HUGE option lists (countries,
5613
+ * currencies, nationalities, …) — the generalised sibling of
5614
+ * eds-kg-web-services-select.
5615
+ * It never talks to an external API directly. It either filters an inline
5616
+ * `options` array client-side, or queries a VETTED, NAMED `source` through our
5617
+ * own datasets registry (`/api/v1/datasets/<source>/search`), which returns the
5618
+ * one normalised shape `{ items: [{label, value}], total, nextOffset }`. Any
5619
+ * messy upstream schema is flattened server-side by an adapter — the component
5620
+ * stays dumb.
5621
+ * Rendering is result-capped (we render at most `maxVisible` rows and tell the
5622
+ * user to keep typing) so a 5,000-item source never blows up the DOM. Remote
5623
+ * sources are additionally bounded by the server's page `limit`.
5624
+ */
5625
+ interface EdsSearchSelect {
5626
+ /**
5627
+ * Base path for the datasets API.
5628
+ */
5629
+ "apiBase"?: string;
5630
+ /**
5631
+ * Debounce (ms) before a remote search fires.
5632
+ */
5633
+ "debounceMs"?: number;
5634
+ "disabled"?: boolean;
5635
+ "error"?: boolean;
5636
+ "errorMessage"?: string;
5637
+ "hint"?: string;
5638
+ "label"?: string;
5639
+ /**
5640
+ * Server page size for remote sources.
5641
+ */
5642
+ "limit"?: number;
5643
+ /**
5644
+ * Max rows rendered at once (DOM cap).
5645
+ */
5646
+ "maxVisible"?: number;
5647
+ "message"?: string;
5648
+ /**
5649
+ * Allow selecting multiple values — selections render as removable tags.
5650
+ */
5651
+ "multiple"?: boolean;
5652
+ "name": string;
5653
+ "onEdschange"?: (event: EdsSearchSelectCustomEvent<{ value: string | boolean | string[] }>) => void;
5654
+ "onEdsinput"?: (event: EdsSearchSelectCustomEvent<{ value: string | boolean | string[] }>) => void;
5655
+ /**
5656
+ * Inline options: an array or a JSON string of [{label, value}].
5657
+ */
5658
+ "options"?: Option[] | string;
5659
+ "placeholder"?: string;
5660
+ "required"?: boolean;
5661
+ /**
5662
+ * Query param name the search term is sent as.
5663
+ */
5664
+ "searchParam"?: string;
5665
+ /**
5666
+ * A vetted registry source key, e.g. "countries" / "currencies".
5667
+ */
5668
+ "source"?: string;
5669
+ /**
5670
+ * Selected value. A single value string in single-select mode, or an array of values in multi-select mode. v-model friendly.
5671
+ */
5672
+ "value"?: string | string[];
5673
+ }
5347
5674
  interface EdsSectionCore {
5348
5675
  /**
5349
5676
  * The heading level for the section title, such as 'h1', 'h2', etc. Default is 'h2'.
@@ -5610,10 +5937,6 @@ declare namespace LocalJSX {
5610
5937
  * 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
5938
  */
5612
5939
  "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
5940
  /**
5618
5941
  * Config object to hide or format columns
5619
5942
  */
@@ -5658,9 +5981,9 @@ declare namespace LocalJSX {
5658
5981
  */
5659
5982
  "sortingEnabled"?: boolean;
5660
5983
  /**
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
5984
+ * 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
5985
  */
5663
- "theme"?: 'default' | 'color' | 'brand';
5986
+ "theme"?: 'brand';
5664
5987
  /**
5665
5988
  * View mode for displaying data: - 'table': Traditional table layout (default) - 'card': Card grid layout
5666
5989
  */
@@ -5751,6 +6074,58 @@ declare namespace LocalJSX {
5751
6074
  "content"?: string;
5752
6075
  "position"?: 'top' | 'bottom';
5753
6076
  }
6077
+ /**
6078
+ * `EdsTrlBadge` — public EBRAINS TRL badge, aligned with the EBRAINS visual
6079
+ * system (Black `#07140D`, Green `#00FF9D`, Dark Green `#00C87B`, Grey
6080
+ * `#7A7B7A`, IBM Plex Mono) and using the **official EBRAINS sphere mark**.
6081
+ * Renders a self-contained inline `<svg>` (same markup the server-side
6082
+ * `badge.svg` endpoint emits), so it embeds anywhere and stays crisp.
6083
+ * Variants:
6084
+ * - `tone` — CI-style label + value pill (dark or light `theme`).
6085
+ * - `full` — single bar with the full string.
6086
+ * - `pill` — compact rounded "TRL 7".
6087
+ * - `outline` — thin border, transparent fill, mono caps (dark or light).
6088
+ * - `scale` — nine readiness pips showing position on the 1–9 scale.
6089
+ * The value/pip colour encodes maturity within the brand palette:
6090
+ * TRL 7–9 → green, 4–6 → dark green, 1–3 → grey.
6091
+ * @example <eds-trl-badge level={7} assessed="2026-06" methodology="v8.2"></eds-trl-badge>
6092
+ * <eds-trl-badge level={7} variant="outline" theme="light"></eds-trl-badge>
6093
+ * <eds-trl-badge level={7} variant="scale" size={32}></eds-trl-badge>
6094
+ */
6095
+ interface EdsTrlBadge {
6096
+ /**
6097
+ * Assessment month, e.g. "2026-06".
6098
+ */
6099
+ "assessed"?: string;
6100
+ /**
6101
+ * Optional link (methodology or service page).
6102
+ */
6103
+ "href"?: string;
6104
+ /**
6105
+ * Left-segment / leading label.
6106
+ */
6107
+ "label"?: string;
6108
+ /**
6109
+ * TRL level, 1–9.
6110
+ */
6111
+ "level": number;
6112
+ /**
6113
+ * Methodology version, e.g. "v8.2".
6114
+ */
6115
+ "methodology"?: string;
6116
+ /**
6117
+ * Rendered height in px. Scales the whole badge crisply (viewBox is fixed).
6118
+ */
6119
+ "size"?: number;
6120
+ /**
6121
+ * Colour theme for the `tone` / `outline` / `scale` variants.
6122
+ */
6123
+ "theme"?: 'dark' | 'light';
6124
+ /**
6125
+ * 'tone' | 'full' | 'pill' | 'outline' | 'scale'.
6126
+ */
6127
+ "variant"?: 'tone' | 'full' | 'pill' | 'outline' | 'scale';
6128
+ }
5754
6129
  /**
5755
6130
  * `EdsUser` is a user component for managing and displaying
5756
6131
  * the user's auth information. Displays a user dropdown menu when authenticated.
@@ -5863,6 +6238,7 @@ declare namespace LocalJSX {
5863
6238
  "eds-input-range": EdsInputRange;
5864
6239
  "eds-input-search": EdsInputSearch;
5865
6240
  "eds-input-select": EdsInputSelect;
6241
+ "eds-kg-learning-resources": EdsKgLearningResources;
5866
6242
  "eds-kg-web-services-select": EdsKgWebServicesSelect;
5867
6243
  "eds-link": EdsLink;
5868
6244
  "eds-logo": EdsLogo;
@@ -5873,6 +6249,7 @@ declare namespace LocalJSX {
5873
6249
  "eds-pie": EdsPie;
5874
6250
  "eds-progress-bar": EdsProgressBar;
5875
6251
  "eds-rating": EdsRating;
6252
+ "eds-search-select": EdsSearchSelect;
5876
6253
  "eds-section-core": EdsSectionCore;
5877
6254
  "eds-section-heading": EdsSectionHeading;
5878
6255
  "eds-sidebar": EdsSidebar;
@@ -5889,6 +6266,7 @@ declare namespace LocalJSX {
5889
6266
  "eds-toast": EdsToast;
5890
6267
  "eds-toast-manager": EdsToastManager;
5891
6268
  "eds-tooltip": EdsTooltip;
6269
+ "eds-trl-badge": EdsTrlBadge;
5892
6270
  "eds-user": EdsUser;
5893
6271
  "gradient-primary-palette": GradientPrimaryPalette;
5894
6272
  "gradient-secondary-palette": GradientSecondaryPalette;
@@ -6082,16 +6460,24 @@ declare module "@stencil/core" {
6082
6460
  "eds-dropdown": LocalJSX.EdsDropdown & JSXBase.HTMLAttributes<HTMLEdsDropdownElement>;
6083
6461
  "eds-feedback": LocalJSX.EdsFeedback & JSXBase.HTMLAttributes<HTMLEdsFeedbackElement>;
6084
6462
  /**
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.
6463
+ * `EdsFooter` is the EBRAINS-wide footer component.
6464
+ * Renders a 4-column layout matching the eds-docs landing footer:
6465
+ * [ Brand (EU flag + funding text + copyright) | Resources | Community | Legal ]
6466
+ * Defaults are designed so a consumer that writes `<eds-footer></eds-footer>`
6467
+ * with no props gets the full canonical EBRAINS footer rendered same
6468
+ * brand block, same link columns, same dark theme as the eds-docs
6469
+ * landing page. The previous minimal-strip footer is replaced; consumers
6470
+ * that need different link content pass the `columns` prop (array or
6471
+ * JSON-stringified array for HTML attribute use).
6472
+ * Configurability without breakage:
6473
+ * - All previous props remain (`social`, `variant`, `fundedBy`,
6474
+ * `rightsReserved`, `enableScrollTop`, `enableCookiesSettings`,
6475
+ * `cookiesPreferences`, `backToTopAriaLabel`). Their meanings are
6476
+ * preserved.
6477
+ * - New `columns` prop is optional — omit it for the defaults.
6478
+ * - The `enableCookiesSettings` toggle now decides whether any column
6479
+ * link with `action: 'cookies'` is rendered (default false; pass
6480
+ * true to surface the Cookie Preferences entry in the Legal column).
6095
6481
  */
6096
6482
  "eds-footer": LocalJSX.EdsFooter & JSXBase.HTMLAttributes<HTMLEdsFooterElement>;
6097
6483
  /**
@@ -6157,6 +6543,7 @@ declare module "@stencil/core" {
6157
6543
  "eds-input-range": LocalJSX.EdsInputRange & JSXBase.HTMLAttributes<HTMLEdsInputRangeElement>;
6158
6544
  "eds-input-search": LocalJSX.EdsInputSearch & JSXBase.HTMLAttributes<HTMLEdsInputSearchElement>;
6159
6545
  "eds-input-select": LocalJSX.EdsInputSelect & JSXBase.HTMLAttributes<HTMLEdsInputSelectElement>;
6546
+ "eds-kg-learning-resources": LocalJSX.EdsKgLearningResources & JSXBase.HTMLAttributes<HTMLEdsKgLearningResourcesElement>;
6160
6547
  "eds-kg-web-services-select": LocalJSX.EdsKgWebServicesSelect & JSXBase.HTMLAttributes<HTMLEdsKgWebServicesSelectElement>;
6161
6548
  /**
6162
6549
  * `EdsLink` is a versatile link component offering different styles and behaviors.
@@ -6207,6 +6594,21 @@ declare module "@stencil/core" {
6207
6594
  "eds-pie": LocalJSX.EdsPie & JSXBase.HTMLAttributes<HTMLEdsPieElement>;
6208
6595
  "eds-progress-bar": LocalJSX.EdsProgressBar & JSXBase.HTMLAttributes<HTMLEdsProgressBarElement>;
6209
6596
  "eds-rating": LocalJSX.EdsRating & JSXBase.HTMLAttributes<HTMLEdsRatingElement>;
6597
+ /**
6598
+ * Searchable, source-agnostic select for HUGE option lists (countries,
6599
+ * currencies, nationalities, …) — the generalised sibling of
6600
+ * eds-kg-web-services-select.
6601
+ * It never talks to an external API directly. It either filters an inline
6602
+ * `options` array client-side, or queries a VETTED, NAMED `source` through our
6603
+ * own datasets registry (`/api/v1/datasets/<source>/search`), which returns the
6604
+ * one normalised shape `{ items: [{label, value}], total, nextOffset }`. Any
6605
+ * messy upstream schema is flattened server-side by an adapter — the component
6606
+ * stays dumb.
6607
+ * Rendering is result-capped (we render at most `maxVisible` rows and tell the
6608
+ * user to keep typing) so a 5,000-item source never blows up the DOM. Remote
6609
+ * sources are additionally bounded by the server's page `limit`.
6610
+ */
6611
+ "eds-search-select": LocalJSX.EdsSearchSelect & JSXBase.HTMLAttributes<HTMLEdsSearchSelectElement>;
6210
6612
  "eds-section-core": LocalJSX.EdsSectionCore & JSXBase.HTMLAttributes<HTMLEdsSectionCoreElement>;
6211
6613
  "eds-section-heading": LocalJSX.EdsSectionHeading & JSXBase.HTMLAttributes<HTMLEdsSectionHeadingElement>;
6212
6614
  "eds-sidebar": LocalJSX.EdsSidebar & JSXBase.HTMLAttributes<HTMLEdsSidebarElement>;
@@ -6259,6 +6661,25 @@ declare module "@stencil/core" {
6259
6661
  * `EdsTooltip` dynamically positions a tooltip centered above the slotted element.
6260
6662
  */
6261
6663
  "eds-tooltip": LocalJSX.EdsTooltip & JSXBase.HTMLAttributes<HTMLEdsTooltipElement>;
6664
+ /**
6665
+ * `EdsTrlBadge` — public EBRAINS TRL badge, aligned with the EBRAINS visual
6666
+ * system (Black `#07140D`, Green `#00FF9D`, Dark Green `#00C87B`, Grey
6667
+ * `#7A7B7A`, IBM Plex Mono) and using the **official EBRAINS sphere mark**.
6668
+ * Renders a self-contained inline `<svg>` (same markup the server-side
6669
+ * `badge.svg` endpoint emits), so it embeds anywhere and stays crisp.
6670
+ * Variants:
6671
+ * - `tone` — CI-style label + value pill (dark or light `theme`).
6672
+ * - `full` — single bar with the full string.
6673
+ * - `pill` — compact rounded "TRL 7".
6674
+ * - `outline` — thin border, transparent fill, mono caps (dark or light).
6675
+ * - `scale` — nine readiness pips showing position on the 1–9 scale.
6676
+ * The value/pip colour encodes maturity within the brand palette:
6677
+ * TRL 7–9 → green, 4–6 → dark green, 1–3 → grey.
6678
+ * @example <eds-trl-badge level={7} assessed="2026-06" methodology="v8.2"></eds-trl-badge>
6679
+ * <eds-trl-badge level={7} variant="outline" theme="light"></eds-trl-badge>
6680
+ * <eds-trl-badge level={7} variant="scale" size={32}></eds-trl-badge>
6681
+ */
6682
+ "eds-trl-badge": LocalJSX.EdsTrlBadge & JSXBase.HTMLAttributes<HTMLEdsTrlBadgeElement>;
6262
6683
  /**
6263
6684
  * `EdsUser` is a user component for managing and displaying
6264
6685
  * the user's auth information. Displays a user dropdown menu when authenticated.