@ebrains/components 1.0.0 → 1.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (379) hide show
  1. package/dist/cjs/components-section.cjs.entry.js +1 -1
  2. package/dist/cjs/components.cjs.js +1 -1
  3. package/dist/cjs/eds-accordion.cjs.entry.js +2 -2
  4. package/dist/cjs/eds-alert.cjs.entry.js +2 -2
  5. package/dist/cjs/{eds-avatar_34.cjs.entry.js → eds-avatar_28.cjs.entry.js} +494 -523
  6. package/dist/cjs/eds-breadcrumb.cjs.entry.js +145 -0
  7. package/dist/cjs/eds-card-desc_2.cjs.entry.js +77 -0
  8. package/dist/cjs/eds-card-generic.cjs.entry.js +92 -0
  9. package/dist/cjs/eds-card-project.cjs.entry.js +1 -1
  10. package/dist/cjs/eds-card-tags.cjs.entry.js +1 -1
  11. package/dist/cjs/eds-card-tool.cjs.entry.js +1 -1
  12. package/dist/cjs/eds-code-block.cjs.entry.js +1 -1
  13. package/dist/cjs/eds-gauge.cjs.entry.js +60 -0
  14. package/dist/cjs/eds-icon-arrow-diagonal.cjs.entry.js +1 -1
  15. package/dist/cjs/eds-icon-arrow-right.cjs.entry.js +1 -1
  16. package/dist/cjs/eds-icon-bluesky.cjs.entry.js +1 -1
  17. package/dist/cjs/eds-icon-bookmark.cjs.entry.js +1 -1
  18. package/dist/cjs/eds-icon-chevron-down.cjs.entry.js +1 -1
  19. package/dist/cjs/eds-icon-chevron-left.cjs.entry.js +1 -1
  20. package/dist/cjs/eds-icon-chevron-right.cjs.entry.js +1 -1
  21. package/dist/cjs/eds-icon-chevron-up.cjs.entry.js +1 -1
  22. package/dist/cjs/eds-icon-close.cjs.entry.js +1 -1
  23. package/dist/cjs/eds-icon-copy.cjs.entry.js +1 -1
  24. package/dist/cjs/eds-icon-eu.cjs.entry.js +1 -1
  25. package/dist/cjs/eds-icon-external.cjs.entry.js +1 -1
  26. package/dist/cjs/eds-icon-facebook.cjs.entry.js +1 -1
  27. package/dist/cjs/eds-icon-gitlab.cjs.entry.js +1 -1
  28. package/dist/cjs/eds-icon-linkedin.cjs.entry.js +1 -1
  29. package/dist/cjs/eds-icon-loader.cjs.entry.js +1 -1
  30. package/dist/cjs/eds-icon-mastodon.cjs.entry.js +1 -1
  31. package/dist/cjs/eds-icon-menu.cjs.entry.js +1 -1
  32. package/dist/cjs/eds-icon-minus.cjs.entry.js +1 -1
  33. package/dist/cjs/eds-icon-more.cjs.entry.js +1 -1
  34. package/dist/cjs/eds-icon-paper.cjs.entry.js +1 -1
  35. package/dist/cjs/eds-icon-plus.cjs.entry.js +1 -1
  36. package/dist/cjs/eds-icon-portal.cjs.entry.js +1 -1
  37. package/dist/cjs/eds-icon-private.cjs.entry.js +1 -1
  38. package/dist/cjs/eds-icon-public.cjs.entry.js +1 -1
  39. package/dist/cjs/eds-icon-search.cjs.entry.js +1 -1
  40. package/dist/cjs/eds-icon-star.cjs.entry.js +1 -1
  41. package/dist/cjs/eds-icon-success.cjs.entry.js +1 -1
  42. package/dist/cjs/eds-icon-thumbs-down.cjs.entry.js +1 -1
  43. package/dist/cjs/eds-icon-thumbs-up.cjs.entry.js +1 -1
  44. package/dist/cjs/eds-icon-tutorial.cjs.entry.js +1 -1
  45. package/dist/cjs/eds-icon-twitter.cjs.entry.js +1 -1
  46. package/dist/cjs/eds-icon-unknown.cjs.entry.js +1 -1
  47. package/dist/cjs/eds-icon-updown.cjs.entry.js +1 -1
  48. package/dist/cjs/eds-icon-user.cjs.entry.js +1 -1
  49. package/dist/cjs/eds-icon-youtube.cjs.entry.js +1 -1
  50. package/dist/cjs/eds-pie.cjs.entry.js +106 -0
  51. package/dist/cjs/eds-progress-bar.cjs.entry.js +1 -1
  52. package/dist/cjs/eds-rating.cjs.entry.js +1 -1
  53. package/dist/cjs/eds-section-core_2.cjs.entry.js +3 -3
  54. package/dist/cjs/eds-spinner.cjs.entry.js +1 -1
  55. package/dist/cjs/eds-switch.cjs.entry.js +2 -2
  56. package/dist/cjs/eds-tooltip.cjs.entry.js +32 -0
  57. package/dist/cjs/index-88c8039f.js +28 -4
  58. package/dist/cjs/loader.cjs.js +1 -1
  59. package/dist/cjs/token-spacing.cjs.entry.js +16 -0
  60. package/dist/collection/collection-manifest.json +1 -1
  61. package/dist/collection/components/eds-accordion/eds-accordion.js +2 -2
  62. package/dist/collection/components/eds-alert/eds-alert.js +2 -2
  63. package/dist/collection/components/eds-avatar/eds-avatar.js +1 -1
  64. package/dist/collection/components/eds-block-break/eds-block-break.js +1 -1
  65. package/dist/collection/components/eds-breadcrump/eds-breadcrump.js +1 -1
  66. package/dist/collection/components/eds-button/eds-button.js +1 -1
  67. package/dist/collection/components/eds-cards/eds-card-composer/eds-card-desc/eds-card-desc.js +1 -1
  68. package/dist/collection/components/eds-cards/eds-card-composer/eds-card-tags/eds-card-tags.js +1 -1
  69. package/dist/collection/components/eds-cards/eds-card-composer/eds-card-title/eds-card-title.js +1 -1
  70. package/dist/collection/components/eds-cards/eds-card-project/eds-card-project.js +1 -1
  71. package/dist/collection/components/eds-cards/eds-card-tool/eds-card-tool.js +1 -1
  72. package/dist/collection/components/eds-charts/eds-gauge/eds-gauge.js +1 -1
  73. package/dist/collection/components/eds-code-block/eds-code-block.js +1 -1
  74. package/dist/collection/components/eds-dropdown/eds-dropdown.js +2 -2
  75. package/dist/collection/components/eds-icons/chevron/eds-icon-chevron-down/eds-icon-chevron-down.js +1 -1
  76. package/dist/collection/components/eds-icons/chevron/eds-icon-chevron-left/eds-icon-chevron-left.js +1 -1
  77. package/dist/collection/components/eds-icons/chevron/eds-icon-chevron-right/eds-icon-chevron-right.js +1 -1
  78. package/dist/collection/components/eds-icons/chevron/eds-icon-chevron-up/eds-icon-chevron-up.js +1 -1
  79. package/dist/collection/components/eds-icons/eds-icon-arrow-diagonal/eds-icon-arrow-diagonal.js +1 -1
  80. package/dist/collection/components/eds-icons/eds-icon-arrow-right/eds-icon-arrow-right.js +1 -1
  81. package/dist/collection/components/eds-icons/eds-icon-bookmark/eds-icon-bookmark.js +1 -1
  82. package/dist/collection/components/eds-icons/eds-icon-close/eds-icon-close.js +1 -1
  83. package/dist/collection/components/eds-icons/eds-icon-copy/eds-icon-copy.js +1 -1
  84. package/dist/collection/components/eds-icons/eds-icon-eu/eds-icon-eu.js +1 -1
  85. package/dist/collection/components/eds-icons/eds-icon-external/eds-icon-external.js +1 -1
  86. package/dist/collection/components/eds-icons/eds-icon-gitlab/eds-icon-gitlab.js +1 -1
  87. package/dist/collection/components/eds-icons/eds-icon-loader/eds-icon-loader.js +1 -1
  88. package/dist/collection/components/eds-icons/eds-icon-menu/eds-icon-menu.js +1 -1
  89. package/dist/collection/components/eds-icons/eds-icon-minus/eds-icon-minus.js +1 -1
  90. package/dist/collection/components/eds-icons/eds-icon-more/eds-icon-more.js +1 -1
  91. package/dist/collection/components/eds-icons/eds-icon-paper/eds-icon-paper.js +1 -1
  92. package/dist/collection/components/eds-icons/eds-icon-plus/eds-icon-plus.js +1 -1
  93. package/dist/collection/components/eds-icons/eds-icon-portal/eds-icon-portal.js +1 -1
  94. package/dist/collection/components/eds-icons/eds-icon-private/eds-icon-private.js +1 -1
  95. package/dist/collection/components/eds-icons/eds-icon-public/eds-icon-public.js +1 -1
  96. package/dist/collection/components/eds-icons/eds-icon-search/eds-icon-search.js +1 -1
  97. package/dist/collection/components/eds-icons/eds-icon-star/eds-icon-star.js +1 -1
  98. package/dist/collection/components/eds-icons/eds-icon-success/eds-icon-success.js +1 -1
  99. package/dist/collection/components/eds-icons/eds-icon-thumbs-down/eds-icon-thumbs-down.js +1 -1
  100. package/dist/collection/components/eds-icons/eds-icon-thumbs-up/eds-icon-thumbs-up.js +1 -1
  101. package/dist/collection/components/eds-icons/eds-icon-tutorial/eds-icon-tutorial.js +1 -1
  102. package/dist/collection/components/eds-icons/eds-icon-unknown/eds-icon-unknown.js +1 -1
  103. package/dist/collection/components/eds-icons/eds-icon-updown/eds-icon-updown.js +1 -1
  104. package/dist/collection/components/eds-icons/eds-icon-user/eds-icon-user.js +1 -1
  105. package/dist/collection/components/eds-icons/social/eds-icon-bluesky/eds-icon-bluesky.js +1 -1
  106. package/dist/collection/components/eds-icons/social/eds-icon-facebook/eds-icon-facebook.js +1 -1
  107. package/dist/collection/components/eds-icons/social/eds-icon-linkedin/eds-icon-linkedin.js +1 -1
  108. package/dist/collection/components/eds-icons/social/eds-icon-mastodon/eds-icon-mastodon.js +1 -1
  109. package/dist/collection/components/eds-icons/social/eds-icon-twitter/eds-icon-twitter.js +1 -1
  110. package/dist/collection/components/eds-icons/social/eds-icon-youtube/eds-icon-youtube.js +1 -1
  111. package/dist/collection/components/eds-img/eds-img.js +2 -2
  112. package/dist/collection/components/eds-input-elements/eds-input/eds-input.js +2 -2
  113. package/dist/collection/components/eds-input-elements/eds-input-footer/eds-input-footer.js +1 -1
  114. package/dist/collection/components/eds-input-elements/eds-input-label/eds-input-label.js +1 -1
  115. package/dist/collection/components/eds-input-elements/eds-input-range/eds-input-range.js +1 -1
  116. package/dist/collection/components/eds-input-elements/eds-input-search/eds-input-search.js +1 -1
  117. package/dist/collection/components/eds-input-elements/eds-input-select/eds-input-select.js +2 -2
  118. package/dist/collection/components/eds-input-field/eds-input-field.js +121 -109
  119. package/dist/collection/components/eds-link/eds-link.js +1 -1
  120. package/dist/collection/components/eds-logo/eds-logo.js +1 -1
  121. package/dist/collection/components/eds-modal/eds-modal.js +2 -2
  122. package/dist/collection/components/eds-pagination/eds-pagination.js +1 -1
  123. package/dist/collection/components/eds-progress-bar/eds-progress-bar.js +1 -1
  124. package/dist/collection/components/eds-rating/eds-rating.js +1 -1
  125. package/dist/collection/components/eds-section/eds-section-core/eds-section-core.js +1 -1
  126. package/dist/collection/components/eds-section/eds-section-heading/eds-section-heading.js +2 -2
  127. package/dist/collection/components/eds-spinner/eds-spinner.js +1 -1
  128. package/dist/collection/components/eds-switch/eds-switch.js +2 -2
  129. package/dist/collection/components/eds-table/eds-table.css +5 -0
  130. package/dist/collection/components/eds-table/eds-table.js +171 -22
  131. package/dist/collection/eds-docs-ui/components-section/functional/react.js +1 -1
  132. package/dist/collection/shared-ui/eds-footer/eds-footer.js +2 -2
  133. package/dist/collection/shared-ui/eds-form/eds-form.js +35 -3
  134. package/dist/collection/shared-ui/eds-steps/eds-steps.js +2 -2
  135. package/dist/collection/shared-ui/eds-steps-v2/eds-steps-v2.css +17 -0
  136. package/dist/collection/shared-ui/eds-steps-v2/eds-steps-v2.js +20 -2
  137. package/dist/collection/shared-ui/eds-user/eds-user.js +1 -1
  138. package/dist/components/components-section.js +1 -1
  139. package/dist/components/components.css +7 -0
  140. package/dist/components/components.esm.js +1 -1
  141. package/dist/components/eds-accordion2.js +2 -2
  142. package/dist/components/eds-alert2.js +2 -2
  143. package/dist/components/eds-avatar2.js +1 -1
  144. package/dist/components/eds-block-break2.js +1 -1
  145. package/dist/components/eds-breadcrumb.js +1 -1
  146. package/dist/components/eds-button2.js +1 -1
  147. package/dist/components/eds-card-desc2.js +1 -1
  148. package/dist/components/eds-card-project.js +1 -1
  149. package/dist/components/eds-card-tags.js +1 -1
  150. package/dist/components/eds-card-title2.js +1 -1
  151. package/dist/components/eds-card-tool.js +1 -1
  152. package/dist/components/eds-code-block2.js +1 -1
  153. package/dist/components/eds-dropdown2.js +2 -2
  154. package/dist/components/eds-footer2.js +2 -2
  155. package/dist/components/eds-form.js +15 -3
  156. package/dist/components/eds-gauge.js +1 -1
  157. package/dist/components/eds-icon-arrow-diagonal.js +1 -1
  158. package/dist/components/eds-icon-arrow-right.js +1 -1
  159. package/dist/components/eds-icon-bluesky.js +1 -1
  160. package/dist/components/eds-icon-bookmark.js +1 -1
  161. package/dist/components/eds-icon-chevron-down.js +1 -1
  162. package/dist/components/eds-icon-chevron-left.js +1 -1
  163. package/dist/components/eds-icon-chevron-right.js +1 -1
  164. package/dist/components/eds-icon-chevron-up.js +1 -1
  165. package/dist/components/eds-icon-close.js +1 -1
  166. package/dist/components/eds-icon-copy.js +1 -1
  167. package/dist/components/eds-icon-eu.js +1 -1
  168. package/dist/components/eds-icon-external.js +1 -1
  169. package/dist/components/eds-icon-facebook.js +1 -1
  170. package/dist/components/eds-icon-gitlab.js +1 -1
  171. package/dist/components/eds-icon-linkedin.js +1 -1
  172. package/dist/components/eds-icon-loader.js +1 -1
  173. package/dist/components/eds-icon-mastodon.js +1 -1
  174. package/dist/components/eds-icon-menu.js +1 -1
  175. package/dist/components/eds-icon-minus.js +1 -1
  176. package/dist/components/eds-icon-more.js +1 -1
  177. package/dist/components/eds-icon-paper.js +1 -1
  178. package/dist/components/eds-icon-plus.js +1 -1
  179. package/dist/components/eds-icon-portal.js +1 -1
  180. package/dist/components/eds-icon-private.js +1 -1
  181. package/dist/components/eds-icon-public.js +1 -1
  182. package/dist/components/eds-icon-search.js +1 -1
  183. package/dist/components/eds-icon-star.js +1 -1
  184. package/dist/components/eds-icon-success.js +1 -1
  185. package/dist/components/eds-icon-thumbs-down.js +1 -1
  186. package/dist/components/eds-icon-thumbs-up.js +1 -1
  187. package/dist/components/eds-icon-tutorial.js +1 -1
  188. package/dist/components/eds-icon-twitter.js +1 -1
  189. package/dist/components/eds-icon-unknown.js +1 -1
  190. package/dist/components/eds-icon-updown.js +1 -1
  191. package/dist/components/eds-icon-user.js +1 -1
  192. package/dist/components/eds-icon-youtube.js +1 -1
  193. package/dist/components/eds-img2.js +2 -2
  194. package/dist/components/eds-input-field2.js +18 -27
  195. package/dist/components/eds-input-footer2.js +1 -1
  196. package/dist/components/eds-input-label2.js +1 -1
  197. package/dist/components/eds-input-range2.js +1 -1
  198. package/dist/components/eds-input-search2.js +1 -1
  199. package/dist/components/eds-input-select2.js +2 -2
  200. package/dist/components/eds-input2.js +2 -2
  201. package/dist/components/eds-link2.js +1 -1
  202. package/dist/components/eds-logo2.js +1 -1
  203. package/dist/components/eds-modal.js +2 -2
  204. package/dist/components/eds-pagination2.js +1 -1
  205. package/dist/components/eds-progress-bar2.js +1 -1
  206. package/dist/components/eds-rating2.js +1 -1
  207. package/dist/components/eds-section-core2.js +1 -1
  208. package/dist/components/eds-section-heading2.js +2 -2
  209. package/dist/components/eds-spinner2.js +1 -1
  210. package/dist/components/eds-steps-v2.js +5 -3
  211. package/dist/components/eds-steps2.js +2 -2
  212. package/dist/components/eds-switch.js +2 -2
  213. package/dist/components/eds-table2.js +85 -25
  214. package/dist/components/eds-user.js +1 -1
  215. package/dist/components/p-023bc47c.entry.js +1 -0
  216. package/dist/components/p-11efb1d1.entry.js +1 -0
  217. package/dist/components/p-14679a86.entry.js +1 -0
  218. package/dist/components/p-158c95bc.entry.js +1 -0
  219. package/dist/components/p-177103fd.entry.js +1 -0
  220. package/dist/components/{p-bfc62d3e.entry.js → p-17d39d66.entry.js} +1 -1
  221. package/dist/components/p-19d586e6.entry.js +1 -0
  222. package/dist/components/p-1de8401b.entry.js +1 -0
  223. package/dist/components/{p-8ad05566.entry.js → p-1f5c19b9.entry.js} +1 -1
  224. package/dist/components/p-233d3577.entry.js +1 -0
  225. package/dist/components/p-321a950b.entry.js +1 -0
  226. package/dist/components/p-38c9aee7.entry.js +1 -0
  227. package/dist/components/p-42295abe.entry.js +1 -0
  228. package/dist/components/p-424e91b3.entry.js +1 -0
  229. package/dist/components/p-43cff423.entry.js +1 -0
  230. package/dist/components/p-45f21238.entry.js +1 -0
  231. package/dist/components/p-4bdf1589.entry.js +1 -0
  232. package/dist/components/p-4dcdd4d9.entry.js +1 -0
  233. package/dist/components/p-4fad9296.entry.js +1 -0
  234. package/dist/components/p-50f43dfd.entry.js +1 -0
  235. package/dist/components/p-563d56c0.entry.js +1 -0
  236. package/dist/components/p-5827fd52.entry.js +1 -0
  237. package/dist/components/{p-7af6b832.entry.js → p-590fb0e7.entry.js} +1 -1
  238. package/dist/components/p-5c5dfc4a.entry.js +1 -0
  239. package/dist/components/p-66f4cdd9.entry.js +1 -0
  240. package/dist/components/p-6dc6f729.entry.js +1 -0
  241. package/dist/components/p-6f9ab63c.entry.js +1 -0
  242. package/dist/components/p-7502b8b4.entry.js +1 -0
  243. package/dist/components/p-750e3ec8.entry.js +1 -0
  244. package/dist/components/p-8c0b0121.entry.js +1 -0
  245. package/dist/components/p-95518776.entry.js +1 -0
  246. package/dist/components/p-99d9bb29.entry.js +1 -0
  247. package/dist/components/p-9a4b5746.entry.js +1 -0
  248. package/dist/components/p-9c823b5e.entry.js +1 -0
  249. package/dist/components/p-9d64d1fd.entry.js +1 -0
  250. package/dist/components/p-ab4447f6.entry.js +1 -0
  251. package/dist/components/p-b073d78f.entry.js +1 -0
  252. package/dist/components/{p-8b016d76.entry.js → p-b5e64725.entry.js} +1 -1
  253. package/dist/components/p-b630e51a.entry.js +1 -0
  254. package/dist/components/p-c91b4eec.entry.js +1 -0
  255. package/dist/components/{p-0eeddc13.entry.js → p-d05a09df.entry.js} +1 -1
  256. package/dist/components/{p-84fd3e40.entry.js → p-d0b1e963.entry.js} +1 -1
  257. package/dist/components/p-d25364db.entry.js +1 -0
  258. package/dist/components/p-d3bb444a.entry.js +1 -0
  259. package/dist/components/p-d4f239d7.entry.js +1 -0
  260. package/dist/components/{p-a81cba86.entry.js → p-deb9bbed.entry.js} +1 -1
  261. package/dist/components/p-df772a35.entry.js +1 -0
  262. package/dist/components/p-e5113509.entry.js +1 -0
  263. package/dist/components/p-e8f0d7fc.entry.js +1 -0
  264. package/dist/components/{p-abb2ad00.entry.js → p-f189be4f.entry.js} +1 -1
  265. package/dist/components/p-f221eca2.entry.js +1 -0
  266. package/dist/components/p-f2416727.entry.js +1 -0
  267. package/dist/components/{p-50ea5b07.entry.js → p-f7716080.entry.js} +1 -1
  268. package/dist/components/p-fd85675b.entry.js +1 -0
  269. package/dist/components/{p-ea97a94e.entry.js → p-fe167c78.entry.js} +2 -2
  270. package/dist/components/p-ffccfeb6.entry.js +1 -0
  271. package/dist/esm/components-section.entry.js +1 -1
  272. package/dist/esm/components.js +1 -1
  273. package/dist/esm/eds-accordion.entry.js +2 -2
  274. package/dist/esm/eds-alert.entry.js +2 -2
  275. package/dist/esm/{eds-avatar_34.entry.js → eds-avatar_28.entry.js} +494 -517
  276. package/dist/esm/eds-breadcrumb.entry.js +141 -0
  277. package/dist/esm/eds-card-desc_2.entry.js +72 -0
  278. package/dist/esm/eds-card-generic.entry.js +88 -0
  279. package/dist/esm/eds-card-project.entry.js +1 -1
  280. package/dist/esm/eds-card-tags.entry.js +1 -1
  281. package/dist/esm/eds-card-tool.entry.js +1 -1
  282. package/dist/esm/eds-code-block.entry.js +1 -1
  283. package/dist/esm/eds-gauge.entry.js +56 -0
  284. package/dist/esm/eds-icon-arrow-diagonal.entry.js +1 -1
  285. package/dist/esm/eds-icon-arrow-right.entry.js +1 -1
  286. package/dist/esm/eds-icon-bluesky.entry.js +1 -1
  287. package/dist/esm/eds-icon-bookmark.entry.js +1 -1
  288. package/dist/esm/eds-icon-chevron-down.entry.js +1 -1
  289. package/dist/esm/eds-icon-chevron-left.entry.js +1 -1
  290. package/dist/esm/eds-icon-chevron-right.entry.js +1 -1
  291. package/dist/esm/eds-icon-chevron-up.entry.js +1 -1
  292. package/dist/esm/eds-icon-close.entry.js +1 -1
  293. package/dist/esm/eds-icon-copy.entry.js +1 -1
  294. package/dist/esm/eds-icon-eu.entry.js +1 -1
  295. package/dist/esm/eds-icon-external.entry.js +1 -1
  296. package/dist/esm/eds-icon-facebook.entry.js +1 -1
  297. package/dist/esm/eds-icon-gitlab.entry.js +1 -1
  298. package/dist/esm/eds-icon-linkedin.entry.js +1 -1
  299. package/dist/esm/eds-icon-loader.entry.js +1 -1
  300. package/dist/esm/eds-icon-mastodon.entry.js +1 -1
  301. package/dist/esm/eds-icon-menu.entry.js +1 -1
  302. package/dist/esm/eds-icon-minus.entry.js +1 -1
  303. package/dist/esm/eds-icon-more.entry.js +1 -1
  304. package/dist/esm/eds-icon-paper.entry.js +1 -1
  305. package/dist/esm/eds-icon-plus.entry.js +1 -1
  306. package/dist/esm/eds-icon-portal.entry.js +1 -1
  307. package/dist/esm/eds-icon-private.entry.js +1 -1
  308. package/dist/esm/eds-icon-public.entry.js +1 -1
  309. package/dist/esm/eds-icon-search.entry.js +1 -1
  310. package/dist/esm/eds-icon-star.entry.js +1 -1
  311. package/dist/esm/eds-icon-success.entry.js +1 -1
  312. package/dist/esm/eds-icon-thumbs-down.entry.js +1 -1
  313. package/dist/esm/eds-icon-thumbs-up.entry.js +1 -1
  314. package/dist/esm/eds-icon-tutorial.entry.js +1 -1
  315. package/dist/esm/eds-icon-twitter.entry.js +1 -1
  316. package/dist/esm/eds-icon-unknown.entry.js +1 -1
  317. package/dist/esm/eds-icon-updown.entry.js +1 -1
  318. package/dist/esm/eds-icon-user.entry.js +1 -1
  319. package/dist/esm/eds-icon-youtube.entry.js +1 -1
  320. package/dist/esm/eds-pie.entry.js +102 -0
  321. package/dist/esm/eds-progress-bar.entry.js +1 -1
  322. package/dist/esm/eds-rating.entry.js +1 -1
  323. package/dist/esm/eds-section-core_2.entry.js +3 -3
  324. package/dist/esm/eds-spinner.entry.js +1 -1
  325. package/dist/esm/eds-switch.entry.js +2 -2
  326. package/dist/esm/eds-tooltip.entry.js +28 -0
  327. package/dist/esm/index-fdb33359.js +28 -4
  328. package/dist/esm/loader.js +1 -1
  329. package/dist/esm/token-spacing.entry.js +12 -0
  330. package/dist/hydrate/index.js +201 -148
  331. package/dist/hydrate/index.mjs +201 -148
  332. package/dist/types/components/eds-input-field/eds-input-field.d.ts +47 -72
  333. package/dist/types/components/eds-table/eds-table.d.ts +69 -0
  334. package/dist/types/components.d.ts +114 -78
  335. package/dist/types/shared-ui/eds-form/eds-form.d.ts +3 -0
  336. package/dist/types/shared-ui/eds-steps-v2/eds-steps-v2.d.ts +2 -0
  337. package/package.json +1 -1
  338. package/dist/cjs/eds-pagination_2.cjs.entry.js +0 -403
  339. package/dist/components/p-04b4e9d0.entry.js +0 -1
  340. package/dist/components/p-0863352c.entry.js +0 -1
  341. package/dist/components/p-0d6434e1.entry.js +0 -1
  342. package/dist/components/p-0e94a89f.entry.js +0 -1
  343. package/dist/components/p-100909ce.entry.js +0 -1
  344. package/dist/components/p-124b8747.entry.js +0 -1
  345. package/dist/components/p-14a223fe.entry.js +0 -1
  346. package/dist/components/p-18ceadd2.entry.js +0 -1
  347. package/dist/components/p-26d6679b.entry.js +0 -1
  348. package/dist/components/p-2b1b2026.entry.js +0 -1
  349. package/dist/components/p-3c642a30.entry.js +0 -1
  350. package/dist/components/p-46619042.entry.js +0 -1
  351. package/dist/components/p-511b23ec.entry.js +0 -1
  352. package/dist/components/p-5462923d.entry.js +0 -1
  353. package/dist/components/p-6199b8c0.entry.js +0 -1
  354. package/dist/components/p-624e653e.entry.js +0 -1
  355. package/dist/components/p-6ba42d02.entry.js +0 -1
  356. package/dist/components/p-6e929acb.entry.js +0 -1
  357. package/dist/components/p-6ede7101.entry.js +0 -1
  358. package/dist/components/p-70bac015.entry.js +0 -1
  359. package/dist/components/p-822ac246.entry.js +0 -1
  360. package/dist/components/p-848506b8.entry.js +0 -1
  361. package/dist/components/p-85634ad2.entry.js +0 -1
  362. package/dist/components/p-8bdf5841.entry.js +0 -1
  363. package/dist/components/p-8ff39cef.entry.js +0 -1
  364. package/dist/components/p-affe2b55.entry.js +0 -1
  365. package/dist/components/p-b31591db.entry.js +0 -1
  366. package/dist/components/p-b7efd666.entry.js +0 -1
  367. package/dist/components/p-ba784274.entry.js +0 -1
  368. package/dist/components/p-c0b22803.entry.js +0 -1
  369. package/dist/components/p-cdd491f5.entry.js +0 -1
  370. package/dist/components/p-d268c96b.entry.js +0 -1
  371. package/dist/components/p-d437bae2.entry.js +0 -1
  372. package/dist/components/p-d456e649.entry.js +0 -1
  373. package/dist/components/p-dae8f66a.entry.js +0 -1
  374. package/dist/components/p-e1791844.entry.js +0 -1
  375. package/dist/components/p-e82edd4a.entry.js +0 -1
  376. package/dist/components/p-e9f608a8.entry.js +0 -1
  377. package/dist/components/p-f26fd186.entry.js +0 -1
  378. package/dist/components/p-fe1cba17.entry.js +0 -1
  379. package/dist/esm/eds-pagination_2.entry.js +0 -398
