@dso-toolkit/core 76.0.0 → 78.0.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 (668) hide show
  1. package/dist/bundle/dso-accordion-section.js +9 -9
  2. package/dist/bundle/dso-accordion.js +23 -7
  3. package/dist/bundle/dso-accordion.js.map +1 -1
  4. package/dist/bundle/dso-action-list-item.js +3 -3
  5. package/dist/bundle/dso-action-list.js +2 -2
  6. package/dist/bundle/dso-advanced-select.js +6 -6
  7. package/dist/bundle/dso-alert.js +1 -1
  8. package/dist/bundle/dso-annotation-activiteit.js +11 -11
  9. package/dist/bundle/dso-annotation-activiteit.js.map +1 -1
  10. package/dist/bundle/dso-annotation-gebiedsaanwijzing.js +10 -10
  11. package/dist/bundle/dso-annotation-gebiedsaanwijzing.js.map +1 -1
  12. package/dist/bundle/dso-annotation-kaart.js +7 -7
  13. package/dist/bundle/dso-annotation-kaart.js.map +1 -1
  14. package/dist/bundle/dso-annotation-locatie.js +1 -1
  15. package/dist/bundle/dso-annotation-omgevingsnormwaarde.js +11 -11
  16. package/dist/bundle/dso-annotation-omgevingsnormwaarde.js.map +1 -1
  17. package/dist/bundle/dso-attachments-counter.js +1 -1
  18. package/dist/bundle/dso-autosuggest.js +5 -5
  19. package/dist/bundle/dso-badge.js +1 -1
  20. package/dist/bundle/dso-banner.js +2 -2
  21. package/dist/bundle/dso-button-group.d.ts +11 -0
  22. package/dist/bundle/dso-button-group.js +9 -0
  23. package/dist/bundle/dso-button-group.js.map +1 -0
  24. package/dist/bundle/dso-card-container.js +3 -3
  25. package/dist/bundle/dso-card.js +6 -6
  26. package/dist/bundle/dso-card.js.map +1 -1
  27. package/dist/bundle/dso-contact-information.js +3 -3
  28. package/dist/bundle/dso-date-picker-legacy.js +6 -6
  29. package/dist/bundle/dso-date-picker.js +3 -3
  30. package/dist/bundle/dso-document-card.js +4 -4
  31. package/dist/bundle/dso-document-component.js +1 -1
  32. package/dist/bundle/dso-dropdown-menu.js +1 -1
  33. package/dist/bundle/dso-expandable.js +1 -1
  34. package/dist/bundle/dso-header.js +6 -6
  35. package/dist/bundle/dso-header.js.map +1 -1
  36. package/dist/bundle/dso-highlight-box.js +3 -3
  37. package/dist/bundle/dso-icon.js +1 -1
  38. package/dist/bundle/dso-image-overlay.js +1 -1
  39. package/dist/bundle/dso-info-button.js +1 -1
  40. package/dist/bundle/dso-info.js +1 -1
  41. package/dist/bundle/dso-input-range.js +4 -4
  42. package/dist/bundle/dso-label.js +1 -1
  43. package/dist/bundle/dso-legend-item.js +8 -8
  44. package/dist/bundle/dso-list-button.js +7 -7
  45. package/dist/bundle/dso-logo.js +3 -3
  46. package/dist/bundle/dso-map-base-layers.js +7 -7
  47. package/dist/bundle/dso-map-controls.js +14 -8
  48. package/dist/bundle/dso-map-controls.js.map +1 -1
  49. package/dist/bundle/dso-map-overlays.js +7 -7
  50. package/dist/bundle/dso-mark-bar.js +4 -4
  51. package/dist/bundle/dso-modal.js +5 -5
  52. package/dist/bundle/dso-onboarding-tip.js +5 -1663
  53. package/dist/bundle/dso-onboarding-tip.js.map +1 -1
  54. package/dist/bundle/dso-ozon-content.js +1 -1
  55. package/dist/bundle/dso-pagination.js +5 -5
  56. package/dist/bundle/dso-pagination.js.map +1 -1
  57. package/dist/bundle/dso-panel.js +1 -1
  58. package/dist/bundle/dso-plekinfo-card.js +4 -4
  59. package/dist/bundle/dso-progress-bar.js +3 -3
  60. package/dist/bundle/dso-progress-indicator.js +1 -1
  61. package/dist/bundle/dso-project-item.js +6 -6
  62. package/dist/bundle/dso-renvooi.js +1 -1
  63. package/dist/bundle/dso-responsive-element.js +1 -1
  64. package/dist/bundle/dso-scrollable.js +1 -1
  65. package/dist/bundle/dso-selectable.js +1 -1
  66. package/dist/bundle/dso-skiplink.js +4 -4
  67. package/dist/bundle/dso-slide-toggle.js +1 -1
  68. package/dist/bundle/dso-survey-rating.js +7 -7
  69. package/dist/bundle/dso-tab.js +2 -2
  70. package/dist/bundle/dso-table.js +1 -1
  71. package/dist/bundle/dso-tabs.js +3 -3
  72. package/dist/bundle/dso-toggletip.js +1 -1
  73. package/dist/bundle/dso-tooltip.js +1 -1
  74. package/dist/bundle/dso-tree-view.js +5 -5
  75. package/dist/bundle/dso-viewer-grid.js +4 -5
  76. package/dist/bundle/dso-viewer-grid.js.map +1 -1
  77. package/dist/bundle/dsot-document-component-demo.js +17 -17
  78. package/dist/bundle/index.js +3 -1
  79. package/dist/bundle/index.js.map +1 -1
  80. package/dist/bundle/{p-Fr4DmH1l.js → p--iZjxqv3.js} +6 -6
  81. package/dist/bundle/{p-Fr4DmH1l.js.map → p--iZjxqv3.js.map} +1 -1
  82. package/dist/bundle/{p-Dxegur3q.js → p-B3BAWGAx.js} +4 -4
  83. package/dist/bundle/{p-Dxegur3q.js.map → p-B3BAWGAx.js.map} +1 -1
  84. package/dist/bundle/{p-DDDh2Izf.js → p-B9a249cd.js} +3 -3
  85. package/dist/bundle/{p-DDDh2Izf.js.map → p-B9a249cd.js.map} +1 -1
  86. package/dist/bundle/p-B9zUWbzS.js +58 -0
  87. package/dist/bundle/p-B9zUWbzS.js.map +1 -0
  88. package/dist/bundle/{p-BCHeTZOb.js → p-BLPc0VWK.js} +8 -8
  89. package/dist/bundle/{p-BCHeTZOb.js.map → p-BLPc0VWK.js.map} +1 -1
  90. package/dist/bundle/{p-BS-Y76bJ.js → p-BQF5fCSD.js} +5 -5
  91. package/dist/bundle/{p-BS-Y76bJ.js.map → p-BQF5fCSD.js.map} +1 -1
  92. package/dist/bundle/{p-C0s1JAlb.js → p-BZUv4Fwx.js} +8 -8
  93. package/dist/bundle/{p-C0s1JAlb.js.map → p-BZUv4Fwx.js.map} +1 -1
  94. package/dist/bundle/{p-DhhVHw2w.js → p-BnSdv9VD.js} +15 -15
  95. package/dist/bundle/{p-DhhVHw2w.js.map → p-BnSdv9VD.js.map} +1 -1
  96. package/dist/bundle/{p-Dp31hMfn.js → p-C2Ek2dWW.js} +50 -117
  97. package/dist/bundle/p-C2Ek2dWW.js.map +1 -0
  98. package/dist/bundle/p-CH8BjCNJ.js +80 -0
  99. package/dist/bundle/{p-CagCGFPb.js.map → p-CH8BjCNJ.js.map} +1 -1
  100. package/dist/bundle/{p-DkmiPgP0.js → p-COMP9T58.js} +4 -4
  101. package/dist/bundle/{p-DkmiPgP0.js.map → p-COMP9T58.js.map} +1 -1
  102. package/dist/bundle/{p-J2YfZwgD.js → p-CUZmPl-a.js} +9 -9
  103. package/dist/bundle/{p-J2YfZwgD.js.map → p-CUZmPl-a.js.map} +1 -1
  104. package/dist/bundle/{p-BI8W5IHk.js → p-CXEXoC_s.js} +6 -6
  105. package/dist/bundle/{p-BI8W5IHk.js.map → p-CXEXoC_s.js.map} +1 -1
  106. package/dist/bundle/{p-D1jpHeMq.js → p-CYNNmESE.js} +6 -6
  107. package/dist/bundle/{p-D1jpHeMq.js.map → p-CYNNmESE.js.map} +1 -1
  108. package/dist/bundle/{p-0OxrSmuX.js → p-C_-6M4mA.js} +4 -4
  109. package/dist/bundle/{p-0OxrSmuX.js.map → p-C_-6M4mA.js.map} +1 -1
  110. package/dist/bundle/{p-r4JnUhJ5.js → p-ChsWtZdt.js} +6 -6
  111. package/dist/bundle/{p-r4JnUhJ5.js.map → p-ChsWtZdt.js.map} +1 -1
  112. package/dist/bundle/{p-BJhPYrsL.js → p-CwKyBrf3.js} +6 -6
  113. package/dist/bundle/{p-BJhPYrsL.js.map → p-CwKyBrf3.js.map} +1 -1
  114. package/dist/bundle/{p-CdvSnpb_.js → p-D0gB2lgu.js} +5 -5
  115. package/dist/bundle/{p-CdvSnpb_.js.map → p-D0gB2lgu.js.map} +1 -1
  116. package/dist/bundle/{p-CgRdthz0.js → p-D3I3eS2K.js} +7 -7
  117. package/dist/bundle/{p-CgRdthz0.js.map → p-D3I3eS2K.js.map} +1 -1
  118. package/dist/bundle/{p-_DIUHRiS.js → p-D92MZVkr.js} +5 -5
  119. package/dist/bundle/{p-_DIUHRiS.js.map → p-D92MZVkr.js.map} +1 -1
  120. package/dist/{esm/has-overflow-CsY83cJO.js → bundle/p-DNULhBX2.js} +312 -3
  121. package/dist/bundle/p-DNULhBX2.js.map +1 -0
  122. package/dist/bundle/{p-L6frHRla.js → p-DcxEm1dI.js} +10 -10
  123. package/dist/bundle/{p-L6frHRla.js.map → p-DcxEm1dI.js.map} +1 -1
  124. package/dist/bundle/{p-BacS1uCc.js → p-DgQ6L0IZ.js} +3 -3
  125. package/dist/bundle/{p-BacS1uCc.js.map → p-DgQ6L0IZ.js.map} +1 -1
  126. package/dist/bundle/{p-DHO_Za64.js → p-Dm38fPV4.js} +168 -113
  127. package/dist/bundle/p-Dm38fPV4.js.map +1 -0
  128. package/dist/bundle/{p-C62PayXc.js → p-Dt1j98T1.js} +5 -5
  129. package/dist/bundle/{p-C62PayXc.js.map → p-Dt1j98T1.js.map} +1 -1
  130. package/dist/bundle/{p-DPH021KD.js → p-VjABABA3.js} +3 -3
  131. package/dist/bundle/{p-DPH021KD.js.map → p-VjABABA3.js.map} +1 -1
  132. package/dist/bundle/{p-DAtQydKx.js → p-WmD5BfeO.js} +6 -6
  133. package/dist/bundle/{p-DAtQydKx.js.map → p-WmD5BfeO.js.map} +1 -1
  134. package/dist/bundle/p-gdsca1fx.js +1663 -0
  135. package/dist/bundle/p-gdsca1fx.js.map +1 -0
  136. package/dist/bundle/{p-CIShecZA.js → p-lE-KxpG-.js} +5 -5
  137. package/dist/bundle/{p-CIShecZA.js.map → p-lE-KxpG-.js.map} +1 -1
  138. package/dist/cjs/{annotation-body-DiF6OSBJ.js → annotation-body-DaD_bwoW.js} +3 -3
  139. package/dist/cjs/{annotation-body-DiF6OSBJ.js.map → annotation-body-DaD_bwoW.js.map} +1 -1
  140. package/dist/cjs/{annotation-list-renvooi-values-BsuXHY9R.js → annotation-list-renvooi-values-DrBMzeSq.js} +3 -3
  141. package/dist/cjs/{annotation-list-renvooi-values-BsuXHY9R.js.map → annotation-list-renvooi-values-DrBMzeSq.js.map} +1 -1
  142. package/dist/cjs/{annotation-watcher-8xS6vsxu.js → annotation-watcher-CIkkSlrQ.js} +3 -3
  143. package/dist/cjs/{annotation-watcher-8xS6vsxu.js.map → annotation-watcher-CIkkSlrQ.js.map} +1 -1
  144. package/dist/cjs/app-globals-V2Kpy_OQ.js.map +1 -1
  145. package/dist/cjs/dso-accordion-section.cjs.entry.js +1 -1
  146. package/dist/cjs/dso-accordion.cjs.entry.js +22 -6
  147. package/dist/cjs/dso-accordion.cjs.entry.js.map +1 -1
  148. package/dist/cjs/dso-accordion.entry.cjs.js.map +1 -1
  149. package/dist/cjs/dso-action-list-item.cjs.entry.js +1 -1
  150. package/dist/cjs/dso-action-list.cjs.entry.js +1 -1
  151. package/dist/cjs/dso-advanced-select.cjs.entry.js +1 -1
  152. package/dist/cjs/dso-alert.dso-badge.dso-image-overlay.dso-ozon-content.dso-panel.dso-table.entry.cjs.js.map +1 -1
  153. package/dist/cjs/dso-alert_6.cjs.entry.js +7 -7
  154. package/dist/cjs/dso-alert_6.cjs.entry.js.map +1 -1
  155. package/dist/cjs/dso-annotation-activiteit.cjs.entry.js +5 -5
  156. package/dist/cjs/dso-annotation-activiteit.cjs.entry.js.map +1 -1
  157. package/dist/cjs/dso-annotation-activiteit.entry.cjs.js.map +1 -1
  158. package/dist/cjs/dso-annotation-gebiedsaanwijzing.cjs.entry.js +4 -4
  159. package/dist/cjs/dso-annotation-gebiedsaanwijzing.cjs.entry.js.map +1 -1
  160. package/dist/cjs/dso-annotation-gebiedsaanwijzing.entry.cjs.js.map +1 -1
  161. package/dist/cjs/dso-annotation-kaart.cjs.entry.js +3 -3
  162. package/dist/cjs/dso-annotation-kaart.cjs.entry.js.map +1 -1
  163. package/dist/cjs/dso-annotation-kaart.entry.cjs.js.map +1 -1
  164. package/dist/cjs/dso-annotation-locatie.dso-document-component.entry.cjs.js.map +1 -1
  165. package/dist/cjs/dso-annotation-locatie_2.cjs.entry.js +6 -6
  166. package/dist/cjs/dso-annotation-locatie_2.cjs.entry.js.map +1 -1
  167. package/dist/cjs/dso-annotation-omgevingsnormwaarde.cjs.entry.js +5 -5
  168. package/dist/cjs/dso-annotation-omgevingsnormwaarde.cjs.entry.js.map +1 -1
  169. package/dist/cjs/dso-annotation-omgevingsnormwaarde.entry.cjs.js.map +1 -1
  170. package/dist/cjs/dso-attachments-counter_2.cjs.entry.js +1 -1
  171. package/dist/cjs/dso-autosuggest.cjs.entry.js +1 -1
  172. package/dist/cjs/dso-banner.cjs.entry.js +1 -1
  173. package/dist/cjs/dso-button-group.cjs.entry.js +43 -0
  174. package/dist/cjs/dso-button-group.cjs.entry.js.map +1 -0
  175. package/dist/cjs/dso-button-group.entry.cjs.js.map +1 -0
  176. package/dist/cjs/dso-card-container.cjs.entry.js +2 -2
  177. package/dist/cjs/dso-card.cjs.entry.js +4 -4
  178. package/dist/cjs/dso-card.cjs.entry.js.map +1 -1
  179. package/dist/cjs/dso-card.entry.cjs.js.map +1 -1
  180. package/dist/cjs/dso-contact-information.cjs.entry.js +2 -2
  181. package/dist/cjs/dso-date-picker-legacy.cjs.entry.js +4 -4
  182. package/dist/cjs/dso-date-picker.cjs.entry.js +2 -2
  183. package/dist/cjs/dso-document-card.cjs.entry.js +2 -2
  184. package/dist/cjs/dso-dropdown-menu.cjs.entry.js +45 -104
  185. package/dist/cjs/dso-dropdown-menu.cjs.entry.js.map +1 -1
  186. package/dist/cjs/dso-dropdown-menu.entry.cjs.js.map +1 -1
  187. package/dist/cjs/dso-header.cjs.entry.js +3 -3
  188. package/dist/cjs/dso-header.cjs.entry.js.map +1 -1
  189. package/dist/cjs/dso-header.entry.cjs.js.map +1 -1
  190. package/dist/cjs/dso-highlight-box.cjs.entry.js +2 -2
  191. package/dist/cjs/dso-icon.cjs.entry.js +2 -2
  192. package/dist/cjs/dso-info-button.cjs.entry.js +2 -2
  193. package/dist/cjs/dso-info_2.cjs.entry.js +3 -3
  194. package/dist/cjs/dso-input-range.cjs.entry.js +3 -3
  195. package/dist/cjs/dso-label_3.cjs.entry.js +5 -5
  196. package/dist/cjs/dso-legend-item.cjs.entry.js +2 -2
  197. package/dist/cjs/dso-list-button.cjs.entry.js +2 -2
  198. package/dist/cjs/dso-logo.cjs.entry.js +2 -2
  199. package/dist/cjs/dso-map-base-layers.cjs.entry.js +2 -2
  200. package/dist/cjs/dso-map-controls.cjs.entry.js +4 -4
  201. package/dist/cjs/dso-map-controls.cjs.entry.js.map +1 -1
  202. package/dist/cjs/dso-map-controls.entry.cjs.js.map +1 -1
  203. package/dist/cjs/dso-map-overlays.cjs.entry.js +2 -2
  204. package/dist/cjs/dso-mark-bar.cjs.entry.js +2 -2
  205. package/dist/cjs/dso-modal.cjs.entry.js +2 -2
  206. package/dist/cjs/dso-onboarding-tip.cjs.entry.js +10 -1668
  207. package/dist/cjs/dso-onboarding-tip.cjs.entry.js.map +1 -1
  208. package/dist/cjs/dso-onboarding-tip.entry.cjs.js.map +1 -1
  209. package/dist/cjs/dso-pagination.cjs.entry.js +2 -2
  210. package/dist/cjs/dso-pagination.cjs.entry.js.map +1 -1
  211. package/dist/cjs/dso-pagination.entry.cjs.js.map +1 -1
  212. package/dist/cjs/dso-plekinfo-card.cjs.entry.js +2 -2
  213. package/dist/cjs/dso-progress-bar.cjs.entry.js +2 -2
  214. package/dist/cjs/dso-progress-indicator.cjs.entry.js +2 -2
  215. package/dist/cjs/dso-project-item.cjs.entry.js +2 -2
  216. package/dist/cjs/dso-responsive-element.cjs.entry.js +2 -2
  217. package/dist/cjs/dso-scrollable.cjs.entry.js +3 -3
  218. package/dist/cjs/dso-skiplink.cjs.entry.js +2 -2
  219. package/dist/cjs/dso-survey-rating.cjs.entry.js +4 -4
  220. package/dist/cjs/dso-tab.cjs.entry.js +1 -1
  221. package/dist/cjs/dso-tabs.cjs.entry.js +2 -2
  222. package/dist/cjs/dso-toggletip.cjs.entry.js +2 -2
  223. package/dist/cjs/dso-toolkit.cjs.js +3 -3
  224. package/dist/cjs/dso-toolkit.cjs.js.map +1 -1
  225. package/dist/cjs/dso-tooltip.cjs.entry.js +1803 -7
  226. package/dist/cjs/dso-tooltip.cjs.entry.js.map +1 -1
  227. package/dist/cjs/dso-tooltip.entry.cjs.js.map +1 -1
  228. package/dist/cjs/dso-tree-view.cjs.entry.js +2 -2
  229. package/dist/cjs/dso-viewer-grid.cjs.entry.js +3 -4
  230. package/dist/cjs/dso-viewer-grid.cjs.entry.js.map +1 -1
  231. package/dist/cjs/dso-viewer-grid.entry.cjs.js.map +1 -1
  232. package/dist/cjs/dsot-document-component-demo.cjs.entry.js +2 -2
  233. package/dist/cjs/floating-ui.dom-uZgU2YQo.js +1671 -0
  234. package/dist/cjs/floating-ui.dom-uZgU2YQo.js.map +1 -0
  235. package/dist/cjs/{index-Bfuot2fD.js → index-DvLsepiK.js} +177 -115
  236. package/dist/cjs/index-DvLsepiK.js.map +1 -0
  237. package/dist/cjs/loader.cjs.js +2 -2
  238. package/dist/collection/collection-manifest.json +2 -1
  239. package/dist/collection/components/alert/alert.css +6 -8
  240. package/dist/collection/components/annotation/annotation.css +3 -0
  241. package/dist/collection/components/button-group/button-group.css +76 -0
  242. package/dist/collection/components/button-group/button-group.interfaces.js +2 -0
  243. package/dist/collection/components/button-group/button-group.interfaces.js.map +1 -0
  244. package/dist/collection/components/button-group/button-group.js +74 -0
  245. package/dist/collection/components/button-group/button-group.js.map +1 -0
  246. package/dist/collection/components/card/card.css +3 -0
  247. package/dist/collection/components/card/card.js +2 -2
  248. package/dist/collection/components/card-container/card-container.js +1 -1
  249. package/dist/collection/components/contact-information/contact-information.js +1 -1
  250. package/dist/collection/components/date-picker/date-picker.js +1 -1
  251. package/dist/collection/components/date-picker-legacy/date-picker-legacy.js +3 -3
  252. package/dist/collection/components/document-card/document-card.js +1 -1
  253. package/dist/collection/components/document-component/document-component.css +226 -5
  254. package/dist/collection/components/document-component/document-component.js +1 -1
  255. package/dist/collection/components/document-component-demo/document-component.demo.js +1 -1
  256. package/dist/collection/components/dropdown-menu/dropdown-menu.css +8 -0
  257. package/dist/collection/components/dropdown-menu/dropdown-menu.js +43 -176
  258. package/dist/collection/components/dropdown-menu/dropdown-menu.js.map +1 -1
  259. package/dist/collection/components/header/header.js +2 -2
  260. package/dist/collection/components/header/header.js.map +1 -1
  261. package/dist/collection/components/highlight-box/highlight-box.js +1 -1
  262. package/dist/collection/components/icon/icon.js +1 -1
  263. package/dist/collection/components/image-overlay/image-overlay.css +8 -8
  264. package/dist/collection/components/info/info.js +1 -1
  265. package/dist/collection/components/info-button/info-button.js +1 -1
  266. package/dist/collection/components/input-range/input-range.js +2 -2
  267. package/dist/collection/components/label/label.js +3 -3
  268. package/dist/collection/components/legend-item/legend-item.js +1 -1
  269. package/dist/collection/components/list-button/list-button.js +1 -1
  270. package/dist/collection/components/logo/logo.js +1 -1
  271. package/dist/collection/components/map-base-layers/map-base-layers.js +1 -1
  272. package/dist/collection/components/map-controls/map-controls.css +725 -184
  273. package/dist/collection/components/map-controls/map-controls.js +3 -3
  274. package/dist/collection/components/map-controls/map-controls.js.map +1 -1
  275. package/dist/collection/components/map-overlays/map-overlays.js +1 -1
  276. package/dist/collection/components/mark-bar/mark-bar.js +1 -1
  277. package/dist/collection/components/modal/modal.js +1 -1
  278. package/dist/collection/components/onboarding-tip/onboarding-tip.js +1 -1
  279. package/dist/collection/components/ozon-content/ozon-content.css +226 -5
  280. package/dist/collection/components/ozon-content/ozon-content.js +1 -1
  281. package/dist/collection/components/pagination/pagination.css +1 -2
  282. package/dist/collection/components/plekinfo-card/plekinfo-card.js +1 -1
  283. package/dist/collection/components/progress-bar/progress-bar.js +1 -1
  284. package/dist/collection/components/progress-indicator/progress-indicator.js +1 -1
  285. package/dist/collection/components/project-item/project-item.js +1 -1
  286. package/dist/collection/components/responsive-element/responsive-element.js +1 -1
  287. package/dist/collection/components/scrollable/scrollable.js +2 -2
  288. package/dist/collection/components/selectable/selectable.js +1 -1
  289. package/dist/collection/components/skiplink/skiplink.js +1 -1
  290. package/dist/collection/components/slide-toggle/slide-toggle.js +1 -1
  291. package/dist/collection/components/survey-rating/survey-rating.css +4 -4
  292. package/dist/collection/components/survey-rating/survey-rating.js +2 -2
  293. package/dist/collection/components/table/table.css +223 -5
  294. package/dist/collection/components/table/table.js +1 -1
  295. package/dist/collection/components/tabs/tabs.js +1 -1
  296. package/dist/collection/components/toggletip/toggletip.js +1 -1
  297. package/dist/collection/components/tooltip/tooltip.js +1 -1
  298. package/dist/collection/components/tree-view/tree-view.js +1 -1
  299. package/dist/collection/components/viewer-grid/viewer-grid.css +4 -4
  300. package/dist/collection/components/viewer-grid/viewer-grid.interfaces.js.map +1 -1
  301. package/dist/collection/components/viewer-grid/viewer-grid.js +1 -22
  302. package/dist/collection/components/viewer-grid/viewer-grid.js.map +1 -1
  303. package/dist/components/alert.js +2 -2
  304. package/dist/components/alert.js.map +1 -1
  305. package/dist/components/annotation-locatie.js +2 -2
  306. package/dist/components/annotation-locatie.js.map +1 -1
  307. package/dist/components/attachments-counter.js +1 -1
  308. package/dist/components/badge.js +1 -1
  309. package/dist/components/button-group.js +58 -0
  310. package/dist/components/button-group.js.map +1 -0
  311. package/dist/components/document-component.js +3 -3
  312. package/dist/components/document-component.js.map +1 -1
  313. package/dist/components/dropdown-menu.js +47 -114
  314. package/dist/components/dropdown-menu.js.map +1 -1
  315. package/dist/components/dso-accordion-section.js +1 -1
  316. package/dist/components/dso-accordion.js +22 -6
  317. package/dist/components/dso-accordion.js.map +1 -1
  318. package/dist/components/dso-action-list-item.js +1 -1
  319. package/dist/components/dso-action-list.js +1 -1
  320. package/dist/components/dso-advanced-select.js +1 -1
  321. package/dist/components/dso-annotation-activiteit.js +2 -2
  322. package/dist/components/dso-annotation-activiteit.js.map +1 -1
  323. package/dist/components/dso-annotation-gebiedsaanwijzing.js +2 -2
  324. package/dist/components/dso-annotation-gebiedsaanwijzing.js.map +1 -1
  325. package/dist/components/dso-annotation-kaart.js +2 -2
  326. package/dist/components/dso-annotation-kaart.js.map +1 -1
  327. package/dist/components/dso-annotation-omgevingsnormwaarde.js +2 -2
  328. package/dist/components/dso-annotation-omgevingsnormwaarde.js.map +1 -1
  329. package/dist/components/dso-autosuggest.js +1 -1
  330. package/dist/components/dso-banner.js +1 -1
  331. package/dist/components/dso-button-group.d.ts +11 -0
  332. package/dist/components/dso-button-group.js +9 -0
  333. package/dist/components/dso-button-group.js.map +1 -0
  334. package/dist/components/dso-card-container.js +2 -2
  335. package/dist/components/dso-card.js +4 -4
  336. package/dist/components/dso-card.js.map +1 -1
  337. package/dist/components/dso-contact-information.js +2 -2
  338. package/dist/components/dso-date-picker-legacy.js +4 -4
  339. package/dist/components/dso-date-picker.js +2 -2
  340. package/dist/components/dso-document-card.js +2 -2
  341. package/dist/components/dso-header.js +3 -3
  342. package/dist/components/dso-header.js.map +1 -1
  343. package/dist/components/dso-highlight-box.js +2 -2
  344. package/dist/components/dso-input-range.js +3 -3
  345. package/dist/components/dso-legend-item.js +2 -2
  346. package/dist/components/dso-list-button.js +2 -2
  347. package/dist/components/dso-logo.js +2 -2
  348. package/dist/components/dso-map-base-layers.js +2 -2
  349. package/dist/components/dso-map-controls.js +11 -5
  350. package/dist/components/dso-map-controls.js.map +1 -1
  351. package/dist/components/dso-map-overlays.js +2 -2
  352. package/dist/components/dso-mark-bar.js +2 -2
  353. package/dist/components/dso-modal.js +2 -2
  354. package/dist/components/dso-onboarding-tip.js +6 -1664
  355. package/dist/components/dso-onboarding-tip.js.map +1 -1
  356. package/dist/components/dso-pagination.js +2 -2
  357. package/dist/components/dso-pagination.js.map +1 -1
  358. package/dist/components/dso-plekinfo-card.js +2 -2
  359. package/dist/components/dso-progress-bar.js +2 -2
  360. package/dist/components/dso-project-item.js +2 -2
  361. package/dist/components/dso-skiplink.js +2 -2
  362. package/dist/components/dso-survey-rating.js +4 -4
  363. package/dist/components/dso-tab.js +1 -1
  364. package/dist/components/dso-tabs.js +2 -2
  365. package/dist/components/dso-tree-view.js +2 -2
  366. package/dist/components/dso-viewer-grid.js +3 -4
  367. package/dist/components/dso-viewer-grid.js.map +1 -1
  368. package/dist/components/dsot-document-component-demo.js +2 -2
  369. package/dist/components/expandable.js +1 -1
  370. package/dist/components/floating-ui.dom.js +1663 -0
  371. package/dist/components/floating-ui.dom.js.map +1 -0
  372. package/dist/components/icon.js +2 -2
  373. package/dist/components/image-overlay.js +2 -2
  374. package/dist/components/index.d.ts +2 -0
  375. package/dist/components/index.js +1 -0
  376. package/dist/components/index.js.map +1 -1
  377. package/dist/components/info-button.js +2 -2
  378. package/dist/components/info.js +2 -2
  379. package/dist/components/label.js +4 -4
  380. package/dist/components/ozon-content.js +3 -3
  381. package/dist/components/ozon-content.js.map +1 -1
  382. package/dist/components/panel.js +1 -1
  383. package/dist/components/progress-indicator.js +2 -2
  384. package/dist/components/renvooi.js +1 -1
  385. package/dist/components/responsive-element.js +2 -2
  386. package/dist/components/scrollable.js +3 -3
  387. package/dist/components/selectable.js +2 -2
  388. package/dist/components/slide-toggle.js +2 -2
  389. package/dist/components/table.js +3 -3
  390. package/dist/components/table.js.map +1 -1
  391. package/dist/components/toggletip.js +2 -2
  392. package/dist/components/tooltip.js +1805 -9
  393. package/dist/components/tooltip.js.map +1 -1
  394. package/dist/dso-toolkit/dso-accordion.entry.esm.js.map +1 -1
  395. package/dist/dso-toolkit/dso-alert.dso-badge.dso-image-overlay.dso-ozon-content.dso-panel.dso-table.entry.esm.js.map +1 -1
  396. package/dist/dso-toolkit/dso-annotation-activiteit.entry.esm.js.map +1 -1
  397. package/dist/dso-toolkit/dso-annotation-gebiedsaanwijzing.entry.esm.js.map +1 -1
  398. package/dist/dso-toolkit/dso-annotation-kaart.entry.esm.js.map +1 -1
  399. package/dist/dso-toolkit/dso-annotation-locatie.dso-document-component.entry.esm.js.map +1 -1
  400. package/dist/dso-toolkit/dso-annotation-omgevingsnormwaarde.entry.esm.js.map +1 -1
  401. package/dist/dso-toolkit/dso-button-group.entry.esm.js.map +1 -0
  402. package/dist/dso-toolkit/dso-card.entry.esm.js.map +1 -1
  403. package/dist/dso-toolkit/dso-dropdown-menu.entry.esm.js.map +1 -1
  404. package/dist/dso-toolkit/dso-header.entry.esm.js.map +1 -1
  405. package/dist/dso-toolkit/dso-map-controls.entry.esm.js.map +1 -1
  406. package/dist/dso-toolkit/dso-onboarding-tip.entry.esm.js.map +1 -1
  407. package/dist/dso-toolkit/dso-pagination.entry.esm.js.map +1 -1
  408. package/dist/dso-toolkit/dso-toolkit.esm.js +1 -1
  409. package/dist/dso-toolkit/dso-toolkit.esm.js.map +1 -1
  410. package/dist/dso-toolkit/dso-tooltip.entry.esm.js.map +1 -1
  411. package/dist/dso-toolkit/dso-viewer-grid.entry.esm.js.map +1 -1
  412. package/dist/dso-toolkit/{p-27f7b86f.entry.js → p-02491a35.entry.js} +2 -2
  413. package/dist/dso-toolkit/{p-ffa6ca48.entry.js → p-03fe514a.entry.js} +2 -2
  414. package/dist/dso-toolkit/{p-071e8dff.entry.js → p-04d6ae97.entry.js} +2 -2
  415. package/dist/dso-toolkit/p-12e8bed3.entry.js +2 -0
  416. package/dist/dso-toolkit/{p-bd7d4a27.entry.js.map → p-12e8bed3.entry.js.map} +1 -1
  417. package/dist/dso-toolkit/{p-7bedc94d.entry.js → p-16255f29.entry.js} +2 -2
  418. package/dist/dso-toolkit/{p-e4907ab7.entry.js → p-17219f16.entry.js} +2 -2
  419. package/dist/dso-toolkit/{p-a4618476.entry.js → p-1a06ea3b.entry.js} +2 -2
  420. package/dist/dso-toolkit/p-1a06ea3b.entry.js.map +1 -0
  421. package/dist/dso-toolkit/p-1aa49aa7.entry.js +2 -0
  422. package/dist/dso-toolkit/p-1aa49aa7.entry.js.map +1 -0
  423. package/dist/dso-toolkit/p-1aaf0bc4.entry.js +2 -0
  424. package/dist/dso-toolkit/{p-11cd688b.entry.js.map → p-1aaf0bc4.entry.js.map} +1 -1
  425. package/dist/dso-toolkit/p-2165f443.entry.js +2 -0
  426. package/dist/dso-toolkit/p-2165f443.entry.js.map +1 -0
  427. package/dist/dso-toolkit/{p-76eb0308.entry.js → p-218b1fe3.entry.js} +2 -2
  428. package/dist/dso-toolkit/p-246b1186.entry.js +2 -0
  429. package/dist/dso-toolkit/{p-c93fae9e.entry.js.map → p-246b1186.entry.js.map} +1 -1
  430. package/dist/dso-toolkit/p-3300fe1e.entry.js +2 -0
  431. package/dist/dso-toolkit/p-3300fe1e.entry.js.map +1 -0
  432. package/dist/dso-toolkit/{p-4f56a26d.entry.js → p-3522c1dd.entry.js} +2 -2
  433. package/dist/dso-toolkit/{p-95c85ef7.entry.js → p-391bf858.entry.js} +2 -2
  434. package/dist/dso-toolkit/{p-469b876f.entry.js → p-43564b05.entry.js} +2 -2
  435. package/dist/dso-toolkit/{p-b3a8f101.entry.js → p-443a78e5.entry.js} +2 -2
  436. package/dist/dso-toolkit/{p-3e8bda7c.entry.js → p-4d885de2.entry.js} +2 -2
  437. package/dist/dso-toolkit/{p-f63d51f9.entry.js → p-53466f70.entry.js} +2 -2
  438. package/dist/dso-toolkit/{p-320629e5.entry.js → p-535232c4.entry.js} +2 -2
  439. package/dist/dso-toolkit/{p-cc66c346.entry.js → p-53a81213.entry.js} +2 -2
  440. package/dist/dso-toolkit/{p-86658809.entry.js → p-5c0322dc.entry.js} +2 -2
  441. package/dist/dso-toolkit/{p-3e736489.entry.js → p-633f06a1.entry.js} +2 -2
  442. package/dist/dso-toolkit/p-6a813c6c.entry.js +2 -0
  443. package/dist/dso-toolkit/p-6a813c6c.entry.js.map +1 -0
  444. package/dist/dso-toolkit/{p-009bd60a.entry.js → p-6aff6420.entry.js} +2 -2
  445. package/dist/dso-toolkit/p-6aff6420.entry.js.map +1 -0
  446. package/dist/dso-toolkit/p-7731d7bb.entry.js +2 -0
  447. package/dist/dso-toolkit/{p-41f3732b.entry.js → p-78a12530.entry.js} +2 -2
  448. package/dist/dso-toolkit/p-7cab94ae.entry.js +2 -0
  449. package/dist/dso-toolkit/{p-bfaa3608.entry.js.map → p-7cab94ae.entry.js.map} +1 -1
  450. package/dist/dso-toolkit/p-8128fe57.entry.js +2 -0
  451. package/dist/dso-toolkit/p-8128fe57.entry.js.map +1 -0
  452. package/dist/dso-toolkit/{p-137404b4.entry.js → p-8fd586d4.entry.js} +2 -2
  453. package/dist/dso-toolkit/p-915c332a.entry.js +2 -0
  454. package/dist/dso-toolkit/p-915c332a.entry.js.map +1 -0
  455. package/dist/dso-toolkit/{p-e04ebc7e.entry.js → p-9591777b.entry.js} +2 -2
  456. package/dist/dso-toolkit/{p-D5RszRxh.js → p-Ah0-aaXh.js} +2 -2
  457. package/dist/dso-toolkit/{p-D5RszRxh.js.map → p-Ah0-aaXh.js.map} +1 -1
  458. package/dist/dso-toolkit/p-CtC5362R.js +2 -0
  459. package/dist/dso-toolkit/{p-Ds10WquL.js.map → p-CtC5362R.js.map} +1 -1
  460. package/dist/dso-toolkit/p-DQuL1Twl.js.map +1 -1
  461. package/dist/dso-toolkit/p-Dk013L7v.js +2 -0
  462. package/dist/dso-toolkit/{p-LncMPpG-.js.map → p-Dk013L7v.js.map} +1 -1
  463. package/dist/dso-toolkit/p-DxWmN7gh.js +3 -0
  464. package/dist/dso-toolkit/p-DxWmN7gh.js.map +1 -0
  465. package/dist/dso-toolkit/{p-5b9803a2.entry.js → p-a21f00fc.entry.js} +2 -2
  466. package/dist/dso-toolkit/{p-bcfeeafb.entry.js → p-a735dc9b.entry.js} +2 -2
  467. package/dist/dso-toolkit/{p-e5a25571.entry.js → p-a85afaa8.entry.js} +2 -2
  468. package/dist/dso-toolkit/{p-3d414fae.entry.js → p-aa2f5070.entry.js} +2 -2
  469. package/dist/dso-toolkit/p-ab39576c.entry.js +2 -0
  470. package/dist/dso-toolkit/{p-75091e9b.entry.js.map → p-ab39576c.entry.js.map} +1 -1
  471. package/dist/dso-toolkit/{p-1db24923.entry.js → p-afaee982.entry.js} +2 -2
  472. package/dist/dso-toolkit/p-b0953d50.entry.js +2 -0
  473. package/dist/dso-toolkit/{p-6d3d29ac.entry.js → p-b0cbc330.entry.js} +2 -2
  474. package/dist/dso-toolkit/{p-903c3603.entry.js → p-b245449a.entry.js} +2 -2
  475. package/dist/dso-toolkit/{p-f32bced2.entry.js → p-c359f83e.entry.js} +2 -2
  476. package/dist/dso-toolkit/{p-e9ea10ed.entry.js → p-cc0db296.entry.js} +2 -2
  477. package/dist/dso-toolkit/p-ce057c5c.entry.js +2 -0
  478. package/dist/dso-toolkit/{p-9cf46bde.entry.js.map → p-ce057c5c.entry.js.map} +1 -1
  479. package/dist/dso-toolkit/p-d0e82c62.entry.js +2 -0
  480. package/dist/dso-toolkit/{p-f41b0ba0.entry.js.map → p-d0e82c62.entry.js.map} +1 -1
  481. package/dist/dso-toolkit/{p-5e821c40.entry.js → p-d51d9d66.entry.js} +2 -2
  482. package/dist/dso-toolkit/{p-e7ba6656.entry.js → p-d8a051b5.entry.js} +2 -2
  483. package/dist/dso-toolkit/p-dd5f641f.entry.js +2 -0
  484. package/dist/dso-toolkit/p-dd5f641f.entry.js.map +1 -0
  485. package/dist/dso-toolkit/{p-99b4b85a.entry.js → p-e17fa84d.entry.js} +2 -2
  486. package/dist/dso-toolkit/{p-68cff470.entry.js → p-e8a735ce.entry.js} +2 -2
  487. package/dist/dso-toolkit/{p-8ac044db.entry.js → p-ea71badf.entry.js} +2 -2
  488. package/dist/dso-toolkit/{p-7233cef7.entry.js → p-f055ab17.entry.js} +2 -2
  489. package/dist/dso-toolkit/{p-eb5e5d0e.entry.js → p-f8557ec8.entry.js} +2 -2
  490. package/dist/dso-toolkit/{p-13512a35.entry.js → p-fd42a8cd.entry.js} +2 -2
  491. package/dist/dso-toolkit/p-gdsca1fx.js +2 -0
  492. package/dist/dso-toolkit/p-gdsca1fx.js.map +1 -0
  493. package/dist/esm/{annotation-body-CHp1npGM.js → annotation-body-eL8p8SW9.js} +3 -3
  494. package/dist/esm/{annotation-body-CHp1npGM.js.map → annotation-body-eL8p8SW9.js.map} +1 -1
  495. package/dist/esm/{annotation-list-renvooi-values-D1J_Fugb.js → annotation-list-renvooi-values-Cn6N3SEI.js} +3 -3
  496. package/dist/esm/{annotation-list-renvooi-values-D1J_Fugb.js.map → annotation-list-renvooi-values-Cn6N3SEI.js.map} +1 -1
  497. package/dist/esm/{annotation-watcher-B4Wi05lj.js → annotation-watcher-m3nAgrq7.js} +3 -3
  498. package/dist/esm/{annotation-watcher-B4Wi05lj.js.map → annotation-watcher-m3nAgrq7.js.map} +1 -1
  499. package/dist/esm/app-globals-DQuL1Twl.js.map +1 -1
  500. package/dist/esm/dso-accordion-section.entry.js +1 -1
  501. package/dist/esm/dso-accordion.entry.js +22 -6
  502. package/dist/esm/dso-accordion.entry.js.map +1 -1
  503. package/dist/esm/dso-action-list-item.entry.js +1 -1
  504. package/dist/esm/dso-action-list.entry.js +1 -1
  505. package/dist/esm/dso-advanced-select.entry.js +1 -1
  506. package/dist/esm/dso-alert.dso-badge.dso-image-overlay.dso-ozon-content.dso-panel.dso-table.entry.js.map +1 -1
  507. package/dist/esm/dso-alert_6.entry.js +7 -7
  508. package/dist/esm/dso-alert_6.entry.js.map +1 -1
  509. package/dist/esm/dso-annotation-activiteit.entry.js +5 -5
  510. package/dist/esm/dso-annotation-activiteit.entry.js.map +1 -1
  511. package/dist/esm/dso-annotation-gebiedsaanwijzing.entry.js +4 -4
  512. package/dist/esm/dso-annotation-gebiedsaanwijzing.entry.js.map +1 -1
  513. package/dist/esm/dso-annotation-kaart.entry.js +3 -3
  514. package/dist/esm/dso-annotation-kaart.entry.js.map +1 -1
  515. package/dist/esm/dso-annotation-locatie.dso-document-component.entry.js.map +1 -1
  516. package/dist/esm/dso-annotation-locatie_2.entry.js +6 -6
  517. package/dist/esm/dso-annotation-locatie_2.entry.js.map +1 -1
  518. package/dist/esm/dso-annotation-omgevingsnormwaarde.entry.js +5 -5
  519. package/dist/esm/dso-annotation-omgevingsnormwaarde.entry.js.map +1 -1
  520. package/dist/esm/dso-attachments-counter_2.entry.js +1 -1
  521. package/dist/esm/dso-autosuggest.entry.js +1 -1
  522. package/dist/esm/dso-banner.entry.js +1 -1
  523. package/dist/esm/dso-button-group.entry.js +41 -0
  524. package/dist/esm/dso-button-group.entry.js.map +1 -0
  525. package/dist/esm/dso-card-container.entry.js +2 -2
  526. package/dist/esm/dso-card.entry.js +4 -4
  527. package/dist/esm/dso-card.entry.js.map +1 -1
  528. package/dist/esm/dso-contact-information.entry.js +2 -2
  529. package/dist/esm/dso-date-picker-legacy.entry.js +4 -4
  530. package/dist/esm/dso-date-picker.entry.js +2 -2
  531. package/dist/esm/dso-document-card.entry.js +2 -2
  532. package/dist/esm/dso-dropdown-menu.entry.js +45 -104
  533. package/dist/esm/dso-dropdown-menu.entry.js.map +1 -1
  534. package/dist/esm/dso-header.entry.js +3 -3
  535. package/dist/esm/dso-header.entry.js.map +1 -1
  536. package/dist/esm/dso-highlight-box.entry.js +2 -2
  537. package/dist/esm/dso-icon.entry.js +2 -2
  538. package/dist/esm/dso-info-button.entry.js +2 -2
  539. package/dist/esm/dso-info_2.entry.js +3 -3
  540. package/dist/esm/dso-input-range.entry.js +3 -3
  541. package/dist/esm/dso-label_3.entry.js +5 -5
  542. package/dist/esm/dso-legend-item.entry.js +2 -2
  543. package/dist/esm/dso-list-button.entry.js +2 -2
  544. package/dist/esm/dso-logo.entry.js +2 -2
  545. package/dist/esm/dso-map-base-layers.entry.js +2 -2
  546. package/dist/esm/dso-map-controls.entry.js +4 -4
  547. package/dist/esm/dso-map-controls.entry.js.map +1 -1
  548. package/dist/esm/dso-map-overlays.entry.js +2 -2
  549. package/dist/esm/dso-mark-bar.entry.js +2 -2
  550. package/dist/esm/dso-modal.entry.js +2 -2
  551. package/dist/esm/dso-onboarding-tip.entry.js +3 -1661
  552. package/dist/esm/dso-onboarding-tip.entry.js.map +1 -1
  553. package/dist/esm/dso-pagination.entry.js +2 -2
  554. package/dist/esm/dso-pagination.entry.js.map +1 -1
  555. package/dist/esm/dso-plekinfo-card.entry.js +2 -2
  556. package/dist/esm/dso-progress-bar.entry.js +2 -2
  557. package/dist/esm/dso-progress-indicator.entry.js +2 -2
  558. package/dist/esm/dso-project-item.entry.js +2 -2
  559. package/dist/esm/dso-responsive-element.entry.js +2 -2
  560. package/dist/esm/dso-scrollable.entry.js +3 -3
  561. package/dist/esm/dso-skiplink.entry.js +2 -2
  562. package/dist/esm/dso-survey-rating.entry.js +4 -4
  563. package/dist/esm/dso-tab.entry.js +1 -1
  564. package/dist/esm/dso-tabs.entry.js +2 -2
  565. package/dist/esm/dso-toggletip.entry.js +2 -2
  566. package/dist/esm/dso-toolkit.js +4 -4
  567. package/dist/esm/dso-toolkit.js.map +1 -1
  568. package/dist/esm/dso-tooltip.entry.js +1801 -5
  569. package/dist/esm/dso-tooltip.entry.js.map +1 -1
  570. package/dist/esm/dso-tree-view.entry.js +2 -2
  571. package/dist/esm/dso-viewer-grid.entry.js +3 -4
  572. package/dist/esm/dso-viewer-grid.entry.js.map +1 -1
  573. package/dist/esm/dsot-document-component-demo.entry.js +2 -2
  574. package/dist/esm/floating-ui.dom-gdsca1fx.js +1663 -0
  575. package/dist/esm/floating-ui.dom-gdsca1fx.js.map +1 -0
  576. package/dist/esm/{index-C-b4jsbt.js → index-DxWmN7gh.js} +177 -115
  577. package/dist/esm/index-DxWmN7gh.js.map +1 -0
  578. package/dist/esm/loader.js +3 -3
  579. package/dist/types/components/button-group/button-group.d.ts +16 -0
  580. package/dist/types/components/button-group/button-group.interfaces.d.ts +1 -0
  581. package/dist/types/components/dropdown-menu/dropdown-menu.d.ts +3 -20
  582. package/dist/types/components/map-controls/map-controls.d.ts +2 -2
  583. package/dist/types/components/viewer-grid/viewer-grid.d.ts +1 -5
  584. package/dist/types/components/viewer-grid/viewer-grid.interfaces.d.ts +0 -3
  585. package/dist/types/components.d.ts +209 -33
  586. package/dist/types/stencil-public-runtime.d.ts +13 -6
  587. package/package.json +11 -9
  588. package/dist/bundle/p-CBwbkAC7.js +0 -314
  589. package/dist/bundle/p-CBwbkAC7.js.map +0 -1
  590. package/dist/bundle/p-CagCGFPb.js +0 -80
  591. package/dist/bundle/p-CsY83cJO.js +0 -1801
  592. package/dist/bundle/p-CsY83cJO.js.map +0 -1
  593. package/dist/bundle/p-DHO_Za64.js.map +0 -1
  594. package/dist/bundle/p-Dp31hMfn.js.map +0 -1
  595. package/dist/cjs/has-overflow-B_4p67wC.js +0 -1806
  596. package/dist/cjs/has-overflow-B_4p67wC.js.map +0 -1
  597. package/dist/cjs/index-Bfuot2fD.js.map +0 -1
  598. package/dist/components/has-overflow.js +0 -1801
  599. package/dist/components/has-overflow.js.map +0 -1
  600. package/dist/dso-toolkit/p-009bd60a.entry.js.map +0 -1
  601. package/dist/dso-toolkit/p-11cd688b.entry.js +0 -2
  602. package/dist/dso-toolkit/p-2968e740.entry.js +0 -2
  603. package/dist/dso-toolkit/p-2968e740.entry.js.map +0 -1
  604. package/dist/dso-toolkit/p-5327558b.entry.js +0 -2
  605. package/dist/dso-toolkit/p-75091e9b.entry.js +0 -2
  606. package/dist/dso-toolkit/p-858970da.entry.js +0 -2
  607. package/dist/dso-toolkit/p-858970da.entry.js.map +0 -1
  608. package/dist/dso-toolkit/p-9cf46bde.entry.js +0 -2
  609. package/dist/dso-toolkit/p-C-b4jsbt.js +0 -3
  610. package/dist/dso-toolkit/p-C-b4jsbt.js.map +0 -1
  611. package/dist/dso-toolkit/p-CsY83cJO.js +0 -2
  612. package/dist/dso-toolkit/p-CsY83cJO.js.map +0 -1
  613. package/dist/dso-toolkit/p-Ds10WquL.js +0 -2
  614. package/dist/dso-toolkit/p-LncMPpG-.js +0 -2
  615. package/dist/dso-toolkit/p-a4618476.entry.js.map +0 -1
  616. package/dist/dso-toolkit/p-ad8a1705.entry.js +0 -2
  617. package/dist/dso-toolkit/p-b61f1d16.entry.js +0 -2
  618. package/dist/dso-toolkit/p-b61f1d16.entry.js.map +0 -1
  619. package/dist/dso-toolkit/p-bbcffc90.entry.js +0 -2
  620. package/dist/dso-toolkit/p-bbcffc90.entry.js.map +0 -1
  621. package/dist/dso-toolkit/p-bd7d4a27.entry.js +0 -2
  622. package/dist/dso-toolkit/p-bfaa3608.entry.js +0 -2
  623. package/dist/dso-toolkit/p-c93fae9e.entry.js +0 -2
  624. package/dist/dso-toolkit/p-cad0c5d9.entry.js +0 -2
  625. package/dist/dso-toolkit/p-cad0c5d9.entry.js.map +0 -1
  626. package/dist/dso-toolkit/p-cea64895.entry.js +0 -2
  627. package/dist/dso-toolkit/p-cea64895.entry.js.map +0 -1
  628. package/dist/dso-toolkit/p-f41b0ba0.entry.js +0 -2
  629. package/dist/esm/has-overflow-CsY83cJO.js.map +0 -1
  630. package/dist/esm/index-C-b4jsbt.js.map +0 -1
  631. /package/dist/dso-toolkit/{p-27f7b86f.entry.js.map → p-02491a35.entry.js.map} +0 -0
  632. /package/dist/dso-toolkit/{p-ffa6ca48.entry.js.map → p-03fe514a.entry.js.map} +0 -0
  633. /package/dist/dso-toolkit/{p-071e8dff.entry.js.map → p-04d6ae97.entry.js.map} +0 -0
  634. /package/dist/dso-toolkit/{p-7bedc94d.entry.js.map → p-16255f29.entry.js.map} +0 -0
  635. /package/dist/dso-toolkit/{p-e4907ab7.entry.js.map → p-17219f16.entry.js.map} +0 -0
  636. /package/dist/dso-toolkit/{p-76eb0308.entry.js.map → p-218b1fe3.entry.js.map} +0 -0
  637. /package/dist/dso-toolkit/{p-4f56a26d.entry.js.map → p-3522c1dd.entry.js.map} +0 -0
  638. /package/dist/dso-toolkit/{p-95c85ef7.entry.js.map → p-391bf858.entry.js.map} +0 -0
  639. /package/dist/dso-toolkit/{p-469b876f.entry.js.map → p-43564b05.entry.js.map} +0 -0
  640. /package/dist/dso-toolkit/{p-b3a8f101.entry.js.map → p-443a78e5.entry.js.map} +0 -0
  641. /package/dist/dso-toolkit/{p-3e8bda7c.entry.js.map → p-4d885de2.entry.js.map} +0 -0
  642. /package/dist/dso-toolkit/{p-f63d51f9.entry.js.map → p-53466f70.entry.js.map} +0 -0
  643. /package/dist/dso-toolkit/{p-320629e5.entry.js.map → p-535232c4.entry.js.map} +0 -0
  644. /package/dist/dso-toolkit/{p-cc66c346.entry.js.map → p-53a81213.entry.js.map} +0 -0
  645. /package/dist/dso-toolkit/{p-86658809.entry.js.map → p-5c0322dc.entry.js.map} +0 -0
  646. /package/dist/dso-toolkit/{p-3e736489.entry.js.map → p-633f06a1.entry.js.map} +0 -0
  647. /package/dist/dso-toolkit/{p-5327558b.entry.js.map → p-7731d7bb.entry.js.map} +0 -0
  648. /package/dist/dso-toolkit/{p-41f3732b.entry.js.map → p-78a12530.entry.js.map} +0 -0
  649. /package/dist/dso-toolkit/{p-137404b4.entry.js.map → p-8fd586d4.entry.js.map} +0 -0
  650. /package/dist/dso-toolkit/{p-e04ebc7e.entry.js.map → p-9591777b.entry.js.map} +0 -0
  651. /package/dist/dso-toolkit/{p-5b9803a2.entry.js.map → p-a21f00fc.entry.js.map} +0 -0
  652. /package/dist/dso-toolkit/{p-bcfeeafb.entry.js.map → p-a735dc9b.entry.js.map} +0 -0
  653. /package/dist/dso-toolkit/{p-e5a25571.entry.js.map → p-a85afaa8.entry.js.map} +0 -0
  654. /package/dist/dso-toolkit/{p-3d414fae.entry.js.map → p-aa2f5070.entry.js.map} +0 -0
  655. /package/dist/dso-toolkit/{p-1db24923.entry.js.map → p-afaee982.entry.js.map} +0 -0
  656. /package/dist/dso-toolkit/{p-ad8a1705.entry.js.map → p-b0953d50.entry.js.map} +0 -0
  657. /package/dist/dso-toolkit/{p-6d3d29ac.entry.js.map → p-b0cbc330.entry.js.map} +0 -0
  658. /package/dist/dso-toolkit/{p-903c3603.entry.js.map → p-b245449a.entry.js.map} +0 -0
  659. /package/dist/dso-toolkit/{p-f32bced2.entry.js.map → p-c359f83e.entry.js.map} +0 -0
  660. /package/dist/dso-toolkit/{p-e9ea10ed.entry.js.map → p-cc0db296.entry.js.map} +0 -0
  661. /package/dist/dso-toolkit/{p-5e821c40.entry.js.map → p-d51d9d66.entry.js.map} +0 -0
  662. /package/dist/dso-toolkit/{p-e7ba6656.entry.js.map → p-d8a051b5.entry.js.map} +0 -0
  663. /package/dist/dso-toolkit/{p-99b4b85a.entry.js.map → p-e17fa84d.entry.js.map} +0 -0
  664. /package/dist/dso-toolkit/{p-68cff470.entry.js.map → p-e8a735ce.entry.js.map} +0 -0
  665. /package/dist/dso-toolkit/{p-8ac044db.entry.js.map → p-ea71badf.entry.js.map} +0 -0
  666. /package/dist/dso-toolkit/{p-7233cef7.entry.js.map → p-f055ab17.entry.js.map} +0 -0
  667. /package/dist/dso-toolkit/{p-eb5e5d0e.entry.js.map → p-f8557ec8.entry.js.map} +0 -0
  668. /package/dist/dso-toolkit/{p-13512a35.entry.js.map → p-fd42a8cd.entry.js.map} +0 -0
