@ebrains/components 1.0.0 → 1.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (378) 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} +481 -501
  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 +2 -2
  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 +34 -2
  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 +3 -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 +14 -2
  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 +2 -2
  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-321a950b.entry.js +1 -0
  225. package/dist/components/p-38c9aee7.entry.js +1 -0
  226. package/dist/components/p-42295abe.entry.js +1 -0
  227. package/dist/components/p-424e91b3.entry.js +1 -0
  228. package/dist/components/p-43cff423.entry.js +1 -0
  229. package/dist/components/p-45f21238.entry.js +1 -0
  230. package/dist/components/p-4bdf1589.entry.js +1 -0
  231. package/dist/components/p-4dcdd4d9.entry.js +1 -0
  232. package/dist/components/p-4fad9296.entry.js +1 -0
  233. package/dist/components/p-50f43dfd.entry.js +1 -0
  234. package/dist/components/p-563d56c0.entry.js +1 -0
  235. package/dist/components/p-5827fd52.entry.js +1 -0
  236. package/dist/components/{p-7af6b832.entry.js → p-590fb0e7.entry.js} +1 -1
  237. package/dist/components/p-5c5dfc4a.entry.js +1 -0
  238. package/dist/components/p-66f4cdd9.entry.js +1 -0
  239. package/dist/components/p-6dc6f729.entry.js +1 -0
  240. package/dist/components/p-6f9ab63c.entry.js +1 -0
  241. package/dist/components/p-7502b8b4.entry.js +1 -0
  242. package/dist/components/p-750e3ec8.entry.js +1 -0
  243. package/dist/components/p-8c0b0121.entry.js +1 -0
  244. package/dist/components/p-95518776.entry.js +1 -0
  245. package/dist/components/p-99d9bb29.entry.js +1 -0
  246. package/dist/components/p-9a4b5746.entry.js +1 -0
  247. package/dist/components/p-9c823b5e.entry.js +1 -0
  248. package/dist/components/p-9d64d1fd.entry.js +1 -0
  249. package/dist/components/p-ab4447f6.entry.js +1 -0
  250. package/dist/components/p-b073d78f.entry.js +1 -0
  251. package/dist/components/{p-8b016d76.entry.js → p-b5e64725.entry.js} +1 -1
  252. package/dist/components/p-b630e51a.entry.js +1 -0
  253. package/dist/components/p-c91b4eec.entry.js +1 -0
  254. package/dist/components/{p-0eeddc13.entry.js → p-d05a09df.entry.js} +1 -1
  255. package/dist/components/{p-84fd3e40.entry.js → p-d0b1e963.entry.js} +1 -1
  256. package/dist/components/p-d25364db.entry.js +1 -0
  257. package/dist/components/p-d3bb444a.entry.js +1 -0
  258. package/dist/components/p-d4f239d7.entry.js +1 -0
  259. package/dist/components/{p-a81cba86.entry.js → p-deb9bbed.entry.js} +1 -1
  260. package/dist/components/p-df772a35.entry.js +1 -0
  261. package/dist/components/p-e5113509.entry.js +1 -0
  262. package/dist/components/p-e6a0b8c2.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} +481 -495
  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 +185 -112
  331. package/dist/hydrate/index.mjs +185 -112
  332. package/dist/types/components/eds-table/eds-table.d.ts +69 -0
  333. package/dist/types/components.d.ts +48 -0
  334. package/dist/types/shared-ui/eds-form/eds-form.d.ts +3 -0
  335. package/dist/types/shared-ui/eds-steps-v2/eds-steps-v2.d.ts +2 -0
  336. package/package.json +1 -1
  337. package/dist/cjs/eds-pagination_2.cjs.entry.js +0 -403
  338. package/dist/components/p-04b4e9d0.entry.js +0 -1
  339. package/dist/components/p-0863352c.entry.js +0 -1
  340. package/dist/components/p-0d6434e1.entry.js +0 -1
  341. package/dist/components/p-0e94a89f.entry.js +0 -1
  342. package/dist/components/p-100909ce.entry.js +0 -1
  343. package/dist/components/p-124b8747.entry.js +0 -1
  344. package/dist/components/p-14a223fe.entry.js +0 -1
  345. package/dist/components/p-18ceadd2.entry.js +0 -1
  346. package/dist/components/p-26d6679b.entry.js +0 -1
  347. package/dist/components/p-2b1b2026.entry.js +0 -1
  348. package/dist/components/p-3c642a30.entry.js +0 -1
  349. package/dist/components/p-46619042.entry.js +0 -1
  350. package/dist/components/p-511b23ec.entry.js +0 -1
  351. package/dist/components/p-5462923d.entry.js +0 -1
  352. package/dist/components/p-6199b8c0.entry.js +0 -1
  353. package/dist/components/p-624e653e.entry.js +0 -1
  354. package/dist/components/p-6ba42d02.entry.js +0 -1
  355. package/dist/components/p-6e929acb.entry.js +0 -1
  356. package/dist/components/p-6ede7101.entry.js +0 -1
  357. package/dist/components/p-70bac015.entry.js +0 -1
  358. package/dist/components/p-822ac246.entry.js +0 -1
  359. package/dist/components/p-848506b8.entry.js +0 -1
  360. package/dist/components/p-85634ad2.entry.js +0 -1
  361. package/dist/components/p-8bdf5841.entry.js +0 -1
  362. package/dist/components/p-8ff39cef.entry.js +0 -1
  363. package/dist/components/p-affe2b55.entry.js +0 -1
  364. package/dist/components/p-b31591db.entry.js +0 -1
  365. package/dist/components/p-b7efd666.entry.js +0 -1
  366. package/dist/components/p-ba784274.entry.js +0 -1
  367. package/dist/components/p-c0b22803.entry.js +0 -1
  368. package/dist/components/p-cdd491f5.entry.js +0 -1
  369. package/dist/components/p-d268c96b.entry.js +0 -1
  370. package/dist/components/p-d437bae2.entry.js +0 -1
  371. package/dist/components/p-d456e649.entry.js +0 -1
  372. package/dist/components/p-dae8f66a.entry.js +0 -1
  373. package/dist/components/p-e1791844.entry.js +0 -1
  374. package/dist/components/p-e82edd4a.entry.js +0 -1
  375. package/dist/components/p-e9f608a8.entry.js +0 -1
  376. package/dist/components/p-f26fd186.entry.js +0 -1
  377. package/dist/components/p-fe1cba17.entry.js +0 -1
  378. package/dist/esm/eds-pagination_2.entry.js +0 -398
@@ -3,9 +3,9 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  const index = require('./index-88c8039f.js');
6
- const sharedUtils = require('./sharedUtils-8e287250.js');
7
6
  const analytics = require('./analytics-28713bf7.js');
8
7
  const index$1 = require('./index-ab9fbefe.js');
8
+ const sharedUtils = require('./sharedUtils-8e287250.js');
9
9
  const logoColor = require('./logo-color-6c787ac1.js');
10
10
  const logoWhiteNoBg = require('./logo-white-no-bg-4a0e0f4b.js');
11
11
 
@@ -66,7 +66,7 @@ const EdsAvatar = class {
66
66
  * @returns {JSX.Element} The rendered avatar component.
67
67
  */
68
68
  render() {
69
- return (index.h("div", { key: '7c207192778b86ce5a24816637cf6e6239310eca', class: this.containerClasses }, this.picture ? (index.h("eds-img", { src: this.picture, width: 54, height: 54, sizes: "120px", alt: `${this.firstName} ${this.lastName}`, lazyload: true, withBg: true })) : (index.h("abbr", { title: this.computedInitials || `${this.firstName} ${this.lastName}`, class: "!no-underline f-ui-01" }, this.computedInitials))));
69
+ return (index.h("div", { key: 'b7eff7ae1a1dea3509041e39316b49b673dbdf17', class: this.containerClasses }, this.picture ? (index.h("eds-img", { src: this.picture, width: 54, height: 54, sizes: "120px", alt: `${this.firstName} ${this.lastName}`, lazyload: true, withBg: true })) : (index.h("abbr", { title: this.computedInitials || `${this.firstName} ${this.lastName}`, class: "!no-underline f-ui-01" }, this.computedInitials))));
70
70
  }
71
71
  };
72
72
  EdsAvatar.style = EdsAvatarStyle0;
@@ -80,148 +80,11 @@ const EdsBlockBreak = class {
80
80
  this.inverse = false;
81
81
  }
82
82
  render() {
83
- return index.h("hr", { key: 'fe48c93d6cb5648749bc050599fdfcb1712d1291', class: `${this.inverse ? 'border-default' : 'border-softer'} my-16 inline-block w-full border-t-2` });
83
+ return index.h("hr", { key: 'b604a776cae7edeee189e00af6993b42b57203f0', class: `${this.inverse ? 'border-default' : 'border-softer'} my-16 inline-block w-full border-t-2` });
84
84
  }
85
85
  };
86
86
  EdsBlockBreak.style = EdsBlockBreakStyle0;
87
87
 
88
- 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}}";
89
- const EdsBreadcrumbStyle0 = edsBreadcrumbCss;
90
-
91
- const EdsBreadcrumb = class {
92
- constructor(hostRef) {
93
- index.registerInstance(this, hostRef);
94
- /**
95
- * Updates the maximum number of visible items and tracks if the screen is small.
96
- */
97
- this.updateScreenSize = () => {
98
- const width = window.innerWidth;
99
- if (width < 769) {
100
- this.maxVisibleItems = 3;
101
- }
102
- else if (width <= 1024) {
103
- this.maxVisibleItems = 3;
104
- }
105
- else if (width <= 1280) {
106
- this.maxVisibleItems = 3;
107
- }
108
- else if (width <= 2200) {
109
- this.maxVisibleItems = 4;
110
- }
111
- else {
112
- this.maxVisibleItems = 6;
113
- }
114
- };
115
- this.items = [];
116
- this.intent = 'ghost';
117
- this.parsedItems = [];
118
- this.isSmallScreen = false;
119
- this.maxVisibleItems = 6;
120
- }
121
- /**
122
- * Watches for changes to the `items` prop and parses it.
123
- */
124
- parseItems(newValue) {
125
- this.parsedItems = sharedUtils.parseData(newValue);
126
- }
127
- /**
128
- * Lifecycle method that runs when the component is about to be loaded.
129
- * It parses the initial `items` prop value.
130
- */
131
- componentWillLoad() {
132
- this.parseItems(this.items);
133
- this.updateScreenSize();
134
- window.addEventListener('resize', this.updateScreenSize);
135
- }
136
- disconnectedCallback() {
137
- window.removeEventListener('resize', this.updateScreenSize);
138
- }
139
- /**
140
- * Lifecycle method that runs when the component has fully loaded.
141
- * It emits a custom event for each `eds-link` element contained within the breadcrumb.
142
- */
143
- componentDidLoad() {
144
- var _a;
145
- const links = (_a = this.el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelectorAll('eds-link');
146
- links === null || links === void 0 ? void 0 : links.forEach((link) => {
147
- this.emitContext(link);
148
- });
149
- }
150
- /**
151
- * Emits a custom event called `parentContext` for a given link element.
152
- * This event provides context information about the breadcrumb component.
153
- *
154
- * @param linkElement - The link element to which the event will be dispatched.
155
- */
156
- emitContext(linkElement) {
157
- const event = new CustomEvent('parentContext', {
158
- detail: {
159
- componentName: this.el.tagName.toLowerCase(),
160
- identifier: null
161
- }
162
- });
163
- linkElement.dispatchEvent(event);
164
- }
165
- /**
166
- * Returns breadcrumb items with potential truncation if there are too many.
167
- * It inserts an ellipsis item where necessary.
168
- */
169
- getTruncatedItems() {
170
- const totalItems = this.parsedItems.length;
171
- const ellipsis = { label: '...', url: '', isHidden: true };
172
- if (totalItems > this.maxVisibleItems) {
173
- const firstItem = this.parsedItems[0];
174
- const lastItems = this.parsedItems.slice(-2);
175
- if (this.maxVisibleItems === 3) {
176
- return [firstItem, ellipsis, ...lastItems];
177
- }
178
- else if (this.maxVisibleItems === 4) {
179
- const middleItem = this.parsedItems[Math.floor(totalItems / 2)];
180
- return [firstItem, middleItem, ellipsis, ...lastItems];
181
- }
182
- }
183
- return this.parsedItems;
184
- }
185
- /**
186
- * Helper to determine the display label and full label.
187
- * If the label is longer than 15 characters and the item is not the current (last) item,
188
- * we display a truncated version but use the full label for aria attributes.
189
- */
190
- getLabels(item, isCurrent) {
191
- if (!isCurrent && item.label.length > 15) {
192
- return { displayLabel: `${item.label.slice(0, 15)}...`, fullLabel: item.label };
193
- }
194
- return { displayLabel: item.label, fullLabel: item.label };
195
- }
196
- /**
197
- * Render method for the breadcrumb component.
198
- * It creates a navigation element with an ordered list of breadcrumb links.
199
- * The last link is marked as the current page.
200
- */
201
- render() {
202
- const itemsToRender = this.getTruncatedItems();
203
- return (index.h("nav", { key: '2651e18e4c157f49e1da2ef93d4f68b9497118e4', "aria-label": "Breadcrumb" }, index.h("ol", { key: 'd1f5bb18bb35df9455a4c7a566850d59eb657242', class: "flex items-center space-x-2" }, itemsToRender.map((item, index$1) => {
204
- const isLast = index$1 === itemsToRender.length - 1;
205
- return (index.h("li", { class: "flex items-center" }, !item.isHidden ? ((() => {
206
- const { fullLabel } = this.getLabels(item, isLast);
207
- const linkIntent = isLast
208
- ? this.intent === 'strong'
209
- ? 'weak'
210
- : this.intent === 'weak'
211
- ? 'strong'
212
- : this.intent
213
- : this.intent;
214
- return (index.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' } : {}))));
215
- })()) : (index.h("eds-link", { label: "...", url: "#", intent: "strong", current: false, "aria-label": "...", size: "small", "icon-small": "false", icon: "chevron-right" })), !isLast && !item.isHidden && (index.h("eds-icon-wrapper", { icon: "chevron-right", class: "w-20 h-20" }))));
216
- }))));
217
- }
218
- get el() { return index.getElement(this); }
219
- static get watchers() { return {
220
- "items": ["parseItems"]
221
- }; }
222
- };
223
- EdsBreadcrumb.style = EdsBreadcrumbStyle0;
224
-
225
88
  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}";
226
89
  const EdsButtonStyle0 = edsButtonCss;
227
90
 
@@ -380,7 +243,7 @@ const EdsButton = class {
380
243
  iconSmall: this.iconSmall
381
244
  });