@@ -1,7 +1,7 @@
1
- import { r as registerInstance, h, g as getElement, c as createEvent, H as Host } from './index-fdb33359.js';
2
- import { p as parseData } from './sharedUtils-a550989c.js';
1
+ import { r as registerInstance, h, g as getElement, c as createEvent } from './index-fdb33359.js';
3
2
  import { s as sendAnalytics } from './analytics-d99780e3.js';
4
3
  import { c as cva } from './index-39c58238.js';
4
+ import { p as parseData } from './sharedUtils-a550989c.js';
5
5
  import { h as hLogoColor } from './logo-color-7f1fd803.js';
6
6
  import { h as hLogoBlack, a as hLogoColorWhite, b as hLogoWhite, c as hLogoWhiteNoBg, v as vLogoColor, d as vLogoBlack, e as vLogoColorWhite, f as vLogoWhite, g as vLogoWhiteNoBg } from './logo-white-no-bg-f382f86f.js';
7
7
 
@@ -62,7 +62,7 @@ const EdsAvatar = class {
62
62
  * @returns {JSX.Element} The rendered avatar component.
63
63
  */
64
64
  render() {
65
- return (h("div", { key: '7c207192778b86ce5a24816637cf6e6239310eca', class: this.containerClasses }, this.picture ? (h("eds-img", { src: this.picture, width: 54, height: 54, sizes: "120px", alt: `${this.firstName} ${this.lastName}`, lazyload: true, withBg: true })) : (h("abbr", { title: this.computedInitials || `${this.firstName} ${this.lastName}`, class: "!no-underline f-ui-01" }, this.computedInitials))));
65
+ return (h("div", { key: 'b7eff7ae1a1dea3509041e39316b49b673dbdf17', class: this.containerClasses }, this.picture ? (h("eds-img", { src: this.picture, width: 54, height: 54, sizes: "120px", alt: `${this.firstName} ${this.lastName}`, lazyload: true, withBg: true })) : (h("abbr", { title: this.computedInitials || `${this.firstName} ${this.lastName}`, class: "!no-underline f-ui-01" }, this.computedInitials))));
66
66
  }
67
67
  };
68
68
  EdsAvatar.style = EdsAvatarStyle0;
@@ -76,148 +76,11 @@ const EdsBlockBreak = class {
76
76
  this.inverse = false;
77
77
  }
78
78
  render() {
79
- return h("hr", { key: 'fe48c93d6cb5648749bc050599fdfcb1712d1291', class: `${this.inverse ? 'border-default' : 'border-softer'} my-16 inline-block w-full border-t-2` });
79
+ return h("hr", { key: 'b604a776cae7edeee189e00af6993b42b57203f0', class: `${this.inverse ? 'border-default' : 'border-softer'} my-16 inline-block w-full border-t-2` });
80
80
  }
81
81
  };
82
82
  EdsBlockBreak.style = EdsBlockBreakStyle0;
83
83
 
84
- const edsBreadcrumbCss = "blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}.hidden{display:none}.block{display:block}.inline-block{display:inline-block}.flex{display:flex}.inline-flex{display:inline-flex}.items-center{align-items:center}.justify-center{justify-content:center}.space-x-2>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-right:calc(0.125rem * var(--tw-space-x-reverse));margin-left:calc(0.125rem * calc(1 - var(--tw-space-x-reverse)))}.px-2{padding-left:0.125rem;padding-right:0.125rem}.w-20{width:1.25rem}.w-28{width:1.75rem}.w-32{width:2rem}.w-44{width:2.75rem}.h-20{height:1.25rem}.h-24{height:1.5rem}.h-28{height:1.75rem}.h-32{height:2rem}@media (min-width: 750px){.md\\:block{display:block}}";
85
- const EdsBreadcrumbStyle0 = edsBreadcrumbCss;
86
-
87
- const EdsBreadcrumb = class {
88
- constructor(hostRef) {
89
- registerInstance(this, hostRef);
90
- /**
91
- * Updates the maximum number of visible items and tracks if the screen is small.
92
- */
93
- this.updateScreenSize = () => {
94
- const width = window.innerWidth;
95
- if (width < 769) {
96
- this.maxVisibleItems = 3;
97
- }
98
- else if (width <= 1024) {
99
- this.maxVisibleItems = 3;
100
- }
101
- else if (width <= 1280) {
102
- this.maxVisibleItems = 3;
103
- }
104
- else if (width <= 2200) {
105
- this.maxVisibleItems = 4;
106
- }
107
- else {
108
- this.maxVisibleItems = 6;
109
- }
110
- };
111
- this.items = [];
112
- this.intent = 'ghost';
113
- this.parsedItems = [];
114
- this.isSmallScreen = false;
115
- this.maxVisibleItems = 6;
116
- }
117
- /**
118
- * Watches for changes to the `items` prop and parses it.
119
- */
120
- parseItems(newValue) {
121
- this.parsedItems = parseData(newValue);
122
- }
123
- /**
124
- * Lifecycle method that runs when the component is about to be loaded.
125
- * It parses the initial `items` prop value.
126
- */
127
- componentWillLoad() {
128
- this.parseItems(this.items);
129
- this.updateScreenSize();
130
- window.addEventListener('resize', this.updateScreenSize);
131
- }
132
- disconnectedCallback() {
133
- window.removeEventListener('resize', this.updateScreenSize);
134
- }
135
- /**
136
- * Lifecycle method that runs when the component has fully loaded.
137
- * It emits a custom event for each `eds-link` element contained within the breadcrumb.
138
- */
139
- componentDidLoad() {
140
- var _a;
141
- const links = (_a = this.el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelectorAll('eds-link');
142
- links === null || links === void 0 ? void 0 : links.forEach((link) => {
143
- this.emitContext(link);
144
- });
145
- }
146
- /**
147
- * Emits a custom event called `parentContext` for a given link element.
148
- * This event provides context information about the breadcrumb component.
149
- *
150
- * @param linkElement - The link element to which the event will be dispatched.
151
- */
152
- emitContext(linkElement) {
153
- const event = new CustomEvent('parentContext', {
154
- detail: {
155
- componentName: this.el.tagName.toLowerCase(),
156
- identifier: null
157
- }
158
- });
159
- linkElement.dispatchEvent(event);
160
- }
161
- /**
162
- * Returns breadcrumb items with potential truncation if there are too many.
163
- * It inserts an ellipsis item where necessary.
164
- */
165
- getTruncatedItems() {
166
- const totalItems = this.parsedItems.length;
167
- const ellipsis = { label: '...', url: '', isHidden: true };
168
- if (totalItems > this.maxVisibleItems) {
169
- const firstItem = this.parsedItems[0];
170
- const lastItems = this.parsedItems.slice(-2);
171
- if (this.maxVisibleItems === 3) {
172
- return [firstItem, ellipsis, ...lastItems];
173
- }
174
- else if (this.maxVisibleItems === 4) {
175
- const middleItem = this.parsedItems[Math.floor(totalItems / 2)];
176
- return [firstItem, middleItem, ellipsis, ...lastItems];
177
- }
178
- }
179
- return this.parsedItems;
180
- }
181
- /**
182
- * Helper to determine the display label and full label.
183
- * If the label is longer than 15 characters and the item is not the current (last) item,
184
- * we display a truncated version but use the full label for aria attributes.
185
- */
186
- getLabels(item, isCurrent) {
187
- if (!isCurrent && item.label.length > 15) {
188
- return { displayLabel: `${item.label.slice(0, 15)}...`, fullLabel: item.label };
189
- }
190
- return { displayLabel: item.label, fullLabel: item.label };
191
- }
192
- /**
193
- * Render method for the breadcrumb component.
194
- * It creates a navigation element with an ordered list of breadcrumb links.
195
- * The last link is marked as the current page.
196
- */
197
- render() {
198
- const itemsToRender = this.getTruncatedItems();
199
- return (h("nav", { key: '2651e18e4c157f49e1da2ef93d4f68b9497118e4', "aria-label": "Breadcrumb" }, h("ol", { key: 'd1f5bb18bb35df9455a4c7a566850d59eb657242', class: "flex items-center space-x-2" }, itemsToRender.map((item, index) => {
200
- const isLast = index === itemsToRender.length - 1;
201
- return (h("li", { class: "flex items-center" }, !item.isHidden ? ((() => {
202
- const { fullLabel } = this.getLabels(item, isLast);
203
- const linkIntent = isLast
204
- ? this.intent === 'strong'
205
- ? 'weak'
206
- : this.intent === 'weak'
207
- ? 'strong'
208
- : this.intent
209
- : this.intent;
210
- return (h("eds-link", Object.assign({ label: fullLabel, url: item.url, intent: linkIntent, disabled: isLast, current: isLast, "aria-label": fullLabel, size: "small", "icon-small": "false" }, (isLast ? { 'aria-current': 'page' } : {}))));
211
- })()) : (h("eds-link", { label: "...", url: "#", intent: "strong", current: false, "aria-label": "...", size: "small", "icon-small": "false", icon: "chevron-right" })), !isLast && !item.isHidden && (h("eds-icon-wrapper", { icon: "chevron-right", class: "w-20 h-20" }))));
212
- }))));
213
- }
214
- get el() { return getElement(this); }
215
- static get watchers() { return {
216
- "items": ["parseItems"]
217
- }; }
218
- };
219
- EdsBreadcrumb.style = EdsBreadcrumbStyle0;
220
-
221
84
  const edsButtonCss = "*,\n::before,\n::after {\n box-sizing: border-box;\n border-width: 0;\n border-style: solid;\n border-color: currentColor;\n}\n\na {\n color: inherit;\n text-decoration: inherit;\n}\n\n/*\n 1. Change the font styles in all browsers.\n 2. Remove the margin in Firefox and Safari.\n 3. Remove default padding in all browsers.\n */\nbutton,\ninput,\noptgroup,\nselect,\ntextarea {\n font-family: inherit;\n font-feature-settings: inherit;\n font-variation-settings: inherit;\n font-size: 100%;\n font-weight: inherit;\n line-height: inherit;\n letter-spacing: inherit;\n color: inherit;\n margin: 0;\n padding: 0;\n}\n\n/*\n Remove the inheritance of text transform in Edge and Firefox.\n */\nbutton,\nselect {\n text-transform: none;\n}\n\n/*\n 1. Correct the inability to style clickable types in iOS and Safari.\n 2. Remove default button styles.\n */\nbutton,\ninput:where([type='button']),\ninput:where([type='reset']),\ninput:where([type='submit']) {\n -webkit-appearance: button;\n /* 1 */\n background-color: transparent;\n /* 2 */\n background-image: none;\n /* 2 */\n}\n\np {\n margin: 0;\n}\n\n/*\n Set the default cursor for buttons.\n */\nbutton,\n[role=\"button\"] {\n cursor: pointer;\n}\n\n/*\n Make sure disabled buttons don't get the pointer cursor.\n */\n:disabled {\n cursor: default;\n}\n\n/* Make elements with the HTML hidden attribute stay hidden by default */\n[hidden] {\n display: none;\n}\n\n.f-body-01 {\n font-family: var(--f-body-01-fontFamily);\n font-weight: var(--f-body-01-fontWeight);\n font-size: var(--f-body-01-fontSize);\n line-height: var(--f-body-01-lineHeight);\n letter-spacing: var(--f-body-01-letterSpacing);\n}\n\n.f-body-02 {\n font-family: var(--f-body-02-fontFamily);\n font-weight: var(--f-body-02-fontWeight);\n font-size: var(--f-body-02-fontSize);\n line-height: var(--f-body-02-lineHeight);\n letter-spacing: var(--f-body-02-letterSpacing);\n}\n\n.f-ui-01 {\n font-family: var(--f-ui-01-fontFamily);\n font-weight: var(--f-ui-01-fontWeight);\n font-size: var(--f-ui-01-fontSize);\n line-height: var(--f-ui-01-lineHeight);\n letter-spacing: var(--f-ui-01-letterSpacing);\n}\n\n.f-ui-02 {\n font-family: var(--f-ui-02-fontFamily);\n font-weight: var(--f-ui-02-fontWeight);\n font-size: var(--f-ui-02-fontSize);\n line-height: var(--f-ui-02-lineHeight);\n letter-spacing: var(--f-ui-02-letterSpacing);\n}\n\n.border-inside {\n position: relative;\n\n &::after {\n pointer-events: none;\n }\n\n &::after {\n position: absolute;\n }\n\n &::after {\n inset: 0rem;\n }\n\n &::after {\n z-index: 1;\n }\n\n &::after {\n border-radius: 8px;\n }\n\n &::after {\n border-width: 1px;\n }\n\n &::after {\n border-width: 2px;\n }\n\n &::after {\n border-color: rgba(0, 0, 0, .1);\n }\n\n &::after {\n content: '';\n }\n}\n\n.border-inside-inverse {\n &::after {\n border-color: rgba(255, 255, 255, 0.3);\n }\n\n &::after {\n content: '';\n }\n}\n\n.border-inside-pill {\n &::after {\n border-radius: 100px;\n }\n\n &::after {\n content: '';\n }\n}\n\n.loader {\n box-sizing: border-box;\n display: inline-block;\n height: 1rem;\n width: 1rem;\n}\n\n@keyframes spin {\n to {\n transform: rotate(360deg);\n }\n}\n\n.loader {\n animation: spin 1s linear infinite;\n border-radius: 9999px;\n border: 3px solid rgba(0, 0, 0, .3);\n border-bottom-color: #000;\n}\n\n/** region TRANSITIONS */\n.effect-color {\n transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transition-duration: 300ms;\n transition-timing-function: cubic-bezier(0, 0, 0.2, 1);\n}\n\n.effect-focus {\n outline-width: 3px;\n outline-offset: 2px;\n outline-color: var(--green-500);\n}\n\n.effect-focus:focus-visible {\n outline-style: solid;\n}\n\n.effect-focus-within {\n outline-width: 3px;\n outline-offset: 2px;\n outline-color: var(--green-500);\n}\n\n.effect-focus-within:focus-within {\n outline-style: solid;\n}\n\n.sr-only {\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n margin: -1px;\n overflow: hidden;\n clip: rect(0, 0, 0, 0);\n white-space: nowrap;\n border-width: 0;\n}\n\n.pointer-events-none {\n pointer-events: none;\n}\n\n.static {\n position: static;\n}\n\n.fixed {\n position: fixed;\n}\n\n.absolute {\n position: absolute;\n}\n\n.relative {\n position: relative;\n}\n\n.sticky {\n position: sticky;\n}\n\n.inset-0 {\n inset: 0rem;\n}\n\n.inset-x-16 {\n left: 1rem;\n right: 1rem;\n}\n\n.-top-8 {\n top: -0.5rem;\n}\n\n.left-0 {\n left: 0rem;\n}\n\n.left-1\\/2 {\n left: 50%;\n}\n\n.left-4 {\n left: 0.25rem;\n}\n\n.left-\\[4px\\] {\n left: 4px;\n}\n\n.right-0 {\n right: 0rem;\n}\n\n.right-4 {\n right: 0.25rem;\n}\n\n.right-8 {\n right: 0.5rem;\n}\n\n.right-\\[6px\\] {\n right: 6px;\n}\n\n.top-0 {\n top: 0rem;\n}\n\n.top-1\\/2 {\n top: 50%;\n}\n\n.m-0 {\n margin: 0rem;\n}\n\n.mx-auto {\n margin-left: auto;\n margin-right: auto;\n}\n\n.-ml-16 {\n margin-left: -1rem;\n}\n\n.-mr-16 {\n margin-right: -1rem;\n}\n\n.ml-0 {\n margin-left: 0rem;\n}\n\n.ml-4 {\n margin-left: 0.25rem;\n}\n\n.ml-64 {\n margin-left: 4rem;\n}\n\n.ml-8 {\n margin-left: 0.5rem;\n}\n\n.ml-auto {\n margin-left: auto;\n}\n\n.mr-4 {\n margin-right: 0.25rem;\n}\n\n.mr-8 {\n margin-right: 0.5rem;\n}\n\n.mr-auto {\n margin-right: auto;\n}\n\n.block {\n display: block;\n}\n\n.inline-block {\n display: inline-block;\n}\n\n.inline {\n display: inline;\n}\n\n.flex {\n display: flex;\n}\n\n.inline-flex {\n display: inline-flex;\n}\n\n.hidden {\n display: none;\n}\n\n.h-20 {\n height: 1.25rem;\n}\n\n.h-24 {\n height: 1.5rem;\n}\n\n.h-36 {\n height: 2.25rem;\n}\n\n.h-44 {\n height: 2.75rem;\n}\n\n.h-auto {\n height: auto;\n}\n\n.h-full {\n height: 100%;\n}\n\n.\\!min-h-20 {\n min-height: 1.25rem !important;\n}\n\n.min-h-screen {\n min-height: 100vh;\n}\n\n.w-20 {\n width: 1.25rem;\n}\n\n.w-full {\n width: 100%;\n}\n\n.flex-none {\n flex: none;\n}\n\n.grow {\n flex-grow: 1;\n}\n\n.cursor-pointer {\n cursor: pointer;\n}\n\n.resize {\n resize: both;\n}\n\n.flex-row {\n flex-direction: row;\n}\n\n.flex-row-reverse {\n flex-direction: row-reverse;\n}\n\n.flex-col {\n flex-direction: column;\n}\n\n.flex-wrap {\n flex-wrap: wrap;\n}\n\n.items-center {\n align-items: center;\n}\n\n.justify-center {\n justify-content: center;\n}\n\n.justify-between {\n justify-content: space-between;\n}\n\n.space-x-2> :not([hidden])~ :not([hidden]) {\n --tw-space-x-reverse: 0;\n margin-right: calc(0.125rem * var(--tw-space-x-reverse));\n margin-left: calc(0.125rem * calc(1 - var(--tw-space-x-reverse)));\n}\n\n.overflow-hidden {\n overflow: hidden;\n}\n\n.overflow-x-auto {\n overflow-x: auto;\n}\n\n.overflow-x-hidden {\n overflow-x: hidden;\n}\n\n.overflow-y-scroll {\n overflow-y: scroll;\n}\n\n.whitespace-nowrap {\n white-space: nowrap;\n}\n\n.break-words {\n overflow-wrap: break-word;\n}\n\n.rounded {\n border-radius: 0.25rem;\n}\n\n.rounded-full {\n border-radius: 9999px;\n}\n\n.rounded-lg {\n border-radius: 16px;\n}\n\n.rounded-md {\n border-radius: 12px;\n}\n\n.rounded-pill {\n border-radius: 100px;\n}\n\n.rounded-sm {\n border-radius: 8px;\n}\n\n.rounded-xxs {\n border-radius: 2px;\n}\n\n.border {\n border-width: 1px;\n}\n\n.border-\\[\\#0034CB\\] {\n --tw-border-opacity: 1;\n border-color: rgb(0 52 203 / var(--tw-border-opacity));\n}\n\n.border-\\[\\#d2d2d2\\] {\n --tw-border-opacity: 1;\n border-color: rgb(210 210 210 / var(--tw-border-opacity));\n}\n\n.border-softest {\n border-color: rgba(0, 0, 0, .05);\n}\n\n.border-b-softer {\n border-bottom-color: rgba(0, 0, 0, .1);\n}\n\n.\\!bg-accent-dark {\n background-color: var(--green-600) !important;\n}\n\n.\\!bg-darker {\n background-color: var(--grey-400) !important;\n}\n\n.\\!bg-strong-dark {\n background-color: var(--grey-800) !important;\n}\n\n.bg-accent {\n background-color: var(--green-500);\n}\n\n.bg-accent-dark {\n background-color: var(--green-600);\n}\n\n.bg-dark {\n background-color: var(--grey-300);\n}\n\n.bg-darker {\n background-color: var(--grey-400);\n}\n\n.bg-overlay {\n background-color: rgba(0, 0, 0, 0.25);\n}\n\n.bg-strong {\n background-color: var(--grey-700);\n}\n\n.bg-strong-dark {\n background-color: var(--grey-800);\n}\n\n.bg-stronger {\n background-color: var(--grey-900);\n}\n\n.bg-strongest {\n background-color: var(--black);\n}\n\n.p-12 {\n padding: 0.75rem;\n}\n\n.p-6 {\n padding: 0.375rem;\n}\n\n.p-8 {\n padding: 0.5rem;\n}\n\n.\\!px-0 {\n padding-left: 0rem !important;\n padding-right: 0rem !important;\n}\n\n.px-12 {\n padding-left: 0.75rem;\n padding-right: 0.75rem;\n}\n\n.px-16 {\n padding-left: 1rem;\n padding-right: 1rem;\n}\n\n.py-8 {\n padding-top: 0.5rem;\n padding-bottom: 0.5rem;\n}\n\n.pl-4 {\n padding-left: 0.25rem;\n}\n\n.pl-8 {\n padding-left: 0.5rem;\n}\n\n.pr-4 {\n padding-right: 0.25rem;\n}\n\n.pr-8 {\n padding-right: 0.5rem;\n}\n\n.\\!text-current {\n color: currentColor !important;\n}\n\n.text-accent {\n color: var(--green-500);\n}\n\n.text-current {\n color: currentColor;\n}\n\n.text-default {\n color: var(--black);\n}\n\n.text-inverse {\n color: var(--white);\n}\n\n.text-lightest {\n color: var(--grey-500);\n}\n\n.opacity-0 {\n opacity: 0;\n}\n\n.shadow {\n --tw-shadow: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);\n --tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);\n box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);\n}\n\n.shadow-accent {\n --tw-shadow: 0px 0px 12px rgba(0, 201, 89, 0.6);\n --tw-shadow-colored: 0px 0px 12px var(--tw-shadow-color);\n box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);\n}\n\n.underline-offset-4 {\n text-underline-offset: 0.2em;\n}\n\n.\\@container {\n container-type: inline-size;\n}\n\n.after\\:effect-opacity::after {\n transition-property: opacity;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transition-duration: 300ms;\n transition-timing-function: cubic-bezier(0, 0, 0.2, 1);\n}\n\n.even\\:bg-inverse-softer:nth-child(even) {\n background-color: rgba(255, 255, 255, .15);\n}\n\n.invalid\\:text-lightest:invalid {\n color: var(--grey-500);\n}\n\n.focus-within\\:bg-transparent:focus-within {\n background-color: var(--transparent);\n}\n\n.hover\\:bg-accent-dark:hover {\n background-color: var(--green-600);\n}\n\n.hover\\:bg-dark:hover {\n background-color: var(--grey-300);\n}\n\n.hover\\:bg-darker:hover {\n background-color: var(--grey-400);\n}\n\n.hover\\:bg-default:hover {\n background-color: var(--grey-200);\n}\n\n.hover\\:bg-inverse:hover {\n background-color: var(--white);\n}\n\n.hover\\:bg-strong-dark:hover {\n background-color: var(--grey-800);\n}\n\n.hover\\:bg-transparent:hover {\n background-color: var(--transparent);\n}\n\n.hover\\:text-default:hover {\n color: var(--black);\n}\n\n.hover\\:text-lighter:hover {\n color: var(--grey-600);\n}\n\n.hover\\:\\!underline:hover {\n text-decoration-line: underline !important;\n}\n\n.hover\\:no-underline:hover {\n text-decoration-line: none;\n}\n\n.hover\\:shadow-hover:hover {\n --tw-shadow: 0px 0px 16px rgba(0, 0, 0, 0.2);\n --tw-shadow-colored: 0px 0px 16px var(--tw-shadow-color);\n box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);\n}\n\n.focus\\:shadow-none:focus {\n --tw-shadow: 0 0 #0000;\n --tw-shadow-colored: 0 0 #0000;\n box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);\n}\n\n.focus\\:outline-none:focus {\n outline: 2px solid transparent;\n outline-offset: 2px;\n}\n\n.disabled\\:cursor-not-allowed:disabled {\n cursor: not-allowed;\n}\n\n.disabled\\:bg-dark:disabled {\n background-color: var(--grey-300);\n}\n\n.disabled\\:text-lightest:disabled {\n color: var(--grey-500);\n}\n\n.aria-disabled\\:cursor-not-allowed[aria-disabled=\"true\"] {\n cursor: not-allowed;\n}\n\n.aria-disabled\\:\\!border-transparent[aria-disabled=\"true\"] {\n border-color: var(--transparent) !important;\n}\n\n.aria-disabled\\:bg-dark[aria-disabled=\"true\"] {\n background-color: var(--grey-300);\n}\n\n.aria-disabled\\:bg-transparent[aria-disabled=\"true\"] {\n background-color: var(--transparent);\n}\n\n.aria-disabled\\:text-light[aria-disabled=\"true\"] {\n color: var(--grey-700);\n}\n\n.aria-disabled\\:text-lightest[aria-disabled=\"true\"] {\n color: var(--grey-500);\n}\n\n.aria-disabled\\:line-through[aria-disabled=\"true\"] {\n text-decoration-line: line-through;\n}\n\n.aria-disabled\\:shadow-none[aria-disabled=\"true\"] {\n --tw-shadow: 0 0 #0000;\n --tw-shadow-colored: 0 0 #0000;\n box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);\n}\n\n.aria-current-page\\:bg-darker[aria-current=\"page\"] {\n background-color: var(--grey-400);\n}\n\n.after\\:absolute::after {\n position: absolute;\n}\n\n.after\\:inset-0::after {\n inset: 0rem;\n}\n\n.after\\:inset-x-0::after {\n left: 0rem;\n right: 0rem;\n}\n\n.after\\:bottom-0::after {\n bottom: 0rem;\n}\n\n.after\\:left-16::after {\n left: 1rem;\n}\n\n.after\\:right-16::after {\n right: 1rem;\n}\n\n.after\\:z-10::after {\n z-index: 10;\n}\n\n.after\\:rounded-lg::after {\n border-radius: 16px;\n}\n\n.after\\:rounded-t-lg::after {\n border-top-left-radius: 16px;\n border-top-right-radius: 16px;\n}\n\n.after\\:border-3::after {\n border-width: 3px;\n}\n\n.after\\:border-b-2::after {\n border-bottom-width: 2px;\n}\n\n.after\\:\\!border-transparent::after {\n border-color: var(--transparent) !important;\n}\n\n.after\\:border-accent::after {\n border-color: var(--green-500);\n}\n\n.after\\:border-softest::after {\n border-color: rgba(0, 0, 0, .05);\n}\n\n.after\\:opacity-0::after {\n opacity: 0;\n}\n\n.after\\:content-\\[\\'\\'\\]::after {\n --tw-content: '';\n content: var(--tw-content);\n}\n\n.hover\\:after\\:\\!border-transparent:hover::after {\n border-color: var(--transparent) !important;\n}\n\n.hover\\:after\\:opacity-100:hover::after {\n opacity: 1;\n}\n\n.focus-visible\\:after\\:opacity-100:focus-visible::after {\n opacity: 1;\n}\n\n.aria-disabled\\:after\\:\\!border-transparent[aria-disabled=\"true\"]::after {\n border-color: var(--transparent) !important;\n}\n\n.hover\\:before\\:opacity-100:hover::before {\n opacity: 1;\n}";
222
85
  const EdsButtonStyle0 = edsButtonCss;
223
86
 
@@ -376,7 +239,7 @@ const EdsButton = class {
376
239
  iconSmall: this.iconSmall
377
240
  });