@@ -0,0 +1,41 @@
1
+ import { r as registerInstance, f as forceUpdate, h, g as getElement } from './index-DxWmN7gh.js';
2
+ import { c as clsx } from './clsx-ChV9xqsO.js';
3
+
4
+ const buttonGroupCss = "@charset \"UTF-8\";*,*::after,*::before{box-sizing:border-box}:host{display:inline-block}.container{display:inline-flex;border-radius:4px}.container.has-map-buttons{box-shadow:0 1px 4px 0 rgba(0, 0, 0, 0.5);background-color:#ccc;gap:1px}::slotted(*){margin:0 !important}:host([direction=row]) ::slotted(:not(:first-child)){border-start-start-radius:0 !important;border-end-start-radius:0 !important}:host([direction=row]) ::slotted(:not(:last-child)){border-start-end-radius:0 !important;border-end-end-radius:0 !important}:host([direction=row]) ::slotted(.dso-secondary){margin-inline-start:-1px !important}:host([direction=column]) .container{flex-direction:column}:host([direction=column]) ::slotted(*){text-align:center !important}:host([direction=column]) ::slotted(:not(:first-child)){border-start-start-radius:0 !important;border-start-end-radius:0 !important}:host([direction=column]) ::slotted(:not(:last-child)){border-end-start-radius:0 !important;border-end-end-radius:0 !important}:host([direction=column]) ::slotted(.dso-secondary){margin-block-start:-1px !important}::slotted(:focus-visible){z-index:1 !important}::slotted(.dso-map){box-shadow:none !important}";
5
+
6
+ const ButtonGroup = class {
7
+ constructor(hostRef) {
8
+ registerInstance(this, hostRef);
9
+ /**
10
+ * The direction in which the buttons are displayed.
11
+ *
12
+ * Defaults to `row`.
13
+ */
14
+ this.direction = "row";
15
+ }
16
+ connectedCallback() {
17
+ this.mutationObserver = new MutationObserver(() => {
18
+ forceUpdate(this);
19
+ });
20
+ this.mutationObserver.observe(this.host, {
21
+ childList: true,
22
+ });
23
+ }
24
+ disconnectedCallback() {
25
+ var _a;
26
+ (_a = this.mutationObserver) === null || _a === void 0 ? void 0 : _a.disconnect();
27
+ }
28
+ get hasMapButtons() {
29
+ return !!this.host.querySelector(":scope > .dso-map");
30
+ }
31
+ render() {
32
+ return (h("div", { key: '0833d62def3ca95de506748637bfb925c73f4b3a', class: clsx("container", { "has-map-buttons": this.hasMapButtons }), role: "group" }, h("slot", { key: '2185893b0e429692b16d40460cf4f877e2a0d1e5' })));
33
+ }
34
+ get host() { return getElement(this); }
35
+ };
36
+ ButtonGroup.style = buttonGroupCss;
37
+
38
+ export { ButtonGroup as dso_button_group };
39
+ //# sourceMappingURL=dso-button-group.entry.js.map
40
+
41
+ //# sourceMappingURL=dso-button-group.entry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dso-button-group.entry.js","sources":["src/components/button-group/button-group.scss?tag=dso-button-group&encapsulation=shadow","src/components/button-group/button-group.tsx"],"sourcesContent":["@use \"~dso-toolkit/src/utilities\";\r\n@use \"~dso-toolkit/src/components/button\";\r\n@use \"~dso-toolkit/src/variables/colors\";\r\n\r\n@include utilities.box-sizing();\r\n\r\n:host {\r\n display: inline-block;\r\n}\r\n\r\n.container {\r\n display: inline-flex;\r\n border-radius: button.$border-radius;\r\n\r\n &.has-map-buttons {\r\n @include button.map-box-shadow();\r\n\r\n background-color: colors.$grijs-20;\r\n gap: 1px;\r\n }\r\n}\r\n\r\n::slotted(*) {\r\n margin: 0 !important;\r\n}\r\n\r\n:host([direction=\"row\"]) {\r\n ::slotted(:not(:first-child)) {\r\n border-start-start-radius: 0 !important;\r\n border-end-start-radius: 0 !important;\r\n }\r\n\r\n ::slotted(:not(:last-child)) {\r\n border-start-end-radius: 0 !important;\r\n border-end-end-radius: 0 !important;\r\n }\r\n\r\n ::slotted(.dso-secondary) {\r\n margin-inline-start: -1px !important;\r\n }\r\n}\r\n\r\n:host([direction=\"column\"]) {\r\n .container {\r\n flex-direction: column;\r\n }\r\n\r\n ::slotted(*) {\r\n text-align: center !important;\r\n }\r\n\r\n ::slotted(:not(:first-child)) {\r\n border-start-start-radius: 0 !important;\r\n border-start-end-radius: 0 !important;\r\n }\r\n\r\n ::slotted(:not(:last-child)) {\r\n border-end-start-radius: 0 !important;\r\n border-end-end-radius: 0 !important;\r\n }\r\n\r\n ::slotted(.dso-secondary) {\r\n margin-block-start: -1px !important;\r\n }\r\n}\r\n\r\n::slotted(:focus-visible) {\r\n z-index: 1 !important;\r\n}\r\n\r\n::slotted(.dso-map) {\r\n box-shadow: none !important;\r\n}\r\n","import { Component, ComponentInterface, Element, Prop, forceUpdate, h } from \"@stencil/core\";\r\nimport clsx from \"clsx\";\r\n\r\nimport { ButtonGroupDirection } from \"./button-group.interfaces\";\r\n\r\n@Component({\r\n tag: \"dso-button-group\",\r\n styleUrl: \"button-group.scss\",\r\n shadow: true,\r\n})\r\nexport class ButtonGroup implements ComponentInterface {\r\n /**\r\n * The direction in which the buttons are displayed.\r\n *\r\n * Defaults to `row`.\r\n */\r\n @Prop({ reflect: true })\r\n direction: ButtonGroupDirection = \"row\";\r\n\r\n @Element()\r\n private host!: HTMLDsoButtonGroupElement;\r\n\r\n private mutationObserver?: MutationObserver;\r\n\r\n connectedCallback(): void {\r\n this.mutationObserver = new MutationObserver(() => {\r\n forceUpdate(this);\r\n });\r\n\r\n this.mutationObserver.observe(this.host, {\r\n childList: true,\r\n });\r\n }\r\n\r\n disconnectedCallback(): void {\r\n this.mutationObserver?.disconnect();\r\n }\r\n\r\n get hasMapButtons(): boolean {\r\n return !!this.host.querySelector(\":scope > .dso-map\");\r\n }\r\n\r\n render() {\r\n return (\r\n <div class={clsx(\"container\", { \"has-map-buttons\": this.hasMapButtons })} role=\"group\">\r\n <slot />\r\n </div>\r\n );\r\n }\r\n}\r\n"],"names":[],"mappings":";;;AAAA,MAAM,cAAc,GAAG,ypCAAypC;;MCUnqC,WAAW,GAAA,MAAA;AALxB,IAAA,WAAA,CAAA,OAAA,EAAA;;AAME;;;;AAIG;AAEH,QAAA,IAAS,CAAA,SAAA,GAAyB,KAAK;AAgCxC;IAzBC,iBAAiB,GAAA;AACf,QAAA,IAAI,CAAC,gBAAgB,GAAG,IAAI,gBAAgB,CAAC,MAAK;YAChD,WAAW,CAAC,IAAI,CAAC;AACnB,SAAC,CAAC;QAEF,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE;AACvC,YAAA,SAAS,EAAE,IAAI;AAChB,SAAA,CAAC;;IAGJ,oBAAoB,GAAA;;QAClB,CAAA,EAAA,GAAA,IAAI,CAAC,gBAAgB,MAAE,IAAA,IAAA,EAAA,KAAA,MAAA,GAAA,MAAA,GAAA,EAAA,CAAA,UAAU,EAAE;;AAGrC,IAAA,IAAI,aAAa,GAAA;QACf,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,mBAAmB,CAAC;;IAGvD,MAAM,GAAA;AACJ,QAAA,QACE,CAAK,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAE,IAAI,CAAC,WAAW,EAAE,EAAE,iBAAiB,EAAE,IAAI,CAAC,aAAa,EAAE,CAAC,EAAE,IAAI,EAAC,OAAO,EAAA,EACpF,CAAQ,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,CAAA,CACJ;;;;;;;;"}
@@ -1,4 +1,4 @@
1
- import { r as registerInstance, h, F as Fragment } from './index-C-b4jsbt.js';
1
+ import { r as registerInstance, h, F as Fragment } from './index-DxWmN7gh.js';
2
2
 
