@dso-toolkit/core 82.0.0 → 83.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (979) hide show
  1. package/dist/bundle/dso-accordion-section.js +9 -9
  2. package/dist/bundle/dso-accordion-section.js.map +1 -1
  3. package/dist/bundle/dso-action-list-item.js +2 -2
  4. package/dist/bundle/dso-action-list.js +1 -1
  5. package/dist/bundle/dso-action-list.js.map +1 -1
  6. package/dist/bundle/dso-advanced-select.js +10 -10
  7. package/dist/bundle/dso-advanced-select.js.map +1 -1
  8. package/dist/bundle/dso-alert.js +1 -1
  9. package/dist/bundle/dso-annotation-activiteit.js +8 -8
  10. package/dist/bundle/dso-annotation-activiteit.js.map +1 -1
  11. package/dist/bundle/dso-annotation-gebiedsaanwijzing.js +8 -8
  12. package/dist/bundle/dso-annotation-gebiedsaanwijzing.js.map +1 -1
  13. package/dist/bundle/dso-annotation-kaart.js +5 -5
  14. package/dist/bundle/dso-annotation-kaart.js.map +1 -1
  15. package/dist/bundle/dso-annotation-locatie.js +1 -1
  16. package/dist/bundle/dso-annotation-omgevingsnormwaarde.js +8 -8
  17. package/dist/bundle/dso-annotation-omgevingsnormwaarde.js.map +1 -1
  18. package/dist/bundle/dso-attachments-counter.js +1 -1
  19. package/dist/bundle/dso-autosuggest.js +7 -7
  20. package/dist/bundle/dso-badge.js +1 -1
  21. package/dist/bundle/dso-banner.js +2 -2
  22. package/dist/bundle/dso-banner.js.map +1 -1
  23. package/dist/bundle/dso-button-group.js +1 -1
  24. package/dist/bundle/dso-card-container.js +1 -1
  25. package/dist/bundle/dso-card.js +4 -4
  26. package/dist/bundle/dso-card.js.map +1 -1
  27. package/dist/bundle/dso-contact-information.js +1 -1
  28. package/dist/bundle/dso-date-picker.js +1 -1
  29. package/dist/bundle/dso-document-card.js +3 -3
  30. package/dist/bundle/dso-document-card.js.map +1 -1
  31. package/dist/bundle/dso-document-component.js +1 -1
  32. package/dist/bundle/dso-dropdown-menu.js +1 -1
  33. package/dist/bundle/dso-expandable.js +1 -1
  34. package/dist/bundle/dso-header.js +5 -5
  35. package/dist/bundle/dso-header.js.map +1 -1
  36. package/dist/bundle/dso-highlight-box.js +2 -2
  37. package/dist/bundle/dso-highlight-box.js.map +1 -1
  38. package/dist/bundle/dso-history-item.js +2 -2
  39. package/dist/bundle/dso-icon-button.js +1 -1
  40. package/dist/bundle/dso-icon.js +1 -1
  41. package/dist/bundle/dso-image-overlay.js +1 -1
  42. package/dist/bundle/dso-info-button.js +1 -1
  43. package/dist/bundle/dso-info.js +1 -1
  44. package/dist/bundle/dso-input-range.js +3 -3
  45. package/dist/bundle/dso-input-range.js.map +1 -1
  46. package/dist/bundle/dso-label.js +1 -1
  47. package/dist/bundle/dso-legend-item.js +7 -7
  48. package/dist/bundle/dso-legend-item.js.map +1 -1
  49. package/dist/bundle/dso-list-button.js +7 -7
  50. package/dist/bundle/dso-list-button.js.map +1 -1
  51. package/dist/bundle/dso-logo.js +1 -1
  52. package/dist/bundle/dso-map-base-layers.js +9 -9
  53. package/dist/bundle/dso-map-base-layers.js.map +1 -1
  54. package/dist/bundle/dso-map-controls.js +6 -6
  55. package/dist/bundle/dso-map-controls.js.map +1 -1
  56. package/dist/bundle/dso-map-overlays.js +9 -9
  57. package/dist/bundle/dso-map-overlays.js.map +1 -1
  58. package/dist/bundle/dso-mark-bar.js +4 -4
  59. package/dist/bundle/dso-mark-bar.js.map +1 -1
  60. package/dist/bundle/dso-modal.js +7 -7
  61. package/dist/bundle/dso-modal.js.map +1 -1
  62. package/dist/bundle/dso-onboarding-tip.js +5 -5
  63. package/dist/bundle/dso-onboarding-tip.js.map +1 -1
  64. package/dist/bundle/dso-ozon-content-toggletip.js +1 -1
  65. package/dist/bundle/dso-ozon-content.js +1 -1
  66. package/dist/bundle/dso-pagination.js +3 -3
  67. package/dist/bundle/dso-pagination.js.map +1 -1
  68. package/dist/bundle/dso-panel.js +1 -1
  69. package/dist/bundle/dso-plekinfo-card.js +3 -3
  70. package/dist/bundle/dso-plekinfo-card.js.map +1 -1
  71. package/dist/bundle/dso-progress-indicator.js +1 -1
  72. package/dist/bundle/dso-project-item.js +5 -5
  73. package/dist/bundle/dso-renvooi.js +1 -1
  74. package/dist/bundle/dso-responsive-element.js +1 -1
  75. package/dist/bundle/dso-scrollable.js +1 -1
  76. package/dist/bundle/dso-selectable.js +1 -1
  77. package/dist/bundle/dso-skiplink.js +3 -3
  78. package/dist/bundle/dso-skiplink.js.map +1 -1
  79. package/dist/bundle/dso-slide-toggle.js +1 -1
  80. package/dist/bundle/dso-survey-rating.js +6 -6
  81. package/dist/bundle/dso-survey-rating.js.map +1 -1
  82. package/dist/bundle/dso-table.js +1 -1
  83. package/dist/bundle/dso-tabs.js +1 -1
  84. package/dist/bundle/dso-tijdreis-banner.js +3 -3
  85. package/dist/bundle/dso-tijdreis-banner.js.map +1 -1
  86. package/dist/bundle/dso-toggletip.js +1 -1
  87. package/dist/bundle/dso-tooltip.js +1 -1
  88. package/dist/bundle/dso-tree-view.js +5 -5
  89. package/dist/bundle/dso-tree-view.js.map +1 -1
  90. package/dist/bundle/dso-viewer-grid.js +3 -3
  91. package/dist/bundle/dso-viewer-grid.js.map +1 -1
  92. package/dist/bundle/dsot-document-component-demo.js +17 -18
  93. package/dist/bundle/dsot-document-component-demo.js.map +1 -1
  94. package/dist/bundle/index.js +0 -2
  95. package/dist/bundle/index.js.map +1 -1
  96. package/dist/bundle/p--8xOEWb7.js +49 -0
  97. package/dist/bundle/{p-fTG2YwZq.js.map → p--8xOEWb7.js.map} +1 -1
  98. package/dist/bundle/{p-YEwuOvaY.js → p-BSxYLM2I.js} +10 -10
  99. package/dist/bundle/{p-YEwuOvaY.js.map → p-BSxYLM2I.js.map} +1 -1
  100. package/dist/bundle/{p-D1M1qAkT.js → p-BXS9fSw3.js} +5 -5
  101. package/dist/bundle/p-BXS9fSw3.js.map +1 -0
  102. package/dist/bundle/{p-C8fuhhYl.js → p-BsnzmGaW.js} +4 -4
  103. package/dist/bundle/p-BsnzmGaW.js.map +1 -0
  104. package/dist/bundle/{p-B_kXuEcW.js → p-C0ZvZbHD.js} +71 -20
  105. package/dist/bundle/p-C0ZvZbHD.js.map +1 -0
  106. package/dist/bundle/{p-ZIaudZgD.js → p-C0fad0Tz.js} +16 -16
  107. package/dist/bundle/{p-ZIaudZgD.js.map → p-C0fad0Tz.js.map} +1 -1
  108. package/dist/bundle/{p-COQMcyrp.js → p-CAiNl6nx.js} +7 -7
  109. package/dist/bundle/{p-COQMcyrp.js.map → p-CAiNl6nx.js.map} +1 -1
  110. package/dist/bundle/p-CWK4j8Tr.js +126 -0
  111. package/dist/bundle/p-CWK4j8Tr.js.map +1 -0
  112. package/dist/bundle/{p-CS5wngFb.js → p-CXFRGieQ.js} +4 -4
  113. package/dist/bundle/{p-CS5wngFb.js.map → p-CXFRGieQ.js.map} +1 -1
  114. package/dist/bundle/{p-DTle6By6.js → p-CXctuPtC.js} +3 -3
  115. package/dist/bundle/{p-DTle6By6.js.map → p-CXctuPtC.js.map} +1 -1
  116. package/dist/bundle/{p-CHxXKwET.js → p-CYZ_ghQd.js} +6 -6
  117. package/dist/bundle/{p-CHxXKwET.js.map → p-CYZ_ghQd.js.map} +1 -1
  118. package/dist/bundle/{p-BF0_OXTe.js → p-C_akviUd.js} +9 -6
  119. package/dist/bundle/p-C_akviUd.js.map +1 -0
  120. package/dist/bundle/{p-Cpkqb2I3.js → p-CkFupSQb.js} +7 -7
  121. package/dist/bundle/{p-Cpkqb2I3.js.map → p-CkFupSQb.js.map} +1 -1
  122. package/dist/bundle/{p-8gGambFe.js → p-CmVgHB0k.js} +3 -3
  123. package/dist/bundle/{p-8gGambFe.js.map → p-CmVgHB0k.js.map} +1 -1
  124. package/dist/bundle/{p-DAvYoaob.js → p-CoDNmQUl.js} +7 -7
  125. package/dist/bundle/{p-DAvYoaob.js.map → p-CoDNmQUl.js.map} +1 -1
  126. package/dist/bundle/{p-BwJ60QDk.js → p-CqQwHORn.js} +5 -5
  127. package/dist/bundle/{p-BwJ60QDk.js.map → p-CqQwHORn.js.map} +1 -1
  128. package/dist/bundle/{p-Dvmo0ffo.js → p-CsqbRus4.js} +7 -7
  129. package/dist/bundle/{p-Dvmo0ffo.js.map → p-CsqbRus4.js.map} +1 -1
  130. package/dist/bundle/{p-CpYhA6kG.js → p-Cx7q66IK.js} +5 -5
  131. package/dist/bundle/{p-CpYhA6kG.js.map → p-Cx7q66IK.js.map} +1 -1
  132. package/dist/bundle/p-D2Hmy92r.js +84 -0
  133. package/dist/bundle/{p-D_6TKRgI.js.map → p-D2Hmy92r.js.map} +1 -1
  134. package/dist/bundle/p-D5k5mkW4.js +36 -0
  135. package/dist/bundle/{p-Bv7dmPUW.js.map → p-D5k5mkW4.js.map} +1 -1
  136. package/dist/{esm/index.esm-Pk8qng7t.js → bundle/p-DDSMs62-.js} +45 -20
  137. package/dist/bundle/p-DDSMs62-.js.map +1 -0
  138. package/dist/bundle/{p-DpzeiE9g.js → p-DcPjXXDp.js} +6 -6
  139. package/dist/bundle/p-DcPjXXDp.js.map +1 -0
  140. package/dist/bundle/{p-BZCmkczj.js → p-Dea3wzTK.js} +5 -5
  141. package/dist/bundle/{p-BZCmkczj.js.map → p-Dea3wzTK.js.map} +1 -1
  142. package/dist/bundle/{p-nPKr7LCS.js → p-Dt8LczXv.js} +8 -8
  143. package/dist/bundle/{p-nPKr7LCS.js.map → p-Dt8LczXv.js.map} +1 -1
  144. package/dist/bundle/p-FpbfIBtx.js +169 -0
  145. package/dist/bundle/p-FpbfIBtx.js.map +1 -0
  146. package/dist/bundle/{p-B4T_HZRq.js → p-Ra_s5BYd.js} +3 -3
  147. package/dist/bundle/{p-B4T_HZRq.js.map → p-Ra_s5BYd.js.map} +1 -1
  148. package/dist/bundle/p-VjABABA3.js.map +1 -1
  149. package/dist/{esm/floating-ui.dom-gdsca1fx.js → bundle/p-_RZbmuMU.js} +70 -41
  150. package/dist/bundle/p-_RZbmuMU.js.map +1 -0
  151. package/dist/bundle/{p-UaaPHvKJ.js → p-_WSH7pZY.js} +3 -3
  152. package/dist/bundle/{p-UaaPHvKJ.js.map → p-_WSH7pZY.js.map} +1 -1
  153. package/dist/bundle/{p-BuyCa_uF.js → p-bAS7SMVR.js} +5 -5
  154. package/dist/bundle/{p-BuyCa_uF.js.map → p-bAS7SMVR.js.map} +1 -1
  155. package/dist/bundle/p-baWVwd8J.js +109 -0
  156. package/dist/bundle/p-baWVwd8J.js.map +1 -0
  157. package/dist/bundle/{p-Dd5JHsV3.js → p-dzRDgb4S.js} +3 -3
  158. package/dist/bundle/{p-Dd5JHsV3.js.map → p-dzRDgb4S.js.map} +1 -1
  159. package/dist/bundle/{p-BocpUT46.js → p-pf-8Sy0Y.js} +26 -26
  160. package/dist/bundle/p-pf-8Sy0Y.js.map +1 -0
  161. package/dist/bundle/{p-DbaZzGS_.js → p-vXXTDKh5.js} +50 -35
  162. package/dist/bundle/p-vXXTDKh5.js.map +1 -0
  163. package/dist/cjs/annotation-body-DaD_bwoW.js.map +1 -1
  164. package/dist/cjs/dso-accordion-section.cjs.entry.js +1 -1
  165. package/dist/cjs/dso-accordion-section.cjs.entry.js.map +1 -1
  166. package/dist/cjs/dso-accordion-section.entry.cjs.js.map +1 -1
  167. package/dist/cjs/dso-action-list-item.cjs.entry.js +1 -1
  168. package/dist/cjs/dso-action-list.cjs.entry.js +1 -1
  169. package/dist/cjs/dso-action-list.cjs.entry.js.map +1 -1
  170. package/dist/cjs/dso-action-list.entry.cjs.js.map +1 -1
  171. package/dist/cjs/dso-advanced-select.cjs.entry.js +5 -5
  172. package/dist/cjs/dso-advanced-select.cjs.entry.js.map +1 -1
  173. package/dist/cjs/dso-advanced-select.entry.cjs.js.map +1 -1
  174. package/dist/cjs/dso-alert.dso-badge.dso-image-overlay.dso-ozon-content.dso-ozon-content-toggletip.dso-panel.dso-table.entry.cjs.js.map +1 -1
  175. package/dist/cjs/dso-alert_7.cjs.entry.js +51 -41
  176. package/dist/cjs/dso-alert_7.cjs.entry.js.map +1 -1
  177. package/dist/cjs/dso-annotation-activiteit.cjs.entry.js +2 -2
  178. package/dist/cjs/dso-annotation-activiteit.cjs.entry.js.map +1 -1
  179. package/dist/cjs/dso-annotation-activiteit.entry.cjs.js.map +1 -1
  180. package/dist/cjs/dso-annotation-gebiedsaanwijzing.cjs.entry.js +2 -2
  181. package/dist/cjs/dso-annotation-gebiedsaanwijzing.cjs.entry.js.map +1 -1
  182. package/dist/cjs/dso-annotation-gebiedsaanwijzing.entry.cjs.js.map +1 -1
  183. package/dist/cjs/dso-annotation-kaart.cjs.entry.js +2 -2
  184. package/dist/cjs/dso-annotation-kaart.cjs.entry.js.map +1 -1
  185. package/dist/cjs/dso-annotation-kaart.entry.cjs.js.map +1 -1
  186. package/dist/cjs/dso-annotation-locatie.dso-document-component.entry.cjs.js.map +1 -1
  187. package/dist/cjs/dso-annotation-locatie_2.cjs.entry.js +5 -5
  188. package/dist/cjs/dso-annotation-locatie_2.cjs.entry.js.map +1 -1
  189. package/dist/cjs/dso-annotation-omgevingsnormwaarde.cjs.entry.js +2 -2
  190. package/dist/cjs/dso-annotation-omgevingsnormwaarde.cjs.entry.js.map +1 -1
  191. package/dist/cjs/dso-annotation-omgevingsnormwaarde.entry.cjs.js.map +1 -1
  192. package/dist/cjs/dso-attachments-counter.dso-expandable.entry.cjs.js.map +1 -1
  193. package/dist/cjs/dso-attachments-counter_2.cjs.entry.js +4 -4
  194. package/dist/cjs/dso-attachments-counter_2.cjs.entry.js.map +1 -1
  195. package/dist/cjs/dso-autosuggest.cjs.entry.js +4 -5
  196. package/dist/cjs/dso-autosuggest.cjs.entry.js.map +1 -1
  197. package/dist/cjs/dso-autosuggest.entry.cjs.js.map +1 -1
  198. package/dist/cjs/dso-banner.cjs.entry.js +2 -2
  199. package/dist/cjs/dso-banner.cjs.entry.js.map +1 -1
  200. package/dist/cjs/dso-banner.entry.cjs.js.map +1 -1
  201. package/dist/cjs/dso-button-group.cjs.entry.js +1 -1
  202. package/dist/cjs/dso-button-group.cjs.entry.js.map +1 -1
  203. package/dist/cjs/dso-button-group.entry.cjs.js.map +1 -1
  204. package/dist/cjs/dso-card-container.cjs.entry.js +1 -1
  205. package/dist/cjs/dso-card.cjs.entry.js +3 -3
  206. package/dist/cjs/dso-card.cjs.entry.js.map +1 -1
  207. package/dist/cjs/dso-card.entry.cjs.js.map +1 -1
  208. package/dist/cjs/dso-contact-information.cjs.entry.js +1 -1
  209. package/dist/cjs/dso-date-picker.cjs.entry.js +1 -1
  210. package/dist/cjs/dso-document-card.cjs.entry.js +2 -2
  211. package/dist/cjs/dso-document-card.cjs.entry.js.map +1 -1
  212. package/dist/cjs/dso-document-card.entry.cjs.js.map +1 -1
  213. package/dist/cjs/dso-dropdown-menu.cjs.entry.js +4 -4
  214. package/dist/cjs/dso-header.cjs.entry.js +3 -3
  215. package/dist/cjs/dso-header.cjs.entry.js.map +1 -1
  216. package/dist/cjs/dso-header.entry.cjs.js.map +1 -1
  217. package/dist/cjs/dso-highlight-box.cjs.entry.js +2 -2
  218. package/dist/cjs/dso-highlight-box.cjs.entry.js.map +1 -1
  219. package/dist/cjs/dso-highlight-box.entry.cjs.js.map +1 -1
  220. package/dist/cjs/dso-history-item.cjs.entry.js +1 -1
  221. package/dist/cjs/dso-icon-button.cjs.entry.js +21 -11
  222. package/dist/cjs/dso-icon-button.cjs.entry.js.map +1 -1
  223. package/dist/cjs/dso-icon-button.entry.cjs.js.map +1 -1
  224. package/dist/cjs/dso-icon.cjs.entry.js +1 -1
  225. package/dist/cjs/dso-info-button.cjs.entry.js +2 -2
  226. package/dist/cjs/dso-info-button.cjs.entry.js.map +1 -1
  227. package/dist/cjs/dso-info-button.entry.cjs.js.map +1 -1
  228. package/dist/cjs/dso-info.dso-selectable.entry.cjs.js.map +1 -1
  229. package/dist/cjs/dso-info_2.cjs.entry.js +3 -3
  230. package/dist/cjs/dso-info_2.cjs.entry.js.map +1 -1
  231. package/dist/cjs/dso-input-range.cjs.entry.js +3 -3
  232. package/dist/cjs/dso-input-range.cjs.entry.js.map +1 -1
  233. package/dist/cjs/dso-input-range.entry.cjs.js.map +1 -1
  234. package/dist/cjs/dso-label.dso-renvooi.dso-slide-toggle.entry.cjs.js.map +1 -1
  235. package/dist/cjs/dso-label_3.cjs.entry.js +8 -9
  236. package/dist/cjs/dso-label_3.cjs.entry.js.map +1 -1
  237. package/dist/cjs/dso-legend-item.cjs.entry.js +1 -1
  238. package/dist/cjs/dso-legend-item.cjs.entry.js.map +1 -1
  239. package/dist/cjs/dso-legend-item.entry.cjs.js.map +1 -1
  240. package/dist/cjs/dso-list-button.cjs.entry.js +2 -2
  241. package/dist/cjs/dso-list-button.cjs.entry.js.map +1 -1
  242. package/dist/cjs/dso-list-button.entry.cjs.js.map +1 -1
  243. package/dist/cjs/dso-logo.cjs.entry.js +1 -1
  244. package/dist/cjs/dso-map-base-layers.cjs.entry.js +4 -4
  245. package/dist/cjs/dso-map-base-layers.cjs.entry.js.map +1 -1
  246. package/dist/cjs/dso-map-base-layers.entry.cjs.js.map +1 -1
  247. package/dist/cjs/dso-map-controls.cjs.entry.js +3 -3
  248. package/dist/cjs/dso-map-controls.cjs.entry.js.map +1 -1
  249. package/dist/cjs/dso-map-controls.entry.cjs.js.map +1 -1
  250. package/dist/cjs/dso-map-overlays.cjs.entry.js +4 -4
  251. package/dist/cjs/dso-map-overlays.cjs.entry.js.map +1 -1
  252. package/dist/cjs/dso-map-overlays.entry.cjs.js.map +1 -1
  253. package/dist/cjs/dso-mark-bar.cjs.entry.js +2 -2
  254. package/dist/cjs/dso-mark-bar.cjs.entry.js.map +1 -1
  255. package/dist/cjs/dso-mark-bar.entry.cjs.js.map +1 -1
  256. package/dist/cjs/dso-modal.cjs.entry.js +4 -4
  257. package/dist/cjs/dso-modal.cjs.entry.js.map +1 -1
  258. package/dist/cjs/dso-modal.entry.cjs.js.map +1 -1
  259. package/dist/cjs/dso-onboarding-tip.cjs.entry.js +4 -4
  260. package/dist/cjs/dso-onboarding-tip.cjs.entry.js.map +1 -1
  261. package/dist/cjs/dso-onboarding-tip.entry.cjs.js.map +1 -1
  262. package/dist/cjs/dso-pagination.cjs.entry.js +1 -1
  263. package/dist/cjs/dso-pagination.cjs.entry.js.map +1 -1
  264. package/dist/cjs/dso-pagination.entry.cjs.js.map +1 -1
  265. package/dist/cjs/dso-plekinfo-card.cjs.entry.js +2 -2
  266. package/dist/cjs/dso-plekinfo-card.cjs.entry.js.map +1 -1
  267. package/dist/cjs/dso-plekinfo-card.entry.cjs.js.map +1 -1
  268. package/dist/cjs/dso-progress-indicator.cjs.entry.js +2 -2
  269. package/dist/cjs/dso-progress-indicator.cjs.entry.js.map +1 -1
  270. package/dist/cjs/dso-progress-indicator.entry.cjs.js.map +1 -1
  271. package/dist/cjs/dso-project-item.cjs.entry.js +1 -1
  272. package/dist/cjs/dso-responsive-element.cjs.entry.js +1 -1
  273. package/dist/cjs/dso-scrollable.cjs.entry.js +3 -4
  274. package/dist/cjs/dso-scrollable.cjs.entry.js.map +1 -1
  275. package/dist/cjs/dso-scrollable.entry.cjs.js.map +1 -1
  276. package/dist/cjs/dso-skiplink.cjs.entry.js +2 -2
  277. package/dist/cjs/dso-skiplink.cjs.entry.js.map +1 -1
  278. package/dist/cjs/dso-skiplink.entry.cjs.js.map +1 -1
  279. package/dist/cjs/dso-survey-rating.cjs.entry.js +3 -3
  280. package/dist/cjs/dso-survey-rating.cjs.entry.js.map +1 -1
  281. package/dist/cjs/dso-survey-rating.entry.cjs.js.map +1 -1
  282. package/dist/cjs/dso-tabs.cjs.entry.js +1 -1
  283. package/dist/cjs/dso-tijdreis-banner.cjs.entry.js +2 -2
  284. package/dist/cjs/dso-tijdreis-banner.cjs.entry.js.map +1 -1
  285. package/dist/cjs/dso-tijdreis-banner.entry.cjs.js.map +1 -1
  286. package/dist/cjs/dso-toggletip.cjs.entry.js +1 -1
  287. package/dist/cjs/dso-toolkit.cjs.js +1 -1
  288. package/dist/cjs/dso-tooltip.cjs.entry.js +3 -4
  289. package/dist/cjs/dso-tooltip.cjs.entry.js.map +1 -1
  290. package/dist/cjs/dso-tooltip.entry.cjs.js.map +1 -1
  291. package/dist/cjs/dso-tree-view.cjs.entry.js +3 -3
  292. package/dist/cjs/dso-tree-view.cjs.entry.js.map +1 -1
  293. package/dist/cjs/dso-tree-view.entry.cjs.js.map +1 -1
  294. package/dist/cjs/dso-viewer-grid.cjs.entry.js +3 -4
  295. package/dist/cjs/dso-viewer-grid.cjs.entry.js.map +1 -1
  296. package/dist/cjs/dso-viewer-grid.entry.cjs.js.map +1 -1
  297. package/dist/cjs/dsot-document-component-demo.cjs.entry.js +1 -1
  298. package/dist/cjs/{floating-ui.dom-uZgU2YQo.js → floating-ui.dom-CHD5ZW0W.js} +70 -41
  299. package/dist/cjs/floating-ui.dom-CHD5ZW0W.js.map +1 -0
  300. package/dist/cjs/{focus-trap.esm-c-Aj_u8L.js → focus-trap.esm-DSO8w3eY.js} +26 -26
  301. package/dist/cjs/focus-trap.esm-DSO8w3eY.js.map +1 -0
  302. package/dist/cjs/{i18n-yRiEgk_k.js → i18n-Dq0QvKWD.js} +71 -20
  303. package/dist/cjs/i18n-Dq0QvKWD.js.map +1 -0
  304. package/dist/cjs/index-DMUCyuUA.js +111 -0
  305. package/dist/cjs/index-DMUCyuUA.js.map +1 -0
  306. package/dist/cjs/{index.esm-DtPCE30D.js → index.esm-jAw0K065.js} +45 -20
  307. package/dist/cjs/index.esm-jAw0K065.js.map +1 -0
  308. package/dist/cjs/loader.cjs.js +1 -1
  309. package/dist/cjs/{position-tooltip.function-CwmmCHWn.js → position-tooltip.function-ByMSSaYN.js} +3 -3
  310. package/dist/cjs/{position-tooltip.function-CwmmCHWn.js.map → position-tooltip.function-ByMSSaYN.js.map} +1 -1
  311. package/dist/cjs/tooltip.functional-component-CD9AUuU7.js.map +1 -1
  312. package/dist/cjs/{v4-Br3XC_0C.js → v4-DVHpSsrI.js} +9 -6
  313. package/dist/cjs/v4-DVHpSsrI.js.map +1 -0
  314. package/dist/collection/collection-manifest.json +0 -1
  315. package/dist/collection/components/accordion/components/accordion-section.css +10 -8
  316. package/dist/collection/components/action-list/action-list.css +8 -6
  317. package/dist/collection/components/action-list/components/action-list-item.css +5 -5
  318. package/dist/collection/components/advanced-select/advanced-select.css +44 -30
  319. package/dist/collection/components/advanced-select/advanced-select.js +3 -3
  320. package/dist/collection/components/advanced-select/advanced-select.js.map +1 -1
  321. package/dist/collection/components/alert/alert.css +34 -26
  322. package/dist/collection/components/alert/alert.js +2 -2
  323. package/dist/collection/components/alert/alert.js.map +1 -1
  324. package/dist/collection/components/annotation/annotation-activiteit/annotation-activiteit.js +1 -1
  325. package/dist/collection/components/annotation/annotation-body.js.map +1 -1
  326. package/dist/collection/components/annotation/annotation-gebiedsaanwijzing/annotation-gebiedsaanwijzing.js +1 -1
  327. package/dist/collection/components/annotation/annotation-kaart/annotation-kaart.js +1 -1
  328. package/dist/collection/components/annotation/annotation-locatie/annotation-locatie.js +1 -1
  329. package/dist/collection/components/annotation/annotation-omgevingsnormwaarde/annotation-omgevingsnormwaarde.js +1 -1
  330. package/dist/collection/components/annotation/annotation.css +16 -12
  331. package/dist/collection/components/attachments-counter/attachments-counter.css +2 -2
  332. package/dist/collection/components/attachments-counter/attachments-counter.js +1 -1
  333. package/dist/collection/components/autosuggest/autosuggest.js +1 -1
  334. package/dist/collection/components/badge/badge.css +40 -26
  335. package/dist/collection/components/badge/badge.js +2 -2
  336. package/dist/collection/components/badge/badge.js.map +1 -1
  337. package/dist/collection/components/banner/banner.js +3 -3
  338. package/dist/collection/components/banner/banner.js.map +1 -1
  339. package/dist/collection/components/button-group/button-group.js +2 -2
  340. package/dist/collection/components/button-group/button-group.js.map +1 -1
  341. package/dist/collection/components/card/card.css +2 -2
  342. package/dist/collection/components/card/card.js +2 -2
  343. package/dist/collection/components/card-container/card-container.js +1 -1
  344. package/dist/collection/components/contact-information/contact-information.js +1 -1
  345. package/dist/collection/components/date-picker/date-picker.js +1 -1
  346. package/dist/collection/components/document-card/document-card.css +2 -2
  347. package/dist/collection/components/document-card/document-card.js +1 -1
  348. package/dist/collection/components/document-component/document-component.css +23 -15
  349. package/dist/collection/components/document-component/document-component.js +4 -7
  350. package/dist/collection/components/document-component/document-component.js.map +1 -1
  351. package/dist/collection/components/document-component-demo/document-component.demo.js +1 -1
  352. package/dist/collection/components/dropdown-menu/dropdown-menu.js +1 -1
  353. package/dist/collection/components/expandable/expandable.js +3 -3
  354. package/dist/collection/components/expandable/expandable.js.map +1 -1
  355. package/dist/collection/components/header/header.css +8 -6
  356. package/dist/collection/components/header/header.js +2 -2
  357. package/dist/collection/components/header/header.js.map +1 -1
  358. package/dist/collection/components/highlight-box/highlight-box.css +6 -4
  359. package/dist/collection/components/highlight-box/highlight-box.js +1 -1
  360. package/dist/collection/components/history-item/history-item.js +1 -1
  361. package/dist/collection/components/icon/icon.js +1 -1
  362. package/dist/collection/components/icon-button/icon-button.css +15 -9
  363. package/dist/collection/components/icon-button/icon-button.js +18 -8
  364. package/dist/collection/components/icon-button/icon-button.js.map +1 -1
  365. package/dist/collection/components/image-overlay/image-overlay.css +32 -24
  366. package/dist/collection/components/info/info.css +10 -8
  367. package/dist/collection/components/info/info.js +1 -1
  368. package/dist/collection/components/info-button/info-button.css +6 -4
  369. package/dist/collection/components/info-button/info-button.js +1 -1
  370. package/dist/collection/components/input-range/input-range.css +15 -7
  371. package/dist/collection/components/input-range/input-range.js +2 -2
  372. package/dist/collection/components/label/label.css +70 -50
  373. package/dist/collection/components/label/label.js +4 -4
  374. package/dist/collection/components/label/label.js.map +1 -1
  375. package/dist/collection/components/legend-item/legend-item.js +2 -2
  376. package/dist/collection/components/legend-item/legend-item.js.map +1 -1
  377. package/dist/collection/components/list-button/list-button.css +3 -3
  378. package/dist/collection/components/list-button/list-button.js +2 -2
  379. package/dist/collection/components/list-button/list-button.js.map +1 -1
  380. package/dist/collection/components/logo/logo.js +1 -1
  381. package/dist/collection/components/map-base-layers/map-base-layers.css +2 -2
  382. package/dist/collection/components/map-base-layers/map-base-layers.js +1 -1
  383. package/dist/collection/components/map-controls/map-controls.css +4 -4
  384. package/dist/collection/components/map-controls/map-controls.js +1 -1
  385. package/dist/collection/components/map-overlays/map-overlays.css +2 -2
  386. package/dist/collection/components/map-overlays/map-overlays.js +1 -1
  387. package/dist/collection/components/mark-bar/mark-bar.css +4 -4
  388. package/dist/collection/components/mark-bar/mark-bar.js +1 -1
  389. package/dist/collection/components/modal/modal.css +2 -2
  390. package/dist/collection/components/modal/modal.js +1 -1
  391. package/dist/collection/components/onboarding-tip/onboarding-tip.css +8 -7
  392. package/dist/collection/components/onboarding-tip/onboarding-tip.js +1 -1
  393. package/dist/collection/components/ozon-content/components/ozon-content-toggletip/ozon-content-toggletip.js +1 -1
  394. package/dist/collection/components/ozon-content/nodes/ext-ref.node.js +5 -2
  395. package/dist/collection/components/ozon-content/nodes/ext-ref.node.js.map +1 -1
  396. package/dist/collection/components/ozon-content/nodes/figuur.node.js +5 -5
  397. package/dist/collection/components/ozon-content/nodes/figuur.node.js.map +1 -1
  398. package/dist/collection/components/ozon-content/nodes/inline-tekst-afbeelding.node.js +4 -4
  399. package/dist/collection/components/ozon-content/nodes/inline-tekst-afbeelding.node.js.map +1 -1
  400. package/dist/collection/components/ozon-content/nodes/int-io-ref.node.js +3 -3
  401. package/dist/collection/components/ozon-content/nodes/int-io-ref.node.js.map +1 -1
  402. package/dist/collection/components/ozon-content/nodes/int-ref.node.js +15 -8
  403. package/dist/collection/components/ozon-content/nodes/int-ref.node.js.map +1 -1
  404. package/dist/collection/components/ozon-content/nodes/lijst.node.js +1 -1
  405. package/dist/collection/components/ozon-content/nodes/lijst.node.js.map +1 -1
  406. package/dist/collection/components/ozon-content/nodes/table.node/table-cell.js +1 -1
  407. package/dist/collection/components/ozon-content/nodes/table.node/table-cell.js.map +1 -1
  408. package/dist/collection/components/ozon-content/nodes/table.node/table.node.js +1 -1
  409. package/dist/collection/components/ozon-content/nodes/table.node/table.node.js.map +1 -1
  410. package/dist/collection/components/ozon-content/ozon-content.css +124 -84
  411. package/dist/collection/components/ozon-content/ozon-content.interfaces.js.map +1 -1
  412. package/dist/collection/components/ozon-content/ozon-content.js +2 -2
  413. package/dist/collection/components/ozon-content/ozon-content.js.map +1 -1
  414. package/dist/collection/components/pagination/pagination.css +2 -2
  415. package/dist/collection/components/panel/panel.css +10 -8
  416. package/dist/collection/components/panel/panel.js +2 -2
  417. package/dist/collection/components/panel/panel.js.map +1 -1
  418. package/dist/collection/components/plekinfo-card/plekinfo-card.css +18 -14
  419. package/dist/collection/components/plekinfo-card/plekinfo-card.js +1 -1
  420. package/dist/collection/components/progress-indicator/progress-indicator.js +1 -1
  421. package/dist/collection/components/project-item/project-item.js +1 -1
  422. package/dist/collection/components/renvooi/renvooi.css +16 -12
  423. package/dist/collection/components/responsive-element/responsive-element.js +1 -1
  424. package/dist/collection/components/scrollable/scrollable.js +3 -3
  425. package/dist/collection/components/scrollable/scrollable.js.map +1 -1
  426. package/dist/collection/components/selectable/selectable.js +1 -1
  427. package/dist/collection/components/skiplink/skiplink.css +2 -2
  428. package/dist/collection/components/skiplink/skiplink.js +1 -1
  429. package/dist/collection/components/slide-toggle/slide-toggle.js +1 -1
  430. package/dist/collection/components/survey-rating/survey-rating.css +49 -33
  431. package/dist/collection/components/survey-rating/survey-rating.js +2 -2
  432. package/dist/collection/components/table/table.css +2 -2
  433. package/dist/collection/components/table/table.js +1 -1
  434. package/dist/collection/components/tabs/tabs.js +1 -1
  435. package/dist/collection/components/tijdreis-banner/tijdreis-banner.css +5 -3
  436. package/dist/collection/components/tijdreis-banner/tijdreis-banner.js +1 -1
  437. package/dist/collection/components/toggletip/toggletip.js +1 -1
  438. package/dist/collection/components/tooltip/tooltip.css +1 -2
  439. package/dist/collection/components/tooltip/tooltip.js +2 -2
  440. package/dist/collection/components/tooltip/tooltip.js.map +1 -1
  441. package/dist/collection/components/tree-view/tree-item.js +2 -2
  442. package/dist/collection/components/tree-view/tree-item.js.map +1 -1
  443. package/dist/collection/components/tree-view/tree-view.css +2 -2
  444. package/dist/collection/components/tree-view/tree-view.js +1 -1
  445. package/dist/collection/components/viewer-grid/components/main-panel.js +1 -1
  446. package/dist/collection/components/viewer-grid/components/main-panel.js.map +1 -1
  447. package/dist/collection/components/viewer-grid/viewer-grid.css +2 -2
  448. package/dist/collection/components/viewer-grid/viewer-grid.js +2 -2
  449. package/dist/collection/components/viewer-grid/viewer-grid.js.map +1 -1
  450. package/dist/collection/functional-components/tooltip/tooltip.functional-component.js +1 -1
  451. package/dist/collection/functional-components/tooltip/tooltip.functional-component.js.map +1 -1
  452. package/dist/components/alert.js +2 -2
  453. package/dist/components/alert.js.map +1 -1
  454. package/dist/components/annotation-body.js.map +1 -1
  455. package/dist/components/annotation-locatie.js +2 -2
  456. package/dist/components/annotation-locatie.js.map +1 -1
  457. package/dist/components/attachments-counter.js +2 -2
  458. package/dist/components/attachments-counter.js.map +1 -1
  459. package/dist/components/badge.js +2 -2
  460. package/dist/components/badge.js.map +1 -1
  461. package/dist/components/button-group.js +1 -1
  462. package/dist/components/button-group.js.map +1 -1
  463. package/dist/components/document-component.js +3 -3
  464. package/dist/components/document-component.js.map +1 -1
  465. package/dist/components/dropdown-menu.js +1 -1
  466. package/dist/components/dso-accordion-section.js +1 -1
  467. package/dist/components/dso-accordion-section.js.map +1 -1
  468. package/dist/components/dso-action-list-item.js +1 -1
  469. package/dist/components/dso-action-list.js +1 -1
  470. package/dist/components/dso-action-list.js.map +1 -1
  471. package/dist/components/dso-advanced-select.js +3 -3
  472. package/dist/components/dso-advanced-select.js.map +1 -1
  473. package/dist/components/dso-annotation-activiteit.js +2 -2
  474. package/dist/components/dso-annotation-activiteit.js.map +1 -1
  475. package/dist/components/dso-annotation-gebiedsaanwijzing.js +2 -2
  476. package/dist/components/dso-annotation-gebiedsaanwijzing.js.map +1 -1
  477. package/dist/components/dso-annotation-kaart.js +2 -2
  478. package/dist/components/dso-annotation-kaart.js.map +1 -1
  479. package/dist/components/dso-annotation-omgevingsnormwaarde.js +2 -2
  480. package/dist/components/dso-annotation-omgevingsnormwaarde.js.map +1 -1
  481. package/dist/components/dso-autosuggest.js +1 -1
  482. package/dist/components/dso-banner.js +2 -2
  483. package/dist/components/dso-banner.js.map +1 -1
  484. package/dist/components/dso-card-container.js +1 -1
  485. package/dist/components/dso-card.js +3 -3
  486. package/dist/components/dso-card.js.map +1 -1
  487. package/dist/components/dso-contact-information.js +1 -1
  488. package/dist/components/dso-date-picker.js +1 -1
  489. package/dist/components/dso-document-card.js +2 -2
  490. package/dist/components/dso-document-card.js.map +1 -1
  491. package/dist/components/dso-header.js +2 -2
  492. package/dist/components/dso-header.js.map +1 -1
  493. package/dist/components/dso-highlight-box.js +2 -2
  494. package/dist/components/dso-highlight-box.js.map +1 -1
  495. package/dist/components/dso-history-item.js +1 -1
  496. package/dist/components/dso-input-range.js +3 -3
  497. package/dist/components/dso-input-range.js.map +1 -1
  498. package/dist/components/dso-legend-item.js +1 -1
  499. package/dist/components/dso-legend-item.js.map +1 -1
  500. package/dist/components/dso-list-button.js +2 -2
  501. package/dist/components/dso-list-button.js.map +1 -1
  502. package/dist/components/dso-logo.js +1 -1
  503. package/dist/components/dso-map-base-layers.js +2 -2
  504. package/dist/components/dso-map-base-layers.js.map +1 -1
  505. package/dist/components/dso-map-controls.js +2 -2
  506. package/dist/components/dso-map-controls.js.map +1 -1
  507. package/dist/components/dso-map-overlays.js +2 -2
  508. package/dist/components/dso-map-overlays.js.map +1 -1
  509. package/dist/components/dso-mark-bar.js +2 -2
  510. package/dist/components/dso-mark-bar.js.map +1 -1
  511. package/dist/components/dso-modal.js +2 -2
  512. package/dist/components/dso-modal.js.map +1 -1
  513. package/dist/components/dso-onboarding-tip.js +2 -2
  514. package/dist/components/dso-onboarding-tip.js.map +1 -1
  515. package/dist/components/dso-pagination.js +1 -1
  516. package/dist/components/dso-pagination.js.map +1 -1
  517. package/dist/components/dso-plekinfo-card.js +2 -2
  518. package/dist/components/dso-plekinfo-card.js.map +1 -1
  519. package/dist/components/dso-project-item.js +1 -1
  520. package/dist/components/dso-skiplink.js +2 -2
  521. package/dist/components/dso-skiplink.js.map +1 -1
  522. package/dist/components/dso-survey-rating.js +3 -3
  523. package/dist/components/dso-survey-rating.js.map +1 -1
  524. package/dist/components/dso-tabs.js +1 -1
  525. package/dist/components/dso-tijdreis-banner.js +2 -2
  526. package/dist/components/dso-tijdreis-banner.js.map +1 -1
  527. package/dist/components/dso-tree-view.js +3 -3
  528. package/dist/components/dso-tree-view.js.map +1 -1
  529. package/dist/components/dso-viewer-grid.js +2 -2
  530. package/dist/components/dso-viewer-grid.js.map +1 -1
  531. package/dist/components/dsot-document-component-demo.js +2 -3
  532. package/dist/components/dsot-document-component-demo.js.map +1 -1
  533. package/dist/components/expandable.js +2 -2
  534. package/dist/components/expandable.js.map +1 -1
  535. package/dist/components/floating-ui.dom.js +68 -39
  536. package/dist/components/floating-ui.dom.js.map +1 -1
  537. package/dist/components/focus-trap.esm.js +23 -23
  538. package/dist/components/focus-trap.esm.js.map +1 -1
  539. package/dist/components/i18n.js +69 -18
  540. package/dist/components/i18n.js.map +1 -1
  541. package/dist/components/icon-button.js +19 -9
  542. package/dist/components/icon-button.js.map +1 -1
  543. package/dist/components/icon.js +1 -1
  544. package/dist/components/image-overlay.js +1 -1
  545. package/dist/components/image-overlay.js.map +1 -1
  546. package/dist/components/index.d.ts +0 -2
  547. package/dist/components/index.esm.js +43 -18
  548. package/dist/components/index.esm.js.map +1 -1
  549. package/dist/components/index.js +0 -1
  550. package/dist/components/index.js.map +1 -1
  551. package/dist/components/index2.js +81 -98
  552. package/dist/components/index2.js.map +1 -1
  553. package/dist/components/info-button.js +2 -2
  554. package/dist/components/info-button.js.map +1 -1
  555. package/dist/components/info.js +2 -2
  556. package/dist/components/info.js.map +1 -1
  557. package/dist/components/label.js +4 -4
  558. package/dist/components/label.js.map +1 -1
  559. package/dist/components/ozon-content-toggletip.js +1 -1
  560. package/dist/components/ozon-content.js +41 -26
  561. package/dist/components/ozon-content.js.map +1 -1
  562. package/dist/components/panel.js +2 -2
  563. package/dist/components/panel.js.map +1 -1
  564. package/dist/components/progress-indicator.js +1 -1
  565. package/dist/components/progress-indicator.js.map +1 -1
  566. package/dist/components/renvooi.js +1 -1
  567. package/dist/components/renvooi.js.map +1 -1
  568. package/dist/components/responsive-element.js +1 -1
  569. package/dist/components/scrollable.js +2 -2
  570. package/dist/components/scrollable.js.map +1 -1
  571. package/dist/components/selectable.js +1 -1
  572. package/dist/components/slide-toggle.js +1 -1
  573. package/dist/components/table.js +2 -2
  574. package/dist/components/table.js.map +1 -1
  575. package/dist/components/toggletip.js +1 -1
  576. package/dist/components/tooltip.functional-component.js.map +1 -1
  577. package/dist/components/tooltip.js +2 -2
  578. package/dist/components/tooltip.js.map +1 -1
  579. package/dist/components/v4.js +7 -4
  580. package/dist/components/v4.js.map +1 -1
  581. package/dist/dso-toolkit/dso-accordion-section.entry.esm.js.map +1 -1
  582. package/dist/dso-toolkit/dso-action-list.entry.esm.js.map +1 -1
  583. package/dist/dso-toolkit/dso-advanced-select.entry.esm.js.map +1 -1
  584. package/dist/dso-toolkit/dso-alert.dso-badge.dso-image-overlay.dso-ozon-content.dso-ozon-content-toggletip.dso-panel.dso-table.entry.esm.js.map +1 -1
  585. package/dist/dso-toolkit/dso-annotation-activiteit.entry.esm.js.map +1 -1
  586. package/dist/dso-toolkit/dso-annotation-gebiedsaanwijzing.entry.esm.js.map +1 -1
  587. package/dist/dso-toolkit/dso-annotation-kaart.entry.esm.js.map +1 -1
  588. package/dist/dso-toolkit/dso-annotation-locatie.dso-document-component.entry.esm.js.map +1 -1
  589. package/dist/dso-toolkit/dso-annotation-omgevingsnormwaarde.entry.esm.js.map +1 -1
  590. package/dist/dso-toolkit/dso-attachments-counter.dso-expandable.entry.esm.js.map +1 -1
  591. package/dist/dso-toolkit/dso-autosuggest.entry.esm.js.map +1 -1
  592. package/dist/dso-toolkit/dso-banner.entry.esm.js.map +1 -1
  593. package/dist/dso-toolkit/dso-button-group.entry.esm.js.map +1 -1
  594. package/dist/dso-toolkit/dso-card.entry.esm.js.map +1 -1
  595. package/dist/dso-toolkit/dso-document-card.entry.esm.js.map +1 -1
  596. package/dist/dso-toolkit/dso-header.entry.esm.js.map +1 -1
  597. package/dist/dso-toolkit/dso-highlight-box.entry.esm.js.map +1 -1
  598. package/dist/dso-toolkit/dso-icon-button.entry.esm.js.map +1 -1
  599. package/dist/dso-toolkit/dso-info-button.entry.esm.js.map +1 -1
  600. package/dist/dso-toolkit/dso-info.dso-selectable.entry.esm.js.map +1 -1
  601. package/dist/dso-toolkit/dso-input-range.entry.esm.js.map +1 -1
  602. package/dist/dso-toolkit/dso-label.dso-renvooi.dso-slide-toggle.entry.esm.js.map +1 -1
  603. package/dist/dso-toolkit/dso-legend-item.entry.esm.js.map +1 -1
  604. package/dist/dso-toolkit/dso-list-button.entry.esm.js.map +1 -1
  605. package/dist/dso-toolkit/dso-map-base-layers.entry.esm.js.map +1 -1
  606. package/dist/dso-toolkit/dso-map-controls.entry.esm.js.map +1 -1
  607. package/dist/dso-toolkit/dso-map-overlays.entry.esm.js.map +1 -1
  608. package/dist/dso-toolkit/dso-mark-bar.entry.esm.js.map +1 -1
  609. package/dist/dso-toolkit/dso-modal.entry.esm.js.map +1 -1
  610. package/dist/dso-toolkit/dso-onboarding-tip.entry.esm.js.map +1 -1
  611. package/dist/dso-toolkit/dso-pagination.entry.esm.js.map +1 -1
  612. package/dist/dso-toolkit/dso-plekinfo-card.entry.esm.js.map +1 -1
  613. package/dist/dso-toolkit/dso-progress-indicator.entry.esm.js.map +1 -1
  614. package/dist/dso-toolkit/dso-scrollable.entry.esm.js.map +1 -1
  615. package/dist/dso-toolkit/dso-skiplink.entry.esm.js.map +1 -1
  616. package/dist/dso-toolkit/dso-survey-rating.entry.esm.js.map +1 -1
  617. package/dist/dso-toolkit/dso-tijdreis-banner.entry.esm.js.map +1 -1
  618. package/dist/dso-toolkit/dso-toolkit.esm.js +1 -1
  619. package/dist/dso-toolkit/dso-tooltip.entry.esm.js.map +1 -1
  620. package/dist/dso-toolkit/dso-tree-view.entry.esm.js.map +1 -1
  621. package/dist/dso-toolkit/dso-viewer-grid.entry.esm.js.map +1 -1
  622. package/dist/dso-toolkit/{p-9d79a107.entry.js → p-088622a3.entry.js} +2 -2
  623. package/dist/dso-toolkit/p-08f69868.entry.js +2 -0
  624. package/dist/dso-toolkit/{p-07220932.entry.js.map → p-08f69868.entry.js.map} +1 -1
  625. package/dist/dso-toolkit/p-0af17a28.entry.js +2 -0
  626. package/dist/dso-toolkit/{p-573b9046.entry.js.map → p-0af17a28.entry.js.map} +1 -1
  627. package/dist/dso-toolkit/p-12e81f84.entry.js +2 -0
  628. package/dist/dso-toolkit/{p-c8def649.entry.js.map → p-12e81f84.entry.js.map} +1 -1
  629. package/dist/dso-toolkit/{p-05275c43.entry.js → p-13140af9.entry.js} +2 -2
  630. package/dist/dso-toolkit/p-16c153d5.entry.js +2 -0
  631. package/dist/dso-toolkit/{p-4a07fb41.entry.js.map → p-16c153d5.entry.js.map} +1 -1
  632. package/dist/dso-toolkit/p-1e431f4a.entry.js +2 -0
  633. package/dist/dso-toolkit/p-1e431f4a.entry.js.map +1 -0
  634. package/dist/dso-toolkit/{p-7883dfda.entry.js → p-242e14d4.entry.js} +2 -2
  635. package/dist/dso-toolkit/p-2ac8353d.entry.js +2 -0
  636. package/dist/dso-toolkit/{p-9b37f2a1.entry.js.map → p-2ac8353d.entry.js.map} +1 -1
  637. package/dist/dso-toolkit/p-2bdda7b6.entry.js +2 -0
  638. package/dist/dso-toolkit/{p-7b279318.entry.js.map → p-2bdda7b6.entry.js.map} +1 -1
  639. package/dist/dso-toolkit/p-2bf60d4d.entry.js +2 -0
  640. package/dist/dso-toolkit/p-2bf60d4d.entry.js.map +1 -0
  641. package/dist/dso-toolkit/p-337c9024.entry.js +2 -0
  642. package/dist/dso-toolkit/{p-9232e376.entry.js.map → p-337c9024.entry.js.map} +1 -1
  643. package/dist/dso-toolkit/p-3ae293ef.entry.js +2 -0
  644. package/dist/dso-toolkit/{p-847af791.entry.js.map → p-3ae293ef.entry.js.map} +1 -1
  645. package/dist/dso-toolkit/{p-0ee97f84.entry.js → p-3cd95234.entry.js} +2 -2
  646. package/dist/dso-toolkit/{p-0ee97f84.entry.js.map → p-3cd95234.entry.js.map} +1 -1
  647. package/dist/dso-toolkit/p-4c5a75e6.entry.js +2 -0
  648. package/dist/dso-toolkit/p-4c5a75e6.entry.js.map +1 -0
  649. package/dist/dso-toolkit/{p-19019f3b.entry.js → p-4fb7266b.entry.js} +2 -2
  650. package/dist/dso-toolkit/p-539cd8e4.entry.js +2 -0
  651. package/dist/dso-toolkit/{p-b3f2cf42.entry.js.map → p-539cd8e4.entry.js.map} +1 -1
  652. package/dist/dso-toolkit/p-55390fd2.entry.js +2 -0
  653. package/dist/dso-toolkit/{p-a61e4944.entry.js.map → p-55390fd2.entry.js.map} +1 -1
  654. package/dist/dso-toolkit/{p-e5f7cfd3.entry.js → p-648900a1.entry.js} +2 -2
  655. package/dist/dso-toolkit/p-648900a1.entry.js.map +1 -0
  656. package/dist/dso-toolkit/{p-80e3a910.entry.js → p-64d2bb0b.entry.js} +2 -2
  657. package/dist/dso-toolkit/p-6848c1e8.entry.js +2 -0
  658. package/dist/dso-toolkit/p-6848c1e8.entry.js.map +1 -0
  659. package/dist/dso-toolkit/p-7325f496.entry.js +2 -0
  660. package/dist/dso-toolkit/{p-3bc30158.entry.js.map → p-7325f496.entry.js.map} +1 -1
  661. package/dist/dso-toolkit/p-7422113e.entry.js +2 -0
  662. package/dist/dso-toolkit/{p-4bd397cb.entry.js.map → p-7422113e.entry.js.map} +1 -1
  663. package/dist/dso-toolkit/{p-7fed0288.entry.js → p-748c3876.entry.js} +2 -2
  664. package/dist/dso-toolkit/{p-4593ea95.entry.js → p-7e6a09af.entry.js} +2 -2
  665. package/dist/dso-toolkit/p-831256d0.entry.js +2 -0
  666. package/dist/dso-toolkit/{p-0f9f5005.entry.js.map → p-831256d0.entry.js.map} +1 -1
  667. package/dist/dso-toolkit/{p-6a578760.entry.js → p-8fb685b7.entry.js} +2 -2
  668. package/dist/dso-toolkit/p-8fb685b7.entry.js.map +1 -0
  669. package/dist/dso-toolkit/p-95bd8820.entry.js +2 -0
  670. package/dist/dso-toolkit/p-95bd8820.entry.js.map +1 -0
  671. package/dist/dso-toolkit/p-993577a7.entry.js +2 -0
  672. package/dist/dso-toolkit/{p-556f5935.entry.js.map → p-993577a7.entry.js.map} +1 -1
  673. package/dist/dso-toolkit/p-BlB0--wP.js.map +1 -1
  674. package/dist/dso-toolkit/p-C0ZvZbHD.js +2 -0
  675. package/dist/dso-toolkit/p-C0ZvZbHD.js.map +1 -0
  676. package/dist/dso-toolkit/{p-BF0_OXTe.js → p-C_akviUd.js} +2 -2
  677. package/dist/dso-toolkit/p-C_akviUd.js.map +1 -0
  678. package/dist/dso-toolkit/p-CtC5362R.js.map +1 -1
  679. package/dist/dso-toolkit/p-DDSMs62-.js +6 -0
  680. package/dist/dso-toolkit/p-DDSMs62-.js.map +1 -0
  681. package/dist/dso-toolkit/{p-B31olq-p.js → p-DQTeCl9Y.js} +2 -2
  682. package/dist/dso-toolkit/{p-B31olq-p.js.map → p-DQTeCl9Y.js.map} +1 -1
  683. package/dist/dso-toolkit/p-_RZbmuMU.js +2 -0
  684. package/dist/dso-toolkit/p-_RZbmuMU.js.map +1 -0
  685. package/dist/dso-toolkit/p-a14c39a8.entry.js +2 -0
  686. package/dist/dso-toolkit/p-a14c39a8.entry.js.map +1 -0
  687. package/dist/dso-toolkit/p-a9b2ea7e.entry.js +2 -0
  688. package/dist/dso-toolkit/p-a9b2ea7e.entry.js.map +1 -0
  689. package/dist/dso-toolkit/p-ace52920.entry.js +2 -0
  690. package/dist/dso-toolkit/{p-2787bc48.entry.js.map → p-ace52920.entry.js.map} +1 -1
  691. package/dist/dso-toolkit/{p-fbd357bb.entry.js → p-b4664091.entry.js} +2 -2
  692. package/dist/dso-toolkit/p-baWVwd8J.js +2 -0
  693. package/dist/dso-toolkit/p-baWVwd8J.js.map +1 -0
  694. package/dist/dso-toolkit/p-bb3ac0a4.entry.js +2 -0
  695. package/dist/dso-toolkit/p-bb3ac0a4.entry.js.map +1 -0
  696. package/dist/dso-toolkit/p-bea3ed89.entry.js +2 -0
  697. package/dist/dso-toolkit/p-bea3ed89.entry.js.map +1 -0
  698. package/dist/dso-toolkit/p-bf591ec8.entry.js +2 -0
  699. package/dist/dso-toolkit/{p-b52165a0.entry.js.map → p-bf591ec8.entry.js.map} +1 -1
  700. package/dist/dso-toolkit/{p-eceff1ea.entry.js → p-c2e05c9e.entry.js} +2 -2
  701. package/dist/dso-toolkit/p-c9c8b0b8.entry.js +2 -0
  702. package/dist/dso-toolkit/p-c9d4a733.entry.js +2 -0
  703. package/dist/dso-toolkit/p-c9d4a733.entry.js.map +1 -0
  704. package/dist/dso-toolkit/{p-aa1b8321.entry.js → p-cde53355.entry.js} +2 -2
  705. package/dist/dso-toolkit/p-ce9ffa56.entry.js +2 -0
  706. package/dist/dso-toolkit/p-ce9ffa56.entry.js.map +1 -0
  707. package/dist/dso-toolkit/{p-4a4f56ed.entry.js → p-d0252763.entry.js} +2 -2
  708. package/dist/dso-toolkit/p-d0ffada0.entry.js +2 -0
  709. package/dist/dso-toolkit/{p-c0bb872c.entry.js.map → p-d0ffada0.entry.js.map} +1 -1
  710. package/dist/dso-toolkit/p-d63e56e7.entry.js +2 -0
  711. package/dist/dso-toolkit/{p-4341eaab.entry.js.map → p-d63e56e7.entry.js.map} +1 -1
  712. package/dist/dso-toolkit/p-d690e557.entry.js +2 -0
  713. package/dist/dso-toolkit/p-d690e557.entry.js.map +1 -0
  714. package/dist/dso-toolkit/p-d9a8e4da.entry.js +2 -0
  715. package/dist/dso-toolkit/{p-0a496a26.entry.js.map → p-d9a8e4da.entry.js.map} +1 -1
  716. package/dist/dso-toolkit/p-daae46b3.entry.js +2 -0
  717. package/dist/dso-toolkit/{p-bea9eb4c.entry.js.map → p-daae46b3.entry.js.map} +1 -1
  718. package/dist/dso-toolkit/p-dcfb330c.entry.js +2 -0
  719. package/dist/dso-toolkit/{p-5a7ce367.entry.js.map → p-dcfb330c.entry.js.map} +1 -1
  720. package/dist/dso-toolkit/p-e4ee59df.entry.js +2 -0
  721. package/dist/dso-toolkit/p-e4ee59df.entry.js.map +1 -0
  722. package/dist/dso-toolkit/{p-a96fc5f8.entry.js → p-e5dc4512.entry.js} +2 -2
  723. package/dist/dso-toolkit/{p-76f0c45e.entry.js → p-e980ad1a.entry.js} +2 -2
  724. package/dist/dso-toolkit/p-e980ad1a.entry.js.map +1 -0
  725. package/dist/dso-toolkit/{p-426cf574.entry.js → p-e99b9b48.entry.js} +2 -2
  726. package/dist/dso-toolkit/{p-426cf574.entry.js.map → p-e99b9b48.entry.js.map} +1 -1
  727. package/dist/dso-toolkit/p-f9e0da0c.entry.js +2 -0
  728. package/dist/dso-toolkit/{p-b12a966f.entry.js.map → p-f9e0da0c.entry.js.map} +1 -1
  729. package/dist/dso-toolkit/p-pf-8Sy0Y.js +6 -0
  730. package/dist/dso-toolkit/p-pf-8Sy0Y.js.map +1 -0
  731. package/dist/esm/annotation-body-eL8p8SW9.js.map +1 -1
  732. package/dist/esm/dso-accordion-section.entry.js +1 -1
  733. package/dist/esm/dso-accordion-section.entry.js.map +1 -1
  734. package/dist/esm/dso-action-list-item.entry.js +1 -1
  735. package/dist/esm/dso-action-list.entry.js +1 -1
  736. package/dist/esm/dso-action-list.entry.js.map +1 -1
  737. package/dist/esm/dso-advanced-select.entry.js +5 -5
  738. package/dist/esm/dso-advanced-select.entry.js.map +1 -1
  739. package/dist/esm/dso-alert.dso-badge.dso-image-overlay.dso-ozon-content.dso-ozon-content-toggletip.dso-panel.dso-table.entry.js.map +1 -1
  740. package/dist/esm/dso-alert_7.entry.js +51 -41
  741. package/dist/esm/dso-alert_7.entry.js.map +1 -1
  742. package/dist/esm/dso-annotation-activiteit.entry.js +2 -2
  743. package/dist/esm/dso-annotation-activiteit.entry.js.map +1 -1
  744. package/dist/esm/dso-annotation-gebiedsaanwijzing.entry.js +2 -2
  745. package/dist/esm/dso-annotation-gebiedsaanwijzing.entry.js.map +1 -1
  746. package/dist/esm/dso-annotation-kaart.entry.js +2 -2
  747. package/dist/esm/dso-annotation-kaart.entry.js.map +1 -1
  748. package/dist/esm/dso-annotation-locatie.dso-document-component.entry.js.map +1 -1
  749. package/dist/esm/dso-annotation-locatie_2.entry.js +5 -5
  750. package/dist/esm/dso-annotation-locatie_2.entry.js.map +1 -1
  751. package/dist/esm/dso-annotation-omgevingsnormwaarde.entry.js +2 -2
  752. package/dist/esm/dso-annotation-omgevingsnormwaarde.entry.js.map +1 -1
  753. package/dist/esm/dso-attachments-counter.dso-expandable.entry.js.map +1 -1
  754. package/dist/esm/dso-attachments-counter_2.entry.js +4 -4
  755. package/dist/esm/dso-attachments-counter_2.entry.js.map +1 -1
  756. package/dist/esm/dso-autosuggest.entry.js +4 -5
  757. package/dist/esm/dso-autosuggest.entry.js.map +1 -1
  758. package/dist/esm/dso-banner.entry.js +2 -2
  759. package/dist/esm/dso-banner.entry.js.map +1 -1
  760. package/dist/esm/dso-button-group.entry.js +1 -1
  761. package/dist/esm/dso-button-group.entry.js.map +1 -1
  762. package/dist/esm/dso-card-container.entry.js +1 -1
  763. package/dist/esm/dso-card.entry.js +3 -3
  764. package/dist/esm/dso-card.entry.js.map +1 -1
  765. package/dist/esm/dso-contact-information.entry.js +1 -1
  766. package/dist/esm/dso-date-picker.entry.js +1 -1
  767. package/dist/esm/dso-document-card.entry.js +2 -2
  768. package/dist/esm/dso-document-card.entry.js.map +1 -1
  769. package/dist/esm/dso-dropdown-menu.entry.js +4 -4
  770. package/dist/esm/dso-header.entry.js +3 -3
  771. package/dist/esm/dso-header.entry.js.map +1 -1
  772. package/dist/esm/dso-highlight-box.entry.js +2 -2
  773. package/dist/esm/dso-highlight-box.entry.js.map +1 -1
  774. package/dist/esm/dso-history-item.entry.js +1 -1
  775. package/dist/esm/dso-icon-button.entry.js +21 -11
  776. package/dist/esm/dso-icon-button.entry.js.map +1 -1
  777. package/dist/esm/dso-icon.entry.js +1 -1
  778. package/dist/esm/dso-info-button.entry.js +2 -2
  779. package/dist/esm/dso-info-button.entry.js.map +1 -1
  780. package/dist/esm/dso-info.dso-selectable.entry.js.map +1 -1
  781. package/dist/esm/dso-info_2.entry.js +3 -3
  782. package/dist/esm/dso-info_2.entry.js.map +1 -1
  783. package/dist/esm/dso-input-range.entry.js +3 -3
  784. package/dist/esm/dso-input-range.entry.js.map +1 -1
  785. package/dist/esm/dso-label.dso-renvooi.dso-slide-toggle.entry.js.map +1 -1
  786. package/dist/esm/dso-label_3.entry.js +8 -9
  787. package/dist/esm/dso-label_3.entry.js.map +1 -1
  788. package/dist/esm/dso-legend-item.entry.js +1 -1
  789. package/dist/esm/dso-legend-item.entry.js.map +1 -1
  790. package/dist/esm/dso-list-button.entry.js +2 -2
  791. package/dist/esm/dso-list-button.entry.js.map +1 -1
  792. package/dist/esm/dso-logo.entry.js +1 -1
  793. package/dist/esm/dso-map-base-layers.entry.js +4 -4
  794. package/dist/esm/dso-map-base-layers.entry.js.map +1 -1
  795. package/dist/esm/dso-map-controls.entry.js +3 -3
  796. package/dist/esm/dso-map-controls.entry.js.map +1 -1
  797. package/dist/esm/dso-map-overlays.entry.js +4 -4
  798. package/dist/esm/dso-map-overlays.entry.js.map +1 -1
  799. package/dist/esm/dso-mark-bar.entry.js +2 -2
  800. package/dist/esm/dso-mark-bar.entry.js.map +1 -1
  801. package/dist/esm/dso-modal.entry.js +4 -4
  802. package/dist/esm/dso-modal.entry.js.map +1 -1
  803. package/dist/esm/dso-onboarding-tip.entry.js +4 -4
  804. package/dist/esm/dso-onboarding-tip.entry.js.map +1 -1
  805. package/dist/esm/dso-pagination.entry.js +1 -1
  806. package/dist/esm/dso-pagination.entry.js.map +1 -1
  807. package/dist/esm/dso-plekinfo-card.entry.js +2 -2
  808. package/dist/esm/dso-plekinfo-card.entry.js.map +1 -1
  809. package/dist/esm/dso-progress-indicator.entry.js +2 -2
  810. package/dist/esm/dso-progress-indicator.entry.js.map +1 -1
  811. package/dist/esm/dso-project-item.entry.js +1 -1
  812. package/dist/esm/dso-responsive-element.entry.js +1 -1
  813. package/dist/esm/dso-scrollable.entry.js +3 -4
  814. package/dist/esm/dso-scrollable.entry.js.map +1 -1
  815. package/dist/esm/dso-skiplink.entry.js +2 -2
  816. package/dist/esm/dso-skiplink.entry.js.map +1 -1
  817. package/dist/esm/dso-survey-rating.entry.js +3 -3
  818. package/dist/esm/dso-survey-rating.entry.js.map +1 -1
  819. package/dist/esm/dso-tabs.entry.js +1 -1
  820. package/dist/esm/dso-tijdreis-banner.entry.js +2 -2
  821. package/dist/esm/dso-tijdreis-banner.entry.js.map +1 -1
  822. package/dist/esm/dso-toggletip.entry.js +1 -1
  823. package/dist/esm/dso-toolkit.js +1 -1
  824. package/dist/esm/dso-tooltip.entry.js +3 -4
  825. package/dist/esm/dso-tooltip.entry.js.map +1 -1
  826. package/dist/esm/dso-tree-view.entry.js +3 -3
  827. package/dist/esm/dso-tree-view.entry.js.map +1 -1
  828. package/dist/esm/dso-viewer-grid.entry.js +3 -4
  829. package/dist/esm/dso-viewer-grid.entry.js.map +1 -1
  830. package/dist/esm/dsot-document-component-demo.entry.js +1 -1
  831. package/dist/{bundle/p-gdsca1fx.js → esm/floating-ui.dom-_RZbmuMU.js} +70 -41
  832. package/dist/esm/floating-ui.dom-_RZbmuMU.js.map +1 -0
  833. package/dist/esm/{focus-trap.esm-THfp668w.js → focus-trap.esm-fQH2SrJA.js} +26 -26
  834. package/dist/esm/focus-trap.esm-fQH2SrJA.js.map +1 -0
  835. package/dist/esm/{i18n-B_kXuEcW.js → i18n-C0ZvZbHD.js} +71 -20
  836. package/dist/esm/i18n-C0ZvZbHD.js.map +1 -0
  837. package/dist/esm/index-baWVwd8J.js +109 -0
  838. package/dist/esm/index-baWVwd8J.js.map +1 -0
  839. package/dist/{bundle/p-Pk8qng7t.js → esm/index.esm-DDSMs62-.js} +45 -20
  840. package/dist/esm/index.esm-DDSMs62-.js.map +1 -0
  841. package/dist/esm/loader.js +1 -1
  842. package/dist/esm/{position-tooltip.function-CozxeEX7.js → position-tooltip.function-C5-1llBb.js} +3 -3
  843. package/dist/esm/{position-tooltip.function-CozxeEX7.js.map → position-tooltip.function-C5-1llBb.js.map} +1 -1
  844. package/dist/esm/tooltip.functional-component-B6RTdaZw.js.map +1 -1
  845. package/dist/esm/{v4-BF0_OXTe.js → v4-C_akviUd.js} +9 -6
  846. package/dist/esm/v4-C_akviUd.js.map +1 -0
  847. package/dist/types/components/annotation/annotation-body.d.ts +1 -1
  848. package/dist/types/components/document-component/document-component.d.ts +2 -1
  849. package/dist/types/components/icon-button/icon-button.d.ts +2 -0
  850. package/dist/types/components/ozon-content/ozon-content.d.ts +2 -1
  851. package/dist/types/components/ozon-content/ozon-content.interfaces.d.ts +3 -3
  852. package/dist/types/components.d.ts +4 -47
  853. package/package.json +21 -21
  854. package/dist/bundle/dso-progress-bar.d.ts +0 -11
  855. package/dist/bundle/dso-progress-bar.js +0 -50
  856. package/dist/bundle/dso-progress-bar.js.map +0 -1
  857. package/dist/bundle/p-BDuXq5bx.js +0 -169
  858. package/dist/bundle/p-BDuXq5bx.js.map +0 -1
  859. package/dist/bundle/p-BF0_OXTe.js.map +0 -1
  860. package/dist/bundle/p-BJ43Q58h.js +0 -116
  861. package/dist/bundle/p-BJ43Q58h.js.map +0 -1
  862. package/dist/bundle/p-B_kXuEcW.js.map +0 -1
  863. package/dist/bundle/p-BocpUT46.js.map +0 -1
  864. package/dist/bundle/p-Bv7dmPUW.js +0 -36
  865. package/dist/bundle/p-BxvZeNWe.js +0 -126
  866. package/dist/bundle/p-BxvZeNWe.js.map +0 -1
  867. package/dist/bundle/p-C8fuhhYl.js.map +0 -1
  868. package/dist/bundle/p-D1M1qAkT.js.map +0 -1
  869. package/dist/bundle/p-D_6TKRgI.js +0 -84
  870. package/dist/bundle/p-DbaZzGS_.js.map +0 -1
  871. package/dist/bundle/p-DpzeiE9g.js.map +0 -1
  872. package/dist/bundle/p-Pk8qng7t.js.map +0 -1
  873. package/dist/bundle/p-fTG2YwZq.js +0 -49
  874. package/dist/bundle/p-gdsca1fx.js.map +0 -1
  875. package/dist/cjs/dso-progress-bar.cjs.entry.js +0 -30
  876. package/dist/cjs/dso-progress-bar.cjs.entry.js.map +0 -1
  877. package/dist/cjs/dso-progress-bar.entry.cjs.js.map +0 -1
  878. package/dist/cjs/floating-ui.dom-uZgU2YQo.js.map +0 -1
  879. package/dist/cjs/focus-trap.esm-c-Aj_u8L.js.map +0 -1
  880. package/dist/cjs/i18n-yRiEgk_k.js.map +0 -1
  881. package/dist/cjs/index-D8QM7CRO.js +0 -124
  882. package/dist/cjs/index-D8QM7CRO.js.map +0 -1
  883. package/dist/cjs/index.esm-DtPCE30D.js.map +0 -1
  884. package/dist/cjs/v4-Br3XC_0C.js.map +0 -1
  885. package/dist/collection/components/progress-bar/progress-bar.css +0 -40
  886. package/dist/collection/components/progress-bar/progress-bar.js +0 -94
  887. package/dist/collection/components/progress-bar/progress-bar.js.map +0 -1
  888. package/dist/components/dso-progress-bar.d.ts +0 -11
  889. package/dist/components/dso-progress-bar.js +0 -50
  890. package/dist/components/dso-progress-bar.js.map +0 -1
  891. package/dist/dso-toolkit/dso-progress-bar.entry.esm.js.map +0 -1
  892. package/dist/dso-toolkit/p-004b02b7.entry.js +0 -2
  893. package/dist/dso-toolkit/p-004b02b7.entry.js.map +0 -1
  894. package/dist/dso-toolkit/p-07220932.entry.js +0 -2
  895. package/dist/dso-toolkit/p-0a496a26.entry.js +0 -2
  896. package/dist/dso-toolkit/p-0f9f5005.entry.js +0 -2
  897. package/dist/dso-toolkit/p-1c1ace73.entry.js +0 -2
  898. package/dist/dso-toolkit/p-1c1ace73.entry.js.map +0 -1
  899. package/dist/dso-toolkit/p-24bd7e04.entry.js +0 -2
  900. package/dist/dso-toolkit/p-24bd7e04.entry.js.map +0 -1
  901. package/dist/dso-toolkit/p-2787bc48.entry.js +0 -2
  902. package/dist/dso-toolkit/p-27eac763.entry.js +0 -2
  903. package/dist/dso-toolkit/p-27eac763.entry.js.map +0 -1
  904. package/dist/dso-toolkit/p-2d35ce14.entry.js +0 -2
  905. package/dist/dso-toolkit/p-2d35ce14.entry.js.map +0 -1
  906. package/dist/dso-toolkit/p-32b64025.entry.js +0 -2
  907. package/dist/dso-toolkit/p-32b64025.entry.js.map +0 -1
  908. package/dist/dso-toolkit/p-3bc30158.entry.js +0 -2
  909. package/dist/dso-toolkit/p-4341eaab.entry.js +0 -2
  910. package/dist/dso-toolkit/p-4a07fb41.entry.js +0 -2
  911. package/dist/dso-toolkit/p-4bd397cb.entry.js +0 -2
  912. package/dist/dso-toolkit/p-556f5935.entry.js +0 -2
  913. package/dist/dso-toolkit/p-573b9046.entry.js +0 -2
  914. package/dist/dso-toolkit/p-5a7ce367.entry.js +0 -2
  915. package/dist/dso-toolkit/p-6215779a.entry.js +0 -2
  916. package/dist/dso-toolkit/p-6215779a.entry.js.map +0 -1
  917. package/dist/dso-toolkit/p-663fb2ee.entry.js +0 -2
  918. package/dist/dso-toolkit/p-663fb2ee.entry.js.map +0 -1
  919. package/dist/dso-toolkit/p-6a578760.entry.js.map +0 -1
  920. package/dist/dso-toolkit/p-76f0c45e.entry.js.map +0 -1
  921. package/dist/dso-toolkit/p-798a1b91.entry.js +0 -2
  922. package/dist/dso-toolkit/p-798a1b91.entry.js.map +0 -1
  923. package/dist/dso-toolkit/p-7b279318.entry.js +0 -2
  924. package/dist/dso-toolkit/p-83448a26.entry.js +0 -2
  925. package/dist/dso-toolkit/p-83448a26.entry.js.map +0 -1
  926. package/dist/dso-toolkit/p-847af791.entry.js +0 -2
  927. package/dist/dso-toolkit/p-9232e376.entry.js +0 -2
  928. package/dist/dso-toolkit/p-9b37f2a1.entry.js +0 -2
  929. package/dist/dso-toolkit/p-BF0_OXTe.js.map +0 -1
  930. package/dist/dso-toolkit/p-B_kXuEcW.js +0 -2
  931. package/dist/dso-toolkit/p-B_kXuEcW.js.map +0 -1
  932. package/dist/dso-toolkit/p-BocpUT46.js +0 -6
  933. package/dist/dso-toolkit/p-BocpUT46.js.map +0 -1
  934. package/dist/dso-toolkit/p-DDU8nTJS.js +0 -2
  935. package/dist/dso-toolkit/p-DDU8nTJS.js.map +0 -1
  936. package/dist/dso-toolkit/p-Pk8qng7t.js +0 -6
  937. package/dist/dso-toolkit/p-Pk8qng7t.js.map +0 -1
  938. package/dist/dso-toolkit/p-a2d60908.entry.js +0 -2
  939. package/dist/dso-toolkit/p-a2d60908.entry.js.map +0 -1
  940. package/dist/dso-toolkit/p-a61e4944.entry.js +0 -2
  941. package/dist/dso-toolkit/p-acdbeafd.entry.js +0 -2
  942. package/dist/dso-toolkit/p-acdbeafd.entry.js.map +0 -1
  943. package/dist/dso-toolkit/p-b12a966f.entry.js +0 -2
  944. package/dist/dso-toolkit/p-b3f2cf42.entry.js +0 -2
  945. package/dist/dso-toolkit/p-b52165a0.entry.js +0 -2
  946. package/dist/dso-toolkit/p-bea9eb4c.entry.js +0 -2
  947. package/dist/dso-toolkit/p-c0bb872c.entry.js +0 -2
  948. package/dist/dso-toolkit/p-c8def649.entry.js +0 -2
  949. package/dist/dso-toolkit/p-d84f1295.entry.js +0 -2
  950. package/dist/dso-toolkit/p-d84f1295.entry.js.map +0 -1
  951. package/dist/dso-toolkit/p-da3c8097.entry.js +0 -2
  952. package/dist/dso-toolkit/p-e5f7cfd3.entry.js.map +0 -1
  953. package/dist/dso-toolkit/p-f07bf097.entry.js +0 -2
  954. package/dist/dso-toolkit/p-f07bf097.entry.js.map +0 -1
  955. package/dist/dso-toolkit/p-gdsca1fx.js +0 -2
  956. package/dist/dso-toolkit/p-gdsca1fx.js.map +0 -1
  957. package/dist/esm/dso-progress-bar.entry.js +0 -28
  958. package/dist/esm/dso-progress-bar.entry.js.map +0 -1
  959. package/dist/esm/floating-ui.dom-gdsca1fx.js.map +0 -1
  960. package/dist/esm/focus-trap.esm-THfp668w.js.map +0 -1
  961. package/dist/esm/i18n-B_kXuEcW.js.map +0 -1
  962. package/dist/esm/index-CoMRvcY0.js +0 -122
  963. package/dist/esm/index-CoMRvcY0.js.map +0 -1
  964. package/dist/esm/index.esm-Pk8qng7t.js.map +0 -1
  965. package/dist/esm/v4-BF0_OXTe.js.map +0 -1
  966. package/dist/types/components/progress-bar/progress-bar.d.ts +0 -15
  967. /package/dist/dso-toolkit/{p-9d79a107.entry.js.map → p-088622a3.entry.js.map} +0 -0
  968. /package/dist/dso-toolkit/{p-05275c43.entry.js.map → p-13140af9.entry.js.map} +0 -0
  969. /package/dist/dso-toolkit/{p-7883dfda.entry.js.map → p-242e14d4.entry.js.map} +0 -0
  970. /package/dist/dso-toolkit/{p-19019f3b.entry.js.map → p-4fb7266b.entry.js.map} +0 -0
  971. /package/dist/dso-toolkit/{p-80e3a910.entry.js.map → p-64d2bb0b.entry.js.map} +0 -0
  972. /package/dist/dso-toolkit/{p-7fed0288.entry.js.map → p-748c3876.entry.js.map} +0 -0
  973. /package/dist/dso-toolkit/{p-4593ea95.entry.js.map → p-7e6a09af.entry.js.map} +0 -0
  974. /package/dist/dso-toolkit/{p-fbd357bb.entry.js.map → p-b4664091.entry.js.map} +0 -0
  975. /package/dist/dso-toolkit/{p-eceff1ea.entry.js.map → p-c2e05c9e.entry.js.map} +0 -0
  976. /package/dist/dso-toolkit/{p-da3c8097.entry.js.map → p-c9c8b0b8.entry.js.map} +0 -0
  977. /package/dist/dso-toolkit/{p-aa1b8321.entry.js.map → p-cde53355.entry.js.map} +0 -0
  978. /package/dist/dso-toolkit/{p-4a4f56ed.entry.js.map → p-d0252763.entry.js.map} +0 -0
  979. /package/dist/dso-toolkit/{p-a96fc5f8.entry.js.map → p-e5dc4512.entry.js.map} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"dso-map-controls.entry.esm.js","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 <Fragment>\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 </Fragment>\r\n );\r\n }\r\n}\r\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dso-map-controls.entry.esm.js","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 <Fragment>\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 </Fragment>\r\n );\r\n }\r\n}\r\n"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"dso-map-overlays.entry.esm.js","sources":["src/components/map-overlays/map-overlays.i18n.ts","src/components/map-overlays/map-overlays.scss?tag=dso-map-overlays&encapsulation=shadow","src/components/map-overlays/map-overlays.tsx"],"sourcesContent":["import { Resource } from \"../../utils/i18n\";\r\n\r\nexport const translations: Resource = {\r\n en: {\r\n \"dso-map-overlays\": {\r\n title: \"Maplayers\",\r\n },\r\n },\r\n nl: {\r\n \"dso-map-overlays\": {\r\n title: \"Kaartlagen\",\r\n },\r\n },\r\n};\r\n","@use \"~dso-toolkit/src/utilities\";\r\n@use \"~dso-toolkit/src/variables/units\";\r\n\r\n:host {\r\n display: 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\n// Todo #1194\r\nfieldset {\r\n border: 0;\r\n margin: 0;\r\n min-inline-size: 0;\r\n padding: 0;\r\n\r\n .control-label {\r\n display: inline-block;\r\n font-weight: bold;\r\n margin-block-end: units.$u1;\r\n max-inline-size: 100%;\r\n text-align: start;\r\n }\r\n}\r\n\r\np[slot=\"info\"] {\r\n margin: 0;\r\n}\r\n","import { Component, ComponentInterface, Element, Event, EventEmitter, Prop, h } from \"@stencil/core\";\r\nimport { v4 as uuidv4 } from \"uuid\";\r\n\r\nimport { i18n } from \"../../utils/i18n\";\r\nimport { SelectableChangeEvent } from \"../selectable/selectable.interfaces\";\r\n\r\nimport { translations } from \"./map-overlays.i18n\";\r\nimport { Overlay, OverlayChangeEvent } from \"./map-overlays.interfaces\";\r\n\r\n@Component({\r\n tag: \"dso-map-overlays\",\r\n styleUrl: \"./map-overlays.scss\",\r\n shadow: true,\r\n})\r\nexport class MapOverlays implements ComponentInterface {\r\n private previousOverlays: Overlay[] | undefined;\r\n private selectableRefs: { [id: number]: HTMLDsoSelectableElement } = {};\r\n\r\n @Element()\r\n host!: HTMLDsoMapOverlaysElement;\r\n\r\n /**\r\n * To group the overlays together. Generally the default value suffices.\r\n */\r\n @Prop()\r\n group = uuidv4();\r\n\r\n /**\r\n * The overlays.\r\n */\r\n @Prop()\r\n overlays!: Overlay[];\r\n\r\n /**\r\n * Emitted when the user selects a different overlay.\r\n */\r\n @Event()\r\n dsoToggleOverlay!: EventEmitter<OverlayChangeEvent>;\r\n\r\n private overlayChangeHandler(overlay: Overlay, e: CustomEvent<SelectableChangeEvent>) {\r\n const { checked } = e.detail;\r\n\r\n this.dsoToggleOverlay.emit({ overlay, checked });\r\n }\r\n\r\n private text = i18n(() => this.host, translations);\r\n\r\n componentDidRender() {\r\n this.overlays\r\n .filter((o) => !o.disabled && this.previousOverlays?.find((p) => p.id === o.id)?.disabled === true)\r\n .forEach((o) => {\r\n this.selectableRefs[o.id]?.toggleInfo(false);\r\n });\r\n\r\n this.previousOverlays = this.overlays;\r\n }\r\n\r\n render() {\r\n for (const ref in this.selectableRefs) {\r\n delete this.selectableRefs[ref];\r\n }\r\n\r\n return (\r\n <fieldset class=\"form-group dso-checkboxes\">\r\n <legend class=\"sr-only\">Kaartlagen</legend>\r\n <div class=\"dso-label-container\">\r\n <span class=\"control-label\" aria-hidden=\"true\">\r\n {this.text(\"title\")}\r\n </span>\r\n </div>\r\n <div class=\"dso-field-container\">\r\n {this.overlays.map((overlay) => (\r\n <dso-selectable\r\n key={overlay.id}\r\n type=\"checkbox\"\r\n value={overlay.name}\r\n checked={overlay.checked}\r\n disabled={overlay.disabled}\r\n name={this.group}\r\n ref={(ref) => ref && (this.selectableRefs[overlay.id] = ref)}\r\n onDsoChange={(e) => this.overlayChangeHandler(overlay, e)}\r\n >\r\n {overlay.name}\r\n {overlay.info ? <p slot=\"info\">{overlay.info}</p> : null}\r\n </dso-selectable>\r\n ))}\r\n </div>\r\n </fieldset>\r\n );\r\n }\r\n}\r\n"],"names":["uuidv4"],"mappings":"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"}