378
241
  const ElementType = this.elementType;
379
- return (h(ElementType, { key: 'b51281f8946bbf5a22b8fec9ec2d66ea4697bb23', "aria-label": this.label || this.ariaLabel || undefined, "aria-disabled": this.elementType === 'button' ? this.disabled : undefined, disabled: this.elementType === 'button' ? this.disabled : undefined, class: `${classes || ''} ${this.extraClass || ''}`, onClick: (event) => this.handleClick(event) }, this.label && h("span", { key: 'c1df49fe70a7930d4c87f8130ef1102e503cd0fc', class: this.loading ? 'opacity-0' : '' }, this.label), this.loading && (h("span", { key: 'e56515527843d11be53d66aa7598fc2fdf94d054', class: "absolute inset-0 flex items-center justify-center" }, h("span", { key: 'a50932ac2d5db24d50a3b10a30d07043e0354c62', class: "loader", style: {
242
+ return (h(ElementType, { key: 'ecdd901c70578c07ef094aadbcd287588d4ba705', "aria-label": this.label || this.ariaLabel || undefined, "aria-disabled": this.elementType === 'button' ? this.disabled : undefined, disabled: this.elementType === 'button' ? this.disabled : undefined, class: `${classes || ''} ${this.extraClass || ''}`, onClick: (event) => this.handleClick(event) }, this.label && h("span", { key: 'af8d0ca1c5c3e54f9db3066931a69d3a5a812666', class: this.loading ? 'opacity-0' : '' }, this.label), this.loading && (h("span", { key: '29b72c15e80f46e023f829568f58d8a8dca82b78', class: "absolute inset-0 flex items-center justify-center" }, h("span", { key: 'bad8bd059b1312ca3f5ab173b1203eb395e9bbd8', class: "loader", style: {
380
243
  border: `3px solid ${this.intent === 'secondary' ? 'rgba(255, 255, 255, .3)' : 'rgba(0, 0, 0, .3)'}`,
381
244
  borderBottomColor: this.intent === 'secondary' ? '#fff' : '#000'
382
245
  } }))), this.icon ? (h("eds-icon-wrapper", { class: `
@@ -388,158 +251,6 @@ const EdsButton = class {
388
251
  };
389
252
  EdsButton.style = EdsButtonStyle0;
390
253
 
391
- const edsCardDescCss = ".f-ui-03-light{font-family:var(--f-ui-03-light-fontFamily);font-weight:var(--f-ui-03-light-fontWeight);font-size:var(--f-ui-03-light-fontSize);line-height:var(--f-ui-03-light-lineHeight);letter-spacing:var(--f-ui-03-light-letterSpacing)}.text-light{color:var(--grey-700)}.line-clamp-1{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:1}.line-clamp-2{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2}.line-clamp-3{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3}.line-clamp-4{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:4}";
392
- const EdsCardDescStyle0 = edsCardDescCss;
393
-
394
- const EdsCardDesc = class {
395
- constructor(hostRef) {
396
- registerInstance(this, hostRef);
397
- this.description = undefined;
398
- this.truncate = true;
399
- this.truncateLines = '3';
400
- }
401
- getTruncateClass() {
402
- return this.truncate && this.truncateLines ? `line-clamp-${this.truncateLines}` : '';
403
- }
404
- render() {
405
- return (h("p", { key: 'f2eec4a947de74a1e36bb13fdd2bfeb7a9f711b3', class: "text-light f-ui-03-light" }, h("span", { key: '444ffa34c3e8cac12af2f396144fd182d49c6baa', class: this.getTruncateClass() }, this.description)));
406
- }
407
- };
408
- EdsCardDesc.style = EdsCardDescStyle0;
409
-
410
- const edsCardGenericCss = ".h-auto{height:auto}.h-full{height:100%}.\\!min-h-20{min-height:1.25rem !important}.min-h-120{min-height:120px}.min-h-156{min-height:156px}.bg-default{background-color:var(--grey-200)}.bg-inverse{background-color:var(--white)}.effect-shadow{transition-property:box-shadow;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:300ms;transition-timing-function:cubic-bezier(0, 0, 0.2, 1)}.hover\\:shadow-hover:hover{--tw-shadow:0px 0px 16px rgba(0, 0, 0, 0.2);--tw-shadow-colored:0px 0px 16px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)}.cursor-pointer{cursor:pointer}.border-soft{border-color:rgba(0, 0, 0, .15)}.border-softer{border:2px solid rgba(0, 0, 0, .1)}.effect-focus-within{outline-width:3px;outline-offset:2px;outline-color:var(--green-500)}.effect-focus-within:focus-within{outline-style:solid}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.grow{flex-grow:1}.flex-col{flex-direction:column}.rounded-lg{border-radius:16px}.border-2{border-width:2px}.p-12{padding:0.75rem}.p-16{padding:1rem}.mt-6{margin-top:0.375rem}.mt-8{margin-top:0.5rem}.gap-x-1{-moz-column-gap:0.0625rem;column-gap:0.0625rem}.gap-y-4{row-gap:0.25rem}.order-first{order:-9999}.mb-10{margin-bottom:0.625rem}.mb-12{margin-bottom:0.75rem}.mx-auto{margin-left:auto;margin-right:auto}.block{display:block}";
411
- const EdsCardGenericStyle0 = edsCardGenericCss;
412
-
413
- const EdsCardGeneric = class {
414
- constructor(hostRef) {
415
- registerInstance(this, hostRef);
416
- this.parentContext = null; // Accepts the entire event detail or null
417
- this.cardTitle = undefined;
418
- this.url = undefined;
419
- this.description = undefined;
420
- this.image = undefined;
421
- this.avatar = undefined;
422
- this.shortAbbreviation = undefined;
423
- this.headingLevel = 'h3';
424
- this.tags = [];
425
- this.tiny = false;
426
- this.bg = true;
427
- this.withHover = true;
428
- this.hierarchy = true;
429
- this.parsedImage = null;
430
- }
431
- componentWillLoad() {
432
- if (this.image) {
433
- try {
434
- if (typeof this.image === 'object') {
435
- // If image is already an object, assign it directly
436
- this.parsedImage = this.image;
437
- }
438
- else if (typeof this.image === 'string') {
439
- // If image is a string, try to parse it
440
- this.parsedImage = JSON.parse(this.image);
441
- }
442
- }
443
- catch (error) {
444
- // eslint-disable-next-line
445
- console.error('Error parsing image prop:', error);
446
- this.parsedImage = {}; // Assign a fallback empty object in case of an error
447
- }
448
- }
449
- }
450
- handleParentContext(event) {
451
- if (event.target !== this.el) {
452
- // Ignore the event if it's not targeted at this specific instance
453
- return;
454
- }
455
- //console.log(event.detail);
456
- this.parentContext = event.detail;
457
- event.stopPropagation();
458
- }
459
- /**
460
- * Parses the `tags` prop into an array of link objects.
461
- * Returns an empty array if parsing fails or if `tags` is not a valid JSON string or object.
462
- *
463
- * @returns {any[]} Array of parsed link objects
464
- */
465
- get parsedTags() {
466
- return parseData(this.tags);
467
- }
468
- articleClasses() {
469
- return [
470
- this.description ? (this.tiny ? 'min-h-120' : 'min-h-156') : 'h-auto',
471
- this.bg ? 'bg-inverse' : 'bg-default',
472
- this.withHover ? 'effect-shadow hover:shadow-hover cursor-pointer' : '',
473
- 'border-softer effect-focus-within relative flex grow flex-col rounded-lg border-2 p-16'
474
- ].join(' ');
475
- }
476
- handleClick() {
477
- var _a;
478
- sendAnalytics({
479
- category: 'ui-component',
480
- parentContext: this.parentContext,
481
- tag: this.el.tagName.toLowerCase(),
482
- name: ((_a = this.cardTitle) === null || _a === void 0 ? void 0 : _a.toLowerCase()) || '',
483
- action: 'click'
484
- });
485
- }
486
- render() {
487
- return (h("article", { key: '440a448c841370838c0c66610bd1266b46f66541', class: this.articleClasses(), onClick: () => this.handleClick() }, h("eds-card-title", { key: '292d93a9a993c6dcbfd276097a21d3984b1794c4', "heading-level": this.headingLevel, titleClass: this.image ? 'f-ui-01' : undefined, "card-title": this.cardTitle, url: this.url, hierarchy: this.hierarchy }), this.description && (h("eds-card-desc", { key: '4b304cc3c65a42b3b1bcbebd9968c45e79cdabf7', class: "mt-8", "truncate-lines": "3", description: this.description })), this.parsedImage ? (h("eds-img", Object.assign({ class: "mt-8 block mx-auto" }, this.parsedImage))) : this.avatar || this.shortAbbreviation ? (h("eds-avatar", { class: "order-first mb-12", picture: this.avatar, initials: this.shortAbbreviation })) : null, h("div", { key: '40388913b1abb9308f42469956342efdbb48d508', class: "flex flex-wrap gap-y-4 gap-x-1" }, this.parsedTags.map((tag, index) => (h("eds-tag", { key: index, intent: tag.style, label: tag.label })))), ' '));
488
- }
489
- get el() { return getElement(this); }
490
- };
491
- EdsCardGeneric.style = EdsCardGenericStyle0;
492
-
493
- const edsCardTitleCss = "a{all:unset;display:inline;color:inherit;text-decoration:none;cursor:pointer}h1,h2,h3,h4,h5,h6{margin:0}.f-heading-01{font-family:var(--f-heading-01-fontFamily);font-weight:var(--f-heading-01-fontWeight);font-size:var(--f-heading-01-fontSize);line-height:var(--f-heading-01-lineHeight);letter-spacing:var(--f-heading-01-letterSpacing)}.f-heading-02{font-family:var(--f-heading-02-fontFamily);font-weight:var(--f-heading-02-fontWeight);font-size:var(--f-heading-02-fontSize);line-height:var(--f-heading-02-lineHeight);letter-spacing:var(--f-heading-02-letterSpacing)}.f-heading-03{font-family:var(--f-heading-03-fontFamily);font-weight:var(--f-heading-03-fontWeight);font-size:var(--f-heading-03-fontSize);line-height:var(--f-heading-03-lineHeight);letter-spacing:var(--f-heading-03-letterSpacing)}.f-heading-04{font-family:var(--f-heading-04-fontFamily);font-weight:var(--f-heading-04-fontWeight);font-size:var(--f-heading-04-fontSize);line-height:var(--f-heading-04-lineHeight);letter-spacing:var(--f-heading-04-letterSpacing)}.f-heading-05{font-family:var(--f-heading-05-fontFamily);font-weight:var(--f-heading-05-fontWeight);font-size:var(--f-heading-05-fontSize);line-height:var(--f-heading-05-lineHeight);letter-spacing:var(--f-heading-05-letterSpacing)}.f-heading-06{font-family:var(--f-heading-06-fontFamily);font-weight:var(--f-heading-06-fontWeight);font-size:var(--f-heading-06-fontSize);line-height:var(--f-heading-06-lineHeight);letter-spacing:var(--f-heading-06-letterSpacing)}.break-words{overflow-wrap:break-word}.after\\:absolute::after{position:absolute}.after\\:inset-0::after{inset:0rem}.after\\:z-10::after{z-index:10}.after\\:content-\\[\\'\\'\\]::after{--tw-content:'';content:var(--tw-content)}.focus\\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}";
494
- const EdsCardTitleStyle0 = edsCardTitleCss;
495
-
496
- const EdsCardTitle = class {
497
- constructor(hostRef) {
498
- registerInstance(this, hostRef);
499
- this.url = undefined;
500
- this.titleClass = undefined;
501
- this.headingLevel = 'h3';
502
- this.externalLink = false;
503
- this.cardTitle = undefined;
504
- this.hierarchy = true;
505
- }
506
- /**
507
- * Dynamically generate the title class based on the heading level.
508
- */
509
- getTitleClass() {
510
- const levelMap = this.hierarchy
511
- ? {
512
- h1: '05',
513
- h2: '05',
514
- h3: '05',
515
- h4: '05',
516
- h5: '05',
517
- h6: '06'
518
- }
519
- : {
520
- h1: '01',
521
- h2: '02',
522
- h3: '03',
523
- h4: '04',
524
- h5: '05',
525
- h6: '06'
526
- };
527
- return `f-heading-${levelMap[this.headingLevel]}`;
528
- }
529
- /*private getTag() {
530
- if (this.url) {
531
- return 'a';
532
- }
533
- return 'span';
534
- }*/
535
- render() {
536
- //const Tag = this.getTag();
537
- const Heading = this.headingLevel;
538
- return (h(Heading, { key: '9914950b1581456a3a875ed7383975710c05fa7f', class: this.getTitleClass() }, h("a", { key: '9b3298d8bacd8fbaecd8c714329ef5e6ac7192c7', class: "break-words after:absolute after:inset-0 after:z-10 after:content-[''] focus:outline-none", href: this.url, target: this.externalLink ? '_blank' : undefined, rel: this.externalLink ? 'noopener noreferrer' : undefined }, this.cardTitle)));
539
- }
540
- };
541
- EdsCardTitle.style = EdsCardTitleStyle0;
542
-
543
254
  const edsDropdownCss = ".z-focus{z-index:99}.relative{position:relative}.shadow-small{--tw-shadow:0px 1.5px 2px rgba(0, 0, 0, 0.1);--tw-shadow-colored:0px 1.5px 2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)}.bg-inverse{background-color:var(--white)}.border-softest{border:2px solid rgba(0, 0, 0, .05)}.z-10{z-index:10}.z-on-top{z-index:99999}.absolute{position:absolute}.top-full{top:100%}.mt-4{margin-top:0.25rem}.mt-6{margin-top:0.375rem}.mt-8{margin-top:0.5rem}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.flex-col{flex-direction:column}.gap-y-4{row-gap:0.25rem}.rounded-lg{border-radius:16px}.border-2{border-width:2px}.p-8{padding:0.5rem}.left-0{left:0rem}.left-1\\/2{left:50%}.left-4{left:0.25rem}.left-\\[4px\\]{left:4px}.right-0{right:0rem}.right-4{right:0.25rem}.right-8{right:0.5rem}";
544
255
  const EdsDropdownStyle0 = edsDropdownCss;
545
256
 
@@ -645,14 +356,14 @@ const EdsDropdown = class {
645
356
  * @returns {JSX.Element} The rendered dropdown component.
646
357
  */
647
358
  render() {
648
- return (h("div", { key: 'c7044a1dabb4f65fe143ac3202dd0d1af4e706c2', class: "z-focus relative", ref: (el) => (this.dropdownContent = el) }, h("eds-button", { key: 'fa5812e59ea886a0adcba75576f07e94e7b0f713', label: this.label, "aria-label": this.ariaLabel, icon: this.icon, intent: this.intent, onClick: this.handleClick, "aria-expanded": this.isOpen.toString(), "aria-haspopup": "menu" }), h("nav", { key: 'c0daa734601dbfcd290d5db8cc25fcd4b82dfdad', role: "menu", class: {
359
+ return (h("div", { key: 'eb48745937126e580737c1da6787c3f16c06ba9e', class: "z-focus relative", ref: (el) => (this.dropdownContent = el) }, h("eds-button", { key: '3af6863201b1c25ad66e9f8c52d9e13505d742a3', label: this.label, "aria-label": this.ariaLabel, icon: this.icon, intent: this.intent, onClick: this.handleClick, "aria-expanded": this.isOpen.toString(), "aria-haspopup": "menu" }), h("nav", { key: 'c225074b3fbee543966523f8cd1c146485bc04bd', role: "menu", class: {
649
360
  'shadow-small bg-inverse border-softest z-10 z-on-top absolute top-full mt-4 flex flex-col gap-y-4 border-2 p-8': true,
650
361
  'left-4': this.dropdownPos === 'left' && this.dropdownOffset,
651
362
  'left-0': this.dropdownPos === 'left' && !this.dropdownOffset,
652
363
  'right-4': this.dropdownPos === 'right' && this.dropdownOffset,
653
364
  'right-0': this.dropdownPos === 'right' && !this.dropdownOffset,
654
365
  'rounded-lg': this.rounded
655
- }, style: { display: this.isOpen ? 'block' : 'none' }, "aria-label": "Dropdown", "aria-hidden": !this.isOpen }, h("slot", { key: '6ca4e774160924fa248db790f33b81e374653569' }))));
366
+ }, style: { display: this.isOpen ? 'block' : 'none' }, "aria-label": "Dropdown", "aria-hidden": !this.isOpen }, h("slot", { key: '6a7ba94045d366d20c6618845692d977f20437e3' }))));
656
367
  }
657
368
  get host() { return getElement(this); }
658
369
  };
@@ -693,9 +404,9 @@ const EdsFooter = class {
693
404
  * @returns {JSX.Element} The rendered JSX for the footer component.
694
405
  */
695
406
  render() {
696
- return (h("footer", { key: '7bbc8cd8e0e3a153dc30bb3569e83afc0bc09b0a' }, this.social ? (h("div", { class: "border-softest border-t-2 pt-20 md:pt-28" }, h("div", { class: "container pb-20" }, h("div", { class: "grid-layout" }, h("div", { class: "grid-col-span-12 lg:grid-col-span-5" }, h("eds-social-networks", { class: "mt-28" })))))) : null, h("div", { key: '9ee8ada698546344b18e557ee1de76042cd727ed', class: `border-softest ${this.social ? 'border-t-2' : ''} pb-28 pt-20 md:pt-28` }, h("div", { key: 'e795e5bba0273b4147c66ed667142997bc0cbaff', class: "container flex items-center gap-20 lg:flex-nowrap" }, h("div", { key: 'fa09a0dbccb035b1e4f496aa447aca241bcc2415', class: "flex items-center gap-x-12" }, h("a", { key: '273bbee5c7353fa4ab0ac30f30a190bae250546c', target: "_blank", rel: "noopener noreferrer", class: "effect-focus focus-visible:rounded-xs flex w-[54px] ml-0", href: "https://research-and-innovation.ec.europa.eu/funding/funding-opportunities/funding-programmes-and-open-calls/horizon-2020_en", "aria-label": "Learn about Horizon 2020 funding" }, h("eds-img", { key: '4568610de97ad886e26195bde656609e2584b792', width: 54, height: 41, src: "https://www.ebrains.eu/flags/4x3/eu.svg", alt: "European Union Flag" }))), h("div", { key: '65dc6a5b0da9d69b0b43ed738c9612293ef64e96' }, h("div", { key: 'a89180b8f308502dfd864d5aab0702f262718cc8', class: "f-ui-04 text-light" }, h("p", { key: '54a69763c38a7986008f9b553fb6b75e5a36d255' }, this.fundedBy), h("div", { key: '9378c48e766a2df4d14805c8777d5d98a2d016ce', class: "mt-4 flex flex-wrap gap-12 lg:flex-nowrap inline-block" }, h("span", { key: 'ef939799150dd7ea91f72de94b1e564039c1e900', class: "effect-focus !no-underline decoration-2 underline-offset-4 hover:!underline mr-4" }, "\u00A9 ", this.rightsReserved), this.enableCookiesSettings ? (h("eds-link", { label: this.cookiesPreferences, intent: "underline", "extra-class": "f-ui-04", onClick: () => {
407
+ return (h("footer", { key: '7bbc8cd8e0e3a153dc30bb3569e83afc0bc09b0a' }, this.social ? (h("div", { class: "border-softest border-t-2 pt-20 md:pt-28" }, h("div", { class: "container pb-20" }, h("div", { class: "grid-layout" }, h("div", { class: "grid-col-span-12 lg:grid-col-span-5" }, h("eds-social-networks", { class: "mt-28" })))))) : null, h("div", { key: '9ee8ada698546344b18e557ee1de76042cd727ed', class: `border-softest ${this.social ? 'border-t-2' : ''} pb-28 pt-20 md:pt-28` }, h("div", { key: 'e795e5bba0273b4147c66ed667142997bc0cbaff', class: "container flex items-center gap-20 lg:flex-nowrap" }, h("div", { key: 'fa09a0dbccb035b1e4f496aa447aca241bcc2415', class: "flex items-center gap-x-12" }, h("a", { key: '578d6a8463e65d07278f8328c108ee266cfba2b8', target: "_blank", rel: "noopener noreferrer", class: "effect-focus focus-visible:rounded-xs flex w-[54px] ml-0", href: "https://research-and-innovation.ec.europa.eu/funding/funding-opportunities/funding-programmes-and-open-calls/horizon-europe_en", "aria-label": "Learn about Horizon Europe funding" }, h("eds-img", { key: '5b9e987c2ecf62fb4f44c1faacad7c569a149805', width: 54, height: 41, src: "https://www.ebrains.eu/flags/4x3/eu.svg", alt: "European Union Flag" }))), h("div", { key: 'df75949c0718b8fb7dd449a6e7df39d332da366f' }, h("div", { key: 'f83d31b16d0601cd456d5cb72e9fa2adb29a2b66', class: "f-ui-04 text-light" }, h("p", { key: 'dcdf09d78ca64c5391d56fe5ed69bab987cbf67b' }, this.fundedBy), h("div", { key: 'af279fb5dfdf0a8f1f85e6ce7446dc3a0eeac397', class: "mt-4 flex flex-wrap gap-12 lg:flex-nowrap inline-block" }, h("span", { key: '026b41fa6162ffb6825ccf98364b4caf64b6457a', class: "effect-focus !no-underline decoration-2 underline-offset-4 hover:!underline mr-4" }, "\u00A9 ", this.rightsReserved), this.enableCookiesSettings ? (h("eds-link", { label: this.cookiesPreferences, intent: "underline", "extra-class": "f-ui-04", onClick: () => {
697
408
  this.toggleCookiesConsent();
698
- } })) : null))), h("div", { key: '3b5388855844f5857e4d6a2b8d19d204b681ca40', class: "ml-auto pl-12" }, this.enableScrollTop ? (h("eds-button", { id: "backToTop", "aria-hidden": "true", "aria-label": this.backToTopAriaLabel, intent: "ghostInverse", icon: "chevron-up", onClick: this.backToTop, class: "transition-all transition duration-75 opacity-0 " })) : null)))));
409
+ } })) : null))), h("div", { key: '27cb561815d6918567ab8cfa1148019aca8aeda0', class: "ml-auto pl-12" }, this.enableScrollTop ? (h("eds-button", { id: "backToTop", "aria-hidden": "true", "aria-label": this.backToTopAriaLabel, intent: "ghostInverse", icon: "chevron-up", onClick: this.backToTop, class: "transition-all transition duration-75 opacity-0 " })) : null)))));
699
410
  }
700
411
  };
701
412
  EdsFooter.style = EdsFooterStyle0;
@@ -865,6 +576,9 @@ const EdsForm = class {
865
576
  this.errors = {};
866
577
  this.parsedFields = [];
867
578
  }
579
+ async setData(newData) {
580
+ this.populateFormWithInitData(newData);
581
+ }
868
582
  componentWillLoad() {
869
583
  this.parseFields(this.fields);
870
584
  // Emit context for each eds-link element after the component is fully loaded
@@ -1037,6 +751,14 @@ const EdsForm = class {
1037
751
  // Update the errors state and the hasError flag.
1038
752
  this.errors = newErrors;
1039
753
  this.hasError = Object.keys(newErrors).length > 0;
754
+ // Emit the updated form state.
755
+ this.form.emit({
756
+ event: 'input',
757
+ field: field.name,
758
+ value: target.type === 'checkbox' ? this.values[field.name] : target.value,
759
+ message: `${field.name} updated`
760
+ //data: this.makeFormData()
761
+ });
1040
762
  }
1041
763
  handleSubmit() {
1042
764
  var _a, _b;
@@ -1097,13 +819,13 @@ const EdsForm = class {
1097
819
  render() {
1098
820
  const hiddenFields = this.parsedFields.filter((field) => field.type === 'hidden');
1099
821
  const otherFields = this.parsedFields.filter((field) => field.type !== 'hidden');
1100
- return (h("form", { key: '76fbc3f587eaac0bd53553663f072e5066914ae5', ref: (el) => (this.formEl = el), autocomplete: "on", onSubmit: this.handleSubmit }, h("div", { key: '64d99d4ac7e1cb8e4bfe436bb236648201dcbc29' }, h("slot", { key: '9c257d29146b620367773726e65eaf680d3d010b' }), hiddenFields.map((field, index) => (h("eds-input", { key: index, type: "hidden", name: field.name, value: field.value }))), otherFields.map((field, index) => {
822
+ return (h("form", { key: '1418bbac3ea7c994bf363602e6ddd18ed3c6c661', ref: (el) => (this.formEl = el), autocomplete: "on", onSubmit: this.handleSubmit }, h("div", { key: 'ae6f05d50a1c32312e585d55f0b5d64b0dd1fc9c' }, h("slot", { key: '09c9ddd0d3b77ae9cbcb54389b799af7a6fc6c9e' }), hiddenFields.map((field, index) => (h("eds-input", { key: index, type: "hidden", name: field.name, value: field.value }))), otherFields.map((field, index) => {
1101
823
  var _a, _b;
1102
824
  if (!this.isFieldVisible(field)) {
1103
825
  return null;
1104
826
  }
1105
- return (h("eds-input-field", { key: index, name: field.name, id: `${this.name}_${field.name}`, label: field.label, placeholder: field.placeholder, value: this.values[field.name] || null, type: field.type, icon: field.icon || null, disabled: field.disabled, required: field.required, maxLength: field.maxlength, hint: field.hint, link: field.link, message: field.message, error: ((_a = this.errors[field.name]) === null || _a === void 0 ? void 0 : _a.length) > 0, errorMessage: (_b = this.errors[field.name]) === null || _b === void 0 ? void 0 : _b.join('<br />'), onInput: (e) => this.handleInput(e, field), onChange: (e) => this.handleChange(e, field), class: index > 0 ? 'mt-20' : '', options: field.options }));
1106
- })), this.formBtn && (h("div", { key: 'ba7908ab85c6368aeff6824fd402b78b514d2292', class: "mt-20" }, h("eds-button", { key: '84efe452f55b2898e5747a01b0dc6033ba14da7a', intent: "primary", label: this.formBtnLabel, disabled: this.isSubmitting, loading: this.isSubmitting, onClick: () => this.handleSubmit() })))));
827
+ return (h("eds-input-field", { key: index, name: field.name, id: `${this.name}_${field.name}`, label: field.label, placeholder: field.placeholder, value: this.values[field.name] || null, type: field.type, icon: field.icon || null, disabled: field.disabled, required: field.required, maxLength: field.maxlength, hint: field.hint, link: field.link, message: field.message, error: ((_a = this.errors[field.name]) === null || _a === void 0 ? void 0 : _a.length) > 0, errorMessage: (_b = this.errors[field.name]) === null || _b === void 0 ? void 0 : _b.join('<br />'), onInput: (e) => this.handleInput(e, field), onChangeNative: (e) => this.handleChange(e, field), class: index > 0 ? 'mt-20' : '', options: field.options }));
828
+ })), this.formBtn && (h("div", { key: 'c97041c2e421c21a38513d3b456991167f5d1cdb', class: "mt-20" }, h("eds-button", { key: '96c35271f7227b9acd467fe822745bd41d3eaa80', intent: "primary", label: this.formBtnLabel, disabled: this.isSubmitting, loading: this.isSubmitting, onClick: () => this.handleSubmit() })))));
1107
829
  }
1108
830
  get el() { return getElement(this); }
1109
831
  static get watchers() { return {
@@ -1179,59 +901,6 @@ const EdsFullscreenMenu = class {
1179
901
  };
1180
902
  EdsFullscreenMenu.style = EdsFullscreenMenuStyle0;
1181
903
 
1182
- const edsGaugeCss = ".relative{position:relative}.absolute{position:absolute}.inline-block{display:inline-block}.rounded-full{border-radius:9999px}.overflow-hidden{overflow:hidden}.bg-inverse{background-color:var(--white)}.bg-current{background-color:currentColor}.bg-dark{background-color:var(--grey-300)}.bg-darker{background-color:var(--grey-400)}.bg-default{background-color:var(--grey-200)}.bg-strong{background-color:var(--grey-700)}.bg-strongest{background-color:var(--black)}.inset-0{inset:0rem}.flex{display:flex}.items-center{align-items:center}.justify-center{justify-content:center}.f-body-01{font-family:var(--f-body-01-fontFamily);font-weight:var(--f-body-01-fontWeight);font-size:var(--f-body-01-fontSize);line-height:var(--f-body-01-lineHeight);letter-spacing:var(--f-body-01-letterSpacing)}.text-default{color:var(--black)}";
1183
- const EdsGaugeStyle0 = edsGaugeCss;
1184
-
1185
- const BACKGROUND_VARIANTS = {
1186
- default: '#f2f2f2',
1187
- dark: '#d8d8d8',
1188
- strong: '#666666',
1189
- black: '#000000'
1190
- };
1191
- const EdsGauge = class {
1192
- constructor(hostRef) {
1193
- registerInstance(this, hostRef);
1194
- this.size = 100;
1195
- this.valueMin = 0;
1196
- this.valueMax = 100;
1197
- this.value = 60;
1198
- this.thickness = 0.1;
1199
- this.variant = 'default';
1200
- }
1201
- render() {
1202
- // Clamp thickness to [0,1]
1203
- const thicknessClamped = Math.min(Math.max(this.thickness, 0.1), 0.2);
1204
- // Normalize value within [valueMin, valueMax]
1205
- const clamped = Math.min(Math.max(this.value, this.valueMin), this.valueMax);
1206
- const range = this.valueMax - this.valueMin || 1;
1207
- const ratio = (clamped - this.valueMin) / range;
1208
- // Use the smaller of width/height as diameter
1209
- const diameter = this.size;
1210
- const angle = ratio * 360;
1211
- const ringThickness = thicknessClamped * diameter;
1212
- const innerDiameter = diameter - ringThickness * 2;
1213
- const fontSize = diameter * 0.2;
1214
- // Determine background color for empty portion
1215
- const emptyColor = BACKGROUND_VARIANTS[this.variant] || BACKGROUND_VARIANTS.default;
1216
- const containerStyle = {
1217
- width: `${diameter}px`,
1218
- height: `${diameter}px`,
1219
- background: `conic-gradient(#00e766 0deg ${angle}deg, ${emptyColor} ${angle}deg 360deg)`
1220
- };
1221
- const maskStyle = {
1222
- width: `${innerDiameter}px`,
1223
- height: `${innerDiameter}px`,
1224
- top: `${ringThickness}px`,
1225
- left: `${ringThickness}px`
1226
- };
1227
- const textStyle = {
1228
- fontSize: `${fontSize}px`
1229
- };
1230
- return (h("div", { key: 'a549808bcd0fc64583f90f284a7b139386e71be7', role: "progressbar", "aria-valuemin": this.valueMin, "aria-valuemax": this.valueMax, "aria-valuenow": clamped, "aria-label": `Gauge value: ${clamped} of ${this.valueMax}`, class: "relative inline-block rounded-full overflow-hidden", style: containerStyle }, h("div", { key: 'c3efb2d512f96e4c3a9371416c6d9bb938cab43e', class: "absolute bg-inverse rounded-full", style: maskStyle }), h("div", { key: '7a6254e22240301b6716a2d6fed785196a39cdd8', class: "absolute inset-0 flex items-center justify-center" }, h("span", { key: '78d8d1b7c442f75947b2813bbb569c566357c121', class: "f-body-01 text-default", style: textStyle }, clamped))));
1231
- }
1232
- };
1233
- EdsGauge.style = EdsGaugeStyle0;
1234
-
1235
904
  const edsHeaderCss = ".block{display:block}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.z-10{z-index:10}.text-default{color:var(--black)}.text-inverse{color:var(--white)}.bg-inverse{background-color:var(--white)}.bg-dark{background-color:var(--grey-300)}.bg-strongest{background-color:var(--black)}.mr-auto{margin-right:auto}.w-\\[200px\\]{width:200px}.h-\\[85px\\]{height:85px}.left-1\\/2{left:50%}.top-1\\/2{top:50%}.grow{flex-grow:1}.-translate-x-1\\/2{--tw-translate-x:-50%;transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-1\\/2{--tw-translate-y:-50%;transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hidden{display:none}.gap-x-2{-moz-column-gap:0.125rem;column-gap:0.125rem}.after\\:effect-opacity::after{transition-property:opacity;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:300ms;transition-timing-function:cubic-bezier(0, 0, 0.2, 1)}.whitespace-nowrap{white-space:nowrap}.\\!text-current{color:currentColor !important}.overflow-hidden{overflow:hidden}.after\\:\\!border-transparent::after{border-color:var(--transparent) !important}.hover\\:after\\:\\!border-transparent:hover::after{border-color:var(--transparent) !important}.after\\:opacity-0::after{opacity:0}.hover\\:after\\:opacity-100:hover::after{opacity:1}.px-16{padding-left:1rem;padding-right:1rem}@media (min-width: 750px){.md\\:flex{display:flex}.md\\:hidden{display:none}}";
1236
905
  const EdsHeaderStyle0 = edsHeaderCss;
1237
906
 
@@ -1362,10 +1031,10 @@ const EdsImg = class {
1362
1031
  imgOpts['loading'] = 'lazy';
1363
1032
  imgOpts['decoding'] = 'async';
1364
1033
  }
1365
- return (h("div", { key: 'de3328e21b2b038984e74c08cd757cd85c7a7e01', class: {
1034
+ return (h("div", { key: '13ed3aa346c99321c609e49ce045b6361921350f', class: {
1366
1035
  'items-center justify-center': true,
1367
1036
  'effect-bg-pattern': this.lazyload && this.showBg
1368
- } }, h("picture", { key: '4e623a25c64ce1b2c09adf3519f12bde04280ba3' }, this.formats.map((format) => (h("source", { type: format.type, srcSet: format.srcset, media: format.media, sizes: this.sizes }))), h("img", Object.assign({ key: '6d87af22189017aa1e158c01a8295c98381a1ba1', ref: (el) => (this.img = el), class: {
1037
+ } }, h("picture", { key: '56aa0ed8fd1ef8f9faf6ad576dd05edc34139c9b' }, this.formats.map((format) => (h("source", { type: format.type, srcSet: format.srcset, media: format.media, sizes: this.sizes }))), h("img", Object.assign({ key: '78e3ed9adcfe423d48388bf30140f4b70649faf7', ref: (el) => (this.img = el), class: {
1369
1038
  'effect-opacity object-cover object-center': true,
1370
1039
  'opacity-100': this.loaded,
1371
1040
  'opacity-0': !this.loaded
@@ -1421,12 +1090,12 @@ const EdsInput = class {
1421
1090
  render() {
1422
1091
  const withIcon = !!this.icon;
1423
1092
  const describedBy = this.hasMessage || this.error ? `${this.name}-error` : '';
1424
- return (h("div", { key: 'bb88b782042a37d2fcbd8a93f03056199d822559', class: "relative flex items-center" }, this.type === 'textarea' ? (h("textarea", { id: this.inputId || this.name, name: this.name, placeholder: this.placeholder, value: this.innerVal.toString(), required: this.required, disabled: this.disabled, class: `min-h-80 input input-textarea ${withIcon ? 'input-with-icon' : ''} ${this.error ? 'input-error' : ''} ${this.extraClass}`, "aria-invalid": this.error ? 'true' : 'false', "aria-describedby": describedBy, maxlength: this.maxLength, onInput: this.handleInput, onChange: this.handleInput })) : this.type === 'select' ? (h("select", { id: this.inputId || this.name, name: this.name, required: this.required, disabled: this.disabled, class: `input input-select ${this.error ? 'input-error' : ''} ${this.extraClass}`, "aria-invalid": this.error ? 'true' : 'false', "aria-describedby": describedBy, onInput: this.handleInput, onChange: this.handleInput }, this.options.map((option) => (h("option", { value: option.value, selected: option.value === this.innerVal, key: option.value }, option.label))))) : (h("input", { id: this.inputId || this.name, name: this.name, placeholder: this.placeholder, value: this.innerVal.toString(), required: this.required, disabled: this.disabled, type: this.type, checked: ['radio', 'checkbox'].includes(this.type) ? this.checked : undefined, class: `
1093
+ return (h("div", { key: '5c66c14b19aa3d5fc37e7a77a2d1194fa0be9b8c', class: "relative flex items-center" }, this.type === 'textarea' ? (h("textarea", { id: this.inputId || this.name, name: this.name, placeholder: this.placeholder, value: this.innerVal.toString(), required: this.required, disabled: this.disabled, class: `min-h-80 input input-textarea ${withIcon ? 'input-with-icon' : ''} ${this.error ? 'input-error' : ''} ${this.extraClass}`, "aria-invalid": this.error ? 'true' : 'false', "aria-describedby": describedBy, maxlength: this.maxLength, onInput: this.handleInput, onChange: this.handleInput })) : this.type === 'select' ? (h("select", { id: this.inputId || this.name, name: this.name, required: this.required, disabled: this.disabled, class: `input input-select ${this.error ? 'input-error' : ''} ${this.extraClass}`, "aria-invalid": this.error ? 'true' : 'false', "aria-describedby": describedBy, onInput: this.handleInput, onChange: this.handleInput }, this.options.map((option) => (h("option", { value: option.value, selected: option.value === this.innerVal, key: option.value }, option.label))))) : (h("input", { id: this.inputId || this.name, name: this.name, placeholder: this.placeholder, value: this.innerVal.toString(), required: this.required, disabled: this.disabled, type: this.type, checked: ['radio', 'checkbox'].includes(this.type) ? this.checked : undefined, class: `
1425
1094
  ${this.extraClass || ''}
1426
1095
  input ${this.type === 'radio' ? 'input-radio' : this.type === 'checkbox' ? 'input-checkbox' : ''}
1427
1096
  ${withIcon && this.type !== 'radio' && this.type !== 'checkbox' ? 'input-icon pl-36' : ''}
1428
1097
  ${this.error ? 'input-error' : ''}
1429
- `, "aria-invalid": this.error ? 'true' : 'false', "aria-describedby": describedBy, maxlength: this.maxLength, onInput: this.handleInput, onChange: this.handleInput })), this.maxLength && this.type === 'textarea' && (h("span", { key: '7b1cc490731455d00d500308458e6b2cd320fccf', class: `input-counter f-ui-05 absolute bottom-8 right-8 ${this.maxLengthReached ? 'input-counter-error' : ''}` }, this.maxLength)), this.icon && (h("eds-icon-wrapper", { key: 'ce4d5548bc0fa1e681e3b74b03d071d73d8372d5', class: `absolute top-1/2 left-[4px] -translate-y-1/2 ${this.disabled ? 'text-lightest' : 'text-lightest'}`, icon: this.icon }))));
1098
+ `, "aria-invalid": this.error ? 'true' : 'false', "aria-describedby": describedBy, maxlength: this.maxLength, onInput: this.handleInput, onChange: this.handleInput })), this.maxLength && this.type === 'textarea' && (h("span", { key: '4326db3729dea8bbddb7a109a90424aa832aded7', class: `input-counter f-ui-05 absolute bottom-8 right-8 ${this.maxLengthReached ? 'input-counter-error' : ''}` }, this.maxLength)), this.icon && (h("eds-icon-wrapper", { key: 'df2f5598aedd36b9cb2ce886fb8ea08da58dc5ff', class: `absolute top-1/2 left-[4px] -translate-y-1/2 ${this.disabled ? 'text-lightest' : 'text-lightest'}`, icon: this.icon }))));
1430
1099
  }
1431
1100
  get el() { return getElement(this); }
1432
1101
  static get watchers() { return {
@@ -1440,39 +1109,29 @@ const EdsInputFieldStyle0 = edsInputFieldCss;
1440
1109
  const EdsInputField = class {
1441
1110
  constructor(hostRef) {
1442
1111
  registerInstance(this, hostRef);
1112
+ this.edsinput = createEvent(this, "edsinput", 7);
1113
+ this.edschange = createEvent(this, "edschange", 7);
1443
1114
  this.handleNativeInput = (ev) => {
1444
1115
  var _a;
1445
- // 1) Call any passed-in handler
1446
1116
  (_a = this.onInput) === null || _a === void 0 ? void 0 : _a.call(this, ev);
1447
1117
  if (this.shouldEmitValue()) {
1448
- // 2) Re-emit on host so Vue/others can catch it
1449
1118
  const newValue = ev.target.value;
1450
- this.hostEl.dispatchEvent(new CustomEvent('oninput', {
1451
- detail: { value: newValue },
1452
- bubbles: false,
1453
- composed: true
1454
- }));
1119
+ this.edsinput.emit({ value: newValue });
1455
1120
  }
1456
1121
  };
1457
1122
  this.handleNativeChange = (ev) => {
1458
1123
  var _a;
1459
- (_a = this.onChange) === null || _a === void 0 ? void 0 : _a.call(this, ev);
1124
+ (_a = this.onChangeNative) === null || _a === void 0 ? void 0 : _a.call(this, ev);
1460
1125
  if (this.shouldEmitValue()) {
1461
1126
  const target = ev.target;
1462
- this.hostEl.dispatchEvent(new CustomEvent('onchange', {
1463
- detail: { value: target.value },
1464
- bubbles: false,
1465
- composed: true
1466
- }));
1127
+ const value = target.value;
1128
+ this.edschange.emit({ value });
1467
1129
  }
1468
1130
  };
1469
1131
  this.name = undefined;
1470
1132
  this.inputId = undefined;
1471
1133
  this.placeholder = undefined;
1472
1134
  this.disabled = false;
1473
- this.onChange = undefined;
1474
- this.onInput = undefined;
1475
- this.type = 'text';
1476
1135
  this.required = false;
1477
1136
  this.label = undefined;
1478
1137
  this.hint = undefined;
@@ -1485,22 +1144,22 @@ const EdsInputField = class {
1485
1144
  this.value = undefined;
1486
1145
  this.maxLength = undefined;
1487
1146
  this.options = undefined;
1147
+ this.type = 'text';
1148
+ this.onChangeNative = undefined;
1149
+ this.onInput = undefined;
1488
1150
  this.exposeValueEvents = true;
1489
1151
  }
1490
1152
  shouldEmitValue() {
1491
- // Never emit for password fields, and respect the exposeValueEvents prop
1492
1153
  return this.exposeValueEvents && this.type !== 'password';
1493
1154
  }
1494
1155
  get parsedOptions() {
1495
- if (Array.isArray(this.options)) {
1156
+ if (Array.isArray(this.options))
1496
1157
  return this.options;
1497
- }
1498
- else if (typeof this.options === 'string') {
1158
+ if (typeof this.options === 'string') {
1499
1159
  try {
1500
1160
  return JSON.parse(this.options);
1501
1161
  }
1502
1162
  catch (_a) {
1503
- // eslint-disable-next-line
1504
1163
  console.warn('Invalid options format');
1505
1164
  return [];
1506
1165
  }
@@ -1522,7 +1181,8 @@ const EdsInputField = class {
1522
1181
  icon: this.icon,
1523
1182
  checked: this.checked
1524
1183
  };
1525
- return (h("div", { key: '5243586c0bf3acc86d42684dbcd0288b3360b00c', class: "space-y-8" }, this.type === 'checkbox' || this.type === 'radio' ? (this.parsedOptions.length > 0 ? (h("fieldset", { class: "space-y-4 mt-8" }, h("div", { class: "flex justify-between" }, this.label && (h("eds-input-label", { name: this.inputId || this.name, label: this.label, required: this.required })), this.hint && (h("p", { id: `${this.name}-hint`, class: "f-ui-05 text-lighter mt-8 ml-8" }, this.hint))), this.parsedOptions.map((option) => (h("div", { class: "flex items-center gap-x-2", key: option.value }, h("eds-input", Object.assign({}, inputOpts, { value: option.value, checked: (typeof this.value === 'string' ? this.value.split(',') : []).includes(String(option.value)) })), h("eds-input-label", { name: `${this.name}-${option.value}`, label: option.label })))))) : (h("div", { class: "flex items-center gap-x-8" }, h("eds-input", Object.assign({}, inputOpts, { value: this.value, checked: this.value === 'on' })), this.label && (h("eds-input-label", { name: this.inputId || this.name, label: this.label, disabled: this.disabled, required: this.required }))))) : (h("div", null, h("div", { class: "flex justify-between" }, this.label && (h("eds-input-label", { name: this.inputId || this.name, label: this.label, disabled: this.disabled, required: this.required })), this.hint && (h("p", { id: `${this.name}-hint`, class: "f-ui-05 text-lighter mt-8 ml-8" }, this.hint))), this.type === 'select' ? (h("eds-input-select", Object.assign({}, inputOpts, { options: this.parsedOptions }))) : this.type === 'file' ? (h("input", { type: "file", id: this.inputId || this.name, name: this.name, onChange: this.onChange, disabled: this.disabled, required: this.required })) : this.type === 'search' ? (h("eds-input-search", { name: "search-box" })) : this.type === 'range' ? ((() => {
1184
+ return (h("div", { key: '2ff82dedd17922c5cb72fc30b7f616c7fafa7b07', class: "space-y-8" }, this.type === 'checkbox' || this.type === 'radio' ? (this.parsedOptions.length > 0 ? (h("fieldset", { class: "space-y-4 mt-8" }, h("div", { class: "flex justify-between" }, this.label && (h("eds-input-label", { name: this.inputId || this.name, label: this.label, required: this.required })), this.hint && (h("p", { id: `${this.name}-hint`, class: "f-ui-05 text-lighter mt-8 ml-8" }, this.hint))), this.parsedOptions.map((option) => (h("div", { class: "flex items-center gap-x-2", key: option.value }, h("eds-input", Object.assign({}, inputOpts, { value: option.value, checked: typeof this.value === 'string' &&
1185
+ this.value.split(',').includes(String(option.value)) })), h("eds-input-label", { name: `${this.name}-${option.value}`, label: option.label })))))) : (h("div", { class: "flex items-center gap-x-8" }, h("eds-input", Object.assign({}, inputOpts, { value: this.value, checked: this.value === 'on' })), this.label && (h("eds-input-label", { name: this.inputId || this.name, label: this.label, disabled: this.disabled, required: this.required }))))) : (h("div", null, h("div", { class: "flex justify-between" }, this.label && (h("eds-input-label", { name: this.inputId || this.name, label: this.label, disabled: this.disabled, required: this.required })), this.hint && (h("p", { id: `${this.name}-hint`, class: "f-ui-05 text-lighter mt-8 ml-8" }, this.hint))), this.type === 'select' ? (h("eds-input-select", Object.assign({}, inputOpts, { options: this.parsedOptions }))) : this.type === 'file' ? (h("input", { type: "file", id: this.inputId || this.name, name: this.name, onChange: this.onChangeNative, disabled: this.disabled, required: this.required })) : this.type === 'search' ? (h("eds-input-search", { name: "search-box" })) : this.type === 'range' ? ((() => {
1526
1186
  var _a, _b, _c;
1527
1187
  const rangeProps = {
1528
1188
  name: inputOpts.name,
@@ -1535,7 +1195,7 @@ const EdsInputField = class {
1535
1195
  const opt = this.parsedOptions;
1536
1196
  const numberValue = typeof this.value === 'string' ? parseFloat(this.value) : this.value || 0;
1537
1197
  return (h("eds-input-range", Object.assign({}, rangeProps, { min: (_a = opt[0]) === null || _a === void 0 ? void 0 : _a.value, max: (_b = opt[1]) === null || _b === void 0 ? void 0 : _b.value, step: (_c = opt[2]) === null || _c === void 0 ? void 0 : _c.value, value: numberValue })));
1538
- })()) : (h("eds-input", Object.assign({}, inputOpts))))), h("eds-input-footer", { key: 'e4e1f28766471d5451f342aa4d60d58fca2ddd01', id: `${this.name}-footer`, name: this.name, message: this.message, "error-message": this.errorMessage, error: this.error, link: this.link })));
1198
+ })()) : (h("eds-input", Object.assign({}, inputOpts))))), h("eds-input-footer", { key: '4b8513dcd713d56953934b158ba1b9182e1497a8', id: `${this.name}-footer`, name: this.name, message: this.message, "error-message": this.errorMessage, error: this.error, link: this.link })));
1539
1199
  }
1540
1200
  get hostEl() { return getElement(this); }
1541
1201
  };
@@ -1551,7 +1211,7 @@ const EdsInputFooter = class {
1551
1211
  this.link = undefined;
1552
1212
  }
1553
1213
  render() {
1554
- return (h("div", { key: 'c3dbdb05ce4cc9244a1ebc9f3ce5718742924ea1', class: "space-y-4 mt-4" }, this.error && this.errorMessage && (h("div", { key: 'ccfde4960e1bec5697774de57da1a7948b5112c4', id: `error_${this.name}`, class: "text-error flex items-center" }, h("eds-icon-wrapper", { key: 'cc7171c96a7251c064f7ce527fe715aaac9a74e2', icon: "warning" }), h("p", { key: '99893066c8aeac76793fef4d5cf6d5b34dbbc25f', class: "f-ui-04 ml-4", innerHTML: this.errorMessage }))), this.message && h("p", { key: '55a6881d02d06440e6adac174a43a1cd59adf34b', id: `desc_${this.name}`, class: "f-ui-05 text-lighter", innerHTML: this.message }), this.link && (h("a", { key: 'bb84693685aedbe7ba28551a1d944c0e1d8eda57', href: this.link.url, class: "f-ui-05 effect-color hover:text-lighter underline underline-offset-4" }, this.link.label))));
1214
+ return (h("div", { key: 'd5424778da81d6558246efe97917d3e3ccfa9aaa', class: "space-y-4 mt-4" }, this.error && this.errorMessage && (h("div", { key: 'e915fc1f4719f48eca5a831ac72913d2f91f633b', id: `error_${this.name}`, class: "text-error flex items-center" }, h("eds-icon-wrapper", { key: '9cc87cfd4955766947a2581604fe1e072f8d82a9', icon: "warning" }), h("p", { key: '564a2397fb7e8185e43e1c2be216c76060e7498e', class: "f-ui-04 ml-4", innerHTML: this.errorMessage }))), this.message && h("p", { key: '24e0702df7e5c2fe4ef0cc6755159fefe76b70a7', id: `desc_${this.name}`, class: "f-ui-05 text-lighter", innerHTML: this.message }), this.link && (h("a", { key: '9e3720a3ded9d755afd7755104df0942246f1fbe', href: this.link.url, class: "f-ui-05 effect-color hover:text-lighter underline underline-offset-4" }, this.link.label))));
1555
1215
  }
1556
1216
  };
1557
1217
 
@@ -1564,7 +1224,7 @@ const EdsInputLabel = class {
1564
1224
  this.disabled = false;
1565
1225
  }
1566
1226
  render() {
1567
- return (h("label", { key: '815b70d78f4004afb77a0c01772f750478dea1b3', htmlFor: this.name, class: `input-label ${this.disabled ? 'text-lighter' : ''}` }, this.label, this.required && (h("span", { key: 'de2cba1c7e89632b3aac40de573d730cf38a85c6' }, h("span", { key: '58326fb23edd4521b0f1c6e67366e7c589217387', "aria-hidden": "true" }, "*"), h("span", { key: 'e2208159652c9244e49c2c3d476a099a442d28ac', class: "sr-only" }, "required")))));
1227
+ return (h("label", { key: 'd700690a67a8348836aec27d2ff4f4d4ee18b9c8', htmlFor: this.name, class: `input-label ${this.disabled ? 'text-lighter' : ''}` }, this.label, this.required && (h("span", { key: '9b52c053652db132a9bdb2d9fc64c569a529c2d9' }, h("span", { key: 'cd17268b6048ebaa70dc7f905fc7f7bf3ed3fa34', "aria-hidden": "true" }, "*"), h("span", { key: '352d7b5ef080336a5c7b53e0b710d5b0d7aa0efe', class: "sr-only" }, "required")))));
1568
1228
  }
1569
1229
  };
1570
1230
 
@@ -1610,7 +1270,7 @@ const EdsInputRange = class {
1610
1270
  return this.inputElement;
1611
1271
  }
1612
1272
  render() {
1613
- return (h("div", { key: '9901432821b3dbdbf67e3b905c75acd7095ec8e9', class: "relative flex flex-col items-start space-y-2" }, h("input", { key: '44023ef4a7e3fec22666103ccec3e2346aea885d', id: this.inputId || this.name, name: this.name, min: this.min, max: this.max, step: this.step, value: this.sliderVal, required: this.required, disabled: this.disabled, type: "range", class: "w-full py-6 input", "aria-describedby": `desc_${this.name}`, "aria-valuemin": this.min, "aria-valuemax": this.max, "aria-valuenow": this.sliderVal, onInput: this.onInput, onChange: this.onChange }), h("p", { key: 'b74e14f619acbe7b98966bac8ea2c5206d05ad62', id: `desc_${this.name}`, class: "block f-ui-05 text-lighter" }, "Current value: ", this.sliderVal)));
1273
+ return (h("div", { key: '5c55f65e2acd6f4554af7d8ba513c9d9dfd445eb', class: "relative flex flex-col items-start space-y-2" }, h("input", { key: '4fcd0d3d978ddba7929958dd22a283c2ba61ee48', id: this.inputId || this.name, name: this.name, min: this.min, max: this.max, step: this.step, value: this.sliderVal, required: this.required, disabled: this.disabled, type: "range", class: "w-full py-6 input", "aria-describedby": `desc_${this.name}`, "aria-valuemin": this.min, "aria-valuemax": this.max, "aria-valuenow": this.sliderVal, onInput: this.onInput, onChange: this.onChange }), h("p", { key: 'c63b223e6af149efb68cabbe5228e77b09ca2168', id: `desc_${this.name}`, class: "block f-ui-05 text-lighter" }, "Current value: ", this.sliderVal)));
1614
1274
  }
1615
1275
  get el() { return getElement(this); }
1616
1276
  static get watchers() { return {
@@ -1679,7 +1339,7 @@ const EdsInputSearch = class {
1679
1339
  return this.inputElement;
1680
1340
  }
1681
1341
  render() {
1682
- return (h("div", { key: '2d74c44bf05f4ccbe81df14a3af112a763b01b5f', class: "relative flex items-center" }, h("eds-icon-wrapper", { key: 'c7c7c479801a9c5e6da0b616448f7b89ba25b040', icon: "search", class: "absolute top-1/2 left-[4px] -translate-y-1/2 text-lightest", "aria-hidden": "true" }), h("input", { key: '8e4954dc67ae59d46f2e3423325eccda0944363a', id: this.inputId || this.name, name: this.name, placeholder: this.placeholder, value: this.value || '', required: this.required, disabled: this.disabled, type: "search", "aria-label": this.placeholder, class: `input pl-36 ${this.decorate}`,
1342
+ return (h("div", { key: '27d6871df962e2bd27eac38b1a105142b1b68bab', class: "relative flex items-center" }, h("eds-icon-wrapper", { key: 'b4b497cb435c673a550b169dea93fbc7006d0c5e', icon: "search", class: "absolute top-1/2 left-[4px] -translate-y-1/2 text-lightest", "aria-hidden": "true" }), h("input", { key: '1419cd8f5b8791b5b812c57ba649567e1b6ec0bb', id: this.inputId || this.name, name: this.name, placeholder: this.placeholder, value: this.value || '', required: this.required, disabled: this.disabled, type: "search", "aria-label": this.placeholder, class: `input pl-36 ${this.decorate}`,
1683
1343
  //onInput={this.onInput}
1684
1344
  onChange: this.onChange })));
1685
1345
  }
@@ -1708,12 +1368,12 @@ const EdsInputSelect = class {
1708
1368
  const selectId = this.inputId || this.name;
1709
1369
  const placeholderText = this.placeholder || `Please select ${this.name}`;
1710
1370
  const describedBy = this.hasMessage || this.error ? `${this.name}-error` : undefined;
1711
- return (h("div", { key: '0e1bf5f1ebf30d675e0b4927e7812a305f58d2b9', class: "relative" }, h("select", { key: 'b92542caca12d77e3160baa84760b37bbbe172c7', id: selectId, name: this.name, class: {
1371
+ return (h("div", { key: '80cbdab87f5baa21df5edc857685c3af4dee3a58', class: "relative" }, h("select", { key: '4e8f84fd9dbc63df7981898cadc24450f48aa92a', id: selectId, name: this.name, class: {
1712
1372
  input: true,
1713
1373
  'input-error': this.error,
1714
1374
  'px-4': true,
1715
1375
  'py-2': true
1716
- }, "aria-invalid": this.error ? 'true' : 'false', "aria-describedby": describedBy, disabled: this.disabled, required: this.required, onChange: this.handleChange }, h("option", { key: 'fa911a07fd0053f6c7e5044aac3e6d0846344899', value: "", disabled: true, hidden: true }, placeholderText), this.options.map((opt, index) => (h("option", { key: index, value: opt.value, selected: opt.value === this.value }, opt.label)))), h("span", { key: 'afa3c7ad3c583dec2ffc2fd5087d7695509a2a25', class: "bg-dark rounded-xs absolute top-1/2 right-[6px] flex h-28 w-28 -translate-y-1/2 items-center justify-center" }, h("eds-icon-wrapper", { key: '1bb2a24fc9798a7359b9b45019b1432ff2e50e70', class: "w-20 h-20", icon: "chevron-right" }))));
1376
+ }, "aria-invalid": this.error ? 'true' : 'false', "aria-describedby": describedBy, disabled: this.disabled, required: this.required, onChange: this.handleChange }, h("option", { key: '54b90339cae4c5c80711793a8c68c4587e0c2495', value: "", disabled: true, hidden: true }, placeholderText), this.options.map((opt, index) => (h("option", { key: index, value: opt.value, selected: opt.value === this.value }, opt.label)))), h("span", { key: '6c9f0a0606f1d6f282c756f84ace7618584d5fa3', class: "bg-dark rounded-xs absolute top-1/2 right-[6px] flex h-28 w-28 -translate-y-1/2 items-center justify-center" }, h("eds-icon-wrapper", { key: '4524af72468d3b37c01b0252d4b6b2bf7454514e', class: "w-20 h-20", icon: "chevron-right" }))));
1717
1377
  }
1718
1378
  };
1719
1379
 
@@ -1925,7 +1585,7 @@ const EdsLink = class {
1925
1585
  const labelClasses = this.hideLabelOnSmallScreen
1926
1586
  ? 'hidden lg:flex' // Tailwind example: hidden on small screens, visible on larger
1927
1587
  : '';
1928
- return (h(ComponentType, { key: 'ee6e8eeb12df62ee801164877a357c075590ebae', class: `${classes || ''} ${this.extraClass || ''}`, href: !this.disabled ? this.url : undefined, target: this.external && !this.disabled ? '_blank' : undefined, rel: this.external && !this.disabled ? 'noopener noreferrer' : undefined, "aria-label": computedAriaLabel, "aria-disabled": this.disabled ? 'true' : null, "aria-current": this.current ? 'page' : undefined, download: this.download ? '' : undefined, onClick: (event) => this.handleClick(event) }, h("span", { key: '7b35e3ddca346ff09730aa332b9f47b6d6707721', class: "z-1 relative inline-flex items-center justify-center" }, this.renderLeftIcon(), h("span", { key: 'fe4201815e3791e6e3d6da8856d7a7a9e0211cfc', class: labelClasses }, this.label), this.renderRightIcon())));
1588
+ return (h(ComponentType, { key: '8c7ab8b80b9765e83e4e57d59ba1b45fe36f15b7', class: `${classes || ''} ${this.extraClass || ''}`, href: !this.disabled ? this.url : undefined, target: this.external && !this.disabled ? '_blank' : undefined, rel: this.external && !this.disabled ? 'noopener noreferrer' : undefined, "aria-label": computedAriaLabel, "aria-disabled": this.disabled ? 'true' : null, "aria-current": this.current ? 'page' : undefined, download: this.download ? '' : undefined, onClick: (event) => this.handleClick(event) }, h("span", { key: '94284b425a331f6a56a3e63db89fed5fa1a207c1', class: "z-1 relative inline-flex items-center justify-center" }, this.renderLeftIcon(), h("span", { key: '7496886c7c975d6795633c36b9cc8d31673d5a4b', class: labelClasses }, this.label), this.renderRightIcon())));
1929
1589
  }
1930
1590
  get el() { return getElement(this); }
1931
1591
  };
@@ -1993,7 +1653,7 @@ const EdsLogo = class {
1993
1653
  }
1994
1654
  render() {
1995
1655
  const logoContent = this.getLogo();
1996
- return (h("a", { key: 'a23e44227ebaa3b999c961e1354c268f2c916a6f', href: this.href, onClick: () => this.handleClick(), class: "eds-logo-wrapper", "aria-label": this.label }, h("div", { key: 'cba53a54e6d31aabfa62ddcd8aa53bda56b8b706', innerHTML: logoContent })));
1656
+ return (h("a", { key: 'ab11d53e1f417221dcca2de441c7b3efa96f99a5', href: this.href, onClick: () => this.handleClick(), class: "eds-logo-wrapper", "aria-label": this.label }, h("div", { key: '0d4a6b970788534d34d55b28fe83407ce7c4e00e', innerHTML: logoContent })));
1997
1657
  }
1998
1658
  get el() { return getElement(this); }
1999
1659
  };
@@ -2114,112 +1774,222 @@ const EdsModal = class {
2114
1774
  render() {
2115
1775
  // Generate a unique id for the title so we can reference it for aria-labelledby.
2116
1776
  const titleId = `modal-title-${this.el.tagName.toLowerCase()}`;
2117
- return (h("div", { key: '3a2446813eebf215f2c7aafc26d5688f58020c54', id: "eds-modal", class: `${this.isOpen ? 'block' : 'hidden'} fixed inset-0 z-9999999 flex`, role: "dialog", "aria-modal": "true", "aria-labelledby": titleId }, this.isOpen && (h("div", { key: '7081928b01c09e692cac0f61dbc58b4f5578271d', class: "fixed inset-0 bg-dark bg-opacity-90" // Add backdrop-blur utility class here
1777
+ return (h("div", { key: 'affa340307adc5bdd637696b56a59e3f73cbf7e9', id: "eds-modal", class: `${this.isOpen ? 'block' : 'hidden'} fixed inset-0 z-9999999 flex`, role: "dialog", "aria-modal": "true", "aria-labelledby": titleId }, this.isOpen && (h("div", { key: 'e4359b32052a155f879070deea34fbca2fb67e3b', class: "fixed inset-0 bg-dark bg-opacity-90" // Add backdrop-blur utility class here
2118
1778
  ,
2119
- onClick: () => this.close() })), h("div", { key: '0fc5f4716022cb01c2da9a28738586710625c70f', class: `container absolute bg-inverse z-10 ${this.getModalPositionClasses()} grow justify-center` }, h("div", { key: '8e4bdffba2f69b18e8846e4c2709c5c423b0a99e', class: `flex justify-between items-center border-b-2 border-softer px-20 py-20 ${this.inverseHeader ? 'bg-strongest text-inverse' : 'bg-dark text-default'}` }, h("span", { key: '6e0d237fc95c1b74b1b0c0456848684578367302', id: titleId, class: `f-heading-04 ${this.getTruncateClass()}` }, this.heading), h("eds-button", { key: '3499de216da4ba38edb66cdcd688872f51b41aaf', intent: "tertiary", icon: "close", "aria-label": "Close modal", onClick: () => this.close(), "extra-class": "ml-8 text-default" })), h("div", { key: 'f723dded796961e925cc2b046c31e7345fd3e159', class: "pt-8 px-20 py-20" }, h("slot", { key: 'ffe1213b65e60dfaf7c220e3c7e3dd8495706dcf' })))));
1779
+ onClick: () => this.close() })), h("div", { key: 'ba95f463e8c807e2ac2e900b3167191908ca2f5d', class: `container absolute bg-inverse z-10 ${this.getModalPositionClasses()} grow justify-center` }, h("div", { key: '1fc4649d6ba728745e4f1ed73e8fb8bdac6eda59', class: `flex justify-between items-center border-b-2 border-softer px-20 py-20 ${this.inverseHeader ? 'bg-strongest text-inverse' : 'bg-dark text-default'}` }, h("span", { key: '731e7cb6c7aaa36bcda8d1c32bd1b8da9d85f253', id: titleId, class: `f-heading-04 ${this.getTruncateClass()}` }, this.heading), h("eds-button", { key: '89657ac29b27ce173569353f3101e998cb756eec', intent: "tertiary", icon: "close", "aria-label": "Close modal", onClick: () => this.close(), "extra-class": "ml-8 text-default" })), h("div", { key: '2e39edaa1f5cc5389873e203c3e4294de8b56678', class: "pt-8 px-20 py-20" }, h("slot", { key: '0fb09f52100042fc5f20f5f443a8f5cff381d944' })))));
2120
1780
  }
2121
1781
  get el() { return getElement(this); }
2122
1782
  };
2123
1783
  EdsModal.style = EdsModalStyle0;
2124
1784
 
2125
- const edsPieCss = ".relative{position:relative}.absolute{position:absolute}.inline-block{display:inline-block}.rounded-full{border-radius:9999px}.overflow-hidden{overflow:hidden}.bg-inverse{background-color:var(--white)}.bg-current{background-color:currentColor}.bg-dark{background-color:var(--grey-300)}.bg-darker{background-color:var(--grey-400)}.bg-default{background-color:var(--grey-200)}.bg-strong{background-color:var(--grey-700)}.bg-strongest{background-color:var(--black)}.inset-0{inset:0rem}.flex{display:flex}.items-center{align-items:center}.justify-center{justify-content:center}.f-body-01{font-family:var(--f-body-01-fontFamily);font-weight:var(--f-body-01-fontWeight);font-size:var(--f-body-01-fontSize);line-height:var(--f-body-01-lineHeight);letter-spacing:var(--f-body-01-letterSpacing)}.f-ui-01{font-family:var(--f-ui-01-fontFamily);font-weight:var(--f-ui-01-fontWeight);font-size:var(--f-ui-01-fontSize);line-height:var(--f-ui-01-lineHeight);letter-spacing:var(--f-ui-01-letterSpacing)}.f-ui-02{font-family:var(--f-ui-02-fontFamily);font-weight:var(--f-ui-02-fontWeight);font-size:var(--f-ui-02-fontSize);line-height:var(--f-ui-02-lineHeight);letter-spacing:var(--f-ui-02-letterSpacing)}.text-default{color:var(--black)}.w-8{width:0.5rem}.h-8{height:0.5rem}.mr-4{margin-right:0.25rem}:host{display:block}.wrapper{display:flex;align-items:center;justify-content:center;height:100%}.pie-chart{overflow:visible}.slice-label{font-size:var(--font-size-chart-label);font-weight:var(--font-weight-chart-label);fill:var(--color-text);pointer-events:none}.legend{list-style:none;margin:0;padding:0 0 0 1rem}.legend-item{display:flex;align-items:center;margin-bottom:0.5rem;outline:none}.legend-item:focus{outline:2px dashed var(--color-primary)}.legend-swatch{width:1rem;height:1rem;border-radius:50%;margin-right:0.5rem}.legend-label{font-size:var(--font-size-base);color:var(--color-text)}";
2126
- const EdsPieStyle0 = edsPieCss;
1785
+ const edsPaginationCss = "ul,menu{list-style:none;margin:0;padding:0}.f-ui-03{font-family:var(--f-ui-03-fontFamily);font-weight:var(--f-ui-03-fontWeight);font-size:var(--f-ui-03-fontSize);line-height:var(--f-ui-03-lineHeight);letter-spacing:var(--f-ui-03-letterSpacing)}.f-ui-03-light{font-family:var(--f-ui-03-light-fontFamily);font-weight:var(--f-ui-03-light-fontWeight);font-size:var(--f-ui-03-light-fontSize);line-height:var(--f-ui-03-light-lineHeight);letter-spacing:var(--f-ui-03-light-letterSpacing)}.f-ui-02{font-family:var(--f-ui-02-fontFamily);font-weight:var(--f-ui-02-fontWeight);font-size:var(--f-ui-02-fontSize);line-height:var(--f-ui-02-lineHeight);letter-spacing:var(--f-ui-02-letterSpacing)}.f-ui-02-light{font-family:var(--f-ui-02-light-fontFamily);font-weight:var(--f-ui-02-light-fontWeight);font-size:var(--f-ui-02-light-fontSize);line-height:var(--f-ui-02-light-lineHeight);letter-spacing:var(--f-ui-02-light-letterSpacing)}.text-lightest{color:var(--grey-500)}.mb-28{margin-bottom:1.75rem}.w-full{width:100%}.w-20{width:1.25rem}.h-20{height:1.25rem}.h-28{height:1.75rem}.h-32{height:2rem}.h-36{height:2.25rem}.text-center{text-align:center}.flex{display:flex}.inline-flex{display:inline-flex}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-x-8{-moz-column-gap:0.5rem;column-gap:0.5rem}.mr-auto{margin-right:auto}.ml-auto{margin-left:auto}.\\!p-8{padding:0.5rem !important}.ml-4{margin-left:0.25rem}.mr-4{margin-right:0.25rem}.hidden{display:none}.gap-1{gap:0.0625rem}.py-4{padding-top:0.25rem;padding-bottom:0.25rem}.transition-colors{transition-property:color, background-color, border-color, text-decoration-color, fill, stroke;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:150ms}@media (min-width: 900px){.lg\\:\\!pr-12{padding-right:0.75rem !important}.lg\\:flex{display:flex}}";
1786
+ const EdsPaginationStyle0 = edsPaginationCss;
2127
1787
 
2128
- const EdsPie = class {
1788
+ const EdsPagination = class {
2129
1789
  constructor(hostRef) {
2130
1790
  registerInstance(this, hostRef);
2131
- this.size = 200;
2132
- this.slices = [];
2133
- this.thickness = 1;
2134
- this.display = 'value';
2135
- this.legend = true;
2136
- this.colorScheme = 'semantic';
2137
- }
2138
- parseSlices() {
2139
- if (typeof this.slices === 'string') {
2140
- try {
2141
- return JSON.parse(this.slices);
1791
+ this.currentPage = undefined;
1792
+ this.lastPage = undefined;
1793
+ this.perPage = 10;
1794
+ this.total = 0;
1795
+ this.url = '';
1796
+ this.mode = 'default';
1797
+ this.prevLabel = 'Prev';
1798
+ this.nextLabel = 'Next';
1799
+ this.prevUrl = '';
1800
+ this.nextUrl = '';
1801
+ this.links = [];
1802
+ }
1803
+ /** Lifecycle hook to generate pagination links on component load */
1804
+ componentWillLoad() {
1805
+ if (this.mode === 'default') {
1806
+ this.generateLinks();
1807
+ }
1808
+ }
1809
+ componentDidLoad() {
1810
+ // Emit context for each eds-link element after the component is fully loaded
1811
+ const links = this.hostEl.shadowRoot.querySelectorAll('eds-link');
1812
+ links.forEach((lnk) => {
1813
+ this.emitContext(lnk);
1814
+ });
1815
+ /*if (links.length > 0) {
1816
+ // Emit context for the first link
1817
+ this.emitContext(links[0]);
1818
+
1819
+ // Emit context for the last link, if it's different from the first
1820
+ if (links.length > 1) {
1821
+ this.emitContext(links[links.length - 1]);
1822
+ }
1823
+ }*/
1824
+ }
1825
+ /**
1826
+ * Emits a custom event called `parentContext` for a given link element.
1827
+ * This event provides context information about the breadcrumb component.
1828
+ *
1829
+ * @param linkElement - The link element to which the event will be dispatched.
1830
+ */
1831
+ emitContext(linkElement) {
1832
+ const event = new CustomEvent('parentContext', {
1833
+ detail: {
1834
+ componentName: this.hostEl.tagName.toLowerCase(),
1835
+ identifier: null
2142
1836
  }
2143
- catch (_a) {
2144
- // eslint-disable-next-line
2145
- console.warn('eds-pie: invalid slices JSON');
1837
+ });
1838
+ linkElement.dispatchEvent(event);
1839
+ }
1840
+ onPageOrLastPageChange() {
1841
+ if (this.mode === 'default') {
1842
+ this.generateLinks();
1843
+ }
1844
+ }
1845
+ /**
1846
+ * Checks if the current page is the first page
1847
+ * @returns {boolean} - true if current page is the first page
1848
+ */
1849
+ isFirstPage() {
1850
+ return this.currentPage === 1;
1851
+ }
1852
+ /**
1853
+ * Checks if the current page is the last page
1854
+ * @returns {boolean} - true if current page is the last page
1855
+ */
1856
+ isLastPage() {
1857
+ return this.currentPage === this.lastPage;
1858
+ }
1859
+ /**
1860
+ * Generates a pagination link object
1861
+ * @param {number} page - Page number for the link
1862
+ * @returns {Link} - Link object with page details
1863
+ */
1864
+ generateLink(page) {
1865
+ const urlHasQuery = this.url.includes('?');
1866
+ return {
1867
+ ariaLabel: `Page ${page}`,
1868
+ url: `${this.url}${urlHasQuery ? '&' : '?'}page=${page}`,
1869
+ label: page.toString(),
1870
+ current: this.currentPage === page,
1871
+ disabled: false
1872
+ };
1873
+ }
1874
+ /** Generates pagination links based on the last page and current page */
1875
+ generateLinks() {
1876
+ if (this.lastPage && this.lastPage > 5) {
1877
+ this.links = this.getPaginationGenerator(this.currentPage || 1, this.lastPage).map((page) => typeof page === 'number' ? this.generateLink(page) : page);
1878
+ }
1879
+ else if (this.lastPage) {
1880
+ this.links = Array.from({ length: this.lastPage }).map((_, i) => this.generateLink(i + 1));
1881
+ }
1882
+ }
1883
+ /**
1884
+ * Creates a pagination range based on delta, current, and total pages
1885
+ * @param {number} current - Current page number
1886
+ * @param {number} total - Total number of pages
1887
+ * @param {number} delta - Range of pages to display around the current page
1888
+ * @returns {(number | string)[]} - Range of page numbers or ellipses
1889
+ */
1890
+ getPaginationGenerator(current, total) {
1891
+ const delta = 1; // Show one page before and one after the current page
1892
+ const range = [];
1893
+ if (total <= 5) {
1894
+ // If total pages are 5 or less, show all pages
1895
+ for (let i = 1; i <= total; i++) {
1896
+ range.push(i);
1897
+ }
1898
+ }
1899
+ else {
1900
+ // Always show the first page
1901
+ range.push(1);
1902
+ // Add ellipsis if there’s a gap between the first page and the current range start
1903
+ if (current - delta > 2) {
1904
+ range.push('...');
1905
+ }
1906
+ // Determine range for pages around the current page
1907
+ for (let i = Math.max(2, current - delta); i <= Math.min(total - 1, current + delta); i++) {
1908
+ range.push(i);
1909
+ }
1910
+ // Add ellipsis if there’s a gap between the current range end and the last page
1911
+ if (current + delta < total - 1) {
1912
+ range.push('...');
2146
1913
  }
1914
+ // Always show the last page
1915
+ range.push(total);
2147
1916
  }
2148
- return Array.isArray(this.slices) ? this.slices : [];
1917
+ return range;
2149
1918
  }
2150
- polarToCartesian(cx, cy, r, angle) {
2151
- const rad = (angle - 90) * (Math.PI / 180);
2152
- return { x: cx + r * Math.cos(rad), y: cy + r * Math.sin(rad) };
1919
+ /**
1920
+ * Formats the current page results information for display
1921
+ * @returns {string} - Formatted page result information
1922
+ */
1923
+ pageResults() {
1924
+ if (this.total > 0) {
1925
+ return this.total > this.perPage
1926
+ ? `${this.perPage * ((this.currentPage || 1) - 1) + 1} - ${this.perPage * (this.currentPage || 1) >= this.total ? this.total : this.perPage * (this.currentPage || 1)} of ${this.total}`
1927
+ : `${this.total}`;
1928
+ }
1929
+ return '';
2153
1930
  }
2154
- describeArc(x, y, r, startAngle, endAngle) {
2155
- const start = this.polarToCartesian(x, y, r, endAngle);
2156
- const end = this.polarToCartesian(x, y, r, startAngle);
2157
- const largeArcFlag = endAngle - startAngle <= 180 ? '0' : '1';
2158
- return [`M ${start.x} ${start.y}`, `A ${r} ${r} 0 ${largeArcFlag} 0 ${end.x} ${end.y}`, `L ${x} ${y}`, 'Z'].join(' ');
1931
+ /**
1932
+ * Handles a page click event, updating the current page and dispatching an event
1933
+ * @param {MouseEvent} event - Click event
1934
+ * @param {number} newPage - New page number
1935
+ */
1936
+ handlePageClick(event, newPage) {
1937
+ if (this.mode === 'navigator') {
1938
+ return; // No page clicking logic for navigator mode
1939
+ }
1940
+ event.preventDefault(); // Prevent default link navigation
1941
+ if (newPage !== this.currentPage) {
1942
+ this.links = this.links.map((link) => typeof link === 'object' ? Object.assign(Object.assign({}, link), { current: parseInt(link.label) === newPage }) : link);
1943
+ const pageChangeEvent = new CustomEvent('page', {
1944
+ detail: newPage,
1945
+ bubbles: true,
1946
+ composed: true
1947
+ });
1948
+ this.hostEl.dispatchEvent(pageChangeEvent);
1949
+ this.currentPage = newPage;
1950
+ }
2159
1951
  }
2160
1952
  render() {
2161
- const raw = this.parseSlices();
2162
- if (raw.length > EdsPie.MAX_SLICES) {
2163
- // eslint-disable-next-line
2164
- console.warn(`eds-pie: too many slices (${raw.length}), results may overlap.`);
2165
- }
2166
- const total = raw.reduce((sum, s) => sum + s.value, 0) || 1;
2167
- const palette = [...EdsPie.PALETTES[this.colorScheme]];
2168
- const sorted = [...raw].sort((a, b) => b.value - a.value);
2169
- let cumulative = 0;
2170
- const processed = sorted.map((s) => {
2171
- const angle = (s.value / total) * 360;
2172
- const start = cumulative, end = cumulative + angle;
2173
- cumulative = end;
2174
- const color = s.color || palette.shift() || 'var(--color-chart-neutral-1)';
2175
- return Object.assign(Object.assign({}, s), { start, end, color });
2176
- });
2177
- const diameter = this.size;
2178
- const radius = diameter / 2;
2179
- // clamp into [0.5, 1]
2180
- const tClamped = Math.min(Math.max(this.thickness, 0.5), 1);
2181
- const innerRadius = radius * (1 - tClamped);
2182
- const outerRadius = radius;
2183
- // **replace** the previous labelRadius line with this:
2184
- const labelRadius = (radius + innerRadius) / 2;
2185
- // Build ARIA description
2186
- const ariaLabel = processed
2187
- .map((s) => `${s.label}: ${this.display === 'percent' ? `${Math.round((s.value / total) * 100)}%` : s.value}`)
2188
- .join(', ');
2189
- return (h(Host, null, h("div", { class: "wrapper" }, h("svg", { width: diameter, height: diameter, role: "img", "aria-label": `Pie chart: ${ariaLabel}`, class: "pie-chart" }, h("title", null, "Pie chart"), h("g", null, processed.map((s) => (h("path", { key: s.id, d: this.describeArc(radius, radius, outerRadius, s.start, s.end), fill: s.color }))), innerRadius > 0 && h("circle", { cx: radius, cy: radius, r: innerRadius, fill: "var(--white)" }), processed.map((s) => {
2190
- const midAngle = s.start + (s.end - s.start) / 2;
2191
- const { x, y } = this.polarToCartesian(radius, radius, labelRadius, midAngle);
2192
- const text = this.display === 'percent' ? `${Math.round((s.value / total) * 100)}%` : String(s.value);
2193
- return (h("text", { key: s.id, x: x, y: y, class: "f-ui-02", "text-anchor": "middle", "alignment-baseline": "middle" }, text));
2194
- }))), this.legend && (h("ul", { class: "legend", role: "list" }, processed.map((s) => (h("li", { key: s.id, role: "listitem", tabindex: "0", class: "legend-item" }, h("span", { class: "legend-swatch", style: { backgroundColor: s.color } }), h("span", { class: "legend-label" }, s.label)))))))));
1953
+ return (h("div", { key: '6377e0187e461bcbeac835dd7cb83e93ef199865' }, this.total > 0 && this.mode === 'default' && (h("p", { key: 'ec2a6b6a40c76352743d012c51cda5d7fe1137df', class: "f-ui-03 text-lightest mb-28 w-full text-center" }, h("span", { key: '3a23e3d156f87167b0dacb4085870958ce19e793', class: "sr-only" }, "Results:"), this.pageResults())), this.mode === 'navigator' || (this.lastPage && this.lastPage > 1) ? (h("nav", { "aria-label": "Pagination" }, h("ul", { class: "flex items-center justify-center gap-x-8" }, h("li", { class: "mr-auto" }, h("eds-link", { label: this.prevLabel, url: this.mode === 'navigator'
1954
+ ? this.prevUrl || '#' // Use prevUrl if provided, otherwise disable with '#'
1955
+ : this.isFirstPage()
1956
+ ? '#'
1957
+ : this.generateLink(this.currentPage - 1).url, disabled: this.mode === 'navigator'
1958
+ ? !this.prevUrl // Disable if prevUrl is not provided
1959
+ : this.isFirstPage(), "aria-label": "Previous page", icon: "chevron-left", "icon-pos": "left", size: "small", "icon-small": "true", intent: "strong", "hide-label-on-small-screen": true, class: "!p-8 lg:!pr-12", onClick: (event) => {
1960
+ if (this.mode === 'default') {
1961
+ if (this.isFirstPage()) {
1962
+ event.preventDefault(); // Prevent click if disabled
1963
+ }
1964
+ else {
1965
+ this.handlePageClick(event, (this.currentPage || 1) - 1);
1966
+ }
1967
+ }
1968
+ } })), this.mode === 'default' &&
1969
+ this.links.map((link, index) => (h("li", { key: index, class: "f-ui-02 flex h-36 items-center justify-center" }, typeof link === 'string' ? (h("span", { class: "flex items-center justify-center" }, link)) : (h("eds-link", { url: link.url, "aria-label": link.ariaLabel, label: link.label, current: link.current, size: "small", class: "!p-8", intent: link.current ? 'secondary' : 'ghost', onClick: (event) => this.handlePageClick(event, parseInt(link.label)) }))))), h("li", { class: "ml-auto" }, h("eds-link", { label: this.nextLabel, url: this.mode === 'navigator'
1970
+ ? this.nextUrl || '#' // Use nextUrl if provided, otherwise disable with '#'
1971
+ : this.isLastPage()
1972
+ ? '#'
1973
+ : this.generateLink(this.currentPage + 1).url, disabled: this.mode === 'navigator'
1974
+ ? !this.nextUrl // Disable if nextUrl is not provided
1975
+ : this.isLastPage(), "aria-label": "Next page", size: "small", "icon-small": "true", icon: "chevron-right", intent: "strong", "hide-label-on-small-screen": true, class: "!p-8 lg:!pl-12 flex items-center gap-1 py-4 transition-colors", onClick: (event) => {
1976
+ if (this.mode === 'default') {
1977
+ if (this.isLastPage()) {
1978
+ event.preventDefault(); // Prevent click if disabled
1979
+ }
1980
+ else {
1981
+ this.handlePageClick(event, (this.currentPage || 1) + 1);
1982
+ }
1983
+ }
1984
+ } }))))) : null));
2195
1985
  }
1986
+ get hostEl() { return getElement(this); }
1987
+ static get watchers() { return {
1988
+ "currentPage": ["onPageOrLastPageChange"],
1989
+ "lastPage": ["onPageOrLastPageChange"]
1990
+ }; }
2196
1991
  };
2197
- EdsPie.MAX_SLICES = 9;
2198
- EdsPie.PALETTES = {
2199
- semantic: [
2200
- 'var(--color-chart-accent)',
2201
- 'var(--color-chart-strong)',
2202
- 'var(--color-chart-accent-dark)',
2203
- 'var(--color-chart-lighter)',
2204
- 'var(--color-chart-accent-light)',
2205
- 'var(--color-chart-lightest)',
2206
- 'var(--color-chart-accent-lighter)',
2207
- 'var(--color-chart-darker)',
2208
- 'var(--color-chart-accent-lightest)'
2209
- ],
2210
- mono: [
2211
- 'var(--grey-700)',
2212
- 'var(--grey-500)',
2213
- 'var(--grey-300)',
2214
- 'var(--grey-100)',
2215
- 'var(--grey-800)',
2216
- 'var(--grey-600)',
2217
- 'var(--grey-400)',
2218
- 'var(--grey-200)',
2219
- 'var(--grey-900)'
2220
- ]
2221
- };
2222
- EdsPie.style = EdsPieStyle0;
1992
+ EdsPagination.style = EdsPaginationStyle0;
2223
1993
 
2224
1994
  const edsSocialNetworksCss = "blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}.f-ui-02{font-family:var(--f-ui-02-fontFamily);font-weight:var(--f-ui-02-fontWeight);font-size:var(--f-ui-02-fontSize);line-height:var(--f-ui-02-lineHeight);letter-spacing:var(--f-ui-02-letterSpacing)}.f-ui-02-light{font-family:var(--f-ui-02-light-fontFamily);font-weight:var(--f-ui-02-light-fontWeight);font-size:var(--f-ui-02-light-fontSize);line-height:var(--f-ui-02-light-lineHeight);letter-spacing:var(--f-ui-02-light-letterSpacing)}.f-ui-03{font-family:var(--f-ui-03-fontFamily);font-weight:var(--f-ui-03-fontWeight);font-size:var(--f-ui-03-fontSize);line-height:var(--f-ui-03-lineHeight);letter-spacing:var(--f-ui-03-letterSpacing)}.mt-12{margin-top:0.75rem}.mt-16{margin-top:1rem}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.gap-4{gap:0.25rem}.effect-color{transition-property:color, background-color, border-color, text-decoration-color, fill, stroke;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:300ms;transition-timing-function:cubic-bezier(0, 0, 0.2, 1)}.effect-focus{outline-width:3px;outline-offset:2px;outline-color:var(--green-500)}.text-light{color:var(--grey-700)}.text-lighter{color:var(--grey-600)}.hover\\:text-default:hover{color:var(--black)}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.rounded-sm{border-radius:8px}";
2225
1995
  const EdsSocialNetworksStyle0 = edsSocialNetworksCss;
@@ -2359,10 +2129,10 @@ const EdsSteps = class {
2359
2129
  render() {
2360
2130
  const steps = this.parsedSteps;
2361
2131
  if (this.type === 'linear') {
2362
- return (h("div", null, h("div", { class: "steps" }, steps.map((step, index) => (h("div", { class: "step mb-28", key: index }, h("h3", { onClick: () => this.handleStepClick(index) }, step.title), this.activeStep === index && (h("div", { class: "content" }, h("div", { class: "f-body-02 text-lighter my-16" }, step.content), h("eds-button", { label: index === steps.length - 1 ? 'Finish' : 'Continue', intent: "primary", class: "next-btn", onClick: this.handleNext }), h("eds-button", { label: "Back", intent: "ghostInverse", onClick: this.handleBack, disabled: index === 0, "extra-class": index === 0 ? 'hidden' : 'ml-8 block' })))))))));
2132
+ return (h("div", null, h("div", { class: "steps" }, steps.map((step, index) => (h("div", { class: "step mb-28", key: index }, h("h3", { onClick: () => this.handleStepClick(index) }, step.title), this.activeStep === index && (h("div", { class: "content" }, h("slot", { name: `step-${index}` }, h("div", { class: index === steps.length - 1 ? 'f-body-02 text-lighter mt-16' : 'f-body-02 text-lighter my-16', innerHTML: step.content })), h("eds-button", { label: index === steps.length - 1 ? 'Finish' : 'Continue', intent: "primary", class: "next-btn", onClick: this.handleNext }), h("eds-button", { label: "Back", intent: "ghostInverse", onClick: this.handleBack, disabled: index === 0, "extra-class": index === 0 ? 'hidden' : 'ml-8 block' })))))))));
2363
2133
  }
2364
2134
  // Static mode: show all steps with their content, no navigation buttons.
2365
- return (h("div", { class: "steps" }, steps.map((step, index) => (h("div", { class: "step mb-28", key: index }, h("h3", null, step.title), h("div", { class: "content" }, h("div", { class: "f-body-02 text-lighter my-16" }, step.content)))))));
2135
+ return (h("div", { class: "steps" }, steps.map((step, index) => (h("div", { class: "step mb-28", key: index }, h("h3", null, step.title), h("div", { class: "content" }, h("slot", { name: `step-${index}` }, h("div", { class: index === steps.length - 1 ? 'f-body-02 text-lighter mt-16' : 'f-body-02 text-lighter my-16', innerHTML: step.content }))))))));
2366
2136
  }
2367
2137
  get el() { return getElement(this); }
2368
2138
  static get watchers() { return {
@@ -2371,7 +2141,7 @@ const EdsSteps = class {
2371
2141
  };
2372
2142
  EdsSteps.style = EdsStepsStyle0;
2373
2143
 
2374
- const edsStepsV2Css = "h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}.steps{position:sticky;margin-left:16px;border-left:1px solid var(--soft-color, #ddd);padding-left:23px;counter-reset:step}.steps h3{counter-increment:step;font-size:var(--f-heading-05-fontSize);font-weight:var(--f-heading-05-fontWeight);line-height:var(--f-heading-05-lineHeight);position:relative}.steps h3::before{content:counter(step);position:absolute;left:-40px;top:0;display:flex;align-items:center;justify-content:center;width:32px;height:32px;font-size:1rem;border:1px solid #ccc;background:var(--grey-900);color:#fff;border-radius:50%}.steps h4{counter-increment:step;font-size:var(--f-heading-06-fontSize);font-weight:var(--f-heading-06-fontWeight);line-height:var(--f-heading-06-lineHeight);position:relative}.steps h4::before{content:counter(step);position:absolute;left:-40px;top:0;display:flex;align-items:center;justify-content:center;width:30px;height:30px;font-size:0.875rem;border:1px solid #ccc;background:#333;color:#fff;border-radius:50%}.steps blockquote{margin-top:16px;margin-bottom:16px;font-style:italic;color:#aaa;padding-left:6px}.steps-img-placeholder{width:100%;height:200px;background:linear-gradient(to bottom, #9CE142, #00C959, #00A595);}.bg-\\[\\#00A595\\]{--tw-bg-opacity:1;background-color:rgb(0 165 149 / var(--tw-bg-opacity))}.relative{position:relative}.f-heading-04{font-family:var(--f-heading-04-fontFamily);font-weight:var(--f-heading-04-fontWeight);font-size:var(--f-heading-04-fontSize);line-height:var(--f-heading-04-lineHeight);letter-spacing:var(--f-heading-04-letterSpacing)}.f-body-02{font-family:var(--f-body-02-fontFamily);font-weight:var(--f-body-02-fontWeight);font-size:var(--f-body-02-fontSize);line-height:var(--f-body-02-lineHeight);letter-spacing:var(--f-body-02-letterSpacing)}.text-inverse{color:var(--white)}.text-light{color:var(--grey-700)}.text-lighter{color:var(--grey-600)}.w-full{width:100%}.h-52{height:3.25rem}.h-96{height:6rem}.h-\\[200px\\]{height:200px}.mt-16{margin-top:1rem}.mb-12{margin-bottom:0.75rem}.last\\:mb-0:last-child{margin-bottom:0rem}.last\\:mt-16:last-child{margin-top:1rem}.border-softer{border:2px solid rgba(0, 0, 0, .1)}.relative{position:relative}.flex{display:flex}.inline-flex{display:inline-flex}.grow{flex-grow:1}.rounded{border-radius:0.25rem}.rounded-lg{border-radius:16px}.rounded-t-lg{border-top-left-radius:16px;border-top-right-radius:16px}.border-2{border-width:2px}.p-8{padding:0.5rem}.p-24{padding:1.5rem}.bg-default{background-color:var(--grey-200)}.bg-inverse{background-color:var(--white)}.top-2{top:0.125rem}.bottom-2{bottom:0.125rem}.left-2{left:0.125rem}.right-2{right:0.125rem}.-translate-x-1\\/2{--tw-translate-x:-50%;transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-1\\/2{--tw-translate-y:-50%;transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.overflow-hidden{overflow:hidden}";
2144
+ const edsStepsV2Css = "h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}.steps{position:sticky;margin-left:16px;border-left:1px solid var(--soft-color, #ddd);padding-left:23px;counter-reset:step}.steps h3{counter-increment:step;font-size:var(--f-heading-05-fontSize);font-weight:var(--f-heading-05-fontWeight);line-height:var(--f-heading-05-lineHeight);position:relative}.steps h3::before{content:counter(step);position:absolute;left:-40px;top:0;display:flex;align-items:center;justify-content:center;width:32px;height:32px;font-size:1rem;border:1px solid #ccc;background:var(--grey-900);color:#fff;border-radius:50%}.steps h4{counter-increment:step;font-size:var(--f-heading-06-fontSize);font-weight:var(--f-heading-06-fontWeight);line-height:var(--f-heading-06-lineHeight);position:relative}.steps h4::before{content:counter(step);position:absolute;left:-40px;top:0;display:flex;align-items:center;justify-content:center;width:30px;height:30px;font-size:0.875rem;border:1px solid #ccc;background:#333;color:#fff;border-radius:50%}.steps blockquote{margin-top:16px;margin-bottom:16px;font-style:italic;color:#aaa;padding-left:6px}.steps-img-placeholder{width:100%;height:200px;background:linear-gradient(to bottom, #9CE142, #00C959, #00A595);}.bg-\\[\\#00A595\\]{--tw-bg-opacity:1;background-color:rgb(0 165 149 / var(--tw-bg-opacity))}.relative{position:relative}.f-heading-04{font-family:var(--f-heading-04-fontFamily);font-weight:var(--f-heading-04-fontWeight);font-size:var(--f-heading-04-fontSize);line-height:var(--f-heading-04-lineHeight);letter-spacing:var(--f-heading-04-letterSpacing)}.f-body-02{font-family:var(--f-body-02-fontFamily);font-weight:var(--f-body-02-fontWeight);font-size:var(--f-body-02-fontSize);line-height:var(--f-body-02-lineHeight);letter-spacing:var(--f-body-02-letterSpacing)}.text-inverse{color:var(--white)}.text-light{color:var(--grey-700)}.text-lighter{color:var(--grey-600)}.w-full{width:100%}.h-52{height:3.25rem}.h-96{height:6rem}.h-\\[200px\\]{height:200px}.mt-16{margin-top:1rem}.my-16{margin-top:1rem;margin-bottom:1rem}.mb-12{margin-bottom:0.75rem}.last\\:mb-0:last-child{margin-bottom:0rem}.last\\:mt-16:last-child{margin-top:1rem}.border-softer{border:2px solid rgba(0, 0, 0, .1)}.relative{position:relative}.flex{display:flex}.inline-flex{display:inline-flex}.grow{flex-grow:1}.rounded{border-radius:0.25rem}.rounded-lg{border-radius:16px}.rounded-t-lg{border-top-left-radius:16px;border-top-right-radius:16px}.border-2{border-width:2px}.p-8{padding:0.5rem}.p-24{padding:1.5rem}.bg-default{background-color:var(--grey-200)}.bg-inverse{background-color:var(--white)}.top-2{top:0.125rem}.bottom-2{bottom:0.125rem}.left-2{left:0.125rem}.right-2{right:0.125rem}.-translate-x-1\\/2{--tw-translate-x:-50%;transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-1\\/2{--tw-translate-y:-50%;transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.overflow-hidden{overflow:hidden}.space-y-8{--tw-space-y-reverse:0;margin-top:calc(0.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(0.5rem * var(--tw-space-y-reverse))}.space-y-16{--tw-space-y-reverse:0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}";
2375
2145
  const EdsStepsV2Style0 = edsStepsV2Css;
2376
2146
 
2377
2147
  const EdsStepsV2 = class {
@@ -2393,6 +2163,7 @@ const EdsStepsV2 = class {
2393
2163
  this.steps = [];
2394
2164
  this.type = 'static';
2395
2165
  this.imageSrc = undefined;
2166
+ this.imageWidth = undefined;
2396
2167
  this.bg = true;
2397
2168
  this.message = undefined;
2398
2169
  this.activeStep = 0;
@@ -2448,9 +2219,9 @@ const EdsStepsV2 = class {
2448
2219
  }
2449
2220
  render() {
2450
2221
  const steps = this.parsedSteps;
2451
- return (h("div", { key: 'e86620aed9aafbf0c8e0cde0230b2147df952379', class: this.articleClasses() }, this.imageSrc ? (h("div", { class: "w-full mb-12 rounded-t-lg overflow-hidden border-2" }, h("eds-img", { src: this.imageSrc, "with-bg": "true", "lazy-load": "true", alt: "Step illustration" }))) : (this.message && (h("div", { class: "w-full bg-[#00A595] rounded-t-lg border-2" }, h("div", { class: "p-24" }, h("span", { class: "text-inverse f-heading-04 " }, this.message))))), h("div", { key: '773e51621fbfbc7b828d196d1e64a9752d02e5a4', class: "p-8" }, this.type === 'linear' ? (h("div", { class: "steps" }, steps.map((step, index) => (h("div", { class: "step space-y-8", key: index }, h("h3", { onClick: () => this.handleStepClick(index) }, step.title), this.activeStep === index && (h("div", { class: "content" }, h("div", { class: "f-body-02 text-lighter mt-16", innerHTML: step.content }), h("eds-button", { label: index === steps.length - 1 ? 'Finish' : 'Continue', intent: "primary", class: "next-btn", onClick: this.handleNext }), h("eds-button", { label: "Back", intent: "ghostInverse", onClick: this.handleBack, disabled: index === 0, "extra-class": index === 0 ? 'hidden' : 'ml-8 block' })))))))) : (
2222
+ return (h("div", { key: 'bbcec2dd9a5096eb0cecf0d413892e5708822f52', class: this.articleClasses() }, this.imageSrc ? (h("div", { class: "w-full mb-12 rounded-t-lg overflow-hidden border-2" }, h("eds-img", { src: this.imageSrc, width: this.imageWidth, "with-bg": "true", "lazy-load": "true", alt: "Step illustration" }))) : (this.message && (h("div", { class: "w-full bg-[#00A595] rounded-t-lg border-2" }, h("div", { class: "p-24" }, h("span", { class: "text-inverse f-heading-04 " }, this.message))))), h("div", { key: 'db0618aad7d5986fcb0889f1c439be73f83a00df', class: "p-8" }, this.type === 'linear' ? (h("div", { class: "steps" }, steps.map((step, index) => (h("div", { class: index === 0 ? 'step' : 'step space-y-16', key: index }, h("h3", { onClick: () => this.handleStepClick(index) }, step.title), this.activeStep === index && (h("div", { class: "content" }, h("slot", { name: `step-${index}` }, h("div", { class: index === steps.length - 1 ? 'f-body-02 text-lighter mt-16' : 'f-body-02 text-lighter my-16', innerHTML: step.content })), h("eds-button", { label: index === steps.length - 1 ? 'Finish' : 'Continue', intent: "primary", class: "next-btn", onClick: this.handleNext }), h("eds-button", { label: "Back", intent: "ghostInverse", onClick: this.handleBack, disabled: index === 0, "extra-class": index === 0 ? 'hidden' : 'ml-8 block' })))))))) : (
2452
2223
  // Static mode: show all steps with their content.
2453
- h("div", { class: "steps space-y-8" }, steps.map((step, index) => (h("div", { class: "step", key: index }, h("h3", { onClick: () => this.handleStepClick(index) }, step.title), h("div", { class: "content" }, h("div", { class: "f-body-02 text-lighter mt-16", innerHTML: step.content }))))))))));
2224
+ h("div", { class: "steps space-y-8" }, steps.map((step, index) => (h("div", { class: "step", key: index }, h("h3", { onClick: () => this.handleStepClick(index) }, step.title), h("div", { class: "content" }, h("slot", { name: `step-${index}` }, h("div", { class: index === steps.length - 1 ? 'f-body-02 text-lighter mt-16' : 'f-body-02 text-lighter my-16', innerHTML: step.content })))))))))));
2454
2225
  }
2455
2226
  get el() { return getElement(this); }
2456
2227
  static get watchers() { return {
@@ -2459,6 +2230,245 @@ const EdsStepsV2 = class {
2459
2230
  };
2460
2231
  EdsStepsV2.style = EdsStepsV2Style0;
2461
2232
 
2233
+ const edsTableCss = "table{text-indent:0;border-color:inherit;border-collapse:collapse;}.container{width:calc(var(--container-width, 100%) - (2 * var(--breakout-container-outer-gutter, var(--container-outer-gutter, var(--outer-gutter, 0)))));margin-right:auto;margin-left:auto}.container>*{--container-outer-gutter:0;--breakout-container-outer-gutter:0}.pt-32{padding-top:2rem}.pt-40{padding-top:2.5rem}.pt-48{padding-top:3rem}.pb-28{padding-bottom:1.75rem}.pb-60{padding-bottom:3.75rem}.mt-20{margin-top:1.25rem}.mt-28{margin-top:1.75rem}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.overflow-x-auto{overflow-x:auto}.mt-6{margin-top:0.375rem}.p-0{padding:0rem}.m-0{margin:0rem}.border{border-width:1px}.border-softer{border:1px solid rgba(0, 0, 0, .1)}.even\\:bg-inverse-softer:nth-child(even){background-color:rgba(255, 255, 255, .15)}.px-8{padding-left:0.5rem;padding-right:0.5rem}.px-20{padding-left:1.25rem;padding-right:1.25rem}.py-8{padding-top:0.5rem;padding-bottom:0.5rem}.f-ui-01{font-family:var(--f-ui-01-fontFamily);font-weight:var(--f-ui-01-fontWeight);font-size:var(--f-ui-01-fontSize);line-height:var(--f-ui-01-lineHeight);letter-spacing:var(--f-ui-01-letterSpacing)}.f-ui-02{font-family:var(--f-ui-02-fontFamily);font-weight:var(--f-ui-02-fontWeight);font-size:var(--f-ui-02-fontSize);line-height:var(--f-ui-02-lineHeight);letter-spacing:var(--f-ui-02-letterSpacing)}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.text-center{text-align:center}.break-words{overflow-wrap:anywhere}";
2234
+ const EdsTableStyle0 = edsTableCss;
2235
+
2236
+ const EdsTable = class {
2237
+ constructor(hostRef) {
2238
+ registerInstance(this, hostRef);
2239
+ this.rowaction = createEvent(this, "rowaction", 7);
2240
+ this.handleResize = () => {
2241
+ this.updateContainerWidth();
2242
+ };
2243
+ this.data = null;
2244
+ this.endpoint = null;
2245
+ this.config = {};
2246
+ this.rowsPerPage = 10;
2247
+ this.paginationEnabled = true;
2248
+ this.searchEnabled = false;
2249
+ this.hostWidth = undefined;
2250
+ this.columnSize = 'default';
2251
+ this.actions = [];
2252
+ this.actionTemplate = undefined;
2253
+ this.parsedActions = [];
2254
+ this.dataColumns = [];
2255
+ this.tbData = [];
2256
+ this.columns = [];
2257
+ this.currentPage = 1;
2258
+ this.parsedConfig = {};
2259
+ this.totalRows = 0;
2260
+ this.searchQuery = '';
2261
+ this.containerWidth = 0;
2262
+ }
2263
+ handleDataChange() {
2264
+ this.parseData();
2265
+ }
2266
+ handleConfigChange() {
2267
+ this.parseConfig();
2268
+ }
2269
+ handleActionsChange() {
2270
+ try {
2271
+ this.parsedActions = typeof this.actions === 'string' ? JSON.parse(this.actions) : this.actions;
2272
+ }
2273
+ catch (_a) {
2274
+ console.error('Failed to parse actions JSON');
2275
+ this.parsedActions = [];
2276
+ }
2277
+ }
2278
+ componentWillLoad() {
2279
+ this.parseConfig();
2280
+ this.handleActionsChange();
2281
+ this.data ? this.parseData() : this.endpoint && this.fetchData();
2282
+ }
2283
+ componentDidLoad() {
2284
+ this.updateContainerWidth();
2285
+ window.addEventListener('resize', this.handleResize);
2286
+ this.setupPaginationListener();
2287
+ }
2288
+ componentDidUpdate() {
2289
+ this.setupPaginationListener();
2290
+ }
2291
+ disconnectedCallback() {
2292
+ window.removeEventListener('resize', this.handleResize);
2293
+ }
2294
+ updateContainerWidth() {
2295
+ // Use hostWidth prop if provided; otherwise, measure parent element
2296
+ if (this.hostWidth && this.hostWidth.trim() !== '') {
2297
+ this.containerWidth = Number(this.hostWidth);
2298
+ }
2299
+ else if (this.hostEl.parentElement instanceof HTMLElement) {
2300
+ this.containerWidth = this.hostEl.parentElement.getBoundingClientRect().width;
2301
+ }
2302
+ else {
2303
+ this.containerWidth = 400;
2304
+ }
2305
+ }
2306
+ parseData() {
2307
+ try {
2308
+ this.tbData = parseData(this.data);
2309
+ this.totalRows = this.tbData.length;
2310
+ this.updateColumns();
2311
+ this.currentPage = 1;
2312
+ }
2313
+ catch (error) {
2314
+ console.error('Failed to parse data:', error);
2315
+ this.tbData = [];
2316
+ }
2317
+ }
2318
+ parseConfig() {
2319
+ try {
2320
+ this.parsedConfig = typeof this.config === 'string' ? JSON.parse(this.config) : this.config;
2321
+ }
2322
+ catch (error) {
2323
+ console.error('Failed to parse config:', error);
2324
+ this.parsedConfig = {};
2325
+ }
2326
+ }
2327
+ async fetchData() {
2328
+ try {
2329
+ const response = await fetch(this.endpoint);
2330
+ const data = await response.json();
2331
+ this.data = data;
2332
+ }
2333
+ catch (error) {
2334
+ console.error('Failed to fetch data:', error);
2335
+ }
2336
+ }
2337
+ setupPaginationListener() {
2338
+ if (!this.shouldEnablePagination()) {
2339
+ return;
2340
+ }
2341
+ const paginationEl = this.hostEl.shadowRoot.querySelector('eds-pagination');
2342
+ if (paginationEl && !paginationEl.hasAttribute('listener-attached')) {
2343
+ paginationEl.addEventListener('page', (event) => this.handlePageChange(event.detail));
2344
+ paginationEl.setAttribute('listener-attached', 'true');
2345
+ }
2346
+ }
2347
+ getFilteredRows() {
2348
+ return this.tbData.filter((row) => Object.values(row).some((value) => value.toString().toLowerCase().includes(this.searchQuery.toLowerCase())));
2349
+ }
2350
+ getPaginatedRows() {
2351
+ const filteredRows = this.getFilteredRows();
2352
+ this.totalRows = filteredRows.length;
2353
+ const start = (this.currentPage - 1) * this.rowsPerPage;
2354
+ return filteredRows.slice(start, start + this.rowsPerPage);
2355
+ }
2356
+ handlePageChange(newPage) {
2357
+ this.currentPage = newPage;
2358
+ sendAnalytics({
2359
+ category: 'ui-component',
2360
+ parentContext: null,
2361
+ tag: `${this.hostEl.tagName.toLowerCase()}/eds-pagination`,
2362
+ name: `${newPage}` || '',
2363
+ action: 'page'
2364
+ });
2365
+ }
2366
+ handleSearch(event) {
2367
+ this.searchQuery = event.target.value;
2368
+ this.currentPage = 1;
2369
+ }
2370
+ renderCell(value, column) {
2371
+ var _a;
2372
+ const format = (_a = this.parsedConfig[column]) === null || _a === void 0 ? void 0 : _a.format;
2373
+ return format === 'uppercase' ? (value === null || value === void 0 ? void 0 : value.toString().toUpperCase()) : format === 'svg' ? (h("div", { innerHTML: value })) : format === 'bold' ? (h("strong", null, value)) : format === 'code' ? (h("code", null, value)) : (value);
2374
+ }
2375
+ /**
2376
+ * Renders one action (button or checkbox) for a specific action‐name.
2377
+ * Used by the “Actions” column below.
2378
+ */
2379
+ renderSingleActionCell(actionName, row) {
2380
+ var _a;
2381
+ const act = this.parsedActions.find((a) => a.name === actionName);
2382
+ if (this.actionTemplate) {
2383
+ return this.actionTemplate(row);
2384
+ }
2385
+ const type = act.type || 'button';
2386
+ if (type === 'checkbox') {
2387
+ const boundField = (_a = act.field) !== null && _a !== void 0 ? _a : act.name;
2388
+ const checked = !!row[boundField];
2389
+ return (h("eds-input-field", { name: `chc-${actionName}`, label: act.label, type: "checkbox", checked: checked, onChange: (e) => this.emitAction(act.name, row, e.target.checked) }));
2390
+ }
2391
+ return h("eds-link", { label: act.label, intent: "weak", onClick: () => this.emitAction(act.name, row) });
2392
+ }
2393
+ emitAction(actionName, row, checked) {
2394
+ sendAnalytics({
2395
+ category: 'ui-component',
2396
+ parentContext: null,
2397
+ tag: `${this.hostEl.tagName.toLowerCase()}/action`,
2398
+ name: actionName,
2399
+ action: 'click'
2400
+ });
2401
+ this.rowaction.emit({ action: actionName, row, checked: !!checked });
2402
+ }
2403
+ shouldEnablePagination() {
2404
+ return this.paginationEnabled && this.totalRows > this.rowsPerPage;
2405
+ }
2406
+ updateColumns() {
2407
+ var _a, _b;
2408
+ // 1) Grab all data‐keys from the first row (if any) as before:
2409
+ this.columns = this.tbData.length > 0 ? Object.keys(this.tbData[0]) : [];
2410
+ // 2) Instead of pushing each action.name, we add just a single “actions” column
2411
+ // (you can call it anything; we’ll detect it in render())
2412
+ if (((_b = (_a = this.parsedActions) === null || _a === void 0 ? void 0 : _a.length) !== null && _b !== void 0 ? _b : 0) > 0 && this.tbData.length > 0) {
2413
+ this.columns.push('actions');
2414
+ }
2415
+ }
2416
+ getVisibleColumnsCount() {
2417
+ return this.columns.filter((column) => { var _a; return !((_a = this.parsedConfig[column]) === null || _a === void 0 ? void 0 : _a.hidden); }).length;
2418
+ }
2419
+ divisionFactor() {
2420
+ let divisionFactor = 1;
2421
+ if (this.columnSize === 'medium') {
2422
+ divisionFactor = 2;
2423
+ }
2424
+ else if (this.columnSize === 'large') {
2425
+ divisionFactor = 4;
2426
+ }
2427
+ return divisionFactor;
2428
+ }
2429
+ capitalize(str) {
2430
+ return str.charAt(0).toUpperCase() + str.slice(1).toLowerCase();
2431
+ }
2432
+ render() {
2433
+ const currentContainerWidth = this.hostWidth && this.hostWidth.trim() !== '' ? Number(this.hostWidth) : this.containerWidth || 400;
2434
+ const visibleColumnsCount = this.getVisibleColumnsCount();
2435
+ const columnWidth = visibleColumnsCount > 0 ? Math.floor((currentContainerWidth / visibleColumnsCount) * this.divisionFactor()) : 100;
2436
+ const paginatedRows = this.getPaginatedRows();
2437
+ const lastPage = Math.ceil(this.totalRows / this.rowsPerPage);
2438
+ return (h("div", { key: '5034177431626ab2bfc5fd0118c006d11a4f6e96' }, this.searchEnabled && (h("div", { key: '86e1a6ffc4bed69f290b3a53031341ab276eaf04' }, h("eds-input-field", { key: 1, name: "search", "aria-label": "Search", type: "text", placeholder: "Search...", onInput: (event) => this.handleSearch(event) }))), h("div", { key: 'bc11838d819ecf89c5ba1cc1cfe7ac0af0e82b59', class: "mt-20" }, h("table", { key: '97f16b65eb1d9387e9ca7588184c9e68c1afcc2e', class: "block overflow-x-auto mt-6 p-0" }, h("thead", { key: 'f4d64ada28c225db1b224277513e663a99de1cec' }, h("tr", { key: 'c6a69e159cceada0f7143c0acb787e5c23242ae7', class: "m-0 p-0 border border-softer even:bg-inverse-softer" }, this.columns.map((col) => {
2439
+ var _a;
2440
+ // 3) For the “actions” column, override the header to “Actions”
2441
+ if (col === 'actions') {
2442
+ // You can choose a smaller min‐width here if you wish:
2443
+ return (h("th", { class: "m-0 py-8 border border-softer f-ui-02 break-words", style: { minWidth: `${columnWidth - 4}px` } }, "Actions"));
2444
+ }
2445
+ // Otherwise, render column name or action label if you do want to override:
2446
+ if (!((_a = this.parsedConfig[col]) === null || _a === void 0 ? void 0 : _a.hidden)) {
2447
+ return (h("th", { class: "m-0 py-8 border border-softer f-ui-02 break-words", style: { minWidth: `${columnWidth - 4}px` } }, this.capitalize(col)));
2448
+ }
2449
+ return null;
2450
+ }))), h("tbody", { key: '133af82fdd1f820e853734ab48123cb3db527e15' }, paginatedRows.map((row) => (h("tr", { class: "m-0 p-0 border border-softer even:bg-inverse-softer" }, this.columns.map((col) => {
2451
+ var _a;
2452
+ if (col === 'actions') {
2453
+ // 4) Render ALL actions inside a single <td> for this row:
2454
+ return (h("td", { class: "text-center border border-softer m-0 f-ui-02 break-words actions-cell", style: { minWidth: `${columnWidth - 4}px` } }, h("div", { style: { display: 'flex', gap: '0.5rem', justifyContent: 'center', flexWrap: 'wrap' } }, this.parsedActions.map((act) => (h("span", { style: { whiteSpace: 'nowrap' } }, this.renderSingleActionCell(act.name, row)))))));
2455
+ }
2456
+ if (!((_a = this.parsedConfig[col]) === null || _a === void 0 ? void 0 : _a.hidden)) {
2457
+ // Regular data cell:
2458
+ return (h("td", { class: "text-center border border-softer m-0 py-8 f-ui-2 break-words", style: { minWidth: `${columnWidth - 4}px` } }, this.renderCell(row[col], col)));
2459
+ }
2460
+ return null;
2461
+ }))))))), this.shouldEnablePagination() && (h("div", { key: '85032d06cd0ac5dae9b504d423fceba3cd074861', class: "mt-20" }, h("eds-pagination", { key: '8caf6f57960e222c04d45f57a5811cd7bd524f4c', currentPage: this.currentPage, lastPage: lastPage, perPage: this.rowsPerPage, total: this.totalRows, mode: "default" })))));
2462
+ }
2463
+ get hostEl() { return getElement(this); }
2464
+ static get watchers() { return {
2465
+ "data": ["handleDataChange", "parseData"],
2466
+ "config": ["handleConfigChange"],
2467
+ "actions": ["handleActionsChange"]
2468
+ }; }
2469
+ };
2470
+ EdsTable.style = EdsTableStyle0;
2471
+
2462
2472
  const edsTabsCss = "*,::before,::after{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-scroll-snap-strictness:proximity;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgb(147 197 253 / 0.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;}*,::before,::after{box-sizing:border-box;border-width:0;border-style:solid;border-color:currentColor;}::before,::after{--tw-content:''}a{color:inherit;text-decoration:inherit}.relative{position:relative}.f-ui-03{font-family:var(--f-ui-03-fontFamily);font-weight:var(--f-ui-03-fontWeight);font-size:var(--f-ui-03-fontSize);line-height:var(--f-ui-03-lineHeight);letter-spacing:var(--f-ui-03-letterSpacing)}.whitespace-nowrap{white-space:nowrap}.effect-color{transition-property:color, background-color, border-color, text-decoration-color, fill, stroke;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:300ms;transition-timing-function:cubic-bezier(0, 0, 0.2, 1)}.focus-visible\\:text-default:focus-visible{color:var(--black)}.hover\\:text-default:hover{color:var(--black)}.border-2{border-width:2px}.after\\:content-\\[\\'\\'\\]::after{--tw-content:'';content:var(--tw-content)}.after\\:bottom-0::after{bottom:0rem}.after\\:border-0::after{border-width:0px}.after\\:border-b-2::after{border-bottom-width:2px}.after\\:absolute::after{position:absolute}.after\\:inset-0::after{inset:0rem}.after\\:rounded-lg::after{border-radius:16px}.after\\:border-solid::after{border-style:solid}.after\\:border-3::after{border-width:3px}.after\\:border-accent::after{border-color:var(--green-500)}.after\\:opacity-0::after{opacity:0}.outline-none{outline:2px solid transparent;outline-offset:2px}.focus\\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.focus-visible\\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.focus-visible\\:after\\:opacity-100:focus-visible::after{opacity:1}.rounded-t-lg{border-top-left-radius:16px;border-top-right-radius:16px}.rounded-tl-lg{border-top-left-radius:16px}.rounded-tr-lg{border-top-right-radius:16px}.border-l-0{border-left-width:0px}.border-r-0{border-right-width:0px}.pr-28{padding-right:1.75rem}.pl-28{padding-left:1.75rem}.-mr-16{margin-right:-1rem}.-ml-16{margin-left:-1rem}.px-16{padding-left:1rem;padding-right:1rem}.py-12{padding-top:0.75rem;padding-bottom:0.75rem}.after\\:left-16::after{left:1rem}.after\\:right-16::after{right:1rem}.text-lighter{color:var(--grey-600)}.bg-dark{background-color:var(--grey-300)}.hover\\:bg-darker:hover{background-color:var(--grey-400)}.border-soft{border-color:var(--grey-400)}.border-softest{border-color:rgba(0, 0, 0, .05)}.bg-default{background-color:var(--grey-200)}.text-default{color:var(--black)}.z-99{z-index:99}.before\\:bottom-0::before{bottom:0rem}.before\\:h-12::before{height:0.75rem}.before\\:opacity-5::before{opacity:0.05}.before\\:content-\\[\\'\\'\\]::before{--tw-content:'';content:var(--tw-content)}.before\\:absolute::before{position:absolute}.before\\:-bottom-2::before{bottom:-0.125rem}.after\\:inset-x-0::after{left:0rem;right:0rem}.before\\:inset-x-0::before{left:0rem;right:0rem}.before\\:h-3::before{height:0.1875rem}.before\\:bg-default::before{background-color:var(--grey-200)}.after\\:border-softest::after{border-color:rgba(0, 0, 0, .05)}.overflow-x-hidden{overflow-x:hidden}.overflow-y-auto{overflow-y:auto}.before\\:bg-gradient-y::before{background:linear-gradient(to bottom, transparent, ease-in-out, black)}.scroller-x{-ms-overflow-style:none;scrollbar-width:none}.overflow-x-auto{overflow-x:auto}.max-w-xxxl{max-width:2200px}.z-1{z-index:1}.mx-auto{margin-left:auto;margin-right:auto}.pt-8{padding-top:0.5rem}.pr-16{padding-right:1rem}.pl-16{padding-left:1rem}.inline-flex{display:inline-flex}@media (min-width: 900px){.lg\\:px-28{padding-left:1.75rem;padding-right:1.75rem}}@media (min-width: 2200px){.xxxl\\:px-0{padding-left:0rem;padding-right:0rem}}";
2463
2473
  const EdsTabsStyle0 = edsTabsCss;
2464
2474
 
@@ -2620,30 +2630,6 @@ const EdsTag = class {
2620
2630
  };
2621
2631
  EdsTag.style = EdsTagStyle0;
2622
2632
 
2623
- const edsTooltipCss = ".relative{position:relative}.absolute{position:absolute}.inline-block{display:inline-block}.rounded-xs{border-radius:4px}.bg-strongest{background-color:var(--black)}.text-inverse{color:var(--white)}.f-ui-03-light{font-family:var(--f-ui-03-light-fontFamily);font-weight:var(--f-ui-03-light-fontWeight);font-size:var(--f-ui-03-light-fontSize);line-height:var(--f-ui-03-light-lineHeight);letter-spacing:var(--f-ui-03-light-letterSpacing)}.pointer-events-none{pointer-events:none}.left-1\\/2{left:50%}.z-10{z-index:10}.transform{transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-x-1\\/2{--tw-translate-x:-50%;transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.whitespace-nowrap{white-space:nowrap}.p-6{padding:0.375rem}.bottom-full{bottom:100%}.mb-2{margin-bottom:0.125rem}.opacity-0{opacity:0}.transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:150ms}.duration-150{transition-duration:150ms}.ease-in-out{transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1)}.group:hover .group-hover\\:opacity-100{opacity:1}";
2624
- const EdsTooltipStyle0 = edsTooltipCss;
2625
-
2626
- const EdsTooltip = class {
2627
- constructor(hostRef) {
2628
- registerInstance(this, hostRef);
2629
- this.content = undefined;
2630
- }
2631
- /** fire analytics on every hover */
2632
- handleHover() {
2633
- sendAnalytics({
2634
- category: 'ui-component',
2635
- tag: this.el.tagName.toLowerCase(),
2636
- name: this.content.toLowerCase(),
2637
- action: 'hover'
2638
- });
2639
- }
2640
- render() {
2641
- return (h("div", { key: 'cf17cd61cd5888d6ea12bf6be0fb8c841072b4d6', class: "relative inline-block group" }, h("slot", { key: '7a41d90940fff4e8b887ec4a3240371466f219a5' }), h("div", { key: 'ccf06592f4c977030b0cf54cce48d13889c059f3', class: "absolute bottom-full left-1/2 \n transform -translate-x-1/2 mb-2\n rounded-xs bg-strongest text-inverse \n f-ui-03-light pointer-events-none \n z-10 whitespace-nowrap p-6 opacity-0 transition-opacity duration-150 ease-in-out\n group-hover:opacity-100", role: "tooltip" }, this.content)));
2642
- }
2643
- get el() { return getElement(this); }
2644
- };
2645
- EdsTooltip.style = EdsTooltipStyle0;
2646
-
2647
2633
  const edsUserCss = "hr,p{margin:0}.block{display:block}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.text-default{color:var(--black)}.min-w-\\[280px\\]{min-width:280px}.p-8{padding:0.5rem}.gap-x-16{-moz-column-gap:1rem;column-gap:1rem}.gap-y-8{row-gap:0.5rem}.pb-16{padding-bottom:1rem}.border-b-2{border-bottom-width:2px}.border-softer{border-color:rgba(0, 0, 0, .1 )}.max-w-full{max-width:100%}.w-full{width:100%}.f-ui-01{font-family:var(--f-ui-01-fontFamily);font-weight:var(--f-ui-01-fontWeight);font-size:var(--f-ui-01-fontSize);line-height:var(--f-ui-01-lineHeight);letter-spacing:var(--f-ui-01-letterSpacing)}.f-ui-03-light{font-family:var(--f-ui-03-light-fontFamily);font-weight:var(--f-ui-03-light-fontWeight);font-size:var(--f-ui-03-light-fontSize);line-height:var(--f-ui-03-light-lineHeight);letter-spacing:var(--f-ui-03-light-letterSpacing)}.text-light{color:var(--grey-700)}.mt-4{margin-top:0.25rem}.mt-16{margin-top:1rem}";
2648
2634
  const EdsUserStyle0 = edsUserCss;
2649
2635
 
@@ -2676,19 +2662,10 @@ const EdsUser = class {
2676
2662
  }
2677
2663
  render() {
2678
2664
  const user = this.parsedUser;
2679
- return (h("div", { key: '9e2a8da09c2c15080e3b1ccf5b8e0e93b679d34b', class: "block" }, h("div", { key: 'ccc34b3c7b0ab8d515eebfa1962264365d20c788', class: "flex items-center" }, h("eds-dropdown", { key: '5283fb61297cd5f631d04da9ca19371a3778068c', label: `Welcome, ${user.preferred_username}`, intent: "tertiary", "aria-label": "User Menu", "dropdown-pos": "right", "dropdown-offset": "false", icon: "chevron-down", class: "text-default" }, h("div", { key: 'd39e041e54fb59a409520e8b88f6f569d55cc6fc', class: "min-w-[280px] p-8" }, h("div", { key: '50e571e30a6902b8443b9766dfb1018c76a2f68e', class: "flex gap-x-16" }, h("eds-avatar", { key: '88a675a256466366aba1028831626253d11d2474', "first-name": user.given_name, "last-name": user.family_name, initials: this.initials, color: "grey" }), h("div", { key: '99626794a7fa243bc599e9e77b0bc1b717d14c96', class: "max-w-full" }, user.name && h("p", { key: '1f1e33e19fd2b266f442b596953100f6b5e6dfcd', class: "f-ui-01 text-default w-full text-ellipsis" }, user.name), user.preferred_username && h("p", { key: 'a36ebac6fdae9fa059887f7cc5d1009179f8eef9', class: "f-ui-03-light text-light mt-4" }, user.preferred_username), user.email && h("p", { key: '976cd925af318831a22f1d43242e0295614bb2a1', class: "f-ui-03-light text-light mt-4" }, user.email))), h("eds-block-break", { key: '7d189caaab8a9b593017312d6e3d6943c36de22b' }), h("div", { key: 'efcfc9a2c1f774abfab09b09682d7839bd1d5d2c', class: "text-default flex w-full flex-col gap-y-8" }, h("slot", { key: 'f54425f35d804753b94bb61e1d8e211a1583ac3b' })))))));
2665
+ return (h("div", { key: '9e2a8da09c2c15080e3b1ccf5b8e0e93b679d34b', class: "block" }, h("div", { key: 'ccc34b3c7b0ab8d515eebfa1962264365d20c788', class: "flex items-center" }, h("eds-dropdown", { key: 'dc4920fd442baa9f13d9f2b9a21065b5184eba83', label: `Hi, ${user.preferred_username}`, intent: "tertiary", "aria-label": "User Menu", "dropdown-pos": "right", "dropdown-offset": "false", icon: "chevron-down", class: "text-default" }, h("div", { key: '0522db7fc229186c645665a4c9eeedc46fb5823b', class: "min-w-[280px] p-8" }, h("div", { key: 'af7b9daec713d24f8a1415415d19cdf48905c0cb', class: "flex gap-x-16" }, h("eds-avatar", { key: 'c3ea7307d9beb597fe93d3942b7724f8526298ad', "first-name": user.given_name, "last-name": user.family_name, initials: this.initials, color: "grey" }), h("div", { key: '7af823b5f38a3d7acf16c633471dcfe74bca5e3c', class: "max-w-full" }, user.name && h("p", { key: '5973dfbac0efceeddb0dc211d9c502a1ad3b0dde', class: "f-ui-01 text-default w-full text-ellipsis" }, user.name), user.preferred_username && h("p", { key: '5989927760ed2a2d1365661bbdc112a3a3d23bbf', class: "f-ui-03-light text-light mt-4" }, user.preferred_username), user.email && h("p", { key: 'ee36be95298c0c7a748537012d48a85884955904', class: "f-ui-03-light text-light mt-4" }, user.email))), h("eds-block-break", { key: 'fb3ef5cad6e81f51983e54914412131c3bd4cbc2' }), h("div", { key: 'e3784f3f4931378bf55d766d4a1cf5e24a75d462', class: "text-default flex w-full flex-col gap-y-8" }, h("slot", { key: 'c0052bb56286d9a3fdc686c8407e105499a38084' })))))));
2680
2666
  }
2681
2667
  get hostEl() { return getElement(this); }
2682
2668
  };
2683
2669
  EdsUser.style = EdsUserStyle0;
2684
2670
 
2685
- const TokenSpacing = class {
2686
- constructor(hostRef) {
2687
- registerInstance(this, hostRef);
2688
- }
2689
- render() {
2690
- return (h("div", { key: 'ad89d21ec01f11c77d85853f7c0dbefd8ea9f07f', class: "w-full" }, h("ul", { key: '6108fb2870c358de8e5c48e6d14f6c1e76af856f', class: "not-prose gap-y-8 md:gap-y-12 lg:gap-y-16" }, h("li", { key: 'cd0d1986b416f12164b8d0458262987a445662ca', class: "grid-col-span-12 md:grid-col-span-4 flex flex-col items-center mt-16" }, h("div", { key: 'f2cfd77fcba601b89605dabf109f599816bb118e', class: "container p-8 item-center border-2 border-soft" }, h("div", { key: '69e4cb5660f5c51d2b9c1ba30a38f3b7decacc58', class: "spacing-sample m-16 bg-strong" }, h("span", { key: '70a07326b0a95655db3aad083637499f5ed4aa73', class: "f-body-01 text-inverse" }, "Margin: 1rem / m-16")))), h("li", { key: '97b8c127e9bbe9af4ec8f6876ebae3f87a52d130', class: "grid-col-span-12 md:grid-col-span-4 flex flex-col items-center mt-16" }, h("div", { key: '58537d6aa824b489ae9c5150400af21f11f1f447', class: "container p-8 item-center border-2 border-soft" }, h("div", { key: '3f2913d232cb9de1b678b7f7903bef0642ef42df', class: "spacing-sample ml-64 bg-strong" }, h("span", { key: 'fe56d1a501dc219a1bac474b674586609499f3de', class: "f-body-01 text-inverse" }, "Margin Left: 4rem / ml-64")))), h("li", { key: 'e2dee648fd4bce503414d76f3afe64655285523c', class: "grid-col-span-12 md:grid-col-span-4 flex flex-col items-center mt-16" }, h("div", { key: 'e788fa22248ac92fb8bc89566c5b8a77cf14578f', class: "container p-8 item-center border-2 border-soft" }, h("div", { key: '9629958b453aa831a1d871bb4e846d0926d9e57c', class: "spacing-sample mt-32 bg-strong" }, h("span", { key: '0efde7eaed0fe3e14f476617e7e9bf2e20131f2c', class: "f-body-01 text-inverse" }, "Margin Top: 2rem / mt-32")))), h("li", { key: '6dabfeb0086c784c50843abd12d5a505a56e0933', class: "grid-col-span-12 md:grid-col-span-4 flex flex-col items-center mt-16" }, h("div", { key: '164e7eec6ed3aad2847c4ede97f4bbfed34138d1', class: "container p-8 item-center border-2 border-soft" }, h("div", { key: '9be99b05ba29204f6163df2c1522e7aa6211bd3d', class: "spacing-sample p-32 bg-strong" }, h("span", { key: 'ae0a7ea74e31ea324015b844848c3d5a68930e8d', class: "f-body-01 text-inverse" }, "Padding: 2rem / p-32")))), h("li", { key: '3804dbfb6a64a1dfd478bd0132ff83f51bcff33e', class: "grid-col-span-12 md:grid-col-span-4 flex flex-col items-center mt-16" }, h("div", { key: '75c96b0762c3fac8b4de897ab8147b2c5614a360', class: "container p-8 item-center border-2 border-soft" }, h("div", { key: 'd00487531406fa89112bee34e05306c59dc4f497', class: "spacing-sample pt-32 bg-strong" }, h("span", { key: '8a750b7ac07739a71949b236421427b8bb05b067', class: "f-body-01 text-inverse" }, "Padding Top: 2rem / pt-32")))), h("li", { key: '5e5fe43383f13b4377aca7cfb07c97b6ac1dd79b', class: "grid-col-span-12 md:grid-col-span-4 flex flex-col items-center mt-16" }, h("div", { key: 'ed2ac88c543eba8c580d029ccacb1a8b26c1cae7', class: "container p-8 item-center border-2 border-soft" }, h("div", { key: 'cf9a94b61e598c0ee6da9e771717574b48264333', class: "spacing-sample pl-32 bg-strong" }, h("span", { key: 'a2d3fce66240c6b0d49d1a655c0b5a84be9c630d', class: "f-body-01 text-inverse" }, "Padding Left: 2rem / pl-32")))))));
2691
- }
2692
- };
2693
-
2694
- export { EdsAvatar as eds_avatar, EdsBlockBreak as eds_block_break, EdsBreadcrumb as eds_breadcrumb, EdsButton as eds_button, EdsCardDesc as eds_card_desc, EdsCardGeneric as eds_card_generic, EdsCardTitle as eds_card_title, EdsDropdown as eds_dropdown, EdsFooter as eds_footer, EdsForm as eds_form, EdsFullscreenMenu as eds_fullscreen_menu, EdsGauge as eds_gauge, EdsHeader as eds_header, EdsIconWrapper as eds_icon_wrapper, EdsImg as eds_img, EdsInput as eds_input, EdsInputField as eds_input_field, EdsInputFooter as eds_input_footer, EdsInputLabel as eds_input_label, EdsInputRange as eds_input_range, EdsInputSearch as eds_input_search, EdsInputSelect as eds_input_select, EdsLink as eds_link, EdsLogo as eds_logo, EdsModal as eds_modal, EdsPie as eds_pie, EdsSocialNetworks as eds_social_networks, EdsSteps as eds_steps, EdsStepsV2 as eds_steps_v2, EdsTabs as eds_tabs, EdsTag as eds_tag, EdsTooltip as eds_tooltip, EdsUser as eds_user, TokenSpacing as token_spacing };
2671
+ export { EdsAvatar as eds_avatar, EdsBlockBreak as eds_block_break, EdsButton as eds_button, EdsDropdown as eds_dropdown, EdsFooter as eds_footer, EdsForm as eds_form, EdsFullscreenMenu as eds_fullscreen_menu, EdsHeader as eds_header, EdsIconWrapper as eds_icon_wrapper, EdsImg as eds_img, EdsInput as eds_input, EdsInputField as eds_input_field, EdsInputFooter as eds_input_footer, EdsInputLabel as eds_input_label, EdsInputRange as eds_input_range, EdsInputSearch as eds_input_search, EdsInputSelect as eds_input_select, EdsLink as eds_link, EdsLogo as eds_logo, EdsModal as eds_modal, EdsPagination as eds_pagination, EdsSocialNetworks as eds_social_networks, EdsSteps as eds_steps, EdsStepsV2 as eds_steps_v2, EdsTable as eds_table, EdsTabs as eds_tabs, EdsTag as eds_tag, EdsUser as eds_user };