3
3
  const cardContainerCss = ":host .dso-card-list{padding-inline-start:0;list-style:none;border-block-end:1px solid #ccc;margin-block-start:-1px}:host .dso-card-grid{display:grid;gap:32px;grid-auto-rows:1fr}@media (max-width: 991px){:host .dso-card-grid{grid-template-columns:repeat(1, 1fr)}}@media (min-width: 992px) and (max-width: 1199px){:host .dso-card-grid{grid-template-columns:repeat(2, 1fr)}}@media (min-width: 1200px){:host .dso-card-grid{grid-template-columns:repeat(3, 1fr)}}";
4
4
 
@@ -11,7 +11,7 @@ const CardContainer = class {
11
11
  this.mode = "list";
12
12
  }
13
13
  render() {
14
- return (h(Fragment, null, this.mode === "list" && (h("ul", { key: '587a029adba2baa1af6a6edb83d5d788aa37c203', class: "dso-card-list" }, h("slot", { key: 'c6041cd186eddc4b89e073920ff8e891dd4e25cf' }))), this.mode === "grid" && (h("div", { key: '14cb5bd647f49a80ce52e9bd5a3cc59b7a9d5144', class: "dso-card-grid" }, h("slot", { key: '9e0b205698806f14085e82a85631afd49665f1e3' })))));
14
+ return (h(Fragment, null, this.mode === "list" && (h("ul", { key: '90b07c1be81c9e8891fc3c56d9d67304347c2756', class: "dso-card-list" }, h("slot", { key: '28fd7e44a59870508de16cefaf245146004319bc' }))), this.mode === "grid" && (h("div", { key: '8a73e7edf8c218f0dee90aac272b148207c20d13', class: "dso-card-grid" }, h("slot", { key: '9406a30a0ddf5ac7d1c48b5e0003f61936945783' })))));
15
15
  }
