@dso-toolkit/core 70.0.1 → 71.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/dso-accordion-section.cjs.entry.js +1 -1
- package/dist/cjs/dso-accordion-section.cjs.entry.js.map +1 -1
- package/dist/cjs/dso-accordion-section.entry.cjs.js.map +1 -1
- package/dist/cjs/dso-action-list.cjs.entry.js +1 -1
- package/dist/cjs/dso-action-list.cjs.entry.js.map +1 -1
- package/dist/cjs/dso-action-list.entry.cjs.js.map +1 -1
- package/dist/cjs/dso-alert.dso-badge.dso-image-overlay.dso-ozon-content.dso-panel.dso-table.entry.cjs.js.map +1 -1
- package/dist/cjs/dso-alert_6.cjs.entry.js +57 -37
- package/dist/cjs/dso-alert_6.cjs.entry.js.map +1 -1
- package/dist/cjs/dso-annotation-activiteit.cjs.entry.js +1 -1
- package/dist/cjs/dso-annotation-activiteit.cjs.entry.js.map +1 -1
- package/dist/cjs/dso-annotation-activiteit.entry.cjs.js.map +1 -1
- package/dist/cjs/dso-annotation-gebiedsaanwijzing.cjs.entry.js +1 -1
- package/dist/cjs/dso-annotation-gebiedsaanwijzing.cjs.entry.js.map +1 -1
- package/dist/cjs/dso-annotation-gebiedsaanwijzing.entry.cjs.js.map +1 -1
- package/dist/cjs/dso-annotation-kaart.cjs.entry.js +1 -1
- package/dist/cjs/dso-annotation-kaart.cjs.entry.js.map +1 -1
- package/dist/cjs/dso-annotation-kaart.entry.cjs.js.map +1 -1
- package/dist/cjs/dso-annotation-locatie.dso-document-component.entry.cjs.js.map +1 -1
- package/dist/cjs/dso-annotation-locatie_2.cjs.entry.js +5 -4
- package/dist/cjs/dso-annotation-locatie_2.cjs.entry.js.map +1 -1
- package/dist/cjs/dso-annotation-omgevingsnormwaarde.cjs.entry.js +1 -1
- package/dist/cjs/dso-annotation-omgevingsnormwaarde.cjs.entry.js.map +1 -1
- package/dist/cjs/dso-annotation-omgevingsnormwaarde.entry.cjs.js.map +1 -1
- package/dist/cjs/dso-autosuggest.cjs.entry.js +19 -2
- package/dist/cjs/dso-autosuggest.cjs.entry.js.map +1 -1
- package/dist/cjs/dso-autosuggest.entry.cjs.js.map +1 -1
- package/dist/cjs/dso-header.cjs.entry.js +3 -0
- package/dist/cjs/dso-header.cjs.entry.js.map +1 -1
- package/dist/cjs/dso-header.entry.cjs.js.map +1 -1
- package/dist/cjs/dso-info.dso-selectable.entry.cjs.js.map +1 -1
- package/dist/cjs/dso-info_2.cjs.entry.js +1 -1
- package/dist/cjs/dso-info_2.cjs.entry.js.map +1 -1
- package/dist/cjs/dso-label.dso-renvooi.dso-slide-toggle.entry.cjs.js.map +1 -1
- package/dist/cjs/dso-label_3.cjs.entry.js +1 -1
- package/dist/cjs/dso-label_3.cjs.entry.js.map +1 -1
- package/dist/cjs/dso-logo.cjs.entry.js +1 -1
- package/dist/cjs/dso-logo.cjs.entry.js.map +1 -1
- package/dist/cjs/dso-logo.entry.cjs.js.map +1 -1
- package/dist/cjs/dso-map-controls.cjs.entry.js +1 -1
- package/dist/cjs/dso-map-controls.cjs.entry.js.map +1 -1
- package/dist/cjs/dso-map-controls.entry.cjs.js.map +1 -1
- package/dist/cjs/dso-plekinfo-card.cjs.entry.js +1 -1
- package/dist/cjs/dso-plekinfo-card.cjs.entry.js.map +1 -1
- package/dist/cjs/dso-plekinfo-card.entry.cjs.js.map +1 -1
- package/dist/cjs/dso-survey-rating.cjs.entry.js +1 -1
- package/dist/cjs/dso-survey-rating.cjs.entry.js.map +1 -1
- package/dist/cjs/dso-survey-rating.entry.cjs.js.map +1 -1
- package/dist/cjs/dso-toolkit.cjs.js +1 -1
- package/dist/cjs/dso-viewer-grid.cjs.entry.js +1 -1
- package/dist/cjs/dso-viewer-grid.cjs.entry.js.map +1 -1
- package/dist/cjs/dso-viewer-grid.entry.cjs.js.map +1 -1
- package/dist/cjs/dsot-document-component-demo.cjs.entry.js +6 -6
- package/dist/cjs/dsot-document-component-demo.cjs.entry.js.map +1 -1
- package/dist/cjs/dsot-document-component-demo.entry.cjs.js.map +1 -1
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/collection/components/accordion/components/accordion-section.css +10 -8
- package/dist/collection/components/action-list/action-list.css +4 -4
- package/dist/collection/components/alert/alert.css +16 -16
- package/dist/collection/components/annotation/annotation.css +8 -8
- package/dist/collection/components/autosuggest/autosuggest.js +19 -2
- package/dist/collection/components/autosuggest/autosuggest.js.map +1 -1
- package/dist/collection/components/document-component/document-component.css +58 -44
- package/dist/collection/components/document-component/document-component.js +26 -2
- package/dist/collection/components/document-component/document-component.js.map +1 -1
- package/dist/collection/components/document-component-demo/document-component.demo.js +29 -6
- package/dist/collection/components/document-component-demo/document-component.demo.js.map +1 -1
- package/dist/collection/components/header/header.js +3 -0
- package/dist/collection/components/header/header.js.map +1 -1
- package/dist/collection/components/image-overlay/image-overlay.css +16 -16
- package/dist/collection/components/info/info.css +4 -4
- package/dist/collection/components/logo/logo.css +3 -8
- package/dist/collection/components/map-controls/map-controls.css +8 -5
- package/dist/collection/components/ozon-content/nodes/ext-ref.node.js +4 -2
- package/dist/collection/components/ozon-content/nodes/ext-ref.node.js.map +1 -1
- package/dist/collection/components/ozon-content/nodes/figuur.node.js +34 -10
- package/dist/collection/components/ozon-content/nodes/figuur.node.js.map +1 -1
- package/dist/collection/components/ozon-content/nodes/inline-tekst-afbeelding.node.js +6 -3
- package/dist/collection/components/ozon-content/nodes/inline-tekst-afbeelding.node.js.map +1 -1
- package/dist/collection/components/ozon-content/nodes/kop.node.js +1 -1
- package/dist/collection/components/ozon-content/nodes/kop.node.js.map +1 -1
- package/dist/collection/components/ozon-content/ozon-content-context.interface.js.map +1 -1
- package/dist/collection/components/ozon-content/ozon-content-mapper.js +3 -6
- package/dist/collection/components/ozon-content/ozon-content-mapper.js.map +1 -1
- package/dist/collection/components/ozon-content/ozon-content-node-context.interface.js.map +1 -1
- package/dist/collection/components/ozon-content/ozon-content.css +109 -84
- package/dist/collection/components/ozon-content/ozon-content.interfaces.js.map +1 -1
- package/dist/collection/components/ozon-content/ozon-content.js +22 -23
- package/dist/collection/components/ozon-content/ozon-content.js.map +1 -1
- package/dist/collection/components/plekinfo-card/plekinfo-card.css +8 -8
- package/dist/collection/components/renvooi/renvooi.css +8 -8
- package/dist/collection/components/survey-rating/survey-rating.css +36 -33
- package/dist/collection/components/table/table.css +42 -28
- package/dist/collection/components/viewer-grid/viewer-grid.css +17 -11
- package/dist/components/alert.js +1 -1
- package/dist/components/alert.js.map +1 -1
- package/dist/components/annotation-locatie.js +1 -1
- package/dist/components/annotation-locatie.js.map +1 -1
- package/dist/components/document-component.js +5 -3
- package/dist/components/document-component.js.map +1 -1
- package/dist/components/dso-accordion-section.js +1 -1
- package/dist/components/dso-accordion-section.js.map +1 -1
- package/dist/components/dso-action-list.js +1 -1
- package/dist/components/dso-action-list.js.map +1 -1
- package/dist/components/dso-annotation-activiteit.js +1 -1
- package/dist/components/dso-annotation-activiteit.js.map +1 -1
- package/dist/components/dso-annotation-gebiedsaanwijzing.js +1 -1
- package/dist/components/dso-annotation-gebiedsaanwijzing.js.map +1 -1
- package/dist/components/dso-annotation-kaart.js +1 -1
- package/dist/components/dso-annotation-kaart.js.map +1 -1
- package/dist/components/dso-annotation-omgevingsnormwaarde.js +1 -1
- package/dist/components/dso-annotation-omgevingsnormwaarde.js.map +1 -1
- package/dist/components/dso-autosuggest.js +19 -2
- package/dist/components/dso-autosuggest.js.map +1 -1
- package/dist/components/dso-header.js +3 -0
- package/dist/components/dso-header.js.map +1 -1
- package/dist/components/dso-logo.js +1 -1
- package/dist/components/dso-logo.js.map +1 -1
- package/dist/components/dso-map-controls.js +1 -1
- package/dist/components/dso-map-controls.js.map +1 -1
- package/dist/components/dso-plekinfo-card.js +1 -1
- package/dist/components/dso-plekinfo-card.js.map +1 -1
- package/dist/components/dso-survey-rating.js +1 -1
- package/dist/components/dso-survey-rating.js.map +1 -1
- package/dist/components/dso-viewer-grid.js +1 -1
- package/dist/components/dso-viewer-grid.js.map +1 -1
- package/dist/components/dsot-document-component-demo.js +7 -6
- package/dist/components/dsot-document-component-demo.js.map +1 -1
- package/dist/components/image-overlay.js +1 -1
- package/dist/components/image-overlay.js.map +1 -1
- package/dist/components/info.js +1 -1
- package/dist/components/info.js.map +1 -1
- package/dist/components/ozon-content.js +55 -35
- package/dist/components/ozon-content.js.map +1 -1
- package/dist/components/renvooi.js +1 -1
- package/dist/components/renvooi.js.map +1 -1
- package/dist/components/table.js +1 -1
- package/dist/components/table.js.map +1 -1
- package/dist/dso-toolkit/dso-accordion-section.entry.esm.js.map +1 -1
- package/dist/dso-toolkit/dso-action-list.entry.esm.js.map +1 -1
- package/dist/dso-toolkit/dso-alert.dso-badge.dso-image-overlay.dso-ozon-content.dso-panel.dso-table.entry.esm.js.map +1 -1
- package/dist/dso-toolkit/dso-annotation-activiteit.entry.esm.js.map +1 -1
- package/dist/dso-toolkit/dso-annotation-gebiedsaanwijzing.entry.esm.js.map +1 -1
- package/dist/dso-toolkit/dso-annotation-kaart.entry.esm.js.map +1 -1
- package/dist/dso-toolkit/dso-annotation-locatie.dso-document-component.entry.esm.js.map +1 -1
- package/dist/dso-toolkit/dso-annotation-omgevingsnormwaarde.entry.esm.js.map +1 -1
- package/dist/dso-toolkit/dso-autosuggest.entry.esm.js.map +1 -1
- package/dist/dso-toolkit/dso-header.entry.esm.js.map +1 -1
- package/dist/dso-toolkit/dso-info.dso-selectable.entry.esm.js.map +1 -1
- package/dist/dso-toolkit/dso-label.dso-renvooi.dso-slide-toggle.entry.esm.js.map +1 -1
- package/dist/dso-toolkit/dso-logo.entry.esm.js.map +1 -1
- package/dist/dso-toolkit/dso-map-controls.entry.esm.js.map +1 -1
- package/dist/dso-toolkit/dso-plekinfo-card.entry.esm.js.map +1 -1
- package/dist/dso-toolkit/dso-survey-rating.entry.esm.js.map +1 -1
- package/dist/dso-toolkit/dso-toolkit.esm.js +1 -1
- package/dist/dso-toolkit/dso-viewer-grid.entry.esm.js.map +1 -1
- package/dist/dso-toolkit/dsot-document-component-demo.entry.esm.js.map +1 -1
- package/dist/dso-toolkit/p-159753d7.entry.js +2 -0
- package/dist/dso-toolkit/p-159753d7.entry.js.map +1 -0
- package/dist/dso-toolkit/p-1da9f680.entry.js +2 -0
- package/dist/dso-toolkit/{p-d14079e8.entry.js.map → p-1da9f680.entry.js.map} +1 -1
- package/dist/dso-toolkit/p-26d6681e.entry.js +2 -0
- package/dist/dso-toolkit/p-26d6681e.entry.js.map +1 -0
- package/dist/dso-toolkit/p-2f99bb30.entry.js +2 -0
- package/dist/dso-toolkit/{p-a9b89335.entry.js.map → p-2f99bb30.entry.js.map} +1 -1
- package/dist/dso-toolkit/p-3cb4ac7e.entry.js +2 -0
- package/dist/dso-toolkit/p-3cb4ac7e.entry.js.map +1 -0
- package/dist/dso-toolkit/p-43b5e74b.entry.js +2 -0
- package/dist/dso-toolkit/p-43b5e74b.entry.js.map +1 -0
- package/dist/dso-toolkit/p-4eefa210.entry.js +2 -0
- package/dist/dso-toolkit/{p-044ee150.entry.js.map → p-4eefa210.entry.js.map} +1 -1
- package/dist/dso-toolkit/p-5509732c.entry.js +2 -0
- package/dist/dso-toolkit/p-5509732c.entry.js.map +1 -0
- package/dist/dso-toolkit/{p-95d77ea8.entry.js → p-5f01431d.entry.js} +2 -2
- package/dist/dso-toolkit/p-5f01431d.entry.js.map +1 -0
- package/dist/dso-toolkit/p-6b6b5ed2.entry.js +2 -0
- package/dist/dso-toolkit/p-6b6b5ed2.entry.js.map +1 -0
- package/dist/dso-toolkit/p-6dac4086.entry.js +2 -0
- package/dist/dso-toolkit/{p-5b25a736.entry.js.map → p-6dac4086.entry.js.map} +1 -1
- package/dist/dso-toolkit/p-7918004d.entry.js +2 -0
- package/dist/dso-toolkit/p-7918004d.entry.js.map +1 -0
- package/dist/dso-toolkit/p-79e6a042.entry.js +2 -0
- package/dist/dso-toolkit/{p-9560e51d.entry.js.map → p-79e6a042.entry.js.map} +1 -1
- package/dist/dso-toolkit/p-7b715bdf.entry.js +2 -0
- package/dist/dso-toolkit/{p-c9a89e90.entry.js.map → p-7b715bdf.entry.js.map} +1 -1
- package/dist/dso-toolkit/p-7b7ae40b.entry.js +2 -0
- package/dist/dso-toolkit/{p-2b0ae997.entry.js.map → p-7b7ae40b.entry.js.map} +1 -1
- package/dist/dso-toolkit/p-ac221ee6.entry.js +2 -0
- package/dist/dso-toolkit/{p-77f41816.entry.js.map → p-ac221ee6.entry.js.map} +1 -1
- package/dist/dso-toolkit/p-b673cbdb.entry.js +2 -0
- package/dist/dso-toolkit/{p-ead9ce8b.entry.js.map → p-b673cbdb.entry.js.map} +1 -1
- package/dist/dso-toolkit/p-c13b26ad.entry.js +2 -0
- package/dist/dso-toolkit/{p-877a32be.entry.js.map → p-c13b26ad.entry.js.map} +1 -1
- package/dist/esm/dso-accordion-section.entry.js +1 -1
- package/dist/esm/dso-accordion-section.entry.js.map +1 -1
- package/dist/esm/dso-action-list.entry.js +1 -1
- package/dist/esm/dso-action-list.entry.js.map +1 -1
- package/dist/esm/dso-alert.dso-badge.dso-image-overlay.dso-ozon-content.dso-panel.dso-table.entry.js.map +1 -1
- package/dist/esm/dso-alert_6.entry.js +57 -37
- package/dist/esm/dso-alert_6.entry.js.map +1 -1
- package/dist/esm/dso-annotation-activiteit.entry.js +1 -1
- package/dist/esm/dso-annotation-activiteit.entry.js.map +1 -1
- package/dist/esm/dso-annotation-gebiedsaanwijzing.entry.js +1 -1
- package/dist/esm/dso-annotation-gebiedsaanwijzing.entry.js.map +1 -1
- package/dist/esm/dso-annotation-kaart.entry.js +1 -1
- package/dist/esm/dso-annotation-kaart.entry.js.map +1 -1
- package/dist/esm/dso-annotation-locatie.dso-document-component.entry.js.map +1 -1
- package/dist/esm/dso-annotation-locatie_2.entry.js +5 -4
- package/dist/esm/dso-annotation-locatie_2.entry.js.map +1 -1
- package/dist/esm/dso-annotation-omgevingsnormwaarde.entry.js +1 -1
- package/dist/esm/dso-annotation-omgevingsnormwaarde.entry.js.map +1 -1
- package/dist/esm/dso-autosuggest.entry.js +19 -2
- package/dist/esm/dso-autosuggest.entry.js.map +1 -1
- package/dist/esm/dso-header.entry.js +3 -0
- package/dist/esm/dso-header.entry.js.map +1 -1
- package/dist/esm/dso-info.dso-selectable.entry.js.map +1 -1
- package/dist/esm/dso-info_2.entry.js +1 -1
- package/dist/esm/dso-info_2.entry.js.map +1 -1
- package/dist/esm/dso-label.dso-renvooi.dso-slide-toggle.entry.js.map +1 -1
- package/dist/esm/dso-label_3.entry.js +1 -1
- package/dist/esm/dso-label_3.entry.js.map +1 -1
- package/dist/esm/dso-logo.entry.js +1 -1
- package/dist/esm/dso-logo.entry.js.map +1 -1
- package/dist/esm/dso-map-controls.entry.js +1 -1
- package/dist/esm/dso-map-controls.entry.js.map +1 -1
- package/dist/esm/dso-plekinfo-card.entry.js +1 -1
- package/dist/esm/dso-plekinfo-card.entry.js.map +1 -1
- package/dist/esm/dso-survey-rating.entry.js +1 -1
- package/dist/esm/dso-survey-rating.entry.js.map +1 -1
- package/dist/esm/dso-toolkit.js +1 -1
- package/dist/esm/dso-viewer-grid.entry.js +1 -1
- package/dist/esm/dso-viewer-grid.entry.js.map +1 -1
- package/dist/esm/dsot-document-component-demo.entry.js +6 -6
- package/dist/esm/dsot-document-component-demo.entry.js.map +1 -1
- package/dist/esm/loader.js +1 -1
- package/dist/types/components/autosuggest/autosuggest.d.ts +2 -0
- package/dist/types/components/document-component/document-component.d.ts +5 -0
- package/dist/types/components/document-component-demo/document-component.demo.d.ts +8 -2
- package/dist/types/components/ozon-content/nodes/ext-ref.node.d.ts +1 -1
- package/dist/types/components/ozon-content/nodes/figuur.node.d.ts +3 -1
- package/dist/types/components/ozon-content/nodes/inline-tekst-afbeelding.node.d.ts +2 -1
- package/dist/types/components/ozon-content/ozon-content-context.interface.d.ts +2 -2
- package/dist/types/components/ozon-content/ozon-content-node-context.interface.d.ts +2 -1
- package/dist/types/components/ozon-content/ozon-content.d.ts +5 -5
- package/dist/types/components/ozon-content/ozon-content.interfaces.d.ts +4 -0
- package/dist/types/components.d.ts +28 -10
- package/package.json +3 -3
- package/dist/dso-toolkit/p-044ee150.entry.js +0 -2
- package/dist/dso-toolkit/p-0c31d950.entry.js +0 -2
- package/dist/dso-toolkit/p-0c31d950.entry.js.map +0 -1
- package/dist/dso-toolkit/p-2b0ae997.entry.js +0 -2
- package/dist/dso-toolkit/p-5a2586c2.entry.js +0 -2
- package/dist/dso-toolkit/p-5a2586c2.entry.js.map +0 -1
- package/dist/dso-toolkit/p-5b25a736.entry.js +0 -2
- package/dist/dso-toolkit/p-77f41816.entry.js +0 -2
- package/dist/dso-toolkit/p-877a32be.entry.js +0 -2
- package/dist/dso-toolkit/p-89476db1.entry.js +0 -2
- package/dist/dso-toolkit/p-89476db1.entry.js.map +0 -1
- package/dist/dso-toolkit/p-9560e51d.entry.js +0 -2
- package/dist/dso-toolkit/p-95d77ea8.entry.js.map +0 -1
- package/dist/dso-toolkit/p-a9b89335.entry.js +0 -2
- package/dist/dso-toolkit/p-acf5ec05.entry.js +0 -2
- package/dist/dso-toolkit/p-acf5ec05.entry.js.map +0 -1
- package/dist/dso-toolkit/p-c9a89e90.entry.js +0 -2
- package/dist/dso-toolkit/p-cc1ffecd.entry.js +0 -2
- package/dist/dso-toolkit/p-cc1ffecd.entry.js.map +0 -1
- package/dist/dso-toolkit/p-d14079e8.entry.js +0 -2
- package/dist/dso-toolkit/p-d39ac774.entry.js +0 -2
- package/dist/dso-toolkit/p-d39ac774.entry.js.map +0 -1
- package/dist/dso-toolkit/p-e67860a0.entry.js +0 -2
- package/dist/dso-toolkit/p-e67860a0.entry.js.map +0 -1
- package/dist/dso-toolkit/p-ead9ce8b.entry.js +0 -2
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{r as e,c as s,h as t,F as o,f as l,g as c}from"./p-BzEnSYbR.js";import{c as a}from"./p-ChV9xqsO.js";import{c as i}from"./p-DSyv-znO.js";const d=':host{display:block;padding-block:16px;padding-inline:16px 32px;position:relative}:host{--link-color:currentColor;--link-hover-color:currentColor;--link-visited-color:currentColor;background-color:#f2f2f2;border-color:#f2f2f2;color:#191919}:host a:not(.dso-primary,.dso-secondary,.dso-tertiary):is(.download,.download:hover,.download:focus-visible){background-image:var(--_dso-di-background-image, url("./di.svg#download-zwart"))}:host a:not(.dso-primary,.dso-secondary,.dso-tertiary):is(.extern,.extern:hover,.extern:focus-visible){background-image:var(--_dso-di-background-image, url("./di.svg#external-link-zwart"))}:host a:not(.dso-primary,.dso-secondary,.dso-tertiary):is([href^="tel:"],[href^="tel:"]:hover,[href^="tel:"]:focus-visible){background-image:var(--_dso-di-background-image, url("./di.svg#call-zwart"))}:host a:not(.dso-primary,.dso-secondary,.dso-tertiary):is([href^="mailto:"],[href^="mailto:"]:hover,[href^="mailto:"]:focus-visible){background-image:var(--_dso-di-background-image, url("./di.svg#email-zwart"))}:host>button{background-color:transparent;border-style:none;padding:0;position:absolute;inset-inline-end:8px;inset-block-start:8px}:host(:not([active],[fixed])),:host([active=false]:not([fixed])),:host([active=false][fixed=false]){display:none}button{-webkit-appearance:button;color:inherit;cursor:pointer;font:inherit;font-family:inherit;font-size:inherit;line-height:inherit;margin:0;overflow:visible;text-transform:none}button[disabled]{cursor:default}button::-moz-focus-inner{border:0;padding:0}*,*::after,*::before{box-sizing:border-box}.sr-only{position:absolute;inline-size:1px;block-size:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);border:0}';const n=class{constructor(t){e(this,t);this.dsoClose=s(this,"dsoClose",7)}render(){return t(o,{key:"3155979f2b9164ed98c842e27b23ee3960aaadd4"},t("slot",{key:"056134ca144d2b3ab4268d0d12cfaa94b5a46536"}),!this.fixed&&t("button",{key:"7b466d3bf9fde5780a40197c043b86e746d8326c",type:"button",onClick:e=>this.dsoClose.emit(e)},t("dso-icon",{key:"43e42fa9309144981d7bf8e96dfc7dc36a16af8d",icon:"times"}),t("span",{key:"19e315ce3c50e0b0d08607f04ac2c5cef4a114b8",class:"sr-only"},"Sluiten")))}};n.style=d;const b='.sc-dso-selectable-h{padding-inline-start:32px;position:relative;display:var(--dso-selectable-display, block)}.sc-dso-selectable-h label.sc-dso-selectable{font-weight:400;line-height:24px;margin:0}.sc-dso-selectable-h input[type=checkbox][disabled].sc-dso-selectable+label.sc-dso-selectable::before,.sc-dso-selectable-h input[type=checkbox][disabled].sc-dso-selectable:active+label.sc-dso-selectable::before,.sc-dso-selectable-h input[type=checkbox][disabled].sc-dso-selectable:focus+label.sc-dso-selectable::before,.sc-dso-selectable-h input[type=radio][disabled].sc-dso-selectable+label.sc-dso-selectable::before,.sc-dso-selectable-h input[type=radio][disabled].sc-dso-selectable:active+label.sc-dso-selectable::before,.sc-dso-selectable-h input[type=radio][disabled].sc-dso-selectable:focus+label.sc-dso-selectable::before{background-color:#fff;box-shadow:0 0 0 2px #e5e5e5}.sc-dso-selectable-h input[type=checkbox].sc-dso-selectable,.sc-dso-selectable-h input[type=radio].sc-dso-selectable{block-size:24px;inset-inline-start:0;margin:0;opacity:0;position:absolute;inset-block-start:0;inline-size:24px;z-index:100;zoom:1}@media (prefers-contrast: more){.sc-dso-selectable-h input[type=checkbox].sc-dso-selectable,.sc-dso-selectable-h input[type=radio].sc-dso-selectable{opacity:1}}.sc-dso-selectable-h input[type=checkbox].sc-dso-selectable:not([disabled]),.sc-dso-selectable-h input[type=radio].sc-dso-selectable:not([disabled]){cursor:pointer}.sc-dso-selectable-h input[type=checkbox].sc-dso-selectable+label.sc-dso-selectable,.sc-dso-selectable-h input[type=radio].sc-dso-selectable+label.sc-dso-selectable{display:inline;font-style:normal;padding-inline-start:0}.sc-dso-selectable-h input[type=checkbox].sc-dso-selectable+label.sc-dso-selectable::before,.sc-dso-selectable-h input[type=radio].sc-dso-selectable+label.sc-dso-selectable::before{background:#fff;border:0;box-shadow:0 0 0 2px var(--dso-selectable-color, #275937);content:"";block-size:20px;inset-inline-start:2px;position:absolute;inset-block-start:2px;inline-size:20px}.sc-dso-selectable-h input[type=checkbox].sc-dso-selectable:focus,.sc-dso-selectable-h input[type=radio].sc-dso-selectable:focus{outline:0}.sc-dso-selectable-h input[type=checkbox].sc-dso-selectable:focus+label.sc-dso-selectable::before,.sc-dso-selectable-h input[type=radio].sc-dso-selectable:focus+label.sc-dso-selectable::before{box-shadow:0 0 0 3px var(--dso-selectable-color, #275937);block-size:18px;inset-inline-start:3px;inset-block-start:3px;inline-size:18px}.sc-dso-selectable-h input[type=checkbox].sc-dso-selectable:active+label.sc-dso-selectable::before,.sc-dso-selectable-h input[type=checkbox].active.sc-dso-selectable+label.sc-dso-selectable::before,.sc-dso-selectable-h input[type=radio].sc-dso-selectable:active+label.sc-dso-selectable::before,.sc-dso-selectable-h input[type=radio].active.sc-dso-selectable+label.sc-dso-selectable::before{background-color:#ebf3e6;box-shadow:0 0 0 1px #275937;block-size:22px;inset-inline-start:1px;inset-block-start:1px;inline-size:22px}.sc-dso-selectable-h input[type=checkbox].sc-dso-selectable+label.sc-dso-selectable::before{border-radius:4px}.sc-dso-selectable-h input[type=checkbox].sc-dso-selectable+label.sc-dso-selectable::after{background:transparent;content:"";inset-inline-start:6px;opacity:0;position:absolute;inset-block-start:6px;zoom:1}.sc-dso-selectable-h input[type=checkbox].sc-dso-selectable:checked+label.sc-dso-selectable::after,.sc-dso-selectable-h input[type=checkbox].sc-dso-selectable:indeterminate+label.sc-dso-selectable::after{opacity:1}.sc-dso-selectable-h input[type=checkbox].sc-dso-selectable:checked+label.sc-dso-selectable::after{border:solid;border-color:var(--dso-selectable-color, #39870c);border-block-start-color:transparent;border-width:0 0 3px 3px;block-size:8px;transform:rotate(-45deg);inline-size:13px}.sc-dso-selectable-h input[type=checkbox].sc-dso-selectable:indeterminate+label.sc-dso-selectable::after{background-color:var(--dso-selectable-color, #39870c);block-size:12px;inline-size:12px}.sc-dso-selectable-h input[type=radio].sc-dso-selectable+label.sc-dso-selectable::before{border-radius:50%}.sc-dso-selectable-h input[type=radio].sc-dso-selectable+label.sc-dso-selectable::after{background-color:transparent;border-radius:50%;content:"";block-size:12px;inset-inline-start:6px;opacity:0;position:absolute;inset-block-start:6px;inline-size:12px;zoom:1}.sc-dso-selectable-h input[type=radio].sc-dso-selectable:checked+label.sc-dso-selectable::after{background-color:var(--dso-selectable-color, #39870c);opacity:1}[invalid].sc-dso-selectable-h:not([invalid=false]){--dso-selectable-color:#ce3f51}.sc-dso-selectable-h>dso-info.sc-dso-selectable{float:none;margin-block:8px 0;margin-inline:0 16px;inline-size:100%}.sc-dso-selectable-h .dso-selectable-options.sc-dso-selectable{list-style:none;margin-block-start:8px;padding-inline-start:0}.sc-dso-selectable-h .dso-selectable-options.sc-dso-selectable li.sc-dso-selectable+li.sc-dso-selectable{margin-block-start:8px}.sc-dso-selectable-h:not(:last-child){margin-block-end:8px}*.sc-dso-selectable,*.sc-dso-selectable::after,*.sc-dso-selectable::before{box-sizing:border-box}.dso-selectable-container.sc-dso-selectable{display:inline-block}.dso-selectable-container.sc-dso-selectable .dso-selectable-input-wrapper.sc-dso-selectable{display:inline-block;min-block-size:24px}.dso-selectable-container.sc-dso-selectable .dso-selectable-input-wrapper.sc-dso-selectable:focus-within.dso-keyboard-focus{position:relative;inset-inline-start:-32px;padding-inline-start:32px;margin-inline-end:-32px;border-radius:2px;outline-offset:3px;outline:3px solid #008ccc}.dso-selectable-container.sc-dso-selectable .dso-selectable-input-wrapper.sc-dso-selectable input[type=radio].sc-dso-selectable:focus+label.sc-dso-selectable::before,.dso-selectable-container.sc-dso-selectable .dso-selectable-input-wrapper.sc-dso-selectable input[type=checkbox].sc-dso-selectable:focus+label.sc-dso-selectable::before{box-shadow:0 0 0 2px var(--dso-selectable-color, #275937);block-size:20px;inset-inline-start:2px;inset-block-start:2px;inline-size:20px}';const r=class{constructor(t){e(this,t);this.dsoChange=s(this,"dsoChange",7);this.infoActive=false;this.keyboardFocus=false;this.fallbackIdentifier=i("DsoSelectable");this.handleOnChange=e=>{const{target:s}=e;this.dsoChange.emit({originalEvent:e,checked:s instanceof HTMLInputElement&&s.checked});l(this.host)}}async toggleInfo(e){this.infoActive=e!==null&&e!==void 0?e:!this.infoActive}componentDidLoad(){var e;(e=this.mutationObserver)===null||e===void 0?void 0:e.disconnect();this.mutationObserver=new MutationObserver((()=>l(this.host)));this.mutationObserver.observe(this.host,{childList:true});this.setIndeterminate()}disconnectedCallback(){var e;(e=this.mutationObserver)===null||e===void 0?void 0:e.disconnect()}setIndeterminate(){if(!(this.input instanceof HTMLInputElement)||this.type!=="checkbox"){return}this.input.indeterminate=!!this.indeterminate}render(){var e;const s=!!this.host.querySelector('[slot="info"]');return t(o,{key:"6be928de297ac8c9e25bfee2d06c39aa3325223a"},t("div",{key:"95816f8f3bf9c78b767e722c101b3de3ebdc02c7",class:"dso-selectable-container"},t("div",{key:"e357c54e22edca90183d8d02c5ac18383214c1d3",class:a("dso-selectable-input-wrapper",{"dso-keyboard-focus":this.keyboardFocus})},t("input",{key:"cf93d6a44737dc536a79c7d3234d3ac18a0fb32b",type:this.type,id:this.getIdentifier(),value:this.value,name:this.name,"aria-invalid":(e=this.invalid)===null||e===void 0?void 0:e.toString(),"aria-describedby":s&&this.infoFixed?this.describedById:undefined,"aria-labelledBy":this.labelledById,disabled:this.disabled,required:this.required,checked:this.checked,onChange:this.handleOnChange,onBlur:()=>this.keyboardFocus=false,onKeyUp:()=>this.keyboardFocus=true,ref:e=>this.input=e}),!this.labelledById?t("label",{htmlFor:this.getIdentifier()},t("slot",null)):t("label",null,t("slot",null))),s&&!this.infoFixed&&t("dso-info-button",{key:"ccca28238ea3c20c8d85964034e00b08d70b18d2",active:this.infoActive,onDsoToggle:e=>this.infoActive=e.detail.active})),s&&t("dso-info",{key:"e6141cd94e9c499a4b18e791793e5e1a4daa439d",id:s&&this.infoFixed?this.describedById:undefined,fixed:this.infoFixed,active:this.infoActive,onDsoClose:()=>this.infoActive=false},t("div",{key:"32872781b1a8ad9d1649e88f3725e1eadc775a4b"},t("slot",{key:"014b75f1bdf48b4f7f171bd32d6717f3a7d52a90",name:"info"}))),t("slot",{key:"9879fc525dcfcf7cac3c6cfd99c142e8fc5adb19",name:"options"}))}componentDidRender(){if(this.input&&typeof this.checked==="boolean"&&this.input.checked!==this.checked){this.input.checked=this.checked}}getIdentifier(){var e;return(e=this.identifier)!==null&&e!==void 0?e:this.fallbackIdentifier}get host(){return c(this)}static get watchers(){return{indeterminate:["setIndeterminate"]}}};r.style=b;export{n as dso_info,r as dso_selectable};
|
|
2
|
+
//# sourceMappingURL=p-4eefa210.entry.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["infoCss","Info","render","h","Fragment","key","this","fixed","type","onClick","e","dsoClose","emit","icon","class","selectableCss","Selectable","constructor","hostRef","infoActive","keyboardFocus","fallbackIdentifier","createIdentifier","handleOnChange","target","dsoChange","originalEvent","checked","HTMLInputElement","forceUpdate","host","toggleInfo","active","componentDidLoad","_a","mutationObserver","disconnect","MutationObserver","observe","childList","setIndeterminate","disconnectedCallback","input","indeterminate","hasInfo","querySelector","clsx","id","getIdentifier","value","name","invalid","toString","infoFixed","describedById","undefined","labelledById","disabled","required","onChange","onBlur","onKeyUp","ref","el","htmlFor","onDsoToggle","detail","onDsoClose","componentDidRender","identifier"],"sources":["src/components/info/info.scss?tag=dso-info&encapsulation=shadow","src/components/info/info.tsx","src/components/selectable/selectable.scss?tag=dso-selectable&encapsulation=scoped","src/components/selectable/selectable.tsx"],"sourcesContent":["@use \"~dso-toolkit/src/utilities\";\r\n@use \"~dso-toolkit/src/components/button\";\r\n@use \"~dso-toolkit/src/components/info\";\r\n\r\n:host {\r\n display: block;\r\n\r\n @include info.root();\r\n}\r\n\r\n:host(:not([active], [fixed])),\r\n:host([active=\"false\"]:not([fixed])),\r\n:host([active=\"false\"][fixed=\"false\"]) {\r\n display: none;\r\n}\r\n\r\nbutton {\r\n @include button.element();\r\n}\r\n\r\n@include utilities.box-sizing();\r\n\r\n.sr-only {\r\n @include utilities.sr-only();\r\n}\r\n","import { h, Component, Event, Prop, EventEmitter, Fragment } from \"@stencil/core\";\r\n\r\n@Component({\r\n tag: \"dso-info\",\r\n styleUrl: \"./info.scss\",\r\n shadow: true,\r\n})\r\nexport class Info {\r\n /**\r\n * Set to true if the Info should not be toggled and always visible.\r\n */\r\n @Prop({ reflect: true })\r\n fixed?: boolean;\r\n\r\n /**\r\n * Whether the Info is active.\r\n */\r\n @Prop({ reflect: true })\r\n active?: boolean;\r\n\r\n /**\r\n * Emitted when the user activates the close button.\r\n */\r\n @Event()\r\n dsoClose!: EventEmitter<MouseEvent>;\r\n\r\n render() {\r\n return (\r\n <Fragment>\r\n <slot></slot>\r\n {!this.fixed && (\r\n <button type=\"button\" onClick={(e) => this.dsoClose.emit(e)}>\r\n <dso-icon icon=\"times\"></dso-icon>\r\n <span class=\"sr-only\">Sluiten</span>\r\n </button>\r\n )}\r\n </Fragment>\r\n );\r\n }\r\n}\r\n","@use \"~dso-toolkit/src/utilities\";\r\n@use \"~dso-toolkit/src/components/selectable\";\r\n@use \"~dso-toolkit/src/variables/units\";\r\n\r\n:host {\r\n padding-inline-start: selectable.$symbol-indent;\r\n\r\n @include selectable.root(false);\r\n\r\n &[invalid]:not([invalid=\"false\"]) {\r\n @include selectable.invalid();\r\n }\r\n\r\n @include selectable.children(\"dso-info\");\r\n}\r\n\r\n:host(:not(:last-child)) {\r\n @include selectable.notLastChild();\r\n}\r\n\r\n@include utilities.box-sizing();\r\n\r\n.dso-selectable-container {\r\n display: inline-block;\r\n\r\n .dso-selectable-input-wrapper {\r\n display: inline-block;\r\n min-block-size: units.$u3;\r\n\r\n &:focus-within.dso-keyboard-focus {\r\n position: relative;\r\n inset-inline-start: -(selectable.$symbol-indent);\r\n\r\n padding-inline-start: selectable.$symbol-indent;\r\n\r\n margin-inline-end: -(selectable.$symbol-indent);\r\n\r\n @include utilities.focus-outline();\r\n }\r\n\r\n input[type=\"radio\"],\r\n input[type=\"checkbox\"] {\r\n &:focus + label::before {\r\n @include selectable.selectableBoxShadow(\r\n selectable.$border-width,\r\n var(--dso-selectable-color, selectable.$valid-color)\r\n );\r\n }\r\n }\r\n }\r\n}\r\n","import {\r\n h,\r\n Component,\r\n Prop,\r\n Event,\r\n EventEmitter,\r\n Fragment,\r\n Element,\r\n State,\r\n forceUpdate,\r\n Watch,\r\n Method,\r\n ComponentInterface,\r\n} from \"@stencil/core\";\r\nimport clsx from \"clsx\";\r\nimport { createIdentifier } from \"../../utils/create-identifier\";\r\nimport { SelectableChangeEvent } from \"./selectable.interfaces\";\r\n\r\n/**\r\n * @slot - The label for this control\r\n * @slot info - Rich Content to be slotted in Info.\r\n * @slot options - for further nested selectable options: `<ul class=\"dso-selectable-options\" slot=\"options\">` and wrap each Selectable in a `<li>`.\r\n */\r\n@Component({\r\n tag: \"dso-selectable\",\r\n styleUrl: \"selectable.scss\",\r\n scoped: true,\r\n})\r\nexport class Selectable implements ComponentInterface {\r\n /**\r\n * Type of Selectable.\r\n *\r\n * `checkbox`: Multiple options\r\n * `radio`: Single option.\r\n */\r\n @Prop()\r\n type!: \"checkbox\" | \"radio\";\r\n\r\n /**\r\n * To set `<input id>` attribute for external references.\r\n */\r\n @Prop()\r\n identifier?: string;\r\n\r\n /**\r\n * Name of the Selectable. Can be used to group Selectables.\r\n */\r\n @Prop()\r\n name?: string;\r\n\r\n /**\r\n * The value of the Selectable.\r\n */\r\n @Prop()\r\n value!: string;\r\n\r\n /**\r\n * Set to true of the current value is not valid.\r\n */\r\n @Prop()\r\n invalid?: boolean;\r\n\r\n /**\r\n * To link this control to an element that describes it.\r\n */\r\n @Prop()\r\n describedById?: string;\r\n\r\n /**\r\n * To link this control to an element that labels it.\r\n */\r\n @Prop()\r\n labelledById?: string;\r\n\r\n /**\r\n * To disable the Selectable.\r\n */\r\n @Prop()\r\n disabled?: boolean;\r\n\r\n /**\r\n * To mark the Selectable as required.\r\n */\r\n @Prop()\r\n required?: boolean;\r\n\r\n /**\r\n * Mark the Selectable as checked\r\n */\r\n @Prop({ reflect: true })\r\n checked?: boolean;\r\n\r\n /**\r\n * An indeterminate state is neither true or false. It means the answer is somewhere in between.\r\n *\r\n * Can be used to indicate child Selectables that are a mix of checked and unchecked.\r\n */\r\n @Prop()\r\n indeterminate?: boolean;\r\n\r\n /**\r\n * Set to true if the Info should not be toggled and always visible.\r\n */\r\n @Prop()\r\n infoFixed?: boolean;\r\n\r\n /**\r\n * Emitted when the user checks or unchecks the Selectable.\r\n */\r\n @Event()\r\n dsoChange!: EventEmitter<SelectableChangeEvent>;\r\n\r\n @Element()\r\n host!: HTMLDsoSelectableElement;\r\n\r\n @State()\r\n infoActive = false;\r\n\r\n @State()\r\n keyboardFocus = false;\r\n\r\n /**\r\n * Method to toggle the Info. Is set to `active` when passed.\r\n *\r\n * If `active` is not passed, Info is toggled to opposite value.\r\n * @param active\r\n */\r\n @Method()\r\n async toggleInfo(active?: boolean) {\r\n this.infoActive = active ?? !this.infoActive;\r\n }\r\n\r\n private mutationObserver?: MutationObserver;\r\n\r\n private fallbackIdentifier = createIdentifier(\"DsoSelectable\");\r\n\r\n private input: HTMLInputElement | undefined;\r\n\r\n private handleOnChange = (e: Event) => {\r\n const { target } = e;\r\n\r\n this.dsoChange.emit({\r\n originalEvent: e,\r\n checked: target instanceof HTMLInputElement && target.checked,\r\n });\r\n\r\n forceUpdate(this.host);\r\n };\r\n\r\n componentDidLoad() {\r\n this.mutationObserver?.disconnect();\r\n\r\n this.mutationObserver = new MutationObserver(() => forceUpdate(this.host));\r\n this.mutationObserver.observe(this.host, {\r\n childList: true,\r\n });\r\n\r\n this.setIndeterminate();\r\n }\r\n\r\n disconnectedCallback() {\r\n this.mutationObserver?.disconnect();\r\n }\r\n\r\n @Watch(\"indeterminate\")\r\n setIndeterminate() {\r\n if (!(this.input instanceof HTMLInputElement) || this.type !== \"checkbox\") {\r\n return;\r\n }\r\n\r\n this.input.indeterminate = !!this.indeterminate;\r\n }\r\n\r\n render() {\r\n const hasInfo = !!this.host.querySelector('[slot=\"info\"]');\r\n\r\n return (\r\n <Fragment>\r\n <div class=\"dso-selectable-container\">\r\n <div class={clsx(\"dso-selectable-input-wrapper\", { \"dso-keyboard-focus\": this.keyboardFocus })}>\r\n <input\r\n type={this.type}\r\n id={this.getIdentifier()}\r\n value={this.value}\r\n name={this.name}\r\n aria-invalid={this.invalid?.toString()}\r\n aria-describedby={hasInfo && this.infoFixed ? this.describedById : undefined}\r\n aria-labelledBy={this.labelledById}\r\n disabled={this.disabled}\r\n required={this.required}\r\n checked={this.checked}\r\n onChange={this.handleOnChange}\r\n onBlur={() => (this.keyboardFocus = false)}\r\n onKeyUp={() => (this.keyboardFocus = true)}\r\n ref={(el) => (this.input = el)}\r\n />\r\n {!this.labelledById ? (\r\n <label htmlFor={this.getIdentifier()}>\r\n <slot />\r\n </label>\r\n ) : (\r\n <label>\r\n <slot />\r\n </label>\r\n )}\r\n </div>\r\n {hasInfo && !this.infoFixed && (\r\n <dso-info-button\r\n active={this.infoActive}\r\n onDsoToggle={(e) => (this.infoActive = e.detail.active)}\r\n ></dso-info-button>\r\n )}\r\n </div>\r\n {hasInfo && (\r\n <dso-info\r\n id={hasInfo && this.infoFixed ? this.describedById : undefined}\r\n fixed={this.infoFixed}\r\n active={this.infoActive}\r\n onDsoClose={() => (this.infoActive = false)}\r\n >\r\n <div>\r\n <slot name=\"info\"></slot>\r\n </div>\r\n </dso-info>\r\n )}\r\n <slot name=\"options\" />\r\n </Fragment>\r\n );\r\n }\r\n\r\n componentDidRender(): void {\r\n if (this.input && typeof this.checked === \"boolean\" && this.input.checked !== this.checked) {\r\n this.input.checked = this.checked;\r\n }\r\n }\r\n\r\n private getIdentifier(): string {\r\n return this.identifier ?? this.fallbackIdentifier;\r\n }\r\n}\r\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["infoCss","Info","render","h","Fragment","key","this","fixed","type","onClick","e","dsoClose","emit","icon","class","selectableCss","Selectable","constructor","hostRef","infoActive","keyboardFocus","fallbackIdentifier","createIdentifier","handleOnChange","target","dsoChange","originalEvent","checked","HTMLInputElement","forceUpdate","host","toggleInfo","active","componentDidLoad","_a","mutationObserver","disconnect","MutationObserver","observe","childList","setIndeterminate","disconnectedCallback","input","indeterminate","hasInfo","querySelector","clsx","id","getIdentifier","value","name","invalid","toString","infoFixed","describedById","undefined","labelledById","disabled","required","onChange","onBlur","onKeyUp","ref","el","htmlFor","onDsoToggle","detail","onDsoClose","componentDidRender","identifier"],"sources":["src/components/info/info.scss?tag=dso-info&encapsulation=shadow","src/components/info/info.tsx","src/components/selectable/selectable.scss?tag=dso-selectable&encapsulation=scoped","src/components/selectable/selectable.tsx"],"sourcesContent":["@use \"~dso-toolkit/src/utilities\";\r\n@use \"~dso-toolkit/src/components/button\";\r\n@use \"~dso-toolkit/src/components/info\";\r\n\r\n:host {\r\n display: block;\r\n\r\n @include info.root();\r\n}\r\n\r\n:host(:not([active], [fixed])),\r\n:host([active=\"false\"]:not([fixed])),\r\n:host([active=\"false\"][fixed=\"false\"]) {\r\n display: none;\r\n}\r\n\r\nbutton {\r\n @include button.element();\r\n}\r\n\r\n@include utilities.box-sizing();\r\n\r\n.sr-only {\r\n @include utilities.sr-only();\r\n}\r\n","import { h, Component, Event, Prop, EventEmitter, Fragment } from \"@stencil/core\";\r\n\r\n@Component({\r\n tag: \"dso-info\",\r\n styleUrl: \"./info.scss\",\r\n shadow: true,\r\n})\r\nexport class Info {\r\n /**\r\n * Set to true if the Info should not be toggled and always visible.\r\n */\r\n @Prop({ reflect: true })\r\n fixed?: boolean;\r\n\r\n /**\r\n * Whether the Info is active.\r\n */\r\n @Prop({ reflect: true })\r\n active?: boolean;\r\n\r\n /**\r\n * Emitted when the user activates the close button.\r\n */\r\n @Event()\r\n dsoClose!: EventEmitter<MouseEvent>;\r\n\r\n render() {\r\n return (\r\n <Fragment>\r\n <slot></slot>\r\n {!this.fixed && (\r\n <button type=\"button\" onClick={(e) => this.dsoClose.emit(e)}>\r\n <dso-icon icon=\"times\"></dso-icon>\r\n <span class=\"sr-only\">Sluiten</span>\r\n </button>\r\n )}\r\n </Fragment>\r\n );\r\n }\r\n}\r\n","@use \"~dso-toolkit/src/utilities\";\r\n@use \"~dso-toolkit/src/components/selectable\";\r\n@use \"~dso-toolkit/src/variables/units\";\r\n\r\n:host {\r\n padding-inline-start: selectable.$symbol-indent;\r\n\r\n @include selectable.root(false);\r\n\r\n &[invalid]:not([invalid=\"false\"]) {\r\n @include selectable.invalid();\r\n }\r\n\r\n @include selectable.children(\"dso-info\");\r\n}\r\n\r\n:host(:not(:last-child)) {\r\n @include selectable.notLastChild();\r\n}\r\n\r\n@include utilities.box-sizing();\r\n\r\n.dso-selectable-container {\r\n display: inline-block;\r\n\r\n .dso-selectable-input-wrapper {\r\n display: inline-block;\r\n min-block-size: units.$u3;\r\n\r\n &:focus-within.dso-keyboard-focus {\r\n position: relative;\r\n inset-inline-start: -(selectable.$symbol-indent);\r\n\r\n padding-inline-start: selectable.$symbol-indent;\r\n\r\n margin-inline-end: -(selectable.$symbol-indent);\r\n\r\n @include utilities.focus-outline();\r\n }\r\n\r\n input[type=\"radio\"],\r\n input[type=\"checkbox\"] {\r\n &:focus + label::before {\r\n @include selectable.selectableBoxShadow(\r\n selectable.$border-width,\r\n var(--dso-selectable-color, selectable.$valid-color)\r\n );\r\n }\r\n }\r\n }\r\n}\r\n","import {\r\n h,\r\n Component,\r\n Prop,\r\n Event,\r\n EventEmitter,\r\n Fragment,\r\n Element,\r\n State,\r\n forceUpdate,\r\n Watch,\r\n Method,\r\n ComponentInterface,\r\n} from \"@stencil/core\";\r\nimport clsx from \"clsx\";\r\nimport { createIdentifier } from \"../../utils/create-identifier\";\r\nimport { SelectableChangeEvent } from \"./selectable.interfaces\";\r\n\r\n/**\r\n * @slot - The label for this control\r\n * @slot info - Rich Content to be slotted in Info.\r\n * @slot options - for further nested selectable options: `<ul class=\"dso-selectable-options\" slot=\"options\">` and wrap each Selectable in a `<li>`.\r\n */\r\n@Component({\r\n tag: \"dso-selectable\",\r\n styleUrl: \"selectable.scss\",\r\n scoped: true,\r\n})\r\nexport class Selectable implements ComponentInterface {\r\n /**\r\n * Type of Selectable.\r\n *\r\n * `checkbox`: Multiple options\r\n * `radio`: Single option.\r\n */\r\n @Prop()\r\n type!: \"checkbox\" | \"radio\";\r\n\r\n /**\r\n * To set `<input id>` attribute for external references.\r\n */\r\n @Prop()\r\n identifier?: string;\r\n\r\n /**\r\n * Name of the Selectable. Can be used to group Selectables.\r\n */\r\n @Prop()\r\n name?: string;\r\n\r\n /**\r\n * The value of the Selectable.\r\n */\r\n @Prop()\r\n value!: string;\r\n\r\n /**\r\n * Set to true of the current value is not valid.\r\n */\r\n @Prop()\r\n invalid?: boolean;\r\n\r\n /**\r\n * To link this control to an element that describes it.\r\n */\r\n @Prop()\r\n describedById?: string;\r\n\r\n /**\r\n * To link this control to an element that labels it.\r\n */\r\n @Prop()\r\n labelledById?: string;\r\n\r\n /**\r\n * To disable the Selectable.\r\n */\r\n @Prop()\r\n disabled?: boolean;\r\n\r\n /**\r\n * To mark the Selectable as required.\r\n */\r\n @Prop()\r\n required?: boolean;\r\n\r\n /**\r\n * Mark the Selectable as checked\r\n */\r\n @Prop({ reflect: true })\r\n checked?: boolean;\r\n\r\n /**\r\n * An indeterminate state is neither true or false. It means the answer is somewhere in between.\r\n *\r\n * Can be used to indicate child Selectables that are a mix of checked and unchecked.\r\n */\r\n @Prop()\r\n indeterminate?: boolean;\r\n\r\n /**\r\n * Set to true if the Info should not be toggled and always visible.\r\n */\r\n @Prop()\r\n infoFixed?: boolean;\r\n\r\n /**\r\n * Emitted when the user checks or unchecks the Selectable.\r\n */\r\n @Event()\r\n dsoChange!: EventEmitter<SelectableChangeEvent>;\r\n\r\n @Element()\r\n host!: HTMLDsoSelectableElement;\r\n\r\n @State()\r\n infoActive = false;\r\n\r\n @State()\r\n keyboardFocus = false;\r\n\r\n /**\r\n * Method to toggle the Info. Is set to `active` when passed.\r\n *\r\n * If `active` is not passed, Info is toggled to opposite value.\r\n * @param active\r\n */\r\n @Method()\r\n async toggleInfo(active?: boolean) {\r\n this.infoActive = active ?? !this.infoActive;\r\n }\r\n\r\n private mutationObserver?: MutationObserver;\r\n\r\n private fallbackIdentifier = createIdentifier(\"DsoSelectable\");\r\n\r\n private input: HTMLInputElement | undefined;\r\n\r\n private handleOnChange = (e: Event) => {\r\n const { target } = e;\r\n\r\n this.dsoChange.emit({\r\n originalEvent: e,\r\n checked: target instanceof HTMLInputElement && target.checked,\r\n });\r\n\r\n forceUpdate(this.host);\r\n };\r\n\r\n componentDidLoad() {\r\n this.mutationObserver?.disconnect();\r\n\r\n this.mutationObserver = new MutationObserver(() => forceUpdate(this.host));\r\n this.mutationObserver.observe(this.host, {\r\n childList: true,\r\n });\r\n\r\n this.setIndeterminate();\r\n }\r\n\r\n disconnectedCallback() {\r\n this.mutationObserver?.disconnect();\r\n }\r\n\r\n @Watch(\"indeterminate\")\r\n setIndeterminate() {\r\n if (!(this.input instanceof HTMLInputElement) || this.type !== \"checkbox\") {\r\n return;\r\n }\r\n\r\n this.input.indeterminate = !!this.indeterminate;\r\n }\r\n\r\n render() {\r\n const hasInfo = !!this.host.querySelector('[slot=\"info\"]');\r\n\r\n return (\r\n <Fragment>\r\n <div class=\"dso-selectable-container\">\r\n <div class={clsx(\"dso-selectable-input-wrapper\", { \"dso-keyboard-focus\": this.keyboardFocus })}>\r\n <input\r\n type={this.type}\r\n id={this.getIdentifier()}\r\n value={this.value}\r\n name={this.name}\r\n aria-invalid={this.invalid?.toString()}\r\n aria-describedby={hasInfo && this.infoFixed ? this.describedById : undefined}\r\n aria-labelledBy={this.labelledById}\r\n disabled={this.disabled}\r\n required={this.required}\r\n checked={this.checked}\r\n onChange={this.handleOnChange}\r\n onBlur={() => (this.keyboardFocus = false)}\r\n onKeyUp={() => (this.keyboardFocus = true)}\r\n ref={(el) => (this.input = el)}\r\n />\r\n {!this.labelledById ? (\r\n <label htmlFor={this.getIdentifier()}>\r\n <slot />\r\n </label>\r\n ) : (\r\n <label>\r\n <slot />\r\n </label>\r\n )}\r\n </div>\r\n {hasInfo && !this.infoFixed && (\r\n <dso-info-button\r\n active={this.infoActive}\r\n onDsoToggle={(e) => (this.infoActive = e.detail.active)}\r\n ></dso-info-button>\r\n )}\r\n </div>\r\n {hasInfo && (\r\n <dso-info\r\n id={hasInfo && this.infoFixed ? this.describedById : undefined}\r\n fixed={this.infoFixed}\r\n active={this.infoActive}\r\n onDsoClose={() => (this.infoActive = false)}\r\n >\r\n <div>\r\n <slot name=\"info\"></slot>\r\n </div>\r\n </dso-info>\r\n )}\r\n <slot name=\"options\" />\r\n </Fragment>\r\n );\r\n }\r\n\r\n componentDidRender(): void {\r\n if (this.input && typeof this.checked === \"boolean\" && this.input.checked !== this.checked) {\r\n this.input.checked = this.checked;\r\n }\r\n }\r\n\r\n private getIdentifier(): string {\r\n return this.identifier ?? this.fallbackIdentifier;\r\n }\r\n}\r\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{r as n,c as o,h as l,F as e}from"./p-BzEnSYbR.js";import{i as r}from"./p-Hgv-pDpy.js";const a=':host {\n max-block-size: 3rem;\n block-size: 3rem;\n display: grid;\n grid-template-areas: "target wordmark label";\n grid-template-columns: repeat(3, max-content);\n grid-template-rows: 100%;\n gap: 16px;\n font-size: 1.5625rem;\n font-weight: 500;\n align-items: center;\n container-type: size;\n container-name: logo;\n}\n:host .logo-url,\n:host .logo-label-url {\n display: flex;\n align-items: center;\n gap: 16px;\n text-decoration: none;\n}\n:host .logo-url:hover, :host .logo-url:focus-visible, :host .logo-url:active,\n:host .logo-label-url:hover,\n:host .logo-label-url:focus-visible,\n:host .logo-label-url:active {\n text-decoration: underline;\n}\n:host .logo-url, :host .logo-url:hover, :host .logo-url:focus, :host .logo-url:visited,\n:host .logo-label-url,\n:host .logo-label-url:hover,\n:host .logo-label-url:focus,\n:host .logo-label-url:visited {\n color: #275937;\n}\n\n:host([logo-url]:not([logo-url=""])[ribbon]:not([ribbon=""])) {\n grid-template-areas: "targetwordmark label";\n}\n:host([logo-url]:not([logo-url=""])[ribbon]:not([ribbon=""])) .logo-url,\n:host([logo-url]:not([logo-url=""])[ribbon]:not([ribbon=""])) .logo-ribbon {\n grid-area: targetwordmark;\n}\n\n.logo-label-url {\n grid-area: label;\n}\n\n.logo-target {\n grid-area: target;\n max-block-size: 48px;\n max-inline-size: 48px;\n inline-size: 100%;\n display: block;\n aspect-ratio: 1/1;\n}\n\n.logo-wordmark {\n grid-area: wordmark;\n font-size: 1.5625rem;\n}\n\n@container logo (max-height: 47px) {\n .logo-wordmark,\n .logo-label {\n font-size: 50cqb;\n line-height: 1;\n }\n}\n.logo-wordmark-omgevings {\n color: #39870c;\n}\n\n.logo-wordmark-loket {\n color: #275937;\n}\n\n.logo-label {\n grid-area: label;\n color: #275937;\n margin-inline-start: 1rem;\n}\n\n.logo-ribbon {\n grid-area: wordmark;\n place-self: start end;\n display: flex;\n place-items: center;\n background-color: #8b4a6a;\n border-radius: 3px;\n transform: rotate(3deg);\n padding-block: 0;\n padding-inline: 8px;\n font-size: 0.75rem;\n font-weight: normal;\n text-transform: uppercase;\n color: #fff;\n}\n@container logo (max-height: 47px) {\n .logo-ribbon {\n block-size: 28cqb;\n font-size: 25cqb;\n }\n}\n\n.inner {\n fill: #e17000;\n}\n\n.middle {\n fill: #275937;\n}\n\n.outer {\n fill: #80bc00;\n}\n\n@media screen and (max-width: 767px) {\n .logo-wordmark {\n font-size: initial;\n }\n :host([label]) {\n grid-template-areas: "target label";\n grid-template-columns: max-content minmax(130px, max-content);\n }\n :host([label]) .logo-wordmark {\n display: none;\n }\n :host([label]) .logo-ribbon {\n grid-area: label;\n }\n :host([label]) .logo-label {\n margin-inline-start: 0;\n font-size: initial;\n text-wrap: balance;\n overflow-wrap: normal;\n }\n :host([logo-url][ribbon]) .logo-label-url + .logo-ribbon {\n grid-area: label;\n }\n}\n@media screen and (max-width: 480px) {\n .logo-ribbon {\n transform: rotate(3deg) translateY(-7px);\n }\n}';const t=({name:n})=>{const o=n.split("|");return l(e,null,l("svg",{fill:"none",viewBox:"0 0 48 48",height:"100%",class:"logo-target"},l("path",{class:"outer",d:"M26 0a24 24 0 1 0 0 47.9A24 24 0 0 0 24 0Z"}),l("path",{class:"middle",d:"M24 8A16 16 0 0 0 8 24 16 16 0 1 0 24 8Z"}),l("path",{class:"inner",d:"M24 32a8 8 0 0 0 0-16 8 8 0 0 0 0 16Z"})),l("div",{class:"logo-wordmark"},l("span",{class:"logo-wordmark-omgevings"},o[0]),o.length===2&&l("span",{class:"logo-wordmark-loket"},o[1])))};const i=class{constructor(l){n(this,l);this.dsoLogoClick=o(this,"dsoLogoClick",7);this.dsoLabelClick=o(this,"dsoLabelClick",7);this.name="Omgevings|loket";this.handleLogoClick=n=>{this.dsoLogoClick.emit({originalEvent:n,url:this.logoUrl,isModifiedEvent:r(n)})};this.handleLabelClick=n=>{this.dsoLabelClick.emit({originalEvent:n,url:this.labelUrl,isModifiedEvent:r(n)})}}render(){return l(e,null,this.logoUrl?l("a",{class:"logo-url",href:this.logoUrl,onClick:this.handleLogoClick},l(t,{name:this.name})):l(t,{name:this.name}),this.label&&(!this.labelUrl?l("span",{class:"logo-label"},this.label):l("a",{class:"logo-label-url",href:this.labelUrl,onClick:this.handleLabelClick},l("span",{class:"logo-label"},this.label))),this.ribbon&&l("div",{key:"7610aa58ca6f96ae046979fc6775b7e81ed383d2",class:"logo-ribbon"},this.ribbon))}};i.style=a;export{i as dso_logo};
|
|
2
|
+
//# sourceMappingURL=p-5509732c.entry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["logoCss","DsoLogo","name","splittedName","split","h","Fragment","fill","viewBox","height","class","d","length","Logo","constructor","hostRef","this","handleLogoClick","e","dsoLogoClick","emit","originalEvent","url","logoUrl","isModifiedEvent","handleLabelClick","dsoLabelClick","labelUrl","render","href","onClick","label","ribbon","key"],"sources":["src/components/logo/logo.scss?tag=dso-logo&encapsulation=shadow","src/components/logo/logo.tsx"],"sourcesContent":["@use \"~dso-toolkit/src/variables/colors\";\r\n@use \"~dso-toolkit/src/variables/media-query-breakpoints\";\r\n@use \"~dso-toolkit/src/variables/typography\";\r\n@use \"~dso-toolkit/src/variables/units\";\r\n@use \"~dso-toolkit/src/components/anchor\";\r\n\r\n:host {\r\n max-block-size: units.$ru6;\r\n block-size: units.$ru6;\r\n display: grid;\r\n grid-template-areas: \"target wordmark label\";\r\n grid-template-columns: repeat(3, max-content);\r\n grid-template-rows: 100%;\r\n gap: units.$u2;\r\n font-size: 1.5625rem;\r\n font-weight: 500;\r\n align-items: center;\r\n container-type: size;\r\n container-name: logo;\r\n\r\n .logo-url,\r\n .logo-label-url {\r\n display: flex;\r\n align-items: center;\r\n gap: units.$u2;\r\n\r\n @include anchor.reverse();\r\n\r\n &,\r\n &:hover,\r\n &:focus,\r\n &:visited {\r\n color: colors.$bosgroen;\r\n }\r\n }\r\n}\r\n\r\n:host([logo-url]:not([logo-url=\"\"])[ribbon]:not([ribbon=\"\"])) {\r\n grid-template-areas: \"targetwordmark label\";\r\n\r\n .logo-url,\r\n .logo-ribbon {\r\n grid-area: targetwordmark;\r\n }\r\n}\r\n\r\n.logo-label-url {\r\n grid-area: label;\r\n}\r\n\r\n.logo-target {\r\n grid-area: target;\r\n max-block-size: units.$u6;\r\n max-inline-size: units.$u6;\r\n inline-size: 100%;\r\n display: block;\r\n aspect-ratio: 1 / 1;\r\n}\r\n\r\n.logo-wordmark {\r\n grid-area: wordmark;\r\n font-size: 1.5625rem;\r\n}\r\n\r\n@container logo (max-height: 47px) {\r\n .logo-wordmark,\r\n .logo-label {\r\n font-size: 50cqb;\r\n line-height: 1;\r\n }\r\n}\r\n\r\n.logo-wordmark-omgevings {\r\n color: colors.$grasgroen;\r\n}\r\n\r\n.logo-wordmark-loket {\r\n color: colors.$bosgroen;\r\n}\r\n\r\n.logo-label {\r\n grid-area: label;\r\n color: colors.$bosgroen;\r\n margin-inline-start: units.$ru2;\r\n}\r\n\r\n.logo-ribbon {\r\n grid-area: wordmark;\r\n place-self: start end;\r\n display: flex;\r\n place-items: center;\r\n\r\n background-color: colors.$mauve;\r\n border-radius: 3px;\r\n transform: rotate(3deg);\r\n padding-block: 0;\r\n padding-inline: 8px;\r\n\r\n font-size: 0.75rem;\r\n font-weight: normal;\r\n text-transform: uppercase;\r\n color: colors.$wit;\r\n\r\n @container logo (max-height: 47px) {\r\n & {\r\n block-size: 28cqb;\r\n font-size: 25cqb;\r\n }\r\n }\r\n}\r\n\r\n.inner {\r\n fill: colors.$oranje;\r\n}\r\n\r\n.middle {\r\n fill: colors.$bosgroen;\r\n}\r\n\r\n.outer {\r\n fill: #80bc00;\r\n}\r\n\r\n@media screen and (max-width: media-query-breakpoints.$screen-xs-max) {\r\n .logo-wordmark {\r\n font-size: initial;\r\n }\r\n\r\n // if the logo has a label, hide the wordmark on smaller screens and replace it with the label\r\n :host([label]) {\r\n grid-template-areas: \"target label\";\r\n grid-template-columns: max-content minmax(130px, max-content);\r\n\r\n .logo-wordmark {\r\n display: none;\r\n }\r\n\r\n .logo-ribbon {\r\n grid-area: label;\r\n }\r\n\r\n .logo-label {\r\n margin-inline-start: 0;\r\n font-size: initial;\r\n text-wrap: balance;\r\n overflow-wrap: normal;\r\n }\r\n }\r\n\r\n :host([logo-url][ribbon]) {\r\n .logo-label-url + .logo-ribbon {\r\n grid-area: label;\r\n }\r\n }\r\n}\r\n\r\n@media screen and (max-width: media-query-breakpoints.$screen-xs-min) {\r\n .logo-ribbon {\r\n transform: rotate(3deg) translateY(-7px);\r\n }\r\n}\r\n","import {\r\n Component,\r\n ComponentInterface,\r\n Fragment,\r\n Prop,\r\n h,\r\n Event,\r\n EventEmitter,\r\n FunctionalComponent,\r\n} from \"@stencil/core\";\r\nimport { isModifiedEvent } from \"../../utils/is-modified-event\";\r\nimport { LogoClickEvent, LogoLabelClickEvent } from \"./logo.interfaces\";\r\n\r\nconst DsoLogo: FunctionalComponent<{ name: string }> = ({ name }) => {\r\n const splittedName = name.split(\"|\");\r\n return (\r\n <>\r\n <svg fill=\"none\" viewBox=\"0 0 48 48\" height=\"100%\" class=\"logo-target\">\r\n <path class=\"outer\" d=\"M26 0a24 24 0 1 0 0 47.9A24 24 0 0 0 24 0Z\" />\r\n <path class=\"middle\" d=\"M24 8A16 16 0 0 0 8 24 16 16 0 1 0 24 8Z\" />\r\n <path class=\"inner\" d=\"M24 32a8 8 0 0 0 0-16 8 8 0 0 0 0 16Z\" />\r\n </svg>\r\n <div class=\"logo-wordmark\">\r\n <span class=\"logo-wordmark-omgevings\">{splittedName[0]}</span>\r\n {splittedName.length === 2 && <span class=\"logo-wordmark-loket\">{splittedName[1]}</span>}\r\n </div>\r\n </>\r\n );\r\n};\r\n\r\n@Component({\r\n tag: \"dso-logo\",\r\n styleUrl: \"logo.scss\",\r\n shadow: true,\r\n})\r\nexport class Logo implements ComponentInterface {\r\n /**\r\n * An alternative name for the logo wordmark Omgevingsloket. For instance `Environment| Desk`. It should contains a\r\n * pipe-character: the left-hand side of the pipe will be shown in grasgroen, the right-hand side of the pipe will be\r\n * shown in bosgroen.\r\n * When omitted the logo wordmark will default to Omgevingsloket, with 'Omgevings' shown in grasgroen and 'loket' in\r\n * bosgroen.\r\n */\r\n @Prop({ reflect: true })\r\n name = \"Omgevings|loket\";\r\n /**\r\n * The url the logo is pointing to.\r\n */\r\n @Prop({ reflect: true })\r\n logoUrl?: string;\r\n\r\n /**\r\n * The label clarifies the service within the Omgevingsloket, shown\r\n * as a subtitle (and on smaller screens as the main wordmark itself).\r\n */\r\n @Prop({ reflect: true })\r\n label?: string;\r\n\r\n /**\r\n * The url the label is pointing to.\r\n */\r\n @Prop({ reflect: true })\r\n labelUrl?: string;\r\n\r\n /**\r\n * The ribbon contains the text for a possible 'sticker' on top of the logo.\r\n * Used to clarify the (non-production) server environment (\"int\", \"kta\", \"pfm\", \"pre\", or \"dmo\")\r\n */\r\n @Prop({ reflect: true })\r\n ribbon?: string;\r\n\r\n /**\r\n * Emitted when the logo is clicked (only when logoUrl is set).\r\n */\r\n @Event()\r\n dsoLogoClick!: EventEmitter<LogoClickEvent>;\r\n\r\n /**\r\n * Emitted when the label in the logo is clicked (only when labelUrl is set).\r\n */\r\n @Event()\r\n dsoLabelClick!: EventEmitter<LogoLabelClickEvent>;\r\n\r\n private handleLogoClick = (e: MouseEvent) => {\r\n this.dsoLogoClick.emit({ originalEvent: e, url: this.logoUrl!, isModifiedEvent: isModifiedEvent(e) });\r\n };\r\n\r\n private handleLabelClick = (e: MouseEvent) => {\r\n this.dsoLabelClick.emit({ originalEvent: e, url: this.labelUrl!, isModifiedEvent: isModifiedEvent(e) });\r\n };\r\n\r\n render() {\r\n return (\r\n <>\r\n {this.logoUrl ? (\r\n <a class=\"logo-url\" href={this.logoUrl} onClick={this.handleLogoClick}>\r\n <DsoLogo name={this.name} />\r\n </a>\r\n ) : (\r\n <DsoLogo name={this.name} />\r\n )}\r\n\r\n {this.label &&\r\n (!this.labelUrl ? (\r\n <span class=\"logo-label\">{this.label}</span>\r\n ) : (\r\n <a class=\"logo-label-url\" href={this.labelUrl} onClick={this.handleLabelClick}>\r\n <span class=\"logo-label\">{this.label}</span>\r\n </a>\r\n ))}\r\n {this.ribbon && <div class=\"logo-ribbon\">{this.ribbon}</div>}\r\n </>\r\n );\r\n }\r\n}\r\n"],"mappings":"6FAAA,MAAMA,EAAU,k+FCahB,MAAMC,EAAiD,EAAGC,WACxD,MAAMC,EAAeD,EAAKE,MAAM,KAChC,OACEC,EAAAC,EAAA,KACED,EAAA,OAAKE,KAAK,OAAOC,QAAQ,YAAYC,OAAO,OAAOC,MAAM,eACvDL,EAAA,QAAMK,MAAM,QAAQC,EAAE,+CACtBN,EAAA,QAAMK,MAAM,SAASC,EAAE,6CACvBN,EAAM,QAAAK,MAAM,QAAQC,EAAE,2CAExBN,EAAK,OAAAK,MAAM,iBACTL,EAAM,QAAAK,MAAM,2BAA2BP,EAAa,IACnDA,EAAaS,SAAW,GAAKP,EAAA,QAAMK,MAAM,uBAAuBP,EAAa,KAE/E,E,MASMU,EAAI,MALjB,WAAAC,CAAAC,G,kGAcEC,KAAId,KAAG,kBAuCCc,KAAAC,gBAAmBC,IACzBF,KAAKG,aAAaC,KAAK,CAAEC,cAAeH,EAAGI,IAAKN,KAAKO,QAAUC,gBAAiBA,EAAgBN,IAAK,EAG/FF,KAAAS,iBAAoBP,IAC1BF,KAAKU,cAAcN,KAAK,CAAEC,cAAeH,EAAGI,IAAKN,KAAKW,SAAWH,gBAAiBA,EAAgBN,IAAK,CA0B1G,CAvBC,MAAAU,GACE,OACEvB,EAAAC,EAAA,KACGU,KAAKO,QACJlB,EAAA,KAAGK,MAAM,WAAWmB,KAAMb,KAAKO,QAASO,QAASd,KAAKC,iBACpDZ,EAACJ,EAAO,CAACC,KAAMc,KAAKd,QAGtBG,EAACJ,EAAQ,CAAAC,KAAMc,KAAKd,OAGrBc,KAAKe,SACFf,KAAKW,SACLtB,EAAM,QAAAK,MAAM,cAAcM,KAAKe,OAE/B1B,EAAA,KAAGK,MAAM,iBAAiBmB,KAAMb,KAAKW,SAAUG,QAASd,KAAKS,kBAC3DpB,EAAM,QAAAK,MAAM,cAAcM,KAAKe,SAGpCf,KAAKgB,QAAU3B,EAAA,OAAA4B,IAAA,2CAAKvB,MAAM,eAAeM,KAAKgB,Q","ignoreList":[]}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{r as o,c as n,h as i,F as s,g as d}from"./p-BzEnSYbR.js";import{c as t}from"./p-ChV9xqsO.js";import{d as e}from"./p-DDU8nTJS.js";import{i as r}from"./p-D6dst_Em.js";import{i as l}from"./p-Hgv-pDpy.js";import"./p-BFTU3MAI.js";const a={en:{"dso-header":{menu:"Menu",login:"Log in",logout:"Log out",help:"Help",overflowMenu:"More"}},nl:{"dso-header":{menu:"Menu",login:"Inloggen",logout:"Uitloggen",help:"Help",overflowMenu:"Meer",userHome:"Mijn Omgevingsloket"}}};const p='*,*::after,*::before{box-sizing:border-box}:host{display:block}.dso-header{border-block-end:1px solid #ccc;display:flex;flex-wrap:wrap;position:relative}@media screen and (min-width: 768px){.dso-header{align-items:center}}@media screen and (max-width: 991px){.dso-header.use-drop-down{flex-wrap:nowrap}}.dso-header .dso-nav{border:0}.logo-container{flex:1 1 12.5rem;margin-inline-end:24px;padding-block-end:16px;padding-block-start:16px}.dso-header-session{display:flex;align-items:center;margin-inline-start:auto}.dso-header-session .profile .dso-tertiary,.dso-header-session .login .dso-tertiary,.dso-header-session .logout .dso-tertiary,.dso-header-session .help .dso-tertiary{display:flex;gap:0.5rem;cursor:pointer;border:0;background-color:transparent;padding-inline-start:0;outline-offset:2px;font-family:Asap, sans-serif;color:#39870c;font-size:1rem;font-weight:600;line-height:1.5;text-decoration:none}.dso-header-session .profile .dso-tertiary:hover,.dso-header-session .login .dso-tertiary:hover,.dso-header-session .logout .dso-tertiary:hover,.dso-header-session .help .dso-tertiary:hover{text-decoration:underline}.dso-header-session .profile{margin-inline-start:8px}.dso-header-session .profile+.logout,.dso-header-session .profile~.help{border-inline-start:3px solid #ccc;margin-inline-start:8px;padding-inline-start:8px}.dso-header-session .help a,.dso-header-session .help button{display:flex}.dso-navbar{flex-basis:100%}dso-dropdown-menu>button:not(.dso-primary):not(.dso-secondary):not(.dso-tertiary),dso-dropdown-menu>.dso-primary,dso-dropdown-menu>.dso-secondary,dso-dropdown-menu>.dso-tertiary{position:relative}dso-dropdown-menu>button:not(.dso-primary):not(.dso-secondary):not(.dso-tertiary)::after,dso-dropdown-menu>.dso-primary::after,dso-dropdown-menu>.dso-secondary::after,dso-dropdown-menu>.dso-tertiary::after{content:"";display:inline-block}dso-dropdown-menu>.dso-primary::after,dso-dropdown-menu>.dso-secondary::after{margin-inline-start:8px}dso-dropdown-menu .dso-group-label{color:#999;font-size:0.875em;font-weight:400;margin:0;padding-block:4px 2px;padding-inline:20px;text-transform:uppercase}dso-dropdown-menu ul{margin:0;padding:0}dso-dropdown-menu ul:not(:last-child){border-block-end:1px solid #e5e5e5;margin-block-end:11px;padding-block-end:11px}dso-dropdown-menu .dso-dropdown-options{background-clip:padding-box;background-color:#fff;border-radius:4px;border:1px solid rgba(0, 0, 0, 0.15);box-shadow:0 8px 10px 1px rgba(0, 0, 0, 0.4);font-size:1rem;min-inline-size:160px;padding-block:5px;padding-inline:0;z-index:220}dso-dropdown-menu .dso-dropdown-options li{list-style:none}dso-dropdown-menu .dso-dropdown-options li a:visited{color:#191919}dso-dropdown-menu .dso-dropdown-options li a,dso-dropdown-menu .dso-dropdown-options li button{text-decoration:none}dso-dropdown-menu .dso-dropdown-options li a:hover,dso-dropdown-menu .dso-dropdown-options li a:focus-visible,dso-dropdown-menu .dso-dropdown-options li a:active,dso-dropdown-menu .dso-dropdown-options li button:hover,dso-dropdown-menu .dso-dropdown-options li button:focus-visible,dso-dropdown-menu .dso-dropdown-options li button:active{text-decoration:underline}dso-dropdown-menu .dso-dropdown-options li a,dso-dropdown-menu .dso-dropdown-options li button{clear:both;color:#191919;display:block;font-weight:400;line-height:1.5;padding-block:3px;padding-inline:20px;text-decoration:none;white-space:nowrap}dso-dropdown-menu .dso-dropdown-options li a:hover,dso-dropdown-menu .dso-dropdown-options li a:focus,dso-dropdown-menu .dso-dropdown-options li button:hover,dso-dropdown-menu .dso-dropdown-options li button:focus{background-color:#39870c;border-color:#39870c;color:#fff;text-decoration:none}dso-dropdown-menu .dso-dropdown-options li button{background-color:transparent;border:0;border-radius:0;text-align:inherit;inline-size:100%}dso-dropdown-menu button{background-color:transparent;border:0;display:flex;font-family:Asap, sans-serif;align-items:center;position:relative}dso-dropdown-menu button dso-icon{inline-size:24px;block-size:24px;margin-inline-start:8px;padding-block-start:2px}dso-dropdown-menu button[aria-expanded=true] dso-icon{transform:rotate(180deg)}dso-dropdown-menu .dso-dropdown-options{border:0;border-radius:0;box-shadow:0 8px 10px 1px rgba(0, 0, 0, 0.4)}@media screen and (min-width: 768px){dso-dropdown-menu .dso-dropdown-options{inline-size:375px}}@media screen and (max-width: 767px){dso-dropdown-menu .dso-dropdown-options{inline-size:100%}}dso-dropdown-menu .dso-dropdown-options ul{margin:0;padding:0;list-style:none}dso-dropdown-menu .dso-dropdown-options ul li a,dso-dropdown-menu .dso-dropdown-options ul li button{display:block;padding:16px;color:#275937;font-size:1.25rem;white-space:pre-wrap;text-decoration:none}dso-dropdown-menu .dso-dropdown-options ul li a:focus-visible,dso-dropdown-menu .dso-dropdown-options ul li button:focus-visible{background-color:#39870c;color:#fff}dso-dropdown-menu .dso-dropdown-options ul li a:hover,dso-dropdown-menu .dso-dropdown-options ul li button:hover{background-color:#fff;color:#275937;text-decoration:underline}dso-dropdown-menu .dso-dropdown-options ul li a:visited,dso-dropdown-menu .dso-dropdown-options ul li button:visited{color:#275937}dso-dropdown-menu .dso-dropdown-options ul li button{inline-size:100%;text-align:start}dso-dropdown-menu .dso-dropdown-options ul li button dso-icon{margin-inline-start:8px}dso-dropdown-menu .dso-dropdown-options ul li.dso-active a{font-weight:600}dso-dropdown-menu .dso-dropdown-options ul li+li{border-block-start:1px solid #ccc}.dropdown{margin-inline-start:auto;display:flex;align-items:center}.dropdown dso-dropdown-menu{position:static}.dropdown dso-dropdown-menu .dso-dropdown-options{inset-inline-end:0;inset-block-start:100%;box-shadow:0 8px 10px 1px rgba(0, 0, 0, 0.4)}.dropdown dso-dropdown-menu>button{color:#39870c;font-size:16px;font-weight:600;line-height:normal;position:relative}.dropdown dso-dropdown-menu>button::after{margin-inline-start:8px;position:absolute;inset-inline-end:0px;inset-block-start:50%;transform:translateY(-50%)}.dropdown dso-dropdown-menu>button:hover,.dropdown dso-dropdown-menu>button:active{cursor:pointer;text-decoration:underline}.dso-nav{align-items:end;column-gap:32px;display:flex;list-style:none;margin-block-end:0;margin-block-start:0;padding-inline-start:0}.dso-nav>li{margin-block-end:4px}.dso-nav>li>a{display:block}.dso-nav>li>a,.dso-nav>li>a:hover,.dso-nav>li>a:focus,.dso-nav>li>a:visited{color:#275937}.dso-nav>li.dso-active,.dso-nav>li.is-active{margin-block-end:0}.dso-nav>li.dso-active>a,.dso-nav>li.is-active>a{border-block-end:4px solid #8b4a6a;font-weight:bold}.dso-nav.dso-nav-main{display:flex !important}.dso-nav.dso-nav-main>li>a{text-decoration:none;font-size:1.25em;line-height:1;margin-block-start:8px;padding-block:16px;padding-inline:0;white-space:nowrap}.dso-nav.dso-nav-main>li>a:hover,.dso-nav.dso-nav-main>li>a:focus-visible,.dso-nav.dso-nav-main>li>a:active{text-decoration:underline}.dso-nav.dso-nav-main dso-dropdown-menu .dso-dropdown-options{inset-inline-start:-1rem !important;inset-block-start:3px !important}.dso-nav.dso-nav-main dso-dropdown-menu button{font-size:1.25em;line-height:1;margin-block-start:8px;padding-block:16px;padding-inline:0;align-items:flex-end;color:#275937}.dso-nav.dso-nav-main dso-dropdown-menu button:hover,.dso-nav.dso-nav-main dso-dropdown-menu button:active{cursor:pointer;text-decoration:underline}.dso-nav.dso-nav-main dso-dropdown-menu button::after{margin-inline-start:8px;position:absolute;inset-inline-end:0px;inset-block-start:auto;transform:none}.dso-nav .menu-user-home{margin-inline-start:auto}.dso-nav .menu-user-home dso-icon{block-size:1em;margin-inline-end:8px;position:relative;inset-block-start:-2px;inline-size:1.2em}';const u=992;const h=class{constructor(s){o(this,s);this.dsoHeaderClick=n(this,"dsoHeaderClick",7);this.mainMenu=[];this.useDropDownMenu="auto";this.authStatus="none";this.showHelp=false;this.overflowMenuItems=0;this.dropdownOptionsOffset=0;this.text=r((()=>this.host),a);this.onWindowResize=e((()=>{var o,n;(o=this.dropdownElement)===null||o===void 0?void 0:o.removeAttribute("open");(n=this.dropdownElement)===null||n===void 0?void 0:n.removeAttribute("tabindex");this.setDropDownMenu();this.setOverflowMenu();if(this.showDropDown){this.dropdownOptionsOffset=this.calculateDropdownOptionsOffset()}}),100);this.MenuItem=o=>i("li",{class:o.active?"dso-active":undefined},i("a",{href:o.url,"aria-current":o.active?"page":undefined,onClick:n=>this.clickHandler(n,"menuItem",{menuItem:o})},o.label))}clickHandler(o,n,i){var s,d;this.dsoHeaderClick.emit({originalEvent:o,isModifiedEvent:l(o),type:n,menuItem:i===null||i===void 0?void 0:i.menuItem,url:(s=i===null||i===void 0?void 0:i.url)!==null&&s!==void 0?s:(d=i===null||i===void 0?void 0:i.menuItem)===null||d===void 0?void 0:d.url})}setShowDropDown(o){if(o==="auto"){this.setDropDownMenu();return}this.showDropDown=o==="always"}shrinkMenuToFit(){if(!this.wrapper||!this.nav){return}if(this.wrapper.clientWidth>=this.nav.clientWidth){return}if(this.mainMenu&&this.overflowMenuItems>=this.mainMenu.length){return}this.overflowMenuItems++}componentDidRender(){if(this.showDropDown){this.dropdownOptionsOffset=this.calculateDropdownOptionsOffset();return}window.setTimeout((()=>this.shrinkMenuToFit()),0)}componentDidLoad(){this.setShowDropDown(this.useDropDownMenu);if(this.showDropDown){this.dropdownOptionsOffset=this.calculateDropdownOptionsOffset()}}setOverflowMenu(){if(this.showDropDown){return}if(this.overflowMenuItems!==0){this.overflowMenuItems=0;return}this.shrinkMenuToFit()}setDropDownMenu(){if(this.useDropDownMenu!=="auto"){return}this.showDropDown=window.innerWidth<u}calculateDropdownOptionsOffset(){var o;if(!this.dropdownElement){return 0}return this.host.clientHeight-(((o=this.dropdownElement)===null||o===void 0?void 0:o.getBoundingClientRect().bottom)-this.host.getBoundingClientRect().top)}connectedCallback(){window.addEventListener("resize",this.onWindowResize)}disconnectedCallback(){window.removeEventListener("resize",this.onWindowResize)}render(){if(this.showDropDown===undefined){return}return i(s,null,i("div",{class:t("dso-header",{["use-drop-down"]:this.showDropDown}),ref:o=>this.wrapper=o},i("div",{class:"logo-container"},i("slot",{name:"logo"})),this.showDropDown&&this.mainMenu&&(this.mainMenu.length>0||this.userHomeUrl||this.authStatus!=="none")&&i("div",{class:"dropdown"},i("dso-dropdown-menu",{"dropdown-align":"right",strategy:"absolute",dropdownOptionsOffset:this.dropdownOptionsOffset,ref:o=>this.dropdownElement=o},i("button",{type:"button",slot:"toggle"},i("span",null,this.text("menu")),i("dso-icon",{icon:"chevron-down"})),i("div",{class:"dso-dropdown-options"},i("ul",null,this.mainMenu.map(this.MenuItem),this.userHomeUrl&&i("li",null,i("a",{href:this.userHomeUrl,onClick:o=>this.clickHandler(o,"userHome",{url:this.userHomeUrl})},this.text("userHome"))),this.userProfileUrl&&this.userProfileName&&this.authStatus==="loggedIn"&&i("li",null,i("a",{href:this.userProfileUrl,onClick:o=>this.clickHandler(o,"profile",{url:this.userProfileUrl})},this.userProfileName,i("span",{class:"profile-label"}," - Mijn profiel"))),this.authStatus==="loggedOut"&&i("li",null,this.loginUrl?i("a",{href:this.loginUrl,onClick:o=>this.clickHandler(o,"login",{url:this.loginUrl})},this.text("login")):i("button",{type:"button",onClick:o=>this.clickHandler(o,"login")},this.text("login"))),this.authStatus==="loggedIn"&&i("li",null,this.logoutUrl?i("a",{href:this.logoutUrl,onClick:o=>this.clickHandler(o,"logout",{url:this.logoutUrl})},this.text("logout")):i("button",{type:"button",onClick:o=>this.clickHandler(o,"logout")},this.text("logout"))),this.showHelp&&i("li",null,this.helpUrl?i("a",{href:this.helpUrl,class:"dso-tertiary",onClick:o=>this.clickHandler(o,"help",{url:this.helpUrl})},i("span",null,this.text("help")),i("dso-icon",{icon:"help"})):i("button",{type:"button",class:"dso-tertiary",onClick:o=>this.clickHandler(o,"help")},i("span",null,this.text("help")),i("dso-icon",{icon:"help"}))))))),!this.showDropDown&&i(s,null,i("div",{class:"dso-header-session"},this.userProfileUrl&&this.userProfileName&&this.authStatus==="loggedIn"&&i("div",{class:"profile"},i("a",{href:this.userProfileUrl,class:"dso-tertiary",onClick:o=>this.clickHandler(o,"profile",{url:this.userProfileUrl})},this.userProfileName)),this.authStatus==="loggedOut"&&i("div",{class:"login"},this.loginUrl?i("a",{href:this.loginUrl,class:"dso-tertiary",onClick:o=>this.clickHandler(o,"login",{url:this.loginUrl})},this.text("login")):i("button",{class:"dso-tertiary",type:"button",onClick:o=>this.clickHandler(o,"login")},this.text("login"))),this.authStatus==="loggedIn"&&i("div",{class:"logout"},this.logoutUrl?i("a",{href:this.logoutUrl,class:"dso-tertiary",onClick:o=>this.clickHandler(o,"logout",{url:this.logoutUrl})},this.text("logout")):i("button",{class:"dso-tertiary",type:"button",onClick:o=>this.clickHandler(o,"logout")},this.text("logout"))),this.showHelp&&i("div",{class:"help"},this.helpUrl?i("a",{href:this.helpUrl,class:"dso-tertiary",onClick:o=>this.clickHandler(o,"help",{url:this.helpUrl})},i("span",null,this.text("help")),i("dso-icon",{icon:"help"})):i("button",{class:"dso-tertiary",type:"button",onClick:o=>this.clickHandler(o,"help")},i("span",null,this.text("help")),i("dso-icon",{icon:"help"})))),(this.mainMenu&&this.mainMenu.length>0||this.userHomeUrl)&&i("nav",{class:"dso-navbar"},i("ul",{class:"dso-nav dso-nav-main",ref:o=>this.nav=o},this.mainMenu&&this.mainMenu.filter(((o,n)=>this.mainMenu&&n<this.mainMenu.length-this.overflowMenuItems)).map(this.MenuItem),this.overflowMenuItems>0&&i("li",null,i("dso-dropdown-menu",{placement:"bottom"},i("button",{type:"button",slot:"toggle"},i("span",null,this.text("overflowMenu")),i("dso-icon",{icon:"chevron-down"})),i("div",{class:"dso-dropdown-options"},i("ul",null,this.mainMenu&&this.mainMenu.filter(((o,n)=>this.mainMenu&&n>=this.mainMenu.length-this.overflowMenuItems)).map(this.MenuItem))))),this.userHomeUrl&&i("li",{class:t("menu-user-home",{"dso-active":this.userHomeActive})},i("a",{href:this.userHomeUrl,"aria-current":this.userHomeActive?"page":undefined,onClick:o=>this.clickHandler(o,"userHome",{url:this.userHomeUrl})},i("dso-icon",{icon:"user-line"}),this.text("userHome"))))))))}get host(){return d(this)}static get watchers(){return{useDropDownMenu:["setShowDropDown"]}}};h.style=p;export{h as dso_header};
|
|
2
|
-
//# sourceMappingURL=p-
|
|
1
|
+
import{r as o,c as n,h as i,F as s,g as d}from"./p-BzEnSYbR.js";import{c as t}from"./p-ChV9xqsO.js";import{d as e}from"./p-DDU8nTJS.js";import{i as r}from"./p-D6dst_Em.js";import{i as l}from"./p-Hgv-pDpy.js";import"./p-BFTU3MAI.js";const a={en:{"dso-header":{menu:"Menu",login:"Log in",logout:"Log out",help:"Help",overflowMenu:"More"}},nl:{"dso-header":{menu:"Menu",login:"Inloggen",logout:"Uitloggen",help:"Help",overflowMenu:"Meer",userHome:"Mijn Omgevingsloket"}}};const p='*,*::after,*::before{box-sizing:border-box}:host{display:block}.dso-header{border-block-end:1px solid #ccc;display:flex;flex-wrap:wrap;position:relative}@media screen and (min-width: 768px){.dso-header{align-items:center}}@media screen and (max-width: 991px){.dso-header.use-drop-down{flex-wrap:nowrap}}.dso-header .dso-nav{border:0}.logo-container{flex:1 1 12.5rem;margin-inline-end:24px;padding-block-end:16px;padding-block-start:16px}.dso-header-session{display:flex;align-items:center;margin-inline-start:auto}.dso-header-session .profile .dso-tertiary,.dso-header-session .login .dso-tertiary,.dso-header-session .logout .dso-tertiary,.dso-header-session .help .dso-tertiary{display:flex;gap:0.5rem;cursor:pointer;border:0;background-color:transparent;padding-inline-start:0;outline-offset:2px;font-family:Asap, sans-serif;color:#39870c;font-size:1rem;font-weight:600;line-height:1.5;text-decoration:none}.dso-header-session .profile .dso-tertiary:hover,.dso-header-session .login .dso-tertiary:hover,.dso-header-session .logout .dso-tertiary:hover,.dso-header-session .help .dso-tertiary:hover{text-decoration:underline}.dso-header-session .profile{margin-inline-start:8px}.dso-header-session .profile+.logout,.dso-header-session .profile~.help{border-inline-start:3px solid #ccc;margin-inline-start:8px;padding-inline-start:8px}.dso-header-session .help a,.dso-header-session .help button{display:flex}.dso-navbar{flex-basis:100%}dso-dropdown-menu>button:not(.dso-primary):not(.dso-secondary):not(.dso-tertiary),dso-dropdown-menu>.dso-primary,dso-dropdown-menu>.dso-secondary,dso-dropdown-menu>.dso-tertiary{position:relative}dso-dropdown-menu>button:not(.dso-primary):not(.dso-secondary):not(.dso-tertiary)::after,dso-dropdown-menu>.dso-primary::after,dso-dropdown-menu>.dso-secondary::after,dso-dropdown-menu>.dso-tertiary::after{content:"";display:inline-block}dso-dropdown-menu>.dso-primary::after,dso-dropdown-menu>.dso-secondary::after{margin-inline-start:8px}dso-dropdown-menu .dso-group-label{color:#999;font-size:0.875em;font-weight:400;margin:0;padding-block:4px 2px;padding-inline:20px;text-transform:uppercase}dso-dropdown-menu ul{margin:0;padding:0}dso-dropdown-menu ul:not(:last-child){border-block-end:1px solid #e5e5e5;margin-block-end:11px;padding-block-end:11px}dso-dropdown-menu .dso-dropdown-options{background-clip:padding-box;background-color:#fff;border-radius:4px;border:1px solid rgba(0, 0, 0, 0.15);box-shadow:0 8px 10px 1px rgba(0, 0, 0, 0.4);font-size:1rem;min-inline-size:160px;padding-block:5px;padding-inline:0;z-index:220}dso-dropdown-menu .dso-dropdown-options li{list-style:none}dso-dropdown-menu .dso-dropdown-options li a:visited{color:#191919}dso-dropdown-menu .dso-dropdown-options li a,dso-dropdown-menu .dso-dropdown-options li button{text-decoration:none}dso-dropdown-menu .dso-dropdown-options li a:hover,dso-dropdown-menu .dso-dropdown-options li a:focus-visible,dso-dropdown-menu .dso-dropdown-options li a:active,dso-dropdown-menu .dso-dropdown-options li button:hover,dso-dropdown-menu .dso-dropdown-options li button:focus-visible,dso-dropdown-menu .dso-dropdown-options li button:active{text-decoration:underline}dso-dropdown-menu .dso-dropdown-options li a,dso-dropdown-menu .dso-dropdown-options li button{clear:both;color:#191919;display:block;font-weight:400;line-height:1.5;padding-block:3px;padding-inline:20px;text-decoration:none;white-space:nowrap}dso-dropdown-menu .dso-dropdown-options li a:hover,dso-dropdown-menu .dso-dropdown-options li a:focus,dso-dropdown-menu .dso-dropdown-options li button:hover,dso-dropdown-menu .dso-dropdown-options li button:focus{background-color:#39870c;border-color:#39870c;color:#fff;text-decoration:none}dso-dropdown-menu .dso-dropdown-options li button{background-color:transparent;border:0;border-radius:0;text-align:inherit;inline-size:100%}dso-dropdown-menu button{background-color:transparent;border:0;display:flex;font-family:Asap, sans-serif;align-items:center;position:relative}dso-dropdown-menu button dso-icon{inline-size:24px;block-size:24px;margin-inline-start:8px;padding-block-start:2px}dso-dropdown-menu button[aria-expanded=true] dso-icon{transform:rotate(180deg)}dso-dropdown-menu .dso-dropdown-options{border:0;border-radius:0;box-shadow:0 8px 10px 1px rgba(0, 0, 0, 0.4)}@media screen and (min-width: 768px){dso-dropdown-menu .dso-dropdown-options{inline-size:375px}}@media screen and (max-width: 767px){dso-dropdown-menu .dso-dropdown-options{inline-size:100%}}dso-dropdown-menu .dso-dropdown-options ul{margin:0;padding:0;list-style:none}dso-dropdown-menu .dso-dropdown-options ul li a,dso-dropdown-menu .dso-dropdown-options ul li button{display:block;padding:16px;color:#275937;font-size:1.25rem;white-space:pre-wrap;text-decoration:none}dso-dropdown-menu .dso-dropdown-options ul li a:focus-visible,dso-dropdown-menu .dso-dropdown-options ul li button:focus-visible{background-color:#39870c;color:#fff}dso-dropdown-menu .dso-dropdown-options ul li a:hover,dso-dropdown-menu .dso-dropdown-options ul li button:hover{background-color:#fff;color:#275937;text-decoration:underline}dso-dropdown-menu .dso-dropdown-options ul li a:visited,dso-dropdown-menu .dso-dropdown-options ul li button:visited{color:#275937}dso-dropdown-menu .dso-dropdown-options ul li button{inline-size:100%;text-align:start}dso-dropdown-menu .dso-dropdown-options ul li button dso-icon{margin-inline-start:8px}dso-dropdown-menu .dso-dropdown-options ul li.dso-active a{font-weight:600}dso-dropdown-menu .dso-dropdown-options ul li+li{border-block-start:1px solid #ccc}.dropdown{margin-inline-start:auto;display:flex;align-items:center}.dropdown dso-dropdown-menu{position:static}.dropdown dso-dropdown-menu .dso-dropdown-options{inset-inline-end:0;inset-block-start:100%;box-shadow:0 8px 10px 1px rgba(0, 0, 0, 0.4)}.dropdown dso-dropdown-menu>button{color:#39870c;font-size:16px;font-weight:600;line-height:normal;position:relative}.dropdown dso-dropdown-menu>button::after{margin-inline-start:8px;position:absolute;inset-inline-end:0px;inset-block-start:50%;transform:translateY(-50%)}.dropdown dso-dropdown-menu>button:hover,.dropdown dso-dropdown-menu>button:active{cursor:pointer;text-decoration:underline}.dso-nav{align-items:end;column-gap:32px;display:flex;list-style:none;margin-block-end:0;margin-block-start:0;padding-inline-start:0}.dso-nav>li{margin-block-end:4px}.dso-nav>li>a{display:block}.dso-nav>li>a,.dso-nav>li>a:hover,.dso-nav>li>a:focus,.dso-nav>li>a:visited{color:#275937}.dso-nav>li.dso-active,.dso-nav>li.is-active{margin-block-end:0}.dso-nav>li.dso-active>a,.dso-nav>li.is-active>a{border-block-end:4px solid #8b4a6a;font-weight:bold}.dso-nav.dso-nav-main{display:flex !important}.dso-nav.dso-nav-main>li>a{text-decoration:none;font-size:1.25em;line-height:1;margin-block-start:8px;padding-block:16px;padding-inline:0;white-space:nowrap}.dso-nav.dso-nav-main>li>a:hover,.dso-nav.dso-nav-main>li>a:focus-visible,.dso-nav.dso-nav-main>li>a:active{text-decoration:underline}.dso-nav.dso-nav-main dso-dropdown-menu .dso-dropdown-options{inset-inline-start:-1rem !important;inset-block-start:3px !important}.dso-nav.dso-nav-main dso-dropdown-menu button{font-size:1.25em;line-height:1;margin-block-start:8px;padding-block:16px;padding-inline:0;align-items:flex-end;color:#275937}.dso-nav.dso-nav-main dso-dropdown-menu button:hover,.dso-nav.dso-nav-main dso-dropdown-menu button:active{cursor:pointer;text-decoration:underline}.dso-nav.dso-nav-main dso-dropdown-menu button::after{margin-inline-start:8px;position:absolute;inset-inline-end:0px;inset-block-start:auto;transform:none}.dso-nav .menu-user-home{margin-inline-start:auto}.dso-nav .menu-user-home dso-icon{block-size:1em;margin-inline-end:8px;position:relative;inset-block-start:-2px;inline-size:1.2em}';const u=992;const h=class{constructor(s){o(this,s);this.dsoHeaderClick=n(this,"dsoHeaderClick",7);this.mainMenu=[];this.useDropDownMenu="auto";this.authStatus="none";this.showHelp=false;this.overflowMenuItems=0;this.dropdownOptionsOffset=0;this.text=r((()=>this.host),a);this.onWindowResize=e((()=>{var o,n;(o=this.dropdownElement)===null||o===void 0?void 0:o.removeAttribute("open");(n=this.dropdownElement)===null||n===void 0?void 0:n.removeAttribute("tabindex");this.setDropDownMenu();this.setOverflowMenu();if(this.showDropDown){this.dropdownOptionsOffset=this.calculateDropdownOptionsOffset()}}),100);this.MenuItem=o=>i("li",{class:o.active?"dso-active":undefined},i("a",{href:o.url,"aria-current":o.active?"page":undefined,onClick:n=>this.clickHandler(n,"menuItem",{menuItem:o})},o.label))}clickHandler(o,n,i){var s,d;this.dsoHeaderClick.emit({originalEvent:o,isModifiedEvent:l(o),type:n,menuItem:i===null||i===void 0?void 0:i.menuItem,url:(s=i===null||i===void 0?void 0:i.url)!==null&&s!==void 0?s:(d=i===null||i===void 0?void 0:i.menuItem)===null||d===void 0?void 0:d.url})}setShowDropDown(o){if(o==="auto"){this.setDropDownMenu();return}this.showDropDown=o==="always"}shrinkMenuToFit(){if(!this.wrapper||!this.nav){return}if(this.wrapper.clientWidth>=this.nav.clientWidth){return}if(this.mainMenu&&this.overflowMenuItems>=this.mainMenu.length){return}this.overflowMenuItems++}componentDidRender(){if(!this.host.isConnected){return}if(this.showDropDown){this.dropdownOptionsOffset=this.calculateDropdownOptionsOffset();return}window.setTimeout((()=>this.shrinkMenuToFit()),0)}componentDidLoad(){this.setShowDropDown(this.useDropDownMenu);if(this.showDropDown){this.dropdownOptionsOffset=this.calculateDropdownOptionsOffset()}}setOverflowMenu(){if(this.showDropDown){return}if(this.overflowMenuItems!==0){this.overflowMenuItems=0;return}this.shrinkMenuToFit()}setDropDownMenu(){if(this.useDropDownMenu!=="auto"){return}this.showDropDown=window.innerWidth<u}calculateDropdownOptionsOffset(){var o;if(!this.dropdownElement){return 0}return this.host.clientHeight-(((o=this.dropdownElement)===null||o===void 0?void 0:o.getBoundingClientRect().bottom)-this.host.getBoundingClientRect().top)}connectedCallback(){window.addEventListener("resize",this.onWindowResize)}disconnectedCallback(){window.removeEventListener("resize",this.onWindowResize)}render(){if(this.showDropDown===undefined){return}return i(s,null,i("div",{class:t("dso-header",{["use-drop-down"]:this.showDropDown}),ref:o=>this.wrapper=o},i("div",{class:"logo-container"},i("slot",{name:"logo"})),this.showDropDown&&this.mainMenu&&(this.mainMenu.length>0||this.userHomeUrl||this.authStatus!=="none")&&i("div",{class:"dropdown"},i("dso-dropdown-menu",{"dropdown-align":"right",strategy:"absolute",dropdownOptionsOffset:this.dropdownOptionsOffset,ref:o=>this.dropdownElement=o},i("button",{type:"button",slot:"toggle"},i("span",null,this.text("menu")),i("dso-icon",{icon:"chevron-down"})),i("div",{class:"dso-dropdown-options"},i("ul",null,this.mainMenu.map(this.MenuItem),this.userHomeUrl&&i("li",null,i("a",{href:this.userHomeUrl,onClick:o=>this.clickHandler(o,"userHome",{url:this.userHomeUrl})},this.text("userHome"))),this.userProfileUrl&&this.userProfileName&&this.authStatus==="loggedIn"&&i("li",null,i("a",{href:this.userProfileUrl,onClick:o=>this.clickHandler(o,"profile",{url:this.userProfileUrl})},this.userProfileName,i("span",{class:"profile-label"}," - Mijn profiel"))),this.authStatus==="loggedOut"&&i("li",null,this.loginUrl?i("a",{href:this.loginUrl,onClick:o=>this.clickHandler(o,"login",{url:this.loginUrl})},this.text("login")):i("button",{type:"button",onClick:o=>this.clickHandler(o,"login")},this.text("login"))),this.authStatus==="loggedIn"&&i("li",null,this.logoutUrl?i("a",{href:this.logoutUrl,onClick:o=>this.clickHandler(o,"logout",{url:this.logoutUrl})},this.text("logout")):i("button",{type:"button",onClick:o=>this.clickHandler(o,"logout")},this.text("logout"))),this.showHelp&&i("li",null,this.helpUrl?i("a",{href:this.helpUrl,class:"dso-tertiary",onClick:o=>this.clickHandler(o,"help",{url:this.helpUrl})},i("span",null,this.text("help")),i("dso-icon",{icon:"help"})):i("button",{type:"button",class:"dso-tertiary",onClick:o=>this.clickHandler(o,"help")},i("span",null,this.text("help")),i("dso-icon",{icon:"help"}))))))),!this.showDropDown&&i(s,null,i("div",{class:"dso-header-session"},this.userProfileUrl&&this.userProfileName&&this.authStatus==="loggedIn"&&i("div",{class:"profile"},i("a",{href:this.userProfileUrl,class:"dso-tertiary",onClick:o=>this.clickHandler(o,"profile",{url:this.userProfileUrl})},this.userProfileName)),this.authStatus==="loggedOut"&&i("div",{class:"login"},this.loginUrl?i("a",{href:this.loginUrl,class:"dso-tertiary",onClick:o=>this.clickHandler(o,"login",{url:this.loginUrl})},this.text("login")):i("button",{class:"dso-tertiary",type:"button",onClick:o=>this.clickHandler(o,"login")},this.text("login"))),this.authStatus==="loggedIn"&&i("div",{class:"logout"},this.logoutUrl?i("a",{href:this.logoutUrl,class:"dso-tertiary",onClick:o=>this.clickHandler(o,"logout",{url:this.logoutUrl})},this.text("logout")):i("button",{class:"dso-tertiary",type:"button",onClick:o=>this.clickHandler(o,"logout")},this.text("logout"))),this.showHelp&&i("div",{class:"help"},this.helpUrl?i("a",{href:this.helpUrl,class:"dso-tertiary",onClick:o=>this.clickHandler(o,"help",{url:this.helpUrl})},i("span",null,this.text("help")),i("dso-icon",{icon:"help"})):i("button",{class:"dso-tertiary",type:"button",onClick:o=>this.clickHandler(o,"help")},i("span",null,this.text("help")),i("dso-icon",{icon:"help"})))),(this.mainMenu&&this.mainMenu.length>0||this.userHomeUrl)&&i("nav",{class:"dso-navbar"},i("ul",{class:"dso-nav dso-nav-main",ref:o=>this.nav=o},this.mainMenu&&this.mainMenu.filter(((o,n)=>this.mainMenu&&n<this.mainMenu.length-this.overflowMenuItems)).map(this.MenuItem),this.overflowMenuItems>0&&i("li",null,i("dso-dropdown-menu",{placement:"bottom"},i("button",{type:"button",slot:"toggle"},i("span",null,this.text("overflowMenu")),i("dso-icon",{icon:"chevron-down"})),i("div",{class:"dso-dropdown-options"},i("ul",null,this.mainMenu&&this.mainMenu.filter(((o,n)=>this.mainMenu&&n>=this.mainMenu.length-this.overflowMenuItems)).map(this.MenuItem))))),this.userHomeUrl&&i("li",{class:t("menu-user-home",{"dso-active":this.userHomeActive})},i("a",{href:this.userHomeUrl,"aria-current":this.userHomeActive?"page":undefined,onClick:o=>this.clickHandler(o,"userHome",{url:this.userHomeUrl})},i("dso-icon",{icon:"user-line"}),this.text("userHome"))))))))}get host(){return d(this)}static get watchers(){return{useDropDownMenu:["setShowDropDown"]}}};h.style=p;export{h as dso_header};
|
|
2
|
+
//# sourceMappingURL=p-5f01431d.entry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["translations","en","menu","login","logout","help","overflowMenu","nl","userHome","headerCss","minDesktopViewportWidth","Header","constructor","hostRef","this","mainMenu","useDropDownMenu","authStatus","showHelp","overflowMenuItems","dropdownOptionsOffset","text","i18n","host","onWindowResize","debounce","_a","dropdownElement","removeAttribute","_b","setDropDownMenu","setOverflowMenu","showDropDown","calculateDropdownOptionsOffset","MenuItem","item","h","class","active","undefined","href","url","onClick","e","clickHandler","menuItem","label","type","options","dsoHeaderClick","emit","originalEvent","isModifiedEvent","setShowDropDown","value","shrinkMenuToFit","wrapper","nav","clientWidth","length","componentDidRender","isConnected","window","setTimeout","componentDidLoad","innerWidth","clientHeight","getBoundingClientRect","bottom","top","connectedCallback","addEventListener","disconnectedCallback","removeEventListener","render","Fragment","clsx","ref","element","name","userHomeUrl","strategy","slot","icon","map","userProfileUrl","userProfileName","loginUrl","logoutUrl","helpUrl","filter","_","index","placement","userHomeActive"],"sources":["src/components/header/header.i18n.ts","src/components/header/header.scss?tag=dso-header&encapsulation=shadow","src/components/header/header.tsx"],"sourcesContent":["import { Resource } from \"../../utils/i18n\";\r\n\r\nexport const translations: Resource = {\r\n en: {\r\n \"dso-header\": {\r\n menu: \"Menu\",\r\n login: \"Log in\",\r\n logout: \"Log out\",\r\n help: \"Help\",\r\n overflowMenu: \"More\",\r\n },\r\n },\r\n nl: {\r\n \"dso-header\": {\r\n menu: \"Menu\",\r\n login: \"Inloggen\",\r\n logout: \"Uitloggen\",\r\n help: \"Help\",\r\n overflowMenu: \"Meer\",\r\n userHome: \"Mijn Omgevingsloket\",\r\n },\r\n },\r\n};\r\n","@use \"~dso-toolkit/src/utilities\";\r\n@use \"~dso-toolkit/src/variables/units\";\r\n@use \"~dso-toolkit/src/variables/colors\";\r\n@use \"~dso-toolkit/src/variables/media-query-breakpoints\";\r\n@use \"~dso-toolkit/src/variables/typography\";\r\n\r\n@use \"~dso-toolkit/src/components/anchor\";\r\n@use \"~dso-toolkit/src/components/dropdown-menu\";\r\n\r\n@use \"header.variables\" as core-header-variables;\r\n\r\n@include utilities.box-sizing();\r\n\r\n@mixin nav-item-border($color) {\r\n border-block-end: 4px solid $color;\r\n}\r\n\r\n@mixin nav-item-main {\r\n font-size: 1.25em;\r\n line-height: 1;\r\n margin-block-start: units.$u1;\r\n padding-block: units.$u2;\r\n padding-inline: 0;\r\n}\r\n\r\n:host {\r\n display: block;\r\n}\r\n\r\n.dso-header {\r\n border-block-end: 1px solid colors.$grijs-20;\r\n display: flex;\r\n flex-wrap: wrap;\r\n position: relative;\r\n\r\n @media screen and (min-width: media-query-breakpoints.$screen-sm-min) {\r\n align-items: center;\r\n }\r\n\r\n @media screen and (max-width: media-query-breakpoints.$screen-sm-max) {\r\n &.use-drop-down {\r\n flex-wrap: nowrap;\r\n }\r\n }\r\n\r\n .dso-nav {\r\n border: 0;\r\n }\r\n}\r\n\r\n.logo-container {\r\n flex: 1 1 12.5rem;\r\n margin-inline-end: units.$u3;\r\n padding-block-end: units.$u2;\r\n padding-block-start: units.$u2;\r\n}\r\n\r\n.dso-header-session {\r\n display: flex;\r\n align-items: center;\r\n margin-inline-start: auto;\r\n\r\n .profile,\r\n .login,\r\n .logout,\r\n .help {\r\n .dso-tertiary {\r\n display: flex;\r\n gap: 0.5rem;\r\n\r\n cursor: pointer;\r\n\r\n border: 0;\r\n\r\n background-color: transparent;\r\n\r\n padding-inline-start: 0;\r\n\r\n outline-offset: 2px;\r\n\r\n font-family: typography.$font-family-base;\r\n color: colors.$grasgroen;\r\n font-size: 1rem;\r\n font-weight: 600;\r\n line-height: 1.5;\r\n text-decoration: none;\r\n\r\n &:hover {\r\n text-decoration: underline;\r\n }\r\n }\r\n }\r\n\r\n .profile {\r\n margin-inline-start: units.$u1;\r\n\r\n + .logout,\r\n ~ .help {\r\n border-inline-start: 3px solid colors.$grijs-20;\r\n margin-inline-start: units.$u1;\r\n padding-inline-start: units.$u1;\r\n }\r\n }\r\n\r\n .help {\r\n a,\r\n button {\r\n display: flex;\r\n }\r\n }\r\n}\r\n\r\n.dso-navbar {\r\n flex-basis: 100%;\r\n}\r\n\r\ndso-dropdown-menu {\r\n @include dropdown-menu.children();\r\n\r\n button {\r\n background-color: transparent;\r\n border: 0;\r\n display: flex;\r\n font-family: typography.$font-family-base;\r\n align-items: center;\r\n position: relative;\r\n\r\n dso-icon {\r\n inline-size: units.$u3;\r\n block-size: units.$u3;\r\n margin-inline-start: units.$u1;\r\n padding-block-start: units.$u1 * 0.25;\r\n }\r\n\r\n &[aria-expanded=\"true\"] {\r\n dso-icon {\r\n transform: rotate(180deg);\r\n }\r\n }\r\n }\r\n\r\n .dso-dropdown-options {\r\n border: 0;\r\n border-radius: 0;\r\n box-shadow: 0 8px 10px 1px rgba(0, 0, 0, 0.4);\r\n\r\n @media screen and (min-width: media-query-breakpoints.$screen-sm-min) {\r\n inline-size: 375px;\r\n }\r\n\r\n @media screen and (max-width: media-query-breakpoints.$screen-xs-max) {\r\n inline-size: 100%;\r\n }\r\n\r\n ul {\r\n margin: 0;\r\n padding: 0;\r\n list-style: none;\r\n\r\n li {\r\n a,\r\n button {\r\n display: block;\r\n padding: units.$u2;\r\n color: colors.$bosgroen;\r\n font-size: 1.25rem;\r\n white-space: pre-wrap;\r\n text-decoration: none;\r\n\r\n &:focus-visible {\r\n background-color: colors.$grasgroen;\r\n color: colors.$wit;\r\n }\r\n\r\n &:hover {\r\n background-color: colors.$wit;\r\n color: colors.$bosgroen;\r\n text-decoration: underline;\r\n }\r\n\r\n &:visited {\r\n color: colors.$bosgroen;\r\n }\r\n }\r\n\r\n button {\r\n inline-size: 100%;\r\n text-align: start;\r\n\r\n dso-icon {\r\n margin-inline-start: units.$u1;\r\n }\r\n }\r\n\r\n &.dso-active {\r\n a {\r\n font-weight: 600;\r\n }\r\n }\r\n\r\n + li {\r\n border-block-start: 1px solid colors.$grijs-20;\r\n }\r\n }\r\n }\r\n }\r\n}\r\n\r\n.dropdown {\r\n margin-inline-start: auto;\r\n display: flex;\r\n align-items: center;\r\n\r\n dso-dropdown-menu {\r\n position: static;\r\n\r\n .dso-dropdown-options {\r\n inset-inline-end: 0;\r\n inset-block-start: 100%;\r\n box-shadow: 0 8px 10px 1px rgba(0, 0, 0, 0.4);\r\n }\r\n\r\n > button {\r\n color: colors.$grasgroen;\r\n font-size: typography.$font-size-base;\r\n font-weight: 600;\r\n line-height: normal;\r\n position: relative;\r\n\r\n &::after {\r\n margin-inline-start: units.$u1;\r\n position: absolute;\r\n inset-inline-end: 0px;\r\n inset-block-start: 50%;\r\n transform: translateY(-50%);\r\n }\r\n\r\n &:hover,\r\n &:active {\r\n cursor: pointer;\r\n text-decoration: underline;\r\n }\r\n }\r\n }\r\n}\r\n\r\n.dso-nav {\r\n align-items: end;\r\n column-gap: units.$u4;\r\n display: flex;\r\n list-style: none;\r\n margin-block-end: 0;\r\n margin-block-start: 0;\r\n padding-inline-start: 0;\r\n\r\n > li {\r\n margin-block-end: 4px;\r\n\r\n > a {\r\n display: block;\r\n\r\n &,\r\n &:hover,\r\n &:focus,\r\n &:visited {\r\n color: colors.$bosgroen;\r\n }\r\n }\r\n\r\n &.dso-active,\r\n &.is-active {\r\n margin-block-end: 0;\r\n\r\n > a {\r\n @include nav-item-border(core-header-variables.$navigation-selected-color);\r\n\r\n font-weight: bold;\r\n }\r\n }\r\n }\r\n\r\n &.dso-nav-main {\r\n display: flex !important;\r\n\r\n > li {\r\n > a {\r\n @include anchor.reverse();\r\n @include nav-item-main();\r\n\r\n // stylelint-disable-next-line declaration-property-value-disallowed-list -- no wrapping wanted because of icon\r\n white-space: nowrap;\r\n }\r\n }\r\n\r\n dso-dropdown-menu {\r\n .dso-dropdown-options {\r\n inset-inline-start: units.$ru2 * -1 !important;\r\n inset-block-start: 3px !important;\r\n }\r\n\r\n button {\r\n @include nav-item-main();\r\n\r\n align-items: flex-end;\r\n color: colors.$bosgroen;\r\n\r\n &:hover,\r\n &:active {\r\n cursor: pointer;\r\n text-decoration: underline;\r\n }\r\n\r\n &::after {\r\n margin-inline-start: units.$u1;\r\n position: absolute;\r\n inset-inline-end: 0px;\r\n inset-block-start: auto;\r\n transform: none;\r\n }\r\n }\r\n }\r\n }\r\n\r\n .menu-user-home {\r\n margin-inline-start: auto;\r\n\r\n dso-icon {\r\n block-size: 1em;\r\n margin-inline-end: units.$u1;\r\n position: relative;\r\n inset-block-start: -2px;\r\n inline-size: 1.2em;\r\n }\r\n }\r\n}\r\n","import { Component, Element, Event, EventEmitter, Fragment, h, Prop, State, Watch } from \"@stencil/core\";\r\n\r\nimport clsx from \"clsx\";\r\nimport debounce from \"debounce\";\r\n\r\nimport { i18n } from \"../../utils/i18n\";\r\nimport { isModifiedEvent } from \"../../utils/is-modified-event\";\r\n\r\nimport { HeaderEvent, HeaderMenuItem, HeaderNavigationType } from \"./header.interfaces\";\r\nimport { translations } from \"./header.i18n\";\r\n\r\nconst minDesktopViewportWidth = 992;\r\n\r\n@Component({\r\n tag: \"dso-header\",\r\n styleUrl: \"header.scss\",\r\n shadow: true,\r\n})\r\nexport class Header {\r\n private clickHandler(\r\n e: MouseEvent,\r\n type: HeaderNavigationType,\r\n options?: { menuItem?: HeaderMenuItem; url?: string },\r\n ) {\r\n this.dsoHeaderClick.emit({\r\n originalEvent: e,\r\n isModifiedEvent: isModifiedEvent(e),\r\n type,\r\n menuItem: options?.menuItem,\r\n url: options?.url ?? options?.menuItem?.url,\r\n });\r\n }\r\n\r\n private dropdownElement?: HTMLElement;\r\n\r\n @Element()\r\n host!: HTMLDsoHeaderElement;\r\n\r\n /**\r\n * The main menu items.\r\n */\r\n @Prop()\r\n mainMenu?: HeaderMenuItem[] = [];\r\n\r\n /**\r\n * Either have the dropdown menu appear automatically or always.\r\n */\r\n @Prop()\r\n useDropDownMenu: \"always\" | \"auto\" = \"auto\";\r\n\r\n /**\r\n * Used to show the login/logout option. 'none' renders nothing.\r\n */\r\n @Prop()\r\n authStatus: \"none\" | \"loggedIn\" | \"loggedOut\" = \"none\";\r\n\r\n /**\r\n * When the `authStatus` is `loggedOut` a loginUrl can be provided.\r\n * The login button will then render as an anchor.\r\n */\r\n @Prop()\r\n loginUrl?: string;\r\n\r\n /**\r\n * The URL to open when the user activates \"logout\".\r\n * If no URL is specified, a button element is used instead.\r\n */\r\n @Prop()\r\n logoutUrl?: string;\r\n\r\n /**\r\n * Show a help-button or link in the header\r\n */\r\n @Prop()\r\n showHelp? = false;\r\n\r\n /**\r\n * The URL to open when the user activates \"help\".\r\n * If no URL is specified, a button element is used instead.\r\n */\r\n @Prop()\r\n helpUrl?: string;\r\n\r\n /**\r\n * The name to show when the user is logged in.\r\n */\r\n @Prop()\r\n userProfileName?: string;\r\n\r\n /**\r\n * The URL to open when the user activates the profile url.\r\n */\r\n @Prop()\r\n userProfileUrl?: string;\r\n\r\n /**\r\n * The URL to open when the user activates \"Mijn Omgevingsloket\".\r\n */\r\n @Prop()\r\n userHomeUrl?: string;\r\n\r\n /**\r\n * Set this to true when the user is at \"Mijn Omgevingsloket\".\r\n */\r\n @Prop()\r\n userHomeActive?: boolean;\r\n\r\n @State()\r\n showDropDown?: boolean;\r\n\r\n @State()\r\n overflowMenuItems = 0;\r\n\r\n @State()\r\n dropdownOptionsOffset = 0;\r\n\r\n /**\r\n * Emitted when something in the header is selected.\r\n *\r\n * `event.detail.type` indicates the functionality the user pressed. eg. `'login'` or `'menuItem'`\r\n */\r\n @Event()\r\n dsoHeaderClick!: EventEmitter<HeaderEvent>;\r\n\r\n @Watch(\"useDropDownMenu\")\r\n setShowDropDown(value: \"always\" | \"auto\") {\r\n if (value === \"auto\") {\r\n this.setDropDownMenu();\r\n\r\n return;\r\n }\r\n\r\n this.showDropDown = value === \"always\";\r\n }\r\n\r\n private wrapper: HTMLDivElement | undefined;\r\n\r\n private nav: HTMLUListElement | undefined;\r\n\r\n private shrinkMenuToFit() {\r\n if (!this.wrapper || !this.nav) {\r\n return;\r\n }\r\n\r\n if (this.wrapper.clientWidth >= this.nav.clientWidth) {\r\n return;\r\n }\r\n\r\n if (this.mainMenu && this.overflowMenuItems >= this.mainMenu.length) {\r\n return;\r\n }\r\n\r\n this.overflowMenuItems++;\r\n }\r\n\r\n private text = i18n(() => this.host, translations);\r\n\r\n componentDidRender() {\r\n if (!this.host.isConnected) {\r\n return;\r\n }\r\n\r\n if (this.showDropDown) {\r\n this.dropdownOptionsOffset = this.calculateDropdownOptionsOffset();\r\n\r\n return;\r\n }\r\n\r\n window.setTimeout(() => this.shrinkMenuToFit(), 0);\r\n }\r\n\r\n componentDidLoad() {\r\n this.setShowDropDown(this.useDropDownMenu);\r\n\r\n if (this.showDropDown) {\r\n this.dropdownOptionsOffset = this.calculateDropdownOptionsOffset();\r\n }\r\n }\r\n\r\n private setOverflowMenu() {\r\n if (this.showDropDown) {\r\n return;\r\n }\r\n\r\n if (this.overflowMenuItems !== 0) {\r\n this.overflowMenuItems = 0;\r\n return;\r\n }\r\n\r\n this.shrinkMenuToFit();\r\n }\r\n\r\n private setDropDownMenu() {\r\n if (this.useDropDownMenu !== \"auto\") {\r\n return;\r\n }\r\n\r\n this.showDropDown = window.innerWidth < minDesktopViewportWidth;\r\n }\r\n\r\n private calculateDropdownOptionsOffset() {\r\n if (!this.dropdownElement) {\r\n return 0;\r\n }\r\n\r\n return (\r\n this.host.clientHeight -\r\n (this.dropdownElement?.getBoundingClientRect().bottom - this.host.getBoundingClientRect().top)\r\n );\r\n }\r\n\r\n private onWindowResize = debounce(() => {\r\n this.dropdownElement?.removeAttribute(\"open\");\r\n this.dropdownElement?.removeAttribute(\"tabindex\");\r\n\r\n this.setDropDownMenu();\r\n this.setOverflowMenu();\r\n\r\n if (this.showDropDown) {\r\n this.dropdownOptionsOffset = this.calculateDropdownOptionsOffset();\r\n }\r\n }, 100);\r\n\r\n connectedCallback() {\r\n window.addEventListener(\"resize\", this.onWindowResize);\r\n }\r\n\r\n disconnectedCallback() {\r\n window.removeEventListener(\"resize\", this.onWindowResize);\r\n }\r\n\r\n private MenuItem = (item: HeaderMenuItem) => {\r\n return (\r\n <li class={item.active ? \"dso-active\" : undefined}>\r\n <a\r\n href={item.url}\r\n aria-current={item.active ? \"page\" : undefined}\r\n onClick={(e) => this.clickHandler(e, \"menuItem\", { menuItem: item })}\r\n >\r\n {item.label}\r\n </a>\r\n </li>\r\n );\r\n };\r\n\r\n render() {\r\n // Prevent 'flickering' when useDropDownMenu = 'always'\r\n if (this.showDropDown === undefined) {\r\n return;\r\n }\r\n\r\n return (\r\n <>\r\n <div\r\n class={clsx(\"dso-header\", {\r\n [\"use-drop-down\"]: this.showDropDown,\r\n })}\r\n ref={(element) => (this.wrapper = element)}\r\n >\r\n <div class=\"logo-container\">\r\n <slot name=\"logo\" />\r\n </div>\r\n {this.showDropDown &&\r\n this.mainMenu &&\r\n (this.mainMenu.length > 0 || this.userHomeUrl || this.authStatus !== \"none\") && (\r\n <div class=\"dropdown\">\r\n <dso-dropdown-menu\r\n dropdown-align=\"right\"\r\n strategy=\"absolute\"\r\n dropdownOptionsOffset={this.dropdownOptionsOffset}\r\n ref={(element) => (this.dropdownElement = element)}\r\n >\r\n <button type=\"button\" slot=\"toggle\">\r\n <span>{this.text(\"menu\")}</span>\r\n <dso-icon icon=\"chevron-down\"></dso-icon>\r\n </button>\r\n <div class=\"dso-dropdown-options\">\r\n <ul>\r\n {this.mainMenu.map(this.MenuItem)}\r\n {this.userHomeUrl && (\r\n <li>\r\n <a\r\n href={this.userHomeUrl}\r\n onClick={(e) => this.clickHandler(e, \"userHome\", { url: this.userHomeUrl })}\r\n >\r\n {this.text(\"userHome\")}\r\n </a>\r\n </li>\r\n )}\r\n {this.userProfileUrl && this.userProfileName && this.authStatus === \"loggedIn\" && (\r\n <li>\r\n <a\r\n href={this.userProfileUrl}\r\n onClick={(e) => this.clickHandler(e, \"profile\", { url: this.userProfileUrl })}\r\n >\r\n {this.userProfileName}\r\n <span class=\"profile-label\"> - Mijn profiel</span>\r\n </a>\r\n </li>\r\n )}\r\n {this.authStatus === \"loggedOut\" && (\r\n <li>\r\n {this.loginUrl ? (\r\n <a\r\n href={this.loginUrl}\r\n onClick={(e) => this.clickHandler(e, \"login\", { url: this.loginUrl })}\r\n >\r\n {this.text(\"login\")}\r\n </a>\r\n ) : (\r\n <button type=\"button\" onClick={(e) => this.clickHandler(e, \"login\")}>\r\n {this.text(\"login\")}\r\n </button>\r\n )}\r\n </li>\r\n )}\r\n {this.authStatus === \"loggedIn\" && (\r\n <li>\r\n {this.logoutUrl ? (\r\n <a\r\n href={this.logoutUrl}\r\n onClick={(e) => this.clickHandler(e, \"logout\", { url: this.logoutUrl })}\r\n >\r\n {this.text(\"logout\")}\r\n </a>\r\n ) : (\r\n <button type=\"button\" onClick={(e) => this.clickHandler(e, \"logout\")}>\r\n {this.text(\"logout\")}\r\n </button>\r\n )}\r\n </li>\r\n )}\r\n {this.showHelp && (\r\n <li>\r\n {this.helpUrl ? (\r\n <a\r\n href={this.helpUrl}\r\n class=\"dso-tertiary\"\r\n onClick={(e) => this.clickHandler(e, \"help\", { url: this.helpUrl })}\r\n >\r\n <span>{this.text(\"help\")}</span>\r\n <dso-icon icon=\"help\"></dso-icon>\r\n </a>\r\n ) : (\r\n <button type=\"button\" class=\"dso-tertiary\" onClick={(e) => this.clickHandler(e, \"help\")}>\r\n <span>{this.text(\"help\")}</span>\r\n <dso-icon icon=\"help\"></dso-icon>\r\n </button>\r\n )}\r\n </li>\r\n )}\r\n </ul>\r\n </div>\r\n </dso-dropdown-menu>\r\n </div>\r\n )}\r\n {!this.showDropDown && (\r\n <>\r\n <div class=\"dso-header-session\">\r\n {this.userProfileUrl && this.userProfileName && this.authStatus === \"loggedIn\" && (\r\n <div class=\"profile\">\r\n <a\r\n href={this.userProfileUrl}\r\n class=\"dso-tertiary\"\r\n onClick={(e) => this.clickHandler(e, \"profile\", { url: this.userProfileUrl })}\r\n >\r\n {this.userProfileName}\r\n </a>\r\n </div>\r\n )}\r\n {this.authStatus === \"loggedOut\" && (\r\n <div class=\"login\">\r\n {this.loginUrl ? (\r\n <a\r\n href={this.loginUrl}\r\n class=\"dso-tertiary\"\r\n onClick={(e) => this.clickHandler(e, \"login\", { url: this.loginUrl })}\r\n >\r\n {this.text(\"login\")}\r\n </a>\r\n ) : (\r\n <button class=\"dso-tertiary\" type=\"button\" onClick={(e) => this.clickHandler(e, \"login\")}>\r\n {this.text(\"login\")}\r\n </button>\r\n )}\r\n </div>\r\n )}\r\n {this.authStatus === \"loggedIn\" && (\r\n <div class=\"logout\">\r\n {this.logoutUrl ? (\r\n <a\r\n href={this.logoutUrl}\r\n class=\"dso-tertiary\"\r\n onClick={(e) => this.clickHandler(e, \"logout\", { url: this.logoutUrl })}\r\n >\r\n {this.text(\"logout\")}\r\n </a>\r\n ) : (\r\n <button class=\"dso-tertiary\" type=\"button\" onClick={(e) => this.clickHandler(e, \"logout\")}>\r\n {this.text(\"logout\")}\r\n </button>\r\n )}\r\n </div>\r\n )}\r\n {this.showHelp && (\r\n <div class=\"help\">\r\n {this.helpUrl ? (\r\n <a\r\n href={this.helpUrl}\r\n class=\"dso-tertiary\"\r\n onClick={(e) => this.clickHandler(e, \"help\", { url: this.helpUrl })}\r\n >\r\n <span>{this.text(\"help\")}</span>\r\n <dso-icon icon=\"help\"></dso-icon>\r\n </a>\r\n ) : (\r\n <button class=\"dso-tertiary\" type=\"button\" onClick={(e) => this.clickHandler(e, \"help\")}>\r\n <span>{this.text(\"help\")}</span>\r\n <dso-icon icon=\"help\"></dso-icon>\r\n </button>\r\n )}\r\n </div>\r\n )}\r\n </div>\r\n {((this.mainMenu && this.mainMenu.length > 0) || this.userHomeUrl) && (\r\n <nav class=\"dso-navbar\">\r\n <ul class=\"dso-nav dso-nav-main\" ref={(element) => (this.nav = element)}>\r\n {this.mainMenu &&\r\n this.mainMenu\r\n .filter((_, index) => this.mainMenu && index < this.mainMenu.length - this.overflowMenuItems)\r\n .map(this.MenuItem)}\r\n {this.overflowMenuItems > 0 && (\r\n <li>\r\n <dso-dropdown-menu placement=\"bottom\">\r\n <button type=\"button\" slot=\"toggle\">\r\n <span>{this.text(\"overflowMenu\")}</span>\r\n <dso-icon icon=\"chevron-down\"></dso-icon>\r\n </button>\r\n <div class=\"dso-dropdown-options\">\r\n <ul>\r\n {this.mainMenu &&\r\n this.mainMenu\r\n .filter(\r\n (_, index) =>\r\n this.mainMenu && index >= this.mainMenu.length - this.overflowMenuItems,\r\n )\r\n .map(this.MenuItem)}\r\n </ul>\r\n </div>\r\n </dso-dropdown-menu>\r\n </li>\r\n )}\r\n {this.userHomeUrl && (\r\n <li class={clsx(\"menu-user-home\", { \"dso-active\": this.userHomeActive })}>\r\n <a\r\n href={this.userHomeUrl}\r\n aria-current={this.userHomeActive ? \"page\" : undefined}\r\n onClick={(e) => this.clickHandler(e, \"userHome\", { url: this.userHomeUrl })}\r\n >\r\n <dso-icon icon=\"user-line\"></dso-icon>\r\n {this.text(\"userHome\")}\r\n </a>\r\n </li>\r\n )}\r\n </ul>\r\n </nav>\r\n )}\r\n </>\r\n )}\r\n </div>\r\n </>\r\n );\r\n }\r\n}\r\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{r as o,c as n,f as s,h as t,F as c,H as d,g as e}from"./p-BzEnSYbR.js";const a={success:"succes:",info:"info:",warning:"waarschuwing:",danger:"fout:",error:"fout:"};const i='*,*::after,*::before{box-sizing:border-box}.sr-only{position:absolute;inline-size:1px;block-size:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);border:0}: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-visible{text-decoration:none}:host .dso-section-handle a:active{text-decoration:underline}:host .dso-section-handle .dso-status{color:#000;font-size:14px;font-weight:400}:host .dso-section-handle>button,:host .dso-section-handle>a{align-items:flex-start;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-block:12px;padding-inline:16px;text-align:start;inline-size: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-icon.dso-section-handle-chevron,:host .dso-section-handle>a dso-icon.dso-section-handle-chevron{transition:transform 260ms cubic-bezier(0.4, 0, 0.2, 1);transform:rotate(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-inline-end:8px}:host .dso-section-handle>button>dso-icon:last-child,:host .dso-section-handle>a>dso-icon:last-child{margin-inline-start:auto}:host .dso-section-handle>button>.dso-section-handle-addons:last-child,:host .dso-section-handle>a>.dso-section-handle-addons:last-child{margin-inline-start:auto}:host .dso-section-handle>button>.dso-section-handle-addons:last-child dso-attachments-counter,: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-attachments-counter,:host .dso-section-handle>a>.dso-section-handle-addons:last-child dso-icon{margin-inline-start:8px}:host .dso-section-handle>button>dso-label,:host .dso-section-handle>a>dso-label{margin-inline-start:auto;padding-inline-start:8px;word-break:normal}:host .dso-section-handle>button>dso-label+dso-icon:last-child,:host .dso-section-handle>button>dso-label+.dso-section-handle-addons:last-child,:host .dso-section-handle>a>dso-label+dso-icon:last-child,:host .dso-section-handle>a>dso-label+.dso-section-handle-addons:last-child{margin-inline-start:8px}:host([open]:not([open=false])) .dso-section-handle>button .dso-section-handle-chevron:first-child,:host([open]:not([open=false])) .dso-section-handle>a .dso-section-handle-chevron:first-child{transform:rotate(90deg)}:host([open]:not([open=false])) .dso-section-handle>button .dso-section-handle-chevron:last-child,:host([open]:not([open=false])) .dso-section-handle>a .dso-section-handle-chevron:last-child{transform:rotate(-180deg)}.dso-section-body{background-color:#fff;border-block-start:0}.dso-section-body .dso-section-body-content{padding-block:20px 16px;padding-inline:16px}:host(.dso-accordion-default){border:1px solid #8b4a6a;border-radius:4px}:host(.dso-accordion-default) .dso-section-handle{background-color:#fff;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-handle .dso-status{text-decoration:underline}:host(.dso-accordion-default) .dso-section-body{border-radius:0 0 4px 4px}:host(.dso-accordion-default[open]:not([open=false]))>.dso-section-handle{background-color:#8b4a6a;border-radius:0}:host(.dso-accordion-default[open]:not([open=false]))>.dso-section-handle a,:host(.dso-accordion-default[open]:not([open=false]))>.dso-section-handle button{color:#fff}:host(.dso-accordion-default[open]:not([open=false]))>.dso-section-handle a dso-attachments-counter,:host(.dso-accordion-default[open]:not([open=false]))>.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]:not([open=false])) .dso-section-body{background-color:#e5e5e5}:host(.dso-accordion-compact) .dso-section-handle{border-block-end:1px solid transparent;border-block-start:1px solid #ccc}:host(.dso-accordion-compact) .dso-section-handle a,:host(.dso-accordion-compact) .dso-section-handle button{color:#39870c;padding-block-end:11px;padding-inline-start:0;padding-block-start:11px}: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) .dso-section-handle .dso-status{color:#000}:host(.dso-accordion-compact) .dso-section-body .dso-section-body-content{padding-inline-start:32px;padding-block-start:0;padding-inline-end:0}:host(.dso-accordion-compact.dso-accordion-reverse-align) .dso-section-handle a,:host(.dso-accordion-compact.dso-accordion-reverse-align) .dso-section-handle button{padding-inline:16px 0}:host(.dso-accordion-compact.dso-accordion-reverse-align) .dso-section-body .dso-section-body-content{padding-inline-start:16px;padding-inline-end:0}:host(.dso-accordion-compact[open]:not([open=false]):not(.dso-nested-accordion))>.dso-section-handle{background-color:transparent}:host(.dso-accordion-compact[open]:not([open=false]):not(.dso-nested-accordion))>.dso-section-handle a,:host(.dso-accordion-compact[open]:not([open=false]):not(.dso-nested-accordion))>.dso-section-handle button{color:#39870c}:host(.dso-accordion-compact[open]:not([open=false]):not(.dso-nested-accordion))>.dso-section-handle a:hover,:host(.dso-accordion-compact[open]:not([open=false]):not(.dso-nested-accordion))>.dso-section-handle a:active,:host(.dso-accordion-compact[open]:not([open=false]):not(.dso-nested-accordion))>.dso-section-handle a.active,:host(.dso-accordion-compact[open]:not([open=false]):not(.dso-nested-accordion))>.dso-section-handle button:hover,:host(.dso-accordion-compact[open]:not([open=false]):not(.dso-nested-accordion))>.dso-section-handle button:active,:host(.dso-accordion-compact[open]:not([open=false]):not(.dso-nested-accordion))>.dso-section-handle button.active{color:#39870c}:host(.dso-accordion-compact[open]:not([open=false]):not(.dso-nested-accordion))>.dso-section-handle a dso-attachments-counter,:host(.dso-accordion-compact[open]:not([open=false]):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[open]:not([open=false]):not(.dso-nested-accordion))>.dso-section-body{border-block-start:0}:host(.dso-accordion-compact.dso-nested-accordion[open]:not([open=false]))>.dso-section-body{padding-block-end:0}:host(.dso-accordion-compact.dso-nested-accordion[open]:not([open=false]))>.dso-section-body dso-accordion-section:last-child{border-block-end:0}:host(.dso-accordion-compact-black) .dso-section-handle{border-block-end:1px solid transparent;border-block-start:1px solid #ccc}:host(.dso-accordion-compact-black) .dso-section-handle a,:host(.dso-accordion-compact-black) .dso-section-handle button:not(.dso-slider){color:#000;padding-block-end:11px;padding-inline-start:0;padding-block-start:11px}:host(.dso-accordion-compact-black) .dso-section-handle a:hover,:host(.dso-accordion-compact-black) .dso-section-handle a:active,:host(.dso-accordion-compact-black) .dso-section-handle a.active,:host(.dso-accordion-compact-black) .dso-section-handle button:not(.dso-slider):hover,:host(.dso-accordion-compact-black) .dso-section-handle button:not(.dso-slider):active,:host(.dso-accordion-compact-black) .dso-section-handle button:not(.dso-slider).active{color:#000}:host(.dso-accordion-compact-black) .dso-section-body .dso-section-body-content{padding-inline-start:32px;padding-block-start:0;padding-inline-end:0}:host(.dso-accordion-compact-black.dso-accordion-section-activate) .dso-section-handle{border-block-end:1px solid transparent;border-block-start:1px solid #ccc}:host(.dso-accordion-compact-black.dso-accordion-section-activate) .dso-section-handle a,:host(.dso-accordion-compact-black.dso-accordion-section-activate) .dso-section-handle button:not(.dso-slider){color:#000;padding-block-end:11px;padding-inline-start:0;padding-block-start:11px}:host(.dso-accordion-compact-black.dso-accordion-section-activate) .dso-section-handle a:hover,:host(.dso-accordion-compact-black.dso-accordion-section-activate) .dso-section-handle a:active,:host(.dso-accordion-compact-black.dso-accordion-section-activate) .dso-section-handle a.active,:host(.dso-accordion-compact-black.dso-accordion-section-activate) .dso-section-handle button:not(.dso-slider):hover,:host(.dso-accordion-compact-black.dso-accordion-section-activate) .dso-section-handle button:not(.dso-slider):active,:host(.dso-accordion-compact-black.dso-accordion-section-activate) .dso-section-handle button:not(.dso-slider).active{color:#000}:host(.dso-accordion-compact-black.dso-accordion-section-activate) .dso-section-body .dso-section-body-content{padding-inline-start:32px;padding-block-start:0;padding-inline-end:0}:host(.dso-accordion-compact-black.dso-accordion-section-activate) .dso-section-handle{display:flex}:host(.dso-accordion-compact-black.dso-accordion-section-activate) dso-slide-toggle{margin-block-start:11px;margin-inline:8px}:host(.dso-accordion-compact-black.dso-accordion-wijzigactie-voegtoe){background-color:#e4f1d4}:host(.dso-accordion-compact-black.dso-accordion-wijzigactie-voegtoe) .dso-section-body{background-color:#e4f1d4}:host(.dso-accordion-compact-black.dso-accordion-wijzigactie-verwijder){--link-color:currentColor;--link-hover-color:currentColor;--link-visited-color:currentColor;background-color:#f5d8dc;border-color:#f5d8dc;color:#191919}:host(.dso-accordion-compact-black.dso-accordion-wijzigactie-verwijder) a:not(.dso-primary,.dso-secondary,.dso-tertiary):is(.download,.download:hover,.download:focus-visible){background-image:var(--_dso-di-background-image, url("./di.svg#download-zwart"))}:host(.dso-accordion-compact-black.dso-accordion-wijzigactie-verwijder) a:not(.dso-primary,.dso-secondary,.dso-tertiary):is(.extern,.extern:hover,.extern:focus-visible){background-image:var(--_dso-di-background-image, url("./di.svg#external-link-zwart"))}:host(.dso-accordion-compact-black.dso-accordion-wijzigactie-verwijder) a:not(.dso-primary,.dso-secondary,.dso-tertiary):is([href^="tel:"],[href^="tel:"]:hover,[href^="tel:"]:focus-visible){background-image:var(--_dso-di-background-image, url("./di.svg#call-zwart"))}:host(.dso-accordion-compact-black.dso-accordion-wijzigactie-verwijder) a:not(.dso-primary,.dso-secondary,.dso-tertiary):is([href^="mailto:"],[href^="mailto:"]:hover,[href^="mailto:"]:focus-visible){background-image:var(--_dso-di-background-image, url("./di.svg#email-zwart"))}:host(.dso-accordion-compact-black.dso-accordion-wijzigactie-verwijder){text-decoration:line-through}@media screen and (min--moz-device-pixel-ratio: 0){:host(.dso-accordion-compact-black.dso-accordion-wijzigactie-verwijder){font-family:sans-serif}}:host(.dso-accordion-compact-black.dso-accordion-wijzigactie-verwijder){background-color:#f5d8dc}:host(.dso-accordion-compact-black.dso-accordion-wijzigactie-verwijder) .dso-section-body{background-color:#f5d8dc}:host(.dso-accordion-compact-black.dso-accordion-reverse-align) .dso-section-handle a,:host(.dso-accordion-compact-black.dso-accordion-reverse-align) .dso-section-handle button{padding-inline:16px 0}:host(.dso-accordion-compact-black.dso-accordion-reverse-align) .dso-section-body .dso-section-body-content{padding-inline-start:16px;padding-inline-end:0}:host(.dso-accordion-compact-black[open]:not([open=false]))>.dso-section-handle{background-color:transparent}:host(.dso-accordion-compact-black[open]:not([open=false]))>.dso-section-handle a,:host(.dso-accordion-compact-black[open]:not([open=false]))>.dso-section-handle button{color:#000}:host(.dso-accordion-compact-black[open]:not([open=false]))>.dso-section-handle a:hover,:host(.dso-accordion-compact-black[open]:not([open=false]))>.dso-section-handle a:active,:host(.dso-accordion-compact-black[open]:not([open=false]))>.dso-section-handle a.active,:host(.dso-accordion-compact-black[open]:not([open=false]))>.dso-section-handle button:hover,:host(.dso-accordion-compact-black[open]:not([open=false]))>.dso-section-handle button:active,:host(.dso-accordion-compact-black[open]:not([open=false]))>.dso-section-handle button.active{color:#000}:host(.dso-accordion-compact-black[open]:not([open=false]))>.dso-section-handle a dso-attachments-counter,:host(.dso-accordion-compact-black[open]:not([open=false]))>.dso-section-handle button dso-attachments-counter{--dso-attachments-counter-color:#666;--dso-icon:var(--di-paperclip-grijs)}:host(.dso-accordion-compact-black[open]:not([open=false]))>.dso-section-body{border-block-start:0}:host(.dso-accordion-compact-black.dso-nested-accordion[open]:not([open=false]))>.dso-section-body{padding-block-end:0}:host(.dso-accordion-compact-black.dso-nested-accordion[open]:not([open=false]))>.dso-section-body dso-accordion-section:last-child{border-block-end: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:#000}: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}:host(.dso-accordion-conclusion) .dso-section-handle a dso-attachments-counter,:host(.dso-accordion-conclusion) .dso-section-handle button dso-attachments-counter{--dso-attachments-counter-color:#000;--dso-icon:var(--di-paperclip-zwart)}:host(.dso-accordion-conclusion) .dso-section-body{border:2px solid #f2f2f2}:host(.dso-accordion-conclusion[open]:not([open=false]):not(.dso-nested-accordion))>.dso-section-handle{background-color:#f2f2f2}:host(.dso-accordion-conclusion.dso-nested-accordion[open]:not([open=false])){background-color:#fff}:host(.dso-accordion-neutral) .dso-section-handle{background-color:transparent;border:none;border-radius:4px;margin-block-end:2px}:host(.dso-accordion-neutral) .dso-section-handle a,:host(.dso-accordion-neutral) .dso-section-handle button{color:#000;padding-block:5px;padding-inline:0}:host(.dso-accordion-neutral) .dso-section-handle a:hover,:host(.dso-accordion-neutral) .dso-section-handle a:active,:host(.dso-accordion-neutral) .dso-section-handle a.active,:host(.dso-accordion-neutral) .dso-section-handle button:hover,:host(.dso-accordion-neutral) .dso-section-handle button:active,:host(.dso-accordion-neutral) .dso-section-handle button.active{color:#000}:host(.dso-accordion-neutral) .dso-section-handle a .info-icon,:host(.dso-accordion-neutral) .dso-section-handle button .info-icon{color:#39870c;margin-inline-start:8px}:host(.dso-accordion-neutral) .dso-section-handle dso-icon,:host(.dso-accordion-neutral) .dso-section-handle svg.di{vertical-align:top}:host(.dso-accordion-neutral) .dso-section-body[open],:host(.dso-accordion-neutral) .dso-section-body:not(.dso-hide){background-color:transparent;border:1px solid #275937;box-shadow:1px 3px 4px rgba(0, 0, 0, 0.5);margin-block:-2px 0}:host(.dso-accordion-neutral) .dso-section-body[open].dso-animate-ready,:host(.dso-accordion-neutral) .dso-section-body:not(.dso-hide).dso-animate-ready{transition-property:grid-template-rows, margin-block, border}:host(.dso-accordion-neutral) .dso-section-body[open] .dso-section-body-content,:host(.dso-accordion-neutral) .dso-section-body:not(.dso-hide) .dso-section-body-content{padding-block:16px 24px;padding-inline:16px}@media screen and (min-width: 480px){:host(.dso-accordion-neutral) .dso-section-body[open] .dso-section-body-content,:host(.dso-accordion-neutral) .dso-section-body:not(.dso-hide) .dso-section-body-content{padding-block:16px 24px;padding-inline:32px}}:host(.dso-accordion-neutral[open]:not([open=false]))>.dso-section-handle{background-color:transparant;border-radius:0;border-start-start-radius:4px;border-start-end-radius:4px}:host(.dso-accordion-neutral[open]:not([open=false]))>.dso-section-handle a,:host(.dso-accordion-neutral[open]:not([open=false]))>.dso-section-handle button{color:#000}:host(.dso-accordion-neutral[open]:not([open=false]))>.dso-section-handle a dso-attachments-counter,:host(.dso-accordion-neutral[open]:not([open=false]))>.dso-section-handle button dso-attachments-counter{--dso-attachments-counter-color:#fff;--dso-icon:var(--di-paperclip-wit)}:host(.dso-accordion-neutral[open]:not([open=false])) .dso-section-body{margin-block-end:16px;margin-block-start:2px}:host(.dso-accordion-neutral.dso-nested-accordion[open]:not([open=false])) .dso-section-body{background-color:#e5e5e5}';const r=window["_dsoLog"]===true?console.log.bind(console.log):function(){};const l=({handleUrl:o,onClick:n,open:s,showSlideToggle:d,active:e,onActiveChange:a,handleElementRef:i},r)=>{if(o){return t(c,null,t("a",{href:o,onClick:n,"aria-expanded":s?"true":"false",ref:i},r),d&&t("dso-slide-toggle",{accessibleLabel:"Toon op kaart",checked:e,onDsoActiveChange:a}))}return t(c,null,t("button",{type:"button",onClick:n,"aria-expanded":s?"true":"false",ref:i},r),d&&t("dso-slide-toggle",{accessibleLabel:"Toon op kaart",checked:e,onDsoActiveChange:a}))};const h=({heading:o,ref:n},s)=>{switch(o){default:case"h2":return t("h2",{ref:n,class:"dso-section-handle"},s);case"h3":return t("h3",{ref:n,class:"dso-section-handle"},s);case"h4":return t("h4",{ref:n,class:"dso-section-handle"},s);case"h5":return t("h5",{ref:n,class:"dso-section-handle"},s)}};const p=({state:o,icon:n,attachmentCount:s})=>{if(o){return t(b,{state:o})}if(s){return t("dso-attachments-counter",{count:s})}if(n){return t("dso-icon",{icon:n})}};const b=({state:o})=>{if(o==="error"){return t("dso-icon",{icon:"status-error"})}if(o==="danger"){return t("dso-icon",{icon:"status-danger"})}if(o==="success"){return t("dso-icon",{icon:"status-success"})}if(o==="info"){return t("dso-icon",{icon:"status-info"})}if(o==="warning"){return t("dso-icon",{icon:"status-warning"})}};const u=class{constructor(s){o(this,s);this.dsoActiveChange=n(this,"dsoActiveChange",7);this.dsoToggleClick=n(this,"dsoToggleClick",3);this.dsoAnimationStart=n(this,"dsoAnimationStart",3);this.dsoAnimationEnd=n(this,"dsoAnimationEnd",3);this.heading="h2";this.open=false;this.hasNestedAccordion=false;this.activatable=false;this.active=false;this.hover=false;this.handleClick=o=>{this.dsoToggleClick.emit({originalEvent:o,open:!this.open})};this.handleActiveChange=o=>{this.dsoActiveChange.emit({current:Boolean(this.active),next:!this.active,originalEvent:o})};this.handleExpandableAnimationStart=o=>{this.dsoAnimationStart.emit({animation:this.open?"opening":"closing",scrollIntoView:(n="auto")=>this.scrollIntoView(o.detail.bodyHeight,n)})};this.handleExpandableAnimationEnd=o=>{this.dsoAnimationEnd.emit({open:this.open,scrollIntoView:(n="auto")=>this.scrollIntoView(o.detail.bodyHeight,n)})}}async focusHandle(){var o;(o=this.handleElementRef)===null||o===void 0?void 0:o.focus()}get containsNestedAccordion(){return this.host.querySelector("dso-accordion")!==null}componentWillLoad(){var o;(o=this.accordion)===null||o===void 0?void 0:o._getState().then((o=>{this.accordionState=o;s(this.host)}))}get isNeutral(){var o;return((o=this.accordionState)===null||o===void 0?void 0:o.variant)==="neutral"}async scrollIntoView(o,n="auto"){var s,t;r(`DSO Toolkit [Accordion Section] scrollIntoView(bodyHeight: ${JSON.stringify(o)}, behavior: ${JSON.stringify(n)})`);const c=(s=this.sectionBody)===null||s===void 0?void 0:s.getBoundingClientRect();const d=(t=this.sectionHeading)===null||t===void 0?void 0:t.getBoundingClientRect();r(`DSO Toolkit [Accordion Section] const bodyClientRect = ${JSON.stringify(c)};`);r(`DSO Toolkit [Accordion Section] const headingClientRect = ${JSON.stringify(d)};`);r(`DSO Toolkit [Accordion Section] this.accordionState = ${JSON.stringify(this.accordionState)};`);r(`DSO Toolkit [Accordion Section] this.open = ${JSON.stringify(this.open)};`);if(!c||!d||!this.accordionState){r(`DSO Toolkit [Accordion Section] returning`);return}const e=d.top+d.height+(this.open?o!==null&&o!==void 0?o:0:0);r(`DSO Toolkit [Accordion Section] const sectionBottomY = ${JSON.stringify(e)};`);r(`DSO Toolkit [Accordion Section] window.innerHeight = ${JSON.stringify(window.innerHeight)};`);const a=this.host.getBoundingClientRect();const i=window.scrollY||document.documentElement.scrollTop||document.body.scrollTop;const l=document.documentElement.clientTop||document.body.clientTop||0;const h=a.top+i-l;r("DSO Toolkit [Accordion Section] scroll",{box:a,scrollTop:i,clientTop:l,top:h});if(e>window.innerHeight){r(`DSO Toolkit [Accordion Section] sectionBottomY > window.innerHeight === ${JSON.stringify(e>window.innerHeight)};`);const o=e-d.top;const s=o>window.innerHeight;r(`DSO Toolkit [Accordion Section] const expandedAccordionHeight = ${JSON.stringify(o)};`);r(`DSO Toolkit [Accordion Section] const shouldScrollToTopOfSection = ${JSON.stringify(s)};`);window.scrollTo({top:s?h:h-(window.innerHeight-o),behavior:n})}else if(d.top<0){r(`DSO Toolkit [Accordion Section] headingClientRect.top < 0 === ${JSON.stringify(d.top<0)};`);window.scrollTo({top:h,behavior:n})}}get accordion(){return this.host.closest("dso-accordion")}render(){var o;const{variant:n,reverseAlign:s}=(o=this.accordionState)!==null&&o!==void 0?o:{};const e=!!this.statusDescription||!!this.status||!!this.icon||!!this.attachmentCount;const i=this.activatable&&n==="compact-black"&&!s;return t(d,{key:"4b8933f4a7224bc4c4faeeb7952b85e0f8abc6b1",class:{"dso-accordion-section":true,["dso-accordion-"+n]:true,"dso-nested-accordion":this.hasNestedAccordion||this.containsNestedAccordion,"dso-accordion-reverse-align":s!==null&&s!==void 0?s:false,["dso-accordion-wijzigactie-"+this.wijzigactie]:!!this.wijzigactie,"dso-accordion-section-activate":i},hidden:!n,onMouseenter:()=>this.hover=true,onMouseleave:()=>this.hover=false},t(h,{key:"790f4fbb2a06e78be36e714becc606771ea6422e",heading:this.heading,ref:o=>this.sectionHeading=o},t(l,{key:"9aa838b5a1f7129161f58e7a67aec6b2923ae319",handleUrl:this.handleUrl,onClick:this.handleClick,open:this.open,showSlideToggle:i,active:this.active,onActiveChange:this.handleActiveChange,handleElementRef:o=>this.handleElementRef=o},s?t(c,null,this.icon&&t("div",{class:"dso-section-handle-addons"},t(p,{icon:this.icon})),t("dso-renvooi",{value:this.handleTitle}),this.label&&t("dso-label",{status:this.labelStatus,compact:true},this.label),t("div",{class:"dso-section-handle-addons"},this.statusDescription&&t("span",{class:"dso-status"},this.statusDescription),t("dso-icon",{class:"dso-section-handle-chevron",icon:"chevron-down"}))):t(c,null,t("dso-icon",{class:"dso-section-handle-chevron",icon:"chevron-right"}),this.status&&t("span",{class:"sr-only"},a[this.status]),t("span",null,t("dso-renvooi",{value:this.handleTitle}),this.isNeutral&&t("dso-icon",{class:"info-icon",icon:this.open||this.hover?"info-active":"info"})),this.label&&t("dso-label",{status:this.labelStatus,compact:true},this.label),e&&t("div",{class:"dso-section-handle-addons"},this.statusDescription&&t("span",{class:"dso-status"},this.statusDescription),t(p,{state:this.status,icon:this.icon,attachmentCount:this.attachmentCount}))))),t("dso-expandable",{key:"816c9ecfcfcea8ecc3c35606fd64111da5b61366",class:"dso-section-body",open:this.open,enableAnimation:true,minimumHeight:this.isNeutral?0:4,onDsoExpandableAnimationStart:this.handleExpandableAnimationStart,onDsoExpandableAnimationEnd:this.handleExpandableAnimationEnd},t("div",{key:"54c23da5a0d25bc29fce23ba44fe7277b2b387d7",class:"dso-section-body-content",ref:o=>this.sectionBody=o},t("slot",{key:"d9f1d30c186c5f3e0613e1fded58f5ba0f6e70ca"}))))}get host(){return e(this)}};u.style=i;export{u as dso_accordion_section};
|
|
2
|
+
//# sourceMappingURL=p-6b6b5ed2.entry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["stateMap","success","info","warning","danger","error","accordionSectionCss","log","window","console","bind","HandleElement","handleUrl","onClick","open","showSlideToggle","active","onActiveChange","handleElementRef","children","h","Fragment","href","ref","accessibleLabel","checked","onDsoActiveChange","type","Handle","heading","class","HandleIcon","state","icon","attachmentCount","HandleStateIcon","count","AccordionSection","constructor","hostRef","this","hasNestedAccordion","activatable","hover","handleClick","event","dsoToggleClick","emit","originalEvent","handleActiveChange","dsoActiveChange","current","Boolean","next","handleExpandableAnimationStart","e","dsoAnimationStart","animation","scrollIntoView","behavior","detail","bodyHeight","handleExpandableAnimationEnd","dsoAnimationEnd","focusHandle","_a","focus","containsNestedAccordion","host","querySelector","componentWillLoad","accordion","_getState","then","accordionState","forceUpdate","isNeutral","variant","JSON","stringify","bodyClientRect","sectionBody","getBoundingClientRect","headingClientRect","_b","sectionHeading","sectionBottomY","top","height","innerHeight","box","scrollTop","scrollY","document","documentElement","body","clientTop","expandedAccordionHeight","shouldScrollToTopOfSection","scrollTo","closest","render","reverseAlign","hasAddons","statusDescription","status","Host","key","wijzigactie","hidden","onMouseenter","onMouseleave","element","value","handleTitle","label","labelStatus","compact","enableAnimation","minimumHeight","onDsoExpandableAnimationStart","onDsoExpandableAnimationEnd"],"sources":["src/components/accordion/components/accordion-section.interfaces.ts","src/components/accordion/components/accordion-section.scss?tag=dso-accordion-section&encapsulation=shadow","src/components/accordion/components/accordion-section.tsx"],"sourcesContent":["export type AccordionSectionState = \"success\" | \"info\" | \"warning\" | \"danger\" | \"error\";\r\n\r\nexport type AccordionHeading = \"h2\" | \"h3\" | \"h4\" | \"h5\";\r\n\r\nexport type AccordionSectionWijzigactie = \"voegtoe\" | \"verwijder\";\r\n\r\nexport const stateMap: Record<AccordionSectionState, string> = {\r\n success: \"succes:\",\r\n info: \"info:\",\r\n warning: \"waarschuwing:\",\r\n danger: \"fout:\",\r\n error: \"fout:\",\r\n};\r\n\r\nexport interface AccordionSectionToggleClickEvent {\r\n /**\r\n * The original MouseEvent that triggered the click.\r\n *\r\n * In case the Section Handle is an <a> this event can be used to preventDefault() so the framework router is reponsible for navigating the user.\r\n */\r\n originalEvent?: MouseEvent;\r\n\r\n /**\r\n * The requested state. If the Accordion Section is closed, `open = true`.\r\n */\r\n open: boolean;\r\n}\r\n\r\nexport interface AccordionSectionAnimationStartEvent {\r\n /**\r\n * Helper function to scroll the Accordion Section into view.\r\n */\r\n scrollIntoView(behavior?: ScrollBehavior): void;\r\n\r\n /**\r\n * Whether or not the Accordion opening or closing.\r\n */\r\n animation: \"opening\" | \"closing\";\r\n}\r\n\r\nexport interface AccordionSectionAnimationEndEvent {\r\n /**\r\n * Helper function to scroll the Accordion Section into view.\r\n */\r\n scrollIntoView(behavior?: ScrollBehavior): void;\r\n\r\n /**\r\n * The state of the Accordion Section after animation.\r\n */\r\n open: boolean;\r\n}\r\n\r\nexport interface AccordionSectionActiveChangeEvent {\r\n /**\r\n * De current status van de Accordion Section.\r\n */\r\n current: boolean;\r\n\r\n /**\r\n * De desired status van de Accordion Section.\r\n */\r\n next: boolean;\r\n\r\n originalEvent: Event;\r\n}\r\n","@use \"~dso-toolkit/src/utilities\";\r\n@use \"~dso-toolkit/src/variables/units\";\r\n@use \"~dso-toolkit/src/variables/colors\";\r\n@use \"~dso-toolkit/src/variables/typography\";\r\n\r\n@use \"~dso-toolkit/src/components/accordion\";\r\n@use \"~dso-toolkit/src/components/anchor\";\r\n\r\n@use \"accordion-section-theme-compact\";\r\n@use \"accordion-section-theme-compact-black\";\r\n@use \"accordion-section-theme-conclusion\";\r\n@use \"accordion-section-theme-default\";\r\n@use \"accordion-section-theme-neutral\";\r\n\r\n@include utilities.box-sizing();\r\n\r\n.sr-only {\r\n @include utilities.sr-only();\r\n}\r\n\r\n:host {\r\n display: block;\r\n\r\n .dso-section-handle {\r\n font-size: 1em;\r\n font-weight: 600;\r\n line-height: accordion.$handle-line-height;\r\n margin: 0;\r\n position: relative;\r\n\r\n > a:active {\r\n text-decoration: none;\r\n }\r\n\r\n a {\r\n @include anchor.clean();\r\n }\r\n\r\n .dso-status {\r\n color: colors.$zwart;\r\n font-size: typography.$font-size-small;\r\n font-weight: 400;\r\n }\r\n }\r\n\r\n .dso-section-handle > button,\r\n .dso-section-handle > a {\r\n align-items: flex-start;\r\n background-color: transparent;\r\n border: 0;\r\n cursor: pointer;\r\n display: flex;\r\n font-family: typography.$font-family-base;\r\n font-size: 1em;\r\n font-weight: 600;\r\n line-height: accordion.$handle-line-height;\r\n margin: 0;\r\n padding-block: accordion.$block-padding;\r\n padding-inline: accordion.$inline-padding;\r\n text-align: start;\r\n inline-size: 100%;\r\n word-break: break-word;\r\n\r\n dso-icon {\r\n flex-shrink: 0;\r\n\r\n &.dso-section-handle-chevron {\r\n @include utilities.transition(transform);\r\n\r\n transform: rotate(0);\r\n }\r\n }\r\n\r\n > .dso-section-handle-addons:first-child,\r\n > dso-icon:first-child {\r\n margin-inline-end: units.$u1;\r\n }\r\n\r\n > dso-icon:last-child {\r\n margin-inline-start: auto;\r\n }\r\n\r\n > .dso-section-handle-addons:last-child {\r\n margin-inline-start: auto;\r\n\r\n dso-attachments-counter,\r\n dso-icon {\r\n margin-inline-start: units.$u1;\r\n }\r\n }\r\n\r\n > dso-label {\r\n margin-inline-start: auto;\r\n padding-inline-start: units.$u1;\r\n word-break: normal;\r\n\r\n & + dso-icon:last-child,\r\n & + .dso-section-handle-addons:last-child {\r\n margin-inline-start: units.$u1;\r\n }\r\n }\r\n }\r\n}\r\n\r\n:host([open]:not([open=\"false\"])) {\r\n .dso-section-handle {\r\n > button,\r\n > a {\r\n .dso-section-handle-chevron {\r\n &:first-child {\r\n transform: rotate(90deg);\r\n }\r\n\r\n &:last-child {\r\n transform: rotate(-180deg);\r\n }\r\n }\r\n }\r\n }\r\n}\r\n\r\n.dso-section-body {\r\n background-color: colors.$wit;\r\n border-block-start: 0;\r\n\r\n .dso-section-body-content {\r\n padding-block: units.$u2 + accordion.$border-radius units.$u2;\r\n padding-inline: units.$u2;\r\n }\r\n}\r\n\r\n// Default\r\n:host(.dso-accordion-default) {\r\n @include accordion-section-theme-default.dso-web-component-accordion-default();\r\n}\r\n\r\n:host(.dso-accordion-default[open]:not([open=\"false\"])) {\r\n @include accordion-section-theme-default.dso-web-component-accordion-default-open();\r\n}\r\n\r\n:host(.dso-accordion-default.dso-nested-accordion[open]:not([open=\"false\"])) {\r\n @include accordion-section-theme-default.dso-web-component-accordion-default-open-nested();\r\n}\r\n\r\n// Compact\r\n:host(.dso-accordion-compact) {\r\n @include accordion-section-theme-compact.dso-web-component-accordion-compact();\r\n}\r\n\r\n:host(.dso-accordion-compact.dso-accordion-reverse-align) {\r\n @include accordion-section-theme-compact.dso-web-component-accordion-compact-reverse();\r\n}\r\n\r\n:host(.dso-accordion-compact[open]:not([open=\"false\"]):not(.dso-nested-accordion)) {\r\n @include accordion-section-theme-compact.dso-web-component-accordion-compact-open();\r\n}\r\n\r\n:host(.dso-accordion-compact.dso-nested-accordion[open]:not([open=\"false\"])) {\r\n @include accordion-section-theme-compact.dso-web-component-accordion-compact-open-nested();\r\n}\r\n\r\n// Compact black\r\n:host(.dso-accordion-compact-black) {\r\n @include accordion-section-theme-compact-black.dso-web-component-accordion-compact-black();\r\n}\r\n\r\n:host(.dso-accordion-compact-black.dso-accordion-section-activate) {\r\n @include accordion-section-theme-compact-black.dso-web-component-accordion-compact-black();\r\n @include accordion-section-theme-compact-black.dso-web-component-accordion-compact-black-activate();\r\n}\r\n\r\n:host(.dso-accordion-compact-black.dso-accordion-wijzigactie-voegtoe) {\r\n @include accordion-section-theme-compact-black.dso-web-component-accordion-compact-black-voegtoe();\r\n}\r\n\r\n:host(.dso-accordion-compact-black.dso-accordion-wijzigactie-verwijder) {\r\n @include accordion-section-theme-compact-black.dso-web-component-accordion-compact-black-verwijder();\r\n}\r\n\r\n:host(.dso-accordion-compact-black.dso-accordion-reverse-align) {\r\n @include accordion-section-theme-compact-black.dso-web-component-accordion-compact-black-reverse();\r\n}\r\n\r\n:host(.dso-accordion-compact-black[open]:not([open=\"false\"])) {\r\n @include accordion-section-theme-compact-black.dso-web-component-accordion-compact-black-open();\r\n}\r\n\r\n:host(.dso-accordion-compact-black.dso-nested-accordion[open]:not([open=\"false\"])) {\r\n @include accordion-section-theme-compact-black.dso-web-component-accordion-compact-black-open-nested();\r\n}\r\n\r\n// Conclusion\r\n:host(.dso-accordion-conclusion) {\r\n @include accordion-section-theme-conclusion.dso-web-component-accordion-conclusion();\r\n}\r\n\r\n:host(.dso-accordion-conclusion[open]:not([open=\"false\"]):not(.dso-nested-accordion)) {\r\n @include accordion-section-theme-conclusion.dso-web-component-accordion-conclusion-open();\r\n}\r\n\r\n:host(.dso-accordion-conclusion.dso-nested-accordion[open]:not([open=\"false\"])) {\r\n @include accordion-section-theme-conclusion.dso-web-component-accordion-conclusion-open-nested();\r\n}\r\n\r\n// Neutral\r\n:host(.dso-accordion-neutral) {\r\n @include accordion-section-theme-neutral.dso-web-component-accordion-neutral();\r\n}\r\n\r\n:host(.dso-accordion-neutral[open]:not([open=\"false\"])) {\r\n @include accordion-section-theme-neutral.dso-web-component-accordion-neutral-open();\r\n}\r\n\r\n:host(.dso-accordion-neutral.dso-nested-accordion[open]:not([open=\"false\"])) {\r\n @include accordion-section-theme-neutral.dso-web-component-accordion-neutral-open-nested();\r\n}\r\n","import {\r\n Component,\r\n ComponentInterface,\r\n Element,\r\n Event,\r\n EventEmitter,\r\n forceUpdate,\r\n Fragment,\r\n FunctionalComponent,\r\n h,\r\n Host,\r\n Method,\r\n Prop,\r\n State,\r\n} from \"@stencil/core\";\r\n\r\nimport { AccordionInternalState } from \"../accordion.interfaces\";\r\nimport {\r\n AccordionHeading,\r\n AccordionSectionActiveChangeEvent,\r\n AccordionSectionAnimationEndEvent,\r\n AccordionSectionAnimationStartEvent,\r\n AccordionSectionState,\r\n AccordionSectionToggleClickEvent,\r\n AccordionSectionWijzigactie,\r\n stateMap,\r\n} from \"./accordion-section.interfaces\";\r\nimport { ExpandableAnimationEndEvent } from \"../../expandable/expandable\";\r\nimport { LabelStatus } from \"../../label/label.interfaces\";\r\nimport { RenvooiValue } from \"../../renvooi/renvooi.interfaces\";\r\nimport { SlideToggleActiveEvent } from \"../../slide-toggle/slide-toggle.interfaces\";\r\n\r\nimport { DsoSlideToggleCustomEvent } from \"../../../components\";\r\n\r\n// eslint-disable-next-line no-console\r\nconst log = (window as any)[\"_dsoLog\"] === true ? console.log.bind(console.log) : function () {};\r\n\r\nconst HandleElement: FunctionalComponent<{\r\n handleUrl: string | undefined;\r\n open: boolean;\r\n showSlideToggle: boolean;\r\n active: boolean;\r\n onActiveChange: (e: DsoSlideToggleCustomEvent<SlideToggleActiveEvent>) => void;\r\n handleElementRef: (element: HTMLAnchorElement | HTMLButtonElement | undefined) => void;\r\n onClick: (e: MouseEvent) => void;\r\n}> = ({ handleUrl, onClick, open, showSlideToggle, active, onActiveChange, handleElementRef }, children) => {\r\n if (handleUrl) {\r\n return (\r\n <>\r\n <a href={handleUrl} onClick={onClick} aria-expanded={open ? \"true\" : \"false\"} ref={handleElementRef}>\r\n {children}\r\n </a>\r\n {showSlideToggle && (\r\n <dso-slide-toggle accessibleLabel=\"Toon op kaart\" checked={active} onDsoActiveChange={onActiveChange} />\r\n )}\r\n </>\r\n );\r\n }\r\n\r\n return (\r\n <>\r\n <button type=\"button\" onClick={onClick} aria-expanded={open ? \"true\" : \"false\"} ref={handleElementRef}>\r\n {children}\r\n </button>\r\n {showSlideToggle && (\r\n <dso-slide-toggle accessibleLabel=\"Toon op kaart\" checked={active} onDsoActiveChange={onActiveChange} />\r\n )}\r\n </>\r\n );\r\n};\r\n\r\nconst Handle: FunctionalComponent<{\r\n heading: AccordionHeading;\r\n ref: (element: HTMLHeadingElement | undefined) => void;\r\n}> = ({ heading, ref }, children) => {\r\n switch (heading) {\r\n default:\r\n case \"h2\":\r\n return (\r\n <h2 ref={ref} class=\"dso-section-handle\">\r\n {children}\r\n </h2>\r\n );\r\n case \"h3\":\r\n return (\r\n <h3 ref={ref} class=\"dso-section-handle\">\r\n {children}\r\n </h3>\r\n );\r\n case \"h4\":\r\n return (\r\n <h4 ref={ref} class=\"dso-section-handle\">\r\n {children}\r\n </h4>\r\n );\r\n case \"h5\":\r\n return (\r\n <h5 ref={ref} class=\"dso-section-handle\">\r\n {children}\r\n </h5>\r\n );\r\n }\r\n};\r\n\r\nconst HandleIcon: FunctionalComponent<{\r\n state?: AccordionSectionState;\r\n icon?: string;\r\n attachmentCount?: number;\r\n}> = ({ state, icon, attachmentCount }) => {\r\n if (state) {\r\n return <HandleStateIcon state={state} />;\r\n }\r\n\r\n if (attachmentCount) {\r\n return <dso-attachments-counter count={attachmentCount}></dso-attachments-counter>;\r\n }\r\n\r\n if (icon) {\r\n return <dso-icon icon={icon}></dso-icon>;\r\n }\r\n};\r\n\r\nconst HandleStateIcon: FunctionalComponent<{ state: AccordionSectionState }> = ({ state }) => {\r\n if (state === \"error\") {\r\n return <dso-icon icon=\"status-error\"></dso-icon>;\r\n }\r\n\r\n if (state === \"danger\") {\r\n return <dso-icon icon=\"status-danger\"></dso-icon>;\r\n }\r\n\r\n if (state === \"success\") {\r\n return <dso-icon icon=\"status-success\"></dso-icon>;\r\n }\r\n\r\n if (state === \"info\") {\r\n return <dso-icon icon=\"status-info\"></dso-icon>;\r\n }\r\n\r\n if (state === \"warning\") {\r\n return <dso-icon icon=\"status-warning\"></dso-icon>;\r\n }\r\n};\r\n\r\n@Component({\r\n tag: \"dso-accordion-section\",\r\n styleUrl: \"accordion-section.scss\",\r\n shadow: true,\r\n})\r\nexport class AccordionSection implements ComponentInterface {\r\n private accordionState?: AccordionInternalState;\r\n\r\n private sectionBody?: HTMLDivElement;\r\n\r\n private sectionHeading?: HTMLHeadingElement;\r\n\r\n @Element()\r\n host!: HTMLDsoAccordionSectionElement;\r\n\r\n /**\r\n * The title of the handle\r\n */\r\n @Prop()\r\n handleTitle!: RenvooiValue | RenvooiValue[] | undefined;\r\n\r\n /**\r\n * An optional 'wijzigactie' that signals if the section is added or removed.\r\n */\r\n @Prop()\r\n wijzigactie?: AccordionSectionWijzigactie;\r\n\r\n /**\r\n * Which heading element to use.\r\n */\r\n @Prop()\r\n heading: AccordionHeading = \"h2\";\r\n\r\n /**\r\n * When set the handle will render as a `<a>`. When undefined it renders as a `<button>`\r\n */\r\n @Prop()\r\n handleUrl?: string;\r\n\r\n /**\r\n * `state` takes precedence over `attachmentCount` and `icon`\r\n */\r\n @Prop()\r\n status?: AccordionSectionState;\r\n\r\n /**\r\n * `attachmentCount` takes precedence over `icon`\r\n */\r\n @Prop()\r\n attachmentCount?: number;\r\n\r\n /**\r\n * To set an icon in the heading handle.\r\n */\r\n @Prop()\r\n icon?: string;\r\n\r\n /**\r\n * The status of the section.\r\n */\r\n @Prop()\r\n statusDescription?: string;\r\n\r\n /**\r\n * Set the Accordion Section open.\r\n */\r\n @Prop({ reflect: true })\r\n open = false;\r\n\r\n /**\r\n * Set when this Accordion Section contains or will contain an Accordion.\r\n */\r\n @Prop({ reflect: true })\r\n hasNestedAccordion = false;\r\n\r\n /**\r\n * The label to be displayed in the heading handle inside a Label (optional)\r\n */\r\n @Prop()\r\n label?: string;\r\n\r\n /**\r\n * The status of the Label in the heading handle (optional)\r\n */\r\n @Prop()\r\n labelStatus?: LabelStatus;\r\n\r\n /**\r\n * A boolean to indicate if the Accordion Section is capable of being activated. When `true` a Slide Toggle displays\r\n * on the right in the heading handle (optional). Works only for `variant` `compact-black` and `reverseAlign` false.\r\n */\r\n @Prop({ reflect: true })\r\n activatable = false;\r\n\r\n /**\r\n * A boolean to indicate if the Accordion Section is `active`. Only applicable when the Accordion Section is\r\n * `activatable`.\r\n */\r\n @Prop({ reflect: true })\r\n active = false;\r\n\r\n /**\r\n * An optional event listener for changes on the value of property `active`.\r\n */\r\n @Event()\r\n dsoActiveChange!: EventEmitter<AccordionSectionActiveChangeEvent>;\r\n\r\n /**\r\n * Calling this method will set focus to the handle.\r\n */\r\n @Method()\r\n async focusHandle() {\r\n this.handleElementRef?.focus();\r\n }\r\n\r\n @State()\r\n hover = false;\r\n\r\n get containsNestedAccordion() {\r\n return this.host.querySelector(\"dso-accordion\") !== null;\r\n }\r\n\r\n componentWillLoad() {\r\n this.accordion?._getState().then((state) => {\r\n this.accordionState = state;\r\n\r\n forceUpdate(this.host);\r\n });\r\n }\r\n\r\n get isNeutral() {\r\n return this.accordionState?.variant === \"neutral\";\r\n }\r\n\r\n private async scrollIntoView(bodyHeight: number | undefined, behavior: ScrollBehavior = \"auto\"): Promise<void> {\r\n log(\r\n `DSO Toolkit [Accordion Section] scrollIntoView(bodyHeight: ${JSON.stringify(\r\n bodyHeight,\r\n )}, behavior: ${JSON.stringify(behavior)})`,\r\n );\r\n\r\n const bodyClientRect = this.sectionBody?.getBoundingClientRect();\r\n const headingClientRect = this.sectionHeading?.getBoundingClientRect();\r\n\r\n log(`DSO Toolkit [Accordion Section] const bodyClientRect = ${JSON.stringify(bodyClientRect)};`);\r\n log(`DSO Toolkit [Accordion Section] const headingClientRect = ${JSON.stringify(headingClientRect)};`);\r\n log(`DSO Toolkit [Accordion Section] this.accordionState = ${JSON.stringify(this.accordionState)};`);\r\n log(`DSO Toolkit [Accordion Section] this.open = ${JSON.stringify(this.open)};`);\r\n\r\n if (!bodyClientRect || !headingClientRect || !this.accordionState) {\r\n log(`DSO Toolkit [Accordion Section] returning`);\r\n\r\n return;\r\n }\r\n\r\n // this y is relative to the top of the viewport.\r\n const sectionBottomY = headingClientRect.top + headingClientRect.height + (this.open ? (bodyHeight ?? 0) : 0);\r\n\r\n log(`DSO Toolkit [Accordion Section] const sectionBottomY = ${JSON.stringify(sectionBottomY)};`);\r\n log(`DSO Toolkit [Accordion Section] window.innerHeight = ${JSON.stringify(window.innerHeight)};`);\r\n\r\n const box = this.host.getBoundingClientRect();\r\n\r\n const scrollTop = window.scrollY || document.documentElement.scrollTop || document.body.scrollTop;\r\n const clientTop = document.documentElement.clientTop || document.body.clientTop || 0;\r\n const top = box.top + scrollTop - clientTop;\r\n\r\n log(\"DSO Toolkit [Accordion Section] scroll\", { box, scrollTop, clientTop, top });\r\n\r\n if (sectionBottomY > window.innerHeight) {\r\n log(\r\n `DSO Toolkit [Accordion Section] sectionBottomY > window.innerHeight === ${JSON.stringify(\r\n sectionBottomY > window.innerHeight,\r\n )};`,\r\n );\r\n\r\n const expandedAccordionHeight = sectionBottomY - headingClientRect.top;\r\n const shouldScrollToTopOfSection = expandedAccordionHeight > window.innerHeight;\r\n\r\n log(\r\n `DSO Toolkit [Accordion Section] const expandedAccordionHeight = ${JSON.stringify(expandedAccordionHeight)};`,\r\n );\r\n log(\r\n `DSO Toolkit [Accordion Section] const shouldScrollToTopOfSection = ${JSON.stringify(\r\n shouldScrollToTopOfSection,\r\n )};`,\r\n );\r\n\r\n window.scrollTo({\r\n top: shouldScrollToTopOfSection ? top : top - (window.innerHeight - expandedAccordionHeight),\r\n behavior,\r\n });\r\n } else if (headingClientRect.top < 0) {\r\n log(\r\n `DSO Toolkit [Accordion Section] headingClientRect.top < 0 === ${JSON.stringify(headingClientRect.top < 0)};`,\r\n );\r\n\r\n window.scrollTo({\r\n top,\r\n behavior,\r\n });\r\n }\r\n }\r\n\r\n private get accordion() {\r\n return this.host.closest(\"dso-accordion\");\r\n }\r\n\r\n private handleClick = (event: MouseEvent) => {\r\n this.dsoToggleClick.emit({\r\n originalEvent: event,\r\n open: !this.open,\r\n });\r\n };\r\n\r\n private handleActiveChange = (event: DsoSlideToggleCustomEvent<SlideToggleActiveEvent>) => {\r\n this.dsoActiveChange.emit({\r\n current: Boolean(this.active),\r\n next: !this.active,\r\n originalEvent: event,\r\n });\r\n };\r\n\r\n private handleExpandableAnimationStart = (e: CustomEvent<any>) => {\r\n this.dsoAnimationStart.emit({\r\n animation: this.open ? \"opening\" : \"closing\",\r\n scrollIntoView: (behavior: ScrollBehavior = \"auto\") => this.scrollIntoView(e.detail.bodyHeight, behavior),\r\n });\r\n };\r\n\r\n private handleExpandableAnimationEnd = (e: CustomEvent<ExpandableAnimationEndEvent>) => {\r\n this.dsoAnimationEnd.emit({\r\n open: this.open,\r\n scrollIntoView: (behavior: ScrollBehavior = \"auto\") => this.scrollIntoView(e.detail.bodyHeight, behavior),\r\n });\r\n };\r\n\r\n /**\r\n * Emitted when the user activates the toggle button.\r\n */\r\n @Event({ bubbles: false })\r\n dsoToggleClick!: EventEmitter<AccordionSectionToggleClickEvent>;\r\n\r\n /**\r\n * Event emitted when the Accordion Section starts its toggle animation.\r\n */\r\n @Event({ bubbles: false })\r\n dsoAnimationStart!: EventEmitter<AccordionSectionAnimationStartEvent>;\r\n\r\n /**\r\n * Event emitted when the Accordion Section completes its toggle animation.\r\n */\r\n @Event({ bubbles: false })\r\n dsoAnimationEnd!: EventEmitter<AccordionSectionAnimationEndEvent>;\r\n\r\n private handleElementRef?: HTMLAnchorElement | HTMLButtonElement;\r\n\r\n render() {\r\n const { variant, reverseAlign } = this.accordionState ?? {};\r\n const hasAddons = !!this.statusDescription || !!this.status || !!this.icon || !!this.attachmentCount;\r\n const showSlideToggle = this.activatable && variant === \"compact-black\" && !reverseAlign;\r\n\r\n return (\r\n <Host\r\n class={{\r\n \"dso-accordion-section\": true,\r\n [\"dso-accordion-\" + variant]: true,\r\n \"dso-nested-accordion\": this.hasNestedAccordion || this.containsNestedAccordion,\r\n \"dso-accordion-reverse-align\": reverseAlign ?? false,\r\n [\"dso-accordion-wijzigactie-\" + this.wijzigactie]: !!this.wijzigactie,\r\n \"dso-accordion-section-activate\": showSlideToggle,\r\n }}\r\n hidden={!variant}\r\n onMouseenter={() => (this.hover = true)}\r\n onMouseleave={() => (this.hover = false)}\r\n >\r\n <Handle heading={this.heading} ref={(element) => (this.sectionHeading = element)}>\r\n <HandleElement\r\n handleUrl={this.handleUrl}\r\n onClick={this.handleClick}\r\n open={this.open}\r\n showSlideToggle={showSlideToggle}\r\n active={this.active}\r\n onActiveChange={this.handleActiveChange}\r\n handleElementRef={(e) => (this.handleElementRef = e)}\r\n >\r\n {reverseAlign ? (\r\n <Fragment>\r\n {this.icon && (\r\n <div class=\"dso-section-handle-addons\">\r\n <HandleIcon icon={this.icon} />\r\n </div>\r\n )}\r\n <dso-renvooi value={this.handleTitle} />\r\n {this.label && (\r\n <dso-label status={this.labelStatus} compact>\r\n {this.label}\r\n </dso-label>\r\n )}\r\n <div class=\"dso-section-handle-addons\">\r\n {this.statusDescription && <span class=\"dso-status\">{this.statusDescription}</span>}\r\n <dso-icon class=\"dso-section-handle-chevron\" icon=\"chevron-down\"></dso-icon>\r\n </div>\r\n </Fragment>\r\n ) : (\r\n <Fragment>\r\n <dso-icon class=\"dso-section-handle-chevron\" icon=\"chevron-right\"></dso-icon>\r\n {this.status && <span class=\"sr-only\">{stateMap[this.status]}</span>}\r\n <span>\r\n <dso-renvooi value={this.handleTitle} />\r\n {this.isNeutral && (\r\n <dso-icon class=\"info-icon\" icon={this.open || this.hover ? \"info-active\" : \"info\"} />\r\n )}\r\n </span>\r\n {this.label && (\r\n <dso-label status={this.labelStatus} compact>\r\n {this.label}\r\n </dso-label>\r\n )}\r\n {hasAddons && (\r\n <div class=\"dso-section-handle-addons\">\r\n {this.statusDescription && <span class=\"dso-status\">{this.statusDescription}</span>}\r\n <HandleIcon state={this.status} icon={this.icon} attachmentCount={this.attachmentCount} />\r\n </div>\r\n )}\r\n </Fragment>\r\n )}\r\n </HandleElement>\r\n </Handle>\r\n <dso-expandable\r\n class=\"dso-section-body\"\r\n open={this.open}\r\n enableAnimation\r\n minimumHeight={this.isNeutral ? 0 : 4}\r\n onDsoExpandableAnimationStart={this.handleExpandableAnimationStart}\r\n onDsoExpandableAnimationEnd={this.handleExpandableAnimationEnd}\r\n >\r\n <div class=\"dso-section-body-content\" ref={(element) => (this.sectionBody = element)}>\r\n <slot />\r\n </div>\r\n </dso-expandable>\r\n </Host>\r\n );\r\n }\r\n}\r\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{r as e,c as r,h as o,F as n}from"./p-BzEnSYbR.js";const a=':host {\n display: block;\n position: fixed;\n inset-block-end: 16px;\n inset-inline-start: 16px;\n inline-size: 370px;\n background-color: #fff;\n box-shadow: -3px 3px 6px 0 rgba(0, 0, 0, 0.5);\n border-radius: 4px;\n z-index: 1000;\n}\n@media screen and (max-width: 480px) {\n :host {\n inline-size: 320px;\n inset-block-end: 0;\n inset-inline-start: 0;\n --panel-heading-padding-inline-start: 8px;\n --panel-body-padding-inline: 8px;\n }\n}\n\n*,\n*::after,\n*::before {\n box-sizing: border-box;\n}\n\n.sr-only {\n position: absolute;\n inline-size: 1px;\n block-size: 1px;\n padding: 0;\n margin: -1px;\n overflow: hidden;\n clip: rect(0, 0, 0, 0);\n border: 0;\n}\n\n.visual-rating-labels {\n display: flex;\n justify-content: space-between;\n margin-block: 8px;\n}\n\ninput[type=radio] {\n appearance: none;\n cursor: pointer;\n position: absolute;\n margin-inline: 0;\n margin-block: 0;\n inset-block: 8px 0;\n inset-inline: 0;\n z-index: 1;\n}\n\nlabel {\n position: relative;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n inline-size: 48px;\n block-size: 48px;\n border: 1px solid #ccc;\n border-inline-end-width: 0;\n padding-block-start: 8px;\n}\n@media screen and (max-width: 480px) {\n label {\n inline-size: 43px;\n block-size: 43px;\n }\n}\nlabel:hover {\n background-color: #f2f2f2;\n}\nlabel:active {\n background-color: #e5e5e5;\n}\nlabel:first-of-type {\n border-radius: 4px 0 0 4px;\n}\nlabel:first-of-type::before {\n border-radius: 3px 0 0;\n}\nlabel:last-of-type {\n border-inline-end-width: 1px;\n border-radius: 0 4px 4px 0;\n}\nlabel:last-of-type::before {\n border-radius: 0 3px 0 0;\n}\nlabel::before {\n content: "";\n display: block;\n position: absolute;\n inset-block-start: 0;\n block-size: 8px;\n inline-size: 100%;\n border-block-end: 1px solid #ccc;\n}\nlabel:has(input:checked) {\n font-weight: bold;\n}\nlabel.survey-rating-1::before, label.survey-rating-1:has(input:checked) {\n --link-color: currentColor;\n --link-hover-color: currentColor;\n --link-visited-color: currentColor;\n background-color: #b62f41;\n border-color: #ccc;\n color: #fff;\n}\nlabel.survey-rating-1::before a:not(.dso-primary, .dso-secondary, .dso-tertiary):is(.download, .download:hover, .download:focus-visible), label.survey-rating-1:has(input:checked) a:not(.dso-primary, .dso-secondary, .dso-tertiary):is(.download, .download:hover, .download:focus-visible) {\n background-image: var(--_dso-di-background-image, url("./di.svg#download-wit"));\n}\nlabel.survey-rating-1::before a:not(.dso-primary, .dso-secondary, .dso-tertiary):is(.extern, .extern:hover, .extern:focus-visible), label.survey-rating-1:has(input:checked) a:not(.dso-primary, .dso-secondary, .dso-tertiary):is(.extern, .extern:hover, .extern:focus-visible) {\n background-image: var(--_dso-di-background-image, url("./di.svg#external-link-wit"));\n}\nlabel.survey-rating-1::before a:not(.dso-primary, .dso-secondary, .dso-tertiary):is([href^="tel:"], [href^="tel:"]:hover, [href^="tel:"]:focus-visible), label.survey-rating-1:has(input:checked) a:not(.dso-primary, .dso-secondary, .dso-tertiary):is([href^="tel:"], [href^="tel:"]:hover, [href^="tel:"]:focus-visible) {\n background-image: var(--_dso-di-background-image, url("./di.svg#call-wit"));\n}\nlabel.survey-rating-1::before a:not(.dso-primary, .dso-secondary, .dso-tertiary):is([href^="mailto:"], [href^="mailto:"]:hover, [href^="mailto:"]:focus-visible), label.survey-rating-1:has(input:checked) a:not(.dso-primary, .dso-secondary, .dso-tertiary):is([href^="mailto:"], [href^="mailto:"]:hover, [href^="mailto:"]:focus-visible) {\n background-image: var(--_dso-di-background-image, url("./di.svg#email-wit"));\n}\nlabel.survey-rating-2::before, label.survey-rating-2:has(input:checked) {\n --link-color: currentColor;\n --link-hover-color: currentColor;\n --link-visited-color: currentColor;\n background-color: #ce3f51;\n border-color: #ccc;\n color: #fff;\n}\nlabel.survey-rating-2::before a:not(.dso-primary, .dso-secondary, .dso-tertiary):is(.download, .download:hover, .download:focus-visible), label.survey-rating-2:has(input:checked) a:not(.dso-primary, .dso-secondary, .dso-tertiary):is(.download, .download:hover, .download:focus-visible) {\n background-image: var(--_dso-di-background-image, url("./di.svg#download-wit"));\n}\nlabel.survey-rating-2::before a:not(.dso-primary, .dso-secondary, .dso-tertiary):is(.extern, .extern:hover, .extern:focus-visible), label.survey-rating-2:has(input:checked) a:not(.dso-primary, .dso-secondary, .dso-tertiary):is(.extern, .extern:hover, .extern:focus-visible) {\n background-image: var(--_dso-di-background-image, url("./di.svg#external-link-wit"));\n}\nlabel.survey-rating-2::before a:not(.dso-primary, .dso-secondary, .dso-tertiary):is([href^="tel:"], [href^="tel:"]:hover, [href^="tel:"]:focus-visible), label.survey-rating-2:has(input:checked) a:not(.dso-primary, .dso-secondary, .dso-tertiary):is([href^="tel:"], [href^="tel:"]:hover, [href^="tel:"]:focus-visible) {\n background-image: var(--_dso-di-background-image, url("./di.svg#call-wit"));\n}\nlabel.survey-rating-2::before a:not(.dso-primary, .dso-secondary, .dso-tertiary):is([href^="mailto:"], [href^="mailto:"]:hover, [href^="mailto:"]:focus-visible), label.survey-rating-2:has(input:checked) a:not(.dso-primary, .dso-secondary, .dso-tertiary):is([href^="mailto:"], [href^="mailto:"]:hover, [href^="mailto:"]:focus-visible) {\n background-image: var(--_dso-di-background-image, url("./di.svg#email-wit"));\n}\nlabel.survey-rating-3::before, label.survey-rating-3:has(input:checked) {\n --link-color: currentColor;\n --link-hover-color: currentColor;\n --link-visited-color: currentColor;\n background-color: #e17000;\n border-color: #ccc;\n color: #191919;\n}\nlabel.survey-rating-3::before a:not(.dso-primary, .dso-secondary, .dso-tertiary):is(.download, .download:hover, .download:focus-visible), label.survey-rating-3:has(input:checked) a:not(.dso-primary, .dso-secondary, .dso-tertiary):is(.download, .download:hover, .download:focus-visible) {\n background-image: var(--_dso-di-background-image, url("./di.svg#download-zwart"));\n}\nlabel.survey-rating-3::before a:not(.dso-primary, .dso-secondary, .dso-tertiary):is(.extern, .extern:hover, .extern:focus-visible), label.survey-rating-3:has(input:checked) a:not(.dso-primary, .dso-secondary, .dso-tertiary):is(.extern, .extern:hover, .extern:focus-visible) {\n background-image: var(--_dso-di-background-image, url("./di.svg#external-link-zwart"));\n}\nlabel.survey-rating-3::before a:not(.dso-primary, .dso-secondary, .dso-tertiary):is([href^="tel:"], [href^="tel:"]:hover, [href^="tel:"]:focus-visible), label.survey-rating-3:has(input:checked) a:not(.dso-primary, .dso-secondary, .dso-tertiary):is([href^="tel:"], [href^="tel:"]:hover, [href^="tel:"]:focus-visible) {\n background-image: var(--_dso-di-background-image, url("./di.svg#call-zwart"));\n}\nlabel.survey-rating-3::before a:not(.dso-primary, .dso-secondary, .dso-tertiary):is([href^="mailto:"], [href^="mailto:"]:hover, [href^="mailto:"]:focus-visible), label.survey-rating-3:has(input:checked) a:not(.dso-primary, .dso-secondary, .dso-tertiary):is([href^="mailto:"], [href^="mailto:"]:hover, [href^="mailto:"]:focus-visible) {\n background-image: var(--_dso-di-background-image, url("./di.svg#email-zwart"));\n}\nlabel.survey-rating-4::before, label.survey-rating-4:has(input:checked) {\n --link-color: currentColor;\n --link-hover-color: currentColor;\n --link-visited-color: currentColor;\n background-color: #dcd400;\n border-color: #ccc;\n color: #191919;\n}\nlabel.survey-rating-4::before a:not(.dso-primary, .dso-secondary, .dso-tertiary):is(.download, .download:hover, .download:focus-visible), label.survey-rating-4:has(input:checked) a:not(.dso-primary, .dso-secondary, .dso-tertiary):is(.download, .download:hover, .download:focus-visible) {\n background-image: var(--_dso-di-background-image, url("./di.svg#download-zwart"));\n}\nlabel.survey-rating-4::before a:not(.dso-primary, .dso-secondary, .dso-tertiary):is(.extern, .extern:hover, .extern:focus-visible), label.survey-rating-4:has(input:checked) a:not(.dso-primary, .dso-secondary, .dso-tertiary):is(.extern, .extern:hover, .extern:focus-visible) {\n background-image: var(--_dso-di-background-image, url("./di.svg#external-link-zwart"));\n}\nlabel.survey-rating-4::before a:not(.dso-primary, .dso-secondary, .dso-tertiary):is([href^="tel:"], [href^="tel:"]:hover, [href^="tel:"]:focus-visible), label.survey-rating-4:has(input:checked) a:not(.dso-primary, .dso-secondary, .dso-tertiary):is([href^="tel:"], [href^="tel:"]:hover, [href^="tel:"]:focus-visible) {\n background-image: var(--_dso-di-background-image, url("./di.svg#call-zwart"));\n}\nlabel.survey-rating-4::before a:not(.dso-primary, .dso-secondary, .dso-tertiary):is([href^="mailto:"], [href^="mailto:"]:hover, [href^="mailto:"]:focus-visible), label.survey-rating-4:has(input:checked) a:not(.dso-primary, .dso-secondary, .dso-tertiary):is([href^="mailto:"], [href^="mailto:"]:hover, [href^="mailto:"]:focus-visible) {\n background-image: var(--_dso-di-background-image, url("./di.svg#email-zwart"));\n}\nlabel.survey-rating-5::before, label.survey-rating-5:has(input:checked) {\n --link-color: currentColor;\n --link-hover-color: currentColor;\n --link-visited-color: currentColor;\n background-color: #79b929;\n border-color: #ccc;\n color: #191919;\n}\nlabel.survey-rating-5::before a:not(.dso-primary, .dso-secondary, .dso-tertiary):is(.download, .download:hover, .download:focus-visible), label.survey-rating-5:has(input:checked) a:not(.dso-primary, .dso-secondary, .dso-tertiary):is(.download, .download:hover, .download:focus-visible) {\n background-image: var(--_dso-di-background-image, url("./di.svg#download-zwart"));\n}\nlabel.survey-rating-5::before a:not(.dso-primary, .dso-secondary, .dso-tertiary):is(.extern, .extern:hover, .extern:focus-visible), label.survey-rating-5:has(input:checked) a:not(.dso-primary, .dso-secondary, .dso-tertiary):is(.extern, .extern:hover, .extern:focus-visible) {\n background-image: var(--_dso-di-background-image, url("./di.svg#external-link-zwart"));\n}\nlabel.survey-rating-5::before a:not(.dso-primary, .dso-secondary, .dso-tertiary):is([href^="tel:"], [href^="tel:"]:hover, [href^="tel:"]:focus-visible), label.survey-rating-5:has(input:checked) a:not(.dso-primary, .dso-secondary, .dso-tertiary):is([href^="tel:"], [href^="tel:"]:hover, [href^="tel:"]:focus-visible) {\n background-image: var(--_dso-di-background-image, url("./di.svg#call-zwart"));\n}\nlabel.survey-rating-5::before a:not(.dso-primary, .dso-secondary, .dso-tertiary):is([href^="mailto:"], [href^="mailto:"]:hover, [href^="mailto:"]:focus-visible), label.survey-rating-5:has(input:checked) a:not(.dso-primary, .dso-secondary, .dso-tertiary):is([href^="mailto:"], [href^="mailto:"]:hover, [href^="mailto:"]:focus-visible) {\n background-image: var(--_dso-di-background-image, url("./di.svg#email-zwart"));\n}\nlabel.survey-rating-6::before, label.survey-rating-6:has(input:checked) {\n --link-color: currentColor;\n --link-hover-color: currentColor;\n --link-visited-color: currentColor;\n background-color: #39870c;\n border-color: #ccc;\n color: #fff;\n}\nlabel.survey-rating-6::before a:not(.dso-primary, .dso-secondary, .dso-tertiary):is(.download, .download:hover, .download:focus-visible), label.survey-rating-6:has(input:checked) a:not(.dso-primary, .dso-secondary, .dso-tertiary):is(.download, .download:hover, .download:focus-visible) {\n background-image: var(--_dso-di-background-image, url("./di.svg#download-wit"));\n}\nlabel.survey-rating-6::before a:not(.dso-primary, .dso-secondary, .dso-tertiary):is(.extern, .extern:hover, .extern:focus-visible), label.survey-rating-6:has(input:checked) a:not(.dso-primary, .dso-secondary, .dso-tertiary):is(.extern, .extern:hover, .extern:focus-visible) {\n background-image: var(--_dso-di-background-image, url("./di.svg#external-link-wit"));\n}\nlabel.survey-rating-6::before a:not(.dso-primary, .dso-secondary, .dso-tertiary):is([href^="tel:"], [href^="tel:"]:hover, [href^="tel:"]:focus-visible), label.survey-rating-6:has(input:checked) a:not(.dso-primary, .dso-secondary, .dso-tertiary):is([href^="tel:"], [href^="tel:"]:hover, [href^="tel:"]:focus-visible) {\n background-image: var(--_dso-di-background-image, url("./di.svg#call-wit"));\n}\nlabel.survey-rating-6::before a:not(.dso-primary, .dso-secondary, .dso-tertiary):is([href^="mailto:"], [href^="mailto:"]:hover, [href^="mailto:"]:focus-visible), label.survey-rating-6:has(input:checked) a:not(.dso-primary, .dso-secondary, .dso-tertiary):is([href^="mailto:"], [href^="mailto:"]:hover, [href^="mailto:"]:focus-visible) {\n background-image: var(--_dso-di-background-image, url("./di.svg#email-wit"));\n}\nlabel.survey-rating-7::before, label.survey-rating-7:has(input:checked) {\n --link-color: currentColor;\n --link-hover-color: currentColor;\n --link-visited-color: currentColor;\n background-color: #275937;\n border-color: #ccc;\n color: #fff;\n}\nlabel.survey-rating-7::before a:not(.dso-primary, .dso-secondary, .dso-tertiary):is(.download, .download:hover, .download:focus-visible), label.survey-rating-7:has(input:checked) a:not(.dso-primary, .dso-secondary, .dso-tertiary):is(.download, .download:hover, .download:focus-visible) {\n background-image: var(--_dso-di-background-image, url("./di.svg#download-wit"));\n}\nlabel.survey-rating-7::before a:not(.dso-primary, .dso-secondary, .dso-tertiary):is(.extern, .extern:hover, .extern:focus-visible), label.survey-rating-7:has(input:checked) a:not(.dso-primary, .dso-secondary, .dso-tertiary):is(.extern, .extern:hover, .extern:focus-visible) {\n background-image: var(--_dso-di-background-image, url("./di.svg#external-link-wit"));\n}\nlabel.survey-rating-7::before a:not(.dso-primary, .dso-secondary, .dso-tertiary):is([href^="tel:"], [href^="tel:"]:hover, [href^="tel:"]:focus-visible), label.survey-rating-7:has(input:checked) a:not(.dso-primary, .dso-secondary, .dso-tertiary):is([href^="tel:"], [href^="tel:"]:hover, [href^="tel:"]:focus-visible) {\n background-image: var(--_dso-di-background-image, url("./di.svg#call-wit"));\n}\nlabel.survey-rating-7::before a:not(.dso-primary, .dso-secondary, .dso-tertiary):is([href^="mailto:"], [href^="mailto:"]:hover, [href^="mailto:"]:focus-visible), label.survey-rating-7:has(input:checked) a:not(.dso-primary, .dso-secondary, .dso-tertiary):is([href^="mailto:"], [href^="mailto:"]:hover, [href^="mailto:"]:focus-visible) {\n background-image: var(--_dso-di-background-image, url("./di.svg#email-wit"));\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 margin-block-start: 16px;\n}\nbutton[disabled] {\n cursor: default;\n}\nbutton::-moz-focus-inner {\n border: 0;\n padding: 0;\n}\nbutton.dso-secondary {\n display: inline-block;\n font-size: 1em;\n font-weight: 500;\n margin-block-end: 0;\n text-decoration: none;\n touch-action: manipulation;\n text-align: start;\n user-select: none;\n vertical-align: middle;\n}\nbutton.dso-secondary:focus, button.dso-secondary:focus-visible {\n outline-offset: 2px;\n}\nbutton.dso-secondary:active {\n outline: 0;\n}\nbutton.dso-secondary.extern::after, button.dso-secondary.download::after {\n content: "";\n display: inline-block;\n margin-inline-start: 8px;\n}\nbutton.dso-secondary {\n background-color: #fff;\n border-color: #39870c;\n color: #39870c;\n}\nbutton.dso-secondary {\n border-width: 1px;\n border-style: solid;\n border-radius: 4px;\n line-height: 1.5;\n min-inline-size: 56px;\n padding-block: 11px;\n padding-inline: 15px;\n}\nbutton.dso-secondary:hover {\n background-color: #d7e7ce;\n border-color: #39870c;\n color: #39870c;\n}\nbutton.dso-secondary:active {\n background-color: #39870c;\n border-color: #39870c;\n color: #fff;\n}\nbutton.dso-secondary[disabled], button.dso-secondary[disabled]:hover {\n background-color: #fff;\n border-color: #afcf9d;\n color: #afcf9d;\n}\nbutton.dso-secondary.dso-small {\n line-height: 1rem;\n}\nbutton.dso-secondary.dso-small dso-icon,\nbutton.dso-secondary.dso-small svg.di, button.dso-secondary.dso-small.extern::after, button.dso-secondary.dso-small.download::after, button.dso-secondary.dso-small.dso-spinner::before {\n margin-block-end: -4px;\n margin-block-start: -4px;\n}\nbutton.dso-secondary.dso-small.dso-spinner-left::before {\n block-size: 16px;\n inline-size: 16px;\n}\nbutton.dso-secondary.dso-small.dso-spinner-right::after {\n block-size: 16px;\n inline-size: 16px;\n}\nbutton.dso-secondary dso-icon:has(+ span:not(.sr-only)),\nbutton.dso-secondary svg.di:has(+ span:not(.sr-only)) {\n margin-inline-start: -8px;\n}\nbutton.dso-secondary span:not(.sr-only) + dso-icon,\nbutton.dso-secondary span:not(.sr-only) + svg.di {\n margin-inline-start: 8px;\n margin-inline-end: -8px;\n}\nbutton.dso-secondary dso-icon + span:not(.sr-only),\nbutton.dso-secondary svg.di + span:not(.sr-only) {\n margin-inline-start: 8px;\n}\nbutton.dso-secondary.dso-spinner-left[disabled], button.dso-secondary.dso-spinner-right[disabled] {\n background-color: #fff;\n border-color: #39870c;\n color: #39870c;\n}\nbutton.dso-secondary.dso-spinner-left::before {\n background-image: url("data:image/svg+xml,%3Csvg class=\'spinner\' viewBox=\'0 0 100 100\' xmlns=\'http://www.w3.org/2000/svg\' %3E%3Cstyle%3E .spinner %7B animation: rotator 8s linear infinite; transform-origin: center; %7D @keyframes rotator %7B 0%25 %7B transform: rotate(0deg); %7D 100%25 %7B transform: rotate(360deg); %7D %7D .path %7B stroke-dasharray: 265; stroke-dashoffset: 0; transform-origin: center; stroke: %2339870c; animation: dash 2s ease-in-out infinite; %7D @keyframes dash %7B 0%25 %7B stroke-dashoffset: 265; %7D 50%25 %7B stroke-dashoffset: 65; transform:rotate(90deg); %7D 100%25 %7B stroke-dashoffset: 265; transform:rotate(360deg); %7D %3C/style%3E%3Ccircle class=\'path\' fill=\'none\' stroke-width=\'10\' stroke-linecap=\'butt\' cx=\'50\' cy=\'50\' r=\'45\'%3E%3C/circle%3E%3C/svg%3E");\n background-repeat: no-repeat;\n content: "";\n display: inline-block;\n block-size: 24px;\n vertical-align: top;\n inline-size: 24px;\n margin-inline-end: 8px;\n}\nbutton.dso-secondary.dso-spinner-left:not([disabled]):hover::before {\n background-image: url("data:image/svg+xml,%3Csvg class=\'spinner\' viewBox=\'0 0 100 100\' xmlns=\'http://www.w3.org/2000/svg\' %3E%3Cstyle%3E .spinner %7B animation: rotator 8s linear infinite; transform-origin: center; %7D @keyframes rotator %7B 0%25 %7B transform: rotate(0deg); %7D 100%25 %7B transform: rotate(360deg); %7D %7D .path %7B stroke-dasharray: 265; stroke-dashoffset: 0; transform-origin: center; stroke: %23fff; animation: dash 2s ease-in-out infinite; %7D @keyframes dash %7B 0%25 %7B stroke-dashoffset: 265; %7D 50%25 %7B stroke-dashoffset: 65; transform:rotate(90deg); %7D 100%25 %7B stroke-dashoffset: 265; transform:rotate(360deg); %7D %3C/style%3E%3Ccircle class=\'path\' fill=\'none\' stroke-width=\'10\' stroke-linecap=\'butt\' cx=\'50\' cy=\'50\' r=\'45\'%3E%3C/circle%3E%3C/svg%3E");\n background-repeat: no-repeat;\n content: "";\n display: inline-block;\n block-size: 24px;\n vertical-align: top;\n inline-size: 24px;\n margin-inline-end: 8px;\n}\nbutton.dso-secondary.dso-spinner-left:not([disabled]).dso-small:hover::before {\n block-size: 16px;\n inline-size: 16px;\n}\nbutton.dso-secondary.dso-spinner-right::after {\n background-image: url("data:image/svg+xml,%3Csvg class=\'spinner\' viewBox=\'0 0 100 100\' xmlns=\'http://www.w3.org/2000/svg\' %3E%3Cstyle%3E .spinner %7B animation: rotator 8s linear infinite; transform-origin: center; %7D @keyframes rotator %7B 0%25 %7B transform: rotate(0deg); %7D 100%25 %7B transform: rotate(360deg); %7D %7D .path %7B stroke-dasharray: 265; stroke-dashoffset: 0; transform-origin: center; stroke: %2339870c; animation: dash 2s ease-in-out infinite; %7D @keyframes dash %7B 0%25 %7B stroke-dashoffset: 265; %7D 50%25 %7B stroke-dashoffset: 65; transform:rotate(90deg); %7D 100%25 %7B stroke-dashoffset: 265; transform:rotate(360deg); %7D %3C/style%3E%3Ccircle class=\'path\' fill=\'none\' stroke-width=\'10\' stroke-linecap=\'butt\' cx=\'50\' cy=\'50\' r=\'45\'%3E%3C/circle%3E%3C/svg%3E");\n background-repeat: no-repeat;\n content: "";\n display: inline-block;\n block-size: 24px;\n vertical-align: top;\n inline-size: 24px;\n margin-inline-start: 8px;\n}\nbutton.dso-secondary.dso-spinner-right:not([disabled]):hover::after {\n background-image: url("data:image/svg+xml,%3Csvg class=\'spinner\' viewBox=\'0 0 100 100\' xmlns=\'http://www.w3.org/2000/svg\' %3E%3Cstyle%3E .spinner %7B animation: rotator 8s linear infinite; transform-origin: center; %7D @keyframes rotator %7B 0%25 %7B transform: rotate(0deg); %7D 100%25 %7B transform: rotate(360deg); %7D %7D .path %7B stroke-dasharray: 265; stroke-dashoffset: 0; transform-origin: center; stroke: %23fff; animation: dash 2s ease-in-out infinite; %7D @keyframes dash %7B 0%25 %7B stroke-dashoffset: 265; %7D 50%25 %7B stroke-dashoffset: 65; transform:rotate(90deg); %7D 100%25 %7B stroke-dashoffset: 265; transform:rotate(360deg); %7D %3C/style%3E%3Ccircle class=\'path\' fill=\'none\' stroke-width=\'10\' stroke-linecap=\'butt\' cx=\'50\' cy=\'50\' r=\'45\'%3E%3C/circle%3E%3C/svg%3E");\n background-repeat: no-repeat;\n content: "";\n display: inline-block;\n block-size: 24px;\n vertical-align: top;\n inline-size: 24px;\n margin-inline-start: 8px;\n}\nbutton.dso-secondary.dso-spinner-right:not([disabled]).dso-small:hover::after {\n block-size: 16px;\n inline-size: 16px;\n}';const i=class{constructor(o){e(this,o);this.dsoSubmit=r(this,"dsoSubmit",7);this.dsoClose=r(this,"dsoClose",7)}handleForm(e){e.preventDefault();this.dsoSubmit.emit({rating:this.rating,scale:{start:1,end:7},originalEvent:e})}handleChange(e){const r=e.target;this.rating=Number(r.value)}render(){const e=["Heel moeilijk","Moeilijk","Redelijk moeilijk","Neutraal","Redelijk makkelijk","Makkelijk","Heel makkelijk"];return o("dso-panel",{key:"6fc9ee08dd30db6aa3d69d97c2ca0301925aead8",emphasized:true,onDsoCloseClick:e=>this.dsoClose.emit({originalEvent:e})},o("h2",{key:"bbb4670c28e25abbfc173460ce3f68222890fe83",slot:"heading"},"Help ons met een onderzoek"),o("strong",{key:"06cd4142e76f971ce0295de633b4b50829ee25da"},"Hoe moeilijk of makkelijk was deze taak om uit te voeren"),o("form",{key:"28fa667cc36b6e5195e89ca5a367db1f78c1b594",onSubmit:e=>this.handleForm(e)},o("div",{key:"64da63f3d3fa3c184d170294c0881b0706384c12",class:"visual-rating-labels","aria-hidden":"true"},o("span",{key:"43ae48b3d6cb72029401854d4e775e9039483b1c"},"Heel moeilijk"),o("span",{key:"f77fb4f6d9618f1f854548edf8b02b3462737805"},"Heel makkelijk")),o("div",{key:"1558bdd1bf03f620c9e78d77c0b0a5a64c36351c",role:"radiogroup"},e.map(((e,r)=>{const a=r+1;return o(n,null,o("label",{class:`survey-rating-${a}`},a,o("span",{class:"sr-only"},e),o("input",{type:"radio",name:"rating",value:a,checked:a===this.rating,onChange:e=>this.handleChange(e)})))}))),o("button",{key:"eba1c066912dcb627aa64c65e6855b2d8193c4c5",type:"submit",class:"dso-secondary"},o("span",{key:"8d748fc6a39c343c949808c070eb68aa4e4ba1b9"},"Antwoord verzenden"))))}};i.style=a;export{i as dso_survey_rating};
|
|
2
|
+
//# sourceMappingURL=p-6dac4086.entry.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["surveyRatingCss","SurveyRating","handleForm","e","preventDefault","this","dsoSubmit","emit","rating","scale","start","end","originalEvent","handleChange","target","Number","value","render","ratings","h","key","emphasized","onDsoCloseClick","dsoClose","slot","onSubmit","class","role","map","index","ratingNumber","Fragment","type","name","checked","onChange"],"sources":["src/components/survey-rating/survey-rating.scss?tag=dso-survey-rating&encapsulation=shadow","src/components/survey-rating/survey-rating.tsx"],"sourcesContent":["@use \"sass:list\";\r\n@use \"sass:map\";\r\n\r\n@use \"~dso-toolkit/src/components/button\";\r\n@use \"~dso-toolkit/src/global/mixins/set-colors.mixin\" as set-colors;\r\n@use \"~dso-toolkit/src/utilities\";\r\n@use \"~dso-toolkit/src/variables/media-query-breakpoints\";\r\n@use \"~dso-toolkit/src/variables/units\";\r\n@use \"~dso-toolkit/src/variables/zindex\";\r\n\r\n@use \"survey-rating.variables\" as survey-rating-variables;\r\n\r\n:host {\r\n display: block;\r\n position: fixed;\r\n inset-block-end: units.$u2;\r\n inset-inline-start: units.$u2;\r\n inline-size: survey-rating-variables.$survey-rating-inline-size;\r\n background-color: survey-rating-variables.$survey-rating-background-color;\r\n box-shadow: -3px 3px 6px 0 rgba(0, 0, 0, 0.5);\r\n border-radius: survey-rating-variables.$survey-rating-border-radius;\r\n z-index: zindex.$survey-rating;\r\n\r\n @media screen and (max-width: media-query-breakpoints.$screen-xs-min) {\r\n inline-size: survey-rating-variables.$survey-rating-xs-min-inline-size;\r\n inset-block-end: 0;\r\n inset-inline-start: 0;\r\n\r\n --panel-heading-padding-inline-start: #{units.$u1};\r\n --panel-body-padding-inline: #{units.$u1};\r\n }\r\n}\r\n\r\n@include utilities.box-sizing();\r\n\r\n.sr-only {\r\n @include utilities.sr-only();\r\n}\r\n\r\n.visual-rating-labels {\r\n display: flex;\r\n justify-content: space-between;\r\n margin-block: units.$u1;\r\n}\r\n\r\ninput[type=\"radio\"] {\r\n appearance: none;\r\n cursor: pointer;\r\n position: absolute;\r\n margin-inline: 0;\r\n margin-block: 0;\r\n inset-block: units.$u1 0;\r\n inset-inline: 0;\r\n z-index: 1;\r\n}\r\n\r\nlabel {\r\n position: relative;\r\n display: inline-flex;\r\n align-items: center;\r\n justify-content: center;\r\n inline-size: survey-rating-variables.$survey-rating-input-label-size;\r\n block-size: survey-rating-variables.$survey-rating-input-label-size;\r\n border: 1px solid survey-rating-variables.$survey-rating-border-color;\r\n border-inline-end-width: 0;\r\n padding-block-start: units.$u1;\r\n\r\n @media screen and (max-width: media-query-breakpoints.$screen-xs-min) {\r\n inline-size: survey-rating-variables.$survey-rating-rating-label-xs-min-size;\r\n block-size: survey-rating-variables.$survey-rating-rating-label-xs-min-size;\r\n }\r\n\r\n &:hover {\r\n background-color: survey-rating-variables.$survey-rating-color-hover;\r\n }\r\n\r\n &:active {\r\n background-color: survey-rating-variables.$survey-rating-color-active;\r\n }\r\n\r\n &:first-of-type {\r\n border-radius: survey-rating-variables.$survey-rating-border-radius 0 0\r\n survey-rating-variables.$survey-rating-border-radius;\r\n\r\n &::before {\r\n border-radius: (survey-rating-variables.$survey-rating-border-radius - 1) 0 0;\r\n }\r\n }\r\n\r\n &:last-of-type {\r\n border-inline-end-width: 1px;\r\n border-radius: 0 survey-rating-variables.$survey-rating-border-radius\r\n survey-rating-variables.$survey-rating-border-radius 0;\r\n\r\n &::before {\r\n border-radius: 0 (survey-rating-variables.$survey-rating-border-radius - 1) 0 0;\r\n }\r\n }\r\n\r\n &::before {\r\n content: \"\";\r\n display: block;\r\n position: absolute;\r\n inset-block-start: 0;\r\n block-size: units.$u1;\r\n inline-size: 100%;\r\n border-block-end: 1px solid survey-rating-variables.$survey-rating-border-color;\r\n }\r\n\r\n &:has(input:checked) {\r\n font-weight: bold;\r\n }\r\n\r\n @each $survey-rating in survey-rating-variables.$survey-ratings {\r\n $i: list.index(survey-rating-variables.$survey-ratings, $survey-rating);\r\n $color: map.get($survey-rating, color);\r\n\r\n &.survey-rating-#{$i} {\r\n &::before,\r\n &:has(input:checked) {\r\n @include set-colors.apply($color, survey-rating-variables.$survey-rating-border-color);\r\n }\r\n }\r\n }\r\n}\r\n\r\nbutton {\r\n @include button.element();\r\n\r\n &.dso-secondary {\r\n @include button.secondary($base-styling: true);\r\n }\r\n\r\n margin-block-start: units.$u2;\r\n}\r\n","import { Component, ComponentInterface, Event, EventEmitter, Fragment, h } from \"@stencil/core\";\r\nimport { SurveyRatingCloseEvent, SurveyRatingSubmitEvent } from \"./survey-rating.interfaces\";\r\n\r\n@Component({\r\n tag: \"dso-survey-rating\",\r\n styleUrl: \"survey-rating.scss\",\r\n shadow: true,\r\n})\r\nexport class SurveyRating implements ComponentInterface {\r\n private rating: number | undefined;\r\n\r\n /**\r\n * Emitted when user submits the Survey Rating.\r\n */\r\n @Event()\r\n dsoSubmit!: EventEmitter<SurveyRatingSubmitEvent>;\r\n\r\n /**\r\n * Emitted when the user wants to close the Survey Rating.\r\n */\r\n @Event()\r\n dsoClose!: EventEmitter<SurveyRatingCloseEvent>;\r\n\r\n private handleForm(e: Event): void {\r\n e.preventDefault();\r\n this.dsoSubmit.emit({ rating: this.rating, scale: { start: 1, end: 7 }, originalEvent: e });\r\n }\r\n\r\n private handleChange(e: Event): void {\r\n const target = e.target as HTMLInputElement;\r\n this.rating = Number(target.value);\r\n }\r\n\r\n render() {\r\n const ratings = [\r\n \"Heel moeilijk\",\r\n \"Moeilijk\",\r\n \"Redelijk moeilijk\",\r\n \"Neutraal\",\r\n \"Redelijk makkelijk\",\r\n \"Makkelijk\",\r\n \"Heel makkelijk\",\r\n ];\r\n\r\n return (\r\n <dso-panel emphasized onDsoCloseClick={(e) => this.dsoClose.emit({ originalEvent: e })}>\r\n <h2 slot=\"heading\">Help ons met een onderzoek</h2>\r\n <strong>Hoe moeilijk of makkelijk was deze taak om uit te voeren</strong>\r\n <form onSubmit={(e) => this.handleForm(e)}>\r\n <div class=\"visual-rating-labels\" aria-hidden=\"true\">\r\n <span>Heel moeilijk</span>\r\n <span>Heel makkelijk</span>\r\n </div>\r\n <div role=\"radiogroup\">\r\n {ratings.map((rating, index) => {\r\n const ratingNumber = index + 1;\r\n\r\n return (\r\n <>\r\n <label class={`survey-rating-${ratingNumber}`}>\r\n {ratingNumber}\r\n <span class=\"sr-only\">{rating}</span>\r\n <input\r\n type=\"radio\"\r\n name=\"rating\"\r\n value={ratingNumber}\r\n checked={ratingNumber === this.rating}\r\n onChange={(e) => this.handleChange(e)}\r\n />\r\n </label>\r\n </>\r\n );\r\n })}\r\n </div>\r\n <button type=\"submit\" class=\"dso-secondary\">\r\n <span>Antwoord verzenden</span>\r\n </button>\r\n </form>\r\n </dso-panel>\r\n );\r\n }\r\n}\r\n"],"mappings":"yDAAA,MAAMA,EAAkB,
|
|
1
|
+
{"version":3,"names":["surveyRatingCss","SurveyRating","handleForm","e","preventDefault","this","dsoSubmit","emit","rating","scale","start","end","originalEvent","handleChange","target","Number","value","render","ratings","h","key","emphasized","onDsoCloseClick","dsoClose","slot","onSubmit","class","role","map","index","ratingNumber","Fragment","type","name","checked","onChange"],"sources":["src/components/survey-rating/survey-rating.scss?tag=dso-survey-rating&encapsulation=shadow","src/components/survey-rating/survey-rating.tsx"],"sourcesContent":["@use \"sass:list\";\r\n@use \"sass:map\";\r\n\r\n@use \"~dso-toolkit/src/components/button\";\r\n@use \"~dso-toolkit/src/global/mixins/set-colors.mixin\" as set-colors;\r\n@use \"~dso-toolkit/src/utilities\";\r\n@use \"~dso-toolkit/src/variables/media-query-breakpoints\";\r\n@use \"~dso-toolkit/src/variables/units\";\r\n@use \"~dso-toolkit/src/variables/zindex\";\r\n\r\n@use \"survey-rating.variables\" as survey-rating-variables;\r\n\r\n:host {\r\n display: block;\r\n position: fixed;\r\n inset-block-end: units.$u2;\r\n inset-inline-start: units.$u2;\r\n inline-size: survey-rating-variables.$survey-rating-inline-size;\r\n background-color: survey-rating-variables.$survey-rating-background-color;\r\n box-shadow: -3px 3px 6px 0 rgba(0, 0, 0, 0.5);\r\n border-radius: survey-rating-variables.$survey-rating-border-radius;\r\n z-index: zindex.$survey-rating;\r\n\r\n @media screen and (max-width: media-query-breakpoints.$screen-xs-min) {\r\n inline-size: survey-rating-variables.$survey-rating-xs-min-inline-size;\r\n inset-block-end: 0;\r\n inset-inline-start: 0;\r\n\r\n --panel-heading-padding-inline-start: #{units.$u1};\r\n --panel-body-padding-inline: #{units.$u1};\r\n }\r\n}\r\n\r\n@include utilities.box-sizing();\r\n\r\n.sr-only {\r\n @include utilities.sr-only();\r\n}\r\n\r\n.visual-rating-labels {\r\n display: flex;\r\n justify-content: space-between;\r\n margin-block: units.$u1;\r\n}\r\n\r\ninput[type=\"radio\"] {\r\n appearance: none;\r\n cursor: pointer;\r\n position: absolute;\r\n margin-inline: 0;\r\n margin-block: 0;\r\n inset-block: units.$u1 0;\r\n inset-inline: 0;\r\n z-index: 1;\r\n}\r\n\r\nlabel {\r\n position: relative;\r\n display: inline-flex;\r\n align-items: center;\r\n justify-content: center;\r\n inline-size: survey-rating-variables.$survey-rating-input-label-size;\r\n block-size: survey-rating-variables.$survey-rating-input-label-size;\r\n border: 1px solid survey-rating-variables.$survey-rating-border-color;\r\n border-inline-end-width: 0;\r\n padding-block-start: units.$u1;\r\n\r\n @media screen and (max-width: media-query-breakpoints.$screen-xs-min) {\r\n inline-size: survey-rating-variables.$survey-rating-rating-label-xs-min-size;\r\n block-size: survey-rating-variables.$survey-rating-rating-label-xs-min-size;\r\n }\r\n\r\n &:hover {\r\n background-color: survey-rating-variables.$survey-rating-color-hover;\r\n }\r\n\r\n &:active {\r\n background-color: survey-rating-variables.$survey-rating-color-active;\r\n }\r\n\r\n &:first-of-type {\r\n border-radius: survey-rating-variables.$survey-rating-border-radius 0 0\r\n survey-rating-variables.$survey-rating-border-radius;\r\n\r\n &::before {\r\n border-radius: (survey-rating-variables.$survey-rating-border-radius - 1) 0 0;\r\n }\r\n }\r\n\r\n &:last-of-type {\r\n border-inline-end-width: 1px;\r\n border-radius: 0 survey-rating-variables.$survey-rating-border-radius\r\n survey-rating-variables.$survey-rating-border-radius 0;\r\n\r\n &::before {\r\n border-radius: 0 (survey-rating-variables.$survey-rating-border-radius - 1) 0 0;\r\n }\r\n }\r\n\r\n &::before {\r\n content: \"\";\r\n display: block;\r\n position: absolute;\r\n inset-block-start: 0;\r\n block-size: units.$u1;\r\n inline-size: 100%;\r\n border-block-end: 1px solid survey-rating-variables.$survey-rating-border-color;\r\n }\r\n\r\n &:has(input:checked) {\r\n font-weight: bold;\r\n }\r\n\r\n @each $survey-rating in survey-rating-variables.$survey-ratings {\r\n $i: list.index(survey-rating-variables.$survey-ratings, $survey-rating);\r\n $color: map.get($survey-rating, color);\r\n\r\n &.survey-rating-#{$i} {\r\n &::before,\r\n &:has(input:checked) {\r\n @include set-colors.apply($color, survey-rating-variables.$survey-rating-border-color);\r\n }\r\n }\r\n }\r\n}\r\n\r\nbutton {\r\n @include button.element();\r\n\r\n &.dso-secondary {\r\n @include button.secondary($base-styling: true);\r\n }\r\n\r\n margin-block-start: units.$u2;\r\n}\r\n","import { Component, ComponentInterface, Event, EventEmitter, Fragment, h } from \"@stencil/core\";\r\nimport { SurveyRatingCloseEvent, SurveyRatingSubmitEvent } from \"./survey-rating.interfaces\";\r\n\r\n@Component({\r\n tag: \"dso-survey-rating\",\r\n styleUrl: \"survey-rating.scss\",\r\n shadow: true,\r\n})\r\nexport class SurveyRating implements ComponentInterface {\r\n private rating: number | undefined;\r\n\r\n /**\r\n * Emitted when user submits the Survey Rating.\r\n */\r\n @Event()\r\n dsoSubmit!: EventEmitter<SurveyRatingSubmitEvent>;\r\n\r\n /**\r\n * Emitted when the user wants to close the Survey Rating.\r\n */\r\n @Event()\r\n dsoClose!: EventEmitter<SurveyRatingCloseEvent>;\r\n\r\n private handleForm(e: Event): void {\r\n e.preventDefault();\r\n this.dsoSubmit.emit({ rating: this.rating, scale: { start: 1, end: 7 }, originalEvent: e });\r\n }\r\n\r\n private handleChange(e: Event): void {\r\n const target = e.target as HTMLInputElement;\r\n this.rating = Number(target.value);\r\n }\r\n\r\n render() {\r\n const ratings = [\r\n \"Heel moeilijk\",\r\n \"Moeilijk\",\r\n \"Redelijk moeilijk\",\r\n \"Neutraal\",\r\n \"Redelijk makkelijk\",\r\n \"Makkelijk\",\r\n \"Heel makkelijk\",\r\n ];\r\n\r\n return (\r\n <dso-panel emphasized onDsoCloseClick={(e) => this.dsoClose.emit({ originalEvent: e })}>\r\n <h2 slot=\"heading\">Help ons met een onderzoek</h2>\r\n <strong>Hoe moeilijk of makkelijk was deze taak om uit te voeren</strong>\r\n <form onSubmit={(e) => this.handleForm(e)}>\r\n <div class=\"visual-rating-labels\" aria-hidden=\"true\">\r\n <span>Heel moeilijk</span>\r\n <span>Heel makkelijk</span>\r\n </div>\r\n <div role=\"radiogroup\">\r\n {ratings.map((rating, index) => {\r\n const ratingNumber = index + 1;\r\n\r\n return (\r\n <>\r\n <label class={`survey-rating-${ratingNumber}`}>\r\n {ratingNumber}\r\n <span class=\"sr-only\">{rating}</span>\r\n <input\r\n type=\"radio\"\r\n name=\"rating\"\r\n value={ratingNumber}\r\n checked={ratingNumber === this.rating}\r\n onChange={(e) => this.handleChange(e)}\r\n />\r\n </label>\r\n </>\r\n );\r\n })}\r\n </div>\r\n <button type=\"submit\" class=\"dso-secondary\">\r\n <span>Antwoord verzenden</span>\r\n </button>\r\n </form>\r\n </dso-panel>\r\n );\r\n }\r\n}\r\n"],"mappings":"yDAAA,MAAMA,EAAkB,w6qB,MCQXC,EAAY,M,iGAef,UAAAC,CAAWC,GACjBA,EAAEC,iBACFC,KAAKC,UAAUC,KAAK,CAAEC,OAAQH,KAAKG,OAAQC,MAAO,CAAEC,MAAO,EAAGC,IAAK,GAAKC,cAAeT,G,CAGjF,YAAAU,CAAaV,GACnB,MAAMW,EAASX,EAAEW,OACjBT,KAAKG,OAASO,OAAOD,EAAOE,M,CAG9B,MAAAC,GACE,MAAMC,EAAU,CACd,gBACA,WACA,oBACA,WACA,qBACA,YACA,kBAGF,OACEC,EAAA,aAAAC,IAAA,2CAAWC,WAAU,KAACC,gBAAkBnB,GAAME,KAAKkB,SAAShB,KAAK,CAAEK,cAAeT,KAChFgB,EAAI,MAAAC,IAAA,2CAAAI,KAAK,WAAyC,8BAClDL,EAAyE,UAAAC,IAAA,wGACzED,EAAA,QAAAC,IAAA,2CAAMK,SAAWtB,GAAME,KAAKH,WAAWC,IACrCgB,EAAA,OAAAC,IAAA,2CAAKM,MAAM,uBAAsB,cAAa,QAC5CP,EAA0B,QAAAC,IAAA,6DAC1BD,EAAA,QAAAC,IAAA,+DAEFD,EAAA,OAAAC,IAAA,2CAAKO,KAAK,cACPT,EAAQU,KAAI,CAACpB,EAAQqB,KACpB,MAAMC,EAAeD,EAAQ,EAE7B,OACEV,EAAAY,EAAA,KACEZ,EAAA,SAAOO,MAAO,iBAAiBI,KAC5BA,EACDX,EAAA,QAAMO,MAAM,WAAWlB,GACvBW,EAAA,SACEa,KAAK,QACLC,KAAK,SACLjB,MAAOc,EACPI,QAASJ,IAAiBzB,KAAKG,OAC/B2B,SAAWhC,GAAME,KAAKQ,aAAaV,MAGtC,KAITgB,EAAA,UAAAC,IAAA,2CAAQY,KAAK,SAASN,MAAM,iBAC1BP,EAAA,QAAAC,IAAA,oE","ignoreList":[]}
|