382
245
  const ElementType = this.elementType;
383
- return (index.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 && index.h("span", { key: 'c1df49fe70a7930d4c87f8130ef1102e503cd0fc', class: this.loading ? 'opacity-0' : '' }, this.label), this.loading && (index.h("span", { key: 'e56515527843d11be53d66aa7598fc2fdf94d054', class: "absolute inset-0 flex items-center justify-center" }, index.h("span", { key: 'a50932ac2d5db24d50a3b10a30d07043e0354c62', class: "loader", style: {
246
+ return (index.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 && index.h("span", { key: 'af8d0ca1c5c3e54f9db3066931a69d3a5a812666', class: this.loading ? 'opacity-0' : '' }, this.label), this.loading && (index.h("span", { key: '29b72c15e80f46e023f829568f58d8a8dca82b78', class: "absolute inset-0 flex items-center justify-center" }, index.h("span", { key: 'bad8bd059b1312ca3f5ab173b1203eb395e9bbd8', class: "loader", style: {
384
247
  border: `3px solid ${this.intent === 'secondary' ? 'rgba(255, 255, 255, .3)' : 'rgba(0, 0, 0, .3)'}`,
385
248
  borderBottomColor: this.intent === 'secondary' ? '#fff' : '#000'
386
249
  } }))), this.icon ? (index.h("eds-icon-wrapper", { class: `
@@ -392,158 +255,6 @@ const EdsButton = class {
392
255
  };
393
256
  EdsButton.style = EdsButtonStyle0;
394
257
 
395
- 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}";
396
- const EdsCardDescStyle0 = edsCardDescCss;
397
-
398
- const EdsCardDesc = class {
399
- constructor(hostRef) {
400
- index.registerInstance(this, hostRef);
401
- this.description = undefined;
402
- this.truncate = true;
403
- this.truncateLines = '3';
404
- }
405
- getTruncateClass() {
406
- return this.truncate && this.truncateLines ? `line-clamp-${this.truncateLines}` : '';
407
- }
408
- render() {
409
- return (index.h("p", { key: 'f2eec4a947de74a1e36bb13fdd2bfeb7a9f711b3', class: "text-light f-ui-03-light" }, index.h("span", { key: '444ffa34c3e8cac12af2f396144fd182d49c6baa', class: this.getTruncateClass() }, this.description)));
410
- }
411
- };
412
- EdsCardDesc.style = EdsCardDescStyle0;
413
-
414
- 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}";
415
- const EdsCardGenericStyle0 = edsCardGenericCss;
416
-
417
- const EdsCardGeneric = class {
418
- constructor(hostRef) {
419
- index.registerInstance(this, hostRef);
420
- this.parentContext = null; // Accepts the entire event detail or null
421
- this.cardTitle = undefined;
422
- this.url = undefined;
423
- this.description = undefined;
424
- this.image = undefined;
425
- this.avatar = undefined;
426
- this.shortAbbreviation = undefined;
427
- this.headingLevel = 'h3';
428
- this.tags = [];
429
- this.tiny = false;
430
- this.bg = true;
431
- this.withHover = true;
432
- this.hierarchy = true;
433
- this.parsedImage = null;
434
- }
435
- componentWillLoad() {
436
- if (this.image) {
437
- try {
438
- if (typeof this.image === 'object') {
439
- // If image is already an object, assign it directly
440
- this.parsedImage = this.image;
441
- }
442
- else if (typeof this.image === 'string') {
443
- // If image is a string, try to parse it
444
- this.parsedImage = JSON.parse(this.image);
445
- }
446
- }
447
- catch (error) {
448
- // eslint-disable-next-line
449
- console.error('Error parsing image prop:', error);
450
- this.parsedImage = {}; // Assign a fallback empty object in case of an error
451
- }
452
- }
453
- }
454
- handleParentContext(event) {
455
- if (event.target !== this.el) {
456
- // Ignore the event if it's not targeted at this specific instance
457
- return;
458
- }
459
- //console.log(event.detail);
460
- this.parentContext = event.detail;
461
- event.stopPropagation();
462
- }
463
- /**
464
- * Parses the `tags` prop into an array of link objects.
465
- * Returns an empty array if parsing fails or if `tags` is not a valid JSON string or object.
466
- *
467
- * @returns {any[]} Array of parsed link objects
468
- */
469
- get parsedTags() {
470
- return sharedUtils.parseData(this.tags);
471
- }
472
- articleClasses() {
473
- return [
474
- this.description ? (this.tiny ? 'min-h-120' : 'min-h-156') : 'h-auto',
475
- this.bg ? 'bg-inverse' : 'bg-default',
476
- this.withHover ? 'effect-shadow hover:shadow-hover cursor-pointer' : '',
477
- 'border-softer effect-focus-within relative flex grow flex-col rounded-lg border-2 p-16'
478
- ].join(' ');
479
- }
480
- handleClick() {
481
- var _a;
482
- analytics.sendAnalytics({
483
- category: 'ui-component',
484
- parentContext: this.parentContext,
485
- tag: this.el.tagName.toLowerCase(),
486
- name: ((_a = this.cardTitle) === null || _a === void 0 ? void 0 : _a.toLowerCase()) || '',
487
- action: 'click'
488
- });
489
- }
490
- render() {
491
- return (index.h("article", { key: '440a448c841370838c0c66610bd1266b46f66541', class: this.articleClasses(), onClick: () => this.handleClick() }, index.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 && (index.h("eds-card-desc", { key: '4b304cc3c65a42b3b1bcbebd9968c45e79cdabf7', class: "mt-8", "truncate-lines": "3", description: this.description })), this.parsedImage ? (index.h("eds-img", Object.assign({ class: "mt-8 block mx-auto" }, this.parsedImage))) : this.avatar || this.shortAbbreviation ? (index.h("eds-avatar", { class: "order-first mb-12", picture: this.avatar, initials: this.shortAbbreviation })) : null, index.h("div", { key: '40388913b1abb9308f42469956342efdbb48d508', class: "flex flex-wrap gap-y-4 gap-x-1" }, this.parsedTags.map((tag, index$1) => (index.h("eds-tag", { key: index$1, intent: tag.style, label: tag.label })))), ' '));
492
- }
493
- get el() { return index.getElement(this); }
494
- };
495
- EdsCardGeneric.style = EdsCardGenericStyle0;
496
-
497
- 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}";
498
- const EdsCardTitleStyle0 = edsCardTitleCss;
499
-
500
- const EdsCardTitle = class {
501
- constructor(hostRef) {
502
- index.registerInstance(this, hostRef);
503
- this.url = undefined;
504
- this.titleClass = undefined;
505
- this.headingLevel = 'h3';
506
- this.externalLink = false;
507
- this.cardTitle = undefined;
508
- this.hierarchy = true;
509
- }
510
- /**
511
- * Dynamically generate the title class based on the heading level.
512
- */
513
- getTitleClass() {
514
- const levelMap = this.hierarchy
515
- ? {
516
- h1: '05',
517
- h2: '05',
518
- h3: '05',
519
- h4: '05',
520
- h5: '05',
521
- h6: '06'
522
- }
523
- : {
524
- h1: '01',
525
- h2: '02',
526
- h3: '03',
527
- h4: '04',
528
- h5: '05',
529
- h6: '06'
530
- };
531
- return `f-heading-${levelMap[this.headingLevel]}`;
532
- }
533
- /*private getTag() {
534
- if (this.url) {
535
- return 'a';
536
- }
537
- return 'span';
538
- }*/
539
- render() {
540
- //const Tag = this.getTag();
541
- const Heading = this.headingLevel;
542
- return (index.h(Heading, { key: '9914950b1581456a3a875ed7383975710c05fa7f', class: this.getTitleClass() }, index.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)));
543
- }
544
- };
545
- EdsCardTitle.style = EdsCardTitleStyle0;
546
-
547
258
  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}";
548
259
  const EdsDropdownStyle0 = edsDropdownCss;
549
260
 
@@ -649,14 +360,14 @@ const EdsDropdown = class {
649
360
  * @returns {JSX.Element} The rendered dropdown component.
650
361
  */
651
362
  render() {
652
- return (index.h("div", { key: 'c7044a1dabb4f65fe143ac3202dd0d1af4e706c2', class: "z-focus relative", ref: (el) => (this.dropdownContent = el) }, index.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" }), index.h("nav", { key: 'c0daa734601dbfcd290d5db8cc25fcd4b82dfdad', role: "menu", class: {
363
+ return (index.h("div", { key: 'eb48745937126e580737c1da6787c3f16c06ba9e', class: "z-focus relative", ref: (el) => (this.dropdownContent = el) }, index.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" }), index.h("nav", { key: 'c225074b3fbee543966523f8cd1c146485bc04bd', role: "menu", class: {
653
364
  '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,
654
365
  'left-4': this.dropdownPos === 'left' && this.dropdownOffset,
655
366
  'left-0': this.dropdownPos === 'left' && !this.dropdownOffset,
656
367
  'right-4': this.dropdownPos === 'right' && this.dropdownOffset,
657
368
  'right-0': this.dropdownPos === 'right' && !this.dropdownOffset,
658
369
  'rounded-lg': this.rounded
659
- }, style: { display: this.isOpen ? 'block' : 'none' }, "aria-label": "Dropdown", "aria-hidden": !this.isOpen }, index.h("slot", { key: '6ca4e774160924fa248db790f33b81e374653569' }))));
370
+ }, style: { display: this.isOpen ? 'block' : 'none' }, "aria-label": "Dropdown", "aria-hidden": !this.isOpen }, index.h("slot", { key: '6a7ba94045d366d20c6618845692d977f20437e3' }))));
660
371
  }
661
372
  get host() { return index.getElement(this); }
662
373
  };
@@ -697,9 +408,9 @@ const EdsFooter = class {
697
408
  * @returns {JSX.Element} The rendered JSX for the footer component.
698
409
  */
699
410
  render() {
700
- return (index.h("footer", { key: '7bbc8cd8e0e3a153dc30bb3569e83afc0bc09b0a' }, this.social ? (index.h("div", { class: "border-softest border-t-2 pt-20 md:pt-28" }, index.h("div", { class: "container pb-20" }, index.h("div", { class: "grid-layout" }, index.h("div", { class: "grid-col-span-12 lg:grid-col-span-5" }, index.h("eds-social-networks", { class: "mt-28" })))))) : null, index.h("div", { key: '9ee8ada698546344b18e557ee1de76042cd727ed', class: `border-softest ${this.social ? 'border-t-2' : ''} pb-28 pt-20 md:pt-28` }, index.h("div", { key: 'e795e5bba0273b4147c66ed667142997bc0cbaff', class: "container flex items-center gap-20 lg:flex-nowrap" }, index.h("div", { key: 'fa09a0dbccb035b1e4f496aa447aca241bcc2415', class: "flex items-center gap-x-12" }, index.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" }, index.h("eds-img", { key: '4568610de97ad886e26195bde656609e2584b792', width: 54, height: 41, src: "https://www.ebrains.eu/flags/4x3/eu.svg", alt: "European Union Flag" }))), index.h("div", { key: '65dc6a5b0da9d69b0b43ed738c9612293ef64e96' }, index.h("div", { key: 'a89180b8f308502dfd864d5aab0702f262718cc8', class: "f-ui-04 text-light" }, index.h("p", { key: '54a69763c38a7986008f9b553fb6b75e5a36d255' }, this.fundedBy), index.h("div", { key: '9378c48e766a2df4d14805c8777d5d98a2d016ce', class: "mt-4 flex flex-wrap gap-12 lg:flex-nowrap inline-block" }, index.h("span", { key: 'ef939799150dd7ea91f72de94b1e564039c1e900', class: "effect-focus !no-underline decoration-2 underline-offset-4 hover:!underline mr-4" }, "\u00A9 ", this.rightsReserved), this.enableCookiesSettings ? (index.h("eds-link", { label: this.cookiesPreferences, intent: "underline", "extra-class": "f-ui-04", onClick: () => {
411
+ return (index.h("footer", { key: '7bbc8cd8e0e3a153dc30bb3569e83afc0bc09b0a' }, this.social ? (index.h("div", { class: "border-softest border-t-2 pt-20 md:pt-28" }, index.h("div", { class: "container pb-20" }, index.h("div", { class: "grid-layout" }, index.h("div", { class: "grid-col-span-12 lg:grid-col-span-5" }, index.h("eds-social-networks", { class: "mt-28" })))))) : null, index.h("div", { key: '9ee8ada698546344b18e557ee1de76042cd727ed', class: `border-softest ${this.social ? 'border-t-2' : ''} pb-28 pt-20 md:pt-28` }, index.h("div", { key: 'e795e5bba0273b4147c66ed667142997bc0cbaff', class: "container flex items-center gap-20 lg:flex-nowrap" }, index.h("div", { key: 'fa09a0dbccb035b1e4f496aa447aca241bcc2415', class: "flex items-center gap-x-12" }, index.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" }, index.h("eds-img", { key: '5b9e987c2ecf62fb4f44c1faacad7c569a149805', width: 54, height: 41, src: "https://www.ebrains.eu/flags/4x3/eu.svg", alt: "European Union Flag" }))), index.h("div", { key: 'df75949c0718b8fb7dd449a6e7df39d332da366f' }, index.h("div", { key: 'f83d31b16d0601cd456d5cb72e9fa2adb29a2b66', class: "f-ui-04 text-light" }, index.h("p", { key: 'dcdf09d78ca64c5391d56fe5ed69bab987cbf67b' }, this.fundedBy), index.h("div", { key: 'af279fb5dfdf0a8f1f85e6ce7446dc3a0eeac397', class: "mt-4 flex flex-wrap gap-12 lg:flex-nowrap inline-block" }, index.h("span", { key: '026b41fa6162ffb6825ccf98364b4caf64b6457a', class: "effect-focus !no-underline decoration-2 underline-offset-4 hover:!underline mr-4" }, "\u00A9 ", this.rightsReserved), this.enableCookiesSettings ? (index.h("eds-link", { label: this.cookiesPreferences, intent: "underline", "extra-class": "f-ui-04", onClick: () => {
701
412
  this.toggleCookiesConsent();
702
- } })) : null))), index.h("div", { key: '3b5388855844f5857e4d6a2b8d19d204b681ca40', class: "ml-auto pl-12" }, this.enableScrollTop ? (index.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)))));
413
+ } })) : null))), index.h("div", { key: '27cb561815d6918567ab8cfa1148019aca8aeda0', class: "ml-auto pl-12" }, this.enableScrollTop ? (index.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)))));
703
414
  }
704
415
  };
705
416
  EdsFooter.style = EdsFooterStyle0;
@@ -869,6 +580,9 @@ const EdsForm = class {
869
580
  this.errors = {};
870
581
  this.parsedFields = [];
871
582
  }
583
+ async setData(newData) {
584
+ this.populateFormWithInitData(newData);
585
+ }
872
586
  componentWillLoad() {
873
587
  this.parseFields(this.fields);
874
588
  // Emit context for each eds-link element after the component is fully loaded
@@ -1041,6 +755,14 @@ const EdsForm = class {
1041
755
  // Update the errors state and the hasError flag.
1042
756
  this.errors = newErrors;
1043
757
  this.hasError = Object.keys(newErrors).length > 0;
758
+ // Emit the updated form state.
759
+ this.form.emit({
760
+ event: 'input',
761
+ field: field.name,
762
+ value: target.type === 'checkbox' ? this.values[field.name] : target.value,
763
+ message: `${field.name} updated`
764
+ //data: this.makeFormData()
765
+ });
1044
766
  }
1045
767
  handleSubmit() {
1046
768
  var _a, _b;
@@ -1101,13 +823,13 @@ const EdsForm = class {
1101
823
  render() {
1102
824
  const hiddenFields = this.parsedFields.filter((field) => field.type === 'hidden');
1103
825
  const otherFields = this.parsedFields.filter((field) => field.type !== 'hidden');
1104
- return (index.h("form", { key: '76fbc3f587eaac0bd53553663f072e5066914ae5', ref: (el) => (this.formEl = el), autocomplete: "on", onSubmit: this.handleSubmit }, index.h("div", { key: '64d99d4ac7e1cb8e4bfe436bb236648201dcbc29' }, index.h("slot", { key: '9c257d29146b620367773726e65eaf680d3d010b' }), hiddenFields.map((field, index$1) => (index.h("eds-input", { key: index$1, type: "hidden", name: field.name, value: field.value }))), otherFields.map((field, index$1) => {
826
+ return (index.h("form", { key: '1418bbac3ea7c994bf363602e6ddd18ed3c6c661', ref: (el) => (this.formEl = el), autocomplete: "on", onSubmit: this.handleSubmit }, index.h("div", { key: 'ae6f05d50a1c32312e585d55f0b5d64b0dd1fc9c' }, index.h("slot", { key: '09c9ddd0d3b77ae9cbcb54389b799af7a6fc6c9e' }), hiddenFields.map((field, index$1) => (index.h("eds-input", { key: index$1, type: "hidden", name: field.name, value: field.value }))), otherFields.map((field, index$1) => {
1105
827
  var _a, _b;
1106
828
  if (!this.isFieldVisible(field)) {
1107
829
  return null;
1108
830
  }
1109
831
  return (index.h("eds-input-field", { key: index$1, 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$1 > 0 ? 'mt-20' : '', options: field.options }));
1110
- })), this.formBtn && (index.h("div", { key: 'ba7908ab85c6368aeff6824fd402b78b514d2292', class: "mt-20" }, index.h("eds-button", { key: '84efe452f55b2898e5747a01b0dc6033ba14da7a', intent: "primary", label: this.formBtnLabel, disabled: this.isSubmitting, loading: this.isSubmitting, onClick: () => this.handleSubmit() })))));
832
+ })), this.formBtn && (index.h("div", { key: 'af6ce29d25ae2e7c71537618456308891ff8abf4', class: "mt-20" }, index.h("eds-button", { key: '1442f4f6b924533f9aa46bd22e1d0adf69561370', intent: "primary", label: this.formBtnLabel, disabled: this.isSubmitting, loading: this.isSubmitting, onClick: () => this.handleSubmit() })))));
1111
833
  }
1112
834
  get el() { return index.getElement(this); }
1113
835
  static get watchers() { return {
@@ -1183,59 +905,6 @@ const EdsFullscreenMenu = class {
1183
905
  };
1184
906
  EdsFullscreenMenu.style = EdsFullscreenMenuStyle0;
1185
907
 
1186
- 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)}";
1187
- const EdsGaugeStyle0 = edsGaugeCss;
1188
-
1189
- const BACKGROUND_VARIANTS = {
1190
- default: '#f2f2f2',
1191
- dark: '#d8d8d8',
1192
- strong: '#666666',
1193
- black: '#000000'
1194
- };
1195
- const EdsGauge = class {
1196
- constructor(hostRef) {
1197
- index.registerInstance(this, hostRef);
1198
- this.size = 100;
1199
- this.valueMin = 0;
1200
- this.valueMax = 100;
1201
- this.value = 60;
1202
- this.thickness = 0.1;
1203
- this.variant = 'default';
1204
- }
1205
- render() {
1206
- // Clamp thickness to [0,1]
1207
- const thicknessClamped = Math.min(Math.max(this.thickness, 0.1), 0.2);
1208
- // Normalize value within [valueMin, valueMax]
1209
- const clamped = Math.min(Math.max(this.value, this.valueMin), this.valueMax);
1210
- const range = this.valueMax - this.valueMin || 1;
1211
- const ratio = (clamped - this.valueMin) / range;
1212
- // Use the smaller of width/height as diameter
1213
- const diameter = this.size;
1214
- const angle = ratio * 360;
1215
- const ringThickness = thicknessClamped * diameter;
1216
- const innerDiameter = diameter - ringThickness * 2;
1217
- const fontSize = diameter * 0.2;
1218
- // Determine background color for empty portion
1219
- const emptyColor = BACKGROUND_VARIANTS[this.variant] || BACKGROUND_VARIANTS.default;
1220
- const containerStyle = {
1221
- width: `${diameter}px`,
1222
- height: `${diameter}px`,
1223
- background: `conic-gradient(#00e766 0deg ${angle}deg, ${emptyColor} ${angle}deg 360deg)`
1224
- };
1225
- const maskStyle = {
1226
- width: `${innerDiameter}px`,
1227
- height: `${innerDiameter}px`,
1228
- top: `${ringThickness}px`,
1229
- left: `${ringThickness}px`
1230
- };
1231
- const textStyle = {
1232
- fontSize: `${fontSize}px`
1233
- };
1234
- return (index.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 }, index.h("div", { key: 'c3efb2d512f96e4c3a9371416c6d9bb938cab43e', class: "absolute bg-inverse rounded-full", style: maskStyle }), index.h("div", { key: '7a6254e22240301b6716a2d6fed785196a39cdd8', class: "absolute inset-0 flex items-center justify-center" }, index.h("span", { key: '78d8d1b7c442f75947b2813bbb569c566357c121', class: "f-body-01 text-default", style: textStyle }, clamped))));
1235
- }
1236
- };
1237
- EdsGauge.style = EdsGaugeStyle0;
1238
-
1239
908
  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}}";
1240
909
  const EdsHeaderStyle0 = edsHeaderCss;
1241
910
 
@@ -1366,10 +1035,10 @@ const EdsImg = class {
1366
1035
  imgOpts['loading'] = 'lazy';
1367
1036
  imgOpts['decoding'] = 'async';
1368
1037
  }
1369
- return (index.h("div", { key: 'de3328e21b2b038984e74c08cd757cd85c7a7e01', class: {
1038
+ return (index.h("div", { key: '13ed3aa346c99321c609e49ce045b6361921350f', class: {
1370
1039
  'items-center justify-center': true,
1371
1040
  'effect-bg-pattern': this.lazyload && this.showBg
1372
- } }, index.h("picture", { key: '4e623a25c64ce1b2c09adf3519f12bde04280ba3' }, this.formats.map((format) => (index.h("source", { type: format.type, srcSet: format.srcset, media: format.media, sizes: this.sizes }))), index.h("img", Object.assign({ key: '6d87af22189017aa1e158c01a8295c98381a1ba1', ref: (el) => (this.img = el), class: {
1041
+ } }, index.h("picture", { key: '56aa0ed8fd1ef8f9faf6ad576dd05edc34139c9b' }, this.formats.map((format) => (index.h("source", { type: format.type, srcSet: format.srcset, media: format.media, sizes: this.sizes }))), index.h("img", Object.assign({ key: '78e3ed9adcfe423d48388bf30140f4b70649faf7', ref: (el) => (this.img = el), class: {
1373
1042
  'effect-opacity object-cover object-center': true,
1374
1043
  'opacity-100': this.loaded,
1375
1044
  'opacity-0': !this.loaded
@@ -1425,12 +1094,12 @@ const EdsInput = class {
1425
1094
  render() {
1426
1095
  const withIcon = !!this.icon;
1427
1096
  const describedBy = this.hasMessage || this.error ? `${this.name}-error` : '';
1428
- return (index.h("div", { key: 'bb88b782042a37d2fcbd8a93f03056199d822559', class: "relative flex items-center" }, this.type === 'textarea' ? (index.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' ? (index.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) => (index.h("option", { value: option.value, selected: option.value === this.innerVal, key: option.value }, option.label))))) : (index.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: `
1097
+ return (index.h("div", { key: '5c66c14b19aa3d5fc37e7a77a2d1194fa0be9b8c', class: "relative flex items-center" }, this.type === 'textarea' ? (index.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' ? (index.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) => (index.h("option", { value: option.value, selected: option.value === this.innerVal, key: option.value }, option.label))))) : (index.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: `
1429
1098
  ${this.extraClass || ''}
1430
1099
  input ${this.type === 'radio' ? 'input-radio' : this.type === 'checkbox' ? 'input-checkbox' : ''}
1431
1100
  ${withIcon && this.type !== 'radio' && this.type !== 'checkbox' ? 'input-icon pl-36' : ''}
1432
1101
  ${this.error ? 'input-error' : ''}
1433
- `, "aria-invalid": this.error ? 'true' : 'false', "aria-describedby": describedBy, maxlength: this.maxLength, onInput: this.handleInput, onChange: this.handleInput })), this.maxLength && this.type === 'textarea' && (index.h("span", { key: '7b1cc490731455d00d500308458e6b2cd320fccf', class: `input-counter f-ui-05 absolute bottom-8 right-8 ${this.maxLengthReached ? 'input-counter-error' : ''}` }, this.maxLength)), this.icon && (index.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 }))));
1102
+ `, "aria-invalid": this.error ? 'true' : 'false', "aria-describedby": describedBy, maxlength: this.maxLength, onInput: this.handleInput, onChange: this.handleInput })), this.maxLength && this.type === 'textarea' && (index.h("span", { key: '4326db3729dea8bbddb7a109a90424aa832aded7', class: `input-counter f-ui-05 absolute bottom-8 right-8 ${this.maxLengthReached ? 'input-counter-error' : ''}` }, this.maxLength)), this.icon && (index.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 }))));
1434
1103
  }
1435
1104
  get el() { return index.getElement(this); }
1436
1105
  static get watchers() { return {
@@ -1526,7 +1195,7 @@ const EdsInputField = class {
1526
1195
  icon: this.icon,
1527
1196
  checked: this.checked
1528
1197
  };
1529
- return (index.h("div", { key: '5243586c0bf3acc86d42684dbcd0288b3360b00c', class: "space-y-8" }, this.type === 'checkbox' || this.type === 'radio' ? (this.parsedOptions.length > 0 ? (index.h("fieldset", { class: "space-y-4 mt-8" }, index.h("div", { class: "flex justify-between" }, this.label && (index.h("eds-input-label", { name: this.inputId || this.name, label: this.label, required: this.required })), this.hint && (index.h("p", { id: `${this.name}-hint`, class: "f-ui-05 text-lighter mt-8 ml-8" }, this.hint))), this.parsedOptions.map((option) => (index.h("div", { class: "flex items-center gap-x-2", key: option.value }, index.h("eds-input", Object.assign({}, inputOpts, { value: option.value, checked: (typeof this.value === 'string' ? this.value.split(',') : []).includes(String(option.value)) })), index.h("eds-input-label", { name: `${this.name}-${option.value}`, label: option.label })))))) : (index.h("div", { class: "flex items-center gap-x-8" }, index.h("eds-input", Object.assign({}, inputOpts, { value: this.value, checked: this.value === 'on' })), this.label && (index.h("eds-input-label", { name: this.inputId || this.name, label: this.label, disabled: this.disabled, required: this.required }))))) : (index.h("div", null, index.h("div", { class: "flex justify-between" }, this.label && (index.h("eds-input-label", { name: this.inputId || this.name, label: this.label, disabled: this.disabled, required: this.required })), this.hint && (index.h("p", { id: `${this.name}-hint`, class: "f-ui-05 text-lighter mt-8 ml-8" }, this.hint))), this.type === 'select' ? (index.h("eds-input-select", Object.assign({}, inputOpts, { options: this.parsedOptions }))) : this.type === 'file' ? (index.h("input", { type: "file", id: this.inputId || this.name, name: this.name, onChange: this.onChange, disabled: this.disabled, required: this.required })) : this.type === 'search' ? (index.h("eds-input-search", { name: "search-box" })) : this.type === 'range' ? ((() => {
1198
+ return (index.h("div", { key: 'e46f1b26212ee915c2fde3fa0c58a152005d2b50', class: "space-y-8" }, this.type === 'checkbox' || this.type === 'radio' ? (this.parsedOptions.length > 0 ? (index.h("fieldset", { class: "space-y-4 mt-8" }, index.h("div", { class: "flex justify-between" }, this.label && (index.h("eds-input-label", { name: this.inputId || this.name, label: this.label, required: this.required })), this.hint && (index.h("p", { id: `${this.name}-hint`, class: "f-ui-05 text-lighter mt-8 ml-8" }, this.hint))), this.parsedOptions.map((option) => (index.h("div", { class: "flex items-center gap-x-2", key: option.value }, index.h("eds-input", Object.assign({}, inputOpts, { value: option.value, checked: (typeof this.value === 'string' ? this.value.split(',') : []).includes(String(option.value)) })), index.h("eds-input-label", { name: `${this.name}-${option.value}`, label: option.label })))))) : (index.h("div", { class: "flex items-center gap-x-8" }, index.h("eds-input", Object.assign({}, inputOpts, { value: this.value, checked: this.value === 'on' })), this.label && (index.h("eds-input-label", { name: this.inputId || this.name, label: this.label, disabled: this.disabled, required: this.required }))))) : (index.h("div", null, index.h("div", { class: "flex justify-between" }, this.label && (index.h("eds-input-label", { name: this.inputId || this.name, label: this.label, disabled: this.disabled, required: this.required })), this.hint && (index.h("p", { id: `${this.name}-hint`, class: "f-ui-05 text-lighter mt-8 ml-8" }, this.hint))), this.type === 'select' ? (index.h("eds-input-select", Object.assign({}, inputOpts, { options: this.parsedOptions }))) : this.type === 'file' ? (index.h("input", { type: "file", id: this.inputId || this.name, name: this.name, onChange: this.onChange, disabled: this.disabled, required: this.required })) : this.type === 'search' ? (index.h("eds-input-search", { name: "search-box" })) : this.type === 'range' ? ((() => {
1530
1199
  var _a, _b, _c;
1531
1200
  const rangeProps = {
1532
1201
  name: inputOpts.name,
@@ -1539,7 +1208,7 @@ const EdsInputField = class {
1539
1208
  const opt = this.parsedOptions;
1540
1209
  const numberValue = typeof this.value === 'string' ? parseFloat(this.value) : this.value || 0;
1541
1210
  return (index.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 })));
1542
- })()) : (index.h("eds-input", Object.assign({}, inputOpts))))), index.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 })));
1211
+ })()) : (index.h("eds-input", Object.assign({}, inputOpts))))), index.h("eds-input-footer", { key: 'ecf3ee5c0400749f1d89b53edfdee6fe62ca2a32', id: `${this.name}-footer`, name: this.name, message: this.message, "error-message": this.errorMessage, error: this.error, link: this.link })));
1543
1212
  }
1544
1213
  get hostEl() { return index.getElement(this); }
1545
1214
  };
@@ -1555,7 +1224,7 @@ const EdsInputFooter = class {
1555
1224
  this.link = undefined;
1556
1225
  }
1557
1226
  render() {
1558
- return (index.h("div", { key: 'c3dbdb05ce4cc9244a1ebc9f3ce5718742924ea1', class: "space-y-4 mt-4" }, this.error && this.errorMessage && (index.h("div", { key: 'ccfde4960e1bec5697774de57da1a7948b5112c4', id: `error_${this.name}`, class: "text-error flex items-center" }, index.h("eds-icon-wrapper", { key: 'cc7171c96a7251c064f7ce527fe715aaac9a74e2', icon: "warning" }), index.h("p", { key: '99893066c8aeac76793fef4d5cf6d5b34dbbc25f', class: "f-ui-04 ml-4", innerHTML: this.errorMessage }))), this.message && index.h("p", { key: '55a6881d02d06440e6adac174a43a1cd59adf34b', id: `desc_${this.name}`, class: "f-ui-05 text-lighter", innerHTML: this.message }), this.link && (index.h("a", { key: 'bb84693685aedbe7ba28551a1d944c0e1d8eda57', href: this.link.url, class: "f-ui-05 effect-color hover:text-lighter underline underline-offset-4" }, this.link.label))));
1227
+ return (index.h("div", { key: 'd5424778da81d6558246efe97917d3e3ccfa9aaa', class: "space-y-4 mt-4" }, this.error && this.errorMessage && (index.h("div", { key: 'e915fc1f4719f48eca5a831ac72913d2f91f633b', id: `error_${this.name}`, class: "text-error flex items-center" }, index.h("eds-icon-wrapper", { key: '9cc87cfd4955766947a2581604fe1e072f8d82a9', icon: "warning" }), index.h("p", { key: '564a2397fb7e8185e43e1c2be216c76060e7498e', class: "f-ui-04 ml-4", innerHTML: this.errorMessage }))), this.message && index.h("p", { key: '24e0702df7e5c2fe4ef0cc6755159fefe76b70a7', id: `desc_${this.name}`, class: "f-ui-05 text-lighter", innerHTML: this.message }), this.link && (index.h("a", { key: '9e3720a3ded9d755afd7755104df0942246f1fbe', href: this.link.url, class: "f-ui-05 effect-color hover:text-lighter underline underline-offset-4" }, this.link.label))));
1559
1228
  }
1560
1229
  };
1561
1230
 
@@ -1568,7 +1237,7 @@ const EdsInputLabel = class {
1568
1237
  this.disabled = false;
1569
1238
  }
1570
1239
  render() {
1571
- return (index.h("label", { key: '815b70d78f4004afb77a0c01772f750478dea1b3', htmlFor: this.name, class: `input-label ${this.disabled ? 'text-lighter' : ''}` }, this.label, this.required && (index.h("span", { key: 'de2cba1c7e89632b3aac40de573d730cf38a85c6' }, index.h("span", { key: '58326fb23edd4521b0f1c6e67366e7c589217387', "aria-hidden": "true" }, "*"), index.h("span", { key: 'e2208159652c9244e49c2c3d476a099a442d28ac', class: "sr-only" }, "required")))));
1240
+ return (index.h("label", { key: 'd700690a67a8348836aec27d2ff4f4d4ee18b9c8', htmlFor: this.name, class: `input-label ${this.disabled ? 'text-lighter' : ''}` }, this.label, this.required && (index.h("span", { key: '9b52c053652db132a9bdb2d9fc64c569a529c2d9' }, index.h("span", { key: 'cd17268b6048ebaa70dc7f905fc7f7bf3ed3fa34', "aria-hidden": "true" }, "*"), index.h("span", { key: '352d7b5ef080336a5c7b53e0b710d5b0d7aa0efe', class: "sr-only" }, "required")))));
1572
1241
  }
1573
1242
  };
1574
1243
 
@@ -1614,7 +1283,7 @@ const EdsInputRange = class {
1614
1283
  return this.inputElement;
1615
1284
  }
1616
1285
  render() {
1617
- return (index.h("div", { key: '9901432821b3dbdbf67e3b905c75acd7095ec8e9', class: "relative flex flex-col items-start space-y-2" }, index.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 }), index.h("p", { key: 'b74e14f619acbe7b98966bac8ea2c5206d05ad62', id: `desc_${this.name}`, class: "block f-ui-05 text-lighter" }, "Current value: ", this.sliderVal)));
1286
+ return (index.h("div", { key: '5c55f65e2acd6f4554af7d8ba513c9d9dfd445eb', class: "relative flex flex-col items-start space-y-2" }, index.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 }), index.h("p", { key: 'c63b223e6af149efb68cabbe5228e77b09ca2168', id: `desc_${this.name}`, class: "block f-ui-05 text-lighter" }, "Current value: ", this.sliderVal)));
1618
1287
  }
1619
1288
  get el() { return index.getElement(this); }
1620
1289
  static get watchers() { return {
@@ -1683,7 +1352,7 @@ const EdsInputSearch = class {
1683
1352
  return this.inputElement;
1684
1353
  }
1685
1354
  render() {
1686
- return (index.h("div", { key: '2d74c44bf05f4ccbe81df14a3af112a763b01b5f', class: "relative flex items-center" }, index.h("eds-icon-wrapper", { key: 'c7c7c479801a9c5e6da0b616448f7b89ba25b040', icon: "search", class: "absolute top-1/2 left-[4px] -translate-y-1/2 text-lightest", "aria-hidden": "true" }), index.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}`,
1355
+ return (index.h("div", { key: '27d6871df962e2bd27eac38b1a105142b1b68bab', class: "relative flex items-center" }, index.h("eds-icon-wrapper", { key: 'b4b497cb435c673a550b169dea93fbc7006d0c5e', icon: "search", class: "absolute top-1/2 left-[4px] -translate-y-1/2 text-lightest", "aria-hidden": "true" }), index.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}`,
1687
1356
  //onInput={this.onInput}
1688
1357
  onChange: this.onChange })));
1689
1358
  }
@@ -1712,12 +1381,12 @@ const EdsInputSelect = class {
1712
1381
  const selectId = this.inputId || this.name;
1713
1382
  const placeholderText = this.placeholder || `Please select ${this.name}`;
1714
1383
  const describedBy = this.hasMessage || this.error ? `${this.name}-error` : undefined;
1715
- return (index.h("div", { key: '0e1bf5f1ebf30d675e0b4927e7812a305f58d2b9', class: "relative" }, index.h("select", { key: 'b92542caca12d77e3160baa84760b37bbbe172c7', id: selectId, name: this.name, class: {
1384
+ return (index.h("div", { key: '80cbdab87f5baa21df5edc857685c3af4dee3a58', class: "relative" }, index.h("select", { key: '4e8f84fd9dbc63df7981898cadc24450f48aa92a', id: selectId, name: this.name, class: {
1716
1385
  input: true,
1717
1386
  'input-error': this.error,
1718
1387
  'px-4': true,
1719
1388
  'py-2': true
1720
- }, "aria-invalid": this.error ? 'true' : 'false', "aria-describedby": describedBy, disabled: this.disabled, required: this.required, onChange: this.handleChange }, index.h("option", { key: 'fa911a07fd0053f6c7e5044aac3e6d0846344899', value: "", disabled: true, hidden: true }, placeholderText), this.options.map((opt, index$1) => (index.h("option", { key: index$1, value: opt.value, selected: opt.value === this.value }, opt.label)))), index.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" }, index.h("eds-icon-wrapper", { key: '1bb2a24fc9798a7359b9b45019b1432ff2e50e70', class: "w-20 h-20", icon: "chevron-right" }))));
1389
+ }, "aria-invalid": this.error ? 'true' : 'false', "aria-describedby": describedBy, disabled: this.disabled, required: this.required, onChange: this.handleChange }, index.h("option", { key: '54b90339cae4c5c80711793a8c68c4587e0c2495', value: "", disabled: true, hidden: true }, placeholderText), this.options.map((opt, index$1) => (index.h("option", { key: index$1, value: opt.value, selected: opt.value === this.value }, opt.label)))), index.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" }, index.h("eds-icon-wrapper", { key: '4524af72468d3b37c01b0252d4b6b2bf7454514e', class: "w-20 h-20", icon: "chevron-right" }))));
1721
1390
  }
1722
1391
  };
1723
1392
 
@@ -1929,7 +1598,7 @@ const EdsLink = class {
1929
1598
  const labelClasses = this.hideLabelOnSmallScreen
1930
1599
  ? 'hidden lg:flex' // Tailwind example: hidden on small screens, visible on larger
1931
1600
  : '';
1932
- return (index.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) }, index.h("span", { key: '7b35e3ddca346ff09730aa332b9f47b6d6707721', class: "z-1 relative inline-flex items-center justify-center" }, this.renderLeftIcon(), index.h("span", { key: 'fe4201815e3791e6e3d6da8856d7a7a9e0211cfc', class: labelClasses }, this.label), this.renderRightIcon())));
1601
+ return (index.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) }, index.h("span", { key: '94284b425a331f6a56a3e63db89fed5fa1a207c1', class: "z-1 relative inline-flex items-center justify-center" }, this.renderLeftIcon(), index.h("span", { key: '7496886c7c975d6795633c36b9cc8d31673d5a4b', class: labelClasses }, this.label), this.renderRightIcon())));
1933
1602
  }
1934
1603
  get el() { return index.getElement(this); }
1935
1604
  };
@@ -1997,7 +1666,7 @@ const EdsLogo = class {
1997
1666
  }
1998
1667
  render() {
1999
1668
  const logoContent = this.getLogo();
2000
- return (index.h("a", { key: 'a23e44227ebaa3b999c961e1354c268f2c916a6f', href: this.href, onClick: () => this.handleClick(), class: "eds-logo-wrapper", "aria-label": this.label }, index.h("div", { key: 'cba53a54e6d31aabfa62ddcd8aa53bda56b8b706', innerHTML: logoContent })));
1669
+ return (index.h("a", { key: 'ab11d53e1f417221dcca2de441c7b3efa96f99a5', href: this.href, onClick: () => this.handleClick(), class: "eds-logo-wrapper", "aria-label": this.label }, index.h("div", { key: '0d4a6b970788534d34d55b28fe83407ce7c4e00e', innerHTML: logoContent })));
2001
1670
  }
2002
1671
  get el() { return index.getElement(this); }
2003
1672
  };
@@ -2118,112 +1787,222 @@ const EdsModal = class {
2118
1787
  render() {
2119
1788
  // Generate a unique id for the title so we can reference it for aria-labelledby.
2120
1789
  const titleId = `modal-title-${this.el.tagName.toLowerCase()}`;
2121
- return (index.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 && (index.h("div", { key: '7081928b01c09e692cac0f61dbc58b4f5578271d', class: "fixed inset-0 bg-dark bg-opacity-90" // Add backdrop-blur utility class here
1790
+ return (index.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 && (index.h("div", { key: 'e4359b32052a155f879070deea34fbca2fb67e3b', class: "fixed inset-0 bg-dark bg-opacity-90" // Add backdrop-blur utility class here
2122
1791
  ,
2123
- onClick: () => this.close() })), index.h("div", { key: '0fc5f4716022cb01c2da9a28738586710625c70f', class: `container absolute bg-inverse z-10 ${this.getModalPositionClasses()} grow justify-center` }, index.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'}` }, index.h("span", { key: '6e0d237fc95c1b74b1b0c0456848684578367302', id: titleId, class: `f-heading-04 ${this.getTruncateClass()}` }, this.heading), index.h("eds-button", { key: '3499de216da4ba38edb66cdcd688872f51b41aaf', intent: "tertiary", icon: "close", "aria-label": "Close modal", onClick: () => this.close(), "extra-class": "ml-8 text-default" })), index.h("div", { key: 'f723dded796961e925cc2b046c31e7345fd3e159', class: "pt-8 px-20 py-20" }, index.h("slot", { key: 'ffe1213b65e60dfaf7c220e3c7e3dd8495706dcf' })))));
1792
+ onClick: () => this.close() })), index.h("div", { key: 'ba95f463e8c807e2ac2e900b3167191908ca2f5d', class: `container absolute bg-inverse z-10 ${this.getModalPositionClasses()} grow justify-center` }, index.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'}` }, index.h("span", { key: '731e7cb6c7aaa36bcda8d1c32bd1b8da9d85f253', id: titleId, class: `f-heading-04 ${this.getTruncateClass()}` }, this.heading), index.h("eds-button", { key: '89657ac29b27ce173569353f3101e998cb756eec', intent: "tertiary", icon: "close", "aria-label": "Close modal", onClick: () => this.close(), "extra-class": "ml-8 text-default" })), index.h("div", { key: '2e39edaa1f5cc5389873e203c3e4294de8b56678', class: "pt-8 px-20 py-20" }, index.h("slot", { key: '0fb09f52100042fc5f20f5f443a8f5cff381d944' })))));
2124
1793
  }
2125
1794
  get el() { return index.getElement(this); }
2126
1795
  };
2127
1796
  EdsModal.style = EdsModalStyle0;
2128
1797
 
2129
- 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)}";
2130
- const EdsPieStyle0 = edsPieCss;
1798
+ 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}}";
1799
+ const EdsPaginationStyle0 = edsPaginationCss;
2131
1800
 
2132
- const EdsPie = class {
1801
+ const EdsPagination = class {
2133
1802
  constructor(hostRef) {
2134
1803
  index.registerInstance(this, hostRef);
2135
- this.size = 200;
2136
- this.slices = [];
2137
- this.thickness = 1;
2138
- this.display = 'value';
2139
- this.legend = true;
2140
- this.colorScheme = 'semantic';
2141
- }
2142
- parseSlices() {
2143
- if (typeof this.slices === 'string') {
2144
- try {
2145
- return JSON.parse(this.slices);
1804
+ this.currentPage = undefined;
1805
+ this.lastPage = undefined;
1806
+ this.perPage = 10;
1807
+ this.total = 0;
1808
+ this.url = '';
1809
+ this.mode = 'default';
1810
+ this.prevLabel = 'Prev';
1811
+ this.nextLabel = 'Next';
1812
+ this.prevUrl = '';
1813
+ this.nextUrl = '';
1814
+ this.links = [];
1815
+ }
1816
+ /** Lifecycle hook to generate pagination links on component load */
1817
+ componentWillLoad() {
1818
+ if (this.mode === 'default') {
1819
+ this.generateLinks();
1820
+ }
1821
+ }
1822
+ componentDidLoad() {
1823
+ // Emit context for each eds-link element after the component is fully loaded
1824
+ const links = this.hostEl.shadowRoot.querySelectorAll('eds-link');
1825
+ links.forEach((lnk) => {
1826
+ this.emitContext(lnk);
1827
+ });
1828
+ /*if (links.length > 0) {
1829
+ // Emit context for the first link
1830
+ this.emitContext(links[0]);
1831
+
1832
+ // Emit context for the last link, if it's different from the first
1833
+ if (links.length > 1) {
1834
+ this.emitContext(links[links.length - 1]);
1835
+ }
1836
+ }*/
1837
+ }
1838
+ /**
1839
+ * Emits a custom event called `parentContext` for a given link element.
1840
+ * This event provides context information about the breadcrumb component.
1841
+ *
1842
+ * @param linkElement - The link element to which the event will be dispatched.
1843
+ */
1844
+ emitContext(linkElement) {
1845
+ const event = new CustomEvent('parentContext', {
1846
+ detail: {
1847
+ componentName: this.hostEl.tagName.toLowerCase(),
1848
+ identifier: null
2146
1849
  }
2147
- catch (_a) {
2148
- // eslint-disable-next-line
2149
- console.warn('eds-pie: invalid slices JSON');
1850
+ });
1851
+ linkElement.dispatchEvent(event);
1852
+ }
1853
+ onPageOrLastPageChange() {
1854
+ if (this.mode === 'default') {
1855
+ this.generateLinks();
1856
+ }
1857
+ }
1858
+ /**
1859
+ * Checks if the current page is the first page
1860
+ * @returns {boolean} - true if current page is the first page
1861
+ */
1862
+ isFirstPage() {
1863
+ return this.currentPage === 1;
1864
+ }
1865
+ /**
1866
+ * Checks if the current page is the last page
1867
+ * @returns {boolean} - true if current page is the last page
1868
+ */
1869
+ isLastPage() {
1870
+ return this.currentPage === this.lastPage;
1871
+ }
1872
+ /**
1873
+ * Generates a pagination link object
1874
+ * @param {number} page - Page number for the link
1875
+ * @returns {Link} - Link object with page details
1876
+ */
1877
+ generateLink(page) {
1878
+ const urlHasQuery = this.url.includes('?');
1879
+ return {
1880
+ ariaLabel: `Page ${page}`,
1881
+ url: `${this.url}${urlHasQuery ? '&' : '?'}page=${page}`,
1882
+ label: page.toString(),
1883
+ current: this.currentPage === page,
1884
+ disabled: false
1885
+ };
1886
+ }
1887
+ /** Generates pagination links based on the last page and current page */
1888
+ generateLinks() {
1889
+ if (this.lastPage && this.lastPage > 5) {
1890
+ this.links = this.getPaginationGenerator(this.currentPage || 1, this.lastPage).map((page) => typeof page === 'number' ? this.generateLink(page) : page);
1891
+ }
1892
+ else if (this.lastPage) {
1893
+ this.links = Array.from({ length: this.lastPage }).map((_, i) => this.generateLink(i + 1));
1894
+ }
1895
+ }
1896
+ /**
1897
+ * Creates a pagination range based on delta, current, and total pages
1898
+ * @param {number} current - Current page number
1899
+ * @param {number} total - Total number of pages
1900
+ * @param {number} delta - Range of pages to display around the current page
1901
+ * @returns {(number | string)[]} - Range of page numbers or ellipses
1902
+ */
1903
+ getPaginationGenerator(current, total) {
1904
+ const delta = 1; // Show one page before and one after the current page
1905
+ const range = [];
1906
+ if (total <= 5) {
1907
+ // If total pages are 5 or less, show all pages
1908
+ for (let i = 1; i <= total; i++) {
1909
+ range.push(i);
1910
+ }
1911
+ }
1912
+ else {
1913
+ // Always show the first page
1914
+ range.push(1);
1915
+ // Add ellipsis if there’s a gap between the first page and the current range start
1916
+ if (current - delta > 2) {
1917
+ range.push('...');
1918
+ }
1919
+ // Determine range for pages around the current page
1920
+ for (let i = Math.max(2, current - delta); i <= Math.min(total - 1, current + delta); i++) {
1921
+ range.push(i);
2150
1922
  }
1923
+ // Add ellipsis if there’s a gap between the current range end and the last page
1924
+ if (current + delta < total - 1) {
1925
+ range.push('...');
1926
+ }
1927
+ // Always show the last page
1928
+ range.push(total);
2151
1929
  }
2152
- return Array.isArray(this.slices) ? this.slices : [];
1930
+ return range;
2153
1931
  }
2154
- polarToCartesian(cx, cy, r, angle) {
2155
- const rad = (angle - 90) * (Math.PI / 180);
2156
- return { x: cx + r * Math.cos(rad), y: cy + r * Math.sin(rad) };
1932
+ /**
1933
+ * Formats the current page results information for display
1934
+ * @returns {string} - Formatted page result information
1935
+ */
1936
+ pageResults() {
1937
+ if (this.total > 0) {
1938
+ return this.total > this.perPage
1939
+ ? `${this.perPage * ((this.currentPage || 1) - 1) + 1} - ${this.perPage * (this.currentPage || 1) >= this.total ? this.total : this.perPage * (this.currentPage || 1)} of ${this.total}`
1940
+ : `${this.total}`;
1941
+ }
1942
+ return '';
2157
1943
  }
2158
- describeArc(x, y, r, startAngle, endAngle) {
2159
- const start = this.polarToCartesian(x, y, r, endAngle);
2160
- const end = this.polarToCartesian(x, y, r, startAngle);
2161
- const largeArcFlag = endAngle - startAngle <= 180 ? '0' : '1';
2162
- return [`M ${start.x} ${start.y}`, `A ${r} ${r} 0 ${largeArcFlag} 0 ${end.x} ${end.y}`, `L ${x} ${y}`, 'Z'].join(' ');
1944
+ /**
1945
+ * Handles a page click event, updating the current page and dispatching an event
1946
+ * @param {MouseEvent} event - Click event
1947
+ * @param {number} newPage - New page number
1948
+ */
1949
+ handlePageClick(event, newPage) {
1950
+ if (this.mode === 'navigator') {
1951
+ return; // No page clicking logic for navigator mode
1952
+ }
1953
+ event.preventDefault(); // Prevent default link navigation
1954
+ if (newPage !== this.currentPage) {
1955
+ this.links = this.links.map((link) => typeof link === 'object' ? Object.assign(Object.assign({}, link), { current: parseInt(link.label) === newPage }) : link);
1956
+ const pageChangeEvent = new CustomEvent('page', {
1957
+ detail: newPage,
1958
+ bubbles: true,
1959
+ composed: true
1960
+ });
1961
+ this.hostEl.dispatchEvent(pageChangeEvent);
1962
+ this.currentPage = newPage;
1963
+ }
2163
1964
  }
2164
1965
  render() {
2165
- const raw = this.parseSlices();
2166
- if (raw.length > EdsPie.MAX_SLICES) {
2167
- // eslint-disable-next-line
2168
- console.warn(`eds-pie: too many slices (${raw.length}), results may overlap.`);
2169
- }
2170
- const total = raw.reduce((sum, s) => sum + s.value, 0) || 1;
2171
- const palette = [...EdsPie.PALETTES[this.colorScheme]];
2172
- const sorted = [...raw].sort((a, b) => b.value - a.value);
2173
- let cumulative = 0;
2174
- const processed = sorted.map((s) => {
2175
- const angle = (s.value / total) * 360;
2176
- const start = cumulative, end = cumulative + angle;
2177
- cumulative = end;
2178
- const color = s.color || palette.shift() || 'var(--color-chart-neutral-1)';
2179
- return Object.assign(Object.assign({}, s), { start, end, color });
2180
- });
2181
- const diameter = this.size;
2182
- const radius = diameter / 2;
2183
- // clamp into [0.5, 1]
2184
- const tClamped = Math.min(Math.max(this.thickness, 0.5), 1);
2185
- const innerRadius = radius * (1 - tClamped);
2186
- const outerRadius = radius;
2187
- // **replace** the previous labelRadius line with this:
2188
- const labelRadius = (radius + innerRadius) / 2;
2189
- // Build ARIA description
2190
- const ariaLabel = processed
2191
- .map((s) => `${s.label}: ${this.display === 'percent' ? `${Math.round((s.value / total) * 100)}%` : s.value}`)
2192
- .join(', ');
2193
- return (index.h(index.Host, null, index.h("div", { class: "wrapper" }, index.h("svg", { width: diameter, height: diameter, role: "img", "aria-label": `Pie chart: ${ariaLabel}`, class: "pie-chart" }, index.h("title", null, "Pie chart"), index.h("g", null, processed.map((s) => (index.h("path", { key: s.id, d: this.describeArc(radius, radius, outerRadius, s.start, s.end), fill: s.color }))), innerRadius > 0 && index.h("circle", { cx: radius, cy: radius, r: innerRadius, fill: "var(--white)" }), processed.map((s) => {
2194
- const midAngle = s.start + (s.end - s.start) / 2;
2195
- const { x, y } = this.polarToCartesian(radius, radius, labelRadius, midAngle);
2196
- const text = this.display === 'percent' ? `${Math.round((s.value / total) * 100)}%` : String(s.value);
2197
- return (index.h("text", { key: s.id, x: x, y: y, class: "f-ui-02", "text-anchor": "middle", "alignment-baseline": "middle" }, text));
2198
- }))), this.legend && (index.h("ul", { class: "legend", role: "list" }, processed.map((s) => (index.h("li", { key: s.id, role: "listitem", tabindex: "0", class: "legend-item" }, index.h("span", { class: "legend-swatch", style: { backgroundColor: s.color } }), index.h("span", { class: "legend-label" }, s.label)))))))));
1966
+ return (index.h("div", { key: '6377e0187e461bcbeac835dd7cb83e93ef199865' }, this.total > 0 && this.mode === 'default' && (index.h("p", { key: 'ec2a6b6a40c76352743d012c51cda5d7fe1137df', class: "f-ui-03 text-lightest mb-28 w-full text-center" }, index.h("span", { key: '3a23e3d156f87167b0dacb4085870958ce19e793', class: "sr-only" }, "Results:"), this.pageResults())), this.mode === 'navigator' || (this.lastPage && this.lastPage > 1) ? (index.h("nav", { "aria-label": "Pagination" }, index.h("ul", { class: "flex items-center justify-center gap-x-8" }, index.h("li", { class: "mr-auto" }, index.h("eds-link", { label: this.prevLabel, url: this.mode === 'navigator'
1967
+ ? this.prevUrl || '#' // Use prevUrl if provided, otherwise disable with '#'
1968
+ : this.isFirstPage()
1969
+ ? '#'
1970
+ : this.generateLink(this.currentPage - 1).url, disabled: this.mode === 'navigator'
1971
+ ? !this.prevUrl // Disable if prevUrl is not provided
1972
+ : 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) => {
1973
+ if (this.mode === 'default') {
1974
+ if (this.isFirstPage()) {
1975
+ event.preventDefault(); // Prevent click if disabled
1976
+ }
1977
+ else {
1978
+ this.handlePageClick(event, (this.currentPage || 1) - 1);
1979
+ }
1980
+ }
1981
+ } })), this.mode === 'default' &&
1982
+ this.links.map((link, index$1) => (index.h("li", { key: index$1, class: "f-ui-02 flex h-36 items-center justify-center" }, typeof link === 'string' ? (index.h("span", { class: "flex items-center justify-center" }, link)) : (index.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)) }))))), index.h("li", { class: "ml-auto" }, index.h("eds-link", { label: this.nextLabel, url: this.mode === 'navigator'
1983
+ ? this.nextUrl || '#' // Use nextUrl if provided, otherwise disable with '#'
1984
+ : this.isLastPage()
1985
+ ? '#'
1986
+ : this.generateLink(this.currentPage + 1).url, disabled: this.mode === 'navigator'
1987
+ ? !this.nextUrl // Disable if nextUrl is not provided
1988
+ : 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) => {
1989
+ if (this.mode === 'default') {
1990
+ if (this.isLastPage()) {
1991
+ event.preventDefault(); // Prevent click if disabled
1992
+ }
1993
+ else {
1994
+ this.handlePageClick(event, (this.currentPage || 1) + 1);
1995
+ }
1996
+ }
1997
+ } }))))) : null));
2199
1998
  }
1999
+ get hostEl() { return index.getElement(this); }
2000
+ static get watchers() { return {
2001
+ "currentPage": ["onPageOrLastPageChange"],
2002
+ "lastPage": ["onPageOrLastPageChange"]
2003
+ }; }
2200
2004
  };
2201
- EdsPie.MAX_SLICES = 9;
2202
- EdsPie.PALETTES = {
2203
- semantic: [
2204
- 'var(--color-chart-accent)',
2205
- 'var(--color-chart-strong)',
2206
- 'var(--color-chart-accent-dark)',
2207
- 'var(--color-chart-lighter)',
2208
- 'var(--color-chart-accent-light)',
2209
- 'var(--color-chart-lightest)',
2210
- 'var(--color-chart-accent-lighter)',
2211
- 'var(--color-chart-darker)',
2212
- 'var(--color-chart-accent-lightest)'
2213
- ],
2214
- mono: [
2215
- 'var(--grey-700)',
2216
- 'var(--grey-500)',
2217
- 'var(--grey-300)',
2218
- 'var(--grey-100)',
2219
- 'var(--grey-800)',
2220
- 'var(--grey-600)',
2221
- 'var(--grey-400)',
2222
- 'var(--grey-200)',
2223
- 'var(--grey-900)'
2224
- ]
2225
- };
2226
- EdsPie.style = EdsPieStyle0;
2005
+ EdsPagination.style = EdsPaginationStyle0;
2227
2006
 
2228
2007
  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}";
2229
2008
  const EdsSocialNetworksStyle0 = edsSocialNetworksCss;
@@ -2363,10 +2142,10 @@ const EdsSteps = class {
2363
2142
  render() {
2364
2143
  const steps = this.parsedSteps;
2365
2144
  if (this.type === 'linear') {
2366
- return (index.h("div", null, index.h("div", { class: "steps" }, steps.map((step, index$1) => (index.h("div", { class: "step mb-28", key: index$1 }, index.h("h3", { onClick: () => this.handleStepClick(index$1) }, step.title), this.activeStep === index$1 && (index.h("div", { class: "content" }, index.h("div", { class: "f-body-02 text-lighter my-16" }, step.content), index.h("eds-button", { label: index$1 === steps.length - 1 ? 'Finish' : 'Continue', intent: "primary", class: "next-btn", onClick: this.handleNext }), index.h("eds-button", { label: "Back", intent: "ghostInverse", onClick: this.handleBack, disabled: index$1 === 0, "extra-class": index$1 === 0 ? 'hidden' : 'ml-8 block' })))))))));
2145
+ return (index.h("div", null, index.h("div", { class: "steps" }, steps.map((step, index$1) => (index.h("div", { class: "step mb-28", key: index$1 }, index.h("h3", { onClick: () => this.handleStepClick(index$1) }, step.title), this.activeStep === index$1 && (index.h("div", { class: "content" }, index.h("slot", { name: `step-${index$1}` }, index.h("div", { class: index$1 === steps.length - 1 ? 'f-body-02 text-lighter mt-16' : 'f-body-02 text-lighter my-16', innerHTML: step.content })), index.h("eds-button", { label: index$1 === steps.length - 1 ? 'Finish' : 'Continue', intent: "primary", class: "next-btn", onClick: this.handleNext }), index.h("eds-button", { label: "Back", intent: "ghostInverse", onClick: this.handleBack, disabled: index$1 === 0, "extra-class": index$1 === 0 ? 'hidden' : 'ml-8 block' })))))))));
2367
2146
  }
2368
2147
  // Static mode: show all steps with their content, no navigation buttons.
2369
- return (index.h("div", { class: "steps" }, steps.map((step, index$1) => (index.h("div", { class: "step mb-28", key: index$1 }, index.h("h3", null, step.title), index.h("div", { class: "content" }, index.h("div", { class: "f-body-02 text-lighter my-16" }, step.content)))))));
2148
+ return (index.h("div", { class: "steps" }, steps.map((step, index$1) => (index.h("div", { class: "step mb-28", key: index$1 }, index.h("h3", null, step.title), index.h("div", { class: "content" }, index.h("slot", { name: `step-${index$1}` }, index.h("div", { class: index$1 === steps.length - 1 ? 'f-body-02 text-lighter mt-16' : 'f-body-02 text-lighter my-16', innerHTML: step.content }))))))));
2370
2149
  }
2371
2150
  get el() { return index.getElement(this); }
2372
2151
  static get watchers() { return {
@@ -2375,7 +2154,7 @@ const EdsSteps = class {
2375
2154
  };
2376
2155
  EdsSteps.style = EdsStepsStyle0;
2377
2156
 
2378
- 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}";
2157
+ 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))}";
2379
2158
  const EdsStepsV2Style0 = edsStepsV2Css;
2380
2159
 
2381
2160
  const EdsStepsV2 = class {
@@ -2397,6 +2176,7 @@ const EdsStepsV2 = class {
2397
2176
  this.steps = [];
2398
2177
  this.type = 'static';
2399
2178
  this.imageSrc = undefined;
2179
+ this.imageWidth = undefined;
2400
2180
  this.bg = true;
2401
2181
  this.message = undefined;
2402
2182
  this.activeStep = 0;
@@ -2452,9 +2232,9 @@ const EdsStepsV2 = class {
2452
2232
  }
2453
2233
  render() {
2454
2234
  const steps = this.parsedSteps;
2455
- return (index.h("div", { key: 'e86620aed9aafbf0c8e0cde0230b2147df952379', class: this.articleClasses() }, this.imageSrc ? (index.h("div", { class: "w-full mb-12 rounded-t-lg overflow-hidden border-2" }, index.h("eds-img", { src: this.imageSrc, "with-bg": "true", "lazy-load": "true", alt: "Step illustration" }))) : (this.message && (index.h("div", { class: "w-full bg-[#00A595] rounded-t-lg border-2" }, index.h("div", { class: "p-24" }, index.h("span", { class: "text-inverse f-heading-04 " }, this.message))))), index.h("div", { key: '773e51621fbfbc7b828d196d1e64a9752d02e5a4', class: "p-8" }, this.type === 'linear' ? (index.h("div", { class: "steps" }, steps.map((step, index$1) => (index.h("div", { class: "step space-y-8", key: index$1 }, index.h("h3", { onClick: () => this.handleStepClick(index$1) }, step.title), this.activeStep === index$1 && (index.h("div", { class: "content" }, index.h("div", { class: "f-body-02 text-lighter mt-16", innerHTML: step.content }), index.h("eds-button", { label: index$1 === steps.length - 1 ? 'Finish' : 'Continue', intent: "primary", class: "next-btn", onClick: this.handleNext }), index.h("eds-button", { label: "Back", intent: "ghostInverse", onClick: this.handleBack, disabled: index$1 === 0, "extra-class": index$1 === 0 ? 'hidden' : 'ml-8 block' })))))))) : (
2235
+ return (index.h("div", { key: 'bbcec2dd9a5096eb0cecf0d413892e5708822f52', class: this.articleClasses() }, this.imageSrc ? (index.h("div", { class: "w-full mb-12 rounded-t-lg overflow-hidden border-2" }, index.h("eds-img", { src: this.imageSrc, width: this.imageWidth, "with-bg": "true", "lazy-load": "true", alt: "Step illustration" }))) : (this.message && (index.h("div", { class: "w-full bg-[#00A595] rounded-t-lg border-2" }, index.h("div", { class: "p-24" }, index.h("span", { class: "text-inverse f-heading-04 " }, this.message))))), index.h("div", { key: 'db0618aad7d5986fcb0889f1c439be73f83a00df', class: "p-8" }, this.type === 'linear' ? (index.h("div", { class: "steps" }, steps.map((step, index$1) => (index.h("div", { class: index$1 === 0 ? 'step' : 'step space-y-16', key: index$1 }, index.h("h3", { onClick: () => this.handleStepClick(index$1) }, step.title), this.activeStep === index$1 && (index.h("div", { class: "content" }, index.h("slot", { name: `step-${index$1}` }, index.h("div", { class: index$1 === steps.length - 1 ? 'f-body-02 text-lighter mt-16' : 'f-body-02 text-lighter my-16', innerHTML: step.content })), index.h("eds-button", { label: index$1 === steps.length - 1 ? 'Finish' : 'Continue', intent: "primary", class: "next-btn", onClick: this.handleNext }), index.h("eds-button", { label: "Back", intent: "ghostInverse", onClick: this.handleBack, disabled: index$1 === 0, "extra-class": index$1 === 0 ? 'hidden' : 'ml-8 block' })))))))) : (
2456
2236
  // Static mode: show all steps with their content.
2457
- index.h("div", { class: "steps space-y-8" }, steps.map((step, index$1) => (index.h("div", { class: "step", key: index$1 }, index.h("h3", { onClick: () => this.handleStepClick(index$1) }, step.title), index.h("div", { class: "content" }, index.h("div", { class: "f-body-02 text-lighter mt-16", innerHTML: step.content }))))))))));
2237
+ index.h("div", { class: "steps space-y-8" }, steps.map((step, index$1) => (index.h("div", { class: "step", key: index$1 }, index.h("h3", { onClick: () => this.handleStepClick(index$1) }, step.title), index.h("div", { class: "content" }, index.h("slot", { name: `step-${index$1}` }, index.h("div", { class: index$1 === steps.length - 1 ? 'f-body-02 text-lighter mt-16' : 'f-body-02 text-lighter my-16', innerHTML: step.content })))))))))));
2458
2238
  }
2459
2239
  get el() { return index.getElement(this); }
2460
2240
  static get watchers() { return {
@@ -2463,6 +2243,245 @@ const EdsStepsV2 = class {
2463
2243
  };
2464
2244
  EdsStepsV2.style = EdsStepsV2Style0;
2465
2245
 
2246
+ 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}";
2247
+ const EdsTableStyle0 = edsTableCss;
2248
+
2249
+ const EdsTable = class {
2250
+ constructor(hostRef) {
2251
+ index.registerInstance(this, hostRef);
2252
+ this.rowaction = index.createEvent(this, "rowaction", 7);
2253
+ this.handleResize = () => {
2254
+ this.updateContainerWidth();
2255
+ };
2256
+ this.data = null;
2257
+ this.endpoint = null;
2258
+ this.config = {};
2259
+ this.rowsPerPage = 10;
2260
+ this.paginationEnabled = true;
2261
+ this.searchEnabled = false;
2262
+ this.hostWidth = undefined;
2263
+ this.columnSize = 'default';
2264
+ this.actions = [];
2265
+ this.actionTemplate = undefined;
2266
+ this.parsedActions = [];
2267
+ this.dataColumns = [];
2268
+ this.tbData = [];
2269
+ this.columns = [];
2270
+ this.currentPage = 1;
2271
+ this.parsedConfig = {};
2272
+ this.totalRows = 0;
2273
+ this.searchQuery = '';
2274
+ this.containerWidth = 0;
2275
+ }
2276
+ handleDataChange() {
2277
+ this.parseData();
2278
+ }
2279
+ handleConfigChange() {
2280
+ this.parseConfig();
2281
+ }
2282
+ handleActionsChange() {
2283
+ try {
2284
+ this.parsedActions = typeof this.actions === 'string' ? JSON.parse(this.actions) : this.actions;
2285
+ }
2286
+ catch (_a) {
2287
+ console.error('Failed to parse actions JSON');
2288
+ this.parsedActions = [];
2289
+ }
2290
+ }
2291
+ componentWillLoad() {
2292
+ this.parseConfig();
2293
+ this.handleActionsChange();
2294
+ this.data ? this.parseData() : this.endpoint && this.fetchData();
2295
+ }
2296
+ componentDidLoad() {
2297
+ this.updateContainerWidth();
2298
+ window.addEventListener('resize', this.handleResize);
2299
+ this.setupPaginationListener();
2300
+ }
2301
+ componentDidUpdate() {
2302
+ this.setupPaginationListener();
2303
+ }
2304
+ disconnectedCallback() {
2305
+ window.removeEventListener('resize', this.handleResize);
2306
+ }
2307
+ updateContainerWidth() {
2308
+ // Use hostWidth prop if provided; otherwise, measure parent element
2309
+ if (this.hostWidth && this.hostWidth.trim() !== '') {
2310
+ this.containerWidth = Number(this.hostWidth);
2311
+ }
2312
+ else if (this.hostEl.parentElement instanceof HTMLElement) {
2313
+ this.containerWidth = this.hostEl.parentElement.getBoundingClientRect().width;
2314
+ }
2315
+ else {
2316
+ this.containerWidth = 400;
2317
+ }
2318
+ }
2319
+ parseData() {
2320
+ try {
2321
+ this.tbData = sharedUtils.parseData(this.data);
2322
+ this.totalRows = this.tbData.length;
2323
+ this.updateColumns();
2324
+ this.currentPage = 1;
2325
+ }
2326
+ catch (error) {
2327
+ console.error('Failed to parse data:', error);
2328
+ this.tbData = [];
2329
+ }
2330
+ }
2331
+ parseConfig() {
2332
+ try {
2333
+ this.parsedConfig = typeof this.config === 'string' ? JSON.parse(this.config) : this.config;
2334
+ }
2335
+ catch (error) {
2336
+ console.error('Failed to parse config:', error);
2337
+ this.parsedConfig = {};
2338
+ }
2339
+ }
2340
+ async fetchData() {
2341
+ try {
2342
+ const response = await fetch(this.endpoint);
2343
+ const data = await response.json();
2344
+ this.data = data;
2345
+ }
2346
+ catch (error) {
2347
+ console.error('Failed to fetch data:', error);
2348
+ }
2349
+ }
2350
+ setupPaginationListener() {
2351
+ if (!this.shouldEnablePagination()) {
2352
+ return;
2353
+ }
2354
+ const paginationEl = this.hostEl.shadowRoot.querySelector('eds-pagination');
2355
+ if (paginationEl && !paginationEl.hasAttribute('listener-attached')) {
2356
+ paginationEl.addEventListener('page', (event) => this.handlePageChange(event.detail));
2357
+ paginationEl.setAttribute('listener-attached', 'true');
2358
+ }
2359
+ }
2360
+ getFilteredRows() {
2361
+ return this.tbData.filter((row) => Object.values(row).some((value) => value.toString().toLowerCase().includes(this.searchQuery.toLowerCase())));
2362
+ }
2363
+ getPaginatedRows() {
2364
+ const filteredRows = this.getFilteredRows();
2365
+ this.totalRows = filteredRows.length;
2366
+ const start = (this.currentPage - 1) * this.rowsPerPage;
2367
+ return filteredRows.slice(start, start + this.rowsPerPage);
2368
+ }
2369
+ handlePageChange(newPage) {
2370
+ this.currentPage = newPage;
2371
+ analytics.sendAnalytics({
2372
+ category: 'ui-component',
2373
+ parentContext: null,
2374
+ tag: `${this.hostEl.tagName.toLowerCase()}/eds-pagination`,
2375
+ name: `${newPage}` || '',
2376
+ action: 'page'
2377
+ });
2378
+ }
2379
+ handleSearch(event) {
2380
+ this.searchQuery = event.target.value;
2381
+ this.currentPage = 1;
2382
+ }
2383
+ renderCell(value, column) {
2384
+ var _a;
2385
+ const format = (_a = this.parsedConfig[column]) === null || _a === void 0 ? void 0 : _a.format;
2386
+ return format === 'uppercase' ? (value === null || value === void 0 ? void 0 : value.toString().toUpperCase()) : format === 'svg' ? (index.h("div", { innerHTML: value })) : format === 'bold' ? (index.h("strong", null, value)) : format === 'code' ? (index.h("code", null, value)) : (value);
2387
+ }
2388
+ /**
2389
+ * Renders one action (button or checkbox) for a specific action‐name.
2390
+ * Used by the “Actions” column below.
2391
+ */
2392
+ renderSingleActionCell(actionName, row) {
2393
+ var _a;
2394
+ const act = this.parsedActions.find((a) => a.name === actionName);
2395
+ if (this.actionTemplate) {
2396
+ return this.actionTemplate(row);
2397
+ }
2398
+ const type = act.type || 'button';
2399
+ if (type === 'checkbox') {
2400
+ const boundField = (_a = act.field) !== null && _a !== void 0 ? _a : act.name;
2401
+ const checked = !!row[boundField];
2402
+ return (index.h("eds-input-field", { name: `chc-${actionName}`, label: act.label, type: "checkbox", checked: checked, onChange: (e) => this.emitAction(act.name, row, e.target.checked) }));
2403
+ }
2404
+ return index.h("eds-link", { label: act.label, intent: "weak", onClick: () => this.emitAction(act.name, row) });
2405
+ }
2406
+ emitAction(actionName, row, checked) {
2407
+ analytics.sendAnalytics({
2408
+ category: 'ui-component',
2409
+ parentContext: null,
2410
+ tag: `${this.hostEl.tagName.toLowerCase()}/action`,
2411
+ name: actionName,
2412
+ action: 'click'
2413
+ });
2414
+ this.rowaction.emit({ action: actionName, row, checked: !!checked });
2415
+ }
2416
+ shouldEnablePagination() {
2417
+ return this.paginationEnabled && this.totalRows > this.rowsPerPage;
2418
+ }
2419
+ updateColumns() {
2420
+ var _a, _b;
2421
+ // 1) Grab all data‐keys from the first row (if any) as before:
2422
+ this.columns = this.tbData.length > 0 ? Object.keys(this.tbData[0]) : [];
2423
+ // 2) Instead of pushing each action.name, we add just a single “actions” column
2424
+ // (you can call it anything; we’ll detect it in render())
2425
+ if (((_b = (_a = this.parsedActions) === null || _a === void 0 ? void 0 : _a.length) !== null && _b !== void 0 ? _b : 0) > 0 && this.tbData.length > 0) {
2426
+ this.columns.push('actions');
2427
+ }
2428
+ }
2429
+ getVisibleColumnsCount() {
2430
+ return this.columns.filter((column) => { var _a; return !((_a = this.parsedConfig[column]) === null || _a === void 0 ? void 0 : _a.hidden); }).length;
2431
+ }
2432
+ divisionFactor() {
2433
+ let divisionFactor = 1;
2434
+ if (this.columnSize === 'medium') {
2435
+ divisionFactor = 2;
2436
+ }
2437
+ else if (this.columnSize === 'large') {
2438
+ divisionFactor = 4;
2439
+ }
2440
+ return divisionFactor;
2441
+ }
2442
+ capitalize(str) {
2443
+ return str.charAt(0).toUpperCase() + str.slice(1).toLowerCase();
2444
+ }
2445
+ render() {
2446
+ const currentContainerWidth = this.hostWidth && this.hostWidth.trim() !== '' ? Number(this.hostWidth) : this.containerWidth || 400;
2447
+ const visibleColumnsCount = this.getVisibleColumnsCount();
2448
+ const columnWidth = visibleColumnsCount > 0 ? Math.floor((currentContainerWidth / visibleColumnsCount) * this.divisionFactor()) : 100;
2449
+ const paginatedRows = this.getPaginatedRows();
2450
+ const lastPage = Math.ceil(this.totalRows / this.rowsPerPage);
2451
+ return (index.h("div", { key: '5034177431626ab2bfc5fd0118c006d11a4f6e96' }, this.searchEnabled && (index.h("div", { key: '86e1a6ffc4bed69f290b3a53031341ab276eaf04' }, index.h("eds-input-field", { key: 1, name: "search", "aria-label": "Search", type: "text", placeholder: "Search...", onInput: (event) => this.handleSearch(event) }))), index.h("div", { key: 'bc11838d819ecf89c5ba1cc1cfe7ac0af0e82b59', class: "mt-20" }, index.h("table", { key: '97f16b65eb1d9387e9ca7588184c9e68c1afcc2e', class: "block overflow-x-auto mt-6 p-0" }, index.h("thead", { key: 'f4d64ada28c225db1b224277513e663a99de1cec' }, index.h("tr", { key: 'c6a69e159cceada0f7143c0acb787e5c23242ae7', class: "m-0 p-0 border border-softer even:bg-inverse-softer" }, this.columns.map((col) => {
2452
+ var _a;
2453
+ // 3) For the “actions” column, override the header to “Actions”
2454
+ if (col === 'actions') {
2455
+ // You can choose a smaller min‐width here if you wish:
2456
+ return (index.h("th", { class: "m-0 py-8 border border-softer f-ui-02 break-words", style: { minWidth: `${columnWidth - 4}px` } }, "Actions"));
2457
+ }
2458
+ // Otherwise, render column name or action label if you do want to override:
2459
+ if (!((_a = this.parsedConfig[col]) === null || _a === void 0 ? void 0 : _a.hidden)) {
2460
+ return (index.h("th", { class: "m-0 py-8 border border-softer f-ui-02 break-words", style: { minWidth: `${columnWidth - 4}px` } }, this.capitalize(col)));
2461
+ }
2462
+ return null;
2463
+ }))), index.h("tbody", { key: '133af82fdd1f820e853734ab48123cb3db527e15' }, paginatedRows.map((row) => (index.h("tr", { class: "m-0 p-0 border border-softer even:bg-inverse-softer" }, this.columns.map((col) => {
2464
+ var _a;
2465
+ if (col === 'actions') {
2466
+ // 4) Render ALL actions inside a single <td> for this row:
2467
+ return (index.h("td", { class: "text-center border border-softer m-0 f-ui-02 break-words actions-cell", style: { minWidth: `${columnWidth - 4}px` } }, index.h("div", { style: { display: 'flex', gap: '0.5rem', justifyContent: 'center', flexWrap: 'wrap' } }, this.parsedActions.map((act) => (index.h("span", { style: { whiteSpace: 'nowrap' } }, this.renderSingleActionCell(act.name, row)))))));
2468
+ }
2469
+ if (!((_a = this.parsedConfig[col]) === null || _a === void 0 ? void 0 : _a.hidden)) {
2470
+ // Regular data cell:
2471
+ return (index.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)));
2472
+ }
2473
+ return null;
2474
+ }))))))), this.shouldEnablePagination() && (index.h("div", { key: '85032d06cd0ac5dae9b504d423fceba3cd074861', class: "mt-20" }, index.h("eds-pagination", { key: '8caf6f57960e222c04d45f57a5811cd7bd524f4c', currentPage: this.currentPage, lastPage: lastPage, perPage: this.rowsPerPage, total: this.totalRows, mode: "default" })))));
2475
+ }
2476
+ get hostEl() { return index.getElement(this); }
2477
+ static get watchers() { return {
2478
+ "data": ["handleDataChange", "parseData"],
2479
+ "config": ["handleConfigChange"],
2480
+ "actions": ["handleActionsChange"]
2481
+ }; }
2482
+ };
2483
+ EdsTable.style = EdsTableStyle0;
2484
+
2466
2485
  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}}";
