@dso-toolkit/core 79.0.0-pre.4 → 79.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 (788) hide show
  1. package/dist/bundle/dso-accordion-section.js +8 -8
  2. package/dist/bundle/dso-accordion-section.js.map +1 -1
  3. package/dist/bundle/dso-accordion.js +1 -1
  4. package/dist/bundle/dso-accordion.js.map +1 -1
  5. package/dist/bundle/dso-action-list-item.js +2 -2
  6. package/dist/bundle/dso-action-list-item.js.map +1 -1
  7. package/dist/bundle/dso-action-list.js +1 -1
  8. package/dist/bundle/dso-action-list.js.map +1 -1
  9. package/dist/bundle/dso-advanced-select.js +5 -5
  10. package/dist/bundle/dso-advanced-select.js.map +1 -1
  11. package/dist/bundle/dso-alert.js +1 -1
  12. package/dist/bundle/dso-annotation-activiteit.js +6 -6
  13. package/dist/bundle/dso-annotation-activiteit.js.map +1 -1
  14. package/dist/bundle/dso-annotation-gebiedsaanwijzing.js +6 -6
  15. package/dist/bundle/dso-annotation-gebiedsaanwijzing.js.map +1 -1
  16. package/dist/bundle/dso-annotation-kaart.js +4 -4
  17. package/dist/bundle/dso-annotation-kaart.js.map +1 -1
  18. package/dist/bundle/dso-annotation-locatie.js +1 -1
  19. package/dist/bundle/dso-annotation-omgevingsnormwaarde.js +6 -6
  20. package/dist/bundle/dso-annotation-omgevingsnormwaarde.js.map +1 -1
  21. package/dist/bundle/dso-attachments-counter.js +1 -1
  22. package/dist/bundle/dso-autosuggest.js +3 -3
  23. package/dist/bundle/dso-badge.js +1 -1
  24. package/dist/bundle/dso-banner.js +1 -1
  25. package/dist/bundle/dso-banner.js.map +1 -1
  26. package/dist/bundle/dso-button-group.js +1 -1
  27. package/dist/bundle/dso-card.js +2 -2
  28. package/dist/bundle/dso-card.js.map +1 -1
  29. package/dist/bundle/dso-contact-information.js +1 -1
  30. package/dist/bundle/dso-contact-information.js.map +1 -1
  31. package/dist/bundle/dso-date-picker-legacy.js +2 -2
  32. package/dist/bundle/dso-date-picker-legacy.js.map +1 -1
  33. package/dist/bundle/dso-date-picker.js +1 -1
  34. package/dist/bundle/dso-date-picker.js.map +1 -1
  35. package/dist/bundle/dso-document-card.js +2 -2
  36. package/dist/bundle/dso-document-card.js.map +1 -1
  37. package/dist/bundle/dso-document-component.js +1 -1
  38. package/dist/bundle/dso-dropdown-menu.js +1 -1
  39. package/dist/bundle/dso-expandable.js +1 -1
  40. package/dist/bundle/dso-header.js +9 -9
  41. package/dist/bundle/dso-header.js.map +1 -1
  42. package/dist/bundle/dso-highlight-box.js +1 -1
  43. package/dist/bundle/dso-highlight-box.js.map +1 -1
  44. package/dist/bundle/dso-icon.js +1 -1
  45. package/dist/bundle/dso-image-overlay.js +1 -1
  46. package/dist/bundle/dso-info-button.js +1 -1
  47. package/dist/bundle/dso-info.js +1 -1
  48. package/dist/bundle/dso-input-range.js +1 -1
  49. package/dist/bundle/dso-input-range.js.map +1 -1
  50. package/dist/bundle/dso-label.js +1 -1
  51. package/dist/bundle/dso-legend-item.js +6 -6
  52. package/dist/bundle/dso-legend-item.js.map +1 -1
  53. package/dist/bundle/dso-list-button.js +5 -5
  54. package/dist/bundle/dso-list-button.js.map +1 -1
  55. package/dist/bundle/dso-map-base-layers.js +5 -5
  56. package/dist/bundle/dso-map-base-layers.js.map +1 -1
  57. package/dist/bundle/dso-map-controls.js +4 -4
  58. package/dist/bundle/dso-map-controls.js.map +1 -1
  59. package/dist/bundle/dso-map-overlays.js +5 -5
  60. package/dist/bundle/dso-map-overlays.js.map +1 -1
  61. package/dist/bundle/dso-mark-bar.js +2 -2
  62. package/dist/bundle/dso-mark-bar.js.map +1 -1
  63. package/dist/bundle/dso-modal.js +3 -3
  64. package/dist/bundle/dso-modal.js.map +1 -1
  65. package/dist/bundle/dso-onboarding-tip.js +2 -2
  66. package/dist/bundle/dso-onboarding-tip.js.map +1 -1
  67. package/dist/bundle/dso-ozon-content.js +1 -1
  68. package/dist/bundle/dso-pagination.js +2 -2
  69. package/dist/bundle/dso-pagination.js.map +1 -1
  70. package/dist/bundle/dso-panel.js +1 -1
  71. package/dist/bundle/dso-plekinfo-card.js +2 -2
  72. package/dist/bundle/dso-plekinfo-card.js.map +1 -1
  73. package/dist/bundle/dso-progress-bar.js +1 -1
  74. package/dist/bundle/dso-progress-bar.js.map +1 -1
  75. package/dist/bundle/dso-progress-indicator.js +1 -1
  76. package/dist/bundle/dso-project-item.js +4 -4
  77. package/dist/bundle/dso-project-item.js.map +1 -1
  78. package/dist/bundle/dso-renvooi.js +1 -1
  79. package/dist/bundle/dso-scrollable.js +1 -1
  80. package/dist/bundle/dso-selectable.js +1 -1
  81. package/dist/bundle/dso-skiplink.js +2 -2
  82. package/dist/bundle/dso-skiplink.js.map +1 -1
  83. package/dist/bundle/dso-slide-toggle.js +1 -1
  84. package/dist/bundle/dso-survey-rating.js +3 -3
  85. package/dist/bundle/dso-survey-rating.js.map +1 -1
  86. package/dist/bundle/dso-tab.js +1 -1
  87. package/dist/bundle/dso-tab.js.map +1 -1
  88. package/dist/bundle/dso-table.js +1 -1
  89. package/dist/bundle/dso-tabs.js +1 -1
  90. package/dist/bundle/dso-tabs.js.map +1 -1
  91. package/dist/bundle/dso-toggletip.js +1 -1
  92. package/dist/bundle/dso-tooltip.js +1 -1
  93. package/dist/bundle/dso-tree-view.js +3 -3
  94. package/dist/bundle/dso-tree-view.js.map +1 -1
  95. package/dist/bundle/dso-viewer-grid.js +1 -1
  96. package/dist/bundle/dso-viewer-grid.js.map +1 -1
  97. package/dist/bundle/dsot-document-component-demo.js +13 -13
  98. package/dist/bundle/p-B7tl4vEP.js +1190 -0
  99. package/dist/bundle/p-B7tl4vEP.js.map +1 -0
  100. package/dist/bundle/{p-7ffg336s.js → p-BTM2KYEF.js} +3 -3
  101. package/dist/bundle/{p-7ffg336s.js.map → p-BTM2KYEF.js.map} +1 -1
  102. package/dist/bundle/{p-B8dmuT31.js → p-BgQ0LxOv.js} +7 -3
  103. package/dist/bundle/p-BgQ0LxOv.js.map +1 -0
  104. package/dist/bundle/{p-S0YMB18e.js → p-BkcOHFAA.js} +6 -6
  105. package/dist/bundle/{p-S0YMB18e.js.map → p-BkcOHFAA.js.map} +1 -1
  106. package/dist/bundle/p-BwZvADPO.js +80 -0
  107. package/dist/bundle/{p-X4ksz0z1.js.map → p-BwZvADPO.js.map} +1 -1
  108. package/dist/bundle/{p-Bgqhjszl.js → p-CPTuKxMx.js} +4 -4
  109. package/dist/bundle/{p-Bgqhjszl.js.map → p-CPTuKxMx.js.map} +1 -1
  110. package/dist/bundle/{p-CEFYoazH.js → p-CTAU8JKT.js} +3 -3
  111. package/dist/bundle/{p-CEFYoazH.js.map → p-CTAU8JKT.js.map} +1 -1
  112. package/dist/bundle/{p-BELL2NPR.js → p-CVyaeh1_.js} +5 -5
  113. package/dist/bundle/{p-BELL2NPR.js.map → p-CVyaeh1_.js.map} +1 -1
  114. package/dist/bundle/p-CovD19j0.js +252 -0
  115. package/dist/bundle/{p-B_9Gan2F.js.map → p-CovD19j0.js.map} +1 -1
  116. package/dist/bundle/p-D6l-JcXE.js +36 -0
  117. package/dist/bundle/{p-C_-6M4mA.js.map → p-D6l-JcXE.js.map} +1 -1
  118. package/dist/bundle/{p-COMP9T58.js → p-DJptKNU4.js} +3 -3
  119. package/dist/bundle/{p-COMP9T58.js.map → p-DJptKNU4.js.map} +1 -1
  120. package/dist/bundle/p-DPxeR0Ey.js +78 -0
  121. package/dist/bundle/p-DPxeR0Ey.js.map +1 -0
  122. package/dist/bundle/{p-B9zUWbzS.js → p-DV5Lbo3I.js} +3 -3
  123. package/dist/bundle/{p-B9zUWbzS.js.map → p-DV5Lbo3I.js.map} +1 -1
  124. package/dist/bundle/{p-BrQ3aUVb.js → p-DZfdc557.js} +3 -3
  125. package/dist/bundle/{p-BrQ3aUVb.js.map → p-DZfdc557.js.map} +1 -1
  126. package/dist/bundle/{p-BqKuHNTU.js → p-D_cMLm_E.js} +3 -3
  127. package/dist/bundle/{p-BqKuHNTU.js.map → p-D_cMLm_E.js.map} +1 -1
  128. package/dist/bundle/{p-uUOjJ6kU.js → p-DiF7pR4b.js} +4 -4
  129. package/dist/bundle/{p-uUOjJ6kU.js.map → p-DiF7pR4b.js.map} +1 -1
  130. package/dist/bundle/p-DlnqD3t9.js +115 -0
  131. package/dist/bundle/{p-DrrX-h-R.js.map → p-DlnqD3t9.js.map} +1 -1
  132. package/dist/bundle/{p-B3BAWGAx.js → p-MqBCENXQ.js} +3 -3
  133. package/dist/bundle/{p-B3BAWGAx.js.map → p-MqBCENXQ.js.map} +1 -1
  134. package/dist/bundle/{p-BOvMM9C8.js → p-XWtPZYtK.js} +4 -4
  135. package/dist/bundle/{p-BOvMM9C8.js.map → p-XWtPZYtK.js.map} +1 -1
  136. package/dist/bundle/p-ZJRJQtDU.js +43 -0
  137. package/dist/bundle/{p-DrWTFwlB.js.map → p-ZJRJQtDU.js.map} +1 -1
  138. package/dist/bundle/p-bHDMgCsa.js +122 -0
  139. package/dist/bundle/{p-B3Alb07i.js.map → p-bHDMgCsa.js.map} +1 -1
  140. package/dist/bundle/p-piO4yUd2.js +145 -0
  141. package/dist/bundle/{p-CeXiA7z5.js.map → p-piO4yUd2.js.map} +1 -1
  142. package/dist/bundle/{p-CynPODEC.js → p-zc-ygIe_.js} +4 -4
  143. package/dist/bundle/{p-CynPODEC.js.map → p-zc-ygIe_.js.map} +1 -1
  144. package/dist/cjs/dso-accordion-section.cjs.entry.js +1 -1
  145. package/dist/cjs/dso-accordion-section.cjs.entry.js.map +1 -1
  146. package/dist/cjs/dso-accordion-section.entry.cjs.js.map +1 -1
  147. package/dist/cjs/dso-accordion.cjs.entry.js +1 -1
  148. package/dist/cjs/dso-accordion.cjs.entry.js.map +1 -1
  149. package/dist/cjs/dso-accordion.entry.cjs.js.map +1 -1
  150. package/dist/cjs/dso-action-list-item.cjs.entry.js +1 -1
  151. package/dist/cjs/dso-action-list-item.cjs.entry.js.map +1 -1
  152. package/dist/cjs/dso-action-list-item.entry.cjs.js.map +1 -1
  153. package/dist/cjs/dso-action-list.cjs.entry.js +1 -1
  154. package/dist/cjs/dso-action-list.cjs.entry.js.map +1 -1
  155. package/dist/cjs/dso-action-list.entry.cjs.js.map +1 -1
  156. package/dist/cjs/dso-advanced-select.cjs.entry.js +1 -1
  157. package/dist/cjs/dso-advanced-select.cjs.entry.js.map +1 -1
  158. package/dist/cjs/dso-advanced-select.entry.cjs.js.map +1 -1
  159. package/dist/cjs/dso-alert.dso-badge.dso-image-overlay.dso-ozon-content.dso-panel.dso-table.entry.cjs.js.map +1 -1
  160. package/dist/cjs/dso-alert_6.cjs.entry.js +9 -7
  161. package/dist/cjs/dso-alert_6.cjs.entry.js.map +1 -1
  162. package/dist/cjs/dso-annotation-activiteit.cjs.entry.js +1 -1
  163. package/dist/cjs/dso-annotation-activiteit.cjs.entry.js.map +1 -1
  164. package/dist/cjs/dso-annotation-activiteit.entry.cjs.js.map +1 -1
  165. package/dist/cjs/dso-annotation-gebiedsaanwijzing.cjs.entry.js +1 -1
  166. package/dist/cjs/dso-annotation-gebiedsaanwijzing.cjs.entry.js.map +1 -1
  167. package/dist/cjs/dso-annotation-gebiedsaanwijzing.entry.cjs.js.map +1 -1
  168. package/dist/cjs/dso-annotation-kaart.cjs.entry.js +1 -1
  169. package/dist/cjs/dso-annotation-kaart.cjs.entry.js.map +1 -1
  170. package/dist/cjs/dso-annotation-kaart.entry.cjs.js.map +1 -1
  171. package/dist/cjs/dso-annotation-locatie.dso-document-component.entry.cjs.js.map +1 -1
  172. package/dist/cjs/dso-annotation-locatie_2.cjs.entry.js +2 -2
  173. package/dist/cjs/dso-annotation-locatie_2.cjs.entry.js.map +1 -1
  174. package/dist/cjs/dso-annotation-omgevingsnormwaarde.cjs.entry.js +1 -1
  175. package/dist/cjs/dso-annotation-omgevingsnormwaarde.cjs.entry.js.map +1 -1
  176. package/dist/cjs/dso-annotation-omgevingsnormwaarde.entry.cjs.js.map +1 -1
  177. package/dist/cjs/dso-attachments-counter.dso-expandable.entry.cjs.js.map +1 -1
  178. package/dist/cjs/dso-attachments-counter_2.cjs.entry.js +2 -2
  179. package/dist/cjs/dso-attachments-counter_2.cjs.entry.js.map +1 -1
  180. package/dist/cjs/dso-banner.cjs.entry.js +1 -1
  181. package/dist/cjs/dso-banner.cjs.entry.js.map +1 -1
  182. package/dist/cjs/dso-banner.entry.cjs.js.map +1 -1
  183. package/dist/cjs/dso-button-group.cjs.entry.js +1 -1
  184. package/dist/cjs/dso-button-group.cjs.entry.js.map +1 -1
  185. package/dist/cjs/dso-button-group.entry.cjs.js.map +1 -1
  186. package/dist/cjs/dso-card.cjs.entry.js +1 -1
  187. package/dist/cjs/dso-card.cjs.entry.js.map +1 -1
  188. package/dist/cjs/dso-card.entry.cjs.js.map +1 -1
  189. package/dist/cjs/dso-contact-information.cjs.entry.js +1 -1
  190. package/dist/cjs/dso-contact-information.cjs.entry.js.map +1 -1
  191. package/dist/cjs/dso-contact-information.entry.cjs.js.map +1 -1
  192. package/dist/cjs/dso-date-picker-legacy.cjs.entry.js +1 -1
  193. package/dist/cjs/dso-date-picker-legacy.cjs.entry.js.map +1 -1
  194. package/dist/cjs/dso-date-picker-legacy.entry.cjs.js.map +1 -1
  195. package/dist/cjs/dso-date-picker.cjs.entry.js +1 -1
  196. package/dist/cjs/dso-date-picker.cjs.entry.js.map +1 -1
  197. package/dist/cjs/dso-date-picker.entry.cjs.js.map +1 -1
  198. package/dist/cjs/dso-document-card.cjs.entry.js +1 -1
  199. package/dist/cjs/dso-document-card.cjs.entry.js.map +1 -1
  200. package/dist/cjs/dso-document-card.entry.cjs.js.map +1 -1
  201. package/dist/cjs/dso-dropdown-menu.cjs.entry.js +5 -1
  202. package/dist/cjs/dso-dropdown-menu.cjs.entry.js.map +1 -1
  203. package/dist/cjs/dso-dropdown-menu.entry.cjs.js.map +1 -1
  204. package/dist/cjs/dso-header.cjs.entry.js +7 -7
  205. package/dist/cjs/dso-header.cjs.entry.js.map +1 -1
  206. package/dist/cjs/dso-header.entry.cjs.js.map +1 -1
  207. package/dist/cjs/dso-highlight-box.cjs.entry.js +1 -1
  208. package/dist/cjs/dso-highlight-box.cjs.entry.js.map +1 -1
  209. package/dist/cjs/dso-highlight-box.entry.cjs.js.map +1 -1
  210. package/dist/cjs/dso-icon.cjs.entry.js +1 -1
  211. package/dist/cjs/dso-icon.cjs.entry.js.map +1 -1
  212. package/dist/cjs/dso-icon.entry.cjs.js.map +1 -1
  213. package/dist/cjs/dso-info-button.cjs.entry.js +1 -1
  214. package/dist/cjs/dso-info-button.cjs.entry.js.map +1 -1
  215. package/dist/cjs/dso-info-button.entry.cjs.js.map +1 -1
  216. package/dist/cjs/dso-info.dso-selectable.entry.cjs.js.map +1 -1
  217. package/dist/cjs/dso-info_2.cjs.entry.js +2 -2
  218. package/dist/cjs/dso-info_2.cjs.entry.js.map +1 -1
  219. package/dist/cjs/dso-input-range.cjs.entry.js +1 -1
  220. package/dist/cjs/dso-input-range.cjs.entry.js.map +1 -1
  221. package/dist/cjs/dso-input-range.entry.cjs.js.map +1 -1
  222. package/dist/cjs/dso-label.dso-renvooi.dso-slide-toggle.entry.cjs.js.map +1 -1
  223. package/dist/cjs/dso-label_3.cjs.entry.js +3 -3
  224. package/dist/cjs/dso-label_3.cjs.entry.js.map +1 -1
  225. package/dist/cjs/dso-legend-item.cjs.entry.js +1 -1
  226. package/dist/cjs/dso-legend-item.cjs.entry.js.map +1 -1
  227. package/dist/cjs/dso-legend-item.entry.cjs.js.map +1 -1
  228. package/dist/cjs/dso-list-button.cjs.entry.js +1 -1
  229. package/dist/cjs/dso-list-button.cjs.entry.js.map +1 -1
  230. package/dist/cjs/dso-list-button.entry.cjs.js.map +1 -1
  231. package/dist/cjs/dso-map-base-layers.cjs.entry.js +1 -1
  232. package/dist/cjs/dso-map-base-layers.cjs.entry.js.map +1 -1
  233. package/dist/cjs/dso-map-base-layers.entry.cjs.js.map +1 -1
  234. package/dist/cjs/dso-map-controls.cjs.entry.js +1 -1
  235. package/dist/cjs/dso-map-controls.cjs.entry.js.map +1 -1
  236. package/dist/cjs/dso-map-controls.entry.cjs.js.map +1 -1
  237. package/dist/cjs/dso-map-overlays.cjs.entry.js +1 -1
  238. package/dist/cjs/dso-map-overlays.cjs.entry.js.map +1 -1
  239. package/dist/cjs/dso-map-overlays.entry.cjs.js.map +1 -1
  240. package/dist/cjs/dso-mark-bar.cjs.entry.js +1 -1
  241. package/dist/cjs/dso-mark-bar.cjs.entry.js.map +1 -1
  242. package/dist/cjs/dso-mark-bar.entry.cjs.js.map +1 -1
  243. package/dist/cjs/dso-modal.cjs.entry.js +1 -1
  244. package/dist/cjs/dso-modal.cjs.entry.js.map +1 -1
  245. package/dist/cjs/dso-modal.entry.cjs.js.map +1 -1
  246. package/dist/cjs/dso-onboarding-tip.cjs.entry.js +1 -1
  247. package/dist/cjs/dso-onboarding-tip.cjs.entry.js.map +1 -1
  248. package/dist/cjs/dso-onboarding-tip.entry.cjs.js.map +1 -1
  249. package/dist/cjs/dso-pagination.cjs.entry.js +1 -1
  250. package/dist/cjs/dso-pagination.cjs.entry.js.map +1 -1
  251. package/dist/cjs/dso-pagination.entry.cjs.js.map +1 -1
  252. package/dist/cjs/dso-plekinfo-card.cjs.entry.js +1 -1
  253. package/dist/cjs/dso-plekinfo-card.cjs.entry.js.map +1 -1
  254. package/dist/cjs/dso-plekinfo-card.entry.cjs.js.map +1 -1
  255. package/dist/cjs/dso-progress-bar.cjs.entry.js +1 -1
  256. package/dist/cjs/dso-progress-bar.cjs.entry.js.map +1 -1
  257. package/dist/cjs/dso-progress-bar.entry.cjs.js.map +1 -1
  258. package/dist/cjs/dso-progress-indicator.cjs.entry.js +1 -1
  259. package/dist/cjs/dso-progress-indicator.cjs.entry.js.map +1 -1
  260. package/dist/cjs/dso-progress-indicator.entry.cjs.js.map +1 -1
  261. package/dist/cjs/dso-project-item.cjs.entry.js +1 -1
  262. package/dist/cjs/dso-project-item.cjs.entry.js.map +1 -1
  263. package/dist/cjs/dso-project-item.entry.cjs.js.map +1 -1
  264. package/dist/cjs/dso-scrollable.cjs.entry.js +1 -1
  265. package/dist/cjs/dso-scrollable.cjs.entry.js.map +1 -1
  266. package/dist/cjs/dso-scrollable.entry.cjs.js.map +1 -1
  267. package/dist/cjs/dso-skiplink.cjs.entry.js +1 -1
  268. package/dist/cjs/dso-skiplink.cjs.entry.js.map +1 -1
  269. package/dist/cjs/dso-skiplink.entry.cjs.js.map +1 -1
  270. package/dist/cjs/dso-survey-rating.cjs.entry.js +1 -1
  271. package/dist/cjs/dso-survey-rating.cjs.entry.js.map +1 -1
  272. package/dist/cjs/dso-survey-rating.entry.cjs.js.map +1 -1
  273. package/dist/cjs/dso-tab.cjs.entry.js +1 -1
  274. package/dist/cjs/dso-tab.cjs.entry.js.map +1 -1
  275. package/dist/cjs/dso-tab.entry.cjs.js.map +1 -1
  276. package/dist/cjs/dso-tabs.cjs.entry.js +1 -1
  277. package/dist/cjs/dso-tabs.cjs.entry.js.map +1 -1
  278. package/dist/cjs/dso-tabs.entry.cjs.js.map +1 -1
  279. package/dist/cjs/dso-toggletip.cjs.entry.js +1 -1
  280. package/dist/cjs/dso-toggletip.cjs.entry.js.map +1 -1
  281. package/dist/cjs/dso-toggletip.entry.cjs.js.map +1 -1
  282. package/dist/cjs/dso-tooltip.cjs.entry.js +1 -1
  283. package/dist/cjs/dso-tooltip.cjs.entry.js.map +1 -1
  284. package/dist/cjs/dso-tooltip.entry.cjs.js.map +1 -1
  285. package/dist/cjs/dso-tree-view.cjs.entry.js +1 -1
  286. package/dist/cjs/dso-tree-view.cjs.entry.js.map +1 -1
  287. package/dist/cjs/dso-tree-view.entry.cjs.js.map +1 -1
  288. package/dist/cjs/dso-viewer-grid.cjs.entry.js +1 -1
  289. package/dist/cjs/dso-viewer-grid.cjs.entry.js.map +1 -1
  290. package/dist/cjs/dso-viewer-grid.entry.cjs.js.map +1 -1
  291. package/dist/collection/components/accordion/accordion.css +0 -15
  292. package/dist/collection/components/accordion/components/accordion-section.css +0 -15
  293. package/dist/collection/components/accordion/components/accordion-section.js +1 -1
  294. package/dist/collection/components/action-list/action-list.css +0 -15
  295. package/dist/collection/components/action-list/components/action-list-item.css +0 -15
  296. package/dist/collection/components/advanced-select/advanced-select.css +0 -15
  297. package/dist/collection/components/alert/alert.css +117 -15
  298. package/dist/collection/components/annotation/annotation.css +1 -16
  299. package/dist/collection/components/attachments-counter/attachments-counter.css +0 -15
  300. package/dist/collection/components/badge/badge.css +0 -15
  301. package/dist/collection/components/banner/banner.css +0 -15
  302. package/dist/collection/components/button-group/button-group.css +0 -15
  303. package/dist/collection/components/card/card.css +0 -15
  304. package/dist/collection/components/contact-information/contact-information.css +0 -15
  305. package/dist/collection/components/date-picker/date-picker.css +0 -15
  306. package/dist/collection/components/date-picker-legacy/date-picker-legacy.css +0 -15
  307. package/dist/collection/components/document-card/document-card.css +0 -15
  308. package/dist/collection/components/document-component/document-component.css +1 -16
  309. package/dist/collection/components/dropdown-menu/dropdown-menu.js +5 -1
  310. package/dist/collection/components/dropdown-menu/dropdown-menu.js.map +1 -1
  311. package/dist/collection/components/expandable/expandable.css +0 -15
  312. package/dist/collection/components/header/header.css +0 -15
  313. package/dist/collection/components/header/header.js +6 -6
  314. package/dist/collection/components/header/header.js.map +1 -1
  315. package/dist/collection/components/header/menu-item.functional-component.js.map +1 -1
  316. package/dist/collection/components/highlight-box/highlight-box.css +0 -15
  317. package/dist/collection/components/icon/icon.css +0 -15
  318. package/dist/collection/components/image-overlay/image-overlay.css +2 -17
  319. package/dist/collection/components/info/info.css +0 -15
  320. package/dist/collection/components/info-button/info-button.css +0 -15
  321. package/dist/collection/components/input-range/input-range.css +0 -15
  322. package/dist/collection/components/label/label.css +52 -16
  323. package/dist/collection/components/label/label.interfaces.js.map +1 -1
  324. package/dist/collection/components/label/label.js +1 -1
  325. package/dist/collection/components/legend-item/legend-item.css +0 -15
  326. package/dist/collection/components/list-button/list-button.css +0 -15
  327. package/dist/collection/components/map-base-layers/map-base-layers.css +0 -15
  328. package/dist/collection/components/map-controls/map-controls.css +0 -15
  329. package/dist/collection/components/map-overlays/map-overlays.css +0 -15
  330. package/dist/collection/components/mark-bar/mark-bar.css +0 -15
  331. package/dist/collection/components/modal/modal.css +0 -15
  332. package/dist/collection/components/onboarding-tip/onboarding-tip.css +0 -15
  333. package/dist/collection/components/ozon-content/nodes/figuur.node.js +3 -1
  334. package/dist/collection/components/ozon-content/nodes/figuur.node.js.map +1 -1
  335. package/dist/collection/components/ozon-content/ozon-content.css +4 -19
  336. package/dist/collection/components/pagination/pagination.css +0 -15
  337. package/dist/collection/components/panel/panel.css +0 -15
  338. package/dist/collection/components/plekinfo-card/plekinfo-card.css +1 -16
  339. package/dist/collection/components/progress-bar/progress-bar.css +0 -15
  340. package/dist/collection/components/progress-indicator/progress-indicator.css +0 -15
  341. package/dist/collection/components/project-item/project-item.css +0 -15
  342. package/dist/collection/components/renvooi/renvooi.css +1 -16
  343. package/dist/collection/components/scrollable/scrollable.css +0 -15
  344. package/dist/collection/components/selectable/selectable.css +0 -15
  345. package/dist/collection/components/skiplink/skiplink.css +0 -15
  346. package/dist/collection/components/slide-toggle/slide-toggle.css +0 -15
  347. package/dist/collection/components/survey-rating/survey-rating.css +0 -15
  348. package/dist/collection/components/table/table.css +0 -15
  349. package/dist/collection/components/tabs/components/tab.css +0 -15
  350. package/dist/collection/components/tabs/tabs.css +0 -15
  351. package/dist/collection/components/toggletip/toggletip.css +0 -15
  352. package/dist/collection/components/tooltip/tooltip.css +0 -15
  353. package/dist/collection/components/tree-view/tree-view.css +0 -15
  354. package/dist/collection/components/viewer-grid/viewer-grid.css +0 -15
  355. package/dist/components/alert.js +1 -1
  356. package/dist/components/alert.js.map +1 -1
  357. package/dist/components/annotation-locatie.js +1 -1
  358. package/dist/components/annotation-locatie.js.map +1 -1
  359. package/dist/components/attachments-counter.js +1 -1
  360. package/dist/components/attachments-counter.js.map +1 -1
  361. package/dist/components/badge.js +1 -1
  362. package/dist/components/badge.js.map +1 -1
  363. package/dist/components/button-group.js +1 -1
  364. package/dist/components/button-group.js.map +1 -1
  365. package/dist/components/document-component.js +1 -1
  366. package/dist/components/document-component.js.map +1 -1
  367. package/dist/components/dropdown-menu.js +5 -1
  368. package/dist/components/dropdown-menu.js.map +1 -1
  369. package/dist/components/dso-accordion-section.js +1 -1
  370. package/dist/components/dso-accordion-section.js.map +1 -1
  371. package/dist/components/dso-accordion.js +1 -1
  372. package/dist/components/dso-accordion.js.map +1 -1
  373. package/dist/components/dso-action-list-item.js +1 -1
  374. package/dist/components/dso-action-list-item.js.map +1 -1
  375. package/dist/components/dso-action-list.js +1 -1
  376. package/dist/components/dso-action-list.js.map +1 -1
  377. package/dist/components/dso-advanced-select.js +1 -1
  378. package/dist/components/dso-advanced-select.js.map +1 -1
  379. package/dist/components/dso-annotation-activiteit.js +1 -1
  380. package/dist/components/dso-annotation-activiteit.js.map +1 -1
  381. package/dist/components/dso-annotation-gebiedsaanwijzing.js +1 -1
  382. package/dist/components/dso-annotation-gebiedsaanwijzing.js.map +1 -1
  383. package/dist/components/dso-annotation-kaart.js +1 -1
  384. package/dist/components/dso-annotation-kaart.js.map +1 -1
  385. package/dist/components/dso-annotation-omgevingsnormwaarde.js +1 -1
  386. package/dist/components/dso-annotation-omgevingsnormwaarde.js.map +1 -1
  387. package/dist/components/dso-banner.js +1 -1
  388. package/dist/components/dso-banner.js.map +1 -1
  389. package/dist/components/dso-card.js +1 -1
  390. package/dist/components/dso-card.js.map +1 -1
  391. package/dist/components/dso-contact-information.js +1 -1
  392. package/dist/components/dso-contact-information.js.map +1 -1
  393. package/dist/components/dso-date-picker-legacy.js +1 -1
  394. package/dist/components/dso-date-picker-legacy.js.map +1 -1
  395. package/dist/components/dso-date-picker.js +1 -1
  396. package/dist/components/dso-date-picker.js.map +1 -1
  397. package/dist/components/dso-document-card.js +1 -1
  398. package/dist/components/dso-document-card.js.map +1 -1
  399. package/dist/components/dso-header.js +7 -7
  400. package/dist/components/dso-header.js.map +1 -1
  401. package/dist/components/dso-highlight-box.js +1 -1
  402. package/dist/components/dso-highlight-box.js.map +1 -1
  403. package/dist/components/dso-input-range.js +1 -1
  404. package/dist/components/dso-input-range.js.map +1 -1
  405. package/dist/components/dso-legend-item.js +1 -1
  406. package/dist/components/dso-legend-item.js.map +1 -1
  407. package/dist/components/dso-list-button.js +1 -1
  408. package/dist/components/dso-list-button.js.map +1 -1
  409. package/dist/components/dso-map-base-layers.js +1 -1
  410. package/dist/components/dso-map-base-layers.js.map +1 -1
  411. package/dist/components/dso-map-controls.js +1 -1
  412. package/dist/components/dso-map-controls.js.map +1 -1
  413. package/dist/components/dso-map-overlays.js +1 -1
  414. package/dist/components/dso-map-overlays.js.map +1 -1
  415. package/dist/components/dso-mark-bar.js +1 -1
  416. package/dist/components/dso-mark-bar.js.map +1 -1
  417. package/dist/components/dso-modal.js +1 -1
  418. package/dist/components/dso-modal.js.map +1 -1
  419. package/dist/components/dso-onboarding-tip.js +1 -1
  420. package/dist/components/dso-onboarding-tip.js.map +1 -1
  421. package/dist/components/dso-pagination.js +1 -1
  422. package/dist/components/dso-pagination.js.map +1 -1
  423. package/dist/components/dso-plekinfo-card.js +1 -1
  424. package/dist/components/dso-plekinfo-card.js.map +1 -1
  425. package/dist/components/dso-progress-bar.js +1 -1
  426. package/dist/components/dso-progress-bar.js.map +1 -1
  427. package/dist/components/dso-project-item.js +1 -1
  428. package/dist/components/dso-project-item.js.map +1 -1
  429. package/dist/components/dso-skiplink.js +1 -1
  430. package/dist/components/dso-skiplink.js.map +1 -1
  431. package/dist/components/dso-survey-rating.js +1 -1
  432. package/dist/components/dso-survey-rating.js.map +1 -1
  433. package/dist/components/dso-tab.js +1 -1
  434. package/dist/components/dso-tab.js.map +1 -1
  435. package/dist/components/dso-tabs.js +1 -1
  436. package/dist/components/dso-tabs.js.map +1 -1
  437. package/dist/components/dso-tree-view.js +1 -1
  438. package/dist/components/dso-tree-view.js.map +1 -1
  439. package/dist/components/dso-viewer-grid.js +1 -1
  440. package/dist/components/dso-viewer-grid.js.map +1 -1
  441. package/dist/components/expandable.js +1 -1
  442. package/dist/components/expandable.js.map +1 -1
  443. package/dist/components/icon.js +1 -1
  444. package/dist/components/icon.js.map +1 -1
  445. package/dist/components/image-overlay.js +1 -1
  446. package/dist/components/image-overlay.js.map +1 -1
  447. package/dist/components/info-button.js +1 -1
  448. package/dist/components/info-button.js.map +1 -1
  449. package/dist/components/info.js +1 -1
  450. package/dist/components/info.js.map +1 -1
  451. package/dist/components/label.js +1 -1
  452. package/dist/components/label.js.map +1 -1
  453. package/dist/components/ozon-content.js +4 -2
  454. package/dist/components/ozon-content.js.map +1 -1
  455. package/dist/components/panel.js +1 -1
  456. package/dist/components/panel.js.map +1 -1
  457. package/dist/components/progress-indicator.js +1 -1
  458. package/dist/components/progress-indicator.js.map +1 -1
  459. package/dist/components/renvooi.js +1 -1
  460. package/dist/components/renvooi.js.map +1 -1
  461. package/dist/components/scrollable.js +1 -1
  462. package/dist/components/scrollable.js.map +1 -1
  463. package/dist/components/selectable.js +1 -1
  464. package/dist/components/selectable.js.map +1 -1
  465. package/dist/components/slide-toggle.js +1 -1
  466. package/dist/components/slide-toggle.js.map +1 -1
  467. package/dist/components/table.js +1 -1
  468. package/dist/components/table.js.map +1 -1
  469. package/dist/components/toggletip.js +1 -1
  470. package/dist/components/toggletip.js.map +1 -1
  471. package/dist/components/tooltip.js +1 -1
  472. package/dist/components/tooltip.js.map +1 -1
  473. package/dist/dso-toolkit/dso-accordion-section.entry.esm.js.map +1 -1
  474. package/dist/dso-toolkit/dso-accordion.entry.esm.js.map +1 -1
  475. package/dist/dso-toolkit/dso-action-list-item.entry.esm.js.map +1 -1
  476. package/dist/dso-toolkit/dso-action-list.entry.esm.js.map +1 -1
  477. package/dist/dso-toolkit/dso-advanced-select.entry.esm.js.map +1 -1
  478. package/dist/dso-toolkit/dso-alert.dso-badge.dso-image-overlay.dso-ozon-content.dso-panel.dso-table.entry.esm.js.map +1 -1
  479. package/dist/dso-toolkit/dso-annotation-activiteit.entry.esm.js.map +1 -1
  480. package/dist/dso-toolkit/dso-annotation-gebiedsaanwijzing.entry.esm.js.map +1 -1
  481. package/dist/dso-toolkit/dso-annotation-kaart.entry.esm.js.map +1 -1
  482. package/dist/dso-toolkit/dso-annotation-locatie.dso-document-component.entry.esm.js.map +1 -1
  483. package/dist/dso-toolkit/dso-annotation-omgevingsnormwaarde.entry.esm.js.map +1 -1
  484. package/dist/dso-toolkit/dso-attachments-counter.dso-expandable.entry.esm.js.map +1 -1
  485. package/dist/dso-toolkit/dso-banner.entry.esm.js.map +1 -1
  486. package/dist/dso-toolkit/dso-button-group.entry.esm.js.map +1 -1
  487. package/dist/dso-toolkit/dso-card.entry.esm.js.map +1 -1
  488. package/dist/dso-toolkit/dso-contact-information.entry.esm.js.map +1 -1
  489. package/dist/dso-toolkit/dso-date-picker-legacy.entry.esm.js.map +1 -1
  490. package/dist/dso-toolkit/dso-date-picker.entry.esm.js.map +1 -1
  491. package/dist/dso-toolkit/dso-document-card.entry.esm.js.map +1 -1
  492. package/dist/dso-toolkit/dso-dropdown-menu.entry.esm.js.map +1 -1
  493. package/dist/dso-toolkit/dso-header.entry.esm.js.map +1 -1
  494. package/dist/dso-toolkit/dso-highlight-box.entry.esm.js.map +1 -1
  495. package/dist/dso-toolkit/dso-icon.entry.esm.js.map +1 -1
  496. package/dist/dso-toolkit/dso-info-button.entry.esm.js.map +1 -1
  497. package/dist/dso-toolkit/dso-info.dso-selectable.entry.esm.js.map +1 -1
  498. package/dist/dso-toolkit/dso-input-range.entry.esm.js.map +1 -1
  499. package/dist/dso-toolkit/dso-label.dso-renvooi.dso-slide-toggle.entry.esm.js.map +1 -1
  500. package/dist/dso-toolkit/dso-legend-item.entry.esm.js.map +1 -1
  501. package/dist/dso-toolkit/dso-list-button.entry.esm.js.map +1 -1
  502. package/dist/dso-toolkit/dso-map-base-layers.entry.esm.js.map +1 -1
  503. package/dist/dso-toolkit/dso-map-controls.entry.esm.js.map +1 -1
  504. package/dist/dso-toolkit/dso-map-overlays.entry.esm.js.map +1 -1
  505. package/dist/dso-toolkit/dso-mark-bar.entry.esm.js.map +1 -1
  506. package/dist/dso-toolkit/dso-modal.entry.esm.js.map +1 -1
  507. package/dist/dso-toolkit/dso-onboarding-tip.entry.esm.js.map +1 -1
  508. package/dist/dso-toolkit/dso-pagination.entry.esm.js.map +1 -1
  509. package/dist/dso-toolkit/dso-plekinfo-card.entry.esm.js.map +1 -1
  510. package/dist/dso-toolkit/dso-progress-bar.entry.esm.js.map +1 -1
  511. package/dist/dso-toolkit/dso-progress-indicator.entry.esm.js.map +1 -1
  512. package/dist/dso-toolkit/dso-project-item.entry.esm.js.map +1 -1
  513. package/dist/dso-toolkit/dso-scrollable.entry.esm.js.map +1 -1
  514. package/dist/dso-toolkit/dso-skiplink.entry.esm.js.map +1 -1
  515. package/dist/dso-toolkit/dso-survey-rating.entry.esm.js.map +1 -1
  516. package/dist/dso-toolkit/dso-tab.entry.esm.js.map +1 -1
  517. package/dist/dso-toolkit/dso-tabs.entry.esm.js.map +1 -1
  518. package/dist/dso-toolkit/dso-toggletip.entry.esm.js.map +1 -1
  519. package/dist/dso-toolkit/dso-toolkit.esm.js +1 -1
  520. package/dist/dso-toolkit/dso-tooltip.entry.esm.js.map +1 -1
  521. package/dist/dso-toolkit/dso-tree-view.entry.esm.js.map +1 -1
  522. package/dist/dso-toolkit/dso-viewer-grid.entry.esm.js.map +1 -1
  523. package/dist/dso-toolkit/p-068320ab.entry.js +2 -0
  524. package/dist/dso-toolkit/{p-6902ffb5.entry.js.map → p-068320ab.entry.js.map} +1 -1
  525. package/dist/dso-toolkit/p-070eb5c1.entry.js +2 -0
  526. package/dist/dso-toolkit/{p-b4ba87ac.entry.js.map → p-070eb5c1.entry.js.map} +1 -1
  527. package/dist/dso-toolkit/p-0982f8a3.entry.js +2 -0
  528. package/dist/dso-toolkit/{p-a21f00fc.entry.js.map → p-0982f8a3.entry.js.map} +1 -1
  529. package/dist/dso-toolkit/p-0a4afa12.entry.js +2 -0
  530. package/dist/dso-toolkit/{p-ce057c5c.entry.js.map → p-0a4afa12.entry.js.map} +1 -1
  531. package/dist/dso-toolkit/p-0f9f5005.entry.js +2 -0
  532. package/dist/dso-toolkit/{p-2165f443.entry.js.map → p-0f9f5005.entry.js.map} +1 -1
  533. package/dist/dso-toolkit/p-16a365f4.entry.js +2 -0
  534. package/dist/dso-toolkit/{p-246b1186.entry.js.map → p-16a365f4.entry.js.map} +1 -1
  535. package/dist/dso-toolkit/p-2bd67420.entry.js +2 -0
  536. package/dist/dso-toolkit/{p-ab39576c.entry.js.map → p-2bd67420.entry.js.map} +1 -1
  537. package/dist/dso-toolkit/p-340eb5f3.entry.js +2 -0
  538. package/dist/dso-toolkit/{p-9566b0a7.entry.js.map → p-340eb5f3.entry.js.map} +1 -1
  539. package/dist/dso-toolkit/p-3885ca9b.entry.js +2 -0
  540. package/dist/dso-toolkit/p-3885ca9b.entry.js.map +1 -0
  541. package/dist/dso-toolkit/p-3e8dbe03.entry.js +2 -0
  542. package/dist/dso-toolkit/{p-b4931ff4.entry.js.map → p-3e8dbe03.entry.js.map} +1 -1
  543. package/dist/dso-toolkit/p-4735ca42.entry.js +2 -0
  544. package/dist/dso-toolkit/p-4735ca42.entry.js.map +1 -0
  545. package/dist/dso-toolkit/{p-445aba67.entry.js → p-4c57777f.entry.js} +2 -2
  546. package/dist/dso-toolkit/{p-445aba67.entry.js.map → p-4c57777f.entry.js.map} +1 -1
  547. package/dist/dso-toolkit/p-4d1a7934.entry.js +2 -0
  548. package/dist/dso-toolkit/{p-f9bc4e87.entry.js.map → p-4d1a7934.entry.js.map} +1 -1
  549. package/dist/dso-toolkit/p-4e578d5c.entry.js +2 -0
  550. package/dist/dso-toolkit/{p-12e8bed3.entry.js.map → p-4e578d5c.entry.js.map} +1 -1
  551. package/dist/dso-toolkit/p-5852fa1a.entry.js +2 -0
  552. package/dist/dso-toolkit/{p-9591777b.entry.js.map → p-5852fa1a.entry.js.map} +1 -1
  553. package/dist/dso-toolkit/p-5960a967.entry.js +2 -0
  554. package/dist/dso-toolkit/{p-a735dc9b.entry.js.map → p-5960a967.entry.js.map} +1 -1
  555. package/dist/dso-toolkit/p-6362810d.entry.js +2 -0
  556. package/dist/dso-toolkit/{p-c45258d3.entry.js.map → p-6362810d.entry.js.map} +1 -1
  557. package/dist/dso-toolkit/p-693cd313.entry.js +2 -0
  558. package/dist/dso-toolkit/{p-d8a051b5.entry.js.map → p-693cd313.entry.js.map} +1 -1
  559. package/dist/dso-toolkit/p-710a47f1.entry.js +2 -0
  560. package/dist/dso-toolkit/{p-275e5ec7.entry.js.map → p-710a47f1.entry.js.map} +1 -1
  561. package/dist/dso-toolkit/p-71eae744.entry.js +2 -0
  562. package/dist/dso-toolkit/{p-add3ca45.entry.js.map → p-71eae744.entry.js.map} +1 -1
  563. package/dist/dso-toolkit/p-81e4a548.entry.js +2 -0
  564. package/dist/dso-toolkit/{p-9b2ca189.entry.js.map → p-81e4a548.entry.js.map} +1 -1
  565. package/dist/dso-toolkit/p-8936cf2f.entry.js +2 -0
  566. package/dist/dso-toolkit/{p-1cc4cc04.entry.js.map → p-8936cf2f.entry.js.map} +1 -1
  567. package/dist/dso-toolkit/{p-08efe022.entry.js → p-97e7153c.entry.js} +2 -2
  568. package/dist/dso-toolkit/{p-08efe022.entry.js.map → p-97e7153c.entry.js.map} +1 -1
  569. package/dist/dso-toolkit/p-9a7ab5aa.entry.js +2 -0
  570. package/dist/dso-toolkit/{p-e299ac60.entry.js.map → p-9a7ab5aa.entry.js.map} +1 -1
  571. package/dist/dso-toolkit/p-a835d419.entry.js +2 -0
  572. package/dist/dso-toolkit/{p-898de91a.entry.js.map → p-a835d419.entry.js.map} +1 -1
  573. package/dist/dso-toolkit/p-ac5a1a15.entry.js +2 -0
  574. package/dist/dso-toolkit/{p-81711068.entry.js.map → p-ac5a1a15.entry.js.map} +1 -1
  575. package/dist/dso-toolkit/p-b154c6d6.entry.js +2 -0
  576. package/dist/dso-toolkit/{p-f4a1a07b.entry.js.map → p-b154c6d6.entry.js.map} +1 -1
  577. package/dist/dso-toolkit/{p-915c332a.entry.js → p-b680b169.entry.js} +2 -2
  578. package/dist/dso-toolkit/{p-915c332a.entry.js.map → p-b680b169.entry.js.map} +1 -1
  579. package/dist/dso-toolkit/p-b6d75e39.entry.js +2 -0
  580. package/dist/dso-toolkit/{p-071846be.entry.js.map → p-b6d75e39.entry.js.map} +1 -1
  581. package/dist/dso-toolkit/p-c6413a5c.entry.js +2 -0
  582. package/dist/dso-toolkit/{p-01e90e48.entry.js.map → p-c6413a5c.entry.js.map} +1 -1
  583. package/dist/dso-toolkit/p-c7920b34.entry.js +2 -0
  584. package/dist/dso-toolkit/{p-03fe514a.entry.js.map → p-c7920b34.entry.js.map} +1 -1
  585. package/dist/dso-toolkit/p-c8ca21c3.entry.js +2 -0
  586. package/dist/dso-toolkit/{p-dd5f641f.entry.js.map → p-c8ca21c3.entry.js.map} +1 -1
  587. package/dist/dso-toolkit/p-ca0b79a6.entry.js +2 -0
  588. package/dist/dso-toolkit/{p-e17fa84d.entry.js.map → p-ca0b79a6.entry.js.map} +1 -1
  589. package/dist/dso-toolkit/p-cb354556.entry.js +2 -0
  590. package/dist/dso-toolkit/{p-2cec1fea.entry.js.map → p-cb354556.entry.js.map} +1 -1
  591. package/dist/dso-toolkit/p-cc1abdf3.entry.js +2 -0
  592. package/dist/dso-toolkit/{p-1aaf0bc4.entry.js.map → p-cc1abdf3.entry.js.map} +1 -1
  593. package/dist/dso-toolkit/p-cd149043.entry.js +2 -0
  594. package/dist/dso-toolkit/{p-f2a61198.entry.js.map → p-cd149043.entry.js.map} +1 -1
  595. package/dist/dso-toolkit/p-d01885f6.entry.js +2 -0
  596. package/dist/dso-toolkit/{p-633f06a1.entry.js.map → p-d01885f6.entry.js.map} +1 -1
  597. package/dist/dso-toolkit/p-d2a54c44.entry.js +2 -0
  598. package/dist/dso-toolkit/{p-257a4650.entry.js.map → p-d2a54c44.entry.js.map} +1 -1
  599. package/dist/dso-toolkit/p-d45bf6f4.entry.js +2 -0
  600. package/dist/dso-toolkit/{p-7cab94ae.entry.js.map → p-d45bf6f4.entry.js.map} +1 -1
  601. package/dist/dso-toolkit/p-d8df33bb.entry.js +2 -0
  602. package/dist/dso-toolkit/{p-67b6a838.entry.js.map → p-d8df33bb.entry.js.map} +1 -1
  603. package/dist/dso-toolkit/p-d90537b3.entry.js +2 -0
  604. package/dist/dso-toolkit/{p-cc0db296.entry.js.map → p-d90537b3.entry.js.map} +1 -1
  605. package/dist/dso-toolkit/p-e1801352.entry.js +2 -0
  606. package/dist/dso-toolkit/{p-aa2f5070.entry.js.map → p-e1801352.entry.js.map} +1 -1
  607. package/dist/dso-toolkit/p-e798a831.entry.js +2 -0
  608. package/dist/dso-toolkit/{p-391bf858.entry.js.map → p-e798a831.entry.js.map} +1 -1
  609. package/dist/dso-toolkit/{p-25d0d432.entry.js → p-ef007619.entry.js} +2 -2
  610. package/dist/dso-toolkit/p-ef007619.entry.js.map +1 -0
  611. package/dist/dso-toolkit/p-f14e03b2.entry.js +2 -0
  612. package/dist/dso-toolkit/{p-ef042313.entry.js.map → p-f14e03b2.entry.js.map} +1 -1
  613. package/dist/dso-toolkit/p-f3e22802.entry.js +2 -0
  614. package/dist/dso-toolkit/{p-b0cbc330.entry.js.map → p-f3e22802.entry.js.map} +1 -1
  615. package/dist/dso-toolkit/p-f4d66373.entry.js +2 -0
  616. package/dist/dso-toolkit/{p-a62f368d.entry.js.map → p-f4d66373.entry.js.map} +1 -1
  617. package/dist/dso-toolkit/p-f5f8682c.entry.js +2 -0
  618. package/dist/dso-toolkit/{p-55637fe3.entry.js.map → p-f5f8682c.entry.js.map} +1 -1
  619. package/dist/dso-toolkit/p-fb60be4e.entry.js +2 -0
  620. package/dist/dso-toolkit/{p-a38fbc5c.entry.js.map → p-fb60be4e.entry.js.map} +1 -1
  621. package/dist/esm/dso-accordion-section.entry.js +1 -1
  622. package/dist/esm/dso-accordion-section.entry.js.map +1 -1
  623. package/dist/esm/dso-accordion.entry.js +1 -1
  624. package/dist/esm/dso-accordion.entry.js.map +1 -1
  625. package/dist/esm/dso-action-list-item.entry.js +1 -1
  626. package/dist/esm/dso-action-list-item.entry.js.map +1 -1
  627. package/dist/esm/dso-action-list.entry.js +1 -1
  628. package/dist/esm/dso-action-list.entry.js.map +1 -1
  629. package/dist/esm/dso-advanced-select.entry.js +1 -1
  630. package/dist/esm/dso-advanced-select.entry.js.map +1 -1
  631. package/dist/esm/dso-alert.dso-badge.dso-image-overlay.dso-ozon-content.dso-panel.dso-table.entry.js.map +1 -1
  632. package/dist/esm/dso-alert_6.entry.js +9 -7
  633. package/dist/esm/dso-alert_6.entry.js.map +1 -1
  634. package/dist/esm/dso-annotation-activiteit.entry.js +1 -1
  635. package/dist/esm/dso-annotation-activiteit.entry.js.map +1 -1
  636. package/dist/esm/dso-annotation-gebiedsaanwijzing.entry.js +1 -1
  637. package/dist/esm/dso-annotation-gebiedsaanwijzing.entry.js.map +1 -1
  638. package/dist/esm/dso-annotation-kaart.entry.js +1 -1
  639. package/dist/esm/dso-annotation-kaart.entry.js.map +1 -1
  640. package/dist/esm/dso-annotation-locatie.dso-document-component.entry.js.map +1 -1
  641. package/dist/esm/dso-annotation-locatie_2.entry.js +2 -2
  642. package/dist/esm/dso-annotation-locatie_2.entry.js.map +1 -1
  643. package/dist/esm/dso-annotation-omgevingsnormwaarde.entry.js +1 -1
  644. package/dist/esm/dso-annotation-omgevingsnormwaarde.entry.js.map +1 -1
  645. package/dist/esm/dso-attachments-counter.dso-expandable.entry.js.map +1 -1
  646. package/dist/esm/dso-attachments-counter_2.entry.js +2 -2
  647. package/dist/esm/dso-attachments-counter_2.entry.js.map +1 -1
  648. package/dist/esm/dso-banner.entry.js +1 -1
  649. package/dist/esm/dso-banner.entry.js.map +1 -1
  650. package/dist/esm/dso-button-group.entry.js +1 -1
  651. package/dist/esm/dso-button-group.entry.js.map +1 -1
  652. package/dist/esm/dso-card.entry.js +1 -1
  653. package/dist/esm/dso-card.entry.js.map +1 -1
  654. package/dist/esm/dso-contact-information.entry.js +1 -1
  655. package/dist/esm/dso-contact-information.entry.js.map +1 -1
  656. package/dist/esm/dso-date-picker-legacy.entry.js +1 -1
  657. package/dist/esm/dso-date-picker-legacy.entry.js.map +1 -1
  658. package/dist/esm/dso-date-picker.entry.js +1 -1
  659. package/dist/esm/dso-date-picker.entry.js.map +1 -1
  660. package/dist/esm/dso-document-card.entry.js +1 -1
  661. package/dist/esm/dso-document-card.entry.js.map +1 -1
  662. package/dist/esm/dso-dropdown-menu.entry.js +5 -1
  663. package/dist/esm/dso-dropdown-menu.entry.js.map +1 -1
  664. package/dist/esm/dso-header.entry.js +7 -7
  665. package/dist/esm/dso-header.entry.js.map +1 -1
  666. package/dist/esm/dso-highlight-box.entry.js +1 -1
  667. package/dist/esm/dso-highlight-box.entry.js.map +1 -1
  668. package/dist/esm/dso-icon.entry.js +1 -1
  669. package/dist/esm/dso-icon.entry.js.map +1 -1
  670. package/dist/esm/dso-info-button.entry.js +1 -1
  671. package/dist/esm/dso-info-button.entry.js.map +1 -1
  672. package/dist/esm/dso-info.dso-selectable.entry.js.map +1 -1
  673. package/dist/esm/dso-info_2.entry.js +2 -2
  674. package/dist/esm/dso-info_2.entry.js.map +1 -1
  675. package/dist/esm/dso-input-range.entry.js +1 -1
  676. package/dist/esm/dso-input-range.entry.js.map +1 -1
  677. package/dist/esm/dso-label.dso-renvooi.dso-slide-toggle.entry.js.map +1 -1
  678. package/dist/esm/dso-label_3.entry.js +3 -3
  679. package/dist/esm/dso-label_3.entry.js.map +1 -1
  680. package/dist/esm/dso-legend-item.entry.js +1 -1
  681. package/dist/esm/dso-legend-item.entry.js.map +1 -1
  682. package/dist/esm/dso-list-button.entry.js +1 -1
  683. package/dist/esm/dso-list-button.entry.js.map +1 -1
  684. package/dist/esm/dso-map-base-layers.entry.js +1 -1
  685. package/dist/esm/dso-map-base-layers.entry.js.map +1 -1
  686. package/dist/esm/dso-map-controls.entry.js +1 -1
  687. package/dist/esm/dso-map-controls.entry.js.map +1 -1
  688. package/dist/esm/dso-map-overlays.entry.js +1 -1
  689. package/dist/esm/dso-map-overlays.entry.js.map +1 -1
  690. package/dist/esm/dso-mark-bar.entry.js +1 -1
  691. package/dist/esm/dso-mark-bar.entry.js.map +1 -1
  692. package/dist/esm/dso-modal.entry.js +1 -1
  693. package/dist/esm/dso-modal.entry.js.map +1 -1
  694. package/dist/esm/dso-onboarding-tip.entry.js +1 -1
  695. package/dist/esm/dso-onboarding-tip.entry.js.map +1 -1
  696. package/dist/esm/dso-pagination.entry.js +1 -1
  697. package/dist/esm/dso-pagination.entry.js.map +1 -1
  698. package/dist/esm/dso-plekinfo-card.entry.js +1 -1
  699. package/dist/esm/dso-plekinfo-card.entry.js.map +1 -1
  700. package/dist/esm/dso-progress-bar.entry.js +1 -1
  701. package/dist/esm/dso-progress-bar.entry.js.map +1 -1
  702. package/dist/esm/dso-progress-indicator.entry.js +1 -1
  703. package/dist/esm/dso-progress-indicator.entry.js.map +1 -1
  704. package/dist/esm/dso-project-item.entry.js +1 -1
  705. package/dist/esm/dso-project-item.entry.js.map +1 -1
  706. package/dist/esm/dso-scrollable.entry.js +1 -1
  707. package/dist/esm/dso-scrollable.entry.js.map +1 -1
  708. package/dist/esm/dso-skiplink.entry.js +1 -1
  709. package/dist/esm/dso-skiplink.entry.js.map +1 -1
  710. package/dist/esm/dso-survey-rating.entry.js +1 -1
  711. package/dist/esm/dso-survey-rating.entry.js.map +1 -1
  712. package/dist/esm/dso-tab.entry.js +1 -1
  713. package/dist/esm/dso-tab.entry.js.map +1 -1
  714. package/dist/esm/dso-tabs.entry.js +1 -1
  715. package/dist/esm/dso-tabs.entry.js.map +1 -1
  716. package/dist/esm/dso-toggletip.entry.js +1 -1
  717. package/dist/esm/dso-toggletip.entry.js.map +1 -1
  718. package/dist/esm/dso-tooltip.entry.js +1 -1
  719. package/dist/esm/dso-tooltip.entry.js.map +1 -1
  720. package/dist/esm/dso-tree-view.entry.js +1 -1
  721. package/dist/esm/dso-tree-view.entry.js.map +1 -1
  722. package/dist/esm/dso-viewer-grid.entry.js +1 -1
  723. package/dist/esm/dso-viewer-grid.entry.js.map +1 -1
  724. package/dist/types/components/dropdown-menu/dropdown-menu.d.ts +1 -0
  725. package/dist/types/components/header/header.d.ts +1 -1
  726. package/dist/types/components/header/menu-item.functional-component.d.ts +1 -1
  727. package/dist/types/components/label/label.interfaces.d.ts +1 -1
  728. package/package.json +3 -3
  729. package/dist/bundle/p-B3Alb07i.js +0 -122
  730. package/dist/bundle/p-B8dmuT31.js.map +0 -1
  731. package/dist/bundle/p-B_9Gan2F.js +0 -252
  732. package/dist/bundle/p-C5KKL3gn.js +0 -1188
  733. package/dist/bundle/p-C5KKL3gn.js.map +0 -1
  734. package/dist/bundle/p-C_-6M4mA.js +0 -36
  735. package/dist/bundle/p-CeXiA7z5.js +0 -145
  736. package/dist/bundle/p-DrWTFwlB.js +0 -43
  737. package/dist/bundle/p-DrrX-h-R.js +0 -115
  738. package/dist/bundle/p-X4ksz0z1.js +0 -80
  739. package/dist/bundle/p-_H6ui1La.js +0 -78
  740. package/dist/bundle/p-_H6ui1La.js.map +0 -1
  741. package/dist/dso-toolkit/p-01e90e48.entry.js +0 -2
  742. package/dist/dso-toolkit/p-03fe514a.entry.js +0 -2
  743. package/dist/dso-toolkit/p-071846be.entry.js +0 -2
  744. package/dist/dso-toolkit/p-12e8bed3.entry.js +0 -2
  745. package/dist/dso-toolkit/p-1aaf0bc4.entry.js +0 -2
  746. package/dist/dso-toolkit/p-1cc4cc04.entry.js +0 -2
  747. package/dist/dso-toolkit/p-2165f443.entry.js +0 -2
  748. package/dist/dso-toolkit/p-246b1186.entry.js +0 -2
  749. package/dist/dso-toolkit/p-257a4650.entry.js +0 -2
  750. package/dist/dso-toolkit/p-25d0d432.entry.js.map +0 -1
  751. package/dist/dso-toolkit/p-275e5ec7.entry.js +0 -2
  752. package/dist/dso-toolkit/p-2cec1fea.entry.js +0 -2
  753. package/dist/dso-toolkit/p-391bf858.entry.js +0 -2
  754. package/dist/dso-toolkit/p-55637fe3.entry.js +0 -2
  755. package/dist/dso-toolkit/p-633f06a1.entry.js +0 -2
  756. package/dist/dso-toolkit/p-67b6a838.entry.js +0 -2
  757. package/dist/dso-toolkit/p-6902ffb5.entry.js +0 -2
  758. package/dist/dso-toolkit/p-7cab94ae.entry.js +0 -2
  759. package/dist/dso-toolkit/p-81711068.entry.js +0 -2
  760. package/dist/dso-toolkit/p-898de91a.entry.js +0 -2
  761. package/dist/dso-toolkit/p-9286a89d.entry.js +0 -2
  762. package/dist/dso-toolkit/p-9286a89d.entry.js.map +0 -1
  763. package/dist/dso-toolkit/p-9566b0a7.entry.js +0 -2
  764. package/dist/dso-toolkit/p-9591777b.entry.js +0 -2
  765. package/dist/dso-toolkit/p-9b2ca189.entry.js +0 -2
  766. package/dist/dso-toolkit/p-a21f00fc.entry.js +0 -2
  767. package/dist/dso-toolkit/p-a38fbc5c.entry.js +0 -2
  768. package/dist/dso-toolkit/p-a62f368d.entry.js +0 -2
  769. package/dist/dso-toolkit/p-a735dc9b.entry.js +0 -2
  770. package/dist/dso-toolkit/p-aa2f5070.entry.js +0 -2
  771. package/dist/dso-toolkit/p-ab39576c.entry.js +0 -2
  772. package/dist/dso-toolkit/p-add3ca45.entry.js +0 -2
  773. package/dist/dso-toolkit/p-b0cbc330.entry.js +0 -2
  774. package/dist/dso-toolkit/p-b4931ff4.entry.js +0 -2
  775. package/dist/dso-toolkit/p-b4ba87ac.entry.js +0 -2
  776. package/dist/dso-toolkit/p-c45258d3.entry.js +0 -2
  777. package/dist/dso-toolkit/p-cc0db296.entry.js +0 -2
  778. package/dist/dso-toolkit/p-ce057c5c.entry.js +0 -2
  779. package/dist/dso-toolkit/p-d864f7da.entry.js +0 -2
  780. package/dist/dso-toolkit/p-d864f7da.entry.js.map +0 -1
  781. package/dist/dso-toolkit/p-d8a051b5.entry.js +0 -2
  782. package/dist/dso-toolkit/p-dd5f641f.entry.js +0 -2
  783. package/dist/dso-toolkit/p-e17fa84d.entry.js +0 -2
  784. package/dist/dso-toolkit/p-e299ac60.entry.js +0 -2
  785. package/dist/dso-toolkit/p-ef042313.entry.js +0 -2
  786. package/dist/dso-toolkit/p-f2a61198.entry.js +0 -2
  787. package/dist/dso-toolkit/p-f4a1a07b.entry.js +0 -2
  788. package/dist/dso-toolkit/p-f9bc4e87.entry.js +0 -2
