@dso-toolkit/core 66.1.0 → 66.3.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 (464) hide show
  1. package/dist/cjs/{annotation-body-b062e93f.js → annotation-body-0cf33638.js} +2 -2
  2. package/dist/cjs/{annotation-body-b062e93f.js.map → annotation-body-0cf33638.js.map} +1 -1
  3. package/dist/cjs/{annotation-symbol-slot-e9741f0b.js → annotation-symbol-slot-6665ae62.js} +2 -2
  4. package/dist/cjs/{annotation-symbol-slot-e9741f0b.js.map → annotation-symbol-slot-6665ae62.js.map} +1 -1
  5. package/dist/cjs/dso-accordion-section.cjs.entry.js +1 -1
  6. package/dist/cjs/dso-accordion.cjs.entry.js +1 -1
  7. package/dist/cjs/dso-action-list-item.cjs.entry.js +1 -1
  8. package/dist/cjs/dso-action-list.cjs.entry.js +1 -1
  9. package/dist/cjs/dso-advanced-select.cjs.entry.js +1 -1
  10. package/dist/cjs/dso-alert_6.cjs.entry.js +31 -24
  11. package/dist/cjs/dso-alert_6.cjs.entry.js.map +1 -1
  12. package/dist/cjs/dso-annotation-activiteit.cjs.entry.js +4 -4
  13. package/dist/cjs/dso-annotation-activiteit.cjs.entry.js.map +1 -1
  14. package/dist/cjs/dso-annotation-gebiedsaanwijzing.cjs.entry.js +4 -4
  15. package/dist/cjs/dso-annotation-gebiedsaanwijzing.cjs.entry.js.map +1 -1
  16. package/dist/cjs/dso-annotation-kaart.cjs.entry.js +3 -3
  17. package/dist/cjs/dso-annotation-kaart.cjs.entry.js.map +1 -1
  18. package/dist/cjs/dso-annotation-locatie_2.cjs.entry.js +6 -6
  19. package/dist/cjs/dso-annotation-locatie_2.cjs.entry.js.map +1 -1
  20. package/dist/cjs/dso-annotation-omgevingsnormwaarde.cjs.entry.js +4 -4
  21. package/dist/cjs/dso-annotation-omgevingsnormwaarde.cjs.entry.js.map +1 -1
  22. package/dist/cjs/dso-attachments-counter_2.cjs.entry.js +1 -1
  23. package/dist/cjs/dso-autosuggest.cjs.entry.js +24 -8
  24. package/dist/cjs/dso-autosuggest.cjs.entry.js.map +1 -1
  25. package/dist/cjs/dso-banner.cjs.entry.js +1 -1
  26. package/dist/cjs/dso-card-container.cjs.entry.js +1 -1
  27. package/dist/cjs/dso-card.cjs.entry.js +1 -1
  28. package/dist/cjs/dso-date-picker-legacy.cjs.entry.js +1 -1
  29. package/dist/cjs/dso-date-picker.cjs.entry.js +1 -1
  30. package/dist/cjs/dso-document-card.cjs.entry.js +1 -1
  31. package/dist/cjs/dso-dropdown-menu.cjs.entry.js +2 -2
  32. package/dist/cjs/dso-header.cjs.entry.js +28 -4
  33. package/dist/cjs/dso-header.cjs.entry.js.map +1 -1
  34. package/dist/cjs/dso-helpcenter-panel.cjs.entry.js +1 -1
  35. package/dist/cjs/dso-highlight-box.cjs.entry.js +1 -1
  36. package/dist/cjs/dso-icon.cjs.entry.js +1 -1
  37. package/dist/cjs/dso-info-button.cjs.entry.js +1 -1
  38. package/dist/cjs/dso-info_2.cjs.entry.js +2 -2
  39. package/dist/cjs/dso-input-range.cjs.entry.js +1 -1
  40. package/dist/cjs/dso-label_2.cjs.entry.js +1 -1
  41. package/dist/cjs/dso-legend-item.cjs.entry.js +1 -1
  42. package/dist/cjs/dso-list-button.cjs.entry.js +1 -1
  43. package/dist/cjs/dso-logo.cjs.entry.js +8 -4
  44. package/dist/cjs/dso-logo.cjs.entry.js.map +1 -1
  45. package/dist/cjs/dso-map-base-layers.cjs.entry.js +19 -3
  46. package/dist/cjs/dso-map-base-layers.cjs.entry.js.map +1 -1
  47. package/dist/cjs/dso-map-controls.cjs.entry.js +26 -3
  48. package/dist/cjs/dso-map-controls.cjs.entry.js.map +1 -1
  49. package/dist/cjs/dso-map-overlays.cjs.entry.js +19 -3
  50. package/dist/cjs/dso-map-overlays.cjs.entry.js.map +1 -1
  51. package/dist/cjs/dso-mark-bar.cjs.entry.js +2 -2
  52. package/dist/cjs/dso-modal.cjs.entry.js +21 -4
  53. package/dist/cjs/dso-modal.cjs.entry.js.map +1 -1
  54. package/dist/cjs/dso-pagination.cjs.entry.js +1 -1
  55. package/dist/cjs/dso-plekinfo-card.cjs.entry.js +7 -3
  56. package/dist/cjs/dso-plekinfo-card.cjs.entry.js.map +1 -1
  57. package/dist/cjs/dso-progress-bar.cjs.entry.js +2 -2
  58. package/dist/cjs/dso-progress-indicator.cjs.entry.js +19 -3
  59. package/dist/cjs/dso-progress-indicator.cjs.entry.js.map +1 -1
  60. package/dist/cjs/dso-project-item.cjs.entry.js +2 -2
  61. package/dist/cjs/dso-renvooi_2.cjs.entry.js +20 -17
  62. package/dist/cjs/dso-renvooi_2.cjs.entry.js.map +1 -1
  63. package/dist/cjs/dso-responsive-element.cjs.entry.js +2 -2
  64. package/dist/cjs/dso-scrollable.cjs.entry.js +3 -3
  65. package/dist/cjs/dso-skiplink.cjs.entry.js +32 -0
  66. package/dist/cjs/dso-skiplink.cjs.entry.js.map +1 -0
  67. package/dist/cjs/dso-tab.cjs.entry.js +1 -1
  68. package/dist/cjs/dso-tabs.cjs.entry.js +1 -1
  69. package/dist/cjs/dso-toggletip.cjs.entry.js +1 -1
  70. package/dist/cjs/dso-toolkit.cjs.js +3 -3
  71. package/dist/cjs/dso-toolkit.cjs.js.map +1 -1
  72. package/dist/cjs/dso-tree-view.cjs.entry.js +1 -1
  73. package/dist/cjs/dso-viewer-grid.cjs.entry.js +1 -1
  74. package/dist/cjs/dsot-document-component-demo.cjs.entry.js +9 -3
  75. package/dist/cjs/dsot-document-component-demo.cjs.entry.js.map +1 -1
  76. package/dist/cjs/i18n-012dfc26.js +2387 -0
  77. package/dist/cjs/i18n-012dfc26.js.map +1 -0
  78. package/dist/cjs/{index-848434f1.js → index-af1ebee1.js} +31 -14
  79. package/dist/cjs/index-af1ebee1.js.map +1 -0
  80. package/dist/cjs/loader.cjs.js +2 -2
  81. package/dist/cjs/v4-6fbeaa38.js +65 -0
  82. package/dist/cjs/v4-6fbeaa38.js.map +1 -0
  83. package/dist/collection/collection-manifest.json +3 -2
  84. package/dist/collection/components/alert/alert.i18n.js +19 -0
  85. package/dist/collection/components/alert/alert.i18n.js.map +1 -0
  86. package/dist/collection/components/alert/alert.js +6 -8
  87. package/dist/collection/components/alert/alert.js.map +1 -1
  88. package/dist/collection/components/annotation/annotation.css +5 -0
  89. package/dist/collection/components/autosuggest/autosuggest.i18n.js +13 -0
  90. package/dist/collection/components/autosuggest/autosuggest.i18n.js.map +1 -0
  91. package/dist/collection/components/autosuggest/autosuggest.js +11 -7
  92. package/dist/collection/components/autosuggest/autosuggest.js.map +1 -1
  93. package/dist/collection/components/document-component/document-component.css +35 -4
  94. package/dist/collection/components/document-component/document-component.js +2 -2
  95. package/dist/collection/components/document-component/document-component.js.map +1 -1
  96. package/dist/collection/components/document-component-demo/document-component.demo.js +8 -2
  97. package/dist/collection/components/document-component-demo/document-component.demo.js.map +1 -1
  98. package/dist/collection/components/header/header.i18n.js +22 -0
  99. package/dist/collection/components/header/header.i18n.js.map +1 -0
  100. package/dist/collection/components/header/header.js +6 -3
  101. package/dist/collection/components/header/header.js.map +1 -1
  102. package/dist/collection/components/image-overlay/image-overlay.css +10 -0
  103. package/dist/collection/components/logo/logo.js +25 -3
  104. package/dist/collection/components/logo/logo.js.map +1 -1
  105. package/dist/collection/components/map-base-layers/map-base-layers.i18n.js +13 -0
  106. package/dist/collection/components/map-base-layers/map-base-layers.i18n.js.map +1 -0
  107. package/dist/collection/components/map-base-layers/map-base-layers.js +5 -1
  108. package/dist/collection/components/map-base-layers/map-base-layers.js.map +1 -1
  109. package/dist/collection/components/map-controls/map-controls.i18n.js +21 -0
  110. package/dist/collection/components/map-controls/map-controls.i18n.js.map +1 -0
  111. package/dist/collection/components/map-controls/map-controls.js +6 -3
  112. package/dist/collection/components/map-controls/map-controls.js.map +1 -1
  113. package/dist/collection/components/map-overlays/map-overlays.i18n.js +13 -0
  114. package/dist/collection/components/map-overlays/map-overlays.i18n.js.map +1 -0
  115. package/dist/collection/components/map-overlays/map-overlays.js +5 -1
  116. package/dist/collection/components/map-overlays/map-overlays.js.map +1 -1
  117. package/dist/collection/components/mark-bar/mark-bar.js +1 -1
  118. package/dist/collection/components/modal/modal.i18n.js +15 -0
  119. package/dist/collection/components/modal/modal.i18n.js.map +1 -0
  120. package/dist/collection/components/modal/modal.js +5 -2
  121. package/dist/collection/components/modal/modal.js.map +1 -1
  122. package/dist/collection/components/ozon-content/nodes/figuur.node.js +1 -10
  123. package/dist/collection/components/ozon-content/nodes/figuur.node.js.map +1 -1
  124. package/dist/collection/components/ozon-content/ozon-content.css +19 -5
  125. package/dist/collection/components/ozon-content/ozon-content.js +1 -1
  126. package/dist/collection/components/panel/panel.css +7 -5
  127. package/dist/collection/components/plekinfo-card/plekinfo-card.css +12 -4
  128. package/dist/collection/components/plekinfo-card/plekinfo-card.js +26 -2
  129. package/dist/collection/components/plekinfo-card/plekinfo-card.js.map +1 -1
  130. package/dist/collection/components/progress-bar/progress-bar.js +1 -1
  131. package/dist/collection/components/progress-indicator/progress-indicator.i18n.js +13 -0
  132. package/dist/collection/components/progress-indicator/progress-indicator.i18n.js.map +1 -0
  133. package/dist/collection/components/progress-indicator/progress-indicator.js +9 -6
  134. package/dist/collection/components/progress-indicator/progress-indicator.js.map +1 -1
  135. package/dist/collection/components/project-item/project-item.js +1 -1
  136. package/dist/collection/components/renvooi/renvooi.css +9 -0
  137. package/dist/collection/components/renvooi/renvooi.js +17 -14
  138. package/dist/collection/components/renvooi/renvooi.js.map +1 -1
  139. package/dist/collection/components/responsive-element/responsive-element.js +1 -1
  140. package/dist/collection/components/scrollable/scrollable.js +2 -2
  141. package/dist/collection/components/selectable/selectable.js +1 -1
  142. package/dist/collection/components/skiplink/skiplink.css +40 -0
  143. package/dist/collection/components/skiplink/skiplink.interfaces.js +2 -0
  144. package/dist/collection/components/skiplink/skiplink.interfaces.js.map +1 -0
  145. package/dist/collection/components/skiplink/skiplink.js +92 -0
  146. package/dist/collection/components/skiplink/skiplink.js.map +1 -0
  147. package/dist/collection/utils/i18n.js +34 -0
  148. package/dist/collection/utils/i18n.js.map +1 -0
  149. package/dist/components/alert.js +24 -8
  150. package/dist/components/alert.js.map +1 -1
  151. package/dist/components/annotation-locatie.js +1 -1
  152. package/dist/components/annotation-locatie.js.map +1 -1
  153. package/dist/components/document-component.js +3 -3
  154. package/dist/components/document-component.js.map +1 -1
  155. package/dist/components/dso-annotation-activiteit.js +1 -1
  156. package/dist/components/dso-annotation-activiteit.js.map +1 -1
  157. package/dist/components/dso-annotation-gebiedsaanwijzing.js +1 -1
  158. package/dist/components/dso-annotation-gebiedsaanwijzing.js.map +1 -1
  159. package/dist/components/dso-annotation-kaart.js +1 -1
  160. package/dist/components/dso-annotation-kaart.js.map +1 -1
  161. package/dist/components/dso-annotation-omgevingsnormwaarde.js +1 -1
  162. package/dist/components/dso-annotation-omgevingsnormwaarde.js.map +1 -1
  163. package/dist/components/dso-autosuggest.js +22 -6
  164. package/dist/components/dso-autosuggest.js.map +1 -1
  165. package/dist/components/dso-header.js +27 -3
  166. package/dist/components/dso-header.js.map +1 -1
  167. package/dist/components/dso-logo.js +8 -3
  168. package/dist/components/dso-logo.js.map +1 -1
  169. package/dist/components/dso-map-base-layers.js +17 -1
  170. package/dist/components/dso-map-base-layers.js.map +1 -1
  171. package/dist/components/dso-map-controls.js +26 -3
  172. package/dist/components/dso-map-controls.js.map +1 -1
  173. package/dist/components/dso-map-overlays.js +17 -1
  174. package/dist/components/dso-map-overlays.js.map +1 -1
  175. package/dist/components/dso-mark-bar.js +1 -1
  176. package/dist/components/dso-modal.js +19 -2
  177. package/dist/components/dso-modal.js.map +1 -1
  178. package/dist/components/dso-plekinfo-card.js +8 -3
  179. package/dist/components/dso-plekinfo-card.js.map +1 -1
  180. package/dist/components/dso-progress-bar.js +1 -1
  181. package/dist/components/dso-project-item.js +1 -1
  182. package/dist/components/dso-skiplink.d.ts +11 -0
  183. package/dist/components/dso-skiplink.js +55 -0
  184. package/dist/components/dso-skiplink.js.map +1 -0
  185. package/dist/components/dsot-document-component-demo.js +8 -2
  186. package/dist/components/dsot-document-component-demo.js.map +1 -1
  187. package/dist/components/i18n.js +2385 -0
  188. package/dist/components/i18n.js.map +1 -0
  189. package/dist/components/image-overlay.js +1 -1
  190. package/dist/components/image-overlay.js.map +1 -1
  191. package/dist/components/index.d.ts +2 -0
  192. package/dist/components/index.js +1 -0
  193. package/dist/components/index.js.map +1 -1
  194. package/dist/components/ozon-content.js +3 -12
  195. package/dist/components/ozon-content.js.map +1 -1
  196. package/dist/components/panel.js +1 -1
  197. package/dist/components/panel.js.map +1 -1
  198. package/dist/components/progress-indicator.js +18 -2
  199. package/dist/components/progress-indicator.js.map +1 -1
  200. package/dist/components/renvooi.js +19 -21
  201. package/dist/components/renvooi.js.map +1 -1
  202. package/dist/components/responsive-element.js +1 -1
  203. package/dist/components/scrollable.js +2 -2
  204. package/dist/components/selectable.js +1 -1
  205. package/dist/components/v4.js +46 -48
  206. package/dist/components/v4.js.map +1 -1
  207. package/dist/dso-toolkit/dso-toolkit.esm.js +1 -1
  208. package/dist/dso-toolkit/dso-toolkit.esm.js.map +1 -1
  209. package/dist/dso-toolkit/p-00838920.entry.js +2 -0
  210. package/dist/dso-toolkit/p-00838920.entry.js.map +1 -0
  211. package/dist/dso-toolkit/p-036ff12b.js +2 -0
  212. package/dist/dso-toolkit/p-036ff12b.js.map +1 -0
  213. package/dist/dso-toolkit/{p-dd6cf2cd.entry.js → p-08121fee.entry.js} +2 -2
  214. package/dist/dso-toolkit/p-13396f6d.js +2 -0
  215. package/dist/dso-toolkit/p-221c5d0b.entry.js +2 -0
  216. package/dist/dso-toolkit/p-221c5d0b.entry.js.map +1 -0
  217. package/dist/dso-toolkit/{p-8e699eb2.entry.js → p-226833eb.entry.js} +2 -2
  218. package/dist/dso-toolkit/p-26fe4ae2.entry.js +2 -0
  219. package/dist/dso-toolkit/p-26fe4ae2.entry.js.map +1 -0
  220. package/dist/dso-toolkit/{p-fc82b0d0.entry.js → p-278837c5.entry.js} +2 -2
  221. package/dist/dso-toolkit/p-2d2eae19.entry.js +2 -0
  222. package/dist/dso-toolkit/p-2d2eae19.entry.js.map +1 -0
  223. package/dist/dso-toolkit/{p-e9896db2.entry.js → p-38cc23e1.entry.js} +2 -2
  224. package/dist/dso-toolkit/p-3e9068cd.entry.js +2 -0
  225. package/dist/dso-toolkit/p-3e9068cd.entry.js.map +1 -0
  226. package/dist/dso-toolkit/p-3f21e21c.entry.js +2 -0
  227. package/dist/dso-toolkit/p-3f21e21c.entry.js.map +1 -0
  228. package/dist/dso-toolkit/{p-cd1a65e7.entry.js → p-40810e10.entry.js} +2 -2
  229. package/dist/dso-toolkit/{p-6a414b15.entry.js → p-47ae7799.entry.js} +2 -2
  230. package/dist/dso-toolkit/{p-a705c684.entry.js → p-4cb8ef54.entry.js} +2 -2
  231. package/dist/dso-toolkit/{p-2dc8e61f.entry.js.map → p-4cb8ef54.entry.js.map} +1 -1
  232. package/dist/dso-toolkit/{p-404ea2b9.entry.js → p-52a2c0b3.entry.js} +2 -2
  233. package/dist/dso-toolkit/{p-404ea2b9.entry.js.map → p-52a2c0b3.entry.js.map} +1 -1
  234. package/dist/dso-toolkit/p-5a832300.entry.js +2 -0
  235. package/dist/dso-toolkit/p-5a832300.entry.js.map +1 -0
  236. package/dist/dso-toolkit/{p-b5744b74.entry.js → p-5c047dfd.entry.js} +2 -2
  237. package/dist/dso-toolkit/{p-9ebf26d8.entry.js → p-5e6704bb.entry.js} +2 -2
  238. package/dist/dso-toolkit/{p-331f52b3.entry.js → p-636a2ad2.entry.js} +2 -2
  239. package/dist/dso-toolkit/{p-a801f428.entry.js → p-74e0e63e.entry.js} +2 -2
  240. package/dist/dso-toolkit/{p-bda2d5ce.entry.js → p-75c65097.entry.js} +2 -2
  241. package/dist/dso-toolkit/{p-54fff8c0.entry.js → p-76dfbee3.entry.js} +2 -2
  242. package/dist/dso-toolkit/{p-ea46d648.entry.js → p-7dfc15c1.entry.js} +2 -2
  243. package/dist/dso-toolkit/p-7fc1e494.js +3 -0
  244. package/dist/dso-toolkit/p-7fc1e494.js.map +1 -0
  245. package/dist/dso-toolkit/{p-cc6c428b.entry.js → p-83f89965.entry.js} +2 -2
  246. package/dist/dso-toolkit/p-86cdbaf9.entry.js +2 -0
  247. package/dist/dso-toolkit/p-86cdbaf9.entry.js.map +1 -0
  248. package/dist/dso-toolkit/{p-a6f19891.entry.js → p-8bc5ab4d.entry.js} +2 -2
  249. package/dist/dso-toolkit/{p-8b9ee8d3.entry.js → p-921fe0b7.entry.js} +2 -2
  250. package/dist/dso-toolkit/p-92a7d8b0.entry.js +2 -0
  251. package/dist/dso-toolkit/p-92a7d8b0.entry.js.map +1 -0
  252. package/dist/dso-toolkit/{p-3cdfb92e.entry.js → p-9424e171.entry.js} +2 -2
  253. package/dist/dso-toolkit/{p-065ea3f8.entry.js → p-99995b02.entry.js} +2 -2
  254. package/dist/dso-toolkit/{p-3be4c978.entry.js → p-9d8395bc.entry.js} +2 -2
  255. package/dist/dso-toolkit/{p-e8322c5b.entry.js → p-9df0ed5f.entry.js} +2 -2
  256. package/dist/dso-toolkit/{p-2dc8e61f.entry.js → p-a3c7e119.entry.js} +2 -2
  257. package/dist/dso-toolkit/{p-a705c684.entry.js.map → p-a3c7e119.entry.js.map} +1 -1
  258. package/dist/dso-toolkit/{p-e96183ae.entry.js → p-a64e9cd5.entry.js} +2 -2
  259. package/dist/dso-toolkit/p-abe7047e.entry.js +2 -0
  260. package/dist/dso-toolkit/p-abe7047e.entry.js.map +1 -0
  261. package/dist/dso-toolkit/{p-e132910b.entry.js → p-b032496d.entry.js} +2 -2
  262. package/dist/dso-toolkit/{p-d885c651.entry.js → p-b0a3dfcb.entry.js} +2 -2
  263. package/dist/dso-toolkit/{p-bb87ef29.entry.js → p-b2f92815.entry.js} +2 -2
  264. package/dist/dso-toolkit/p-b2f92815.entry.js.map +1 -0
  265. package/dist/dso-toolkit/p-bc0a6bac.entry.js +2 -0
  266. package/dist/dso-toolkit/p-bc0a6bac.entry.js.map +1 -0
  267. package/dist/dso-toolkit/{p-ea804e9e.entry.js → p-c05d8f55.entry.js} +2 -2
  268. package/dist/dso-toolkit/{p-34f1afd3.entry.js → p-c3e38404.entry.js} +2 -2
  269. package/dist/dso-toolkit/{p-64bf55d1.entry.js → p-cb0a7103.entry.js} +2 -2
  270. package/dist/dso-toolkit/{p-786f3a41.entry.js → p-cdbb39ad.entry.js} +2 -2
  271. package/dist/dso-toolkit/p-d4317bc8.entry.js +2 -0
  272. package/dist/dso-toolkit/p-d4317bc8.entry.js.map +1 -0
  273. package/dist/dso-toolkit/{p-ab22347c.entry.js → p-de63f553.entry.js} +2 -2
  274. package/dist/dso-toolkit/{p-ef8fbe01.entry.js → p-e42e0cb4.entry.js} +2 -2
  275. package/dist/dso-toolkit/{p-778c0381.entry.js → p-e665556c.entry.js} +2 -2
  276. package/dist/dso-toolkit/{p-e283ee51.entry.js → p-ea87d930.entry.js} +2 -2
  277. package/dist/dso-toolkit/{p-e283ee51.entry.js.map → p-ea87d930.entry.js.map} +1 -1
  278. package/dist/dso-toolkit/p-eb579735.entry.js +2 -0
  279. package/dist/dso-toolkit/p-eb579735.entry.js.map +1 -0
  280. package/dist/dso-toolkit/{p-a644f41c.entry.js → p-ef087d87.entry.js} +2 -2
  281. package/dist/dso-toolkit/{p-ae8b8810.js → p-f11d080a.js} +2 -2
  282. package/dist/dso-toolkit/{p-487469c5.entry.js → p-f3717d91.entry.js} +2 -2
  283. package/dist/dso-toolkit/{p-05094f69.entry.js → p-fb5e4dc9.entry.js} +2 -2
  284. package/dist/dso-toolkit/p-ffb34aa5.js +2 -0
  285. package/dist/dso-toolkit/p-ffb34aa5.js.map +1 -0
  286. package/dist/esm/{annotation-body-75f77191.js → annotation-body-b9b58856.js} +2 -2
  287. package/dist/esm/{annotation-body-75f77191.js.map → annotation-body-b9b58856.js.map} +1 -1
  288. package/dist/esm/{annotation-symbol-slot-1947dce6.js → annotation-symbol-slot-74bf6f43.js} +2 -2
  289. package/dist/esm/{annotation-symbol-slot-1947dce6.js.map → annotation-symbol-slot-74bf6f43.js.map} +1 -1
  290. package/dist/esm/dso-accordion-section.entry.js +1 -1
  291. package/dist/esm/dso-accordion.entry.js +1 -1
  292. package/dist/esm/dso-action-list-item.entry.js +1 -1
  293. package/dist/esm/dso-action-list.entry.js +1 -1
  294. package/dist/esm/dso-advanced-select.entry.js +1 -1
  295. package/dist/esm/dso-alert_6.entry.js +31 -24
  296. package/dist/esm/dso-alert_6.entry.js.map +1 -1
  297. package/dist/esm/dso-annotation-activiteit.entry.js +4 -4
  298. package/dist/esm/dso-annotation-activiteit.entry.js.map +1 -1
  299. package/dist/esm/dso-annotation-gebiedsaanwijzing.entry.js +4 -4
  300. package/dist/esm/dso-annotation-gebiedsaanwijzing.entry.js.map +1 -1
  301. package/dist/esm/dso-annotation-kaart.entry.js +3 -3
  302. package/dist/esm/dso-annotation-kaart.entry.js.map +1 -1
  303. package/dist/esm/dso-annotation-locatie_2.entry.js +6 -6
  304. package/dist/esm/dso-annotation-locatie_2.entry.js.map +1 -1
  305. package/dist/esm/dso-annotation-omgevingsnormwaarde.entry.js +4 -4
  306. package/dist/esm/dso-annotation-omgevingsnormwaarde.entry.js.map +1 -1
  307. package/dist/esm/dso-attachments-counter_2.entry.js +1 -1
  308. package/dist/esm/dso-autosuggest.entry.js +24 -8
  309. package/dist/esm/dso-autosuggest.entry.js.map +1 -1
  310. package/dist/esm/dso-banner.entry.js +1 -1
  311. package/dist/esm/dso-card-container.entry.js +1 -1
  312. package/dist/esm/dso-card.entry.js +1 -1
  313. package/dist/esm/dso-date-picker-legacy.entry.js +1 -1
  314. package/dist/esm/dso-date-picker.entry.js +1 -1
  315. package/dist/esm/dso-document-card.entry.js +1 -1
  316. package/dist/esm/dso-dropdown-menu.entry.js +2 -2
  317. package/dist/esm/dso-header.entry.js +28 -4
  318. package/dist/esm/dso-header.entry.js.map +1 -1
  319. package/dist/esm/dso-helpcenter-panel.entry.js +1 -1
  320. package/dist/esm/dso-highlight-box.entry.js +1 -1
  321. package/dist/esm/dso-icon.entry.js +1 -1
  322. package/dist/esm/dso-info-button.entry.js +1 -1
  323. package/dist/esm/dso-info_2.entry.js +2 -2
  324. package/dist/esm/dso-input-range.entry.js +1 -1
  325. package/dist/esm/dso-label_2.entry.js +1 -1
  326. package/dist/esm/dso-legend-item.entry.js +1 -1
  327. package/dist/esm/dso-list-button.entry.js +1 -1
  328. package/dist/esm/dso-logo.entry.js +8 -4
  329. package/dist/esm/dso-logo.entry.js.map +1 -1
  330. package/dist/esm/dso-map-base-layers.entry.js +19 -3
  331. package/dist/esm/dso-map-base-layers.entry.js.map +1 -1
  332. package/dist/esm/dso-map-controls.entry.js +26 -3
  333. package/dist/esm/dso-map-controls.entry.js.map +1 -1
  334. package/dist/esm/dso-map-overlays.entry.js +19 -3
  335. package/dist/esm/dso-map-overlays.entry.js.map +1 -1
  336. package/dist/esm/dso-mark-bar.entry.js +2 -2
  337. package/dist/esm/dso-modal.entry.js +21 -4
  338. package/dist/esm/dso-modal.entry.js.map +1 -1
  339. package/dist/esm/dso-pagination.entry.js +1 -1
  340. package/dist/esm/dso-plekinfo-card.entry.js +7 -3
  341. package/dist/esm/dso-plekinfo-card.entry.js.map +1 -1
  342. package/dist/esm/dso-progress-bar.entry.js +2 -2
  343. package/dist/esm/dso-progress-indicator.entry.js +19 -3
  344. package/dist/esm/dso-progress-indicator.entry.js.map +1 -1
  345. package/dist/esm/dso-project-item.entry.js +2 -2
  346. package/dist/esm/dso-renvooi_2.entry.js +20 -17
  347. package/dist/esm/dso-renvooi_2.entry.js.map +1 -1
  348. package/dist/esm/dso-responsive-element.entry.js +2 -2
  349. package/dist/esm/dso-scrollable.entry.js +3 -3
  350. package/dist/esm/dso-skiplink.entry.js +28 -0
  351. package/dist/esm/dso-skiplink.entry.js.map +1 -0
  352. package/dist/esm/dso-tab.entry.js +1 -1
  353. package/dist/esm/dso-tabs.entry.js +1 -1
  354. package/dist/esm/dso-toggletip.entry.js +1 -1
  355. package/dist/esm/dso-toolkit.js +4 -4
  356. package/dist/esm/dso-toolkit.js.map +1 -1
  357. package/dist/esm/dso-tree-view.entry.js +1 -1
  358. package/dist/esm/dso-viewer-grid.entry.js +1 -1
  359. package/dist/esm/dsot-document-component-demo.entry.js +9 -3
  360. package/dist/esm/dsot-document-component-demo.entry.js.map +1 -1
  361. package/dist/esm/i18n-c3546551.js +2385 -0
  362. package/dist/esm/i18n-c3546551.js.map +1 -0
  363. package/dist/esm/{index-1a8f2a10.js → index-75547ccd.js} +31 -14
  364. package/dist/esm/index-75547ccd.js.map +1 -0
  365. package/dist/esm/loader.js +3 -3
  366. package/dist/esm/v4-692dad5f.js +63 -0
  367. package/dist/esm/v4-692dad5f.js.map +1 -0
  368. package/dist/types/components/alert/alert.d.ts +2 -1
  369. package/dist/types/components/alert/alert.i18n.d.ts +2 -0
  370. package/dist/types/components/autosuggest/autosuggest.d.ts +1 -0
  371. package/dist/types/components/autosuggest/autosuggest.i18n.d.ts +2 -0
  372. package/dist/types/components/document-component-demo/document-component.demo.d.ts +1 -0
  373. package/dist/types/components/header/header.d.ts +2 -1
  374. package/dist/types/components/header/header.i18n.d.ts +2 -0
  375. package/dist/types/components/logo/logo.d.ts +9 -1
  376. package/dist/types/components/map-base-layers/map-base-layers.d.ts +3 -1
  377. package/dist/types/components/map-base-layers/map-base-layers.i18n.d.ts +2 -0
  378. package/dist/types/components/map-controls/map-controls.d.ts +2 -1
  379. package/dist/types/components/map-controls/map-controls.i18n.d.ts +2 -0
  380. package/dist/types/components/map-overlays/map-overlays.d.ts +3 -1
  381. package/dist/types/components/map-overlays/map-overlays.i18n.d.ts +2 -0
  382. package/dist/types/components/modal/modal.d.ts +1 -0
  383. package/dist/types/components/modal/modal.i18n.d.ts +2 -0
  384. package/dist/types/components/ozon-content/nodes/figuur.node.d.ts +0 -3
  385. package/dist/types/components/plekinfo-card/plekinfo-card.d.ts +7 -0
  386. package/dist/types/components/progress-indicator/progress-indicator.d.ts +3 -1
  387. package/dist/types/components/progress-indicator/progress-indicator.i18n.d.ts +2 -0
  388. package/dist/types/components/skiplink/skiplink.d.ts +18 -0
  389. package/dist/types/components/skiplink/skiplink.interfaces.d.ts +5 -0
  390. package/dist/types/components.d.ts +67 -1
  391. package/dist/types/stencil-public-runtime.d.ts +6 -0
  392. package/dist/types/utils/i18n.d.ts +5 -0
  393. package/package.json +10 -9
  394. package/dist/cjs/index-848434f1.js.map +0 -1
  395. package/dist/cjs/v4-7014b8b0.js +0 -67
  396. package/dist/cjs/v4-7014b8b0.js.map +0 -1
  397. package/dist/dso-toolkit/p-00caab3b.js +0 -2
  398. package/dist/dso-toolkit/p-228e4c2d.entry.js +0 -2
  399. package/dist/dso-toolkit/p-228e4c2d.entry.js.map +0 -1
  400. package/dist/dso-toolkit/p-2d9b7138.entry.js +0 -2
  401. package/dist/dso-toolkit/p-2d9b7138.entry.js.map +0 -1
  402. package/dist/dso-toolkit/p-46e446b0.entry.js +0 -2
  403. package/dist/dso-toolkit/p-46e446b0.entry.js.map +0 -1
  404. package/dist/dso-toolkit/p-587779a5.entry.js +0 -2
  405. package/dist/dso-toolkit/p-587779a5.entry.js.map +0 -1
  406. package/dist/dso-toolkit/p-608835d8.entry.js +0 -2
  407. package/dist/dso-toolkit/p-608835d8.entry.js.map +0 -1
  408. package/dist/dso-toolkit/p-950d43d8.entry.js +0 -2
  409. package/dist/dso-toolkit/p-950d43d8.entry.js.map +0 -1
  410. package/dist/dso-toolkit/p-a168dbd1.entry.js +0 -2
  411. package/dist/dso-toolkit/p-a168dbd1.entry.js.map +0 -1
  412. package/dist/dso-toolkit/p-a9427715.entry.js +0 -2
  413. package/dist/dso-toolkit/p-a9427715.entry.js.map +0 -1
  414. package/dist/dso-toolkit/p-ae076d5b.entry.js +0 -2
  415. package/dist/dso-toolkit/p-ae076d5b.entry.js.map +0 -1
  416. package/dist/dso-toolkit/p-b623c74b.js +0 -3
  417. package/dist/dso-toolkit/p-b623c74b.js.map +0 -1
  418. package/dist/dso-toolkit/p-bb87ef29.entry.js.map +0 -1
  419. package/dist/dso-toolkit/p-dcea90be.entry.js +0 -2
  420. package/dist/dso-toolkit/p-dcea90be.entry.js.map +0 -1
  421. package/dist/dso-toolkit/p-e3fea9f8.entry.js +0 -2
  422. package/dist/dso-toolkit/p-e3fea9f8.entry.js.map +0 -1
  423. package/dist/dso-toolkit/p-e773c47e.entry.js +0 -2
  424. package/dist/dso-toolkit/p-e773c47e.entry.js.map +0 -1
  425. package/dist/dso-toolkit/p-f5ff676c.js +0 -2
  426. package/dist/dso-toolkit/p-f5ff676c.js.map +0 -1
  427. package/dist/esm/index-1a8f2a10.js.map +0 -1
  428. package/dist/esm/v4-a79185f4.js +0 -65
  429. package/dist/esm/v4-a79185f4.js.map +0 -1
  430. /package/dist/dso-toolkit/{p-dd6cf2cd.entry.js.map → p-08121fee.entry.js.map} +0 -0
  431. /package/dist/dso-toolkit/{p-00caab3b.js.map → p-13396f6d.js.map} +0 -0
  432. /package/dist/dso-toolkit/{p-8e699eb2.entry.js.map → p-226833eb.entry.js.map} +0 -0
  433. /package/dist/dso-toolkit/{p-fc82b0d0.entry.js.map → p-278837c5.entry.js.map} +0 -0
  434. /package/dist/dso-toolkit/{p-e9896db2.entry.js.map → p-38cc23e1.entry.js.map} +0 -0
  435. /package/dist/dso-toolkit/{p-cd1a65e7.entry.js.map → p-40810e10.entry.js.map} +0 -0
  436. /package/dist/dso-toolkit/{p-6a414b15.entry.js.map → p-47ae7799.entry.js.map} +0 -0
  437. /package/dist/dso-toolkit/{p-b5744b74.entry.js.map → p-5c047dfd.entry.js.map} +0 -0
  438. /package/dist/dso-toolkit/{p-9ebf26d8.entry.js.map → p-5e6704bb.entry.js.map} +0 -0
  439. /package/dist/dso-toolkit/{p-331f52b3.entry.js.map → p-636a2ad2.entry.js.map} +0 -0
  440. /package/dist/dso-toolkit/{p-a801f428.entry.js.map → p-74e0e63e.entry.js.map} +0 -0
  441. /package/dist/dso-toolkit/{p-bda2d5ce.entry.js.map → p-75c65097.entry.js.map} +0 -0
  442. /package/dist/dso-toolkit/{p-54fff8c0.entry.js.map → p-76dfbee3.entry.js.map} +0 -0
  443. /package/dist/dso-toolkit/{p-ea46d648.entry.js.map → p-7dfc15c1.entry.js.map} +0 -0
  444. /package/dist/dso-toolkit/{p-cc6c428b.entry.js.map → p-83f89965.entry.js.map} +0 -0
  445. /package/dist/dso-toolkit/{p-a6f19891.entry.js.map → p-8bc5ab4d.entry.js.map} +0 -0
  446. /package/dist/dso-toolkit/{p-8b9ee8d3.entry.js.map → p-921fe0b7.entry.js.map} +0 -0
  447. /package/dist/dso-toolkit/{p-3cdfb92e.entry.js.map → p-9424e171.entry.js.map} +0 -0
  448. /package/dist/dso-toolkit/{p-065ea3f8.entry.js.map → p-99995b02.entry.js.map} +0 -0
  449. /package/dist/dso-toolkit/{p-3be4c978.entry.js.map → p-9d8395bc.entry.js.map} +0 -0
  450. /package/dist/dso-toolkit/{p-e8322c5b.entry.js.map → p-9df0ed5f.entry.js.map} +0 -0
  451. /package/dist/dso-toolkit/{p-e96183ae.entry.js.map → p-a64e9cd5.entry.js.map} +0 -0
  452. /package/dist/dso-toolkit/{p-e132910b.entry.js.map → p-b032496d.entry.js.map} +0 -0
  453. /package/dist/dso-toolkit/{p-d885c651.entry.js.map → p-b0a3dfcb.entry.js.map} +0 -0
  454. /package/dist/dso-toolkit/{p-ea804e9e.entry.js.map → p-c05d8f55.entry.js.map} +0 -0
  455. /package/dist/dso-toolkit/{p-34f1afd3.entry.js.map → p-c3e38404.entry.js.map} +0 -0
  456. /package/dist/dso-toolkit/{p-64bf55d1.entry.js.map → p-cb0a7103.entry.js.map} +0 -0
  457. /package/dist/dso-toolkit/{p-786f3a41.entry.js.map → p-cdbb39ad.entry.js.map} +0 -0
  458. /package/dist/dso-toolkit/{p-ab22347c.entry.js.map → p-de63f553.entry.js.map} +0 -0
  459. /package/dist/dso-toolkit/{p-ef8fbe01.entry.js.map → p-e42e0cb4.entry.js.map} +0 -0
  460. /package/dist/dso-toolkit/{p-778c0381.entry.js.map → p-e665556c.entry.js.map} +0 -0
  461. /package/dist/dso-toolkit/{p-a644f41c.entry.js.map → p-ef087d87.entry.js.map} +0 -0
  462. /package/dist/dso-toolkit/{p-ae8b8810.js.map → p-f11d080a.js.map} +0 -0
  463. /package/dist/dso-toolkit/{p-487469c5.entry.js.map → p-f3717d91.entry.js.map} +0 -0
  464. /package/dist/dso-toolkit/{p-05094f69.entry.js.map → p-fb5e4dc9.entry.js.map} +0 -0