16
16
  };
17
17
  CardContainer.style = cardContainerCss;
@@ -1,7 +1,7 @@
1
- import { r as registerInstance, c as createEvent, f as forceUpdate, h, H as Host, g as getElement } from './index-C-b4jsbt.js';
1
+ import { r as registerInstance, c as createEvent, f as forceUpdate, h, H as Host, g as getElement } from './index-DxWmN7gh.js';
2
2
  import { i as isModifiedEvent } from './is-modified-event-Hgv-pDpy.js';
3
3
 
4
- const cardCss = "@charset \"UTF-8\";a{background-color:transparent;color:var(--link-color);text-decoration:underline;text-underline-offset:15%}a:hover,a:focus-visible{color:var(--link-hover-color);text-decoration:underline}a:active{text-decoration:none}a :is(dso-icon,svg.di)+span,a span+:is(dso-icon,svg.di){margin-inline-start:8px}a:visited{color:var(--link-visited-color)}a:where(:not(.dso-primary,.dso-secondary,.dso-tertiary)).download{background-repeat:no-repeat;background-size:1.25em 1.25em;padding-inline-end:var(--_dso-link-icon-padding-inline-end, 1.5em);background-position:bottom 0 right 0}a:where(:not(.dso-primary,.dso-secondary,.dso-tertiary)).download{background-image:var(--_dso-di-background-image, url(\"./di.svg#download\"))}a:where(:not(.dso-primary,.dso-secondary,.dso-tertiary)).download:hover,a:where(:not(.dso-primary,.dso-secondary,.dso-tertiary)).download:focus-visible{background-image:var(--_dso-di-background-image, url(\"./di.svg#download-scampi\"))}a:where(:not(.dso-primary,.dso-secondary,.dso-tertiary)).extern{background-repeat:no-repeat;background-size:1.25em 1.25em;padding-inline-end:var(--_dso-link-icon-padding-inline-end, 1.5em);background-position:bottom 0 right 0}a:where(:not(.dso-primary,.dso-secondary,.dso-tertiary)).extern{background-image:var(--_dso-di-background-image, url(\"./di.svg#external-link\"))}a:where(:not(.dso-primary,.dso-secondary,.dso-tertiary)).extern:hover,a:where(:not(.dso-primary,.dso-secondary,.dso-tertiary)).extern:focus-visible{background-image:var(--_dso-di-background-image, url(\"./di.svg#external-link-scampi\"))}a:where(:not(.dso-primary,.dso-secondary,.dso-tertiary))[href^=\"tel:\"]{background-repeat:no-repeat;background-size:1.25em 1.25em;padding-inline-start:var(--_dso-link-icon-padding-inline-start, 1.5em);background-position:bottom 0 left 0}a:where(:not(.dso-primary,.dso-secondary,.dso-tertiary))[href^=\"tel:\"]{background-image:var(--_dso-di-background-image, url(\"./di.svg#call-grasgroen\"))}a:where(:not(.dso-primary,.dso-secondary,.dso-tertiary))[href^=\"tel:\"]:hover,a:where(:not(.dso-primary,.dso-secondary,.dso-tertiary))[href^=\"tel:\"]:focus-visible{background-image:var(--_dso-di-background-image, url(\"./di.svg#call-scampi\"))}a:where(:not(.dso-primary,.dso-secondary,.dso-tertiary))[href^=\"mailto:\"]{background-repeat:no-repeat;background-size:1.25em 1.25em;padding-inline-start:var(--_dso-link-icon-padding-inline-start, 1.5em);background-position:bottom 0 left 0}a:where(:not(.dso-primary,.dso-secondary,.dso-tertiary))[href^=\"mailto:\"]{background-image:var(--_dso-di-background-image, url(\"./di.svg#email-grasgroen\"))}a:where(:not(.dso-primary,.dso-secondary,.dso-tertiary))[href^=\"mailto:\"]:hover,a:where(:not(.dso-primary,.dso-secondary,.dso-tertiary))[href^=\"mailto:\"]:focus-visible{background-image:var(--_dso-di-background-image, url(\"./di.svg#email-scampi\"))}*,*::after,*::before{box-sizing:border-box}:host{display:block}:host([is-selectable]:not([is-selectable=false])) .dso-card-container{display:grid;grid-template-columns:1fr minmax(0, 100%)}:host([is-selectable]:not([is-selectable=false])) .dso-card-container .dso-card-heading,:host([is-selectable]:not([is-selectable=false])) .dso-card-container .dso-card-content{grid-column:2/-1}:host([is-selectable]:not([is-selectable=false])) .dso-card-container .dso-card-selectable{grid-row:span 2;margin-inline-end:8px}:host([active]:not([active=false])) .dso-card-container{background-color:#e5e5e5}.dso-card-container{padding-block:16px;padding-inline:16px;inline-size:100%;block-size:100%}.dso-card-container:has(.dso-card-heading a:is(:hover,:focus-visible)){background-color:#f2f2f2}.dso-card-container .dso-card-heading{align-items:center;display:flex}@media screen and (max-width: 480px){.dso-card-container .dso-card-heading{flex-wrap:wrap}}.dso-card-container .dso-card-heading+.dso-card-content{margin-block-start:8px}.heading-anchor{display:flex;gap:4px;color:#275937;text-decoration:none}.heading-anchor:hover{color:#275937;text-decoration:underline}.heading-anchor:visited{color:#275937}.heading-anchor dso-icon{flex-shrink:0}.heading-anchor .sr-only{position:absolute;inline-size:1px;block-size:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);border:0}::slotted([slot=selectable]){font-size:0 !important;--_dt-selectable-padding-inline-start:24px;--_dt-selectable-input-wrapper-margin-inline-start:-24px;--_dt-selectable-input-wrapper-padding-inline-start:24px}::slotted([slot=heading]){display:flex !important;align-items:center !important;margin-block-end:0 !important;margin-block-start:0 !important;font-size:1.125em !important;font-weight:700 !important;color:#275937 !important;line-height:1.25 !important}::slotted([slot=content]){--_dt-rich-content-margin-block:8px;--_dt-rich-content-margin-block-end:0;--_dt-rich-content-margin-block-start:0}::slotted([slot=interactions]){display:flex !important;justify-content:space-between !important;margin-inline-start:auto !important}@media screen and (max-width: 480px){::slotted([slot=interactions]){flex-basis:100% !important;margin-block-start:16px !important}}";
4
+ const cardCss = "@charset \"UTF-8\";a{background-color:transparent;color:var(--link-color);text-decoration:underline;text-underline-offset:15%}a:hover,a:focus-visible{color:var(--link-hover-color);text-decoration:underline}a:active{text-decoration:none}a :is(dso-icon,svg.di)+span,a span+:is(dso-icon,svg.di){margin-inline-start:8px}a .sr-only+:is(dso-icon,svg.di){margin-inline-start:0}a:visited{color:var(--link-visited-color)}a:where(:not(.dso-primary,.dso-secondary,.dso-tertiary)).download{background-repeat:no-repeat;background-size:1.25em 1.25em;padding-inline-end:var(--_dso-link-icon-padding-inline-end, 1.5em);background-position:bottom 0 right 0}a:where(:not(.dso-primary,.dso-secondary,.dso-tertiary)).download{background-image:var(--_dso-di-background-image, url(\"./di.svg#download\"))}a:where(:not(.dso-primary,.dso-secondary,.dso-tertiary)).download:hover,a:where(:not(.dso-primary,.dso-secondary,.dso-tertiary)).download:focus-visible{background-image:var(--_dso-di-background-image, url(\"./di.svg#download-scampi\"))}a:where(:not(.dso-primary,.dso-secondary,.dso-tertiary)).extern{background-repeat:no-repeat;background-size:1.25em 1.25em;padding-inline-end:var(--_dso-link-icon-padding-inline-end, 1.5em);background-position:bottom 0 right 0}a:where(:not(.dso-primary,.dso-secondary,.dso-tertiary)).extern{background-image:var(--_dso-di-background-image, url(\"./di.svg#external-link\"))}a:where(:not(.dso-primary,.dso-secondary,.dso-tertiary)).extern:hover,a:where(:not(.dso-primary,.dso-secondary,.dso-tertiary)).extern:focus-visible{background-image:var(--_dso-di-background-image, url(\"./di.svg#external-link-scampi\"))}a:where(:not(.dso-primary,.dso-secondary,.dso-tertiary))[href^=\"tel:\"]{background-repeat:no-repeat;background-size:1.25em 1.25em;padding-inline-start:var(--_dso-link-icon-padding-inline-start, 1.5em);background-position:bottom 0 left 0}a:where(:not(.dso-primary,.dso-secondary,.dso-tertiary))[href^=\"tel:\"]{background-image:var(--_dso-di-background-image, url(\"./di.svg#call-grasgroen\"))}a:where(:not(.dso-primary,.dso-secondary,.dso-tertiary))[href^=\"tel:\"]:hover,a:where(:not(.dso-primary,.dso-secondary,.dso-tertiary))[href^=\"tel:\"]:focus-visible{background-image:var(--_dso-di-background-image, url(\"./di.svg#call-scampi\"))}a:where(:not(.dso-primary,.dso-secondary,.dso-tertiary))[href^=\"mailto:\"]{background-repeat:no-repeat;background-size:1.25em 1.25em;padding-inline-start:var(--_dso-link-icon-padding-inline-start, 1.5em);background-position:bottom 0 left 0}a:where(:not(.dso-primary,.dso-secondary,.dso-tertiary))[href^=\"mailto:\"]{background-image:var(--_dso-di-background-image, url(\"./di.svg#email-grasgroen\"))}a:where(:not(.dso-primary,.dso-secondary,.dso-tertiary))[href^=\"mailto:\"]:hover,a:where(:not(.dso-primary,.dso-secondary,.dso-tertiary))[href^=\"mailto:\"]:focus-visible{background-image:var(--_dso-di-background-image, url(\"./di.svg#email-scampi\"))}*,*::after,*::before{box-sizing:border-box}:host{display:block}:host([is-selectable]:not([is-selectable=false])) .dso-card-container{display:grid;grid-template-columns:1fr minmax(0, 100%)}:host([is-selectable]:not([is-selectable=false])) .dso-card-container .dso-card-heading,:host([is-selectable]:not([is-selectable=false])) .dso-card-container .dso-card-content{grid-column:2/-1}:host([is-selectable]:not([is-selectable=false])) .dso-card-container .dso-card-selectable{grid-row:span 2;margin-inline-end:8px}:host([active]:not([active=false])) .dso-card-container{background-color:#e5e5e5}.dso-card-container{padding-block:16px;padding-inline:16px;inline-size:100%;block-size:100%}.dso-card-container:has(.dso-card-heading a:is(:hover,:focus-visible)){background-color:#f2f2f2}.dso-card-container .dso-card-heading{align-items:center;display:flex}@media screen and (max-width: 480px){.dso-card-container .dso-card-heading{flex-wrap:wrap}}.dso-card-container .dso-card-heading+.dso-card-content{margin-block-start:8px}.heading-anchor{display:flex;gap:4px;color:#275937;text-decoration:none}.heading-anchor:hover{color:#275937;text-decoration:underline}.heading-anchor:visited{color:#275937}.heading-anchor dso-icon{flex-shrink:0}.heading-anchor .sr-only{position:absolute;inline-size:1px;block-size:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);border:0}::slotted([slot=selectable]){font-size:0 !important;--_dt-selectable-padding-inline-start:24px;--_dt-selectable-input-wrapper-margin-inline-start:-24px;--_dt-selectable-input-wrapper-padding-inline-start:24px}::slotted([slot=heading]){display:flex !important;align-items:center !important;margin-block-end:0 !important;margin-block-start:0 !important;font-size:1.125em !important;font-weight:700 !important;color:#275937 !important;line-height:1.25 !important}::slotted([slot=content]){--_dt-rich-content-margin-block:8px;--_dt-rich-content-margin-block-end:0;--_dt-rich-content-margin-block-start:0}::slotted([slot=interactions]){display:flex !important;justify-content:space-between !important;margin-inline-start:auto !important}@media screen and (max-width: 480px){::slotted([slot=interactions]){flex-basis:100% !important;margin-block-start:16px !important}}";
5
5
 