@@ -0,0 +1,2 @@
1
+ import{r as n,c as o,h as e,F as s,g as a}from"./p-DxWmN7gh.js";import{i as r}from"./p-B_kXuEcW.js";const t={en:{"dso-map-controls":{title:"Map layers",layersButton:"Map layers",zoomIn:"Zoom in",zoomOut:"Zoom out",hidePanel:"Hide panel {{title}}"}},nl:{"dso-map-controls":{title:"Kaartlagen",layersButton:"Kaartlagen",zoomIn:"Zoom in",zoomOut:"Zoom uit",hidePanel:"Verberg paneel {{title}}"}}};const d="button {\n -webkit-appearance: button;\n color: inherit;\n cursor: pointer;\n font: inherit;\n font-family: inherit;\n font-size: inherit;\n line-height: inherit;\n margin: 0;\n overflow: visible;\n text-transform: none;\n}\nbutton[disabled] {\n cursor: default;\n}\nbutton::-moz-focus-inner {\n border: 0;\n padding: 0;\n}\n\na.dso-primary,\nbutton.dso-primary,\nlabel.dso-primary {\n display: inline-block;\n font-size: 1em;\n font-weight: 500;\n margin-block-end: 0;\n text-decoration: none;\n touch-action: manipulation;\n text-align: start;\n user-select: none;\n vertical-align: middle;\n}\na.dso-primary:focus, a.dso-primary:focus-visible,\nbutton.dso-primary:focus,\nbutton.dso-primary:focus-visible,\nlabel.dso-primary:focus,\nlabel.dso-primary:focus-visible {\n outline-offset: 2px;\n}\na.dso-primary:active,\nbutton.dso-primary:active,\nlabel.dso-primary:active {\n outline: 0;\n}\na.dso-primary.extern::after, a.dso-primary.download::after,\nbutton.dso-primary.extern::after,\nbutton.dso-primary.download::after,\nlabel.dso-primary.extern::after,\nlabel.dso-primary.download::after {\n content: \"\";\n display: inline-block;\n margin-inline-start: 8px;\n}\na.dso-primary,\nbutton.dso-primary,\nlabel.dso-primary {\n background-color: var(--_dso-button-primary-background-color, #39870c);\n border-color: var(--_dso-button-primary-border-color, #39870c);\n color: var(--_dso-button-primary-color, #fff);\n}\na.dso-primary,\nbutton.dso-primary,\nlabel.dso-primary {\n border-width: 1px;\n border-style: solid;\n border-radius: 4px;\n line-height: 1.5;\n min-inline-size: 56px;\n padding-block: 11px;\n padding-inline: 15px;\n}\na.dso-primary:hover,\nbutton.dso-primary:hover,\nlabel.dso-primary:hover {\n background-color: var(--_dso-button-primary-hover-background-color, #275937);\n border-color: var(--_dso-button-primary-hover-border-color, #275937);\n color: var(--_dso-button-primary-hover-color, #fff);\n}\na.dso-primary:active,\nbutton.dso-primary:active,\nlabel.dso-primary:active {\n background-color: var(--_dso-button-primary-active-background-color, #173521);\n border-color: var(--_dso-button-primary-active-border-color, #173521);\n color: var(--_dso-button-primary-active-color, #fff);\n}\na.dso-primary[disabled], a.dso-primary[disabled]:hover,\nbutton.dso-primary[disabled],\nbutton.dso-primary[disabled]:hover,\nlabel.dso-primary[disabled],\nlabel.dso-primary[disabled]:hover {\n background-color: var(--_dso-button-primary-disabled-background-color, #afcf9d);\n border-color: var(--_dso-button-primary-disabled-border-color, #afcf9d);\n color: var(--_dso-button-primary-disabled-color, #fff);\n}\na.dso-primary.dso-small,\nbutton.dso-primary.dso-small,\nlabel.dso-primary.dso-small {\n line-height: 1rem;\n}\na.dso-primary.dso-small dso-icon,\na.dso-primary.dso-small svg.di, a.dso-primary.dso-small.extern::after, a.dso-primary.dso-small.download::after, a.dso-primary.dso-small.dso-spinner::before,\nbutton.dso-primary.dso-small dso-icon,\nbutton.dso-primary.dso-small svg.di,\nbutton.dso-primary.dso-small.extern::after,\nbutton.dso-primary.dso-small.download::after,\nbutton.dso-primary.dso-small.dso-spinner::before,\nlabel.dso-primary.dso-small dso-icon,\nlabel.dso-primary.dso-small svg.di,\nlabel.dso-primary.dso-small.extern::after,\nlabel.dso-primary.dso-small.download::after,\nlabel.dso-primary.dso-small.dso-spinner::before {\n margin-block-end: -4px;\n margin-block-start: -4px;\n}\na.dso-primary.dso-small.dso-spinner-left::before,\nbutton.dso-primary.dso-small.dso-spinner-left::before,\nlabel.dso-primary.dso-small.dso-spinner-left::before {\n block-size: 16px;\n inline-size: 16px;\n}\na.dso-primary.dso-small.dso-spinner-right::after,\nbutton.dso-primary.dso-small.dso-spinner-right::after,\nlabel.dso-primary.dso-small.dso-spinner-right::after {\n block-size: 16px;\n inline-size: 16px;\n}\na.dso-primary dso-icon:has(+ span:not(.sr-only)),\na.dso-primary svg.di:has(+ span:not(.sr-only)),\nbutton.dso-primary dso-icon:has(+ span:not(.sr-only)),\nbutton.dso-primary svg.di:has(+ span:not(.sr-only)),\nlabel.dso-primary dso-icon:has(+ span:not(.sr-only)),\nlabel.dso-primary svg.di:has(+ span:not(.sr-only)) {\n margin-inline-start: -8px;\n}\na.dso-primary span:not(.sr-only) + dso-icon,\na.dso-primary span:not(.sr-only) + svg.di,\nbutton.dso-primary span:not(.sr-only) + dso-icon,\nbutton.dso-primary span:not(.sr-only) + svg.di,\nlabel.dso-primary span:not(.sr-only) + dso-icon,\nlabel.dso-primary span:not(.sr-only) + svg.di {\n margin-inline-start: 8px;\n margin-inline-end: -8px;\n}\na.dso-primary dso-icon + span:not(.sr-only),\na.dso-primary svg.di + span:not(.sr-only),\nbutton.dso-primary dso-icon + span:not(.sr-only),\nbutton.dso-primary svg.di + span:not(.sr-only),\nlabel.dso-primary dso-icon + span:not(.sr-only),\nlabel.dso-primary svg.di + span:not(.sr-only) {\n margin-inline-start: 8px;\n}\na.dso-primary.dso-spinner-left[disabled], a.dso-primary.dso-spinner-right[disabled],\nbutton.dso-primary.dso-spinner-left[disabled],\nbutton.dso-primary.dso-spinner-right[disabled],\nlabel.dso-primary.dso-spinner-left[disabled],\nlabel.dso-primary.dso-spinner-right[disabled] {\n background-color: #39870c;\n border-color: #39870c;\n color: #fff;\n}\na.dso-primary.dso-spinner-left::before,\nbutton.dso-primary.dso-spinner-left::before,\nlabel.dso-primary.dso-spinner-left::before {\n background-image: url(\"data:image/svg+xml,%3Csvg class='spinner' viewBox='0 0 100 100' xmlns='http://www.w3.org/2000/svg' %3E%3Cstyle%3E .spinner %7B animation: rotator 8s linear infinite; transform-origin: center; %7D @keyframes rotator %7B 0%25 %7B transform: rotate(0deg); %7D 100%25 %7B transform: rotate(360deg); %7D %7D .path %7B stroke-dasharray: 265; stroke-dashoffset: 0; transform-origin: center; stroke: %23fff; animation: dash 2s ease-in-out infinite; %7D @keyframes dash %7B 0%25 %7B stroke-dashoffset: 265; %7D 50%25 %7B stroke-dashoffset: 65; transform:rotate(90deg); %7D 100%25 %7B stroke-dashoffset: 265; transform:rotate(360deg); %7D %3C/style%3E%3Ccircle class='path' fill='none' stroke-width='10' stroke-linecap='butt' cx='50' cy='50' r='45'%3E%3C/circle%3E%3C/svg%3E\");\n background-repeat: no-repeat;\n content: \"\";\n display: inline-block;\n block-size: 24px;\n vertical-align: top;\n inline-size: 24px;\n margin-inline-end: 8px;\n}\na.dso-primary.dso-spinner-right::after,\nbutton.dso-primary.dso-spinner-right::after,\nlabel.dso-primary.dso-spinner-right::after {\n background-image: url(\"data:image/svg+xml,%3Csvg class='spinner' viewBox='0 0 100 100' xmlns='http://www.w3.org/2000/svg' %3E%3Cstyle%3E .spinner %7B animation: rotator 8s linear infinite; transform-origin: center; %7D @keyframes rotator %7B 0%25 %7B transform: rotate(0deg); %7D 100%25 %7B transform: rotate(360deg); %7D %7D .path %7B stroke-dasharray: 265; stroke-dashoffset: 0; transform-origin: center; stroke: %23fff; animation: dash 2s ease-in-out infinite; %7D @keyframes dash %7B 0%25 %7B stroke-dashoffset: 265; %7D 50%25 %7B stroke-dashoffset: 65; transform:rotate(90deg); %7D 100%25 %7B stroke-dashoffset: 265; transform:rotate(360deg); %7D %3C/style%3E%3Ccircle class='path' fill='none' stroke-width='10' stroke-linecap='butt' cx='50' cy='50' r='45'%3E%3C/circle%3E%3C/svg%3E\");\n background-repeat: no-repeat;\n content: \"\";\n display: inline-block;\n block-size: 24px;\n vertical-align: top;\n inline-size: 24px;\n margin-inline-start: 8px;\n}\na.dso-primary.download::after,\nbutton.dso-primary.download::after,\nlabel.dso-primary.download::after {\n background: url(\"./di.svg#download-wit\") no-repeat center;\n background-size: cover;\n block-size: 24px;\n vertical-align: top;\n inline-size: 24px;\n}\na.dso-primary.extern::after,\nbutton.dso-primary.extern::after,\nlabel.dso-primary.extern::after {\n background: url(\"./di.svg#external-link-wit\") no-repeat center;\n background-size: cover;\n block-size: 24px;\n vertical-align: top;\n inline-size: 24px;\n}\na.dso-secondary,\nbutton.dso-secondary,\nlabel.dso-secondary {\n display: inline-block;\n font-size: 1em;\n font-weight: 500;\n margin-block-end: 0;\n text-decoration: none;\n touch-action: manipulation;\n text-align: start;\n user-select: none;\n vertical-align: middle;\n}\na.dso-secondary:focus, a.dso-secondary:focus-visible,\nbutton.dso-secondary:focus,\nbutton.dso-secondary:focus-visible,\nlabel.dso-secondary:focus,\nlabel.dso-secondary:focus-visible {\n outline-offset: 2px;\n}\na.dso-secondary:active,\nbutton.dso-secondary:active,\nlabel.dso-secondary:active {\n outline: 0;\n}\na.dso-secondary.extern::after, a.dso-secondary.download::after,\nbutton.dso-secondary.extern::after,\nbutton.dso-secondary.download::after,\nlabel.dso-secondary.extern::after,\nlabel.dso-secondary.download::after {\n content: \"\";\n display: inline-block;\n margin-inline-start: 8px;\n}\na.dso-secondary,\nbutton.dso-secondary,\nlabel.dso-secondary {\n background-color: var(--_dso-button-secondary-background-color, #fff);\n border-color: var(--_dso-button-secondary-border-color, #39870c);\n color: var(--_dso-button-secondary-color, #39870c);\n}\na.dso-secondary,\nbutton.dso-secondary,\nlabel.dso-secondary {\n border-width: 1px;\n border-style: solid;\n border-radius: 4px;\n line-height: 1.5;\n min-inline-size: 56px;\n padding-block: 11px;\n padding-inline: 15px;\n}\na.dso-secondary:hover,\nbutton.dso-secondary:hover,\nlabel.dso-secondary:hover {\n background-color: var(--_dso-button-secondary-hover-background-color, #d7e7ce);\n border-color: var(--_dso-button-secondary-hover-border-color, #275937);\n color: var(--_dso-button-secondary-hover-color, #275937);\n}\na.dso-secondary:active,\nbutton.dso-secondary:active,\nlabel.dso-secondary:active {\n background-color: var(--_dso-button-secondary-active-background-color, #275937);\n border-color: var(--_dso-button-secondary-active-border-color, #275937);\n color: var(--_dso-button-secondary-active-color, #fff);\n}\na.dso-secondary[disabled], a.dso-secondary[disabled]:hover,\nbutton.dso-secondary[disabled],\nbutton.dso-secondary[disabled]:hover,\nlabel.dso-secondary[disabled],\nlabel.dso-secondary[disabled]:hover {\n background-color: var(--_dso-button-secondary-disabled-background-color, #fff);\n border-color: var(--_dso-button-secondary-disabled-border-color, #afcf9d);\n color: var(--_dso-button-secondary-disabled-color, #afcf9d);\n}\na.dso-secondary.dso-small,\nbutton.dso-secondary.dso-small,\nlabel.dso-secondary.dso-small {\n line-height: 1rem;\n}\na.dso-secondary.dso-small dso-icon,\na.dso-secondary.dso-small svg.di, a.dso-secondary.dso-small.extern::after, a.dso-secondary.dso-small.download::after, a.dso-secondary.dso-small.dso-spinner::before,\nbutton.dso-secondary.dso-small dso-icon,\nbutton.dso-secondary.dso-small svg.di,\nbutton.dso-secondary.dso-small.extern::after,\nbutton.dso-secondary.dso-small.download::after,\nbutton.dso-secondary.dso-small.dso-spinner::before,\nlabel.dso-secondary.dso-small dso-icon,\nlabel.dso-secondary.dso-small svg.di,\nlabel.dso-secondary.dso-small.extern::after,\nlabel.dso-secondary.dso-small.download::after,\nlabel.dso-secondary.dso-small.dso-spinner::before {\n margin-block-end: -4px;\n margin-block-start: -4px;\n}\na.dso-secondary.dso-small.dso-spinner-left::before,\nbutton.dso-secondary.dso-small.dso-spinner-left::before,\nlabel.dso-secondary.dso-small.dso-spinner-left::before {\n block-size: 16px;\n inline-size: 16px;\n}\na.dso-secondary.dso-small.dso-spinner-right::after,\nbutton.dso-secondary.dso-small.dso-spinner-right::after,\nlabel.dso-secondary.dso-small.dso-spinner-right::after {\n block-size: 16px;\n inline-size: 16px;\n}\na.dso-secondary dso-icon:has(+ span:not(.sr-only)),\na.dso-secondary svg.di:has(+ span:not(.sr-only)),\nbutton.dso-secondary dso-icon:has(+ span:not(.sr-only)),\nbutton.dso-secondary svg.di:has(+ span:not(.sr-only)),\nlabel.dso-secondary dso-icon:has(+ span:not(.sr-only)),\nlabel.dso-secondary svg.di:has(+ span:not(.sr-only)) {\n margin-inline-start: -8px;\n}\na.dso-secondary span:not(.sr-only) + dso-icon,\na.dso-secondary span:not(.sr-only) + svg.di,\nbutton.dso-secondary span:not(.sr-only) + dso-icon,\nbutton.dso-secondary span:not(.sr-only) + svg.di,\nlabel.dso-secondary span:not(.sr-only) + dso-icon,\nlabel.dso-secondary span:not(.sr-only) + svg.di {\n margin-inline-start: 8px;\n margin-inline-end: -8px;\n}\na.dso-secondary dso-icon + span:not(.sr-only),\na.dso-secondary svg.di + span:not(.sr-only),\nbutton.dso-secondary dso-icon + span:not(.sr-only),\nbutton.dso-secondary svg.di + span:not(.sr-only),\nlabel.dso-secondary dso-icon + span:not(.sr-only),\nlabel.dso-secondary svg.di + span:not(.sr-only) {\n margin-inline-start: 8px;\n}\na.dso-secondary.dso-spinner-left[disabled], a.dso-secondary.dso-spinner-right[disabled],\nbutton.dso-secondary.dso-spinner-left[disabled],\nbutton.dso-secondary.dso-spinner-right[disabled],\nlabel.dso-secondary.dso-spinner-left[disabled],\nlabel.dso-secondary.dso-spinner-right[disabled] {\n background-color: #fff;\n border-color: #39870c;\n color: #39870c;\n}\na.dso-secondary.dso-spinner-left::before,\nbutton.dso-secondary.dso-spinner-left::before,\nlabel.dso-secondary.dso-spinner-left::before {\n background-image: url(\"data:image/svg+xml,%3Csvg class='spinner' viewBox='0 0 100 100' xmlns='http://www.w3.org/2000/svg' %3E%3Cstyle%3E .spinner %7B animation: rotator 8s linear infinite; transform-origin: center; %7D @keyframes rotator %7B 0%25 %7B transform: rotate(0deg); %7D 100%25 %7B transform: rotate(360deg); %7D %7D .path %7B stroke-dasharray: 265; stroke-dashoffset: 0; transform-origin: center; stroke: %2339870c; animation: dash 2s ease-in-out infinite; %7D @keyframes dash %7B 0%25 %7B stroke-dashoffset: 265; %7D 50%25 %7B stroke-dashoffset: 65; transform:rotate(90deg); %7D 100%25 %7B stroke-dashoffset: 265; transform:rotate(360deg); %7D %3C/style%3E%3Ccircle class='path' fill='none' stroke-width='10' stroke-linecap='butt' cx='50' cy='50' r='45'%3E%3C/circle%3E%3C/svg%3E\");\n background-repeat: no-repeat;\n content: \"\";\n display: inline-block;\n block-size: 24px;\n vertical-align: top;\n inline-size: 24px;\n margin-inline-end: 8px;\n}\na.dso-secondary.dso-spinner-left:not([disabled]):hover::before,\nbutton.dso-secondary.dso-spinner-left:not([disabled]):hover::before,\nlabel.dso-secondary.dso-spinner-left:not([disabled]):hover::before {\n background-image: url(\"data:image/svg+xml,%3Csvg class='spinner' viewBox='0 0 100 100' xmlns='http://www.w3.org/2000/svg' %3E%3Cstyle%3E .spinner %7B animation: rotator 8s linear infinite; transform-origin: center; %7D @keyframes rotator %7B 0%25 %7B transform: rotate(0deg); %7D 100%25 %7B transform: rotate(360deg); %7D %7D .path %7B stroke-dasharray: 265; stroke-dashoffset: 0; transform-origin: center; stroke: %23fff; animation: dash 2s ease-in-out infinite; %7D @keyframes dash %7B 0%25 %7B stroke-dashoffset: 265; %7D 50%25 %7B stroke-dashoffset: 65; transform:rotate(90deg); %7D 100%25 %7B stroke-dashoffset: 265; transform:rotate(360deg); %7D %3C/style%3E%3Ccircle class='path' fill='none' stroke-width='10' stroke-linecap='butt' cx='50' cy='50' r='45'%3E%3C/circle%3E%3C/svg%3E\");\n background-repeat: no-repeat;\n content: \"\";\n display: inline-block;\n block-size: 24px;\n vertical-align: top;\n inline-size: 24px;\n margin-inline-end: 8px;\n}\na.dso-secondary.dso-spinner-left:not([disabled]).dso-small:hover::before,\nbutton.dso-secondary.dso-spinner-left:not([disabled]).dso-small:hover::before,\nlabel.dso-secondary.dso-spinner-left:not([disabled]).dso-small:hover::before {\n block-size: 16px;\n inline-size: 16px;\n}\na.dso-secondary.dso-spinner-right::after,\nbutton.dso-secondary.dso-spinner-right::after,\nlabel.dso-secondary.dso-spinner-right::after {\n background-image: url(\"data:image/svg+xml,%3Csvg class='spinner' viewBox='0 0 100 100' xmlns='http://www.w3.org/2000/svg' %3E%3Cstyle%3E .spinner %7B animation: rotator 8s linear infinite; transform-origin: center; %7D @keyframes rotator %7B 0%25 %7B transform: rotate(0deg); %7D 100%25 %7B transform: rotate(360deg); %7D %7D .path %7B stroke-dasharray: 265; stroke-dashoffset: 0; transform-origin: center; stroke: %2339870c; animation: dash 2s ease-in-out infinite; %7D @keyframes dash %7B 0%25 %7B stroke-dashoffset: 265; %7D 50%25 %7B stroke-dashoffset: 65; transform:rotate(90deg); %7D 100%25 %7B stroke-dashoffset: 265; transform:rotate(360deg); %7D %3C/style%3E%3Ccircle class='path' fill='none' stroke-width='10' stroke-linecap='butt' cx='50' cy='50' r='45'%3E%3C/circle%3E%3C/svg%3E\");\n background-repeat: no-repeat;\n content: \"\";\n display: inline-block;\n block-size: 24px;\n vertical-align: top;\n inline-size: 24px;\n margin-inline-start: 8px;\n}\na.dso-secondary.dso-spinner-right:not([disabled]):hover::after,\nbutton.dso-secondary.dso-spinner-right:not([disabled]):hover::after,\nlabel.dso-secondary.dso-spinner-right:not([disabled]):hover::after {\n background-image: url(\"data:image/svg+xml,%3Csvg class='spinner' viewBox='0 0 100 100' xmlns='http://www.w3.org/2000/svg' %3E%3Cstyle%3E .spinner %7B animation: rotator 8s linear infinite; transform-origin: center; %7D @keyframes rotator %7B 0%25 %7B transform: rotate(0deg); %7D 100%25 %7B transform: rotate(360deg); %7D %7D .path %7B stroke-dasharray: 265; stroke-dashoffset: 0; transform-origin: center; stroke: %23fff; animation: dash 2s ease-in-out infinite; %7D @keyframes dash %7B 0%25 %7B stroke-dashoffset: 265; %7D 50%25 %7B stroke-dashoffset: 65; transform:rotate(90deg); %7D 100%25 %7B stroke-dashoffset: 265; transform:rotate(360deg); %7D %3C/style%3E%3Ccircle class='path' fill='none' stroke-width='10' stroke-linecap='butt' cx='50' cy='50' r='45'%3E%3C/circle%3E%3C/svg%3E\");\n background-repeat: no-repeat;\n content: \"\";\n display: inline-block;\n block-size: 24px;\n vertical-align: top;\n inline-size: 24px;\n margin-inline-start: 8px;\n}\na.dso-secondary.dso-spinner-right:not([disabled]).dso-small:hover::after,\nbutton.dso-secondary.dso-spinner-right:not([disabled]).dso-small:hover::after,\nlabel.dso-secondary.dso-spinner-right:not([disabled]).dso-small:hover::after {\n block-size: 16px;\n inline-size: 16px;\n}\na.dso-secondary.download::after,\nbutton.dso-secondary.download::after,\nlabel.dso-secondary.download::after {\n background: url(\"./di.svg#download\") no-repeat center;\n background-size: cover;\n block-size: 24px;\n vertical-align: top;\n inline-size: 24px;\n}\na.dso-secondary.download:hover::after,\nbutton.dso-secondary.download:hover::after,\nlabel.dso-secondary.download:hover::after {\n background-image: var(--_dso-di-background-image, url(\"./di.svg#download-wit\"));\n}\na.dso-secondary.download[disabled]::after,\nbutton.dso-secondary.download[disabled]::after,\nlabel.dso-secondary.download[disabled]::after {\n background-image: var(--_dso-di-background-image, url(\"./di.svg#download-grasgroen-40\"));\n}\na.dso-secondary.extern::after,\nbutton.dso-secondary.extern::after,\nlabel.dso-secondary.extern::after {\n background: url(\"./di.svg#external-link\") no-repeat center;\n background-size: cover;\n block-size: 24px;\n vertical-align: top;\n inline-size: 24px;\n}\na.dso-secondary.extern:hover::after,\nbutton.dso-secondary.extern:hover::after,\nlabel.dso-secondary.extern:hover::after {\n background-image: var(--_dso-di-background-image, url(\"./di.svg#external-link-wit\"));\n}\na.dso-secondary.extern[disabled]::after,\nbutton.dso-secondary.extern[disabled]::after,\nlabel.dso-secondary.extern[disabled]::after {\n background-image: var(--_dso-di-background-image, url(\"./di.svg#external-link-grasgroen-40\"));\n}\na.dso-tertiary,\nbutton.dso-tertiary,\nlabel.dso-tertiary {\n display: inline-block;\n font-size: 1em;\n font-weight: 500;\n margin-block-end: 0;\n text-decoration: none;\n touch-action: manipulation;\n text-align: start;\n user-select: none;\n vertical-align: middle;\n}\na.dso-tertiary:focus, a.dso-tertiary:focus-visible,\nbutton.dso-tertiary:focus,\nbutton.dso-tertiary:focus-visible,\nlabel.dso-tertiary:focus,\nlabel.dso-tertiary:focus-visible {\n outline-offset: 2px;\n}\na.dso-tertiary:active,\nbutton.dso-tertiary:active,\nlabel.dso-tertiary:active {\n outline: 0;\n}\na.dso-tertiary.extern::after, a.dso-tertiary.download::after,\nbutton.dso-tertiary.extern::after,\nbutton.dso-tertiary.download::after,\nlabel.dso-tertiary.extern::after,\nlabel.dso-tertiary.download::after {\n content: \"\";\n display: inline-block;\n margin-inline-start: 8px;\n}\na.dso-tertiary,\nbutton.dso-tertiary,\nlabel.dso-tertiary {\n border: 0;\n color: #39870c;\n line-height: 1;\n padding: 0;\n background-color: transparent;\n}\na.dso-tertiary[disabled],\nbutton.dso-tertiary[disabled],\nlabel.dso-tertiary[disabled] {\n color: #afcf9d;\n}\na.dso-tertiary[disabled].dso-spinner-left, a.dso-tertiary[disabled].dso-spinner-right,\nbutton.dso-tertiary[disabled].dso-spinner-left,\nbutton.dso-tertiary[disabled].dso-spinner-right,\nlabel.dso-tertiary[disabled].dso-spinner-left,\nlabel.dso-tertiary[disabled].dso-spinner-right {\n color: #39870c;\n}\na.dso-tertiary:not([disabled]):hover,\nbutton.dso-tertiary:not([disabled]):hover,\nlabel.dso-tertiary:not([disabled]):hover {\n color: #275937;\n text-decoration: underline;\n text-underline-position: under;\n}\na.dso-tertiary:not([disabled]):active,\nbutton.dso-tertiary:not([disabled]):active,\nlabel.dso-tertiary:not([disabled]):active {\n color: #173521;\n}\na.dso-tertiary.dso-align,\nbutton.dso-tertiary.dso-align,\nlabel.dso-tertiary.dso-align {\n line-height: calc(1.5em - 1px);\n padding-block: 11px;\n padding-inline: 0;\n position: relative;\n}\na.dso-tertiary.dso-truncate,\nbutton.dso-tertiary.dso-truncate,\nlabel.dso-tertiary.dso-truncate {\n max-inline-size: 100%;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\na.dso-tertiary.dso-spinner-left::before,\nbutton.dso-tertiary.dso-spinner-left::before,\nlabel.dso-tertiary.dso-spinner-left::before {\n background-image: url(\"data:image/svg+xml,%3Csvg class='spinner' viewBox='0 0 100 100' xmlns='http://www.w3.org/2000/svg' %3E%3Cstyle%3E .spinner %7B animation: rotator 8s linear infinite; transform-origin: center; %7D @keyframes rotator %7B 0%25 %7B transform: rotate(0deg); %7D 100%25 %7B transform: rotate(360deg); %7D %7D .path %7B stroke-dasharray: 265; stroke-dashoffset: 0; transform-origin: center; stroke: %2339870c; animation: dash 2s ease-in-out infinite; %7D @keyframes dash %7B 0%25 %7B stroke-dashoffset: 265; %7D 50%25 %7B stroke-dashoffset: 65; transform:rotate(90deg); %7D 100%25 %7B stroke-dashoffset: 265; transform:rotate(360deg); %7D %3C/style%3E%3Ccircle class='path' fill='none' stroke-width='10' stroke-linecap='butt' cx='50' cy='50' r='45'%3E%3C/circle%3E%3C/svg%3E\");\n background-repeat: no-repeat;\n content: \"\";\n display: inline-block;\n block-size: 24px;\n vertical-align: middle;\n inline-size: 24px;\n margin-inline-end: 8px;\n}\na.dso-tertiary.dso-spinner-right::after,\nbutton.dso-tertiary.dso-spinner-right::after,\nlabel.dso-tertiary.dso-spinner-right::after {\n background-image: url(\"data:image/svg+xml,%3Csvg class='spinner' viewBox='0 0 100 100' xmlns='http://www.w3.org/2000/svg' %3E%3Cstyle%3E .spinner %7B animation: rotator 8s linear infinite; transform-origin: center; %7D @keyframes rotator %7B 0%25 %7B transform: rotate(0deg); %7D 100%25 %7B transform: rotate(360deg); %7D %7D .path %7B stroke-dasharray: 265; stroke-dashoffset: 0; transform-origin: center; stroke: %2339870c; animation: dash 2s ease-in-out infinite; %7D @keyframes dash %7B 0%25 %7B stroke-dashoffset: 265; %7D 50%25 %7B stroke-dashoffset: 65; transform:rotate(90deg); %7D 100%25 %7B stroke-dashoffset: 265; transform:rotate(360deg); %7D %3C/style%3E%3Ccircle class='path' fill='none' stroke-width='10' stroke-linecap='butt' cx='50' cy='50' r='45'%3E%3C/circle%3E%3C/svg%3E\");\n background-repeat: no-repeat;\n content: \"\";\n display: inline-block;\n block-size: 24px;\n vertical-align: middle;\n inline-size: 24px;\n margin-inline-start: 8px;\n}\na.dso-tertiary dso-icon + span:not(.sr-only),\na.dso-tertiary svg.di + span:not(.sr-only),\na.dso-tertiary span:not(.sr-only) + dso-icon,\na.dso-tertiary span:not(.sr-only) + svg.di,\nbutton.dso-tertiary dso-icon + span:not(.sr-only),\nbutton.dso-tertiary svg.di + span:not(.sr-only),\nbutton.dso-tertiary span:not(.sr-only) + dso-icon,\nbutton.dso-tertiary span:not(.sr-only) + svg.di,\nlabel.dso-tertiary dso-icon + span:not(.sr-only),\nlabel.dso-tertiary svg.di + span:not(.sr-only),\nlabel.dso-tertiary span:not(.sr-only) + dso-icon,\nlabel.dso-tertiary span:not(.sr-only) + svg.di {\n margin-inline-start: 8px;\n}\na.dso-tertiary svg.di.di-chevron-down + span:not(.sr-only),\na.dso-tertiary svg.di.di-chevron-up + span:not(.sr-only),\na.dso-tertiary span:not(.sr-only) + svg.di.di-chevron-down,\na.dso-tertiary span:not(.sr-only) + svg.di.di-chevron-up,\nbutton.dso-tertiary svg.di.di-chevron-down + span:not(.sr-only),\nbutton.dso-tertiary svg.di.di-chevron-up + span:not(.sr-only),\nbutton.dso-tertiary span:not(.sr-only) + svg.di.di-chevron-down,\nbutton.dso-tertiary span:not(.sr-only) + svg.di.di-chevron-up,\nlabel.dso-tertiary svg.di.di-chevron-down + span:not(.sr-only),\nlabel.dso-tertiary svg.di.di-chevron-up + span:not(.sr-only),\nlabel.dso-tertiary span:not(.sr-only) + svg.di.di-chevron-down,\nlabel.dso-tertiary span:not(.sr-only) + svg.di.di-chevron-up {\n margin-inline-start: 4px;\n}\na.dso-tertiary dso-icon[icon=chevron-left] + span:not(.sr-only),\na.dso-tertiary dso-icon[icon=chevron-right] + span:not(.sr-only),\na.dso-tertiary svg.di.di-angle-down + span:not(.sr-only),\na.dso-tertiary svg.di.di-angle-up + span:not(.sr-only),\na.dso-tertiary span:not(.sr-only) + svg.di.di-angle-down,\na.dso-tertiary span:not(.sr-only) + svg.di.di-angle-up,\na.dso-tertiary span:not(.sr-only) + dso-icon[icon=chevron-left],\na.dso-tertiary span:not(.sr-only) + dso-icon[icon=chevron-right],\nbutton.dso-tertiary dso-icon[icon=chevron-left] + span:not(.sr-only),\nbutton.dso-tertiary dso-icon[icon=chevron-right] + span:not(.sr-only),\nbutton.dso-tertiary svg.di.di-angle-down + span:not(.sr-only),\nbutton.dso-tertiary svg.di.di-angle-up + span:not(.sr-only),\nbutton.dso-tertiary span:not(.sr-only) + svg.di.di-angle-down,\nbutton.dso-tertiary span:not(.sr-only) + svg.di.di-angle-up,\nbutton.dso-tertiary span:not(.sr-only) + dso-icon[icon=chevron-left],\nbutton.dso-tertiary span:not(.sr-only) + dso-icon[icon=chevron-right],\nlabel.dso-tertiary dso-icon[icon=chevron-left] + span:not(.sr-only),\nlabel.dso-tertiary dso-icon[icon=chevron-right] + span:not(.sr-only),\nlabel.dso-tertiary svg.di.di-angle-down + span:not(.sr-only),\nlabel.dso-tertiary svg.di.di-angle-up + span:not(.sr-only),\nlabel.dso-tertiary span:not(.sr-only) + svg.di.di-angle-down,\nlabel.dso-tertiary span:not(.sr-only) + svg.di.di-angle-up,\nlabel.dso-tertiary span:not(.sr-only) + dso-icon[icon=chevron-left],\nlabel.dso-tertiary span:not(.sr-only) + dso-icon[icon=chevron-right] {\n margin-inline-start: 0;\n}\na.dso-tertiary dso-icon,\na.dso-tertiary svg.di,\na.dso-tertiary span,\nbutton.dso-tertiary dso-icon,\nbutton.dso-tertiary svg.di,\nbutton.dso-tertiary span,\nlabel.dso-tertiary dso-icon,\nlabel.dso-tertiary svg.di,\nlabel.dso-tertiary span {\n vertical-align: middle;\n}\na.dso-tertiary.extern::after, a.dso-tertiary.download::after,\nbutton.dso-tertiary.extern::after,\nbutton.dso-tertiary.download::after,\nlabel.dso-tertiary.extern::after,\nlabel.dso-tertiary.download::after {\n position: relative;\n inset-block-start: -2px;\n}\na.dso-tertiary.download::after,\nbutton.dso-tertiary.download::after,\nlabel.dso-tertiary.download::after {\n background: url(\"./di.svg#download\") no-repeat center;\n background-size: cover;\n block-size: 24px;\n vertical-align: top;\n inline-size: 24px;\n}\na.dso-tertiary.download[disabled]::after,\nbutton.dso-tertiary.download[disabled]::after,\nlabel.dso-tertiary.download[disabled]::after {\n background-image: var(--_dso-di-background-image, url(\"./di.svg#download-grasgroen-40\"));\n}\na.dso-tertiary.download:not([disabled]):hover::after, a.dso-tertiary.download:not([disabled]):active::after,\nbutton.dso-tertiary.download:not([disabled]):hover::after,\nbutton.dso-tertiary.download:not([disabled]):active::after,\nlabel.dso-tertiary.download:not([disabled]):hover::after,\nlabel.dso-tertiary.download:not([disabled]):active::after {\n background-image: var(--_dso-di-background-image, url(\"./di.svg#download-bosgroen\"));\n}\na.dso-tertiary.extern::after,\nbutton.dso-tertiary.extern::after,\nlabel.dso-tertiary.extern::after {\n background: url(\"./di.svg#external-link\") no-repeat center;\n background-size: cover;\n block-size: 24px;\n vertical-align: top;\n inline-size: 24px;\n}\na.dso-tertiary.extern[disabled]::after,\nbutton.dso-tertiary.extern[disabled]::after,\nlabel.dso-tertiary.extern[disabled]::after {\n background-image: var(--_dso-di-background-image, url(\"./di.svg#external-link-grasgroen-40\"));\n}\na.dso-tertiary.extern:not([disabled]):hover::after, a.dso-tertiary.extern:not([disabled]):active::after,\nbutton.dso-tertiary.extern:not([disabled]):hover::after,\nbutton.dso-tertiary.extern:not([disabled]):active::after,\nlabel.dso-tertiary.extern:not([disabled]):hover::after,\nlabel.dso-tertiary.extern:not([disabled]):active::after {\n background-image: var(--_dso-di-background-image, url(\"./di.svg#external-link-bosgroen\"));\n}\na.dso-map,\nbutton.dso-map,\nlabel.dso-map {\n display: inline-block;\n font-size: 1em;\n font-weight: 500;\n margin-block-end: 0;\n text-decoration: none;\n touch-action: manipulation;\n text-align: start;\n user-select: none;\n vertical-align: middle;\n}\na.dso-map:focus, a.dso-map:focus-visible,\nbutton.dso-map:focus,\nbutton.dso-map:focus-visible,\nlabel.dso-map:focus,\nlabel.dso-map:focus-visible {\n outline-offset: 2px;\n}\na.dso-map:active,\nbutton.dso-map:active,\nlabel.dso-map:active {\n outline: 0;\n}\na.dso-map,\nbutton.dso-map,\nlabel.dso-map {\n background-color: var(--_dso-button-secondary-background-color, #fff);\n border-color: var(--_dso-button-secondary-border-color, #39870c);\n color: var(--_dso-button-secondary-color, #39870c);\n}\na.dso-map,\nbutton.dso-map,\nlabel.dso-map {\n border-width: 1px;\n border-style: solid;\n border-radius: 4px;\n line-height: 1.5;\n min-inline-size: 56px;\n padding-block: 11px;\n padding-inline: 15px;\n}\na.dso-map:hover,\nbutton.dso-map:hover,\nlabel.dso-map:hover {\n background-color: var(--_dso-button-secondary-hover-background-color, #d7e7ce);\n border-color: var(--_dso-button-secondary-hover-border-color, #275937);\n color: var(--_dso-button-secondary-hover-color, #275937);\n}\na.dso-map:active,\nbutton.dso-map:active,\nlabel.dso-map:active {\n background-color: var(--_dso-button-secondary-active-background-color, #275937);\n border-color: var(--_dso-button-secondary-active-border-color, #275937);\n color: var(--_dso-button-secondary-active-color, #fff);\n}\na.dso-map[disabled], a.dso-map[disabled]:hover,\nbutton.dso-map[disabled],\nbutton.dso-map[disabled]:hover,\nlabel.dso-map[disabled],\nlabel.dso-map[disabled]:hover {\n background-color: var(--_dso-button-secondary-disabled-background-color, #fff);\n border-color: var(--_dso-button-secondary-disabled-border-color, #afcf9d);\n color: var(--_dso-button-secondary-disabled-color, #afcf9d);\n}\na.dso-map.dso-small,\nbutton.dso-map.dso-small,\nlabel.dso-map.dso-small {\n line-height: 1rem;\n}\na.dso-map.dso-small dso-icon,\na.dso-map.dso-small svg.di, a.dso-map.dso-small.extern::after, a.dso-map.dso-small.download::after, a.dso-map.dso-small.dso-spinner::before,\nbutton.dso-map.dso-small dso-icon,\nbutton.dso-map.dso-small svg.di,\nbutton.dso-map.dso-small.extern::after,\nbutton.dso-map.dso-small.download::after,\nbutton.dso-map.dso-small.dso-spinner::before,\nlabel.dso-map.dso-small dso-icon,\nlabel.dso-map.dso-small svg.di,\nlabel.dso-map.dso-small.extern::after,\nlabel.dso-map.dso-small.download::after,\nlabel.dso-map.dso-small.dso-spinner::before {\n margin-block-end: -4px;\n margin-block-start: -4px;\n}\na.dso-map.dso-small.dso-spinner-left::before,\nbutton.dso-map.dso-small.dso-spinner-left::before,\nlabel.dso-map.dso-small.dso-spinner-left::before {\n block-size: 16px;\n inline-size: 16px;\n}\na.dso-map.dso-small.dso-spinner-right::after,\nbutton.dso-map.dso-small.dso-spinner-right::after,\nlabel.dso-map.dso-small.dso-spinner-right::after {\n block-size: 16px;\n inline-size: 16px;\n}\na.dso-map dso-icon:has(+ span:not(.sr-only)),\na.dso-map svg.di:has(+ span:not(.sr-only)),\nbutton.dso-map dso-icon:has(+ span:not(.sr-only)),\nbutton.dso-map svg.di:has(+ span:not(.sr-only)),\nlabel.dso-map dso-icon:has(+ span:not(.sr-only)),\nlabel.dso-map svg.di:has(+ span:not(.sr-only)) {\n margin-inline-start: -8px;\n}\na.dso-map span:not(.sr-only) + dso-icon,\na.dso-map span:not(.sr-only) + svg.di,\nbutton.dso-map span:not(.sr-only) + dso-icon,\nbutton.dso-map span:not(.sr-only) + svg.di,\nlabel.dso-map span:not(.sr-only) + dso-icon,\nlabel.dso-map span:not(.sr-only) + svg.di {\n margin-inline-start: 8px;\n margin-inline-end: -8px;\n}\na.dso-map dso-icon + span:not(.sr-only),\na.dso-map svg.di + span:not(.sr-only),\nbutton.dso-map dso-icon + span:not(.sr-only),\nbutton.dso-map svg.di + span:not(.sr-only),\nlabel.dso-map dso-icon + span:not(.sr-only),\nlabel.dso-map svg.di + span:not(.sr-only) {\n margin-inline-start: 8px;\n}\na.dso-map.dso-spinner-left[disabled], a.dso-map.dso-spinner-right[disabled],\nbutton.dso-map.dso-spinner-left[disabled],\nbutton.dso-map.dso-spinner-right[disabled],\nlabel.dso-map.dso-spinner-left[disabled],\nlabel.dso-map.dso-spinner-right[disabled] {\n background-color: #fff;\n border-color: #39870c;\n color: #39870c;\n}\na.dso-map.dso-spinner-left::before,\nbutton.dso-map.dso-spinner-left::before,\nlabel.dso-map.dso-spinner-left::before {\n background-image: url(\"data:image/svg+xml,%3Csvg class='spinner' viewBox='0 0 100 100' xmlns='http://www.w3.org/2000/svg' %3E%3Cstyle%3E .spinner %7B animation: rotator 8s linear infinite; transform-origin: center; %7D @keyframes rotator %7B 0%25 %7B transform: rotate(0deg); %7D 100%25 %7B transform: rotate(360deg); %7D %7D .path %7B stroke-dasharray: 265; stroke-dashoffset: 0; transform-origin: center; stroke: %2339870c; animation: dash 2s ease-in-out infinite; %7D @keyframes dash %7B 0%25 %7B stroke-dashoffset: 265; %7D 50%25 %7B stroke-dashoffset: 65; transform:rotate(90deg); %7D 100%25 %7B stroke-dashoffset: 265; transform:rotate(360deg); %7D %3C/style%3E%3Ccircle class='path' fill='none' stroke-width='10' stroke-linecap='butt' cx='50' cy='50' r='45'%3E%3C/circle%3E%3C/svg%3E\");\n background-repeat: no-repeat;\n content: \"\";\n display: inline-block;\n block-size: 24px;\n vertical-align: top;\n inline-size: 24px;\n margin-inline-end: 8px;\n}\na.dso-map.dso-spinner-left:not([disabled]):hover::before,\nbutton.dso-map.dso-spinner-left:not([disabled]):hover::before,\nlabel.dso-map.dso-spinner-left:not([disabled]):hover::before {\n background-image: url(\"data:image/svg+xml,%3Csvg class='spinner' viewBox='0 0 100 100' xmlns='http://www.w3.org/2000/svg' %3E%3Cstyle%3E .spinner %7B animation: rotator 8s linear infinite; transform-origin: center; %7D @keyframes rotator %7B 0%25 %7B transform: rotate(0deg); %7D 100%25 %7B transform: rotate(360deg); %7D %7D .path %7B stroke-dasharray: 265; stroke-dashoffset: 0; transform-origin: center; stroke: %23fff; animation: dash 2s ease-in-out infinite; %7D @keyframes dash %7B 0%25 %7B stroke-dashoffset: 265; %7D 50%25 %7B stroke-dashoffset: 65; transform:rotate(90deg); %7D 100%25 %7B stroke-dashoffset: 265; transform:rotate(360deg); %7D %3C/style%3E%3Ccircle class='path' fill='none' stroke-width='10' stroke-linecap='butt' cx='50' cy='50' r='45'%3E%3C/circle%3E%3C/svg%3E\");\n background-repeat: no-repeat;\n content: \"\";\n display: inline-block;\n block-size: 24px;\n vertical-align: top;\n inline-size: 24px;\n margin-inline-end: 8px;\n}\na.dso-map.dso-spinner-left:not([disabled]).dso-small:hover::before,\nbutton.dso-map.dso-spinner-left:not([disabled]).dso-small:hover::before,\nlabel.dso-map.dso-spinner-left:not([disabled]).dso-small:hover::before {\n block-size: 16px;\n inline-size: 16px;\n}\na.dso-map.dso-spinner-right::after,\nbutton.dso-map.dso-spinner-right::after,\nlabel.dso-map.dso-spinner-right::after {\n background-image: url(\"data:image/svg+xml,%3Csvg class='spinner' viewBox='0 0 100 100' xmlns='http://www.w3.org/2000/svg' %3E%3Cstyle%3E .spinner %7B animation: rotator 8s linear infinite; transform-origin: center; %7D @keyframes rotator %7B 0%25 %7B transform: rotate(0deg); %7D 100%25 %7B transform: rotate(360deg); %7D %7D .path %7B stroke-dasharray: 265; stroke-dashoffset: 0; transform-origin: center; stroke: %2339870c; animation: dash 2s ease-in-out infinite; %7D @keyframes dash %7B 0%25 %7B stroke-dashoffset: 265; %7D 50%25 %7B stroke-dashoffset: 65; transform:rotate(90deg); %7D 100%25 %7B stroke-dashoffset: 265; transform:rotate(360deg); %7D %3C/style%3E%3Ccircle class='path' fill='none' stroke-width='10' stroke-linecap='butt' cx='50' cy='50' r='45'%3E%3C/circle%3E%3C/svg%3E\");\n background-repeat: no-repeat;\n content: \"\";\n display: inline-block;\n block-size: 24px;\n vertical-align: top;\n inline-size: 24px;\n margin-inline-start: 8px;\n}\na.dso-map.dso-spinner-right:not([disabled]):hover::after,\nbutton.dso-map.dso-spinner-right:not([disabled]):hover::after,\nlabel.dso-map.dso-spinner-right:not([disabled]):hover::after {\n background-image: url(\"data:image/svg+xml,%3Csvg class='spinner' viewBox='0 0 100 100' xmlns='http://www.w3.org/2000/svg' %3E%3Cstyle%3E .spinner %7B animation: rotator 8s linear infinite; transform-origin: center; %7D @keyframes rotator %7B 0%25 %7B transform: rotate(0deg); %7D 100%25 %7B transform: rotate(360deg); %7D %7D .path %7B stroke-dasharray: 265; stroke-dashoffset: 0; transform-origin: center; stroke: %23fff; animation: dash 2s ease-in-out infinite; %7D @keyframes dash %7B 0%25 %7B stroke-dashoffset: 265; %7D 50%25 %7B stroke-dashoffset: 65; transform:rotate(90deg); %7D 100%25 %7B stroke-dashoffset: 265; transform:rotate(360deg); %7D %3C/style%3E%3Ccircle class='path' fill='none' stroke-width='10' stroke-linecap='butt' cx='50' cy='50' r='45'%3E%3C/circle%3E%3C/svg%3E\");\n background-repeat: no-repeat;\n content: \"\";\n display: inline-block;\n block-size: 24px;\n vertical-align: top;\n inline-size: 24px;\n margin-inline-start: 8px;\n}\na.dso-map.dso-spinner-right:not([disabled]).dso-small:hover::after,\nbutton.dso-map.dso-spinner-right:not([disabled]).dso-small:hover::after,\nlabel.dso-map.dso-spinner-right:not([disabled]).dso-small:hover::after {\n block-size: 16px;\n inline-size: 16px;\n}\na.dso-map,\nbutton.dso-map,\nlabel.dso-map {\n box-shadow: 0 1px 4px 0 rgba(0, 0, 0, 0.5);\n border: 0;\n font-weight: 600;\n margin-inline-end: 16px;\n padding-block: 8px;\n padding-inline: 16px;\n white-space: nowrap;\n}\na.dso-map:focus, a.dso-map:focus-visible,\nbutton.dso-map:focus,\nbutton.dso-map:focus-visible,\nlabel.dso-map:focus,\nlabel.dso-map:focus-visible {\n outline-offset: -1px;\n}\na.dso-map:has(span.sr-only):has(dso-icon, svg.di),\nbutton.dso-map:has(span.sr-only):has(dso-icon, svg.di),\nlabel.dso-map:has(span.sr-only):has(dso-icon, svg.di) {\n padding: 8px;\n min-inline-size: auto;\n block-size: 40px;\n inline-size: 40px;\n}\n\na.dso-primary {\n text-decoration: none;\n}\na.dso-primary, a.dso-primary:visited {\n color: #fff;\n}\na.dso-secondary {\n text-decoration: none;\n}\na.dso-secondary, a.dso-secondary:visited {\n color: #39870c;\n}\na.dso-secondary:hover, a.dso-secondary:visited:hover {\n color: #275937;\n}\na.dso-tertiary {\n text-decoration: none;\n}\na.dso-tertiary, a.dso-tertiary:visited {\n color: #39870c;\n}\n\n.dso-primary + .dso-primary,\n.dso-primary + .dso-secondary,\n.dso-primary + .dso-tertiary,\n.dso-secondary + .dso-primary,\n.dso-secondary + .dso-secondary,\n.dso-secondary + .dso-tertiary,\n.dso-tertiary + .dso-primary,\n.dso-tertiary + .dso-secondary,\n.dso-tertiary + .dso-tertiary {\n margin-inline-start: 16px;\n}\n\n:host {\n background-color: #fff;\n border: 1px solid #ccc;\n inset-block-end: 0;\n display: block;\n font-family: Asap, sans-serif;\n position: absolute;\n inset-block-start: 0;\n inset-inline-start: 100%;\n transition: transform 300ms ease;\n inline-size: 300px;\n}\n\n*,\n*::after,\n*::before {\n box-sizing: border-box;\n}\n\n.sr-only {\n position: absolute;\n inline-size: 1px;\n block-size: 1px;\n padding: 0;\n margin: -1px;\n overflow: hidden;\n clip: rect(0, 0, 0, 0);\n border: 0;\n}\n\n:host([open]) {\n box-shadow: 0 1px 4px 0 rgba(0, 0, 0, 0.3);\n transform: translateX(-100%);\n}\n:host([open]) .toggle-visibility-button {\n display: none;\n}\n:host([open]) .zoom-buttons {\n inset-block-start: 16px;\n}\n\n.toggle-visibility-button {\n position: absolute;\n inset-inline-end: calc(100% + 56px);\n inset-block-start: 16px;\n}\n\n.zoom-buttons {\n position: absolute;\n inset-inline-end: calc(100% + 16px);\n inset-block-start: 16px;\n}\n\n.close-button {\n padding: 0;\n position: absolute;\n inset-inline-end: 16px;\n inset-block-start: 16px;\n}\n\nsection:not([hidden]) {\n display: flex;\n flex-direction: column;\n block-size: 100%;\n}\n\nheader,\n.content {\n padding: 16px;\n}\n\nheader {\n border-block-end: 1px solid #ccc;\n flex-grow: 0;\n position: relative;\n}\nheader h2 {\n color: #275937;\n font-family: \"Asap\", sans-serif;\n line-height: 1;\n margin: 0;\n}\n\n@media screen and (max-width: 767px) {\n button.toggle-visibility-button {\n block-size: 40px;\n margin-inline-end: 0;\n min-inline-size: auto;\n inset-inline-end: calc(100% + 16px);\n inline-size: 40px;\n }\n button.toggle-visibility-button dso-icon {\n margin-inline-end: 0;\n }\n button.toggle-visibility-button span {\n position: absolute;\n inline-size: 1px;\n block-size: 1px;\n padding: 0;\n margin: -1px;\n overflow: hidden;\n clip: rect(0, 0, 0, 0);\n border: 0;\n }\n .zoom-buttons {\n inset-block-start: 72px;\n }\n}";var i=undefined&&undefined.__classPrivateFieldGet||function(n,o,e,s){if(e==="a"&&!s)throw new TypeError("Private accessor was defined without a getter");if(typeof o==="function"?n!==o||!s:!o.has(n))throw new TypeError("Cannot read private member from an object whose class did not declare it");return e==="m"?s:e==="a"?s.call(n):s?s.value:o.get(n)};var l=undefined&&undefined.__classPrivateFieldSet||function(n,o,e,s,a){if(s==="m")throw new TypeError("Private method is not writable");if(s==="a"&&!a)throw new TypeError("Private accessor was defined without a setter");if(typeof o==="function"?n!==o||!a:!o.has(n))throw new TypeError("Cannot write private member to an object whose class did not declare it");return s==="a"?a.call(n,e):a?a.value=e:o.set(n,e),e};var c,b;const p=300;const f=class{constructor(e){n(this,e);this.dsoZoomIn=o(this,"dsoZoomIn",7);this.dsoZoomOut=o(this,"dsoZoomOut",7);this.dsoToggle=o(this,"dsoToggle",7);this.open=false;this.hideContent=!this.open;this.text=r((()=>this.host),t);c.set(this,void 0);b.set(this,void 0)}watchOpen(n){if(n){this.hideContent=false;setTimeout((()=>{var n;return(n=i(this,c,"f"))===null||n===void 0?void 0:n.focus()}),p)}else{setTimeout((()=>{var n;this.hideContent=true;(n=i(this,b,"f"))===null||n===void 0?void 0:n.focus()}),p)}}async toggleVisibility(n){this.open=!this.open;this.dsoToggle.emit({originalEvent:n,open:this.open})}render(){return e(s,null,e("button",{key:"2579f5114519e663c05fcd5dfc129dcbba7f905c",type:"button",id:"toggle-visibility-button",class:"dso-map toggle-visibility-button",onClick:n=>this.toggleVisibility(n),ref:n=>l(this,b,n,"f")},e("dso-icon",{key:"42ff3395344805ab9f095e73eb960ff53488405a",icon:"layers"}),e("span",{key:"afd9ef890339303ae6b8c3c6e679aba56facf3fc"},this.text("layersButton"))),e("dso-button-group",{key:"4cbbfd4afd6fa6b813690beb3e553b0111a85e7f",class:"zoom-buttons",direction:"column"},e("button",{key:"c912c8dfa54d45dea45fd2faf0d0119114c571c3",type:"button",class:"dso-map",onClick:n=>this.dsoZoomIn.emit(n),disabled:this.disableZoom==="in"||this.disableZoom==="both"},e("span",{key:"53c11c5637ee275d4b691078ee41b27799718480",class:"sr-only"},this.text("zoomIn")),e("dso-icon",{key:"3857a89f32a68eed54f979050b4ebb7c95f93c85",icon:"plus"})),e("button",{key:"f89fd988c37987d8dfdd963e1021e37f5d1aa93b",type:"button",class:"dso-map",onClick:n=>this.dsoZoomOut.emit(n),disabled:this.disableZoom==="out"||this.disableZoom==="both"},e("span",{key:"65a714499e40de87347aa3d299690a93dfed4a45",class:"sr-only"},this.text("zoomOut")),e("dso-icon",{key:"01dca383ce118b67b7e9c96e9401d4c217173e58",icon:"minus"}))),e("section",{key:"a33f2a62e746104008817b4c5ba618de5deef971",hidden:this.hideContent},e("header",{key:"26014b4d7c25b3db074a839d500da55c3a1ca256"},e("h2",{key:"62fdfe99b29e3d3351ca96e339fed7b4432371d6"},this.text("title")),e("button",{key:"31d2ee7a7100b3aacabd16fea867a950981bed37",type:"button",class:"dso-tertiary close-button",onClick:n=>this.toggleVisibility(n),ref:n=>l(this,c,n,"f")},e("span",{key:"020935e73272301ff7b064d25e6bc2797bf801dc",class:"sr-only"},this.text("hidePanel",{title:this.text("title")})),e("dso-icon",{key:"19b004f2b51a3085f238269e5f1ac30fe2f9de04",icon:"times"}))),e("dso-scrollable",{key:"1883f9fdf09a8e7bc4f91398ecceb465885a91e8"},e("div",{key:"e732d6bbd7fdc95df2242657253d5d0ec820567d",class:"content"},e("slot",{key:"052e8d0e63d75150f83bbbaca0951f2fed47f0d4"})))))}get host(){return a(this)}static get watchers(){return{open:["watchOpen"]}}};c=new WeakMap,b=new WeakMap;f.style=d;export{f as dso_map_controls};
2
+ //# sourceMappingURL=p-9a7ab5aa.entry.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["translations","en","title","layersButton","zoomIn","zoomOut","hidePanel","nl","mapControlsCss","transitionDuration","MapControls","constructor","hostRef","this","open","hideContent","text","i18n","host","_MapControls_closeButtonElement","set","_MapControls_toggleButtonElement","watchOpen","setTimeout","_a","__classPrivateFieldGet","focus","toggleVisibility","e","dsoToggle","emit","originalEvent","render","h","Fragment","key","type","id","class","onClick","ref","element","__classPrivateFieldSet","icon","direction","dsoZoomIn","disabled","disableZoom","dsoZoomOut","hidden"],"sources":["src/components/map-controls/map-controls.i18n.ts","src/components/map-controls/map-controls.scss?tag=dso-map-controls&encapsulation=shadow","src/components/map-controls/map-controls.tsx"],"sourcesContent":["import { Resource } from \"../../utils/i18n\";\r\n\r\nexport const translations: Resource = {\r\n en: {\r\n \"dso-map-controls\": {\r\n title: \"Map layers\",\r\n layersButton: \"Map layers\",\r\n zoomIn: \"Zoom in\",\r\n zoomOut: \"Zoom out\",\r\n hidePanel: \"Hide panel {{title}}\",\r\n },\r\n },\r\n nl: {\r\n \"dso-map-controls\": {\r\n title: \"Kaartlagen\",\r\n layersButton: \"Kaartlagen\",\r\n zoomIn: \"Zoom in\",\r\n zoomOut: \"Zoom uit\",\r\n hidePanel: \"Verberg paneel {{title}}\",\r\n },\r\n },\r\n};\r\n","@use \"~dso-toolkit/src/utilities\";\r\n@use \"~dso-toolkit/src/variables/colors\";\r\n@use \"~dso-toolkit/src/variables/media-query-breakpoints\";\r\n@use \"~dso-toolkit/src/variables/typography\";\r\n@use \"~dso-toolkit/src/variables/units\";\r\n\r\n@use \"~dso-toolkit/src/components/button/button\";\r\n@use \"~dso-toolkit/src/components/button/button.variables\" as button-variables;\r\n\r\n@use \"map-controls.variables\" as core-map-controls-variables;\r\n\r\n:host {\r\n background-color: colors.$wit;\r\n border: 1px solid colors.$grijs-20;\r\n inset-block-end: 0;\r\n display: block;\r\n font-family: typography.$font-family-base;\r\n position: absolute;\r\n inset-block-start: 0;\r\n inset-inline-start: 100%;\r\n transition: transform core-map-controls-variables.$transition-duration ease;\r\n inline-size: 300px;\r\n}\r\n\r\n@include utilities.box-sizing();\r\n\r\n// Todo: #2315 this will be redundant when the icon only buttons are replaced with Icon Button\r\n.sr-only {\r\n @include utilities.sr-only();\r\n}\r\n\r\n:host([open]) {\r\n box-shadow: 0 1px 4px 0 rgba(0, 0, 0, 0.3);\r\n transform: translateX(-100%);\r\n\r\n .toggle-visibility-button {\r\n display: none;\r\n }\r\n\r\n .zoom-buttons {\r\n inset-block-start: units.$u2;\r\n }\r\n}\r\n\r\n.toggle-visibility-button {\r\n position: absolute;\r\n inset-inline-end: calc(100% + #{core-map-controls-variables.$controls-margin + button-variables.$map-size});\r\n inset-block-start: core-map-controls-variables.$controls-margin;\r\n}\r\n\r\n.zoom-buttons {\r\n position: absolute;\r\n inset-inline-end: calc(100% + core-map-controls-variables.$controls-margin);\r\n inset-block-start: core-map-controls-variables.$controls-margin;\r\n}\r\n\r\n.close-button {\r\n padding: 0;\r\n position: absolute;\r\n inset-inline-end: core-map-controls-variables.$controls-margin;\r\n inset-block-start: core-map-controls-variables.$controls-margin;\r\n}\r\n\r\nsection:not([hidden]) {\r\n display: flex;\r\n flex-direction: column;\r\n block-size: 100%;\r\n}\r\n\r\nheader,\r\n.content {\r\n padding: units.$u2;\r\n}\r\n\r\nheader {\r\n border-block-end: 1px solid colors.$grijs-20;\r\n flex-grow: 0;\r\n position: relative;\r\n\r\n h2 {\r\n color: colors.$bosgroen;\r\n font-family: typography.$headings-font-family;\r\n line-height: 1;\r\n margin: 0;\r\n }\r\n}\r\n\r\n@media screen and (max-width: media-query-breakpoints.$screen-xs-max) {\r\n button.toggle-visibility-button {\r\n block-size: units.$u5;\r\n margin-inline-end: 0;\r\n min-inline-size: auto;\r\n inset-inline-end: calc(100% + core-map-controls-variables.$controls-margin);\r\n inline-size: units.$u5;\r\n\r\n dso-icon {\r\n margin-inline-end: 0;\r\n }\r\n\r\n span {\r\n @include utilities.sr-only();\r\n }\r\n }\r\n\r\n .zoom-buttons {\r\n inset-block-start: units.$u9;\r\n }\r\n}\r\n","import {\r\n Component,\r\n ComponentInterface,\r\n Element,\r\n Event,\r\n EventEmitter,\r\n Fragment,\r\n Method,\r\n Prop,\r\n State,\r\n Watch,\r\n h,\r\n} from \"@stencil/core\";\r\n\r\nimport { i18n } from \"../../utils/i18n\";\r\n\r\nimport { translations } from \"./map-controls.i18n\";\r\nimport { MapControlsToggleEvent } from \"./map-controls.interfaces\";\r\n\r\n// Sync with $transition-duration in ./map-controls.scss and map-controls.cy.ts\r\nconst transitionDuration = 300;\r\n\r\n@Component({\r\n tag: \"dso-map-controls\",\r\n styleUrl: \"./map-controls.scss\",\r\n shadow: true,\r\n})\r\nexport class MapControls implements ComponentInterface {\r\n @Element()\r\n host!: HTMLDsoMapControlsElement;\r\n\r\n /**\r\n * To show and hide the Map Controls.\r\n */\r\n @Prop({ reflect: true, mutable: true })\r\n open = false;\r\n\r\n /**\r\n * To disable the zoom controls:\r\n *\r\n * * `in`: Disable zoom in button.\r\n * * `out`: Disable zoom out button.\r\n * * `both`: Disable zoom in and zoom out.\r\n */\r\n @Prop()\r\n disableZoom?: \"in\" | \"out\" | \"both\";\r\n\r\n /**\r\n * Emitted when the user activates the zoom in button.\r\n */\r\n @Event()\r\n dsoZoomIn!: EventEmitter<MouseEvent>;\r\n\r\n /**\r\n * Emitted when the user activates the zoom out button.\r\n */\r\n @Event()\r\n dsoZoomOut!: EventEmitter<MouseEvent>;\r\n\r\n /**\r\n * emits when the panel opens or closes.\r\n *\r\n * - `event.detail.originalEvent` contains the original `MouseEvent / KeyboardEvent` when the panel is toggled by clicking the visibility button or the close button.\r\n * - `event.detail.open` is true when the panel opens and false when the panel closes.\r\n */\r\n @Event()\r\n dsoToggle!: EventEmitter<MapControlsToggleEvent>;\r\n\r\n @State()\r\n hideContent = !this.open;\r\n\r\n @Watch(\"open\")\r\n watchOpen(open: boolean) {\r\n if (open) {\r\n this.hideContent = false;\r\n\r\n setTimeout(() => this.#closeButtonElement?.focus(), transitionDuration);\r\n } else {\r\n setTimeout(() => {\r\n this.hideContent = true;\r\n\r\n this.#toggleButtonElement?.focus();\r\n }, transitionDuration);\r\n }\r\n }\r\n\r\n /**\r\n * Emitted when the visibility is toggled.\r\n *\r\n * Can be used to recalculate map widths or reposition center when the Map Controls opens or closes.\r\n * @param e\r\n */\r\n @Method()\r\n async toggleVisibility(e: MouseEvent | KeyboardEvent) {\r\n this.open = !this.open;\r\n\r\n this.dsoToggle.emit({\r\n originalEvent: e,\r\n open: this.open,\r\n });\r\n }\r\n\r\n private text = i18n(() => this.host, translations);\r\n\r\n #closeButtonElement: HTMLButtonElement | undefined;\r\n #toggleButtonElement: HTMLButtonElement | undefined;\r\n\r\n render() {\r\n return (\r\n <>\r\n <button\r\n type=\"button\"\r\n id=\"toggle-visibility-button\"\r\n class=\"dso-map toggle-visibility-button\"\r\n onClick={(e) => this.toggleVisibility(e)}\r\n ref={(element) => (this.#toggleButtonElement = element)}\r\n >\r\n <dso-icon icon=\"layers\"></dso-icon>\r\n <span>{this.text(\"layersButton\")}</span>\r\n </button>\r\n <dso-button-group class=\"zoom-buttons\" direction=\"column\">\r\n <button\r\n type=\"button\"\r\n class=\"dso-map\"\r\n onClick={(e) => this.dsoZoomIn.emit(e)}\r\n disabled={this.disableZoom === \"in\" || this.disableZoom === \"both\"}\r\n >\r\n <span class=\"sr-only\">{this.text(\"zoomIn\")}</span>\r\n <dso-icon icon=\"plus\"></dso-icon>\r\n </button>\r\n <button\r\n type=\"button\"\r\n class=\"dso-map\"\r\n onClick={(e) => this.dsoZoomOut.emit(e)}\r\n disabled={this.disableZoom === \"out\" || this.disableZoom === \"both\"}\r\n >\r\n <span class=\"sr-only\">{this.text(\"zoomOut\")}</span>\r\n <dso-icon icon=\"minus\"></dso-icon>\r\n </button>\r\n </dso-button-group>\r\n <section hidden={this.hideContent}>\r\n <header>\r\n <h2>{this.text(\"title\")}</h2>\r\n <button\r\n type=\"button\"\r\n class=\"dso-tertiary close-button\"\r\n onClick={(e) => this.toggleVisibility(e)}\r\n ref={(element) => (this.#closeButtonElement = element)}\r\n >\r\n <span class=\"sr-only\">{this.text(\"hidePanel\", { title: this.text(\"title\") })}</span>\r\n <dso-icon icon=\"times\"></dso-icon>\r\n </button>\r\n </header>\r\n <dso-scrollable>\r\n <div class=\"content\">\r\n <slot></slot>\r\n </div>\r\n </dso-scrollable>\r\n </section>\r\n </>\r\n );\r\n }\r\n}\r\n"],"mappings":"oGAEO,MAAMA,EAAyB,CACpCC,GAAI,CACF,mBAAoB,CAClBC,MAAO,aACPC,aAAc,aACdC,OAAQ,UACRC,QAAS,WACTC,UAAW,yBAGfC,GAAI,CACF,mBAAoB,CAClBL,MAAO,aACPC,aAAc,aACdC,OAAQ,UACRC,QAAS,WACTC,UAAW,8BClBjB,MAAME,EAAiB,w9zC,kwBCoBvB,MAAMC,EAAqB,I,MAOdC,EAAW,MALxB,WAAAC,CAAAC,G,2HAaEC,KAAIC,KAAG,MAkCPD,KAAAE,aAAeF,KAAKC,KAiCZD,KAAAG,KAAOC,GAAK,IAAMJ,KAAKK,MAAMlB,GAErCmB,EAAmDC,IAAAP,UAAA,GACnDQ,EAAoDD,IAAAP,UAAA,EAyDrD,CA1FC,SAAAS,CAAUR,GACR,GAAIA,EAAM,CACRD,KAAKE,YAAc,MAEnBQ,YAAW,KAAM,IAAAC,EAAA,OAAAA,EAAAC,EAAAZ,KAAwBM,EAAA,cAAAK,SAAA,SAAAA,EAAEE,OAAO,GAAEjB,E,KAC/C,CACLc,YAAW,K,MACTV,KAAKE,YAAc,MAEnBS,EAAAC,EAAAZ,KAAIQ,EAAA,QAAuB,MAAAG,SAAA,SAAAA,EAAAE,OAAO,GACjCjB,E,EAWP,sBAAMkB,CAAiBC,GACrBf,KAAKC,MAAQD,KAAKC,KAElBD,KAAKgB,UAAUC,KAAK,CAClBC,cAAeH,EACfd,KAAMD,KAAKC,M,CASf,MAAAkB,GACE,OACEC,EAAAC,EAAA,KACED,EAAA,UAAAE,IAAA,2CACEC,KAAK,SACLC,GAAG,2BACHC,MAAM,mCACNC,QAAUX,GAAMf,KAAKc,iBAAiBC,GACtCY,IAAMC,GAAaC,EAAA7B,KAA4BQ,EAAAoB,EAAO,MAEtDR,EAAU,YAAAE,IAAA,2CAAAQ,KAAK,WACfV,EAAA,QAAAE,IAAA,4CAAOtB,KAAKG,KAAK,kBAEnBiB,EAAA,oBAAAE,IAAA,2CAAkBG,MAAM,eAAeM,UAAU,UAC/CX,EAAA,UAAAE,IAAA,2CACEC,KAAK,SACLE,MAAM,UACNC,QAAUX,GAAMf,KAAKgC,UAAUf,KAAKF,GACpCkB,SAAUjC,KAAKkC,cAAgB,MAAQlC,KAAKkC,cAAgB,QAE5Dd,EAAM,QAAAE,IAAA,2CAAAG,MAAM,WAAWzB,KAAKG,KAAK,WACjCiB,EAAA,YAAAE,IAAA,2CAAUQ,KAAK,UAEjBV,EAAA,UAAAE,IAAA,2CACEC,KAAK,SACLE,MAAM,UACNC,QAAUX,GAAMf,KAAKmC,WAAWlB,KAAKF,GACrCkB,SAAUjC,KAAKkC,cAAgB,OAASlC,KAAKkC,cAAgB,QAE7Dd,EAAM,QAAAE,IAAA,2CAAAG,MAAM,WAAWzB,KAAKG,KAAK,YACjCiB,EAAA,YAAAE,IAAA,2CAAUQ,KAAK,YAGnBV,EAAA,WAAAE,IAAA,2CAASc,OAAQpC,KAAKE,aACpBkB,EAAA,UAAAE,IAAA,4CACEF,EAAA,MAAAE,IAAA,4CAAKtB,KAAKG,KAAK,UACfiB,EAAA,UAAAE,IAAA,2CACEC,KAAK,SACLE,MAAM,4BACNC,QAAUX,GAAMf,KAAKc,iBAAiBC,GACtCY,IAAMC,GAAaC,EAAA7B,KAA2BM,EAAAsB,EAAO,MAErDR,EAAM,QAAAE,IAAA,2CAAAG,MAAM,WAAWzB,KAAKG,KAAK,YAAa,CAAEd,MAAOW,KAAKG,KAAK,YACjEiB,EAAA,YAAAE,IAAA,2CAAUQ,KAAK,YAGnBV,EAAA,kBAAAE,IAAA,4CACEF,EAAK,OAAAE,IAAA,2CAAAG,MAAM,WACTL,EAAA,QAAAE,IAAA,gD","ignoreList":[]}
1
+ {"version":3,"names":["translations","en","title","layersButton","zoomIn","zoomOut","hidePanel","nl","mapControlsCss","transitionDuration","MapControls","constructor","hostRef","this","open","hideContent","text","i18n","host","_MapControls_closeButtonElement","set","_MapControls_toggleButtonElement","watchOpen","setTimeout","_a","__classPrivateFieldGet","focus","toggleVisibility","e","dsoToggle","emit","originalEvent","render","h","Fragment","key","type","id","class","onClick","ref","element","__classPrivateFieldSet","icon","direction","dsoZoomIn","disabled","disableZoom","dsoZoomOut","hidden"],"sources":["src/components/map-controls/map-controls.i18n.ts","src/components/map-controls/map-controls.scss?tag=dso-map-controls&encapsulation=shadow","src/components/map-controls/map-controls.tsx"],"sourcesContent":["import { Resource } from \"../../utils/i18n\";\r\n\r\nexport const translations: Resource = {\r\n en: {\r\n \"dso-map-controls\": {\r\n title: \"Map layers\",\r\n layersButton: \"Map layers\",\r\n zoomIn: \"Zoom in\",\r\n zoomOut: \"Zoom out\",\r\n hidePanel: \"Hide panel {{title}}\",\r\n },\r\n },\r\n nl: {\r\n \"dso-map-controls\": {\r\n title: \"Kaartlagen\",\r\n layersButton: \"Kaartlagen\",\r\n zoomIn: \"Zoom in\",\r\n zoomOut: \"Zoom uit\",\r\n hidePanel: \"Verberg paneel {{title}}\",\r\n },\r\n },\r\n};\r\n","@use \"~dso-toolkit/src/utilities\";\r\n@use \"~dso-toolkit/src/variables/colors\";\r\n@use \"~dso-toolkit/src/variables/media-query-breakpoints\";\r\n@use \"~dso-toolkit/src/variables/typography\";\r\n@use \"~dso-toolkit/src/variables/units\";\r\n\r\n@use \"~dso-toolkit/src/components/button/button\";\r\n@use \"~dso-toolkit/src/components/button/button.variables\" as button-variables;\r\n\r\n@use \"map-controls.variables\" as core-map-controls-variables;\r\n\r\n:host {\r\n background-color: colors.$wit;\r\n border: 1px solid colors.$grijs-20;\r\n inset-block-end: 0;\r\n display: block;\r\n font-family: typography.$font-family-base;\r\n position: absolute;\r\n inset-block-start: 0;\r\n inset-inline-start: 100%;\r\n transition: transform core-map-controls-variables.$transition-duration ease;\r\n inline-size: 300px;\r\n}\r\n\r\n@include utilities.box-sizing();\r\n\r\n// Todo: #2315 this will be redundant when the icon only buttons are replaced with Icon Button\r\n.sr-only {\r\n @include utilities.sr-only();\r\n}\r\n\r\n:host([open]) {\r\n box-shadow: 0 1px 4px 0 rgba(0, 0, 0, 0.3);\r\n transform: translateX(-100%);\r\n\r\n .toggle-visibility-button {\r\n display: none;\r\n }\r\n\r\n .zoom-buttons {\r\n inset-block-start: units.$u2;\r\n }\r\n}\r\n\r\n.toggle-visibility-button {\r\n position: absolute;\r\n inset-inline-end: calc(100% + #{core-map-controls-variables.$controls-margin + button-variables.$map-size});\r\n inset-block-start: core-map-controls-variables.$controls-margin;\r\n}\r\n\r\n.zoom-buttons {\r\n position: absolute;\r\n inset-inline-end: calc(100% + core-map-controls-variables.$controls-margin);\r\n inset-block-start: core-map-controls-variables.$controls-margin;\r\n}\r\n\r\n.close-button {\r\n padding: 0;\r\n position: absolute;\r\n inset-inline-end: core-map-controls-variables.$controls-margin;\r\n inset-block-start: core-map-controls-variables.$controls-margin;\r\n}\r\n\r\nsection:not([hidden]) {\r\n display: flex;\r\n flex-direction: column;\r\n block-size: 100%;\r\n}\r\n\r\nheader,\r\n.content {\r\n padding: units.$u2;\r\n}\r\n\r\nheader {\r\n border-block-end: 1px solid colors.$grijs-20;\r\n flex-grow: 0;\r\n position: relative;\r\n\r\n h2 {\r\n color: colors.$bosgroen;\r\n font-family: typography.$headings-font-family;\r\n line-height: 1;\r\n margin: 0;\r\n }\r\n}\r\n\r\n@media screen and (max-width: media-query-breakpoints.$screen-xs-max) {\r\n button.toggle-visibility-button {\r\n block-size: units.$u5;\r\n margin-inline-end: 0;\r\n min-inline-size: auto;\r\n inset-inline-end: calc(100% + core-map-controls-variables.$controls-margin);\r\n inline-size: units.$u5;\r\n\r\n dso-icon {\r\n margin-inline-end: 0;\r\n }\r\n\r\n span {\r\n @include utilities.sr-only();\r\n }\r\n }\r\n\r\n .zoom-buttons {\r\n inset-block-start: units.$u9;\r\n }\r\n}\r\n","import {\r\n Component,\r\n ComponentInterface,\r\n Element,\r\n Event,\r\n EventEmitter,\r\n Fragment,\r\n Method,\r\n Prop,\r\n State,\r\n Watch,\r\n h,\r\n} from \"@stencil/core\";\r\n\r\nimport { i18n } from \"../../utils/i18n\";\r\n\r\nimport { translations } from \"./map-controls.i18n\";\r\nimport { MapControlsToggleEvent } from \"./map-controls.interfaces\";\r\n\r\n// Sync with $transition-duration in ./map-controls.scss and map-controls.cy.ts\r\nconst transitionDuration = 300;\r\n\r\n@Component({\r\n tag: \"dso-map-controls\",\r\n styleUrl: \"./map-controls.scss\",\r\n shadow: true,\r\n})\r\nexport class MapControls implements ComponentInterface {\r\n @Element()\r\n host!: HTMLDsoMapControlsElement;\r\n\r\n /**\r\n * To show and hide the Map Controls.\r\n */\r\n @Prop({ reflect: true, mutable: true })\r\n open = false;\r\n\r\n /**\r\n * To disable the zoom controls:\r\n *\r\n * * `in`: Disable zoom in button.\r\n * * `out`: Disable zoom out button.\r\n * * `both`: Disable zoom in and zoom out.\r\n */\r\n @Prop()\r\n disableZoom?: \"in\" | \"out\" | \"both\";\r\n\r\n /**\r\n * Emitted when the user activates the zoom in button.\r\n */\r\n @Event()\r\n dsoZoomIn!: EventEmitter<MouseEvent>;\r\n\r\n /**\r\n * Emitted when the user activates the zoom out button.\r\n */\r\n @Event()\r\n dsoZoomOut!: EventEmitter<MouseEvent>;\r\n\r\n /**\r\n * emits when the panel opens or closes.\r\n *\r\n * - `event.detail.originalEvent` contains the original `MouseEvent / KeyboardEvent` when the panel is toggled by clicking the visibility button or the close button.\r\n * - `event.detail.open` is true when the panel opens and false when the panel closes.\r\n */\r\n @Event()\r\n dsoToggle!: EventEmitter<MapControlsToggleEvent>;\r\n\r\n @State()\r\n hideContent = !this.open;\r\n\r\n @Watch(\"open\")\r\n watchOpen(open: boolean) {\r\n if (open) {\r\n this.hideContent = false;\r\n\r\n setTimeout(() => this.#closeButtonElement?.focus(), transitionDuration);\r\n } else {\r\n setTimeout(() => {\r\n this.hideContent = true;\r\n\r\n this.#toggleButtonElement?.focus();\r\n }, transitionDuration);\r\n }\r\n }\r\n\r\n /**\r\n * Emitted when the visibility is toggled.\r\n *\r\n * Can be used to recalculate map widths or reposition center when the Map Controls opens or closes.\r\n * @param e\r\n */\r\n @Method()\r\n async toggleVisibility(e: MouseEvent | KeyboardEvent) {\r\n this.open = !this.open;\r\n\r\n this.dsoToggle.emit({\r\n originalEvent: e,\r\n open: this.open,\r\n });\r\n }\r\n\r\n private text = i18n(() => this.host, translations);\r\n\r\n #closeButtonElement: HTMLButtonElement | undefined;\r\n #toggleButtonElement: HTMLButtonElement | undefined;\r\n\r\n render() {\r\n return (\r\n <>\r\n <button\r\n type=\"button\"\r\n id=\"toggle-visibility-button\"\r\n class=\"dso-map toggle-visibility-button\"\r\n onClick={(e) => this.toggleVisibility(e)}\r\n ref={(element) => (this.#toggleButtonElement = element)}\r\n >\r\n <dso-icon icon=\"layers\"></dso-icon>\r\n <span>{this.text(\"layersButton\")}</span>\r\n </button>\r\n <dso-button-group class=\"zoom-buttons\" direction=\"column\">\r\n <button\r\n type=\"button\"\r\n class=\"dso-map\"\r\n onClick={(e) => this.dsoZoomIn.emit(e)}\r\n disabled={this.disableZoom === \"in\" || this.disableZoom === \"both\"}\r\n >\r\n <span class=\"sr-only\">{this.text(\"zoomIn\")}</span>\r\n <dso-icon icon=\"plus\"></dso-icon>\r\n </button>\r\n <button\r\n type=\"button\"\r\n class=\"dso-map\"\r\n onClick={(e) => this.dsoZoomOut.emit(e)}\r\n disabled={this.disableZoom === \"out\" || this.disableZoom === \"both\"}\r\n >\r\n <span class=\"sr-only\">{this.text(\"zoomOut\")}</span>\r\n <dso-icon icon=\"minus\"></dso-icon>\r\n </button>\r\n </dso-button-group>\r\n <section hidden={this.hideContent}>\r\n <header>\r\n <h2>{this.text(\"title\")}</h2>\r\n <button\r\n type=\"button\"\r\n class=\"dso-tertiary close-button\"\r\n onClick={(e) => this.toggleVisibility(e)}\r\n ref={(element) => (this.#closeButtonElement = element)}\r\n >\r\n <span class=\"sr-only\">{this.text(\"hidePanel\", { title: this.text(\"title\") })}</span>\r\n <dso-icon icon=\"times\"></dso-icon>\r\n </button>\r\n </header>\r\n <dso-scrollable>\r\n <div class=\"content\">\r\n <slot></slot>\r\n </div>\r\n </dso-scrollable>\r\n </section>\r\n </>\r\n );\r\n }\r\n}\r\n"],"mappings":"oGAEO,MAAMA,EAAyB,CACpCC,GAAI,CACF,mBAAoB,CAClBC,MAAO,aACPC,aAAc,aACdC,OAAQ,UACRC,QAAS,WACTC,UAAW,yBAGfC,GAAI,CACF,mBAAoB,CAClBL,MAAO,aACPC,aAAc,aACdC,OAAQ,UACRC,QAAS,WACTC,UAAW,8BClBjB,MAAME,EAAiB,g8yC,kwBCoBvB,MAAMC,EAAqB,I,MAOdC,EAAW,MALxB,WAAAC,CAAAC,G,2HAaEC,KAAIC,KAAG,MAkCPD,KAAAE,aAAeF,KAAKC,KAiCZD,KAAAG,KAAOC,GAAK,IAAMJ,KAAKK,MAAMlB,GAErCmB,EAAmDC,IAAAP,UAAA,GACnDQ,EAAoDD,IAAAP,UAAA,EAyDrD,CA1FC,SAAAS,CAAUR,GACR,GAAIA,EAAM,CACRD,KAAKE,YAAc,MAEnBQ,YAAW,KAAM,IAAAC,EAAA,OAAAA,EAAAC,EAAAZ,KAAwBM,EAAA,cAAAK,SAAA,SAAAA,EAAEE,OAAO,GAAEjB,E,KAC/C,CACLc,YAAW,K,MACTV,KAAKE,YAAc,MAEnBS,EAAAC,EAAAZ,KAAIQ,EAAA,QAAuB,MAAAG,SAAA,SAAAA,EAAAE,OAAO,GACjCjB,E,EAWP,sBAAMkB,CAAiBC,GACrBf,KAAKC,MAAQD,KAAKC,KAElBD,KAAKgB,UAAUC,KAAK,CAClBC,cAAeH,EACfd,KAAMD,KAAKC,M,CASf,MAAAkB,GACE,OACEC,EAAAC,EAAA,KACED,EAAA,UAAAE,IAAA,2CACEC,KAAK,SACLC,GAAG,2BACHC,MAAM,mCACNC,QAAUX,GAAMf,KAAKc,iBAAiBC,GACtCY,IAAMC,GAAaC,EAAA7B,KAA4BQ,EAAAoB,EAAO,MAEtDR,EAAU,YAAAE,IAAA,2CAAAQ,KAAK,WACfV,EAAA,QAAAE,IAAA,4CAAOtB,KAAKG,KAAK,kBAEnBiB,EAAA,oBAAAE,IAAA,2CAAkBG,MAAM,eAAeM,UAAU,UAC/CX,EAAA,UAAAE,IAAA,2CACEC,KAAK,SACLE,MAAM,UACNC,QAAUX,GAAMf,KAAKgC,UAAUf,KAAKF,GACpCkB,SAAUjC,KAAKkC,cAAgB,MAAQlC,KAAKkC,cAAgB,QAE5Dd,EAAM,QAAAE,IAAA,2CAAAG,MAAM,WAAWzB,KAAKG,KAAK,WACjCiB,EAAA,YAAAE,IAAA,2CAAUQ,KAAK,UAEjBV,EAAA,UAAAE,IAAA,2CACEC,KAAK,SACLE,MAAM,UACNC,QAAUX,GAAMf,KAAKmC,WAAWlB,KAAKF,GACrCkB,SAAUjC,KAAKkC,cAAgB,OAASlC,KAAKkC,cAAgB,QAE7Dd,EAAM,QAAAE,IAAA,2CAAAG,MAAM,WAAWzB,KAAKG,KAAK,YACjCiB,EAAA,YAAAE,IAAA,2CAAUQ,KAAK,YAGnBV,EAAA,WAAAE,IAAA,2CAASc,OAAQpC,KAAKE,aACpBkB,EAAA,UAAAE,IAAA,4CACEF,EAAA,MAAAE,IAAA,4CAAKtB,KAAKG,KAAK,UACfiB,EAAA,UAAAE,IAAA,2CACEC,KAAK,SACLE,MAAM,4BACNC,QAAUX,GAAMf,KAAKc,iBAAiBC,GACtCY,IAAMC,GAAaC,EAAA7B,KAA2BM,EAAAsB,EAAO,MAErDR,EAAM,QAAAE,IAAA,2CAAAG,MAAM,WAAWzB,KAAKG,KAAK,YAAa,CAAEd,MAAOW,KAAKG,KAAK,YACjEiB,EAAA,YAAAE,IAAA,2CAAUQ,KAAK,YAGnBV,EAAA,kBAAAE,IAAA,4CACEF,EAAK,OAAAE,IAAA,2CAAAG,MAAM,WACTL,EAAA,QAAAE,IAAA,gD","ignoreList":[]}
@@ -0,0 +1,2 @@
1
+ import{r as e,c as n,f as t,h as i,H as o,g as s}from"./p-DxWmN7gh.js";import{c as a}from"./p-ChV9xqsO.js";const r=":host {\n display: block;\n padding-block: 4px;\n padding-inline: 4px;\n}\n\n*,\n*::after,\n*::before {\n box-sizing: border-box;\n}\n\n.legend-item {\n display: flex;\n position: relative;\n}\n.legend-item.legend-item-symbol + .options {\n margin-block-start: 8px;\n}\n\n.legend-item-right-content {\n margin-inline-start: auto;\n}\n.legend-item-right-content button {\n display: inline-block;\n font-size: 1em;\n font-weight: 500;\n margin-block-end: 0;\n text-decoration: none;\n touch-action: manipulation;\n text-align: start;\n user-select: none;\n vertical-align: middle;\n}\n.legend-item-right-content button:focus, .legend-item-right-content button:focus-visible {\n outline-offset: 2px;\n}\n.legend-item-right-content button:active {\n outline: 0;\n}\n.legend-item-right-content button {\n border: 0;\n color: #39870c;\n line-height: 1;\n padding: 0;\n background-color: transparent;\n}\n.legend-item-right-content button[disabled] {\n color: #afcf9d;\n}\n.legend-item-right-content button[disabled].dso-spinner-left, .legend-item-right-content button[disabled].dso-spinner-right {\n color: #39870c;\n}\n.legend-item-right-content button:not([disabled]):hover {\n color: #275937;\n text-decoration: underline;\n text-underline-position: under;\n}\n.legend-item-right-content button:not([disabled]):active {\n color: #173521;\n}\n.legend-item-right-content button.dso-align {\n line-height: calc(1.5em - 1px);\n padding-block: 11px;\n padding-inline: 0;\n position: relative;\n}\n.legend-item-right-content button.dso-truncate {\n max-inline-size: 100%;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n.legend-item-right-content button.dso-spinner-left::before {\n background-image: url(\"data:image/svg+xml,%3Csvg class='spinner' viewBox='0 0 100 100' xmlns='http://www.w3.org/2000/svg' %3E%3Cstyle%3E .spinner %7B animation: rotator 8s linear infinite; transform-origin: center; %7D @keyframes rotator %7B 0%25 %7B transform: rotate(0deg); %7D 100%25 %7B transform: rotate(360deg); %7D %7D .path %7B stroke-dasharray: 265; stroke-dashoffset: 0; transform-origin: center; stroke: %2339870c; animation: dash 2s ease-in-out infinite; %7D @keyframes dash %7B 0%25 %7B stroke-dashoffset: 265; %7D 50%25 %7B stroke-dashoffset: 65; transform:rotate(90deg); %7D 100%25 %7B stroke-dashoffset: 265; transform:rotate(360deg); %7D %3C/style%3E%3Ccircle class='path' fill='none' stroke-width='10' stroke-linecap='butt' cx='50' cy='50' r='45'%3E%3C/circle%3E%3C/svg%3E\");\n background-repeat: no-repeat;\n content: \"\";\n display: inline-block;\n block-size: 24px;\n vertical-align: middle;\n inline-size: 24px;\n margin-inline-end: 8px;\n}\n.legend-item-right-content button.dso-spinner-right::after {\n background-image: url(\"data:image/svg+xml,%3Csvg class='spinner' viewBox='0 0 100 100' xmlns='http://www.w3.org/2000/svg' %3E%3Cstyle%3E .spinner %7B animation: rotator 8s linear infinite; transform-origin: center; %7D @keyframes rotator %7B 0%25 %7B transform: rotate(0deg); %7D 100%25 %7B transform: rotate(360deg); %7D %7D .path %7B stroke-dasharray: 265; stroke-dashoffset: 0; transform-origin: center; stroke: %2339870c; animation: dash 2s ease-in-out infinite; %7D @keyframes dash %7B 0%25 %7B stroke-dashoffset: 265; %7D 50%25 %7B stroke-dashoffset: 65; transform:rotate(90deg); %7D 100%25 %7B stroke-dashoffset: 265; transform:rotate(360deg); %7D %3C/style%3E%3Ccircle class='path' fill='none' stroke-width='10' stroke-linecap='butt' cx='50' cy='50' r='45'%3E%3C/circle%3E%3C/svg%3E\");\n background-repeat: no-repeat;\n content: \"\";\n display: inline-block;\n block-size: 24px;\n vertical-align: middle;\n inline-size: 24px;\n margin-inline-start: 8px;\n}\n.legend-item-right-content button > span {\n position: absolute;\n inline-size: 1px;\n block-size: 1px;\n padding: 0;\n margin: -1px;\n overflow: hidden;\n clip: rect(0, 0, 0, 0);\n border: 0;\n}\n.legend-item-right-content button {\n cursor: pointer;\n}\n.legend-item-right-content button.active {\n color: #173521;\n}\n.legend-item-right-content dso-slide-toggle {\n align-self: center;\n margin-inline-start: 8px;\n padding-block-start: 0 !important;\n}";const d=class{constructor(t){e(this,t);this.dsoActiveChange=n(this,"dsoActiveChange",7);this.dsoMouseEnter=n(this,"dsoMouseEnter",7);this.dsoMouseLeave=n(this,"dsoMouseLeave",7);this.disabled=false;this.showOptions=false}connectedCallback(){this.mutationObserver=new MutationObserver((()=>t(this.host)));this.mutationObserver.observe(this.host,{attributes:true,childList:true})}disconnectedCallback(){var e;(e=this.mutationObserver)===null||e===void 0?void 0:e.disconnect();delete this.mutationObserver}get symbolSlottedElement(){return this.host.querySelector("[slot='symbol']")}get optionsSlottedElement(){return this.host.querySelector("[slot='options']")}render(){const e=this.symbolSlottedElement!==null;const n=this.optionsSlottedElement!==null;return i(o,{key:"1d6ebd8e4e44def711159ff010ae953591685edc",onMouseEnter:()=>this.dsoMouseEnter.emit(),onMouseLeave:()=>this.dsoMouseLeave.emit()},i("div",{key:"868a7ed26078613600d7d17b924d9ea7a53ac2e0",class:a("legend-item",{"legend-item-symbol":e})},e&&i("div",{key:"f3aff3d785c632eb19a7c3a8ccb13e94806cf540"},i("slot",{key:"d06beb41e33003d99c9af7b7b5489dcb66d95444",name:"symbol"})),i("div",{key:"62899aa2b2af8fb2d63d05930a9f037b88e86163"},i("slot",{key:"cc600cec4847cc747971829a9bec5e1abf05026e"})),this.disabled&&this.disabledMessage&&i("dso-toggletip",{key:"0cce99e34253be6c1474a632fd99e1d010a6b991",position:"bottom"},this.disabledMessage),i("div",{key:"e059795274ad6f453a67ea387d9a625664741e16",class:"legend-item-right-content"},n&&!this.disabled&&i("button",{key:"4912cff1ef7d48aeb7e552e0c99b72ecf174d9f0",id:"edit-button",type:"button",onClick:()=>this.showOptions=!this.showOptions,class:{active:this.showOptions}},i("span",{key:"638b176ba12e1301acbc320eb12c47258706607d",class:"sr-only"},"Legenda item aanpassen"),i("dso-icon",{key:"aa285d1922ce4dd2b9f8b14f73b4c81a4fe8d1ff",icon:"more"})),this.activatable&&i("dso-slide-toggle",{key:"87c752671a44f9edb700a18127248394b28ce5e3",accessibleLabel:"Maak actief",checked:this.active,disabled:this.disabled,onDsoActiveChange:e=>this.dsoActiveChange.emit({current:Boolean(this.active),next:!this.active,originalEvent:e})}))),n&&i("div",{key:"af0b47ff57eb123ba06d0ff8836421f6c02d429b",hidden:this.disabled||!this.showOptions,class:"options"},i("slot",{key:"b6b4e60ccaaa06a849be5f73fd2f2636a023a34e",name:"options"})))}get host(){return s(this)}};d.style=r;export{d as dso_legend_item};
2
+ //# sourceMappingURL=p-a835d419.entry.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["legendItemCss","LegendItem","constructor","hostRef","this","disabled","showOptions","connectedCallback","mutationObserver","MutationObserver","forceUpdate","host","observe","attributes","childList","disconnectedCallback","_a","disconnect","symbolSlottedElement","querySelector","optionsSlottedElement","render","hasSymbol","hasOptions","h","Host","key","onMouseEnter","dsoMouseEnter","emit","onMouseLeave","dsoMouseLeave","class","clsx","name","disabledMessage","position","id","type","onClick","active","icon","activatable","accessibleLabel","checked","onDsoActiveChange","e","dsoActiveChange","current","Boolean","next","originalEvent","hidden"],"sources":["src/components/legend-item/legend-item.scss?tag=dso-legend-item&encapsulation=shadow","src/components/legend-item/legend-item.tsx"],"sourcesContent":["@use \"~dso-toolkit/src/utilities\";\r\n@use \"~dso-toolkit/src/variables/colors\";\r\n@use \"~dso-toolkit/src/variables/typography\";\r\n@use \"~dso-toolkit/src/variables/units\";\r\n@use \"~dso-toolkit/src/components/button\";\r\n@use \"~dso-toolkit/src/components/legend-item/legend-item.variables\" as legend-item-variables;\r\n\r\n:host {\r\n display: block;\r\n padding-block: units.$u1 * 0.5;\r\n padding-inline: units.$u1 * 0.5;\r\n}\r\n\r\n@include utilities.box-sizing();\r\n\r\n.legend-item {\r\n display: flex;\r\n position: relative;\r\n\r\n &.legend-item-symbol + .options {\r\n margin-block-start: units.$u1;\r\n }\r\n}\r\n\r\n.legend-item-right-content {\r\n margin-inline-start: auto;\r\n\r\n button {\r\n @include button.tertiary($icon-only: true, $modifiers: false);\r\n\r\n // stylelint-disable-next-line no-duplicate-selectors -- needed to fix sass deprecation warnings: #2724\r\n & {\r\n cursor: pointer;\r\n }\r\n\r\n &.active {\r\n color: colors.$bosgroen-140;\r\n }\r\n }\r\n\r\n dso-slide-toggle {\r\n align-self: center;\r\n margin-inline-start: 8px;\r\n padding-block-start: 0 !important;\r\n }\r\n}\r\n","import {\r\n Component,\r\n ComponentInterface,\r\n Element,\r\n Event,\r\n EventEmitter,\r\n Host,\r\n Prop,\r\n State,\r\n forceUpdate,\r\n h,\r\n} from \"@stencil/core\";\r\nimport clsx from \"clsx\";\r\n\r\nimport { LegendItemActiveChangeEvent } from \"./legend-item.interfaces\";\r\n\r\n/**\r\n * @slot The label for this Legend Item\r\n * @slot symbol - A span where the symbol is styled upon\r\n * @slot options - The slot to place controls in (i.e. `dso-input-range`). If present, this will cause the appearance of an edit-button (three dots) to show the controls. Will not be displayed if property `disabled` is set to true.\r\n */\r\n@Component({\r\n tag: \"dso-legend-item\",\r\n styleUrl: \"legend-item.scss\",\r\n shadow: true,\r\n})\r\nexport class LegendItem implements ComponentInterface {\r\n @Element()\r\n host!: HTMLDsoLegendItemElement;\r\n\r\n /**\r\n * To disable the Legend Item\r\n */\r\n @Prop({ reflect: true })\r\n disabled = false;\r\n\r\n /**\r\n * Message to be shown behind a toggletip when the Legend Item is disabled\r\n */\r\n @Prop()\r\n disabledMessage?: string;\r\n\r\n /**\r\n * Controls whether this Legend Item can be active or not\r\n */\r\n @Prop({ reflect: true })\r\n activatable?: boolean;\r\n\r\n /**\r\n * Controls whether this Legend Item is active or not\r\n */\r\n @Prop({ reflect: true })\r\n active?: boolean;\r\n\r\n /**\r\n * Emitted when user checks or unchecks the Slide Toggle.\r\n */\r\n @Event()\r\n dsoActiveChange!: EventEmitter<LegendItemActiveChangeEvent>;\r\n\r\n /**\r\n * Emitted when the mouse enters the Legend Item\r\n */\r\n @Event()\r\n dsoMouseEnter!: EventEmitter;\r\n\r\n /**\r\n * Emitted when the mouse leaves the Legend Item\r\n */\r\n @Event()\r\n dsoMouseLeave!: EventEmitter;\r\n\r\n @State()\r\n showOptions = false;\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 get symbolSlottedElement() {\r\n return this.host.querySelector(\"[slot='symbol']\");\r\n }\r\n\r\n get optionsSlottedElement() {\r\n return this.host.querySelector(\"[slot='options']\");\r\n }\r\n\r\n render() {\r\n const hasSymbol = this.symbolSlottedElement !== null;\r\n const hasOptions = this.optionsSlottedElement !== null;\r\n\r\n return (\r\n <Host onMouseEnter={() => this.dsoMouseEnter.emit()} onMouseLeave={() => this.dsoMouseLeave.emit()}>\r\n <div class={clsx(\"legend-item\", { \"legend-item-symbol\": hasSymbol })}>\r\n {hasSymbol && (\r\n <div>\r\n <slot name=\"symbol\" />\r\n </div>\r\n )}\r\n <div>\r\n <slot />\r\n </div>\r\n {this.disabled && this.disabledMessage && (\r\n <dso-toggletip position=\"bottom\">{this.disabledMessage}</dso-toggletip>\r\n )}\r\n\r\n <div class=\"legend-item-right-content\">\r\n {hasOptions && !this.disabled && (\r\n <button\r\n id=\"edit-button\"\r\n type=\"button\"\r\n onClick={() => (this.showOptions = !this.showOptions)}\r\n class={{ active: this.showOptions }}\r\n >\r\n <span class=\"sr-only\">Legenda item aanpassen</span>\r\n <dso-icon icon=\"more\" />\r\n </button>\r\n )}\r\n {this.activatable && (\r\n <dso-slide-toggle\r\n accessibleLabel=\"Maak actief\"\r\n checked={this.active}\r\n disabled={this.disabled}\r\n onDsoActiveChange={(e) =>\r\n this.dsoActiveChange.emit({ current: Boolean(this.active), next: !this.active, originalEvent: e })\r\n }\r\n />\r\n )}\r\n </div>\r\n </div>\r\n {hasOptions && (\r\n <div hidden={this.disabled || !this.showOptions} class=\"options\">\r\n <slot name=\"options\" />\r\n </div>\r\n )}\r\n </Host>\r\n );\r\n }\r\n}\r\n"],"mappings":"2GAAA,MAAMA,EAAgB,ypJ,MC0BTC,EAAU,MALvB,WAAAC,CAAAC,G,qJAaEC,KAAQC,SAAG,MAuCXD,KAAWE,YAAG,KA2Ef,CAvEC,iBAAAC,GACEH,KAAKI,iBAAmB,IAAIC,kBAAiB,IAAMC,EAAYN,KAAKO,QAEpEP,KAAKI,iBAAiBI,QAAQR,KAAKO,KAAM,CAAEE,WAAY,KAAMC,UAAW,M,CAG1E,oBAAAC,G,OACEC,EAAAZ,KAAKI,oBAAkB,MAAAQ,SAAA,SAAAA,EAAAC,oBAEhBb,KAAKI,gB,CAGd,wBAAIU,GACF,OAAOd,KAAKO,KAAKQ,cAAc,kB,CAGjC,yBAAIC,GACF,OAAOhB,KAAKO,KAAKQ,cAAc,mB,CAGjC,MAAAE,GACE,MAAMC,EAAYlB,KAAKc,uBAAyB,KAChD,MAAMK,EAAanB,KAAKgB,wBAA0B,KAElD,OACEI,EAACC,EAAK,CAAAC,IAAA,2CAAAC,aAAc,IAAMvB,KAAKwB,cAAcC,OAAQC,aAAc,IAAM1B,KAAK2B,cAAcF,QAC1FL,EAAK,OAAAE,IAAA,2CAAAM,MAAOC,EAAK,cAAe,CAAE,qBAAsBX,KACrDA,GACCE,EAAA,OAAAE,IAAA,4CACEF,EAAA,QAAAE,IAAA,2CAAMQ,KAAK,YAGfV,EAAA,OAAAE,IAAA,4CACEF,EAAA,QAAAE,IAAA,8CAEDtB,KAAKC,UAAYD,KAAK+B,iBACrBX,EAAe,iBAAAE,IAAA,2CAAAU,SAAS,UAAUhC,KAAK+B,iBAGzCX,EAAK,OAAAE,IAAA,2CAAAM,MAAM,6BACRT,IAAenB,KAAKC,UACnBmB,EACE,UAAAE,IAAA,2CAAAW,GAAG,cACHC,KAAK,SACLC,QAAS,IAAOnC,KAAKE,aAAeF,KAAKE,YACzC0B,MAAO,CAAEQ,OAAQpC,KAAKE,cAEtBkB,EAAM,QAAAE,IAAA,2CAAAM,MAAM,WAAuC,0BACnDR,EAAA,YAAAE,IAAA,2CAAUe,KAAK,UAGlBrC,KAAKsC,aACJlB,EAAA,oBAAAE,IAAA,2CACEiB,gBAAgB,cAChBC,QAASxC,KAAKoC,OACdnC,SAAUD,KAAKC,SACfwC,kBAAoBC,GAClB1C,KAAK2C,gBAAgBlB,KAAK,CAAEmB,QAASC,QAAQ7C,KAAKoC,QAASU,MAAO9C,KAAKoC,OAAQW,cAAeL,QAMvGvB,GACCC,EAAA,OAAAE,IAAA,2CAAK0B,OAAQhD,KAAKC,WAAaD,KAAKE,YAAa0B,MAAM,WACrDR,EAAM,QAAAE,IAAA,2CAAAQ,KAAK,a","ignoreList":[]}
1
+ {"version":3,"names":["legendItemCss","LegendItem","constructor","hostRef","this","disabled","showOptions","connectedCallback","mutationObserver","MutationObserver","forceUpdate","host","observe","attributes","childList","disconnectedCallback","_a","disconnect","symbolSlottedElement","querySelector","optionsSlottedElement","render","hasSymbol","hasOptions","h","Host","key","onMouseEnter","dsoMouseEnter","emit","onMouseLeave","dsoMouseLeave","class","clsx","name","disabledMessage","position","id","type","onClick","active","icon","activatable","accessibleLabel","checked","onDsoActiveChange","e","dsoActiveChange","current","Boolean","next","originalEvent","hidden"],"sources":["src/components/legend-item/legend-item.scss?tag=dso-legend-item&encapsulation=shadow","src/components/legend-item/legend-item.tsx"],"sourcesContent":["@use \"~dso-toolkit/src/utilities\";\r\n@use \"~dso-toolkit/src/variables/colors\";\r\n@use \"~dso-toolkit/src/variables/typography\";\r\n@use \"~dso-toolkit/src/variables/units\";\r\n@use \"~dso-toolkit/src/components/button\";\r\n@use \"~dso-toolkit/src/components/legend-item/legend-item.variables\" as legend-item-variables;\r\n\r\n:host {\r\n display: block;\r\n padding-block: units.$u1 * 0.5;\r\n padding-inline: units.$u1 * 0.5;\r\n}\r\n\r\n@include utilities.box-sizing();\r\n\r\n.legend-item {\r\n display: flex;\r\n position: relative;\r\n\r\n &.legend-item-symbol + .options {\r\n margin-block-start: units.$u1;\r\n }\r\n}\r\n\r\n.legend-item-right-content {\r\n margin-inline-start: auto;\r\n\r\n button {\r\n @include button.tertiary($icon-only: true, $modifiers: false);\r\n\r\n // stylelint-disable-next-line no-duplicate-selectors -- needed to fix sass deprecation warnings: #2724\r\n & {\r\n cursor: pointer;\r\n }\r\n\r\n &.active {\r\n color: colors.$bosgroen-140;\r\n }\r\n }\r\n\r\n dso-slide-toggle {\r\n align-self: center;\r\n margin-inline-start: 8px;\r\n padding-block-start: 0 !important;\r\n }\r\n}\r\n","import {\r\n Component,\r\n ComponentInterface,\r\n Element,\r\n Event,\r\n EventEmitter,\r\n Host,\r\n Prop,\r\n State,\r\n forceUpdate,\r\n h,\r\n} from \"@stencil/core\";\r\nimport clsx from \"clsx\";\r\n\r\nimport { LegendItemActiveChangeEvent } from \"./legend-item.interfaces\";\r\n\r\n/**\r\n * @slot The label for this Legend Item\r\n * @slot symbol - A span where the symbol is styled upon\r\n * @slot options - The slot to place controls in (i.e. `dso-input-range`). If present, this will cause the appearance of an edit-button (three dots) to show the controls. Will not be displayed if property `disabled` is set to true.\r\n */\r\n@Component({\r\n tag: \"dso-legend-item\",\r\n styleUrl: \"legend-item.scss\",\r\n shadow: true,\r\n})\r\nexport class LegendItem implements ComponentInterface {\r\n @Element()\r\n host!: HTMLDsoLegendItemElement;\r\n\r\n /**\r\n * To disable the Legend Item\r\n */\r\n @Prop({ reflect: true })\r\n disabled = false;\r\n\r\n /**\r\n * Message to be shown behind a toggletip when the Legend Item is disabled\r\n */\r\n @Prop()\r\n disabledMessage?: string;\r\n\r\n /**\r\n * Controls whether this Legend Item can be active or not\r\n */\r\n @Prop({ reflect: true })\r\n activatable?: boolean;\r\n\r\n /**\r\n * Controls whether this Legend Item is active or not\r\n */\r\n @Prop({ reflect: true })\r\n active?: boolean;\r\n\r\n /**\r\n * Emitted when user checks or unchecks the Slide Toggle.\r\n */\r\n @Event()\r\n dsoActiveChange!: EventEmitter<LegendItemActiveChangeEvent>;\r\n\r\n /**\r\n * Emitted when the mouse enters the Legend Item\r\n */\r\n @Event()\r\n dsoMouseEnter!: EventEmitter;\r\n\r\n /**\r\n * Emitted when the mouse leaves the Legend Item\r\n */\r\n @Event()\r\n dsoMouseLeave!: EventEmitter;\r\n\r\n @State()\r\n showOptions = false;\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 get symbolSlottedElement() {\r\n return this.host.querySelector(\"[slot='symbol']\");\r\n }\r\n\r\n get optionsSlottedElement() {\r\n return this.host.querySelector(\"[slot='options']\");\r\n }\r\n\r\n render() {\r\n const hasSymbol = this.symbolSlottedElement !== null;\r\n const hasOptions = this.optionsSlottedElement !== null;\r\n\r\n return (\r\n <Host onMouseEnter={() => this.dsoMouseEnter.emit()} onMouseLeave={() => this.dsoMouseLeave.emit()}>\r\n <div class={clsx(\"legend-item\", { \"legend-item-symbol\": hasSymbol })}>\r\n {hasSymbol && (\r\n <div>\r\n <slot name=\"symbol\" />\r\n </div>\r\n )}\r\n <div>\r\n <slot />\r\n </div>\r\n {this.disabled && this.disabledMessage && (\r\n <dso-toggletip position=\"bottom\">{this.disabledMessage}</dso-toggletip>\r\n )}\r\n\r\n <div class=\"legend-item-right-content\">\r\n {hasOptions && !this.disabled && (\r\n <button\r\n id=\"edit-button\"\r\n type=\"button\"\r\n onClick={() => (this.showOptions = !this.showOptions)}\r\n class={{ active: this.showOptions }}\r\n >\r\n <span class=\"sr-only\">Legenda item aanpassen</span>\r\n <dso-icon icon=\"more\" />\r\n </button>\r\n )}\r\n {this.activatable && (\r\n <dso-slide-toggle\r\n accessibleLabel=\"Maak actief\"\r\n checked={this.active}\r\n disabled={this.disabled}\r\n onDsoActiveChange={(e) =>\r\n this.dsoActiveChange.emit({ current: Boolean(this.active), next: !this.active, originalEvent: e })\r\n }\r\n />\r\n )}\r\n </div>\r\n </div>\r\n {hasOptions && (\r\n <div hidden={this.disabled || !this.showOptions} class=\"options\">\r\n <slot name=\"options\" />\r\n </div>\r\n )}\r\n </Host>\r\n );\r\n }\r\n}\r\n"],"mappings":"2GAAA,MAAMA,EAAgB,ioI,MC0BTC,EAAU,MALvB,WAAAC,CAAAC,G,qJAaEC,KAAQC,SAAG,MAuCXD,KAAWE,YAAG,KA2Ef,CAvEC,iBAAAC,GACEH,KAAKI,iBAAmB,IAAIC,kBAAiB,IAAMC,EAAYN,KAAKO,QAEpEP,KAAKI,iBAAiBI,QAAQR,KAAKO,KAAM,CAAEE,WAAY,KAAMC,UAAW,M,CAG1E,oBAAAC,G,OACEC,EAAAZ,KAAKI,oBAAkB,MAAAQ,SAAA,SAAAA,EAAAC,oBAEhBb,KAAKI,gB,CAGd,wBAAIU,GACF,OAAOd,KAAKO,KAAKQ,cAAc,kB,CAGjC,yBAAIC,GACF,OAAOhB,KAAKO,KAAKQ,cAAc,mB,CAGjC,MAAAE,GACE,MAAMC,EAAYlB,KAAKc,uBAAyB,KAChD,MAAMK,EAAanB,KAAKgB,wBAA0B,KAElD,OACEI,EAACC,EAAK,CAAAC,IAAA,2CAAAC,aAAc,IAAMvB,KAAKwB,cAAcC,OAAQC,aAAc,IAAM1B,KAAK2B,cAAcF,QAC1FL,EAAK,OAAAE,IAAA,2CAAAM,MAAOC,EAAK,cAAe,CAAE,qBAAsBX,KACrDA,GACCE,EAAA,OAAAE,IAAA,4CACEF,EAAA,QAAAE,IAAA,2CAAMQ,KAAK,YAGfV,EAAA,OAAAE,IAAA,4CACEF,EAAA,QAAAE,IAAA,8CAEDtB,KAAKC,UAAYD,KAAK+B,iBACrBX,EAAe,iBAAAE,IAAA,2CAAAU,SAAS,UAAUhC,KAAK+B,iBAGzCX,EAAK,OAAAE,IAAA,2CAAAM,MAAM,6BACRT,IAAenB,KAAKC,UACnBmB,EACE,UAAAE,IAAA,2CAAAW,GAAG,cACHC,KAAK,SACLC,QAAS,IAAOnC,KAAKE,aAAeF,KAAKE,YACzC0B,MAAO,CAAEQ,OAAQpC,KAAKE,cAEtBkB,EAAM,QAAAE,IAAA,2CAAAM,MAAM,WAAuC,0BACnDR,EAAA,YAAAE,IAAA,2CAAUe,KAAK,UAGlBrC,KAAKsC,aACJlB,EAAA,oBAAAE,IAAA,2CACEiB,gBAAgB,cAChBC,QAASxC,KAAKoC,OACdnC,SAAUD,KAAKC,SACfwC,kBAAoBC,GAClB1C,KAAK2C,gBAAgBlB,KAAK,CAAEmB,QAASC,QAAQ7C,KAAKoC,QAASU,MAAO9C,KAAKoC,OAAQW,cAAeL,QAMvGvB,GACCC,EAAA,OAAAE,IAAA,2CAAK0B,OAAQhD,KAAKC,WAAaD,KAAKE,YAAa0B,MAAM,WACrDR,EAAM,QAAAE,IAAA,2CAAAQ,KAAK,a","ignoreList":[]}
@@ -0,0 +1,2 @@
1
+ import{r as i,c as o,h as e}from"./p-DxWmN7gh.js";import{i as t}from"./p-Hgv-pDpy.js";const s=":host{position:fixed;inset-block-start:0;inset-inline-start:0;z-index:2;display:block;inline-size:100vw}*,*::after,*::before{box-sizing:border-box}a{position:absolute;inset-inline-start:50%;inset-block-start:16px;display:inline-block;inline-size:1px;block-size:1px;overflow:hidden;background-color:#fff;border-radius:2px;clip:rect(1px, 1px, 1px, 1px);color:var(--link-color);white-space:nowrap;text-decoration:none;transform:translate(-50%);box-shadow:0 4px 8px 0 rgba(0, 0, 0, 0.2)}a:focus-visible{inline-size:auto;block-size:auto;padding:8px;clip:auto;white-space:normal;outline-offset:2px}";const n=class{constructor(e){i(this,e);this.dsoSkiplinkClick=o(this,"dsoSkiplinkClick",7)}clickEventHandler(i){if(!(i.target instanceof HTMLElement)||!this.to){return}return this.dsoSkiplinkClick.emit({originalEvent:i,isModifiedEvent:t(i)})}render(){return e("a",{key:"689d77b289c0981d750119a32edd1db9a4f199ad",href:`#${this.to}`,onClick:i=>this.clickEventHandler(i)},this.label,e("dso-icon",{key:"3e0033abda17a534d61e76f66bc534698b106b44",icon:"chevron-right"}))}};n.style=s;export{n as dso_skiplink};
2
+ //# sourceMappingURL=p-ac5a1a15.entry.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["skiplinkCss","Skiplink","clickEventHandler","e","target","HTMLElement","this","to","dsoSkiplinkClick","emit","originalEvent","isModifiedEvent","render","h","key","href","onClick","label","icon"],"sources":["src/components/skiplink/skiplink.scss?tag=dso-skiplink&encapsulation=shadow","src/components/skiplink/skiplink.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\r\n:host {\r\n position: fixed;\r\n inset-block-start: 0;\r\n inset-inline-start: 0;\r\n z-index: 2;\r\n\r\n display: block;\r\n\r\n inline-size: 100vw;\r\n}\r\n\r\n@include utilities.box-sizing();\r\n\r\na {\r\n position: absolute;\r\n inset-inline-start: 50%;\r\n inset-block-start: units.$u2;\r\n\r\n display: inline-block;\r\n\r\n inline-size: 1px;\r\n block-size: 1px;\r\n\r\n overflow: hidden;\r\n\r\n background-color: colors.$wit;\r\n\r\n border-radius: units.$focus-border-radius;\r\n\r\n clip: rect(1px, 1px, 1px, 1px);\r\n\r\n color: var(--link-color);\r\n // stylelint-disable-next-line declaration-property-value-disallowed-list -- prevent wrapping\r\n white-space: nowrap;\r\n text-decoration: none;\r\n\r\n transform: translate(-50%);\r\n box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2);\r\n\r\n &:focus-visible {\r\n inline-size: auto;\r\n block-size: auto;\r\n\r\n padding: units.$u1;\r\n\r\n clip: auto;\r\n\r\n white-space: normal;\r\n\r\n outline-offset: 2px;\r\n }\r\n}\r\n","import { Component, ComponentInterface, Event, EventEmitter, Prop, h } from \"@stencil/core\";\r\n\r\nimport { isModifiedEvent } from \"../../utils/is-modified-event\";\r\n\r\nimport { SkiplinkClickEvent } from \"./skiplink.interfaces\";\r\n\r\n@Component({\r\n tag: \"dso-skiplink\",\r\n styleUrl: \"skiplink.scss\",\r\n shadow: true,\r\n})\r\nexport class Skiplink implements ComponentInterface {\r\n /**\r\n * The location to which the skiplink links.\r\n */\r\n @Prop({ reflect: true })\r\n to!: string | undefined;\r\n\r\n /**\r\n * link text\r\n */\r\n @Prop({ reflect: true })\r\n label!: string | undefined;\r\n\r\n /**\r\n * Emitted when the Skiplink is clicked.\r\n */\r\n @Event()\r\n dsoSkiplinkClick!: EventEmitter<SkiplinkClickEvent>;\r\n\r\n private clickEventHandler(e: MouseEvent) {\r\n if (!(e.target instanceof HTMLElement) || !this.to) {\r\n return;\r\n }\r\n\r\n return this.dsoSkiplinkClick.emit({ originalEvent: e, isModifiedEvent: isModifiedEvent(e) });\r\n }\r\n\r\n render() {\r\n return (\r\n <a href={`#${this.to}`} onClick={(e) => this.clickEventHandler(e)}>\r\n {this.label}\r\n <dso-icon icon=\"chevron-right\"></dso-icon>\r\n </a>\r\n );\r\n }\r\n}\r\n"],"mappings":"sFAAA,MAAMA,EAAc,omB,MCWPC,EAAQ,M,4EAmBX,iBAAAC,CAAkBC,GACxB,KAAMA,EAAEC,kBAAkBC,eAAiBC,KAAKC,GAAI,CAClD,M,CAGF,OAAOD,KAAKE,iBAAiBC,KAAK,CAAEC,cAAeP,EAAGQ,gBAAiBA,EAAgBR,I,CAGzF,MAAAS,GACE,OACEC,EAAA,KAAAC,IAAA,2CAAGC,KAAM,IAAIT,KAAKC,KAAMS,QAAUb,GAAMG,KAAKJ,kBAAkBC,IAC5DG,KAAKW,MACNJ,EAAA,YAAAC,IAAA,2CAAUI,KAAK,kB","ignoreList":[]}
1
+ {"version":3,"names":["skiplinkCss","Skiplink","clickEventHandler","e","target","HTMLElement","this","to","dsoSkiplinkClick","emit","originalEvent","isModifiedEvent","render","h","key","href","onClick","label","icon"],"sources":["src/components/skiplink/skiplink.scss?tag=dso-skiplink&encapsulation=shadow","src/components/skiplink/skiplink.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\r\n:host {\r\n position: fixed;\r\n inset-block-start: 0;\r\n inset-inline-start: 0;\r\n z-index: 2;\r\n\r\n display: block;\r\n\r\n inline-size: 100vw;\r\n}\r\n\r\n@include utilities.box-sizing();\r\n\r\na {\r\n position: absolute;\r\n inset-inline-start: 50%;\r\n inset-block-start: units.$u2;\r\n\r\n display: inline-block;\r\n\r\n inline-size: 1px;\r\n block-size: 1px;\r\n\r\n overflow: hidden;\r\n\r\n background-color: colors.$wit;\r\n\r\n border-radius: units.$focus-border-radius;\r\n\r\n clip: rect(1px, 1px, 1px, 1px);\r\n\r\n color: var(--link-color);\r\n // stylelint-disable-next-line declaration-property-value-disallowed-list -- prevent wrapping\r\n white-space: nowrap;\r\n text-decoration: none;\r\n\r\n transform: translate(-50%);\r\n box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2);\r\n\r\n &:focus-visible {\r\n inline-size: auto;\r\n block-size: auto;\r\n\r\n padding: units.$u1;\r\n\r\n clip: auto;\r\n\r\n white-space: normal;\r\n\r\n outline-offset: 2px;\r\n }\r\n}\r\n","import { Component, ComponentInterface, Event, EventEmitter, Prop, h } from \"@stencil/core\";\r\n\r\nimport { isModifiedEvent } from \"../../utils/is-modified-event\";\r\n\r\nimport { SkiplinkClickEvent } from \"./skiplink.interfaces\";\r\n\r\n@Component({\r\n tag: \"dso-skiplink\",\r\n styleUrl: \"skiplink.scss\",\r\n shadow: true,\r\n})\r\nexport class Skiplink implements ComponentInterface {\r\n /**\r\n * The location to which the skiplink links.\r\n */\r\n @Prop({ reflect: true })\r\n to!: string | undefined;\r\n\r\n /**\r\n * link text\r\n */\r\n @Prop({ reflect: true })\r\n label!: string | undefined;\r\n\r\n /**\r\n * Emitted when the Skiplink is clicked.\r\n */\r\n @Event()\r\n dsoSkiplinkClick!: EventEmitter<SkiplinkClickEvent>;\r\n\r\n private clickEventHandler(e: MouseEvent) {\r\n if (!(e.target instanceof HTMLElement) || !this.to) {\r\n return;\r\n }\r\n\r\n return this.dsoSkiplinkClick.emit({ originalEvent: e, isModifiedEvent: isModifiedEvent(e) });\r\n }\r\n\r\n render() {\r\n return (\r\n <a href={`#${this.to}`} onClick={(e) => this.clickEventHandler(e)}>\r\n {this.label}\r\n <dso-icon icon=\"chevron-right\"></dso-icon>\r\n </a>\r\n );\r\n }\r\n}\r\n"],"mappings":"sFAAA,MAAMA,EAAc,mlB,MCWPC,EAAQ,M,4EAmBX,iBAAAC,CAAkBC,GACxB,KAAMA,EAAEC,kBAAkBC,eAAiBC,KAAKC,GAAI,CAClD,M,CAGF,OAAOD,KAAKE,iBAAiBC,KAAK,CAAEC,cAAeP,EAAGQ,gBAAiBA,EAAgBR,I,CAGzF,MAAAS,GACE,OACEC,EAAA,KAAAC,IAAA,2CAAGC,KAAM,IAAIT,KAAKC,KAAMS,QAAUb,GAAMG,KAAKJ,kBAAkBC,IAC5DG,KAAKW,MACNJ,EAAA,YAAAC,IAAA,2CAAUI,KAAK,kB","ignoreList":[]}
@@ -0,0 +1,2 @@
1
+ import{r as o,c as i,h as e,H as s}from"./p-DxWmN7gh.js";import{c as t}from"./p-ChV9xqsO.js";const n=":host{display:inline-block}*,*::after,*::before{box-sizing:border-box}.sr-only{position:absolute;inline-size:1px;block-size:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);border:0}button{background-color:transparent;color:#39870c;border:0;margin-inline-start:var(--_dt-info-button-margin-inline-start, 8px);padding:0;cursor:pointer;vertical-align:top}button.dso-info-secondary{color:#666}dso-icon{display:block}";const a=class{constructor(e){o(this,e);this.dsoToggle=i(this,"dsoToggle",7);this.hover=false;this.label="Toelichting bij optie"}async setFocus(){var o;(o=this.button)===null||o===void 0?void 0:o.focus()}handleToggle(o){this.active=!this.active;this.dsoToggle.emit({originalEvent:o,active:this.active})}render(){return e(s,{key:"eb293ebed30eed249b8be309def6ead14b1cf24a",onMouseenter:()=>this.hover=true,onMouseleave:()=>this.hover=false},e("button",{key:"3e288bbba8b56cc92ca338df47811cbdded8a3df",type:"button",class:t({"dso-open":!!this.active,"dso-info-secondary":!!this.secondary}),"aria-expanded":typeof this.active==="boolean"?this.active.toString():undefined,onClick:o=>this.handleToggle(o),ref:o=>this.button=o},e("dso-icon",{key:"9c11b0fcb3d77c441e7732d098fe14f4538cb2f5",icon:this.active||this.hover?"info-active":"info"}),e("span",{key:"aff325d3fefac7a17259b40753104177dc3ac8f6",class:"sr-only"},this.label)))}};a.style=n;export{a as dso_info_button};
2
+ //# sourceMappingURL=p-b154c6d6.entry.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["infoButtonCss","InfoButton","constructor","hostRef","this","hover","label","setFocus","_a","button","focus","handleToggle","e","active","dsoToggle","emit","originalEvent","render","h","Host","key","onMouseenter","onMouseleave","type","class","clsx","secondary","toString","undefined","onClick","ref","element","icon"],"sources":["src/components/info-button/info-button.scss?tag=dso-info-button&encapsulation=shadow","src/components/info-button/info-button.tsx"],"sourcesContent":["@use \"~dso-toolkit/src/utilities\";\r\n@use \"~dso-toolkit/src/components/info-button\";\r\n\r\n:host {\r\n display: inline-block;\r\n}\r\n\r\n@include utilities.box-sizing();\r\n\r\n.sr-only {\r\n @include utilities.sr-only();\r\n}\r\n\r\nbutton {\r\n @include info-button.root();\r\n\r\n cursor: pointer;\r\n vertical-align: top;\r\n}\r\n\r\ndso-icon {\r\n display: block;\r\n}\r\n","import { Component, Event, EventEmitter, Host, Method, Prop, State, h } from \"@stencil/core\";\r\nimport clsx from \"clsx\";\r\n\r\nimport { InfoButtonToggleEvent } from \"./info-button.interfaces\";\r\n\r\n@Component({\r\n tag: \"dso-info-button\",\r\n shadow: true,\r\n styleUrl: \"info-button.scss\",\r\n})\r\nexport class InfoButton {\r\n private button?: HTMLButtonElement;\r\n\r\n /**\r\n * Whether the InfoButton is active.\r\n */\r\n @Prop({ mutable: true, reflect: true })\r\n active?: boolean;\r\n\r\n @State()\r\n hover = false;\r\n\r\n /**\r\n * For secondary Info Button.\r\n */\r\n @Prop()\r\n secondary?: boolean;\r\n\r\n /**\r\n * The label.\r\n */\r\n @Prop()\r\n label = \"Toelichting bij optie\";\r\n\r\n /**\r\n * Emitted when the user activates the Info Button.\r\n */\r\n @Event()\r\n dsoToggle!: EventEmitter<InfoButtonToggleEvent>;\r\n\r\n /**\r\n * To set focus to the toggle button.\r\n */\r\n @Method()\r\n async setFocus() {\r\n this.button?.focus();\r\n }\r\n\r\n private handleToggle(e: MouseEvent) {\r\n this.active = !this.active;\r\n this.dsoToggle.emit({ originalEvent: e, active: this.active });\r\n }\r\n\r\n render() {\r\n return (\r\n <Host onMouseenter={() => (this.hover = true)} onMouseleave={() => (this.hover = false)}>\r\n <button\r\n type=\"button\"\r\n class={clsx({ \"dso-open\": !!this.active, \"dso-info-secondary\": !!this.secondary })}\r\n aria-expanded={typeof this.active === \"boolean\" ? this.active.toString() : undefined}\r\n onClick={(e) => this.handleToggle(e)}\r\n ref={(element) => (this.button = element)}\r\n >\r\n <dso-icon icon={this.active || this.hover ? \"info-active\" : \"info\"}></dso-icon>\r\n <span class=\"sr-only\">{this.label}</span>\r\n </button>\r\n </Host>\r\n );\r\n }\r\n}\r\n"],"mappings":"6FAAA,MAAMA,EAAgB,gc,MCUTC,EAAU,MALvB,WAAAC,CAAAC,G,+CAeEC,KAAKC,MAAG,MAYRD,KAAKE,MAAG,uBAqCT,CAzBC,cAAMC,G,OACJC,EAAAJ,KAAKK,UAAQ,MAAAD,SAAA,SAAAA,EAAAE,O,CAGP,YAAAC,CAAaC,GACnBR,KAAKS,QAAUT,KAAKS,OACpBT,KAAKU,UAAUC,KAAK,CAAEC,cAAeJ,EAAGC,OAAQT,KAAKS,Q,CAGvD,MAAAI,GACE,OACEC,EAACC,EAAI,CAAAC,IAAA,2CAACC,aAAc,IAAOjB,KAAKC,MAAQ,KAAOiB,aAAc,IAAOlB,KAAKC,MAAQ,OAC/Ea,EAAA,UAAAE,IAAA,2CACEG,KAAK,SACLC,MAAOC,EAAK,CAAE,aAAcrB,KAAKS,OAAQ,uBAAwBT,KAAKsB,YAAY,uBAC5DtB,KAAKS,SAAW,UAAYT,KAAKS,OAAOc,WAAaC,UAC3EC,QAAUjB,GAAMR,KAAKO,aAAaC,GAClCkB,IAAMC,GAAa3B,KAAKK,OAASsB,GAEjCb,EAAA,YAAAE,IAAA,2CAAUY,KAAM5B,KAAKS,QAAUT,KAAKC,MAAQ,cAAgB,SAC5Da,EAAM,QAAAE,IAAA,2CAAAI,MAAM,WAAWpB,KAAKE,Q","ignoreList":[]}
1
+ {"version":3,"names":["infoButtonCss","InfoButton","constructor","hostRef","this","hover","label","setFocus","_a","button","focus","handleToggle","e","active","dsoToggle","emit","originalEvent","render","h","Host","key","onMouseenter","onMouseleave","type","class","clsx","secondary","toString","undefined","onClick","ref","element","icon"],"sources":["src/components/info-button/info-button.scss?tag=dso-info-button&encapsulation=shadow","src/components/info-button/info-button.tsx"],"sourcesContent":["@use \"~dso-toolkit/src/utilities\";\r\n@use \"~dso-toolkit/src/components/info-button\";\r\n\r\n:host {\r\n display: inline-block;\r\n}\r\n\r\n@include utilities.box-sizing();\r\n\r\n.sr-only {\r\n @include utilities.sr-only();\r\n}\r\n\r\nbutton {\r\n @include info-button.root();\r\n\r\n cursor: pointer;\r\n vertical-align: top;\r\n}\r\n\r\ndso-icon {\r\n display: block;\r\n}\r\n","import { Component, Event, EventEmitter, Host, Method, Prop, State, h } from \"@stencil/core\";\r\nimport clsx from \"clsx\";\r\n\r\nimport { InfoButtonToggleEvent } from \"./info-button.interfaces\";\r\n\r\n@Component({\r\n tag: \"dso-info-button\",\r\n shadow: true,\r\n styleUrl: \"info-button.scss\",\r\n})\r\nexport class InfoButton {\r\n private button?: HTMLButtonElement;\r\n\r\n /**\r\n * Whether the InfoButton is active.\r\n */\r\n @Prop({ mutable: true, reflect: true })\r\n active?: boolean;\r\n\r\n @State()\r\n hover = false;\r\n\r\n /**\r\n * For secondary Info Button.\r\n */\r\n @Prop()\r\n secondary?: boolean;\r\n\r\n /**\r\n * The label.\r\n */\r\n @Prop()\r\n label = \"Toelichting bij optie\";\r\n\r\n /**\r\n * Emitted when the user activates the Info Button.\r\n */\r\n @Event()\r\n dsoToggle!: EventEmitter<InfoButtonToggleEvent>;\r\n\r\n /**\r\n * To set focus to the toggle button.\r\n */\r\n @Method()\r\n async setFocus() {\r\n this.button?.focus();\r\n }\r\n\r\n private handleToggle(e: MouseEvent) {\r\n this.active = !this.active;\r\n this.dsoToggle.emit({ originalEvent: e, active: this.active });\r\n }\r\n\r\n render() {\r\n return (\r\n <Host onMouseenter={() => (this.hover = true)} onMouseleave={() => (this.hover = false)}>\r\n <button\r\n type=\"button\"\r\n class={clsx({ \"dso-open\": !!this.active, \"dso-info-secondary\": !!this.secondary })}\r\n aria-expanded={typeof this.active === \"boolean\" ? this.active.toString() : undefined}\r\n onClick={(e) => this.handleToggle(e)}\r\n ref={(element) => (this.button = element)}\r\n >\r\n <dso-icon icon={this.active || this.hover ? \"info-active\" : \"info\"}></dso-icon>\r\n <span class=\"sr-only\">{this.label}</span>\r\n </button>\r\n </Host>\r\n );\r\n }\r\n}\r\n"],"mappings":"6FAAA,MAAMA,EAAgB,+a,MCUTC,EAAU,MALvB,WAAAC,CAAAC,G,+CAeEC,KAAKC,MAAG,MAYRD,KAAKE,MAAG,uBAqCT,CAzBC,cAAMC,G,OACJC,EAAAJ,KAAKK,UAAQ,MAAAD,SAAA,SAAAA,EAAAE,O,CAGP,YAAAC,CAAaC,GACnBR,KAAKS,QAAUT,KAAKS,OACpBT,KAAKU,UAAUC,KAAK,CAAEC,cAAeJ,EAAGC,OAAQT,KAAKS,Q,CAGvD,MAAAI,GACE,OACEC,EAACC,EAAI,CAAAC,IAAA,2CAACC,aAAc,IAAOjB,KAAKC,MAAQ,KAAOiB,aAAc,IAAOlB,KAAKC,MAAQ,OAC/Ea,EAAA,UAAAE,IAAA,2CACEG,KAAK,SACLC,MAAOC,EAAK,CAAE,aAAcrB,KAAKS,OAAQ,uBAAwBT,KAAKsB,YAAY,uBAC5DtB,KAAKS,SAAW,UAAYT,KAAKS,OAAOc,WAAaC,UAC3EC,QAAUjB,GAAMR,KAAKO,aAAaC,GAClCkB,IAAMC,GAAa3B,KAAKK,OAASsB,GAEjCb,EAAA,YAAAE,IAAA,2CAAUY,KAAM5B,KAAKS,QAAUT,KAAKC,MAAQ,cAAgB,SAC5Da,EAAM,QAAAE,IAAA,2CAAAI,MAAM,WAAWpB,KAAKE,Q","ignoreList":[]}
@@ -1,2 +1,2 @@
1
- import{a as t,f as e,r as s,h as n,H as r,g as o}from"./p-DxWmN7gh.js";const c=(t,e,s)=>{const n=t.get(e);if(!n){t.set(e,[s])}else if(!n.includes(s)){n.push(s)}};const i=(t,e)=>{let s;return(...n)=>{if(s){clearTimeout(s)}s=setTimeout((()=>{s=0;t(...n)}),e)}};const a=t=>!("isConnected"in t)||t.isConnected;const f=i((t=>{for(let e of t.keys()){t.set(e,t.get(e).filter(a))}}),2e3);const u=()=>{if(typeof t!=="function"){return{}}const s=new Map;return{dispose:()=>s.clear(),get:e=>{const n=t();if(n){c(s,e,n)}},set:t=>{const n=s.get(t);if(n){s.set(t,n.filter(e))}f(s)},reset:()=>{s.forEach((t=>t.forEach(e)));f(s)}}};const d=t=>typeof t==="function"?t():t;const l=(t,e=(t,e)=>t!==e)=>{const s=d(t);let n=new Map(Object.entries(s??{}));const r={dispose:[],get:[],set:[],reset:[]};const o=new Map;const c=()=>{n=new Map(Object.entries(d(t)??{}));r.reset.forEach((t=>t()))};const i=()=>{r.dispose.forEach((t=>t()));c()};const a=t=>{r.get.forEach((e=>e(t)));return n.get(t)};const f=(t,s)=>{const o=n.get(t);if(e(s,o,t)){n.set(t,s);r.set.forEach((e=>e(t,s,o)))}};const u=typeof Proxy==="undefined"?{}:new Proxy(s,{get(t,e){return a(e)},ownKeys(t){return Array.from(n.keys())},getOwnPropertyDescriptor(){return{enumerable:true,configurable:true}},has(t,e){return n.has(e)},set(t,e,s){f(e,s);return true}});const l=(t,e)=>{r[t].push(e);return()=>{p(r[t],e)}};const g=(e,s)=>{const n=(t,n)=>{if(t===e){s(n)}};const r=()=>s(d(t)[e]);const c=l("set",n);const i=l("reset",r);o.set(s,{setHandler:n,resetHandler:r,propName:e});return()=>{c();i();o.delete(s)}};const b=(...t)=>{const e=t.reduce(((t,e)=>{if(e.set){t.push(l("set",e.set))}if(e.get){t.push(l("get",e.get))}if(e.reset){t.push(l("reset",e.reset))}if(e.dispose){t.push(l("dispose",e.dispose))}return t}),[]);return()=>e.forEach((t=>t()))};const h=t=>{const e=n.get(t);r.set.forEach((s=>s(t,e,e)))};const y=(t,e)=>{const s=o.get(e);if(s&&s.propName===t){p(r.set,s.setHandler);p(r.reset,s.resetHandler);o.delete(e)}};return{state:u,get:a,set:f,on:l,onChange:g,use:b,dispose:i,reset:c,forceUpdate:h,removeListener:y}};const p=(t,e)=>{const s=t.indexOf(e);if(s>=0){t[s]=t[t.length-1];t.length--}};const g=(t,e)=>{const s=l(t,e);s.use(u());return s};const b='@charset "UTF-8";:host{display:block}*,*::after,*::before{box-sizing:border-box}';const h=class{constructor(t){s(this,t);const{state:e}=g({variant:"default",reverseAlign:false});this.accordionState=e}get variant(){return this.accordionState.variant}set variant(t){this.accordionState.variant=t||"default"}get reverseAlign(){return this.accordionState.reverseAlign}set reverseAlign(t){this.accordionState.reverseAlign=t||false}async _getState(){return this.accordionState}render(){return n(r,{key:"5d93d27bbfb8f16c59eaec6f6f5796489004eb54",class:"dso-accordion"},n("slot",{key:"c92d0e2dcedb5e916c043cd3866d9dbf9ca7f449"}))}get host(){return o(this)}};h.style=b;export{h as dso_accordion};
2
- //# sourceMappingURL=p-915c332a.entry.js.map
1
+ import{a as t,f as e,r as s,h as n,H as r,g as o}from"./p-DxWmN7gh.js";const c=(t,e,s)=>{const n=t.get(e);if(!n){t.set(e,[s])}else if(!n.includes(s)){n.push(s)}};const i=(t,e)=>{let s;return(...n)=>{if(s){clearTimeout(s)}s=setTimeout((()=>{s=0;t(...n)}),e)}};const a=t=>!("isConnected"in t)||t.isConnected;const f=i((t=>{for(let e of t.keys()){t.set(e,t.get(e).filter(a))}}),2e3);const u=()=>{if(typeof t!=="function"){return{}}const s=new Map;return{dispose:()=>s.clear(),get:e=>{const n=t();if(n){c(s,e,n)}},set:t=>{const n=s.get(t);if(n){s.set(t,n.filter(e))}f(s)},reset:()=>{s.forEach((t=>t.forEach(e)));f(s)}}};const d=t=>typeof t==="function"?t():t;const l=(t,e=(t,e)=>t!==e)=>{const s=d(t);let n=new Map(Object.entries(s??{}));const r={dispose:[],get:[],set:[],reset:[]};const o=new Map;const c=()=>{n=new Map(Object.entries(d(t)??{}));r.reset.forEach((t=>t()))};const i=()=>{r.dispose.forEach((t=>t()));c()};const a=t=>{r.get.forEach((e=>e(t)));return n.get(t)};const f=(t,s)=>{const o=n.get(t);if(e(s,o,t)){n.set(t,s);r.set.forEach((e=>e(t,s,o)))}};const u=typeof Proxy==="undefined"?{}:new Proxy(s,{get(t,e){return a(e)},ownKeys(t){return Array.from(n.keys())},getOwnPropertyDescriptor(){return{enumerable:true,configurable:true}},has(t,e){return n.has(e)},set(t,e,s){f(e,s);return true}});const l=(t,e)=>{r[t].push(e);return()=>{p(r[t],e)}};const g=(e,s)=>{const n=(t,n)=>{if(t===e){s(n)}};const r=()=>s(d(t)[e]);const c=l("set",n);const i=l("reset",r);o.set(s,{setHandler:n,resetHandler:r,propName:e});return()=>{c();i();o.delete(s)}};const b=(...t)=>{const e=t.reduce(((t,e)=>{if(e.set){t.push(l("set",e.set))}if(e.get){t.push(l("get",e.get))}if(e.reset){t.push(l("reset",e.reset))}if(e.dispose){t.push(l("dispose",e.dispose))}return t}),[]);return()=>e.forEach((t=>t()))};const h=t=>{const e=n.get(t);r.set.forEach((s=>s(t,e,e)))};const y=(t,e)=>{const s=o.get(e);if(s&&s.propName===t){p(r.set,s.setHandler);p(r.reset,s.resetHandler);o.delete(e)}};return{state:u,get:a,set:f,on:l,onChange:g,use:b,dispose:i,reset:c,forceUpdate:h,removeListener:y}};const p=(t,e)=>{const s=t.indexOf(e);if(s>=0){t[s]=t[t.length-1];t.length--}};const g=(t,e)=>{const s=l(t,e);s.use(u());return s};const b=":host{display:block}*,*::after,*::before{box-sizing:border-box}";const h=class{constructor(t){s(this,t);const{state:e}=g({variant:"default",reverseAlign:false});this.accordionState=e}get variant(){return this.accordionState.variant}set variant(t){this.accordionState.variant=t||"default"}get reverseAlign(){return this.accordionState.reverseAlign}set reverseAlign(t){this.accordionState.reverseAlign=t||false}async _getState(){return this.accordionState}render(){return n(r,{key:"5d93d27bbfb8f16c59eaec6f6f5796489004eb54",class:"dso-accordion"},n("slot",{key:"c92d0e2dcedb5e916c043cd3866d9dbf9ca7f449"}))}get host(){return o(this)}};h.style=b;export{h as dso_accordion};
2
+ //# sourceMappingURL=p-b680b169.entry.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["appendToMap","map","propName","value","items","get","set","includes","push","debounce","fn","ms","timeoutId","args","clearTimeout","setTimeout","isConnected","maybeElement","cleanupElements","key","keys","filter","stencilSubscription","getRenderingRef","elmsToUpdate","Map","dispose","clear","elm","elements","forceUpdate","reset","forEach","elms","unwrap","val","createObservableMap","defaultState","shouldUpdate","a","b","unwrappedState","states","Object","entries","handlers","changeListeners","cb","oldValue","state","Proxy","_","ownKeys","Array","from","getOwnPropertyDescriptor","enumerable","configurable","has","on","eventName","callback","removeFromArray","onChange","setHandler","newValue","resetHandler","unSet","unReset","delete","use","subscriptions","unsubs","reduce","subscription","unsub","removeListener","listener","listenerInfo","array","item","index","indexOf","length","createStore","accordionCss","Accordion","constructor","hostRef","variant","reverseAlign","this","accordionState","_getState","render","h","Host","class"],"sources":["../../node_modules/@stencil/store/dist/index.js","src/components/accordion/accordion.scss?tag=dso-accordion&encapsulation=shadow","src/components/accordion/accordion.tsx"],"sourcesContent":["import { getRenderingRef, forceUpdate } from '@stencil/core';\n\nconst appendToMap = (map, propName, value) => {\n const items = map.get(propName);\n if (!items) {\n map.set(propName, [value]);\n }\n else if (!items.includes(value)) {\n items.push(value);\n }\n};\nconst debounce = (fn, ms) => {\n let timeoutId;\n return (...args) => {\n if (timeoutId) {\n clearTimeout(timeoutId);\n }\n timeoutId = setTimeout(() => {\n timeoutId = 0;\n fn(...args);\n }, ms);\n };\n};\n\n/**\n * Check if a possible element isConnected.\n * The property might not be there, so we check for it.\n *\n * We want it to return true if isConnected is not a property,\n * otherwise we would remove these elements and would not update.\n *\n * Better leak in Edge than to be useless.\n */\nconst isConnected = (maybeElement) => !('isConnected' in maybeElement) || maybeElement.isConnected;\nconst cleanupElements = debounce((map) => {\n for (let key of map.keys()) {\n map.set(key, map.get(key).filter(isConnected));\n }\n}, 2_000);\nconst stencilSubscription = () => {\n if (typeof getRenderingRef !== 'function') {\n // If we are not in a stencil project, we do nothing.\n // This function is not really exported by @stencil/core.\n return {};\n }\n const elmsToUpdate = new Map();\n return {\n dispose: () => elmsToUpdate.clear(),\n get: (propName) => {\n const elm = getRenderingRef();\n if (elm) {\n appendToMap(elmsToUpdate, propName, elm);\n }\n },\n set: (propName) => {\n const elements = elmsToUpdate.get(propName);\n if (elements) {\n elmsToUpdate.set(propName, elements.filter(forceUpdate));\n }\n cleanupElements(elmsToUpdate);\n },\n reset: () => {\n elmsToUpdate.forEach((elms) => elms.forEach(forceUpdate));\n cleanupElements(elmsToUpdate);\n },\n };\n};\n\nconst unwrap = (val) => (typeof val === 'function' ? val() : val);\nconst createObservableMap = (defaultState, shouldUpdate = (a, b) => a !== b) => {\n const unwrappedState = unwrap(defaultState);\n let states = new Map(Object.entries(unwrappedState ?? {}));\n const handlers = {\n dispose: [],\n get: [],\n set: [],\n reset: [],\n };\n // Track onChange listeners to enable removeListener functionality\n const changeListeners = new Map();\n const reset = () => {\n // When resetting the state, the default state may be a function - unwrap it to invoke it.\n // otherwise, the state won't be properly reset\n states = new Map(Object.entries(unwrap(defaultState) ?? {}));\n handlers.reset.forEach((cb) => cb());\n };\n const dispose = () => {\n // Call first dispose as resetting the state would\n // cause less updates ;)\n handlers.dispose.forEach((cb) => cb());\n reset();\n };\n const get = (propName) => {\n handlers.get.forEach((cb) => cb(propName));\n return states.get(propName);\n };\n const set = (propName, value) => {\n const oldValue = states.get(propName);\n if (shouldUpdate(value, oldValue, propName)) {\n states.set(propName, value);\n handlers.set.forEach((cb) => cb(propName, value, oldValue));\n }\n };\n const state = (typeof Proxy === 'undefined'\n ? {}\n : new Proxy(unwrappedState, {\n get(_, propName) {\n return get(propName);\n },\n ownKeys(_) {\n return Array.from(states.keys());\n },\n getOwnPropertyDescriptor() {\n return {\n enumerable: true,\n configurable: true,\n };\n },\n has(_, propName) {\n return states.has(propName);\n },\n set(_, propName, value) {\n set(propName, value);\n return true;\n },\n }));\n const on = (eventName, callback) => {\n handlers[eventName].push(callback);\n return () => {\n removeFromArray(handlers[eventName], callback);\n };\n };\n const onChange = (propName, cb) => {\n const setHandler = (key, newValue) => {\n if (key === propName) {\n cb(newValue);\n }\n };\n const resetHandler = () => cb(unwrap(defaultState)[propName]);\n // Register the handlers\n const unSet = on('set', setHandler);\n const unReset = on('reset', resetHandler);\n // Track the relationship between the user callback and internal handlers\n changeListeners.set(cb, { setHandler, resetHandler, propName });\n return () => {\n unSet();\n unReset();\n changeListeners.delete(cb);\n };\n };\n const use = (...subscriptions) => {\n const unsubs = subscriptions.reduce((unsubs, subscription) => {\n if (subscription.set) {\n unsubs.push(on('set', subscription.set));\n }\n if (subscription.get) {\n unsubs.push(on('get', subscription.get));\n }\n if (subscription.reset) {\n unsubs.push(on('reset', subscription.reset));\n }\n if (subscription.dispose) {\n unsubs.push(on('dispose', subscription.dispose));\n }\n return unsubs;\n }, []);\n return () => unsubs.forEach((unsub) => unsub());\n };\n const forceUpdate = (key) => {\n const oldValue = states.get(key);\n handlers.set.forEach((cb) => cb(key, oldValue, oldValue));\n };\n const removeListener = (propName, listener) => {\n const listenerInfo = changeListeners.get(listener);\n if (listenerInfo && listenerInfo.propName === propName) {\n // Remove the specific handlers that were created for this listener\n removeFromArray(handlers.set, listenerInfo.setHandler);\n removeFromArray(handlers.reset, listenerInfo.resetHandler);\n changeListeners.delete(listener);\n }\n };\n return {\n state,\n get,\n set,\n on,\n onChange,\n use,\n dispose,\n reset,\n forceUpdate,\n removeListener,\n };\n};\nconst removeFromArray = (array, item) => {\n const index = array.indexOf(item);\n if (index >= 0) {\n array[index] = array[array.length - 1];\n array.length--;\n }\n};\n\nconst createStore = (defaultState, shouldUpdate) => {\n const map = createObservableMap(defaultState, shouldUpdate);\n map.use(stencilSubscription());\n return map;\n};\n\nexport { createObservableMap, createStore };\n","@use \"~dso-toolkit/src/utilities\";\r\n\r\n:host {\r\n display: block;\r\n}\r\n\r\n@include utilities.box-sizing();\r\n","import { Component, ComponentInterface, Element, Host, Method, Prop, h } from \"@stencil/core\";\r\nimport { createStore } from \"@stencil/store\";\r\n\r\nimport { AccordionInternalState, AccordionVariant } from \"./accordion.interfaces\";\r\n\r\n@Component({\r\n tag: \"dso-accordion\",\r\n styleUrl: \"accordion.scss\",\r\n shadow: true,\r\n})\r\nexport class Accordion implements ComponentInterface {\r\n private readonly accordionState: AccordionInternalState;\r\n\r\n @Element()\r\n host!: HTMLDsoAccordionElement;\r\n\r\n constructor() {\r\n const { state } = createStore<AccordionInternalState>({\r\n variant: \"default\",\r\n reverseAlign: false,\r\n });\r\n\r\n this.accordionState = state;\r\n }\r\n\r\n /**\r\n * The variant of the Accordion.\r\n */\r\n @Prop()\r\n get variant(): AccordionVariant {\r\n return this.accordionState.variant;\r\n }\r\n set variant(value: AccordionVariant) {\r\n this.accordionState.variant = value || \"default\";\r\n }\r\n\r\n /**\r\n * Places the chevron at the opposite side.\r\n *\r\n * Note: this mode does not display `state`, `attachmentCount` or `status` props on Accordion Sections\r\n */\r\n @Prop()\r\n get reverseAlign() {\r\n return this.accordionState.reverseAlign;\r\n }\r\n set reverseAlign(value: boolean) {\r\n this.accordionState.reverseAlign = value || false;\r\n }\r\n\r\n /**\r\n * @internal\r\n */\r\n @Method()\r\n async _getState(): Promise<AccordionInternalState> {\r\n return this.accordionState;\r\n }\r\n\r\n render() {\r\n return (\r\n <Host class=\"dso-accordion\">\r\n <slot></slot>\r\n </Host>\r\n );\r\n }\r\n}\r\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["appendToMap","map","propName","value","items","get","set","includes","push","debounce","fn","ms","timeoutId","args","clearTimeout","setTimeout","isConnected","maybeElement","cleanupElements","key","keys","filter","stencilSubscription","getRenderingRef","elmsToUpdate","Map","dispose","clear","elm","elements","forceUpdate","reset","forEach","elms","unwrap","val","createObservableMap","defaultState","shouldUpdate","a","b","unwrappedState","states","Object","entries","handlers","changeListeners","cb","oldValue","state","Proxy","_","ownKeys","Array","from","getOwnPropertyDescriptor","enumerable","configurable","has","on","eventName","callback","removeFromArray","onChange","setHandler","newValue","resetHandler","unSet","unReset","delete","use","subscriptions","unsubs","reduce","subscription","unsub","removeListener","listener","listenerInfo","array","item","index","indexOf","length","createStore","accordionCss","Accordion","constructor","hostRef","variant","reverseAlign","this","accordionState","_getState","render","h","Host","class"],"sources":["../../node_modules/@stencil/store/dist/index.js","src/components/accordion/accordion.scss?tag=dso-accordion&encapsulation=shadow","src/components/accordion/accordion.tsx"],"sourcesContent":["import { getRenderingRef, forceUpdate } from '@stencil/core';\n\nconst appendToMap = (map, propName, value) => {\n const items = map.get(propName);\n if (!items) {\n map.set(propName, [value]);\n }\n else if (!items.includes(value)) {\n items.push(value);\n }\n};\nconst debounce = (fn, ms) => {\n let timeoutId;\n return (...args) => {\n if (timeoutId) {\n clearTimeout(timeoutId);\n }\n timeoutId = setTimeout(() => {\n timeoutId = 0;\n fn(...args);\n }, ms);\n };\n};\n\n/**\n * Check if a possible element isConnected.\n * The property might not be there, so we check for it.\n *\n * We want it to return true if isConnected is not a property,\n * otherwise we would remove these elements and would not update.\n *\n * Better leak in Edge than to be useless.\n */\nconst isConnected = (maybeElement) => !('isConnected' in maybeElement) || maybeElement.isConnected;\nconst cleanupElements = debounce((map) => {\n for (let key of map.keys()) {\n map.set(key, map.get(key).filter(isConnected));\n }\n}, 2_000);\nconst stencilSubscription = () => {\n if (typeof getRenderingRef !== 'function') {\n // If we are not in a stencil project, we do nothing.\n // This function is not really exported by @stencil/core.\n return {};\n }\n const elmsToUpdate = new Map();\n return {\n dispose: () => elmsToUpdate.clear(),\n get: (propName) => {\n const elm = getRenderingRef();\n if (elm) {\n appendToMap(elmsToUpdate, propName, elm);\n }\n },\n set: (propName) => {\n const elements = elmsToUpdate.get(propName);\n if (elements) {\n elmsToUpdate.set(propName, elements.filter(forceUpdate));\n }\n cleanupElements(elmsToUpdate);\n },\n reset: () => {\n elmsToUpdate.forEach((elms) => elms.forEach(forceUpdate));\n cleanupElements(elmsToUpdate);\n },\n };\n};\n\nconst unwrap = (val) => (typeof val === 'function' ? val() : val);\nconst createObservableMap = (defaultState, shouldUpdate = (a, b) => a !== b) => {\n const unwrappedState = unwrap(defaultState);\n let states = new Map(Object.entries(unwrappedState ?? {}));\n const handlers = {\n dispose: [],\n get: [],\n set: [],\n reset: [],\n };\n // Track onChange listeners to enable removeListener functionality\n const changeListeners = new Map();\n const reset = () => {\n // When resetting the state, the default state may be a function - unwrap it to invoke it.\n // otherwise, the state won't be properly reset\n states = new Map(Object.entries(unwrap(defaultState) ?? {}));\n handlers.reset.forEach((cb) => cb());\n };\n const dispose = () => {\n // Call first dispose as resetting the state would\n // cause less updates ;)\n handlers.dispose.forEach((cb) => cb());\n reset();\n };\n const get = (propName) => {\n handlers.get.forEach((cb) => cb(propName));\n return states.get(propName);\n };\n const set = (propName, value) => {\n const oldValue = states.get(propName);\n if (shouldUpdate(value, oldValue, propName)) {\n states.set(propName, value);\n handlers.set.forEach((cb) => cb(propName, value, oldValue));\n }\n };\n const state = (typeof Proxy === 'undefined'\n ? {}\n : new Proxy(unwrappedState, {\n get(_, propName) {\n return get(propName);\n },\n ownKeys(_) {\n return Array.from(states.keys());\n },\n getOwnPropertyDescriptor() {\n return {\n enumerable: true,\n configurable: true,\n };\n },\n has(_, propName) {\n return states.has(propName);\n },\n set(_, propName, value) {\n set(propName, value);\n return true;\n },\n }));\n const on = (eventName, callback) => {\n handlers[eventName].push(callback);\n return () => {\n removeFromArray(handlers[eventName], callback);\n };\n };\n const onChange = (propName, cb) => {\n const setHandler = (key, newValue) => {\n if (key === propName) {\n cb(newValue);\n }\n };\n const resetHandler = () => cb(unwrap(defaultState)[propName]);\n // Register the handlers\n const unSet = on('set', setHandler);\n const unReset = on('reset', resetHandler);\n // Track the relationship between the user callback and internal handlers\n changeListeners.set(cb, { setHandler, resetHandler, propName });\n return () => {\n unSet();\n unReset();\n changeListeners.delete(cb);\n };\n };\n const use = (...subscriptions) => {\n const unsubs = subscriptions.reduce((unsubs, subscription) => {\n if (subscription.set) {\n unsubs.push(on('set', subscription.set));\n }\n if (subscription.get) {\n unsubs.push(on('get', subscription.get));\n }\n if (subscription.reset) {\n unsubs.push(on('reset', subscription.reset));\n }\n if (subscription.dispose) {\n unsubs.push(on('dispose', subscription.dispose));\n }\n return unsubs;\n }, []);\n return () => unsubs.forEach((unsub) => unsub());\n };\n const forceUpdate = (key) => {\n const oldValue = states.get(key);\n handlers.set.forEach((cb) => cb(key, oldValue, oldValue));\n };\n const removeListener = (propName, listener) => {\n const listenerInfo = changeListeners.get(listener);\n if (listenerInfo && listenerInfo.propName === propName) {\n // Remove the specific handlers that were created for this listener\n removeFromArray(handlers.set, listenerInfo.setHandler);\n removeFromArray(handlers.reset, listenerInfo.resetHandler);\n changeListeners.delete(listener);\n }\n };\n return {\n state,\n get,\n set,\n on,\n onChange,\n use,\n dispose,\n reset,\n forceUpdate,\n removeListener,\n };\n};\nconst removeFromArray = (array, item) => {\n const index = array.indexOf(item);\n if (index >= 0) {\n array[index] = array[array.length - 1];\n array.length--;\n }\n};\n\nconst createStore = (defaultState, shouldUpdate) => {\n const map = createObservableMap(defaultState, shouldUpdate);\n map.use(stencilSubscription());\n return map;\n};\n\nexport { createObservableMap, createStore };\n","@use \"~dso-toolkit/src/utilities\";\r\n\r\n:host {\r\n display: block;\r\n}\r\n\r\n@include utilities.box-sizing();\r\n","import { Component, ComponentInterface, Element, Host, Method, Prop, h } from \"@stencil/core\";\r\nimport { createStore } from \"@stencil/store\";\r\n\r\nimport { AccordionInternalState, AccordionVariant } from \"./accordion.interfaces\";\r\n\r\n@Component({\r\n tag: \"dso-accordion\",\r\n styleUrl: \"accordion.scss\",\r\n shadow: true,\r\n})\r\nexport class Accordion implements ComponentInterface {\r\n private readonly accordionState: AccordionInternalState;\r\n\r\n @Element()\r\n host!: HTMLDsoAccordionElement;\r\n\r\n constructor() {\r\n const { state } = createStore<AccordionInternalState>({\r\n variant: \"default\",\r\n reverseAlign: false,\r\n });\r\n\r\n this.accordionState = state;\r\n }\r\n\r\n /**\r\n * The variant of the Accordion.\r\n */\r\n @Prop()\r\n get variant(): AccordionVariant {\r\n return this.accordionState.variant;\r\n }\r\n set variant(value: AccordionVariant) {\r\n this.accordionState.variant = value || \"default\";\r\n }\r\n\r\n /**\r\n * Places the chevron at the opposite side.\r\n *\r\n * Note: this mode does not display `state`, `attachmentCount` or `status` props on Accordion Sections\r\n */\r\n @Prop()\r\n get reverseAlign() {\r\n return this.accordionState.reverseAlign;\r\n }\r\n set reverseAlign(value: boolean) {\r\n this.accordionState.reverseAlign = value || false;\r\n }\r\n\r\n /**\r\n * @internal\r\n */\r\n @Method()\r\n async _getState(): Promise<AccordionInternalState> {\r\n return this.accordionState;\r\n }\r\n\r\n render() {\r\n return (\r\n <Host class=\"dso-accordion\">\r\n <slot></slot>\r\n </Host>\r\n );\r\n }\r\n}\r\n"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,2 @@
1
+ import{h as e,F as t,r as o,c as i}from"./p-DxWmN7gh.js";import{c as n}from"./p-ChV9xqsO.js";const s=({owner:o,ancestors:i,item:r,index:a,level:l,setSize:c})=>{var d,u,h,p;return e("li",{key:r.id,class:n("tree-item",{"has-child":r.hasItems,"is-expanded":!!r.open&&!!((d=r.items)===null||d===void 0?void 0:d.length)}),role:"none"},e("div",{class:"tree-branch-control"},r.hasItems?e("div",{onClick:e=>o.itemClick(e,i,r)},e("dso-icon",{icon:r.open?"minus-square":"plus-square"})):e("dso-icon",null)),e("p",{class:n("tree-content",{active:r.active},{selected:r.selected}),tabindex:l===1&&a===0?0:-1,role:"treeitem","aria-expanded":r.hasItems?""+(!!r.open&&!!((u=r.items)===null||u===void 0?void 0:u.length)):undefined,"aria-current":r.active?"true":undefined,"aria-level":l,"aria-setsize":c,"aria-posinset":a+1,"aria-busy":r.loading?"true":undefined,"data-item-id":r.id,onClick:e=>o.itemClick(e,i,r)},r.selected&&e("span",{class:"sr-only"},"Resultaat: "),r.href?e("a",{href:r.href,tabindex:"-1"},r.label):e("span",null,r.label),(h=r.icons)===null||h===void 0?void 0:h.map((t=>e("dso-icon",{icon:t.icon,title:t.label})))),r.open&&e(t,null,r.hasItems&&!r.items&&r.loading?e("dso-progress-indicator",{size:"small",label:"Resultaten laden: een moment geduld alstublieft."}):e("ul",{role:"group"},(p=r.items)===null||p===void 0?void 0:p.map(((t,n,a)=>e(s,{owner:o,ancestors:[...i,r],item:t,index:n,level:l+1,setSize:a.length}))))))};const r=':host ul{list-style-type:none;padding-inline-start:32px;position:relative}:host li{position:relative}:host ul[role=tree]{padding-inline-start:0}:host ul[role=group]::before{border-inline-start:1px solid #275937;content:"";block-size:8px;inset-inline-start:44px;position:absolute;inset-block-start:0;inline-size:0}:host li:not(.has-child)::before{border-block-start:1px solid #275937;content:"";block-size:0;inset-inline-start:12px;position:absolute;inset-block-start:20px;inline-size:16px}:host li:not(.has-child)::after{border-inline-start:1px solid #275937;content:"";block-size:100%;inset-inline-start:12px;position:absolute;inset-block-start:8px;inline-size:0}:host li:not(.has-child):last-child::after{block-size:20px;inset-block-start:0}:host li.has-child::before{border-block-start:1px solid #275937;content:"";block-size:0;inset-inline-start:24px;position:absolute;inset-block-start:20px;inline-size:4px}:host li.has-child:not(:last-child)::after{border-inline-start:1px solid #275937;content:"";block-size:calc(100% - 24px);inset-inline-start:12px;position:absolute;inset-block-start:32px;inline-size:0}:host li.has-child.is-expanded:last-child::after{border-inline-start:1px solid #275937;content:"";block-size:calc(100% - 32px);inset-inline-start:12px;position:absolute;inset-block-start:32px;inline-size:0}:host .tree-branch-control{color:#39870c;display:inline-block;font-size:16px;margin-block:8px;margin-inline:0 8px;vertical-align:top}:host .tree-branch-control>div{cursor:pointer}:host .tree-content{cursor:pointer;display:inline-block;margin-block:8px;margin-inline:0;max-inline-size:calc(100% - 40px)}:host .tree-content a{color:#191919;text-decoration:underline}:host .tree-content a:hover,:host .tree-content a:focus{color:#191919;text-decoration:none}:host .tree-content a:active{text-decoration:none}:host .tree-content.selected{color:#191919;font-weight:700;text-decoration:underline}:host .tree-content.selected:hover,:host .tree-content.selected:focus{text-decoration:none}:host .tree-content.active{color:#8b4a6a;font-style:italic;font-weight:700;text-decoration:underline}:host .tree-content.active:hover,:host .tree-content.active:focus{text-decoration:none}:host .tree-content.active a{color:#8b4a6a}:host .tree-content.active a:hover,:host .tree-content.active a:focus{text-decoration:none}:host .tree-content dso-icon{color:#39870c;font-size:0.75em;margin-inline-start:0.5em;vertical-align:text-bottom}*,*::after,*::before{box-sizing:border-box}.sr-only{position:absolute;inline-size:1px;block-size:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);border:0}';const a=class{constructor(e){o(this,e);this.dsoOpenItem=i(this,"dsoOpenItem",7);this.dsoCloseItem=i(this,"dsoCloseItem",7);this.dsoClickItem=i(this,"dsoClickItem",7);this.keyDownListener=e=>{if(e.defaultPrevented){return}const t=e=>e.length===1&&e.match(/\S/);const o=e.composedPath().find((e=>e instanceof HTMLElement?e.className==="dso-tree":false));if(!(e.target instanceof HTMLParagraphElement)||!(o instanceof HTMLElement)){return}switch(e.key){case"ArrowDown":a.moveFocus(o,e.target,"next");break;case"ArrowUp":a.moveFocus(o,e.target,"previous");break;case"ArrowRight":a.expandItemOrFocusChild(o,e.target);break;case"ArrowLeft":a.collapseItemOrFocusParent(o,e.target);break;case"End":a.moveFocus(o,e.target,"last");break;case"Home":a.moveFocus(o,e.target,"first");break;case"Enter":case" ":e.target.click();break;default:if(t(e.key)){if(a.setFocusByFirstCharacter(o,e.target,e.key,e.shiftKey)){break}}return}e.preventDefault()};this.itemClick=(e,t,o)=>{if(!(e.target instanceof HTMLElement)){return}const i=e.target.closest(".tree-content");if(i){const n=e.composedPath().find((e=>e instanceof HTMLElement?e.className==="dso-tree":false));if(!(i instanceof HTMLParagraphElement)||!(n instanceof HTMLElement)){return}a.setFocus(n,i);this.dsoClickItem.emit({path:[...t,o],originalEvent:e});return}if(o.open){this.dsoCloseItem.emit([...t,o])}else{this.dsoOpenItem.emit([...t,o])}}}async focusItem(e){var t;const o=this.tree;if(!o||e.length===0){return false}const i=e[e.length-1];if(!i){throw new Error("No itemToFocus found")}const n=Array.from((t=o.querySelectorAll("p"))!==null&&t!==void 0?t:[]).filter((e=>e.offsetWidth>0&&e.offsetHeight>0)).find((e=>e.dataset["itemId"]===i.id));if(!n){return false}a.setFocus(o,n);return true}static setFocus(e,t){if(t){Array.from(e.querySelectorAll("p")).filter((e=>e.tabIndex===0)).forEach((e=>e.tabIndex=-1));t.tabIndex=0;t.focus()}}static moveFocus(e,t,o){const i=Array.from(e.querySelectorAll("p")).filter((e=>e.offsetWidth>0&&e.offsetHeight>0));let n=0;switch(o){case"first":n=0;break;case"previous":n=i.indexOf(t)-1;break;case"next":n=i.indexOf(t)+1;break;case"last":n=i.length-1;break}const s=i[n];if(!s){throw new Error("No focusableItem found")}a.setFocus(e,s)}static expandItemOrFocusChild(e,t){var o;if((t===null||t===void 0?void 0:t.getAttribute("aria-expanded"))==="true"){a.moveFocus(e,t,"next")}else{const e=(o=t.previousElementSibling)===null||o===void 0?void 0:o.firstElementChild;if(e instanceof HTMLElement){e.click()}}}static collapseItemOrFocusParent(e,t){var o,i,n;if((t===null||t===void 0?void 0:t.getAttribute("aria-expanded"))==="true"){const e=(o=t.previousElementSibling)===null||o===void 0?void 0:o.firstElementChild;if(e instanceof HTMLElement){e.click()}}else{const o=(n=(i=t===null||t===void 0?void 0:t.parentElement)===null||i===void 0?void 0:i.parentElement)===null||n===void 0?void 0:n.previousElementSibling;if(o instanceof HTMLElement){a.setFocus(e,o)}}}static setFocusByFirstCharacter(e,t,o,i){const n=Array.from(e.querySelectorAll("p")).filter((e=>e.offsetWidth>0&&e.offsetHeight>0));if(i){n.reverse()}const s=n.indexOf(t);o=o.toLowerCase();let r=n.find(((e,t)=>{var i;return t>s&&((i=e.textContent)===null||i===void 0?void 0:i.toLowerCase().startsWith(o))}));if(!r){r=n.find(((e,t)=>{var i;return t<s&&((i=e.textContent)===null||i===void 0?void 0:i.toLowerCase().startsWith(o))}))}if(r){a.setFocus(e,r);return true}return false}render(){var t;return e("div",{key:"df518bf4e90740863ffefdbd13598671010a8126",id:"tree",class:"dso-tree",onKeyDown:e=>this.keyDownListener(e),ref:e=>this.tree=e},e("ul",{key:"17b6a9e1c6051321ef13dff80d28876bda733ad9",role:"tree","aria-label":"Objectenboom"},(t=this.collection)===null||t===void 0?void 0:t.map(((t,o)=>e(s,{owner:this,ancestors:[],item:t,index:o,level:1,setSize:this.collection.length})))))}};a.style=r;export{a as dso_tree_view};
2
+ //# sourceMappingURL=p-b6d75e39.entry.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["DsoTreeItem","owner","ancestors","item","index","level","setSize","h","key","id","class","clsx","hasItems","open","_a","items","length","role","onClick","e","itemClick","icon","active","selected","tabindex","_b","undefined","loading","href","label","_c","icons","map","title","Fragment","size","_d","childItem","childIndex","org","treeViewCss","TreeView","constructor","hostRef","this","keyDownListener","event","defaultPrevented","isIndexLetter","str","match","tree","composedPath","find","HTMLElement","className","target","HTMLParagraphElement","moveFocus","expandItemOrFocusChild","collapseItemOrFocusParent","click","setFocusByFirstCharacter","shiftKey","preventDefault","contentElement","closest","eventTarget","setFocus","dsoClickItem","emit","path","originalEvent","dsoCloseItem","dsoOpenItem","focusItem","itemToFocus","Error","elementToFocus","Array","from","querySelectorAll","filter","offsetWidth","offsetHeight","dataset","tabIndex","forEach","focus","el","moveTo","focusableItems","indexOf","focusableItem","getAttribute","controlElement","previousElementSibling","firstElementChild","parentTarget","parentElement","char","backwards","reverse","current","toLowerCase","nextItem","textContent","startsWith","render","onKeyDown","ref","element","collection"],"sources":["src/components/tree-view/tree-item.tsx","src/components/tree-view/tree-view.scss?tag=dso-tree-view&encapsulation=shadow","src/components/tree-view/tree-view.tsx"],"sourcesContent":["import { Fragment, FunctionalComponent, h } from \"@stencil/core\";\r\nimport clsx from \"clsx\";\r\n\r\nimport { TreeView } from \"./tree-view\";\r\nimport { TreeViewItem, TreeViewItemIcon } from \"./tree-view.interfaces\";\r\n\r\ninterface TreeViewItemProps {\r\n owner: TreeView;\r\n ancestors: TreeViewItem[];\r\n item: TreeViewItem;\r\n index: number;\r\n level: number;\r\n setSize: number;\r\n}\r\n\r\nexport const DsoTreeItem: FunctionalComponent<TreeViewItemProps> = ({\r\n owner,\r\n ancestors,\r\n item,\r\n index,\r\n level,\r\n setSize,\r\n}) => (\r\n <li\r\n key={item.id}\r\n class={clsx(\"tree-item\", { \"has-child\": item.hasItems, \"is-expanded\": !!item.open && !!item.items?.length })}\r\n role=\"none\"\r\n >\r\n <div class=\"tree-branch-control\">\r\n {item.hasItems ? (\r\n <div onClick={(e) => owner.itemClick(e, ancestors, item)}>\r\n <dso-icon icon={item.open ? \"minus-square\" : \"plus-square\"}></dso-icon>\r\n </div>\r\n ) : (\r\n <dso-icon></dso-icon>\r\n )}\r\n </div>\r\n <p\r\n class={clsx(\"tree-content\", { active: item.active }, { selected: item.selected })}\r\n tabindex={level === 1 && index === 0 ? 0 : -1}\r\n role=\"treeitem\"\r\n aria-expanded={item.hasItems ? \"\" + (!!item.open && !!item.items?.length) : undefined}\r\n aria-current={item.active ? \"true\" : undefined}\r\n aria-level={level}\r\n aria-setsize={setSize}\r\n aria-posinset={index + 1}\r\n aria-busy={item.loading ? \"true\" : undefined}\r\n data-item-id={item.id}\r\n onClick={(e) => owner.itemClick(e, ancestors, item)}\r\n >\r\n {item.selected && <span class=\"sr-only\">Resultaat: </span>}\r\n {item.href ? (\r\n <a href={item.href} tabindex=\"-1\">\r\n {item.label}\r\n </a>\r\n ) : (\r\n <span>{item.label}</span>\r\n )}\r\n {item.icons?.map((icon: TreeViewItemIcon) => <dso-icon icon={icon.icon} title={icon.label}></dso-icon>)}\r\n </p>\r\n {item.open && (\r\n <>\r\n {item.hasItems && !item.items && item.loading ? (\r\n <dso-progress-indicator size=\"small\" label=\"Resultaten laden: een moment geduld alstublieft.\" />\r\n ) : (\r\n <ul role=\"group\">\r\n {item.items?.map((childItem: TreeViewItem, childIndex: number, org: TreeViewItem[]) => (\r\n <DsoTreeItem\r\n owner={owner}\r\n ancestors={[...ancestors, item]}\r\n item={childItem}\r\n index={childIndex}\r\n level={level + 1}\r\n setSize={org.length}\r\n ></DsoTreeItem>\r\n ))}\r\n </ul>\r\n )}\r\n </>\r\n )}\r\n </li>\r\n);\r\n","@use \"sass:math\";\r\n\r\n@use \"~dso-toolkit/src/utilities\";\r\n@use \"~dso-toolkit/src/variables/colors\";\r\n@use \"~dso-toolkit/src/variables/scaffolding\";\r\n\r\n@use \"tree-view.mixins\" as core-tree-view-mixins;\r\n@use \"tree-view.variables\" as core-tree-view-variables;\r\n\r\n:host {\r\n ul {\r\n list-style-type: none;\r\n padding-inline-start: core-tree-view-variables.$indent;\r\n position: relative;\r\n }\r\n\r\n li {\r\n position: relative;\r\n }\r\n\r\n ul[role=\"tree\"] {\r\n padding-inline-start: 0;\r\n }\r\n\r\n // connects branch or leaf to parent\r\n ul[role=\"group\"]::before {\r\n @include core-tree-view-mixins.vertical-line(\r\n core-tree-view-variables.$indent + core-tree-view-variables.$hcenter,\r\n 0,\r\n core-tree-view-variables.$vspace\r\n );\r\n }\r\n\r\n li:not(.has-child) {\r\n // horizontal connector for a leaf\r\n &::before {\r\n @include core-tree-view-mixins.horizontal-line(\r\n core-tree-view-variables.$hcenter,\r\n core-tree-view-variables.$vcenter,\r\n core-tree-view-variables.$hspace + 0.5 * core-tree-view-variables.$icon-size - 4px\r\n );\r\n }\r\n\r\n // vertical connector for a leaf\r\n &::after {\r\n @include core-tree-view-mixins.vertical-line(\r\n core-tree-view-variables.$hcenter,\r\n core-tree-view-variables.$vspace,\r\n 100%\r\n );\r\n }\r\n\r\n // vertical connector for the last leaf\r\n &:last-child::after {\r\n block-size: core-tree-view-variables.$vcenter;\r\n inset-block-start: 0;\r\n }\r\n }\r\n\r\n li.has-child {\r\n // horizontal connector for a branch\r\n &::before {\r\n @include core-tree-view-mixins.horizontal-line(\r\n core-tree-view-variables.$icon-size,\r\n core-tree-view-variables.$vcenter,\r\n core-tree-view-variables.$hspace - 4px\r\n );\r\n }\r\n\r\n // vertical connector for a branch (not last)\r\n &:not(:last-child)::after {\r\n @include core-tree-view-mixins.vertical-line(\r\n core-tree-view-variables.$hcenter,\r\n core-tree-view-variables.$vcenter + 0.5 * core-tree-view-variables.$icon-size,\r\n calc(100% - core-tree-view-variables.$icon-size)\r\n );\r\n }\r\n\r\n // vertical line after a expanded branch (creating dead ends)\r\n &.is-expanded:last-child::after {\r\n @include core-tree-view-mixins.vertical-line(\r\n core-tree-view-variables.$hcenter,\r\n core-tree-view-variables.$vcenter + 0.5 * core-tree-view-variables.$icon-size,\r\n calc(100% - (core-tree-view-variables.$vcenter + 0.5 * core-tree-view-variables.$icon-size))\r\n );\r\n }\r\n }\r\n\r\n .tree-branch-control {\r\n color: colors.$grasgroen;\r\n display: inline-block;\r\n font-size: math.div(2 * core-tree-view-variables.$icon-size, 3);\r\n margin-block: core-tree-view-variables.$vspace;\r\n margin-inline: 0 core-tree-view-variables.$hspace;\r\n vertical-align: top;\r\n\r\n > div {\r\n cursor: pointer;\r\n }\r\n }\r\n\r\n .tree-content {\r\n cursor: pointer;\r\n display: inline-block;\r\n margin-block: core-tree-view-variables.$vspace;\r\n margin-inline: 0;\r\n max-inline-size: calc(100% - (core-tree-view-variables.$indent + core-tree-view-variables.$hspace));\r\n\r\n a {\r\n color: scaffolding.$text-color;\r\n text-decoration: underline;\r\n\r\n &:hover,\r\n &:focus {\r\n color: scaffolding.$text-color;\r\n text-decoration: none;\r\n }\r\n\r\n &:active {\r\n text-decoration: none;\r\n }\r\n }\r\n\r\n &.selected {\r\n color: scaffolding.$text-color;\r\n font-weight: 700;\r\n text-decoration: underline;\r\n\r\n &:hover,\r\n &:focus {\r\n text-decoration: none;\r\n }\r\n }\r\n\r\n &.active {\r\n color: colors.$mauve;\r\n font-style: italic;\r\n font-weight: 700;\r\n\r\n text-decoration: underline;\r\n\r\n &:hover,\r\n &:focus {\r\n text-decoration: none;\r\n }\r\n\r\n a {\r\n color: colors.$mauve;\r\n\r\n &:hover,\r\n &:focus {\r\n text-decoration: none;\r\n }\r\n }\r\n }\r\n\r\n dso-icon {\r\n color: colors.$grasgroen;\r\n font-size: 0.75em;\r\n margin-inline-start: 0.5em;\r\n vertical-align: text-bottom;\r\n }\r\n }\r\n}\r\n\r\n@include utilities.box-sizing();\r\n\r\n.sr-only {\r\n @include utilities.sr-only();\r\n}\r\n","import { Component, ComponentInterface, Event, EventEmitter, Method, Prop, h } from \"@stencil/core\";\r\n\r\nimport { DsoTreeItem } from \"./tree-item\";\r\nimport { TreeViewItem, TreeViewPointerEvent } from \"./tree-view.interfaces\";\r\n\r\n@Component({\r\n tag: \"dso-tree-view\",\r\n styleUrl: \"./tree-view.scss\",\r\n shadow: true,\r\n})\r\nexport class TreeView implements ComponentInterface {\r\n private tree?: HTMLElement;\r\n\r\n /**\r\n * The collection of TreeViewItems\r\n */\r\n @Prop()\r\n collection!: TreeViewItem[];\r\n\r\n /**\r\n * Emitted when a tree view item is opened.\r\n * The `detail` property of the `CustomEvent` will contain the complete path of TreeViewItems from the\r\n * root to the item that is emitting the open event. The consumer of the event is responsible for updating\r\n * the TreeView's collection (usually set the open state on the last TreeViewItem in path).\r\n */\r\n @Event()\r\n dsoOpenItem!: EventEmitter<TreeViewItem[]>;\r\n\r\n /**\r\n * Emitted when a tree view item is closed.\r\n * The `detail` property of the `CustomEvent` will contain the complete path of TreeViewItems from the\r\n * root to the item that is emitting the close event. The consumer of the event is responsible for updating\r\n * the TreeView's collection (usually set the closed state on the last TreeViewItem in path).\r\n */\r\n @Event()\r\n dsoCloseItem!: EventEmitter<TreeViewItem[]>;\r\n\r\n /**\r\n * Emitted when a tree view item is clicked.\r\n * The `detail` property of the `CustomEvent` will contain an object with:\r\n * `path` = the complete path of TreeViewItems from the root to the item that is emitting the clicked event.\r\n * `originalEvent` = the original click event.\r\n * The consumer of the event is responsible for updating the TreeView's collection (usually set the active\r\n * state on the last TreeViewItem in path and clear all other active item states).\r\n */\r\n @Event()\r\n dsoClickItem!: EventEmitter<TreeViewPointerEvent>;\r\n\r\n /**\r\n * Set focus on the last item in the specified path.\r\n * The consumer is responsible for providing a TreeView collection where the last item is visible.\r\n * @async\r\n * @returns Whether the item was found.\r\n */\r\n @Method()\r\n async focusItem(path: TreeViewItem[]): Promise<boolean> {\r\n const tree = this.tree;\r\n\r\n if (!tree || path.length === 0) {\r\n return false;\r\n }\r\n\r\n const itemToFocus = path[path.length - 1];\r\n if (!itemToFocus) {\r\n throw new Error(\"No itemToFocus found\");\r\n }\r\n\r\n const elementToFocus = (Array.from(tree.querySelectorAll(\"p\") ?? []) as HTMLElement[])\r\n .filter((item) => item.offsetWidth > 0 && item.offsetHeight > 0)\r\n .find((item) => item.dataset[\"itemId\"] === itemToFocus.id);\r\n\r\n if (!elementToFocus) {\r\n return false;\r\n }\r\n\r\n TreeView.setFocus(tree, elementToFocus);\r\n\r\n return true;\r\n }\r\n\r\n private keyDownListener = (event: KeyboardEvent) => {\r\n if (event.defaultPrevented) {\r\n return;\r\n }\r\n\r\n const isIndexLetter = (str: string) => str.length === 1 && str.match(/\\S/);\r\n\r\n const tree = event\r\n .composedPath()\r\n .find((item) => (item instanceof HTMLElement ? item.className === \"dso-tree\" : false));\r\n\r\n if (!(event.target instanceof HTMLParagraphElement) || !(tree instanceof HTMLElement)) {\r\n return;\r\n }\r\n\r\n switch (event.key) {\r\n case \"ArrowDown\":\r\n TreeView.moveFocus(tree, event.target, \"next\");\r\n break;\r\n case \"ArrowUp\":\r\n TreeView.moveFocus(tree, event.target, \"previous\");\r\n break;\r\n case \"ArrowRight\":\r\n TreeView.expandItemOrFocusChild(tree, event.target);\r\n break;\r\n case \"ArrowLeft\":\r\n TreeView.collapseItemOrFocusParent(tree, event.target);\r\n break;\r\n case \"End\":\r\n TreeView.moveFocus(tree, event.target, \"last\");\r\n break;\r\n case \"Home\":\r\n TreeView.moveFocus(tree, event.target, \"first\");\r\n break;\r\n case \"Enter\":\r\n case \" \":\r\n event.target.click();\r\n break;\r\n default:\r\n if (isIndexLetter(event.key)) {\r\n if (TreeView.setFocusByFirstCharacter(tree, event.target, event.key, event.shiftKey)) {\r\n break;\r\n }\r\n }\r\n\r\n return;\r\n }\r\n\r\n event.preventDefault();\r\n };\r\n\r\n // eslint-disable-next-line @stencil-community/own-props-must-be-private -- Omdat this als TreeView instance aan Functionele Components wordt gegeven\r\n itemClick = (event: MouseEvent, ancestors: TreeViewItem[], item: TreeViewItem) => {\r\n if (!(event.target instanceof HTMLElement)) {\r\n return;\r\n }\r\n\r\n const contentElement = event.target.closest(\".tree-content\");\r\n\r\n if (contentElement) {\r\n const tree = event\r\n .composedPath()\r\n .find((eventTarget) => (eventTarget instanceof HTMLElement ? eventTarget.className === \"dso-tree\" : false));\r\n if (!(contentElement instanceof HTMLParagraphElement) || !(tree instanceof HTMLElement)) {\r\n return;\r\n }\r\n\r\n TreeView.setFocus(tree, contentElement);\r\n this.dsoClickItem.emit({ path: [...ancestors, item], originalEvent: event });\r\n\r\n return;\r\n }\r\n\r\n if (item.open) {\r\n this.dsoCloseItem.emit([...ancestors, item]);\r\n } else {\r\n this.dsoOpenItem.emit([...ancestors, item]);\r\n }\r\n };\r\n\r\n private static setFocus(tree: HTMLElement, target: HTMLElement) {\r\n if (target) {\r\n (Array.from(tree.querySelectorAll(\"p\")) as HTMLElement[])\r\n .filter((item) => item.tabIndex === 0)\r\n .forEach((item) => (item.tabIndex = -1));\r\n\r\n target.tabIndex = 0;\r\n target.focus();\r\n }\r\n }\r\n\r\n private static moveFocus(tree: HTMLElement, el: HTMLElement, moveTo: \"first\" | \"previous\" | \"next\" | \"last\"): void {\r\n const focusableItems = (Array.from(tree.querySelectorAll(\"p\")) as HTMLElement[]).filter(\r\n (item) => item.offsetWidth > 0 && item.offsetHeight > 0,\r\n );\r\n\r\n let index = 0;\r\n switch (moveTo) {\r\n case \"first\":\r\n index = 0;\r\n break;\r\n case \"previous\":\r\n index = focusableItems.indexOf(el) - 1;\r\n break;\r\n case \"next\":\r\n index = focusableItems.indexOf(el) + 1;\r\n break;\r\n case \"last\":\r\n index = focusableItems.length - 1;\r\n break;\r\n }\r\n\r\n const focusableItem = focusableItems[index];\r\n if (!focusableItem) {\r\n throw new Error(\"No focusableItem found\");\r\n }\r\n\r\n TreeView.setFocus(tree, focusableItem);\r\n }\r\n\r\n private static expandItemOrFocusChild(tree: HTMLElement, target: HTMLElement): void {\r\n if (target?.getAttribute(\"aria-expanded\") === \"true\") {\r\n TreeView.moveFocus(tree, target, \"next\");\r\n } else {\r\n const controlElement = target.previousElementSibling?.firstElementChild;\r\n if (controlElement instanceof HTMLElement) {\r\n controlElement.click();\r\n }\r\n }\r\n }\r\n\r\n private static collapseItemOrFocusParent(tree: HTMLElement, target: HTMLElement): void {\r\n if (target?.getAttribute(\"aria-expanded\") === \"true\") {\r\n const controlElement = target.previousElementSibling?.firstElementChild;\r\n if (controlElement instanceof HTMLElement) {\r\n controlElement.click();\r\n }\r\n } else {\r\n const parentTarget = target?.parentElement?.parentElement?.previousElementSibling;\r\n if (parentTarget instanceof HTMLElement) {\r\n TreeView.setFocus(tree, parentTarget);\r\n }\r\n }\r\n }\r\n\r\n private static setFocusByFirstCharacter(\r\n tree: HTMLElement,\r\n el: HTMLElement,\r\n char: string,\r\n backwards: boolean,\r\n ): boolean {\r\n const focusableItems = (Array.from(tree.querySelectorAll(\"p\")) as HTMLElement[]).filter(\r\n (item) => item.offsetWidth > 0 && item.offsetHeight > 0,\r\n );\r\n\r\n if (backwards) {\r\n focusableItems.reverse();\r\n }\r\n\r\n const current = focusableItems.indexOf(el);\r\n\r\n char = char.toLowerCase();\r\n let nextItem = focusableItems.find(\r\n (item, index) => index > current && item.textContent?.toLowerCase().startsWith(char),\r\n );\r\n if (!nextItem) {\r\n nextItem = focusableItems.find(\r\n (item, index) => index < current && item.textContent?.toLowerCase().startsWith(char),\r\n );\r\n }\r\n\r\n if (nextItem) {\r\n TreeView.setFocus(tree, nextItem);\r\n return true;\r\n }\r\n\r\n return false;\r\n }\r\n\r\n render() {\r\n return (\r\n <div\r\n id=\"tree\"\r\n class=\"dso-tree\"\r\n onKeyDown={(e) => this.keyDownListener(e)}\r\n ref={(element) => (this.tree = element)}\r\n >\r\n <ul role=\"tree\" aria-label=\"Objectenboom\">\r\n {this.collection?.map((item, index) => (\r\n <DsoTreeItem\r\n owner={this}\r\n ancestors={[]}\r\n item={item}\r\n index={index}\r\n level={1}\r\n setSize={this.collection.length}\r\n ></DsoTreeItem>\r\n ))}\r\n </ul>\r\n </div>\r\n );\r\n }\r\n}\r\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["DsoTreeItem","owner","ancestors","item","index","level","setSize","h","key","id","class","clsx","hasItems","open","_a","items","length","role","onClick","e","itemClick","icon","active","selected","tabindex","_b","undefined","loading","href","label","_c","icons","map","title","Fragment","size","_d","childItem","childIndex","org","treeViewCss","TreeView","constructor","hostRef","this","keyDownListener","event","defaultPrevented","isIndexLetter","str","match","tree","composedPath","find","HTMLElement","className","target","HTMLParagraphElement","moveFocus","expandItemOrFocusChild","collapseItemOrFocusParent","click","setFocusByFirstCharacter","shiftKey","preventDefault","contentElement","closest","eventTarget","setFocus","dsoClickItem","emit","path","originalEvent","dsoCloseItem","dsoOpenItem","focusItem","itemToFocus","Error","elementToFocus","Array","from","querySelectorAll","filter","offsetWidth","offsetHeight","dataset","tabIndex","forEach","focus","el","moveTo","focusableItems","indexOf","focusableItem","getAttribute","controlElement","previousElementSibling","firstElementChild","parentTarget","parentElement","char","backwards","reverse","current","toLowerCase","nextItem","textContent","startsWith","render","onKeyDown","ref","element","collection"],"sources":["src/components/tree-view/tree-item.tsx","src/components/tree-view/tree-view.scss?tag=dso-tree-view&encapsulation=shadow","src/components/tree-view/tree-view.tsx"],"sourcesContent":["import { Fragment, FunctionalComponent, h } from \"@stencil/core\";\r\nimport clsx from \"clsx\";\r\n\r\nimport { TreeView } from \"./tree-view\";\r\nimport { TreeViewItem, TreeViewItemIcon } from \"./tree-view.interfaces\";\r\n\r\ninterface TreeViewItemProps {\r\n owner: TreeView;\r\n ancestors: TreeViewItem[];\r\n item: TreeViewItem;\r\n index: number;\r\n level: number;\r\n setSize: number;\r\n}\r\n\r\nexport const DsoTreeItem: FunctionalComponent<TreeViewItemProps> = ({\r\n owner,\r\n ancestors,\r\n item,\r\n index,\r\n level,\r\n setSize,\r\n}) => (\r\n <li\r\n key={item.id}\r\n class={clsx(\"tree-item\", { \"has-child\": item.hasItems, \"is-expanded\": !!item.open && !!item.items?.length })}\r\n role=\"none\"\r\n >\r\n <div class=\"tree-branch-control\">\r\n {item.hasItems ? (\r\n <div onClick={(e) => owner.itemClick(e, ancestors, item)}>\r\n <dso-icon icon={item.open ? \"minus-square\" : \"plus-square\"}></dso-icon>\r\n </div>\r\n ) : (\r\n <dso-icon></dso-icon>\r\n )}\r\n </div>\r\n <p\r\n class={clsx(\"tree-content\", { active: item.active }, { selected: item.selected })}\r\n tabindex={level === 1 && index === 0 ? 0 : -1}\r\n role=\"treeitem\"\r\n aria-expanded={item.hasItems ? \"\" + (!!item.open && !!item.items?.length) : undefined}\r\n aria-current={item.active ? \"true\" : undefined}\r\n aria-level={level}\r\n aria-setsize={setSize}\r\n aria-posinset={index + 1}\r\n aria-busy={item.loading ? \"true\" : undefined}\r\n data-item-id={item.id}\r\n onClick={(e) => owner.itemClick(e, ancestors, item)}\r\n >\r\n {item.selected && <span class=\"sr-only\">Resultaat: </span>}\r\n {item.href ? (\r\n <a href={item.href} tabindex=\"-1\">\r\n {item.label}\r\n </a>\r\n ) : (\r\n <span>{item.label}</span>\r\n )}\r\n {item.icons?.map((icon: TreeViewItemIcon) => <dso-icon icon={icon.icon} title={icon.label}></dso-icon>)}\r\n </p>\r\n {item.open && (\r\n <>\r\n {item.hasItems && !item.items && item.loading ? (\r\n <dso-progress-indicator size=\"small\" label=\"Resultaten laden: een moment geduld alstublieft.\" />\r\n ) : (\r\n <ul role=\"group\">\r\n {item.items?.map((childItem: TreeViewItem, childIndex: number, org: TreeViewItem[]) => (\r\n <DsoTreeItem\r\n owner={owner}\r\n ancestors={[...ancestors, item]}\r\n item={childItem}\r\n index={childIndex}\r\n level={level + 1}\r\n setSize={org.length}\r\n ></DsoTreeItem>\r\n ))}\r\n </ul>\r\n )}\r\n </>\r\n )}\r\n </li>\r\n);\r\n","@use \"sass:math\";\r\n\r\n@use \"~dso-toolkit/src/utilities\";\r\n@use \"~dso-toolkit/src/variables/colors\";\r\n@use \"~dso-toolkit/src/variables/scaffolding\";\r\n\r\n@use \"tree-view.mixins\" as core-tree-view-mixins;\r\n@use \"tree-view.variables\" as core-tree-view-variables;\r\n\r\n:host {\r\n ul {\r\n list-style-type: none;\r\n padding-inline-start: core-tree-view-variables.$indent;\r\n position: relative;\r\n }\r\n\r\n li {\r\n position: relative;\r\n }\r\n\r\n ul[role=\"tree\"] {\r\n padding-inline-start: 0;\r\n }\r\n\r\n // connects branch or leaf to parent\r\n ul[role=\"group\"]::before {\r\n @include core-tree-view-mixins.vertical-line(\r\n core-tree-view-variables.$indent + core-tree-view-variables.$hcenter,\r\n 0,\r\n core-tree-view-variables.$vspace\r\n );\r\n }\r\n\r\n li:not(.has-child) {\r\n // horizontal connector for a leaf\r\n &::before {\r\n @include core-tree-view-mixins.horizontal-line(\r\n core-tree-view-variables.$hcenter,\r\n core-tree-view-variables.$vcenter,\r\n core-tree-view-variables.$hspace + 0.5 * core-tree-view-variables.$icon-size - 4px\r\n );\r\n }\r\n\r\n // vertical connector for a leaf\r\n &::after {\r\n @include core-tree-view-mixins.vertical-line(\r\n core-tree-view-variables.$hcenter,\r\n core-tree-view-variables.$vspace,\r\n 100%\r\n );\r\n }\r\n\r\n // vertical connector for the last leaf\r\n &:last-child::after {\r\n block-size: core-tree-view-variables.$vcenter;\r\n inset-block-start: 0;\r\n }\r\n }\r\n\r\n li.has-child {\r\n // horizontal connector for a branch\r\n &::before {\r\n @include core-tree-view-mixins.horizontal-line(\r\n core-tree-view-variables.$icon-size,\r\n core-tree-view-variables.$vcenter,\r\n core-tree-view-variables.$hspace - 4px\r\n );\r\n }\r\n\r\n // vertical connector for a branch (not last)\r\n &:not(:last-child)::after {\r\n @include core-tree-view-mixins.vertical-line(\r\n core-tree-view-variables.$hcenter,\r\n core-tree-view-variables.$vcenter + 0.5 * core-tree-view-variables.$icon-size,\r\n calc(100% - core-tree-view-variables.$icon-size)\r\n );\r\n }\r\n\r\n // vertical line after a expanded branch (creating dead ends)\r\n &.is-expanded:last-child::after {\r\n @include core-tree-view-mixins.vertical-line(\r\n core-tree-view-variables.$hcenter,\r\n core-tree-view-variables.$vcenter + 0.5 * core-tree-view-variables.$icon-size,\r\n calc(100% - (core-tree-view-variables.$vcenter + 0.5 * core-tree-view-variables.$icon-size))\r\n );\r\n }\r\n }\r\n\r\n .tree-branch-control {\r\n color: colors.$grasgroen;\r\n display: inline-block;\r\n font-size: math.div(2 * core-tree-view-variables.$icon-size, 3);\r\n margin-block: core-tree-view-variables.$vspace;\r\n margin-inline: 0 core-tree-view-variables.$hspace;\r\n vertical-align: top;\r\n\r\n > div {\r\n cursor: pointer;\r\n }\r\n }\r\n\r\n .tree-content {\r\n cursor: pointer;\r\n display: inline-block;\r\n margin-block: core-tree-view-variables.$vspace;\r\n margin-inline: 0;\r\n max-inline-size: calc(100% - (core-tree-view-variables.$indent + core-tree-view-variables.$hspace));\r\n\r\n a {\r\n color: scaffolding.$text-color;\r\n text-decoration: underline;\r\n\r\n &:hover,\r\n &:focus {\r\n color: scaffolding.$text-color;\r\n text-decoration: none;\r\n }\r\n\r\n &:active {\r\n text-decoration: none;\r\n }\r\n }\r\n\r\n &.selected {\r\n color: scaffolding.$text-color;\r\n font-weight: 700;\r\n text-decoration: underline;\r\n\r\n &:hover,\r\n &:focus {\r\n text-decoration: none;\r\n }\r\n }\r\n\r\n &.active {\r\n color: colors.$mauve;\r\n font-style: italic;\r\n font-weight: 700;\r\n\r\n text-decoration: underline;\r\n\r\n &:hover,\r\n &:focus {\r\n text-decoration: none;\r\n }\r\n\r\n a {\r\n color: colors.$mauve;\r\n\r\n &:hover,\r\n &:focus {\r\n text-decoration: none;\r\n }\r\n }\r\n }\r\n\r\n dso-icon {\r\n color: colors.$grasgroen;\r\n font-size: 0.75em;\r\n margin-inline-start: 0.5em;\r\n vertical-align: text-bottom;\r\n }\r\n }\r\n}\r\n\r\n@include utilities.box-sizing();\r\n\r\n.sr-only {\r\n @include utilities.sr-only();\r\n}\r\n","import { Component, ComponentInterface, Event, EventEmitter, Method, Prop, h } from \"@stencil/core\";\r\n\r\nimport { DsoTreeItem } from \"./tree-item\";\r\nimport { TreeViewItem, TreeViewPointerEvent } from \"./tree-view.interfaces\";\r\n\r\n@Component({\r\n tag: \"dso-tree-view\",\r\n styleUrl: \"./tree-view.scss\",\r\n shadow: true,\r\n})\r\nexport class TreeView implements ComponentInterface {\r\n private tree?: HTMLElement;\r\n\r\n /**\r\n * The collection of TreeViewItems\r\n */\r\n @Prop()\r\n collection!: TreeViewItem[];\r\n\r\n /**\r\n * Emitted when a tree view item is opened.\r\n * The `detail` property of the `CustomEvent` will contain the complete path of TreeViewItems from the\r\n * root to the item that is emitting the open event. The consumer of the event is responsible for updating\r\n * the TreeView's collection (usually set the open state on the last TreeViewItem in path).\r\n */\r\n @Event()\r\n dsoOpenItem!: EventEmitter<TreeViewItem[]>;\r\n\r\n /**\r\n * Emitted when a tree view item is closed.\r\n * The `detail` property of the `CustomEvent` will contain the complete path of TreeViewItems from the\r\n * root to the item that is emitting the close event. The consumer of the event is responsible for updating\r\n * the TreeView's collection (usually set the closed state on the last TreeViewItem in path).\r\n */\r\n @Event()\r\n dsoCloseItem!: EventEmitter<TreeViewItem[]>;\r\n\r\n /**\r\n * Emitted when a tree view item is clicked.\r\n * The `detail` property of the `CustomEvent` will contain an object with:\r\n * `path` = the complete path of TreeViewItems from the root to the item that is emitting the clicked event.\r\n * `originalEvent` = the original click event.\r\n * The consumer of the event is responsible for updating the TreeView's collection (usually set the active\r\n * state on the last TreeViewItem in path and clear all other active item states).\r\n */\r\n @Event()\r\n dsoClickItem!: EventEmitter<TreeViewPointerEvent>;\r\n\r\n /**\r\n * Set focus on the last item in the specified path.\r\n * The consumer is responsible for providing a TreeView collection where the last item is visible.\r\n * @async\r\n * @returns Whether the item was found.\r\n */\r\n @Method()\r\n async focusItem(path: TreeViewItem[]): Promise<boolean> {\r\n const tree = this.tree;\r\n\r\n if (!tree || path.length === 0) {\r\n return false;\r\n }\r\n\r\n const itemToFocus = path[path.length - 1];\r\n if (!itemToFocus) {\r\n throw new Error(\"No itemToFocus found\");\r\n }\r\n\r\n const elementToFocus = (Array.from(tree.querySelectorAll(\"p\") ?? []) as HTMLElement[])\r\n .filter((item) => item.offsetWidth > 0 && item.offsetHeight > 0)\r\n .find((item) => item.dataset[\"itemId\"] === itemToFocus.id);\r\n\r\n if (!elementToFocus) {\r\n return false;\r\n }\r\n\r\n TreeView.setFocus(tree, elementToFocus);\r\n\r\n return true;\r\n }\r\n\r\n private keyDownListener = (event: KeyboardEvent) => {\r\n if (event.defaultPrevented) {\r\n return;\r\n }\r\n\r\n const isIndexLetter = (str: string) => str.length === 1 && str.match(/\\S/);\r\n\r\n const tree = event\r\n .composedPath()\r\n .find((item) => (item instanceof HTMLElement ? item.className === \"dso-tree\" : false));\r\n\r\n if (!(event.target instanceof HTMLParagraphElement) || !(tree instanceof HTMLElement)) {\r\n return;\r\n }\r\n\r\n switch (event.key) {\r\n case \"ArrowDown\":\r\n TreeView.moveFocus(tree, event.target, \"next\");\r\n break;\r\n case \"ArrowUp\":\r\n TreeView.moveFocus(tree, event.target, \"previous\");\r\n break;\r\n case \"ArrowRight\":\r\n TreeView.expandItemOrFocusChild(tree, event.target);\r\n break;\r\n case \"ArrowLeft\":\r\n TreeView.collapseItemOrFocusParent(tree, event.target);\r\n break;\r\n case \"End\":\r\n TreeView.moveFocus(tree, event.target, \"last\");\r\n break;\r\n case \"Home\":\r\n TreeView.moveFocus(tree, event.target, \"first\");\r\n break;\r\n case \"Enter\":\r\n case \" \":\r\n event.target.click();\r\n break;\r\n default:\r\n if (isIndexLetter(event.key)) {\r\n if (TreeView.setFocusByFirstCharacter(tree, event.target, event.key, event.shiftKey)) {\r\n break;\r\n }\r\n }\r\n\r\n return;\r\n }\r\n\r\n event.preventDefault();\r\n };\r\n\r\n // eslint-disable-next-line @stencil-community/own-props-must-be-private -- Omdat this als TreeView instance aan Functionele Components wordt gegeven\r\n itemClick = (event: MouseEvent, ancestors: TreeViewItem[], item: TreeViewItem) => {\r\n if (!(event.target instanceof HTMLElement)) {\r\n return;\r\n }\r\n\r\n const contentElement = event.target.closest(\".tree-content\");\r\n\r\n if (contentElement) {\r\n const tree = event\r\n .composedPath()\r\n .find((eventTarget) => (eventTarget instanceof HTMLElement ? eventTarget.className === \"dso-tree\" : false));\r\n if (!(contentElement instanceof HTMLParagraphElement) || !(tree instanceof HTMLElement)) {\r\n return;\r\n }\r\n\r\n TreeView.setFocus(tree, contentElement);\r\n this.dsoClickItem.emit({ path: [...ancestors, item], originalEvent: event });\r\n\r\n return;\r\n }\r\n\r\n if (item.open) {\r\n this.dsoCloseItem.emit([...ancestors, item]);\r\n } else {\r\n this.dsoOpenItem.emit([...ancestors, item]);\r\n }\r\n };\r\n\r\n private static setFocus(tree: HTMLElement, target: HTMLElement) {\r\n if (target) {\r\n (Array.from(tree.querySelectorAll(\"p\")) as HTMLElement[])\r\n .filter((item) => item.tabIndex === 0)\r\n .forEach((item) => (item.tabIndex = -1));\r\n\r\n target.tabIndex = 0;\r\n target.focus();\r\n }\r\n }\r\n\r\n private static moveFocus(tree: HTMLElement, el: HTMLElement, moveTo: \"first\" | \"previous\" | \"next\" | \"last\"): void {\r\n const focusableItems = (Array.from(tree.querySelectorAll(\"p\")) as HTMLElement[]).filter(\r\n (item) => item.offsetWidth > 0 && item.offsetHeight > 0,\r\n );\r\n\r\n let index = 0;\r\n switch (moveTo) {\r\n case \"first\":\r\n index = 0;\r\n break;\r\n case \"previous\":\r\n index = focusableItems.indexOf(el) - 1;\r\n break;\r\n case \"next\":\r\n index = focusableItems.indexOf(el) + 1;\r\n break;\r\n case \"last\":\r\n index = focusableItems.length - 1;\r\n break;\r\n }\r\n\r\n const focusableItem = focusableItems[index];\r\n if (!focusableItem) {\r\n throw new Error(\"No focusableItem found\");\r\n }\r\n\r\n TreeView.setFocus(tree, focusableItem);\r\n }\r\n\r\n private static expandItemOrFocusChild(tree: HTMLElement, target: HTMLElement): void {\r\n if (target?.getAttribute(\"aria-expanded\") === \"true\") {\r\n TreeView.moveFocus(tree, target, \"next\");\r\n } else {\r\n const controlElement = target.previousElementSibling?.firstElementChild;\r\n if (controlElement instanceof HTMLElement) {\r\n controlElement.click();\r\n }\r\n }\r\n }\r\n\r\n private static collapseItemOrFocusParent(tree: HTMLElement, target: HTMLElement): void {\r\n if (target?.getAttribute(\"aria-expanded\") === \"true\") {\r\n const controlElement = target.previousElementSibling?.firstElementChild;\r\n if (controlElement instanceof HTMLElement) {\r\n controlElement.click();\r\n }\r\n } else {\r\n const parentTarget = target?.parentElement?.parentElement?.previousElementSibling;\r\n if (parentTarget instanceof HTMLElement) {\r\n TreeView.setFocus(tree, parentTarget);\r\n }\r\n }\r\n }\r\n\r\n private static setFocusByFirstCharacter(\r\n tree: HTMLElement,\r\n el: HTMLElement,\r\n char: string,\r\n backwards: boolean,\r\n ): boolean {\r\n const focusableItems = (Array.from(tree.querySelectorAll(\"p\")) as HTMLElement[]).filter(\r\n (item) => item.offsetWidth > 0 && item.offsetHeight > 0,\r\n );\r\n\r\n if (backwards) {\r\n focusableItems.reverse();\r\n }\r\n\r\n const current = focusableItems.indexOf(el);\r\n\r\n char = char.toLowerCase();\r\n let nextItem = focusableItems.find(\r\n (item, index) => index > current && item.textContent?.toLowerCase().startsWith(char),\r\n );\r\n if (!nextItem) {\r\n nextItem = focusableItems.find(\r\n (item, index) => index < current && item.textContent?.toLowerCase().startsWith(char),\r\n );\r\n }\r\n\r\n if (nextItem) {\r\n TreeView.setFocus(tree, nextItem);\r\n return true;\r\n }\r\n\r\n return false;\r\n }\r\n\r\n render() {\r\n return (\r\n <div\r\n id=\"tree\"\r\n class=\"dso-tree\"\r\n onKeyDown={(e) => this.keyDownListener(e)}\r\n ref={(element) => (this.tree = element)}\r\n >\r\n <ul role=\"tree\" aria-label=\"Objectenboom\">\r\n {this.collection?.map((item, index) => (\r\n <DsoTreeItem\r\n owner={this}\r\n ancestors={[]}\r\n item={item}\r\n index={index}\r\n level={1}\r\n setSize={this.collection.length}\r\n ></DsoTreeItem>\r\n ))}\r\n </ul>\r\n </div>\r\n );\r\n }\r\n}\r\n"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,2 @@
1
+ import{r as e,h as t,F as a}from"./p-DxWmN7gh.js";const d=":host{display:block;padding:16px;border:1px solid #ccc;border-radius:4px}*,*::after,*::before{box-sizing:border-box}::slotted(dl[slot=progress]),::slotted(dl[slot=status]){--_dt-dl-margin-block-end:0;--_dt-dl-before-display:none;--_dt-dl-dt-font-weight:normal;--_dt-dl-dd-margin-block-start:0;--_dt-dl-dd-margin-inline-start:units.$u1;--_dt-dl-dd-padding-inline-start:0;--_dt-dl-dt-inline-size:auto;--_dt-dl-dd-last-margin-block-end:0;--_dt-mark-bg-color:none;--_dt-mark-padding-block:0;--_dt-mark-color:inherit;--_dt-mark-font-weight:600;display:flex !important;flex-wrap:wrap;column-gap:16px}::slotted([slot=status]){--_dt-dl-font-size:0.875rem}::slotted([slot=title]){margin-block:0 !important;font-size:1.25rem !important}::slotted([slot=actions]){display:flex}.project-item-header{display:flex;gap:16px;flex-wrap:nowrap;align-items:flex-start;margin-block-end:16px}.project-item-title{display:flex;gap:16px;align-items:center;justify-content:space-between;flex-wrap:wrap;flex-grow:1}.project-item-actions{display:flex;flex-shrink:0;flex-wrap:nowrap}.project-item-info{display:flex;gap:16px;justify-content:space-between;flex-wrap:wrap;align-items:flex-end}";const s=class{constructor(t){e(this,t)}render(){return t(a,null,t("div",{key:"3f6f705655b7fbde410073f7aba7eee3a9b4feba",class:"project-item-header"},t("div",{key:"0cb5f89e8b954c92250d962e9c9f1bc5b4119f9b",class:"project-item-title"},t("slot",{key:"28c5ceeeb66296b6a9b8496affbab1281327c1fa",name:"title"}),this.label&&t("dso-label",{key:"24ffac7d385243bc5c036c2c9a73fb0ce8311c0c",status:"error",compact:true},this.label)),t("div",{key:"170cef0ae20cc0448ac7da6d85bb0ae5cab6a1c4",class:"project-item-actions"},t("slot",{key:"8c420d7f28efff7ad57f2f1081f7ec40da781315",name:"actions"}))),t("div",{key:"015ba5e768aec917c3a6b32b3cf042eedb402ae5",class:"project-item-info"},t("div",{key:"be9c29e22475bdfc56e24e9edbf9ce6e757aa07b",class:"project-item-progress"},t("slot",{key:"56303705113e4cc6ed95da93e9bc4de6de017f8e",name:"progress"})),t("div",{key:"25c772dbb4b1b19061dfd9c330abe5e0fafb0072",class:"project-item-status"},t("slot",{key:"5fe845352612008ffa6d690967994a2fc7c980c4",name:"status"}))))}};s.style=d;export{s as dso_project_item};
2
+ //# sourceMappingURL=p-c6413a5c.entry.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["projectItemCss","ProjectItem","render","h","Fragment","key","class","name","this","label","status","compact"],"sources":["src/components/project-item/project-item.scss?tag=dso-project-item&encapsulation=shadow","src/components/project-item/project-item.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\r\n:host {\r\n display: block;\r\n\r\n padding: units.$u2;\r\n\r\n border: 1px solid colors.$grijs-20;\r\n border-radius: calc(units.$u1 / 2);\r\n}\r\n\r\n@include utilities.box-sizing();\r\n\r\n::slotted(dl[slot=\"progress\"]),\r\n::slotted(dl[slot=\"status\"]) {\r\n --_dt-dl-margin-block-end: 0;\r\n --_dt-dl-before-display: none;\r\n --_dt-dl-dt-font-weight: normal;\r\n --_dt-dl-dd-margin-block-start: 0;\r\n --_dt-dl-dd-margin-inline-start: units.$u1;\r\n --_dt-dl-dd-padding-inline-start: 0;\r\n --_dt-dl-dt-inline-size: auto;\r\n --_dt-dl-dd-last-margin-block-end: 0;\r\n\r\n --_dt-mark-bg-color: none;\r\n --_dt-mark-padding-block: 0;\r\n --_dt-mark-color: inherit;\r\n --_dt-mark-font-weight: 600;\r\n\r\n display: flex !important;\r\n flex-wrap: wrap;\r\n column-gap: units.$u2;\r\n}\r\n\r\n::slotted([slot=\"status\"]) {\r\n --_dt-dl-font-size: 0.875rem;\r\n}\r\n\r\n::slotted([slot=\"title\"]) {\r\n margin-block: 0 !important;\r\n font-size: 1.25rem !important;\r\n}\r\n\r\n::slotted([slot=\"actions\"]) {\r\n display: flex;\r\n}\r\n\r\n.project-item-header {\r\n display: flex;\r\n gap: units.$u2;\r\n flex-wrap: nowrap;\r\n align-items: flex-start;\r\n\r\n margin-block-end: units.$u2;\r\n}\r\n\r\n.project-item-title {\r\n display: flex;\r\n gap: units.$u2;\r\n align-items: center;\r\n justify-content: space-between;\r\n flex-wrap: wrap;\r\n flex-grow: 1;\r\n}\r\n\r\n.project-item-actions {\r\n display: flex;\r\n flex-shrink: 0;\r\n flex-wrap: nowrap;\r\n}\r\n\r\n.project-item-info {\r\n display: flex;\r\n gap: units.$u2;\r\n justify-content: space-between;\r\n flex-wrap: wrap;\r\n align-items: flex-end;\r\n}\r\n","import { Component, ComponentInterface, Fragment, Prop, h } from \"@stencil/core\";\r\n\r\n@Component({\r\n tag: \"dso-project-item\",\r\n styleUrl: \"project-item.scss\",\r\n shadow: true,\r\n})\r\nexport class ProjectItem implements ComponentInterface {\r\n /**\r\n * The label of the project item.\r\n */\r\n @Prop()\r\n label?: string;\r\n\r\n render() {\r\n return (\r\n <>\r\n <div class=\"project-item-header\">\r\n <div class=\"project-item-title\">\r\n <slot name=\"title\" />\r\n {this.label && (\r\n <dso-label status=\"error\" compact>\r\n {this.label}\r\n </dso-label>\r\n )}\r\n </div>\r\n <div class=\"project-item-actions\">\r\n <slot name=\"actions\" />\r\n </div>\r\n </div>\r\n <div class=\"project-item-info\">\r\n <div class=\"project-item-progress\">\r\n <slot name=\"progress\" />\r\n </div>\r\n <div class=\"project-item-status\">\r\n <slot name=\"status\" />\r\n </div>\r\n </div>\r\n </>\r\n );\r\n }\r\n}\r\n"],"mappings":"kDAAA,MAAMA,EAAiB,6pC,MCOVC,EAAW,M,yBAOtB,MAAAC,GACE,OACEC,EAAAC,EAAA,KACED,EAAK,OAAAE,IAAA,2CAAAC,MAAM,uBACTH,EAAK,OAAAE,IAAA,2CAAAC,MAAM,sBACTH,EAAM,QAAAE,IAAA,2CAAAE,KAAK,UACVC,KAAKC,OACJN,EAAA,aAAAE,IAAA,2CAAWK,OAAO,QAAQC,QAAO,MAC9BH,KAAKC,QAIZN,EAAK,OAAAE,IAAA,2CAAAC,MAAM,wBACTH,EAAA,QAAAE,IAAA,2CAAME,KAAK,cAGfJ,EAAK,OAAAE,IAAA,2CAAAC,MAAM,qBACTH,EAAK,OAAAE,IAAA,2CAAAC,MAAM,yBACTH,EAAA,QAAAE,IAAA,2CAAME,KAAK,cAEbJ,EAAK,OAAAE,IAAA,2CAAAC,MAAM,uBACTH,EAAM,QAAAE,IAAA,2CAAAE,KAAK,a","ignoreList":[]}
1
+ {"version":3,"names":["projectItemCss","ProjectItem","render","h","Fragment","key","class","name","this","label","status","compact"],"sources":["src/components/project-item/project-item.scss?tag=dso-project-item&encapsulation=shadow","src/components/project-item/project-item.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\r\n:host {\r\n display: block;\r\n\r\n padding: units.$u2;\r\n\r\n border: 1px solid colors.$grijs-20;\r\n border-radius: calc(units.$u1 / 2);\r\n}\r\n\r\n@include utilities.box-sizing();\r\n\r\n::slotted(dl[slot=\"progress\"]),\r\n::slotted(dl[slot=\"status\"]) {\r\n --_dt-dl-margin-block-end: 0;\r\n --_dt-dl-before-display: none;\r\n --_dt-dl-dt-font-weight: normal;\r\n --_dt-dl-dd-margin-block-start: 0;\r\n --_dt-dl-dd-margin-inline-start: units.$u1;\r\n --_dt-dl-dd-padding-inline-start: 0;\r\n --_dt-dl-dt-inline-size: auto;\r\n --_dt-dl-dd-last-margin-block-end: 0;\r\n\r\n --_dt-mark-bg-color: none;\r\n --_dt-mark-padding-block: 0;\r\n --_dt-mark-color: inherit;\r\n --_dt-mark-font-weight: 600;\r\n\r\n display: flex !important;\r\n flex-wrap: wrap;\r\n column-gap: units.$u2;\r\n}\r\n\r\n::slotted([slot=\"status\"]) {\r\n --_dt-dl-font-size: 0.875rem;\r\n}\r\n\r\n::slotted([slot=\"title\"]) {\r\n margin-block: 0 !important;\r\n font-size: 1.25rem !important;\r\n}\r\n\r\n::slotted([slot=\"actions\"]) {\r\n display: flex;\r\n}\r\n\r\n.project-item-header {\r\n display: flex;\r\n gap: units.$u2;\r\n flex-wrap: nowrap;\r\n align-items: flex-start;\r\n\r\n margin-block-end: units.$u2;\r\n}\r\n\r\n.project-item-title {\r\n display: flex;\r\n gap: units.$u2;\r\n align-items: center;\r\n justify-content: space-between;\r\n flex-wrap: wrap;\r\n flex-grow: 1;\r\n}\r\n\r\n.project-item-actions {\r\n display: flex;\r\n flex-shrink: 0;\r\n flex-wrap: nowrap;\r\n}\r\n\r\n.project-item-info {\r\n display: flex;\r\n gap: units.$u2;\r\n justify-content: space-between;\r\n flex-wrap: wrap;\r\n align-items: flex-end;\r\n}\r\n","import { Component, ComponentInterface, Fragment, Prop, h } from \"@stencil/core\";\r\n\r\n@Component({\r\n tag: \"dso-project-item\",\r\n styleUrl: \"project-item.scss\",\r\n shadow: true,\r\n})\r\nexport class ProjectItem implements ComponentInterface {\r\n /**\r\n * The label of the project item.\r\n */\r\n @Prop()\r\n label?: string;\r\n\r\n render() {\r\n return (\r\n <>\r\n <div class=\"project-item-header\">\r\n <div class=\"project-item-title\">\r\n <slot name=\"title\" />\r\n {this.label && (\r\n <dso-label status=\"error\" compact>\r\n {this.label}\r\n </dso-label>\r\n )}\r\n </div>\r\n <div class=\"project-item-actions\">\r\n <slot name=\"actions\" />\r\n </div>\r\n </div>\r\n <div class=\"project-item-info\">\r\n <div class=\"project-item-progress\">\r\n <slot name=\"progress\" />\r\n </div>\r\n <div class=\"project-item-status\">\r\n <slot name=\"status\" />\r\n </div>\r\n </div>\r\n </>\r\n );\r\n }\r\n}\r\n"],"mappings":"kDAAA,MAAMA,EAAiB,4oC,MCOVC,EAAW,M,yBAOtB,MAAAC,GACE,OACEC,EAAAC,EAAA,KACED,EAAK,OAAAE,IAAA,2CAAAC,MAAM,uBACTH,EAAK,OAAAE,IAAA,2CAAAC,MAAM,sBACTH,EAAM,QAAAE,IAAA,2CAAAE,KAAK,UACVC,KAAKC,OACJN,EAAA,aAAAE,IAAA,2CAAWK,OAAO,QAAQC,QAAO,MAC9BH,KAAKC,QAIZN,EAAK,OAAAE,IAAA,2CAAAC,MAAM,wBACTH,EAAA,QAAAE,IAAA,2CAAME,KAAK,cAGfJ,EAAK,OAAAE,IAAA,2CAAAC,MAAM,qBACTH,EAAK,OAAAE,IAAA,2CAAAC,MAAM,yBACTH,EAAA,QAAAE,IAAA,2CAAME,KAAK,cAEbJ,EAAK,OAAAE,IAAA,2CAAAC,MAAM,uBACTH,EAAM,QAAAE,IAAA,2CAAAE,KAAK,a","ignoreList":[]}