@@ -1 +1 @@
1
- {"file":"dso-header.entry.js","mappings":"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","names":[],"sources":["src/components/header/header.scss?tag=dso-header&encapsulation=scoped","src/components/header/header.tsx"],"sourcesContent":["@use \"~dso-toolkit/src/variables/units\";\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\r\n@use \"~dso-toolkit/src/components/anchor\";\r\n\r\n@use \"header.variables\" as core-header-variables;\r\n\r\n@mixin nav-item-border($color) {\r\n border-block-end: 4px solid $color;\r\n}\r\n\r\n@mixin nav-item-main {\r\n font-size: 1.25em;\r\n line-height: 1;\r\n margin-block-start: units.$u1;\r\n padding-block: units.$u2;\r\n padding-inline: 0;\r\n}\r\n\r\n:host {\r\n display: block;\r\n}\r\n\r\n.dso-header {\r\n border-block-end: 1px solid colors.$grijs-20;\r\n display: flex;\r\n flex-wrap: wrap;\r\n position: relative;\r\n\r\n @media screen and (min-width: media-query-breakpoints.$screen-sm-min) {\r\n align-items: center;\r\n }\r\n\r\n @media screen and (max-width: media-query-breakpoints.$screen-sm-max) {\r\n &.use-drop-down {\r\n flex-wrap: nowrap;\r\n }\r\n }\r\n\r\n .dso-nav {\r\n border: 0;\r\n }\r\n}\r\n\r\n.logo-container {\r\n flex: 1 1 12.5rem;\r\n margin-inline-end: units.$u3;\r\n padding-block-end: units.$u2;\r\n padding-block-start: units.$u2;\r\n}\r\n\r\n.dso-header-session {\r\n display: flex;\r\n align-items: center;\r\n margin-inline-start: auto;\r\n\r\n .profile,\r\n .login,\r\n .logout,\r\n .help {\r\n .dso-tertiary {\r\n cursor: pointer;\r\n font-family: typography.$font-family-base;\r\n font-weight: 600;\r\n line-height: 1.5;\r\n }\r\n }\r\n\r\n .profile {\r\n margin-inline-start: units.$u1;\r\n\r\n + .logout,\r\n ~ .help {\r\n border-inline-start: 3px solid colors.$grijs-20;\r\n margin-inline-start: units.$u1;\r\n padding-inline-start: units.$u1;\r\n }\r\n }\r\n\r\n .help {\r\n a,\r\n button {\r\n display: flex;\r\n }\r\n }\r\n}\r\n\r\n.dso-navbar {\r\n flex-basis: 100%;\r\n\r\n .dso-dropdown-options {\r\n border-block-start: 1px solid colors.$grijs-20;\r\n }\r\n}\r\n\r\ndso-dropdown-menu {\r\n button {\r\n align-items: center;\r\n background-color: transparent;\r\n border: 0;\r\n display: flex;\r\n font-family: typography.$font-family-base;\r\n padding-inline-end: units.$u4;\r\n }\r\n\r\n .dso-dropdown-options {\r\n border: 0;\r\n border-radius: 0;\r\n\r\n @media screen and (min-width: media-query-breakpoints.$screen-sm-min) {\r\n inline-size: 375px;\r\n }\r\n\r\n @media screen and (max-width: media-query-breakpoints.$screen-xs-max) {\r\n inline-size: 100%;\r\n }\r\n\r\n ul li {\r\n a,\r\n button {\r\n color: colors.$bosgroen;\r\n font-size: 1.25rem;\r\n padding: units.$u2;\r\n white-space: pre-wrap;\r\n\r\n &:focus {\r\n color: colors.$wit;\r\n }\r\n\r\n &:hover {\r\n background-color: colors.$wit;\r\n color: colors.$bosgroen;\r\n text-decoration: underline;\r\n }\r\n }\r\n\r\n &.dso-active {\r\n a {\r\n font-weight: 600;\r\n }\r\n }\r\n\r\n + li {\r\n border-block-start: 1px solid colors.$grijs-20;\r\n }\r\n }\r\n }\r\n}\r\n\r\n.dropdown {\r\n margin-inline-start: auto;\r\n display: flex;\r\n align-items: center;\r\n\r\n dso-dropdown-menu {\r\n position: static;\r\n\r\n .dso-dropdown-options {\r\n inset-inline-end: 0;\r\n inset-block-start: 100%;\r\n }\r\n\r\n > button {\r\n color: colors.$grasgroen;\r\n font-size: typography.$font-size-base;\r\n font-weight: 600;\r\n line-height: normal;\r\n position: relative;\r\n\r\n &::after {\r\n margin-inline-start: units.$u1;\r\n position: absolute;\r\n inset-inline-end: 0px;\r\n inset-block-start: 50%;\r\n transform: translateY(-50%);\r\n }\r\n\r\n &:hover,\r\n &:active {\r\n cursor: pointer;\r\n text-decoration: underline;\r\n }\r\n }\r\n }\r\n}\r\n\r\n.dso-nav {\r\n align-items: end;\r\n column-gap: units.$u4;\r\n display: flex;\r\n list-style: none;\r\n margin-block-end: 0;\r\n margin-block-start: 0;\r\n padding-inline-start: 0;\r\n\r\n > li {\r\n margin-block-end: 4px;\r\n\r\n > a {\r\n display: block;\r\n\r\n &,\r\n &:hover,\r\n &:focus,\r\n &:visited {\r\n color: colors.$bosgroen;\r\n }\r\n }\r\n\r\n &.dso-active,\r\n &.is-active {\r\n margin-block-end: 0;\r\n\r\n > a {\r\n @include nav-item-border(core-header-variables.$navigation-selected-color);\r\n\r\n font-weight: bold;\r\n }\r\n }\r\n }\r\n\r\n &.dso-nav-main {\r\n display: flex !important;\r\n\r\n > li {\r\n > a {\r\n @include anchor.reverse();\r\n @include nav-item-main();\r\n\r\n // stylelint-disable-next-line declaration-property-value-disallowed-list -- no wrapping wanted because of icon\r\n white-space: nowrap;\r\n }\r\n }\r\n\r\n dso-dropdown-menu {\r\n .dso-dropdown-options {\r\n inset-inline-start: units.$ru2 * -1 !important;\r\n inset-block-start: 3px !important;\r\n }\r\n\r\n button {\r\n @include nav-item-main();\r\n\r\n align-items: center;\r\n color: colors.$bosgroen;\r\n padding-inline-end: units.$u4;\r\n\r\n &:hover,\r\n &:active {\r\n cursor: pointer;\r\n text-decoration: underline;\r\n }\r\n\r\n &::after {\r\n margin-inline-start: units.$u1;\r\n position: absolute;\r\n inset-inline-end: 0px;\r\n inset-block-start: auto;\r\n transform: none;\r\n }\r\n }\r\n }\r\n }\r\n\r\n .menu-user-home {\r\n margin-inline-start: auto;\r\n\r\n dso-icon {\r\n block-size: 1em;\r\n margin-inline-end: units.$u1;\r\n position: relative;\r\n inset-block-start: -2px;\r\n inline-size: 1.2em;\r\n }\r\n }\r\n}\r\n","import { Component, Element, Event, EventEmitter, Fragment, h, Prop, State, Watch } from \"@stencil/core\";\r\n\r\nimport clsx from \"clsx\";\r\nimport debounce from \"debounce\";\r\nimport { isModifiedEvent } from \"../../utils/is-modified-event\";\r\n\r\nimport { HeaderMenuItem, HeaderNavigationType, HeaderEvent } from \"./header.interfaces\";\r\n\r\nconst minDesktopViewportWidth = 992;\r\n\r\n@Component({\r\n tag: \"dso-header\",\r\n styleUrl: \"header.scss\",\r\n scoped: true,\r\n})\r\nexport class Header {\r\n private clickHandler(\r\n e: MouseEvent,\r\n type: HeaderNavigationType,\r\n options?: { menuItem?: HeaderMenuItem; url?: string },\r\n ) {\r\n this.dsoHeaderClick.emit({\r\n originalEvent: e,\r\n isModifiedEvent: isModifiedEvent(e),\r\n type,\r\n menuItem: options?.menuItem,\r\n url: options?.url ?? options?.menuItem?.url,\r\n });\r\n }\r\n\r\n private dropdownElement?: HTMLElement;\r\n\r\n @Element()\r\n host!: HTMLDsoHeaderElement;\r\n\r\n /**\r\n * The main menu items.\r\n */\r\n @Prop()\r\n mainMenu?: HeaderMenuItem[] = [];\r\n\r\n /**\r\n * Either have the dropdown menu appear automatically or always.\r\n */\r\n @Prop()\r\n useDropDownMenu: \"always\" | \"auto\" = \"auto\";\r\n\r\n /**\r\n * Used to show the login/logout option. 'none' renders nothing.\r\n */\r\n @Prop()\r\n authStatus: \"none\" | \"loggedIn\" | \"loggedOut\" = \"none\";\r\n\r\n /**\r\n * When the `authStatus` is `loggedOut` a loginUrl can be provided.\r\n * The login button will then render as an anchor.\r\n */\r\n @Prop()\r\n loginUrl?: string;\r\n\r\n /**\r\n * The URL to open when the user activates \"logout\".\r\n * If no URL is specified, a button element is used instead.\r\n */\r\n @Prop()\r\n logoutUrl?: string;\r\n\r\n /**\r\n * Show a help-button or link in the header\r\n */\r\n @Prop()\r\n showHelp? = false;\r\n\r\n /**\r\n * The URL to open when the user activates \"help\".\r\n * If no URL is specified, a button element is used instead.\r\n */\r\n @Prop()\r\n helpUrl?: string;\r\n\r\n /**\r\n * The name to show when the user is logged in.\r\n */\r\n @Prop()\r\n userProfileName?: string;\r\n\r\n /**\r\n * The URL to open when the user activates the profile url.\r\n */\r\n @Prop()\r\n userProfileUrl?: string;\r\n\r\n /**\r\n * The URL to open when the user activates \"Mijn Omgevingsloket\".\r\n */\r\n @Prop()\r\n userHomeUrl?: string;\r\n\r\n /**\r\n * Set this to true when the user is at \"Mijn Omgevingsloket\".\r\n */\r\n @Prop()\r\n userHomeActive?: boolean;\r\n\r\n @State()\r\n showDropDown?: boolean;\r\n\r\n @State()\r\n overflowMenuItems = 0;\r\n\r\n @State()\r\n dropdownOptionsOffset = 0;\r\n\r\n /**\r\n * Emitted when something in the header is selected.\r\n *\r\n * `event.detail.type` indicates the functionality the user pressed. eg. `'login'` or `'menuItem'`\r\n */\r\n @Event()\r\n dsoHeaderClick!: EventEmitter<HeaderEvent>;\r\n\r\n @Watch(\"useDropDownMenu\")\r\n setShowDropDown(value: \"always\" | \"auto\") {\r\n if (value === \"auto\") {\r\n this.setDropDownMenu();\r\n\r\n return;\r\n }\r\n\r\n this.showDropDown = value === \"always\";\r\n }\r\n\r\n private wrapper: HTMLDivElement | undefined;\r\n\r\n private nav: HTMLUListElement | undefined;\r\n\r\n private shrinkMenuToFit() {\r\n if (!this.wrapper || !this.nav) {\r\n return;\r\n }\r\n\r\n if (this.wrapper.clientWidth >= this.nav.clientWidth) {\r\n return;\r\n }\r\n\r\n if (this.mainMenu && this.overflowMenuItems >= this.mainMenu.length) {\r\n return;\r\n }\r\n\r\n this.overflowMenuItems++;\r\n }\r\n\r\n componentDidRender() {\r\n if (this.showDropDown) {\r\n this.dropdownOptionsOffset = this.calculateDropdownOptionsOffset();\r\n\r\n return;\r\n }\r\n\r\n window.setTimeout(() => this.shrinkMenuToFit(), 0);\r\n }\r\n\r\n componentDidLoad() {\r\n this.setShowDropDown(this.useDropDownMenu);\r\n\r\n if (this.showDropDown) {\r\n this.dropdownOptionsOffset = this.calculateDropdownOptionsOffset();\r\n }\r\n }\r\n\r\n private setOverflowMenu() {\r\n if (this.showDropDown) {\r\n return;\r\n }\r\n\r\n if (this.overflowMenuItems !== 0) {\r\n this.overflowMenuItems = 0;\r\n return;\r\n }\r\n\r\n this.shrinkMenuToFit();\r\n }\r\n\r\n private setDropDownMenu() {\r\n if (this.useDropDownMenu !== \"auto\") {\r\n return;\r\n }\r\n\r\n this.showDropDown = window.innerWidth < minDesktopViewportWidth;\r\n }\r\n\r\n private calculateDropdownOptionsOffset() {\r\n if (!this.dropdownElement) {\r\n return 0;\r\n }\r\n\r\n return (\r\n this.host.clientHeight -\r\n (this.dropdownElement?.getBoundingClientRect().bottom - this.host.getBoundingClientRect().top)\r\n );\r\n }\r\n\r\n private onWindowResize = debounce(() => {\r\n this.dropdownElement?.removeAttribute(\"open\");\r\n this.dropdownElement?.removeAttribute(\"tabindex\");\r\n\r\n this.setDropDownMenu();\r\n this.setOverflowMenu();\r\n\r\n if (this.showDropDown) {\r\n this.dropdownOptionsOffset = this.calculateDropdownOptionsOffset();\r\n }\r\n }, 100);\r\n\r\n connectedCallback() {\r\n window.addEventListener(\"resize\", this.onWindowResize);\r\n }\r\n\r\n disconnectedCallback() {\r\n window.removeEventListener(\"resize\", this.onWindowResize);\r\n }\r\n\r\n private MenuItem = (item: HeaderMenuItem) => {\r\n return (\r\n <li class={item.active ? \"dso-active\" : undefined}>\r\n <a\r\n href={item.url}\r\n aria-current={item.active ? \"page\" : undefined}\r\n onClick={(e) => this.clickHandler(e, \"menuItem\", { menuItem: item })}\r\n >\r\n {item.label}\r\n </a>\r\n </li>\r\n );\r\n };\r\n\r\n render() {\r\n // Prevent 'flickering' when useDropDownMenu = 'always'\r\n if (this.showDropDown === undefined) {\r\n return;\r\n }\r\n\r\n return (\r\n <>\r\n <div\r\n class={clsx(\"dso-header\", {\r\n [\"use-drop-down\"]: this.showDropDown,\r\n })}\r\n ref={(element) => (this.wrapper = element)}\r\n >\r\n <div class=\"logo-container\">\r\n <slot name=\"logo\" />\r\n </div>\r\n {this.showDropDown &&\r\n this.mainMenu &&\r\n (this.mainMenu.length > 0 || this.userHomeUrl || this.authStatus !== \"none\") && (\r\n <div class=\"dropdown\">\r\n <dso-dropdown-menu\r\n dropdown-align=\"right\"\r\n strategy=\"absolute\"\r\n dropdownOptionsOffset={this.dropdownOptionsOffset}\r\n ref={(element) => (this.dropdownElement = element)}\r\n >\r\n <button type=\"button\" slot=\"toggle\">\r\n <span>Menu</span>\r\n </button>\r\n <div class=\"dso-dropdown-options\">\r\n <ul>\r\n {this.mainMenu.map(this.MenuItem)}\r\n {this.userHomeUrl && (\r\n <li>\r\n <a\r\n href={this.userHomeUrl}\r\n onClick={(e) => this.clickHandler(e, \"userHome\", { url: this.userHomeUrl })}\r\n >\r\n Mijn Omgevingsloket\r\n </a>\r\n </li>\r\n )}\r\n {this.userProfileUrl && this.userProfileName && this.authStatus === \"loggedIn\" && (\r\n <li>\r\n <a\r\n href={this.userProfileUrl}\r\n onClick={(e) => this.clickHandler(e, \"profile\", { url: this.userProfileUrl })}\r\n >\r\n {this.userProfileName}\r\n <span class=\"profile-label\"> - Mijn profiel</span>\r\n </a>\r\n </li>\r\n )}\r\n {this.authStatus === \"loggedOut\" && (\r\n <li>\r\n {this.loginUrl ? (\r\n <a\r\n href={this.loginUrl}\r\n onClick={(e) => this.clickHandler(e, \"login\", { url: this.loginUrl })}\r\n >\r\n Inloggen\r\n </a>\r\n ) : (\r\n <button type=\"button\" onClick={(e) => this.clickHandler(e, \"login\")}>\r\n Inloggen\r\n </button>\r\n )}\r\n </li>\r\n )}\r\n {this.authStatus === \"loggedIn\" && (\r\n <li>\r\n {this.logoutUrl ? (\r\n <a\r\n href={this.logoutUrl}\r\n onClick={(e) => this.clickHandler(e, \"logout\", { url: this.logoutUrl })}\r\n >\r\n Uitloggen\r\n </a>\r\n ) : (\r\n <button type=\"button\" onClick={(e) => this.clickHandler(e, \"logout\")}>\r\n Uitloggen\r\n </button>\r\n )}\r\n </li>\r\n )}\r\n {this.showHelp && (\r\n <li>\r\n {this.helpUrl ? (\r\n <a\r\n href={this.helpUrl}\r\n class=\"dso-tertiary\"\r\n onClick={(e) => this.clickHandler(e, \"help\", { url: this.helpUrl })}\r\n >\r\n <span>Help</span>\r\n <dso-icon icon=\"help\"></dso-icon>\r\n </a>\r\n ) : (\r\n <button type=\"button\" class=\"dso-tertiary\" onClick={(e) => this.clickHandler(e, \"help\")}>\r\n <span>Help</span>\r\n <dso-icon icon=\"help\"></dso-icon>\r\n </button>\r\n )}\r\n </li>\r\n )}\r\n </ul>\r\n </div>\r\n </dso-dropdown-menu>\r\n </div>\r\n )}\r\n {!this.showDropDown && (\r\n <>\r\n <div class=\"dso-header-session\">\r\n {this.userProfileUrl && this.userProfileName && this.authStatus === \"loggedIn\" && (\r\n <div class=\"profile\">\r\n <a\r\n href={this.userProfileUrl}\r\n class=\"dso-tertiary\"\r\n onClick={(e) => this.clickHandler(e, \"profile\", { url: this.userProfileUrl })}\r\n >\r\n {this.userProfileName}\r\n </a>\r\n </div>\r\n )}\r\n {this.authStatus === \"loggedOut\" && (\r\n <div class=\"login\">\r\n {this.loginUrl ? (\r\n <a\r\n href={this.loginUrl}\r\n class=\"dso-tertiary\"\r\n onClick={(e) => this.clickHandler(e, \"login\", { url: this.loginUrl })}\r\n >\r\n Inloggen\r\n </a>\r\n ) : (\r\n <button class=\"dso-tertiary\" type=\"button\" onClick={(e) => this.clickHandler(e, \"login\")}>\r\n Inloggen\r\n </button>\r\n )}\r\n </div>\r\n )}\r\n {this.authStatus === \"loggedIn\" && (\r\n <div class=\"logout\">\r\n {this.logoutUrl ? (\r\n <a\r\n href={this.logoutUrl}\r\n class=\"dso-tertiary\"\r\n onClick={(e) => this.clickHandler(e, \"logout\", { url: this.logoutUrl })}\r\n >\r\n Uitloggen\r\n </a>\r\n ) : (\r\n <button class=\"dso-tertiary\" type=\"button\" onClick={(e) => this.clickHandler(e, \"logout\")}>\r\n Uitloggen\r\n </button>\r\n )}\r\n </div>\r\n )}\r\n {this.showHelp && (\r\n <div class=\"help\">\r\n {this.helpUrl ? (\r\n <a\r\n href={this.helpUrl}\r\n class=\"dso-tertiary\"\r\n onClick={(e) => this.clickHandler(e, \"help\", { url: this.helpUrl })}\r\n >\r\n <span>Help</span>\r\n <dso-icon icon=\"help\"></dso-icon>\r\n </a>\r\n ) : (\r\n <button class=\"dso-tertiary\" type=\"button\" onClick={(e) => this.clickHandler(e, \"help\")}>\r\n <span>Help</span>\r\n <dso-icon icon=\"help\"></dso-icon>\r\n </button>\r\n )}\r\n </div>\r\n )}\r\n </div>\r\n {((this.mainMenu && this.mainMenu.length > 0) || this.userHomeUrl) && (\r\n <nav class=\"dso-navbar\">\r\n <ul class=\"dso-nav dso-nav-main\" ref={(element) => (this.nav = element)}>\r\n {this.mainMenu &&\r\n this.mainMenu\r\n .filter((_, index) => this.mainMenu && index < this.mainMenu.length - this.overflowMenuItems)\r\n .map(this.MenuItem)}\r\n {this.overflowMenuItems > 0 && (\r\n <li>\r\n <dso-dropdown-menu placement=\"bottom\">\r\n <button type=\"button\" slot=\"toggle\">\r\n <span>Meer</span>\r\n </button>\r\n <div class=\"dso-dropdown-options\">\r\n <ul>\r\n {this.mainMenu &&\r\n this.mainMenu\r\n .filter(\r\n (_, index) =>\r\n this.mainMenu && index >= this.mainMenu.length - this.overflowMenuItems,\r\n )\r\n .map(this.MenuItem)}\r\n </ul>\r\n </div>\r\n </dso-dropdown-menu>\r\n </li>\r\n )}\r\n {this.userHomeUrl && (\r\n <li class={clsx(\"menu-user-home\", { \"dso-active\": this.userHomeActive })}>\r\n <a\r\n href={this.userHomeUrl}\r\n aria-current={this.userHomeActive ? \"page\" : undefined}\r\n onClick={(e) => this.clickHandler(e, \"userHome\", { url: this.userHomeUrl })}\r\n >\r\n <dso-icon icon=\"user-line\"></dso-icon>\r\n Mijn Omgevingsloket\r\n </a>\r\n </li>\r\n )}\r\n </ul>\r\n </nav>\r\n )}\r\n </>\r\n )}\r\n </div>\r\n </>\r\n );\r\n }\r\n}\r\n"],"version":3}
1
+ {"file":"dso-header.entry.js","mappings":"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","names":[],"sources":["src/components/header/header.i18n.ts","src/components/header/header.scss?tag=dso-header&encapsulation=scoped","src/components/header/header.tsx"],"sourcesContent":["import { Resource } from \"../../utils/i18n\";\r\n\r\nexport const translations: Resource = {\r\n en: {\r\n \"dso-header\": {\r\n menu: \"Menu\",\r\n login: \"Log in\",\r\n logout: \"Log out\",\r\n help: \"Help\",\r\n overflowMenu: \"More\",\r\n },\r\n },\r\n nl: {\r\n \"dso-header\": {\r\n menu: \"Menu\",\r\n login: \"Inloggen\",\r\n logout: \"Uitloggen\",\r\n help: \"Help\",\r\n overflowMenu: \"Meer\",\r\n userHome: \"Mijn Omgevingsloket\",\r\n },\r\n },\r\n};\r\n","@use \"~dso-toolkit/src/variables/units\";\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\r\n@use \"~dso-toolkit/src/components/anchor\";\r\n\r\n@use \"header.variables\" as core-header-variables;\r\n\r\n@mixin nav-item-border($color) {\r\n border-block-end: 4px solid $color;\r\n}\r\n\r\n@mixin nav-item-main {\r\n font-size: 1.25em;\r\n line-height: 1;\r\n margin-block-start: units.$u1;\r\n padding-block: units.$u2;\r\n padding-inline: 0;\r\n}\r\n\r\n:host {\r\n display: block;\r\n}\r\n\r\n.dso-header {\r\n border-block-end: 1px solid colors.$grijs-20;\r\n display: flex;\r\n flex-wrap: wrap;\r\n position: relative;\r\n\r\n @media screen and (min-width: media-query-breakpoints.$screen-sm-min) {\r\n align-items: center;\r\n }\r\n\r\n @media screen and (max-width: media-query-breakpoints.$screen-sm-max) {\r\n &.use-drop-down {\r\n flex-wrap: nowrap;\r\n }\r\n }\r\n\r\n .dso-nav {\r\n border: 0;\r\n }\r\n}\r\n\r\n.logo-container {\r\n flex: 1 1 12.5rem;\r\n margin-inline-end: units.$u3;\r\n padding-block-end: units.$u2;\r\n padding-block-start: units.$u2;\r\n}\r\n\r\n.dso-header-session {\r\n display: flex;\r\n align-items: center;\r\n margin-inline-start: auto;\r\n\r\n .profile,\r\n .login,\r\n .logout,\r\n .help {\r\n .dso-tertiary {\r\n cursor: pointer;\r\n font-family: typography.$font-family-base;\r\n font-weight: 600;\r\n line-height: 1.5;\r\n }\r\n }\r\n\r\n .profile {\r\n margin-inline-start: units.$u1;\r\n\r\n + .logout,\r\n ~ .help {\r\n border-inline-start: 3px solid colors.$grijs-20;\r\n margin-inline-start: units.$u1;\r\n padding-inline-start: units.$u1;\r\n }\r\n }\r\n\r\n .help {\r\n a,\r\n button {\r\n display: flex;\r\n }\r\n }\r\n}\r\n\r\n.dso-navbar {\r\n flex-basis: 100%;\r\n\r\n .dso-dropdown-options {\r\n border-block-start: 1px solid colors.$grijs-20;\r\n }\r\n}\r\n\r\ndso-dropdown-menu {\r\n button {\r\n align-items: center;\r\n background-color: transparent;\r\n border: 0;\r\n display: flex;\r\n font-family: typography.$font-family-base;\r\n padding-inline-end: units.$u4;\r\n }\r\n\r\n .dso-dropdown-options {\r\n border: 0;\r\n border-radius: 0;\r\n\r\n @media screen and (min-width: media-query-breakpoints.$screen-sm-min) {\r\n inline-size: 375px;\r\n }\r\n\r\n @media screen and (max-width: media-query-breakpoints.$screen-xs-max) {\r\n inline-size: 100%;\r\n }\r\n\r\n ul li {\r\n a,\r\n button {\r\n color: colors.$bosgroen;\r\n font-size: 1.25rem;\r\n padding: units.$u2;\r\n white-space: pre-wrap;\r\n\r\n &:focus {\r\n color: colors.$wit;\r\n }\r\n\r\n &:hover {\r\n background-color: colors.$wit;\r\n color: colors.$bosgroen;\r\n text-decoration: underline;\r\n }\r\n }\r\n\r\n &.dso-active {\r\n a {\r\n font-weight: 600;\r\n }\r\n }\r\n\r\n + li {\r\n border-block-start: 1px solid colors.$grijs-20;\r\n }\r\n }\r\n }\r\n}\r\n\r\n.dropdown {\r\n margin-inline-start: auto;\r\n display: flex;\r\n align-items: center;\r\n\r\n dso-dropdown-menu {\r\n position: static;\r\n\r\n .dso-dropdown-options {\r\n inset-inline-end: 0;\r\n inset-block-start: 100%;\r\n }\r\n\r\n > button {\r\n color: colors.$grasgroen;\r\n font-size: typography.$font-size-base;\r\n font-weight: 600;\r\n line-height: normal;\r\n position: relative;\r\n\r\n &::after {\r\n margin-inline-start: units.$u1;\r\n position: absolute;\r\n inset-inline-end: 0px;\r\n inset-block-start: 50%;\r\n transform: translateY(-50%);\r\n }\r\n\r\n &:hover,\r\n &:active {\r\n cursor: pointer;\r\n text-decoration: underline;\r\n }\r\n }\r\n }\r\n}\r\n\r\n.dso-nav {\r\n align-items: end;\r\n column-gap: units.$u4;\r\n display: flex;\r\n list-style: none;\r\n margin-block-end: 0;\r\n margin-block-start: 0;\r\n padding-inline-start: 0;\r\n\r\n > li {\r\n margin-block-end: 4px;\r\n\r\n > a {\r\n display: block;\r\n\r\n &,\r\n &:hover,\r\n &:focus,\r\n &:visited {\r\n color: colors.$bosgroen;\r\n }\r\n }\r\n\r\n &.dso-active,\r\n &.is-active {\r\n margin-block-end: 0;\r\n\r\n > a {\r\n @include nav-item-border(core-header-variables.$navigation-selected-color);\r\n\r\n font-weight: bold;\r\n }\r\n }\r\n }\r\n\r\n &.dso-nav-main {\r\n display: flex !important;\r\n\r\n > li {\r\n > a {\r\n @include anchor.reverse();\r\n @include nav-item-main();\r\n\r\n // stylelint-disable-next-line declaration-property-value-disallowed-list -- no wrapping wanted because of icon\r\n white-space: nowrap;\r\n }\r\n }\r\n\r\n dso-dropdown-menu {\r\n .dso-dropdown-options {\r\n inset-inline-start: units.$ru2 * -1 !important;\r\n inset-block-start: 3px !important;\r\n }\r\n\r\n button {\r\n @include nav-item-main();\r\n\r\n align-items: center;\r\n color: colors.$bosgroen;\r\n padding-inline-end: units.$u4;\r\n\r\n &:hover,\r\n &:active {\r\n cursor: pointer;\r\n text-decoration: underline;\r\n }\r\n\r\n &::after {\r\n margin-inline-start: units.$u1;\r\n position: absolute;\r\n inset-inline-end: 0px;\r\n inset-block-start: auto;\r\n transform: none;\r\n }\r\n }\r\n }\r\n }\r\n\r\n .menu-user-home {\r\n margin-inline-start: auto;\r\n\r\n dso-icon {\r\n block-size: 1em;\r\n margin-inline-end: units.$u1;\r\n position: relative;\r\n inset-block-start: -2px;\r\n inline-size: 1.2em;\r\n }\r\n }\r\n}\r\n","import { Component, Element, Event, EventEmitter, Fragment, h, Prop, State, Watch } from \"@stencil/core\";\r\n\r\nimport clsx from \"clsx\";\r\nimport debounce from \"debounce\";\r\n\r\nimport { i18n } from \"../../utils/i18n\";\r\nimport { isModifiedEvent } from \"../../utils/is-modified-event\";\r\n\r\nimport { HeaderEvent, HeaderMenuItem, HeaderNavigationType } from \"./header.interfaces\";\r\nimport { translations } from \"./header.i18n\";\r\n\r\nconst minDesktopViewportWidth = 992;\r\n\r\n@Component({\r\n tag: \"dso-header\",\r\n styleUrl: \"header.scss\",\r\n scoped: true,\r\n})\r\nexport class Header {\r\n private clickHandler(\r\n e: MouseEvent,\r\n type: HeaderNavigationType,\r\n options?: { menuItem?: HeaderMenuItem; url?: string },\r\n ) {\r\n this.dsoHeaderClick.emit({\r\n originalEvent: e,\r\n isModifiedEvent: isModifiedEvent(e),\r\n type,\r\n menuItem: options?.menuItem,\r\n url: options?.url ?? options?.menuItem?.url,\r\n });\r\n }\r\n\r\n private dropdownElement?: HTMLElement;\r\n\r\n @Element()\r\n host!: HTMLDsoHeaderElement;\r\n\r\n /**\r\n * The main menu items.\r\n */\r\n @Prop()\r\n mainMenu?: HeaderMenuItem[] = [];\r\n\r\n /**\r\n * Either have the dropdown menu appear automatically or always.\r\n */\r\n @Prop()\r\n useDropDownMenu: \"always\" | \"auto\" = \"auto\";\r\n\r\n /**\r\n * Used to show the login/logout option. 'none' renders nothing.\r\n */\r\n @Prop()\r\n authStatus: \"none\" | \"loggedIn\" | \"loggedOut\" = \"none\";\r\n\r\n /**\r\n * When the `authStatus` is `loggedOut` a loginUrl can be provided.\r\n * The login button will then render as an anchor.\r\n */\r\n @Prop()\r\n loginUrl?: string;\r\n\r\n /**\r\n * The URL to open when the user activates \"logout\".\r\n * If no URL is specified, a button element is used instead.\r\n */\r\n @Prop()\r\n logoutUrl?: string;\r\n\r\n /**\r\n * Show a help-button or link in the header\r\n */\r\n @Prop()\r\n showHelp? = false;\r\n\r\n /**\r\n * The URL to open when the user activates \"help\".\r\n * If no URL is specified, a button element is used instead.\r\n */\r\n @Prop()\r\n helpUrl?: string;\r\n\r\n /**\r\n * The name to show when the user is logged in.\r\n */\r\n @Prop()\r\n userProfileName?: string;\r\n\r\n /**\r\n * The URL to open when the user activates the profile url.\r\n */\r\n @Prop()\r\n userProfileUrl?: string;\r\n\r\n /**\r\n * The URL to open when the user activates \"Mijn Omgevingsloket\".\r\n */\r\n @Prop()\r\n userHomeUrl?: string;\r\n\r\n /**\r\n * Set this to true when the user is at \"Mijn Omgevingsloket\".\r\n */\r\n @Prop()\r\n userHomeActive?: boolean;\r\n\r\n @State()\r\n showDropDown?: boolean;\r\n\r\n @State()\r\n overflowMenuItems = 0;\r\n\r\n @State()\r\n dropdownOptionsOffset = 0;\r\n\r\n /**\r\n * Emitted when something in the header is selected.\r\n *\r\n * `event.detail.type` indicates the functionality the user pressed. eg. `'login'` or `'menuItem'`\r\n */\r\n @Event()\r\n dsoHeaderClick!: EventEmitter<HeaderEvent>;\r\n\r\n @Watch(\"useDropDownMenu\")\r\n setShowDropDown(value: \"always\" | \"auto\") {\r\n if (value === \"auto\") {\r\n this.setDropDownMenu();\r\n\r\n return;\r\n }\r\n\r\n this.showDropDown = value === \"always\";\r\n }\r\n\r\n private wrapper: HTMLDivElement | undefined;\r\n\r\n private nav: HTMLUListElement | undefined;\r\n\r\n private shrinkMenuToFit() {\r\n if (!this.wrapper || !this.nav) {\r\n return;\r\n }\r\n\r\n if (this.wrapper.clientWidth >= this.nav.clientWidth) {\r\n return;\r\n }\r\n\r\n if (this.mainMenu && this.overflowMenuItems >= this.mainMenu.length) {\r\n return;\r\n }\r\n\r\n this.overflowMenuItems++;\r\n }\r\n\r\n private text = i18n(() => this.host, translations);\r\n\r\n componentDidRender() {\r\n if (this.showDropDown) {\r\n this.dropdownOptionsOffset = this.calculateDropdownOptionsOffset();\r\n\r\n return;\r\n }\r\n\r\n window.setTimeout(() => this.shrinkMenuToFit(), 0);\r\n }\r\n\r\n componentDidLoad() {\r\n this.setShowDropDown(this.useDropDownMenu);\r\n\r\n if (this.showDropDown) {\r\n this.dropdownOptionsOffset = this.calculateDropdownOptionsOffset();\r\n }\r\n }\r\n\r\n private setOverflowMenu() {\r\n if (this.showDropDown) {\r\n return;\r\n }\r\n\r\n if (this.overflowMenuItems !== 0) {\r\n this.overflowMenuItems = 0;\r\n return;\r\n }\r\n\r\n this.shrinkMenuToFit();\r\n }\r\n\r\n private setDropDownMenu() {\r\n if (this.useDropDownMenu !== \"auto\") {\r\n return;\r\n }\r\n\r\n this.showDropDown = window.innerWidth < minDesktopViewportWidth;\r\n }\r\n\r\n private calculateDropdownOptionsOffset() {\r\n if (!this.dropdownElement) {\r\n return 0;\r\n }\r\n\r\n return (\r\n this.host.clientHeight -\r\n (this.dropdownElement?.getBoundingClientRect().bottom - this.host.getBoundingClientRect().top)\r\n );\r\n }\r\n\r\n private onWindowResize = debounce(() => {\r\n this.dropdownElement?.removeAttribute(\"open\");\r\n this.dropdownElement?.removeAttribute(\"tabindex\");\r\n\r\n this.setDropDownMenu();\r\n this.setOverflowMenu();\r\n\r\n if (this.showDropDown) {\r\n this.dropdownOptionsOffset = this.calculateDropdownOptionsOffset();\r\n }\r\n }, 100);\r\n\r\n connectedCallback() {\r\n window.addEventListener(\"resize\", this.onWindowResize);\r\n }\r\n\r\n disconnectedCallback() {\r\n window.removeEventListener(\"resize\", this.onWindowResize);\r\n }\r\n\r\n private MenuItem = (item: HeaderMenuItem) => {\r\n return (\r\n <li class={item.active ? \"dso-active\" : undefined}>\r\n <a\r\n href={item.url}\r\n aria-current={item.active ? \"page\" : undefined}\r\n onClick={(e) => this.clickHandler(e, \"menuItem\", { menuItem: item })}\r\n >\r\n {item.label}\r\n </a>\r\n </li>\r\n );\r\n };\r\n\r\n render() {\r\n // Prevent 'flickering' when useDropDownMenu = 'always'\r\n if (this.showDropDown === undefined) {\r\n return;\r\n }\r\n\r\n return (\r\n <>\r\n <div\r\n class={clsx(\"dso-header\", {\r\n [\"use-drop-down\"]: this.showDropDown,\r\n })}\r\n ref={(element) => (this.wrapper = element)}\r\n >\r\n <div class=\"logo-container\">\r\n <slot name=\"logo\" />\r\n </div>\r\n {this.showDropDown &&\r\n this.mainMenu &&\r\n (this.mainMenu.length > 0 || this.userHomeUrl || this.authStatus !== \"none\") && (\r\n <div class=\"dropdown\">\r\n <dso-dropdown-menu\r\n dropdown-align=\"right\"\r\n strategy=\"absolute\"\r\n dropdownOptionsOffset={this.dropdownOptionsOffset}\r\n ref={(element) => (this.dropdownElement = element)}\r\n >\r\n <button type=\"button\" slot=\"toggle\">\r\n <span>{this.text(\"menu\")}</span>\r\n </button>\r\n <div class=\"dso-dropdown-options\">\r\n <ul>\r\n {this.mainMenu.map(this.MenuItem)}\r\n {this.userHomeUrl && (\r\n <li>\r\n <a\r\n href={this.userHomeUrl}\r\n onClick={(e) => this.clickHandler(e, \"userHome\", { url: this.userHomeUrl })}\r\n >\r\n {this.text(\"userHome\")}\r\n </a>\r\n </li>\r\n )}\r\n {this.userProfileUrl && this.userProfileName && this.authStatus === \"loggedIn\" && (\r\n <li>\r\n <a\r\n href={this.userProfileUrl}\r\n onClick={(e) => this.clickHandler(e, \"profile\", { url: this.userProfileUrl })}\r\n >\r\n {this.userProfileName}\r\n <span class=\"profile-label\"> - Mijn profiel</span>\r\n </a>\r\n </li>\r\n )}\r\n {this.authStatus === \"loggedOut\" && (\r\n <li>\r\n {this.loginUrl ? (\r\n <a\r\n href={this.loginUrl}\r\n onClick={(e) => this.clickHandler(e, \"login\", { url: this.loginUrl })}\r\n >\r\n {this.text(\"login\")}\r\n </a>\r\n ) : (\r\n <button type=\"button\" onClick={(e) => this.clickHandler(e, \"login\")}>\r\n {this.text(\"login\")}\r\n </button>\r\n )}\r\n </li>\r\n )}\r\n {this.authStatus === \"loggedIn\" && (\r\n <li>\r\n {this.logoutUrl ? (\r\n <a\r\n href={this.logoutUrl}\r\n onClick={(e) => this.clickHandler(e, \"logout\", { url: this.logoutUrl })}\r\n >\r\n {this.text(\"logout\")}\r\n </a>\r\n ) : (\r\n <button type=\"button\" onClick={(e) => this.clickHandler(e, \"logout\")}>\r\n {this.text(\"logout\")}\r\n </button>\r\n )}\r\n </li>\r\n )}\r\n {this.showHelp && (\r\n <li>\r\n {this.helpUrl ? (\r\n <a\r\n href={this.helpUrl}\r\n class=\"dso-tertiary\"\r\n onClick={(e) => this.clickHandler(e, \"help\", { url: this.helpUrl })}\r\n >\r\n <span>{this.text(\"help\")}</span>\r\n <dso-icon icon=\"help\"></dso-icon>\r\n </a>\r\n ) : (\r\n <button type=\"button\" class=\"dso-tertiary\" onClick={(e) => this.clickHandler(e, \"help\")}>\r\n <span>{this.text(\"help\")}</span>\r\n <dso-icon icon=\"help\"></dso-icon>\r\n </button>\r\n )}\r\n </li>\r\n )}\r\n </ul>\r\n </div>\r\n </dso-dropdown-menu>\r\n </div>\r\n )}\r\n {!this.showDropDown && (\r\n <>\r\n <div class=\"dso-header-session\">\r\n {this.userProfileUrl && this.userProfileName && this.authStatus === \"loggedIn\" && (\r\n <div class=\"profile\">\r\n <a\r\n href={this.userProfileUrl}\r\n class=\"dso-tertiary\"\r\n onClick={(e) => this.clickHandler(e, \"profile\", { url: this.userProfileUrl })}\r\n >\r\n {this.userProfileName}\r\n </a>\r\n </div>\r\n )}\r\n {this.authStatus === \"loggedOut\" && (\r\n <div class=\"login\">\r\n {this.loginUrl ? (\r\n <a\r\n href={this.loginUrl}\r\n class=\"dso-tertiary\"\r\n onClick={(e) => this.clickHandler(e, \"login\", { url: this.loginUrl })}\r\n >\r\n {this.text(\"login\")}\r\n </a>\r\n ) : (\r\n <button class=\"dso-tertiary\" type=\"button\" onClick={(e) => this.clickHandler(e, \"login\")}>\r\n {this.text(\"login\")}\r\n </button>\r\n )}\r\n </div>\r\n )}\r\n {this.authStatus === \"loggedIn\" && (\r\n <div class=\"logout\">\r\n {this.logoutUrl ? (\r\n <a\r\n href={this.logoutUrl}\r\n class=\"dso-tertiary\"\r\n onClick={(e) => this.clickHandler(e, \"logout\", { url: this.logoutUrl })}\r\n >\r\n {this.text(\"logout\")}\r\n </a>\r\n ) : (\r\n <button class=\"dso-tertiary\" type=\"button\" onClick={(e) => this.clickHandler(e, \"logout\")}>\r\n {this.text(\"logout\")}\r\n </button>\r\n )}\r\n </div>\r\n )}\r\n {this.showHelp && (\r\n <div class=\"help\">\r\n {this.helpUrl ? (\r\n <a\r\n href={this.helpUrl}\r\n class=\"dso-tertiary\"\r\n onClick={(e) => this.clickHandler(e, \"help\", { url: this.helpUrl })}\r\n >\r\n <span>{this.text(\"help\")}</span>\r\n <dso-icon icon=\"help\"></dso-icon>\r\n </a>\r\n ) : (\r\n <button class=\"dso-tertiary\" type=\"button\" onClick={(e) => this.clickHandler(e, \"help\")}>\r\n <span>{this.text(\"help\")}</span>\r\n <dso-icon icon=\"help\"></dso-icon>\r\n </button>\r\n )}\r\n </div>\r\n )}\r\n </div>\r\n {((this.mainMenu && this.mainMenu.length > 0) || this.userHomeUrl) && (\r\n <nav class=\"dso-navbar\">\r\n <ul class=\"dso-nav dso-nav-main\" ref={(element) => (this.nav = element)}>\r\n {this.mainMenu &&\r\n this.mainMenu\r\n .filter((_, index) => this.mainMenu && index < this.mainMenu.length - this.overflowMenuItems)\r\n .map(this.MenuItem)}\r\n {this.overflowMenuItems > 0 && (\r\n <li>\r\n <dso-dropdown-menu placement=\"bottom\">\r\n <button type=\"button\" slot=\"toggle\">\r\n <span>{this.text(\"overflowMenu\")}</span>\r\n </button>\r\n <div class=\"dso-dropdown-options\">\r\n <ul>\r\n {this.mainMenu &&\r\n this.mainMenu\r\n .filter(\r\n (_, index) =>\r\n this.mainMenu && index >= this.mainMenu.length - this.overflowMenuItems,\r\n )\r\n .map(this.MenuItem)}\r\n </ul>\r\n </div>\r\n </dso-dropdown-menu>\r\n </li>\r\n )}\r\n {this.userHomeUrl && (\r\n <li class={clsx(\"menu-user-home\", { \"dso-active\": this.userHomeActive })}>\r\n <a\r\n href={this.userHomeUrl}\r\n aria-current={this.userHomeActive ? \"page\" : undefined}\r\n onClick={(e) => this.clickHandler(e, \"userHome\", { url: this.userHomeUrl })}\r\n >\r\n <dso-icon icon=\"user-line\"></dso-icon>\r\n {this.text(\"userHome\")}\r\n </a>\r\n </li>\r\n )}\r\n </ul>\r\n </nav>\r\n )}\r\n </>\r\n )}\r\n </div>\r\n </>\r\n );\r\n }\r\n}\r\n"],"version":3}
@@ -1,4 +1,4 @@
1
- import { r as registerInstance, h, F as Fragment } from './index-1a8f2a10.js';
1
+ import { r as registerInstance, h, F as Fragment } from './index-75547ccd.js';
2
2
  import { c as createFocusTrap } from './focus-trap.esm-24223ea1.js';