6
6
  const Card = class {
7
7
  constructor(hostRef) {
@@ -31,8 +31,8 @@ const Card = class {
31
31
  }
32
32
  render() {
33
33
  const isSelectable = this.selectableSlottedElement !== null;
34
- return (h(Host, { key: 'ae559eef542b45634fe3e60859befae34b6758f3', "is-selectable": isSelectable }, h("div", { key: 'dbdcd6202dd90afe6163746980568b1da93a1f6b', class: "dso-card-container" }, h("div", { key: 'a2d327a172087119f00e7ad915c376510c812301', class: "dso-card-selectable", hidden: !isSelectable }, h("slot", { key: 'e8362179580065599e3289f415b7713ce5fa314b', name: "selectable" })), h("div", { key: 'ef113d547acb93eb7ddb7d764d6068e0f6961e6c', class: "dso-card-heading" }, (this.mode === "extern" && (h("a", { key: 'c96225236d6860f3a49bec5699ff8dc1b38b28d6', href: this.href, class: "heading-anchor", target: "_blank", rel: "noopener noreferrer", onClick: (e) => this.clickEventHandler(e) }, h("slot", { key: 'a47b5fb10f0439e2c13f522ff8a14d62dabe8989', name: "heading" }), h("dso-icon", { key: '51186c704c9075ebc38a4dd0e3074d0ddf9f2d56', icon: "external-link" }), h("span", { key: '1273130ce694c0a4ae4247420ba07e69d00fa643', class: "sr-only" }, "(Opent andere website in nieuw tabblad)")))) ||
35
- (this.mode === "download" && (h("a", { key: '8b210a4f08569ec47fe39922d7cd9a5e7eacfe51', href: this.href, class: "heading-anchor", onClick: (e) => this.clickEventHandler(e) }, h("slot", { key: '530f82e059ab739fb981cfa5ab71924ad2c0ccc6', name: "heading" }), h("dso-icon", { key: 'ce5c62061feeda349651c41cdb548b6e4acb941c', icon: "download" })))) || (h("a", { key: 'cd96767ed626d0a2b96fa866d7676c080f8285e1', href: this.href, class: "heading-anchor", onClick: (e) => this.clickEventHandler(e) }, h("slot", { key: 'e044d0aff126c3c20827fa1a096b9452266e223f', name: "heading" }), h("dso-icon", { key: '4ea9e29a4b91016bed380b01f2811abc2102a4bb', icon: "chevron-right" }))), this.interactionsSlottedElement !== null && h("slot", { key: '5eb35ed45a897e399a924cd3fa1fd0f73fe08077', name: "interactions" })), h("div", { key: 'b316000aed0849ed15352958be227bc65efe6f48', class: "dso-card-content" }, h("slot", { key: '8c8c02740df6f4a19f4375f61a2dc8a706a74162', name: "content" })))));
34
+ return (h(Host, { key: '36c7e37e3565af414ebf091a9118b8c881ac18f7', "is-selectable": isSelectable }, h("div", { key: '69e0f342122bd4ac53ca18ea53ca9ea64c1802d1', class: "dso-card-container" }, h("div", { key: '880b4c8a61b841dfda3043f86f1b5ea37c742b44', class: "dso-card-selectable", hidden: !isSelectable }, h("slot", { key: '985861bac731aecc3dc914a32db5bce35fc18da0', name: "selectable" })), h("div", { key: '3a77b0bcd5892f7e4a8d2e32c14d0d2eb7024144', class: "dso-card-heading" }, (this.mode === "extern" && (h("a", { key: '756424c1507d093386d91ebd1b38f03f415071ac', href: this.href, class: "heading-anchor", target: "_blank", rel: "noopener noreferrer", onClick: (e) => this.clickEventHandler(e) }, h("slot", { key: '052ff25dc558d89c3e674fb2efa4cfd9c83e385f', name: "heading" }), h("dso-icon", { key: '29f7e56fcdb75c2e4aaf2706e86197108239f1b3', icon: "external-link" }), h("span", { key: '1f8cff9385a86bd2fc4b20ee61f53019051d434d', class: "sr-only" }, "(Opent andere website in nieuw tabblad)")))) ||
35
+ (this.mode === "download" && (h("a", { key: '3a18f6a6570b8967f16526503e2a23b8eea1937e', href: this.href, class: "heading-anchor", onClick: (e) => this.clickEventHandler(e) }, h("slot", { key: 'c50da6e83a090f725853154d3cbcd46b159ce893', name: "heading" }), h("dso-icon", { key: '06f7c304bffeab5264d2efb08490f00fe5ddf970', icon: "download" })))) || (h("a", { key: '17359530043bde8ca2c8c31a541667da26241c26', href: this.href, class: "heading-anchor", onClick: (e) => this.clickEventHandler(e) }, h("slot", { key: 'd6e44c271ee256b1f4ab024836854077dd7802ed', name: "heading" }), h("dso-icon", { key: '0d3445bd395ad3df910a42e93cdd3da375315fc9', icon: "chevron-right" }))), this.interactionsSlottedElement !== null && h("slot", { key: '916c08c993eb995d6f572d0d3ae03eb69d17b755', name: "interactions" })), h("div", { key: '464f37a71643a16f2c63aa7ffaa9b0dda9b331fc', class: "dso-card-content" }, h("slot", { key: 'd05e86980f31e1af748768f5b8791fad464cc559', name: "content" })))));
36
36
  }
37
37
  get host() { return getElement(this); }
38
38
  };
@@ -1 +1 @@
1
- {"version":3,"file":"dso-card.entry.js","sources":["src/components/card/card.scss?tag=dso-card&encapsulation=shadow","src/components/card/card.tsx"],"sourcesContent":["@use \"~dso-toolkit/src/utilities\";\r\n@use \"~dso-toolkit/src/variables/units\";\r\n@use \"~dso-toolkit/src/variables/colors\";\r\n@use \"~dso-toolkit/src/components/card\";\r\n@use \"~dso-toolkit/src/components/link/link\";\r\n@use \"~dso-toolkit/src/variables/media-query-breakpoints\";\r\n\r\n@include utilities.box-sizing();\r\n\r\n:host {\r\n display: block;\r\n}\r\n\r\n:host([is-selectable]:not([is-selectable=\"false\"])) {\r\n .dso-card-container {\r\n display: grid;\r\n grid-template-columns: 1fr minmax(0, 100%);\r\n\r\n .dso-card-heading,\r\n .dso-card-content {\r\n grid-column: 2 /-1;\r\n }\r\n\r\n .dso-card-selectable {\r\n grid-row: span 2;\r\n\r\n margin-inline-end: units.$u1;\r\n }\r\n }\r\n}\r\n\r\n:host([active]:not([active=\"false\"])) {\r\n .dso-card-container {\r\n background-color: card.$background-color-active;\r\n }\r\n}\r\n\r\n.dso-card-container {\r\n padding-block: units.$u2;\r\n padding-inline: units.$u2;\r\n inline-size: 100%;\r\n block-size: 100%;\r\n\r\n &:has(.dso-card-heading a:is(:hover, :focus-visible)) {\r\n background-color: card.$background-color-hover;\r\n }\r\n\r\n .dso-card-heading {\r\n align-items: center;\r\n display: flex;\r\n\r\n @media screen and (max-width: media-query-breakpoints.$screen-xs-min) {\r\n flex-wrap: wrap;\r\n }\r\n\r\n + .dso-card-content {\r\n margin-block-start: units.$u1;\r\n }\r\n }\r\n}\r\n\r\n.heading-anchor {\r\n display: flex;\r\n gap: units.$u1 * 0.5;\r\n\r\n color: card.$heading-anchor-color;\r\n text-decoration: none;\r\n\r\n &:hover {\r\n color: card.$heading-anchor-hover-color;\r\n text-decoration: underline;\r\n }\r\n\r\n &:visited {\r\n color: card.$heading-anchor-color;\r\n }\r\n\r\n dso-icon {\r\n flex-shrink: 0;\r\n }\r\n\r\n .sr-only {\r\n @include utilities.sr-only();\r\n }\r\n}\r\n\r\n::slotted([slot=\"selectable\"]) {\r\n font-size: 0 !important;\r\n --_dt-selectable-padding-inline-start: #{units.$u3};\r\n --_dt-selectable-input-wrapper-margin-inline-start: #{-(units.$u3)};\r\n --_dt-selectable-input-wrapper-padding-inline-start: #{units.$u3};\r\n}\r\n\r\n::slotted([slot=\"heading\"]) {\r\n display: flex !important;\r\n align-items: center !important;\r\n\r\n margin-block-end: 0 !important;\r\n margin-block-start: 0 !important;\r\n\r\n font-size: 1.125em !important;\r\n font-weight: 700 !important;\r\n color: colors.$bosgroen !important;\r\n line-height: 1.25 !important;\r\n}\r\n\r\n::slotted([slot=\"content\"]) {\r\n --_dt-rich-content-margin-block: #{units.$u1};\r\n --_dt-rich-content-margin-block-end: 0;\r\n --_dt-rich-content-margin-block-start: 0;\r\n}\r\n\r\n::slotted([slot=\"interactions\"]) {\r\n display: flex !important;\r\n justify-content: space-between !important;\r\n margin-inline-start: auto !important;\r\n\r\n @media screen and (max-width: media-query-breakpoints.$screen-xs-min) {\r\n flex-basis: 100% !important;\r\n margin-block-start: units.$u2 !important;\r\n }\r\n}\r\n","import { Component, ComponentInterface, Element, Event, EventEmitter, Host, Prop, forceUpdate, h } from \"@stencil/core\";\r\n\r\nimport { isModifiedEvent } from \"../../utils/is-modified-event\";\r\n\r\nimport { CardClickEvent } from \"./card.interfaces\";\r\n\r\n/**\r\n * @slot selectable - An optional slot to place a `Selectable` in.\r\n * @slot heading - A slot to place the title of the card in.\r\n * @slot interactions - An optional slot for one or more `Button`s, `Label`s, `Toggletip`s or `SlideToggle`s.\r\n * @slot content - An optional slot to place `Rich Content` in.\r\n */\r\n@Component({\r\n tag: \"dso-card\",\r\n styleUrl: \"card.scss\",\r\n shadow: true,\r\n})\r\nexport class Card implements ComponentInterface {\r\n @Element()\r\n host!: HTMLDsoCardElement;\r\n\r\n /**\r\n * The URL to which the Card heading links.\r\n */\r\n @Prop({ reflect: true })\r\n href!: string | undefined;\r\n\r\n /**\r\n * Display the link as an external link or a download link\r\n * - \"download\"\r\n * - \"extern\"\r\n */\r\n @Prop({ reflect: true })\r\n mode?: string;\r\n\r\n /**\r\n * Makes the Card active.\r\n */\r\n @Prop({ reflect: true })\r\n active?: boolean;\r\n\r\n /**\r\n * Emitted when the Card heading is clicked.\r\n */\r\n @Event()\r\n dsoCardClick!: EventEmitter<CardClickEvent>;\r\n\r\n private mutationObserver?: MutationObserver;\r\n\r\n connectedCallback(): void {\r\n this.mutationObserver = new MutationObserver(() => forceUpdate(this.host));\r\n\r\n this.mutationObserver.observe(this.host, { attributes: true, childList: true });\r\n }\r\n\r\n disconnectedCallback(): void {\r\n this.mutationObserver?.disconnect();\r\n\r\n delete this.mutationObserver;\r\n }\r\n\r\n private clickEventHandler(e: MouseEvent) {\r\n if (!(e.target instanceof HTMLElement) || !this.href) {\r\n return;\r\n }\r\n\r\n return this.dsoCardClick.emit({ originalEvent: e, isModifiedEvent: isModifiedEvent(e) });\r\n }\r\n\r\n get selectableSlottedElement() {\r\n return this.host.querySelector(\"[slot='selectable']\");\r\n }\r\n\r\n get interactionsSlottedElement() {\r\n return this.host.querySelector(\"[slot='interactions']\");\r\n }\r\n\r\n render() {\r\n const isSelectable = this.selectableSlottedElement !== null;\r\n\r\n return (\r\n <Host is-selectable={isSelectable}>\r\n <div class=\"dso-card-container\">\r\n <div class=\"dso-card-selectable\" hidden={!isSelectable}>\r\n <slot name=\"selectable\" />\r\n </div>\r\n <div class=\"dso-card-heading\">\r\n {(this.mode === \"extern\" && (\r\n <a\r\n href={this.href}\r\n class=\"heading-anchor\"\r\n target=\"_blank\"\r\n rel=\"noopener noreferrer\"\r\n onClick={(e) => this.clickEventHandler(e)}\r\n >\r\n <slot name=\"heading\" />\r\n <dso-icon icon=\"external-link\"></dso-icon>\r\n <span class=\"sr-only\">(Opent andere website in nieuw tabblad)</span>\r\n </a>\r\n )) ||\r\n (this.mode === \"download\" && (\r\n <a href={this.href} class=\"heading-anchor\" onClick={(e) => this.clickEventHandler(e)}>\r\n <slot name=\"heading\" />\r\n <dso-icon icon=\"download\"></dso-icon>\r\n </a>\r\n )) || (\r\n <a href={this.href} class=\"heading-anchor\" onClick={(e) => this.clickEventHandler(e)}>\r\n <slot name=\"heading\" />\r\n <dso-icon icon=\"chevron-right\"></dso-icon>\r\n </a>\r\n )}\r\n {this.interactionsSlottedElement !== null && <slot name=\"interactions\" />}\r\n </div>\r\n <div class=\"dso-card-content\">\r\n <slot name=\"content\" />\r\n </div>\r\n </div>\r\n </Host>\r\n );\r\n }\r\n}\r\n"],"names":[],"mappings":";;;AAAA,MAAM,OAAO,GAAG,k/JAAk/J;;MCiBr/J,IAAI,GAAA,MAAA;;;;;IAgCf,iBAAiB,GAAA;AACf,QAAA,IAAI,CAAC,gBAAgB,GAAG,IAAI,gBAAgB,CAAC,MAAM,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAE1E,QAAA,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;;IAGjF,oBAAoB,GAAA;;QAClB,CAAA,EAAA,GAAA,IAAI,CAAC,gBAAgB,MAAE,IAAA,IAAA,EAAA,KAAA,MAAA,GAAA,MAAA,GAAA,EAAA,CAAA,UAAU,EAAE;QAEnC,OAAO,IAAI,CAAC,gBAAgB;;AAGtB,IAAA,iBAAiB,CAAC,CAAa,EAAA;AACrC,QAAA,IAAI,EAAE,CAAC,CAAC,MAAM,YAAY,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE;YACpD;;AAGF,QAAA,OAAO,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,aAAa,EAAE,CAAC,EAAE,eAAe,EAAE,eAAe,CAAC,CAAC,CAAC,EAAE,CAAC;;AAG1F,IAAA,IAAI,wBAAwB,GAAA;QAC1B,OAAO,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,qBAAqB,CAAC;;AAGvD,IAAA,IAAI,0BAA0B,GAAA;QAC5B,OAAO,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,uBAAuB,CAAC;;IAGzD,MAAM,GAAA;AACJ,QAAA,MAAM,YAAY,GAAG,IAAI,CAAC,wBAAwB,KAAK,IAAI;AAE3D,QAAA,QACE,CAAA,CAAC,IAAI,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,eAAA,EAAgB,YAAY,EAAA,EAC/B,CAAK,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAC,oBAAoB,EAAA,EAC7B,CAAA,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAK,KAAK,EAAC,qBAAqB,EAAC,MAAM,EAAE,CAAC,YAAY,EAAA,EACpD,CAAA,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAM,IAAI,EAAC,YAAY,EAAA,CAAG,CACtB,EACN,CAAK,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAC,kBAAkB,EAAA,EAC1B,CAAC,IAAI,CAAC,IAAI,KAAK,QAAQ,KACtB,CAAA,CAAA,GAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EACE,IAAI,EAAE,IAAI,CAAC,IAAI,EACf,KAAK,EAAC,gBAAgB,EACtB,MAAM,EAAC,QAAQ,EACf,GAAG,EAAC,qBAAqB,EACzB,OAAO,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC,EAAA,EAEzC,CAAM,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,IAAI,EAAC,SAAS,EAAG,CAAA,EACvB,CAAU,CAAA,UAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,IAAI,EAAC,eAAe,EAAY,CAAA,EAC1C,CAAA,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAM,KAAK,EAAC,SAAS,EAA+C,EAAA,yCAAA,CAAA,CAClE,CACL;aACE,IAAI,CAAC,IAAI,KAAK,UAAU,KACvB,CAAA,CAAA,GAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAG,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,KAAK,EAAC,gBAAgB,EAAC,OAAO,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC,EAAA,EAClF,CAAM,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,IAAI,EAAC,SAAS,EAAG,CAAA,EACvB,CAAA,CAAA,UAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAU,IAAI,EAAC,UAAU,EAAA,CAAY,CACnC,CACL,CAAC,KACA,CAAG,CAAA,GAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,KAAK,EAAC,gBAAgB,EAAC,OAAO,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC,EAAA,EAClF,CAAM,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,IAAI,EAAC,SAAS,EAAG,CAAA,EACvB,CAAA,CAAA,UAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAU,IAAI,EAAC,eAAe,EAAA,CAAY,CACxC,CACL,EACF,IAAI,CAAC,0BAA0B,KAAK,IAAI,IAAI,6DAAM,IAAI,EAAC,cAAc,EAAA,CAAG,CACrE,EACN,CAAK,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAC,kBAAkB,EAAA,EAC3B,CAAM,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,IAAI,EAAC,SAAS,EAAA,CAAG,CACnB,CACF,CACD;;;;;;;;"}
1
+ {"version":3,"file":"dso-card.entry.js","sources":["src/components/card/card.scss?tag=dso-card&encapsulation=shadow","src/components/card/card.tsx"],"sourcesContent":["@use \"~dso-toolkit/src/utilities\";\r\n@use \"~dso-toolkit/src/variables/units\";\r\n@use \"~dso-toolkit/src/variables/colors\";\r\n@use \"~dso-toolkit/src/components/card\";\r\n@use \"~dso-toolkit/src/components/link/link\";\r\n@use \"~dso-toolkit/src/variables/media-query-breakpoints\";\r\n\r\n@include utilities.box-sizing();\r\n\r\n:host {\r\n display: block;\r\n}\r\n\r\n:host([is-selectable]:not([is-selectable=\"false\"])) {\r\n .dso-card-container {\r\n display: grid;\r\n grid-template-columns: 1fr minmax(0, 100%);\r\n\r\n .dso-card-heading,\r\n .dso-card-content {\r\n grid-column: 2 /-1;\r\n }\r\n\r\n .dso-card-selectable {\r\n grid-row: span 2;\r\n\r\n margin-inline-end: units.$u1;\r\n }\r\n }\r\n}\r\n\r\n:host([active]:not([active=\"false\"])) {\r\n .dso-card-container {\r\n background-color: card.$background-color-active;\r\n }\r\n}\r\n\r\n.dso-card-container {\r\n padding-block: units.$u2;\r\n padding-inline: units.$u2;\r\n inline-size: 100%;\r\n block-size: 100%;\r\n\r\n &:has(.dso-card-heading a:is(:hover, :focus-visible)) {\r\n background-color: card.$background-color-hover;\r\n }\r\n\r\n .dso-card-heading {\r\n align-items: center;\r\n display: flex;\r\n\r\n @media screen and (max-width: media-query-breakpoints.$screen-xs-min) {\r\n flex-wrap: wrap;\r\n }\r\n\r\n + .dso-card-content {\r\n margin-block-start: units.$u1;\r\n }\r\n }\r\n}\r\n\r\n.heading-anchor {\r\n display: flex;\r\n gap: units.$u1 * 0.5;\r\n\r\n color: card.$heading-anchor-color;\r\n text-decoration: none;\r\n\r\n &:hover {\r\n color: card.$heading-anchor-hover-color;\r\n text-decoration: underline;\r\n }\r\n\r\n &:visited {\r\n color: card.$heading-anchor-color;\r\n }\r\n\r\n dso-icon {\r\n flex-shrink: 0;\r\n }\r\n\r\n .sr-only {\r\n @include utilities.sr-only();\r\n }\r\n}\r\n\r\n::slotted([slot=\"selectable\"]) {\r\n font-size: 0 !important;\r\n --_dt-selectable-padding-inline-start: #{units.$u3};\r\n --_dt-selectable-input-wrapper-margin-inline-start: #{-(units.$u3)};\r\n --_dt-selectable-input-wrapper-padding-inline-start: #{units.$u3};\r\n}\r\n\r\n::slotted([slot=\"heading\"]) {\r\n display: flex !important;\r\n align-items: center !important;\r\n\r\n margin-block-end: 0 !important;\r\n margin-block-start: 0 !important;\r\n\r\n font-size: 1.125em !important;\r\n font-weight: 700 !important;\r\n color: colors.$bosgroen !important;\r\n line-height: 1.25 !important;\r\n}\r\n\r\n::slotted([slot=\"content\"]) {\r\n --_dt-rich-content-margin-block: #{units.$u1};\r\n --_dt-rich-content-margin-block-end: 0;\r\n --_dt-rich-content-margin-block-start: 0;\r\n}\r\n\r\n::slotted([slot=\"interactions\"]) {\r\n display: flex !important;\r\n justify-content: space-between !important;\r\n margin-inline-start: auto !important;\r\n\r\n @media screen and (max-width: media-query-breakpoints.$screen-xs-min) {\r\n flex-basis: 100% !important;\r\n margin-block-start: units.$u2 !important;\r\n }\r\n}\r\n","import { Component, ComponentInterface, Element, Event, EventEmitter, Host, Prop, forceUpdate, h } from \"@stencil/core\";\r\n\r\nimport { isModifiedEvent } from \"../../utils/is-modified-event\";\r\n\r\nimport { CardClickEvent } from \"./card.interfaces\";\r\n\r\n/**\r\n * @slot selectable - An optional slot to place a `Selectable` in.\r\n * @slot heading - A slot to place the title of the card in.\r\n * @slot interactions - An optional slot for one or more `Button`s, `Label`s, `Toggletip`s or `SlideToggle`s.\r\n * @slot content - An optional slot to place `Rich Content` in.\r\n */\r\n@Component({\r\n tag: \"dso-card\",\r\n styleUrl: \"card.scss\",\r\n shadow: true,\r\n})\r\nexport class Card implements ComponentInterface {\r\n @Element()\r\n host!: HTMLDsoCardElement;\r\n\r\n /**\r\n * The URL to which the Card heading links.\r\n */\r\n @Prop({ reflect: true })\r\n href!: string | undefined;\r\n\r\n /**\r\n * Display the link as an external link or a download link\r\n * - \"download\"\r\n * - \"extern\"\r\n */\r\n @Prop({ reflect: true })\r\n mode?: string;\r\n\r\n /**\r\n * Makes the Card active.\r\n */\r\n @Prop({ reflect: true })\r\n active?: boolean;\r\n\r\n /**\r\n * Emitted when the Card heading is clicked.\r\n */\r\n @Event()\r\n dsoCardClick!: EventEmitter<CardClickEvent>;\r\n\r\n private mutationObserver?: MutationObserver;\r\n\r\n connectedCallback(): void {\r\n this.mutationObserver = new MutationObserver(() => forceUpdate(this.host));\r\n\r\n this.mutationObserver.observe(this.host, { attributes: true, childList: true });\r\n }\r\n\r\n disconnectedCallback(): void {\r\n this.mutationObserver?.disconnect();\r\n\r\n delete this.mutationObserver;\r\n }\r\n\r\n private clickEventHandler(e: MouseEvent) {\r\n if (!(e.target instanceof HTMLElement) || !this.href) {\r\n return;\r\n }\r\n\r\n return this.dsoCardClick.emit({ originalEvent: e, isModifiedEvent: isModifiedEvent(e) });\r\n }\r\n\r\n get selectableSlottedElement() {\r\n return this.host.querySelector(\"[slot='selectable']\");\r\n }\r\n\r\n get interactionsSlottedElement() {\r\n return this.host.querySelector(\"[slot='interactions']\");\r\n }\r\n\r\n render() {\r\n const isSelectable = this.selectableSlottedElement !== null;\r\n\r\n return (\r\n <Host is-selectable={isSelectable}>\r\n <div class=\"dso-card-container\">\r\n <div class=\"dso-card-selectable\" hidden={!isSelectable}>\r\n <slot name=\"selectable\" />\r\n </div>\r\n <div class=\"dso-card-heading\">\r\n {(this.mode === \"extern\" && (\r\n <a\r\n href={this.href}\r\n class=\"heading-anchor\"\r\n target=\"_blank\"\r\n rel=\"noopener noreferrer\"\r\n onClick={(e) => this.clickEventHandler(e)}\r\n >\r\n <slot name=\"heading\" />\r\n <dso-icon icon=\"external-link\"></dso-icon>\r\n <span class=\"sr-only\">(Opent andere website in nieuw tabblad)</span>\r\n </a>\r\n )) ||\r\n (this.mode === \"download\" && (\r\n <a href={this.href} class=\"heading-anchor\" onClick={(e) => this.clickEventHandler(e)}>\r\n <slot name=\"heading\" />\r\n <dso-icon icon=\"download\"></dso-icon>\r\n </a>\r\n )) || (\r\n <a href={this.href} class=\"heading-anchor\" onClick={(e) => this.clickEventHandler(e)}>\r\n <slot name=\"heading\" />\r\n <dso-icon icon=\"chevron-right\"></dso-icon>\r\n </a>\r\n )}\r\n {this.interactionsSlottedElement !== null && <slot name=\"interactions\" />}\r\n </div>\r\n <div class=\"dso-card-content\">\r\n <slot name=\"content\" />\r\n </div>\r\n </div>\r\n </Host>\r\n );\r\n }\r\n}\r\n"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { r as registerInstance, h } from './index-C-b4jsbt.js';
1
+ import { r as registerInstance, h } from './index-DxWmN7gh.js';
2
2
 
3
3
  const contactInformationCss = "@charset \"UTF-8\";:host{--_dso-di-background-image:none;--_dso-link-icon-padding-inline-start:0;--_dso-link-icon-padding-inline-end:0;display:block}*,*::after,*::before{box-sizing:border-box}::slotted([slot=anchor-items]),::slotted([slot=info-items]){display:flex !important;flex-wrap:wrap !important;gap:16px 24px !important;padding-inline-start:0 !important;list-style:none !important}@media screen and (max-width: 991px){::slotted([slot=anchor-items]),::slotted([slot=info-items]){flex-direction:column !important;gap:16px !important}}::slotted([slot=info-items]){margin-block-end:0 !important}::slotted([slot=heading]){margin-block:0 16px !important;font-size:16px !important}";
4
4
 
@@ -7,7 +7,7 @@ const ContactInformation = class {
7
7
  registerInstance(this, hostRef);
8
8
  }
9
9
  render() {
10
- return (h("div", { key: '4e473b3cea53cc722e8369c087f9a9aa85fa0ee0', class: "dso-contact-information" }, h("slot", { key: '69b4bd69e9953ce79210348395499e4dd6fa8b73', name: "heading" }), h("slot", { key: 'a4cd6dc9a59a4c8cd6aa32a634b94cf03b2de4bc', name: "anchor-items" }), h("slot", { key: 'c8e026e16f75d5d877efcbfd8150ab83b6e0092d', name: "info-items" })));
10
+ return (h("div", { key: 'a511c3b7e61371a74f3e55c0a71abaf56768cb52', class: "dso-contact-information" }, h("slot", { key: '98fae6e8614de0c46fb8fb5d55e77f5807dc4231', name: "heading" }), h("slot", { key: 'b84cd2bcc9a9874110d302b16ece15d37ab35896', name: "anchor-items" }), h("slot", { key: '32bae418af1a46f538c8cb4dde38e347f99cf7b1', name: "info-items" })));
11
11
  }
12
12
  };
13
13
  ContactInformation.style = contactInformationCss;
@@ -1,4 +1,4 @@
1
- import { h, r as registerInstance, c as createEvent, H as Host, g as getElement } from './index-C-b4jsbt.js';
1
+ import { h, r as registerInstance, c as createEvent, H as Host, g as getElement } from './index-DxWmN7gh.js';
2
2
  import { c as createIdentifier } from './create-identifier-DSyv-znO.js';
3
3
 
4
4
  const localization = {
@@ -711,14 +711,14 @@ const DsoDatePickerLegacy = class {
711
711
  if (maxDate) {
712
712
  maxYear = Math.min(maxYear, maxDate.getFullYear());
713
713
  }
714
- return (h(Host, { key: '957cb5ecd6d41aa4080fdc413ecd3ec720e6f2f5' }, h("div", { key: '7a6fd28aca5e525a44db67316ea232111dd78d83', class: { "dso-date": true, "dso-visible": this.visible } }, h("div", { key: '738c2f5561053e525732b03db48f767018186df1', class: "dso-date__input-wrapper" }, h("input", { key: 'be60893ee6894c6872f4a8b11e1a5329592a9cb3', class: "dso-date__input", value: this.value, placeholder: this.localization.placeholder, id: this.identifier, disabled: this.disabled, role: (_a = this.role) !== null && _a !== void 0 ? _a : undefined, required: this.required ? true : undefined, "aria-autocomplete": "none", "aria-invalid": (_b = this.invalid) === null || _b === void 0 ? void 0 : _b.toString(), "aria-describedby": this.describedBy, onInput: this.handleInputChange, onFocus: this.handleFocus, onBlur: this.handleBlur, onKeyUp: this.handleKeyUp, onKeyDown: this.handleKeyDown, autoComplete: "off", ref: (element) => (this.datePickerLegacyInput = element) }), h("button", { key: '64a1581be9c55c14278206fc8bec3516fe9588c3', type: "button", class: "dso-date__toggle", onClick: this.toggleOpen, disabled: this.disabled, ref: (element) => (this.datePickerLegacyButton = element) }, h("span", { key: '0abea68907579095ed9a0f30cd3fe66f1e99adf7', class: "dso-date__toggle-icon" }, h("dso-icon", { key: '80acee7a48d20a2314a8bbfeba478ffe49bdc2f1', icon: "calendar" })), h("span", { key: 'e8734da932112b02a3d40135b9a0ae7c53762c0a', class: "dso-date__vhidden" }, this.localization.buttonLabel, formattedDate && (h("span", { key: 'd64fb70897d08a11c6ab4130686128f36ede3635' }, ", ", this.localization.selectedDateMessage, " ", formattedDate))))), h("div", { key: 'eb265922641b7bbb69ffae331ea25663246865e7', class: {
714
+ return (h(Host, { key: '0b1ec6d7508b3bd54868d792da349f56723c49f7' }, h("div", { key: '3760db6ad5de67e53d9b663f21d9fa7c19c0c47a', class: { "dso-date": true, "dso-visible": this.visible } }, h("div", { key: 'f757525e60df0cd5566dba5c188cb9e6483f057d', class: "dso-date__input-wrapper" }, h("input", { key: 'c8ef8c3fb2524c1b996d0eedd5061b4c9b406738', class: "dso-date__input", value: this.value, placeholder: this.localization.placeholder, id: this.identifier, disabled: this.disabled, role: (_a = this.role) !== null && _a !== void 0 ? _a : undefined, required: this.required ? true : undefined, "aria-autocomplete": "none", "aria-invalid": (_b = this.invalid) === null || _b === void 0 ? void 0 : _b.toString(), "aria-describedby": this.describedBy, onInput: this.handleInputChange, onFocus: this.handleFocus, onBlur: this.handleBlur, onKeyUp: this.handleKeyUp, onKeyDown: this.handleKeyDown, autoComplete: "off", ref: (element) => (this.datePickerLegacyInput = element) }), h("button", { key: '0b43d6689f0e9a450b3f5ea98bb7e61739552847', type: "button", class: "dso-date__toggle", onClick: this.toggleOpen, disabled: this.disabled, ref: (element) => (this.datePickerLegacyButton = element) }, h("span", { key: 'fd6f7ae09f4f28fc80f5e59022080a4340cd57ff', class: "dso-date__toggle-icon" }, h("dso-icon", { key: 'd956ec013af3fa9969e159093bdc9e83da2040cd', icon: "calendar" })), h("span", { key: '5fb48f01acb482324f576afb50884dfc8bf8ac5c', class: "dso-date__vhidden" }, this.localization.buttonLabel, formattedDate && (h("span", { key: 'a9e593f6baedfd379febefd8b3259433314b7a03' }, ", ", this.localization.selectedDateMessage, " ", formattedDate))))), h("div", { key: '58475a8e3df7056be4486e40c566d8f589bfc4b9', class: {
715
715
  "dso-date__dialog": true,
716
716
  "is-left": this.direction === "left",
717
717
  "is-active": this.open,
718
- }, role: "dialog", "aria-modal": "true", "aria-hidden": this.open ? "false" : "true", "aria-labelledby": this.dialogLabelId, onTouchMove: this.handleTouchMove, onTouchStart: this.handleTouchStart, onTouchEnd: this.handleTouchEnd }, h("div", { key: '0652c8515f40627399a4d2c8e572188d4a272866', class: "dso-date__dialog-content", onKeyDown: this.handleEscKey }, h("div", { key: 'ffd05e410fb85956e9157325b55c50f6c13ffd2f', class: "dso-date__vhidden dso-date__instructions", "aria-live": "polite" }, this.localization.keyboardInstruction), h("div", { key: 'cba925b52839e002c6725e213e5cd1e4bb9527cc', class: "dso-date__mobile", onFocusin: this.disableActiveFocus }, h("label", { key: '9e5c185d36e1b36c5f434e2f4ba84f9fe05f34ab', class: "dso-date__mobile-heading" }, this.localization.calendarHeading), h("button", { key: 'cb2d54a595e5937dbdfa2493c2a78f3232a694fe', class: "dso-date__close", ref: (element) => (this.firstFocusableElement = element), onKeyDown: this.handleFirstFocusableKeydown, onClick: () => this.hide(), type: "button" }, h("dso-icon", { key: 'caa97ca69898a421dc2be65d0b72d506784b46b3', icon: "times" }), h("span", { key: '53c8e6ed325069aa3f469d2c882749b1a7c6a73a', class: "dso-date__vhidden" }, this.localization.closeLabel))), h("div", { key: '01a8aff75b3f2760466e9a8d1a98183cfc54c5f6', class: "dso-date__header", onFocusin: this.disableActiveFocus }, h("div", { key: '014941383091917d6db3b4ef61697feb50f9ca89' }, h("h2", { key: '5bc5c6226ca3e62965d44cb7213c1b3b595d1fed', id: this.dialogLabelId, class: "dso-date__vhidden", "aria-live": "polite" }, this.localization.monthNames[focusedMonth], " ", this.focusedDay.getFullYear()), h("label", { key: '4a8cfec86a434dee22a6e692c3a221f649f2b165', htmlFor: this.monthSelectId, class: "dso-date__vhidden" }, this.localization.monthSelectLabel), h("div", { key: 'e0ccf6cda124982e9193f882300d3883a88979ba', class: "dso-date__select" }, h("select", { key: 'a98658e03f28e9e82224b69d754df240183c2cd9', id: this.monthSelectId, class: "dso-date__select--month", ref: (element) => (this.monthSelectNode = element), onChange: this.handleMonthSelect }, monthRange(this.localization, selectedYear, minDate, maxDate).map((month) => {
718
+ }, role: "dialog", "aria-modal": "true", "aria-hidden": this.open ? "false" : "true", "aria-labelledby": this.dialogLabelId, onTouchMove: this.handleTouchMove, onTouchStart: this.handleTouchStart, onTouchEnd: this.handleTouchEnd }, h("div", { key: 'b9aaf2ee2e85356ebbb97c81ec6d2fc60d433aba', class: "dso-date__dialog-content", onKeyDown: this.handleEscKey }, h("div", { key: 'd5b24a9d0967a9389486c6d2d62c7df973092360', class: "dso-date__vhidden dso-date__instructions", "aria-live": "polite" }, this.localization.keyboardInstruction), h("div", { key: 'a7fa892c6141fb05cd9d5e25941b58d3f33103d8', class: "dso-date__mobile", onFocusin: this.disableActiveFocus }, h("label", { key: '9ee19bb1e9323ded05446ea3f3e6a52817a32302', class: "dso-date__mobile-heading" }, this.localization.calendarHeading), h("button", { key: '0b0f38cf720508e49a03b3336d22b484db8db0a9', class: "dso-date__close", ref: (element) => (this.firstFocusableElement = element), onKeyDown: this.handleFirstFocusableKeydown, onClick: () => this.hide(), type: "button" }, h("dso-icon", { key: '55688d9e29a9d0e703cf9b05e064670f0eba97ae', icon: "times" }), h("span", { key: 'c851850368265c521ae301d7c9e0c753157d5739', class: "dso-date__vhidden" }, this.localization.closeLabel))), h("div", { key: '0e768e06ffca70d595b49199cc43394f893f1936', class: "dso-date__header", onFocusin: this.disableActiveFocus }, h("div", { key: '650fce41916c3ddf60c5148d58300846cbc41bc2' }, h("h2", { key: '93e6938990982c205dbf34105dcfb7beeedfe5fb', id: this.dialogLabelId, class: "dso-date__vhidden", "aria-live": "polite" }, this.localization.monthNames[focusedMonth], " ", this.focusedDay.getFullYear()), h("label", { key: 'e956e5066fbd5c56f33cdcacd9f4530a90bd1967', htmlFor: this.monthSelectId, class: "dso-date__vhidden" }, this.localization.monthSelectLabel), h("div", { key: 'a4c988914df53fd0d0af4c808ee1094a72c15bdc', class: "dso-date__select" }, h("select", { key: 'ab5b9dd4f543d13278b4dd65edfae89c00339cc9', id: this.monthSelectId, class: "dso-date__select--month", ref: (element) => (this.monthSelectNode = element), onChange: this.handleMonthSelect }, monthRange(this.localization, selectedYear, minDate, maxDate).map((month) => {
719
719
  const index = this.localization.monthNames.indexOf(month);
720
720
  return (h("option", { key: month, value: index, selected: index === focusedMonth }, month));
721
- })), h("div", { key: '2c430302075f436442d64aad4804936d7f47d417', class: "dso-date__select-label", "aria-hidden": "true" }, h("span", { key: 'c53a91bf0f52839fa4aa87c0ef9e2dacbe0df8bb' }, this.localization.monthNamesShort[focusedMonth]), h("dso-icon", { key: '19b52d0d3f0c1a71402515b97e7d13f98f12a105', icon: "chevron-down" }))), h("label", { key: '246fd6c2fb5c7771c139d5786346e12ef8693c3d', htmlFor: this.yearSelectId, class: "dso-date__vhidden" }, this.localization.yearSelectLabel), h("div", { key: '9b2583586116004567611ecfac87d6a98261c157', class: "dso-date__select" }, h("select", { key: '06b592e2eb87d41c85ee5bf4efaed35b51144fd8', id: this.yearSelectId, class: "dso-date__select--year", onChange: this.handleYearSelect }, range(minYear, maxYear).map((year) => (h("option", { key: year, selected: year === focusedYear }, year)))), h("div", { key: 'ef7b607dfc1e493077d79aeffe3dc687b3991e28', class: "dso-date__select-label", "aria-hidden": "true" }, h("span", { key: '36d1dec13260dbc32feaf4c9875bdc5e9ca68118' }, this.focusedDay.getFullYear()), h("dso-icon", { key: '34e5fba7b8152bf66b65eecc7ca6469ac09bec34', icon: "chevron-down" })))), h("div", { key: 'b075a1c3c963e89f7aa7708834e9a697fe3aedd9', class: "dso-date__nav" }, h("button", { key: 'ac333335f9a4a81b659d5ca787a594bcc227314b', class: "dso-date__prev", onClick: this.handlePreviousMonthClick, disabled: prevMonthDisabled, type: "button" }, h("dso-icon", { key: '3802f14d7336beabcbd2e22d76c605d6a1610ae3', icon: "chevron-left" }), h("span", { key: 'fd06635f86a685a0e25fa19f911151dc98017cd0', class: "dso-date__vhidden" }, this.localization.prevMonthLabel)), h("button", { key: 'a6c10604bd06923d4230452a629c4a585651a6e0', class: "dso-date__next", onClick: this.handleNextMonthClick, disabled: nextMonthDisabled, type: "button" }, h("dso-icon", { key: '1d43e6494d836b954eafd7b3d22efe1183e06526', icon: "chevron-right" }), h("span", { key: '4b880ddc1b3dbf49171b4e71ad6949296ce90d91', class: "dso-date__vhidden" }, this.localization.nextMonthLabel)))), h(DatePickerLegacyMonth, { key: '54c119f2a06e35cd6143994eca4a718a917f6638', selectedDate: valueAsDate, focusedDate: this.focusedDay, onDateSelect: this.handleDaySelect, onKeyboardNavigation: this.handleKeyboardNavigation, labelledById: this.dialogLabelId, localization: this.localization, firstDayOfWeek: this.firstDayOfWeek, focusedDayRef: this.processFocusedDayNode, min: minDate, max: maxDate }))))));
721
+ })), h("div", { key: '55a1a117e095115fc80403ca836df2e69951f745', class: "dso-date__select-label", "aria-hidden": "true" }, h("span", { key: 'd18823683d95dae481d4da151cd45637918c6e46' }, this.localization.monthNamesShort[focusedMonth]), h("dso-icon", { key: '087bdd2d44ec99c7ded483fe930e166f91ccd0b4', icon: "chevron-down" }))), h("label", { key: 'f96ca586396432132d9482cbfac0a8896cf8c46d', htmlFor: this.yearSelectId, class: "dso-date__vhidden" }, this.localization.yearSelectLabel), h("div", { key: 'ea7f1f0e42bf3344dab30e1a9aa9eff497ca11b5', class: "dso-date__select" }, h("select", { key: 'ab06d22ec2edd4b1d4828b47d4d495932ffd8e14', id: this.yearSelectId, class: "dso-date__select--year", onChange: this.handleYearSelect }, range(minYear, maxYear).map((year) => (h("option", { key: year, selected: year === focusedYear }, year)))), h("div", { key: '094f3bab580202d91c94658a5084812547c44017', class: "dso-date__select-label", "aria-hidden": "true" }, h("span", { key: '1e4eabb3b6a4a546a79c43f91e18f8abffe9cf51' }, this.focusedDay.getFullYear()), h("dso-icon", { key: 'ecc4a276f2dd83053cb3759eda3a56bd4161f265', icon: "chevron-down" })))), h("div", { key: 'bbc9b3fad3a82919a006fd78befe7c88140ac97e', class: "dso-date__nav" }, h("button", { key: 'f8d45217ff383c4e140fc34e083fa163908510bb', class: "dso-date__prev", onClick: this.handlePreviousMonthClick, disabled: prevMonthDisabled, type: "button" }, h("dso-icon", { key: 'f4a8cee55b8c3c8d5fa4db365e3a88137bc2ab3e', icon: "chevron-left" }), h("span", { key: '2f860a03cda77d7c9621906eb2ebb218635ef4cc', class: "dso-date__vhidden" }, this.localization.prevMonthLabel)), h("button", { key: '2222d594e39d8e7f39400777dc43a00d35f002a5', class: "dso-date__next", onClick: this.handleNextMonthClick, disabled: nextMonthDisabled, type: "button" }, h("dso-icon", { key: '080cf2578b603e2c50e6bf4a50c3f1b4f9189db1', icon: "chevron-right" }), h("span", { key: 'b8388d0ccbd1a04a27737f6948d8bb6013b0322f', class: "dso-date__vhidden" }, this.localization.nextMonthLabel)))), h(DatePickerLegacyMonth, { key: 'b9043d6761d0dbe9ce13ba0e4d26f646e0b2ffa5', selectedDate: valueAsDate, focusedDate: this.focusedDay, onDateSelect: this.handleDaySelect, onKeyboardNavigation: this.handleKeyboardNavigation, labelledById: this.dialogLabelId, localization: this.localization, firstDayOfWeek: this.firstDayOfWeek, focusedDayRef: this.processFocusedDayNode, min: minDate, max: maxDate }))))));
722
722
  }
723
723
  get element() { return getElement(this); }
724
724
  };
@@ -1,4 +1,4 @@
1
- import { r as registerInstance, c as createEvent, h, g as getElement } from './index-C-b4jsbt.js';
1
+ import { r as registerInstance, c as createEvent, h, g as getElement } from './index-DxWmN7gh.js';
2
2
 
3
3
  /**
4
4
  * dd-mm-yyyy to yyyy-mm-dd
@@ -147,7 +147,7 @@ const DsoDatePicker = class {
147
147
  }
148
148
  render() {
149
149
  var _a;
150
- return (h("input", { key: 'c599e90b8e1029573beb7097dc5364e06759dcd7', type: "date", id: this.identifier, class: "dso-date__input", value: parseToValueFormat(this.value), name: this.name, min: parseToValueFormat(this.min), max: parseToValueFormat(this.max), disabled: this.disabled || undefined, required: this.required || undefined, "aria-autocomplete": "none", "aria-invalid": (_a = this.invalid) === null || _a === void 0 ? void 0 : _a.toString(), "aria-describedby": this.describedBy, autoComplete: "off", autofocus: this.dsoAutofocus || undefined, onBlur: this.handleBlur, onFocus: this.handleFocus, onKeyUp: this.handleKeyUp, onKeyDown: this.handleKeyDown, onChange: this.handleInputChange }));
150
+ return (h("input", { key: 'a3e6335fedd3f1934ae485f331130c4975a7c009', type: "date", id: this.identifier, class: "dso-date__input", value: parseToValueFormat(this.value), name: this.name, min: parseToValueFormat(this.min), max: parseToValueFormat(this.max), disabled: this.disabled || undefined, required: this.required || undefined, "aria-autocomplete": "none", "aria-invalid": (_a = this.invalid) === null || _a === void 0 ? void 0 : _a.toString(), "aria-describedby": this.describedBy, autoComplete: "off", autofocus: this.dsoAutofocus || undefined, onBlur: this.handleBlur, onFocus: this.handleFocus, onKeyUp: this.handleKeyUp, onKeyDown: this.handleKeyDown, onChange: this.handleInputChange }));
151
151
  }
152
152
  get element() { return getElement(this); }
153
153
  };
@@ -1,4 +1,4 @@
1
- import { r as registerInstance, c as createEvent, f as forceUpdate, h, g as getElement } from './index-C-b4jsbt.js';
1
+ import { r as registerInstance, c as createEvent, f as forceUpdate, h, g as getElement } from './index-DxWmN7gh.js';
2
2
  import { i as isModifiedEvent } from './is-modified-event-Hgv-pDpy.js';
3
3
 
4
4
  const documentCardCss = "@charset \"UTF-8\";*,*::after,*::before{box-sizing:border-box}:host{display:block}.dso-document-card-container{padding-block:16px;padding-inline:16px;inline-size:100%}.dso-document-card-container .dso-document-card-heading{align-items:center;display:flex}@media screen and (max-width: 480px){.dso-document-card-container .dso-document-card-heading{flex-wrap:wrap}}.dso-document-card-container:has(.dso-document-card-heading a:is(:hover,:focus-visible)){background-color:#f2f2f2}:host([active]:not([active=false])) .dso-document-card-container{background-color:#e5e5e5}::slotted([slot=meta]){display:flex !important;justify-content:space-between !important;flex-shrink:0 !important;align-self:end !important}@media screen and (max-width: 480px){::slotted([slot=meta]){flex-basis:100% !important;margin-block-start:16px !important}}::slotted([slot=heading]){display:inline !important;color:#275937 !important;font-size:1.125em !important;font-weight:700 !important;line-height:1.25 !important;margin-block-end:0 !important;margin-block-start:0 !important}.heading-anchor{color:#275937;text-decoration:none}.heading-anchor:hover{color:#275937;text-decoration:underline}.heading-anchor:visited{color:#275937}.heading-anchor .sr-only{position:absolute;inline-size:1px;block-size:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);border:0}.heading-anchor .icon-container{position:relative;padding-inline-end:24px}.heading-anchor .icon-container dso-icon{position:absolute;inset-inline-end:0;inset-block-end:-3px;block-size:24px;inline-size:24px}::slotted([slot=type]){--_dt-info-button-margin-inline-start:0;display:flex !important;gap:8px !important}.dso-document-card-heading+.dso-document-card-type,.dso-document-card-heading+.dso-document-card-status,.dso-document-card-type+.dso-document-card-status{margin-block-start:8px}";
@@ -27,7 +27,7 @@ const DocumentCard = class {
27
27
  return this.host.querySelector("[slot='meta']");
28
28
  }
29
29
  render() {
30
- return (h("div", { key: 'ae16753cb9c198cd7599fdd63fddf6ce2f97cf81', class: "dso-document-card-container" }, h("div", { key: 'af9c0dfd363d424e39db58be668d5f3c33bd007a', class: "dso-document-card-heading" }, h("a", { key: '168715cbc5847cd4bd1498d3305f28250bca5c8a', href: this.href, class: "heading-anchor", onClick: (e) => this.clickEventHandler(e) }, h("span", { key: '4a21deb471f62a81582b5410946caa66af82ea3b', class: "icon-container" }, h("dso-icon", { key: '211bcb9bfa4af4e9be6733d0e52a5e4fb7b25170', icon: "chevron-right" }), h("slot", { key: '20b41d90d10b20978fd51098d3e094e032eaaf9e', name: "heading" }))), this.metaSlottedElement !== null && h("slot", { key: '8e6c9694b793400757362c48c66809ec98ccfda7', name: "meta" })), h("div", { key: 'd35084e0b9c23553a865ca08a001b9e1b8d556ad', class: "dso-document-card-type" }, h("slot", { key: 'aa0159f40f85fd004b32923b1a7b5b029a576316', name: "type" })), h("div", { key: 'c27e28deca9072c962faa5cd2f947878d80d2d19', class: "dso-document-card-status" }, h("slot", { key: '51a1e2f7564a2384de3c9e72b298fcc6f2479215', name: "status" }))));
30
+ return (h("div", { key: 'a56e8db95294c83dfa5b558e47d72ee36c22c523', class: "dso-document-card-container" }, h("div", { key: '14fce780fceba683eb4e30cc6f060f7c7ff1dbce', class: "dso-document-card-heading" }, h("a", { key: '3423b19ac876cdd90135094d8d0b1430c4a53d0e', href: this.href, class: "heading-anchor", onClick: (e) => this.clickEventHandler(e) }, h("span", { key: '611617cd46d12105826465a46c3eb6ac41cb8dc4', class: "icon-container" }, h("dso-icon", { key: '84e9dc5793d9eb51b7748268df8c5b87cb27b24e', icon: "chevron-right" }), h("slot", { key: 'fdbb9ef5d508c67d7432e4aa6dd57d17f4bc730d', name: "heading" }))), this.metaSlottedElement !== null && h("slot", { key: '054d80082247a4eb97136f8e6d199229cb75edf6', name: "meta" })), h("div", { key: 'b7099c9ceaacf8691392fab1cfce9684b83babe2', class: "dso-document-card-type" }, h("slot", { key: '1e7a73fe9efa71d7362ae366ee1f4823b55720d6', name: "type" })), h("div", { key: '34309e92ede40ea37abfe3fc09d7e5270c56c7e9', class: "dso-document-card-status" }, h("slot", { key: 'c708100dfa943e139d3d17e5bd02dcffd02f185e', name: "status" }))));
31
31
  }
32
32
  get host() { return getElement(this); }
33
33
  };
@@ -1,10 +1,10 @@
1
- import { r as registerInstance, h, H as Host, g as getElement } from './index-C-b4jsbt.js';
1
+ import { r as registerInstance, h, H as Host, g as getElement } from './index-DxWmN7gh.js';
2
+ import { a as autoUpdate, c as computePosition, o as offset, f as flip } from './floating-ui.dom-gdsca1fx.js';
2
3
  import { t as tabbable } from './index.esm-Pk8qng7t.js';
3
4
  import { g as getActiveElement } from './get-active-element-CodDyi2J.js';
4
- import { h as hasOverflow, c as createPopper } from './has-overflow-CsY83cJO.js';
5
5
  import { v as v4 } from './v4-BF0_OXTe.js';
6
6
 
7
- const dropdownMenuCss = ":host(:focus){outline:none}:host{display:inline-block}";
7
+ const dropdownMenuCss = ":host(:focus){outline:none}:host{display:inline-block}div[popover]{margin:0 !important;border:0;padding:0;background-color:transparent;overflow:unset}";
8
8
 
9
9
  const DropdownMenu = class {
10
10
  constructor(hostRef) {
@@ -26,70 +26,17 @@ const DropdownMenu = class {
26
26
  * Whether the menu is checkable.
27
27
  */
28
28
  this.checkable = false;
29
- /**
30
- * Set position strategy of dropdown options
31
- */
32
- this.strategy = "auto";
33
29
  this.focusOutListener = (event) => {
34
30
  if (this.open &&
35
31
  (!(event.relatedTarget instanceof HTMLElement) || !this.tabbables(true).includes(event.relatedTarget))) {
36
- this.open = false;
32
+ this.toggleOptions(false);
37
33
  }
38
34
  };
39
35
  this.escape = () => {
40
36
  this.button.focus();
41
- this.open = false;
37
+ this.toggleOptions(false);
42
38
  };
43
39
  }
44
- watchPosition() {
45
- if (!this.popper) {
46
- return;
47
- }
48
- this.popper.setOptions({
49
- placement: this.placement || (this.dropdownAlign === "right" ? "bottom-end" : "bottom-start"),
50
- });
51
- }
52
- watchOptionsOffset() {
53
- var _a;
54
- (_a = this.popper) === null || _a === void 0 ? void 0 : _a.setOptions({
55
- modifiers: [
56
- {
57
- name: "offset",
58
- options: {
59
- offset: [0, this.dropdownOptionsOffset],
60
- },
61
- },
62
- ],
63
- });
64
- }
65
- watchStrategy() {
66
- this.setStrategy();
67
- }
68
- setStrategy() {
69
- if (!this.popper) {
70
- return;
71
- }
72
- if (this.strategy === "absolute" || this.strategy === "fixed") {
73
- this.popper.setOptions({
74
- strategy: this.strategy,
75
- });
76
- return;
77
- }
78
- let element = this.host;
79
- const boundary = this.boundary || document;
80
- while (element && element.parentNode !== boundary) {
81
- element = element.parentNode instanceof ShadowRoot ? element.parentNode.host : element.parentElement;
82
- if (element !== null && hasOverflow(element)) {
83
- this.popper.setOptions({
84
- strategy: "fixed",
85
- });
86
- return;
87
- }
88
- }
89
- this.popper.setOptions({
90
- strategy: "absolute",
91
- });
92
- }
93
40
  get button() {
94
41
  const button = this.host.querySelector('button[slot="toggle"]');
95
42
  if (!(button instanceof HTMLButtonElement)) {
@@ -107,50 +54,20 @@ const DropdownMenu = class {
107
54
  if (!this.button.id) {
108
55
  this.button.id = v4();
109
56
  }
110
- const options = this.host.querySelector(".dso-dropdown-options");
111
- if (!options) {
112
- throw new ReferenceError("Dropdown options not found");
57
+ const dropdownOptionsElement = this.host.querySelector(".dso-dropdown-options");
58
+ if (!(dropdownOptionsElement instanceof HTMLElement)) {
59
+ throw new Error("dropdown options element is not instanceof HTMLElement");
113
60
  }
114
- options.setAttribute("role", "menu");
115
- options.setAttribute("aria-labelledby", this.button.id);
61
+ dropdownOptionsElement.setAttribute("role", "menu");
62
+ dropdownOptionsElement.setAttribute("aria-labelledby", this.button.id);
116
63
  for (const ul of Array.from(this.host.getElementsByTagName("ul"))) {
117
64
  ul.setAttribute("role", "group");
118
65
  for (const li of Array.from(ul.getElementsByTagName("li"))) {
119
66
  li.setAttribute("role", "none");
120
67
  }
121
68
  }
122
- if (this.popper) {
123
- return;
124
- }
125
- const dropdownOptionsElement = this.host.querySelector(".dso-dropdown-options");
126
- if (!(dropdownOptionsElement instanceof HTMLElement)) {
127
- throw new Error("dropdown options element is not instanceof HTMLElement");
128
- }
129
- this.popper = createPopper(this.button, dropdownOptionsElement, {
130
- placement: this.placement || (this.dropdownAlign === "right" ? "bottom-end" : "bottom-start"),
131
- modifiers: [
132
- {
133
- name: "offset",
134
- options: {
135
- offset: [0, this.dropdownOptionsOffset],
136
- },
137
- },
138
- {
139
- name: "preventOverflow",
140
- options: {
141
- boundary: this.boundary ? document.querySelector(this.boundary) : null,
142
- },
143
- enabled: this.boundary !== undefined,
144
- },
145
- ],
146
- });
147
69
  }
148
70
  componentDidRender() {
149
- var _a;
150
- this.setStrategy();
151
- if (this.open) {
152
- (_a = this.popper) === null || _a === void 0 ? void 0 : _a.update();
153
- }
154
71
  for (const li of Array.from(this.host.getElementsByTagName("li"))) {
155
72
  for (const tab of this.host.isConnected ? tabbable(li) : []) {
156
73
  tab.setAttribute("role", this.checkable ? "menuitemradio" : "menuitem");
@@ -160,14 +77,34 @@ const DropdownMenu = class {
160
77
  }
161
78
  }
162
79
  this.button.setAttribute("aria-expanded", this.open ? "true" : "false");
80
+ if (this.popoverElement && !this.cleanUp) {
81
+ const element = this.popoverElement;
82
+ this.cleanUp = autoUpdate(this.button, element, () => {
83
+ computePosition(this.button, element, {
84
+ strategy: "fixed",
85
+ middleware: [
86
+ offset(this.dropdownOptionsOffset),
87
+ flip({
88
+ padding: this.dropdownOptionsOffset,
89
+ }),
90
+ ],
91
+ placement: this.dropdownAlign === "right" ? "bottom-end" : "bottom-start",
92
+ }).then(({ x, y }) => {
93
+ Object.assign(element.style, {
94
+ left: `${x}px`,
95
+ top: `${y}px`,
96
+ });
97
+ });
98
+ });
99
+ }
163
100
  }
164
101
  onClick(event) {
165
102
  const composedPath = event.composedPath();
166
103
  if (this.isToggleButtonEvent(composedPath)) {
167
- this.open = !this.open;
104
+ this.toggleOptions();
168
105
  }
169
106
  else if (this.open && this.isMenuItemEvent(composedPath)) {
170
- this.open = false;
107
+ this.toggleOptions(false);
171
108
  }
172
109
  }
173
110
  isToggleButtonEvent(composedPath) {
@@ -176,9 +113,19 @@ const DropdownMenu = class {
176
113
  isMenuItemEvent(composedPath) {
177
114
  return composedPath.includes(this.host) && !this.isToggleButtonEvent(composedPath);
178
115
  }
116
+ toggleOptions(force) {
117
+ var _a, _b;
118
+ this.open = force !== null && force !== void 0 ? force : !this.open;
119
+ if ((_a = this.popoverElement) === null || _a === void 0 ? void 0 : _a.isConnected) {
120
+ (_b = this.popoverElement) === null || _b === void 0 ? void 0 : _b.togglePopover(this.open);
121
+ }
122
+ if (!this.open && this.cleanUp) {
123
+ this.cleanUp();
124
+ this.cleanUp = undefined;
125
+ }
126
+ }
179
127
  disconnectedCallback() {
180
- var _a;
181
- (_a = this.popper) === null || _a === void 0 ? void 0 : _a.destroy();
128
+ this.toggleOptions(false);
182
129
  }
183
130
  keyDownListener(event) {
184
131
  if (event.defaultPrevented || !this.open) {
@@ -225,15 +172,9 @@ const DropdownMenu = class {
225
172
  (_a = tabbables[nextIndex]) === null || _a === void 0 ? void 0 : _a.focus();
226
173
  }
227
174
  render() {
228
- return (h(Host, { key: '8600535aa05418e2614dc9856681760986966409', onFocusout: this.focusOutListener }, h("slot", { key: '81a01d41c4497ea5564b5733a6beb72b95e11ccc', name: "toggle" }), h("div", { key: '0c0ff5f6e19dec3c03e68bee26fc81aba6b47815', hidden: !this.open }, h("slot", { key: 'f200133562ea767cba2889a190ec408a7bd8a675' }))));
175
+ return (h(Host, { key: '9afd8972737639f89ad1a4692630873b783e4565', onFocusout: this.focusOutListener }, h("slot", { key: '1dcb47d44aa64263048235e5ef126a9c021fc2d9', name: "toggle" }), h("div", { key: 'ad7d1edefabae59820c974da1b2a37088baaf1ce', popover: "manual", ref: (element) => (this.popoverElement = element) }, h("slot", { key: 'b2a5188261a9edca8d948365152d817b69104936' }))));
229
176
  }
230
177
  get host() { return getElement(this); }
231
- static get watchers() { return {
232
- "placement": ["watchPosition"],
233
- "dropdownAlign": ["watchPosition"],
234
- "dropdownOptionsOffset": ["watchOptionsOffset"],
235
- "strategy": ["watchStrategy"]
236
- }; }
237
178
  };
238
179
  DropdownMenu.style = dropdownMenuCss;
239
180
 
@@ -1 +1 @@
1
- {"version":3,"file":"dso-dropdown-menu.entry.js","sources":["src/components/dropdown-menu/dropdown-menu.scss?tag=dso-dropdown-menu&encapsulation=shadow","src/components/dropdown-menu/dropdown-menu.tsx"],"sourcesContent":["@use \"~dso-toolkit/src/components/dropdown-menu\";\r\n\r\n:host(:focus) {\r\n outline: none;\r\n}\r\n\r\n:host {\r\n @include dropdown-menu.root();\r\n}\r\n","import { Instance as PopperInstance, Placement, createPopper } from \"@popperjs/core\";\r\nimport { Component, Element, Host, Listen, Prop, Watch, h } from \"@stencil/core\";\r\nimport { FocusableElement, tabbable } from \"tabbable\";\r\nimport { v4 as uuidv4 } from \"uuid\";\r\n\r\nimport { getActiveElement } from \"../../utils/get-active-element\";\r\nimport { hasOverflow } from \"../../utils/has-overflow\";\r\n\r\n@Component({\r\n tag: \"dso-dropdown-menu\",\r\n styleUrl: \"dropdown-menu.scss\",\r\n shadow: true,\r\n})\r\nexport class DropdownMenu {\r\n /**\r\n * Whether the menu is open or closed.\r\n * This attribute is reflected and mutable.\r\n */\r\n @Prop({ reflect: true, mutable: true })\r\n open = false;\r\n\r\n /**\r\n * Alignment of the dropdown\r\n */\r\n @Prop()\r\n dropdownAlign: \"left\" | \"right\" = \"left\";\r\n\r\n /**\r\n * Space between button and dropdown options\r\n */\r\n @Prop()\r\n dropdownOptionsOffset = 2;\r\n\r\n /**\r\n * Whether the menu is checkable.\r\n */\r\n @Prop()\r\n checkable = false;\r\n\r\n /**\r\n * Selector for the element the dropdown options should not be overflowing.\r\n */\r\n @Prop()\r\n boundary?: string;\r\n\r\n /**\r\n * Force placement of dropdown.\r\n *\r\n * This property overrides `dropdownAlign`.\r\n */\r\n @Prop()\r\n placement?: Placement;\r\n\r\n /**\r\n * Set position strategy of dropdown options\r\n */\r\n @Prop()\r\n strategy: \"auto\" | \"absolute\" | \"fixed\" = \"auto\";\r\n\r\n @Watch(\"placement\")\r\n @Watch(\"dropdownAlign\")\r\n watchPosition() {\r\n if (!this.popper) {\r\n return;\r\n }\r\n\r\n this.popper.setOptions({\r\n placement: this.placement || (this.dropdownAlign === \"right\" ? \"bottom-end\" : \"bottom-start\"),\r\n });\r\n }\r\n\r\n @Watch(\"dropdownOptionsOffset\")\r\n watchOptionsOffset() {\r\n this.popper?.setOptions({\r\n modifiers: [\r\n {\r\n name: \"offset\",\r\n options: {\r\n offset: [0, this.dropdownOptionsOffset],\r\n },\r\n },\r\n ],\r\n });\r\n }\r\n\r\n @Watch(\"strategy\")\r\n watchStrategy() {\r\n this.setStrategy();\r\n }\r\n\r\n private setStrategy() {\r\n if (!this.popper) {\r\n return;\r\n }\r\n\r\n if (this.strategy === \"absolute\" || this.strategy === \"fixed\") {\r\n this.popper.setOptions({\r\n strategy: this.strategy,\r\n });\r\n\r\n return;\r\n }\r\n\r\n let element: Element | null = this.host;\r\n\r\n const boundary = this.boundary || document;\r\n\r\n while (element && element.parentNode !== boundary) {\r\n element = element.parentNode instanceof ShadowRoot ? element.parentNode.host : element.parentElement;\r\n if (element !== null && hasOverflow(element)) {\r\n this.popper.setOptions({\r\n strategy: \"fixed\",\r\n });\r\n\r\n return;\r\n }\r\n }\r\n\r\n this.popper.setOptions({\r\n strategy: \"absolute\",\r\n });\r\n }\r\n\r\n @Element()\r\n host!: HTMLDsoDropdownMenuElement;\r\n\r\n private popper: PopperInstance | undefined;\r\n\r\n get button(): HTMLButtonElement {\r\n const button = this.host.querySelector('button[slot=\"toggle\"]');\r\n\r\n if (!(button instanceof HTMLButtonElement)) {\r\n throw new ReferenceError(\"Mandatory toggle button not found\");\r\n }\r\n\r\n return button;\r\n }\r\n\r\n private tabbables(withButton: boolean): FocusableElement[] {\r\n const tabbables = this.host.isConnected ? tabbable(this.host) : [];\r\n\r\n return withButton ? tabbables : tabbables.filter((element) => element !== this.button);\r\n }\r\n\r\n componentDidLoad() {\r\n this.button.setAttribute(\"aria-haspopup\", \"menu\");\r\n this.button.setAttribute(\"aria-expanded\", \"false\");\r\n if (!this.button.id) {\r\n this.button.id = uuidv4();\r\n }\r\n\r\n const options = this.host.querySelector(\".dso-dropdown-options\");\r\n if (!options) {\r\n throw new ReferenceError(\"Dropdown options not found\");\r\n }\r\n\r\n options.setAttribute(\"role\", \"menu\");\r\n options.setAttribute(\"aria-labelledby\", this.button.id);\r\n\r\n for (const ul of Array.from(this.host.getElementsByTagName(\"ul\"))) {\r\n ul.setAttribute(\"role\", \"group\");\r\n for (const li of Array.from(ul.getElementsByTagName(\"li\"))) {\r\n li.setAttribute(\"role\", \"none\");\r\n }\r\n }\r\n\r\n if (this.popper) {\r\n return;\r\n }\r\n\r\n const dropdownOptionsElement = this.host.querySelector(\".dso-dropdown-options\");\r\n\r\n if (!(dropdownOptionsElement instanceof HTMLElement)) {\r\n throw new Error(\"dropdown options element is not instanceof HTMLElement\");\r\n }\r\n\r\n this.popper = createPopper(this.button, dropdownOptionsElement, {\r\n placement: this.placement || (this.dropdownAlign === \"right\" ? \"bottom-end\" : \"bottom-start\"),\r\n modifiers: [\r\n {\r\n name: \"offset\",\r\n options: {\r\n offset: [0, this.dropdownOptionsOffset],\r\n },\r\n },\r\n {\r\n name: \"preventOverflow\",\r\n options: {\r\n boundary: this.boundary ? document.querySelector(this.boundary) : null,\r\n },\r\n enabled: this.boundary !== undefined,\r\n },\r\n ],\r\n });\r\n }\r\n\r\n componentDidRender() {\r\n this.setStrategy();\r\n if (this.open) {\r\n this.popper?.update();\r\n }\r\n\r\n for (const li of Array.from(this.host.getElementsByTagName(\"li\"))) {\r\n for (const tab of this.host.isConnected ? tabbable(li) : []) {\r\n tab.setAttribute(\"role\", this.checkable ? \"menuitemradio\" : \"menuitem\");\r\n\r\n if (this.checkable) {\r\n tab.setAttribute(\"aria-checked\", li.classList.contains(\"dso-checked\").toString());\r\n }\r\n }\r\n }\r\n\r\n this.button.setAttribute(\"aria-expanded\", this.open ? \"true\" : \"false\");\r\n }\r\n\r\n @Listen(\"click\", { target: \"window\" })\r\n onClick(event: MouseEvent) {\r\n const composedPath = event.composedPath();\r\n\r\n if (this.isToggleButtonEvent(composedPath)) {\r\n this.open = !this.open;\r\n } else if (this.open && this.isMenuItemEvent(composedPath)) {\r\n this.open = false;\r\n }\r\n }\r\n\r\n private isToggleButtonEvent(composedPath: EventTarget[]) {\r\n return composedPath.includes(this.button);\r\n }\r\n\r\n private isMenuItemEvent(composedPath: EventTarget[]) {\r\n return composedPath.includes(this.host) && !this.isToggleButtonEvent(composedPath);\r\n }\r\n\r\n disconnectedCallback() {\r\n this.popper?.destroy();\r\n }\r\n\r\n private focusOutListener = (event: FocusEvent) => {\r\n if (\r\n this.open &&\r\n (!(event.relatedTarget instanceof HTMLElement) || !this.tabbables(true).includes(event.relatedTarget))\r\n ) {\r\n this.open = false;\r\n }\r\n };\r\n\r\n @Listen(\"keydown\", { target: \"window\" })\r\n keyDownListener(event: KeyboardEvent) {\r\n if (event.defaultPrevented || !this.open) {\r\n return;\r\n }\r\n\r\n switch (event.key) {\r\n case \"Tab\":\r\n if (event.shiftKey) {\r\n this.tabInPopup(this.tabbables(true), -1);\r\n } else {\r\n this.tabInPopup(this.tabbables(true), 1);\r\n }\r\n\r\n break;\r\n case \"ArrowDown\":\r\n this.tabInPopup(this.tabbables(false), 1);\r\n break;\r\n\r\n case \"ArrowUp\":\r\n this.tabInPopup(this.tabbables(false), -1);\r\n break;\r\n\r\n case \"Escape\":\r\n this.escape();\r\n break;\r\n\r\n case \" \":\r\n if (event.target instanceof HTMLElement) {\r\n event.target.click();\r\n }\r\n\r\n break;\r\n\r\n default:\r\n return;\r\n }\r\n\r\n event.preventDefault();\r\n }\r\n\r\n private tabInPopup(tabbables: FocusableElement[], direction: number) {\r\n const currentIndex = tabbables.findIndex((e) => e === getActiveElement());\r\n\r\n let nextIndex = currentIndex + direction;\r\n if (nextIndex >= tabbables.length) {\r\n nextIndex = 0;\r\n } else if (nextIndex < 0) {\r\n nextIndex = tabbables.length - 1;\r\n }\r\n\r\n tabbables[nextIndex]?.focus();\r\n }\r\n\r\n private escape = () => {\r\n this.button.focus();\r\n this.open = false;\r\n };\r\n\r\n render() {\r\n return (\r\n <Host onFocusout={this.focusOutListener}>\r\n <slot name=\"toggle\" />\r\n <div hidden={!this.open}>\r\n <slot />\r\n </div>\r\n </Host>\r\n );\r\n }\r\n}\r\n"],"names":["uuidv4"],"mappings":"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"}
1
+ {"version":3,"file":"dso-dropdown-menu.entry.js","sources":["src/components/dropdown-menu/dropdown-menu.scss?tag=dso-dropdown-menu&encapsulation=shadow","src/components/dropdown-menu/dropdown-menu.tsx"],"sourcesContent":["@use \"~dso-toolkit/src/components/dropdown-menu\";\r\n\r\n:host(:focus) {\r\n outline: none;\r\n}\r\n\r\n:host {\r\n @include dropdown-menu.root();\r\n}\r\n\r\ndiv[popover] {\r\n margin: 0 !important;\r\n border: 0;\r\n padding: 0;\r\n background-color: transparent;\r\n overflow: unset;\r\n}\r\n","import { autoUpdate, computePosition, flip, offset } from \"@floating-ui/dom\";\r\nimport { Component, Element, Host, Listen, Prop, h } from \"@stencil/core\";\r\nimport { FocusableElement, tabbable } from \"tabbable\";\r\nimport { v4 as uuidv4 } from \"uuid\";\r\n\r\nimport { getActiveElement } from \"../../utils/get-active-element\";\r\n\r\n@Component({\r\n tag: \"dso-dropdown-menu\",\r\n styleUrl: \"dropdown-menu.scss\",\r\n shadow: true,\r\n})\r\nexport class DropdownMenu {\r\n /**\r\n * Whether the menu is open or closed.\r\n * This attribute is reflected and mutable.\r\n */\r\n @Prop({ reflect: true, mutable: true })\r\n open = false;\r\n\r\n /**\r\n * Alignment of the dropdown\r\n */\r\n @Prop()\r\n dropdownAlign: \"left\" | \"right\" = \"left\";\r\n\r\n /**\r\n * Space between button and dropdown options\r\n */\r\n @Prop()\r\n dropdownOptionsOffset = 2;\r\n\r\n /**\r\n * Whether the menu is checkable.\r\n */\r\n @Prop()\r\n checkable = false;\r\n\r\n @Element()\r\n host!: HTMLDsoDropdownMenuElement;\r\n\r\n private cleanUp: ReturnType<typeof autoUpdate> | undefined;\r\n\r\n private popoverElement: HTMLDivElement | undefined;\r\n\r\n get button(): HTMLButtonElement {\r\n const button = this.host.querySelector('button[slot=\"toggle\"]');\r\n\r\n if (!(button instanceof HTMLButtonElement)) {\r\n throw new ReferenceError(\"Mandatory toggle button not found\");\r\n }\r\n\r\n return button;\r\n }\r\n\r\n private tabbables(withButton: boolean): FocusableElement[] {\r\n const tabbables = this.host.isConnected ? tabbable(this.host) : [];\r\n\r\n return withButton ? tabbables : tabbables.filter((element) => element !== this.button);\r\n }\r\n\r\n componentDidLoad() {\r\n this.button.setAttribute(\"aria-haspopup\", \"menu\");\r\n this.button.setAttribute(\"aria-expanded\", \"false\");\r\n if (!this.button.id) {\r\n this.button.id = uuidv4();\r\n }\r\n\r\n const dropdownOptionsElement = this.host.querySelector(\".dso-dropdown-options\");\r\n\r\n if (!(dropdownOptionsElement instanceof HTMLElement)) {\r\n throw new Error(\"dropdown options element is not instanceof HTMLElement\");\r\n }\r\n\r\n dropdownOptionsElement.setAttribute(\"role\", \"menu\");\r\n dropdownOptionsElement.setAttribute(\"aria-labelledby\", this.button.id);\r\n\r\n for (const ul of Array.from(this.host.getElementsByTagName(\"ul\"))) {\r\n ul.setAttribute(\"role\", \"group\");\r\n for (const li of Array.from(ul.getElementsByTagName(\"li\"))) {\r\n li.setAttribute(\"role\", \"none\");\r\n }\r\n }\r\n }\r\n\r\n componentDidRender() {\r\n for (const li of Array.from(this.host.getElementsByTagName(\"li\"))) {\r\n for (const tab of this.host.isConnected ? tabbable(li) : []) {\r\n tab.setAttribute(\"role\", this.checkable ? \"menuitemradio\" : \"menuitem\");\r\n\r\n if (this.checkable) {\r\n tab.setAttribute(\"aria-checked\", li.classList.contains(\"dso-checked\").toString());\r\n }\r\n }\r\n }\r\n\r\n this.button.setAttribute(\"aria-expanded\", this.open ? \"true\" : \"false\");\r\n\r\n if (this.popoverElement && !this.cleanUp) {\r\n const element = this.popoverElement;\r\n this.cleanUp = autoUpdate(this.button, element, () => {\r\n computePosition(this.button, element, {\r\n strategy: \"fixed\",\r\n middleware: [\r\n offset(this.dropdownOptionsOffset),\r\n flip({\r\n padding: this.dropdownOptionsOffset,\r\n }),\r\n ],\r\n placement: this.dropdownAlign === \"right\" ? \"bottom-end\" : \"bottom-start\",\r\n }).then(({ x, y }) => {\r\n Object.assign(element.style, {\r\n left: `${x}px`,\r\n top: `${y}px`,\r\n });\r\n });\r\n });\r\n }\r\n }\r\n\r\n @Listen(\"click\", { target: \"window\" })\r\n onClick(event: MouseEvent) {\r\n const composedPath = event.composedPath();\r\n\r\n if (this.isToggleButtonEvent(composedPath)) {\r\n this.toggleOptions();\r\n } else if (this.open && this.isMenuItemEvent(composedPath)) {\r\n this.toggleOptions(false);\r\n }\r\n }\r\n\r\n private isToggleButtonEvent(composedPath: EventTarget[]) {\r\n return composedPath.includes(this.button);\r\n }\r\n\r\n private isMenuItemEvent(composedPath: EventTarget[]) {\r\n return composedPath.includes(this.host) && !this.isToggleButtonEvent(composedPath);\r\n }\r\n\r\n private toggleOptions(force?: boolean) {\r\n this.open = force ?? !this.open;\r\n if (this.popoverElement?.isConnected) {\r\n this.popoverElement?.togglePopover(this.open);\r\n }\r\n\r\n if (!this.open && this.cleanUp) {\r\n this.cleanUp();\r\n this.cleanUp = undefined;\r\n }\r\n }\r\n\r\n disconnectedCallback() {\r\n this.toggleOptions(false);\r\n }\r\n\r\n private focusOutListener = (event: FocusEvent) => {\r\n if (\r\n this.open &&\r\n (!(event.relatedTarget instanceof HTMLElement) || !this.tabbables(true).includes(event.relatedTarget))\r\n ) {\r\n this.toggleOptions(false);\r\n }\r\n };\r\n\r\n @Listen(\"keydown\", { target: \"window\" })\r\n keyDownListener(event: KeyboardEvent) {\r\n if (event.defaultPrevented || !this.open) {\r\n return;\r\n }\r\n\r\n switch (event.key) {\r\n case \"Tab\":\r\n if (event.shiftKey) {\r\n this.tabInPopup(this.tabbables(true), -1);\r\n } else {\r\n this.tabInPopup(this.tabbables(true), 1);\r\n }\r\n\r\n break;\r\n case \"ArrowDown\":\r\n this.tabInPopup(this.tabbables(false), 1);\r\n break;\r\n\r\n case \"ArrowUp\":\r\n this.tabInPopup(this.tabbables(false), -1);\r\n break;\r\n\r\n case \"Escape\":\r\n this.escape();\r\n break;\r\n\r\n case \" \":\r\n if (event.target instanceof HTMLElement) {\r\n event.target.click();\r\n }\r\n\r\n break;\r\n\r\n default:\r\n return;\r\n }\r\n\r\n event.preventDefault();\r\n }\r\n\r\n private tabInPopup(tabbables: FocusableElement[], direction: number) {\r\n const currentIndex = tabbables.findIndex((e) => e === getActiveElement());\r\n\r\n let nextIndex = currentIndex + direction;\r\n if (nextIndex >= tabbables.length) {\r\n nextIndex = 0;\r\n } else if (nextIndex < 0) {\r\n nextIndex = tabbables.length - 1;\r\n }\r\n\r\n tabbables[nextIndex]?.focus();\r\n }\r\n\r\n private escape = () => {\r\n this.button.focus();\r\n this.toggleOptions(false);\r\n };\r\n\r\n render() {\r\n return (\r\n <Host onFocusout={this.focusOutListener}>\r\n <slot name=\"toggle\" />\r\n <div popover=\"manual\" ref={(element) => (this.popoverElement = element)}>\r\n <slot />\r\n </div>\r\n </Host>\r\n );\r\n }\r\n}\r\n"],"names":["uuidv4"],"mappings":"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"}