@dso-toolkit/core 45.0.0 → 45.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (175) hide show
  1. package/dist/cjs/dso-accordion-section.cjs.entry.js +110 -0
  2. package/dist/cjs/dso-accordion.cjs.entry.js +297 -0
  3. package/dist/cjs/dso-alert.cjs.entry.js +3 -3
  4. package/dist/cjs/dso-attachments-counter.cjs.entry.js +3 -3
  5. package/dist/cjs/dso-autosuggest.cjs.entry.js +1 -1
  6. package/dist/cjs/dso-badge.cjs.entry.js +1 -1
  7. package/dist/cjs/dso-banner.cjs.entry.js +2 -2
  8. package/dist/cjs/dso-date-picker.cjs.entry.js +1 -1
  9. package/dist/cjs/dso-dropdown-menu.cjs.entry.js +3 -3
  10. package/dist/cjs/dso-header.cjs.entry.js +6 -6
  11. package/dist/cjs/dso-helpcenter-panel.cjs.entry.js +59 -3
  12. package/dist/cjs/dso-highlight-box.cjs.entry.js +2 -2
  13. package/dist/cjs/dso-icon.cjs.entry.js +2 -2
  14. package/dist/cjs/dso-image-overlay.cjs.entry.js +11 -5
  15. package/dist/cjs/dso-info-button.cjs.entry.js +4 -3
  16. package/dist/cjs/dso-info_2.cjs.entry.js +3 -3
  17. package/dist/cjs/dso-label.cjs.entry.js +1 -1
  18. package/dist/cjs/dso-map-base-layers.cjs.entry.js +1 -1
  19. package/dist/cjs/dso-map-controls.cjs.entry.js +2 -2
  20. package/dist/cjs/dso-map-overlays.cjs.entry.js +1 -1
  21. package/dist/cjs/dso-ozon-content.cjs.entry.js +44 -9
  22. package/dist/cjs/dso-pagination.cjs.entry.js +98 -6
  23. package/dist/cjs/dso-progress-bar.cjs.entry.js +1 -1
  24. package/dist/cjs/dso-progress-indicator.cjs.entry.js +1 -1
  25. package/dist/cjs/dso-responsive-element.cjs.entry.js +6 -1
  26. package/dist/cjs/dso-toggletip.cjs.entry.js +2 -2
  27. package/dist/cjs/dso-toolkit.cjs.js +2 -2
  28. package/dist/cjs/dso-tooltip.cjs.entry.js +1 -1
  29. package/dist/cjs/dso-tree-view.cjs.entry.js +1 -1
  30. package/dist/cjs/dso-viewer-grid.cjs.entry.js +11 -5
  31. package/dist/cjs/{focus-trap.esm-a85643b0.js → focus-trap.esm-e2addb10.js} +28 -11
  32. package/dist/cjs/{index-0a7c679a.js → index-4066351a.js} +7 -0
  33. package/dist/cjs/{index.esm-3520a2a6.js → index.esm-50325ea2.js} +110 -12
  34. package/dist/cjs/loader.cjs.js +2 -2
  35. package/dist/collection/collection-manifest.json +2 -0
  36. package/dist/collection/components/accordion/accordion.css +9 -0
  37. package/dist/collection/components/accordion/accordion.interfaces.js +1 -0
  38. package/dist/collection/components/accordion/accordion.js +260 -0
  39. package/dist/collection/components/accordion/accordion.template.js +26 -0
  40. package/dist/collection/components/accordion/components/accordion-section.css +221 -0
  41. package/dist/collection/components/accordion/components/accordion-section.js +292 -0
  42. package/dist/collection/components/alert/alert.css +4 -41
  43. package/dist/collection/components/alert/alert.js +1 -0
  44. package/dist/collection/components/attachments-counter/attachments-counter.css +0 -12
  45. package/dist/collection/components/attachments-counter/attachments-counter.js +2 -1
  46. package/dist/collection/components/banner/banner.css +0 -4
  47. package/dist/collection/components/dropdown-menu/dropdown-menu.css +0 -7
  48. package/dist/collection/components/header/header.css +20 -379
  49. package/dist/collection/components/header/header.js +22 -24
  50. package/dist/collection/components/helpcenter-panel/helpcenter-panel.css +3 -102
  51. package/dist/collection/components/helpcenter-panel/helpcenter-panel.js +71 -5
  52. package/dist/collection/components/highlight-box/highlight-box.css +0 -2
  53. package/dist/collection/components/image-overlay/image-overlay.css +37 -1134
  54. package/dist/collection/components/image-overlay/image-overlay.js +13 -3
  55. package/dist/collection/components/image-overlay/image-overlay.template.js +9 -1
  56. package/dist/collection/components/info/info.css +19 -1070
  57. package/dist/collection/components/info/info.js +1 -0
  58. package/dist/collection/components/info-button/info-button.css +8 -17
  59. package/dist/collection/components/info-button/info-button.js +9 -3
  60. package/dist/collection/components/map-controls/map-controls.css +20 -1172
  61. package/dist/collection/components/ozon-content/nodes/figuur.node.js +41 -6
  62. package/dist/collection/components/ozon-content/ozon-content.css +22 -41
  63. package/dist/collection/components/pagination/pagination.css +1 -0
  64. package/dist/collection/components/pagination/pagination.js +121 -13
  65. package/dist/collection/components/responsive-element/responsive-element.interfaces.js +1 -0
  66. package/dist/collection/components/responsive-element/responsive-element.js +48 -1
  67. package/dist/collection/components/responsive-element/responsive-element.template.js +4 -2
  68. package/dist/collection/components/toggletip/toggletip.css +4 -0
  69. package/dist/collection/components/viewer-grid/viewer-grid.css +34 -1220
  70. package/dist/collection/components/viewer-grid/viewer-grid.js +12 -1
  71. package/dist/custom-elements/index.d.ts +12 -0
  72. package/dist/custom-elements/index.js +1933 -1219
  73. package/dist/dso-toolkit/dso-toolkit.esm.js +1 -1
  74. package/dist/dso-toolkit/p-02b2e01c.entry.js +1 -0
  75. package/dist/dso-toolkit/{p-d780f9ff.entry.js → p-05a9e206.entry.js} +1 -1
  76. package/dist/dso-toolkit/p-22c35db5.js +5 -0
  77. package/dist/dso-toolkit/{p-361528b4.entry.js → p-2e74485e.entry.js} +1 -1
  78. package/dist/dso-toolkit/p-2f6b1092.entry.js +1 -0
  79. package/dist/dso-toolkit/{p-bf4d6f63.entry.js → p-3381c859.entry.js} +1 -1
  80. package/dist/dso-toolkit/{p-3799366e.entry.js → p-37a34037.entry.js} +1 -1
  81. package/dist/dso-toolkit/p-42450cfe.js +1 -0
  82. package/dist/dso-toolkit/p-4c44d27c.entry.js +1 -0
  83. package/dist/dso-toolkit/{p-91b6a181.entry.js → p-4fd140e9.entry.js} +1 -1
  84. package/dist/dso-toolkit/p-53c7bf4f.entry.js +1 -0
  85. package/dist/dso-toolkit/{p-d60876c2.entry.js → p-67b11174.entry.js} +1 -1
  86. package/dist/dso-toolkit/{p-e4bcafc4.entry.js → p-6cac0292.entry.js} +1 -1
  87. package/dist/dso-toolkit/p-7213783b.entry.js +1 -0
  88. package/dist/dso-toolkit/p-73bbb9a6.entry.js +1 -0
  89. package/dist/dso-toolkit/{p-16635f4b.entry.js → p-8515d157.entry.js} +1 -1
  90. package/dist/dso-toolkit/{p-375a2523.entry.js → p-93b53eb7.entry.js} +1 -1
  91. package/dist/dso-toolkit/p-ac0c0eee.entry.js +1 -0
  92. package/dist/dso-toolkit/p-b1a75b67.entry.js +1 -0
  93. package/dist/dso-toolkit/p-b6afe104.entry.js +1 -0
  94. package/dist/dso-toolkit/{p-590cbab6.entry.js → p-b9531adb.entry.js} +1 -1
  95. package/dist/dso-toolkit/p-c339891f.entry.js +1 -0
  96. package/dist/dso-toolkit/{p-6bc71e48.entry.js → p-d2255268.entry.js} +1 -1
  97. package/dist/dso-toolkit/p-d6192ab8.entry.js +1 -0
  98. package/dist/dso-toolkit/p-de50f5f1.entry.js +1 -0
  99. package/dist/dso-toolkit/p-e16b5d71.entry.js +1 -0
  100. package/dist/dso-toolkit/p-e2e2106e.entry.js +1 -0
  101. package/dist/dso-toolkit/p-ea1d4c81.entry.js +1 -0
  102. package/dist/dso-toolkit/{p-25f8dbc6.entry.js → p-ec3b8800.entry.js} +1 -1
  103. package/dist/dso-toolkit/p-efd815dc.entry.js +1 -0
  104. package/dist/dso-toolkit/p-f42d8240.entry.js +1 -0
  105. package/dist/dso-toolkit/p-f8b023c4.js +5 -0
  106. package/dist/esm/dso-accordion-section.entry.js +106 -0
  107. package/dist/esm/dso-accordion.entry.js +293 -0
  108. package/dist/esm/dso-alert.entry.js +3 -3
  109. package/dist/esm/dso-attachments-counter.entry.js +3 -3
  110. package/dist/esm/dso-autosuggest.entry.js +1 -1
  111. package/dist/esm/dso-badge.entry.js +1 -1
  112. package/dist/esm/dso-banner.entry.js +2 -2
  113. package/dist/esm/dso-date-picker.entry.js +1 -1
  114. package/dist/esm/dso-dropdown-menu.entry.js +3 -3
  115. package/dist/esm/dso-header.entry.js +6 -6
  116. package/dist/esm/dso-helpcenter-panel.entry.js +59 -3
  117. package/dist/esm/dso-highlight-box.entry.js +2 -2
  118. package/dist/esm/dso-icon.entry.js +2 -2
  119. package/dist/esm/dso-image-overlay.entry.js +11 -5
  120. package/dist/esm/dso-info-button.entry.js +4 -3
  121. package/dist/esm/dso-info_2.entry.js +3 -3
  122. package/dist/esm/dso-label.entry.js +1 -1
  123. package/dist/esm/dso-map-base-layers.entry.js +1 -1
  124. package/dist/esm/dso-map-controls.entry.js +2 -2
  125. package/dist/esm/dso-map-overlays.entry.js +1 -1
  126. package/dist/esm/dso-ozon-content.entry.js +44 -9
  127. package/dist/esm/dso-pagination.entry.js +98 -6
  128. package/dist/esm/dso-progress-bar.entry.js +1 -1
  129. package/dist/esm/dso-progress-indicator.entry.js +1 -1
  130. package/dist/esm/dso-responsive-element.entry.js +6 -1
  131. package/dist/esm/dso-toggletip.entry.js +2 -2
  132. package/dist/esm/dso-toolkit.js +2 -2
  133. package/dist/esm/dso-tooltip.entry.js +1 -1
  134. package/dist/esm/dso-tree-view.entry.js +1 -1
  135. package/dist/esm/dso-viewer-grid.entry.js +11 -5
  136. package/dist/esm/{focus-trap.esm-a01ad6c9.js → focus-trap.esm-e3b5bde3.js} +28 -11
  137. package/dist/esm/{index-1602fde1.js → index-771c1291.js} +7 -1
  138. package/dist/esm/{index.esm-45465af7.js → index.esm-4510c39e.js} +110 -12
  139. package/dist/esm/loader.js +2 -2
  140. package/dist/types/components/accordion/accordion.d.ts +32 -0
  141. package/dist/types/components/accordion/accordion.interfaces.d.ts +20 -0
  142. package/dist/types/components/accordion/accordion.template.d.ts +2 -0
  143. package/dist/types/components/accordion/components/accordion-section.d.ts +25 -0
  144. package/dist/types/components/helpcenter-panel/helpcenter-panel.d.ts +11 -0
  145. package/dist/types/components/image-overlay/image-overlay.d.ts +3 -0
  146. package/dist/types/components/info-button/info-button.d.ts +1 -0
  147. package/dist/types/components/ozon-content/nodes/figuur.node.d.ts +4 -1
  148. package/dist/types/components/pagination/pagination.d.ts +15 -0
  149. package/dist/types/components/responsive-element/responsive-element.d.ts +5 -2
  150. package/dist/types/components/responsive-element/responsive-element.interfaces.d.ts +5 -0
  151. package/dist/types/components/responsive-element/responsive-element.template.d.ts +1 -1
  152. package/dist/types/components.d.ts +99 -0
  153. package/package.json +4 -3
  154. package/readme.md +0 -7
  155. package/dist/collection/icon/dso-icon-sass-function.js +0 -42
  156. package/dist/dso-toolkit/dso-toolkit.css +0 -1
  157. package/dist/dso-toolkit/p-02272301.entry.js +0 -1
  158. package/dist/dso-toolkit/p-10a6db1a.entry.js +0 -1
  159. package/dist/dso-toolkit/p-131d54e3.js +0 -5
  160. package/dist/dso-toolkit/p-1450f113.entry.js +0 -1
  161. package/dist/dso-toolkit/p-15d0f2eb.entry.js +0 -1
  162. package/dist/dso-toolkit/p-3b5f957e.entry.js +0 -1
  163. package/dist/dso-toolkit/p-49938275.entry.js +0 -1
  164. package/dist/dso-toolkit/p-5a56d726.entry.js +0 -1
  165. package/dist/dso-toolkit/p-5e5fbd41.js +0 -5
  166. package/dist/dso-toolkit/p-68d49733.entry.js +0 -1
  167. package/dist/dso-toolkit/p-7b716383.entry.js +0 -1
  168. package/dist/dso-toolkit/p-b95bc2c7.entry.js +0 -1
  169. package/dist/dso-toolkit/p-c1070a58.entry.js +0 -1
  170. package/dist/dso-toolkit/p-c62606a3.js +0 -1
  171. package/dist/dso-toolkit/p-e7888d49.entry.js +0 -1
  172. package/dist/dso-toolkit/p-eb17d45e.entry.js +0 -1
  173. package/dist/dso-toolkit/p-f726111e.entry.js +0 -1
  174. package/dist/dso-toolkit/p-fd8a8509.entry.js +0 -1
  175. package/dist/types/icon/dso-icon-sass-function.d.ts +0 -4
