@ds-autonomie/web-components 2.18.0 → 2.19.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 (479) hide show
  1. package/CHANGELOG.md +19 -0
  2. package/cdn/chunks/{chunk.HJUAHLY6.js → chunk.2EC2JS5U.js} +1 -1
  3. package/cdn/chunks/{chunk.3G5TZAEL.js → chunk.2J6VNJAV.js} +2 -2
  4. package/cdn/chunks/chunk.2JTZGBMF.js +1 -0
  5. package/cdn/chunks/chunk.3D5VBTZM.js +6 -0
  6. package/cdn/chunks/chunk.3FMDB6AF.js +19 -0
  7. package/cdn/chunks/{chunk.AZWPWL5D.js → chunk.3URUFDPU.js} +4 -4
  8. package/cdn/chunks/chunk.4A2SP2JA.js +68 -0
  9. package/cdn/chunks/{chunk.2RZZILUX.js → chunk.4IWXGSUM.js} +7 -7
  10. package/cdn/chunks/chunk.4VP4RPNY.js +25 -0
  11. package/cdn/chunks/{chunk.QLA42ORC.js → chunk.535I3ZDX.js} +6 -6
  12. package/cdn/chunks/{chunk.ZPW2DSUP.js → chunk.5KCVCUSX.js} +1 -1
  13. package/cdn/chunks/{chunk.L7SDBPGB.js → chunk.5MXBS7CA.js} +1 -1
  14. package/cdn/chunks/chunk.5OGTGPR7.js +1 -0
  15. package/cdn/chunks/{chunk.W3ZGFMS3.js → chunk.5PWPU25F.js} +1 -1
  16. package/cdn/chunks/{chunk.23QXZAWH.js → chunk.5V6ZBY2X.js} +1 -1
  17. package/cdn/chunks/{chunk.VE5CSYN4.js → chunk.67UP3FZD.js} +1 -1
  18. package/cdn/chunks/chunk.6HXGZFOB.js +68 -0
  19. package/cdn/chunks/{chunk.F5LRDLVV.js → chunk.77YRGKFQ.js} +1 -1
  20. package/cdn/chunks/{chunk.VO4NFG2W.js → chunk.7OMTHUFI.js} +1 -1
  21. package/cdn/chunks/{chunk.FHS54ZO7.js → chunk.7RWZ2YNR.js} +1 -1
  22. package/cdn/chunks/{chunk.H5VVBPCR.js → chunk.7TKKYYU2.js} +1 -1
  23. package/cdn/chunks/{chunk.LFI7CMVX.js → chunk.7WZQFRLE.js} +1 -1
  24. package/cdn/chunks/{chunk.TM7AGXEU.js → chunk.7YNQVYS2.js} +1 -1
  25. package/cdn/chunks/{chunk.3TFD5K7U.js → chunk.7ZYAJWHQ.js} +1 -1
  26. package/cdn/chunks/{chunk.YXR5X3ZH.js → chunk.AB4OF3RS.js} +1 -1
  27. package/cdn/chunks/{chunk.CJZS4FSB.js → chunk.AGA6W4U2.js} +1 -1
  28. package/cdn/chunks/chunk.AGX2JVB6.js +1 -0
  29. package/cdn/chunks/{chunk.LSD5NIU2.js → chunk.AYT5ORA7.js} +1 -1
  30. package/cdn/chunks/{chunk.2MLSQPMY.js → chunk.AZVWRRFP.js} +1 -1
  31. package/cdn/chunks/{chunk.AOPSMRYY.js → chunk.BDRT5OOU.js} +1 -1
  32. package/cdn/chunks/{chunk.OTTGEQF6.js → chunk.BOCMAV5D.js} +1 -1
  33. package/cdn/chunks/{chunk.2S76L6WY.js → chunk.BXY7ZIT5.js} +5 -5
  34. package/cdn/chunks/{chunk.2DV64XU7.js → chunk.CCKFL63L.js} +1 -1
  35. package/cdn/chunks/{chunk.4HSGYXFW.js → chunk.CLIKZB5P.js} +8 -14
  36. package/cdn/chunks/chunk.CMPRHBFO.js +1 -0
  37. package/cdn/chunks/{chunk.QSJXNN7N.js → chunk.COMV5MJ5.js} +1 -1
  38. package/cdn/chunks/{chunk.THOSFGWY.js → chunk.CWHPCCQQ.js} +3 -1
  39. package/cdn/chunks/{chunk.ZWCO2GBI.js → chunk.CWT6MEMU.js} +1 -1
  40. package/cdn/chunks/{chunk.ILCY7FNR.js → chunk.DFIOQK4K.js} +1 -1
  41. package/cdn/chunks/chunk.DR6FOTG4.js +1 -0
  42. package/cdn/chunks/{chunk.A45JZ63N.js → chunk.DRNNBI43.js} +1 -1
  43. package/cdn/chunks/{chunk.V3N4CMN7.js → chunk.DY5MCIEV.js} +3 -3
  44. package/cdn/chunks/chunk.E2BYQFB7.js +11 -0
  45. package/cdn/chunks/{chunk.PZ6VFJYI.js → chunk.EAWHOXCM.js} +1 -1
  46. package/cdn/chunks/chunk.EZQSKUPG.js +20 -0
  47. package/cdn/chunks/{chunk.QJLFNSIA.js → chunk.F4EQPWW4.js} +1 -1
  48. package/cdn/chunks/{chunk.SDPQMM4W.js → chunk.GDNVDKSZ.js} +1 -1
  49. package/cdn/chunks/chunk.GPW6JCHZ.js +13 -0
  50. package/cdn/chunks/{chunk.VE2TTZQA.js → chunk.GQ75QMJG.js} +12 -4
  51. package/cdn/chunks/{chunk.KC2NESXB.js → chunk.GVL377SN.js} +1 -1
  52. package/cdn/chunks/{chunk.JO6IBXF3.js → chunk.H6KRGKOT.js} +1 -1
  53. package/cdn/chunks/chunk.H7CICKO6.js +173 -0
  54. package/cdn/chunks/chunk.HEWKH2LT.js +44 -0
  55. package/cdn/chunks/{chunk.ZFWCNYR2.js → chunk.HGNNGE53.js} +1 -1
  56. package/cdn/chunks/{chunk.2LF6OMUV.js → chunk.HW5UT2FF.js} +15 -15
  57. package/cdn/chunks/{chunk.NIH3WB32.js → chunk.IDTMD6WQ.js} +1 -1
  58. package/cdn/chunks/{chunk.GYURCDPD.js → chunk.IMDJ7GD2.js} +1 -1
  59. package/cdn/chunks/{chunk.3FHGJRJ3.js → chunk.IMVLXBHS.js} +9 -10
  60. package/cdn/chunks/{chunk.YRJIHG6T.js → chunk.IUOHXTHC.js} +1 -1
  61. package/cdn/chunks/{chunk.SLTCOGOD.js → chunk.IYPKQQOD.js} +1 -1
  62. package/cdn/chunks/chunk.J7MFL7JZ.js +11 -0
  63. package/cdn/chunks/{chunk.GEV6DKVB.js → chunk.JFLIH5L5.js} +2 -22
  64. package/cdn/chunks/{chunk.NEWNV55I.js → chunk.JFT7O46L.js} +1 -1
  65. package/cdn/chunks/chunk.JLB52ESL.js +130 -0
  66. package/cdn/chunks/chunk.KOU7YZ7Z.js +32 -0
  67. package/cdn/chunks/{chunk.3LUZLW6F.js → chunk.KSJJM4LY.js} +3 -3
  68. package/cdn/chunks/{chunk.YZK4IVQW.js → chunk.KTJAW66F.js} +1 -1
  69. package/cdn/chunks/{chunk.TGVZIOKS.js → chunk.KVPC6DC4.js} +1 -1
  70. package/cdn/chunks/{chunk.GHHMVWM2.js → chunk.KWBL3MII.js} +4 -4
  71. package/cdn/chunks/{chunk.YRQ4GUXM.js → chunk.KX5QV54N.js} +1 -1
  72. package/cdn/chunks/{chunk.GM4KTNXL.js → chunk.LBAIMDY3.js} +1 -1
  73. package/cdn/chunks/chunk.M7BLJVGV.js +28 -0
  74. package/cdn/chunks/chunk.MC7ZQO6Z.js +1 -0
  75. package/cdn/chunks/chunk.MN7GWB3J.js +66 -0
  76. package/cdn/chunks/{chunk.F3UE7567.js → chunk.MRVUEYXZ.js} +1 -1
  77. package/cdn/chunks/{chunk.ZKKBL76K.js → chunk.PVV7WADS.js} +1 -1
  78. package/cdn/chunks/chunk.QEODND2O.js +8 -0
  79. package/cdn/chunks/chunk.QOIUR37X.js +1 -0
  80. package/cdn/chunks/chunk.QTD6NQFL.js +1 -0
  81. package/cdn/chunks/{chunk.FEXCFMDC.js → chunk.RMI7CBAO.js} +5 -5
  82. package/cdn/chunks/{chunk.QQLTDM2A.js → chunk.RTVNV4IL.js} +1 -1
  83. package/cdn/chunks/{chunk.UAGWSEWC.js → chunk.STCKZYIM.js} +6 -6
  84. package/cdn/chunks/chunk.THWI644G.js +54 -0
  85. package/cdn/chunks/{chunk.23NGYECZ.js → chunk.TPKY6SO3.js} +1 -1
  86. package/cdn/chunks/chunk.U6OE2WNY.js +51 -0
  87. package/cdn/chunks/{chunk.J5EBYKBM.js → chunk.UXV7IG5J.js} +1 -1
  88. package/cdn/chunks/{chunk.PSXSWQCS.js → chunk.VOJKFSPN.js} +1 -1
  89. package/cdn/chunks/{chunk.H5XLHNHE.js → chunk.VVOUCVXZ.js} +1 -1
  90. package/cdn/chunks/{chunk.UWBADC7U.js → chunk.WMOV27WV.js} +5 -2
  91. package/cdn/chunks/chunk.WQIMDJJX.js +101 -0
  92. package/cdn/chunks/{chunk.OTNGFYHL.js → chunk.WWRGGVFZ.js} +1 -1
  93. package/cdn/chunks/{chunk.HO6LFH7Z.js → chunk.WXQKHJC3.js} +1 -1
  94. package/cdn/chunks/chunk.YBVIKP5F.js +41 -0
  95. package/cdn/chunks/chunk.YDZQVGSP.js +47 -0
  96. package/cdn/chunks/{chunk.D3BOAL4N.js → chunk.YWOAIOEZ.js} +1 -1
  97. package/cdn/chunks/chunk.YZO4H6DD.js +57 -0
  98. package/cdn/chunks/{chunk.MTXJMWYM.js → chunk.Z226LHQY.js} +1 -1
  99. package/cdn/chunks/{chunk.2QOKOUSD.js → chunk.ZMEW7RFS.js} +1 -1
  100. package/cdn/components/accordion/accordion.js +1 -1
  101. package/cdn/components/accordion-group/accordion-group.js +1 -1
  102. package/cdn/components/alert/alert.js +1 -1
  103. package/cdn/components/breadcrumb/breadcrumb.js +1 -1
  104. package/cdn/components/breadcrumb-item/breadcrumb-item.js +1 -1
  105. package/cdn/components/button/button.js +1 -1
  106. package/cdn/components/calendar/calendar.js +1 -1
  107. package/cdn/components/card-nav-accordion/card-nav-accordion.js +1 -1
  108. package/cdn/components/checkbox/checkbox.js +1 -1
  109. package/cdn/components/checkbox/checkbox.styles.js +1 -1
  110. package/cdn/components/checkbox-button/checkbox-button.js +1 -1
  111. package/cdn/components/checkbox-card/checkbox-card.js +1 -1
  112. package/cdn/components/checkbox-group/checkbox-group.js +1 -1
  113. package/cdn/components/combobox/combobox.js +1 -1
  114. package/cdn/components/combobox/combobox.styles.js +1 -1
  115. package/cdn/components/copy-button/copy-button.js +1 -1
  116. package/cdn/components/dialog/dialog.js +1 -1
  117. package/cdn/components/drawer/drawer.js +1 -1
  118. package/cdn/components/dropdown/dropdown.js +1 -1
  119. package/cdn/components/error-message-panel/error-message-panel.js +1 -1
  120. package/cdn/components/file-upload/file-upload.js +1 -1
  121. package/cdn/components/filter-button/filter-button.js +1 -1
  122. package/cdn/components/filter-counter/filter-counter.js +1 -1
  123. package/cdn/components/filter-date/filter-date.js +1 -1
  124. package/cdn/components/filter-range/filter-range.js +1 -1
  125. package/cdn/components/filter-select/filter-select.js +1 -1
  126. package/cdn/components/footer/footer.js +1 -1
  127. package/cdn/components/format-bytes/format-bytes.js +1 -1
  128. package/cdn/components/format-date/format-date.js +1 -1
  129. package/cdn/components/format-number/format-number.js +1 -1
  130. package/cdn/components/header/header.d.ts +1 -0
  131. package/cdn/components/header/header.js +1 -1
  132. package/cdn/components/header-external-link/header-external-link.js +1 -1
  133. package/cdn/components/header-modern/header-modern.d.ts +1 -0
  134. package/cdn/components/header-modern/header-modern.js +1 -1
  135. package/cdn/components/header-search/header-search.js +1 -1
  136. package/cdn/components/input/input.js +1 -1
  137. package/cdn/components/input-amount/input-amount.js +1 -1
  138. package/cdn/components/input-date/input-date.js +1 -1
  139. package/cdn/components/input-mask/input-mask.js +1 -1
  140. package/cdn/components/input-native/input-native.js +1 -1
  141. package/cdn/components/input-phone/input-phone.js +1 -1
  142. package/cdn/components/input-time/input-time.js +1 -1
  143. package/cdn/components/menu-accordion/menu-accordion.js +1 -1
  144. package/cdn/components/menu-item/menu-item.js +1 -1
  145. package/cdn/components/menu-navigation/menu-navigation.js +1 -1
  146. package/cdn/components/navbar-link/navbar-link.js +1 -1
  147. package/cdn/components/navbar-menu/navbar-menu.js +1 -1
  148. package/cdn/components/option/option.d.ts +2 -0
  149. package/cdn/components/option/option.js +1 -1
  150. package/cdn/components/option/option.styles.js +1 -1
  151. package/cdn/components/pagination/pagination.js +1 -1
  152. package/cdn/components/profile-button/profile-button.js +1 -1
  153. package/cdn/components/progress-bar/progress-bar.js +1 -1
  154. package/cdn/components/radio/radio.js +1 -1
  155. package/cdn/components/radio/radio.styles.js +1 -1
  156. package/cdn/components/radio-button/radio-button.js +1 -1
  157. package/cdn/components/radio-card/radio-card.js +1 -1
  158. package/cdn/components/radio-group/radio-group.js +1 -1
  159. package/cdn/components/relative-time/relative-time.js +1 -1
  160. package/cdn/components/search/search.js +1 -1
  161. package/cdn/components/search/search.styles.js +1 -1
  162. package/cdn/components/select/select.d.ts +3 -1
  163. package/cdn/components/select/select.js +1 -1
  164. package/cdn/components/select/select.styles.js +1 -1
  165. package/cdn/components/sidenav/sidenav.d.ts +4 -1
  166. package/cdn/components/sidenav/sidenav.js +1 -1
  167. package/cdn/components/sidenav-info-accordion/sidenav-info-accordion.js +1 -1
  168. package/cdn/components/skip-link-item/skip-link-item.js +1 -1
  169. package/cdn/components/skip-links/skip-links.js +1 -1
  170. package/cdn/components/spinner/spinner.js +1 -1
  171. package/cdn/components/split-panel/split-panel.js +1 -1
  172. package/cdn/components/step/step.js +1 -1
  173. package/cdn/components/step/step.styles.js +1 -1
  174. package/cdn/components/stepper/stepper.d.ts +4 -1
  175. package/cdn/components/stepper/stepper.js +1 -1
  176. package/cdn/components/switch/switch.js +1 -1
  177. package/cdn/components/switch/switch.styles.js +1 -1
  178. package/cdn/components/tab/tab.d.ts +3 -0
  179. package/cdn/components/tab/tab.js +1 -1
  180. package/cdn/components/tab/tab.styles.js +1 -1
  181. package/cdn/components/tab-group/tab-group.d.ts +1 -0
  182. package/cdn/components/tab-group/tab-group.js +1 -1
  183. package/cdn/components/tab-group/tab-group.styles.js +1 -1
  184. package/cdn/components/tab-panel/tab-panel.js +1 -1
  185. package/cdn/components/table/table.d.ts +29 -0
  186. package/cdn/components/table/table.js +1 -1
  187. package/cdn/components/table-action/table-action.js +1 -1
  188. package/cdn/components/table-body/table-body.js +1 -1
  189. package/cdn/components/table-caption/table-caption.js +1 -1
  190. package/cdn/components/table-container/table-container.js +1 -1
  191. package/cdn/components/table-head/table-head.js +1 -1
  192. package/cdn/components/table-header-row/table-header-row.d.ts +1 -0
  193. package/cdn/components/table-header-row/table-header-row.js +1 -1
  194. package/cdn/components/table-header-row/table-header-row.styles.js +1 -1
  195. package/cdn/components/table-of-contents/table-of-contents.js +1 -1
  196. package/cdn/components/table-row/table-row-base.styles.js +1 -1
  197. package/cdn/components/table-row/table-row.d.ts +20 -0
  198. package/cdn/components/table-row/table-row.js +1 -1
  199. package/cdn/components/table-row/table-row.styles.js +1 -1
  200. package/cdn/components/tag/tag.js +1 -1
  201. package/cdn/components/tooltip/tooltip.js +1 -1
  202. package/cdn/components/tree/tree.d.ts +4 -0
  203. package/cdn/components/tree/tree.js +1 -1
  204. package/cdn/components/tree-item/tree-item.js +1 -1
  205. package/cdn/custom-elements.json +936 -43
  206. package/cdn/design-system.js +1 -1
  207. package/cdn/events/dsa-table-row-reordered.d.ts +14 -0
  208. package/cdn/events/dsa-table-row-reordered.js +1 -0
  209. package/cdn/events/events.d.ts +1 -0
  210. package/cdn/internal/components/form-selectable-card/form-selectable-card.js +3 -2
  211. package/cdn/internal/components/form-selectable-card/form-selectable-card.styles.js +4 -4
  212. package/cdn/internal/components/form-toggle-button/form-toggle-button.js +3 -2
  213. package/cdn/internal/components/form-toggle-button/form-toggle-button.styles.js +2 -2
  214. package/cdn/translations/en-gb.js +1 -1
  215. package/cdn/translations/en.js +1 -1
  216. package/cdn/translations/fr.js +1 -1
  217. package/cdn/utilities/helpers.d.ts +2 -0
  218. package/cdn/utilities/helpers.js +1 -1
  219. package/cdn/utilities/localize.d.ts +2 -0
  220. package/cdn/utilities/localize.js +1 -1
  221. package/cdn/utilities/storybook.js +1 -1
  222. package/cdn/vscode.html-custom-data.json +42 -2
  223. package/cdn/web-types.json +452 -4
  224. package/dist/chunks/{chunk.TNZEC73D.js → chunk.2AMILV3O.js} +1 -1
  225. package/dist/chunks/{chunk.TZZRAR42.js → chunk.2GJ46J7Q.js} +1 -1
  226. package/dist/chunks/{chunk.C6UENJ2Y.js → chunk.2WW7OJZT.js} +1 -1
  227. package/dist/chunks/{chunk.PFQ6NGY7.js → chunk.33P7XYHC.js} +1 -1
  228. package/dist/chunks/{chunk.WHHYA5VY.js → chunk.34HS7ICN.js} +4 -0
  229. package/dist/chunks/{chunk.SLXERY4H.js → chunk.4535HZ7L.js} +8 -4
  230. package/dist/chunks/{chunk.MGW4E3VW.js → chunk.47AQXN3U.js} +2 -2
  231. package/dist/chunks/{chunk.EXHYWKQB.js → chunk.4E2FKC3C.js} +1 -1
  232. package/dist/chunks/{chunk.MPV4OPIK.js → chunk.4K6WZ7K7.js} +9 -3
  233. package/dist/chunks/{chunk.D6D5UTHQ.js → chunk.4NY2E4AU.js} +9 -5
  234. package/dist/chunks/{chunk.X6SEIMM4.js → chunk.4VSGAJJL.js} +2 -2
  235. package/dist/chunks/{chunk.TF4MJ3XV.js → chunk.5R7OHVIP.js} +3 -3
  236. package/dist/chunks/{chunk.NMU6DWUH.js → chunk.5SH25FOL.js} +27 -6
  237. package/dist/chunks/{chunk.EXGB2DIR.js → chunk.5TBGCNJD.js} +46 -25
  238. package/dist/chunks/{chunk.TRVKPMDO.js → chunk.6BCJJGLC.js} +1 -1
  239. package/dist/chunks/{chunk.RKKRGVJW.js → chunk.6RXEQKWZ.js} +13 -3
  240. package/dist/chunks/{chunk.P2KNRWE5.js → chunk.72FKNFBS.js} +1 -1
  241. package/dist/chunks/{chunk.FF67XKLP.js → chunk.75USPA7U.js} +26 -18
  242. package/dist/chunks/{chunk.V5GAH4HU.js → chunk.7BBNETYY.js} +3 -3
  243. package/dist/chunks/{chunk.AFSUKPIV.js → chunk.7MY3WW7C.js} +5 -3
  244. package/dist/chunks/{chunk.EHGHV3EE.js → chunk.B3QEXOQE.js} +2 -1
  245. package/dist/chunks/{chunk.ANOLAL4B.js → chunk.BUGXYS34.js} +1 -1
  246. package/dist/chunks/chunk.D5YUY5BG.js +608 -0
  247. package/dist/chunks/{chunk.5A6XLOZY.js → chunk.DN3K2GHZ.js} +1 -1
  248. package/dist/chunks/{chunk.6TDKZD7U.js → chunk.E6D32GY2.js} +14 -2
  249. package/dist/chunks/{chunk.TP5XEQ2O.js → chunk.ELOLGOFM.js} +1 -1
  250. package/dist/chunks/{chunk.M5X6QE4H.js → chunk.ERMNNF77.js} +1 -1
  251. package/dist/chunks/{chunk.5T4IWZR2.js → chunk.FBY2IM6R.js} +1 -1
  252. package/dist/chunks/{chunk.N2SYQR7M.js → chunk.FLI47BNN.js} +1 -1
  253. package/dist/chunks/{chunk.3WHBR6ML.js → chunk.FLRNIL37.js} +1 -1
  254. package/dist/chunks/chunk.FOZRSNGL.js +111 -0
  255. package/dist/chunks/{chunk.OAJEHJJO.js → chunk.FZFK3D6L.js} +1 -1
  256. package/dist/chunks/{chunk.CABJDFOO.js → chunk.GMHRN23H.js} +6 -6
  257. package/dist/chunks/{chunk.ZBTNV3E7.js → chunk.GSSDOCVR.js} +42 -14
  258. package/dist/chunks/{chunk.LQAWGV5K.js → chunk.GTO6NACR.js} +1 -1
  259. package/dist/chunks/{chunk.WRFA56CD.js → chunk.H26XMOUA.js} +1 -1
  260. package/dist/chunks/{chunk.3NOR7Y4Y.js → chunk.HKP752UH.js} +2 -1
  261. package/dist/chunks/{chunk.GBBK2LRH.js → chunk.HRZVG552.js} +2 -2
  262. package/dist/chunks/{chunk.PEWNJNAP.js → chunk.HYAC2WLH.js} +1 -1
  263. package/dist/chunks/{chunk.DT6Y5ZUB.js → chunk.IMZ2EJ3J.js} +2 -2
  264. package/dist/chunks/{chunk.RIMN7NRW.js → chunk.JATRBE3H.js} +7 -7
  265. package/dist/chunks/{chunk.XGZ4IJ57.js → chunk.JTPMSU67.js} +51 -33
  266. package/dist/chunks/{chunk.JUOYMIGK.js → chunk.KD27MP6C.js} +5 -2
  267. package/dist/chunks/{chunk.5NUD3TZO.js → chunk.KD5YM72X.js} +12 -4
  268. package/dist/chunks/{chunk.A6WS4GML.js → chunk.KPVDLRVV.js} +2 -2
  269. package/dist/chunks/{chunk.ZU3DGID3.js → chunk.KW762SFE.js} +3 -3
  270. package/dist/chunks/chunk.LH65ZIEN.js +412 -0
  271. package/dist/chunks/{chunk.7NJP4D2X.js → chunk.LLOSO7FC.js} +5 -5
  272. package/dist/chunks/{chunk.ZJEACN47.js → chunk.LT44CVRV.js} +1 -1
  273. package/dist/chunks/{chunk.6K3AZQXP.js → chunk.LYVWDO7O.js} +1 -1
  274. package/dist/chunks/{chunk.6JFNUOJL.js → chunk.M47KXEXM.js} +1 -1
  275. package/dist/chunks/{chunk.PGXKP7ME.js → chunk.PSWGNIVT.js} +18 -6
  276. package/dist/chunks/{chunk.FLRB45SF.js → chunk.PSYTLBRK.js} +12 -0
  277. package/dist/chunks/{chunk.2LWUWDHO.js → chunk.Q3SL7AWD.js} +3 -3
  278. package/dist/chunks/{chunk.AECIJYFZ.js → chunk.Q4BEX42U.js} +49 -33
  279. package/dist/chunks/{chunk.HPAWBSR5.js → chunk.Q7YCE4UA.js} +1 -1
  280. package/dist/chunks/{chunk.ABJLUGLR.js → chunk.QKUUHXNR.js} +65 -25
  281. package/dist/chunks/{chunk.T3CLPVPE.js → chunk.QUEYKUIS.js} +4 -4
  282. package/dist/chunks/{chunk.XJCHW2GZ.js → chunk.RG7MUNLM.js} +27 -17
  283. package/dist/chunks/{chunk.6NRREKDF.js → chunk.RK2WN36C.js} +1 -1
  284. package/dist/chunks/{chunk.ZZ67C4V2.js → chunk.RZRBWZ7K.js} +14 -5
  285. package/dist/chunks/{chunk.QZC7F7NX.js → chunk.SAKI57GG.js} +2 -2
  286. package/dist/chunks/{chunk.H7L4YNKB.js → chunk.SAQFLKP7.js} +40 -16
  287. package/dist/chunks/{chunk.UKH2D4DL.js → chunk.SGPAUD26.js} +32 -14
  288. package/dist/chunks/{chunk.7WQZIM7N.js → chunk.SGRSRDWP.js} +17 -9
  289. package/dist/chunks/{chunk.JFAQ5QOI.js → chunk.SP2SVH7K.js} +3 -3
  290. package/dist/chunks/{chunk.UNDVQ2N3.js → chunk.SXFVCR7O.js} +2 -2
  291. package/dist/chunks/{chunk.2O3KAV2X.js → chunk.T6OAGTAP.js} +2 -2
  292. package/dist/chunks/{chunk.BO3GUSFS.js → chunk.TCW77JY3.js} +1 -1
  293. package/dist/chunks/{chunk.IAJLX5AF.js → chunk.TPO64PVN.js} +11 -5
  294. package/dist/chunks/{chunk.ZQ56PQ6F.js → chunk.U4W57NV6.js} +6 -3
  295. package/dist/chunks/{chunk.DMSUKPJE.js → chunk.UESIZCBP.js} +1 -1
  296. package/dist/chunks/{chunk.LZOGVU7B.js → chunk.UQ7ZIOBO.js} +1 -1
  297. package/dist/chunks/{chunk.2K5QPKBA.js → chunk.V26NK6TM.js} +5 -4
  298. package/dist/chunks/{chunk.APWZSSG6.js → chunk.V2HQ7IVJ.js} +1 -1
  299. package/dist/chunks/{chunk.VHSA53PH.js → chunk.V3LWOWUB.js} +1 -1
  300. package/dist/chunks/{chunk.WDPZ4NSH.js → chunk.V4SDZV6L.js} +1 -1
  301. package/dist/chunks/{chunk.BHEY6E7D.js → chunk.VJMPU2K5.js} +24 -26
  302. package/dist/chunks/{chunk.HFTU6LUQ.js → chunk.VNGKMC5T.js} +1 -1
  303. package/dist/chunks/{chunk.WLP7MATK.js → chunk.VO73SGIU.js} +1 -1
  304. package/dist/chunks/{chunk.FQZVV2TO.js → chunk.VOKBXFKF.js} +8 -4
  305. package/dist/chunks/{chunk.2SQ6UBOQ.js → chunk.VPBDM3F2.js} +11 -4
  306. package/dist/chunks/{chunk.LZPAAWTZ.js → chunk.VPZ2H23V.js} +0 -20
  307. package/dist/chunks/{chunk.BSSSDSVK.js → chunk.VYX5ZSFI.js} +2 -2
  308. package/dist/chunks/{chunk.ACM36IFE.js → chunk.WAEFCPAX.js} +6 -6
  309. package/dist/chunks/{chunk.UHSLPBTG.js → chunk.WEPA3NJG.js} +1 -1
  310. package/dist/chunks/{chunk.JEWVIFAO.js → chunk.WJU4UHF5.js} +4 -1
  311. package/dist/chunks/{chunk.O3SPGNIU.js → chunk.WSQ2ZYD4.js} +9 -5
  312. package/dist/chunks/{chunk.4NZ25HB6.js → chunk.XAYOMJ4X.js} +27 -17
  313. package/dist/chunks/{chunk.SOF3BQCV.js → chunk.XMBQRPGX.js} +10 -6
  314. package/dist/chunks/{chunk.YC2VYNCD.js → chunk.XTVVSORU.js} +1 -1
  315. package/dist/chunks/{chunk.6RDA3XLH.js → chunk.YF2V46J3.js} +9 -10
  316. package/dist/chunks/{chunk.63ACYDSJ.js → chunk.YI6BUIUL.js} +3 -3
  317. package/dist/chunks/{chunk.FB4KLQQL.js → chunk.YYKAI7FO.js} +6 -12
  318. package/dist/chunks/{chunk.VKBTTWXW.js → chunk.ZFGRB56M.js} +94 -38
  319. package/dist/chunks/{chunk.MVDMKWDN.js → chunk.ZHPIA4F4.js} +3 -1
  320. package/dist/chunks/{chunk.HBYJN6RA.js → chunk.ZS3JNRJE.js} +2 -2
  321. package/dist/chunks/{chunk.ATUDHG2E.js → chunk.ZYGCOBUE.js} +1 -1
  322. package/dist/components/accordion/accordion.js +2 -2
  323. package/dist/components/accordion-group/accordion-group.js +4 -4
  324. package/dist/components/alert/alert.js +2 -2
  325. package/dist/components/breadcrumb/breadcrumb.js +2 -2
  326. package/dist/components/breadcrumb-item/breadcrumb-item.js +2 -2
  327. package/dist/components/button/button.js +3 -3
  328. package/dist/components/calendar/calendar.js +2 -2
  329. package/dist/components/card-nav-accordion/card-nav-accordion.js +2 -2
  330. package/dist/components/checkbox/checkbox.js +4 -3
  331. package/dist/components/checkbox/checkbox.styles.js +1 -1
  332. package/dist/components/checkbox-button/checkbox-button.js +4 -3
  333. package/dist/components/checkbox-card/checkbox-card.js +3 -2
  334. package/dist/components/checkbox-group/checkbox-group.js +1 -1
  335. package/dist/components/combobox/combobox.js +9 -9
  336. package/dist/components/combobox/combobox.styles.js +1 -1
  337. package/dist/components/copy-button/copy-button.js +3 -3
  338. package/dist/components/dialog/dialog.js +2 -2
  339. package/dist/components/drawer/drawer.js +2 -2
  340. package/dist/components/dropdown/dropdown.js +2 -2
  341. package/dist/components/error-message-panel/error-message-panel.js +2 -2
  342. package/dist/components/file-upload/file-upload.js +3 -3
  343. package/dist/components/filter-button/filter-button.js +2 -2
  344. package/dist/components/filter-counter/filter-counter.js +13 -13
  345. package/dist/components/filter-date/filter-date.js +8 -8
  346. package/dist/components/filter-range/filter-range.js +13 -13
  347. package/dist/components/filter-select/filter-select.js +16 -16
  348. package/dist/components/footer/footer.js +2 -2
  349. package/dist/components/format-bytes/format-bytes.js +2 -2
  350. package/dist/components/format-date/format-date.js +2 -2
  351. package/dist/components/format-number/format-number.js +2 -2
  352. package/dist/components/header/header.d.ts +1 -0
  353. package/dist/components/header/header.js +3 -2
  354. package/dist/components/header-external-link/header-external-link.js +2 -1
  355. package/dist/components/header-modern/header-modern.d.ts +1 -0
  356. package/dist/components/header-modern/header-modern.js +3 -2
  357. package/dist/components/header-search/header-search.js +6 -6
  358. package/dist/components/input/input.js +8 -8
  359. package/dist/components/input-amount/input-amount.js +2 -2
  360. package/dist/components/input-date/input-date.js +4 -4
  361. package/dist/components/input-mask/input-mask.js +2 -2
  362. package/dist/components/input-native/input-native.js +2 -2
  363. package/dist/components/input-phone/input-phone.js +9 -8
  364. package/dist/components/input-time/input-time.js +2 -2
  365. package/dist/components/menu-accordion/menu-accordion.js +3 -3
  366. package/dist/components/menu-item/menu-item.js +3 -3
  367. package/dist/components/menu-navigation/menu-navigation.js +4 -4
  368. package/dist/components/navbar-link/navbar-link.js +4 -4
  369. package/dist/components/navbar-menu/navbar-menu.js +2 -2
  370. package/dist/components/option/option.d.ts +2 -0
  371. package/dist/components/option/option.js +4 -3
  372. package/dist/components/option/option.styles.js +1 -1
  373. package/dist/components/pagination/pagination.js +9 -9
  374. package/dist/components/profile-button/profile-button.js +3 -3
  375. package/dist/components/progress-bar/progress-bar.js +2 -2
  376. package/dist/components/radio/radio.js +3 -2
  377. package/dist/components/radio/radio.styles.js +1 -1
  378. package/dist/components/radio-button/radio-button.js +4 -3
  379. package/dist/components/radio-card/radio-card.js +4 -3
  380. package/dist/components/radio-group/radio-group.js +2 -1
  381. package/dist/components/relative-time/relative-time.js +2 -2
  382. package/dist/components/search/search.js +3 -3
  383. package/dist/components/search/search.styles.js +1 -1
  384. package/dist/components/select/select.d.ts +3 -1
  385. package/dist/components/select/select.js +5 -5
  386. package/dist/components/select/select.styles.js +1 -1
  387. package/dist/components/sidenav/sidenav.d.ts +4 -1
  388. package/dist/components/sidenav/sidenav.js +4 -4
  389. package/dist/components/sidenav-info-accordion/sidenav-info-accordion.js +4 -4
  390. package/dist/components/skip-link-item/skip-link-item.js +2 -1
  391. package/dist/components/skip-links/skip-links.js +2 -2
  392. package/dist/components/spinner/spinner.js +2 -2
  393. package/dist/components/split-panel/split-panel.js +2 -2
  394. package/dist/components/step/step.js +4 -3
  395. package/dist/components/step/step.styles.js +1 -1
  396. package/dist/components/stepper/stepper.d.ts +4 -1
  397. package/dist/components/stepper/stepper.js +1 -1
  398. package/dist/components/switch/switch.js +3 -3
  399. package/dist/components/switch/switch.styles.js +1 -1
  400. package/dist/components/tab/tab.d.ts +3 -0
  401. package/dist/components/tab/tab.js +4 -3
  402. package/dist/components/tab/tab.styles.js +1 -1
  403. package/dist/components/tab-group/tab-group.d.ts +1 -0
  404. package/dist/components/tab-group/tab-group.js +4 -3
  405. package/dist/components/tab-group/tab-group.styles.js +1 -1
  406. package/dist/components/tab-panel/tab-panel.js +2 -1
  407. package/dist/components/table/table.d.ts +29 -0
  408. package/dist/components/table/table.js +2 -1
  409. package/dist/components/table-action/table-action.js +4 -4
  410. package/dist/components/table-body/table-body.js +3 -2
  411. package/dist/components/table-caption/table-caption.js +2 -2
  412. package/dist/components/table-container/table-container.js +3 -2
  413. package/dist/components/table-head/table-head.js +3 -2
  414. package/dist/components/table-header-row/table-header-row.d.ts +1 -0
  415. package/dist/components/table-header-row/table-header-row.js +10 -9
  416. package/dist/components/table-header-row/table-header-row.styles.js +2 -2
  417. package/dist/components/table-of-contents/table-of-contents.js +2 -2
  418. package/dist/components/table-row/table-row-base.styles.js +1 -1
  419. package/dist/components/table-row/table-row.d.ts +20 -0
  420. package/dist/components/table-row/table-row.js +8 -7
  421. package/dist/components/table-row/table-row.styles.js +2 -2
  422. package/dist/components/tag/tag.js +3 -3
  423. package/dist/components/tooltip/tooltip.js +2 -2
  424. package/dist/components/tree/tree.d.ts +4 -0
  425. package/dist/components/tree/tree.js +8 -7
  426. package/dist/components/tree-item/tree-item.js +7 -6
  427. package/dist/custom-elements.json +936 -43
  428. package/dist/design-system.js +98 -98
  429. package/dist/events/dsa-table-row-reordered.d.ts +14 -0
  430. package/dist/events/dsa-table-row-reordered.js +1 -0
  431. package/dist/events/events.d.ts +1 -0
  432. package/dist/internal/components/form-selectable-card/form-selectable-card.js +3 -2
  433. package/dist/internal/components/form-selectable-card/form-selectable-card.styles.js +4 -4
  434. package/dist/internal/components/form-toggle-button/form-toggle-button.js +3 -2
  435. package/dist/internal/components/form-toggle-button/form-toggle-button.styles.js +2 -2
  436. package/dist/translations/en-gb.js +1 -1
  437. package/dist/translations/en.js +1 -1
  438. package/dist/translations/fr.js +1 -1
  439. package/dist/utilities/helpers.d.ts +2 -0
  440. package/dist/utilities/helpers.js +7 -3
  441. package/dist/utilities/localize.d.ts +2 -0
  442. package/dist/utilities/localize.js +1 -1
  443. package/dist/utilities/storybook.js +2 -2
  444. package/dist/vscode.html-custom-data.json +42 -2
  445. package/dist/web-types.json +452 -4
  446. package/package.json +1 -1
  447. package/cdn/chunks/chunk.2PN56GC6.js +0 -1
  448. package/cdn/chunks/chunk.4RIUPE2O.js +0 -1
  449. package/cdn/chunks/chunk.63QVJAPP.js +0 -11
  450. package/cdn/chunks/chunk.67MZYN3N.js +0 -37
  451. package/cdn/chunks/chunk.6AGU5DOT.js +0 -1
  452. package/cdn/chunks/chunk.6GAHBGOF.js +0 -47
  453. package/cdn/chunks/chunk.A6JUKRCA.js +0 -38
  454. package/cdn/chunks/chunk.AEBG7WOW.js +0 -20
  455. package/cdn/chunks/chunk.AKVKEBPE.js +0 -13
  456. package/cdn/chunks/chunk.DYSLQ6GC.js +0 -68
  457. package/cdn/chunks/chunk.E6XLVREY.js +0 -11
  458. package/cdn/chunks/chunk.EHLI2NSG.js +0 -26
  459. package/cdn/chunks/chunk.FGDBYD7N.js +0 -41
  460. package/cdn/chunks/chunk.IJNUBDIJ.js +0 -1
  461. package/cdn/chunks/chunk.IYKXS5B3.js +0 -66
  462. package/cdn/chunks/chunk.JNOQLPCE.js +0 -8
  463. package/cdn/chunks/chunk.K6YUVAOE.js +0 -6
  464. package/cdn/chunks/chunk.N4VN25E6.js +0 -44
  465. package/cdn/chunks/chunk.PFU2C3OZ.js +0 -1
  466. package/cdn/chunks/chunk.QO3O2UNB.js +0 -68
  467. package/cdn/chunks/chunk.QVF2D4NC.js +0 -1
  468. package/cdn/chunks/chunk.SIT3GCR7.js +0 -173
  469. package/cdn/chunks/chunk.TFJB3OT3.js +0 -19
  470. package/cdn/chunks/chunk.UEYALIC7.js +0 -25
  471. package/cdn/chunks/chunk.W7AY6BP2.js +0 -130
  472. package/cdn/chunks/chunk.W7S553SV.js +0 -50
  473. package/cdn/chunks/chunk.WJLFKSRJ.js +0 -51
  474. package/cdn/chunks/chunk.X2G2BFIN.js +0 -1
  475. package/cdn/chunks/chunk.X4U7WI77.js +0 -28
  476. package/cdn/chunks/chunk.YUUDCDMZ.js +0 -1
  477. package/dist/chunks/chunk.DMQJ4GLL.js +0 -209
  478. package/dist/chunks/chunk.DYZHSPWO.js +0 -48
  479. package/dist/chunks/chunk.RFJJRWWT.js +0 -282