3
3
  import './index.esm-7a561c35.js';
4
4
 
@@ -1,4 +1,4 @@
1
- import { r as registerInstance, h, H as Host, a as getElement } from './index-1a8f2a10.js';
1
+ import { r as registerInstance, h, H as Host, a as getElement } from './index-75547ccd.js';
2
2
 
3
3
  const highlightBoxCss = "*,*::after,*::before{box-sizing:border-box}.dso-step-counter{background-color:#275937;border:8px solid #79b929;border-radius:50%;box-sizing:content-box;color:#fff;font-size:1.25rem;font-weight:500;block-size:2rem;inset-inline-start:16px;line-height:2rem;position:absolute;text-align:center;inset-block-start:-1.5rem;inline-size:2rem}:host{margin-block-start:16px;padding:16px;margin-block-end:24px;block-size:var(--highlight-box-block-size, unset);min-block-size:var(--highlight-box-min-block-size, unset);display:block;container-type:inline-size;position:relative;z-index:1}:host[has-counter]{block-size:var(--highlight-box-counter-block-size, unset)}:host:not([has-counter]){block-size:var(--highlight-box-nocounter-block-size, unset)}";
4
4
  const DsoHighlightBoxStyle0 = highlightBoxCss;
@@ -1,4 +1,4 @@
1
- import { r as registerInstance, h } from './index-1a8f2a10.js';
1
+ import { r as registerInstance, h } from './index-75547ccd.js';
2
2
 