@@ -0,0 +1 @@
1
+ import{h as n,r as t,c as e,H as o,a as s}from"./p-42450cfe.js";import{c as i}from"./p-22c35db5.js";import"./p-f8b023c4.js";const r=({onApply:t,onCancel:e})=>n("div",{class:"filterpanel-buttons"},n("button",{type:"button",class:"cancel-button",onClick:e},n("span",null,"Annuleren")),n("button",{type:"button",class:"apply-button",onClick:t},n("span",null,"Toepassen"),n("dso-icon",{icon:"chevron-right"})));let a=class{constructor(n){t(this,n),this.dsoCloseOverlay=e(this,"dsoCloseOverlay",7),this.dsoFilterpanelCancel=e(this,"dsoFilterpanelCancel",7),this.dsoFilterpanelApply=e(this,"dsoFilterpanelApply",7),this.dsoMainSizeChange=e(this,"dsoMainSizeChange",7),this.sizeLabelMap={small:"smal",medium:"middel",large:"breed"},this.filterpanelOpen=!1,this.overlayOpen=!1,this.initialMainSize="large",this.mainSize=this.initialMainSize,this.filterpanelSlot=null,this.overlaySlot=null,this.shrinkMain=()=>{this.mainSize="large"===this.mainSize?"medium":"small"},this.expandMain=()=>{this.mainSize="small"===this.mainSize?"medium":"large"},this.keyDownListener=n=>{"Escape"==n.key&&this.dsoCloseOverlay.emit(n)}}mainSizeWatcher(n,t){this.dsoMainSizeChange.emit({stage:"start",previousSize:t,currentSize:n}),setTimeout((()=>{this.dsoMainSizeChange.emit({stage:"end",previousSize:t,currentSize:n})}),200)}updateFocusTrap(){var n,t;this.filterpanelOpen&&this.overlayOpen||(this.filterpanelFocustrap&&(this.filterpanelOpen&&!(null===(n=this.filterpanel)||void 0===n?void 0:n.hidden)?(this.filterpanelFocustrap.activate(),this.host.addEventListener("keydown",this.keyDownListener)):(this.filterpanelFocustrap.deactivate(),this.host.removeEventListener("keydown",this.keyDownListener))),this.overlayFocustrap&&(this.overlayOpen&&!(null===(t=this.overlay)||void 0===t?void 0:t.hidden)?(this.overlayFocustrap.activate(),this.host.addEventListener("keydown",this.keyDownListener)):(this.overlayFocustrap.deactivate(),this.host.removeEventListener("keydown",this.keyDownListener))))}connectedCallback(){this.filterpanelSlot=this.host.querySelector("div[slot='filterpanel']"),this.overlaySlot=this.host.querySelector("div[slot='overlay']")}componentDidLoad(){this.filterpanel&&this.filterpanelSlot&&(this.filterpanelFocustrap=i([this.filterpanel,this.filterpanelSlot],{escapeDeactivates:!1,allowOutsideClick:!0,tabbableOptions:{getShadowRoot:!0}})),this.overlay&&this.overlaySlot&&(this.overlayFocustrap=i([this.overlay,this.overlaySlot],{escapeDeactivates:!1,allowOutsideClick:!0,tabbableOptions:{getShadowRoot:!0}})),this.updateFocusTrap()}componentDidUpdate(){this.updateFocusTrap()}disconnectedCallback(){var n,t;null===(n=this.overlayFocustrap)||void 0===n||n.deactivate(),null===(t=this.filterpanelFocustrap)||void 0===t||t.deactivate(),this.host.removeEventListener("keydown",this.keyDownListener)}handleFilterpanelApply(n){this.dsoFilterpanelApply.emit({originalEvent:n})}handleFilterpanelCancel(n){this.dsoFilterpanelCancel.emit({originalEvent:n})}render(){return n(o,Object.assign({},{[this.mainSize]:!0}),n("div",{class:"dso-map-panel"},n("div",{class:"sizing-buttons"},n("span",{class:"sr-only","aria-live":"polite","aria-atomic":"true"},"breedte tekstpaneel: ",this.sizeLabelMap[this.mainSize]),n("button",{type:"button",class:"shrink",disabled:"small"==this.mainSize,onClick:this.shrinkMain},n("span",{class:"sr-only"},"Kaartpaneel smaller maken"),n("dso-icon",{icon:"chevron-left"})),n("button",{type:"button",class:"expand",disabled:"large"==this.mainSize,onClick:this.expandMain},n("span",{class:"sr-only"},"Kaartpaneel breder maken"),n("dso-icon",{icon:"chevron-right"}))),n("div",{class:"main"},n("slot",{name:"main"}))),n("div",{id:"filterpanel",hidden:!this.filterpanelOpen||!this.filterpanelSlot,ref:n=>this.filterpanel=n},n("h2",null,"Uw keuzes"),n(r,{onApply:n=>this.handleFilterpanelApply(n),onCancel:n=>this.handleFilterpanelCancel(n)}),n("slot",{name:"filterpanel"}),n(r,{onApply:n=>this.handleFilterpanelApply(n),onCancel:n=>this.handleFilterpanelCancel(n)})),n("div",{class:"map"},n("slot",{name:"map"})),n("div",{class:"overlay",hidden:!this.overlayOpen||!this.overlaySlot,ref:n=>this.overlay=n},n("button",{type:"button",class:"overlay-close-button",onClick:n=>this.dsoCloseOverlay.emit(n)},n("dso-icon",{icon:"times"}),n("span",{class:"sr-only"},"sluiten")),n("slot",{name:"overlay"}),n("button",{"aria-hidden":"true",type:"button",class:"overlay-close-button",style:{zIndex:"-100"}},n("dso-icon",{icon:"times"}),n("span",{class:"sr-only"},"sluiten"))))}get host(){return s(this)}static get watchers(){return{mainSize:["mainSizeWatcher"]}}};a.style="h1,\n.h1,\nh2,\n.h2,\nh3,\n.h3 {\n margin-bottom: 16px;\n margin-top: 24px;\n}\n\nh1,\n.h1 {\n line-height: 1.25;\n}\n\nh1 {\n color: #275937;\n font-size: 2rem;\n font-weight: 700;\n}\n\nh2,\n.h2 {\n line-height: 1.33;\n}\n\nh2 {\n color: #275937;\n font-size: 1.5rem;\n font-weight: 700;\n}\n\nh3,\n.h3 {\n line-height: 1.2;\n}\n\nh3 {\n color: #275937;\n font-size: 1.25rem;\n font-weight: 600;\n}\n\nh4,\n.h4,\nh5,\n.h5,\nh6,\n.h6 {\n margin-bottom: 16px;\n margin-top: 12px;\n}\n\nh4,\n.h4 {\n line-height: 1.5;\n}\n\nh4 {\n color: #275937;\n font-size: 1rem;\n font-weight: 600;\n}\n\nh5,\n.h5 {\n line-height: 1.5;\n}\n\nh5 {\n color: #191919;\n font-size: 1rem;\n font-weight: 600;\n}\n\nh6,\n.h6 {\n line-height: 1.5;\n}\n\n*,\n*::after,\n*::before {\n box-sizing: border-box;\n}\n\n:host {\n display: flex;\n height: 100vh;\n overflow: hidden;\n position: relative;\n}\n\n:host([small]) .dso-map-panel {\n flex-basis: 375px;\n min-width: 0;\n max-width: 375px;\n}\n@media screen and (max-width: 375px) {\n :host([small]) .dso-map-panel {\n flex-basis: 100vw;\n max-width: 100vw;\n min-width: 0;\n transition: none;\n }\n}\n\n:host([medium]) .dso-map-panel {\n flex-basis: 624px;\n min-width: 375px;\n max-width: 624px;\n}\n@media screen and (max-width: 624px) {\n :host([medium]) .dso-map-panel {\n flex-basis: 100vw;\n max-width: 100vw;\n min-width: 375px;\n transition: none;\n }\n}\n\n:host([large]) .dso-map-panel {\n flex-basis: 60%;\n min-width: 768px;\n max-width: 1024px;\n}\n@media screen and (max-width: 768px) {\n :host([large]) .dso-map-panel {\n flex-basis: 100vw;\n max-width: 100vw;\n min-width: 768px;\n transition: none;\n }\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.sr-only {\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n margin: -1px;\n overflow: hidden;\n clip: rect(0, 0, 0, 0);\n border: 0;\n}\n\n.shrink,\n.expand,\n.overlay-close-button {\n display: inline-block;\n font-size: 1em;\n font-weight: 500;\n margin-bottom: 0;\n text-decoration: none;\n touch-action: manipulation;\n text-align: left;\n user-select: none;\n vertical-align: middle;\n border: 0;\n color: #39870c;\n line-height: 1;\n padding: 0;\n background-color: transparent;\n}\n.shrink:focus, .shrink:focus-visible,\n.expand:focus,\n.expand:focus-visible,\n.overlay-close-button:focus,\n.overlay-close-button:focus-visible {\n outline-offset: 2px;\n}\n.shrink:active,\n.expand:active,\n.overlay-close-button:active {\n outline: 0;\n}\n.shrink[disabled],\n.expand[disabled],\n.overlay-close-button[disabled] {\n color: #afcf9d;\n}\n.shrink[disabled].dso-spinner-left, .shrink[disabled].dso-spinner-right,\n.expand[disabled].dso-spinner-left,\n.expand[disabled].dso-spinner-right,\n.overlay-close-button[disabled].dso-spinner-left,\n.overlay-close-button[disabled].dso-spinner-right {\n color: #39870c;\n}\n.shrink:not([disabled]):hover,\n.expand:not([disabled]):hover,\n.overlay-close-button:not([disabled]):hover {\n color: #676cb0;\n text-decoration: underline;\n text-underline-position: under;\n}\n.shrink:not([disabled]):active,\n.expand:not([disabled]):active,\n.overlay-close-button:not([disabled]):active {\n color: #676cb0;\n}\n.shrink.btn-align,\n.expand.btn-align,\n.overlay-close-button.btn-align {\n line-height: calc(1.5em - 1px);\n padding: 11px 0;\n position: relative;\n}\n.shrink.dso-spinner-left::before,\n.expand.dso-spinner-left::before,\n.overlay-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 height: 24px;\n vertical-align: middle;\n width: 24px;\n margin-right: 8px;\n}\n.shrink.dso-spinner-right::after,\n.expand.dso-spinner-right::after,\n.overlay-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 height: 24px;\n vertical-align: middle;\n width: 24px;\n margin-left: 8px;\n}\n.shrink dso-icon + span:not(.sr-only),\n.shrink svg.di + span:not(.sr-only),\n.shrink span:not(.sr-only) + dso-icon,\n.shrink span:not(.sr-only) + svg.di,\n.expand dso-icon + span:not(.sr-only),\n.expand svg.di + span:not(.sr-only),\n.expand span:not(.sr-only) + dso-icon,\n.expand span:not(.sr-only) + svg.di,\n.overlay-close-button dso-icon + span:not(.sr-only),\n.overlay-close-button svg.di + span:not(.sr-only),\n.overlay-close-button span:not(.sr-only) + dso-icon,\n.overlay-close-button span:not(.sr-only) + svg.di {\n margin-left: 8px;\n}\n.shrink svg.di.di-chevron-down + span:not(.sr-only),\n.shrink svg.di.di-chevron-up + span:not(.sr-only),\n.shrink span:not(.sr-only) + svg.di.di-chevron-down,\n.shrink span:not(.sr-only) + svg.di.di-chevron-up,\n.expand svg.di.di-chevron-down + span:not(.sr-only),\n.expand svg.di.di-chevron-up + span:not(.sr-only),\n.expand span:not(.sr-only) + svg.di.di-chevron-down,\n.expand span:not(.sr-only) + svg.di.di-chevron-up,\n.overlay-close-button svg.di.di-chevron-down + span:not(.sr-only),\n.overlay-close-button svg.di.di-chevron-up + span:not(.sr-only),\n.overlay-close-button span:not(.sr-only) + svg.di.di-chevron-down,\n.overlay-close-button span:not(.sr-only) + svg.di.di-chevron-up {\n margin-left: 4px;\n}\n.shrink dso-icon[icon=chevron-left] + span:not(.sr-only),\n.shrink dso-icon[icon=chevron-right] + span:not(.sr-only),\n.shrink svg.di.di-angle-down + span:not(.sr-only),\n.shrink svg.di.di-angle-up + span:not(.sr-only),\n.shrink span:not(.sr-only) + svg.di.di-angle-down,\n.shrink span:not(.sr-only) + svg.di.di-angle-up,\n.shrink span:not(.sr-only) + dso-icon[icon=chevron-left],\n.shrink span:not(.sr-only) + dso-icon[icon=chevron-right],\n.expand dso-icon[icon=chevron-left] + span:not(.sr-only),\n.expand dso-icon[icon=chevron-right] + span:not(.sr-only),\n.expand svg.di.di-angle-down + span:not(.sr-only),\n.expand svg.di.di-angle-up + span:not(.sr-only),\n.expand span:not(.sr-only) + svg.di.di-angle-down,\n.expand span:not(.sr-only) + svg.di.di-angle-up,\n.expand span:not(.sr-only) + dso-icon[icon=chevron-left],\n.expand span:not(.sr-only) + dso-icon[icon=chevron-right],\n.overlay-close-button dso-icon[icon=chevron-left] + span:not(.sr-only),\n.overlay-close-button dso-icon[icon=chevron-right] + span:not(.sr-only),\n.overlay-close-button svg.di.di-angle-down + span:not(.sr-only),\n.overlay-close-button svg.di.di-angle-up + span:not(.sr-only),\n.overlay-close-button span:not(.sr-only) + svg.di.di-angle-down,\n.overlay-close-button span:not(.sr-only) + svg.di.di-angle-up,\n.overlay-close-button span:not(.sr-only) + dso-icon[icon=chevron-left],\n.overlay-close-button span:not(.sr-only) + dso-icon[icon=chevron-right] {\n margin-left: 0;\n}\n.shrink dso-icon,\n.shrink svg.di,\n.shrink span,\n.expand dso-icon,\n.expand svg.di,\n.expand span,\n.overlay-close-button dso-icon,\n.overlay-close-button svg.di,\n.overlay-close-button span {\n vertical-align: middle;\n}\n.shrink:hover,\n.expand:hover,\n.overlay-close-button:hover {\n cursor: pointer;\n}\n.shrink[disabled],\n.expand[disabled],\n.overlay-close-button[disabled] {\n display: none;\n}\n\n.overlay-close-button {\n position: absolute;\n top: 8px;\n right: 16px;\n}\n\n.dso-map-panel {\n background-color: #fff;\n box-shadow: 2px 0 8px 0 rgba(0, 0, 0, 0.4);\n flex-shrink: 0;\n flex-grow: 0;\n padding-right: 8px;\n position: relative;\n transition: flex-basis 200ms ease-in, max-width 200ms ease-in, min-width 200ms ease-in;\n z-index: 100;\n}\n.dso-map-panel .dso-filterblok-address {\n font-weight: bold;\n margin: 8px 0;\n}\n.dso-map-panel .main {\n height: 100%;\n overflow-y: scroll;\n padding: 8px 16px;\n}\n\n.sizing-buttons {\n left: calc(100% + 1px);\n overflow-x: hidden;\n padding: 0 4px 4px 0;\n position: absolute;\n top: 16px;\n transition: left 200ms ease-in;\n width: 44px;\n z-index: -1;\n}\n.sizing-buttons button {\n display: inline-block;\n font-size: 1em;\n font-weight: 500;\n margin-bottom: 0;\n text-decoration: none;\n touch-action: manipulation;\n text-align: left;\n user-select: none;\n vertical-align: middle;\n background-color: #fff;\n border-color: #39870c;\n color: #39870c;\n border-width: 1px;\n border-style: solid;\n border-radius: 4px;\n line-height: 1.5;\n min-width: 56px;\n padding: 11px 15px;\n border: 0;\n padding: 8px;\n border-radius: 0;\n border-bottom-right-radius: 4px;\n border-top-right-radius: 4px;\n box-shadow: 0 1px 4px 0 rgba(0, 0, 0, 0.4);\n flex: 0 0 100%;\n height: 40px;\n min-width: auto;\n width: 40px;\n}\n.sizing-buttons button:focus, .sizing-buttons button:focus-visible {\n outline-offset: 2px;\n}\n.sizing-buttons button:active {\n outline: 0;\n}\n.sizing-buttons button:hover {\n background-color: #39870c;\n border-color: #39870c;\n color: #fff;\n}\n.sizing-buttons button:active {\n background-color: #275937;\n border-color: #275937;\n color: #fff;\n}\n.sizing-buttons button[disabled], .sizing-buttons button[disabled]:hover {\n background-color: #fff;\n border-color: #afcf9d;\n color: #afcf9d;\n}\n.sizing-buttons button.btn-sm {\n line-height: 1rem;\n}\n.sizing-buttons button.btn-sm dso-icon,\n.sizing-buttons button.btn-sm svg.di, .sizing-buttons button.btn-sm.extern::after, .sizing-buttons button.btn-sm.download::after, .sizing-buttons button.btn-sm.dso-spinner::before {\n margin-bottom: -4px;\n margin-top: -4px;\n}\n.sizing-buttons button.btn-sm.dso-spinner-left::before {\n height: 16px;\n width: 16px;\n}\n.sizing-buttons button.btn-sm.dso-spinner-right::after {\n height: 16px;\n width: 16px;\n}\n.sizing-buttons button > span {\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n margin: -1px;\n overflow: hidden;\n clip: rect(0, 0, 0, 0);\n border: 0;\n}\n.sizing-buttons button.dso-spinner-left[disabled], .sizing-buttons button.dso-spinner-right[disabled] {\n background-color: #fff;\n border-color: #39870c;\n color: #39870c;\n}\n.sizing-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 height: 24px;\n vertical-align: top;\n width: 24px;\n margin-right: 8px;\n}\n.sizing-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 height: 24px;\n vertical-align: top;\n width: 24px;\n margin-right: 8px;\n}\n.sizing-buttons button.dso-spinner-left:not([disabled]).btn-sm:hover::before {\n height: 16px;\n width: 16px;\n}\n.sizing-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 height: 24px;\n vertical-align: top;\n width: 24px;\n margin-left: 8px;\n}\n.sizing-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 height: 24px;\n vertical-align: top;\n width: 24px;\n margin-left: 8px;\n}\n.sizing-buttons button.dso-spinner-right:not([disabled]).btn-sm:hover::after {\n height: 16px;\n width: 16px;\n}\n.sizing-buttons button:focus-visible {\n background-color: #39870c;\n border-color: #39870c;\n color: #fff;\n outline: none;\n}\n.sizing-buttons button:hover dso-icon {\n color: #fff;\n}\n\n.map {\n height: 100%;\n width: 100%;\n overflow: hidden;\n}\n\n#filterpanel,\n.overlay {\n background-color: #fff;\n height: 100%;\n overflow-y: auto;\n position: absolute;\n z-index: 101;\n}\n\n#filterpanel {\n box-shadow: 2px 0 5px #666;\n padding: 40px 16px 8px;\n left: 0;\n max-width: 896px;\n width: calc(100vw - 40px);\n}\n@media screen and (max-width: 768px) {\n #filterpanel {\n width: 100vw;\n }\n #filterpanel::before {\n display: none !important;\n }\n}\n#filterpanel::before {\n content: \"\";\n display: block;\n position: fixed;\n top: 0;\n bottom: 0;\n right: 0;\n left: 896px;\n background-color: rgba(0, 0, 0, 0.5);\n}\n@media screen and (max-width: 936px) {\n #filterpanel::before {\n left: auto;\n width: 40px;\n }\n}\n\n.overlay {\n box-shadow: -2px 0 5px #666;\n padding: 40px 16px 8px;\n right: 0;\n width: 624px;\n}\n@media screen and (max-width: 624px) {\n .overlay {\n width: 100vw;\n }\n}\n.overlay::before {\n content: \"\";\n display: block;\n position: fixed;\n top: 0;\n bottom: 0;\n left: 0;\n right: 624px;\n background-color: rgba(0, 0, 0, 0.5);\n}\n\n.filterpanel-buttons {\n text-align: right;\n}\n.filterpanel-buttons .cancel-button {\n display: inline-block;\n font-size: 1em;\n font-weight: 500;\n margin-bottom: 0;\n text-decoration: none;\n touch-action: manipulation;\n text-align: left;\n user-select: none;\n vertical-align: middle;\n background-color: #fff;\n border-color: #39870c;\n color: #39870c;\n border-width: 1px;\n border-style: solid;\n border-radius: 4px;\n line-height: 1.5;\n min-width: 56px;\n padding: 11px 15px;\n line-height: 1rem;\n}\n.filterpanel-buttons .cancel-button:focus, .filterpanel-buttons .cancel-button:focus-visible {\n outline-offset: 2px;\n}\n.filterpanel-buttons .cancel-button:active {\n outline: 0;\n}\n.filterpanel-buttons .cancel-button:hover {\n background-color: #39870c;\n border-color: #39870c;\n color: #fff;\n}\n.filterpanel-buttons .cancel-button:active {\n background-color: #275937;\n border-color: #275937;\n color: #fff;\n}\n.filterpanel-buttons .cancel-button[disabled], .filterpanel-buttons .cancel-button[disabled]:hover {\n background-color: #fff;\n border-color: #afcf9d;\n color: #afcf9d;\n}\n.filterpanel-buttons .cancel-button.btn-sm {\n line-height: 1rem;\n}\n.filterpanel-buttons .cancel-button.btn-sm dso-icon,\n.filterpanel-buttons .cancel-button.btn-sm svg.di, .filterpanel-buttons .cancel-button.btn-sm.extern::after, .filterpanel-buttons .cancel-button.btn-sm.download::after, .filterpanel-buttons .cancel-button.btn-sm.dso-spinner::before {\n margin-bottom: -4px;\n margin-top: -4px;\n}\n.filterpanel-buttons .cancel-button.btn-sm.dso-spinner-left::before {\n height: 16px;\n width: 16px;\n}\n.filterpanel-buttons .cancel-button.btn-sm.dso-spinner-right::after {\n height: 16px;\n width: 16px;\n}\n.filterpanel-buttons .cancel-button dso-icon,\n.filterpanel-buttons .cancel-button svg.di {\n margin-left: -8px;\n margin-right: 8px;\n}\n.filterpanel-buttons .cancel-button span + dso-icon,\n.filterpanel-buttons .cancel-button span + svg.di {\n margin-left: 8px;\n margin-right: -8px;\n}\n.filterpanel-buttons .cancel-button.dso-spinner-left[disabled], .filterpanel-buttons .cancel-button.dso-spinner-right[disabled] {\n background-color: #fff;\n border-color: #39870c;\n color: #39870c;\n}\n.filterpanel-buttons .cancel-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 height: 24px;\n vertical-align: top;\n width: 24px;\n margin-right: 8px;\n}\n.filterpanel-buttons .cancel-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 height: 24px;\n vertical-align: top;\n width: 24px;\n margin-right: 8px;\n}\n.filterpanel-buttons .cancel-button.dso-spinner-left:not([disabled]).btn-sm:hover::before {\n height: 16px;\n width: 16px;\n}\n.filterpanel-buttons .cancel-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 height: 24px;\n vertical-align: top;\n width: 24px;\n margin-left: 8px;\n}\n.filterpanel-buttons .cancel-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 height: 24px;\n vertical-align: top;\n width: 24px;\n margin-left: 8px;\n}\n.filterpanel-buttons .cancel-button.dso-spinner-right:not([disabled]).btn-sm:hover::after {\n height: 16px;\n width: 16px;\n}\n.filterpanel-buttons .cancel-button dso-icon,\n.filterpanel-buttons .cancel-button svg.di, .filterpanel-buttons .cancel-button.extern::after, .filterpanel-buttons .cancel-button.download::after, .filterpanel-buttons .cancel-button.dso-spinner::before {\n margin-bottom: -4px;\n margin-top: -4px;\n}\n.filterpanel-buttons .cancel-button.dso-spinner-left::before {\n height: 16px;\n width: 16px;\n}\n.filterpanel-buttons .cancel-button.dso-spinner-right::after {\n height: 16px;\n width: 16px;\n}\n.filterpanel-buttons .apply-button {\n display: inline-block;\n font-size: 1em;\n font-weight: 500;\n margin-bottom: 0;\n text-decoration: none;\n touch-action: manipulation;\n text-align: left;\n user-select: none;\n vertical-align: middle;\n background-color: #39870c;\n border-color: #39870c;\n color: #fff;\n border-width: 1px;\n border-style: solid;\n border-radius: 4px;\n line-height: 1.5;\n min-width: 56px;\n padding: 11px 15px;\n line-height: 1rem;\n}\n.filterpanel-buttons .apply-button:focus, .filterpanel-buttons .apply-button:focus-visible {\n outline-offset: 2px;\n}\n.filterpanel-buttons .apply-button:active {\n outline: 0;\n}\n.filterpanel-buttons .apply-button:hover {\n background-color: #275937;\n border-color: #275937;\n color: #fff;\n}\n.filterpanel-buttons .apply-button:active {\n background-color: #15301e;\n border-color: #15301e;\n color: #fff;\n}\n.filterpanel-buttons .apply-button[disabled], .filterpanel-buttons .apply-button[disabled]:hover {\n background-color: #afcf9d;\n border-color: #afcf9d;\n color: #fff;\n}\n.filterpanel-buttons .apply-button.btn-sm {\n line-height: 1rem;\n}\n.filterpanel-buttons .apply-button.btn-sm dso-icon,\n.filterpanel-buttons .apply-button.btn-sm svg.di, .filterpanel-buttons .apply-button.btn-sm.extern::after, .filterpanel-buttons .apply-button.btn-sm.download::after, .filterpanel-buttons .apply-button.btn-sm.dso-spinner::before {\n margin-bottom: -4px;\n margin-top: -4px;\n}\n.filterpanel-buttons .apply-button.btn-sm.dso-spinner-left::before {\n height: 16px;\n width: 16px;\n}\n.filterpanel-buttons .apply-button.btn-sm.dso-spinner-right::after {\n height: 16px;\n width: 16px;\n}\n.filterpanel-buttons .apply-button dso-icon,\n.filterpanel-buttons .apply-button svg.di {\n margin-left: -8px;\n margin-right: 8px;\n}\n.filterpanel-buttons .apply-button span + dso-icon,\n.filterpanel-buttons .apply-button span + svg.di {\n margin-left: 8px;\n margin-right: -8px;\n}\n.filterpanel-buttons .apply-button.dso-spinner-left[disabled], .filterpanel-buttons .apply-button.dso-spinner-right[disabled] {\n background-color: #39870c;\n border-color: #39870c;\n color: #fff;\n}\n.filterpanel-buttons .apply-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: %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 height: 24px;\n vertical-align: top;\n width: 24px;\n margin-right: 8px;\n}\n.filterpanel-buttons .apply-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: %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 height: 24px;\n vertical-align: top;\n width: 24px;\n margin-left: 8px;\n}\n.filterpanel-buttons .apply-button dso-icon,\n.filterpanel-buttons .apply-button svg.di, .filterpanel-buttons .apply-button.extern::after, .filterpanel-buttons .apply-button.download::after, .filterpanel-buttons .apply-button.dso-spinner::before {\n margin-bottom: -4px;\n margin-top: -4px;\n}\n.filterpanel-buttons .apply-button.dso-spinner-left::before {\n height: 16px;\n width: 16px;\n}\n.filterpanel-buttons .apply-button.dso-spinner-right::after {\n height: 16px;\n width: 16px;\n}\n.filterpanel-buttons .cancel-button + .apply-button {\n margin-left: 16px;\n}";export{a as dso_viewer_grid}
@@ -0,0 +1 @@
1
+ import{r as o,h as t}from"./p-42450cfe.js";let s=class{constructor(t){o(this,t)}render(){return t("span",{class:"dso-attachments"},this.count," ",t("span",{class:"sr-only"},"bijlage",1!==this.count?"n":""),t("dso-icon",{icon:"paperclip"}))}};s.style=":host{display:inline-block}*,*::after,*::before{box-sizing:border-box}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);border:0}.dso-attachments{color:var(--dso-attachments-counter-color, #666);display:inline-block;font-weight:400;text-decoration:none;white-space:nowrap}";export{s as dso_attachments_counter}
@@ -1 +1 @@
1
- import{r as t,c as s,h as i,F as e,g as h}from"./p-c62606a3.js";import{d as o}from"./p-1805f5b0.js";import{v as a}from"./p-19b890a3.js";let n=class{constructor(i){t(this,i),this.dsoSelect=s(this,"dsoSelect",7),this.dsoChange=s(this,"dsoChange",7),this.dsoSearch=s(this,"dsoSearch",7),this.suggestions=null,this.loading=!1,this.loadingLabel="Een moment geduld.",this.suggestOnFocus=!1,this.showSuggestions=!1,this.notFound=!1,this.showLoading=!1,this.listboxId=a(),this.inputId=a(),this.labelId=a(),this.debouncedEmitValue=o((t=>{this.dsoChange.emit(t),this.debouncedShowLoading()}),200),this.debouncedShowLoading=o((()=>{this.inputValue&&(this.showLoading=!0)}),this.loadingDelayed),this.inputValue="",this.onInput=t=>{if(!(t.target instanceof HTMLInputElement))throw new Error("event.target is not instanceof HTMLInputElement");this.showLoading=!this.loadingDelayed,this.inputValue=t.target.value,this.debouncedEmitValue(t.target.value.match(/(\S+)/g)?t.target.value:"")},this.onFocusIn=()=>{this.suggestOnFocus&&this.openSuggestions()},this.onKeyDown=t=>{if(!t.defaultPrevented&&!this.loading){switch(t.key){case"ArrowDown":this.showSuggestions?this.selectNextSuggestion():this.openSuggestions("first");break;case"ArrowUp":this.showSuggestions?this.selectPreviousSuggestion():this.openSuggestions("last");break;case"Tab":return void this.closeSuggestions();case"Escape":this.closeSuggestions();break;case"Enter":this.pickSelectedValue();break;default:return}t.preventDefault()}}}suggestionsWatcher(){this.resetSelectedSuggestion(),this.showSuggestions&&this.notFound||!this.inputValue?!this.showSuggestions&&!this.notFound||this.inputValue||this.closeSuggestions():this.openSuggestions()}onDocumentClick(t){(this.showSuggestions||this.notFound)&&this.listbox&&t.target instanceof Node&&!this.listbox.contains(t.target)&&this.input!=t.target&&this.closeSuggestions()}connectedCallback(){const t=this.host.querySelector('input[type="text"]');if(!(t instanceof HTMLInputElement))throw new ReferenceError("Mandatory text input not found");if(this.input=t,t.id?this.inputId=t.id:t.id=this.inputId,!this.input.labels||this.input.labels.length<1)throw new ReferenceError("Mandatory label for text input not found");const s=this.input.labels[0];s.id?this.labelId=s.id:s.id=this.labelId,this.input.setAttribute("role","combobox"),this.input.setAttribute("aria-haspopup","listbox"),this.input.setAttribute("aria-controls",this.listboxId),this.input.setAttribute("aria-expanded","false"),this.input.setAttribute("autocomplete","off"),this.input.setAttribute("aria-autocomplete","list"),this.input.setAttribute("aria-activedescendant",""),this.input.addEventListener("input",this.onInput),this.input.addEventListener("keydown",this.onKeyDown),this.input.addEventListener("focusin",this.onFocusIn)}disconnectedCallback(){this.input.removeEventListener("input",this.onInput),this.input.removeEventListener("keydown",this.onKeyDown),this.input.removeEventListener("focusin",this.onFocusIn)}markTerms(t,s){if(!t||!s||0===s.length)return[""];const e=new RegExp(`(${function(t){if("string"!=typeof t)throw new TypeError("Expected a string");return t.replace(/[|\\{}()[\]^$+*?.]/g,"\\$&").replace(/-/g,"\\x2d")}(s[0])})`,"gi");return t.split(e).map((t=>t?e.test(t)?i("mark",null,t):1===s.length?i("span",null,t):this.markTerms(t,s.slice(1)):""))}selectSuggestion(t){this.selectedSuggestion=t,this.input.setAttribute("aria-activedescendant",this.listboxItemId(t))}selectFirstSuggestion(){this.suggestions&&(this.selectedSuggestion=this.suggestions[0],this.selectedSuggestion&&this.input.setAttribute("aria-activedescendant",this.listboxItemId(this.selectedSuggestion)))}selectLastSuggestion(){this.suggestions&&(this.selectedSuggestion=this.suggestions[this.suggestions.length-1],this.selectedSuggestion&&this.input.setAttribute("aria-activedescendant",this.listboxItemId(this.selectedSuggestion)))}selectNextSuggestion(){var t;if(!this.suggestions)return;const s=this.selectedSuggestion?this.suggestions.indexOf(this.selectedSuggestion):-1;this.selectedSuggestion=null!==(t=this.suggestions[s+1])&&void 0!==t?t:this.suggestions[0],this.selectedSuggestion&&this.input.setAttribute("aria-activedescendant",this.listboxItemId(this.selectedSuggestion))}selectPreviousSuggestion(){var t;if(!this.suggestions)return;const s=this.selectedSuggestion?this.suggestions.indexOf(this.selectedSuggestion):0;this.selectedSuggestion=null!==(t=this.suggestions[s-1])&&void 0!==t?t:this.suggestions[this.suggestions.length-1],this.selectedSuggestion&&this.input.setAttribute("aria-activedescendant",this.listboxItemId(this.selectedSuggestion))}resetSelectedSuggestion(){this.showLoading=!this.loadingDelayed,this.notFound=!1,this.selectedSuggestion=void 0,this.input.setAttribute("aria-activedescendant","")}openSuggestions(t){var s,i,e;this.showSuggestions=null!==(s=this.suggestions&&this.suggestions.length>0)&&void 0!==s&&s,this.notFound=null!==(e=0===(null===(i=this.suggestions)||void 0===i?void 0:i.length))&&void 0!==e&&e,this.input.setAttribute("aria-expanded",(this.showSuggestions||this.notFound).toString()),this.showSuggestions&&"first"===t?this.selectFirstSuggestion():this.showSuggestions&&"last"===t&&this.selectLastSuggestion()}closeSuggestions(){this.showSuggestions=!1,this.notFound=!1,this.input.setAttribute("aria-expanded","false"),this.selectFirstSuggestion()}pickSelectedValue(){this.selectedSuggestion&&this.showSuggestions?this.dsoSelect.emit(this.selectedSuggestion):this.dsoSearch.emit(this.input.value),this.closeSuggestions()}listboxItemId(t){return this.suggestions?`${this.inputId}-${this.suggestions.indexOf(t)+1}`:""}render(){const t=this.input.value.split(" ").filter((t=>t));return i(e,null,i("slot",null),this.loading&&this.showLoading?i("div",{class:"autosuggest-progress-box"},i("dso-progress-indicator",{label:this.loadingLabel})):i("ul",{role:"listbox",id:this.listboxId,"aria-labelledby":this.labelId,ref:t=>this.listbox=t,hidden:!this.showSuggestions&&!this.notFound},this.showSuggestions&&this.suggestions?this.suggestions.map((s=>i("li",{role:"option",id:this.listboxItemId(s),key:s.value,onMouseEnter:()=>this.selectSuggestion(s),onMouseLeave:()=>this.resetSelectedSuggestion(),onClick:()=>this.pickSelectedValue(),"aria-selected":(s===this.selectedSuggestion).toString(),"aria-label":s.value},i("span",{class:"value"},this.markTerms(s.value,t)),s.type?i("span",{class:"type"},s.type):void 0))):this.notFound?i("li",null,i("span",{class:"value"},this.notFoundLabel?i("span",null,this.notFoundLabel):this.markTerms(`${this.inputValue} is niet gevonden.`,t))):void 0))}get host(){return h(this)}static get watchers(){return{suggestions:["suggestionsWatcher"]}}};n.style=".sc-dso-autosuggest-h{display:block;position:relative}ul.sc-dso-autosuggest,.autosuggest-progress-box.sc-dso-autosuggest{background-clip:padding-box;background-color:#fff;border:1px solid rgba(0, 0, 0, 0.15);border-radius:4px;box-shadow:0 6px 12px rgba(0, 0, 0, 0.175);list-style-type:none;margin-top:2px;padding:4px 0;position:absolute;left:0;right:0;top:100%;z-index:200}.autosuggest-progress-box.sc-dso-autosuggest{padding:12px 8px}ul.sc-dso-autosuggest{padding:8px 0}ul.sc-dso-autosuggest li.sc-dso-autosuggest{display:flex;justify-content:space-between;padding:4px 16px}li[aria-selected=true].sc-dso-autosuggest{cursor:pointer;background-color:#39870c}li[aria-selected=true].sc-dso-autosuggest,li[aria-selected=true].sc-dso-autosuggest .type.sc-dso-autosuggest{color:#fff}mark.sc-dso-autosuggest{font-weight:700;background-color:inherit;color:inherit;padding:0}.type.sc-dso-autosuggest{color:#666}";export{n as dso_autosuggest}
1
+ import{r as t,c as s,h as i,F as e,a as h}from"./p-42450cfe.js";import{d as o}from"./p-1805f5b0.js";import{v as a}from"./p-19b890a3.js";let n=class{constructor(i){t(this,i),this.dsoSelect=s(this,"dsoSelect",7),this.dsoChange=s(this,"dsoChange",7),this.dsoSearch=s(this,"dsoSearch",7),this.suggestions=null,this.loading=!1,this.loadingLabel="Een moment geduld.",this.suggestOnFocus=!1,this.showSuggestions=!1,this.notFound=!1,this.showLoading=!1,this.listboxId=a(),this.inputId=a(),this.labelId=a(),this.debouncedEmitValue=o((t=>{this.dsoChange.emit(t),this.debouncedShowLoading()}),200),this.debouncedShowLoading=o((()=>{this.inputValue&&(this.showLoading=!0)}),this.loadingDelayed),this.inputValue="",this.onInput=t=>{if(!(t.target instanceof HTMLInputElement))throw new Error("event.target is not instanceof HTMLInputElement");this.showLoading=!this.loadingDelayed,this.inputValue=t.target.value,this.debouncedEmitValue(t.target.value.match(/(\S+)/g)?t.target.value:"")},this.onFocusIn=()=>{this.suggestOnFocus&&this.openSuggestions()},this.onKeyDown=t=>{if(!t.defaultPrevented&&!this.loading){switch(t.key){case"ArrowDown":this.showSuggestions?this.selectNextSuggestion():this.openSuggestions("first");break;case"ArrowUp":this.showSuggestions?this.selectPreviousSuggestion():this.openSuggestions("last");break;case"Tab":return void this.closeSuggestions();case"Escape":this.closeSuggestions();break;case"Enter":this.pickSelectedValue();break;default:return}t.preventDefault()}}}suggestionsWatcher(){this.resetSelectedSuggestion(),this.showSuggestions&&this.notFound||!this.inputValue?!this.showSuggestions&&!this.notFound||this.inputValue||this.closeSuggestions():this.openSuggestions()}onDocumentClick(t){(this.showSuggestions||this.notFound)&&this.listbox&&t.target instanceof Node&&!this.listbox.contains(t.target)&&this.input!=t.target&&this.closeSuggestions()}connectedCallback(){const t=this.host.querySelector('input[type="text"]');if(!(t instanceof HTMLInputElement))throw new ReferenceError("Mandatory text input not found");if(this.input=t,t.id?this.inputId=t.id:t.id=this.inputId,!this.input.labels||this.input.labels.length<1)throw new ReferenceError("Mandatory label for text input not found");const s=this.input.labels[0];s.id?this.labelId=s.id:s.id=this.labelId,this.input.setAttribute("role","combobox"),this.input.setAttribute("aria-haspopup","listbox"),this.input.setAttribute("aria-controls",this.listboxId),this.input.setAttribute("aria-expanded","false"),this.input.setAttribute("autocomplete","off"),this.input.setAttribute("aria-autocomplete","list"),this.input.setAttribute("aria-activedescendant",""),this.input.addEventListener("input",this.onInput),this.input.addEventListener("keydown",this.onKeyDown),this.input.addEventListener("focusin",this.onFocusIn)}disconnectedCallback(){this.input.removeEventListener("input",this.onInput),this.input.removeEventListener("keydown",this.onKeyDown),this.input.removeEventListener("focusin",this.onFocusIn)}markTerms(t,s){if(!t||!s||0===s.length)return[""];const e=new RegExp(`(${function(t){if("string"!=typeof t)throw new TypeError("Expected a string");return t.replace(/[|\\{}()[\]^$+*?.]/g,"\\$&").replace(/-/g,"\\x2d")}(s[0])})`,"gi");return t.split(e).map((t=>t?e.test(t)?i("mark",null,t):1===s.length?i("span",null,t):this.markTerms(t,s.slice(1)):""))}selectSuggestion(t){this.selectedSuggestion=t,this.input.setAttribute("aria-activedescendant",this.listboxItemId(t))}selectFirstSuggestion(){this.suggestions&&(this.selectedSuggestion=this.suggestions[0],this.selectedSuggestion&&this.input.setAttribute("aria-activedescendant",this.listboxItemId(this.selectedSuggestion)))}selectLastSuggestion(){this.suggestions&&(this.selectedSuggestion=this.suggestions[this.suggestions.length-1],this.selectedSuggestion&&this.input.setAttribute("aria-activedescendant",this.listboxItemId(this.selectedSuggestion)))}selectNextSuggestion(){var t;if(!this.suggestions)return;const s=this.selectedSuggestion?this.suggestions.indexOf(this.selectedSuggestion):-1;this.selectedSuggestion=null!==(t=this.suggestions[s+1])&&void 0!==t?t:this.suggestions[0],this.selectedSuggestion&&this.input.setAttribute("aria-activedescendant",this.listboxItemId(this.selectedSuggestion))}selectPreviousSuggestion(){var t;if(!this.suggestions)return;const s=this.selectedSuggestion?this.suggestions.indexOf(this.selectedSuggestion):0;this.selectedSuggestion=null!==(t=this.suggestions[s-1])&&void 0!==t?t:this.suggestions[this.suggestions.length-1],this.selectedSuggestion&&this.input.setAttribute("aria-activedescendant",this.listboxItemId(this.selectedSuggestion))}resetSelectedSuggestion(){this.showLoading=!this.loadingDelayed,this.notFound=!1,this.selectedSuggestion=void 0,this.input.setAttribute("aria-activedescendant","")}openSuggestions(t){var s,i,e;this.showSuggestions=null!==(s=this.suggestions&&this.suggestions.length>0)&&void 0!==s&&s,this.notFound=null!==(e=0===(null===(i=this.suggestions)||void 0===i?void 0:i.length))&&void 0!==e&&e,this.input.setAttribute("aria-expanded",(this.showSuggestions||this.notFound).toString()),this.showSuggestions&&"first"===t?this.selectFirstSuggestion():this.showSuggestions&&"last"===t&&this.selectLastSuggestion()}closeSuggestions(){this.showSuggestions=!1,this.notFound=!1,this.input.setAttribute("aria-expanded","false"),this.selectFirstSuggestion()}pickSelectedValue(){this.selectedSuggestion&&this.showSuggestions?this.dsoSelect.emit(this.selectedSuggestion):this.dsoSearch.emit(this.input.value),this.closeSuggestions()}listboxItemId(t){return this.suggestions?`${this.inputId}-${this.suggestions.indexOf(t)+1}`:""}render(){const t=this.input.value.split(" ").filter((t=>t));return i(e,null,i("slot",null),this.loading&&this.showLoading?i("div",{class:"autosuggest-progress-box"},i("dso-progress-indicator",{label:this.loadingLabel})):i("ul",{role:"listbox",id:this.listboxId,"aria-labelledby":this.labelId,ref:t=>this.listbox=t,hidden:!this.showSuggestions&&!this.notFound},this.showSuggestions&&this.suggestions?this.suggestions.map((s=>i("li",{role:"option",id:this.listboxItemId(s),key:s.value,onMouseEnter:()=>this.selectSuggestion(s),onMouseLeave:()=>this.resetSelectedSuggestion(),onClick:()=>this.pickSelectedValue(),"aria-selected":(s===this.selectedSuggestion).toString(),"aria-label":s.value},i("span",{class:"value"},this.markTerms(s.value,t)),s.type?i("span",{class:"type"},s.type):void 0))):this.notFound?i("li",null,i("span",{class:"value"},this.notFoundLabel?i("span",null,this.notFoundLabel):this.markTerms(`${this.inputValue} is niet gevonden.`,t))):void 0))}get host(){return h(this)}static get watchers(){return{suggestions:["suggestionsWatcher"]}}};n.style=".sc-dso-autosuggest-h{display:block;position:relative}ul.sc-dso-autosuggest,.autosuggest-progress-box.sc-dso-autosuggest{background-clip:padding-box;background-color:#fff;border:1px solid rgba(0, 0, 0, 0.15);border-radius:4px;box-shadow:0 6px 12px rgba(0, 0, 0, 0.175);list-style-type:none;margin-top:2px;padding:4px 0;position:absolute;left:0;right:0;top:100%;z-index:200}.autosuggest-progress-box.sc-dso-autosuggest{padding:12px 8px}ul.sc-dso-autosuggest{padding:8px 0}ul.sc-dso-autosuggest li.sc-dso-autosuggest{display:flex;justify-content:space-between;padding:4px 16px}li[aria-selected=true].sc-dso-autosuggest{cursor:pointer;background-color:#39870c}li[aria-selected=true].sc-dso-autosuggest,li[aria-selected=true].sc-dso-autosuggest .type.sc-dso-autosuggest{color:#fff}mark.sc-dso-autosuggest{font-weight:700;background-color:inherit;color:inherit;padding:0}.type.sc-dso-autosuggest{color:#666}";export{n as dso_autosuggest}
@@ -0,0 +1 @@
1
+ import{r as n,h as t,F as o}from"./p-42450cfe.js";import{c as e}from"./p-22c35db5.js";import"./p-f8b023c4.js";let r=class{constructor(t){n(this,t),this.iframeLoaded=!1,this.label="Hulp nodig",this.visibility="hidden",this.isOpen="close",this.slideState="close",this.loadIframe=!1,this.openClick=()=>{this.visibility="visible",this.slideState="open",setTimeout((()=>{this.isOpen="open"})),this.loadIframe||setTimeout((()=>{this.loadIframe=!0}),500)},this.closeClick=()=>{this.isOpen="close",this.slideState="close",setTimeout((()=>{this.visibility="hidden"}),500)}}watchUrl(n){"open"===this.isOpen&&this.iframeUrl!==n&&(this.iframeUrl=n)}watchIsOpen(n){const t=document.querySelector("body");"open"===n?(null==t||t.style.setProperty("overflow","hidden"),this.iframeUrl!==this.url&&(this.iframeUrl=this.url)):null==t||t.style.removeProperty("overflow")}keyDownListener(n){"Escape"===n.key&&"open"===this.isOpen&&this.closeClick()}createTrap(){var n,t;this.panelWrapperElement&&(this.trap=e(this.panelWrapperElement,{allowOutsideClick:!0,tabbableOptions:{getShadowRoot:!0},setReturnFocus:null!==(n=this.openButtonElement)&&void 0!==n&&n,initialFocus:null!==(t=this.closeButtonElement)&&void 0!==t&&t}).activate())}componentDidRender(){var n;"open"===this.isOpen&&this.iframeLoaded&&!this.trap?this.createTrap():"close"===this.isOpen&&this.trap&&(null===(n=this.trap)||void 0===n||n.deactivate(),delete this.trap)}render(){return t(o,null,t("button",{type:"button",onClick:this.openClick,class:`open-button ${this.isOpen}`,"aria-expanded":"open"===this.isOpen?"true":"false","aria-haspopup":"dialog","aria-controls":"dso-panel-wrapper",ref:n=>this.openButtonElement=n},t("dso-icon",{icon:"help"}),t("span",null,this.label)),t("div",{id:"dso-panel-wrapper",class:`wrapper ${this.visibility}`,ref:n=>this.panelWrapperElement=n},t("div",{class:"dimscreen",onClick:this.closeClick}),t("div",{class:`iframe-container ${this.slideState}`,"aria-live":"polite"},this.loadIframe?t("iframe",{src:this.iframeUrl,tabindex:"0",onLoad:()=>{this.createTrap(),this.iframeLoaded=!0}}):t("div",null)),t("button",{type:"button",class:`close-button ${this.isOpen}`,onClick:this.closeClick,"aria-expanded":"open"===this.isOpen?"true":"false","aria-controls":"dso-panel-wrapper",ref:n=>this.closeButtonElement=n},t("dso-icon",{icon:"times"}),t("span",{class:"sr-only"},"sluiten"))))}static get watchers(){return{url:["watchUrl"],isOpen:["watchIsOpen"]}}};r.style=":host {\n display: block;\n}\n\n.sr-only {\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n margin: -1px;\n overflow: hidden;\n clip: rect(0, 0, 0, 0);\n border: 0;\n}\n\n.wrapper {\n height: 100%;\n left: 0;\n position: fixed;\n top: 0;\n visibility: hidden;\n width: 100%;\n}\n.wrapper.visible {\n visibility: visible;\n}\n\n.dimscreen {\n background-color: #000;\n height: 100%;\n opacity: 0.4;\n width: 100%;\n}\n\n.open-button {\n display: inline-block;\n font-size: 1em;\n font-weight: 500;\n margin-bottom: 0;\n text-decoration: none;\n touch-action: manipulation;\n text-align: left;\n user-select: none;\n vertical-align: middle;\n background-color: #39870c;\n border-color: #39870c;\n color: #fff;\n border-width: 1px;\n border-style: solid;\n border-radius: 4px;\n line-height: 1.5;\n min-width: 56px;\n padding: 11px 15px;\n border: 0;\n bottom: 16px;\n font-family: Asap, sans-serif;\n position: fixed;\n right: 16px;\n box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2);\n}\n.open-button:focus, .open-button:focus-visible {\n outline-offset: 2px;\n}\n.open-button:active {\n outline: 0;\n}\n.open-button:hover {\n background-color: #275937;\n border-color: #275937;\n color: #fff;\n}\n.open-button:active {\n background-color: #15301e;\n border-color: #15301e;\n color: #fff;\n}\n.open-button[disabled], .open-button[disabled]:hover {\n background-color: #afcf9d;\n border-color: #afcf9d;\n color: #fff;\n}\n.open-button.btn-sm {\n line-height: 1rem;\n}\n.open-button.btn-sm dso-icon,\n.open-button.btn-sm svg.di, .open-button.btn-sm.extern::after, .open-button.btn-sm.download::after, .open-button.btn-sm.dso-spinner::before {\n margin-bottom: -4px;\n margin-top: -4px;\n}\n.open-button.btn-sm.dso-spinner-left::before {\n height: 16px;\n width: 16px;\n}\n.open-button.btn-sm.dso-spinner-right::after {\n height: 16px;\n width: 16px;\n}\n.open-button dso-icon,\n.open-button svg.di {\n margin-left: -8px;\n margin-right: 8px;\n}\n.open-button span + dso-icon,\n.open-button span + svg.di {\n margin-left: 8px;\n margin-right: -8px;\n}\n.open-button.dso-spinner-left[disabled], .open-button.dso-spinner-right[disabled] {\n background-color: #39870c;\n border-color: #39870c;\n color: #fff;\n}\n.open-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: %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 height: 24px;\n vertical-align: top;\n width: 24px;\n margin-right: 8px;\n}\n.open-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: %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 height: 24px;\n vertical-align: top;\n width: 24px;\n margin-left: 8px;\n}\n.open-button:hover {\n cursor: pointer;\n}\n.open-button.open {\n display: none;\n}\n\n.close-button {\n display: inline-block;\n font-size: 1em;\n font-weight: 500;\n margin-bottom: 0;\n text-decoration: none;\n touch-action: manipulation;\n text-align: left;\n user-select: none;\n vertical-align: middle;\n background-color: #fff;\n border-color: #39870c;\n color: #39870c;\n border-width: 1px;\n border-style: solid;\n border-radius: 4px;\n line-height: 1.5;\n min-width: 56px;\n padding: 11px 15px;\n border-right: 0;\n border-top: 0;\n border-radius: 0 0 0 8px;\n height: 40px;\n min-width: 40px;\n padding: 0;\n position: fixed;\n right: 0;\n width: 40px;\n top: 0;\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:hover {\n background-color: #39870c;\n border-color: #39870c;\n color: #fff;\n}\n.close-button:active {\n background-color: #275937;\n border-color: #275937;\n color: #fff;\n}\n.close-button[disabled], .close-button[disabled]:hover {\n background-color: #fff;\n border-color: #afcf9d;\n color: #afcf9d;\n}\n.close-button.btn-sm {\n line-height: 1rem;\n}\n.close-button.btn-sm dso-icon,\n.close-button.btn-sm svg.di, .close-button.btn-sm.extern::after, .close-button.btn-sm.download::after, .close-button.btn-sm.dso-spinner::before {\n margin-bottom: -4px;\n margin-top: -4px;\n}\n.close-button.btn-sm.dso-spinner-left::before {\n height: 16px;\n width: 16px;\n}\n.close-button.btn-sm.dso-spinner-right::after {\n height: 16px;\n width: 16px;\n}\n.close-button dso-icon,\n.close-button svg.di {\n margin-left: -8px;\n margin-right: 8px;\n}\n.close-button span + dso-icon,\n.close-button span + svg.di {\n margin-left: 8px;\n margin-right: -8px;\n}\n.close-button.dso-spinner-left[disabled], .close-button.dso-spinner-right[disabled] {\n background-color: #fff;\n border-color: #39870c;\n color: #39870c;\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 height: 24px;\n vertical-align: top;\n width: 24px;\n margin-right: 8px;\n}\n.close-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 height: 24px;\n vertical-align: top;\n width: 24px;\n margin-right: 8px;\n}\n.close-button.dso-spinner-left:not([disabled]).btn-sm:hover::before {\n height: 16px;\n width: 16px;\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 height: 24px;\n vertical-align: top;\n width: 24px;\n margin-left: 8px;\n}\n.close-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 height: 24px;\n vertical-align: top;\n width: 24px;\n margin-left: 8px;\n}\n.close-button.dso-spinner-right:not([disabled]).btn-sm:hover::after {\n height: 16px;\n width: 16px;\n}\n.close-button dso-icon {\n margin-left: 0;\n margin-right: 0;\n position: absolute;\n left: 50%;\n top: 50%;\n transform: translate(-50%, -50%);\n}\n.close-button:hover, .close-button:active, .close-button:focus {\n cursor: pointer;\n}\n.close-button.close {\n display: none;\n}\n\n.iframe-container {\n background-color: #fff;\n border: 0;\n border-left: 1px solid #ccc;\n box-shadow: 0 2px 8px 0 rgba(0, 0, 0, 0.4);\n height: 100%;\n position: absolute;\n right: -640px;\n top: 0;\n transition: right 0.5s;\n width: 640px;\n}\n.iframe-container.open {\n right: 0;\n}\n\niframe {\n border: 0;\n height: 100%;\n width: 100%;\n}";export{r as dso_helpcenter_panel}
@@ -0,0 +1 @@
1
+ import{h as n,F as o,r as t,c as e,H as s,a as c}from"./p-42450cfe.js";import{i as r}from"./p-f8b023c4.js";function i(n){return n instanceof Element?n.localName:n.nodeName.includes(":")?n.nodeName.substring(n.nodeName.indexOf(":")+1):n.nodeName}class d{constructor(){this.name="Al"}render(o,{mapNodeToJsx:t,path:e}){const s=e.some((n=>{const o=i(n);return"Al"===o||"Opschrift"===o})),c=t(o.childNodes);return s?n("span",{role:"paragraph"},c):n("p",null,c)}}class l{constructor(){this.name="#document"}render(t,{mapNodeToJsx:e}){return n(o,null,e(t.childNodes))}}class a{constructor(){this.name=["ExtRef","ExtIoRef"]}render(o,{mapNodeToJsx:t}){const e=o.getAttribute("ExtIoRef"===o.tagName?"href":"ref");return n("a",{target:"_blank",rel:"noopener noreferrer",href:null!=e?e:void 0},n("span",{class:"sr-only"},"opent in nieuw venster"),t(o.childNodes))}}const u=({bijschrift:o,bron:t,mapNodeToJsx:e})=>n("span",{class:"figuur-bijschrift"},o&&o.inhoud&&e(o.inhoud),t&&`${o?" ":""}(bron: ${e(t)})`);class h{constructor(){this.name=["Figuur"]}setImageDimensions(n,o){const{naturalHeight:t,naturalWidth:e}=n;n.height=t*(o/100),n.width=e*(o/100)}onImageLoad(n,o){n.target instanceof HTMLImageElement&&o&&this.setImageDimensions(n.target,o)}render(o,{mapNodeToJsx:t}){var e,s,c,r,d,l,a;const h=Array.from(o.childNodes),g=null===(e=h.find((n=>"Titel"===i(n))))||void 0===e?void 0:e.textContent,p=null===(s=h.find((n=>"Bron"===i(n))))||void 0===s?void 0:s.childNodes,f=h.find((n=>"Illustratie"===i(n))),m=h.find((n=>"Bijschrift"===i(n)));if(f instanceof Element){const o={naam:f.getAttribute("naam"),breedte:f.getAttribute("breedte"),hoogte:f.getAttribute("hoogte"),uitlijning:f.getAttribute("uitlijning"),alt:f.getAttribute("alt"),schaal:f.getAttribute("schaal")},e=m instanceof Element?{inhoud:m.childNodes,locatie:null!==(c=m.getAttribute("locatie"))&&void 0!==c?c:"onder"}:void 0;return n("div",{class:"dso-ozon-figuur "+(e?`bijschrift-${e.locatie}`:"onder")},g&&n("span",{class:"figuur-titel"},g),"boven"===(null==e?void 0:e.locatie)&&n(u,{bijschrift:e,bron:p,mapNodeToJsx:t}),n("dso-image-overlay",null,n("div",{slot:"titel"},n("span",null,g)),n("img",{src:null!==(r=o.naam)&&void 0!==r?r:void 0,alt:null!==(a=null!==(l=null!==(d=o.alt)&&void 0!==d?d:g)&&void 0!==l?l:o.naam)&&void 0!==a?a:void 0,onLoad:n=>this.onImageLoad(n,Number(o.schaal))}),n("div",{slot:"bijschrift"},n(u,{bijschrift:e,bron:p,mapNodeToJsx:t}))),("onder"===(null==e?void 0:e.locatie)||!e&&p)&&n(u,{bijschrift:e,bron:p,mapNodeToJsx:t}))}}}class g{constructor(){this.name=["Inhoud","ContainerBlocksType","BlockMixedcontentMetMaximaleInlinesMarkersPopupsType"]}render(o,{mapNodeToJsx:t}){return n("div",{class:"dso-rich-content"},t(o.childNodes))}}class p{constructor(){this.name=["InlineTekstAfbeelding","Illustratie"]}render(o){var t,e,s,c;return n("img",{src:null!==(t=o.getAttribute("naam"))&&void 0!==t?t:void 0,alt:null!==(e=o.getAttribute("naam"))&&void 0!==e?e:void 0,height:null!==(s=o.getAttribute("hoogte"))&&void 0!==s?s:void 0,width:null!==(c=o.getAttribute("breedte"))&&void 0!==c?c:void 0})}}class f{constructor(){this.name="Opschrift"}render(t,{mapNodeToJsx:e}){return n(o,null,e(t.childNodes))}}class m{constructor(){this.name=["sub","sup","strong","b","u","i","br"]}render(o,{mapNodeToJsx:t}){return"br"===o.localName?n("br",null):n(o.localName,null,t(o.childNodes))}}class v{constructor(){this.name="IntIoRef"}render(o,{mapNodeToJsx:t,emitAnchorClick:e}){const s=o.getAttribute("ref");return s?n("a",{href:`#${s}`,onClick:n=>{n.preventDefault();const o=n.currentTarget;if(!(o instanceof HTMLAnchorElement))return;const{href:t}=o;e({node:this.name,href:t,documentComponent:s,originalEvent:n})}},t(o.childNodes)):t(o.childNodes)}}class b{constructor(){this.name="IntRef"}render(o,{mapNodeToJsx:t,emitAnchorClick:e}){const s=o.getAttribute("ref");return s?n("a",{href:`#${s}`,onClick:n=>{n.preventDefault();const o=n.currentTarget;if(!(o instanceof HTMLAnchorElement))return;const{href:t}=o;e({node:this.name,href:t,documentComponent:s,originalEvent:n})}},t(o.childNodes)):t(o.childNodes)}}class z{constructor(){this.name="Noot",this.handles=["NootNummer"]}identify(){return"Noot"}render(t,{mapNodeToJsx:e,state:s,setState:c}){var r,d;const l=t.getAttribute("id");if(!l)return console.error("Noot node without id",t),n(o,null);const a=`dso-ozon-note-${l}`,u=null!==(d=null===(r=Array.from(t.childNodes).find((n=>"NootNummer"===i(n))))||void 0===r?void 0:r.textContent)&&void 0!==d?d:l;return n(o,null,n("sup",null,n("button",{type:"button",class:"toggle-note",id:a,onClick:()=>null==c?void 0:c(s===l?void 0:l),onBlur:()=>null==c?void 0:c(void 0),"aria-expanded":s===l?"true":"false"},u)),n("dso-tooltip",{active:s===l,for:a,stateless:!0,descriptive:!0},n("span",{role:"section"},e(Array.from(t.querySelectorAll(":scope > Al"))))))}}function x(n,o){const t=Array.from(o),e=function(n){return n.reduce(((n,o)=>{var t,e;const s=null!==(e=null===(t=o.getAttribute("colwidth"))||void 0===t?void 0:t.replace(/[^0-9]/,""))&&void 0!==e?e:"",c=parseInt(s,10);return n+(isNaN(c)?0:c)}),0)}(t);return{totalWidth:e,count:n,columns:t.map(((n,o)=>{var t;const s=n.getAttribute("colnum");return{name:null!==(t=n.getAttribute("colname"))&&void 0!==t?t:"",number:s?parseInt(s,10):o+1,width:w(e,n)}}))}}function w(n,o){const t=o.getAttribute("colwidth");if(t){if("*"===t)return"100%";if(t.includes("*")||t.match(/^[\d+]$/)){const o=parseInt(t.replace(/[^0-9]/,""),10);return`${Math.round(o/n*100)}%`}return t}}const y=({colspecs:t})=>t.columns.length>0?n("colgroup",null,t.columns.map((o=>n("col",{style:{width:o.width}})))):n(o,null);function k({columns:n},o,t){const e=n.find((n=>n.name===o)),s=n.find((n=>n.name===t));if(!e||!s)return;const c=s.number-e.number+1;return 1===c?void 0:c}const N=({context:{mapNodeToJsx:o},colspecs:t,cell:e})=>{const{moreRows:s,nameStart:c,nameEnd:r}=function(n){return{moreRows:n.getAttribute("morerows"),nameStart:n.getAttribute("namest"),nameEnd:n.getAttribute("nameend")}}(e),i={rowSpan:s?parseInt(s,10)+1:void 0,colSpan:t&&c&&r?k(t,c,r):void 0};return n("td",Object.assign({},i),o(e.childNodes))},T=({context:t,colspecs:e,rows:s})=>n(o,null,s.map((o=>n("tr",null,Array.from(o.children).map((o=>n(N,{cell:o,colspecs:e,context:t})))))));class E{constructor(){this.name="table",this.handles=["title","tgroup","colspec","thead","tbody","row","cell"]}render(o,t){const{caption:e,colspecs:s,headRows:c,bodyRows:r}=function(n){var o,t,e;const s=n.querySelector(":scope > tgroup"),c=null!==(o=null==s?void 0:s.getAttribute("cols"))&&void 0!==o?o:void 0,r=c?parseInt(c,10):void 0;return{caption:null!==(e=null===(t=n.querySelector(":scope > title"))||void 0===t?void 0:t.textContent)&&void 0!==e?e:void 0,colspecs:s&&r?x(r,s.querySelectorAll(":scope > colspec")):void 0,headRows:Array.from(n.querySelectorAll(":scope > tgroup > thead > row")),bodyRows:Array.from(n.querySelectorAll(":scope > tgroup > tbody > row"))}}(o);return n("table",{class:"table"},e&&n("caption",null,e),s&&n(y,{colspecs:s}),c.length>0&&n("thead",null,n(T,{rows:c,colspecs:s,context:t})),r.length>0&&n("tbody",null,n(T,{rows:r,colspecs:s,context:t})))}}class B{constructor(){this.name="#text"}render(t){return n(o,null,t.textContent)}}class C{constructor(){this.name=["<fallback>"]}render(o,{mapNodeToJsx:t}){return n("span",{class:`fallback od-${i(o)}`},t(o.childNodes))}}class j{constructor(){this.mappers=[new B,new l,new g,new f,new b,new a,new d,new m,new p,new z,new E,new v,new h],this.skip=this.mappers.reduce(((n,o)=>(o.handles&&n.push(...o.handles),n)),[]),this.fallbackNode=new C,this.domParser=new DOMParser}findMapper(n){var o;if(!this.skip.includes(n))return null!==(o=this.mappers.find((o=>Array.isArray(o.name)?o.name.includes(n):o.name===n)))&&void 0!==o?o:this.fallbackNode}mapNodeToJsx(t,e,s){var c;if(t instanceof NodeList)return n(o,null,Array.from(t).map((n=>this.mapNodeToJsx(n,e,s))));if(Array.isArray(t))return n(o,null,t.map((n=>this.mapNodeToJsx(n,e,s))));const r=i(t),d=this.findMapper(r);if(!d)return n(o,null);const l=null===(c=d.identify)||void 0===c?void 0:c.call(d,t),a=l?n=>e.setState(Object.assign(Object.assign({},e.state),{[l]:n})):void 0;return d.render(t,{mapNodeToJsx:n=>this.mapNodeToJsx(n,e,[...s,t]),emitAnchorClick:e.emitAnchorClick,setState:a,state:l?e.state[l]:void 0,path:s})}transform(n,o){return this.cache&&this.cache.xml===n||(this.cache={xml:n,document:this.domParser.parseFromString(n,"text/xml")}),this.mapNodeToJsx(this.cache.document.getRootNode(),o,[])}}let I=class{constructor(n){t(this,n),this.dsoAnchorClick=e(this,"dsoAnchorClick",7),this.dsoClick=e(this,"dsoClick",7),this.inline=!1,this.deleted=!1,this.interactive=!1,this.state={},this.mapper=new j}handleHostOnClick(n){(""===this.interactive||this.interactive)&&n.composedPath().find((n=>n===this.host||n instanceof HTMLElement&&r(n)))===this.host&&this.dsoClick.emit({originalEvent:n})}render(){var o;const t=this.mapper.transform(null!==(o=this.content)&&void 0!==o?o:"",{state:this.state,setState:n=>this.state=n,emitAnchorClick:this.dsoAnchorClick.emit});return this.deleted?n("section",null,n("slot",{name:"prefix"}),n("span",{class:"deleted-start"},"Begin verwijderd element"),t,n("span",{class:"deleted-end"},"Einde verwijderd element"),n("slot",{name:"suffix"})):n(s,{onClick:n=>this.handleHostOnClick(n)},n("slot",{name:"prefix"}),t,n("slot",{name:"suffix"}))}get host(){return c(this)}};I.style=".sc-dso-ozon-content-h:not([inline]) {\n display: block;\n}\n\n[inline].sc-dso-ozon-content-h {\n display: inline;\n}\n\n[deleted].sc-dso-ozon-content-h *.sc-dso-ozon-content {\n text-decoration: line-through !important;\n}\n\n[interactive].sc-dso-ozon-content-h {\n background-color: transparent;\n color: #39870c;\n text-decoration: underline;\n cursor: pointer;\n color: #275937;\n font-weight: 600;\n text-decoration: none;\n}\n[interactive].sc-dso-ozon-content-h:hover, [interactive].sc-dso-ozon-content-h:focus {\n color: #676cb0;\n text-decoration: underline;\n}\n[interactive].sc-dso-ozon-content-h:active {\n text-decoration: none;\n}\n\n[interactive=sub].sc-dso-ozon-content-h {\n color: #191919;\n}\n\n.deleted-start.sc-dso-ozon-content, .deleted-end.sc-dso-ozon-content {\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n margin: -1px;\n overflow: hidden;\n clip: rect(0, 0, 0, 0);\n border: 0;\n}\n\nbutton.toggle-note.sc-dso-ozon-content {\n display: inline-block;\n font-size: 1em;\n font-weight: 500;\n margin-bottom: 0;\n text-decoration: none;\n touch-action: manipulation;\n text-align: left;\n user-select: none;\n vertical-align: middle;\n border: 0;\n color: #39870c;\n line-height: 1;\n padding: 0;\n background-color: transparent;\n}\nbutton.toggle-note.sc-dso-ozon-content:focus, button.toggle-note.sc-dso-ozon-content:focus-visible {\n outline-offset: 2px;\n}\nbutton.toggle-note.sc-dso-ozon-content:active {\n outline: 0;\n}\nbutton.toggle-note[disabled].sc-dso-ozon-content {\n color: #afcf9d;\n}\nbutton.toggle-note[disabled].dso-spinner-left.sc-dso-ozon-content, button.toggle-note[disabled].dso-spinner-right.sc-dso-ozon-content {\n color: #39870c;\n}\nbutton.toggle-note.sc-dso-ozon-content:not([disabled]):hover {\n color: #676cb0;\n text-decoration: underline;\n text-underline-position: under;\n}\nbutton.toggle-note.sc-dso-ozon-content:not([disabled]):active {\n color: #676cb0;\n}\nbutton.toggle-note.btn-align.sc-dso-ozon-content {\n line-height: calc(1.5em - 1px);\n padding: 11px 0;\n position: relative;\n}\nbutton.toggle-note.dso-spinner-left.sc-dso-ozon-content::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 height: 24px;\n vertical-align: middle;\n width: 24px;\n margin-right: 8px;\n}\nbutton.toggle-note.dso-spinner-right.sc-dso-ozon-content::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 height: 24px;\n vertical-align: middle;\n width: 24px;\n margin-left: 8px;\n}\nbutton.toggle-note.sc-dso-ozon-content dso-icon.sc-dso-ozon-content + span.sc-dso-ozon-content:not(.sr-only), button.toggle-note.sc-dso-ozon-content svg.di.sc-dso-ozon-content + span.sc-dso-ozon-content:not(.sr-only), button.toggle-note.sc-dso-ozon-content span.sc-dso-ozon-content:not(.sr-only) + dso-icon.sc-dso-ozon-content, button.toggle-note.sc-dso-ozon-content span.sc-dso-ozon-content:not(.sr-only) + svg.di.sc-dso-ozon-content {\n margin-left: 8px;\n}\nbutton.toggle-note.sc-dso-ozon-content svg.di.di-chevron-down.sc-dso-ozon-content + span.sc-dso-ozon-content:not(.sr-only), button.toggle-note.sc-dso-ozon-content svg.di.di-chevron-up.sc-dso-ozon-content + span.sc-dso-ozon-content:not(.sr-only), button.toggle-note.sc-dso-ozon-content span.sc-dso-ozon-content:not(.sr-only) + svg.di.di-chevron-down.sc-dso-ozon-content, button.toggle-note.sc-dso-ozon-content span.sc-dso-ozon-content:not(.sr-only) + svg.di.di-chevron-up.sc-dso-ozon-content {\n margin-left: 4px;\n}\nbutton.toggle-note.sc-dso-ozon-content dso-icon[icon=chevron-left].sc-dso-ozon-content + span.sc-dso-ozon-content:not(.sr-only), button.toggle-note.sc-dso-ozon-content dso-icon[icon=chevron-right].sc-dso-ozon-content + span.sc-dso-ozon-content:not(.sr-only), button.toggle-note.sc-dso-ozon-content svg.di.di-angle-down.sc-dso-ozon-content + span.sc-dso-ozon-content:not(.sr-only), button.toggle-note.sc-dso-ozon-content svg.di.di-angle-up.sc-dso-ozon-content + span.sc-dso-ozon-content:not(.sr-only), button.toggle-note.sc-dso-ozon-content span.sc-dso-ozon-content:not(.sr-only) + svg.di.di-angle-down.sc-dso-ozon-content, button.toggle-note.sc-dso-ozon-content span.sc-dso-ozon-content:not(.sr-only) + svg.di.di-angle-up.sc-dso-ozon-content, button.toggle-note.sc-dso-ozon-content span.sc-dso-ozon-content:not(.sr-only) + dso-icon[icon=chevron-left].sc-dso-ozon-content, button.toggle-note.sc-dso-ozon-content span.sc-dso-ozon-content:not(.sr-only) + dso-icon[icon=chevron-right].sc-dso-ozon-content {\n margin-left: 0;\n}\nbutton.toggle-note.sc-dso-ozon-content dso-icon.sc-dso-ozon-content, button.toggle-note.sc-dso-ozon-content svg.di.sc-dso-ozon-content, button.toggle-note.sc-dso-ozon-content span.sc-dso-ozon-content {\n vertical-align: middle;\n}\n\nspan[role=section].sc-dso-ozon-content, span[role=paragraph].sc-dso-ozon-content {\n display: block;\n}\n\n.fallback.sc-dso-ozon-content {\n display: block;\n}\n\n.od-Term.sc-dso-ozon-content {\n font-weight: 700;\n}\n\n.od-Definitie.sc-dso-ozon-content, .od-Tussenkop.sc-dso-ozon-content {\n font-style: italic;\n}\n\n.od-Inhoud.sc-dso-ozon-content, .od-Inhoud.sc-dso-ozon-content > .od-Lijst.sc-dso-ozon-content, .od-IntIoRef.sc-dso-ozon-content, .od-Lidnr.sc-dso-ozon-content, .od-LiNr.sc-dso-ozon-content, .od-Opschrift.sc-dso-ozon-content, .od-Tussenkop.sc-dso-ozon-content {\n display: inline;\n}\n\n.od-Al.sc-dso-ozon-content, .od-Lijstaanhef.sc-dso-ozon-content {\n margin-bottom: 0.75em;\n}\n\n.od-IntIoRef.sc-dso-ozon-content {\n border-bottom: 1px dotted;\n}\n\n.od-LiNummer.sc-dso-ozon-content {\n float: left;\n min-width: 0.7em;\n padding-right: 0.3em;\n text-align: right;\n}\n\n.dso-ozon-figuur.sc-dso-ozon-content {\n margin-bottom: 16px;\n}\n.dso-ozon-figuur.sc-dso-ozon-content .figuur-bijschrift.sc-dso-ozon-content {\n display: block;\n font-size: 0.75rem;\n font-style: italic;\n}\n.dso-ozon-figuur.bijschrift-boven.sc-dso-ozon-content .figuur-bijschrift.sc-dso-ozon-content {\n padding-bottom: 0.25rem;\n}\n.dso-ozon-figuur.bijschrift-onder.sc-dso-ozon-content .figuur-bijschrift.sc-dso-ozon-content {\n padding-top: 0.25rem;\n}\n.dso-ozon-figuur.sc-dso-ozon-content .figuur-titel.sc-dso-ozon-content {\n color: #8b4a6a;\n display: block;\n font-weight: 500;\n padding-bottom: 0.5rem;\n}\n\n.od-Tabel.sc-dso-ozon-content thead.sc-dso-ozon-content {\n font-weight: 600;\n}\n\n.od-Kadertekst.sc-dso-ozon-content {\n border: 1px solid #e5e5e5;\n margin-bottom: 1rem;\n padding: 1rem;\n}";export{I as dso_ozon_content}
@@ -0,0 +1,5 @@
1
+ /*!
2
+ * tabbable 6.0.0
3
+ * @license MIT, https://github.com/focus-trap/tabbable/blob/master/LICENSE
4
+ */
5
+ var n=["input","select","textarea","a[href]","button","[tabindex]:not(slot)","audio[controls]","video[controls]",'[contenteditable]:not([contenteditable="false"])',"details>summary:first-of-type","details"],t=n.join(","),r="undefined"==typeof Element,e=r?function(){}:Element.prototype.matches||Element.prototype.msMatchesSelector||Element.prototype.webkitMatchesSelector,o=!r&&Element.prototype.getRootNode?function(n){return n.getRootNode()}:function(n){return n.ownerDocument},i=function(n,r,o){var i=Array.prototype.slice.apply(n.querySelectorAll(t));return r&&e.call(n,t)&&i.unshift(n),i.filter(o)},u=function n(r,o,i){for(var u=[],a=Array.from(r);a.length;){var f=a.shift();if("SLOT"===f.tagName){var c=f.assignedElements(),l=n(c.length?c:f.children,!0,i);i.flatten?u.push.apply(u,l):u.push({scope:f,candidates:l})}else{e.call(f,t)&&i.filter(f)&&(o||!r.includes(f))&&u.push(f);var d=f.shadowRoot||"function"==typeof i.getShadowRoot&&i.getShadowRoot(f),s=!i.shadowRootFilter||i.shadowRootFilter(f);if(d&&s){var v=n(!0===d?f.children:d.children,!0,i);i.flatten?u.push.apply(u,v):u.push({scope:f,candidates:v})}else a.unshift.apply(a,f.children)}}return u},a=function(n,t){return n.tabIndex<0&&(t||/^(AUDIO|VIDEO|DETAILS)$/.test(n.tagName)||n.isContentEditable)&&isNaN(parseInt(n.getAttribute("tabindex"),10))?0:n.tabIndex},f=function(n,t){return n.tabIndex===t.tabIndex?n.documentOrder-t.documentOrder:n.tabIndex-t.tabIndex},c=function(n){return"INPUT"===n.tagName},l=function(n){var t=n.getBoundingClientRect();return 0===t.width&&0===t.height},d=function(n,t){return!(t.disabled||function(n){return c(n)&&"hidden"===n.type}(t)||function(n,t){var r=t.displayCheck,i=t.getShadowRoot;if("hidden"===getComputedStyle(n).visibility)return!0;var u=e.call(n,"details>summary:first-of-type");if(e.call(u?n.parentElement:n,"details:not([open]) *"))return!0;if(r&&"full"!==r&&"legacy-full"!==r){if("non-zero-area"===r)return l(n)}else{if("function"==typeof i){for(var a=n;n;){var f=n.parentElement,c=o(n);if(f&&!f.shadowRoot&&!0===i(f))return l(n);n=n.assignedSlot?n.assignedSlot:f||c===n.ownerDocument?f:c.host}n=a}if(function(n){for(var t,r=o(n).host,e=!!(null!==(t=r)&&void 0!==t&&t.ownerDocument.contains(r)||n.ownerDocument.contains(n));!e&&r;){var i;e=!(null===(i=r=o(r).host)||void 0===i||!i.ownerDocument.contains(r))}return e}(n))return!n.getClientRects().length;if("legacy-full"!==r)return!0}return!1}(t,n)||function(n){return"DETAILS"===n.tagName&&Array.prototype.slice.apply(n.children).some((function(n){return"SUMMARY"===n.tagName}))}(t)||function(n){if(/^(INPUT|BUTTON|SELECT|TEXTAREA)$/.test(n.tagName))for(var t=n.parentElement;t;){if("FIELDSET"===t.tagName&&t.disabled){for(var r=0;r<t.children.length;r++){var o=t.children.item(r);if("LEGEND"===o.tagName)return!!e.call(t,"fieldset[disabled] *")||!o.contains(n)}return!0}t=t.parentElement}return!1}(t))},s=function(n,t){return!(function(n){return function(n){return c(n)&&"radio"===n.type}(n)&&!function(n){if(!n.name)return!0;var t,r=n.form||o(n),e=function(n){return r.querySelectorAll('input[type="radio"][name="'+n+'"]')};if("undefined"!=typeof window&&void 0!==window.CSS&&"function"==typeof window.CSS.escape)t=e(window.CSS.escape(n.name));else try{t=e(n.name)}catch(n){return console.error("Looks like you have a radio button with a name attribute containing invalid CSS selector characters and need the CSS.escape polyfill: %s",n.message),!1}var i=function(n,t){for(var r=0;r<n.length;r++)if(n[r].checked&&n[r].form===t)return n[r]}(t,n.form);return!i||i===n}(n)}(t)||a(t)<0||!d(n,t))},v=function(n){var t=parseInt(n.getAttribute("tabindex"),10);return!!(isNaN(t)||t>=0)},p=function n(t){var r=[],e=[];return t.forEach((function(t,o){var i=!!t.scope,u=i?t.scope:t,f=a(u,i),c=i?n(t.candidates):u;0===f?i?r.push.apply(r,c):r.push(u):e.push({documentOrder:o,tabIndex:f,item:t,isScope:i,content:c})})),e.sort(f).reduce((function(n,t){return t.isScope?n.push.apply(n,t.content):n.push(t.content),n}),[]).concat(r)},y=function(n,t){var r;return r=(t=t||{}).getShadowRoot?u([n],t.includeContainer,{filter:s.bind(null,t),flatten:!1,getShadowRoot:t.getShadowRoot,shadowRootFilter:v}):i(n,t.includeContainer,s.bind(null,t)),p(r)},E=function(n,t){return(t=t||{}).getShadowRoot?u([n],t.includeContainer,{filter:d.bind(null,t),flatten:!0,getShadowRoot:t.getShadowRoot}):i(n,t.includeContainer,d.bind(null,t))},w=function(n,r){if(r=r||{},!n)throw new Error("No node provided");return!1!==e.call(n,t)&&s(r,n)},m=n.concat("iframe").join(","),S=function(n,t){if(t=t||{},!n)throw new Error("No node provided");return!1!==e.call(n,m)&&d(t,n)};export{S as a,E as f,w as i,y as t}
@@ -0,0 +1,106 @@
1
+ import { r as registerInstance, f as forceUpdate, h, F as Fragment, H as Host, a as getElement } from './index-771c1291.js';
2
+
3
+ const accordionSectionCss = "*,*::after,*::before{box-sizing:border-box}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);border:0}:host{display:block}:host .dso-section-handle{font-size:1em;font-weight:600;line-height:1.375em;margin:0;position:relative}:host .dso-section-handle>a:active{text-decoration:none}:host .dso-section-handle a{text-decoration:none}:host .dso-section-handle a:hover,:host .dso-section-handle a:focus{text-decoration:none}:host .dso-section-handle a:active{text-decoration:underline}:host .dso-section-handle .dso-status{font-weight:400;text-decoration:underline}:host .dso-section-handle>button,:host .dso-section-handle>a{align-items:center;background-color:transparent;border:0;cursor:pointer;display:flex;font-family:Asap, sans-serif;font-size:1em;font-weight:600;line-height:1.375em;margin:0;padding:12px 16px 12px;width:100%;word-break:break-word}:host .dso-section-handle>button dso-icon,:host .dso-section-handle>a dso-icon{flex-shrink:0}:host .dso-section-handle>button>.dso-section-handle-addons:first-child,:host .dso-section-handle>button>dso-icon:first-child,:host .dso-section-handle>a>.dso-section-handle-addons:first-child,:host .dso-section-handle>a>dso-icon:first-child{margin-right:8px}:host .dso-section-handle>button>dso-icon:last-child,:host .dso-section-handle>a>dso-icon:last-child{margin-left:auto}:host .dso-section-handle>button>.dso-section-handle-addons:last-child,:host .dso-section-handle>a>.dso-section-handle-addons:last-child{margin-left:auto}:host .dso-section-handle>button>.dso-section-handle-addons:last-child dso-icon,:host .dso-section-handle>a>.dso-section-handle-addons:last-child dso-icon{margin-left:16px}:host(:not([open])) .dso-section-body{display:none}.dso-section-body{background-color:#fff;border-top:0;margin-top:-4px;padding:20px 16px 16px}:host(.dso-accordion-default) .dso-section-handle{background-color:#fff;border:1px solid #8b4a6a;border-radius:4px}:host(.dso-accordion-default) .dso-section-handle a,:host(.dso-accordion-default) .dso-section-handle button{color:#8b4a6a}:host(.dso-accordion-default) .dso-section-handle a:hover,:host(.dso-accordion-default) .dso-section-handle a:active,:host(.dso-accordion-default) .dso-section-handle a.active,:host(.dso-accordion-default) .dso-section-handle button:hover,:host(.dso-accordion-default) .dso-section-handle button:active,:host(.dso-accordion-default) .dso-section-handle button.active{color:#8b4a6a}:host(.dso-accordion-default) .dso-section-body{border:1px solid #8b4a6a;border-radius:0 0 4px 4px}:host(.dso-accordion-default[open]:not(.dso-nested-accordion))>.dso-section-handle{background-color:#8b4a6a;border-radius:4px}:host(.dso-accordion-default[open]:not(.dso-nested-accordion))>.dso-section-handle a,:host(.dso-accordion-default[open]:not(.dso-nested-accordion))>.dso-section-handle button{color:#fff}:host(.dso-accordion-default[open]:not(.dso-nested-accordion))>.dso-section-handle a dso-attachments-counter,:host(.dso-accordion-default[open]:not(.dso-nested-accordion))>.dso-section-handle button dso-attachments-counter{--dso-attachments-counter-color:#fff;--dso-icon:var(--di-paperclip-wit)}:host(.dso-accordion-default.dso-nested-accordion[open]) .dso-section-body{background-color:#d1b7c4}:host(.dso-accordion-compact) .dso-section-handle{border:1px solid transparent}:host(.dso-accordion-compact) .dso-section-handle a,:host(.dso-accordion-compact) .dso-section-handle button{color:#39870c}:host(.dso-accordion-compact) .dso-section-handle a:hover,:host(.dso-accordion-compact) .dso-section-handle a:active,:host(.dso-accordion-compact) .dso-section-handle a.active,:host(.dso-accordion-compact) .dso-section-handle button:hover,:host(.dso-accordion-compact) .dso-section-handle button:active,:host(.dso-accordion-compact) .dso-section-handle button.active{color:#39870c}:host(.dso-accordion-compact),:host(.dso-accordion-compact) .dso-section-body{border:0;border-top:1px solid #ccc}:host(.dso-accordion-compact):last-child{border-bottom:1px solid #ccc}:host(.dso-accordion-compact)+dso-accordion-section{margin-top:0}:host(.dso-accordion-compact) .dso-section-body{margin-top:0}:host(.dso-accordion-compact[open]:not(.dso-nested-accordion))>.dso-section-handle{background-color:transparent}:host(.dso-accordion-compact[open]:not(.dso-nested-accordion))>.dso-section-handle a,:host(.dso-accordion-compact[open]:not(.dso-nested-accordion))>.dso-section-handle button{color:#39870c}:host(.dso-accordion-compact[open]:not(.dso-nested-accordion))>.dso-section-handle a:hover,:host(.dso-accordion-compact[open]:not(.dso-nested-accordion))>.dso-section-handle a:active,:host(.dso-accordion-compact[open]:not(.dso-nested-accordion))>.dso-section-handle a.active,:host(.dso-accordion-compact[open]:not(.dso-nested-accordion))>.dso-section-handle button:hover,:host(.dso-accordion-compact[open]:not(.dso-nested-accordion))>.dso-section-handle button:active,:host(.dso-accordion-compact[open]:not(.dso-nested-accordion))>.dso-section-handle button.active{color:#39870c}:host(.dso-accordion-compact[open]:not(.dso-nested-accordion))>.dso-section-handle a dso-attachments-counter,:host(.dso-accordion-compact[open]:not(.dso-nested-accordion))>.dso-section-handle button dso-attachments-counter{--dso-attachments-counter-color:#666;--dso-icon:var(--di-paperclip-grijs)}:host(.dso-accordion-compact.dso-nested-accordion[open])>.dso-section-body{padding-bottom:0}:host(.dso-accordion-compact.dso-nested-accordion[open])>.dso-section-body dso-accordion-section:last-child{border-bottom:0}:host(.dso-accordion-conclusion) .dso-section-handle{background-color:#f2f2f2;border:1px solid #f2f2f2}:host(.dso-accordion-conclusion) .dso-section-handle a,:host(.dso-accordion-conclusion) .dso-section-handle button{color:#191919}:host(.dso-accordion-conclusion) .dso-section-handle a:hover,:host(.dso-accordion-conclusion) .dso-section-handle a:active,:host(.dso-accordion-conclusion) .dso-section-handle a.active,:host(.dso-accordion-conclusion) .dso-section-handle button:hover,:host(.dso-accordion-conclusion) .dso-section-handle button:active,:host(.dso-accordion-conclusion) .dso-section-handle button.active{background-color:#e5e5e5;color:#191919}:host(.dso-accordion-conclusion) .dso-section-body{border:2px solid #f2f2f2}:host(.dso-accordion-conclusion[open]:not(.dso-nested-accordion))>.dso-section-handle{background-color:#f2f2f2}:host(.dso-accordion-conclusion[open]:not(.dso-nested-accordion))>.dso-section-handle a,:host(.dso-accordion-conclusion[open]:not(.dso-nested-accordion))>.dso-section-handle button{color:#191919}:host(.dso-accordion-conclusion[open]:not(.dso-nested-accordion))>.dso-section-handle a dso-attachments-counter,:host(.dso-accordion-conclusion[open]:not(.dso-nested-accordion))>.dso-section-handle button dso-attachments-counter{--dso-attachments-counter-color:#666;--dso-icon:var(--di-paperclip-grijs)}:host(.dso-accordion-conclusion.dso-nested-accordion[open]){background-color:#fff;border:2px solid #f2f2f2}";
4
+
5
+ let AccordionSection = class {
6
+ constructor(hostRef) {
7
+ registerInstance(this, hostRef);
8
+ this.heading = 'h2';
9
+ this.open = false;
10
+ this.hasNestedSection = false;
11
+ }
12
+ componentWillLoad() {
13
+ const accordion = this.host.parentElement;
14
+ if (isAccordion(accordion)) {
15
+ this.accordion = accordion;
16
+ accordion.getState().then(state => {
17
+ this.accordionState = state;
18
+ forceUpdate(this.host);
19
+ });
20
+ }
21
+ }
22
+ componentDidLoad() {
23
+ this.hasNestedSection = this.host.querySelector('dso-accordion') !== null;
24
+ }
25
+ /** Toggle this section */
26
+ async toggleSection() {
27
+ var _a;
28
+ return (_a = this.accordion) === null || _a === void 0 ? void 0 : _a.toggleSection(this.host);
29
+ }
30
+ async toggle(e) {
31
+ var _a;
32
+ e === null || e === void 0 ? void 0 : e.preventDefault();
33
+ return (_a = this.accordion) === null || _a === void 0 ? void 0 : _a.toggleSection(this.host, e);
34
+ }
35
+ render() {
36
+ if (!this.accordionState) {
37
+ return;
38
+ }
39
+ const { variant, reverseAlign } = this.accordionState;
40
+ const hasAddons = this.status || this.state || this.icon || this.attachmentCount;
41
+ return (h(Host, { class: {
42
+ 'dso-accordion-section': true,
43
+ ['dso-accordion-' + variant]: true,
44
+ 'dso-nested-accordion': this.hasNestedSection,
45
+ } }, h(Handle, { heading: this.heading }, h(HandleElement, { handleUrl: this.handleUrl, onClick: async (event) => await this.toggle(event), open: this.open }, reverseAlign
46
+ ? (h(Fragment, null, hasAddons && (h("div", { class: "dso-section-handle-addons" }, h(HandleIcon, { icon: this.icon }))), h("span", null, this.handleTitle), h("dso-icon", { icon: this.open ? 'chevron-up' : 'chevron-down' })))
47
+ : (h(Fragment, null, h("dso-icon", { icon: this.open ? 'chevron-up' : 'chevron-down' }), this.state && h("span", { class: "sr-only" }, stateMap[this.state]), h("span", null, this.handleTitle), hasAddons && (h("div", { class: "dso-section-handle-addons" }, this.status && h("span", { class: "dso-status" }, this.status), h(HandleIcon, { state: this.state, icon: this.icon, attachmentCount: this.attachmentCount }))))))), h("div", { class: "dso-section-body", style: this.open ? {} : { display: 'none' } }, h("slot", null))));
48
+ }
49
+ get host() { return getElement(this); }
50
+ };
51
+ function isAccordion(element) {
52
+ return element instanceof HTMLElement && 'getState' in element;
53
+ }
54
+ const Handle = ({ heading }, children) => {
55
+ switch (heading) {
56
+ default:
57
+ case 'h2':
58
+ return h("h2", { class: "dso-section-handle" }, children);
59
+ case 'h3':
60
+ return h("h3", { class: "dso-section-handle" }, children);
61
+ case 'h4':
62
+ return h("h4", { class: "dso-section-handle" }, children);
63
+ case 'h5':
64
+ return h("h5", { class: "dso-section-handle" }, children);
65
+ }
66
+ };
67
+ const HandleElement = ({ handleUrl, onClick, open }, children) => {
68
+ if (handleUrl) {
69
+ return (h("a", { href: handleUrl, onClick: onClick, "aria-expanded": open ? 'true' : 'false' }, children));
70
+ }
71
+ return (h("button", { type: "button", onClick: onClick, "aria-expanded": open ? 'true' : 'false' }, children));
72
+ };
73
+ const HandleIcon = ({ state, icon, attachmentCount }) => {
74
+ if (state) {
75
+ return h(HandleStateIcon, { state: state });
76
+ }
77
+ if (attachmentCount) {
78
+ return h("dso-attachments-counter", { count: attachmentCount });
79
+ }
80
+ if (icon) {
81
+ return h("dso-icon", { icon: icon });
82
+ }
83
+ };
84
+ const stateMap = {
85
+ success: 'succes:',
86
+ info: 'info:',
87
+ warning: 'waarschuwing:',
88
+ danger: 'fout:'
89
+ };
90
+ const HandleStateIcon = ({ state }) => {
91
+ if (state === 'danger') {
92
+ return (h("dso-icon", { icon: "status-danger" }));
93
+ }
94
+ if (state === 'success') {
95
+ return (h("dso-icon", { icon: "status-success" }));
96
+ }
97
+ if (state === 'info') {
98
+ return (h("dso-icon", { icon: "status-info" }));
99
+ }
100
+ if (state === 'warning') {
101
+ return (h("dso-icon", { icon: "status-warning" }));
102
+ }
103
+ };
104
+ AccordionSection.style = accordionSectionCss;
105
+
106
+ export { AccordionSection as dso_accordion_section };
@@ -0,0 +1,293 @@
1
+ import { g as getRenderingRef, f as forceUpdate, r as registerInstance, c as createEvent, h, H as Host, a as getElement } from './index-771c1291.js';
2
+
3
+ const appendToMap = (map, propName, value) => {
4
+ const items = map.get(propName);
5
+ if (!items) {
6
+ map.set(propName, [value]);
7
+ }
8
+ else if (!items.includes(value)) {
9
+ items.push(value);
10
+ }
11
+ };
12
+ const debounce = (fn, ms) => {
13
+ let timeoutId;
14
+ return (...args) => {
15
+ if (timeoutId) {
16
+ clearTimeout(timeoutId);
17
+ }
18
+ timeoutId = setTimeout(() => {
19
+ timeoutId = 0;
20
+ fn(...args);
21
+ }, ms);
22
+ };
23
+ };
24
+
25
+ /**
26
+ * Check if a possible element isConnected.
27
+ * The property might not be there, so we check for it.
28
+ *
29
+ * We want it to return true if isConnected is not a property,
30
+ * otherwise we would remove these elements and would not update.
31
+ *
32
+ * Better leak in Edge than to be useless.
33
+ */
34
+ const isConnected = (maybeElement) => !('isConnected' in maybeElement) || maybeElement.isConnected;
35
+ const cleanupElements = debounce((map) => {
36
+ for (let key of map.keys()) {
37
+ map.set(key, map.get(key).filter(isConnected));
38
+ }
39
+ }, 2000);
40
+ const stencilSubscription = () => {
41
+ if (typeof getRenderingRef !== 'function') {
42
+ // If we are not in a stencil project, we do nothing.
43
+ // This function is not really exported by @stencil/core.
44
+ return {};
45
+ }
46
+ const elmsToUpdate = new Map();
47
+ return {
48
+ dispose: () => elmsToUpdate.clear(),
49
+ get: (propName) => {
50
+ const elm = getRenderingRef();
51
+ if (elm) {
52
+ appendToMap(elmsToUpdate, propName, elm);
53
+ }
54
+ },
55
+ set: (propName) => {
56
+ const elements = elmsToUpdate.get(propName);
57
+ if (elements) {
58
+ elmsToUpdate.set(propName, elements.filter(forceUpdate));
59
+ }
60
+ cleanupElements(elmsToUpdate);
61
+ },
62
+ reset: () => {
63
+ elmsToUpdate.forEach((elms) => elms.forEach(forceUpdate));
64
+ cleanupElements(elmsToUpdate);
65
+ },
66
+ };
67
+ };
68
+
69
+ const unwrap = (val) => (typeof val === 'function' ? val() : val);
70
+ const createObservableMap = (defaultState, shouldUpdate = (a, b) => a !== b) => {
71
+ const unwrappedState = unwrap(defaultState);
72
+ let states = new Map(Object.entries(unwrappedState !== null && unwrappedState !== void 0 ? unwrappedState : {}));
73
+ const handlers = {
74
+ dispose: [],
75
+ get: [],
76
+ set: [],
77
+ reset: [],
78
+ };
79
+ const reset = () => {
80
+ var _a;
81
+ // When resetting the state, the default state may be a function - unwrap it to invoke it.
82
+ // otherwise, the state won't be properly reset
83
+ states = new Map(Object.entries((_a = unwrap(defaultState)) !== null && _a !== void 0 ? _a : {}));
84
+ handlers.reset.forEach((cb) => cb());
85
+ };
86
+ const dispose = () => {
87
+ // Call first dispose as resetting the state would
88
+ // cause less updates ;)
89
+ handlers.dispose.forEach((cb) => cb());
90
+ reset();
91
+ };
92
+ const get = (propName) => {
93
+ handlers.get.forEach((cb) => cb(propName));
94
+ return states.get(propName);
95
+ };
96
+ const set = (propName, value) => {
97
+ const oldValue = states.get(propName);
98
+ if (shouldUpdate(value, oldValue, propName)) {
99
+ states.set(propName, value);
100
+ handlers.set.forEach((cb) => cb(propName, value, oldValue));
101
+ }
102
+ };
103
+ const state = (typeof Proxy === 'undefined'
104
+ ? {}
105
+ : new Proxy(unwrappedState, {
106
+ get(_, propName) {
107
+ return get(propName);
108
+ },
109
+ ownKeys(_) {
110
+ return Array.from(states.keys());
111
+ },
112
+ getOwnPropertyDescriptor() {
113
+ return {
114
+ enumerable: true,
115
+ configurable: true,
116
+ };
117
+ },
118
+ has(_, propName) {
119
+ return states.has(propName);
120
+ },
121
+ set(_, propName, value) {
122
+ set(propName, value);
123
+ return true;
124
+ },
125
+ }));
126
+ const on = (eventName, callback) => {
127
+ handlers[eventName].push(callback);
128
+ return () => {
129
+ removeFromArray(handlers[eventName], callback);
130
+ };
131
+ };
132
+ const onChange = (propName, cb) => {
133
+ const unSet = on('set', (key, newValue) => {
134
+ if (key === propName) {
135
+ cb(newValue);
136
+ }
137
+ });
138
+ // We need to unwrap the defaultState because it might be a function.
139
+ // Otherwise we might not be sending the right reset value.
140
+ const unReset = on('reset', () => cb(unwrap(defaultState)[propName]));
141
+ return () => {
142
+ unSet();
143
+ unReset();
144
+ };
145
+ };
146
+ const use = (...subscriptions) => {
147
+ const unsubs = subscriptions.reduce((unsubs, subscription) => {
148
+ if (subscription.set) {
149
+ unsubs.push(on('set', subscription.set));
150
+ }
151
+ if (subscription.get) {
152
+ unsubs.push(on('get', subscription.get));
153
+ }
154
+ if (subscription.reset) {
155
+ unsubs.push(on('reset', subscription.reset));
156
+ }
157
+ if (subscription.dispose) {
158
+ unsubs.push(on('dispose', subscription.dispose));
159
+ }
160
+ return unsubs;
161
+ }, []);
162
+ return () => unsubs.forEach((unsub) => unsub());
163
+ };
164
+ const forceUpdate = (key) => {
165
+ const oldValue = states.get(key);
166
+ handlers.set.forEach((cb) => cb(key, oldValue, oldValue));
167
+ };
168
+ return {
169
+ state,
170
+ get,
171
+ set,
172
+ on,
173
+ onChange,
174
+ use,
175
+ dispose,
176
+ reset,
177
+ forceUpdate,
178
+ };
179
+ };
180
+ const removeFromArray = (array, item) => {
181
+ const index = array.indexOf(item);
182
+ if (index >= 0) {
183
+ array[index] = array[array.length - 1];
184
+ array.length--;
185
+ }
186
+ };
187
+
188
+ const createStore = (defaultState, shouldUpdate) => {
189
+ const map = createObservableMap(defaultState, shouldUpdate);
190
+ map.use(stencilSubscription());
191
+ return map;
192
+ };
193
+
194
+ const accordionCss = ":host{display:block}*,*::after,*::before{box-sizing:border-box}";
195
+
196
+ let Accordion = class {
197
+ constructor(hostRef) {
198
+ registerInstance(this, hostRef);
199
+ this.dsoToggleSection = createEvent(this, "dsoToggleSection", 7);
200
+ this.variant = 'default';
201
+ /** Places the chevron at the opposite side. Note: this mode does not display `state`, `attachmentCount` or `status` props on child `<dso-accordion-section>` elements */
202
+ this.reverseAlign = false;
203
+ /** Allows multiple sections to be open at the same time. */
204
+ this.allowMultipleOpen = false;
205
+ const { state } = createStore({
206
+ variant: this.variant || 'default',
207
+ reverseAlign: this.reverseAlign,
208
+ });
209
+ this.accordionState = state;
210
+ }
211
+ updateVariant(variant = 'default') {
212
+ this.accordionState.variant = variant || 'default';
213
+ }
214
+ updateReverseAlign(reverseAlign) {
215
+ this.accordionState.reverseAlign = reverseAlign;
216
+ }
217
+ watchAllowMultiple(allowMultipleOpen) {
218
+ if (!allowMultipleOpen) {
219
+ const openSections = Array.from(this.host.querySelectorAll(':scope > dso-accordion-section[open]'));
220
+ // By removing the first section, it is kept open;
221
+ openSections.shift();
222
+ openSections.forEach(section => this.controlOpenAttribute(section, false));
223
+ }
224
+ }
225
+ async getState() {
226
+ return this.accordionState;
227
+ }
228
+ /** Toggle a section. Pass the `<dso-accordion-section>` element or the index of the section. */
229
+ async toggleSection(sectionElement, event) {
230
+ const sections = Array.from(this.host.querySelectorAll(':scope > dso-accordion-section'));
231
+ if (typeof sectionElement === 'number') {
232
+ sectionElement = sections[sectionElement];
233
+ }
234
+ if (!(sectionElement instanceof HTMLElement) || !sections.includes(sectionElement)) {
235
+ return;
236
+ }
237
+ const sectionIsOpen = this.isSectionOpen(sectionElement);
238
+ if (this.allowMultipleOpen) {
239
+ this.controlOpenAttribute(sectionElement, !sectionIsOpen);
240
+ this.emitToggleEvent(sectionElement, sections, event);
241
+ return;
242
+ }
243
+ if (sectionIsOpen) {
244
+ this.controlOpenAttribute(sectionElement, false);
245
+ this.emitToggleEvent(sectionElement, sections, event);
246
+ return;
247
+ }
248
+ await this.closeOpenSections();
249
+ this.controlOpenAttribute(sectionElement, true);
250
+ this.emitToggleEvent(sectionElement, sections, event);
251
+ }
252
+ /** Closes all sections belonging to this accordion. */
253
+ async closeOpenSections() {
254
+ const sections = Array.from(this.host.querySelectorAll(':scope > dso-accordion-section'));
255
+ const openSections = sections.filter(s => this.isSectionOpen(s));
256
+ openSections.forEach(section => this.controlOpenAttribute(section, false));
257
+ }
258
+ render() {
259
+ return (h(Host, { class: {
260
+ 'dso-accordion': true
261
+ } }, h("slot", null)));
262
+ }
263
+ emitToggleEvent(sectionElement, sections, e) {
264
+ this.dsoToggleSection.emit({
265
+ originalEvent: e,
266
+ section: {
267
+ element: sectionElement,
268
+ open: this.isSectionOpen(sectionElement),
269
+ },
270
+ sections,
271
+ });
272
+ }
273
+ isSectionOpen(sectionElement) {
274
+ return typeof sectionElement.getAttribute('open') === 'string';
275
+ }
276
+ controlOpenAttribute(sectionElement, setAttribute) {
277
+ if (setAttribute) {
278
+ sectionElement.setAttribute('open', '');
279
+ }
280
+ else {
281
+ sectionElement.removeAttribute('open');
282
+ }
283
+ }
284
+ get host() { return getElement(this); }
285
+ static get watchers() { return {
286
+ "variant": ["updateVariant"],
287
+ "reverseAlign": ["updateReverseAlign"],
288
+ "allowMultipleOpen": ["watchAllowMultiple"]
289
+ }; }
290
+ };
291
+ Accordion.style = accordionCss;
292
+
293
+ export { Accordion as dso_accordion };