@@ -1,12 +1,12 @@
1
1
  import {
2
2
  select_styles_default
3
- } from "./chunk.ACM36IFE.js";
3
+ } from "./chunk.WAEFCPAX.js";
4
4
  import {
5
5
  scrollIntoView
6
6
  } from "./chunk.EMIT7S33.js";
7
7
  import {
8
8
  DSATag
9
- } from "./chunk.A6WS4GML.js";
9
+ } from "./chunk.KPVDLRVV.js";
10
10
  import {
11
11
  FormControlLayout
12
12
  } from "./chunk.RVUUZ3KA.js";
@@ -35,7 +35,7 @@ import {
35
35
  } from "./chunk.ZQJVCRB2.js";
36
36
  import {
37
37
  LocalizeController
38
- } from "./chunk.WHHYA5VY.js";
38
+ } from "./chunk.34HS7ICN.js";
39
39
  import {
40
40
  DSAIcon
41
41
  } from "./chunk.CKJJ4MSU.js";
@@ -60,6 +60,7 @@ var DSASelect = class extends FormControlLayout {
60
60
  assumeInteractionOn: ["dsa-blur", "dsa-input"]
61
61
  });
62
62
  this.localize = new LocalizeController(this);
63
+ this.allOptions = [];
63
64
  this.typeToSelectString = "";