2467
2486
  const EdsTabsStyle0 = edsTabsCss;
2468
2487
 
@@ -2624,30 +2643,6 @@ const EdsTag = class {
2624
2643
  };
2625
2644
  EdsTag.style = EdsTagStyle0;
2626
2645
 
2627
- 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}";
2628
- const EdsTooltipStyle0 = edsTooltipCss;
2629
-
2630
- const EdsTooltip = class {
2631
- constructor(hostRef) {
2632
- index.registerInstance(this, hostRef);
2633
- this.content = undefined;
2634
- }
2635
- /** fire analytics on every hover */
2636
- handleHover() {
2637
- analytics.sendAnalytics({
2638
- category: 'ui-component',
2639
- tag: this.el.tagName.toLowerCase(),
2640
- name: this.content.toLowerCase(),
2641
- action: 'hover'
2642
- });
2643
- }
2644
- render() {
2645
- return (index.h("div", { key: 'cf17cd61cd5888d6ea12bf6be0fb8c841072b4d6', class: "relative inline-block group" }, index.h("slot", { key: '7a41d90940fff4e8b887ec4a3240371466f219a5' }), index.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)));
2646
- }
2647
- get el() { return index.getElement(this); }
2648
- };
2649
- EdsTooltip.style = EdsTooltipStyle0;
2650
-
2651
2646
  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}";