3
3
  const air = `<svg id="air" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24">
4
4
  <path fill="currentColor" d="M24,8h0a.6.6,0,0,1-.38.56l-.1,0h0A8.18,8.18,0,0,0,21,10c-.21.55.33,2.11.77,3a.61.61,0,0,1-.12.71.63.63,0,0,1-.39.17,4.8,4.8,0,0,0-4-2.15H17a4.58,4.58,0,0,0-.37-.69A3.07,3.07,0,0,0,19,8.62h0a2.24,2.24,0,0,0,.06-.52s0-.07,0-.1,0-.07,0-.1A2.24,2.24,0,0,0,19,7.38h0a3.07,3.07,0,0,0-6,0h0a2.24,2.24,0,0,0-.06.52s0,.07,0,.1,0,.06,0,.1a.77.77,0,0,0,0,.15,6.49,6.49,0,0,0-4.51.35l-.06,0A.61.61,0,0,1,8,8.09V8H8V7.91a.61.61,0,0,1,.37-.48l.11,0h0A13.68,13.68,0,0,0,11.08,6a9.37,9.37,0,0,0-.86-3,.62.62,0,0,1,.83-.81,9.12,9.12,0,0,0,2.8.89H14A6.79,6.79,0,0,0,15.42.42a.61.61,0,0,1,1.15,0,8.43,8.43,0,0,0,1.65,2.76h.13a7.76,7.76,0,0,0,2.58-.91.61.61,0,0,1,.84.81c-.44.89-1,2.45-.77,3a8.18,8.18,0,0,0,2.48,1.33h0l.1,0A.6.6,0,0,1,24,8ZM10.68,22.34a5.15,5.15,0,0,1-3.12,1,4.72,4.72,0,0,1-4.81-3.76l-.14-.45h-.5A2,2,0,0,1,0,17.24a2,2,0,0,1,2.11-1.92,2.17,2.17,0,0,1,1.32.43l.4.29.37-.32a5,5,0,0,1,2.18-1.09l.44-.24V14a4.17,4.17,0,0,1,4.35-4,4.24,4.24,0,0,1,4.3,3.43l.1.67.69-.25a3,3,0,0,1,1-.17A2.64,2.64,0,0,1,20,16.19a2.32,2.32,0,0,1,0,.46l-.08.38.38.18A2.93,2.93,0,0,1,22,19.83a3.12,3.12,0,0,1-3.24,3,3.52,3.52,0,0,1-1.71-.45L16.47,22l-.26.58a2.58,2.58,0,0,1-4.62,0l-.3-.68Z"/>
@@ -1,4 +1,4 @@
1
- import { r as registerInstance, c as createEvent, h, H as Host } from './index-1a8f2a10.js';
1
+ import { r as registerInstance, c as createEvent, h, H as Host } from './index-75547ccd.js';
2
2
  import { c as clsx } from './clsx-297c1ffe.js';
3
3
 
4
4
  const infoButtonCss = ":host{display:inline-block}*,*::after,*::before{box-sizing:border-box}.sr-only{position:absolute;inline-size:1px;block-size:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);border:0}button{cursor:pointer;vertical-align:top}button{background-color:transparent;color:#39870c;border:0;margin-inline-start:var(--_dt-info-button-margin-inline-start, 8px);padding:0}button.dso-info-secondary{color:#666}dso-icon{display:block}";
@@ -1,4 +1,4 @@
1
- import { r as registerInstance, c as createEvent, h, F as Fragment, f as forceUpdate, a as getElement } from './index-1a8f2a10.js';
1
+ import { r as registerInstance, c as createEvent, h, F as Fragment, f as forceUpdate, a as getElement } from './index-75547ccd.js';
2
2
  import { c as clsx } from './clsx-297c1ffe.js';
3
3
  import { c as createIdentifier } from './create-identifier-d61d46af.js';
4
4
 
@@ -80,7 +80,7 @@ const Selectable = class {
80
80
  render() {
81
81
  var _a;
82
82
  const hasInfo = !!this.host.querySelector('[slot="info"]');
83
- return (h(Fragment, { key: '8eaf459e1b418a9c5eb61c12939aa137b1e9a9b7' }, h("div", { key: 'ecbf02645dd338d6071fb06426662d78649bd8c8', class: "dso-selectable-container" }, h("div", { key: 'c244e0254c468e30c22ec958c6be91e532d77392', class: clsx("dso-selectable-input-wrapper", { "dso-keyboard-focus": this.keyboardFocus }) }, h("input", { key: 'df920ead7e69f3e136a058cd5ab7953ecad8c707', type: this.type, id: this.getIdentifier(), value: this.value, name: this.name, "aria-invalid": (_a = this.invalid) === null || _a === void 0 ? void 0 : _a.toString(), "aria-describedby": hasInfo && this.infoFixed ? this.describedById : undefined, "aria-labelledBy": this.labelledById, disabled: this.disabled, required: this.required, checked: this.checked, onChange: this.handleOnChange, onBlur: () => (this.keyboardFocus = false), onKeyUp: () => (this.keyboardFocus = true), ref: (el) => (this.input = el) }), !this.labelledById ? (h("label", { htmlFor: this.getIdentifier() }, h("slot", null))) : (h("label", null, h("slot", null)))), hasInfo && !this.infoFixed && (h("dso-info-button", { key: 'f539a4ea7af6bb4c1412895c2af316b9014d8420', active: this.infoActive, onDsoToggle: (e) => (this.infoActive = e.detail.active) }))), hasInfo && (h("dso-info", { key: '69bde115eba8f18261c79886654defb9f0f703f6', id: hasInfo && this.infoFixed ? this.describedById : undefined, fixed: this.infoFixed, active: this.infoActive, onDsoClose: () => (this.infoActive = false) }, h("div", { key: '9d92cccb1adfd77adc579f57281dddc56a2225ba' }, h("slot", { key: '4fee8b038cb69e5321c23502eb6a5dad31c3c9ee', name: "info" })))), h("slot", { key: 'fd69188bb07390259d9ac58f328d3a7c8b42fe12', name: "options" })));
83
+ return (h(Fragment, { key: 'fa4b6f259cdabb24f0663b252c6a0e759a56ba9d' }, h("div", { key: 'da1e026349a4d3c7a9cf108f46858aaa17a3dd34', class: "dso-selectable-container" }, h("div", { key: '2d17dd9bb4933475c0dd9778de0ccb97a77cbd99', class: clsx("dso-selectable-input-wrapper", { "dso-keyboard-focus": this.keyboardFocus }) }, h("input", { key: '4f46deb4c37e9577626af506551cf713214cf2a7', type: this.type, id: this.getIdentifier(), value: this.value, name: this.name, "aria-invalid": (_a = this.invalid) === null || _a === void 0 ? void 0 : _a.toString(), "aria-describedby": hasInfo && this.infoFixed ? this.describedById : undefined, "aria-labelledBy": this.labelledById, disabled: this.disabled, required: this.required, checked: this.checked, onChange: this.handleOnChange, onBlur: () => (this.keyboardFocus = false), onKeyUp: () => (this.keyboardFocus = true), ref: (el) => (this.input = el) }), !this.labelledById ? (h("label", { htmlFor: this.getIdentifier() }, h("slot", null))) : (h("label", null, h("slot", null)))), hasInfo && !this.infoFixed && (h("dso-info-button", { key: 'e54d3223fb6a7d07a6b39f14b544bf0dffa5ca86', active: this.infoActive, onDsoToggle: (e) => (this.infoActive = e.detail.active) }))), hasInfo && (h("dso-info", { key: '072933f4b06ef2f3c187b530f4e015f46044bf70', id: hasInfo && this.infoFixed ? this.describedById : undefined, fixed: this.infoFixed, active: this.infoActive, onDsoClose: () => (this.infoActive = false) }, h("div", { key: '2142cbabdf2d970f36144b7d7658587b007d8164' }, h("slot", { key: '0d21b22bb68c34eeba23668633391bd62b7b2c40', name: "info" })))), h("slot", { key: '93ee767f26fb270c7dcc4aaa81ef522c205a386b', name: "options" })));
84
84
  }
85
85
  componentDidRender() {
86
86
  if (this.input && typeof this.checked === "boolean" && this.input.checked !== this.checked) {
@@ -1,4 +1,4 @@
1
- import { r as registerInstance, c as createEvent, h, F as Fragment, a as getElement } from './index-1a8f2a10.js';
1
+ import { r as registerInstance, c as createEvent, h, F as Fragment, a as getElement } from './index-75547ccd.js';
2
2
 
3
3
  const inputRangeCss = ":host{display:flex;align-items:center;gap:0.5rem;padding:0.5rem;inline-size:100%}*,*::after,*::before{box-sizing:border-box}.counter{flex-shrink:0;min-inline-size:5ch}.counter.min{text-align:end}.counter.max{text-align:start}.input{flex-grow:1;appearance:none;background-color:transparent;cursor:pointer}.input::-webkit-slider-runnable-track{block-size:0.5rem;background-color:#e5e5e5;border:1px solid #666;border-radius:0.5rem}.input::-webkit-slider-runnable-track:hover{background-color:#ccc}.input::-webkit-slider-thumb{block-size:1.5rem;inline-size:1.5rem;appearance:none;margin-block-start:-0.55rem;background-color:#39870c;border-radius:50%}.input::-webkit-slider-thumb:hover{background-color:#275937}.input::-moz-range-track{box-sizing:border-box;block-size:0.5rem;background-color:#e5e5e5;border:1px solid #666;border-radius:0.5rem}.input::-moz-range-track:hover{background-color:#ccc}.input::-moz-range-thumb{box-sizing:border-box;block-size:1.5rem;inline-size:1.5rem;appearance:none;margin-block-start:-0.5rem;background-color:#39870c;border-color:transparent;border-radius:50%}.input::-moz-range-thumb:hover{background-color:#275937}";
4
4
  const DsoInputRangeStyle0 = inputRangeCss;
@@ -1,4 +1,4 @@
1
- import { r as registerInstance, c as createEvent, h, F as Fragment, a as getElement, H as Host } from './index-1a8f2a10.js';
1
+ import { r as registerInstance, c as createEvent, h, F as Fragment, a as getElement, H as Host } from './index-75547ccd.js';
2
2
  import { c as clsx } from './clsx-297c1ffe.js';
3
3
  import { d as debounce } from './index-e112e225.js';
4
4
  import { d as detectOverflow, h as hasOverflow, c as createPopper, b as beforeWrite } from './has-overflow-6d7f3a71.js';
@@ -1,4 +1,4 @@
1
- import { r as registerInstance, c as createEvent, h, H as Host, a as getElement } from './index-1a8f2a10.js';
1
+ import { r as registerInstance, c as createEvent, h, H as Host, a as getElement } from './index-75547ccd.js';
2
2
  import { c as clsx } from './clsx-297c1ffe.js';
3
3
 
4
4
  const legendItemCss = ":host {\n display: block;\n padding-block: 4px;\n padding-inline: 4px;\n}\n\n*,\n*::after,\n*::before {\n box-sizing: border-box;\n}\n\n.legend-item {\n display: flex;\n position: relative;\n}\n.legend-item.legend-item-symbol + .body {\n margin-inline-start: 38px;\n}\n.legend-item.legend-item-selectable + .body {\n margin-inline-start: 32px;\n}\n.legend-item.legend-item-selectable.legend-item-symbol + .body {\n margin-inline-start: 70px;\n}\n\nbutton {\n display: inline-block;\n font-size: 1em;\n font-weight: 500;\n margin-block-end: 0;\n text-decoration: none;\n touch-action: manipulation;\n text-align: start;\n user-select: none;\n vertical-align: middle;\n}\nbutton:focus, button:focus-visible {\n outline-offset: 2px;\n}\nbutton:active {\n outline: 0;\n}\nbutton {\n border: 0;\n color: #39870c;\n line-height: 1;\n padding: 0;\n background-color: transparent;\n}\nbutton[disabled] {\n color: #afcf9d;\n}\nbutton[disabled].dso-spinner-left, button[disabled].dso-spinner-right {\n color: #39870c;\n}\nbutton:not([disabled]):hover {\n color: #275937;\n text-decoration: underline;\n text-underline-position: under;\n}\nbutton:not([disabled]):active {\n color: #173521;\n}\nbutton.dso-align {\n line-height: calc(1.5em - 1px);\n padding-block: 11px;\n padding-inline: 0;\n position: relative;\n}\nbutton.dso-truncate {\n max-inline-size: 100%;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\nbutton.dso-spinner-left::before {\n background-image: url(\"data:image/svg+xml,%3Csvg class='spinner' viewBox='0 0 100 100' xmlns='http://www.w3.org/2000/svg' %3E%3Cstyle%3E .spinner %7B animation: rotator 8s linear infinite; transform-origin: center; %7D @keyframes rotator %7B 0%25 %7B transform: rotate(0deg); %7D 100%25 %7B transform: rotate(360deg); %7D %7D .path %7B stroke-dasharray: 265; stroke-dashoffset: 0; transform-origin: center; stroke: %2339870c; animation: dash 2s ease-in-out infinite; %7D @keyframes dash %7B 0%25 %7B stroke-dashoffset: 265; %7D 50%25 %7B stroke-dashoffset: 65; transform:rotate(90deg); %7D 100%25 %7B stroke-dashoffset: 265; transform:rotate(360deg); %7D %3C/style%3E%3Ccircle class='path' fill='none' stroke-width='10' stroke-linecap='butt' cx='50' cy='50' r='45'%3E%3C/circle%3E%3C/svg%3E\");\n background-repeat: no-repeat;\n content: \"\";\n display: inline-block;\n block-size: 24px;\n vertical-align: middle;\n inline-size: 24px;\n margin-inline-end: 8px;\n}\nbutton.dso-spinner-right::after {\n background-image: url(\"data:image/svg+xml,%3Csvg class='spinner' viewBox='0 0 100 100' xmlns='http://www.w3.org/2000/svg' %3E%3Cstyle%3E .spinner %7B animation: rotator 8s linear infinite; transform-origin: center; %7D @keyframes rotator %7B 0%25 %7B transform: rotate(0deg); %7D 100%25 %7B transform: rotate(360deg); %7D %7D .path %7B stroke-dasharray: 265; stroke-dashoffset: 0; transform-origin: center; stroke: %2339870c; animation: dash 2s ease-in-out infinite; %7D @keyframes dash %7B 0%25 %7B stroke-dashoffset: 265; %7D 50%25 %7B stroke-dashoffset: 65; transform:rotate(90deg); %7D 100%25 %7B stroke-dashoffset: 265; transform:rotate(360deg); %7D %3C/style%3E%3Ccircle class='path' fill='none' stroke-width='10' stroke-linecap='butt' cx='50' cy='50' r='45'%3E%3C/circle%3E%3C/svg%3E\");\n background-repeat: no-repeat;\n content: \"\";\n display: inline-block;\n block-size: 24px;\n vertical-align: middle;\n inline-size: 24px;\n margin-inline-start: 8px;\n}\nbutton > span {\n position: absolute;\n inline-size: 1px;\n block-size: 1px;\n padding: 0;\n margin: -1px;\n overflow: hidden;\n clip: rect(0, 0, 0, 0);\n border: 0;\n}\nbutton {\n position: absolute;\n inset-inline-end: 0;\n}";
@@ -1,4 +1,4 @@
1
- import { r as registerInstance, c as createEvent, f as forceUpdate, h, a as getElement } from './index-1a8f2a10.js';
1
+ import { r as registerInstance, c as createEvent, f as forceUpdate, h, a as getElement } from './index-75547ccd.js';
2
2
  import { c as createFocusTrap } from './focus-trap.esm-24223ea1.js';
3
3
  import { c as clsx } from './clsx-297c1ffe.js';
4
4
  import './index.esm-7a561c35.js';
@@ -1,10 +1,13 @@
1
- import { r as registerInstance, c as createEvent, h, F as Fragment } from './index-1a8f2a10.js';
1
+ import { r as registerInstance, c as createEvent, h, F as Fragment } from './index-75547ccd.js';
2
2
  import { i as isModifiedEvent } from './is-modified-event-70db5fa8.js';
3
3
 
4
4
  const logoCss = ":host {\n max-block-size: 3rem;\n block-size: 3rem;\n display: grid;\n grid-template-areas: \"target wordmark label\";\n grid-template-columns: repeat(3, max-content);\n grid-template-rows: 100%;\n gap: 16px;\n font-size: 1.5625rem;\n font-weight: 500;\n align-items: center;\n container-type: size;\n container-name: logo;\n}\n:host .logo-url,\n:host .logo-label-url {\n display: flex;\n align-items: center;\n gap: 16px;\n text-decoration: none;\n}\n:host .logo-url:hover, :host .logo-url:focus-visible, :host .logo-url:active,\n:host .logo-label-url:hover,\n:host .logo-label-url:focus-visible,\n:host .logo-label-url:active {\n text-decoration: underline;\n}\n:host .logo-url, :host .logo-url:hover, :host .logo-url:focus, :host .logo-url:visited,\n:host .logo-label-url,\n:host .logo-label-url:hover,\n:host .logo-label-url:focus,\n:host .logo-label-url:visited {\n color: #275937;\n}\n\n:host([logo-url][ribbon]) {\n grid-template-areas: \"targetwordmark label\";\n}\n:host([logo-url][ribbon]) .logo-url {\n grid-area: targetwordmark;\n}\n:host([logo-url][ribbon]) .logo-url + .logo-ribbon {\n grid-area: targetwordmark;\n}\n:host([logo-url][ribbon]) .logo-label-url + .logo-ribbon {\n grid-area: targetwordmark;\n}\n\n.logo-label-url {\n grid-area: label;\n}\n\n.logo-target {\n grid-area: target;\n max-block-size: 48px;\n max-inline-size: 48px;\n inline-size: 100%;\n display: block;\n aspect-ratio: 1/1;\n}\n\n.logo-wordmark {\n grid-area: wordmark;\n font-size: 1.5625rem;\n}\n\n@container logo (max-height: 47px) {\n .logo-wordmark,\n .logo-label {\n font-size: 50cqb;\n line-height: 1;\n }\n}\n.logo-wordmark-omgevings {\n color: #39870c;\n}\n\n.logo-wordmark-loket {\n color: #275937;\n}\n\n.logo-label {\n grid-area: label;\n color: #275937;\n margin-inline-start: 1rem;\n}\n\n.logo-ribbon {\n grid-area: wordmark;\n place-self: start end;\n display: flex;\n place-items: center;\n background-color: #8b4a6a;\n border-radius: 3px;\n transform: rotate(3deg);\n padding-block: 0;\n padding-inline: 8px;\n font-size: 0.75rem;\n font-weight: normal;\n text-transform: uppercase;\n color: #fff;\n}\n@container logo (max-height: 47px) {\n .logo-ribbon {\n block-size: 28cqb;\n font-size: 25cqb;\n }\n}\n\n.inner {\n fill: #e17000;\n}\n\n.middle {\n fill: #275937;\n}\n\n.outer {\n fill: #80bc00;\n}\n\n@media screen and (max-width: 767px) {\n .logo-wordmark {\n font-size: initial;\n }\n :host([label]) {\n grid-template-areas: \"target label\";\n grid-template-columns: max-content minmax(130px, max-content);\n }\n :host([label]) .logo-wordmark {\n display: none;\n }\n :host([label]) .logo-ribbon {\n grid-area: label;\n }\n :host([label]) .logo-label {\n margin-inline-start: 0;\n font-size: initial;\n text-wrap: balance;\n overflow-wrap: normal;\n }\n :host([logo-url][ribbon]) .logo-label-url + .logo-ribbon {\n grid-area: label;\n }\n}\n@media screen and (max-width: 480px) {\n .logo-ribbon {\n transform: rotate(3deg) translateY(-7px);\n }\n}";
5
5
  const DsoLogoStyle0 = logoCss;
6
6
 
7
- const DsoLogo = () => (h(Fragment, null, h("svg", { fill: "none", viewBox: "0 0 48 48", height: "100%", class: "logo-target" }, h("path", { class: "outer", d: "M26 0a24 24 0 1 0 0 47.9A24 24 0 0 0 24 0Z" }), h("path", { class: "middle", d: "M24 8A16 16 0 0 0 8 24 16 16 0 1 0 24 8Z" }), h("path", { class: "inner", d: "M24 32a8 8 0 0 0 0-16 8 8 0 0 0 0 16Z" })), h("div", { class: "logo-wordmark" }, h("span", { class: "logo-wordmark-omgevings" }, "Omgevings"), h("span", { class: "logo-wordmark-loket" }, "loket"))));
7
+ const DsoLogo = ({ name }) => {
8
+ const splittedName = name.split("|");
9
+ return (h(Fragment, null, h("svg", { fill: "none", viewBox: "0 0 48 48", height: "100%", class: "logo-target" }, h("path", { class: "outer", d: "M26 0a24 24 0 1 0 0 47.9A24 24 0 0 0 24 0Z" }), h("path", { class: "middle", d: "M24 8A16 16 0 0 0 8 24 16 16 0 1 0 24 8Z" }), h("path", { class: "inner", d: "M24 32a8 8 0 0 0 0-16 8 8 0 0 0 0 16Z" })), h("div", { class: "logo-wordmark" }, h("span", { class: "logo-wordmark-omgevings" }, splittedName[0]), splittedName.length === 2 && h("span", { class: "logo-wordmark-loket" }, splittedName[1]))));
10
+ };
8
11
  const Logo = class {
9
12
  constructor(hostRef) {
10
13
  registerInstance(this, hostRef);
@@ -16,14 +19,15 @@ const Logo = class {
16
19
  this.handleLabelClick = (e) => {
17
20
  this.dsoLabelClick.emit({ originalEvent: e, url: this.labelUrl, isModifiedEvent: isModifiedEvent(e) });
18
21
  };
22
+ this.name = "Omgevings|loket";
19
23
  this.logoUrl = undefined;
20
24
  this.label = undefined;
21
25
  this.labelUrl = undefined;
22
26
  this.ribbon = undefined;
23
27
  }
24
28
  render() {
25
- return (h(Fragment, null, this.logoUrl ? (h("a", { class: "logo-url", href: this.logoUrl, onClick: this.handleLogoClick }, h(DsoLogo, null))) : (h(DsoLogo, null)), this.label &&
26
- (!this.labelUrl ? (h("span", { class: "logo-label" }, this.label)) : (h("a", { class: "logo-label-url", href: this.labelUrl, onClick: this.handleLabelClick }, h("span", { class: "logo-label" }, this.label)))), this.ribbon && h("div", { key: '4539eec0153c2ad7ce3ec0797ba61a5080f02e76', class: "logo-ribbon" }, this.ribbon)));
29
+ return (h(Fragment, null, this.logoUrl ? (h("a", { class: "logo-url", href: this.logoUrl, onClick: this.handleLogoClick }, h(DsoLogo, { name: this.name }))) : (h(DsoLogo, { name: this.name })), this.label &&
30
+ (!this.labelUrl ? (h("span", { class: "logo-label" }, this.label)) : (h("a", { class: "logo-label-url", href: this.labelUrl, onClick: this.handleLabelClick }, h("span", { class: "logo-label" }, this.label)))), this.ribbon && h("div", { key: '2ffb6bb6b26e9b0969b20283f7ea19487454b533', class: "logo-ribbon" }, this.ribbon)));
27
31
  }
28
32
  };
29
33
  Logo.style = DsoLogoStyle0;
@@ -1 +1 @@
1
- {"file":"dso-logo.entry.js","mappings":";;;AAAA,MAAM,OAAO,GAAG,sgGAAsgG,CAAC;AACvhG,sBAAe,OAAO;;ACYtB,MAAM,OAAO,GAAwB,OACnC,kBACE,WAAK,IAAI,EAAC,MAAM,EAAC,OAAO,EAAC,WAAW,EAAC,MAAM,EAAC,MAAM,EAAC,KAAK,EAAC,aAAa,IACpE,YAAM,KAAK,EAAC,OAAO,EAAC,CAAC,EAAC,4CAA4C,GAAG,EACrE,YAAM,KAAK,EAAC,QAAQ,EAAC,CAAC,EAAC,0CAA0C,GAAG,EACpE,YAAM,KAAK,EAAC,OAAO,EAAC,CAAC,EAAC,uCAAuC,GAAG,CAC5D,EACN,WAAK,KAAK,EAAC,eAAe,IACxB,YAAM,KAAK,EAAC,yBAAyB,gBAAiB,EACtD,YAAM,KAAK,EAAC,qBAAqB,YAAa,CAC1C,CACL,CACJ,CAAC;MAOW,IAAI;;;;;QAuCP,oBAAe,GAAG,CAAC,CAAa;YACtC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,aAAa,EAAE,CAAC,EAAE,GAAG,EAAE,IAAI,CAAC,OAAQ,EAAE,eAAe,EAAE,eAAe,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;SACvG,CAAC;QAEM,qBAAgB,GAAG,CAAC,CAAa;YACvC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE,aAAa,EAAE,CAAC,EAAE,GAAG,EAAE,IAAI,CAAC,QAAS,EAAE,eAAe,EAAE,eAAe,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;SACzG,CAAC;;;;;;IAEF,MAAM;QACJ,QACE,kBACG,IAAI,CAAC,OAAO,IACX,SAAG,KAAK,EAAC,UAAU,EAAC,IAAI,EAAE,IAAI,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,CAAC,eAAe,IACnE,EAAC,OAAO,OAAG,CACT,KAEJ,EAAC,OAAO,OAAG,CACZ,EAEA,IAAI,CAAC,KAAK;aACR,CAAC,IAAI,CAAC,QAAQ,IACb,YAAM,KAAK,EAAC,YAAY,IAAE,IAAI,CAAC,KAAK,CAAQ,KAE5C,SAAG,KAAK,EAAC,gBAAgB,EAAC,IAAI,EAAE,IAAI,CAAC,QAAQ,EAAE,OAAO,EAAE,IAAI,CAAC,gBAAgB,IAC3E,YAAM,KAAK,EAAC,YAAY,IAAE,IAAI,CAAC,KAAK,CAAQ,CAC1C,CACL,CAAC,EACH,IAAI,CAAC,MAAM,IAAI,4DAAK,KAAK,EAAC,aAAa,IAAE,IAAI,CAAC,MAAM,CAAO,CAC3D,EACH;KACH;;;;;;","names":[],"sources":["src/components/logo/logo.scss?tag=dso-logo&encapsulation=shadow","src/components/logo/logo.tsx"],"sourcesContent":["@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/components/anchor\";\r\n\r\n:host {\r\n max-block-size: units.$ru6;\r\n block-size: units.$ru6;\r\n display: grid;\r\n grid-template-areas: \"target wordmark label\";\r\n grid-template-columns: repeat(3, max-content);\r\n grid-template-rows: 100%;\r\n gap: units.$u2;\r\n font-size: 1.5625rem;\r\n font-weight: 500;\r\n align-items: center;\r\n container-type: size;\r\n container-name: logo;\r\n\r\n .logo-url,\r\n .logo-label-url {\r\n display: flex;\r\n align-items: center;\r\n gap: units.$u2;\r\n\r\n @include anchor.reverse();\r\n\r\n &,\r\n &:hover,\r\n &:focus,\r\n &:visited {\r\n color: colors.$bosgroen;\r\n }\r\n }\r\n}\r\n\r\n:host([logo-url][ribbon]) {\r\n grid-template-areas: \"targetwordmark label\";\r\n\r\n .logo-url {\r\n grid-area: targetwordmark;\r\n + .logo-ribbon {\r\n grid-area: targetwordmark;\r\n }\r\n }\r\n\r\n .logo-label-url + .logo-ribbon {\r\n grid-area: targetwordmark;\r\n }\r\n}\r\n\r\n.logo-label-url {\r\n grid-area: label;\r\n}\r\n\r\n.logo-target {\r\n grid-area: target;\r\n max-block-size: units.$u6;\r\n max-inline-size: units.$u6;\r\n inline-size: 100%;\r\n display: block;\r\n aspect-ratio: 1 / 1;\r\n}\r\n\r\n.logo-wordmark {\r\n grid-area: wordmark;\r\n font-size: 1.5625rem;\r\n}\r\n\r\n@container logo (max-height: 47px) {\r\n .logo-wordmark,\r\n .logo-label {\r\n font-size: 50cqb;\r\n line-height: 1;\r\n }\r\n}\r\n\r\n.logo-wordmark-omgevings {\r\n color: colors.$grasgroen;\r\n}\r\n\r\n.logo-wordmark-loket {\r\n color: colors.$bosgroen;\r\n}\r\n\r\n.logo-label {\r\n grid-area: label;\r\n color: colors.$bosgroen;\r\n margin-inline-start: units.$ru2;\r\n}\r\n\r\n.logo-ribbon {\r\n grid-area: wordmark;\r\n place-self: start end;\r\n display: flex;\r\n place-items: center;\r\n\r\n background-color: colors.$mauve;\r\n border-radius: 3px;\r\n transform: rotate(3deg);\r\n padding-block: 0;\r\n padding-inline: 8px;\r\n\r\n font-size: 0.75rem;\r\n font-weight: normal;\r\n text-transform: uppercase;\r\n color: colors.$wit;\r\n\r\n @container logo (max-height: 47px) {\r\n & {\r\n block-size: 28cqb;\r\n font-size: 25cqb;\r\n }\r\n }\r\n}\r\n\r\n.inner {\r\n fill: colors.$oranje;\r\n}\r\n\r\n.middle {\r\n fill: colors.$bosgroen;\r\n}\r\n\r\n.outer {\r\n fill: #80bc00;\r\n}\r\n\r\n@media screen and (max-width: media-query-breakpoints.$screen-xs-max) {\r\n .logo-wordmark {\r\n font-size: initial;\r\n }\r\n\r\n // if the logo has a label, hide the wordmark on smaller screens and replace it with the label\r\n :host([label]) {\r\n grid-template-areas: \"target label\";\r\n grid-template-columns: max-content minmax(130px, max-content);\r\n\r\n .logo-wordmark {\r\n display: none;\r\n }\r\n\r\n .logo-ribbon {\r\n grid-area: label;\r\n }\r\n\r\n .logo-label {\r\n margin-inline-start: 0;\r\n font-size: initial;\r\n text-wrap: balance;\r\n overflow-wrap: normal;\r\n }\r\n }\r\n\r\n :host([logo-url][ribbon]) {\r\n .logo-label-url + .logo-ribbon {\r\n grid-area: label;\r\n }\r\n }\r\n}\r\n\r\n@media screen and (max-width: media-query-breakpoints.$screen-xs-min) {\r\n .logo-ribbon {\r\n transform: rotate(3deg) translateY(-7px);\r\n }\r\n}\r\n","import {\r\n Component,\r\n ComponentInterface,\r\n Fragment,\r\n Prop,\r\n h,\r\n Event,\r\n EventEmitter,\r\n FunctionalComponent,\r\n} from \"@stencil/core\";\r\nimport { isModifiedEvent } from \"../../utils/is-modified-event\";\r\nimport { LogoClickEvent, LogoLabelClickEvent } from \"./logo.interfaces\";\r\n\r\nconst DsoLogo: FunctionalComponent = () => (\r\n <>\r\n <svg fill=\"none\" viewBox=\"0 0 48 48\" height=\"100%\" class=\"logo-target\">\r\n <path class=\"outer\" d=\"M26 0a24 24 0 1 0 0 47.9A24 24 0 0 0 24 0Z\" />\r\n <path class=\"middle\" d=\"M24 8A16 16 0 0 0 8 24 16 16 0 1 0 24 8Z\" />\r\n <path class=\"inner\" d=\"M24 32a8 8 0 0 0 0-16 8 8 0 0 0 0 16Z\" />\r\n </svg>\r\n <div class=\"logo-wordmark\">\r\n <span class=\"logo-wordmark-omgevings\">Omgevings</span>\r\n <span class=\"logo-wordmark-loket\">loket</span>\r\n </div>\r\n </>\r\n);\r\n\r\n@Component({\r\n tag: \"dso-logo\",\r\n styleUrl: \"logo.scss\",\r\n shadow: true,\r\n})\r\nexport class Logo implements ComponentInterface {\r\n /**\r\n * The url the logo is pointing to.\r\n */\r\n @Prop({ reflect: true })\r\n logoUrl?: string;\r\n\r\n /**\r\n * The label clarifies the service within the Omgevingsloket, shown\r\n * as a subtitle (and on smaller screens as the main wordmark itself).\r\n */\r\n @Prop({ reflect: true })\r\n label?: string;\r\n\r\n /**\r\n * The url the label is pointing to.\r\n */\r\n @Prop({ reflect: true })\r\n labelUrl?: string;\r\n\r\n /**\r\n * The ribbon contains the text for a possible 'sticker' on top of the logo.\r\n * Used to clarify the (non-production) server environment (\"int\", \"kta\", \"pfm\", \"pre\", or \"dmo\")\r\n */\r\n @Prop({ reflect: true })\r\n ribbon?: string;\r\n\r\n /**\r\n * Emitted when the logo is clicked (only when logoUrl is set).\r\n */\r\n @Event()\r\n dsoLogoClick!: EventEmitter<LogoClickEvent>;\r\n\r\n /**\r\n * Emitted when the label in the logo is clicked (only when labelUrl is set).\r\n */\r\n @Event()\r\n dsoLabelClick!: EventEmitter<LogoLabelClickEvent>;\r\n\r\n private handleLogoClick = (e: MouseEvent) => {\r\n this.dsoLogoClick.emit({ originalEvent: e, url: this.logoUrl!, isModifiedEvent: isModifiedEvent(e) });\r\n };\r\n\r\n private handleLabelClick = (e: MouseEvent) => {\r\n this.dsoLabelClick.emit({ originalEvent: e, url: this.labelUrl!, isModifiedEvent: isModifiedEvent(e) });\r\n };\r\n\r\n render() {\r\n return (\r\n <>\r\n {this.logoUrl ? (\r\n <a class=\"logo-url\" href={this.logoUrl} onClick={this.handleLogoClick}>\r\n <DsoLogo />\r\n </a>\r\n ) : (\r\n <DsoLogo />\r\n )}\r\n\r\n {this.label &&\r\n (!this.labelUrl ? (\r\n <span class=\"logo-label\">{this.label}</span>\r\n ) : (\r\n <a class=\"logo-label-url\" href={this.labelUrl} onClick={this.handleLabelClick}>\r\n <span class=\"logo-label\">{this.label}</span>\r\n </a>\r\n ))}\r\n {this.ribbon && <div class=\"logo-ribbon\">{this.ribbon}</div>}\r\n </>\r\n );\r\n }\r\n}\r\n"],"version":3}
1
+ {"file":"dso-logo.entry.js","mappings":";;;AAAA,MAAM,OAAO,GAAG,sgGAAsgG,CAAC;AACvhG,sBAAe,OAAO;;ACYtB,MAAM,OAAO,GAA0C,CAAC,EAAE,IAAI,EAAE;IAC9D,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACrC,QACE,kBACE,WAAK,IAAI,EAAC,MAAM,EAAC,OAAO,EAAC,WAAW,EAAC,MAAM,EAAC,MAAM,EAAC,KAAK,EAAC,aAAa,IACpE,YAAM,KAAK,EAAC,OAAO,EAAC,CAAC,EAAC,4CAA4C,GAAG,EACrE,YAAM,KAAK,EAAC,QAAQ,EAAC,CAAC,EAAC,0CAA0C,GAAG,EACpE,YAAM,KAAK,EAAC,OAAO,EAAC,CAAC,EAAC,uCAAuC,GAAG,CAC5D,EACN,WAAK,KAAK,EAAC,eAAe,IACxB,YAAM,KAAK,EAAC,yBAAyB,IAAE,YAAY,CAAC,CAAC,CAAC,CAAQ,EAC7D,YAAY,CAAC,MAAM,KAAK,CAAC,IAAI,YAAM,KAAK,EAAC,qBAAqB,IAAE,YAAY,CAAC,CAAC,CAAC,CAAQ,CACpF,CACL,EACH;AACJ,CAAC,CAAC;MAOW,IAAI;;;;;QAgDP,oBAAe,GAAG,CAAC,CAAa;YACtC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,aAAa,EAAE,CAAC,EAAE,GAAG,EAAE,IAAI,CAAC,OAAQ,EAAE,eAAe,EAAE,eAAe,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;SACvG,CAAC;QAEM,qBAAgB,GAAG,CAAC,CAAa;YACvC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE,aAAa,EAAE,CAAC,EAAE,GAAG,EAAE,IAAI,CAAC,QAAS,EAAE,eAAe,EAAE,eAAe,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;SACzG,CAAC;oBA7CK,iBAAiB;;;;;;IA+CxB,MAAM;QACJ,QACE,kBACG,IAAI,CAAC,OAAO,IACX,SAAG,KAAK,EAAC,UAAU,EAAC,IAAI,EAAE,IAAI,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,CAAC,eAAe,IACnE,EAAC,OAAO,IAAC,IAAI,EAAE,IAAI,CAAC,IAAI,GAAI,CAC1B,KAEJ,EAAC,OAAO,IAAC,IAAI,EAAE,IAAI,CAAC,IAAI,GAAI,CAC7B,EAEA,IAAI,CAAC,KAAK;aACR,CAAC,IAAI,CAAC,QAAQ,IACb,YAAM,KAAK,EAAC,YAAY,IAAE,IAAI,CAAC,KAAK,CAAQ,KAE5C,SAAG,KAAK,EAAC,gBAAgB,EAAC,IAAI,EAAE,IAAI,CAAC,QAAQ,EAAE,OAAO,EAAE,IAAI,CAAC,gBAAgB,IAC3E,YAAM,KAAK,EAAC,YAAY,IAAE,IAAI,CAAC,KAAK,CAAQ,CAC1C,CACL,CAAC,EACH,IAAI,CAAC,MAAM,IAAI,4DAAK,KAAK,EAAC,aAAa,IAAE,IAAI,CAAC,MAAM,CAAO,CAC3D,EACH;KACH;;;;;;","names":[],"sources":["src/components/logo/logo.scss?tag=dso-logo&encapsulation=shadow","src/components/logo/logo.tsx"],"sourcesContent":["@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/components/anchor\";\r\n\r\n:host {\r\n max-block-size: units.$ru6;\r\n block-size: units.$ru6;\r\n display: grid;\r\n grid-template-areas: \"target wordmark label\";\r\n grid-template-columns: repeat(3, max-content);\r\n grid-template-rows: 100%;\r\n gap: units.$u2;\r\n font-size: 1.5625rem;\r\n font-weight: 500;\r\n align-items: center;\r\n container-type: size;\r\n container-name: logo;\r\n\r\n .logo-url,\r\n .logo-label-url {\r\n display: flex;\r\n align-items: center;\r\n gap: units.$u2;\r\n\r\n @include anchor.reverse();\r\n\r\n &,\r\n &:hover,\r\n &:focus,\r\n &:visited {\r\n color: colors.$bosgroen;\r\n }\r\n }\r\n}\r\n\r\n:host([logo-url][ribbon]) {\r\n grid-template-areas: \"targetwordmark label\";\r\n\r\n .logo-url {\r\n grid-area: targetwordmark;\r\n + .logo-ribbon {\r\n grid-area: targetwordmark;\r\n }\r\n }\r\n\r\n .logo-label-url + .logo-ribbon {\r\n grid-area: targetwordmark;\r\n }\r\n}\r\n\r\n.logo-label-url {\r\n grid-area: label;\r\n}\r\n\r\n.logo-target {\r\n grid-area: target;\r\n max-block-size: units.$u6;\r\n max-inline-size: units.$u6;\r\n inline-size: 100%;\r\n display: block;\r\n aspect-ratio: 1 / 1;\r\n}\r\n\r\n.logo-wordmark {\r\n grid-area: wordmark;\r\n font-size: 1.5625rem;\r\n}\r\n\r\n@container logo (max-height: 47px) {\r\n .logo-wordmark,\r\n .logo-label {\r\n font-size: 50cqb;\r\n line-height: 1;\r\n }\r\n}\r\n\r\n.logo-wordmark-omgevings {\r\n color: colors.$grasgroen;\r\n}\r\n\r\n.logo-wordmark-loket {\r\n color: colors.$bosgroen;\r\n}\r\n\r\n.logo-label {\r\n grid-area: label;\r\n color: colors.$bosgroen;\r\n margin-inline-start: units.$ru2;\r\n}\r\n\r\n.logo-ribbon {\r\n grid-area: wordmark;\r\n place-self: start end;\r\n display: flex;\r\n place-items: center;\r\n\r\n background-color: colors.$mauve;\r\n border-radius: 3px;\r\n transform: rotate(3deg);\r\n padding-block: 0;\r\n padding-inline: 8px;\r\n\r\n font-size: 0.75rem;\r\n font-weight: normal;\r\n text-transform: uppercase;\r\n color: colors.$wit;\r\n\r\n @container logo (max-height: 47px) {\r\n & {\r\n block-size: 28cqb;\r\n font-size: 25cqb;\r\n }\r\n }\r\n}\r\n\r\n.inner {\r\n fill: colors.$oranje;\r\n}\r\n\r\n.middle {\r\n fill: colors.$bosgroen;\r\n}\r\n\r\n.outer {\r\n fill: #80bc00;\r\n}\r\n\r\n@media screen and (max-width: media-query-breakpoints.$screen-xs-max) {\r\n .logo-wordmark {\r\n font-size: initial;\r\n }\r\n\r\n // if the logo has a label, hide the wordmark on smaller screens and replace it with the label\r\n :host([label]) {\r\n grid-template-areas: \"target label\";\r\n grid-template-columns: max-content minmax(130px, max-content);\r\n\r\n .logo-wordmark {\r\n display: none;\r\n }\r\n\r\n .logo-ribbon {\r\n grid-area: label;\r\n }\r\n\r\n .logo-label {\r\n margin-inline-start: 0;\r\n font-size: initial;\r\n text-wrap: balance;\r\n overflow-wrap: normal;\r\n }\r\n }\r\n\r\n :host([logo-url][ribbon]) {\r\n .logo-label-url + .logo-ribbon {\r\n grid-area: label;\r\n }\r\n }\r\n}\r\n\r\n@media screen and (max-width: media-query-breakpoints.$screen-xs-min) {\r\n .logo-ribbon {\r\n transform: rotate(3deg) translateY(-7px);\r\n }\r\n}\r\n","import {\r\n Component,\r\n ComponentInterface,\r\n Fragment,\r\n Prop,\r\n h,\r\n Event,\r\n EventEmitter,\r\n FunctionalComponent,\r\n} from \"@stencil/core\";\r\nimport { isModifiedEvent } from \"../../utils/is-modified-event\";\r\nimport { LogoClickEvent, LogoLabelClickEvent } from \"./logo.interfaces\";\r\n\r\nconst DsoLogo: FunctionalComponent<{ name: string }> = ({ name }) => {\r\n const splittedName = name.split(\"|\");\r\n return (\r\n <>\r\n <svg fill=\"none\" viewBox=\"0 0 48 48\" height=\"100%\" class=\"logo-target\">\r\n <path class=\"outer\" d=\"M26 0a24 24 0 1 0 0 47.9A24 24 0 0 0 24 0Z\" />\r\n <path class=\"middle\" d=\"M24 8A16 16 0 0 0 8 24 16 16 0 1 0 24 8Z\" />\r\n <path class=\"inner\" d=\"M24 32a8 8 0 0 0 0-16 8 8 0 0 0 0 16Z\" />\r\n </svg>\r\n <div class=\"logo-wordmark\">\r\n <span class=\"logo-wordmark-omgevings\">{splittedName[0]}</span>\r\n {splittedName.length === 2 && <span class=\"logo-wordmark-loket\">{splittedName[1]}</span>}\r\n </div>\r\n </>\r\n );\r\n};\r\n\r\n@Component({\r\n tag: \"dso-logo\",\r\n styleUrl: \"logo.scss\",\r\n shadow: true,\r\n})\r\nexport class Logo implements ComponentInterface {\r\n /**\r\n * An alternative name for the logo wordmark Omgevingsloket. For instance `Environment| Desk`. It should contains a\r\n * pipe-character: the left-hand side of the pipe will be shown in grasgroen, the right-hand side of the pipe will be\r\n * shown in bosgroen.\r\n * When omitted the logo wordmark will default to Omgevingsloket, with 'Omgevings' shown in grasgroen and 'loket' in\r\n * bosgroen.\r\n */\r\n @Prop({ reflect: true })\r\n name = \"Omgevings|loket\";\r\n /**\r\n * The url the logo is pointing to.\r\n */\r\n @Prop({ reflect: true })\r\n logoUrl?: string;\r\n\r\n /**\r\n * The label clarifies the service within the Omgevingsloket, shown\r\n * as a subtitle (and on smaller screens as the main wordmark itself).\r\n */\r\n @Prop({ reflect: true })\r\n label?: string;\r\n\r\n /**\r\n * The url the label is pointing to.\r\n */\r\n @Prop({ reflect: true })\r\n labelUrl?: string;\r\n\r\n /**\r\n * The ribbon contains the text for a possible 'sticker' on top of the logo.\r\n * Used to clarify the (non-production) server environment (\"int\", \"kta\", \"pfm\", \"pre\", or \"dmo\")\r\n */\r\n @Prop({ reflect: true })\r\n ribbon?: string;\r\n\r\n /**\r\n * Emitted when the logo is clicked (only when logoUrl is set).\r\n */\r\n @Event()\r\n dsoLogoClick!: EventEmitter<LogoClickEvent>;\r\n\r\n /**\r\n * Emitted when the label in the logo is clicked (only when labelUrl is set).\r\n */\r\n @Event()\r\n dsoLabelClick!: EventEmitter<LogoLabelClickEvent>;\r\n\r\n private handleLogoClick = (e: MouseEvent) => {\r\n this.dsoLogoClick.emit({ originalEvent: e, url: this.logoUrl!, isModifiedEvent: isModifiedEvent(e) });\r\n };\r\n\r\n private handleLabelClick = (e: MouseEvent) => {\r\n this.dsoLabelClick.emit({ originalEvent: e, url: this.labelUrl!, isModifiedEvent: isModifiedEvent(e) });\r\n };\r\n\r\n render() {\r\n return (\r\n <>\r\n {this.logoUrl ? (\r\n <a class=\"logo-url\" href={this.logoUrl} onClick={this.handleLogoClick}>\r\n <DsoLogo name={this.name} />\r\n </a>\r\n ) : (\r\n <DsoLogo name={this.name} />\r\n )}\r\n\r\n {this.label &&\r\n (!this.labelUrl ? (\r\n <span class=\"logo-label\">{this.label}</span>\r\n ) : (\r\n <a class=\"logo-label-url\" href={this.labelUrl} onClick={this.handleLabelClick}>\r\n <span class=\"logo-label\">{this.label}</span>\r\n </a>\r\n ))}\r\n {this.ribbon && <div class=\"logo-ribbon\">{this.ribbon}</div>}\r\n </>\r\n );\r\n }\r\n}\r\n"],"version":3}
@@ -1,5 +1,19 @@
1
- import { r as registerInstance, c as createEvent, h } from './index-1a8f2a10.js';
2
- import { v as v4 } from './v4-a79185f4.js';
1
+ import { r as registerInstance, c as createEvent, h, a as getElement } from './index-75547ccd.js';
2
+ import { i as i18n } from './i18n-c3546551.js';
3
+ import { v as v4 } from './v4-692dad5f.js';
4
+
5
+ const translations = {
6
+ en: {
7
+ "dso-map-base-layers": {
8
+ background: "Background",
9
+ },
10
+ },
11
+ nl: {
12
+ "dso-map-base-layers": {
13
+ background: "Achtergrond",
14
+ },
15
+ },
16
+ };
3
17
 
4
18
  const mapBaseLayersCss = ":host{display:block}*,*::after,*::before{box-sizing:border-box}.sr-only{position:absolute;inline-size:1px;block-size:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);border:0}fieldset{border:0;margin:0;min-inline-size:0;padding:0}fieldset .control-label{display:inline-block;font-weight:bold;margin-block-end:8px;max-inline-size:100%;text-align:start}p[slot=info]{margin:0}";
5
19
  const DsoMapBaseLayersStyle0 = mapBaseLayersCss;
@@ -9,6 +23,7 @@ const MapBaseLayers = class {
9
23
  registerInstance(this, hostRef);
10
24
  this.dsoBaseLayerChange = createEvent(this, "dsoBaseLayerChange", 7);
11
25
  this.selectableRefs = {};
26
+ this.text = i18n(() => this.host, translations);
12
27
  this.group = v4();
13
28
  this.baseLayers = undefined;
14
29
  }
@@ -28,8 +43,9 @@ const MapBaseLayers = class {
28
43
  for (const ref in this.selectableRefs) {
29
44
  delete this.selectableRefs[ref];
30
45
  }
31
- return (h("fieldset", { key: '3658bb4710a5d3d54f805f0246cc2167d19fbd9a', class: "form-group dso-radios" }, h("legend", { key: '777f25fc490dce9b6b4d8015ed7af355528a7699', class: "sr-only" }, "Achtergrond"), h("div", { key: '698d8f5dd021b8ded00fe7f1bec99b88be71b576', class: "dso-label-container" }, h("span", { key: '435580370bd7d68b36f425d0d75d67dfd7184580', class: "control-label", "aria-hidden": "true" }, "Achtergrond")), h("div", { key: '903b11b76609320aa36ab7a8b0a617cd19362997', class: "dso-field-container" }, this.baseLayers.map((baseLayer) => (h("dso-selectable", { key: baseLayer.id, type: "radio", value: baseLayer.name, checked: baseLayer.checked, disabled: baseLayer.disabled, name: this.group, ref: (ref) => ref && (this.selectableRefs[baseLayer.id] = ref), onDsoChange: () => this.baseLayerChangeHandler(baseLayer) }, baseLayer.name, baseLayer.info ? h("p", { slot: "info" }, baseLayer.info) : null))))));
46
+ return (h("fieldset", { key: '4844cb7dc1f22b46db47516b2482c67673eb70f7', class: "form-group dso-radios" }, h("legend", { key: 'b0acfbdfe97f083ed88bfdc12a3e5da85f71e7c7', class: "sr-only" }, "Achtergrond"), h("div", { key: '6cf325954514f6279761f99ade9f6297fd0f2931', class: "dso-label-container" }, h("span", { key: '924198ae3890df319ce186a44b44d59640b21d1e', class: "control-label", "aria-hidden": "true" }, this.text("background"))), h("div", { key: 'fc609656c7c56a80d192ad7f68048a63b238777c', class: "dso-field-container" }, this.baseLayers.map((baseLayer) => (h("dso-selectable", { key: baseLayer.id, type: "radio", value: baseLayer.name, checked: baseLayer.checked, disabled: baseLayer.disabled, name: this.group, ref: (ref) => ref && (this.selectableRefs[baseLayer.id] = ref), onDsoChange: () => this.baseLayerChangeHandler(baseLayer) }, baseLayer.name, baseLayer.info ? h("p", { slot: "info" }, baseLayer.info) : null))))));
32
47
  }
48
+ get host() { return getElement(this); }
33
49
  };
34
50
  MapBaseLayers.style = DsoMapBaseLayersStyle0;
35
51
 
@@ -1 +1 @@
1
- {"file":"dso-map-base-layers.entry.js","mappings":";;;AAAA,MAAM,gBAAgB,GAAG,sYAAsY,CAAC;AACha,+BAAe,gBAAgB;;MCSlB,aAAa;;;;QAEhB,mBAAc,GAA+C,EAAE,CAAC;qBAYhEA,EAAM,EAAE;;;IAQR,sBAAsB,CAAC,SAAoB;QACjD,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,EAAE,eAAe,EAAE,SAAS,EAAE,CAAC,CAAC;KAC9D;IAED,kBAAkB;QAChB,IAAI,CAAC,UAAU;aACZ,MAAM,CAAC,CAAC,CAAC,mBAAK,OAAA,CAAC,CAAC,CAAC,QAAQ,IAAI,CAAA,MAAA,MAAA,IAAI,CAAC,kBAAkB,0CAAE,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,EAAE,CAAC,0CAAE,QAAQ,MAAK,IAAI,CAAA,EAAA,CAAC;aACpG,OAAO,CAAC,CAAC,CAAC;;YACT,MAAA,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,CAAC,0CAAE,UAAU,CAAC,KAAK,CAAC,CAAC;SAC9C,CAAC,CAAC;QAEL,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,UAAU,CAAC;KAC3C;IAED,MAAM;QACJ,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,cAAc,EAAE;YACrC,OAAO,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC;SACjC;QAED,QACE,iEAAU,KAAK,EAAC,uBAAuB,IACrC,+DAAQ,KAAK,EAAC,SAAS,kBAAqB,EAC5C,4DAAK,KAAK,EAAC,qBAAqB,IAC9B,6DAAM,KAAK,EAAC,eAAe,iBAAa,MAAM,kBAEvC,CACH,EACN,4DAAK,KAAK,EAAC,qBAAqB,IAC7B,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,SAAS,MAC7B,sBACE,GAAG,EAAE,SAAS,CAAC,EAAE,EACjB,IAAI,EAAC,OAAO,EACZ,KAAK,EAAE,SAAS,CAAC,IAAI,EACrB,OAAO,EAAE,SAAS,CAAC,OAAO,EAC1B,QAAQ,EAAE,SAAS,CAAC,QAAQ,EAC5B,IAAI,EAAE,IAAI,CAAC,KAAK,EAChB,GAAG,EAAE,CAAC,GAAG,KAAK,GAAG,KAAK,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC,EAC9D,WAAW,EAAE,MAAM,IAAI,CAAC,sBAAsB,CAAC,SAAS,CAAC,IAExD,SAAS,CAAC,IAAI,EACd,SAAS,CAAC,IAAI,GAAG,SAAG,IAAI,EAAC,MAAM,IAAE,SAAS,CAAC,IAAI,CAAK,GAAG,IAAI,CAC7C,CAClB,CAAC,CACE,CACG,EACX;KACH;;;;;;","names":["uuidv4"],"sources":["src/components/map-base-layers/map-base-layers.scss?tag=dso-map-base-layers&encapsulation=shadow","src/components/map-base-layers/map-base-layers.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}\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, h, Prop, Event, EventEmitter, ComponentInterface } from \"@stencil/core\";\r\nimport { v4 as uuidv4 } from \"uuid\";\r\n\r\nimport { BaseLayer, BaseLayerChangeEvent } from \"./map-base-layers.interfaces\";\r\n\r\n@Component({\r\n tag: \"dso-map-base-layers\",\r\n styleUrl: \"./map-base-layers.scss\",\r\n shadow: true,\r\n})\r\nexport class MapBaseLayers implements ComponentInterface {\r\n private previousBaselayers: BaseLayer[] | undefined;\r\n private selectableRefs: { [id: number]: HTMLDsoSelectableElement } = {};\r\n\r\n /**\r\n * Emitted when the user checks or unchecks a base layer.\r\n */\r\n @Event()\r\n dsoBaseLayerChange!: EventEmitter<BaseLayerChangeEvent>;\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 base layers.\r\n */\r\n @Prop()\r\n baseLayers!: BaseLayer[];\r\n\r\n private baseLayerChangeHandler(baseLayer: BaseLayer): void {\r\n this.dsoBaseLayerChange.emit({ activeBaseLayer: baseLayer });\r\n }\r\n\r\n componentDidRender() {\r\n this.baseLayers\r\n .filter((l) => !l.disabled && this.previousBaselayers?.find((p) => p.id === l.id)?.disabled === true)\r\n .forEach((o) => {\r\n this.selectableRefs[o.id]?.toggleInfo(false);\r\n });\r\n\r\n this.previousBaselayers = this.baseLayers;\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-radios\">\r\n <legend class=\"sr-only\">Achtergrond</legend>\r\n <div class=\"dso-label-container\">\r\n <span class=\"control-label\" aria-hidden=\"true\">\r\n Achtergrond\r\n </span>\r\n </div>\r\n <div class=\"dso-field-container\">\r\n {this.baseLayers.map((baseLayer) => (\r\n <dso-selectable\r\n key={baseLayer.id}\r\n type=\"radio\"\r\n value={baseLayer.name}\r\n checked={baseLayer.checked}\r\n disabled={baseLayer.disabled}\r\n name={this.group}\r\n ref={(ref) => ref && (this.selectableRefs[baseLayer.id] = ref)}\r\n onDsoChange={() => this.baseLayerChangeHandler(baseLayer)}\r\n >\r\n {baseLayer.name}\r\n {baseLayer.info ? <p slot=\"info\">{baseLayer.info}</p> : null}\r\n </dso-selectable>\r\n ))}\r\n </div>\r\n </fieldset>\r\n );\r\n }\r\n}\r\n"],"version":3}
1
+ {"file":"dso-map-base-layers.entry.js","mappings":";;;;AAEO,MAAM,YAAY,GAAa;IACpC,EAAE,EAAE;QACF,qBAAqB,EAAE;YACrB,UAAU,EAAE,YAAY;SACzB;KACF;IACD,EAAE,EAAE;QACF,qBAAqB,EAAE;YACrB,UAAU,EAAE,aAAa;SAC1B;KACF;CACF;;ACbD,MAAM,gBAAgB,GAAG,sYAAsY,CAAC;AACha,+BAAe,gBAAgB;;MCYlB,aAAa;;;;QAEhB,mBAAc,GAA+C,EAAE,CAAC;QA2BhE,SAAI,GAAG,IAAI,CAAC,MAAM,IAAI,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC;qBAZ3CA,EAAM,EAAE;;;IAQR,sBAAsB,CAAC,SAAoB;QACjD,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,EAAE,eAAe,EAAE,SAAS,EAAE,CAAC,CAAC;KAC9D;IAID,kBAAkB;QAChB,IAAI,CAAC,UAAU;aACZ,MAAM,CAAC,CAAC,CAAC,mBAAK,OAAA,CAAC,CAAC,CAAC,QAAQ,IAAI,CAAA,MAAA,MAAA,IAAI,CAAC,kBAAkB,0CAAE,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,EAAE,CAAC,0CAAE,QAAQ,MAAK,IAAI,CAAA,EAAA,CAAC;aACpG,OAAO,CAAC,CAAC,CAAC;;YACT,MAAA,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,CAAC,0CAAE,UAAU,CAAC,KAAK,CAAC,CAAC;SAC9C,CAAC,CAAC;QAEL,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,UAAU,CAAC;KAC3C;IAED,MAAM;QACJ,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,cAAc,EAAE;YACrC,OAAO,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC;SACjC;QAED,QACE,iEAAU,KAAK,EAAC,uBAAuB,IACrC,+DAAQ,KAAK,EAAC,SAAS,kBAAqB,EAC5C,4DAAK,KAAK,EAAC,qBAAqB,IAC9B,6DAAM,KAAK,EAAC,eAAe,iBAAa,MAAM,IAC3C,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,CACnB,CACH,EACN,4DAAK,KAAK,EAAC,qBAAqB,IAC7B,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,SAAS,MAC7B,sBACE,GAAG,EAAE,SAAS,CAAC,EAAE,EACjB,IAAI,EAAC,OAAO,EACZ,KAAK,EAAE,SAAS,CAAC,IAAI,EACrB,OAAO,EAAE,SAAS,CAAC,OAAO,EAC1B,QAAQ,EAAE,SAAS,CAAC,QAAQ,EAC5B,IAAI,EAAE,IAAI,CAAC,KAAK,EAChB,GAAG,EAAE,CAAC,GAAG,KAAK,GAAG,KAAK,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC,EAC9D,WAAW,EAAE,MAAM,IAAI,CAAC,sBAAsB,CAAC,SAAS,CAAC,IAExD,SAAS,CAAC,IAAI,EACd,SAAS,CAAC,IAAI,GAAG,SAAG,IAAI,EAAC,MAAM,IAAE,SAAS,CAAC,IAAI,CAAK,GAAG,IAAI,CAC7C,CAClB,CAAC,CACE,CACG,EACX;KACH;;;;;;;","names":["uuidv4"],"sources":["src/components/map-base-layers/map-base-layers.i18n.ts","src/components/map-base-layers/map-base-layers.scss?tag=dso-map-base-layers&encapsulation=shadow","src/components/map-base-layers/map-base-layers.tsx"],"sourcesContent":["import { Resource } from \"../../utils/i18n\";\r\n\r\nexport const translations: Resource = {\r\n en: {\r\n \"dso-map-base-layers\": {\r\n background: \"Background\",\r\n },\r\n },\r\n nl: {\r\n \"dso-map-base-layers\": {\r\n background: \"Achtergrond\",\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, h, Prop } from \"@stencil/core\";\r\nimport { v4 as uuidv4 } from \"uuid\";\r\n\r\nimport { i18n } from \"../../utils/i18n\";\r\n\r\nimport { BaseLayer, BaseLayerChangeEvent } from \"./map-base-layers.interfaces\";\r\nimport { translations } from \"./map-base-layers.i18n\";\r\n\r\n@Component({\r\n tag: \"dso-map-base-layers\",\r\n styleUrl: \"./map-base-layers.scss\",\r\n shadow: true,\r\n})\r\nexport class MapBaseLayers implements ComponentInterface {\r\n private previousBaselayers: BaseLayer[] | undefined;\r\n private selectableRefs: { [id: number]: HTMLDsoSelectableElement } = {};\r\n\r\n @Element()\r\n host!: HTMLDsoMapBaseLayersElement;\r\n\r\n /**\r\n * Emitted when the user checks or unchecks a base layer.\r\n */\r\n @Event()\r\n dsoBaseLayerChange!: EventEmitter<BaseLayerChangeEvent>;\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 base layers.\r\n */\r\n @Prop()\r\n baseLayers!: BaseLayer[];\r\n\r\n private baseLayerChangeHandler(baseLayer: BaseLayer): void {\r\n this.dsoBaseLayerChange.emit({ activeBaseLayer: baseLayer });\r\n }\r\n\r\n private text = i18n(() => this.host, translations);\r\n\r\n componentDidRender() {\r\n this.baseLayers\r\n .filter((l) => !l.disabled && this.previousBaselayers?.find((p) => p.id === l.id)?.disabled === true)\r\n .forEach((o) => {\r\n this.selectableRefs[o.id]?.toggleInfo(false);\r\n });\r\n\r\n this.previousBaselayers = this.baseLayers;\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-radios\">\r\n <legend class=\"sr-only\">Achtergrond</legend>\r\n <div class=\"dso-label-container\">\r\n <span class=\"control-label\" aria-hidden=\"true\">\r\n {this.text(\"background\")}\r\n </span>\r\n </div>\r\n <div class=\"dso-field-container\">\r\n {this.baseLayers.map((baseLayer) => (\r\n <dso-selectable\r\n key={baseLayer.id}\r\n type=\"radio\"\r\n value={baseLayer.name}\r\n checked={baseLayer.checked}\r\n disabled={baseLayer.disabled}\r\n name={this.group}\r\n ref={(ref) => ref && (this.selectableRefs[baseLayer.id] = ref)}\r\n onDsoChange={() => this.baseLayerChangeHandler(baseLayer)}\r\n >\r\n {baseLayer.name}\r\n {baseLayer.info ? <p slot=\"info\">{baseLayer.info}</p> : null}\r\n </dso-selectable>\r\n ))}\r\n </div>\r\n </fieldset>\r\n );\r\n }\r\n}\r\n"],"version":3}
@@ -1,4 +1,26 @@
1
- import { r as registerInstance, c as createEvent, h, H as Host } from './index-1a8f2a10.js';
1
+ import { r as registerInstance, c as createEvent, h, F as Fragment, a as getElement } from './index-75547ccd.js';
2
+ import { i as i18n } from './i18n-c3546551.js';
3
+
4
+ const translations = {
5
+ en: {
6
+ "dso-map-controls": {
7
+ title: "Map layers",
8
+ layersButton: "Map layers",
9
+ zoomIn: "Zoom in",
10
+ zoomOut: "Zoom out",
11
+ hidePanel: "Hide panel {{title}}",
12
+ },
13
+ },
14
+ nl: {
15
+ "dso-map-controls": {
16
+ title: "Kaartlagen",
17
+ layersButton: "Kaartlagen",
18
+ zoomIn: "Zoom in",
19
+ zoomOut: "Zoom uit",
20
+ hidePanel: "Verberg paneel {{title}}",
21
+ },
22
+ },
23
+ };
2
24
 
3
25
  const mapControlsCss = ":host {\n background-color: #fff;\n border: 1px solid #ccc;\n inset-block-end: 0;\n display: block;\n font-family: Asap, sans-serif;\n position: absolute;\n inset-block-start: 0;\n inset-inline-start: 100%;\n transition: transform 300ms ease;\n inline-size: 300px;\n}\n\n*,\n*::after,\n*::before {\n box-sizing: border-box;\n}\n\n:host([open]) {\n box-shadow: 0 1px 4px 0 rgba(0, 0, 0, 0.3);\n transform: translateX(-100%);\n}\n:host([open]) .toggle-visibility-button {\n display: none;\n}\n:host([open]) .zoom-buttons {\n inset-block-start: 16px;\n}\n\nbutton {\n -webkit-appearance: button;\n color: inherit;\n cursor: pointer;\n font: inherit;\n font-family: inherit;\n font-size: inherit;\n line-height: inherit;\n margin: 0;\n overflow: visible;\n text-transform: none;\n}\nbutton[disabled] {\n cursor: default;\n}\nbutton::-moz-focus-inner {\n border: 0;\n padding: 0;\n}\n\n.toggle-visibility-button {\n display: inline-block;\n font-size: 1em;\n font-weight: 500;\n margin-block-end: 0;\n text-decoration: none;\n touch-action: manipulation;\n text-align: start;\n user-select: none;\n vertical-align: middle;\n}\n.toggle-visibility-button:focus, .toggle-visibility-button:focus-visible {\n outline-offset: 2px;\n}\n.toggle-visibility-button:active {\n outline: 0;\n}\n.toggle-visibility-button {\n background-color: #fff;\n border-color: #39870c;\n color: #39870c;\n}\n.toggle-visibility-button {\n border-width: 1px;\n border-style: solid;\n border-radius: 4px;\n line-height: 1.5;\n min-inline-size: 56px;\n padding-block: 11px;\n padding-inline: 15px;\n}\n.toggle-visibility-button:hover {\n background-color: #d7e7ce;\n border-color: #39870c;\n color: #39870c;\n}\n.toggle-visibility-button:active {\n background-color: #39870c;\n border-color: #39870c;\n color: #fff;\n}\n.toggle-visibility-button[disabled], .toggle-visibility-button[disabled]:hover {\n background-color: #fff;\n border-color: #afcf9d;\n color: #afcf9d;\n}\n.toggle-visibility-button.dso-small {\n line-height: 1rem;\n}\n.toggle-visibility-button.dso-small dso-icon,\n.toggle-visibility-button.dso-small svg.di, .toggle-visibility-button.dso-small.extern::after, .toggle-visibility-button.dso-small.download::after, .toggle-visibility-button.dso-small.dso-spinner::before {\n margin-block-end: -4px;\n margin-block-start: -4px;\n}\n.toggle-visibility-button.dso-small.dso-spinner-left::before {\n block-size: 16px;\n inline-size: 16px;\n}\n.toggle-visibility-button.dso-small.dso-spinner-right::after {\n block-size: 16px;\n inline-size: 16px;\n}\n.toggle-visibility-button dso-icon,\n.toggle-visibility-button svg.di {\n margin-inline-start: -8px;\n margin-inline-end: 8px;\n}\n.toggle-visibility-button span + dso-icon,\n.toggle-visibility-button span + svg.di {\n margin-inline-start: 8px;\n margin-inline-end: -8px;\n}\n.toggle-visibility-button.dso-spinner-left[disabled], .toggle-visibility-button.dso-spinner-right[disabled] {\n background-color: #fff;\n border-color: #39870c;\n color: #39870c;\n}\n.toggle-visibility-button.dso-spinner-left::before {\n background-image: url(\"data:image/svg+xml,%3Csvg class='spinner' viewBox='0 0 100 100' xmlns='http://www.w3.org/2000/svg' %3E%3Cstyle%3E .spinner %7B animation: rotator 8s linear infinite; transform-origin: center; %7D @keyframes rotator %7B 0%25 %7B transform: rotate(0deg); %7D 100%25 %7B transform: rotate(360deg); %7D %7D .path %7B stroke-dasharray: 265; stroke-dashoffset: 0; transform-origin: center; stroke: %2339870c; animation: dash 2s ease-in-out infinite; %7D @keyframes dash %7B 0%25 %7B stroke-dashoffset: 265; %7D 50%25 %7B stroke-dashoffset: 65; transform:rotate(90deg); %7D 100%25 %7B stroke-dashoffset: 265; transform:rotate(360deg); %7D %3C/style%3E%3Ccircle class='path' fill='none' stroke-width='10' stroke-linecap='butt' cx='50' cy='50' r='45'%3E%3C/circle%3E%3C/svg%3E\");\n background-repeat: no-repeat;\n content: \"\";\n display: inline-block;\n block-size: 24px;\n vertical-align: top;\n inline-size: 24px;\n margin-inline-end: 8px;\n}\n.toggle-visibility-button.dso-spinner-left:not([disabled]):hover::before {\n background-image: url(\"data:image/svg+xml,%3Csvg class='spinner' viewBox='0 0 100 100' xmlns='http://www.w3.org/2000/svg' %3E%3Cstyle%3E .spinner %7B animation: rotator 8s linear infinite; transform-origin: center; %7D @keyframes rotator %7B 0%25 %7B transform: rotate(0deg); %7D 100%25 %7B transform: rotate(360deg); %7D %7D .path %7B stroke-dasharray: 265; stroke-dashoffset: 0; transform-origin: center; stroke: %23fff; animation: dash 2s ease-in-out infinite; %7D @keyframes dash %7B 0%25 %7B stroke-dashoffset: 265; %7D 50%25 %7B stroke-dashoffset: 65; transform:rotate(90deg); %7D 100%25 %7B stroke-dashoffset: 265; transform:rotate(360deg); %7D %3C/style%3E%3Ccircle class='path' fill='none' stroke-width='10' stroke-linecap='butt' cx='50' cy='50' r='45'%3E%3C/circle%3E%3C/svg%3E\");\n background-repeat: no-repeat;\n content: \"\";\n display: inline-block;\n block-size: 24px;\n vertical-align: top;\n inline-size: 24px;\n margin-inline-end: 8px;\n}\n.toggle-visibility-button.dso-spinner-left:not([disabled]).dso-small:hover::before {\n block-size: 16px;\n inline-size: 16px;\n}\n.toggle-visibility-button.dso-spinner-right::after {\n background-image: url(\"data:image/svg+xml,%3Csvg class='spinner' viewBox='0 0 100 100' xmlns='http://www.w3.org/2000/svg' %3E%3Cstyle%3E .spinner %7B animation: rotator 8s linear infinite; transform-origin: center; %7D @keyframes rotator %7B 0%25 %7B transform: rotate(0deg); %7D 100%25 %7B transform: rotate(360deg); %7D %7D .path %7B stroke-dasharray: 265; stroke-dashoffset: 0; transform-origin: center; stroke: %2339870c; animation: dash 2s ease-in-out infinite; %7D @keyframes dash %7B 0%25 %7B stroke-dashoffset: 265; %7D 50%25 %7B stroke-dashoffset: 65; transform:rotate(90deg); %7D 100%25 %7B stroke-dashoffset: 265; transform:rotate(360deg); %7D %3C/style%3E%3Ccircle class='path' fill='none' stroke-width='10' stroke-linecap='butt' cx='50' cy='50' r='45'%3E%3C/circle%3E%3C/svg%3E\");\n background-repeat: no-repeat;\n content: \"\";\n display: inline-block;\n block-size: 24px;\n vertical-align: top;\n inline-size: 24px;\n margin-inline-start: 8px;\n}\n.toggle-visibility-button.dso-spinner-right:not([disabled]):hover::after {\n background-image: url(\"data:image/svg+xml,%3Csvg class='spinner' viewBox='0 0 100 100' xmlns='http://www.w3.org/2000/svg' %3E%3Cstyle%3E .spinner %7B animation: rotator 8s linear infinite; transform-origin: center; %7D @keyframes rotator %7B 0%25 %7B transform: rotate(0deg); %7D 100%25 %7B transform: rotate(360deg); %7D %7D .path %7B stroke-dasharray: 265; stroke-dashoffset: 0; transform-origin: center; stroke: %23fff; animation: dash 2s ease-in-out infinite; %7D @keyframes dash %7B 0%25 %7B stroke-dashoffset: 265; %7D 50%25 %7B stroke-dashoffset: 65; transform:rotate(90deg); %7D 100%25 %7B stroke-dashoffset: 265; transform:rotate(360deg); %7D %3C/style%3E%3Ccircle class='path' fill='none' stroke-width='10' stroke-linecap='butt' cx='50' cy='50' r='45'%3E%3C/circle%3E%3C/svg%3E\");\n background-repeat: no-repeat;\n content: \"\";\n display: inline-block;\n block-size: 24px;\n vertical-align: top;\n inline-size: 24px;\n margin-inline-start: 8px;\n}\n.toggle-visibility-button.dso-spinner-right:not([disabled]).dso-small:hover::after {\n block-size: 16px;\n inline-size: 16px;\n}\n.toggle-visibility-button {\n border: 0;\n box-shadow: 0 1px 4px 0 rgba(0, 0, 0, 0.5);\n font-weight: 600;\n margin-inline-end: 16px;\n padding-block: 8px;\n padding-inline: 16px;\n white-space: nowrap;\n}\n.toggle-visibility-button {\n position: absolute;\n inset-inline-end: calc(\n 100% + 56px\n );\n inset-block-start: 16px;\n}\n\n.zoom-buttons {\n border-radius: 4px;\n box-shadow: 0 1px 4px 0 rgba(0, 0, 0, 0.5);\n display: flex;\n flex-wrap: wrap;\n flex: 0 0;\n position: absolute;\n inset-inline-end: calc(100% + 16px);\n inset-block-start: 16px;\n}\n.zoom-buttons button {\n display: inline-block;\n font-size: 1em;\n font-weight: 500;\n margin-block-end: 0;\n text-decoration: none;\n touch-action: manipulation;\n text-align: start;\n user-select: none;\n vertical-align: middle;\n}\n.zoom-buttons button:focus, .zoom-buttons button:focus-visible {\n outline-offset: 2px;\n}\n.zoom-buttons button:active {\n outline: 0;\n}\n.zoom-buttons button {\n background-color: #fff;\n border-color: #39870c;\n color: #39870c;\n}\n.zoom-buttons button {\n border-width: 1px;\n border-style: solid;\n border-radius: 4px;\n line-height: 1.5;\n min-inline-size: 56px;\n padding-block: 11px;\n padding-inline: 15px;\n}\n.zoom-buttons button:hover {\n background-color: #d7e7ce;\n border-color: #39870c;\n color: #39870c;\n}\n.zoom-buttons button:active {\n background-color: #39870c;\n border-color: #39870c;\n color: #fff;\n}\n.zoom-buttons button[disabled], .zoom-buttons button[disabled]:hover {\n background-color: #fff;\n border-color: #afcf9d;\n color: #afcf9d;\n}\n.zoom-buttons button.dso-small {\n line-height: 1rem;\n}\n.zoom-buttons button.dso-small dso-icon,\n.zoom-buttons button.dso-small svg.di, .zoom-buttons button.dso-small.extern::after, .zoom-buttons button.dso-small.download::after, .zoom-buttons button.dso-small.dso-spinner::before {\n margin-block-end: -4px;\n margin-block-start: -4px;\n}\n.zoom-buttons button.dso-small.dso-spinner-left::before {\n block-size: 16px;\n inline-size: 16px;\n}\n.zoom-buttons button.dso-small.dso-spinner-right::after {\n block-size: 16px;\n inline-size: 16px;\n}\n.zoom-buttons button > span {\n position: absolute;\n inline-size: 1px;\n block-size: 1px;\n padding: 0;\n margin: -1px;\n overflow: hidden;\n clip: rect(0, 0, 0, 0);\n border: 0;\n}\n.zoom-buttons button.dso-spinner-left[disabled], .zoom-buttons button.dso-spinner-right[disabled] {\n background-color: #fff;\n border-color: #39870c;\n color: #39870c;\n}\n.zoom-buttons button.dso-spinner-left::before {\n background-image: url(\"data:image/svg+xml,%3Csvg class='spinner' viewBox='0 0 100 100' xmlns='http://www.w3.org/2000/svg' %3E%3Cstyle%3E .spinner %7B animation: rotator 8s linear infinite; transform-origin: center; %7D @keyframes rotator %7B 0%25 %7B transform: rotate(0deg); %7D 100%25 %7B transform: rotate(360deg); %7D %7D .path %7B stroke-dasharray: 265; stroke-dashoffset: 0; transform-origin: center; stroke: %2339870c; animation: dash 2s ease-in-out infinite; %7D @keyframes dash %7B 0%25 %7B stroke-dashoffset: 265; %7D 50%25 %7B stroke-dashoffset: 65; transform:rotate(90deg); %7D 100%25 %7B stroke-dashoffset: 265; transform:rotate(360deg); %7D %3C/style%3E%3Ccircle class='path' fill='none' stroke-width='10' stroke-linecap='butt' cx='50' cy='50' r='45'%3E%3C/circle%3E%3C/svg%3E\");\n background-repeat: no-repeat;\n content: \"\";\n display: inline-block;\n block-size: 24px;\n vertical-align: top;\n inline-size: 24px;\n margin-inline-end: 8px;\n}\n.zoom-buttons button.dso-spinner-left:not([disabled]):hover::before {\n background-image: url(\"data:image/svg+xml,%3Csvg class='spinner' viewBox='0 0 100 100' xmlns='http://www.w3.org/2000/svg' %3E%3Cstyle%3E .spinner %7B animation: rotator 8s linear infinite; transform-origin: center; %7D @keyframes rotator %7B 0%25 %7B transform: rotate(0deg); %7D 100%25 %7B transform: rotate(360deg); %7D %7D .path %7B stroke-dasharray: 265; stroke-dashoffset: 0; transform-origin: center; stroke: %23fff; animation: dash 2s ease-in-out infinite; %7D @keyframes dash %7B 0%25 %7B stroke-dashoffset: 265; %7D 50%25 %7B stroke-dashoffset: 65; transform:rotate(90deg); %7D 100%25 %7B stroke-dashoffset: 265; transform:rotate(360deg); %7D %3C/style%3E%3Ccircle class='path' fill='none' stroke-width='10' stroke-linecap='butt' cx='50' cy='50' r='45'%3E%3C/circle%3E%3C/svg%3E\");\n background-repeat: no-repeat;\n content: \"\";\n display: inline-block;\n block-size: 24px;\n vertical-align: top;\n inline-size: 24px;\n margin-inline-end: 8px;\n}\n.zoom-buttons button.dso-spinner-left:not([disabled]).dso-small:hover::before {\n block-size: 16px;\n inline-size: 16px;\n}\n.zoom-buttons button.dso-spinner-right::after {\n background-image: url(\"data:image/svg+xml,%3Csvg class='spinner' viewBox='0 0 100 100' xmlns='http://www.w3.org/2000/svg' %3E%3Cstyle%3E .spinner %7B animation: rotator 8s linear infinite; transform-origin: center; %7D @keyframes rotator %7B 0%25 %7B transform: rotate(0deg); %7D 100%25 %7B transform: rotate(360deg); %7D %7D .path %7B stroke-dasharray: 265; stroke-dashoffset: 0; transform-origin: center; stroke: %2339870c; animation: dash 2s ease-in-out infinite; %7D @keyframes dash %7B 0%25 %7B stroke-dashoffset: 265; %7D 50%25 %7B stroke-dashoffset: 65; transform:rotate(90deg); %7D 100%25 %7B stroke-dashoffset: 265; transform:rotate(360deg); %7D %3C/style%3E%3Ccircle class='path' fill='none' stroke-width='10' stroke-linecap='butt' cx='50' cy='50' r='45'%3E%3C/circle%3E%3C/svg%3E\");\n background-repeat: no-repeat;\n content: \"\";\n display: inline-block;\n block-size: 24px;\n vertical-align: top;\n inline-size: 24px;\n margin-inline-start: 8px;\n}\n.zoom-buttons button.dso-spinner-right:not([disabled]):hover::after {\n background-image: url(\"data:image/svg+xml,%3Csvg class='spinner' viewBox='0 0 100 100' xmlns='http://www.w3.org/2000/svg' %3E%3Cstyle%3E .spinner %7B animation: rotator 8s linear infinite; transform-origin: center; %7D @keyframes rotator %7B 0%25 %7B transform: rotate(0deg); %7D 100%25 %7B transform: rotate(360deg); %7D %7D .path %7B stroke-dasharray: 265; stroke-dashoffset: 0; transform-origin: center; stroke: %23fff; animation: dash 2s ease-in-out infinite; %7D @keyframes dash %7B 0%25 %7B stroke-dashoffset: 265; %7D 50%25 %7B stroke-dashoffset: 65; transform:rotate(90deg); %7D 100%25 %7B stroke-dashoffset: 265; transform:rotate(360deg); %7D %3C/style%3E%3Ccircle class='path' fill='none' stroke-width='10' stroke-linecap='butt' cx='50' cy='50' r='45'%3E%3C/circle%3E%3C/svg%3E\");\n background-repeat: no-repeat;\n content: \"\";\n display: inline-block;\n block-size: 24px;\n vertical-align: top;\n inline-size: 24px;\n margin-inline-start: 8px;\n}\n.zoom-buttons button.dso-spinner-right:not([disabled]).dso-small:hover::after {\n block-size: 16px;\n inline-size: 16px;\n}\n.zoom-buttons button {\n border: 0;\n padding: 8px;\n border-radius: 0;\n border-start-start-radius: 4px;\n border-start-end-radius: 4px;\n flex: 0 0 100%;\n block-size: 40px;\n min-inline-size: auto;\n inline-size: 40px;\n}\n.zoom-buttons button + button {\n border-radius: 0;\n border-end-start-radius: 4px;\n border-end-end-radius: 4px;\n border-block-start: 1px solid #ccc;\n}\n.zoom-buttons button:focus-visible {\n outline-offset: -1px;\n}\n\n.close-button {\n display: inline-block;\n font-size: 1em;\n font-weight: 500;\n margin-block-end: 0;\n text-decoration: none;\n touch-action: manipulation;\n text-align: start;\n user-select: none;\n vertical-align: middle;\n}\n.close-button:focus, .close-button:focus-visible {\n outline-offset: 2px;\n}\n.close-button:active {\n outline: 0;\n}\n.close-button {\n border: 0;\n color: #39870c;\n line-height: 1;\n padding: 0;\n background-color: transparent;\n}\n.close-button[disabled] {\n color: #afcf9d;\n}\n.close-button[disabled].dso-spinner-left, .close-button[disabled].dso-spinner-right {\n color: #39870c;\n}\n.close-button:not([disabled]):hover {\n color: #275937;\n text-decoration: underline;\n text-underline-position: under;\n}\n.close-button:not([disabled]):active {\n color: #173521;\n}\n.close-button.dso-align {\n line-height: calc(1.5em - 1px);\n padding-block: 11px;\n padding-inline: 0;\n position: relative;\n}\n.close-button.dso-truncate {\n max-inline-size: 100%;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n.close-button.dso-spinner-left::before {\n background-image: url(\"data:image/svg+xml,%3Csvg class='spinner' viewBox='0 0 100 100' xmlns='http://www.w3.org/2000/svg' %3E%3Cstyle%3E .spinner %7B animation: rotator 8s linear infinite; transform-origin: center; %7D @keyframes rotator %7B 0%25 %7B transform: rotate(0deg); %7D 100%25 %7B transform: rotate(360deg); %7D %7D .path %7B stroke-dasharray: 265; stroke-dashoffset: 0; transform-origin: center; stroke: %2339870c; animation: dash 2s ease-in-out infinite; %7D @keyframes dash %7B 0%25 %7B stroke-dashoffset: 265; %7D 50%25 %7B stroke-dashoffset: 65; transform:rotate(90deg); %7D 100%25 %7B stroke-dashoffset: 265; transform:rotate(360deg); %7D %3C/style%3E%3Ccircle class='path' fill='none' stroke-width='10' stroke-linecap='butt' cx='50' cy='50' r='45'%3E%3C/circle%3E%3C/svg%3E\");\n background-repeat: no-repeat;\n content: \"\";\n display: inline-block;\n block-size: 24px;\n vertical-align: middle;\n inline-size: 24px;\n margin-inline-end: 8px;\n}\n.close-button.dso-spinner-right::after {\n background-image: url(\"data:image/svg+xml,%3Csvg class='spinner' viewBox='0 0 100 100' xmlns='http://www.w3.org/2000/svg' %3E%3Cstyle%3E .spinner %7B animation: rotator 8s linear infinite; transform-origin: center; %7D @keyframes rotator %7B 0%25 %7B transform: rotate(0deg); %7D 100%25 %7B transform: rotate(360deg); %7D %7D .path %7B stroke-dasharray: 265; stroke-dashoffset: 0; transform-origin: center; stroke: %2339870c; animation: dash 2s ease-in-out infinite; %7D @keyframes dash %7B 0%25 %7B stroke-dashoffset: 265; %7D 50%25 %7B stroke-dashoffset: 65; transform:rotate(90deg); %7D 100%25 %7B stroke-dashoffset: 265; transform:rotate(360deg); %7D %3C/style%3E%3Ccircle class='path' fill='none' stroke-width='10' stroke-linecap='butt' cx='50' cy='50' r='45'%3E%3C/circle%3E%3C/svg%3E\");\n background-repeat: no-repeat;\n content: \"\";\n display: inline-block;\n block-size: 24px;\n vertical-align: middle;\n inline-size: 24px;\n margin-inline-start: 8px;\n}\n.close-button > span {\n position: absolute;\n inline-size: 1px;\n block-size: 1px;\n padding: 0;\n margin: -1px;\n overflow: hidden;\n clip: rect(0, 0, 0, 0);\n border: 0;\n}\n.close-button {\n padding: 0;\n position: absolute;\n inset-inline-end: 16px;\n inset-block-start: 16px;\n}\n\nsection:not([hidden]) {\n display: flex;\n flex-direction: column;\n block-size: 100%;\n}\n\nheader,\n.content {\n padding: 16px;\n}\n\nheader {\n border-block-end: 1px solid #ccc;\n flex-grow: 0;\n position: relative;\n}\nheader h2 {\n color: #275937;\n font-family: \"Asap\", sans-serif;\n line-height: 1;\n margin: 0;\n}\n\n@media screen and (max-width: 767px) {\n .toggle-visibility-button {\n block-size: 40px;\n margin-inline-end: 0;\n min-inline-size: auto;\n inset-inline-end: calc(100% + 16px);\n inline-size: 40px;\n }\n .toggle-visibility-button dso-icon {\n margin-inline-end: 0;\n }\n .toggle-visibility-button span {\n visibility: hidden;\n }\n .zoom-buttons {\n inset-block-start: 72px;\n }\n}";
4
26
  const DsoMapControlsStyle0 = mapControlsCss;
@@ -28,7 +50,7 @@ const MapControls = class {
28
50
  this.dsoZoomIn = createEvent(this, "dsoZoomIn", 7);
29
51
  this.dsoZoomOut = createEvent(this, "dsoZoomOut", 7);
30
52
  this.dsoToggle = createEvent(this, "dsoToggle", 7);
31
- this.panelTitle = "Kaartlagen";
53
+ this.text = i18n(() => this.host, translations);
32
54
  _MapControls_closeButtonElement.set(this, void 0);
33
55
  _MapControls_toggleButtonElement.set(this, void 0);
34
56
  this.open = false;
@@ -62,8 +84,9 @@ const MapControls = class {
62
84
  });
63
85
  }
64
86
  render() {
65
- return (h(Host, { key: '90b70306a6a949c5c476e1dff5674117162c6c45' }, h("button", { key: 'bce19eedd68b22975e6cea9401cd52558709772c', type: "button", id: "toggle-visibility-button", class: "toggle-visibility-button", onClick: (e) => this.toggleVisibility(e), ref: (element) => (__classPrivateFieldSet(this, _MapControls_toggleButtonElement, element, "f")) }, h("dso-icon", { key: '66f725dcb18892c46f62b381958c08b2c00ff5e9', icon: "layers" }), h("span", { key: '83990c0b5a4b6b6deb698aa13096c09daa5fb13b' }, "Kaartlagen")), h("div", { key: 'b4033b5d836c21e88719419b861d45a5ceb850ff', class: "zoom-buttons" }, h("button", { key: 'beba5fd412d7050037ce403a95bce92832bbc123', type: "button", onClick: (e) => this.dsoZoomIn.emit(e), disabled: this.disableZoom === "in" || this.disableZoom === "both" }, h("span", { key: '3bbf8907a376b22d57c595ac155a86e9a91ed123' }, "Zoom in"), h("dso-icon", { key: 'f1f820b0854d1a3f3056f88225fc446d970fe97b', icon: "plus" })), h("button", { key: 'e97da939c757a68527703c052751e41284fd99d7', type: "button", onClick: (e) => this.dsoZoomOut.emit(e), disabled: this.disableZoom === "out" || this.disableZoom === "both" }, h("span", { key: '16667fea438726e529fe5b7dda73b37f4e2042af' }, "Zoom uit"), h("dso-icon", { key: '1ba3ffaa108ed4bdfce3aba80060e5ae1a657ea2', icon: "minus" }))), h("section", { key: 'b02968e3ca6967d3af0c3231f6cb54b826e29c88', hidden: this.hideContent }, h("header", { key: '553cbeb52ed118aab913d739f4a4273fe318068d' }, h("h2", { key: 'c86f34e526b42856d539fa5e7c8f0f78c44a02f6' }, this.panelTitle), h("button", { key: 'd168e7f5972f8aba349f6d314c1f215a3f358d9c', type: "button", class: "close-button", onClick: (e) => this.toggleVisibility(e), ref: (element) => (__classPrivateFieldSet(this, _MapControls_closeButtonElement, element, "f")) }, h("span", { key: '15dd92a796f4944eeab386c100ad8f625d9f987c' }, "Verberg paneel ", this.panelTitle), h("dso-icon", { key: '4da15bc6df5f507d742b2c489cb2513d8d34e60b', icon: "times" }))), h("dso-scrollable", { key: '9d13f21fdc5c49b5708aa7faed8dae04806375fd' }, h("div", { key: '26591e1aff5b87bcb61333a53cfe02c7e823fb2e', class: "content" }, h("slot", { key: 'f33b663a5690932a745a0438db4188c3d9e5c135' }))))));
87
+ return (h(Fragment, null, h("button", { key: '29335393712a1781f9dff4ba7b3e02a69919b91f', type: "button", id: "toggle-visibility-button", class: "toggle-visibility-button", onClick: (e) => this.toggleVisibility(e), ref: (element) => (__classPrivateFieldSet(this, _MapControls_toggleButtonElement, element, "f")) }, h("dso-icon", { key: 'a1a70b77c019e0874cf2e973e3f0ea66cc9a2c14', icon: "layers" }), h("span", { key: '5194ddccaf7dfe2ab781fe7231eac9c0a9041e6b' }, this.text("layersButton"))), h("div", { key: '1cfb45e5f21c97cb02095a40c049c4e326fff674', class: "zoom-buttons" }, h("button", { key: 'c0cc9b3b3daa68d740ffed946f5afbb22b1d74e0', type: "button", onClick: (e) => this.dsoZoomIn.emit(e), disabled: this.disableZoom === "in" || this.disableZoom === "both" }, h("span", { key: 'd6303dd24115cea4d24fc045d369ff97e0873413' }, this.text("zoomIn")), h("dso-icon", { key: '653e2a1d4a806c91e740c59cd73fd230facb582e', icon: "plus" })), h("button", { key: '0c4ca76537cf0a456fbc376d2b989f9bae62bb19', type: "button", onClick: (e) => this.dsoZoomOut.emit(e), disabled: this.disableZoom === "out" || this.disableZoom === "both" }, h("span", { key: 'a79e3f32a8f72d14cafb062e713bd65d95998c28' }, this.text("zoomOut")), h("dso-icon", { key: '782888d0e2c39ffeccf953cd50e945b35e221e3f', icon: "minus" }))), h("section", { key: 'd981313fdc4ab36ab28a874fbb19a95549b64cb8', hidden: this.hideContent }, h("header", { key: '79533f6432d77975c9b303dc3e6fcf787963c985' }, h("h2", { key: '40514da2dbdd1c80ff91608747390c635f82d9b0' }, this.text("title")), h("button", { key: 'dc94d69f20a5ec73f7b952361ab6849bb57d53f6', type: "button", class: "close-button", onClick: (e) => this.toggleVisibility(e), ref: (element) => (__classPrivateFieldSet(this, _MapControls_closeButtonElement, element, "f")) }, h("span", { key: '6e280bc6fa50c89ecf48c24fb43f2f4834558140' }, this.text("hidePanel", { title: this.text("title") })), h("dso-icon", { key: 'f5dfc01ef1468620ef9b3c2b464f9b1a5093eef6', icon: "times" }))), h("dso-scrollable", { key: '589b88feaadd4a620f8c97443d20dc6a2698627f' }, h("div", { key: '8017cc835034f60d81e9384cf5ee004843e933e4', class: "content" }, h("slot", { key: '25338f564df6e616ad5f66deea19bfe472ac1cb1' }))))));
66
88
  }
89
+ get host() { return getElement(this); }
67
90
  static get watchers() { return {
68
91
  "open": ["watchOpen"]
69
92
  }; }
@@ -1 +1 @@
1
- {"file":"dso-map-controls.entry.js","mappings":";;AAAA,MAAM,cAAc,GAAG,gnlBAAgnlB,CAAC;AACxolB,6BAAe,cAAc;;;;;;;;;;;;;;;;;;;ACE7B;AACA,MAAM,kBAAkB,GAAG,GAAG,CAAC;MAOlB,WAAW;;;;;;QACd,eAAU,GAAG,YAAY,CAAC;QAyElC,kDAAmD;QACnD,mDAAoD;oBApE7C,KAAK;;2BAkCE,CAAC,IAAI,CAAC,IAAI;;IAGxB,SAAS,CAAC,IAAa;QACrB,IAAI,IAAI,EAAE;YACR,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC;YAEzB,UAAU,CAAC,gBAAM,OAAA,MAAA,uBAAA,IAAI,uCAAoB,0CAAE,KAAK,EAAE,CAAA,EAAA,EAAE,kBAAkB,CAAC,CAAC;SACzE;aAAM;YACL,UAAU,CAAC;;gBACT,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;gBAExB,MAAA,uBAAA,IAAI,wCAAqB,0CAAE,KAAK,EAAE,CAAC;aACpC,EAAE,kBAAkB,CAAC,CAAC;SACxB;KACF;;;;;;;IASD,MAAM,gBAAgB,CAAC,CAA6B;QAClD,IAAI,CAAC,IAAI,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC;QAEvB,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;YAClB,aAAa,EAAE,CAAC;YAChB,IAAI,EAAE,IAAI,CAAC,IAAI;SAChB,CAAC,CAAC;KACJ;IAKD,MAAM;QACJ,QACE,EAAC,IAAI,uDACH,+DACE,IAAI,EAAC,QAAQ,EACb,EAAE,EAAC,0BAA0B,EAC7B,KAAK,EAAC,0BAA0B,EAChC,OAAO,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,EACxC,GAAG,EAAE,CAAC,OAAO,MAAM,uBAAA,IAAI,oCAAwB,OAAO,MAAA,CAAC,IAEvD,iEAAU,IAAI,EAAC,QAAQ,GAAY,EACnC,4EAAuB,CAChB,EACT,4DAAK,KAAK,EAAC,cAAc,IACvB,+DACE,IAAI,EAAC,QAAQ,EACb,OAAO,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EACtC,QAAQ,EAAE,IAAI,CAAC,WAAW,KAAK,IAAI,IAAI,IAAI,CAAC,WAAW,KAAK,MAAM,IAElE,yEAAoB,EACpB,iEAAU,IAAI,EAAC,MAAM,GAAY,CAC1B,EACT,+DACE,IAAI,EAAC,QAAQ,EACb,OAAO,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EACvC,QAAQ,EAAE,IAAI,CAAC,WAAW,KAAK,KAAK,IAAI,IAAI,CAAC,WAAW,KAAK,MAAM,IAEnE,0EAAqB,EACrB,iEAAU,IAAI,EAAC,OAAO,GAAY,CAC3B,CACL,EACN,gEAAS,MAAM,EAAE,IAAI,CAAC,WAAW,IAC/B,iEACE,6DAAK,IAAI,CAAC,UAAU,CAAM,EAC1B,+DACE,IAAI,EAAC,QAAQ,EACb,KAAK,EAAC,cAAc,EACpB,OAAO,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,EACxC,GAAG,EAAE,CAAC,OAAO,MAAM,uBAAA,IAAI,mCAAuB,OAAO,MAAA,CAAC,IAEtD,kFAAsB,IAAI,CAAC,UAAU,CAAQ,EAC7C,iEAAU,IAAI,EAAC,OAAO,GAAY,CAC3B,CACF,EACT,yEACE,4DAAK,KAAK,EAAC,SAAS,IAClB,8DAAa,CACT,CACS,CACT,CACL,EACP;KACH;;;;;;;;;;","names":[],"sources":["src/components/map-controls/map-controls.scss?tag=dso-map-controls&encapsulation=shadow","src/components/map-controls/map-controls.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/components/button\";\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: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\nbutton {\r\n @include button.element();\r\n}\r\n\r\n.toggle-visibility-button {\r\n @include button.map();\r\n\r\n // stylelint-disable-next-line no-duplicate-selectors -- needed to fix sass deprecation warnings: #2724\r\n & {\r\n position: absolute;\r\n inset-inline-end: calc(\r\n 100% + #{core-map-controls-variables.$controls-margin + core-map-controls-variables.$zoom-button-size}\r\n );\r\n inset-block-start: core-map-controls-variables.$controls-margin;\r\n }\r\n}\r\n\r\n.zoom-buttons {\r\n border-radius: 4px;\r\n box-shadow: 0 1px 4px 0 rgba(0, 0, 0, 0.5);\r\n display: flex;\r\n flex-wrap: wrap;\r\n flex: 0 0;\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 button {\r\n @include button.secondary($modifiers: false, $icon-only: true);\r\n\r\n // stylelint-disable-next-line no-duplicate-selectors -- needed to fix sass deprecation warnings: #2724\r\n & {\r\n border: 0;\r\n padding: 8px;\r\n border-radius: 0;\r\n border-start-start-radius: 4px;\r\n border-start-end-radius: 4px;\r\n flex: 0 0 100%;\r\n block-size: core-map-controls-variables.$zoom-button-size;\r\n min-inline-size: auto;\r\n inline-size: core-map-controls-variables.$zoom-button-size;\r\n\r\n + button {\r\n border-radius: 0;\r\n border-end-start-radius: 4px;\r\n border-end-end-radius: 4px;\r\n border-block-start: 1px solid colors.$grijs-20;\r\n }\r\n\r\n &:focus-visible {\r\n outline-offset: -1px;\r\n }\r\n }\r\n }\r\n}\r\n\r\n.close-button {\r\n @include button.tertiary($modifiers: false, $icon-only: true);\r\n\r\n // stylelint-disable-next-line no-duplicate-selectors -- needed to fix sass deprecation warnings: #2724\r\n & {\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\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 .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 visibility: hidden;\r\n }\r\n }\r\n\r\n .zoom-buttons {\r\n inset-block-start: units.$u9;\r\n }\r\n}\r\n","import { Component, h, Host, Prop, Event, EventEmitter, State, Watch, Method } from \"@stencil/core\";\r\nimport { MapControlsToggleEvent } from \"./map-controls.interfaces\";\r\n\r\n// Sync with $transition-duration in ./map-controls.scss\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 {\r\n private panelTitle = \"Kaartlagen\";\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 #closeButtonElement: HTMLButtonElement | undefined;\r\n #toggleButtonElement: HTMLButtonElement | undefined;\r\n\r\n render() {\r\n return (\r\n <Host>\r\n <button\r\n type=\"button\"\r\n id=\"toggle-visibility-button\"\r\n class=\"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>Kaartlagen</span>\r\n </button>\r\n <div class=\"zoom-buttons\">\r\n <button\r\n type=\"button\"\r\n onClick={(e) => this.dsoZoomIn.emit(e)}\r\n disabled={this.disableZoom === \"in\" || this.disableZoom === \"both\"}\r\n >\r\n <span>Zoom in</span>\r\n <dso-icon icon=\"plus\"></dso-icon>\r\n </button>\r\n <button\r\n type=\"button\"\r\n onClick={(e) => this.dsoZoomOut.emit(e)}\r\n disabled={this.disableZoom === \"out\" || this.disableZoom === \"both\"}\r\n >\r\n <span>Zoom uit</span>\r\n <dso-icon icon=\"minus\"></dso-icon>\r\n </button>\r\n </div>\r\n <section hidden={this.hideContent}>\r\n <header>\r\n <h2>{this.panelTitle}</h2>\r\n <button\r\n type=\"button\"\r\n class=\"close-button\"\r\n onClick={(e) => this.toggleVisibility(e)}\r\n ref={(element) => (this.#closeButtonElement = element)}\r\n >\r\n <span>Verberg paneel {this.panelTitle}</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 </Host>\r\n );\r\n }\r\n}\r\n"],"version":3}
1
+ {"file":"dso-map-controls.entry.js","mappings":";;;AAEO,MAAM,YAAY,GAAa;IACpC,EAAE,EAAE;QACF,kBAAkB,EAAE;YAClB,KAAK,EAAE,YAAY;YACnB,YAAY,EAAE,YAAY;YAC1B,MAAM,EAAE,SAAS;YACjB,OAAO,EAAE,UAAU;YACnB,SAAS,EAAE,sBAAsB;SAClC;KACF;IACD,EAAE,EAAE;QACF,kBAAkB,EAAE;YAClB,KAAK,EAAE,YAAY;YACnB,YAAY,EAAE,YAAY;YAC1B,MAAM,EAAE,SAAS;YACjB,OAAO,EAAE,UAAU;YACnB,SAAS,EAAE,0BAA0B;SACtC;KACF;CACF;;ACrBD,MAAM,cAAc,GAAG,gnlBAAgnlB,CAAC;AACxolB,6BAAe,cAAc;;;;;;;;;;;;;;;;;;;ACM7B;AACA,MAAM,kBAAkB,GAAG,GAAG,CAAC;MAOlB,WAAW;;;;;;QA2Ed,SAAI,GAAG,IAAI,CAAC,MAAM,IAAI,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC;QAEnD,kDAAmD;QACnD,mDAAoD;oBAtE7C,KAAK;;2BAkCE,CAAC,IAAI,CAAC,IAAI;;IAGxB,SAAS,CAAC,IAAa;QACrB,IAAI,IAAI,EAAE;YACR,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC;YAEzB,UAAU,CAAC,gBAAM,OAAA,MAAA,uBAAA,IAAI,uCAAoB,0CAAE,KAAK,EAAE,CAAA,EAAA,EAAE,kBAAkB,CAAC,CAAC;SACzE;aAAM;YACL,UAAU,CAAC;;gBACT,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;gBAExB,MAAA,uBAAA,IAAI,wCAAqB,0CAAE,KAAK,EAAE,CAAC;aACpC,EAAE,kBAAkB,CAAC,CAAC;SACxB;KACF;;;;;;;IASD,MAAM,gBAAgB,CAAC,CAA6B;QAClD,IAAI,CAAC,IAAI,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC;QAEvB,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;YAClB,aAAa,EAAE,CAAC;YAChB,IAAI,EAAE,IAAI,CAAC,IAAI;SAChB,CAAC,CAAC;KACJ;IAOD,MAAM;QACJ,QACE,kBACE,+DACE,IAAI,EAAC,QAAQ,EACb,EAAE,EAAC,0BAA0B,EAC7B,KAAK,EAAC,0BAA0B,EAChC,OAAO,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,EACxC,GAAG,EAAE,CAAC,OAAO,MAAM,uBAAA,IAAI,oCAAwB,OAAO,MAAA,CAAC,IAEvD,iEAAU,IAAI,EAAC,QAAQ,GAAY,EACnC,+DAAO,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,CAAQ,CACjC,EACT,4DAAK,KAAK,EAAC,cAAc,IACvB,+DACE,IAAI,EAAC,QAAQ,EACb,OAAO,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EACtC,QAAQ,EAAE,IAAI,CAAC,WAAW,KAAK,IAAI,IAAI,IAAI,CAAC,WAAW,KAAK,MAAM,IAElE,+DAAO,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAQ,EAClC,iEAAU,IAAI,EAAC,MAAM,GAAY,CAC1B,EACT,+DACE,IAAI,EAAC,QAAQ,EACb,OAAO,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EACvC,QAAQ,EAAE,IAAI,CAAC,WAAW,KAAK,KAAK,IAAI,IAAI,CAAC,WAAW,KAAK,MAAM,IAEnE,+DAAO,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAQ,EACnC,iEAAU,IAAI,EAAC,OAAO,GAAY,CAC3B,CACL,EACN,gEAAS,MAAM,EAAE,IAAI,CAAC,WAAW,IAC/B,iEACE,6DAAK,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAM,EAC7B,+DACE,IAAI,EAAC,QAAQ,EACb,KAAK,EAAC,cAAc,EACpB,OAAO,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,EACxC,GAAG,EAAE,CAAC,OAAO,MAAM,uBAAA,IAAI,mCAAuB,OAAO,MAAA,CAAC,IAEtD,+DAAO,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,CAAQ,EACpE,iEAAU,IAAI,EAAC,OAAO,GAAY,CAC3B,CACF,EACT,yEACE,4DAAK,KAAK,EAAC,SAAS,IAClB,8DAAa,CACT,CACS,CACT,CACT,EACH;KACH;;;;;;;;;;;","names":[],"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@use \"~dso-toolkit/src/components/button\";\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: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\nbutton {\r\n @include button.element();\r\n}\r\n\r\n.toggle-visibility-button {\r\n @include button.map();\r\n\r\n // stylelint-disable-next-line no-duplicate-selectors -- needed to fix sass deprecation warnings: #2724\r\n & {\r\n position: absolute;\r\n inset-inline-end: calc(\r\n 100% + #{core-map-controls-variables.$controls-margin + core-map-controls-variables.$zoom-button-size}\r\n );\r\n inset-block-start: core-map-controls-variables.$controls-margin;\r\n }\r\n}\r\n\r\n.zoom-buttons {\r\n border-radius: 4px;\r\n box-shadow: 0 1px 4px 0 rgba(0, 0, 0, 0.5);\r\n display: flex;\r\n flex-wrap: wrap;\r\n flex: 0 0;\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 button {\r\n @include button.secondary($modifiers: false, $icon-only: true);\r\n\r\n // stylelint-disable-next-line no-duplicate-selectors -- needed to fix sass deprecation warnings: #2724\r\n & {\r\n border: 0;\r\n padding: 8px;\r\n border-radius: 0;\r\n border-start-start-radius: 4px;\r\n border-start-end-radius: 4px;\r\n flex: 0 0 100%;\r\n block-size: core-map-controls-variables.$zoom-button-size;\r\n min-inline-size: auto;\r\n inline-size: core-map-controls-variables.$zoom-button-size;\r\n\r\n + button {\r\n border-radius: 0;\r\n border-end-start-radius: 4px;\r\n border-end-end-radius: 4px;\r\n border-block-start: 1px solid colors.$grijs-20;\r\n }\r\n\r\n &:focus-visible {\r\n outline-offset: -1px;\r\n }\r\n }\r\n }\r\n}\r\n\r\n.close-button {\r\n @include button.tertiary($modifiers: false, $icon-only: true);\r\n\r\n // stylelint-disable-next-line no-duplicate-selectors -- needed to fix sass deprecation warnings: #2724\r\n & {\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\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 .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 visibility: hidden;\r\n }\r\n }\r\n\r\n .zoom-buttons {\r\n inset-block-start: units.$u9;\r\n }\r\n}\r\n","import { Component, Element, Event, EventEmitter, Fragment, h, Method, Prop, State, Watch } from \"@stencil/core\";\r\n\r\nimport { i18n } from \"../../utils/i18n\";\r\n\r\nimport { MapControlsToggleEvent } from \"./map-controls.interfaces\";\r\nimport { translations } from \"./map-controls.i18n\";\r\n\r\n// Sync with $transition-duration in ./map-controls.scss\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 {\r\n @Element()\r\n host!: HTMLDsoMapControlsElement;\r\n\r\n /**\r\n * To show and hide the Map Controls.\r\n */\r\n @Prop({ reflect: true, mutable: true })\r\n open = false;\r\n\r\n /**\r\n * To disable the zoom controls:\r\n *\r\n * * `in`: Disable zoom in button.\r\n * * `out`: Disable zoom out button.\r\n * * `both`: Disable zoom in and zoom out.\r\n */\r\n @Prop()\r\n disableZoom?: \"in\" | \"out\" | \"both\";\r\n\r\n /**\r\n * Emitted when the user activates the zoom in button.\r\n */\r\n @Event()\r\n dsoZoomIn!: EventEmitter<MouseEvent>;\r\n\r\n /**\r\n * Emitted when the user activates the zoom out button.\r\n */\r\n @Event()\r\n dsoZoomOut!: EventEmitter<MouseEvent>;\r\n\r\n /**\r\n * emits when the panel opens or closes.\r\n *\r\n * - `event.detail.originalEvent` contains the original `MouseEvent / KeyboardEvent` when the panel is toggled by clicking the visibility button or the close button.\r\n * - `event.detail.open` is true when the panel opens and false when the panel closes.\r\n */\r\n @Event()\r\n dsoToggle!: EventEmitter<MapControlsToggleEvent>;\r\n\r\n @State()\r\n hideContent = !this.open;\r\n\r\n @Watch(\"open\")\r\n watchOpen(open: boolean) {\r\n if (open) {\r\n this.hideContent = false;\r\n\r\n setTimeout(() => this.#closeButtonElement?.focus(), transitionDuration);\r\n } else {\r\n setTimeout(() => {\r\n this.hideContent = true;\r\n\r\n this.#toggleButtonElement?.focus();\r\n }, transitionDuration);\r\n }\r\n }\r\n\r\n /**\r\n * Emitted when the visibility is toggled.\r\n *\r\n * Can be used to recalculate map widths or reposition center when the Map Controls opens or closes.\r\n * @param e\r\n */\r\n @Method()\r\n async toggleVisibility(e: MouseEvent | KeyboardEvent) {\r\n this.open = !this.open;\r\n\r\n this.dsoToggle.emit({\r\n originalEvent: e,\r\n open: this.open,\r\n });\r\n }\r\n\r\n private text = i18n(() => this.host, translations);\r\n\r\n #closeButtonElement: HTMLButtonElement | undefined;\r\n #toggleButtonElement: HTMLButtonElement | undefined;\r\n\r\n render() {\r\n return (\r\n <>\r\n <button\r\n type=\"button\"\r\n id=\"toggle-visibility-button\"\r\n class=\"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 <div class=\"zoom-buttons\">\r\n <button\r\n type=\"button\"\r\n onClick={(e) => this.dsoZoomIn.emit(e)}\r\n disabled={this.disableZoom === \"in\" || this.disableZoom === \"both\"}\r\n >\r\n <span>{this.text(\"zoomIn\")}</span>\r\n <dso-icon icon=\"plus\"></dso-icon>\r\n </button>\r\n <button\r\n type=\"button\"\r\n onClick={(e) => this.dsoZoomOut.emit(e)}\r\n disabled={this.disableZoom === \"out\" || this.disableZoom === \"both\"}\r\n >\r\n <span>{this.text(\"zoomOut\")}</span>\r\n <dso-icon icon=\"minus\"></dso-icon>\r\n </button>\r\n </div>\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=\"close-button\"\r\n onClick={(e) => this.toggleVisibility(e)}\r\n ref={(element) => (this.#closeButtonElement = element)}\r\n >\r\n <span>{this.text(\"hidePanel\", { title: this.text(\"title\") })}</span>\r\n <dso-icon icon=\"times\"></dso-icon>\r\n </button>\r\n </header>\r\n <dso-scrollable>\r\n <div class=\"content\">\r\n <slot></slot>\r\n </div>\r\n </dso-scrollable>\r\n </section>\r\n </>\r\n );\r\n }\r\n}\r\n"],"version":3}