64
65
  this.hasFocus = false;
65
66
  this.displayLabel = "";
@@ -90,6 +91,9 @@ var DSASelect = class extends FormControlLayout {
90
91
  this.handleDocumentMouseDown = this.handleDocumentMouseDown.bind(this);
91
92
  this.open = false;
92
93
  }
94
+ firstUpdated() {
95
+ this.handleDefaultSlotChange();
96
+ }
93
97
  addOpenListeners() {
94
98
  document.addEventListener("focusin", this.handleDocumentFocusIn);
95
99
  document.addEventListener("mousedown", this.handleDocumentMouseDown);
@@ -153,8 +157,7 @@ var DSASelect = class extends FormControlLayout {
153
157
  return;
154
158
  }
155
159
  if (["ArrowUp", "ArrowDown", "Home", "End"].includes(event.key)) {
156
- const allOptions = this.getAllOptions();
157
- const currentIndex = this.currentOption ? allOptions.indexOf(this.currentOption) : -1;
160
+ const currentIndex = this.currentOption ? this.allOptions.indexOf(this.currentOption) : -1;
158
161
  let newIndex = Math.max(0, currentIndex);
159
162
  event.preventDefault();
160
163
  if (!this.open) {
@@ -163,19 +166,18 @@ var DSASelect = class extends FormControlLayout {
163
166
  return;
164
167
  }
165
168
  }
166
- if (event.key === "ArrowDown" && currentIndex < allOptions.length - 1) {
169
+ if (event.key === "ArrowDown" && currentIndex < this.allOptions.length - 1) {
167
170
  newIndex = currentIndex + 1;
168
171
  } else if (event.key === "ArrowUp" && currentIndex > 0) {
169
172
  newIndex = currentIndex - 1;
170
173
  } else if (event.key === "Home") {
171
174
  newIndex = 0;
172
175
  } else if (event.key === "End") {
173
- newIndex = allOptions.length - 1;
176
+ newIndex = this.allOptions.length - 1;
174
177
  }
175
- this.setCurrentOption(allOptions[newIndex]);
178
+ this.setCurrentOption(this.allOptions[newIndex]);
176
179
  }
177
180
  if (event.key.length === 1 || event.key === "Backspace") {
178
- const allOptions = this.getAllOptions();
179
181
  if (event.metaKey || event.ctrlKey || event.altKey) {
180
182
  return;
181
183
  }
@@ -197,7 +199,7 @@ var DSASelect = class extends FormControlLayout {
197
199
  } else {
198
200
  this.typeToSelectString += event.key.toLowerCase();
199
201
  }
200
- for (const option of allOptions) {
202
+ for (const option of this.allOptions) {
201
203
  const label = option.getTextLabel().toLowerCase();
202
204
  if (label.startsWith(this.typeToSelectString)) {
203
205
  this.setCurrentOption(option);
@@ -266,16 +268,18 @@ var DSASelect = class extends FormControlLayout {
266
268
  }
267
269
  }
268
270
  handleDefaultSlotChange() {
269
- const allOptions = this.getAllOptions();
271
+ this.refreshOptionsCache();
270
272
  const value = Array.isArray(this.value) ? this.value : [this.value];
271
- const values = [];
272
273
  if (customElements.get("dsa-option")) {
273
- allOptions.forEach((option) => {
274
- option.multiple = this.multiple;
275
- values.push(option.value);
274
+ this.allOptions.forEach((option) => {
275
+ if (option.multiple !== this.multiple) {
276
+ option.multiple = this.multiple;
277
+ }
276
278
  });
277
279
  this.setSelectedOptions(
278
- allOptions.filter((el) => el.value !== "" && value.includes(el.value))
280
+ this.allOptions.filter(
281
+ (el) => el.value !== "" && value.includes(el.value)
282
+ )
279
283
  );
280
284
  } else {
281
285
  customElements.whenDefined("dsa-option").then(() => this.handleDefaultSlotChange());
@@ -302,21 +306,29 @@ var DSASelect = class extends FormControlLayout {
302
306
  }
303
307
  }
304
308
  // Gets an array of all <dsa-option> elements
305
- getAllOptions() {
306
- return [...this.querySelectorAll("dsa-option")];
309
+ refreshOptionsCache() {
310
+ this.allOptions = [...this.querySelectorAll("dsa-option")];
307
311
  }
308
312
  // Sets the current option, which is the option the user is currently interacting with (e.g. via keyboard). Only one
309
313
  // option may be "current" at a time.
310
314
  setCurrentOption(option) {
311
- const allOptions = this.getAllOptions();
312
- allOptions.forEach((el) => {
313
- el.current = false;
314
- el.tabIndex = -1;
315
- });
315
+ const previousOption = this.currentOption;
316
+ if (previousOption && previousOption !== option) {
317
+ if (previousOption.current) {
318
+ previousOption.current = false;
319
+ }
320
+ if (previousOption.tabIndex !== -1) {
321
+ previousOption.tabIndex = -1;
322
+ }
323
+ }
316
324
  if (option) {
317
325
  this.currentOption = option;
318
- option.current = true;
319
- option.tabIndex = 0;
326
+ if (!option.current) {
327
+ option.current = true;
328
+ }
329
+ if (option.tabIndex !== 0) {
330
+ option.tabIndex = 0;
331
+ }
320
332
  option.focus();
321
333
  } else {
322
334
  this.currentOption = void 0;
@@ -324,12 +336,14 @@ var DSASelect = class extends FormControlLayout {
324
336
  }
325
337
  // Sets the selected option(s)
326
338
  setSelectedOptions(option) {
327
- const allOptions = this.getAllOptions();
328
339
  const newSelectedOptions = Array.isArray(option) ? option : [option];
329
- allOptions.forEach((el) => el.selected = false);
330
- if (newSelectedOptions.length) {
331
- newSelectedOptions.forEach((el) => el.selected = true);
332
- }
340
+ const selectedOptionsSet = new Set(newSelectedOptions);
341
+ this.allOptions.forEach((el) => {
342
+ const shouldBeSelected = selectedOptionsSet.has(el);
343
+ if (el.selected !== shouldBeSelected) {
344
+ el.selected = shouldBeSelected;
345
+ }
346
+ });
333
347
  this.selectionChanged();
334
348
  }
335
349
  // Toggles an option's selected state
@@ -345,7 +359,7 @@ var DSASelect = class extends FormControlLayout {
345
359
  // value, and the display value
346
360
  selectionChanged() {
347
361
  var _a, _b, _c, _d;
348
- this.selectedOptions = this.getAllOptions().filter((el) => el.selected);
362
+ this.selectedOptions = this.allOptions.filter((el) => el.selected);
349
363
  if (this.multiple) {
350
364
  this.value = this.selectedOptions.map((el) => el.value);
351
365
  this.displayLabel = "";
@@ -374,10 +388,12 @@ var DSASelect = class extends FormControlLayout {
374
388
  }
375
389
  }
376
390
  handleValueChange() {
377
- const allOptions = this.getAllOptions();
391
+ this.refreshOptionsCache();
378
392
  const value = Array.isArray(this.value) ? this.value : [this.value];
379
393
  this.setSelectedOptions(
380
- allOptions.filter((el) => el.value !== "" && value.includes(el.value))
394
+ this.allOptions.filter(
395
+ (el) => el.value !== "" && value.includes(el.value)
396
+ )
381
397
  );
382
398
  }
383
399
  async handleOpenChange() {
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  LocalizeController
3
- } from "./chunk.WHHYA5VY.js";
3
+ } from "./chunk.34HS7ICN.js";
4
4
  import {
5
5
  ShoelaceElement
6
6
  } from "./chunk.SVWU6JW4.js";
@@ -4,6 +4,10 @@ import {
4
4
  import {
5
5
  wrapIndex
6
6
  } from "./chunk.HV63L5BF.js";
7
+ import {
8
+ removeAttributeIfPresent,
9
+ setAttributeIfDifferent
10
+ } from "./chunk.PSYTLBRK.js";
7
11
  import {
8
12
  DSAVisuallyHidden
9
13
  } from "./chunk.JIN6PGAK.js";
@@ -142,10 +146,14 @@ var DSARadioGroup = class extends ShoelaceElement {
142
146
  if (this.disabled || this.readonly) {
143
147
  return;
144
148
  }
145
- const focusableRadios = this.getAllRadios().filter(
149
+ const allRadios = this.getAllRadios();
150
+ const focusableRadios = allRadios.filter(
146
151
  (radio) => !this.disabled && !radio.disabled && (!radio.readonly || radio.checked)
147
152
  );
148
153
  const focusableRadiosLength = focusableRadios.length;
154
+ if (focusableRadiosLength === 0) {
155
+ return;
156
+ }
149
157
  const focusedRadioIndex = focusableRadios.findIndex(
150
158
  (t) => t.matches(":focus")
151
159
  );
@@ -153,12 +161,19 @@ var DSARadioGroup = class extends ShoelaceElement {
153
161
  const oldValue = this.value;
154
162
  let index = focusedRadioIndex + incr;
155
163
  index = wrapIndex(index, focusableRadiosLength);
156
- this.getAllRadios().forEach((radio) => {
157
- radio.checked = false;
164
+ allRadios.forEach((radio) => {
165
+ if (radio.checked) {
166
+ radio.checked = false;
167
+ }
158
168
  if (this.hasRadioButtons || this.hasRadioCards) {
159
- radio.button.tabIndex = -1;
169
+ const button = radio.button;
170
+ if (button.tabIndex !== -1) {
171
+ button.tabIndex = -1;
172
+ }
160
173
  } else {
161
- radio.tabIndex = -1;
174
+ if (radio.tabIndex !== -1) {
175
+ radio.tabIndex = -1;
176
+ }
162
177
  }
163
178
  });
164
179
  if (incr === 0) {
@@ -188,20 +203,25 @@ var DSARadioGroup = class extends ShoelaceElement {
188
203
  handleSlotChange() {
189
204
  if (customElements.get("dsa-radio") || customElements.get("dsa-radio-button") || customElements.get("dsa-radio-card")) {
190
205
  const radios = this.getAllRadios();
191
- let hasAtLeastOneCheckedRadio = false;
206
+ this.readonlyRadioButtonValue.clear();
192
207
  radios.forEach((radio) => {
193
- radio.error = this.error;
208
+ if (radio.error !== this.error) {
209
+ radio.error = this.error;
210
+ }
194
211
  if (this.required) {
195
- radio.setAttribute("aria-required", "true");
212
+ setAttributeIfDifferent(radio, "aria-required", "true");
196
213
  } else {
197
- radio.removeAttribute("aria-required");
214
+ removeAttributeIfPresent(radio, "aria-required");
198
215
  }
199
216
  if ((this.hasRadioButtons || this.hasRadioCards) && radio.readonly) {
200
217
  this.readonlyRadioButtonValue.set(radio.value, true);
201
218
  }
202
- hasAtLeastOneCheckedRadio = radio.checked || hasAtLeastOneCheckedRadio;
203
- radio.parentDisabled = this.disabled;
204
- radio.parentReadonly = this.readonly;
219
+ if (radio.parentDisabled !== this.disabled) {
220
+ radio.parentDisabled = this.disabled;
221
+ }
222
+ if (radio.parentReadonly !== this.readonly) {
223
+ radio.parentReadonly = this.readonly;
224
+ }
205
225
  });
206
226
  this.updateCheckedRadio();
207
227
  } else {
@@ -221,15 +241,21 @@ var DSARadioGroup = class extends ShoelaceElement {
221
241
  const radios = this.getAllRadios();
222
242
  radios.forEach((radio) => {
223
243
  var _a;
224
- radio.checked = radio.value === this.value;
244
+ const shouldBeChecked = radio.value === this.value;
245
+ if (radio.checked !== shouldBeChecked) {
246
+ radio.checked = shouldBeChecked;
247
+ }
225
248
  if (!this.value && this.required) {
226
- radio.setAttribute("aria-invalid", "true");
249
+ setAttributeIfDifferent(radio, "aria-invalid", "true");
227
250
  } else {
228
- radio.removeAttribute("aria-invalid");
251
+ removeAttributeIfPresent(radio, "aria-invalid");
229
252
  }
230
253
  if (this.hasRadioButtons || this.hasRadioCards) {
231
254
  const radioButton = radio;
232
- radioButton.readonly = (_a = this.readonlyRadioButtonValue.get(this.value)) != null ? _a : radioButton.readonly;
255
+ const nextReadonly = (_a = this.readonlyRadioButtonValue.get(this.value)) != null ? _a : radioButton.readonly;
256
+ if (radioButton.readonly !== nextReadonly) {
257
+ radioButton.readonly = nextReadonly;
258
+ }
233
259
  }
234
260
  });
235
261
  this.updateTabIndexes();
@@ -258,10 +284,16 @@ var DSARadioGroup = class extends ShoelaceElement {
258
284
  customElements.whenDefined(
259
285
  this.hasRadioButtons ? "dsa-radio-button" : "dsa-radio-card"
260
286
  ).then(() => {
261
- radioButton.button.tabIndex = shouldFocus ? 0 : -1;
287
+ const tabIndexValue = shouldFocus ? 0 : -1;
288
+ if (radioButton.button.tabIndex !== tabIndexValue) {
289
+ radioButton.button.tabIndex = tabIndexValue;
290
+ }
262
291
  });
263
292
  } else {
264
- radio.tabIndex = shouldFocus ? 0 : -1;
293
+ const tabIndexValue = shouldFocus ? 0 : -1;
294
+ if (radio.tabIndex !== tabIndexValue) {
295
+ radio.tabIndex = tabIndexValue;
296
+ }
265
297
  }
266
298
  });
267
299
  }
@@ -271,17 +303,25 @@ var DSARadioGroup = class extends ShoelaceElement {
271
303
  }
272
304
  }
273
305
  handleErrorChange() {
274
- this.getAllRadios().forEach((radio) => radio.error = this.error);
306
+ this.getAllRadios().forEach((radio) => {
307
+ if (radio.error !== this.error) {
308
+ radio.error = this.error;
309
+ }
310
+ });
275
311
  }
276
312
  handleDisabledChange() {
277
- this.getAllRadios().forEach(
278
- (radio) => radio.parentDisabled = this.disabled
279
- );
313
+ this.getAllRadios().forEach((radio) => {
314
+ if (radio.parentDisabled !== this.disabled) {
315
+ radio.parentDisabled = this.disabled;
316
+ }
317
+ });
280
318
  }
281
319
  handleReadonlyChange() {
282
- this.getAllRadios().forEach(
283
- (radio) => radio.parentReadonly = this.readonly
284
- );
320
+ this.getAllRadios().forEach((radio) => {
321
+ if (radio.parentReadonly !== this.readonly) {
322
+ radio.parentReadonly = this.readonly;
323
+ }
324
+ });
285
325
  this.updateTabIndexes();
286
326
  }
287
327
  /** Checks for validity but does not show a validation message. Returns `true` when valid and `false` when invalid. */
@@ -1,15 +1,15 @@
1
1
  import {
2
2
  DSAInputTime
3
- } from "./chunk.6JFNUOJL.js";
3
+ } from "./chunk.M47KXEXM.js";
4
4
  import {
5
5
  DSAInputNative
6
- } from "./chunk.WDPZ4NSH.js";
6
+ } from "./chunk.V4SDZV6L.js";
7
7
  import {
8
8
  DSAInputDate
9
- } from "./chunk.63ACYDSJ.js";
9
+ } from "./chunk.YI6BUIUL.js";
10
10
  import {
11
11
  DSAInputAmount
12
- } from "./chunk.BO3GUSFS.js";
12
+ } from "./chunk.TCW77JY3.js";
13
13
  import {
14
14
  InputBase
15
15
  } from "./chunk.WMFEJDPX.js";
@@ -5,12 +5,16 @@ import {
5
5
  import {
6
6
  header_styles_default
7
7
  } from "./chunk.QAYPY3FQ.js";
8
+ import {
9
+ removeAttributeIfPresent,
10
+ setAttributeIfDifferent
11
+ } from "./chunk.PSYTLBRK.js";
8
12
  import {
9
13
  HasSlotController
10
14
  } from "./chunk.YIY5RM53.js";
11
15
  import {
12
16
  LocalizeController
13
- } from "./chunk.WHHYA5VY.js";
17
+ } from "./chunk.34HS7ICN.js";
14
18
  import {
15
19
  watch
16
20
  } from "./chunk.QB2NJE2Y.js";
@@ -67,26 +71,32 @@ var DSAHeader = class extends ShoelaceElement {
67
71
  }
68
72
  return cnsaLogoSvg(this.localize.term("cnsaGoToHomepage"));
69
73
  }
74
+ getHeaderSearch() {
75
+ if (!this.hasSlotController.test("search")) {
76
+ return null;
77
+ }
78
+ return this.querySelector("dsa-header-search");
79
+ }
70
80
  handleSearchExpanded() {
71
- if (this.hasSlotController.test("search")) {
72
- const search = this.querySelector("dsa-header-search");
73
- if (!search) return;
74
- if (this.searchExpanded) {
75
- search.setAttribute("expanded", "true");
76
- } else {
77
- search.removeAttribute("expanded");
78
- }
81
+ const search = this.getHeaderSearch();
82
+ if (!search) {
83
+ return;
84
+ }
85
+ if (this.searchExpanded) {
86
+ setAttributeIfDifferent(search, "expanded", "true");
87
+ } else {
88
+ removeAttributeIfPresent(search, "expanded");
79
89
  }
80
90
  }
81
91
  handleMobile() {
82
- if (this.hasSlotController.test("search")) {
83
- const search = this.querySelector("dsa-header-search");
84
- if (!search) return;
85
- if (this.mobile) {
86
- search.setAttribute("mobile", "true");
87
- } else {
88
- search.removeAttribute("mobile");
89
- }
92
+ const search = this.getHeaderSearch();
93
+ if (!search) {
94
+ return;
95
+ }
96
+ if (this.mobile) {
97
+ setAttributeIfDifferent(search, "mobile", "true");
98
+ } else {
99
+ removeAttributeIfPresent(search, "mobile");
90
100
  }
91
101
  }
92
102
  render() {
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  LocalizeController
3
- } from "./chunk.WHHYA5VY.js";
3
+ } from "./chunk.34HS7ICN.js";
4
4
  import {
5
5
  ShoelaceElement
6
6
  } from "./chunk.SVWU6JW4.js";
@@ -1,9 +1,13 @@
1
1
  import {
2
2
  radio_styles_default
3
- } from "./chunk.ANOLAL4B.js";
3
+ } from "./chunk.BUGXYS34.js";
4
4
  import {
5
5
  DSAInternalRadioIcon
6
6
  } from "./chunk.GUKOZGE3.js";
7
+ import {
8
+ removeAttributeIfPresent,
9
+ setAttributeIfDifferent
10
+ } from "./chunk.PSYTLBRK.js";
7
11
  import {
8
12
  watch
9
13
  } from "./chunk.QB2NJE2Y.js";
@@ -36,10 +40,11 @@ var DSARadio = class extends ShoelaceElement {
36
40
  this.handleClick = this.handleClick.bind(this);
37
41
  this.handleFocus = this.handleFocus.bind(this);
38
42
  this.addEventListeners();
39
- this.setAttribute("role", "radio");
43
+ setAttributeIfDifferent(this, "role", "radio");
40
44
  }
41
45
  disconnectedCallback() {
42
46
  this.removeEventListeners();
47
+ super.disconnectedCallback();
43
48
  }
44
49
  addEventListeners() {
45
50
  this.addEventListener("blur", this.handleBlur);
@@ -66,13 +71,17 @@ var DSARadio = class extends ShoelaceElement {
66
71
  this.emit("dsa-focus");
67
72
  }
68
73
  handleCheckedChange() {
69
- this.setAttribute("aria-checked", this.checked ? "true" : "false");
74
+ setAttributeIfDifferent(
75
+ this,
76
+ "aria-checked",
77
+ this.checked ? "true" : "false"
78
+ );
70
79
  }
71
80
  handleDeactivatedChange() {
72
81
  if (this.disabled || this.readonly || this.parentDisabled || this.parentReadonly) {
73
- this.setAttribute("aria-disabled", "true");
82
+ setAttributeIfDifferent(this, "aria-disabled", "true");
74
83
  } else {
75
- this.removeAttribute("aria-disabled");
84
+ removeAttributeIfPresent(this, "aria-disabled");
76
85
  }
77
86
  }
78
87
  render() {
@@ -21,7 +21,7 @@ import {
21
21
  } from "./chunk.DJLJEQST.js";
22
22
  import {
23
23
  DSAAlert
24
- } from "./chunk.M5X6QE4H.js";
24
+ } from "./chunk.ERMNNF77.js";
25
25
  import {
26
26
  a11yWarning
27
27
  } from "./chunk.PWL7QCVG.js";
@@ -30,7 +30,7 @@ import {
30
30
  } from "./chunk.ZQJVCRB2.js";
31
31
  import {
32
32
  LocalizeController
33
- } from "./chunk.WHHYA5VY.js";
33
+ } from "./chunk.34HS7ICN.js";
34
34
  import {
35
35
  DSAIcon
36
36
  } from "./chunk.CKJJ4MSU.js";
@@ -1,12 +1,16 @@
1
1
  import {
2
2
  option_styles_default
3
- } from "./chunk.7NJP4D2X.js";
3
+ } from "./chunk.LLOSO7FC.js";
4
+ import {
5
+ removeAttributeIfPresent,
6
+ setAttributeIfDifferent
7
+ } from "./chunk.PSYTLBRK.js";
4
8
  import {
5
9
  DSAVisuallyHidden
6
10
  } from "./chunk.JIN6PGAK.js";
7
11
  import {
8
12
  LocalizeController
9
- } from "./chunk.WHHYA5VY.js";
13
+ } from "./chunk.34HS7ICN.js";
10
14
  import {
11
15
  DSAIcon
12
16
  } from "./chunk.CKJJ4MSU.js";
@@ -39,14 +43,19 @@ var DSAOption = class extends ShoelaceElement {
39
43
  this.role = "option";
40
44
  this.multiple = false;
41
45
  }
46
+ syncSelectionAriaAttribute() {
47
+ const attributeName = this.role === "option" ? "aria-selected" : "aria-checked";
48
+ setAttributeIfDifferent(
49
+ this,
50
+ attributeName,
51
+ this.selected ? "true" : "false"
52
+ );
53
+ const oppositeAttributeName = attributeName === "aria-selected" ? "aria-checked" : "aria-selected";
54
+ removeAttributeIfPresent(this, oppositeAttributeName);
55
+ }
42
56
  connectedCallback() {
43
57
  super.connectedCallback();
44
- if (this.role === "option") {
45
- this.setAttribute("aria-selected", "false");
46
- } else {
47
- this.setAttribute("aria-checked", "false");
48
- this.removeAttribute("aria-selected");
49
- }
58
+ this.syncSelectionAriaAttribute();
50
59
  }
51
60
  handleDefaultSlotChange() {
52
61
  const textLabel = this.getTextLabel();
@@ -64,22 +73,34 @@ var DSAOption = class extends ShoelaceElement {
64
73
  }
65
74
  }
66
75
  handleMouseEnter() {
67
- this.hasHover = true;
76
+ if (!this.hasHover) {
77
+ this.hasHover = true;
78
+ }
68
79
  }
69
80
  handleMouseLeave() {
70
- this.hasHover = false;
81
+ if (this.hasHover) {
82
+ this.hasHover = false;
83
+ }
71
84
  }
72
85
  handleDisabledChange() {
73
- this.setAttribute("aria-disabled", this.disabled ? "true" : "false");
86
+ setAttributeIfDifferent(
87
+ this,
88
+ "aria-disabled",
89
+ this.disabled ? "true" : "false"
90
+ );
74
91
  }
75
92
  handleSelectedChange() {
76
- this.setAttribute(
77
- this.role === "option" ? "aria-selected" : "aria-checked",
78
- this.selected ? "true" : "false"
79
- );
93
+ this.syncSelectionAriaAttribute();
94
+ }
95
+ handleRoleChange() {
96
+ this.syncSelectionAriaAttribute();
80
97
  }
81
98
  handleErrorChange() {
82
- this.setAttribute("aria-invalid", this.error ? "true" : "false");
99
+ setAttributeIfDifferent(
100
+ this,
101
+ "aria-invalid",
102
+ this.error ? "true" : "false"
103
+ );
83
104
  }
84
105
  handleValueChange() {
85
106
  if (typeof this.value !== "string") {
@@ -202,6 +223,9 @@ __decorateClass([
202
223
  __decorateClass([
203
224
  watch("selected")
204
225
  ], DSAOption.prototype, "handleSelectedChange", 1);
226
+ __decorateClass([
227
+ watch("role")
228
+ ], DSAOption.prototype, "handleRoleChange", 1);
205
229
  __decorateClass([
206
230
  watch("error")
207
231
  ], DSAOption.prototype, "handleErrorChange", 1);