2652
2647
  const EdsUserStyle0 = edsUserCss;
2653
2648
 
@@ -2680,33 +2675,19 @@ const EdsUser = class {
2680
2675
  }
2681
2676
  render() {
2682
2677
  const user = this.parsedUser;
2683
- return (index.h("div", { key: '9e2a8da09c2c15080e3b1ccf5b8e0e93b679d34b', class: "block" }, index.h("div", { key: 'ccc34b3c7b0ab8d515eebfa1962264365d20c788', class: "flex items-center" }, index.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" }, index.h("div", { key: 'd39e041e54fb59a409520e8b88f6f569d55cc6fc', class: "min-w-[280px] p-8" }, index.h("div", { key: '50e571e30a6902b8443b9766dfb1018c76a2f68e', class: "flex gap-x-16" }, index.h("eds-avatar", { key: '88a675a256466366aba1028831626253d11d2474', "first-name": user.given_name, "last-name": user.family_name, initials: this.initials, color: "grey" }), index.h("div", { key: '99626794a7fa243bc599e9e77b0bc1b717d14c96', class: "max-w-full" }, user.name && index.h("p", { key: '1f1e33e19fd2b266f442b596953100f6b5e6dfcd', class: "f-ui-01 text-default w-full text-ellipsis" }, user.name), user.preferred_username && index.h("p", { key: 'a36ebac6fdae9fa059887f7cc5d1009179f8eef9', class: "f-ui-03-light text-light mt-4" }, user.preferred_username), user.email && index.h("p", { key: '976cd925af318831a22f1d43242e0295614bb2a1', class: "f-ui-03-light text-light mt-4" }, user.email))), index.h("eds-block-break", { key: '7d189caaab8a9b593017312d6e3d6943c36de22b' }), index.h("div", { key: 'efcfc9a2c1f774abfab09b09682d7839bd1d5d2c', class: "text-default flex w-full flex-col gap-y-8" }, index.h("slot", { key: 'f54425f35d804753b94bb61e1d8e211a1583ac3b' })))))));
2678
+ return (index.h("div", { key: '9e2a8da09c2c15080e3b1ccf5b8e0e93b679d34b', class: "block" }, index.h("div", { key: 'ccc34b3c7b0ab8d515eebfa1962264365d20c788', class: "flex items-center" }, index.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" }, index.h("div", { key: '0522db7fc229186c645665a4c9eeedc46fb5823b', class: "min-w-[280px] p-8" }, index.h("div", { key: 'af7b9daec713d24f8a1415415d19cdf48905c0cb', class: "flex gap-x-16" }, index.h("eds-avatar", { key: 'c3ea7307d9beb597fe93d3942b7724f8526298ad', "first-name": user.given_name, "last-name": user.family_name, initials: this.initials, color: "grey" }), index.h("div", { key: '7af823b5f38a3d7acf16c633471dcfe74bca5e3c', class: "max-w-full" }, user.name && index.h("p", { key: '5973dfbac0efceeddb0dc211d9c502a1ad3b0dde', class: "f-ui-01 text-default w-full text-ellipsis" }, user.name), user.preferred_username && index.h("p", { key: '5989927760ed2a2d1365661bbdc112a3a3d23bbf', class: "f-ui-03-light text-light mt-4" }, user.preferred_username), user.email && index.h("p", { key: 'ee36be95298c0c7a748537012d48a85884955904', class: "f-ui-03-light text-light mt-4" }, user.email))), index.h("eds-block-break", { key: 'fb3ef5cad6e81f51983e54914412131c3bd4cbc2' }), index.h("div", { key: 'e3784f3f4931378bf55d766d4a1cf5e24a75d462', class: "text-default flex w-full flex-col gap-y-8" }, index.h("slot", { key: 'c0052bb56286d9a3fdc686c8407e105499a38084' })))))));
2684
2679
  }
2685
2680
  get hostEl() { return index.getElement(this); }
2686
2681
  };
2687
2682
  EdsUser.style = EdsUserStyle0;
2688
2683
 
2689
- const TokenSpacing = class {
2690
- constructor(hostRef) {
2691
- index.registerInstance(this, hostRef);
2692
- }
2693
- render() {
2694
- return (index.h("div", { key: 'ad89d21ec01f11c77d85853f7c0dbefd8ea9f07f', class: "w-full" }, index.h("ul", { key: '6108fb2870c358de8e5c48e6d14f6c1e76af856f', class: "not-prose gap-y-8 md:gap-y-12 lg:gap-y-16" }, index.h("li", { key: 'cd0d1986b416f12164b8d0458262987a445662ca', class: "grid-col-span-12 md:grid-col-span-4 flex flex-col items-center mt-16" }, index.h("div", { key: 'f2cfd77fcba601b89605dabf109f599816bb118e', class: "container p-8 item-center border-2 border-soft" }, index.h("div", { key: '69e4cb5660f5c51d2b9c1ba30a38f3b7decacc58', class: "spacing-sample m-16 bg-strong" }, index.h("span", { key: '70a07326b0a95655db3aad083637499f5ed4aa73', class: "f-body-01 text-inverse" }, "Margin: 1rem / m-16")))), index.h("li", { key: '97b8c127e9bbe9af4ec8f6876ebae3f87a52d130', class: "grid-col-span-12 md:grid-col-span-4 flex flex-col items-center mt-16" }, index.h("div", { key: '58537d6aa824b489ae9c5150400af21f11f1f447', class: "container p-8 item-center border-2 border-soft" }, index.h("div", { key: '3f2913d232cb9de1b678b7f7903bef0642ef42df', class: "spacing-sample ml-64 bg-strong" }, index.h("span", { key: 'fe56d1a501dc219a1bac474b674586609499f3de', class: "f-body-01 text-inverse" }, "Margin Left: 4rem / ml-64")))), index.h("li", { key: 'e2dee648fd4bce503414d76f3afe64655285523c', class: "grid-col-span-12 md:grid-col-span-4 flex flex-col items-center mt-16" }, index.h("div", { key: 'e788fa22248ac92fb8bc89566c5b8a77cf14578f', class: "container p-8 item-center border-2 border-soft" }, index.h("div", { key: '9629958b453aa831a1d871bb4e846d0926d9e57c', class: "spacing-sample mt-32 bg-strong" }, index.h("span", { key: '0efde7eaed0fe3e14f476617e7e9bf2e20131f2c', class: "f-body-01 text-inverse" }, "Margin Top: 2rem / mt-32")))), index.h("li", { key: '6dabfeb0086c784c50843abd12d5a505a56e0933', class: "grid-col-span-12 md:grid-col-span-4 flex flex-col items-center mt-16" }, index.h("div", { key: '164e7eec6ed3aad2847c4ede97f4bbfed34138d1', class: "container p-8 item-center border-2 border-soft" }, index.h("div", { key: '9be99b05ba29204f6163df2c1522e7aa6211bd3d', class: "spacing-sample p-32 bg-strong" }, index.h("span", { key: 'ae0a7ea74e31ea324015b844848c3d5a68930e8d', class: "f-body-01 text-inverse" }, "Padding: 2rem / p-32")))), index.h("li", { key: '3804dbfb6a64a1dfd478bd0132ff83f51bcff33e', class: "grid-col-span-12 md:grid-col-span-4 flex flex-col items-center mt-16" }, index.h("div", { key: '75c96b0762c3fac8b4de897ab8147b2c5614a360', class: "container p-8 item-center border-2 border-soft" }, index.h("div", { key: 'd00487531406fa89112bee34e05306c59dc4f497', class: "spacing-sample pt-32 bg-strong" }, index.h("span", { key: '8a750b7ac07739a71949b236421427b8bb05b067', class: "f-body-01 text-inverse" }, "Padding Top: 2rem / pt-32")))), index.h("li", { key: '5e5fe43383f13b4377aca7cfb07c97b6ac1dd79b', class: "grid-col-span-12 md:grid-col-span-4 flex flex-col items-center mt-16" }, index.h("div", { key: 'ed2ac88c543eba8c580d029ccacb1a8b26c1cae7', class: "container p-8 item-center border-2 border-soft" }, index.h("div", { key: 'cf9a94b61e598c0ee6da9e771717574b48264333', class: "spacing-sample pl-32 bg-strong" }, index.h("span", { key: 'a2d3fce66240c6b0d49d1a655c0b5a84be9c630d', class: "f-body-01 text-inverse" }, "Padding Left: 2rem / pl-32")))))));
2695
- }
2696
- };
2697
-
2698
2684
  exports.eds_avatar = EdsAvatar;
2699
2685
  exports.eds_block_break = EdsBlockBreak;
2700
- exports.eds_breadcrumb = EdsBreadcrumb;
2701
2686
  exports.eds_button = EdsButton;
2702
- exports.eds_card_desc = EdsCardDesc;
2703
- exports.eds_card_generic = EdsCardGeneric;
2704
- exports.eds_card_title = EdsCardTitle;
2705
2687
  exports.eds_dropdown = EdsDropdown;
2706
2688
  exports.eds_footer = EdsFooter;
2707
2689
  exports.eds_form = EdsForm;
2708
2690
  exports.eds_fullscreen_menu = EdsFullscreenMenu;
2709
- exports.eds_gauge = EdsGauge;
2710
2691
  exports.eds_header = EdsHeader;
2711
2692
  exports.eds_icon_wrapper = EdsIconWrapper;
2712
2693
  exports.eds_img = EdsImg;
@@ -2720,12 +2701,11 @@ exports.eds_input_select = EdsInputSelect;
2720
2701
  exports.eds_link = EdsLink;
2721
2702
  exports.eds_logo = EdsLogo;
2722
2703
  exports.eds_modal = EdsModal;
2723
- exports.eds_pie = EdsPie;
2704
+ exports.eds_pagination = EdsPagination;
2724
2705
  exports.eds_social_networks = EdsSocialNetworks;
2725
2706
  exports.eds_steps = EdsSteps;
2726
2707
  exports.eds_steps_v2 = EdsStepsV2;
2708
+ exports.eds_table = EdsTable;
2727
2709
  exports.eds_tabs = EdsTabs;
2728
2710
  exports.eds_tag = EdsTag;
2729
- exports.eds_tooltip = EdsTooltip;
2730
2711
  exports.eds_user = EdsUser;
2731
- exports.token_spacing = TokenSpacing;