@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
@@ -0,0 +1,685 @@
1
+ import { h } from "@stencil/core";
2
+ /**
3
+ * Searchable, source-agnostic select for HUGE option lists (countries,
4
+ * currencies, nationalities, …) — the generalised sibling of
5
+ * eds-kg-web-services-select.
6
+ *
7
+ * It never talks to an external API directly. It either filters an inline
8
+ * `options` array client-side, or queries a VETTED, NAMED `source` through our
9
+ * own datasets registry (`/api/v1/datasets/<source>/search`), which returns the
10
+ * one normalised shape `{ items: [{label, value}], total, nextOffset }`. Any
11
+ * messy upstream schema is flattened server-side by an adapter — the component
12
+ * stays dumb.
13
+ *
14
+ * Rendering is result-capped (we render at most `maxVisible` rows and tell the
15
+ * user to keep typing) so a 5,000-item source never blows up the DOM. Remote
16
+ * sources are additionally bounded by the server's page `limit`.
17
+ */
18
+ export class EdsSearchSelect {
19
+ constructor() {
20
+ this.debounceTimer = null;
21
+ this.inlineOptions = [];
22
+ this.listboxId = `eds-ss-list-${Math.round(performance.now())}`;
23
+ // value -> label, so selected tags render readable labels even for remote
24
+ // values whose label hasn't been fetched in the current page.
25
+ this.labelCache = {};
26
+ this.onInput = (e) => {
27
+ this.query = e.target.value;
28
+ this.open = true;
29
+ this.activeIndex = -1;
30
+ this.runSearch(this.query);
31
+ };
32
+ this.clear = () => {
33
+ if (this.multiple) {
34
+ this.value = [];
35
+ this.emitValue([]);
36
+ }
37
+ else {
38
+ this.value = undefined;
39
+ this.selectedLabel = '';
40
+ this.emitValue('');
41
+ }
42
+ this.query = '';
43
+ };
44
+ this.onKeyDown = (e) => {
45
+ if (e.key === 'ArrowDown') {
46
+ e.preventDefault();
47
+ if (!this.open)
48
+ return this.openMenu();
49
+ this.activeIndex = Math.min(this.activeIndex + 1, this.visibleItems.length - 1);
50
+ }
51
+ else if (e.key === 'ArrowUp') {
52
+ e.preventDefault();
53
+ this.activeIndex = Math.max(this.activeIndex - 1, 0);
54
+ }
55
+ else if (e.key === 'Enter') {
56
+ if (this.open && this.activeIndex >= 0) {
57
+ e.preventDefault();
58
+ this.select(this.visibleItems[this.activeIndex]);
59
+ }
60
+ }
61
+ else if (e.key === 'Escape') {
62
+ this.closeMenu();
63
+ }
64
+ else if (e.key === 'Backspace' && this.multiple && !this.query && this.selectedValues.length) {
65
+ // Backspace on an empty query removes the last selected tag.
66
+ this.removeValue(this.selectedValues[this.selectedValues.length - 1]);
67
+ }
68
+ };
69
+ // Close when a click lands outside the component. Must be shadow-aware:
70
+ // this component is nested inside eds-form's shadow root, so a document-level
71
+ // listener sees the event retargeted to the OUTER host — `host.contains(target)`
72
+ // would be false even for our own clicks and wrongly close on open. composedPath()
73
+ // walks through every shadow boundary and contains our host iff the click was ours.
74
+ this.onDocumentClick = (e) => {
75
+ if (this.open && !e.composedPath().includes(this.host))
76
+ this.closeMenu();
77
+ };
78
+ this.name = undefined;
79
+ this.label = undefined;
80
+ this.placeholder = 'Search…';
81
+ this.required = false;
82
+ this.disabled = false;
83
+ this.hint = undefined;
84
+ this.message = undefined;
85
+ this.error = false;
86
+ this.errorMessage = undefined;
87
+ this.value = undefined;
88
+ this.multiple = false;
89
+ this.options = undefined;
90
+ this.source = undefined;
91
+ this.apiBase = '/api/v1';
92
+ this.searchParam = 'q';
93
+ this.limit = 50;
94
+ this.debounceMs = 250;
95
+ this.maxVisible = 100;
96
+ this.open = false;
97
+ this.query = '';
98
+ this.loading = false;
99
+ this.fetchError = '';
100
+ this.items = [];
101
+ this.total = 0;
102
+ this.activeIndex = -1;
103
+ this.selectedLabel = '';
104
+ }
105
+ componentWillLoad() {
106
+ this.parseInlineOptions();
107
+ this.resolveSelectedLabel();
108
+ }
109
+ onOptionsChange() {
110
+ this.parseInlineOptions();
111
+ this.resolveSelectedLabel();
112
+ }
113
+ onValueChange() {
114
+ this.resolveSelectedLabel();
115
+ }
116
+ parseInlineOptions() {
117
+ if (!this.options) {
118
+ this.inlineOptions = [];
119
+ return;
120
+ }
121
+ if (typeof this.options === 'string') {
122
+ try {
123
+ this.inlineOptions = JSON.parse(this.options) || [];
124
+ }
125
+ catch (_a) {
126
+ this.inlineOptions = [];
127
+ }
128
+ }
129
+ else {
130
+ this.inlineOptions = this.options;
131
+ }
132
+ this.cacheLabels(this.inlineOptions);
133
+ }
134
+ cacheLabels(opts) {
135
+ (opts || []).forEach((o) => {
136
+ if (o && o.value != null)
137
+ this.labelCache[String(o.value)] = o.label;
138
+ });
139
+ }
140
+ /** The current selection as a value array (works for single + multi). */
141
+ get selectedValues() {
142
+ const v = this.value;
143
+ if (Array.isArray(v))
144
+ return v.map(String).filter((s) => s !== '');
145
+ if (typeof v === 'string' && v !== '') {
146
+ return this.multiple ? v.split(',').filter(Boolean) : [v];
147
+ }
148
+ return [];
149
+ }
150
+ labelFor(val) {
151
+ var _a, _b;
152
+ return (this.labelCache[String(val)] ||
153
+ ((_a = this.inlineOptions.find((o) => String(o.value) === String(val))) === null || _a === void 0 ? void 0 : _a.label) ||
154
+ ((_b = this.items.find((o) => String(o.value) === String(val))) === null || _b === void 0 ? void 0 : _b.label) ||
155
+ String(val));
156
+ }
157
+ emitValue(v) {
158
+ this.edsinput.emit({ value: v });
159
+ this.edschange.emit({ value: v });
160
+ }
161
+ get isRemote() {
162
+ return !!this.source && this.inlineOptions.length === 0;
163
+ }
164
+ resolveSelectedLabel() {
165
+ if (!this.value) {
166
+ this.selectedLabel = '';
167
+ return;
168
+ }
169
+ // Inline: resolve label from the known list. Remote: best-effort — show the
170
+ // value until/unless it appears in a fetched page.
171
+ const pool = this.inlineOptions.length ? this.inlineOptions : this.items;
172
+ const found = pool.find((o) => String(o.value) === String(this.value));
173
+ this.selectedLabel = found ? found.label : String(this.value);
174
+ }
175
+ // --- Data --------------------------------------------------------------
176
+ filterInline(q) {
177
+ const needle = q.trim().toLowerCase();
178
+ if (!needle)
179
+ return this.inlineOptions;
180
+ return this.inlineOptions.filter((o) => o.label.toLowerCase().includes(needle) ||
181
+ String(o.value).toLowerCase().includes(needle));
182
+ }
183
+ async fetchRemote(q) {
184
+ this.loading = true;
185
+ this.fetchError = '';
186
+ try {
187
+ const params = new URLSearchParams({ [this.searchParam]: q, limit: String(this.limit) });
188
+ const url = `${this.apiBase}/datasets/${encodeURIComponent(this.source)}/search?${params}`;
189
+ const resp = await fetch(url);
190
+ if (!resp.ok)
191
+ throw new Error(`Search failed: ${resp.statusText}`);
192
+ const data = await resp.json();
193
+ this.items = data.items || [];
194
+ this.cacheLabels(this.items);
195
+ this.total = typeof data.total === 'number' ? data.total : this.items.length;
196
+ this.resolveSelectedLabel();
197
+ }
198
+ catch (e) {
199
+ this.fetchError = e instanceof Error ? e.message : 'Search failed';
200
+ this.items = [];
201
+ this.total = 0;
202
+ }
203
+ finally {
204
+ this.loading = false;
205
+ }
206
+ }
207
+ runSearch(q, immediate = false) {
208
+ if (this.isRemote) {
209
+ // Show the loading state synchronously so the debounce window renders
210
+ // "Searching…" rather than a misleading "No matches" before the fetch.
211
+ this.loading = true;
212
+ clearTimeout(this.debounceTimer);
213
+ if (immediate) {
214
+ this.fetchRemote(q);
215
+ }
216
+ else {
217
+ this.debounceTimer = setTimeout(() => this.fetchRemote(q), this.debounceMs);
218
+ }
219
+ }
220
+ else {
221
+ this.items = this.filterInline(q);
222
+ this.total = this.items.length;
223
+ }
224
+ }
225
+ // --- The capped, render-ready slice ------------------------------------
226
+ get visibleItems() {
227
+ return this.items.slice(0, this.maxVisible);
228
+ }
229
+ get hiddenCount() {
230
+ return Math.max(0, this.total - this.visibleItems.length);
231
+ }
232
+ // --- Interaction -------------------------------------------------------
233
+ openMenu() {
234
+ if (this.disabled)
235
+ return;
236
+ this.open = true;
237
+ this.activeIndex = -1;
238
+ // Populate on first open (initial page for remote, full list for inline).
239
+ // Immediate fetch on open — debounce only applies to typing.
240
+ if (!this.items.length || this.isRemote)
241
+ this.runSearch(this.query, true);
242
+ }
243
+ closeMenu() {
244
+ this.open = false;
245
+ this.activeIndex = -1;
246
+ }
247
+ select(opt) {
248
+ this.labelCache[String(opt.value)] = opt.label;
249
+ if (this.multiple) {
250
+ const current = this.selectedValues;
251
+ const key = String(opt.value);
252
+ const next = current.includes(key)
253
+ ? current.filter((v) => v !== key) // toggle off if already chosen
254
+ : [...current, key];
255
+ this.value = next;
256
+ this.query = '';
257
+ this.emitValue(next);
258
+ // Keep the menu open so more can be picked; reset the list to all results.
259
+ this.runSearch('', true);
260
+ return;
261
+ }
262
+ this.value = opt.value;
263
+ this.selectedLabel = opt.label;
264
+ this.query = '';
265
+ this.closeMenu();
266
+ this.emitValue(opt.value);
267
+ }
268
+ removeValue(val, e) {
269
+ e === null || e === void 0 ? void 0 : e.stopPropagation();
270
+ const next = this.selectedValues.filter((v) => v !== String(val));
271
+ this.value = next;
272
+ this.emitValue(next);
273
+ }
274
+ connectedCallback() {
275
+ document.addEventListener('click', this.onDocumentClick, true);
276
+ }
277
+ disconnectedCallback() {
278
+ document.removeEventListener('click', this.onDocumentClick, true);
279
+ clearTimeout(this.debounceTimer);
280
+ }
281
+ render() {
282
+ const selected = this.selectedValues;
283
+ const hasSelection = selected.length > 0;
284
+ const inputValue = this.multiple ? this.query : (this.open ? this.query : this.selectedLabel);
285
+ const placeholder = this.multiple
286
+ ? (hasSelection ? '' : this.placeholder)
287
+ : (hasSelection && !this.open ? this.selectedLabel : this.placeholder);
288
+ return (h("div", { key: 'f5224332aa395be2a9dd8a1312dcd1b631ad2129', class: "eds-ss" }, (this.label || this.hint) && (h("div", { key: 'e28da19abdedb4107a7b7be2a59e6444780f8251', class: "eds-ss__labelrow" }, this.label && (h("eds-input-label", { key: '81933dbc2d370b8ddbbf8f4286c3420e4f140ca7', name: `${this.name}-input`, label: this.label, required: this.required, disabled: this.disabled })), this.hint && (h("p", { key: '1ff5b7a62cc20bb2ce710ca2e06c728d94aef895', id: `${this.name}-hint`, class: "eds-ss__hint" }, this.hint)))), h("div", { key: '84fbdccc6326707ac854e06d7209dd149d9c26a7', class: "eds-ss__control relative" }, h("div", { key: 'ae99c3d9c706fa6619459d8d6c9baa3df610169e', class: { 'eds-ss__box': true, 'is-error': this.error || !!this.fetchError, 'is-disabled': this.disabled } }, this.multiple &&
289
+ selected.map((v) => (h("span", { class: "eds-ss__chip", key: v }, h("span", { class: "eds-ss__chip-label" }, this.labelFor(v)), !this.disabled && (h("button", { type: "button", class: "eds-ss__chip-x", "aria-label": `Remove ${this.labelFor(v)}`, onMouseDown: (e) => { e.preventDefault(); this.removeValue(v, e); } }, "\u00D7"))))), h("input", { key: '18dcd5787c7636c09be7285fb85b77f5cae334c8', id: `${this.name}-input`, class: "eds-ss__input", type: "text", role: "combobox", autocomplete: "off", "aria-expanded": this.open ? 'true' : 'false', "aria-controls": this.listboxId, "aria-autocomplete": "list", placeholder: placeholder, value: inputValue, disabled: this.disabled, required: this.required && !hasSelection, onFocus: () => this.openMenu(), onInput: this.onInput, onKeyDown: this.onKeyDown })), !this.multiple && hasSelection && !this.disabled && (h("button", { key: 'c927fa49fb58b7abec13f6d436f1d1452f9644c5', type: "button", class: "eds-ss__clear", "aria-label": "Clear selection", onClick: this.clear }, "\u00D7")), h("span", { key: 'bff4bf41fb388f849ef9c0928f4aa88e065d718d', class: "eds-ss__chevron", "aria-hidden": "true" }, h("eds-icon-wrapper", { key: '7871955d6fc5626914995d51c1b4b3511b60febe', name: "chevron-right", size: 20 }))), this.open && (h("ul", { key: 'e529fe82576be45a0e99d4a020aa4f721b71686b', class: "eds-ss__list", id: this.listboxId, role: "listbox" }, this.loading && h("li", { key: 'fe8d73dfa0d6a5cf7e9bea4220511a22489884f8', class: "eds-ss__status" }, "Searching\u2026"), !this.loading && this.fetchError && h("li", { key: 'b708b1de4eee8e45287fd23f0bf63327032616d6', class: "eds-ss__status is-error" }, this.fetchError), !this.loading && !this.fetchError && this.visibleItems.length === 0 && (h("li", { key: '9400ac7a022f38935f05df3705e2a65acb9d4a04', class: "eds-ss__status" }, "No matches")), !this.loading &&
290
+ !this.fetchError &&
291
+ this.visibleItems.map((opt, i) => (h("li", { key: opt.value, class: { 'eds-ss__option': true, 'is-active': i === this.activeIndex, 'is-selected': selected.includes(String(opt.value)) }, role: "option", "aria-selected": selected.includes(String(opt.value)) ? 'true' : 'false', onMouseEnter: () => (this.activeIndex = i), onMouseDown: (e) => { e.preventDefault(); this.select(opt); } }, opt.label))), !this.loading && !this.fetchError && this.hiddenCount > 0 && (h("li", { key: '8e82d65e9da3755ad10ffaf0fc4a45f5bc365a48', class: "eds-ss__more" }, "+", this.hiddenCount, " more \u2014 keep typing to narrow")))), h("eds-input-footer", { key: '0564f006a874a3556118ce99441cbfabc230ac57', name: this.name, message: this.message, error: this.error, "error-message": this.errorMessage })));
292
+ }
293
+ static get is() { return "eds-search-select"; }
294
+ static get encapsulation() { return "shadow"; }
295
+ static get originalStyleUrls() {
296
+ return {
297
+ "$": ["eds-search-select.css"]
298
+ };
299
+ }
300
+ static get styleUrls() {
301
+ return {
302
+ "$": ["eds-search-select.css"]
303
+ };
304
+ }
305
+ static get properties() {
306
+ return {
307
+ "name": {
308
+ "type": "string",
309
+ "mutable": false,
310
+ "complexType": {
311
+ "original": "string",
312
+ "resolved": "string",
313
+ "references": {}
314
+ },
315
+ "required": true,
316
+ "optional": false,
317
+ "docs": {
318
+ "tags": [],
319
+ "text": ""
320
+ },
321
+ "attribute": "name",
322
+ "reflect": false
323
+ },
324
+ "label": {
325
+ "type": "string",
326
+ "mutable": false,
327
+ "complexType": {
328
+ "original": "string",
329
+ "resolved": "string",
330
+ "references": {}
331
+ },
332
+ "required": false,
333
+ "optional": true,
334
+ "docs": {
335
+ "tags": [],
336
+ "text": ""
337
+ },
338
+ "attribute": "label",
339
+ "reflect": false
340
+ },
341
+ "placeholder": {
342
+ "type": "string",
343
+ "mutable": false,
344
+ "complexType": {
345
+ "original": "string",
346
+ "resolved": "string",
347
+ "references": {}
348
+ },
349
+ "required": false,
350
+ "optional": false,
351
+ "docs": {
352
+ "tags": [],
353
+ "text": ""
354
+ },
355
+ "attribute": "placeholder",
356
+ "reflect": false,
357
+ "defaultValue": "'Search\u2026'"
358
+ },
359
+ "required": {
360
+ "type": "boolean",
361
+ "mutable": false,
362
+ "complexType": {
363
+ "original": "boolean",
364
+ "resolved": "boolean",
365
+ "references": {}
366
+ },
367
+ "required": false,
368
+ "optional": false,
369
+ "docs": {
370
+ "tags": [],
371
+ "text": ""
372
+ },
373
+ "attribute": "required",
374
+ "reflect": false,
375
+ "defaultValue": "false"
376
+ },
377
+ "disabled": {
378
+ "type": "boolean",
379
+ "mutable": false,
380
+ "complexType": {
381
+ "original": "boolean",
382
+ "resolved": "boolean",
383
+ "references": {}
384
+ },
385
+ "required": false,
386
+ "optional": false,
387
+ "docs": {
388
+ "tags": [],
389
+ "text": ""
390
+ },
391
+ "attribute": "disabled",
392
+ "reflect": false,
393
+ "defaultValue": "false"
394
+ },
395
+ "hint": {
396
+ "type": "string",
397
+ "mutable": false,
398
+ "complexType": {
399
+ "original": "string",
400
+ "resolved": "string",
401
+ "references": {}
402
+ },
403
+ "required": false,
404
+ "optional": true,
405
+ "docs": {
406
+ "tags": [],
407
+ "text": ""
408
+ },
409
+ "attribute": "hint",
410
+ "reflect": false
411
+ },
412
+ "message": {
413
+ "type": "string",
414
+ "mutable": false,
415
+ "complexType": {
416
+ "original": "string",
417
+ "resolved": "string",
418
+ "references": {}
419
+ },
420
+ "required": false,
421
+ "optional": true,
422
+ "docs": {
423
+ "tags": [],
424
+ "text": ""
425
+ },
426
+ "attribute": "message",
427
+ "reflect": false
428
+ },
429
+ "error": {
430
+ "type": "boolean",
431
+ "mutable": false,
432
+ "complexType": {
433
+ "original": "boolean",
434
+ "resolved": "boolean",
435
+ "references": {}
436
+ },
437
+ "required": false,
438
+ "optional": false,
439
+ "docs": {
440
+ "tags": [],
441
+ "text": ""
442
+ },
443
+ "attribute": "error",
444
+ "reflect": false,
445
+ "defaultValue": "false"
446
+ },
447
+ "errorMessage": {
448
+ "type": "string",
449
+ "mutable": false,
450
+ "complexType": {
451
+ "original": "string",
452
+ "resolved": "string",
453
+ "references": {}
454
+ },
455
+ "required": false,
456
+ "optional": true,
457
+ "docs": {
458
+ "tags": [],
459
+ "text": ""
460
+ },
461
+ "attribute": "error-message",
462
+ "reflect": false
463
+ },
464
+ "value": {
465
+ "type": "string",
466
+ "mutable": true,
467
+ "complexType": {
468
+ "original": "string | string[]",
469
+ "resolved": "string | string[]",
470
+ "references": {}
471
+ },
472
+ "required": false,
473
+ "optional": true,
474
+ "docs": {
475
+ "tags": [],
476
+ "text": "Selected value. A single value string in single-select mode, or an array\nof values in multi-select mode. v-model friendly."
477
+ },
478
+ "attribute": "value",
479
+ "reflect": false
480
+ },
481
+ "multiple": {
482
+ "type": "boolean",
483
+ "mutable": false,
484
+ "complexType": {
485
+ "original": "boolean",
486
+ "resolved": "boolean",
487
+ "references": {}
488
+ },
489
+ "required": false,
490
+ "optional": false,
491
+ "docs": {
492
+ "tags": [],
493
+ "text": "Allow selecting multiple values \u2014 selections render as removable tags."
494
+ },
495
+ "attribute": "multiple",
496
+ "reflect": false,
497
+ "defaultValue": "false"
498
+ },
499
+ "options": {
500
+ "type": "string",
501
+ "mutable": false,
502
+ "complexType": {
503
+ "original": "Option[] | string",
504
+ "resolved": "Option[] | string",
505
+ "references": {
506
+ "Option": {
507
+ "location": "global",
508
+ "id": "global::Option"
509
+ }
510
+ }
511
+ },
512
+ "required": false,
513
+ "optional": true,
514
+ "docs": {
515
+ "tags": [],
516
+ "text": "Inline options: an array or a JSON string of [{label, value}]."
517
+ },
518
+ "attribute": "options",
519
+ "reflect": false
520
+ },
521
+ "source": {
522
+ "type": "string",
523
+ "mutable": false,
524
+ "complexType": {
525
+ "original": "string",
526
+ "resolved": "string",
527
+ "references": {}
528
+ },
529
+ "required": false,
530
+ "optional": true,
531
+ "docs": {
532
+ "tags": [],
533
+ "text": "A vetted registry source key, e.g. \"countries\" / \"currencies\"."
534
+ },
535
+ "attribute": "source",
536
+ "reflect": false
537
+ },
538
+ "apiBase": {
539
+ "type": "string",
540
+ "mutable": false,
541
+ "complexType": {
542
+ "original": "string",
543
+ "resolved": "string",
544
+ "references": {}
545
+ },
546
+ "required": false,
547
+ "optional": false,
548
+ "docs": {
549
+ "tags": [],
550
+ "text": "Base path for the datasets API."
551
+ },
552
+ "attribute": "api-base",
553
+ "reflect": false,
554
+ "defaultValue": "'/api/v1'"
555
+ },
556
+ "searchParam": {
557
+ "type": "string",
558
+ "mutable": false,
559
+ "complexType": {
560
+ "original": "string",
561
+ "resolved": "string",
562
+ "references": {}
563
+ },
564
+ "required": false,
565
+ "optional": false,
566
+ "docs": {
567
+ "tags": [],
568
+ "text": "Query param name the search term is sent as."
569
+ },
570
+ "attribute": "search-param",
571
+ "reflect": false,
572
+ "defaultValue": "'q'"
573
+ },
574
+ "limit": {
575
+ "type": "number",
576
+ "mutable": false,
577
+ "complexType": {
578
+ "original": "number",
579
+ "resolved": "number",
580
+ "references": {}
581
+ },
582
+ "required": false,
583
+ "optional": false,
584
+ "docs": {
585
+ "tags": [],
586
+ "text": "Server page size for remote sources."
587
+ },
588
+ "attribute": "limit",
589
+ "reflect": false,
590
+ "defaultValue": "50"
591
+ },
592
+ "debounceMs": {
593
+ "type": "number",
594
+ "mutable": false,
595
+ "complexType": {
596
+ "original": "number",
597
+ "resolved": "number",
598
+ "references": {}
599
+ },
600
+ "required": false,
601
+ "optional": false,
602
+ "docs": {
603
+ "tags": [],
604
+ "text": "Debounce (ms) before a remote search fires."
605
+ },
606
+ "attribute": "debounce-ms",
607
+ "reflect": false,
608
+ "defaultValue": "250"
609
+ },
610
+ "maxVisible": {
611
+ "type": "number",
612
+ "mutable": false,
613
+ "complexType": {
614
+ "original": "number",
615
+ "resolved": "number",
616
+ "references": {}
617
+ },
618
+ "required": false,
619
+ "optional": false,
620
+ "docs": {
621
+ "tags": [],
622
+ "text": "Max rows rendered at once (DOM cap)."
623
+ },
624
+ "attribute": "max-visible",
625
+ "reflect": false,
626
+ "defaultValue": "100"
627
+ }
628
+ };
629
+ }
630
+ static get states() {
631
+ return {
632
+ "open": {},
633
+ "query": {},
634
+ "loading": {},
635
+ "fetchError": {},
636
+ "items": {},
637
+ "total": {},
638
+ "activeIndex": {},
639
+ "selectedLabel": {}
640
+ };
641
+ }
642
+ static get events() {
643
+ return [{
644
+ "method": "edsinput",
645
+ "name": "edsinput",
646
+ "bubbles": true,
647
+ "cancelable": true,
648
+ "composed": true,
649
+ "docs": {
650
+ "tags": [],
651
+ "text": ""
652
+ },
653
+ "complexType": {
654
+ "original": "{ value: string | boolean | string[] }",
655
+ "resolved": "{ value: string | boolean | string[]; }",
656
+ "references": {}
657
+ }
658
+ }, {
659
+ "method": "edschange",
660
+ "name": "edschange",
661
+ "bubbles": true,
662
+ "cancelable": true,
663
+ "composed": true,
664
+ "docs": {
665
+ "tags": [],
666
+ "text": ""
667
+ },
668
+ "complexType": {
669
+ "original": "{ value: string | boolean | string[] }",
670
+ "resolved": "{ value: string | boolean | string[]; }",
671
+ "references": {}
672
+ }
673
+ }];
674
+ }
675
+ static get elementRef() { return "host"; }
676
+ static get watchers() {
677
+ return [{
678
+ "propName": "options",
679
+ "methodName": "onOptionsChange"
680
+ }, {
681
+ "propName": "value",
682
+ "methodName": "onValueChange"
683
+ }];
684
+ }
685
+ }