1
+ {"version":3,"file":"dso-map-overlays.entry.esm.js","sources":["src/components/map-overlays/map-overlays.i18n.ts","src/components/map-overlays/map-overlays.scss?tag=dso-map-overlays&encapsulation=shadow","src/components/map-overlays/map-overlays.tsx"],"sourcesContent":["import { Resource } from \"../../utils/i18n\";\r\n\r\nexport const translations: Resource = {\r\n en: {\r\n \"dso-map-overlays\": {\r\n title: \"Maplayers\",\r\n },\r\n },\r\n nl: {\r\n \"dso-map-overlays\": {\r\n title: \"Kaartlagen\",\r\n },\r\n },\r\n};\r\n","@use \"~dso-toolkit/src/utilities\";\r\n@use \"~dso-toolkit/src/variables/units\";\r\n\r\n:host {\r\n display: 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\n// Todo #1194\r\nfieldset {\r\n border: 0;\r\n margin: 0;\r\n min-inline-size: 0;\r\n padding: 0;\r\n\r\n .control-label {\r\n display: inline-block;\r\n font-weight: bold;\r\n margin-block-end: units.$u1;\r\n max-inline-size: 100%;\r\n text-align: start;\r\n }\r\n}\r\n\r\np[slot=\"info\"] {\r\n margin: 0;\r\n}\r\n","import { Component, ComponentInterface, Element, Event, EventEmitter, Prop, h } from \"@stencil/core\";\r\nimport { v4 as uuidv4 } from \"uuid\";\r\n\r\nimport { i18n } from \"../../utils/i18n\";\r\nimport { SelectableChangeEvent } from \"../selectable/selectable.interfaces\";\r\n\r\nimport { translations } from \"./map-overlays.i18n\";\r\nimport { Overlay, OverlayChangeEvent } from \"./map-overlays.interfaces\";\r\n\r\n@Component({\r\n tag: \"dso-map-overlays\",\r\n styleUrl: \"./map-overlays.scss\",\r\n shadow: true,\r\n})\r\nexport class MapOverlays implements ComponentInterface {\r\n private previousOverlays: Overlay[] | undefined;\r\n private selectableRefs: { [id: number]: HTMLDsoSelectableElement } = {};\r\n\r\n @Element()\r\n host!: HTMLDsoMapOverlaysElement;\r\n\r\n /**\r\n * To group the overlays together. Generally the default value suffices.\r\n */\r\n @Prop()\r\n group = uuidv4();\r\n\r\n /**\r\n * The overlays.\r\n */\r\n @Prop()\r\n overlays!: Overlay[];\r\n\r\n /**\r\n * Emitted when the user selects a different overlay.\r\n */\r\n @Event()\r\n dsoToggleOverlay!: EventEmitter<OverlayChangeEvent>;\r\n\r\n private overlayChangeHandler(overlay: Overlay, e: CustomEvent<SelectableChangeEvent>) {\r\n const { checked } = e.detail;\r\n\r\n this.dsoToggleOverlay.emit({ overlay, checked });\r\n }\r\n\r\n private text = i18n(() => this.host, translations);\r\n\r\n componentDidRender() {\r\n this.overlays\r\n .filter((o) => !o.disabled && this.previousOverlays?.find((p) => p.id === o.id)?.disabled === true)\r\n .forEach((o) => {\r\n this.selectableRefs[o.id]?.toggleInfo(false);\r\n });\r\n\r\n this.previousOverlays = this.overlays;\r\n }\r\n\r\n render() {\r\n for (const ref in this.selectableRefs) {\r\n delete this.selectableRefs[ref];\r\n }\r\n\r\n return (\r\n <fieldset class=\"form-group dso-checkboxes\">\r\n <legend class=\"sr-only\">Kaartlagen</legend>\r\n <div class=\"dso-label-container\">\r\n <span class=\"control-label\" aria-hidden=\"true\">\r\n {this.text(\"title\")}\r\n </span>\r\n </div>\r\n <div class=\"dso-field-container\">\r\n {this.overlays.map((overlay) => (\r\n <dso-selectable\r\n key={overlay.id}\r\n type=\"checkbox\"\r\n value={overlay.name}\r\n checked={overlay.checked}\r\n disabled={overlay.disabled}\r\n name={this.group}\r\n ref={(ref) => ref && (this.selectableRefs[overlay.id] = ref)}\r\n onDsoChange={(e) => this.overlayChangeHandler(overlay, e)}\r\n >\r\n {overlay.name}\r\n {overlay.info ? <p slot=\"info\">{overlay.info}</p> : null}\r\n </dso-selectable>\r\n ))}\r\n </div>\r\n </fieldset>\r\n );\r\n }\r\n}\r\n"],"names":["uuidv4"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"dso-mark-bar.entry.esm.js","sources":["src/components/mark-bar/mark-bar.scss?tag=dso-mark-bar&encapsulation=shadow","src/components/mark-bar/mark-bar.tsx"],"sourcesContent":["@use \"~dso-toolkit/src/variables/units\";\r\n@use \"~dso-toolkit/src/variables/colors\";\r\n@use \"~dso-toolkit/src/variables/zindex\";\r\n@use \"~dso-toolkit/src/utilities\";\r\n@use \"~dso-toolkit/src/variables/scaffolding\";\r\n@use \"~dso-toolkit/src/variables/typography\";\r\n@use \"~dso-toolkit/src/components/form-control\";\r\n\r\n@include utilities.box-sizing();\r\n\r\n:host {\r\n display: block;\r\n background-color: colors.$wit;\r\n}\r\n\r\n.sr-only {\r\n @include utilities.sr-only();\r\n}\r\n\r\n$block-size: units.$ru5;\r\n$focus-border-width: 1px;\r\n\r\n.dso-mark-bar {\r\n display: flex;\r\n flex-grow: 1;\r\n\r\n .dso-mark-bar-input {\r\n display: flex;\r\n position: relative;\r\n inline-size: 100%;\r\n\r\n input {\r\n background-color: transparent;\r\n background-image: none;\r\n border: 1px solid form-control.$focus-border-color;\r\n border-radius: 4px;\r\n box-shadow: none;\r\n display: block;\r\n font-size: typography.$root-font-size-base;\r\n block-size: $block-size;\r\n line-height: $block-size;\r\n padding-inline: $block-size;\r\n padding-block: 6px;\r\n transition:\r\n border-color ease-in-out 0.15s,\r\n box-shadow ease-in-out 0.15s;\r\n inline-size: 100%;\r\n border-start-end-radius: 0;\r\n border-end-end-radius: 0;\r\n border-inline-end: 0;\r\n\r\n &:focus {\r\n border-color: form-control.$focus-border-color;\r\n box-shadow: inset 0 0 0 form-control.$focus-border-width form-control.$focus-border-color;\r\n outline: 0;\r\n }\r\n\r\n &::-ms-clear {\r\n display: none;\r\n }\r\n\r\n &:not(:placeholder-shown) + label {\r\n inline-size: $block-size;\r\n padding-inline-end: units.$u1;\r\n\r\n .label-text {\r\n @include utilities.sr-only();\r\n }\r\n }\r\n }\r\n\r\n label {\r\n inset-block-end: units.$u1;\r\n block-size: $block-size;\r\n inset-inline-start: 0;\r\n inset-inline-end: units.$u5;\r\n padding-block: units.$u1;\r\n padding-inline-start: units.$u1;\r\n cursor: text;\r\n position: absolute;\r\n inset-block-start: 0;\r\n overflow: hidden;\r\n /* stylelint-disable declaration-property-value-disallowed-list -- The following properties are needed to emulate the browser native placeholder attribute behavior */\r\n white-space: nowrap;\r\n text-overflow: ellipsis;\r\n /* stylelint-enable-next-line declaration-property-value-disallowed-list */\r\n\r\n dso-icon {\r\n color: colors.$grasgroen;\r\n cursor: default;\r\n margin: -8px;\r\n padding: 8px;\r\n inline-size: $block-size;\r\n block-size: $block-size;\r\n }\r\n\r\n .label-text {\r\n margin-inline-start: units.$u1;\r\n color: colors.$grijs-60;\r\n }\r\n }\r\n\r\n dso-icon-button {\r\n position: absolute;\r\n inset-inline-end: units.$u1;\r\n inset-block-start: units.$u1;\r\n }\r\n }\r\n}\r\n\r\n.dso-button-container {\r\n position: relative;\r\n\r\n display: flex;\r\n align-items: center;\r\n gap: units.$u1;\r\n flex-shrink: 0;\r\n\r\n padding-inline: units.$u1;\r\n\r\n border: 1px solid colors.$bosgroen;\r\n border-inline-start: 0;\r\n border-start-end-radius: scaffolding.$border-radius-base;\r\n border-end-end-radius: scaffolding.$border-radius-base;\r\n\r\n dso-icon-button {\r\n --dso-icon-button-tertiary-border: 0;\r\n cursor: pointer;\r\n\r\n &:disabled {\r\n color: colors.$grijs-20;\r\n cursor: default;\r\n }\r\n }\r\n\r\n .divider {\r\n position: absolute;\r\n inset-inline-start: 0;\r\n inset-block-start: units.$u1;\r\n inset-block-end: units.$u1;\r\n\r\n inline-size: 1px;\r\n\r\n background-color: colors.$grijs-20;\r\n }\r\n}\r\n","import { Component, ComponentInterface, Event, EventEmitter, Method, Prop, h } from \"@stencil/core\";\r\n\r\nimport {\r\n MarkBarClearEvent,\r\n MarkBarFocusOptions,\r\n MarkBarInputEvent,\r\n MarkBarPaginationEvent,\r\n} from \"./mark-bar.interfaces\";\r\n\r\n@Component({\r\n tag: \"dso-mark-bar\",\r\n styleUrl: \"./mark-bar.scss\",\r\n shadow: true,\r\n})\r\nexport class MarkBar implements ComponentInterface {\r\n /**\r\n * The current search value.\r\n */\r\n @Prop()\r\n value?: string;\r\n\r\n /**\r\n * The label for the input field.\r\n */\r\n @Prop()\r\n label = \"Zoeken in document\";\r\n\r\n /**\r\n * The current (one-based) highlighted search item.\r\n */\r\n @Prop()\r\n current?: number;\r\n\r\n /**\r\n * Total number of search results.\r\n */\r\n @Prop()\r\n totalCount?: number;\r\n\r\n /**\r\n * Focuses the input field.\r\n */\r\n @Method()\r\n async dsoFocus(options: MarkBarFocusOptions = {}) {\r\n this.inputElement?.focus();\r\n\r\n if (options.select) {\r\n this.inputElement?.select();\r\n }\r\n }\r\n\r\n /**\r\n * Emitted each time the user types in the search field.\r\n */\r\n @Event({ bubbles: false })\r\n dsoInput!: EventEmitter<MarkBarInputEvent>;\r\n\r\n /**\r\n * Emitted when user activates \"next search result\" button.\r\n */\r\n @Event({ bubbles: false })\r\n dsoNext!: EventEmitter<MarkBarPaginationEvent>;\r\n\r\n /**\r\n * Emitted when user activates \"previous search result\" button.\r\n */\r\n @Event({ bubbles: false })\r\n dsoPrevious!: EventEmitter<MarkBarPaginationEvent>;\r\n\r\n /**\r\n * Emitted when user activates \"clear search result\" button.\r\n */\r\n @Event({ bubbles: false })\r\n dsoClear!: EventEmitter<MarkBarClearEvent>;\r\n\r\n private inputElement?: HTMLInputElement;\r\n\r\n private handleInput = (e: Event) => {\r\n if (!(e.target instanceof HTMLInputElement)) {\r\n return;\r\n }\r\n\r\n this.dsoInput.emit({\r\n originalEvent: e,\r\n value: e.target.value,\r\n });\r\n };\r\n\r\n private handleNext = (originalEvent: MouseEvent | KeyboardEvent) => {\r\n this.dsoNext.emit({ originalEvent });\r\n };\r\n\r\n private handlePrevious = (originalEvent: MouseEvent) => {\r\n this.dsoPrevious.emit({ originalEvent });\r\n };\r\n\r\n private handleClear = (originalEvent: MouseEvent) => {\r\n this.dsoClear.emit({ originalEvent });\r\n };\r\n\r\n private handleKeyDown = (e: KeyboardEvent) => {\r\n if (e.key === \"Enter\") {\r\n this.handleNext(e);\r\n }\r\n };\r\n\r\n render() {\r\n const current = this.current || 0;\r\n const totalCount = this.totalCount || 0;\r\n\r\n return (\r\n <div class=\"dso-mark-bar\">\r\n <div class=\"dso-mark-bar-input\">\r\n <input\r\n type=\"text\"\r\n id=\"search-input\"\r\n value={this.value}\r\n onInput={this.handleInput}\r\n onKeyDown={this.handleKeyDown}\r\n placeholder=\" \"\r\n ref={(element) => (this.inputElement = element)}\r\n />\r\n <label htmlFor=\"search-input\">\r\n <dso-icon class=\"dso-search-icon\" icon=\"search\"></dso-icon>\r\n <span class=\"label-text\">{this.label}</span>\r\n </label>\r\n <dso-icon-button\r\n icon=\"times\"\r\n variant=\"tertiary\"\r\n label=\"Zoekopdracht legen\"\r\n onDsoClick={(e) => this.handleClear(e.detail.originalEvent)}\r\n />\r\n </div>\r\n <div class=\"dso-button-container\">\r\n <span class=\"divider\" />\r\n <dso-icon-button\r\n icon=\"chevron-up\"\r\n variant=\"tertiary\"\r\n label=\"Vorig zoekresultaat\"\r\n onDsoClick={(e) => this.handlePrevious(e.detail.originalEvent)}\r\n disabled={current <= 1}\r\n />\r\n <span>\r\n {current}/{totalCount}\r\n </span>\r\n <dso-icon-button\r\n icon=\"chevron-down\"\r\n variant=\"tertiary\"\r\n label=\"Volgend zoekresultaat\"\r\n onDsoClick={(e) => this.handleNext(e.detail.originalEvent)}\r\n disabled={current >= totalCount}\r\n />\r\n </div>\r\n </div>\r\n );\r\n }\r\n}\r\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dso-mark-bar.entry.esm.js","sources":["src/components/mark-bar/mark-bar.scss?tag=dso-mark-bar&encapsulation=shadow","src/components/mark-bar/mark-bar.tsx"],"sourcesContent":["@use \"~dso-toolkit/src/variables/units\";\r\n@use \"~dso-toolkit/src/variables/colors\";\r\n@use \"~dso-toolkit/src/variables/zindex\";\r\n@use \"~dso-toolkit/src/utilities\";\r\n@use \"~dso-toolkit/src/variables/scaffolding\";\r\n@use \"~dso-toolkit/src/variables/typography\";\r\n@use \"~dso-toolkit/src/components/form-control\";\r\n\r\n@include utilities.box-sizing();\r\n\r\n:host {\r\n display: block;\r\n background-color: colors.$wit;\r\n}\r\n\r\n.sr-only {\r\n @include utilities.sr-only();\r\n}\r\n\r\n$block-size: units.$ru5;\r\n$focus-border-width: 1px;\r\n\r\n.dso-mark-bar {\r\n display: flex;\r\n flex-grow: 1;\r\n\r\n .dso-mark-bar-input {\r\n display: flex;\r\n position: relative;\r\n inline-size: 100%;\r\n\r\n input {\r\n background-color: transparent;\r\n background-image: none;\r\n border: 1px solid form-control.$focus-border-color;\r\n border-radius: 4px;\r\n box-shadow: none;\r\n display: block;\r\n font-size: typography.$root-font-size-base;\r\n block-size: $block-size;\r\n line-height: $block-size;\r\n padding-inline: $block-size;\r\n padding-block: 6px;\r\n transition:\r\n border-color ease-in-out 0.15s,\r\n box-shadow ease-in-out 0.15s;\r\n inline-size: 100%;\r\n border-start-end-radius: 0;\r\n border-end-end-radius: 0;\r\n border-inline-end: 0;\r\n\r\n &:focus {\r\n border-color: form-control.$focus-border-color;\r\n box-shadow: inset 0 0 0 form-control.$focus-border-width form-control.$focus-border-color;\r\n outline: 0;\r\n }\r\n\r\n &::-ms-clear {\r\n display: none;\r\n }\r\n\r\n &:not(:placeholder-shown) + label {\r\n inline-size: $block-size;\r\n padding-inline-end: units.$u1;\r\n\r\n .label-text {\r\n @include utilities.sr-only();\r\n }\r\n }\r\n }\r\n\r\n label {\r\n inset-block-end: units.$u1;\r\n block-size: $block-size;\r\n inset-inline-start: 0;\r\n inset-inline-end: units.$u5;\r\n padding-block: units.$u1;\r\n padding-inline-start: units.$u1;\r\n cursor: text;\r\n position: absolute;\r\n inset-block-start: 0;\r\n overflow: hidden;\r\n /* stylelint-disable declaration-property-value-disallowed-list -- The following properties are needed to emulate the browser native placeholder attribute behavior */\r\n white-space: nowrap;\r\n text-overflow: ellipsis;\r\n /* stylelint-enable-next-line declaration-property-value-disallowed-list */\r\n\r\n dso-icon {\r\n color: colors.$grasgroen;\r\n cursor: default;\r\n margin: -8px;\r\n padding: 8px;\r\n inline-size: $block-size;\r\n block-size: $block-size;\r\n }\r\n\r\n .label-text {\r\n margin-inline-start: units.$u1;\r\n color: colors.$grijs-60;\r\n }\r\n }\r\n\r\n dso-icon-button {\r\n position: absolute;\r\n inset-inline-end: units.$u1;\r\n inset-block-start: units.$u1;\r\n }\r\n }\r\n}\r\n\r\n.dso-button-container {\r\n position: relative;\r\n\r\n display: flex;\r\n align-items: center;\r\n gap: units.$u1;\r\n flex-shrink: 0;\r\n\r\n padding-inline: units.$u1;\r\n\r\n border: 1px solid colors.$bosgroen;\r\n border-inline-start: 0;\r\n border-start-end-radius: scaffolding.$border-radius-base;\r\n border-end-end-radius: scaffolding.$border-radius-base;\r\n\r\n dso-icon-button {\r\n --dso-icon-button-tertiary-border: 0;\r\n cursor: pointer;\r\n\r\n &:disabled {\r\n color: colors.$grijs-20;\r\n cursor: default;\r\n }\r\n }\r\n\r\n .divider {\r\n position: absolute;\r\n inset-inline-start: 0;\r\n inset-block-start: units.$u1;\r\n inset-block-end: units.$u1;\r\n\r\n inline-size: 1px;\r\n\r\n background-color: colors.$grijs-20;\r\n }\r\n}\r\n","import { Component, ComponentInterface, Event, EventEmitter, Method, Prop, h } from \"@stencil/core\";\r\n\r\nimport {\r\n MarkBarClearEvent,\r\n MarkBarFocusOptions,\r\n MarkBarInputEvent,\r\n MarkBarPaginationEvent,\r\n} from \"./mark-bar.interfaces\";\r\n\r\n@Component({\r\n tag: \"dso-mark-bar\",\r\n styleUrl: \"./mark-bar.scss\",\r\n shadow: true,\r\n})\r\nexport class MarkBar implements ComponentInterface {\r\n /**\r\n * The current search value.\r\n */\r\n @Prop()\r\n value?: string;\r\n\r\n /**\r\n * The label for the input field.\r\n */\r\n @Prop()\r\n label = \"Zoeken in document\";\r\n\r\n /**\r\n * The current (one-based) highlighted search item.\r\n */\r\n @Prop()\r\n current?: number;\r\n\r\n /**\r\n * Total number of search results.\r\n */\r\n @Prop()\r\n totalCount?: number;\r\n\r\n /**\r\n * Focuses the input field.\r\n */\r\n @Method()\r\n async dsoFocus(options: MarkBarFocusOptions = {}) {\r\n this.inputElement?.focus();\r\n\r\n if (options.select) {\r\n this.inputElement?.select();\r\n }\r\n }\r\n\r\n /**\r\n * Emitted each time the user types in the search field.\r\n */\r\n @Event({ bubbles: false })\r\n dsoInput!: EventEmitter<MarkBarInputEvent>;\r\n\r\n /**\r\n * Emitted when user activates \"next search result\" button.\r\n */\r\n @Event({ bubbles: false })\r\n dsoNext!: EventEmitter<MarkBarPaginationEvent>;\r\n\r\n /**\r\n * Emitted when user activates \"previous search result\" button.\r\n */\r\n @Event({ bubbles: false })\r\n dsoPrevious!: EventEmitter<MarkBarPaginationEvent>;\r\n\r\n /**\r\n * Emitted when user activates \"clear search result\" button.\r\n */\r\n @Event({ bubbles: false })\r\n dsoClear!: EventEmitter<MarkBarClearEvent>;\r\n\r\n private inputElement?: HTMLInputElement;\r\n\r\n private handleInput = (e: Event) => {\r\n if (!(e.target instanceof HTMLInputElement)) {\r\n return;\r\n }\r\n\r\n this.dsoInput.emit({\r\n originalEvent: e,\r\n value: e.target.value,\r\n });\r\n };\r\n\r\n private handleNext = (originalEvent: MouseEvent | KeyboardEvent) => {\r\n this.dsoNext.emit({ originalEvent });\r\n };\r\n\r\n private handlePrevious = (originalEvent: MouseEvent) => {\r\n this.dsoPrevious.emit({ originalEvent });\r\n };\r\n\r\n private handleClear = (originalEvent: MouseEvent) => {\r\n this.dsoClear.emit({ originalEvent });\r\n };\r\n\r\n private handleKeyDown = (e: KeyboardEvent) => {\r\n if (e.key === \"Enter\") {\r\n this.handleNext(e);\r\n }\r\n };\r\n\r\n render() {\r\n const current = this.current || 0;\r\n const totalCount = this.totalCount || 0;\r\n\r\n return (\r\n <div class=\"dso-mark-bar\">\r\n <div class=\"dso-mark-bar-input\">\r\n <input\r\n type=\"text\"\r\n id=\"search-input\"\r\n value={this.value}\r\n onInput={this.handleInput}\r\n onKeyDown={this.handleKeyDown}\r\n placeholder=\" \"\r\n ref={(element) => (this.inputElement = element)}\r\n />\r\n <label htmlFor=\"search-input\">\r\n <dso-icon class=\"dso-search-icon\" icon=\"search\"></dso-icon>\r\n <span class=\"label-text\">{this.label}</span>\r\n </label>\r\n <dso-icon-button\r\n icon=\"times\"\r\n variant=\"tertiary\"\r\n label=\"Zoekopdracht legen\"\r\n onDsoClick={(e) => this.handleClear(e.detail.originalEvent)}\r\n />\r\n </div>\r\n <div class=\"dso-button-container\">\r\n <span class=\"divider\" />\r\n <dso-icon-button\r\n icon=\"chevron-up\"\r\n variant=\"tertiary\"\r\n label=\"Vorig zoekresultaat\"\r\n onDsoClick={(e) => this.handlePrevious(e.detail.originalEvent)}\r\n disabled={current <= 1}\r\n />\r\n <span>\r\n {current}/{totalCount}\r\n </span>\r\n <dso-icon-button\r\n icon=\"chevron-down\"\r\n variant=\"tertiary\"\r\n label=\"Volgend zoekresultaat\"\r\n onDsoClick={(e) => this.handleNext(e.detail.originalEvent)}\r\n disabled={current >= totalCount}\r\n />\r\n </div>\r\n </div>\r\n );\r\n }\r\n}\r\n"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"dso-modal.entry.esm.js","sources":["src/components/modal/modal.i18n.ts","src/components/modal/modal.scss?tag=dso-modal&encapsulation=shadow","src/components/modal/modal.tsx"],"sourcesContent":["import { Resource } from \"../../utils/i18n\";\r\n\r\nexport const translations: Resource = {\r\n en: {\r\n \"dso-modal\": {\r\n close: \"Close\",\r\n dialog: \"Dialog\",\r\n },\r\n },\r\n nl: {\r\n \"dso-modal\": {\r\n close: \"Sluiten\",\r\n dialog: \"Dialoog\",\r\n },\r\n },\r\n};\r\n","@use \"~dso-toolkit/src/utilities\";\r\n@use \"~dso-toolkit/src/components/button\";\r\n@use \"~dso-toolkit/src/components/modal\";\r\n@use \"~dso-toolkit/src/variables/media-query-breakpoints\";\r\n\r\n@include utilities.box-sizing();\r\n\r\n:host {\r\n display: block;\r\n}\r\n\r\n// fullscreen option\r\n:host([fullscreen]) dialog {\r\n @include modal.fullscreen();\r\n}\r\n\r\n// Go to fullscreen on =< 480px viewport\r\n@media screen and (max-width: media-query-breakpoints.$screen-xs-min) {\r\n :host dialog {\r\n @include modal.fullscreen();\r\n }\r\n}\r\n\r\n.sr-only {\r\n @include utilities.sr-only();\r\n}\r\n\r\nbutton {\r\n @include button.element();\r\n}\r\n\r\n.dso-modal {\r\n @include modal.root();\r\n\r\n .dso-header {\r\n dso-icon-button {\r\n position: absolute;\r\n inset-block-start: 22px;\r\n inset-inline-end: 17px;\r\n }\r\n }\r\n}\r\n","import { Component, ComponentInterface, Element, Event, EventEmitter, Prop, State, h } from \"@stencil/core\";\r\nimport { v4 } from \"uuid\";\r\n\r\nimport { getActiveElement } from \"../../utils/get-active-element\";\r\nimport { i18n } from \"../../utils/i18n\";\r\n\r\nimport { translations } from \"./modal.i18n\";\r\nimport { ModalCloseEvent } from \"./modal.interfaces\";\r\n\r\n@Component({\r\n tag: \"dso-modal\",\r\n styleUrl: \"modal.scss\",\r\n shadow: true,\r\n})\r\nexport class Modal implements ComponentInterface {\r\n private htmlDialogElement?: HTMLDialogElement;\r\n\r\n @Element()\r\n host!: HTMLDsoModalElement;\r\n\r\n @State()\r\n ariaId = v4();\r\n\r\n /**\r\n * when set the modal will be shown in fullscreen.\r\n */\r\n @Prop({ reflect: true })\r\n fullscreen?: boolean;\r\n\r\n /**\r\n * The title of the Modal.\r\n */\r\n @Prop()\r\n modalTitle?: string;\r\n\r\n /**\r\n * the role for the modal `dialog` | `alert` | `alertdialog`.\r\n */\r\n @Prop()\r\n dialogRole: string | null = \"dialog\";\r\n\r\n /**\r\n * The element to return focus to after the modal is closed.\r\n *\r\n * * `undefined` will return focus to the previously focused element (default).\r\n * * `false` will not return focus to any element.\r\n * * or, provide your own `HTMLElement` that will receive focus upon closing.\r\n */\r\n @Prop()\r\n returnFocus: false | HTMLElement | undefined = undefined;\r\n\r\n /**\r\n * when `false` the close button in the header will not be rendered.\r\n *\r\n * Needs `modalTitle` to be set.\r\n */\r\n @Prop()\r\n closable = false;\r\n\r\n private returnFocusElement: HTMLElement | undefined;\r\n\r\n /**\r\n * Emitted when the user:\r\n * - clicks the close button\r\n * - dismisses the Modal with the Escape button\r\n * - clicks or taps outside the Modal\r\n */\r\n @Event()\r\n dsoClose!: EventEmitter<ModalCloseEvent>;\r\n\r\n get hasFooter() {\r\n return this.host.querySelector(\"[slot='footer']\") !== null;\r\n }\r\n\r\n private text = i18n(() => this.host, translations);\r\n\r\n componentDidLoad(): void {\r\n if (this.htmlDialogElement?.isConnected) {\r\n const activeElement = getActiveElement();\r\n if (activeElement instanceof HTMLElement) {\r\n this.returnFocusElement = activeElement;\r\n }\r\n\r\n this.htmlDialogElement.showModal();\r\n }\r\n }\r\n\r\n disconnectedCallback(): void {\r\n this.htmlDialogElement?.close();\r\n\r\n if (this.returnFocus === false) {\r\n return;\r\n }\r\n\r\n (this.returnFocus ?? this.returnFocusElement)?.focus();\r\n }\r\n\r\n private handleDialogClick(e: MouseEvent) {\r\n if (!this.closable) {\r\n return;\r\n }\r\n\r\n if (e.target === this.htmlDialogElement) {\r\n this.dsoClose.emit({ originalEvent: e });\r\n }\r\n }\r\n\r\n private blockEscapeKey = (e: KeyboardEvent) => {\r\n if (e.key === \"Escape\") {\r\n e.preventDefault();\r\n\r\n if (this.closable) {\r\n this.dsoClose.emit({ originalEvent: e });\r\n }\r\n }\r\n };\r\n\r\n render() {\r\n return (\r\n <dialog\r\n class=\"dso-modal\"\r\n role={this.dialogRole ?? undefined}\r\n aria-modal=\"true\"\r\n aria-labelledby={this.ariaId}\r\n ref={(element) => (this.htmlDialogElement = element)}\r\n onClick={(e) => this.handleDialogClick(e)}\r\n onKeyDown={(e) => this.blockEscapeKey(e)}\r\n >\r\n <div class=\"dso-dialog\" role=\"document\">\r\n {this.modalTitle ? (\r\n <div class=\"dso-header\">\r\n <h2 id={this.ariaId}>{this.modalTitle}</h2>\r\n {this.closable && (\r\n <dso-icon-button\r\n id=\"close-modal\"\r\n icon=\"times\"\r\n variant=\"tertiary\"\r\n label={this.text(\"close\")}\r\n onDsoClick={(e) => this.dsoClose.emit({ originalEvent: e })}\r\n />\r\n )}\r\n </div>\r\n ) : (\r\n <span class=\"sr-only\" id={this.ariaId}>\r\n {this.text(\"dialog\")}\r\n </span>\r\n )}\r\n\r\n <dso-scrollable>\r\n <div class=\"dso-body\" tabIndex={0}>\r\n <slot name=\"body\" />\r\n </div>\r\n </dso-scrollable>\r\n\r\n {this.hasFooter && (\r\n <div class=\"dso-footer\">\r\n <slot name=\"footer\" />\r\n </div>\r\n )}\r\n </div>\r\n </dialog>\r\n );\r\n }\r\n}\r\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dso-modal.entry.esm.js","sources":["src/components/modal/modal.i18n.ts","src/components/modal/modal.scss?tag=dso-modal&encapsulation=shadow","src/components/modal/modal.tsx"],"sourcesContent":["import { Resource } from \"../../utils/i18n\";\r\n\r\nexport const translations: Resource = {\r\n en: {\r\n \"dso-modal\": {\r\n close: \"Close\",\r\n dialog: \"Dialog\",\r\n },\r\n },\r\n nl: {\r\n \"dso-modal\": {\r\n close: \"Sluiten\",\r\n dialog: \"Dialoog\",\r\n },\r\n },\r\n};\r\n","@use \"~dso-toolkit/src/utilities\";\r\n@use \"~dso-toolkit/src/components/button\";\r\n@use \"~dso-toolkit/src/components/modal\";\r\n@use \"~dso-toolkit/src/variables/media-query-breakpoints\";\r\n\r\n@include utilities.box-sizing();\r\n\r\n:host {\r\n display: block;\r\n}\r\n\r\n// fullscreen option\r\n:host([fullscreen]) dialog {\r\n @include modal.fullscreen();\r\n}\r\n\r\n// Go to fullscreen on =< 480px viewport\r\n@media screen and (max-width: media-query-breakpoints.$screen-xs-min) {\r\n :host dialog {\r\n @include modal.fullscreen();\r\n }\r\n}\r\n\r\n.sr-only {\r\n @include utilities.sr-only();\r\n}\r\n\r\nbutton {\r\n @include button.element();\r\n}\r\n\r\n.dso-modal {\r\n @include modal.root();\r\n\r\n .dso-header {\r\n dso-icon-button {\r\n position: absolute;\r\n inset-block-start: 22px;\r\n inset-inline-end: 17px;\r\n }\r\n }\r\n}\r\n","import { Component, ComponentInterface, Element, Event, EventEmitter, Prop, State, h } from \"@stencil/core\";\r\nimport { v4 } from \"uuid\";\r\n\r\nimport { getActiveElement } from \"../../utils/get-active-element\";\r\nimport { i18n } from \"../../utils/i18n\";\r\n\r\nimport { translations } from \"./modal.i18n\";\r\nimport { ModalCloseEvent } from \"./modal.interfaces\";\r\n\r\n@Component({\r\n tag: \"dso-modal\",\r\n styleUrl: \"modal.scss\",\r\n shadow: true,\r\n})\r\nexport class Modal implements ComponentInterface {\r\n private htmlDialogElement?: HTMLDialogElement;\r\n\r\n @Element()\r\n host!: HTMLDsoModalElement;\r\n\r\n @State()\r\n ariaId = v4();\r\n\r\n /**\r\n * when set the modal will be shown in fullscreen.\r\n */\r\n @Prop({ reflect: true })\r\n fullscreen?: boolean;\r\n\r\n /**\r\n * The title of the Modal.\r\n */\r\n @Prop()\r\n modalTitle?: string;\r\n\r\n /**\r\n * the role for the modal `dialog` | `alert` | `alertdialog`.\r\n */\r\n @Prop()\r\n dialogRole: string | null = \"dialog\";\r\n\r\n /**\r\n * The element to return focus to after the modal is closed.\r\n *\r\n * * `undefined` will return focus to the previously focused element (default).\r\n * * `false` will not return focus to any element.\r\n * * or, provide your own `HTMLElement` that will receive focus upon closing.\r\n */\r\n @Prop()\r\n returnFocus: false | HTMLElement | undefined = undefined;\r\n\r\n /**\r\n * when `false` the close button in the header will not be rendered.\r\n *\r\n * Needs `modalTitle` to be set.\r\n */\r\n @Prop()\r\n closable = false;\r\n\r\n private returnFocusElement: HTMLElement | undefined;\r\n\r\n /**\r\n * Emitted when the user:\r\n * - clicks the close button\r\n * - dismisses the Modal with the Escape button\r\n * - clicks or taps outside the Modal\r\n */\r\n @Event()\r\n dsoClose!: EventEmitter<ModalCloseEvent>;\r\n\r\n get hasFooter() {\r\n return this.host.querySelector(\"[slot='footer']\") !== null;\r\n }\r\n\r\n private text = i18n(() => this.host, translations);\r\n\r\n componentDidLoad(): void {\r\n if (this.htmlDialogElement?.isConnected) {\r\n const activeElement = getActiveElement();\r\n if (activeElement instanceof HTMLElement) {\r\n this.returnFocusElement = activeElement;\r\n }\r\n\r\n this.htmlDialogElement.showModal();\r\n }\r\n }\r\n\r\n disconnectedCallback(): void {\r\n this.htmlDialogElement?.close();\r\n\r\n if (this.returnFocus === false) {\r\n return;\r\n }\r\n\r\n (this.returnFocus ?? this.returnFocusElement)?.focus();\r\n }\r\n\r\n private handleDialogClick(e: MouseEvent) {\r\n if (!this.closable) {\r\n return;\r\n }\r\n\r\n if (e.target === this.htmlDialogElement) {\r\n this.dsoClose.emit({ originalEvent: e });\r\n }\r\n }\r\n\r\n private blockEscapeKey = (e: KeyboardEvent) => {\r\n if (e.key === \"Escape\") {\r\n e.preventDefault();\r\n\r\n if (this.closable) {\r\n this.dsoClose.emit({ originalEvent: e });\r\n }\r\n }\r\n };\r\n\r\n render() {\r\n return (\r\n <dialog\r\n class=\"dso-modal\"\r\n role={this.dialogRole ?? undefined}\r\n aria-modal=\"true\"\r\n aria-labelledby={this.ariaId}\r\n ref={(element) => (this.htmlDialogElement = element)}\r\n onClick={(e) => this.handleDialogClick(e)}\r\n onKeyDown={(e) => this.blockEscapeKey(e)}\r\n >\r\n <div class=\"dso-dialog\" role=\"document\">\r\n {this.modalTitle ? (\r\n <div class=\"dso-header\">\r\n <h2 id={this.ariaId}>{this.modalTitle}</h2>\r\n {this.closable && (\r\n <dso-icon-button\r\n id=\"close-modal\"\r\n icon=\"times\"\r\n variant=\"tertiary\"\r\n label={this.text(\"close\")}\r\n onDsoClick={(e) => this.dsoClose.emit({ originalEvent: e })}\r\n />\r\n )}\r\n </div>\r\n ) : (\r\n <span class=\"sr-only\" id={this.ariaId}>\r\n {this.text(\"dialog\")}\r\n </span>\r\n )}\r\n\r\n <dso-scrollable>\r\n <div class=\"dso-body\" tabIndex={0}>\r\n <slot name=\"body\" />\r\n </div>\r\n </dso-scrollable>\r\n\r\n {this.hasFooter && (\r\n <div class=\"dso-footer\">\r\n <slot name=\"footer\" />\r\n </div>\r\n )}\r\n </div>\r\n </dialog>\r\n );\r\n }\r\n}\r\n"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"dso-onboarding-tip.entry.esm.js","sources":["src/components/onboarding-tip/onboarding-tip.scss?tag=dso-onboarding-tip&encapsulation=shadow","src/components/onboarding-tip/onboarding-tip.tsx"],"sourcesContent":["@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@use \"~dso-toolkit/src/variables/zindex\";\r\n\r\n@use \"~dso-toolkit/src/components/button\";\r\n\r\n@use \"~dso-toolkit/src/global/mixins/set-colors.mixin\" as set-colors;\r\n\r\n@use \"onboarding-tip.variables\" as onboarding-tip-variables;\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\n::slotted([slot=\"heading\"]) {\r\n display: flex !important;\r\n align-items: center !important;\r\n\r\n margin-block-end: 0 !important;\r\n margin-block-start: 0 !important;\r\n\r\n color: colors.$wit !important;\r\n line-height: 1.375 !important;\r\n}\r\n\r\n:host {\r\n --_dso-button-primary-background-color: #{colors.$wit};\r\n --_dso-button-primary-border-color: #{colors.$wit};\r\n --_dso-button-primary-color: #{colors.$zwart};\r\n --_dso-button-primary-hover-background-color: #{colors.$grijs-20};\r\n --_dso-button-primary-hover-border-color: #{colors.$grijs-20};\r\n --_dso-button-primary-hover-color: #{colors.$zwart};\r\n --_dso-button-primary-active-background-color: #{colors.$grijs-40};\r\n --_dso-button-primary-active-border-color: #{colors.$grijs-40};\r\n --_dso-button-primary-active-color: #{colors.$zwart};\r\n --_dso-button-primary-disabled-background-color: #{colors.$wit};\r\n --_dso-button-primary-disabled-border-color: #{colors.$wit};\r\n --_dso-button-primary-disabled-color: #{colors.$grijs-30};\r\n\r\n --_dso-button-secondary-background-color: #{colors.$wit};\r\n --_dso-button-secondary-border-color: #{colors.$wit};\r\n --_dso-button-secondary-color: #{colors.$zwart};\r\n --_dso-button-secondary-hover-background-color: #{colors.$grijs-20};\r\n --_dso-button-secondary-hover-border-color: #{colors.$grijs-20};\r\n --_dso-button-secondary-hover-color: #{colors.$zwart};\r\n --_dso-button-secondary-active-background-color: #{colors.$grijs-40};\r\n --_dso-button-secondary-active-border-color: #{colors.$grijs-40};\r\n --_dso-button-secondary-active-color: #{colors.$zwart};\r\n --_dso-button-secondary-disabled-background-color: #{colors.$wit};\r\n --_dso-button-secondary-disabled-border-color: #{colors.$wit};\r\n --_dso-button-secondary-disabled-color: #{colors.$grijs-30};\r\n\r\n display: block;\r\n filter: drop-shadow(2px 2px 16px rgba(0, 0, 0, 0.4));\r\n\r\n // Visibility & opacity are updated using Floating-UI\r\n transition:\r\n visibility onboarding-tip-variables.$transition-time,\r\n opacity onboarding-tip-variables.$transition-time;\r\n}\r\n\r\n// Startup fade-in transition\r\n:host(:not([ready])) {\r\n opacity: 1;\r\n animation: onboarding-tip-variables.$transition-time ease-in 1 normal both fadeInOpacity;\r\n}\r\n\r\n:host([popover]) {\r\n margin: 0 !important;\r\n border: 0;\r\n padding: 0;\r\n background-color: transparent;\r\n overflow: unset;\r\n}\r\n\r\n.onboarding-tip {\r\n font-family: typography.$font-family-base;\r\n font-style: normal;\r\n font-weight: 400;\r\n line-height: typography.$line-height-base;\r\n line-break: auto;\r\n text-align: start;\r\n text-decoration: none;\r\n text-shadow: none;\r\n text-transform: none;\r\n letter-spacing: normal;\r\n overflow-wrap: anywhere;\r\n word-spacing: normal;\r\n word-wrap: normal;\r\n white-space: normal;\r\n font-size: typography.$font-size-small;\r\n inset-block-start: 0;\r\n inset-inline-start: 0;\r\n z-index: zindex.$onboarding-tip;\r\n\r\n @media screen and (max-width: onboarding-tip-variables.$max-inline-size) {\r\n padding-inline-start: units.$u1 !important;\r\n }\r\n}\r\n\r\n.dso-close {\r\n position: absolute;\r\n inset-block-start: 4px;\r\n inset-inline-end: 4px;\r\n}\r\n\r\n.onboarding-tip-inner {\r\n --link-color: #{colors.$wit};\r\n --link-hover-color: #{colors.$grijs-30};\r\n --link-visited-color: #{colors.$grijs-50};\r\n\r\n max-inline-size: min(#{onboarding-tip-variables.$max-inline-size}, calc(100vw - 2 * #{units.$u1}));\r\n max-block-size: calc(100vh - 10px); // 10px is the padding given to floating-ui\r\n overflow: auto;\r\n padding-block: onboarding-tip-variables.$padding-block;\r\n padding-inline: onboarding-tip-variables.$padding-inline;\r\n border-radius: onboarding-tip-variables.$border-radius;\r\n display: block;\r\n font-size: typography.$root-font-size-base;\r\n position: relative;\r\n z-index: 2; // z-index higher than the arrow\r\n\r\n @include set-colors.apply(onboarding-tip-variables.$background-color, \"onboarding-tip\");\r\n\r\n @media screen and (max-width: media-query-breakpoints.$screen-sm-max) {\r\n max-block-size: unset;\r\n }\r\n}\r\n\r\n.onboarding-tip-arrow {\r\n border-start-start-radius: onboarding-tip-variables.$border-radius;\r\n position: absolute;\r\n block-size: onboarding-tip-variables.$arrow-block-size;\r\n inline-size: onboarding-tip-variables.$arrow-inline-size;\r\n background: onboarding-tip-variables.$background-color;\r\n z-index: 1;\r\n pointer-events: none;\r\n}\r\n\r\n.onboarding-tip-content-wrapper {\r\n padding-inline: units.$u2;\r\n padding-block-end: units.$u2;\r\n}\r\n\r\n.onboarding-tip-content-heading {\r\n display: flex;\r\n\r\n dso-icon {\r\n margin-inline-end: units.$u1;\r\n }\r\n}\r\n\r\n@keyframes fadeInOpacity {\r\n 0% {\r\n opacity: 0;\r\n }\r\n 100% {\r\n opacity: 1;\r\n }\r\n}\r\n","import { Component, ComponentInterface, Element, Event, EventEmitter, Host, Prop, State, h } from \"@stencil/core\";\r\n\r\nimport { positionTooltip } from \"../../functional-components/tooltip/position-tooltip.function\";\r\nimport { TooltipClean, TooltipPlacement } from \"../../functional-components/tooltip/tooltip.interfaces\";\r\n\r\nimport { OnboardingTipCloseEvent } from \"./onboarding-tip.interfaces\";\r\n\r\n@Component({\r\n tag: \"dso-onboarding-tip\",\r\n styleUrl: \"onboarding-tip.scss\",\r\n shadow: true,\r\n})\r\nexport class OnboardingTip implements ComponentInterface {\r\n @Element()\r\n private host!: HTMLDsoOnboardingTipElement;\r\n\r\n /**\r\n * Where to place the Onboarding Tip relative to its reference element.\r\n */\r\n @Prop()\r\n placement: TooltipPlacement = \"right\";\r\n\r\n /**\r\n * Emitted when the user closes the Onboarding Tip.\r\n */\r\n @Event()\r\n dsoClose!: EventEmitter<OnboardingTipCloseEvent>;\r\n\r\n @State()\r\n ready = false;\r\n\r\n @State()\r\n popoverOpen = false;\r\n\r\n componentDidRender() {\r\n if (!this.host.isConnected) {\r\n return;\r\n }\r\n\r\n if (!this.popoverOpen) {\r\n this.host.showPopover();\r\n this.popoverOpen = true;\r\n }\r\n\r\n if (!this.cleanUp && this.referenceElement && this.tipArrowRef instanceof HTMLElement) {\r\n this.cleanUp = positionTooltip({\r\n referenceElement: this.referenceElement,\r\n tipRef: this.host,\r\n tipArrowRef: this.tipArrowRef,\r\n placementTip: `${this.placement}-start`,\r\n topPositionSmallViewPort: true,\r\n halfMainAxisOffset: true,\r\n });\r\n }\r\n }\r\n\r\n disconnectedCallback(): void {\r\n if (this.popoverOpen) {\r\n this.host.hidePopover();\r\n this.popoverOpen = false;\r\n }\r\n this.cleanUp?.();\r\n this.cleanUp = undefined;\r\n }\r\n\r\n render() {\r\n return (\r\n <Host popover=\"manual\" ready={this.ready} onAnimationend={() => (this.ready = true)}>\r\n <div class=\"onboarding-tip\" role=\"tooltip\">\r\n <div class=\"onboarding-tip-inner\">\r\n <div class=\"onboarding-tip-content-wrapper\">\r\n {this.headingSlottedElement !== null && (\r\n <div class=\"onboarding-tip-content-heading\">\r\n <dso-icon icon=\"light-bulb\"></dso-icon>\r\n <slot name=\"heading\" />\r\n </div>\r\n )}\r\n <dso-icon-button\r\n class=\"dso-close\"\r\n label=\"Sluiten\"\r\n variant=\"tertiary\"\r\n icon=\"times\"\r\n onDsoClick={(e) => this.dsoClose.emit({ originalEvent: e })}\r\n />\r\n <slot></slot>\r\n </div>\r\n </div>\r\n <div class=\"onboarding-tip-arrow\" ref={(ref) => (this.tipArrowRef = ref)}></div>\r\n </div>\r\n </Host>\r\n );\r\n }\r\n\r\n private tipArrowRef: HTMLDivElement | undefined;\r\n\r\n private get headingSlottedElement() {\r\n return this.host.querySelector(\"[slot='heading']\");\r\n }\r\n\r\n private cleanUp: TooltipClean | undefined;\r\n\r\n private get referenceElement(): HTMLElement | undefined {\r\n const id = this.host.id;\r\n\r\n if (!id) {\r\n console.warn(\"Unable to find reference. Onboarding Tip has no [id] attribute.\");\r\n\r\n return;\r\n }\r\n\r\n const rootNode = this.host.getRootNode();\r\n if (!(rootNode instanceof Document || rootNode instanceof ShadowRoot)) {\r\n console.warn(`rootNode is not instance of Document or ShadowRoot`);\r\n\r\n return;\r\n }\r\n\r\n const reference = rootNode.querySelector<HTMLElement>(`[aria-describedby=\"${id}\"]`);\r\n if (!reference) {\r\n console.warn(`Unable to find reference element with aria-describedby ${id}`);\r\n\r\n return;\r\n }\r\n\r\n return reference;\r\n }\r\n}\r\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dso-onboarding-tip.entry.esm.js","sources":["src/components/onboarding-tip/onboarding-tip.scss?tag=dso-onboarding-tip&encapsulation=shadow","src/components/onboarding-tip/onboarding-tip.tsx"],"sourcesContent":["@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@use \"~dso-toolkit/src/variables/zindex\";\r\n\r\n@use \"~dso-toolkit/src/components/button\";\r\n\r\n@use \"~dso-toolkit/src/global/mixins/set-colors.mixin\" as set-colors;\r\n\r\n@use \"onboarding-tip.variables\" as onboarding-tip-variables;\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\n::slotted([slot=\"heading\"]) {\r\n display: flex !important;\r\n align-items: center !important;\r\n\r\n margin-block-end: 0 !important;\r\n margin-block-start: 0 !important;\r\n\r\n color: colors.$wit !important;\r\n line-height: 1.375 !important;\r\n}\r\n\r\n:host {\r\n --_dso-button-primary-background-color: #{colors.$wit};\r\n --_dso-button-primary-border-color: #{colors.$wit};\r\n --_dso-button-primary-color: #{colors.$zwart};\r\n --_dso-button-primary-hover-background-color: #{colors.$grijs-20};\r\n --_dso-button-primary-hover-border-color: #{colors.$grijs-20};\r\n --_dso-button-primary-hover-color: #{colors.$zwart};\r\n --_dso-button-primary-active-background-color: #{colors.$grijs-40};\r\n --_dso-button-primary-active-border-color: #{colors.$grijs-40};\r\n --_dso-button-primary-active-color: #{colors.$zwart};\r\n --_dso-button-primary-disabled-background-color: #{colors.$wit};\r\n --_dso-button-primary-disabled-border-color: #{colors.$wit};\r\n --_dso-button-primary-disabled-color: #{colors.$grijs-30};\r\n\r\n --_dso-button-secondary-background-color: #{colors.$wit};\r\n --_dso-button-secondary-border-color: #{colors.$wit};\r\n --_dso-button-secondary-color: #{colors.$zwart};\r\n --_dso-button-secondary-hover-background-color: #{colors.$grijs-20};\r\n --_dso-button-secondary-hover-border-color: #{colors.$grijs-20};\r\n --_dso-button-secondary-hover-color: #{colors.$zwart};\r\n --_dso-button-secondary-active-background-color: #{colors.$grijs-40};\r\n --_dso-button-secondary-active-border-color: #{colors.$grijs-40};\r\n --_dso-button-secondary-active-color: #{colors.$zwart};\r\n --_dso-button-secondary-disabled-background-color: #{colors.$wit};\r\n --_dso-button-secondary-disabled-border-color: #{colors.$wit};\r\n --_dso-button-secondary-disabled-color: #{colors.$grijs-30};\r\n\r\n display: block;\r\n filter: drop-shadow(2px 2px 16px rgba(0, 0, 0, 0.4));\r\n\r\n // Visibility & opacity are updated using Floating-UI\r\n transition:\r\n visibility onboarding-tip-variables.$transition-time,\r\n opacity onboarding-tip-variables.$transition-time;\r\n}\r\n\r\n// Startup fade-in transition\r\n:host(:not([ready])) {\r\n opacity: 1;\r\n animation: onboarding-tip-variables.$transition-time ease-in 1 normal both fadeInOpacity;\r\n}\r\n\r\n:host([popover]) {\r\n margin: 0 !important;\r\n border: 0;\r\n padding: 0;\r\n background-color: transparent;\r\n overflow: unset;\r\n}\r\n\r\n.onboarding-tip {\r\n font-family: typography.$font-family-base;\r\n font-style: normal;\r\n font-weight: 400;\r\n line-height: typography.$line-height-base;\r\n line-break: auto;\r\n text-align: start;\r\n text-decoration: none;\r\n text-shadow: none;\r\n text-transform: none;\r\n letter-spacing: normal;\r\n overflow-wrap: normal;\r\n word-spacing: normal;\r\n white-space: normal;\r\n font-size: typography.$font-size-small;\r\n inset-block-start: 0;\r\n inset-inline-start: 0;\r\n z-index: zindex.$onboarding-tip;\r\n\r\n @media screen and (max-width: onboarding-tip-variables.$max-inline-size) {\r\n padding-inline-start: units.$u1 !important;\r\n }\r\n}\r\n\r\n.dso-close {\r\n position: absolute;\r\n inset-block-start: 4px;\r\n inset-inline-end: 4px;\r\n}\r\n\r\n.onboarding-tip-inner {\r\n --link-color: #{colors.$wit};\r\n --link-hover-color: #{colors.$grijs-30};\r\n --link-visited-color: #{colors.$grijs-50};\r\n\r\n max-inline-size: min(#{onboarding-tip-variables.$max-inline-size}, calc(100vw - 2 * #{units.$u1}));\r\n max-block-size: calc(100vh - 10px); // 10px is the padding given to floating-ui\r\n overflow: auto;\r\n padding-block: onboarding-tip-variables.$padding-block;\r\n padding-inline: onboarding-tip-variables.$padding-inline;\r\n border-radius: onboarding-tip-variables.$border-radius;\r\n display: block;\r\n font-size: typography.$root-font-size-base;\r\n position: relative;\r\n z-index: 2; // z-index higher than the arrow\r\n\r\n @include set-colors.apply(onboarding-tip-variables.$background-color, \"onboarding-tip\");\r\n\r\n @media screen and (max-width: media-query-breakpoints.$screen-sm-max) {\r\n max-block-size: unset;\r\n }\r\n}\r\n\r\n.onboarding-tip-arrow {\r\n border-start-start-radius: onboarding-tip-variables.$border-radius;\r\n position: absolute;\r\n block-size: onboarding-tip-variables.$arrow-block-size;\r\n inline-size: onboarding-tip-variables.$arrow-inline-size;\r\n background: onboarding-tip-variables.$background-color;\r\n z-index: 1;\r\n pointer-events: none;\r\n}\r\n\r\n.onboarding-tip-content-wrapper {\r\n padding-inline: units.$u2;\r\n padding-block-end: units.$u2;\r\n}\r\n\r\n.onboarding-tip-content-heading {\r\n display: flex;\r\n\r\n dso-icon {\r\n margin-inline-end: units.$u1;\r\n }\r\n}\r\n\r\n@keyframes fadeInOpacity {\r\n 0% {\r\n opacity: 0;\r\n }\r\n 100% {\r\n opacity: 1;\r\n }\r\n}\r\n","import { Component, ComponentInterface, Element, Event, EventEmitter, Host, Prop, State, h } from \"@stencil/core\";\r\n\r\nimport { positionTooltip } from \"../../functional-components/tooltip/position-tooltip.function\";\r\nimport { TooltipClean, TooltipPlacement } from \"../../functional-components/tooltip/tooltip.interfaces\";\r\n\r\nimport { OnboardingTipCloseEvent } from \"./onboarding-tip.interfaces\";\r\n\r\n@Component({\r\n tag: \"dso-onboarding-tip\",\r\n styleUrl: \"onboarding-tip.scss\",\r\n shadow: true,\r\n})\r\nexport class OnboardingTip implements ComponentInterface {\r\n @Element()\r\n private host!: HTMLDsoOnboardingTipElement;\r\n\r\n /**\r\n * Where to place the Onboarding Tip relative to its reference element.\r\n */\r\n @Prop()\r\n placement: TooltipPlacement = \"right\";\r\n\r\n /**\r\n * Emitted when the user closes the Onboarding Tip.\r\n */\r\n @Event()\r\n dsoClose!: EventEmitter<OnboardingTipCloseEvent>;\r\n\r\n @State()\r\n ready = false;\r\n\r\n @State()\r\n popoverOpen = false;\r\n\r\n componentDidRender() {\r\n if (!this.host.isConnected) {\r\n return;\r\n }\r\n\r\n if (!this.popoverOpen) {\r\n this.host.showPopover();\r\n this.popoverOpen = true;\r\n }\r\n\r\n if (!this.cleanUp && this.referenceElement && this.tipArrowRef instanceof HTMLElement) {\r\n this.cleanUp = positionTooltip({\r\n referenceElement: this.referenceElement,\r\n tipRef: this.host,\r\n tipArrowRef: this.tipArrowRef,\r\n placementTip: `${this.placement}-start`,\r\n topPositionSmallViewPort: true,\r\n halfMainAxisOffset: true,\r\n });\r\n }\r\n }\r\n\r\n disconnectedCallback(): void {\r\n if (this.popoverOpen) {\r\n this.host.hidePopover();\r\n this.popoverOpen = false;\r\n }\r\n this.cleanUp?.();\r\n this.cleanUp = undefined;\r\n }\r\n\r\n render() {\r\n return (\r\n <Host popover=\"manual\" ready={this.ready} onAnimationend={() => (this.ready = true)}>\r\n <div class=\"onboarding-tip\" role=\"tooltip\">\r\n <div class=\"onboarding-tip-inner\">\r\n <div class=\"onboarding-tip-content-wrapper\">\r\n {this.headingSlottedElement !== null && (\r\n <div class=\"onboarding-tip-content-heading\">\r\n <dso-icon icon=\"light-bulb\"></dso-icon>\r\n <slot name=\"heading\" />\r\n </div>\r\n )}\r\n <dso-icon-button\r\n class=\"dso-close\"\r\n label=\"Sluiten\"\r\n variant=\"tertiary\"\r\n icon=\"times\"\r\n onDsoClick={(e) => this.dsoClose.emit({ originalEvent: e })}\r\n />\r\n <slot></slot>\r\n </div>\r\n </div>\r\n <div class=\"onboarding-tip-arrow\" ref={(ref) => (this.tipArrowRef = ref)}></div>\r\n </div>\r\n </Host>\r\n );\r\n }\r\n\r\n private tipArrowRef: HTMLDivElement | undefined;\r\n\r\n private get headingSlottedElement() {\r\n return this.host.querySelector(\"[slot='heading']\");\r\n }\r\n\r\n private cleanUp: TooltipClean | undefined;\r\n\r\n private get referenceElement(): HTMLElement | undefined {\r\n const id = this.host.id;\r\n\r\n if (!id) {\r\n console.warn(\"Unable to find reference. Onboarding Tip has no [id] attribute.\");\r\n\r\n return;\r\n }\r\n\r\n const rootNode = this.host.getRootNode();\r\n if (!(rootNode instanceof Document || rootNode instanceof ShadowRoot)) {\r\n console.warn(`rootNode is not instance of Document or ShadowRoot`);\r\n\r\n return;\r\n }\r\n\r\n const reference = rootNode.querySelector<HTMLElement>(`[aria-describedby=\"${id}\"]`);\r\n if (!reference) {\r\n console.warn(`Unable to find reference element with aria-describedby ${id}`);\r\n\r\n return;\r\n }\r\n\r\n return reference;\r\n }\r\n}\r\n"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"dso-pagination.entry.esm.js","sources":["src/components/pagination/pagination.scss?tag=dso-pagination&encapsulation=shadow","src/components/pagination/pagination.tsx"],"sourcesContent":["@use \"~dso-toolkit/src/utilities\";\r\n@use \"~dso-toolkit/src/variables/units\";\r\n@use \"~dso-toolkit/src/variables/colors\";\r\n@use \"pagination.variables\" as pagination-variables;\r\n\r\n:host {\r\n display: block;\r\n}\r\n\r\n@include utilities.box-sizing();\r\n\r\n.pagination {\r\n ul {\r\n padding-inline-start: initial;\r\n text-align: center;\r\n\r\n > li {\r\n display: inline-block;\r\n font-weight: bold;\r\n line-height: calc(pagination-variables.$item-size - pagination-variables.$border-size * 2);\r\n text-align: center;\r\n vertical-align: middle;\r\n\r\n > a,\r\n > span {\r\n align-items: center;\r\n color: colors.$grasgroen;\r\n display: flex;\r\n block-size: pagination-variables.$item-size;\r\n justify-content: center;\r\n position: relative;\r\n min-inline-size: pagination-variables.$item-size;\r\n padding: #{units.$u1 * 0.25};\r\n padding-block: units.$u1 * 0.25;\r\n padding-inline: units.$u1 * 0.25;\r\n }\r\n\r\n > a:active {\r\n background-color: colors.$grasgroen-10;\r\n }\r\n\r\n > span {\r\n border: pagination-variables.$border-size solid transparent;\r\n border-radius: pagination-variables.$item-size * 0.5;\r\n }\r\n\r\n a {\r\n line-height: pagination-variables.$line-height;\r\n text-decoration: none;\r\n\r\n &:hover,\r\n &:focus {\r\n text-decoration: none;\r\n\r\n &::after {\r\n border-block-end-color: colors.$grasgroen;\r\n }\r\n }\r\n\r\n &::after {\r\n border-block-end: 3px solid transparent;\r\n inset-block-end: 0;\r\n content: \"\";\r\n display: inline-block;\r\n inset-inline-start: 0;\r\n position: absolute;\r\n inline-size: 100%;\r\n }\r\n }\r\n\r\n &.active {\r\n span {\r\n background-color: colors.$grasgroen;\r\n color: colors.$wit;\r\n }\r\n }\r\n\r\n & + li {\r\n margin-inline-start: units.$u1;\r\n }\r\n }\r\n }\r\n}\r\n\r\n.dso-page-hidden {\r\n visibility: hidden;\r\n}\r\n\r\n.sr-only.sr-only {\r\n // class daisy-chained to prevent overwrites by other more specific styling set on this element.\r\n @include utilities.sr-only();\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 Listen,\r\n Prop,\r\n State,\r\n h,\r\n} from \"@stencil/core\";\r\n\r\nimport { isModifiedEvent } from \"../../utils/is-modified-event\";\r\nimport { ResponsiveElementSize } from \"../responsive-element/responsive-element.interfaces\";\r\n\r\nimport { PaginationSelectPageEvent } from \"./pagination.interfaces\";\r\n\r\n@Component({\r\n tag: \"dso-pagination\",\r\n styleUrl: \"pagination.scss\",\r\n shadow: true,\r\n})\r\nexport class Pagination implements ComponentInterface {\r\n private sizePositionsMap: Record<ResponsiveElementSize, number> = {\r\n small: 7,\r\n medium: 9,\r\n large: 11,\r\n };\r\n\r\n private responsiveElement?: HTMLDsoResponsiveElementElement;\r\n\r\n @Element()\r\n host!: HTMLDsoPaginationElement;\r\n\r\n @State()\r\n availablePositions?: number;\r\n /**\r\n * Total pages\r\n */\r\n @Prop()\r\n totalPages?: number;\r\n\r\n /**\r\n * Current page\r\n */\r\n @Prop()\r\n currentPage?: number;\r\n\r\n /**\r\n * This function is called to format the href\r\n */\r\n @Prop()\r\n formatHref: (page: number) => string = (page) => \"#\" + page;\r\n\r\n /**\r\n * Emitted on page select\r\n */\r\n @Event()\r\n dsoSelectPage!: EventEmitter<PaginationSelectPageEvent>;\r\n\r\n /**\r\n * Listens to the dsoSizeChange event on Responsive Element\r\n */\r\n @Listen(\"dsoSizeChange\")\r\n sizeChangeHandler(event: CustomEvent<ResponsiveElementSize>) {\r\n this.availablePositions = this.getAvailablePositions(this.sizePositionsMap[event.detail]);\r\n }\r\n\r\n private clickHandler(e: MouseEvent, page: number) {\r\n this.dsoSelectPage.emit({\r\n originalEvent: e,\r\n page,\r\n isModifiedEvent: isModifiedEvent(e),\r\n });\r\n }\r\n\r\n componentDidLoad(): void {\r\n this.responsiveElement\r\n ?.getSize()\r\n .then(\r\n (size: ResponsiveElementSize) =>\r\n (this.availablePositions = this.getAvailablePositions(this.sizePositionsMap[size])),\r\n );\r\n }\r\n\r\n render() {\r\n if (!this.totalPages && !this.currentPage) {\r\n return null;\r\n }\r\n\r\n if (this.availablePositions === undefined) {\r\n return <dso-responsive-element ref={(element) => (this.responsiveElement = element)}></dso-responsive-element>;\r\n }\r\n\r\n const availablePositions = this.availablePositions;\r\n\r\n const currentPage = this.currentPage ?? 0;\r\n\r\n const pages: number[] = this.getPages(currentPage, this.availablePositions, this.totalPages);\r\n\r\n return (\r\n <dso-responsive-element ref={(element) => (this.responsiveElement = element)}>\r\n <nav class=\"pagination\" aria-label=\"Paginering\">\r\n <ul>\r\n <li class={currentPage <= 1 || !currentPage ? \"dso-page-hidden\" : undefined}>\r\n <a\r\n href={this.formatHref(currentPage - 1)}\r\n aria-label=\"Vorige\"\r\n onClick={(e) => currentPage && this.clickHandler(e, currentPage - 1)}\r\n >\r\n <dso-icon icon=\"chevron-left\"></dso-icon>\r\n </a>\r\n </li>\r\n {pages.map((page) => (\r\n <Fragment>\r\n {this.showEllipsisBeforeLast(pages, page, availablePositions) && (\r\n <li>\r\n <span>...</span>\r\n </li>\r\n )}\r\n\r\n <li key={page} class={currentPage === page ? \"active\" : undefined}>\r\n {currentPage === page ? (\r\n <span aria-current=\"page\">{page}</span>\r\n ) : (\r\n <a href={this.formatHref(page)} onClick={(e) => this.clickHandler(e, page)}>\r\n {page}\r\n </a>\r\n )}\r\n {page === this.totalPages ? <span class=\"sr-only\"> (laatste pagina)</span> : null}\r\n </li>\r\n\r\n {this.showEllipsisAfterFirst(pages, page, availablePositions) && (\r\n <li>\r\n <span>...</span>\r\n </li>\r\n )}\r\n\r\n {this.showEllipsisLastWithoutTotal(pages, page, this.totalPages) && (\r\n <li>\r\n <span>...</span>\r\n </li>\r\n )}\r\n </Fragment>\r\n ))}\r\n <li\r\n class={\r\n (this.totalPages && currentPage >= this.totalPages) || !currentPage ? \"dso-page-hidden\" : undefined\r\n }\r\n >\r\n <a\r\n href={this.formatHref(currentPage + 1)}\r\n aria-label=\"Volgende\"\r\n onClick={(e) => currentPage && this.clickHandler(e, currentPage + 1)}\r\n >\r\n <dso-icon icon=\"chevron-right\"></dso-icon>\r\n </a>\r\n </li>\r\n </ul>\r\n </nav>\r\n </dso-responsive-element>\r\n );\r\n }\r\n\r\n private getAvailablePositions(sizePositions: number) {\r\n if (sizePositions % 2 === 0) {\r\n // Even aantal posities zorgt voor een scheve pagination\r\n return sizePositions - 1;\r\n }\r\n if (sizePositions <= 3) {\r\n // Voor het kunnen tonen van de vorige knop, volgende knop en 1 pagina zijn minimaal 3 posities nodig.\r\n return 3;\r\n }\r\n\r\n return sizePositions;\r\n }\r\n\r\n private getPages(currentPage: number, availablePositions: number, totalPages?: number): number[] {\r\n if (totalPages) {\r\n if (totalPages + 2 <= availablePositions) {\r\n // + 2 voor de vorige en volgende knop\r\n return Array.from({ length: totalPages }, (_value, i) => i + 1);\r\n }\r\n\r\n if (availablePositions === 3) {\r\n return [currentPage];\r\n }\r\n\r\n if (availablePositions === 5) {\r\n return [1, currentPage, totalPages];\r\n }\r\n\r\n return [1, ...this.getPageRange(currentPage, availablePositions, totalPages), totalPages];\r\n }\r\n return this.getPageRangeWithoutTotalPages(currentPage, availablePositions);\r\n }\r\n\r\n private getPageRange(currentPage: number, availablePositions: number, totalPages: number): number[] {\r\n const range: number[] = [];\r\n\r\n const positionRange = Math.floor(availablePositions / 2);\r\n\r\n if (currentPage <= positionRange) {\r\n for (let i = 2; i <= availablePositions - 4; i++) {\r\n range.push(i);\r\n }\r\n }\r\n\r\n if (currentPage >= positionRange && currentPage <= totalPages - positionRange) {\r\n if (positionRange === 1) {\r\n if (currentPage > totalPages - 2) {\r\n range.push(totalPages - 2);\r\n }\r\n\r\n range.push(currentPage);\r\n\r\n if (currentPage < 3) {\r\n range.push(3);\r\n }\r\n }\r\n\r\n if (positionRange > 1) {\r\n const pagesBeforeOrAfter = positionRange - 3;\r\n\r\n for (\r\n let i = Math.min(currentPage - pagesBeforeOrAfter, totalPages - positionRange);\r\n i <= Math.max(currentPage + pagesBeforeOrAfter, positionRange);\r\n i++\r\n ) {\r\n if (i > 2 && i < totalPages - 1) {\r\n range.push(i);\r\n }\r\n }\r\n }\r\n }\r\n\r\n if (currentPage > totalPages - positionRange) {\r\n for (let i = totalPages - (availablePositions - 5); i <= totalPages - 1; i++) {\r\n range.push(i);\r\n }\r\n }\r\n\r\n return range.filter((v, i, a) => a.indexOf(v) === i);\r\n }\r\n\r\n private showEllipsisAfterFirst(pages: number[], page: number, availablePositions: number): boolean {\r\n const totalPages = pages[pages.length - 1];\r\n\r\n if (!totalPages) {\r\n throw new Error(\"No totalPages\");\r\n }\r\n\r\n const isFirstPage = pages.indexOf(page) === 0;\r\n const hasManyPages = totalPages > availablePositions - (this.totalPages ? 2 : 6);\r\n const isPageTwoMissing = !pages.includes(2);\r\n const hasEnoughPositions = availablePositions >= 7;\r\n\r\n return isFirstPage && hasManyPages && isPageTwoMissing && hasEnoughPositions;\r\n }\r\n\r\n private showEllipsisBeforeLast(pages: number[], page: number, availablePositions: number): boolean {\r\n const totalPages = pages[pages.length - 1];\r\n\r\n if (!totalPages) {\r\n throw new Error(\"No totalPages\");\r\n }\r\n\r\n const isLastPage = pages.indexOf(page) === pages.length - 1;\r\n const hasManyPages = totalPages > availablePositions - (this.totalPages ? 2 : 6);\r\n const isSecondLastPageMissing = !pages.includes(totalPages - 1);\r\n const hasEnoughPositions = availablePositions >= 7;\r\n\r\n return isLastPage && hasManyPages && isSecondLastPageMissing && hasEnoughPositions;\r\n }\r\n\r\n private showEllipsisLastWithoutTotal(pages: number[], page: number, totalPages?: number) {\r\n return totalPages ? false : pages.at(-1) === page;\r\n }\r\n\r\n private getPageRangeWithoutTotalPages(currentPage: number, availablePositions: number): number[] {\r\n const positionRange = availablePositions >= 9 ? 2 : 0;\r\n const start = Math.max(1, currentPage - positionRange);\r\n\r\n // Creates an array of numbers from `start` to `currentPage + 1`\r\n const result = Array.from({ length: currentPage - start + 2 }, (_, i) => start + i);\r\n\r\n // Adds 1 to the start of the result array if `start` is >= 2\r\n if (start >= 2) result.unshift(1);\r\n\r\n return result;\r\n }\r\n}\r\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dso-pagination.entry.esm.js","sources":["src/components/pagination/pagination.scss?tag=dso-pagination&encapsulation=shadow","src/components/pagination/pagination.tsx"],"sourcesContent":["@use \"~dso-toolkit/src/utilities\";\r\n@use \"~dso-toolkit/src/variables/units\";\r\n@use \"~dso-toolkit/src/variables/colors\";\r\n@use \"pagination.variables\" as pagination-variables;\r\n\r\n:host {\r\n display: block;\r\n}\r\n\r\n@include utilities.box-sizing();\r\n\r\n.pagination {\r\n ul {\r\n padding-inline-start: initial;\r\n text-align: center;\r\n\r\n > li {\r\n display: inline-block;\r\n font-weight: bold;\r\n line-height: calc(pagination-variables.$item-size - pagination-variables.$border-size * 2);\r\n text-align: center;\r\n vertical-align: middle;\r\n\r\n > a,\r\n > span {\r\n align-items: center;\r\n color: colors.$grasgroen;\r\n display: flex;\r\n block-size: pagination-variables.$item-size;\r\n justify-content: center;\r\n position: relative;\r\n min-inline-size: pagination-variables.$item-size;\r\n padding: #{units.$u1 * 0.25};\r\n padding-block: units.$u1 * 0.25;\r\n padding-inline: units.$u1 * 0.25;\r\n }\r\n\r\n > a:active {\r\n background-color: colors.$grasgroen-10;\r\n }\r\n\r\n > span {\r\n border: pagination-variables.$border-size solid transparent;\r\n border-radius: pagination-variables.$item-size * 0.5;\r\n }\r\n\r\n a {\r\n line-height: pagination-variables.$line-height;\r\n text-decoration: none;\r\n\r\n &:hover,\r\n &:focus {\r\n text-decoration: none;\r\n\r\n &::after {\r\n border-block-end-color: colors.$grasgroen;\r\n }\r\n }\r\n\r\n &::after {\r\n border-block-end: 3px solid transparent;\r\n inset-block-end: 0;\r\n content: \"\";\r\n display: inline-block;\r\n inset-inline-start: 0;\r\n position: absolute;\r\n inline-size: 100%;\r\n }\r\n }\r\n\r\n &.active {\r\n span {\r\n background-color: colors.$grasgroen;\r\n color: colors.$wit;\r\n }\r\n }\r\n\r\n & + li {\r\n margin-inline-start: units.$u1;\r\n }\r\n }\r\n }\r\n}\r\n\r\n.dso-page-hidden {\r\n visibility: hidden;\r\n}\r\n\r\n.sr-only.sr-only {\r\n // class daisy-chained to prevent overwrites by other more specific styling set on this element.\r\n @include utilities.sr-only();\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 Listen,\r\n Prop,\r\n State,\r\n h,\r\n} from \"@stencil/core\";\r\n\r\nimport { isModifiedEvent } from \"../../utils/is-modified-event\";\r\nimport { ResponsiveElementSize } from \"../responsive-element/responsive-element.interfaces\";\r\n\r\nimport { PaginationSelectPageEvent } from \"./pagination.interfaces\";\r\n\r\n@Component({\r\n tag: \"dso-pagination\",\r\n styleUrl: \"pagination.scss\",\r\n shadow: true,\r\n})\r\nexport class Pagination implements ComponentInterface {\r\n private sizePositionsMap: Record<ResponsiveElementSize, number> = {\r\n small: 7,\r\n medium: 9,\r\n large: 11,\r\n };\r\n\r\n private responsiveElement?: HTMLDsoResponsiveElementElement;\r\n\r\n @Element()\r\n host!: HTMLDsoPaginationElement;\r\n\r\n @State()\r\n availablePositions?: number;\r\n /**\r\n * Total pages\r\n */\r\n @Prop()\r\n totalPages?: number;\r\n\r\n /**\r\n * Current page\r\n */\r\n @Prop()\r\n currentPage?: number;\r\n\r\n /**\r\n * This function is called to format the href\r\n */\r\n @Prop()\r\n formatHref: (page: number) => string = (page) => \"#\" + page;\r\n\r\n /**\r\n * Emitted on page select\r\n */\r\n @Event()\r\n dsoSelectPage!: EventEmitter<PaginationSelectPageEvent>;\r\n\r\n /**\r\n * Listens to the dsoSizeChange event on Responsive Element\r\n */\r\n @Listen(\"dsoSizeChange\")\r\n sizeChangeHandler(event: CustomEvent<ResponsiveElementSize>) {\r\n this.availablePositions = this.getAvailablePositions(this.sizePositionsMap[event.detail]);\r\n }\r\n\r\n private clickHandler(e: MouseEvent, page: number) {\r\n this.dsoSelectPage.emit({\r\n originalEvent: e,\r\n page,\r\n isModifiedEvent: isModifiedEvent(e),\r\n });\r\n }\r\n\r\n componentDidLoad(): void {\r\n this.responsiveElement\r\n ?.getSize()\r\n .then(\r\n (size: ResponsiveElementSize) =>\r\n (this.availablePositions = this.getAvailablePositions(this.sizePositionsMap[size])),\r\n );\r\n }\r\n\r\n render() {\r\n if (!this.totalPages && !this.currentPage) {\r\n return null;\r\n }\r\n\r\n if (this.availablePositions === undefined) {\r\n return <dso-responsive-element ref={(element) => (this.responsiveElement = element)}></dso-responsive-element>;\r\n }\r\n\r\n const availablePositions = this.availablePositions;\r\n\r\n const currentPage = this.currentPage ?? 0;\r\n\r\n const pages: number[] = this.getPages(currentPage, this.availablePositions, this.totalPages);\r\n\r\n return (\r\n <dso-responsive-element ref={(element) => (this.responsiveElement = element)}>\r\n <nav class=\"pagination\" aria-label=\"Paginering\">\r\n <ul>\r\n <li class={currentPage <= 1 || !currentPage ? \"dso-page-hidden\" : undefined}>\r\n <a\r\n href={this.formatHref(currentPage - 1)}\r\n aria-label=\"Vorige\"\r\n onClick={(e) => currentPage && this.clickHandler(e, currentPage - 1)}\r\n >\r\n <dso-icon icon=\"chevron-left\"></dso-icon>\r\n </a>\r\n </li>\r\n {pages.map((page) => (\r\n <Fragment>\r\n {this.showEllipsisBeforeLast(pages, page, availablePositions) && (\r\n <li>\r\n <span>...</span>\r\n </li>\r\n )}\r\n\r\n <li key={page} class={currentPage === page ? \"active\" : undefined}>\r\n {currentPage === page ? (\r\n <span aria-current=\"page\">{page}</span>\r\n ) : (\r\n <a href={this.formatHref(page)} onClick={(e) => this.clickHandler(e, page)}>\r\n {page}\r\n </a>\r\n )}\r\n {page === this.totalPages ? <span class=\"sr-only\"> (laatste pagina)</span> : null}\r\n </li>\r\n\r\n {this.showEllipsisAfterFirst(pages, page, availablePositions) && (\r\n <li>\r\n <span>...</span>\r\n </li>\r\n )}\r\n\r\n {this.showEllipsisLastWithoutTotal(pages, page, this.totalPages) && (\r\n <li>\r\n <span>...</span>\r\n </li>\r\n )}\r\n </Fragment>\r\n ))}\r\n <li\r\n class={\r\n (this.totalPages && currentPage >= this.totalPages) || !currentPage ? \"dso-page-hidden\" : undefined\r\n }\r\n >\r\n <a\r\n href={this.formatHref(currentPage + 1)}\r\n aria-label=\"Volgende\"\r\n onClick={(e) => currentPage && this.clickHandler(e, currentPage + 1)}\r\n >\r\n <dso-icon icon=\"chevron-right\"></dso-icon>\r\n </a>\r\n </li>\r\n </ul>\r\n </nav>\r\n </dso-responsive-element>\r\n );\r\n }\r\n\r\n private getAvailablePositions(sizePositions: number) {\r\n if (sizePositions % 2 === 0) {\r\n // Even aantal posities zorgt voor een scheve pagination\r\n return sizePositions - 1;\r\n }\r\n if (sizePositions <= 3) {\r\n // Voor het kunnen tonen van de vorige knop, volgende knop en 1 pagina zijn minimaal 3 posities nodig.\r\n return 3;\r\n }\r\n\r\n return sizePositions;\r\n }\r\n\r\n private getPages(currentPage: number, availablePositions: number, totalPages?: number): number[] {\r\n if (totalPages) {\r\n if (totalPages + 2 <= availablePositions) {\r\n // + 2 voor de vorige en volgende knop\r\n return Array.from({ length: totalPages }, (_value, i) => i + 1);\r\n }\r\n\r\n if (availablePositions === 3) {\r\n return [currentPage];\r\n }\r\n\r\n if (availablePositions === 5) {\r\n return [1, currentPage, totalPages];\r\n }\r\n\r\n return [1, ...this.getPageRange(currentPage, availablePositions, totalPages), totalPages];\r\n }\r\n return this.getPageRangeWithoutTotalPages(currentPage, availablePositions);\r\n }\r\n\r\n private getPageRange(currentPage: number, availablePositions: number, totalPages: number): number[] {\r\n const range: number[] = [];\r\n\r\n const positionRange = Math.floor(availablePositions / 2);\r\n\r\n if (currentPage <= positionRange) {\r\n for (let i = 2; i <= availablePositions - 4; i++) {\r\n range.push(i);\r\n }\r\n }\r\n\r\n if (currentPage >= positionRange && currentPage <= totalPages - positionRange) {\r\n if (positionRange === 1) {\r\n if (currentPage > totalPages - 2) {\r\n range.push(totalPages - 2);\r\n }\r\n\r\n range.push(currentPage);\r\n\r\n if (currentPage < 3) {\r\n range.push(3);\r\n }\r\n }\r\n\r\n if (positionRange > 1) {\r\n const pagesBeforeOrAfter = positionRange - 3;\r\n\r\n for (\r\n let i = Math.min(currentPage - pagesBeforeOrAfter, totalPages - positionRange);\r\n i <= Math.max(currentPage + pagesBeforeOrAfter, positionRange);\r\n i++\r\n ) {\r\n if (i > 2 && i < totalPages - 1) {\r\n range.push(i);\r\n }\r\n }\r\n }\r\n }\r\n\r\n if (currentPage > totalPages - positionRange) {\r\n for (let i = totalPages - (availablePositions - 5); i <= totalPages - 1; i++) {\r\n range.push(i);\r\n }\r\n }\r\n\r\n return range.filter((v, i, a) => a.indexOf(v) === i);\r\n }\r\n\r\n private showEllipsisAfterFirst(pages: number[], page: number, availablePositions: number): boolean {\r\n const totalPages = pages[pages.length - 1];\r\n\r\n if (!totalPages) {\r\n throw new Error(\"No totalPages\");\r\n }\r\n\r\n const isFirstPage = pages.indexOf(page) === 0;\r\n const hasManyPages = totalPages > availablePositions - (this.totalPages ? 2 : 6);\r\n const isPageTwoMissing = !pages.includes(2);\r\n const hasEnoughPositions = availablePositions >= 7;\r\n\r\n return isFirstPage && hasManyPages && isPageTwoMissing && hasEnoughPositions;\r\n }\r\n\r\n private showEllipsisBeforeLast(pages: number[], page: number, availablePositions: number): boolean {\r\n const totalPages = pages[pages.length - 1];\r\n\r\n if (!totalPages) {\r\n throw new Error(\"No totalPages\");\r\n }\r\n\r\n const isLastPage = pages.indexOf(page) === pages.length - 1;\r\n const hasManyPages = totalPages > availablePositions - (this.totalPages ? 2 : 6);\r\n const isSecondLastPageMissing = !pages.includes(totalPages - 1);\r\n const hasEnoughPositions = availablePositions >= 7;\r\n\r\n return isLastPage && hasManyPages && isSecondLastPageMissing && hasEnoughPositions;\r\n }\r\n\r\n private showEllipsisLastWithoutTotal(pages: number[], page: number, totalPages?: number) {\r\n return totalPages ? false : pages.at(-1) === page;\r\n }\r\n\r\n private getPageRangeWithoutTotalPages(currentPage: number, availablePositions: number): number[] {\r\n const positionRange = availablePositions >= 9 ? 2 : 0;\r\n const start = Math.max(1, currentPage - positionRange);\r\n\r\n // Creates an array of numbers from `start` to `currentPage + 1`\r\n const result = Array.from({ length: currentPage - start + 2 }, (_, i) => start + i);\r\n\r\n // Adds 1 to the start of the result array if `start` is >= 2\r\n if (start >= 2) result.unshift(1);\r\n\r\n return result;\r\n }\r\n}\r\n"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"dso-plekinfo-card.entry.esm.js","sources":["src/components/plekinfo-card/plekinfo-card.scss?tag=dso-plekinfo-card&encapsulation=shadow","src/components/plekinfo-card/plekinfo-card.tsx"],"sourcesContent":["@use \"~dso-toolkit/src/utilities\";\r\n@use \"~dso-toolkit/src/variables/media-query-breakpoints\";\r\n@use \"~dso-toolkit/src/variables/units\";\r\n@use \"~dso-toolkit/src/components/plekinfo-card\";\r\n@use \"~dso-toolkit/src/variables/colors\";\r\n\r\n@use \"~dso-toolkit/src/components/insert/insert\";\r\n@use \"~dso-toolkit/src/components/delete/delete\";\r\n\r\n@include utilities.box-sizing();\r\n\r\n:host {\r\n display: block;\r\n}\r\n\r\n.dso-plekinfo-card-container {\r\n padding-block: units.$u2;\r\n padding-inline: units.$u2;\r\n inline-size: 100%;\r\n\r\n .dso-plekinfo-card-heading {\r\n display: flex;\r\n align-items: start;\r\n column-gap: units.$u1;\r\n\r\n @media screen and (max-width: media-query-breakpoints.$screen-xs-min) {\r\n flex-wrap: wrap;\r\n }\r\n }\r\n\r\n .dso-plekinfo-card-heading + .dso-plekinfo-card-content {\r\n margin-block-start: units.$u1;\r\n }\r\n\r\n .dso-plekinfo-card-symbol {\r\n grid-row: span 2;\r\n\r\n margin-inline-end: units.$u1;\r\n }\r\n\r\n &:has(.dso-plekinfo-card-heading a:is(:hover, :focus-visible)) {\r\n background-color: plekinfo-card.$background-color-hover;\r\n }\r\n}\r\n\r\nins.dso-plekinfo-card-container {\r\n &:has(.dso-plekinfo-card-heading a:is(:hover, :focus-visible)) {\r\n background-color: plekinfo-card.$background-color-hover-voegtoe;\r\n }\r\n}\r\n\r\ndel.dso-plekinfo-card-container {\r\n &:has(.dso-plekinfo-card-heading a:is(:hover, :focus-visible)) {\r\n background-color: plekinfo-card.$background-color-hover-verwijder;\r\n }\r\n}\r\n\r\n:host([active]:not([active=\"false\"])) {\r\n .dso-plekinfo-card-container {\r\n background-color: plekinfo-card.$background-color-active;\r\n }\r\n\r\n ins.dso-plekinfo-card-container {\r\n background-color: plekinfo-card.$background-color-active-voegtoe;\r\n }\r\n\r\n del.dso-plekinfo-card-container {\r\n background-color: plekinfo-card.$background-color-active-verwijder;\r\n }\r\n}\r\n\r\n:host([has-symbol]) {\r\n .dso-plekinfo-card-container {\r\n display: grid;\r\n grid-template-columns: 1fr minmax(0, 100%);\r\n\r\n .dso-plekinfo-card-heading,\r\n .dso-plekinfo-card-content {\r\n grid-column: 2 /-1;\r\n }\r\n }\r\n}\r\n\r\n::slotted([slot=\"meta\"]) {\r\n display: flex !important;\r\n justify-content: space-between !important;\r\n flex-shrink: 0 !important;\r\n align-self: end !important;\r\n\r\n @media screen and (max-width: media-query-breakpoints.$screen-xs-min) {\r\n flex-basis: 100% !important;\r\n margin-block-start: units.$u1 !important;\r\n }\r\n}\r\n\r\n::slotted([slot=\"heading\"]) {\r\n display: inline !important;\r\n\r\n font-size: 1.125em !important;\r\n font-weight: 700 !important;\r\n color: colors.$bosgroen !important;\r\n line-height: 1.25 !important;\r\n\r\n margin-block-end: 0 !important;\r\n margin-block-start: 0 !important;\r\n}\r\n\r\n::slotted([slot=\"content\"]) {\r\n --_dt-rich-content-margin-block: #{units.$u1};\r\n --_dt-rich-content-margin-block-end: 0;\r\n --_dt-rich-content-margin-block-start: 0;\r\n}\r\n\r\n::slotted([slot=\"interaction\"]) {\r\n display: flex !important;\r\n justify-content: space-between !important;\r\n margin-inline-start: auto !important;\r\n\r\n @media screen and (max-width: media-query-breakpoints.$screen-xs-min) {\r\n flex-basis: 100% !important;\r\n margin-block-start: units.$u2 !important;\r\n }\r\n}\r\n\r\n.heading-anchor {\r\n color: plekinfo-card.$heading-anchor-color;\r\n text-decoration: none;\r\n\r\n &:hover {\r\n color: plekinfo-card.$heading-anchor-hover-color;\r\n text-decoration: underline;\r\n }\r\n\r\n &:visited {\r\n color: plekinfo-card.$heading-anchor-color;\r\n }\r\n\r\n .sr-only {\r\n @include utilities.sr-only();\r\n }\r\n\r\n .icon-container {\r\n position: relative;\r\n padding-inline-end: units.$u3;\r\n\r\n dso-icon {\r\n position: absolute;\r\n inset-inline-end: 0;\r\n inset-block-end: -3px;\r\n block-size: units.$u3;\r\n inline-size: units.$u3;\r\n }\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 FunctionalComponent,\r\n Host,\r\n Prop,\r\n forceUpdate,\r\n h,\r\n} from \"@stencil/core\";\r\n\r\nimport { isModifiedEvent } from \"../../utils/is-modified-event\";\r\n\r\nimport { PlekinfoCardClickEvent, PlekinfoWijzigactie } from \"./plekinfo-card.interfaces\";\r\n\r\ninterface WrapWijzigactieProps {\r\n wijzigactie: PlekinfoWijzigactie | undefined;\r\n}\r\n\r\nconst WrapWijzigactie: FunctionalComponent<WrapWijzigactieProps> = ({ wijzigactie }, children) => {\r\n if (wijzigactie === \"voegtoe\") {\r\n return <ins class=\"dso-plekinfo-card-container\">{children}</ins>;\r\n }\r\n\r\n if (wijzigactie === \"verwijder\") {\r\n return <del class=\"dso-plekinfo-card-container\">{children}</del>;\r\n }\r\n\r\n return <div class=\"dso-plekinfo-card-container\">{children}</div>;\r\n};\r\n\r\n/**\r\n * @slot symbol - An optional slot to place a symbol, representing the plekinfo item, in.\r\n * @slot heading - A slot to place the title of the card in.\r\n * @slot meta - An optional slot to place a `Label` in.\r\n * @slot content - An optional slot to place `Rich Content` in.\r\n * @slot interaction - A slot for the `SlideToggle`s elments.\r\n *\r\n */\r\n@Component({\r\n tag: \"dso-plekinfo-card\",\r\n styleUrl: \"plekinfo-card.scss\",\r\n shadow: true,\r\n})\r\nexport class PlekinfoCard implements ComponentInterface {\r\n @Element()\r\n host!: HTMLDsoPlekinfoCardElement;\r\n\r\n /**\r\n * An optional 'wijzigactie' that signals if the plekinfo on the card is added or removed.\r\n */\r\n @Prop({ reflect: true })\r\n wijzigactie?: PlekinfoWijzigactie;\r\n\r\n /**\r\n * The URL to which the PlekinfoCard heading links.\r\n */\r\n @Prop({ reflect: true })\r\n href!: string | undefined;\r\n\r\n /**\r\n * Opens the urls in a new window or tab\r\n */\r\n @Prop()\r\n targetBlank: boolean = false;\r\n\r\n /**\r\n * Makes the PlekinfoCard active.\r\n */\r\n @Prop({ reflect: true })\r\n active?: boolean;\r\n\r\n /**\r\n * Emitted when the PlekinfoCard heading is clicked.\r\n */\r\n @Event()\r\n dsoPlekinfoCardClick!: EventEmitter<PlekinfoCardClickEvent>;\r\n\r\n private mutationObserver?: MutationObserver;\r\n\r\n connectedCallback(): void {\r\n this.mutationObserver = new MutationObserver(() => forceUpdate(this.host));\r\n\r\n this.mutationObserver.observe(this.host, { attributes: true, childList: true });\r\n }\r\n\r\n disconnectedCallback(): void {\r\n this.mutationObserver?.disconnect();\r\n\r\n delete this.mutationObserver;\r\n }\r\n\r\n private clickEventHandler(e: MouseEvent) {\r\n if (!(e.target instanceof HTMLElement) || !this.href) {\r\n return;\r\n }\r\n\r\n return this.dsoPlekinfoCardClick.emit({ originalEvent: e, isModifiedEvent: isModifiedEvent(e) });\r\n }\r\n\r\n get symbolSlottedElement() {\r\n return this.host.querySelector(\"[slot='symbol']\");\r\n }\r\n\r\n get metaSlottedElement() {\r\n return this.host.querySelector(\"[slot='meta']\");\r\n }\r\n\r\n get interaction() {\r\n return this.host.querySelector(\"[slot='interaction']\");\r\n }\r\n\r\n render() {\r\n const hasSymbol = this.symbolSlottedElement !== null;\r\n\r\n return (\r\n <Host has-symbol={hasSymbol}>\r\n <WrapWijzigactie wijzigactie={this.wijzigactie}>\r\n <div class=\"dso-plekinfo-card-symbol\" hidden={!hasSymbol}>\r\n <slot name=\"symbol\" />\r\n </div>\r\n <div class=\"dso-plekinfo-card-heading\">\r\n {this.href ? (\r\n <a\r\n href={this.href}\r\n target={this.targetBlank ? \"_blank\" : undefined}\r\n rel={this.targetBlank ? \"noopener noreferrer\" : undefined}\r\n class=\"heading-anchor\"\r\n onClick={(e) => this.clickEventHandler(e)}\r\n >\r\n <span class=\"icon-container\">\r\n {this.targetBlank ? (\r\n <>\r\n <dso-icon icon=\"external-link\" />\r\n <span class=\"sr-only\">(Opent andere website in nieuw tabblad)</span>\r\n </>\r\n ) : (\r\n <dso-icon icon=\"chevron-right\" />\r\n )}\r\n <slot name=\"heading\" />\r\n </span>\r\n </a>\r\n ) : (\r\n <slot name=\"heading\" />\r\n )}\r\n {this.metaSlottedElement !== null && <slot name=\"meta\" />}\r\n {this.interaction !== null && <slot name=\"interaction\" />}\r\n </div>\r\n <div class=\"dso-plekinfo-card-content\">\r\n <slot name=\"content\" />\r\n </div>\r\n </WrapWijzigactie>\r\n </Host>\r\n );\r\n }\r\n}\r\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dso-plekinfo-card.entry.esm.js","sources":["src/components/plekinfo-card/plekinfo-card.scss?tag=dso-plekinfo-card&encapsulation=shadow","src/components/plekinfo-card/plekinfo-card.tsx"],"sourcesContent":["@use \"~dso-toolkit/src/utilities\";\r\n@use \"~dso-toolkit/src/variables/media-query-breakpoints\";\r\n@use \"~dso-toolkit/src/variables/units\";\r\n@use \"~dso-toolkit/src/components/plekinfo-card\";\r\n@use \"~dso-toolkit/src/variables/colors\";\r\n\r\n@use \"~dso-toolkit/src/components/insert/insert\";\r\n@use \"~dso-toolkit/src/components/delete/delete\";\r\n\r\n@include utilities.box-sizing();\r\n\r\n:host {\r\n display: block;\r\n}\r\n\r\n.dso-plekinfo-card-container {\r\n padding-block: units.$u2;\r\n padding-inline: units.$u2;\r\n inline-size: 100%;\r\n\r\n .dso-plekinfo-card-heading {\r\n display: flex;\r\n align-items: start;\r\n column-gap: units.$u1;\r\n\r\n @media screen and (max-width: media-query-breakpoints.$screen-xs-min) {\r\n flex-wrap: wrap;\r\n }\r\n }\r\n\r\n .dso-plekinfo-card-heading + .dso-plekinfo-card-content {\r\n margin-block-start: units.$u1;\r\n }\r\n\r\n .dso-plekinfo-card-symbol {\r\n grid-row: span 2;\r\n\r\n margin-inline-end: units.$u1;\r\n }\r\n\r\n &:has(.dso-plekinfo-card-heading a:is(:hover, :focus-visible)) {\r\n background-color: plekinfo-card.$background-color-hover;\r\n }\r\n}\r\n\r\nins.dso-plekinfo-card-container {\r\n &:has(.dso-plekinfo-card-heading a:is(:hover, :focus-visible)) {\r\n background-color: plekinfo-card.$background-color-hover-voegtoe;\r\n }\r\n}\r\n\r\ndel.dso-plekinfo-card-container {\r\n &:has(.dso-plekinfo-card-heading a:is(:hover, :focus-visible)) {\r\n background-color: plekinfo-card.$background-color-hover-verwijder;\r\n }\r\n}\r\n\r\n:host([active]:not([active=\"false\"])) {\r\n .dso-plekinfo-card-container {\r\n background-color: plekinfo-card.$background-color-active;\r\n }\r\n\r\n ins.dso-plekinfo-card-container {\r\n background-color: plekinfo-card.$background-color-active-voegtoe;\r\n }\r\n\r\n del.dso-plekinfo-card-container {\r\n background-color: plekinfo-card.$background-color-active-verwijder;\r\n }\r\n}\r\n\r\n:host([has-symbol]) {\r\n .dso-plekinfo-card-container {\r\n display: grid;\r\n grid-template-columns: 1fr minmax(0, 100%);\r\n\r\n .dso-plekinfo-card-heading,\r\n .dso-plekinfo-card-content {\r\n grid-column: 2 /-1;\r\n }\r\n }\r\n}\r\n\r\n::slotted([slot=\"meta\"]) {\r\n display: flex !important;\r\n justify-content: space-between !important;\r\n flex-shrink: 0 !important;\r\n align-self: end !important;\r\n\r\n @media screen and (max-width: media-query-breakpoints.$screen-xs-min) {\r\n flex-basis: 100% !important;\r\n margin-block-start: units.$u1 !important;\r\n }\r\n}\r\n\r\n::slotted([slot=\"heading\"]) {\r\n display: inline !important;\r\n\r\n font-size: 1.125em !important;\r\n font-weight: 700 !important;\r\n color: colors.$bosgroen !important;\r\n line-height: 1.25 !important;\r\n\r\n margin-block-end: 0 !important;\r\n margin-block-start: 0 !important;\r\n}\r\n\r\n::slotted([slot=\"content\"]) {\r\n --_dt-rich-content-margin-block: #{units.$u1};\r\n --_dt-rich-content-margin-block-end: 0;\r\n --_dt-rich-content-margin-block-start: 0;\r\n}\r\n\r\n::slotted([slot=\"interaction\"]) {\r\n display: flex !important;\r\n justify-content: space-between !important;\r\n margin-inline-start: auto !important;\r\n\r\n @media screen and (max-width: media-query-breakpoints.$screen-xs-min) {\r\n flex-basis: 100% !important;\r\n margin-block-start: units.$u2 !important;\r\n }\r\n}\r\n\r\n.heading-anchor {\r\n color: plekinfo-card.$heading-anchor-color;\r\n text-decoration: none;\r\n\r\n &:hover {\r\n color: plekinfo-card.$heading-anchor-hover-color;\r\n text-decoration: underline;\r\n }\r\n\r\n &:visited {\r\n color: plekinfo-card.$heading-anchor-color;\r\n }\r\n\r\n .sr-only {\r\n @include utilities.sr-only();\r\n }\r\n\r\n .icon-container {\r\n position: relative;\r\n padding-inline-end: units.$u3;\r\n\r\n dso-icon {\r\n position: absolute;\r\n inset-inline-end: 0;\r\n inset-block-end: -3px;\r\n block-size: units.$u3;\r\n inline-size: units.$u3;\r\n }\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 FunctionalComponent,\r\n Host,\r\n Prop,\r\n forceUpdate,\r\n h,\r\n} from \"@stencil/core\";\r\n\r\nimport { isModifiedEvent } from \"../../utils/is-modified-event\";\r\n\r\nimport { PlekinfoCardClickEvent, PlekinfoWijzigactie } from \"./plekinfo-card.interfaces\";\r\n\r\ninterface WrapWijzigactieProps {\r\n wijzigactie: PlekinfoWijzigactie | undefined;\r\n}\r\n\r\nconst WrapWijzigactie: FunctionalComponent<WrapWijzigactieProps> = ({ wijzigactie }, children) => {\r\n if (wijzigactie === \"voegtoe\") {\r\n return <ins class=\"dso-plekinfo-card-container\">{children}</ins>;\r\n }\r\n\r\n if (wijzigactie === \"verwijder\") {\r\n return <del class=\"dso-plekinfo-card-container\">{children}</del>;\r\n }\r\n\r\n return <div class=\"dso-plekinfo-card-container\">{children}</div>;\r\n};\r\n\r\n/**\r\n * @slot symbol - An optional slot to place a symbol, representing the plekinfo item, in.\r\n * @slot heading - A slot to place the title of the card in.\r\n * @slot meta - An optional slot to place a `Label` in.\r\n * @slot content - An optional slot to place `Rich Content` in.\r\n * @slot interaction - A slot for the `SlideToggle`s elments.\r\n *\r\n */\r\n@Component({\r\n tag: \"dso-plekinfo-card\",\r\n styleUrl: \"plekinfo-card.scss\",\r\n shadow: true,\r\n})\r\nexport class PlekinfoCard implements ComponentInterface {\r\n @Element()\r\n host!: HTMLDsoPlekinfoCardElement;\r\n\r\n /**\r\n * An optional 'wijzigactie' that signals if the plekinfo on the card is added or removed.\r\n */\r\n @Prop({ reflect: true })\r\n wijzigactie?: PlekinfoWijzigactie;\r\n\r\n /**\r\n * The URL to which the PlekinfoCard heading links.\r\n */\r\n @Prop({ reflect: true })\r\n href!: string | undefined;\r\n\r\n /**\r\n * Opens the urls in a new window or tab\r\n */\r\n @Prop()\r\n targetBlank: boolean = false;\r\n\r\n /**\r\n * Makes the PlekinfoCard active.\r\n */\r\n @Prop({ reflect: true })\r\n active?: boolean;\r\n\r\n /**\r\n * Emitted when the PlekinfoCard heading is clicked.\r\n */\r\n @Event()\r\n dsoPlekinfoCardClick!: EventEmitter<PlekinfoCardClickEvent>;\r\n\r\n private mutationObserver?: MutationObserver;\r\n\r\n connectedCallback(): void {\r\n this.mutationObserver = new MutationObserver(() => forceUpdate(this.host));\r\n\r\n this.mutationObserver.observe(this.host, { attributes: true, childList: true });\r\n }\r\n\r\n disconnectedCallback(): void {\r\n this.mutationObserver?.disconnect();\r\n\r\n delete this.mutationObserver;\r\n }\r\n\r\n private clickEventHandler(e: MouseEvent) {\r\n if (!(e.target instanceof HTMLElement) || !this.href) {\r\n return;\r\n }\r\n\r\n return this.dsoPlekinfoCardClick.emit({ originalEvent: e, isModifiedEvent: isModifiedEvent(e) });\r\n }\r\n\r\n get symbolSlottedElement() {\r\n return this.host.querySelector(\"[slot='symbol']\");\r\n }\r\n\r\n get metaSlottedElement() {\r\n return this.host.querySelector(\"[slot='meta']\");\r\n }\r\n\r\n get interaction() {\r\n return this.host.querySelector(\"[slot='interaction']\");\r\n }\r\n\r\n render() {\r\n const hasSymbol = this.symbolSlottedElement !== null;\r\n\r\n return (\r\n <Host has-symbol={hasSymbol}>\r\n <WrapWijzigactie wijzigactie={this.wijzigactie}>\r\n <div class=\"dso-plekinfo-card-symbol\" hidden={!hasSymbol}>\r\n <slot name=\"symbol\" />\r\n </div>\r\n <div class=\"dso-plekinfo-card-heading\">\r\n {this.href ? (\r\n <a\r\n href={this.href}\r\n target={this.targetBlank ? \"_blank\" : undefined}\r\n rel={this.targetBlank ? \"noopener noreferrer\" : undefined}\r\n class=\"heading-anchor\"\r\n onClick={(e) => this.clickEventHandler(e)}\r\n >\r\n <span class=\"icon-container\">\r\n {this.targetBlank ? (\r\n <>\r\n <dso-icon icon=\"external-link\" />\r\n <span class=\"sr-only\">(Opent andere website in nieuw tabblad)</span>\r\n </>\r\n ) : (\r\n <dso-icon icon=\"chevron-right\" />\r\n )}\r\n <slot name=\"heading\" />\r\n </span>\r\n </a>\r\n ) : (\r\n <slot name=\"heading\" />\r\n )}\r\n {this.metaSlottedElement !== null && <slot name=\"meta\" />}\r\n {this.interaction !== null && <slot name=\"interaction\" />}\r\n </div>\r\n <div class=\"dso-plekinfo-card-content\">\r\n <slot name=\"content\" />\r\n </div>\r\n </WrapWijzigactie>\r\n </Host>\r\n );\r\n }\r\n}\r\n"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"dso-progress-indicator.entry.esm.js","sources":["src/components/progress-indicator/progress-indicator.i18n.ts","src/components/progress-indicator/progress-indicator.scss?tag=dso-progress-indicator&encapsulation=shadow","src/components/progress-indicator/progress-indicator.tsx"],"sourcesContent":["import { Resource } from \"../../utils/i18n\";\r\n\r\nexport const translations: Resource = {\r\n en: {\r\n \"dso-progress-indicator\": {\r\n label: \"Loading results. Please wait...\",\r\n },\r\n },\r\n nl: {\r\n \"dso-progress-indicator\": {\r\n label: \"Resultaten laden: een moment geduld alstublieft.\",\r\n },\r\n },\r\n};\r\n","@use \"~dso-toolkit/src/utilities\";\r\n@use \"~dso-toolkit/src/components/progress-indicator\";\r\n\r\n@include utilities.box-sizing();\r\n@include progress-indicator.root();\r\n\r\n:host([block]) {\r\n @include progress-indicator.block();\r\n}\r\n\r\n:host([size=\"small\"]),\r\n:host(:not([size=\"medium\"]):not([size=\"large\"])) {\r\n @include progress-indicator.small();\r\n\r\n &:host([block]) {\r\n @include progress-indicator.small-block();\r\n }\r\n}\r\n\r\n:host([size=\"medium\"]) {\r\n @include progress-indicator.medium();\r\n\r\n &:host([block]) {\r\n @include progress-indicator.medium-block();\r\n }\r\n}\r\n\r\n:host([size=\"large\"]) {\r\n @include progress-indicator.large();\r\n\r\n &:host([block]) {\r\n @include progress-indicator.large-block();\r\n }\r\n}\r\n","import { Component, Element, Host, Prop, h } from \"@stencil/core\";\r\n\r\nimport { i18n } from \"../../utils/i18n\";\r\n\r\nimport { translations } from \"./progress-indicator.i18n\";\r\n\r\n@Component({\r\n tag: \"dso-progress-indicator\",\r\n styleUrl: \"progress-indicator.scss\",\r\n shadow: true,\r\n})\r\nexport class Progressindicator {\r\n @Element()\r\n host!: HTMLDsoProgressIndicatorElement;\r\n\r\n /**\r\n * The label of the Progress Indicator.\r\n */\r\n @Prop()\r\n label?: string;\r\n\r\n /**\r\n * The size (width) of the Progress Indicator.\r\n *\r\n * If no size is set, falls back to `small`.\r\n */\r\n @Prop({ reflect: true })\r\n size?: \"small\" | \"medium\" | \"large\";\r\n\r\n /**\r\n * Set for bloatier Progress Indicator.\r\n */\r\n @Prop({ reflect: true })\r\n block?: boolean;\r\n\r\n private text = i18n(() => this.host, translations);\r\n\r\n render() {\r\n return (\r\n <Host>\r\n <span class=\"dso-progress-indicator-spinner\" role=\"progressbar\" aria-labelledby=\"progress-indicator-label\">\r\n <dso-icon icon=\"spinner\"></dso-icon>\r\n </span>\r\n <span id=\"progress-indicator-label\" class=\"dso-progress-indicator-label\">\r\n {this.label || this.text(\"label\")}\r\n </span>\r\n </Host>\r\n );\r\n }\r\n}\r\n"],"names":[],"mappings":";;;AAEO,MAAM,YAAY,GAAa;AACpC,IAAA,EAAE,EAAE;AACF,QAAA,wBAAwB,EAAE;AACxB,YAAA,KAAK,EAAE,iCAAiC;AACzC,SAAA;AACF,KAAA;AACD,IAAA,EAAE,EAAE;AACF,QAAA,wBAAwB,EAAE;AACxB,YAAA,KAAK,EAAE,kDAAkD;AAC1D,SAAA;AACF,KAAA;CACF;;ACbD,MAAM,oBAAoB,GAAG,kgCAAkgC;;MCWlhC,iBAAiB,GAAA,MAAA;AAL9B,IAAA,WAAA,CAAA,OAAA,EAAA;;AA6BU,QAAA,IAAA,CAAA,IAAI,GAAG,IAAI,CAAC,MAAM,IAAI,CAAC,IAAI,EAAE,YAAY,CAAC;AAcnD;IAZC,MAAM,GAAA;AACJ,QAAA,QACE,EAAC,IAAI,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,EACH,CAAM,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAC,gCAAgC,EAAC,IAAI,EAAC,aAAa,qBAAiB,0BAA0B,EAAA,EACxG,CAAA,CAAA,UAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAU,IAAI,EAAC,SAAS,EAAA,CAAY,CAC/B,EACP,CAAM,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,EAAE,EAAC,0BAA0B,EAAC,KAAK,EAAC,8BAA8B,IACrE,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAC5B,CACF;;;;;;;;"}
1
+ {"version":3,"file":"dso-progress-indicator.entry.esm.js","sources":["src/components/progress-indicator/progress-indicator.i18n.ts","src/components/progress-indicator/progress-indicator.scss?tag=dso-progress-indicator&encapsulation=shadow","src/components/progress-indicator/progress-indicator.tsx"],"sourcesContent":["import { Resource } from \"../../utils/i18n\";\r\n\r\nexport const translations: Resource = {\r\n en: {\r\n \"dso-progress-indicator\": {\r\n label: \"Loading results. Please wait...\",\r\n },\r\n },\r\n nl: {\r\n \"dso-progress-indicator\": {\r\n label: \"Resultaten laden: een moment geduld alstublieft.\",\r\n },\r\n },\r\n};\r\n","@use \"~dso-toolkit/src/utilities\";\r\n@use \"~dso-toolkit/src/variables/units\";\r\n\r\n@include utilities.box-sizing();\r\n\r\n@mixin _looping-size($progress-indicator-size) {\r\n .dso-progress-indicator-spinner,\r\n dso-icon {\r\n block-size: $progress-indicator-size;\r\n inline-size: $progress-indicator-size;\r\n }\r\n}\r\n\r\n.dso-progress-indicator-spinner {\r\n display: inline-block;\r\n margin: 0;\r\n position: relative;\r\n vertical-align: middle;\r\n}\r\n\r\nspan.dso-progress-indicator-label {\r\n margin-inline-start: units.$u2;\r\n vertical-align: middle;\r\n}\r\n\r\n:host([block]) {\r\n align-items: center;\r\n display: flex;\r\n justify-content: center;\r\n}\r\n\r\n:host([size=\"small\"]),\r\n:host(:not([size=\"medium\"]):not([size=\"large\"])) {\r\n @include _looping-size(24px);\r\n\r\n &:host([block]) {\r\n padding-block: units.$u1 * 1.5;\r\n padding-inline: units.$u2;\r\n }\r\n}\r\n\r\n:host([size=\"medium\"]) {\r\n @include _looping-size(32px);\r\n\r\n &:host([block]) {\r\n padding: units.$u2;\r\n }\r\n}\r\n\r\n:host([size=\"large\"]) {\r\n @include _looping-size(48px);\r\n\r\n &:host([block]) {\r\n padding-block: units.$u3;\r\n padding-inline: units.$u2;\r\n }\r\n}\r\n","import { Component, Element, Host, Prop, h } from \"@stencil/core\";\r\n\r\nimport { i18n } from \"../../utils/i18n\";\r\n\r\nimport { translations } from \"./progress-indicator.i18n\";\r\n\r\n@Component({\r\n tag: \"dso-progress-indicator\",\r\n styleUrl: \"progress-indicator.scss\",\r\n shadow: true,\r\n})\r\nexport class Progressindicator {\r\n @Element()\r\n host!: HTMLDsoProgressIndicatorElement;\r\n\r\n /**\r\n * The label of the Progress Indicator.\r\n */\r\n @Prop()\r\n label?: string;\r\n\r\n /**\r\n * The size (width) of the Progress Indicator.\r\n *\r\n * If no size is set, falls back to `small`.\r\n */\r\n @Prop({ reflect: true })\r\n size?: \"small\" | \"medium\" | \"large\";\r\n\r\n /**\r\n * Set for bloatier Progress Indicator.\r\n */\r\n @Prop({ reflect: true })\r\n block?: boolean;\r\n\r\n private text = i18n(() => this.host, translations);\r\n\r\n render() {\r\n return (\r\n <Host>\r\n <span class=\"dso-progress-indicator-spinner\" role=\"progressbar\" aria-labelledby=\"progress-indicator-label\">\r\n <dso-icon icon=\"spinner\"></dso-icon>\r\n </span>\r\n <span id=\"progress-indicator-label\" class=\"dso-progress-indicator-label\">\r\n {this.label || this.text(\"label\")}\r\n </span>\r\n </Host>\r\n );\r\n }\r\n}\r\n"],"names":[],"mappings":";;;AAEO,MAAM,YAAY,GAAa;AACpC,IAAA,EAAE,EAAE;AACF,QAAA,wBAAwB,EAAE;AACxB,YAAA,KAAK,EAAE,iCAAiC;AACzC,SAAA;AACF,KAAA;AACD,IAAA,EAAE,EAAE;AACF,QAAA,wBAAwB,EAAE;AACxB,YAAA,KAAK,EAAE,kDAAkD;AAC1D,SAAA;AACF,KAAA;CACF;;ACbD,MAAM,oBAAoB,GAAG,kgCAAkgC;;MCWlhC,iBAAiB,GAAA,MAAA;AAL9B,IAAA,WAAA,CAAA,OAAA,EAAA;;AA6BU,QAAA,IAAA,CAAA,IAAI,GAAG,IAAI,CAAC,MAAM,IAAI,CAAC,IAAI,EAAE,YAAY,CAAC;AAcnD;IAZC,MAAM,GAAA;AACJ,QAAA,QACE,EAAC,IAAI,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,EACH,CAAM,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAC,gCAAgC,EAAC,IAAI,EAAC,aAAa,qBAAiB,0BAA0B,EAAA,EACxG,CAAA,CAAA,UAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAU,IAAI,EAAC,SAAS,EAAA,CAAY,CAC/B,EACP,CAAM,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,EAAE,EAAC,0BAA0B,EAAC,KAAK,EAAC,8BAA8B,IACrE,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAC5B,CACF;;;;;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"dso-scrollable.entry.esm.js","sources":["src/components/scrollable/scrollable.scss?tag=dso-scrollable&encapsulation=shadow","src/components/scrollable/scrollable.tsx"],"sourcesContent":["@use \"~dso-toolkit/src/utilities\";\r\n@use \"~dso-toolkit/src/variables/units\";\r\n\r\n:host {\r\n display: block;\r\n block-size: 100%;\r\n overflow-y: hidden;\r\n}\r\n\r\n@include utilities.box-sizing();\r\n\r\n.dso-shadow-container {\r\n block-size: 100%;\r\n max-block-size: inherit;\r\n min-block-size: inherit;\r\n position: relative;\r\n\r\n .dso-scroll-container {\r\n block-size: 100%;\r\n max-block-size: inherit;\r\n min-block-size: inherit;\r\n overflow-y: auto;\r\n\r\n &::before,\r\n &::after {\r\n background-repeat: no-repeat;\r\n background-size: 100% units.$u3;\r\n content: \"\";\r\n display: block;\r\n block-size: units.$u3;\r\n inset-inline-start: 0;\r\n opacity: 0;\r\n overflow: visible;\r\n position: absolute;\r\n transition: opacity 150ms ease-in-out;\r\n inline-size: 100%;\r\n pointer-events: none;\r\n z-index: 1;\r\n }\r\n\r\n &::before {\r\n background-image: linear-gradient(to top, rgba(183, 183, 183, 0), rgba(183, 183, 183, 0.7));\r\n inset-block-start: 0;\r\n }\r\n\r\n &::after {\r\n background-image: linear-gradient(to bottom, rgba(183, 183, 183, 0), rgba(183, 183, 183, 0.7));\r\n inset-block-end: 0;\r\n }\r\n\r\n &.dso-scroll-bottom {\r\n &::before {\r\n opacity: 1;\r\n }\r\n }\r\n\r\n &.dso-scroll-top {\r\n &::after {\r\n opacity: 1;\r\n }\r\n }\r\n\r\n &.dso-scroll-middle {\r\n &::before,\r\n &::after {\r\n opacity: 1;\r\n }\r\n }\r\n }\r\n}\r\n","import { Component, Element, Event, EventEmitter, Method, State, h } from \"@stencil/core\";\r\nimport clsx from \"clsx\";\r\nimport debounce from \"debounce\";\r\n\r\nimport { DsoScrollEndEvent, ScrollPosition } from \"./scrollable.interfaces\";\r\n\r\nconst resizeObserver = new ResizeObserver(\r\n debounce(\r\n (entries: ResizeObserverEntry[]) =>\r\n entries.forEach((entry) => getScrollableComponentFromResizeObserverEntry(entry)?._setScrollState()),\r\n 50,\r\n ),\r\n);\r\n\r\nfunction getScrollableComponentFromResizeObserverEntry({\r\n target,\r\n}: ResizeObserverEntry): HTMLDsoScrollableElement | undefined {\r\n if (target.parentNode instanceof ShadowRoot && isDsoScrollableComponent(target.parentNode.host)) {\r\n return target.parentNode.host;\r\n }\r\n\r\n if (target.parentElement && isDsoScrollableComponent(target.parentElement)) {\r\n return target.parentElement;\r\n }\r\n\r\n return undefined;\r\n}\r\n\r\nfunction isDsoScrollableComponent(element: Element): element is HTMLDsoScrollableElement {\r\n return element.tagName === \"DSO-SCROLLABLE\";\r\n}\r\n\r\n@Component({\r\n tag: \"dso-scrollable\",\r\n styleUrl: \"scrollable.scss\",\r\n shadow: true,\r\n})\r\nexport class Scrollable {\r\n // One MutationObserver per instance because of https://github.com/whatwg/dom/issues/126\r\n private mutationObserver = new MutationObserver((entries) =>\r\n entries.forEach(({ target }) => {\r\n const element = target.parentElement?.closest(\"dso-scrollable\");\r\n if (element !== this.host) {\r\n return;\r\n }\r\n\r\n this._setScrollState();\r\n }),\r\n );\r\n\r\n private scrollContainerDiv?: HTMLDivElement;\r\n\r\n private shadowContainerDiv?: HTMLDivElement;\r\n\r\n @Element()\r\n host!: HTMLDsoScrollableElement;\r\n\r\n /**\r\n * Event emitted when the scrollbar has reached top or bottom.\r\n */\r\n @Event()\r\n dsoScrollEnd!: EventEmitter<DsoScrollEndEvent>;\r\n\r\n @State()\r\n scrollPosition: ScrollPosition = \"noScroll\";\r\n\r\n /**\r\n * @internal\r\n */\r\n @Method()\r\n async _setScrollState() {\r\n if (!this.host.isConnected) {\r\n return;\r\n }\r\n\r\n const scrollPosition = this.getScrollPosition();\r\n if (this.scrollPosition !== scrollPosition) {\r\n this.scrollPosition = scrollPosition;\r\n\r\n if (this.scrollPosition === \"top\" || this.scrollPosition === \"bottom\") {\r\n this.dsoScrollEnd.emit({ scrollEnd: this.scrollPosition });\r\n }\r\n }\r\n }\r\n\r\n private get slottedElements() {\r\n return Array.from(this.host.children);\r\n }\r\n\r\n private getScrollPosition(): ScrollPosition {\r\n if (!this.scrollContainerDiv) {\r\n return \"noScroll\";\r\n }\r\n\r\n const { scrollHeight, clientHeight, scrollTop } = this.scrollContainerDiv;\r\n\r\n if (scrollHeight <= clientHeight) {\r\n return \"noScroll\";\r\n }\r\n\r\n if (scrollTop === 0) {\r\n return \"top\";\r\n }\r\n\r\n if (scrollHeight - scrollTop - clientHeight < 1) {\r\n return \"bottom\";\r\n }\r\n\r\n if (scrollTop > 0) {\r\n return \"middle\";\r\n }\r\n\r\n return \"noScroll\";\r\n }\r\n\r\n componentDidLoad(): void {\r\n this.mutationObserver.observe(this.host, {\r\n characterData: true,\r\n attributes: false,\r\n childList: false,\r\n subtree: true,\r\n });\r\n\r\n if (this.shadowContainerDiv instanceof HTMLDivElement) {\r\n resizeObserver.observe(this.shadowContainerDiv);\r\n }\r\n\r\n this.slottedElements.forEach((element) => resizeObserver.observe(element));\r\n }\r\n\r\n disconnectedCallback(): void {\r\n if (this.shadowContainerDiv instanceof HTMLDivElement) {\r\n resizeObserver.unobserve(this.shadowContainerDiv);\r\n }\r\n\r\n this.mutationObserver.disconnect();\r\n\r\n this.slottedElements.forEach((element) => resizeObserver.unobserve(element));\r\n }\r\n\r\n render() {\r\n return (\r\n <div ref={(el) => (this.shadowContainerDiv = el)} class=\"dso-shadow-container\">\r\n <div\r\n ref={(el) => (this.scrollContainerDiv = el)}\r\n class={clsx(\"dso-scroll-container\", {\r\n [`dso-scroll-${this.scrollPosition}`]: this.scrollPosition !== \"noScroll\",\r\n })}\r\n onScroll={() => this._setScrollState()}\r\n >\r\n <slot></slot>\r\n </div>\r\n </div>\r\n );\r\n }\r\n}\r\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dso-scrollable.entry.esm.js","sources":["src/components/scrollable/scrollable.scss?tag=dso-scrollable&encapsulation=shadow","src/components/scrollable/scrollable.tsx"],"sourcesContent":["@use \"~dso-toolkit/src/utilities\";\r\n@use \"~dso-toolkit/src/variables/units\";\r\n\r\n:host {\r\n display: block;\r\n block-size: 100%;\r\n overflow-y: hidden;\r\n}\r\n\r\n@include utilities.box-sizing();\r\n\r\n.dso-shadow-container {\r\n block-size: 100%;\r\n max-block-size: inherit;\r\n min-block-size: inherit;\r\n position: relative;\r\n\r\n .dso-scroll-container {\r\n block-size: 100%;\r\n max-block-size: inherit;\r\n min-block-size: inherit;\r\n overflow-y: auto;\r\n\r\n &::before,\r\n &::after {\r\n background-repeat: no-repeat;\r\n background-size: 100% units.$u3;\r\n content: \"\";\r\n display: block;\r\n block-size: units.$u3;\r\n inset-inline-start: 0;\r\n opacity: 0;\r\n overflow: visible;\r\n position: absolute;\r\n transition: opacity 150ms ease-in-out;\r\n inline-size: 100%;\r\n pointer-events: none;\r\n z-index: 1;\r\n }\r\n\r\n &::before {\r\n background-image: linear-gradient(to top, rgba(183, 183, 183, 0), rgba(183, 183, 183, 0.7));\r\n inset-block-start: 0;\r\n }\r\n\r\n &::after {\r\n background-image: linear-gradient(to bottom, rgba(183, 183, 183, 0), rgba(183, 183, 183, 0.7));\r\n inset-block-end: 0;\r\n }\r\n\r\n &.dso-scroll-bottom {\r\n &::before {\r\n opacity: 1;\r\n }\r\n }\r\n\r\n &.dso-scroll-top {\r\n &::after {\r\n opacity: 1;\r\n }\r\n }\r\n\r\n &.dso-scroll-middle {\r\n &::before,\r\n &::after {\r\n opacity: 1;\r\n }\r\n }\r\n }\r\n}\r\n","import { Component, Element, Event, EventEmitter, Method, State, h } from \"@stencil/core\";\r\nimport { clsx } from \"clsx\";\r\nimport debounce from \"debounce\";\r\n\r\nimport { DsoScrollEndEvent, ScrollPosition } from \"./scrollable.interfaces\";\r\n\r\nconst resizeObserver = new ResizeObserver(\r\n debounce(\r\n (entries: ResizeObserverEntry[]) =>\r\n entries.forEach((entry) => getScrollableComponentFromResizeObserverEntry(entry)?._setScrollState()),\r\n 50,\r\n ),\r\n);\r\n\r\nfunction getScrollableComponentFromResizeObserverEntry({\r\n target,\r\n}: ResizeObserverEntry): HTMLDsoScrollableElement | undefined {\r\n if (target.parentNode instanceof ShadowRoot && isDsoScrollableComponent(target.parentNode.host)) {\r\n return target.parentNode.host;\r\n }\r\n\r\n if (target.parentElement && isDsoScrollableComponent(target.parentElement)) {\r\n return target.parentElement;\r\n }\r\n\r\n return undefined;\r\n}\r\n\r\nfunction isDsoScrollableComponent(element: Element): element is HTMLDsoScrollableElement {\r\n return element.tagName === \"DSO-SCROLLABLE\";\r\n}\r\n\r\n@Component({\r\n tag: \"dso-scrollable\",\r\n styleUrl: \"scrollable.scss\",\r\n shadow: true,\r\n})\r\nexport class Scrollable {\r\n // One MutationObserver per instance because of https://github.com/whatwg/dom/issues/126\r\n private mutationObserver = new MutationObserver((entries) =>\r\n entries.forEach(({ target }) => {\r\n const element = target.parentElement?.closest(\"dso-scrollable\");\r\n if (element !== this.host) {\r\n return;\r\n }\r\n\r\n this._setScrollState();\r\n }),\r\n );\r\n\r\n private scrollContainerDiv?: HTMLDivElement;\r\n\r\n private shadowContainerDiv?: HTMLDivElement;\r\n\r\n @Element()\r\n host!: HTMLDsoScrollableElement;\r\n\r\n /**\r\n * Event emitted when the scrollbar has reached top or bottom.\r\n */\r\n @Event()\r\n dsoScrollEnd!: EventEmitter<DsoScrollEndEvent>;\r\n\r\n @State()\r\n scrollPosition: ScrollPosition = \"noScroll\";\r\n\r\n /**\r\n * @internal\r\n */\r\n @Method()\r\n async _setScrollState() {\r\n if (!this.host.isConnected) {\r\n return;\r\n }\r\n\r\n const scrollPosition = this.getScrollPosition();\r\n if (this.scrollPosition !== scrollPosition) {\r\n this.scrollPosition = scrollPosition;\r\n\r\n if (this.scrollPosition === \"top\" || this.scrollPosition === \"bottom\") {\r\n this.dsoScrollEnd.emit({ scrollEnd: this.scrollPosition });\r\n }\r\n }\r\n }\r\n\r\n private get slottedElements() {\r\n return Array.from(this.host.children);\r\n }\r\n\r\n private getScrollPosition(): ScrollPosition {\r\n if (!this.scrollContainerDiv) {\r\n return \"noScroll\";\r\n }\r\n\r\n const { scrollHeight, clientHeight, scrollTop } = this.scrollContainerDiv;\r\n\r\n if (scrollHeight <= clientHeight) {\r\n return \"noScroll\";\r\n }\r\n\r\n if (scrollTop === 0) {\r\n return \"top\";\r\n }\r\n\r\n if (scrollHeight - scrollTop - clientHeight < 1) {\r\n return \"bottom\";\r\n }\r\n\r\n if (scrollTop > 0) {\r\n return \"middle\";\r\n }\r\n\r\n return \"noScroll\";\r\n }\r\n\r\n componentDidLoad(): void {\r\n this.mutationObserver.observe(this.host, {\r\n characterData: true,\r\n attributes: false,\r\n childList: false,\r\n subtree: true,\r\n });\r\n\r\n if (this.shadowContainerDiv instanceof HTMLDivElement) {\r\n resizeObserver.observe(this.shadowContainerDiv);\r\n }\r\n\r\n this.slottedElements.forEach((element) => resizeObserver.observe(element));\r\n }\r\n\r\n disconnectedCallback(): void {\r\n if (this.shadowContainerDiv instanceof HTMLDivElement) {\r\n resizeObserver.unobserve(this.shadowContainerDiv);\r\n }\r\n\r\n this.mutationObserver.disconnect();\r\n\r\n this.slottedElements.forEach((element) => resizeObserver.unobserve(element));\r\n }\r\n\r\n render() {\r\n return (\r\n <div ref={(el) => (this.shadowContainerDiv = el)} class=\"dso-shadow-container\">\r\n <div\r\n ref={(el) => (this.scrollContainerDiv = el)}\r\n class={clsx(\"dso-scroll-container\", {\r\n [`dso-scroll-${this.scrollPosition}`]: this.scrollPosition !== \"noScroll\",\r\n })}\r\n onScroll={() => this._setScrollState()}\r\n >\r\n <slot></slot>\r\n </div>\r\n </div>\r\n );\r\n }\r\n}\r\n"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"dso-skiplink.entry.esm.js","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"],"names":[],"mappings":";;;AAAA,MAAM,WAAW,GAAG,klBAAklB;;MCWzlB,QAAQ,GAAA,MAAA;;;;;AAmBX,IAAA,iBAAiB,CAAC,CAAa,EAAA;AACrC,QAAA,IAAI,EAAE,CAAC,CAAC,MAAM,YAAY,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE;YAClD;;AAGF,QAAA,OAAO,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,EAAE,aAAa,EAAE,CAAC,EAAE,eAAe,EAAE,eAAe,CAAC,CAAC,CAAC,EAAE,CAAC;;IAG9F,MAAM,GAAA;QACJ,QACE,0DAAG,IAAI,EAAE,IAAI,IAAI,CAAC,EAAE,CAAA,CAAE,EAAE,OAAO,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC,EAAA,EAC9D,IAAI,CAAC,KAAK,EACX,CAAA,CAAA,UAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAU,IAAI,EAAC,eAAe,EAAY,CAAA,CACxC;;;;;;;"}
1
+ {"version":3,"file":"dso-skiplink.entry.esm.js","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-path: inset(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-path: none;\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"],"names":[],"mappings":";;;AAAA,MAAM,WAAW,GAAG,8kBAA8kB;;MCWrlB,QAAQ,GAAA,MAAA;;;;;AAmBX,IAAA,iBAAiB,CAAC,CAAa,EAAA;AACrC,QAAA,IAAI,EAAE,CAAC,CAAC,MAAM,YAAY,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE;YAClD;;AAGF,QAAA,OAAO,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,EAAE,aAAa,EAAE,CAAC,EAAE,eAAe,EAAE,eAAe,CAAC,CAAC,CAAC,EAAE,CAAC;;IAG9F,MAAM,GAAA;QACJ,QACE,0DAAG,IAAI,EAAE,IAAI,IAAI,CAAC,EAAE,CAAA,CAAE,EAAE,OAAO,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC,EAAA,EAC9D,IAAI,CAAC,KAAK,EACX,CAAA,CAAA,UAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAU,IAAI,EAAC,eAAe,EAAY,CAAA,CACxC;;;;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"dso-survey-rating.entry.esm.js","sources":["src/components/survey-rating/survey-rating.scss?tag=dso-survey-rating&encapsulation=shadow","src/components/survey-rating/survey-rating.tsx"],"sourcesContent":["@use \"sass:list\";\r\n@use \"sass:map\";\r\n\r\n@use \"~dso-toolkit/src/components/button\";\r\n@use \"~dso-toolkit/src/global/mixins/set-colors.mixin\" as set-colors;\r\n@use \"~dso-toolkit/src/utilities\";\r\n@use \"~dso-toolkit/src/variables/media-query-breakpoints\";\r\n@use \"~dso-toolkit/src/variables/units\";\r\n@use \"~dso-toolkit/src/variables/zindex\";\r\n\r\n@use \"survey-rating.variables\" as survey-rating-variables;\r\n\r\n:host {\r\n display: block;\r\n position: fixed;\r\n inset-block-end: units.$u2;\r\n inset-inline-start: units.$u2;\r\n inline-size: survey-rating-variables.$survey-rating-inline-size;\r\n background-color: survey-rating-variables.$survey-rating-background-color;\r\n box-shadow: -3px 3px 6px 0 rgba(0, 0, 0, 0.5);\r\n border-radius: survey-rating-variables.$survey-rating-border-radius;\r\n z-index: zindex.$survey-rating;\r\n\r\n @media screen and (max-width: media-query-breakpoints.$screen-xs-min) {\r\n inline-size: survey-rating-variables.$survey-rating-xs-min-inline-size;\r\n inset-block-end: 0;\r\n inset-inline-start: 0;\r\n\r\n --panel-heading-padding-inline-start: #{units.$u1};\r\n --panel-body-padding-inline: #{units.$u1};\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\r\n.visual-rating-labels {\r\n display: flex;\r\n justify-content: space-between;\r\n margin-block: units.$u1;\r\n}\r\n\r\ninput[type=\"radio\"] {\r\n appearance: none;\r\n cursor: pointer;\r\n position: absolute;\r\n margin-inline: 0;\r\n margin-block: 0;\r\n inset-block: units.$u1 0;\r\n inset-inline: 0;\r\n z-index: 1;\r\n}\r\n\r\nlabel {\r\n position: relative;\r\n display: inline-flex;\r\n align-items: center;\r\n justify-content: center;\r\n inline-size: survey-rating-variables.$survey-rating-input-label-size;\r\n block-size: survey-rating-variables.$survey-rating-input-label-size;\r\n border: 1px solid survey-rating-variables.$survey-rating-border-color;\r\n border-inline-end-width: 0;\r\n padding-block-start: units.$u1;\r\n\r\n @media screen and (max-width: media-query-breakpoints.$screen-xs-min) {\r\n inline-size: survey-rating-variables.$survey-rating-rating-label-xs-min-size;\r\n block-size: survey-rating-variables.$survey-rating-rating-label-xs-min-size;\r\n }\r\n\r\n &:hover {\r\n background-color: survey-rating-variables.$survey-rating-color-hover;\r\n }\r\n\r\n &:active {\r\n background-color: survey-rating-variables.$survey-rating-color-active;\r\n }\r\n\r\n &:first-of-type {\r\n border-radius: survey-rating-variables.$survey-rating-border-radius 0 0\r\n survey-rating-variables.$survey-rating-border-radius;\r\n\r\n &::before {\r\n border-radius: (survey-rating-variables.$survey-rating-border-radius - 1) 0 0;\r\n }\r\n }\r\n\r\n &:last-of-type {\r\n border-inline-end-width: 1px;\r\n border-radius: 0 survey-rating-variables.$survey-rating-border-radius\r\n survey-rating-variables.$survey-rating-border-radius 0;\r\n\r\n &::before {\r\n border-radius: 0 (survey-rating-variables.$survey-rating-border-radius - 1) 0 0;\r\n }\r\n }\r\n\r\n &::before {\r\n content: \"\";\r\n display: block;\r\n position: absolute;\r\n inset-block-start: 0;\r\n block-size: units.$u1;\r\n inline-size: 100%;\r\n border-block-end: 1px solid survey-rating-variables.$survey-rating-border-color;\r\n }\r\n\r\n &:has(input:checked) {\r\n font-weight: bold;\r\n }\r\n\r\n @each $survey-rating in survey-rating-variables.$survey-ratings {\r\n $i: list.index(survey-rating-variables.$survey-ratings, $survey-rating);\r\n $color: map.get($survey-rating, color);\r\n\r\n &.survey-rating-#{$i} {\r\n &::before,\r\n &:has(input:checked) {\r\n @include set-colors.apply($color, \"survey-rating\");\r\n\r\n & {\r\n border-color: survey-rating-variables.$survey-rating-border-color;\r\n }\r\n }\r\n }\r\n }\r\n}\r\n\r\nbutton {\r\n @include button.element();\r\n\r\n &.dso-secondary {\r\n @include button.secondary($base-styling: true);\r\n }\r\n\r\n margin-block-start: units.$u2;\r\n}\r\n","import { Component, ComponentInterface, Event, EventEmitter, Fragment, h } from \"@stencil/core\";\r\n\r\nimport { SurveyRatingCloseEvent, SurveyRatingSubmitEvent } from \"./survey-rating.interfaces\";\r\n\r\n@Component({\r\n tag: \"dso-survey-rating\",\r\n styleUrl: \"survey-rating.scss\",\r\n shadow: true,\r\n})\r\nexport class SurveyRating implements ComponentInterface {\r\n private rating: number | undefined;\r\n\r\n /**\r\n * Emitted when the user submits the Survey Rating.\r\n */\r\n @Event()\r\n dsoSubmit!: EventEmitter<SurveyRatingSubmitEvent>;\r\n\r\n /**\r\n * Emitted when the user wants to close the Survey Rating.\r\n */\r\n @Event()\r\n dsoClose!: EventEmitter<SurveyRatingCloseEvent>;\r\n\r\n private handleForm(e: Event): void {\r\n e.preventDefault();\r\n this.dsoSubmit.emit({ rating: this.rating, scale: { start: 1, end: 7 }, originalEvent: e });\r\n }\r\n\r\n private handleChange(e: Event): void {\r\n const target = e.target as HTMLInputElement;\r\n this.rating = Number(target.value);\r\n }\r\n\r\n render() {\r\n const ratings = [\r\n \"Heel moeilijk\",\r\n \"Moeilijk\",\r\n \"Redelijk moeilijk\",\r\n \"Neutraal\",\r\n \"Redelijk makkelijk\",\r\n \"Makkelijk\",\r\n \"Heel makkelijk\",\r\n ];\r\n\r\n return (\r\n <dso-panel\r\n emphasized\r\n onDsoCloseClick={(e) => this.dsoClose.emit({ originalEvent: e })}\r\n role=\"dialog\"\r\n aria-labelledby=\"panel-heading\"\r\n >\r\n <h2 id=\"panel-heading\" slot=\"heading\">\r\n Help ons met een onderzoek\r\n </h2>\r\n <strong>Hoe moeilijk of makkelijk was deze taak om uit te voeren?</strong>\r\n <form onSubmit={(e) => this.handleForm(e)}>\r\n <div class=\"visual-rating-labels\" aria-hidden=\"true\">\r\n <span>Heel moeilijk</span>\r\n <span>Heel makkelijk</span>\r\n </div>\r\n <div role=\"radiogroup\">\r\n {ratings.map((rating, index) => {\r\n const ratingNumber = index + 1;\r\n\r\n return (\r\n <>\r\n <label class={`survey-rating-${ratingNumber}`}>\r\n {ratingNumber}\r\n <span class=\"sr-only\">{rating}</span>\r\n <input\r\n type=\"radio\"\r\n name=\"rating\"\r\n value={ratingNumber}\r\n checked={ratingNumber === this.rating}\r\n onChange={(e) => this.handleChange(e)}\r\n />\r\n </label>\r\n </>\r\n );\r\n })}\r\n </div>\r\n <button type=\"submit\" class=\"dso-secondary\">\r\n <span>Antwoord verzenden</span>\r\n </button>\r\n </form>\r\n </dso-panel>\r\n );\r\n }\r\n}\r\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dso-survey-rating.entry.esm.js","sources":["src/components/survey-rating/survey-rating.scss?tag=dso-survey-rating&encapsulation=shadow","src/components/survey-rating/survey-rating.tsx"],"sourcesContent":["@use \"sass:list\";\r\n@use \"sass:map\";\r\n\r\n@use \"~dso-toolkit/src/components/button\";\r\n@use \"~dso-toolkit/src/global/mixins/set-colors.mixin\" as set-colors;\r\n@use \"~dso-toolkit/src/utilities\";\r\n@use \"~dso-toolkit/src/variables/media-query-breakpoints\";\r\n@use \"~dso-toolkit/src/variables/units\";\r\n@use \"~dso-toolkit/src/variables/zindex\";\r\n\r\n@use \"survey-rating.variables\" as survey-rating-variables;\r\n\r\n:host {\r\n display: block;\r\n position: fixed;\r\n inset-block-end: units.$u2;\r\n inset-inline-start: units.$u2;\r\n inline-size: survey-rating-variables.$survey-rating-inline-size;\r\n background-color: survey-rating-variables.$survey-rating-background-color;\r\n box-shadow: -3px 3px 6px 0 rgba(0, 0, 0, 0.5);\r\n border-radius: survey-rating-variables.$survey-rating-border-radius;\r\n z-index: zindex.$survey-rating;\r\n\r\n @media screen and (max-width: media-query-breakpoints.$screen-xs-min) {\r\n inline-size: survey-rating-variables.$survey-rating-xs-min-inline-size;\r\n inset-block-end: 0;\r\n inset-inline-start: 0;\r\n\r\n --panel-heading-padding-inline-start: #{units.$u1};\r\n --panel-body-padding-inline: #{units.$u1};\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\r\n.visual-rating-labels {\r\n display: flex;\r\n justify-content: space-between;\r\n margin-block: units.$u1;\r\n}\r\n\r\ninput[type=\"radio\"] {\r\n appearance: none;\r\n cursor: pointer;\r\n position: absolute;\r\n margin-inline: 0;\r\n margin-block: 0;\r\n inset-block: units.$u1 0;\r\n inset-inline: 0;\r\n z-index: 1;\r\n}\r\n\r\nlabel {\r\n position: relative;\r\n display: inline-flex;\r\n align-items: center;\r\n justify-content: center;\r\n inline-size: survey-rating-variables.$survey-rating-input-label-size;\r\n block-size: survey-rating-variables.$survey-rating-input-label-size;\r\n border: 1px solid survey-rating-variables.$survey-rating-border-color;\r\n border-inline-end-width: 0;\r\n padding-block-start: units.$u1;\r\n\r\n @media screen and (max-width: media-query-breakpoints.$screen-xs-min) {\r\n inline-size: survey-rating-variables.$survey-rating-rating-label-xs-min-size;\r\n block-size: survey-rating-variables.$survey-rating-rating-label-xs-min-size;\r\n }\r\n\r\n &:hover {\r\n background-color: survey-rating-variables.$survey-rating-color-hover;\r\n }\r\n\r\n &:active {\r\n background-color: survey-rating-variables.$survey-rating-color-active;\r\n }\r\n\r\n &:first-of-type {\r\n border-radius: survey-rating-variables.$survey-rating-border-radius 0 0\r\n survey-rating-variables.$survey-rating-border-radius;\r\n\r\n &::before {\r\n border-radius: (survey-rating-variables.$survey-rating-border-radius - 1) 0 0;\r\n }\r\n }\r\n\r\n &:last-of-type {\r\n border-inline-end-width: 1px;\r\n border-radius: 0 survey-rating-variables.$survey-rating-border-radius\r\n survey-rating-variables.$survey-rating-border-radius 0;\r\n\r\n &::before {\r\n border-radius: 0 (survey-rating-variables.$survey-rating-border-radius - 1) 0 0;\r\n }\r\n }\r\n\r\n &::before {\r\n content: \"\";\r\n display: block;\r\n position: absolute;\r\n inset-block-start: 0;\r\n block-size: units.$u1;\r\n inline-size: 100%;\r\n border-block-end: 1px solid survey-rating-variables.$survey-rating-border-color;\r\n }\r\n\r\n &:has(input:checked) {\r\n font-weight: bold;\r\n }\r\n\r\n @each $survey-rating in survey-rating-variables.$survey-ratings {\r\n $i: list.index(survey-rating-variables.$survey-ratings, $survey-rating);\r\n $color: map.get($survey-rating, color);\r\n\r\n &.survey-rating-#{$i} {\r\n &::before,\r\n &:has(input:checked) {\r\n @include set-colors.apply($color, \"survey-rating\");\r\n\r\n & {\r\n border-color: survey-rating-variables.$survey-rating-border-color;\r\n }\r\n }\r\n }\r\n }\r\n}\r\n\r\nbutton {\r\n @include button.element();\r\n\r\n &.dso-secondary {\r\n @include button.secondary($base-styling: true);\r\n }\r\n\r\n margin-block-start: units.$u2;\r\n}\r\n","import { Component, ComponentInterface, Event, EventEmitter, Fragment, h } from \"@stencil/core\";\r\n\r\nimport { SurveyRatingCloseEvent, SurveyRatingSubmitEvent } from \"./survey-rating.interfaces\";\r\n\r\n@Component({\r\n tag: \"dso-survey-rating\",\r\n styleUrl: \"survey-rating.scss\",\r\n shadow: true,\r\n})\r\nexport class SurveyRating implements ComponentInterface {\r\n private rating: number | undefined;\r\n\r\n /**\r\n * Emitted when the user submits the Survey Rating.\r\n */\r\n @Event()\r\n dsoSubmit!: EventEmitter<SurveyRatingSubmitEvent>;\r\n\r\n /**\r\n * Emitted when the user wants to close the Survey Rating.\r\n */\r\n @Event()\r\n dsoClose!: EventEmitter<SurveyRatingCloseEvent>;\r\n\r\n private handleForm(e: Event): void {\r\n e.preventDefault();\r\n this.dsoSubmit.emit({ rating: this.rating, scale: { start: 1, end: 7 }, originalEvent: e });\r\n }\r\n\r\n private handleChange(e: Event): void {\r\n const target = e.target as HTMLInputElement;\r\n this.rating = Number(target.value);\r\n }\r\n\r\n render() {\r\n const ratings = [\r\n \"Heel moeilijk\",\r\n \"Moeilijk\",\r\n \"Redelijk moeilijk\",\r\n \"Neutraal\",\r\n \"Redelijk makkelijk\",\r\n \"Makkelijk\",\r\n \"Heel makkelijk\",\r\n ];\r\n\r\n return (\r\n <dso-panel\r\n emphasized\r\n onDsoCloseClick={(e) => this.dsoClose.emit({ originalEvent: e })}\r\n role=\"dialog\"\r\n aria-labelledby=\"panel-heading\"\r\n >\r\n <h2 id=\"panel-heading\" slot=\"heading\">\r\n Help ons met een onderzoek\r\n </h2>\r\n <strong>Hoe moeilijk of makkelijk was deze taak om uit te voeren?</strong>\r\n <form onSubmit={(e) => this.handleForm(e)}>\r\n <div class=\"visual-rating-labels\" aria-hidden=\"true\">\r\n <span>Heel moeilijk</span>\r\n <span>Heel makkelijk</span>\r\n </div>\r\n <div role=\"radiogroup\">\r\n {ratings.map((rating, index) => {\r\n const ratingNumber = index + 1;\r\n\r\n return (\r\n <>\r\n <label class={`survey-rating-${ratingNumber}`}>\r\n {ratingNumber}\r\n <span class=\"sr-only\">{rating}</span>\r\n <input\r\n type=\"radio\"\r\n name=\"rating\"\r\n value={ratingNumber}\r\n checked={ratingNumber === this.rating}\r\n onChange={(e) => this.handleChange(e)}\r\n />\r\n </label>\r\n </>\r\n );\r\n })}\r\n </div>\r\n <button type=\"submit\" class=\"dso-secondary\">\r\n <span>Antwoord verzenden</span>\r\n </button>\r\n </form>\r\n </dso-panel>\r\n );\r\n }\r\n}\r\n"],"names":[],"mappings":"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"}