@dso-toolkit/core 62.18.0 → 62.20.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/app-globals-3a1e7e63.js +7 -0
- package/dist/cjs/app-globals-3a1e7e63.js.map +1 -0
- package/dist/cjs/clsx-fc789adc.js +7 -0
- package/dist/cjs/clsx-fc789adc.js.map +1 -0
- package/dist/cjs/{create-identifier-5900c27b.js → create-identifier-4a76663b.js} +3 -3
- package/dist/cjs/{create-identifier-5900c27b.js.map → create-identifier-4a76663b.js.map} +1 -1
- package/dist/cjs/dso-accordion-section.cjs.entry.js +158 -157
- package/dist/cjs/dso-accordion-section.cjs.entry.js.map +1 -1
- package/dist/cjs/dso-accordion.cjs.entry.js +34 -33
- package/dist/cjs/dso-accordion.cjs.entry.js.map +1 -1
- package/dist/cjs/dso-action-list-item.cjs.entry.js +17 -16
- package/dist/cjs/dso-action-list-item.cjs.entry.js.map +1 -1
- package/dist/cjs/dso-action-list.cjs.entry.js +10 -9
- package/dist/cjs/dso-action-list.cjs.entry.js.map +1 -1
- package/dist/cjs/dso-advanced-select.cjs.entry.js +79 -78
- package/dist/cjs/dso-advanced-select.cjs.entry.js.map +1 -1
- package/dist/cjs/dso-alert_7.cjs.entry.js +847 -815
- package/dist/cjs/dso-alert_7.cjs.entry.js.map +1 -1
- package/dist/cjs/dso-annotation-output_3.cjs.entry.js +138 -135
- package/dist/cjs/dso-annotation-output_3.cjs.entry.js.map +1 -1
- package/dist/cjs/dso-attachments-counter.cjs.entry.js +10 -9
- package/dist/cjs/dso-attachments-counter.cjs.entry.js.map +1 -1
- package/dist/cjs/dso-autosuggest.cjs.entry.js +258 -245
- package/dist/cjs/dso-autosuggest.cjs.entry.js.map +1 -1
- package/dist/cjs/dso-banner.cjs.entry.js +15 -14
- package/dist/cjs/dso-banner.cjs.entry.js.map +1 -1
- package/dist/cjs/dso-card-container.cjs.entry.js +10 -9
- package/dist/cjs/dso-card-container.cjs.entry.js.map +1 -1
- package/dist/cjs/dso-card.cjs.entry.js +61 -60
- package/dist/cjs/dso-card.cjs.entry.js.map +1 -1
- package/dist/cjs/dso-date-picker-legacy.cjs.entry.js +598 -597
- package/dist/cjs/dso-date-picker-legacy.cjs.entry.js.map +1 -1
- package/dist/cjs/dso-date-picker.cjs.entry.js +124 -123
- package/dist/cjs/dso-date-picker.cjs.entry.js.map +1 -1
- package/dist/cjs/dso-dropdown-menu.cjs.entry.js +215 -214
- package/dist/cjs/dso-dropdown-menu.cjs.entry.js.map +1 -1
- package/dist/cjs/dso-expandable.cjs.entry.js +45 -44
- package/dist/cjs/dso-expandable.cjs.entry.js.map +1 -1
- package/dist/cjs/dso-header.cjs.entry.js +119 -118
- package/dist/cjs/dso-header.cjs.entry.js.map +1 -1
- package/dist/cjs/dso-helpcenter-panel.cjs.entry.js +80 -79
- package/dist/cjs/dso-helpcenter-panel.cjs.entry.js.map +1 -1
- package/dist/cjs/dso-highlight-box.cjs.entry.js +17 -16
- package/dist/cjs/dso-highlight-box.cjs.entry.js.map +1 -1
- package/dist/cjs/dso-icon.cjs.entry.js +114 -113
- package/dist/cjs/dso-icon.cjs.entry.js.map +1 -1
- package/dist/cjs/dso-info-button.cjs.entry.js +26 -25
- package/dist/cjs/dso-info-button.cjs.entry.js.map +1 -1
- package/dist/cjs/dso-info_2.cjs.entry.js +87 -85
- package/dist/cjs/dso-info_2.cjs.entry.js.map +1 -1
- package/dist/cjs/dso-input-range.cjs.entry.js +27 -26
- package/dist/cjs/dso-input-range.cjs.entry.js.map +1 -1
- package/dist/cjs/dso-legend-item.cjs.entry.js +46 -0
- package/dist/cjs/dso-legend-item.cjs.entry.js.map +1 -0
- package/dist/cjs/dso-list-button.cjs.entry.js +117 -116
- package/dist/cjs/dso-list-button.cjs.entry.js.map +1 -1
- package/dist/cjs/dso-logo.cjs.entry.js +11 -10
- package/dist/cjs/dso-logo.cjs.entry.js.map +1 -1
- package/dist/cjs/dso-map-base-layers.cjs.entry.js +27 -26
- package/dist/cjs/dso-map-base-layers.cjs.entry.js.map +1 -1
- package/dist/cjs/dso-map-controls.cjs.entry.js +57 -56
- package/dist/cjs/dso-map-controls.cjs.entry.js.map +1 -1
- package/dist/cjs/dso-map-overlays.cjs.entry.js +28 -27
- package/dist/cjs/dso-map-overlays.cjs.entry.js.map +1 -1
- package/dist/cjs/dso-mark-bar.cjs.entry.js +51 -50
- package/dist/cjs/dso-mark-bar.cjs.entry.js.map +1 -1
- package/dist/cjs/dso-modal.cjs.entry.js +41 -42
- package/dist/cjs/dso-modal.cjs.entry.js.map +1 -1
- package/dist/cjs/dso-pagination.cjs.entry.js +118 -117
- package/dist/cjs/dso-pagination.cjs.entry.js.map +1 -1
- package/dist/cjs/dso-progress-bar.cjs.entry.js +14 -13
- package/dist/cjs/dso-progress-bar.cjs.entry.js.map +1 -1
- package/dist/cjs/dso-progress-indicator.cjs.entry.js +12 -11
- package/dist/cjs/dso-progress-indicator.cjs.entry.js.map +1 -1
- package/dist/cjs/dso-responsive-element.cjs.entry.js +46 -45
- package/dist/cjs/dso-responsive-element.cjs.entry.js.map +1 -1
- package/dist/cjs/dso-scrollable.cjs.entry.js +80 -79
- package/dist/cjs/dso-scrollable.cjs.entry.js.map +1 -1
- package/dist/cjs/dso-toggletip.cjs.entry.js +42 -41
- package/dist/cjs/dso-toggletip.cjs.entry.js.map +1 -1
- package/dist/cjs/dso-toolkit.cjs.js +6 -4
- package/dist/cjs/dso-toolkit.cjs.js.map +1 -1
- package/dist/cjs/dso-tooltip.cjs.entry.js +192 -191
- package/dist/cjs/dso-tooltip.cjs.entry.js.map +1 -1
- package/dist/cjs/dso-tree-view.cjs.entry.js +184 -183
- package/dist/cjs/dso-tree-view.cjs.entry.js.map +1 -1
- package/dist/cjs/dso-viewer-grid.cjs.entry.js +219 -217
- package/dist/cjs/dso-viewer-grid.cjs.entry.js.map +1 -1
- package/dist/cjs/dsot-document-component-demo.cjs.entry.js +163 -162
- package/dist/cjs/dsot-document-component-demo.cjs.entry.js.map +1 -1
- package/dist/cjs/get-active-element-05f06ef1.js +16 -0
- package/dist/cjs/{get-active-element-618f7b1f.js.map → get-active-element-05f06ef1.js.map} +1 -1
- package/dist/cjs/{has-overflow-27e20400.js → has-overflow-2fb1d618.js} +6 -6
- package/dist/cjs/{has-overflow-27e20400.js.map → has-overflow-2fb1d618.js.map} +1 -1
- package/dist/cjs/{index-2556c4c6.js → index-a58ba49d.js} +170 -67
- package/dist/cjs/index-a58ba49d.js.map +1 -0
- package/dist/{esm/index-aaea0a65.js → cjs/index-a5d31aab.js} +10 -5
- package/dist/cjs/index-a5d31aab.js.map +1 -0
- package/dist/cjs/{is-modified-event-97f83d0f.js → is-modified-event-f643edb2.js} +2 -2
- package/dist/cjs/{is-modified-event-97f83d0f.js.map → is-modified-event-f643edb2.js.map} +1 -1
- package/dist/cjs/loader.cjs.js +5 -3
- package/dist/cjs/loader.cjs.js.map +1 -1
- package/dist/collection/collection-manifest.json +3 -2
- package/dist/collection/components/accordion/accordion.js +120 -120
- package/dist/collection/components/accordion/accordion.js.map +1 -1
- package/dist/collection/components/accordion/components/accordion-section.interfaces.js +5 -5
- package/dist/collection/components/accordion/components/accordion-section.interfaces.js.map +1 -1
- package/dist/collection/components/accordion/components/accordion-section.js +415 -415
- package/dist/collection/components/accordion/components/accordion-section.js.map +1 -1
- package/dist/collection/components/action-list/action-list.js +39 -39
- package/dist/collection/components/action-list/action-list.js.map +1 -1
- package/dist/collection/components/action-list/components/action-list-item.js +117 -117
- package/dist/collection/components/action-list/components/action-list-item.js.map +1 -1
- package/dist/collection/components/advanced-select/advanced-select.js +204 -204
- package/dist/collection/components/advanced-select/advanced-select.js.map +1 -1
- package/dist/collection/components/alert/alert.css +84 -0
- package/dist/collection/components/alert/alert.js +64 -64
- package/dist/collection/components/alert/alert.js.map +1 -1
- package/dist/collection/components/annotation-button/annotation-button.css +0 -11
- package/dist/collection/components/annotation-button/annotation-button.js +83 -83
- package/dist/collection/components/annotation-button/annotation-button.js.map +1 -1
- package/dist/collection/components/annotation-output/annotation-output.css +0 -17
- package/dist/collection/components/annotation-output/annotation-output.js +101 -101
- package/dist/collection/components/annotation-output/annotation-output.js.map +1 -1
- package/dist/collection/components/attachments-counter/attachments-counter.js +39 -39
- package/dist/collection/components/attachments-counter/attachments-counter.js.map +1 -1
- package/dist/collection/components/autosuggest/autosuggest.css +12 -3
- package/dist/collection/components/autosuggest/autosuggest.interfaces.js.map +1 -1
- package/dist/collection/components/autosuggest/autosuggest.js +448 -436
- package/dist/collection/components/autosuggest/autosuggest.js.map +1 -1
- package/dist/collection/components/badge/badge.js +39 -39
- package/dist/collection/components/badge/badge.js.map +1 -1
- package/dist/collection/components/banner/banner.js +79 -79
- package/dist/collection/components/banner/banner.js.map +1 -1
- package/dist/collection/components/card/card.js +167 -167
- package/dist/collection/components/card/card.js.map +1 -1
- package/dist/collection/components/card-container/card-container.js +45 -45
- package/dist/collection/components/card-container/card-container.js.map +1 -1
- package/dist/collection/components/date-picker/date-picker.js +389 -389
- package/dist/collection/components/date-picker/date-picker.js.map +1 -1
- package/dist/collection/components/date-picker/date-utils.js +22 -22
- package/dist/collection/components/date-picker/date-utils.js.map +1 -1
- package/dist/collection/components/date-picker-legacy/date-localization.js +26 -26
- package/dist/collection/components/date-picker-legacy/date-localization.js.map +1 -1
- package/dist/collection/components/date-picker-legacy/date-picker-day.js +15 -15
- package/dist/collection/components/date-picker-legacy/date-picker-day.js.map +1 -1
- package/dist/collection/components/date-picker-legacy/date-picker-legacy.js +810 -809
- package/dist/collection/components/date-picker-legacy/date-picker-legacy.js.map +1 -1
- package/dist/collection/components/date-picker-legacy/date-picker-month.js +16 -16
- package/dist/collection/components/date-picker-legacy/date-picker-month.js.map +1 -1
- package/dist/collection/components/date-picker-legacy/date-utils.js +89 -89
- package/dist/collection/components/date-picker-legacy/date-utils.js.map +1 -1
- package/dist/collection/components/date-picker-legacy/utils/month-range.js +25 -25
- package/dist/collection/components/date-picker-legacy/utils/month-range.js.map +1 -1
- package/dist/collection/components/date-picker-legacy/utils/range.js +5 -5
- package/dist/collection/components/date-picker-legacy/utils/range.js.map +1 -1
- package/dist/collection/components/document-component/document-component-heading.js +24 -24
- package/dist/collection/components/document-component/document-component-heading.js.map +1 -1
- package/dist/collection/components/document-component/document-component.css +1 -1
- package/dist/collection/components/document-component/document-component.js +558 -558
- package/dist/collection/components/document-component/document-component.js.map +1 -1
- package/dist/collection/components/document-component-demo/document-component.demo.js +266 -266
- package/dist/collection/components/document-component-demo/document-component.demo.js.map +1 -1
- package/dist/collection/components/dropdown-menu/dropdown-menu.js +358 -358
- package/dist/collection/components/dropdown-menu/dropdown-menu.js.map +1 -1
- package/dist/collection/components/expandable/expandable.js +172 -172
- package/dist/collection/components/expandable/expandable.js.map +1 -1
- package/dist/collection/components/header/header.js +355 -355
- package/dist/collection/components/header/header.js.map +1 -1
- package/dist/collection/components/helpcenter-panel/helpcenter-panel.js +149 -149
- package/dist/collection/components/helpcenter-panel/helpcenter-panel.js.map +1 -1
- package/dist/collection/components/highlight-box/highlight-box.js +114 -114
- package/dist/collection/components/highlight-box/highlight-box.js.map +1 -1
- package/dist/collection/components/icon/icon.js +143 -143
- package/dist/collection/components/icon/icon.js.map +1 -1
- package/dist/collection/components/image-overlay/image-overlay.js +144 -144
- package/dist/collection/components/image-overlay/image-overlay.js.map +1 -1
- package/dist/collection/components/info/info.js +79 -79
- package/dist/collection/components/info/info.js.map +1 -1
- package/dist/collection/components/info-button/info-button.js +136 -136
- package/dist/collection/components/info-button/info-button.js.map +1 -1
- package/dist/collection/components/input-range/input-range.js +181 -181
- package/dist/collection/components/input-range/input-range.js.map +1 -1
- package/dist/collection/components/label/label.js +252 -252
- package/dist/collection/components/label/label.js.map +1 -1
- package/dist/collection/components/legend-item/legend-item.css +104 -0
- package/dist/collection/components/legend-item/legend-item.interfaces.js +2 -0
- package/dist/collection/components/legend-item/legend-item.interfaces.js.map +1 -0
- package/dist/collection/components/legend-item/legend-item.js +162 -0
- package/dist/collection/components/legend-item/legend-item.js.map +1 -0
- package/dist/collection/components/list-button/list-button.js +333 -333
- package/dist/collection/components/list-button/list-button.js.map +1 -1
- package/dist/collection/components/logo/logo.js +57 -57
- package/dist/collection/components/logo/logo.js.map +1 -1
- package/dist/collection/components/map-base-layers/map-base-layers.js +99 -99
- package/dist/collection/components/map-base-layers/map-base-layers.js.map +1 -1
- package/dist/collection/components/map-controls/map-controls.js +206 -208
- package/dist/collection/components/map-controls/map-controls.js.map +1 -1
- package/dist/collection/components/map-overlays/map-overlays.js +100 -100
- package/dist/collection/components/map-overlays/map-overlays.js.map +1 -1
- package/dist/collection/components/mark-bar/mark-bar.js +241 -240
- package/dist/collection/components/mark-bar/mark-bar.js.map +1 -1
- package/dist/collection/components/modal/modal.js +171 -173
- package/dist/collection/components/modal/modal.js.map +1 -1
- package/dist/collection/components/ozon-content/functional-components/wrap-wijzigactie.functional-component.js +11 -0
- package/dist/collection/components/ozon-content/functional-components/wrap-wijzigactie.functional-component.js.map +1 -0
- package/dist/collection/components/ozon-content/functions/parse-wijzigactie-from-node.function.js +5 -0
- package/dist/collection/components/ozon-content/functions/parse-wijzigactie-from-node.function.js.map +1 -0
- package/dist/collection/components/ozon-content/functions/wijzigactie-to-class-name.function.js +10 -0
- package/dist/collection/components/ozon-content/functions/wijzigactie-to-class-name.function.js.map +1 -0
- package/dist/collection/components/ozon-content/get-node-name.function.js +7 -7
- package/dist/collection/components/ozon-content/get-node-name.function.js.map +1 -1
- package/dist/collection/components/ozon-content/nodes/al.node.js +20 -25
- package/dist/collection/components/ozon-content/nodes/al.node.js.map +1 -1
- package/dist/collection/components/ozon-content/nodes/bron.node.js +6 -6
- package/dist/collection/components/ozon-content/nodes/bron.node.js.map +1 -1
- package/dist/collection/components/ozon-content/nodes/document.node.js +6 -6
- package/dist/collection/components/ozon-content/nodes/document.node.js.map +1 -1
- package/dist/collection/components/ozon-content/nodes/ext-ref.node.js +8 -8
- package/dist/collection/components/ozon-content/nodes/ext-ref.node.js.map +1 -1
- package/dist/collection/components/ozon-content/nodes/fallback.node.js +7 -7
- package/dist/collection/components/ozon-content/nodes/fallback.node.js.map +1 -1
- package/dist/collection/components/ozon-content/nodes/figuur.node.js +37 -37
- package/dist/collection/components/ozon-content/nodes/figuur.node.js.map +1 -1
- package/dist/collection/components/ozon-content/nodes/inhoud.node.js +12 -12
- package/dist/collection/components/ozon-content/nodes/inhoud.node.js.map +1 -1
- package/dist/collection/components/ozon-content/nodes/inline-tekst-afbeelding.node.js +7 -7
- package/dist/collection/components/ozon-content/nodes/inline-tekst-afbeelding.node.js.map +1 -1
- package/dist/collection/components/ozon-content/nodes/inline.nodes.js +9 -9
- package/dist/collection/components/ozon-content/nodes/inline.nodes.js.map +1 -1
- package/dist/collection/components/ozon-content/nodes/int-io-ref.node.js +23 -23
- package/dist/collection/components/ozon-content/nodes/int-io-ref.node.js.map +1 -1
- package/dist/collection/components/ozon-content/nodes/int-ref.node.js +23 -23
- package/dist/collection/components/ozon-content/nodes/int-ref.node.js.map +1 -1
- package/dist/collection/components/ozon-content/nodes/lijst.node.js +26 -16
- package/dist/collection/components/ozon-content/nodes/lijst.node.js.map +1 -1
- package/dist/collection/components/ozon-content/nodes/nieuwe-tekst.node.js +6 -6
- package/dist/collection/components/ozon-content/nodes/nieuwe-tekst.node.js.map +1 -1
- package/dist/collection/components/ozon-content/nodes/noot.node.js +18 -18
- package/dist/collection/components/ozon-content/nodes/noot.node.js.map +1 -1
- package/dist/collection/components/ozon-content/nodes/opschrift.node.js +12 -12
- package/dist/collection/components/ozon-content/nodes/opschrift.node.js.map +1 -1
- package/dist/collection/components/ozon-content/nodes/table.node/colspec/colspec-mapper.js +35 -35
- package/dist/collection/components/ozon-content/nodes/table.node/colspec/colspec-mapper.js.map +1 -1
- package/dist/collection/components/ozon-content/nodes/table.node/table-cell.js +34 -34
- package/dist/collection/components/ozon-content/nodes/table.node/table-cell.js.map +1 -1
- package/dist/collection/components/ozon-content/nodes/table.node/table-rows.js +1 -1
- package/dist/collection/components/ozon-content/nodes/table.node/table-rows.js.map +1 -1
- package/dist/collection/components/ozon-content/nodes/table.node/table.node.js +26 -26
- package/dist/collection/components/ozon-content/nodes/table.node/table.node.js.map +1 -1
- package/dist/collection/components/ozon-content/nodes/text.node.js +14 -14
- package/dist/collection/components/ozon-content/nodes/text.node.js.map +1 -1
- package/dist/collection/components/ozon-content/nodes/verwijderde-tekst.node.js +6 -6
- package/dist/collection/components/ozon-content/nodes/verwijderde-tekst.node.js.map +1 -1
- package/dist/collection/components/ozon-content/ozon-content-mapper.js +89 -89
- package/dist/collection/components/ozon-content/ozon-content-mapper.js.map +1 -1
- package/dist/collection/components/ozon-content/ozon-content.css +23 -2
- package/dist/collection/components/ozon-content/ozon-content.interfaces.js.map +1 -1
- package/dist/collection/components/ozon-content/ozon-content.js +159 -159
- package/dist/collection/components/ozon-content/ozon-content.js.map +1 -1
- package/dist/collection/components/pagination/pagination.js +223 -223
- package/dist/collection/components/pagination/pagination.js.map +1 -1
- package/dist/collection/components/progress-bar/progress-bar.js +79 -79
- package/dist/collection/components/progress-bar/progress-bar.js.map +1 -1
- package/dist/collection/components/progress-indicator/progress-indicator.js +76 -76
- package/dist/collection/components/progress-indicator/progress-indicator.js.map +1 -1
- package/dist/collection/components/responsive-element/responsive-element.js +107 -107
- package/dist/collection/components/responsive-element/responsive-element.js.map +1 -1
- package/dist/collection/components/scrollable/scrollable.js +135 -135
- package/dist/collection/components/scrollable/scrollable.js.map +1 -1
- package/dist/collection/components/selectable/selectable.js +348 -350
- package/dist/collection/components/selectable/selectable.js.map +1 -1
- package/dist/collection/components/slide-toggle/slide-toggle.js +152 -152
- package/dist/collection/components/slide-toggle/slide-toggle.js.map +1 -1
- package/dist/collection/components/table/table.js +126 -126
- package/dist/collection/components/table/table.js.map +1 -1
- package/dist/collection/components/toggletip/toggletip.js +134 -134
- package/dist/collection/components/toggletip/toggletip.js.map +1 -1
- package/dist/collection/components/tooltip/tooltip.js +379 -379
- package/dist/collection/components/tooltip/tooltip.js.map +1 -1
- package/dist/collection/components/tree-view/tree-item.js +3 -3
- package/dist/collection/components/tree-view/tree-item.js.map +1 -1
- package/dist/collection/components/tree-view/tree-view.js +305 -304
- package/dist/collection/components/tree-view/tree-view.js.map +1 -1
- package/dist/collection/components/viewer-grid/components/document-panel.js +4 -4
- package/dist/collection/components/viewer-grid/components/document-panel.js.map +1 -1
- package/dist/collection/components/viewer-grid/components/filterpanel.js +3 -3
- package/dist/collection/components/viewer-grid/components/filterpanel.js.map +1 -1
- package/dist/collection/components/viewer-grid/components/main-panel.js +11 -10
- package/dist/collection/components/viewer-grid/components/main-panel.js.map +1 -1
- package/dist/collection/components/viewer-grid/components/overlay.js +3 -3
- package/dist/collection/components/viewer-grid/components/overlay.js.map +1 -1
- package/dist/collection/components/viewer-grid/components/sizing-buttons.js +8 -8
- package/dist/collection/components/viewer-grid/components/sizing-buttons.js.map +1 -1
- package/dist/collection/components/viewer-grid/components/viewer-grid-filterpanel-buttons.js.map +1 -1
- package/dist/collection/components/viewer-grid/viewer-grid.css +1 -1
- package/dist/collection/components/viewer-grid/viewer-grid.interfaces.js +7 -7
- package/dist/collection/components/viewer-grid/viewer-grid.interfaces.js.map +1 -1
- package/dist/collection/components/viewer-grid/viewer-grid.js +584 -584
- package/dist/collection/components/viewer-grid/viewer-grid.js.map +1 -1
- package/dist/collection/utils/create-identifier.js +2 -2
- package/dist/collection/utils/create-identifier.js.map +1 -1
- package/dist/collection/utils/get-active-element.js +8 -8
- package/dist/collection/utils/get-active-element.js.map +1 -1
- package/dist/collection/utils/has-overflow.js +5 -5
- package/dist/collection/utils/has-overflow.js.map +1 -1
- package/dist/collection/utils/is-interactive-element.js +4 -4
- package/dist/collection/utils/is-interactive-element.js.map +1 -1
- package/dist/collection/utils/is-modified-event.js +1 -1
- package/dist/collection/utils/is-modified-event.js.map +1 -1
- package/dist/components/alert.js +39 -38
- package/dist/components/alert.js.map +1 -1
- package/dist/components/annotation-button.js +35 -34
- package/dist/components/annotation-button.js.map +1 -1
- package/dist/components/annotation-output.js +47 -46
- package/dist/components/annotation-output.js.map +1 -1
- package/dist/components/attachments-counter.js +29 -28
- package/dist/components/attachments-counter.js.map +1 -1
- package/dist/components/badge.js +24 -23
- package/dist/components/badge.js.map +1 -1
- package/dist/components/clsx.js +1 -1
- package/dist/components/clsx.js.map +1 -1
- package/dist/components/create-identifier.js +2 -2
- package/dist/components/create-identifier.js.map +1 -1
- package/dist/components/document-component.js +174 -173
- package/dist/components/document-component.js.map +1 -1
- package/dist/components/dropdown-menu.js +219 -218
- package/dist/components/dropdown-menu.js.map +1 -1
- package/dist/components/dso-accordion-section.d.ts +2 -2
- package/dist/components/dso-accordion-section.js +197 -196
- package/dist/components/dso-accordion-section.js.map +1 -1
- package/dist/components/dso-accordion.d.ts +2 -2
- package/dist/components/dso-accordion.js +53 -52
- package/dist/components/dso-accordion.js.map +1 -1
- package/dist/components/dso-action-list-item.d.ts +2 -2
- package/dist/components/dso-action-list-item.js +40 -39
- package/dist/components/dso-action-list-item.js.map +1 -1
- package/dist/components/dso-action-list.d.ts +2 -2
- package/dist/components/dso-action-list.js +24 -23
- package/dist/components/dso-action-list.js.map +1 -1
- package/dist/components/dso-advanced-select.d.ts +2 -2
- package/dist/components/dso-advanced-select.js +104 -103
- package/dist/components/dso-advanced-select.js.map +1 -1
- package/dist/components/dso-alert.d.ts +2 -2
- package/dist/components/dso-annotation-button.d.ts +2 -2
- package/dist/components/dso-annotation-output.d.ts +2 -2
- package/dist/components/dso-attachments-counter.d.ts +2 -2
- package/dist/components/dso-autosuggest.d.ts +2 -2
- package/dist/components/dso-autosuggest.js +292 -279
- package/dist/components/dso-autosuggest.js.map +1 -1
- package/dist/components/dso-badge.d.ts +2 -2
- package/dist/components/dso-banner.d.ts +2 -2
- package/dist/components/dso-banner.js +30 -29
- package/dist/components/dso-banner.js.map +1 -1
- package/dist/components/dso-card-container.d.ts +2 -2
- package/dist/components/dso-card-container.js +24 -23
- package/dist/components/dso-card-container.js.map +1 -1
- package/dist/components/dso-card.d.ts +2 -2
- package/dist/components/dso-card.js +82 -81
- package/dist/components/dso-card.js.map +1 -1
- package/dist/components/dso-date-picker-legacy.d.ts +2 -2
- package/dist/components/dso-date-picker-legacy.js +633 -632
- package/dist/components/dso-date-picker-legacy.js.map +1 -1
- package/dist/components/dso-date-picker.d.ts +2 -2
- package/dist/components/dso-date-picker.js +146 -145
- package/dist/components/dso-date-picker.js.map +1 -1
- package/dist/components/dso-document-component.d.ts +2 -2
- package/dist/components/dso-dropdown-menu.d.ts +2 -2
- package/dist/components/dso-expandable.d.ts +2 -2
- package/dist/components/dso-header.d.ts +2 -2
- package/dist/components/dso-header.js +155 -154
- package/dist/components/dso-header.js.map +1 -1
- package/dist/components/dso-helpcenter-panel.d.ts +2 -2
- package/dist/components/dso-helpcenter-panel.js +107 -106
- package/dist/components/dso-helpcenter-panel.js.map +1 -1
- package/dist/components/dso-highlight-box.d.ts +2 -2
- package/dist/components/dso-highlight-box.js +35 -34
- package/dist/components/dso-highlight-box.js.map +1 -1
- package/dist/components/dso-icon.d.ts +2 -2
- package/dist/components/dso-image-overlay.d.ts +2 -2
- package/dist/components/dso-info-button.d.ts +2 -2
- package/dist/components/dso-info.d.ts +2 -2
- package/dist/components/dso-input-range.d.ts +2 -2
- package/dist/components/dso-input-range.js +47 -46
- package/dist/components/dso-input-range.js.map +1 -1
- package/dist/components/dso-label.d.ts +2 -2
- package/dist/components/dso-legend-item.d.ts +11 -0
- package/dist/components/dso-legend-item.js +89 -0
- package/dist/components/dso-legend-item.js.map +1 -0
- package/dist/components/dso-list-button.d.ts +2 -2
- package/dist/components/dso-list-button.js +147 -146
- package/dist/components/dso-list-button.js.map +1 -1
- package/dist/components/dso-logo.d.ts +2 -2
- package/dist/components/dso-logo.js +26 -25
- package/dist/components/dso-logo.js.map +1 -1
- package/dist/components/dso-map-base-layers.d.ts +2 -2
- package/dist/components/dso-map-base-layers.js +62 -61
- package/dist/components/dso-map-base-layers.js.map +1 -1
- package/dist/components/dso-map-controls.d.ts +2 -2
- package/dist/components/dso-map-controls.js +86 -85
- package/dist/components/dso-map-controls.js.map +1 -1
- package/dist/components/dso-map-overlays.d.ts +2 -2
- package/dist/components/dso-map-overlays.js +63 -62
- package/dist/components/dso-map-overlays.js.map +1 -1
- package/dist/components/dso-mark-bar.d.ts +2 -2
- package/dist/components/dso-mark-bar.js +74 -73
- package/dist/components/dso-mark-bar.js.map +1 -1
- package/dist/components/dso-modal.d.ts +2 -2
- package/dist/components/dso-modal.js +69 -70
- package/dist/components/dso-modal.js.map +1 -1
- package/dist/components/dso-ozon-content.d.ts +2 -2
- package/dist/components/dso-pagination.d.ts +2 -2
- package/dist/components/dso-pagination.js +144 -143
- package/dist/components/dso-pagination.js.map +1 -1
- package/dist/components/dso-progress-bar.d.ts +2 -2
- package/dist/components/dso-progress-bar.js +30 -29
- package/dist/components/dso-progress-bar.js.map +1 -1
- package/dist/components/dso-progress-indicator.d.ts +2 -2
- package/dist/components/dso-responsive-element.d.ts +2 -2
- package/dist/components/dso-scrollable.d.ts +2 -2
- package/dist/components/dso-selectable.d.ts +2 -2
- package/dist/components/dso-slide-toggle.d.ts +2 -2
- package/dist/components/dso-table.d.ts +2 -2
- package/dist/components/dso-toggletip.d.ts +2 -2
- package/dist/components/dso-toggletip.js +1 -85
- package/dist/components/dso-toggletip.js.map +1 -1
- package/dist/components/dso-tooltip.d.ts +2 -2
- package/dist/components/dso-tree-view.d.ts +2 -2
- package/dist/components/dso-tree-view.js +208 -207
- package/dist/components/dso-tree-view.js.map +1 -1
- package/dist/components/dso-viewer-grid.d.ts +2 -2
- package/dist/components/dso-viewer-grid.js +246 -244
- package/dist/components/dso-viewer-grid.js.map +1 -1
- package/dist/components/dsot-document-component-demo.d.ts +2 -2
- package/dist/components/dsot-document-component-demo.js +258 -257
- package/dist/components/dsot-document-component-demo.js.map +1 -1
- package/dist/components/expandable.js +63 -62
- package/dist/components/expandable.js.map +1 -1
- package/dist/components/focus-trap.esm.js +1 -1
- package/dist/components/get-active-element.js +8 -8
- package/dist/components/get-active-element.js.map +1 -1
- package/dist/components/has-overflow.js +5 -5
- package/dist/components/has-overflow.js.map +1 -1
- package/dist/components/icon.js +128 -127
- package/dist/components/icon.js.map +1 -1
- package/dist/components/image-overlay.js +122 -121
- package/dist/components/image-overlay.js.map +1 -1
- package/dist/components/index.d.ts +2 -0
- package/dist/components/index.esm.js +1 -1
- package/dist/components/index.js +1 -0
- package/dist/components/index.js.map +1 -1
- package/dist/components/index2.js +7 -4
- package/dist/components/index2.js.map +1 -1
- package/dist/components/info-button.js +48 -47
- package/dist/components/info-button.js.map +1 -1
- package/dist/components/info.js +32 -31
- package/dist/components/info.js.map +1 -1
- package/dist/components/is-modified-event.js +1 -1
- package/dist/components/is-modified-event.js.map +1 -1
- package/dist/components/label.js +143 -142
- package/dist/components/label.js.map +1 -1
- package/dist/components/ozon-content.js +561 -535
- package/dist/components/ozon-content.js.map +1 -1
- package/dist/components/progress-indicator.js +33 -32
- package/dist/components/progress-indicator.js.map +1 -1
- package/dist/components/responsive-element.js +62 -61
- package/dist/components/responsive-element.js.map +1 -1
- package/dist/components/scrollable.js +94 -93
- package/dist/components/scrollable.js.map +1 -1
- package/dist/components/selectable.js +118 -117
- package/dist/components/selectable.js.map +1 -1
- package/dist/components/slide-toggle.js +44 -43
- package/dist/components/slide-toggle.js.map +1 -1
- package/dist/components/table.js +95 -94
- package/dist/components/table.js.map +1 -1
- package/dist/components/toggletip.js +90 -0
- package/dist/components/toggletip.js.map +1 -0
- package/dist/components/tooltip.js +217 -216
- package/dist/components/tooltip.js.map +1 -1
- package/dist/dso-toolkit/dso-toolkit.esm.js +1 -1
- package/dist/dso-toolkit/dso-toolkit.esm.js.map +1 -1
- package/dist/dso-toolkit/p-0142294a.entry.js +2 -0
- package/dist/dso-toolkit/p-0142294a.entry.js.map +1 -0
- package/dist/dso-toolkit/p-0308135a.entry.js +2 -0
- package/dist/dso-toolkit/p-0308135a.entry.js.map +1 -0
- package/dist/dso-toolkit/p-0bb4a95b.entry.js +2 -0
- package/dist/dso-toolkit/p-0bb4a95b.entry.js.map +1 -0
- package/dist/dso-toolkit/{p-46955cda.entry.js → p-0bbdb3e7.entry.js} +2 -2
- package/dist/dso-toolkit/p-0bbdb3e7.entry.js.map +1 -0
- package/dist/dso-toolkit/{p-67461818.entry.js → p-0c1b34f6.entry.js} +2 -2
- package/dist/dso-toolkit/p-0c1b34f6.entry.js.map +1 -0
- package/dist/dso-toolkit/p-10d464fa.entry.js +2 -0
- package/dist/dso-toolkit/p-10d464fa.entry.js.map +1 -0
- package/dist/dso-toolkit/p-1cb9cd71.entry.js +2 -0
- package/dist/dso-toolkit/p-1cb9cd71.entry.js.map +1 -0
- package/dist/dso-toolkit/{p-86133aa5.js → p-1dbcaeef.js} +2 -2
- package/dist/dso-toolkit/p-1f66a719.entry.js +2 -0
- package/dist/dso-toolkit/p-1f66a719.entry.js.map +1 -0
- package/dist/dso-toolkit/{p-fd7891ef.js → p-202d2cdf.js} +1 -1
- package/dist/dso-toolkit/p-23b5692c.js +2 -0
- package/dist/dso-toolkit/p-23b5692c.js.map +1 -0
- package/dist/dso-toolkit/p-28de6034.entry.js +2 -0
- package/dist/dso-toolkit/p-28de6034.entry.js.map +1 -0
- package/dist/dso-toolkit/{p-17e4b846.js → p-2d694112.js} +1 -1
- package/dist/dso-toolkit/p-435baefc.entry.js +2 -0
- package/dist/dso-toolkit/p-435baefc.entry.js.map +1 -0
- package/dist/dso-toolkit/{p-ea6ca8b2.entry.js → p-43bcfb18.entry.js} +2 -2
- package/dist/dso-toolkit/p-43bcfb18.entry.js.map +1 -0
- package/dist/dso-toolkit/p-4eaf26e3.entry.js +2 -0
- package/dist/dso-toolkit/p-4eaf26e3.entry.js.map +1 -0
- package/dist/dso-toolkit/p-5028d1e1.entry.js +2 -0
- package/dist/dso-toolkit/p-5028d1e1.entry.js.map +1 -0
- package/dist/dso-toolkit/p-62ec675a.entry.js +2 -0
- package/dist/dso-toolkit/p-62ec675a.entry.js.map +1 -0
- package/dist/dso-toolkit/{p-69231fe7.entry.js → p-64755e52.entry.js} +2 -2
- package/dist/dso-toolkit/p-64755e52.entry.js.map +1 -0
- package/dist/dso-toolkit/{p-e1cb1603.entry.js → p-64d88436.entry.js} +2 -2
- package/dist/dso-toolkit/p-64d88436.entry.js.map +1 -0
- package/dist/dso-toolkit/{p-eb7275e9.entry.js → p-67480a2f.entry.js} +2 -2
- package/dist/dso-toolkit/p-67480a2f.entry.js.map +1 -0
- package/dist/dso-toolkit/p-6e7dcc0e.entry.js +2 -0
- package/dist/dso-toolkit/p-6e7dcc0e.entry.js.map +1 -0
- package/dist/dso-toolkit/p-701648d3.js +3 -0
- package/dist/dso-toolkit/p-701648d3.js.map +1 -0
- package/dist/dso-toolkit/p-7f5b0979.entry.js +2 -0
- package/dist/dso-toolkit/p-7f5b0979.entry.js.map +1 -0
- package/dist/dso-toolkit/{p-fbb226aa.js → p-808a98bc.js} +3 -3
- package/dist/dso-toolkit/p-86e80f9c.entry.js +2 -0
- package/dist/dso-toolkit/p-86e80f9c.entry.js.map +1 -0
- package/dist/dso-toolkit/p-88b1db54.entry.js +2 -0
- package/dist/dso-toolkit/p-88b1db54.entry.js.map +1 -0
- package/dist/dso-toolkit/p-8a1a6e56.js +2 -0
- package/dist/dso-toolkit/p-8a1a6e56.js.map +1 -0
- package/dist/dso-toolkit/p-906ae1e7.entry.js +2 -0
- package/dist/dso-toolkit/p-906ae1e7.entry.js.map +1 -0
- package/dist/dso-toolkit/p-9709ff83.entry.js +2 -0
- package/dist/dso-toolkit/p-9709ff83.entry.js.map +1 -0
- package/dist/dso-toolkit/{p-c19cfe3f.js → p-97f788d4.js} +1 -1
- package/dist/dso-toolkit/p-9bf86dbf.entry.js +2 -0
- package/dist/dso-toolkit/p-9bf86dbf.entry.js.map +1 -0
- package/dist/dso-toolkit/p-a00fb3ac.entry.js +2 -0
- package/dist/dso-toolkit/p-a00fb3ac.entry.js.map +1 -0
- package/dist/dso-toolkit/p-b22757ab.entry.js +2 -0
- package/dist/dso-toolkit/p-b22757ab.entry.js.map +1 -0
- package/dist/dso-toolkit/p-b51c4022.entry.js +2 -0
- package/dist/dso-toolkit/p-b51c4022.entry.js.map +1 -0
- package/dist/dso-toolkit/{p-89501dcc.entry.js → p-b879c985.entry.js} +2 -2
- package/dist/dso-toolkit/p-b879c985.entry.js.map +1 -0
- package/dist/dso-toolkit/p-bc3c966f.entry.js +2 -0
- package/dist/dso-toolkit/p-bc3c966f.entry.js.map +1 -0
- package/dist/dso-toolkit/p-bc95874a.entry.js +2 -0
- package/dist/dso-toolkit/p-bc95874a.entry.js.map +1 -0
- package/dist/dso-toolkit/p-bcc19bae.entry.js +2 -0
- package/dist/dso-toolkit/p-bcc19bae.entry.js.map +1 -0
- package/dist/dso-toolkit/p-bec5778a.entry.js +2 -0
- package/dist/dso-toolkit/p-bec5778a.entry.js.map +1 -0
- package/dist/dso-toolkit/{p-1b8d34a6.entry.js → p-c22965e0.entry.js} +2 -2
- package/dist/dso-toolkit/p-c22965e0.entry.js.map +1 -0
- package/dist/dso-toolkit/{p-6e9b961b.js → p-c8f6f8d9.js} +1 -1
- package/dist/dso-toolkit/p-cd466fa3.entry.js +2 -0
- package/dist/dso-toolkit/p-cd466fa3.entry.js.map +1 -0
- package/dist/dso-toolkit/{p-dd21df39.entry.js → p-cef2a4da.entry.js} +2 -2
- package/dist/dso-toolkit/p-cef2a4da.entry.js.map +1 -0
- package/dist/dso-toolkit/p-d75e278f.entry.js +2 -0
- package/dist/dso-toolkit/p-d75e278f.entry.js.map +1 -0
- package/dist/dso-toolkit/p-dd9d670a.entry.js +2 -0
- package/dist/dso-toolkit/p-dd9d670a.entry.js.map +1 -0
- package/dist/dso-toolkit/p-e1255160.js +2 -0
- package/dist/dso-toolkit/p-e1255160.js.map +1 -0
- package/dist/dso-toolkit/p-e3b54b03.entry.js +2 -0
- package/dist/dso-toolkit/p-e3b54b03.entry.js.map +1 -0
- package/dist/dso-toolkit/{p-c9fbf040.entry.js → p-e8648400.entry.js} +2 -2
- package/dist/dso-toolkit/p-e8648400.entry.js.map +1 -0
- package/dist/dso-toolkit/p-e8ada03b.entry.js +2 -0
- package/dist/dso-toolkit/p-e8ada03b.entry.js.map +1 -0
- package/dist/dso-toolkit/p-fbf6613f.entry.js +2 -0
- package/dist/dso-toolkit/p-fbf6613f.entry.js.map +1 -0
- package/dist/esm/app-globals-0f993ce5.js +5 -0
- package/dist/esm/app-globals-0f993ce5.js.map +1 -0
- package/dist/esm/clsx-297c1ffe.js +5 -0
- package/dist/esm/clsx-297c1ffe.js.map +1 -0
- package/dist/esm/create-identifier-d61d46af.js +17 -0
- package/dist/esm/{create-identifier-479a4699.js.map → create-identifier-d61d46af.js.map} +1 -1
- package/dist/esm/dso-accordion-section.entry.js +158 -157
- package/dist/esm/dso-accordion-section.entry.js.map +1 -1
- package/dist/esm/dso-accordion.entry.js +34 -33
- package/dist/esm/dso-accordion.entry.js.map +1 -1
- package/dist/esm/dso-action-list-item.entry.js +17 -16
- package/dist/esm/dso-action-list-item.entry.js.map +1 -1
- package/dist/esm/dso-action-list.entry.js +10 -9
- package/dist/esm/dso-action-list.entry.js.map +1 -1
- package/dist/esm/dso-advanced-select.entry.js +81 -80
- package/dist/esm/dso-advanced-select.entry.js.map +1 -1
- package/dist/esm/dso-alert_7.entry.js +849 -817
- package/dist/esm/dso-alert_7.entry.js.map +1 -1
- package/dist/esm/dso-annotation-output_3.entry.js +138 -135
- package/dist/esm/dso-annotation-output_3.entry.js.map +1 -1
- package/dist/esm/dso-attachments-counter.entry.js +10 -9
- package/dist/esm/dso-attachments-counter.entry.js.map +1 -1
- package/dist/esm/dso-autosuggest.entry.js +258 -245
- package/dist/esm/dso-autosuggest.entry.js.map +1 -1
- package/dist/esm/dso-banner.entry.js +15 -14
- package/dist/esm/dso-banner.entry.js.map +1 -1
- package/dist/esm/dso-card-container.entry.js +10 -9
- package/dist/esm/dso-card-container.entry.js.map +1 -1
- package/dist/esm/dso-card.entry.js +61 -60
- package/dist/esm/dso-card.entry.js.map +1 -1
- package/dist/esm/dso-date-picker-legacy.entry.js +598 -597
- package/dist/esm/dso-date-picker-legacy.entry.js.map +1 -1
- package/dist/esm/dso-date-picker.entry.js +124 -123
- package/dist/esm/dso-date-picker.entry.js.map +1 -1
- package/dist/esm/dso-dropdown-menu.entry.js +216 -215
- package/dist/esm/dso-dropdown-menu.entry.js.map +1 -1
- package/dist/esm/dso-expandable.entry.js +45 -44
- package/dist/esm/dso-expandable.entry.js.map +1 -1
- package/dist/esm/dso-header.entry.js +119 -118
- package/dist/esm/dso-header.entry.js.map +1 -1
- package/dist/esm/dso-helpcenter-panel.entry.js +82 -81
- package/dist/esm/dso-helpcenter-panel.entry.js.map +1 -1
- package/dist/esm/dso-highlight-box.entry.js +17 -16
- package/dist/esm/dso-highlight-box.entry.js.map +1 -1
- package/dist/esm/dso-icon.entry.js +114 -113
- package/dist/esm/dso-icon.entry.js.map +1 -1
- package/dist/esm/dso-info-button.entry.js +26 -25
- package/dist/esm/dso-info-button.entry.js.map +1 -1
- package/dist/esm/dso-info_2.entry.js +87 -85
- package/dist/esm/dso-info_2.entry.js.map +1 -1
- package/dist/esm/dso-input-range.entry.js +27 -26
- package/dist/esm/dso-input-range.entry.js.map +1 -1
- package/dist/esm/dso-legend-item.entry.js +42 -0
- package/dist/esm/dso-legend-item.entry.js.map +1 -0
- package/dist/esm/dso-list-button.entry.js +119 -118
- package/dist/esm/dso-list-button.entry.js.map +1 -1
- package/dist/esm/dso-logo.entry.js +11 -10
- package/dist/esm/dso-logo.entry.js.map +1 -1
- package/dist/esm/dso-map-base-layers.entry.js +27 -26
- package/dist/esm/dso-map-base-layers.entry.js.map +1 -1
- package/dist/esm/dso-map-controls.entry.js +57 -56
- package/dist/esm/dso-map-controls.entry.js.map +1 -1
- package/dist/esm/dso-map-overlays.entry.js +28 -27
- package/dist/esm/dso-map-overlays.entry.js.map +1 -1
- package/dist/esm/dso-mark-bar.entry.js +51 -50
- package/dist/esm/dso-mark-bar.entry.js.map +1 -1
- package/dist/esm/dso-modal.entry.js +41 -42
- package/dist/esm/dso-modal.entry.js.map +1 -1
- package/dist/esm/dso-pagination.entry.js +118 -117
- package/dist/esm/dso-pagination.entry.js.map +1 -1
- package/dist/esm/dso-progress-bar.entry.js +14 -13
- package/dist/esm/dso-progress-bar.entry.js.map +1 -1
- package/dist/esm/dso-progress-indicator.entry.js +12 -11
- package/dist/esm/dso-progress-indicator.entry.js.map +1 -1
- package/dist/esm/dso-responsive-element.entry.js +46 -45
- package/dist/esm/dso-responsive-element.entry.js.map +1 -1
- package/dist/esm/dso-scrollable.entry.js +80 -79
- package/dist/esm/dso-scrollable.entry.js.map +1 -1
- package/dist/esm/dso-toggletip.entry.js +42 -41
- package/dist/esm/dso-toggletip.entry.js.map +1 -1
- package/dist/esm/dso-toolkit.js +7 -5
- package/dist/esm/dso-toolkit.js.map +1 -1
- package/dist/esm/dso-tooltip.entry.js +192 -191
- package/dist/esm/dso-tooltip.entry.js.map +1 -1
- package/dist/esm/dso-tree-view.entry.js +184 -183
- package/dist/esm/dso-tree-view.entry.js.map +1 -1
- package/dist/esm/dso-viewer-grid.entry.js +219 -217
- package/dist/esm/dso-viewer-grid.entry.js.map +1 -1
- package/dist/esm/dsot-document-component-demo.entry.js +163 -162
- package/dist/esm/dsot-document-component-demo.entry.js.map +1 -1
- package/dist/esm/{focus-trap.esm-d8deb1f0.js → focus-trap.esm-f16e876b.js} +2 -2
- package/dist/esm/{focus-trap.esm-d8deb1f0.js.map → focus-trap.esm-f16e876b.js.map} +1 -1
- package/dist/esm/get-active-element-37680994.js +14 -0
- package/dist/esm/{get-active-element-0e7dc01b.js.map → get-active-element-37680994.js.map} +1 -1
- package/dist/esm/{has-overflow-9f720f83.js → has-overflow-6d7f3a71.js} +6 -6
- package/dist/esm/{has-overflow-9f720f83.js.map → has-overflow-6d7f3a71.js.map} +1 -1
- package/dist/esm/{index-528d5213.js → index-2e1b7388.js} +170 -67
- package/dist/esm/index-2e1b7388.js.map +1 -0
- package/dist/{cjs/index-1b083a00.js → esm/index-baba34a8.js} +7 -6
- package/dist/esm/index-baba34a8.js.map +1 -0
- package/dist/esm/{index.esm-7e16e884.js → index.esm-7a561c35.js} +2 -2
- package/dist/esm/{index.esm-7e16e884.js.map → index.esm-7a561c35.js.map} +1 -1
- package/dist/esm/{is-modified-event-4fc531e3.js → is-modified-event-70db5fa8.js} +2 -2
- package/dist/esm/{is-modified-event-4fc531e3.js.map → is-modified-event-70db5fa8.js.map} +1 -1
- package/dist/esm/loader.js +6 -4
- package/dist/esm/loader.js.map +1 -1
- package/dist/scripts/readme.js +66 -66
- package/dist/scripts/readme.js.map +1 -1
- package/dist/types/components/accordion/accordion.d.ts +21 -21
- package/dist/types/components/accordion/accordion.interfaces.d.ts +2 -2
- package/dist/types/components/accordion/components/accordion-section.d.ts +67 -67
- package/dist/types/components/accordion/components/accordion-section.interfaces.d.ts +26 -26
- package/dist/types/components/action-list/action-list.d.ts +5 -5
- package/dist/types/components/action-list/components/action-list-item.d.ts +21 -21
- package/dist/types/components/advanced-select/advanced-select.d.ts +36 -36
- package/dist/types/components/advanced-select/advanced-select.models.d.ts +17 -17
- package/dist/types/components/alert/alert.d.ts +10 -10
- package/dist/types/components/annotation-button/annotation-button.d.ts +16 -16
- package/dist/types/components/annotation-output/annotation-output.d.ts +19 -19
- package/dist/types/components/attachments-counter/attachments-counter.d.ts +5 -5
- package/dist/types/components/autosuggest/autosuggest.d.ts +77 -76
- package/dist/types/components/autosuggest/autosuggest.interfaces.d.ts +16 -12
- package/dist/types/components/badge/badge.d.ts +5 -5
- package/dist/types/components/banner/banner.d.ts +15 -15
- package/dist/types/components/card/card.d.ts +36 -36
- package/dist/types/components/card/card.interfaces.d.ts +3 -3
- package/dist/types/components/card-container/card-container.d.ts +5 -5
- package/dist/types/components/date-picker/date-picker.d.ts +78 -78
- package/dist/types/components/date-picker/date-picker.interfaces.d.ts +37 -37
- package/dist/types/components/date-picker-legacy/date-localization.d.ts +13 -13
- package/dist/types/components/date-picker-legacy/date-picker-day.d.ts +7 -7
- package/dist/types/components/date-picker-legacy/date-picker-legacy.d.ts +168 -168
- package/dist/types/components/date-picker-legacy/date-picker-legacy.interfaces.d.ts +7 -7
- package/dist/types/components/date-picker-legacy/date-picker-month.d.ts +12 -12
- package/dist/types/components/date-picker-legacy/date-utils.d.ts +7 -7
- package/dist/types/components/document-component/document-component-heading.d.ts +1 -1
- package/dist/types/components/document-component/document-component.d.ts +102 -102
- package/dist/types/components/document-component/document-component.models.d.ts +11 -11
- package/dist/types/components/document-component-demo/document-component.demo.d.ts +62 -62
- package/dist/types/components/dropdown-menu/dropdown-menu.d.ts +50 -50
- package/dist/types/components/expandable/expandable.d.ts +37 -37
- package/dist/types/components/header/header.d.ts +73 -73
- package/dist/types/components/header/header.interfaces.d.ts +10 -10
- package/dist/types/components/helpcenter-panel/helpcenter-panel.d.ts +26 -26
- package/dist/types/components/highlight-box/highlight-box.d.ts +22 -22
- package/dist/types/components/icon/icon.d.ts +5 -5
- package/dist/types/components/image-overlay/image-overlay.d.ts +23 -23
- package/dist/types/components/info/info.d.ts +13 -13
- package/dist/types/components/info-button/info-button.d.ts +24 -24
- package/dist/types/components/info-button/info-button.interfaces.d.ts +2 -2
- package/dist/types/components/input-range/input-range.d.ts +34 -34
- package/dist/types/components/input-range/input-range.interfaces.d.ts +5 -5
- package/dist/types/components/label/label.d.ts +45 -45
- package/dist/types/components/legend-item/legend-item.d.ts +39 -0
- package/dist/types/components/legend-item/legend-item.interfaces.d.ts +3 -0
- package/dist/types/components/list-button/list-button.d.ts +67 -67
- package/dist/types/components/list-button/list-button.interfaces.d.ts +6 -6
- package/dist/types/components/logo/logo.d.ts +12 -12
- package/dist/types/components/map-base-layers/map-base-layers.d.ts +17 -17
- package/dist/types/components/map-base-layers/map-base-layers.interfaces.d.ts +6 -6
- package/dist/types/components/map-controls/map-controls.d.ts +39 -39
- package/dist/types/components/map-controls/map-controls.interfaces.d.ts +2 -2
- package/dist/types/components/map-overlays/map-overlays.d.ts +17 -17
- package/dist/types/components/map-overlays/map-overlays.interfaces.d.ts +7 -7
- package/dist/types/components/mark-bar/mark-bar.d.ts +43 -43
- package/dist/types/components/mark-bar/mark-bar.interfaces.d.ts +8 -8
- package/dist/types/components/modal/modal.d.ts +38 -38
- package/dist/types/components/modal/modal.interfaces.d.ts +1 -1
- package/dist/types/components/ozon-content/functional-components/wrap-wijzigactie.functional-component.d.ts +6 -0
- package/dist/types/components/ozon-content/functions/parse-wijzigactie-from-node.function.d.ts +2 -0
- package/dist/types/components/ozon-content/functions/wijzigactie-to-class-name.function.d.ts +2 -0
- package/dist/types/components/ozon-content/nodes/al.node.d.ts +2 -2
- package/dist/types/components/ozon-content/nodes/bron.node.d.ts +2 -2
- package/dist/types/components/ozon-content/nodes/document.node.d.ts +2 -2
- package/dist/types/components/ozon-content/nodes/ext-ref.node.d.ts +2 -2
- package/dist/types/components/ozon-content/nodes/fallback.node.d.ts +2 -2
- package/dist/types/components/ozon-content/nodes/figuur.node.d.ts +4 -4
- package/dist/types/components/ozon-content/nodes/inhoud.node.d.ts +2 -2
- package/dist/types/components/ozon-content/nodes/inline-tekst-afbeelding.node.d.ts +2 -2
- package/dist/types/components/ozon-content/nodes/inline.nodes.d.ts +2 -2
- package/dist/types/components/ozon-content/nodes/int-io-ref.node.d.ts +2 -2
- package/dist/types/components/ozon-content/nodes/int-ref.node.d.ts +2 -2
- package/dist/types/components/ozon-content/nodes/lijst.node.d.ts +2 -2
- package/dist/types/components/ozon-content/nodes/nieuwe-tekst.node.d.ts +2 -2
- package/dist/types/components/ozon-content/nodes/noot.node.d.ts +4 -4
- package/dist/types/components/ozon-content/nodes/opschrift.node.d.ts +2 -2
- package/dist/types/components/ozon-content/nodes/table.node/colspec/colspec.interface.d.ts +8 -8
- package/dist/types/components/ozon-content/nodes/table.node/table-cell.d.ts +3 -3
- package/dist/types/components/ozon-content/nodes/table.node/table-colgroup.d.ts +1 -1
- package/dist/types/components/ozon-content/nodes/table.node/table-rows.d.ts +3 -3
- package/dist/types/components/ozon-content/nodes/table.node/table.node.d.ts +4 -4
- package/dist/types/components/ozon-content/nodes/text.node.d.ts +2 -2
- package/dist/types/components/ozon-content/nodes/verwijderde-tekst.node.d.ts +2 -2
- package/dist/types/components/ozon-content/ozon-content-context.interface.d.ts +6 -6
- package/dist/types/components/ozon-content/ozon-content-mapper.d.ts +8 -8
- package/dist/types/components/ozon-content/ozon-content-node-context.interface.d.ts +8 -8
- package/dist/types/components/ozon-content/ozon-content-node-state.interface.d.ts +1 -1
- package/dist/types/components/ozon-content/ozon-content-node.interface.d.ts +4 -4
- package/dist/types/components/ozon-content/ozon-content.d.ts +24 -24
- package/dist/types/components/ozon-content/ozon-content.interfaces.d.ts +10 -9
- package/dist/types/components/pagination/pagination.d.ts +32 -32
- package/dist/types/components/pagination/pagination.interfaces.d.ts +6 -6
- package/dist/types/components/progress-bar/progress-bar.d.ts +13 -13
- package/dist/types/components/progress-indicator/progress-indicator.d.ts +15 -15
- package/dist/types/components/responsive-element/responsive-element.d.ts +15 -15
- package/dist/types/components/responsive-element/responsive-element.interfaces.d.ts +2 -2
- package/dist/types/components/scrollable/scrollable.d.ts +18 -18
- package/dist/types/components/scrollable/scrollable.interfaces.d.ts +1 -1
- package/dist/types/components/selectable/selectable.d.ts +77 -77
- package/dist/types/components/selectable/selectable.interfaces.d.ts +2 -2
- package/dist/types/components/slide-toggle/slide-toggle.d.ts +29 -29
- package/dist/types/components/slide-toggle/slide-toggle.interfaces.d.ts +3 -3
- package/dist/types/components/table/table.d.ts +26 -26
- package/dist/types/components/toggletip/toggletip.d.ts +25 -25
- package/dist/types/components/tooltip/tooltip.d.ts +57 -57
- package/dist/types/components/tree-view/tree-item.d.ts +6 -6
- package/dist/types/components/tree-view/tree-view.d.ts +43 -43
- package/dist/types/components/tree-view/tree-view.interfaces.d.ts +28 -28
- package/dist/types/components/viewer-grid/components/document-panel.d.ts +5 -5
- package/dist/types/components/viewer-grid/components/filterpanel.d.ts +3 -3
- package/dist/types/components/viewer-grid/components/main-panel.d.ts +10 -10
- package/dist/types/components/viewer-grid/components/overlay.d.ts +2 -2
- package/dist/types/components/viewer-grid/components/sizing-buttons.d.ts +5 -5
- package/dist/types/components/viewer-grid/components/viewer-grid-filterpanel-buttons.d.ts +2 -2
- package/dist/types/components/viewer-grid/viewer-grid.d.ts +110 -110
- package/dist/types/components/viewer-grid/viewer-grid.interfaces.d.ts +11 -11
- package/dist/types/components.d.ts +68 -0
- package/dist/types/stencil-public-runtime.d.ts +8 -0
- package/package.json +10 -10
- package/dist/cjs/clsx-fd0bee58.js +0 -7
- package/dist/cjs/clsx-fd0bee58.js.map +0 -1
- package/dist/cjs/get-active-element-618f7b1f.js +0 -16
- package/dist/cjs/index-1b083a00.js.map +0 -1
- package/dist/cjs/index-2556c4c6.js.map +0 -1
- package/dist/dso-toolkit/p-09552584.entry.js +0 -2
- package/dist/dso-toolkit/p-09552584.entry.js.map +0 -1
- package/dist/dso-toolkit/p-11eb95a2.entry.js +0 -2
- package/dist/dso-toolkit/p-11eb95a2.entry.js.map +0 -1
- package/dist/dso-toolkit/p-159c0a88.entry.js +0 -2
- package/dist/dso-toolkit/p-159c0a88.entry.js.map +0 -1
- package/dist/dso-toolkit/p-15c3da8e.entry.js +0 -2
- package/dist/dso-toolkit/p-15c3da8e.entry.js.map +0 -1
- package/dist/dso-toolkit/p-1a85e2f8.entry.js +0 -2
- package/dist/dso-toolkit/p-1a85e2f8.entry.js.map +0 -1
- package/dist/dso-toolkit/p-1b8d34a6.entry.js.map +0 -1
- package/dist/dso-toolkit/p-21cc1e58.entry.js +0 -2
- package/dist/dso-toolkit/p-21cc1e58.entry.js.map +0 -1
- package/dist/dso-toolkit/p-21de21d6.entry.js +0 -2
- package/dist/dso-toolkit/p-21de21d6.entry.js.map +0 -1
- package/dist/dso-toolkit/p-302764ae.entry.js +0 -2
- package/dist/dso-toolkit/p-302764ae.entry.js.map +0 -1
- package/dist/dso-toolkit/p-4592810d.js +0 -3
- package/dist/dso-toolkit/p-4592810d.js.map +0 -1
- package/dist/dso-toolkit/p-46955cda.entry.js.map +0 -1
- package/dist/dso-toolkit/p-4e5a6107.entry.js +0 -2
- package/dist/dso-toolkit/p-4e5a6107.entry.js.map +0 -1
- package/dist/dso-toolkit/p-51f9702b.entry.js +0 -2
- package/dist/dso-toolkit/p-51f9702b.entry.js.map +0 -1
- package/dist/dso-toolkit/p-67461818.entry.js.map +0 -1
- package/dist/dso-toolkit/p-69231fe7.entry.js.map +0 -1
- package/dist/dso-toolkit/p-7a71cd3f.entry.js +0 -2
- package/dist/dso-toolkit/p-7a71cd3f.entry.js.map +0 -1
- package/dist/dso-toolkit/p-7bcce109.entry.js +0 -2
- package/dist/dso-toolkit/p-7bcce109.entry.js.map +0 -1
- package/dist/dso-toolkit/p-7cac2dd2.entry.js +0 -2
- package/dist/dso-toolkit/p-7cac2dd2.entry.js.map +0 -1
- package/dist/dso-toolkit/p-84be819d.entry.js +0 -2
- package/dist/dso-toolkit/p-84be819d.entry.js.map +0 -1
- package/dist/dso-toolkit/p-89501dcc.entry.js.map +0 -1
- package/dist/dso-toolkit/p-8a7b800f.entry.js +0 -2
- package/dist/dso-toolkit/p-8a7b800f.entry.js.map +0 -1
- package/dist/dso-toolkit/p-94f26620.js +0 -2
- package/dist/dso-toolkit/p-94f26620.js.map +0 -1
- package/dist/dso-toolkit/p-a435b9fd.entry.js +0 -2
- package/dist/dso-toolkit/p-a435b9fd.entry.js.map +0 -1
- package/dist/dso-toolkit/p-b6af439e.entry.js +0 -2
- package/dist/dso-toolkit/p-b6af439e.entry.js.map +0 -1
- package/dist/dso-toolkit/p-c1bab0f1.entry.js +0 -2
- package/dist/dso-toolkit/p-c1bab0f1.entry.js.map +0 -1
- package/dist/dso-toolkit/p-c7100f84.entry.js +0 -2
- package/dist/dso-toolkit/p-c7100f84.entry.js.map +0 -1
- package/dist/dso-toolkit/p-c87b4d11.js +0 -2
- package/dist/dso-toolkit/p-c87b4d11.js.map +0 -1
- package/dist/dso-toolkit/p-c9fbf040.entry.js.map +0 -1
- package/dist/dso-toolkit/p-cc771810.entry.js +0 -2
- package/dist/dso-toolkit/p-cc771810.entry.js.map +0 -1
- package/dist/dso-toolkit/p-d24073fe.entry.js +0 -2
- package/dist/dso-toolkit/p-d24073fe.entry.js.map +0 -1
- package/dist/dso-toolkit/p-d714aea4.entry.js +0 -2
- package/dist/dso-toolkit/p-d714aea4.entry.js.map +0 -1
- package/dist/dso-toolkit/p-dd21df39.entry.js.map +0 -1
- package/dist/dso-toolkit/p-df63a085.entry.js +0 -2
- package/dist/dso-toolkit/p-df63a085.entry.js.map +0 -1
- package/dist/dso-toolkit/p-e0f9a16f.entry.js +0 -2
- package/dist/dso-toolkit/p-e0f9a16f.entry.js.map +0 -1
- package/dist/dso-toolkit/p-e1cb1603.entry.js.map +0 -1
- package/dist/dso-toolkit/p-e63f8c72.entry.js +0 -2
- package/dist/dso-toolkit/p-e63f8c72.entry.js.map +0 -1
- package/dist/dso-toolkit/p-ea6ca8b2.entry.js.map +0 -1
- package/dist/dso-toolkit/p-eb7275e9.entry.js.map +0 -1
- package/dist/dso-toolkit/p-eb90ba5c.entry.js +0 -2
- package/dist/dso-toolkit/p-eb90ba5c.entry.js.map +0 -1
- package/dist/dso-toolkit/p-f15b9304.entry.js +0 -2
- package/dist/dso-toolkit/p-f15b9304.entry.js.map +0 -1
- package/dist/dso-toolkit/p-f3facab4.entry.js +0 -2
- package/dist/dso-toolkit/p-f3facab4.entry.js.map +0 -1
- package/dist/dso-toolkit/p-f6d1d215.entry.js +0 -2
- package/dist/dso-toolkit/p-f6d1d215.entry.js.map +0 -1
- package/dist/dso-toolkit/p-fd4b0b0b.entry.js +0 -2
- package/dist/dso-toolkit/p-fd4b0b0b.entry.js.map +0 -1
- package/dist/esm/clsx-93f1b68e.js +0 -5
- package/dist/esm/clsx-93f1b68e.js.map +0 -1
- package/dist/esm/create-identifier-479a4699.js +0 -17
- package/dist/esm/get-active-element-0e7dc01b.js +0 -14
- package/dist/esm/index-528d5213.js.map +0 -1
- package/dist/esm/index-aaea0a65.js.map +0 -1
- /package/dist/dso-toolkit/{p-86133aa5.js.map → p-1dbcaeef.js.map} +0 -0
- /package/dist/dso-toolkit/{p-fd7891ef.js.map → p-202d2cdf.js.map} +0 -0
- /package/dist/dso-toolkit/{p-17e4b846.js.map → p-2d694112.js.map} +0 -0
- /package/dist/dso-toolkit/{p-fbb226aa.js.map → p-808a98bc.js.map} +0 -0
- /package/dist/dso-toolkit/{p-c19cfe3f.js.map → p-97f788d4.js.map} +0 -0
- /package/dist/dso-toolkit/{p-6e9b961b.js.map → p-c8f6f8d9.js.map} +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["dropdownMenuCss","DsoDropdownMenuStyle0","DropdownMenu","this","focusOutListener","event","open","relatedTarget","HTMLElement","tabbables","includes","escape","button","focus","watchPosition","popper","setOptions","placement","dropdownAlign","watchOptionsOffset","_a","modifiers","name","options","offset","dropdownOptionsOffset","watchStrategy","setStrategy","strategy","element","host","boundary","document","parentNode","ShadowRoot","parentElement","hasOverflow","querySelector","HTMLButtonElement","ReferenceError","withButton","tabbable","filter","componentDidLoad","setAttribute","id","uuidv4","ul","Array","from","getElementsByTagName","li","dropdownOptionsElement","Error","createPopper","enabled","undefined","componentDidRender","update","tab","checkable","classList","contains","toString","onClick","composedPath","isToggleButtonEvent","isMenuItemEvent","disconnectedCallback","destroy","keyDownListener","defaultPrevented","key","shiftKey","tabInPopup","target","click","preventDefault","direction","currentIndex","findIndex","e","getActiveElement","nextIndex","length","render","h","Host","onFocusout","hidden"],"sources":["src/components/dropdown-menu/dropdown-menu.scss?tag=dso-dropdown-menu&encapsulation=shadow","src/components/dropdown-menu/dropdown-menu.tsx"],"sourcesContent":["@use \"~dso-toolkit/src/components/dropdown-menu\";\r\n\r\n:host(:focus) {\r\n outline: none;\r\n}\r\n\r\n:host {\r\n @include dropdown-menu.root();\r\n}\r\n","import { createPopper, Placement, Instance as PopperInstance } from \"@popperjs/core\";\r\nimport { h, Component, Element, Host, Prop, Watch, Listen } from \"@stencil/core\";\r\nimport { FocusableElement, tabbable } from \"tabbable\";\r\nimport { v4 as uuidv4 } from \"uuid\";\r\n\r\nimport { hasOverflow } from \"../../utils/has-overflow\";\r\nimport { getActiveElement } from \"../../utils/get-active-element\";\r\n\r\n@Component({\r\n tag: \"dso-dropdown-menu\",\r\n styleUrl: \"dropdown-menu.scss\",\r\n shadow: true,\r\n})\r\nexport class DropdownMenu {\r\n /**\r\n * Whether the menu is open or closed.\r\n * This attribute is reflected and mutable.\r\n */\r\n @Prop({ reflect: true, mutable: true })\r\n open = false;\r\n\r\n /**\r\n * Alignment of the dropdown\r\n */\r\n @Prop()\r\n dropdownAlign: \"left\" | \"right\" = \"left\";\r\n\r\n /**\r\n * Space between button and dropdown options\r\n */\r\n @Prop()\r\n dropdownOptionsOffset = 2;\r\n\r\n /**\r\n * Whether the menu is checkable.\r\n */\r\n @Prop()\r\n checkable = false;\r\n\r\n /**\r\n * Selector for the element the dropdown options should not be overflowing.\r\n */\r\n @Prop()\r\n boundary?: string;\r\n\r\n /**\r\n * Force placement of dropdown.\r\n *\r\n * This property overrides `dropdownAlign`.\r\n */\r\n @Prop()\r\n placement?: Placement;\r\n\r\n /**\r\n * Set position strategy of dropdown options\r\n */\r\n @Prop()\r\n strategy: \"auto\" | \"absolute\" | \"fixed\" = \"auto\";\r\n\r\n @Watch(\"placement\")\r\n @Watch(\"dropdownAlign\")\r\n watchPosition() {\r\n if (!this.popper) {\r\n return;\r\n }\r\n\r\n this.popper.setOptions({\r\n placement: this.placement || (this.dropdownAlign === \"right\" ? \"bottom-end\" : \"bottom-start\"),\r\n });\r\n }\r\n\r\n @Watch(\"dropdownOptionsOffset\")\r\n watchOptionsOffset() {\r\n this.popper?.setOptions({\r\n modifiers: [\r\n {\r\n name: \"offset\",\r\n options: {\r\n offset: [0, this.dropdownOptionsOffset],\r\n },\r\n },\r\n ],\r\n });\r\n }\r\n\r\n @Watch(\"strategy\")\r\n watchStrategy() {\r\n this.setStrategy();\r\n }\r\n\r\n private setStrategy() {\r\n if (!this.popper) {\r\n return;\r\n }\r\n\r\n if (this.strategy === \"absolute\" || this.strategy === \"fixed\") {\r\n this.popper.setOptions({\r\n strategy: this.strategy,\r\n });\r\n\r\n return;\r\n }\r\n\r\n let element: Element | null = this.host;\r\n\r\n const boundary = this.boundary || document;\r\n\r\n while (element && element.parentNode !== boundary) {\r\n element = element.parentNode instanceof ShadowRoot ? element.parentNode.host : element.parentElement;\r\n if (element !== null && hasOverflow(element)) {\r\n this.popper.setOptions({\r\n strategy: \"fixed\",\r\n });\r\n\r\n return;\r\n }\r\n }\r\n\r\n this.popper.setOptions({\r\n strategy: \"absolute\",\r\n });\r\n }\r\n\r\n @Element()\r\n host!: HTMLDsoDropdownMenuElement;\r\n\r\n private popper: PopperInstance | undefined;\r\n\r\n get button(): HTMLButtonElement {\r\n const button = this.host.querySelector('button[slot=\"toggle\"]');\r\n\r\n if (!(button instanceof HTMLButtonElement)) {\r\n throw new ReferenceError(\"Mandatory toggle button not found\");\r\n }\r\n\r\n return button;\r\n }\r\n\r\n private tabbables(withButton: boolean): FocusableElement[] {\r\n const tabbables = tabbable(this.host);\r\n\r\n return withButton ? tabbables : tabbables.filter((element) => element !== this.button);\r\n }\r\n\r\n componentDidLoad() {\r\n this.button.setAttribute(\"aria-haspopup\", \"menu\");\r\n this.button.setAttribute(\"aria-expanded\", \"false\");\r\n if (!this.button.id) {\r\n this.button.id = uuidv4();\r\n }\r\n\r\n const options = this.host.querySelector(\".dso-dropdown-options\");\r\n if (!options) {\r\n throw new ReferenceError(\"Dropdown options not found\");\r\n }\r\n\r\n options.setAttribute(\"role\", \"menu\");\r\n options.setAttribute(\"aria-labelledby\", this.button.id);\r\n\r\n for (const ul of Array.from(this.host.getElementsByTagName(\"ul\"))) {\r\n ul.setAttribute(\"role\", \"group\");\r\n for (const li of Array.from(ul.getElementsByTagName(\"li\"))) {\r\n li.setAttribute(\"role\", \"none\");\r\n }\r\n }\r\n\r\n if (this.popper) {\r\n return;\r\n }\r\n\r\n const dropdownOptionsElement = this.host.querySelector(\".dso-dropdown-options\");\r\n\r\n if (!(dropdownOptionsElement instanceof HTMLElement)) {\r\n throw new Error(\"dropdown options element is not instanceof HTMLElement\");\r\n }\r\n\r\n this.popper = createPopper(this.button, dropdownOptionsElement, {\r\n placement: this.placement || (this.dropdownAlign === \"right\" ? \"bottom-end\" : \"bottom-start\"),\r\n modifiers: [\r\n {\r\n name: \"offset\",\r\n options: {\r\n offset: [0, this.dropdownOptionsOffset],\r\n },\r\n },\r\n {\r\n name: \"preventOverflow\",\r\n options: {\r\n boundary: this.boundary ? document.querySelector(this.boundary) : null,\r\n },\r\n enabled: this.boundary !== undefined,\r\n },\r\n ],\r\n });\r\n }\r\n\r\n componentDidRender() {\r\n this.setStrategy();\r\n if (this.open) {\r\n this.popper?.update();\r\n }\r\n\r\n for (const li of Array.from(this.host.getElementsByTagName(\"li\"))) {\r\n for (const tab of tabbable(li)) {\r\n tab.setAttribute(\"role\", this.checkable ? \"menuitemradio\" : \"menuitem\");\r\n\r\n if (this.checkable) {\r\n tab.setAttribute(\"aria-checked\", li.classList.contains(\"dso-checked\").toString());\r\n }\r\n }\r\n }\r\n\r\n this.button.setAttribute(\"aria-expanded\", this.open ? \"true\" : \"false\");\r\n }\r\n\r\n @Listen(\"click\", { target: \"window\" })\r\n onClick(event: MouseEvent) {\r\n const composedPath = event.composedPath();\r\n\r\n if (this.isToggleButtonEvent(composedPath)) {\r\n this.open = !this.open;\r\n } else if (this.open && this.isMenuItemEvent(composedPath)) {\r\n this.open = false;\r\n }\r\n }\r\n\r\n private isToggleButtonEvent(composedPath: EventTarget[]) {\r\n return composedPath.includes(this.button);\r\n }\r\n\r\n private isMenuItemEvent(composedPath: EventTarget[]) {\r\n return composedPath.includes(this.host) && !this.isToggleButtonEvent(composedPath);\r\n }\r\n\r\n disconnectedCallback() {\r\n this.popper?.destroy();\r\n }\r\n\r\n private focusOutListener = (event: FocusEvent) => {\r\n if (\r\n this.open &&\r\n (!(event.relatedTarget instanceof HTMLElement) || !this.tabbables(true).includes(event.relatedTarget))\r\n ) {\r\n this.open = false;\r\n }\r\n };\r\n\r\n @Listen(\"keydown\", { target: \"window\" })\r\n keyDownListener(event: KeyboardEvent) {\r\n if (event.defaultPrevented || !this.open) {\r\n return;\r\n }\r\n\r\n switch (event.key) {\r\n case \"Tab\":\r\n if (event.shiftKey) {\r\n this.tabInPopup(this.tabbables(true), -1);\r\n } else {\r\n this.tabInPopup(this.tabbables(true), 1);\r\n }\r\n\r\n break;\r\n case \"ArrowDown\":\r\n this.tabInPopup(this.tabbables(false), 1);\r\n break;\r\n\r\n case \"ArrowUp\":\r\n this.tabInPopup(this.tabbables(false), -1);\r\n break;\r\n\r\n case \"Escape\":\r\n this.escape();\r\n break;\r\n\r\n case \" \":\r\n if (event.target instanceof HTMLElement) {\r\n event.target.click();\r\n }\r\n\r\n break;\r\n\r\n default:\r\n return;\r\n }\r\n\r\n event.preventDefault();\r\n }\r\n\r\n private tabInPopup(tabbables: FocusableElement[], direction: number) {\r\n const currentIndex = tabbables.findIndex((e) => e === getActiveElement());\r\n\r\n let nextIndex = currentIndex + direction;\r\n if (nextIndex >= tabbables.length) {\r\n nextIndex = 0;\r\n } else if (nextIndex < 0) {\r\n nextIndex = tabbables.length - 1;\r\n }\r\n\r\n tabbables[nextIndex]?.focus();\r\n }\r\n\r\n private escape = () => {\r\n this.button.focus();\r\n this.open = false;\r\n };\r\n\r\n render() {\r\n return (\r\n <Host onFocusout={this.focusOutListener}>\r\n <slot name=\"toggle\" />\r\n <div hidden={!this.open}>\r\n <slot />\r\n </div>\r\n </Host>\r\n );\r\n }\r\n}\r\n"],"mappings":"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"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{r as e,c as s,h as t,F as l,f as c,a as o}from"./p-701648d3.js";import{c as a}from"./p-8a1a6e56.js";import{c as i}from"./p-97f788d4.js";const d=":host{display:block;padding:16px 32px 16px 16px;position:relative}:host>button{background-color:transparent;border-style:none;padding:0;position:absolute;right:8px;top:8px}:host(:not([active]):not([fixed])){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;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);border:0}";const b=d;const n=class{constructor(t){e(this,t);this.dsoClose=s(this,"dsoClose",7);this.fixed=undefined;this.active=undefined}render(){return t(l,{key:"09663182b8699ecc6803337c3b2a61cb939e2cf9"},t("slot",{key:"28d4d320a7d126a4cf23e7822dece8e8594e0d9c"}),!this.fixed&&t("button",{key:"6559c0efe3070bfb14d29bc66c6b4bfdd40f23ae",type:"button",onClick:e=>this.dsoClose.emit(e)},t("dso-icon",{key:"9880632ccab83f3ef7c318c09276b2efa560b170",icon:"times"}),t("span",{key:"f8dbd51bcb3e17ba41a00acc42a76eb8cdebd69a",class:"sr-only"},"Sluiten")))}};n.style=b;const r='.sc-dso-selectable-h{position:relative;display:var(--dso-selectable-display, block);padding-inline-start:32px}.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{height:24px;left:0;margin:0;opacity:0;position:absolute;top:0;width: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-left: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:"";height:20px;left:2px;position:absolute;top:2px;width: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);height:18px;left:3px;top:3px;width: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;height:22px;left:1px;top:1px;width: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:"";left:6px;opacity:0;position:absolute;top: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-top-color:transparent;border-width:0 0 3px 3px;height:8px;transform:rotate(-45deg);width:13px}.sc-dso-selectable-h input[type=checkbox].sc-dso-selectable:indeterminate+label.sc-dso-selectable::after{background-color:var(--dso-selectable-color, #39870c);height:12px;width: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:"";height:12px;left:6px;opacity:0;position:absolute;top:6px;width: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:not(:last-child){margin-bottom: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-height: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);height:20px;left:2px;top:2px;width:20px}';const p=r;const h=class{constructor(t){e(this,t);this.dsoChange=s(this,"dsoChange",7);this.fallbackIdentifier=i("DsoSelectable");this.handleOnChange=e=>{const{target:s}=e;this.dsoChange.emit({originalEvent:e,checked:s instanceof HTMLInputElement&&s.checked});c(this.host)};this.type=undefined;this.identifier=undefined;this.name=undefined;this.value=undefined;this.invalid=undefined;this.describedById=undefined;this.labelledById=undefined;this.disabled=undefined;this.required=undefined;this.checked=undefined;this.indeterminate=undefined;this.infoFixed=undefined;this.infoActive=false;this.keyboardFocus=false}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((()=>c(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(l,{key:"6e49b0bbecd3a8ef2ba54c661dd12f4dfeaeace5"},t("div",{key:"c36f52aac9f80c4472fd1db81fdbdc843abc5449",class:"dso-selectable-container"},t("div",{key:"6e1d92edccb06c6fcf5fbe11dcb453711952b098",class:a("dso-selectable-input-wrapper",{"dso-keyboard-focus":this.keyboardFocus})},t("input",{key:"902ae96bb11d9c31e846c36fc48f168f1ee59b71",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:"4d5b49e91d1f39abd9097b668896095f8de00b26",active:this.infoActive,onDsoToggle:e=>this.infoActive=e.detail.active})),s&&t("dso-info",{key:"64fc0393c174657205b5353043dc8d6a6935f219",id:s&&this.infoFixed?this.describedById:undefined,fixed:this.infoFixed,active:this.infoActive,onDsoClose:()=>this.infoActive=false},t("div",{key:"1fce7c5243262801dfa66a9736cc945de1b0a8c3"},t("slot",{key:"6e9f18cdcccb2e3f5d3c684a7ff44e8f67410ed7",name:"info"}))),t("slot",{key:"4104f7e770bf54596c400e39d8f7a42669253cb0",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 o(this)}static get watchers(){return{indeterminate:["setIndeterminate"]}}};h.style=p;export{n as dso_info,h as dso_selectable};
|
|
2
|
+
//# sourceMappingURL=p-bc95874a.entry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["infoCss","DsoInfoStyle0","Info","render","h","Fragment","key","this","fixed","type","onClick","e","dsoClose","emit","icon","class","selectableCss","DsoSelectableStyle0","Selectable","fallbackIdentifier","createIdentifier","handleOnChange","target","dsoChange","originalEvent","checked","HTMLInputElement","forceUpdate","host","toggleInfo","active","infoActive","componentDidLoad","_a","mutationObserver","disconnect","MutationObserver","observe","childList","setIndeterminate","disconnectedCallback","input","indeterminate","hasInfo","querySelector","clsx","keyboardFocus","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]):not([fixed])) {\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 @include selectable.root(false);\r\n\r\n padding-inline-start: selectable.$symbol-indent;\r\n\r\n &[invalid]:not([invalid=\"false\"]) {\r\n @include selectable.invalid();\r\n }\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-height: 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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"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{r as o,c as i,h as s,H as e}from"./p-701648d3.js";import{c as t}from"./p-8a1a6e56.js";const n=":host{display:inline-block}*,*::after,*::before{box-sizing:border-box}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);border:0}button{background-color:transparent;color:#39870c;border:0;margin-left:8px;padding:0;cursor:pointer;vertical-align:top}button.dso-info-secondary{color:#666}dso-icon{display:block}";const a=n;const r=class{constructor(s){o(this,s);this.dsoToggle=i(this,"dsoToggle",7);this.active=undefined;this.hover=false;this.secondary=undefined;this.label="Toelichting bij optie"}async setFocus(){var o;(o=this.button)===null||o===void 0?void 0:o.focus()}handleToggle(o){this.active=!this.active;this.dsoToggle.emit({originalEvent:o,active:this.active})}render(){return s(e,{key:"a9cd435470f76f47e46ec94746158b8b94ba151d",onMouseenter:()=>this.hover=true,onMouseleave:()=>this.hover=false},s("button",{key:"84de4a37a8880ec1328a8d176b8a44cf53cd24fe",type:"button",class:t({"dso-open":!!this.active,"dso-info-secondary":!!this.secondary}),"aria-expanded":typeof this.active==="boolean"?this.active.toString():undefined,onClick:o=>this.handleToggle(o),ref:o=>this.button=o},s("dso-icon",{key:"4386441800c5cdebc81fbb55a036231b3322cba3",icon:this.active||this.hover?"info-active":"info"}),s("span",{key:"f7d894eba3425b76d12265eb00cb181f41a221ff",class:"sr-only"},this.label)))}};r.style=a;export{r as dso_info_button};
|
|
2
|
+
//# sourceMappingURL=p-bcc19bae.entry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["infoButtonCss","DsoInfoButtonStyle0","InfoButton","setFocus","_a","this","button","focus","handleToggle","e","active","dsoToggle","emit","originalEvent","render","h","Host","key","onMouseenter","hover","onMouseleave","type","class","clsx","secondary","toString","undefined","onClick","ref","element","icon","label"],"sources":["src/components/info-button/info-button.scss?tag=dso-info-button&encapsulation=shadow","src/components/info-button/info-button.tsx"],"sourcesContent":["@use \"~dso-toolkit/src/utilities\";\r\n@use \"~dso-toolkit/src/components/info-button\";\r\n\r\n:host {\r\n display: inline-block;\r\n}\r\n\r\n@include utilities.box-sizing();\r\n\r\n.sr-only {\r\n @include utilities.sr-only();\r\n}\r\n\r\nbutton {\r\n @include info-button.root();\r\n\r\n cursor: pointer;\r\n vertical-align: top;\r\n}\r\n\r\ndso-icon {\r\n display: block;\r\n}\r\n","import { h, Component, Event, Prop, EventEmitter, Method, Host, State } from \"@stencil/core\";\r\nimport clsx from \"clsx\";\r\n\r\nimport { InfoButtonToggleEvent } from \"./info-button.interfaces\";\r\n\r\n@Component({\r\n tag: \"dso-info-button\",\r\n shadow: true,\r\n styleUrl: \"info-button.scss\",\r\n})\r\nexport class InfoButton {\r\n private button?: HTMLButtonElement;\r\n\r\n /**\r\n * Whether the InfoButton is active.\r\n */\r\n @Prop({ mutable: true, reflect: true })\r\n active?: boolean;\r\n\r\n @State()\r\n hover = false;\r\n\r\n /**\r\n * For secondary Info Button.\r\n */\r\n @Prop()\r\n secondary?: boolean;\r\n\r\n /**\r\n * The label.\r\n */\r\n @Prop()\r\n label = \"Toelichting bij optie\";\r\n\r\n /**\r\n * Emitted when the user activates the Info Button.\r\n */\r\n @Event()\r\n dsoToggle!: EventEmitter<InfoButtonToggleEvent>;\r\n\r\n /**\r\n * To set focus to the toggle button.\r\n */\r\n @Method()\r\n async setFocus() {\r\n this.button?.focus();\r\n }\r\n\r\n private handleToggle(e: MouseEvent) {\r\n this.active = !this.active;\r\n this.dsoToggle.emit({ originalEvent: e, active: this.active });\r\n }\r\n\r\n render() {\r\n return (\r\n <Host onMouseenter={() => (this.hover = true)} onMouseleave={() => (this.hover = false)}>\r\n <button\r\n type=\"button\"\r\n class={clsx({ \"dso-open\": !!this.active, \"dso-info-secondary\": !!this.secondary })}\r\n aria-expanded={typeof this.active === \"boolean\" ? this.active.toString() : undefined}\r\n onClick={(e) => this.handleToggle(e)}\r\n ref={(element) => (this.button = element)}\r\n >\r\n <dso-icon icon={this.active || this.hover ? \"info-active\" : \"info\"}></dso-icon>\r\n <span class=\"sr-only\">{this.label}</span>\r\n </button>\r\n </Host>\r\n );\r\n }\r\n}\r\n"],"mappings":"6FAAA,MAAMA,EAAgB,iXACtB,MAAAC,EAAeD,E,MCSFE,EAAU,M,+FAUb,M,oCAYA,uB,CAYR,cAAMC,G,OACJC,EAAAC,KAAKC,UAAM,MAAAF,SAAA,SAAAA,EAAEG,O,CAGP,YAAAC,CAAaC,GACnBJ,KAAKK,QAAUL,KAAKK,OACpBL,KAAKM,UAAUC,KAAK,CAAEC,cAAeJ,EAAGC,OAAQL,KAAKK,Q,CAGvD,MAAAI,GACE,OACEC,EAACC,EAAI,CAAAC,IAAA,2CAACC,aAAc,IAAOb,KAAKc,MAAQ,KAAOC,aAAc,IAAOf,KAAKc,MAAQ,OAC/EJ,EAAA,UAAAE,IAAA,2CACEI,KAAK,SACLC,MAAOC,EAAK,CAAE,aAAclB,KAAKK,OAAQ,uBAAwBL,KAAKmB,YAAY,uBAC5DnB,KAAKK,SAAW,UAAYL,KAAKK,OAAOe,WAAaC,UAC3EC,QAAUlB,GAAMJ,KAAKG,aAAaC,GAClCmB,IAAMC,GAAaxB,KAAKC,OAASuB,GAEjCd,EAAA,YAAAE,IAAA,2CAAUa,KAAMzB,KAAKK,QAAUL,KAAKc,MAAQ,cAAgB,SAC5DJ,EAAA,QAAAE,IAAA,2CAAMK,MAAM,WAAWjB,KAAK0B,Q"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{r as e,h as o,H as t,a as i}from"./p-701648d3.js";const s="*,*::after,*::before{box-sizing:border-box}.dso-step-counter{background-color:#275937;border:8px solid #79b929;border-radius:50%;box-sizing:content-box;color:#fff;font-size:1.25rem;font-weight:500;height:2rem;left:16px;line-height:2rem;position:absolute;text-align:center;top:-1.5rem;width:2rem}:host{margin-top:16px;padding:16px;margin-bottom:24px;block-size:var(--highlight-box-block-size, unset);min-block-size:var(--highlight-box-min-block-size, unset);display:block;container-type:inline-size;position:relative;z-index:1}:host[has-counter]{block-size:var(--highlight-box-counter-block-size, unset)}:host:not([has-counter]){block-size:var(--highlight-box-nocounter-block-size, unset)}";const n=s;const c=class{constructor(o){e(this,o);this.yellow=undefined;this.border=undefined;this.white=undefined;this.dropShadow=undefined;this.step=undefined}render(){var e;const i=this.step||!!this.element.querySelector("[slot=icon]");return o(t,{key:"4334f13da16a3005e01e815a0998fdcbc87f31e8","has-counter":i},i&&o("div",{key:"553cb9e7150fb6c603c9bbbc0d2307170416ee3b",class:"dso-step-counter"},(e=this.step)!==null&&e!==void 0?e:o("slot",{key:"faf8811c78d6c918c2624f43c75d6241209be209",name:"icon"})),o("slot",{key:"2bfd070a41a5f969d5cb1d24ce1a6846e68c5ceb"}))}get element(){return i(this)}};c.style=n;export{c as dso_highlight_box};
|
|
2
|
+
//# sourceMappingURL=p-bec5778a.entry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["highlightBoxCss","DsoHighlightBoxStyle0","HighlightBox","render","hasCounter","this","step","element","querySelector","h","Host","key","class","_a","name"],"sources":["src/components/highlight-box/highlight-box.scss?tag=dso-highlight-box&encapsulation=shadow","src/components/highlight-box/highlight-box.tsx"],"sourcesContent":["@use \"~dso-toolkit/src/utilities\";\r\n@use \"~dso-toolkit/src/variables/units\";\r\n@use \"~dso-toolkit/src/components/highlight-box\";\r\n@use \"~dso-toolkit/src/components/step-counter\";\r\n\r\n@include utilities.box-sizing();\r\n\r\n@include step-counter.step-counter();\r\n\r\n:host {\r\n @include highlight-box.root();\r\n\r\n display: block;\r\n container-type: inline-size;\r\n position: relative;\r\n z-index: 1;\r\n}\r\n","import { Component, h, Prop, Element, Host } from \"@stencil/core\";\r\n\r\n@Component({\r\n tag: \"dso-highlight-box\",\r\n styleUrl: \"highlight-box.scss\",\r\n shadow: true,\r\n})\r\nexport class HighlightBox {\r\n /**\r\n * For yellow Highlight Box.\r\n */\r\n @Prop({ reflect: true })\r\n yellow?: boolean;\r\n\r\n /**\r\n * For a bordered Highlight Box.\r\n */\r\n @Prop({ reflect: true })\r\n border?: boolean;\r\n\r\n /**\r\n * For a while Highlight Box.\r\n */\r\n @Prop({ reflect: true })\r\n white?: boolean;\r\n\r\n /**\r\n * For an Highlight Box with a drop shadow.\r\n */\r\n @Prop({ reflect: true })\r\n dropShadow?: boolean;\r\n\r\n /**\r\n * To create a step indicator.\r\n */\r\n @Prop({ reflect: true })\r\n step?: number;\r\n\r\n @Element()\r\n private element!: HTMLDsoHighlightBoxElement;\r\n\r\n render() {\r\n const hasCounter = this.step || !!this.element.querySelector(\"[slot=icon]\");\r\n\r\n return (\r\n <Host has-counter={hasCounter}>\r\n {hasCounter && <div class=\"dso-step-counter\">{this.step ?? <slot name=\"icon\"></slot>}</div>}\r\n <slot></slot>\r\n </Host>\r\n );\r\n }\r\n}\r\n"],"mappings":"yDAAA,MAAMA,EAAkB,mrBACxB,MAAAC,EAAeD,E,MCMFE,EAAY,M,wIAkCvB,MAAAC,G,MACE,MAAMC,EAAaC,KAAKC,QAAUD,KAAKE,QAAQC,cAAc,eAE7D,OACEC,EAACC,EAAI,CAAAC,IAAA,yDAAcP,GAChBA,GAAcK,EAAA,OAAAE,IAAA,2CAAKC,MAAM,qBAAoBC,EAAAR,KAAKC,QAAI,MAAAO,SAAA,EAAAA,EAAIJ,EAAA,QAAAE,IAAA,2CAAMG,KAAK,UACtEL,EAAA,QAAAE,IAAA,6C"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{r as n,c as t,f as o,h as e,a as s}from"./p-4592810d.js";import{c as i}from"./p-fbb226aa.js";import{c as r}from"./p-c87b4d11.js";import"./p-86133aa5.js";const d="*,\n*::after,\n*::before {\n box-sizing: border-box;\n}\n\n:host {\n display: block;\n}\n\n.sr-only {\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n margin: -1px;\n overflow: hidden;\n clip: rect(0, 0, 0, 0);\n border: 0;\n}\n\n.dso-manual-input-button {\n cursor: text;\n}\n\n.dso-tertiary {\n display: inline-block;\n font-size: 1em;\n font-weight: 500;\n margin-bottom: 0;\n text-decoration: none;\n touch-action: manipulation;\n text-align: left;\n user-select: none;\n vertical-align: middle;\n border: 0;\n color: #39870c;\n line-height: 1;\n padding: 0;\n background-color: transparent;\n cursor: pointer;\n}\n.dso-tertiary:focus, .dso-tertiary:focus-visible {\n outline-offset: 2px;\n}\n.dso-tertiary:active {\n outline: 0;\n}\n.dso-tertiary[disabled] {\n color: #afcf9d;\n}\n.dso-tertiary[disabled].dso-spinner-left, .dso-tertiary[disabled].dso-spinner-right {\n color: #39870c;\n}\n.dso-tertiary:not([disabled]):hover {\n color: #275937;\n text-decoration: underline;\n text-underline-position: under;\n}\n.dso-tertiary:not([disabled]):active {\n color: #173521;\n}\n.dso-tertiary.dso-align {\n line-height: calc(1.5em - 1px);\n padding: 11px 0;\n position: relative;\n}\n.dso-tertiary.dso-truncate {\n max-width: 100%;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n.dso-tertiary.dso-spinner-left::before {\n background-image: url(\"data:image/svg+xml,%3Csvg class='spinner' viewBox='0 0 100 100' xmlns='http://www.w3.org/2000/svg' %3E%3Cstyle%3E .spinner %7B animation: rotator 8s linear infinite; transform-origin: center; %7D @keyframes rotator %7B 0%25 %7B transform: rotate(0deg); %7D 100%25 %7B transform: rotate(360deg); %7D %7D .path %7B stroke-dasharray: 265; stroke-dashoffset: 0; transform-origin: center; stroke: %2339870c; animation: dash 2s ease-in-out infinite; %7D @keyframes dash %7B 0%25 %7B stroke-dashoffset: 265; %7D 50%25 %7B stroke-dashoffset: 65; transform:rotate(90deg); %7D 100%25 %7B stroke-dashoffset: 265; transform:rotate(360deg); %7D %3C/style%3E%3Ccircle class='path' fill='none' stroke-width='10' stroke-linecap='butt' cx='50' cy='50' r='45'%3E%3C/circle%3E%3C/svg%3E\");\n background-repeat: no-repeat;\n content: \"\";\n display: inline-block;\n height: 24px;\n vertical-align: middle;\n width: 24px;\n margin-right: 8px;\n}\n.dso-tertiary.dso-spinner-right::after {\n background-image: url(\"data:image/svg+xml,%3Csvg class='spinner' viewBox='0 0 100 100' xmlns='http://www.w3.org/2000/svg' %3E%3Cstyle%3E .spinner %7B animation: rotator 8s linear infinite; transform-origin: center; %7D @keyframes rotator %7B 0%25 %7B transform: rotate(0deg); %7D 100%25 %7B transform: rotate(360deg); %7D %7D .path %7B stroke-dasharray: 265; stroke-dashoffset: 0; transform-origin: center; stroke: %2339870c; animation: dash 2s ease-in-out infinite; %7D @keyframes dash %7B 0%25 %7B stroke-dashoffset: 265; %7D 50%25 %7B stroke-dashoffset: 65; transform:rotate(90deg); %7D 100%25 %7B stroke-dashoffset: 265; transform:rotate(360deg); %7D %3C/style%3E%3Ccircle class='path' fill='none' stroke-width='10' stroke-linecap='butt' cx='50' cy='50' r='45'%3E%3C/circle%3E%3C/svg%3E\");\n background-repeat: no-repeat;\n content: \"\";\n display: inline-block;\n height: 24px;\n vertical-align: middle;\n width: 24px;\n margin-left: 8px;\n}\n.dso-tertiary dso-icon + span:not(.sr-only),\n.dso-tertiary svg.di + span:not(.sr-only),\n.dso-tertiary span:not(.sr-only) + dso-icon,\n.dso-tertiary span:not(.sr-only) + svg.di {\n margin-left: 8px;\n}\n.dso-tertiary svg.di.di-chevron-down + span:not(.sr-only),\n.dso-tertiary svg.di.di-chevron-up + span:not(.sr-only),\n.dso-tertiary span:not(.sr-only) + svg.di.di-chevron-down,\n.dso-tertiary span:not(.sr-only) + svg.di.di-chevron-up {\n margin-left: 4px;\n}\n.dso-tertiary dso-icon[icon=chevron-left] + span:not(.sr-only),\n.dso-tertiary dso-icon[icon=chevron-right] + span:not(.sr-only),\n.dso-tertiary svg.di.di-angle-down + span:not(.sr-only),\n.dso-tertiary svg.di.di-angle-up + span:not(.sr-only),\n.dso-tertiary span:not(.sr-only) + svg.di.di-angle-down,\n.dso-tertiary span:not(.sr-only) + svg.di.di-angle-up,\n.dso-tertiary span:not(.sr-only) + dso-icon[icon=chevron-left],\n.dso-tertiary span:not(.sr-only) + dso-icon[icon=chevron-right] {\n margin-left: 0;\n}\n.dso-tertiary dso-icon,\n.dso-tertiary svg.di,\n.dso-tertiary span {\n vertical-align: middle;\n}\n\n.dso-input-number:not(.form-group) {\n align-items: center;\n display: flex;\n flex-wrap: wrap;\n}\n.dso-input-number label {\n width: 100%;\n}\n.dso-input-number .dso-input-step-counter {\n align-self: center;\n background-color: transparent;\n border: 0;\n display: inline-block;\n height: 1.5rem;\n text-align: center;\n width: 1.5rem;\n}\n.dso-input-number .dso-input-step-counter:focus, .dso-input-number .dso-input-step-counter:active {\n outline: 0;\n}\n.dso-input-number .dso-input-step-counter::-webkit-outer-spin-button, .dso-input-number .dso-input-step-counter::-webkit-inner-spin-button {\n -webkit-appearance: none;\n margin: 0;\n}\n.dso-input-number .dso-input-step-counter[type=number] {\n -moz-appearance: textfield;\n}\n\n.dso-button-group {\n display: flex;\n flex-direction: row;\n}\n.dso-button-group.dso-disabled > * {\n background-color: #fff;\n border-color: #e5e5e5;\n color: #666;\n pointer-events: none;\n}\n.dso-button-group > * {\n border-radius: 0;\n}\n.dso-button-group > *:first-child {\n border-radius: 4px 0 0 4px;\n}\n.dso-button-group > *:not(:first-child) {\n border-left-style: none !important;\n}\n.dso-button-group > *:last-child {\n border-radius: 0 4px 4px 0;\n}\n.dso-button-group > *:only-child {\n border-radius: 4px;\n}\n.dso-button-group > .dso-input-number {\n background-color: #fff;\n border-color: #ccc;\n color: #191919;\n border-style: solid;\n border-width: 1px;\n flex-wrap: nowrap;\n padding: 0 16px;\n}\n@media screen and (max-width: 767px) {\n .dso-button-group > .dso-input-number {\n justify-content: center;\n }\n}\n.dso-button-group > *:hover + .dso-input-number,\n.dso-button-group > *:focus + .dso-input-number {\n background-color: #fff;\n border-color: #39870c;\n color: #191919;\n}\n.dso-button-group > *.dso-selected + .dso-input-number {\n background-color: #fff;\n border-color: #39870c;\n color: #191919;\n box-shadow: inset 0 -1px 0 0 #39870c, inset 0 1px 0 0 #39870c, inset -1px 0 0 0 #39870c;\n}\n.dso-button-group > *:active + .dso-input-number, .dso-button-group > *:active + .dso-input-number:hover,\n.dso-button-group > *.active + .dso-input-number,\n.dso-button-group > *.active + .dso-input-number:hover {\n background-color: #fff;\n border-color: #39870c;\n color: #191919;\n}\n.dso-button-group > *.disabled + .dso-input-number, .dso-button-group > *.disabled + .dso-input-number:hover,\n.dso-button-group > *[disabled] + .dso-input-number,\n.dso-button-group > *[disabled] + .dso-input-number:hover {\n background-color: #fff;\n border-color: #ccc;\n color: #666;\n opacity: 1;\n}\n.dso-button-group .dso-list-button {\n padding-right: 15px;\n}\n\n.dso-selectable {\n position: relative;\n display: var(--dso-selectable-display, block);\n padding: 0 0 0 32px;\n}\n.dso-selectable label {\n font-weight: 400;\n line-height: 24px;\n margin: 0;\n}\n.dso-selectable input[type=checkbox][disabled] + label::before, .dso-selectable input[type=checkbox][disabled]:active + label::before, .dso-selectable input[type=checkbox][disabled]:focus + label::before,\n.dso-selectable input[type=radio][disabled] + label::before,\n.dso-selectable input[type=radio][disabled]:active + label::before,\n.dso-selectable input[type=radio][disabled]:focus + label::before {\n background-color: #fff;\n box-shadow: 0 0 0 2px #e5e5e5;\n}\n.dso-selectable input[type=checkbox],\n.dso-selectable input[type=radio] {\n height: 24px;\n left: 0;\n margin: 0;\n opacity: 0;\n position: absolute;\n top: 0;\n width: 24px;\n z-index: 100;\n zoom: 1;\n}\n@media (prefers-contrast: more) {\n .dso-selectable input[type=checkbox],\n .dso-selectable input[type=radio] {\n opacity: 1;\n }\n}\n.dso-selectable input[type=checkbox]:not([disabled]),\n.dso-selectable input[type=radio]:not([disabled]) {\n cursor: pointer;\n}\n.dso-selectable input[type=checkbox] + label,\n.dso-selectable input[type=radio] + label {\n display: inline;\n font-style: normal;\n padding-left: 0;\n}\n.dso-selectable input[type=checkbox] + label::before,\n.dso-selectable input[type=radio] + label::before {\n background: #fff;\n border: 0;\n box-shadow: 0 0 0 2px var(--dso-selectable-color, #275937);\n content: \"\";\n height: 20px;\n left: 2px;\n position: absolute;\n top: 2px;\n width: 20px;\n}\n.dso-selectable input[type=checkbox]:focus,\n.dso-selectable input[type=radio]:focus {\n outline: 0;\n}\n.dso-selectable input[type=checkbox]:focus + label::before,\n.dso-selectable input[type=radio]:focus + label::before {\n box-shadow: 0 0 0 3px var(--dso-selectable-color, #275937);\n height: 18px;\n left: 3px;\n top: 3px;\n width: 18px;\n}\n.dso-selectable input[type=checkbox]:active + label::before, .dso-selectable input[type=checkbox].active + label::before,\n.dso-selectable input[type=radio]:active + label::before,\n.dso-selectable input[type=radio].active + label::before {\n background-color: #ebf3e6;\n box-shadow: 0 0 0 1px #275937;\n height: 22px;\n left: 1px;\n top: 1px;\n width: 22px;\n}\n.dso-selectable input[type=checkbox] + label::before {\n border-radius: 4px;\n}\n.dso-selectable input[type=checkbox] + label::after {\n background: transparent;\n content: \"\";\n left: 6px;\n opacity: 0;\n position: absolute;\n top: 6px;\n zoom: 1;\n}\n.dso-selectable input[type=checkbox]:checked + label::after, .dso-selectable input[type=checkbox]:indeterminate + label::after {\n opacity: 1;\n}\n.dso-selectable input[type=checkbox]:checked + label::after {\n border: solid;\n border-color: var(--dso-selectable-color, #39870c);\n border-top-color: transparent;\n border-width: 0 0 3px 3px;\n height: 8px;\n transform: rotate(-45deg);\n width: 13px;\n}\n.dso-selectable input[type=checkbox]:indeterminate + label::after {\n background-color: var(--dso-selectable-color, #39870c);\n height: 12px;\n width: 12px;\n}\n.dso-selectable input[type=radio] + label::before {\n border-radius: 50%;\n}\n.dso-selectable input[type=radio] + label::after {\n background-color: transparent;\n border-radius: 50%;\n content: \"\";\n height: 12px;\n left: 6px;\n opacity: 0;\n position: absolute;\n top: 6px;\n width: 12px;\n zoom: 1;\n}\n.dso-selectable input[type=radio]:checked + label::after {\n background-color: var(--dso-selectable-color, #39870c);\n opacity: 1;\n}\n.dso-selectable label {\n font-weight: 700;\n}\n\n.dso-list-button {\n display: inline-block;\n font-size: 1em;\n font-weight: 500;\n margin-bottom: 0;\n text-decoration: none;\n touch-action: manipulation;\n text-align: left;\n user-select: none;\n vertical-align: middle;\n background-color: #fff;\n border-color: #ccc;\n color: #191919;\n border-radius: 4px;\n border-width: 1px;\n border-style: solid;\n font-weight: 600;\n padding: 15px 47px 15px 15px;\n position: relative;\n text-align: left;\n white-space: normal;\n width: 100%;\n cursor: pointer;\n}\n.dso-list-button:focus, .dso-list-button:focus-visible {\n outline-offset: 2px;\n}\n.dso-list-button:active {\n outline: 0;\n}\n.dso-list-button:hover, .dso-list-button:focus {\n background-color: #fff;\n border-color: #39870c;\n color: #191919;\n}\n.dso-list-button:active, .dso-list-button:active:hover, .dso-list-button.active, .dso-list-button.active:hover {\n background-color: #fff;\n border-color: #39870c;\n color: #191919;\n}\n.dso-list-button.disabled, .dso-list-button.disabled:hover, .dso-list-button[disabled], .dso-list-button[disabled]:hover {\n background-color: #fff;\n border-color: #ccc;\n color: #666;\n opacity: 1;\n}\n.dso-list-button.dso-selected {\n border-color: #39870c;\n border-width: 1px;\n box-shadow: inset 0px 0px 0px 1px #39870c, inset -1px 0px 0px 0px #39870c;\n}\n@media screen and (min-width: 768px) {\n .dso-list-button.dso-selected.dso-single-count {\n border-right: 0;\n box-shadow: #39870c 0px 1px 0px 0px inset, #39870c 1px 0px 0px 0px inset, #39870c 0px -1px 0px 0px inset;\n }\n}\n.dso-list-button label {\n cursor: inherit;\n}\n.dso-list-button > span {\n display: block;\n}\n.dso-list-button .dso-sublabel {\n font-weight: 400;\n width: 100%;\n}\n.dso-list-button dso-icon,\n.dso-list-button svg.di,\n.dso-list-button .dso-count {\n height: 24px;\n position: absolute;\n right: 15px;\n top: 15px;\n width: 24px;\n}\n.dso-list-button dso-icon,\n.dso-list-button svg.di {\n color: #39870c;\n page-break-before: always;\n}\n.dso-list-button .dso-count {\n font-weight: 700;\n}\n@media screen and (max-width: 767px) {\n .dso-list-button.dso-selected.dso-single-count::after {\n width: 0;\n }\n}\n.dso-list-button .dso-sublabel {\n padding-left: 32px;\n}\n\n.dso-list-button + .dso-list-button,\n.dso-list-button + .dso-button-group,\n.dso-button-group + .dso-list-button,\n.dso-button-group + .dso-button-group {\n margin-top: 4px;\n}\n\n.dso-input-wrapper {\n position: relative;\n}\n.dso-input-wrapper .form-control {\n width: 9ch;\n}\n\n.form-control {\n display: block;\n width: 100%;\n height: 40px;\n padding: 6px 14px;\n font-size: 1rem;\n line-height: 1.5;\n color: #191919;\n background-color: #fff;\n background-image: none;\n border: 1px solid #275937;\n border-radius: 4px;\n transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;\n}\n.form-control::-moz-placeholder {\n color: #666;\n opacity: 1;\n}\n.form-control:-ms-input-placeholder {\n color: #666;\n}\n.form-control::-webkit-input-placeholder {\n color: #666;\n}\n.form-control::-ms-expand {\n background-color: transparent;\n border: 0;\n}\n.form-control:focus {\n border-color: #275937;\n outline: 0;\n box-shadow: inset 0 0 0 1px #275937;\n}\n.form-control[disabled], .form-control[readonly], fieldset[disabled] .form-control {\n background-color: #fff;\n opacity: 1;\n}\n.form-control[disabled], fieldset[disabled] .form-control {\n cursor: default;\n}\n.form-control[disabled] {\n border-color: #e5e5e5;\n color: #999;\n}\n.form-control[readonly] {\n border-width: 1px;\n}\n.form-control[type=text] {\n line-height: 40px;\n}\n.form-control[size] {\n width: auto;\n}\n\n.dso-manual-input-button[type=button] {\n background-color: transparent;\n border: 0;\n bottom: 0;\n left: 0;\n position: absolute;\n right: 0;\n top: 0;\n}\n\n.hidden {\n display: none !important;\n}";const a=class{constructor(o){n(this,o);this.dsoCountChange=t(this,"dsoCountChange",7);this.dsoSelectedChange=t(this,"dsoSelectedChange",7);this.manualInputWrapperElement=undefined;this.manualCount=undefined;this.label=undefined;this.sublabel=undefined;this.count=undefined;this.min=undefined;this.max=undefined;this.checked=false;this.disabled=false;this.subcontentPrefix=undefined;this.manual=true}get subcontentSlot(){return this.host.querySelector("[slot='subcontent']")}watchManualCallback(){if(!this.manual&&this.manualCount){this.stopManualCountInput()}}connectedCallback(){this.mutationObserver=new MutationObserver((()=>o(this.host)));this.mutationObserver.observe(this.host,{characterData:true,childList:true,subtree:true,attributes:true})}componentDidRender(){var n,t;if(this.manualCount!==undefined&&this.manualInputWrapperElement&&!this.trap){this.trap=i(this.manualInputWrapperElement,{escapeDeactivates:true,setReturnFocus:false,clickOutsideDeactivates:n=>{this.setCount(n);return true},onDeactivate:()=>this.stopManualCountInput(),onPostDeactivate:()=>{var n;return(n=this.manualInputButtonElement)===null||n===void 0?void 0:n.focus()}}).activate()}else if(this.manualCount===undefined&&this.trap){(n=this.trap)===null||n===void 0?void 0:n.deactivate();delete this.trap}(t=this.subcontentSlot)===null||t===void 0?void 0:t.setAttribute("aria-hidden","true")}disconnectedCallback(){var n,t;(n=this.trap)===null||n===void 0?void 0:n.deactivate();(t=this.mutationObserver)===null||t===void 0?void 0:t.disconnect();delete this.mutationObserver}handleOnChange({target:n}){if(n instanceof HTMLInputElement){this.manualCount=n.valueAsNumber}}stepValue(n,t){if(typeof this.count==="number"){const o=t==="increment"?this.count+1:this.count-1;if(!this.isNewCountValid(o)){return}this.dsoCountChange.emit({originalEvent:n,count:o})}}setCount(n){n.preventDefault();if(typeof this.manualCount==="number"&&this.isNewCountValid(this.manualCount)){this.dsoCountChange.emit({originalEvent:n,count:this.manualCount});this.stopManualCountInput()}}handleSelectClick(n){n.preventDefault();if(this.count!==undefined){this.dsoCountChange.emit({originalEvent:n,count:this.count>0?0:1});return}this.dsoSelectedChange.emit({originalEvent:n,checked:!this.checked})}startManualCountInput(){this.manualCount=this.count}stopManualCountInput(){this.manualCount=undefined}isNewCountValid(n){return!(this.min!==undefined&&this.max!==undefined&&(n<Number(this.min)||n>Number(this.max)))}render(){const n=this.manualCount===undefined;const t=this.checked||this.count!==undefined&&this.count>0;return e("div",{class:r(["dso-button-group",{"dso-disabled":this.disabled}])},e("div",{class:r(["dso-list-button",{"dso-selected":t,"dso-single-count":this.count===1}]),onClick:n=>this.handleSelectClick(n)},e("div",{class:"dso-selectable"},e("input",{id:"dso-list-button-checkbox",type:"checkbox",value:"list-button",name:"naam","aria-describedby":[this.sublabel&&"sublabel",this.subcontentSlot&&"description"].filter((n=>!!n)).join(" ")||null,checked:t,disabled:this.disabled}),e("label",{htmlFor:"dso-list-button-checkbox"},this.label),this.subcontentSlot&&e("div",{class:"sr-only",id:"description"},this.subcontentPrefix&&this.subcontentPrefix+":",e("div",{innerHTML:this.subcontentSlot.innerHTML}))),this.sublabel&&e("span",{class:"dso-sublabel",id:"sublabel"},this.sublabel),e("slot",{name:"subcontent"})),this.count!==undefined&&this.count>0&&e("div",{class:"dso-input-number"},this.manualCount===undefined&&this.count>1&&e("button",{type:"button",class:"dso-tertiary",disabled:this.count===Number(this.min)||this.disabled,onClick:n=>this.stepValue(n,"decrement")},e("dso-icon",{icon:"minus-circle"}),e("span",{class:"sr-only"},"Aantal verlagen")),e("div",{class:"dso-input-wrapper"},this.manualCount===undefined&&this.count>1&&e("input",{class:"dso-input-step-counter",type:"number",tabIndex:-1,"aria-label":"Aantal",value:this.count,readOnly:true}),e("form",{onSubmit:n=>this.setCount(n)},e("div",{ref:n=>this.manualInputWrapperElement=n},e("input",{class:r("form-control",{hidden:n}),type:"number","aria-label":"Aantal",value:this.manualCount,min:this.min,max:this.max,onInput:n=>this.handleOnChange(n)})),this.manual&&e("button",{class:r("dso-manual-input-button",{"sr-only":!n}),type:!n?"submit":"button",disabled:this.disabled,onClick:()=>n&&this.startManualCountInput()},n?e("span",{class:"sr-only"},"Handmatig aantal invullen"):e("span",{class:"sr-only"},"Zet waarde")))),n&&e("button",{type:"button",class:"dso-tertiary",disabled:this.count===Number(this.max)||this.disabled,onClick:n=>this.stepValue(n,"increment")},e("dso-icon",{icon:"plus-circle"}),e("span",{class:"sr-only"},"Aantal verhogen"))))}get host(){return s(this)}static get watchers(){return{manual:["watchManualCallback"]}}};a.style=d;export{a as dso_list_button};
|
|
2
|
-
//# sourceMappingURL=p-
|
|
1
|
+
import{r as n,c as t,f as e,h as o,a as s}from"./p-701648d3.js";import{c as i}from"./p-808a98bc.js";import{c as r}from"./p-8a1a6e56.js";import"./p-1dbcaeef.js";const a="*,\n*::after,\n*::before {\n box-sizing: border-box;\n}\n\n:host {\n display: block;\n}\n\n.sr-only {\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n margin: -1px;\n overflow: hidden;\n clip: rect(0, 0, 0, 0);\n border: 0;\n}\n\n.dso-manual-input-button {\n cursor: text;\n}\n\n.dso-tertiary {\n display: inline-block;\n font-size: 1em;\n font-weight: 500;\n margin-bottom: 0;\n text-decoration: none;\n touch-action: manipulation;\n text-align: left;\n user-select: none;\n vertical-align: middle;\n border: 0;\n color: #39870c;\n line-height: 1;\n padding: 0;\n background-color: transparent;\n cursor: pointer;\n}\n.dso-tertiary:focus, .dso-tertiary:focus-visible {\n outline-offset: 2px;\n}\n.dso-tertiary:active {\n outline: 0;\n}\n.dso-tertiary[disabled] {\n color: #afcf9d;\n}\n.dso-tertiary[disabled].dso-spinner-left, .dso-tertiary[disabled].dso-spinner-right {\n color: #39870c;\n}\n.dso-tertiary:not([disabled]):hover {\n color: #275937;\n text-decoration: underline;\n text-underline-position: under;\n}\n.dso-tertiary:not([disabled]):active {\n color: #173521;\n}\n.dso-tertiary.dso-align {\n line-height: calc(1.5em - 1px);\n padding: 11px 0;\n position: relative;\n}\n.dso-tertiary.dso-truncate {\n max-width: 100%;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n.dso-tertiary.dso-spinner-left::before {\n background-image: url(\"data:image/svg+xml,%3Csvg class='spinner' viewBox='0 0 100 100' xmlns='http://www.w3.org/2000/svg' %3E%3Cstyle%3E .spinner %7B animation: rotator 8s linear infinite; transform-origin: center; %7D @keyframes rotator %7B 0%25 %7B transform: rotate(0deg); %7D 100%25 %7B transform: rotate(360deg); %7D %7D .path %7B stroke-dasharray: 265; stroke-dashoffset: 0; transform-origin: center; stroke: %2339870c; animation: dash 2s ease-in-out infinite; %7D @keyframes dash %7B 0%25 %7B stroke-dashoffset: 265; %7D 50%25 %7B stroke-dashoffset: 65; transform:rotate(90deg); %7D 100%25 %7B stroke-dashoffset: 265; transform:rotate(360deg); %7D %3C/style%3E%3Ccircle class='path' fill='none' stroke-width='10' stroke-linecap='butt' cx='50' cy='50' r='45'%3E%3C/circle%3E%3C/svg%3E\");\n background-repeat: no-repeat;\n content: \"\";\n display: inline-block;\n height: 24px;\n vertical-align: middle;\n width: 24px;\n margin-right: 8px;\n}\n.dso-tertiary.dso-spinner-right::after {\n background-image: url(\"data:image/svg+xml,%3Csvg class='spinner' viewBox='0 0 100 100' xmlns='http://www.w3.org/2000/svg' %3E%3Cstyle%3E .spinner %7B animation: rotator 8s linear infinite; transform-origin: center; %7D @keyframes rotator %7B 0%25 %7B transform: rotate(0deg); %7D 100%25 %7B transform: rotate(360deg); %7D %7D .path %7B stroke-dasharray: 265; stroke-dashoffset: 0; transform-origin: center; stroke: %2339870c; animation: dash 2s ease-in-out infinite; %7D @keyframes dash %7B 0%25 %7B stroke-dashoffset: 265; %7D 50%25 %7B stroke-dashoffset: 65; transform:rotate(90deg); %7D 100%25 %7B stroke-dashoffset: 265; transform:rotate(360deg); %7D %3C/style%3E%3Ccircle class='path' fill='none' stroke-width='10' stroke-linecap='butt' cx='50' cy='50' r='45'%3E%3C/circle%3E%3C/svg%3E\");\n background-repeat: no-repeat;\n content: \"\";\n display: inline-block;\n height: 24px;\n vertical-align: middle;\n width: 24px;\n margin-left: 8px;\n}\n.dso-tertiary dso-icon + span:not(.sr-only),\n.dso-tertiary svg.di + span:not(.sr-only),\n.dso-tertiary span:not(.sr-only) + dso-icon,\n.dso-tertiary span:not(.sr-only) + svg.di {\n margin-left: 8px;\n}\n.dso-tertiary svg.di.di-chevron-down + span:not(.sr-only),\n.dso-tertiary svg.di.di-chevron-up + span:not(.sr-only),\n.dso-tertiary span:not(.sr-only) + svg.di.di-chevron-down,\n.dso-tertiary span:not(.sr-only) + svg.di.di-chevron-up {\n margin-left: 4px;\n}\n.dso-tertiary dso-icon[icon=chevron-left] + span:not(.sr-only),\n.dso-tertiary dso-icon[icon=chevron-right] + span:not(.sr-only),\n.dso-tertiary svg.di.di-angle-down + span:not(.sr-only),\n.dso-tertiary svg.di.di-angle-up + span:not(.sr-only),\n.dso-tertiary span:not(.sr-only) + svg.di.di-angle-down,\n.dso-tertiary span:not(.sr-only) + svg.di.di-angle-up,\n.dso-tertiary span:not(.sr-only) + dso-icon[icon=chevron-left],\n.dso-tertiary span:not(.sr-only) + dso-icon[icon=chevron-right] {\n margin-left: 0;\n}\n.dso-tertiary dso-icon,\n.dso-tertiary svg.di,\n.dso-tertiary span {\n vertical-align: middle;\n}\n\n.dso-input-number:not(.form-group) {\n align-items: center;\n display: flex;\n flex-wrap: wrap;\n}\n.dso-input-number label {\n width: 100%;\n}\n.dso-input-number .dso-input-step-counter {\n align-self: center;\n background-color: transparent;\n border: 0;\n display: inline-block;\n height: 1.5rem;\n text-align: center;\n width: 1.5rem;\n}\n.dso-input-number .dso-input-step-counter:focus, .dso-input-number .dso-input-step-counter:active {\n outline: 0;\n}\n.dso-input-number .dso-input-step-counter::-webkit-outer-spin-button, .dso-input-number .dso-input-step-counter::-webkit-inner-spin-button {\n -webkit-appearance: none;\n margin: 0;\n}\n.dso-input-number .dso-input-step-counter[type=number] {\n -moz-appearance: textfield;\n}\n\n.dso-button-group {\n display: flex;\n flex-direction: row;\n}\n.dso-button-group.dso-disabled > * {\n background-color: #fff;\n border-color: #e5e5e5;\n color: #666;\n pointer-events: none;\n}\n.dso-button-group > * {\n border-radius: 0;\n}\n.dso-button-group > *:first-child {\n border-radius: 4px 0 0 4px;\n}\n.dso-button-group > *:not(:first-child) {\n border-left-style: none !important;\n}\n.dso-button-group > *:last-child {\n border-radius: 0 4px 4px 0;\n}\n.dso-button-group > *:only-child {\n border-radius: 4px;\n}\n.dso-button-group > .dso-input-number {\n background-color: #fff;\n border-color: #ccc;\n color: #191919;\n border-style: solid;\n border-width: 1px;\n flex-wrap: nowrap;\n padding: 0 16px;\n}\n@media screen and (max-width: 767px) {\n .dso-button-group > .dso-input-number {\n justify-content: center;\n }\n}\n.dso-button-group > *:hover + .dso-input-number,\n.dso-button-group > *:focus + .dso-input-number {\n background-color: #fff;\n border-color: #39870c;\n color: #191919;\n}\n.dso-button-group > *.dso-selected + .dso-input-number {\n background-color: #fff;\n border-color: #39870c;\n color: #191919;\n box-shadow: inset 0 -1px 0 0 #39870c, inset 0 1px 0 0 #39870c, inset -1px 0 0 0 #39870c;\n}\n.dso-button-group > *:active + .dso-input-number, .dso-button-group > *:active + .dso-input-number:hover,\n.dso-button-group > *.active + .dso-input-number,\n.dso-button-group > *.active + .dso-input-number:hover {\n background-color: #fff;\n border-color: #39870c;\n color: #191919;\n}\n.dso-button-group > *.disabled + .dso-input-number, .dso-button-group > *.disabled + .dso-input-number:hover,\n.dso-button-group > *[disabled] + .dso-input-number,\n.dso-button-group > *[disabled] + .dso-input-number:hover {\n background-color: #fff;\n border-color: #ccc;\n color: #666;\n opacity: 1;\n}\n.dso-button-group .dso-list-button {\n padding-right: 15px;\n}\n\n.dso-selectable {\n position: relative;\n display: var(--dso-selectable-display, block);\n padding: 0 0 0 32px;\n}\n.dso-selectable label {\n font-weight: 400;\n line-height: 24px;\n margin: 0;\n}\n.dso-selectable input[type=checkbox][disabled] + label::before, .dso-selectable input[type=checkbox][disabled]:active + label::before, .dso-selectable input[type=checkbox][disabled]:focus + label::before,\n.dso-selectable input[type=radio][disabled] + label::before,\n.dso-selectable input[type=radio][disabled]:active + label::before,\n.dso-selectable input[type=radio][disabled]:focus + label::before {\n background-color: #fff;\n box-shadow: 0 0 0 2px #e5e5e5;\n}\n.dso-selectable input[type=checkbox],\n.dso-selectable input[type=radio] {\n height: 24px;\n left: 0;\n margin: 0;\n opacity: 0;\n position: absolute;\n top: 0;\n width: 24px;\n z-index: 100;\n zoom: 1;\n}\n@media (prefers-contrast: more) {\n .dso-selectable input[type=checkbox],\n .dso-selectable input[type=radio] {\n opacity: 1;\n }\n}\n.dso-selectable input[type=checkbox]:not([disabled]),\n.dso-selectable input[type=radio]:not([disabled]) {\n cursor: pointer;\n}\n.dso-selectable input[type=checkbox] + label,\n.dso-selectable input[type=radio] + label {\n display: inline;\n font-style: normal;\n padding-left: 0;\n}\n.dso-selectable input[type=checkbox] + label::before,\n.dso-selectable input[type=radio] + label::before {\n background: #fff;\n border: 0;\n box-shadow: 0 0 0 2px var(--dso-selectable-color, #275937);\n content: \"\";\n height: 20px;\n left: 2px;\n position: absolute;\n top: 2px;\n width: 20px;\n}\n.dso-selectable input[type=checkbox]:focus,\n.dso-selectable input[type=radio]:focus {\n outline: 0;\n}\n.dso-selectable input[type=checkbox]:focus + label::before,\n.dso-selectable input[type=radio]:focus + label::before {\n box-shadow: 0 0 0 3px var(--dso-selectable-color, #275937);\n height: 18px;\n left: 3px;\n top: 3px;\n width: 18px;\n}\n.dso-selectable input[type=checkbox]:active + label::before, .dso-selectable input[type=checkbox].active + label::before,\n.dso-selectable input[type=radio]:active + label::before,\n.dso-selectable input[type=radio].active + label::before {\n background-color: #ebf3e6;\n box-shadow: 0 0 0 1px #275937;\n height: 22px;\n left: 1px;\n top: 1px;\n width: 22px;\n}\n.dso-selectable input[type=checkbox] + label::before {\n border-radius: 4px;\n}\n.dso-selectable input[type=checkbox] + label::after {\n background: transparent;\n content: \"\";\n left: 6px;\n opacity: 0;\n position: absolute;\n top: 6px;\n zoom: 1;\n}\n.dso-selectable input[type=checkbox]:checked + label::after, .dso-selectable input[type=checkbox]:indeterminate + label::after {\n opacity: 1;\n}\n.dso-selectable input[type=checkbox]:checked + label::after {\n border: solid;\n border-color: var(--dso-selectable-color, #39870c);\n border-top-color: transparent;\n border-width: 0 0 3px 3px;\n height: 8px;\n transform: rotate(-45deg);\n width: 13px;\n}\n.dso-selectable input[type=checkbox]:indeterminate + label::after {\n background-color: var(--dso-selectable-color, #39870c);\n height: 12px;\n width: 12px;\n}\n.dso-selectable input[type=radio] + label::before {\n border-radius: 50%;\n}\n.dso-selectable input[type=radio] + label::after {\n background-color: transparent;\n border-radius: 50%;\n content: \"\";\n height: 12px;\n left: 6px;\n opacity: 0;\n position: absolute;\n top: 6px;\n width: 12px;\n zoom: 1;\n}\n.dso-selectable input[type=radio]:checked + label::after {\n background-color: var(--dso-selectable-color, #39870c);\n opacity: 1;\n}\n.dso-selectable label {\n font-weight: 700;\n}\n\n.dso-list-button {\n display: inline-block;\n font-size: 1em;\n font-weight: 500;\n margin-bottom: 0;\n text-decoration: none;\n touch-action: manipulation;\n text-align: left;\n user-select: none;\n vertical-align: middle;\n background-color: #fff;\n border-color: #ccc;\n color: #191919;\n border-radius: 4px;\n border-width: 1px;\n border-style: solid;\n font-weight: 600;\n padding: 15px 47px 15px 15px;\n position: relative;\n text-align: left;\n white-space: normal;\n width: 100%;\n cursor: pointer;\n}\n.dso-list-button:focus, .dso-list-button:focus-visible {\n outline-offset: 2px;\n}\n.dso-list-button:active {\n outline: 0;\n}\n.dso-list-button:hover, .dso-list-button:focus {\n background-color: #fff;\n border-color: #39870c;\n color: #191919;\n}\n.dso-list-button:active, .dso-list-button:active:hover, .dso-list-button.active, .dso-list-button.active:hover {\n background-color: #fff;\n border-color: #39870c;\n color: #191919;\n}\n.dso-list-button.disabled, .dso-list-button.disabled:hover, .dso-list-button[disabled], .dso-list-button[disabled]:hover {\n background-color: #fff;\n border-color: #ccc;\n color: #666;\n opacity: 1;\n}\n.dso-list-button.dso-selected {\n border-color: #39870c;\n border-width: 1px;\n box-shadow: inset 0px 0px 0px 1px #39870c, inset -1px 0px 0px 0px #39870c;\n}\n@media screen and (min-width: 768px) {\n .dso-list-button.dso-selected.dso-single-count {\n border-right: 0;\n box-shadow: #39870c 0px 1px 0px 0px inset, #39870c 1px 0px 0px 0px inset, #39870c 0px -1px 0px 0px inset;\n }\n}\n.dso-list-button label {\n cursor: inherit;\n}\n.dso-list-button > span {\n display: block;\n}\n.dso-list-button .dso-sublabel {\n font-weight: 400;\n width: 100%;\n}\n.dso-list-button dso-icon,\n.dso-list-button svg.di,\n.dso-list-button .dso-count {\n height: 24px;\n position: absolute;\n right: 15px;\n top: 15px;\n width: 24px;\n}\n.dso-list-button dso-icon,\n.dso-list-button svg.di {\n color: #39870c;\n page-break-before: always;\n}\n.dso-list-button .dso-count {\n font-weight: 700;\n}\n@media screen and (max-width: 767px) {\n .dso-list-button.dso-selected.dso-single-count::after {\n width: 0;\n }\n}\n.dso-list-button .dso-sublabel {\n padding-left: 32px;\n}\n\n.dso-list-button + .dso-list-button,\n.dso-list-button + .dso-button-group,\n.dso-button-group + .dso-list-button,\n.dso-button-group + .dso-button-group {\n margin-top: 4px;\n}\n\n.dso-input-wrapper {\n position: relative;\n}\n.dso-input-wrapper .form-control {\n width: 9ch;\n}\n\n.form-control {\n display: block;\n width: 100%;\n height: 40px;\n padding: 6px 14px;\n font-size: 1rem;\n line-height: 1.5;\n color: #191919;\n background-color: #fff;\n background-image: none;\n border: 1px solid #275937;\n border-radius: 4px;\n transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;\n}\n.form-control::-moz-placeholder {\n color: #666;\n opacity: 1;\n}\n.form-control:-ms-input-placeholder {\n color: #666;\n}\n.form-control::-webkit-input-placeholder {\n color: #666;\n}\n.form-control::-ms-expand {\n background-color: transparent;\n border: 0;\n}\n.form-control:focus {\n border-color: #275937;\n outline: 0;\n box-shadow: inset 0 0 0 1px #275937;\n}\n.form-control[disabled], .form-control[readonly], fieldset[disabled] .form-control {\n background-color: #fff;\n opacity: 1;\n}\n.form-control[disabled], fieldset[disabled] .form-control {\n cursor: default;\n}\n.form-control[disabled] {\n border-color: #e5e5e5;\n color: #999;\n}\n.form-control[readonly] {\n border-width: 1px;\n}\n.form-control[type=text] {\n line-height: 40px;\n}\n.form-control[size] {\n width: auto;\n}\n\n.dso-manual-input-button[type=button] {\n background-color: transparent;\n border: 0;\n bottom: 0;\n left: 0;\n position: absolute;\n right: 0;\n top: 0;\n}\n\n.hidden {\n display: none !important;\n}";const d=a;const l=class{constructor(e){n(this,e);this.dsoCountChange=t(this,"dsoCountChange",7);this.dsoSelectedChange=t(this,"dsoSelectedChange",7);this.manualInputWrapperElement=undefined;this.manualCount=undefined;this.label=undefined;this.sublabel=undefined;this.count=undefined;this.min=undefined;this.max=undefined;this.checked=false;this.disabled=false;this.subcontentPrefix=undefined;this.manual=true}get subcontentSlot(){return this.host.querySelector("[slot='subcontent']")}watchManualCallback(){if(!this.manual&&this.manualCount){this.stopManualCountInput()}}connectedCallback(){this.mutationObserver=new MutationObserver((()=>e(this.host)));this.mutationObserver.observe(this.host,{characterData:true,childList:true,subtree:true,attributes:true})}componentDidRender(){var n,t;if(this.manualCount!==undefined&&this.manualInputWrapperElement&&!this.trap){this.trap=i(this.manualInputWrapperElement,{escapeDeactivates:true,setReturnFocus:false,clickOutsideDeactivates:n=>{this.setCount(n);return true},onDeactivate:()=>this.stopManualCountInput(),onPostDeactivate:()=>{var n;return(n=this.manualInputButtonElement)===null||n===void 0?void 0:n.focus()}}).activate()}else if(this.manualCount===undefined&&this.trap){(n=this.trap)===null||n===void 0?void 0:n.deactivate();delete this.trap}(t=this.subcontentSlot)===null||t===void 0?void 0:t.setAttribute("aria-hidden","true")}disconnectedCallback(){var n,t;(n=this.trap)===null||n===void 0?void 0:n.deactivate();(t=this.mutationObserver)===null||t===void 0?void 0:t.disconnect();delete this.mutationObserver}handleOnChange({target:n}){if(n instanceof HTMLInputElement){this.manualCount=n.valueAsNumber}}stepValue(n,t){if(typeof this.count==="number"){const e=t==="increment"?this.count+1:this.count-1;if(!this.isNewCountValid(e)){return}this.dsoCountChange.emit({originalEvent:n,count:e})}}setCount(n){n.preventDefault();if(typeof this.manualCount==="number"&&this.isNewCountValid(this.manualCount)){this.dsoCountChange.emit({originalEvent:n,count:this.manualCount});this.stopManualCountInput()}}handleSelectClick(n){n.preventDefault();if(this.count!==undefined){this.dsoCountChange.emit({originalEvent:n,count:this.count>0?0:1});return}this.dsoSelectedChange.emit({originalEvent:n,checked:!this.checked})}startManualCountInput(){this.manualCount=this.count}stopManualCountInput(){this.manualCount=undefined}isNewCountValid(n){return!(this.min!==undefined&&this.max!==undefined&&(n<Number(this.min)||n>Number(this.max)))}render(){const n=this.manualCount===undefined;const t=this.checked||this.count!==undefined&&this.count>0;return o("div",{key:"595469d188c512dc1b34eda805e41c564e29ba4a",class:r(["dso-button-group",{"dso-disabled":this.disabled}])},o("div",{key:"5111da2a36969b0acae7190c2613124d9217ed8b",class:r(["dso-list-button",{"dso-selected":t,"dso-single-count":this.count===1}]),onClick:n=>this.handleSelectClick(n)},o("div",{key:"4db309ba5edc6caaccc40ce6016bea0fa4997df4",class:"dso-selectable"},o("input",{key:"6f4f46ee4fd6705e169ee622b4134e0ad561a505",id:"dso-list-button-checkbox",type:"checkbox",value:"list-button",name:"naam","aria-describedby":[this.sublabel&&"sublabel",this.subcontentSlot&&"description"].filter((n=>!!n)).join(" ")||null,checked:t,disabled:this.disabled}),o("label",{key:"9fedd5d531c56983b5c89d7bf65a47fa0aca3523",htmlFor:"dso-list-button-checkbox"},this.label),this.subcontentSlot&&o("div",{key:"002a567fe3d9504f27be61bf801a8ae48decd5d1",class:"sr-only",id:"description"},this.subcontentPrefix&&this.subcontentPrefix+":",o("div",{key:"432d4922ddcc649daa4f1c9311250748b39b89f5",innerHTML:this.subcontentSlot.innerHTML}))),this.sublabel&&o("span",{key:"894a6fa32ca6edeab9dd436d50c7b063a1a5273b",class:"dso-sublabel",id:"sublabel"},this.sublabel),o("slot",{key:"da5f033e670f95b2893df0301f3a23f37c0df382",name:"subcontent"})),this.count!==undefined&&this.count>0&&o("div",{key:"7b4384dc1b1eaeb9255eb3e2937a95635c2567a5",class:"dso-input-number"},this.manualCount===undefined&&this.count>1&&o("button",{key:"479bab779cc2e589289a6fbb694c71a62194019b",type:"button",class:"dso-tertiary",disabled:this.count===Number(this.min)||this.disabled,onClick:n=>this.stepValue(n,"decrement")},o("dso-icon",{key:"5cff6d05687291a9bf52940a93358fe0f25a8305",icon:"minus-circle"}),o("span",{key:"5e7295c692372eba158405fdebc5c02bcc361b2f",class:"sr-only"},"Aantal verlagen")),o("div",{key:"057f3e693f7c5f07cef6e5d606e91b8096bb1ed8",class:"dso-input-wrapper"},this.manualCount===undefined&&this.count>1&&o("input",{key:"9497f8c030c2dbb6c9cc59965c83d0ea854a3e21",class:"dso-input-step-counter",type:"number",tabIndex:-1,"aria-label":"Aantal",value:this.count,readOnly:true}),o("form",{key:"1d8f5e6bdc517a893f78ce9af3175190321a82f3",onSubmit:n=>this.setCount(n)},o("div",{key:"80e89a920948228037750489f28a341c7eda82d2",ref:n=>this.manualInputWrapperElement=n},o("input",{key:"7540fa096742a46fe53504f08a2786d720b49a04",class:r("form-control",{hidden:n}),type:"number","aria-label":"Aantal",value:this.manualCount,min:this.min,max:this.max,onInput:n=>this.handleOnChange(n)})),this.manual&&o("button",{key:"e6f3b0761e87577626308b192332adfe95771601",class:r("dso-manual-input-button",{"sr-only":!n}),type:!n?"submit":"button",disabled:this.disabled,onClick:()=>n&&this.startManualCountInput()},n?o("span",{class:"sr-only"},"Handmatig aantal invullen"):o("span",{class:"sr-only"},"Zet waarde")))),n&&o("button",{key:"8834a819b42cfe8b7d2f701927c39a2215ec86c7",type:"button",class:"dso-tertiary",disabled:this.count===Number(this.max)||this.disabled,onClick:n=>this.stepValue(n,"increment")},o("dso-icon",{key:"cf26acf0a0eb6150ac6b6e76b4e1a479b5ff7516",icon:"plus-circle"}),o("span",{key:"3db09a5efa814148c99e38a181aa8d188479742c",class:"sr-only"},"Aantal verhogen"))))}get host(){return s(this)}static get watchers(){return{manual:["watchManualCallback"]}}};l.style=d;export{l as dso_list_button};
|
|
2
|
+
//# sourceMappingURL=p-c22965e0.entry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["listButtonCss","DsoListButtonStyle0","ListButton","subcontentSlot","this","host","querySelector","watchManualCallback","manual","manualCount","stopManualCountInput","connectedCallback","mutationObserver","MutationObserver","forceUpdate","observe","characterData","childList","subtree","attributes","componentDidRender","undefined","manualInputWrapperElement","trap","createFocusTrap","escapeDeactivates","setReturnFocus","clickOutsideDeactivates","e","setCount","onDeactivate","onPostDeactivate","_a","manualInputButtonElement","focus","activate","deactivate","_b","setAttribute","disconnectedCallback","disconnect","handleOnChange","target","HTMLInputElement","valueAsNumber","stepValue","direction","count","newValue","isNewCountValid","dsoCountChange","emit","originalEvent","preventDefault","handleSelectClick","dsoSelectedChange","checked","startManualCountInput","min","max","Number","render","showButtonInputs","selected","h","key","class","clsx","disabled","onClick","id","type","value","name","sublabel","filter","s","join","htmlFor","label","subcontentPrefix","innerHTML","icon","tabIndex","readOnly","onSubmit","ref","element","hidden","onInput"],"sources":["src/components/list-button/list-button.scss?tag=dso-list-button&encapsulation=shadow","src/components/list-button/list-button.tsx"],"sourcesContent":["@use \"~dso-toolkit/src/variables/units\";\r\n@use \"~dso-toolkit/src/components/input-number\";\r\n@use \"~dso-toolkit/src/components/list-button\";\r\n@use \"~dso-toolkit/src/components/button\";\r\n@use \"~dso-toolkit/src/components/selectable\";\r\n@use \"~dso-toolkit/src/components/form-control\";\r\n@use \"~dso-toolkit/src/utilities\";\r\n\r\n@include utilities.box-sizing();\r\n\r\n:host {\r\n display: block;\r\n}\r\n\r\n.sr-only {\r\n @include utilities.sr-only();\r\n}\r\n\r\n.dso-manual-input-button {\r\n cursor: text;\r\n}\r\n\r\n.dso-tertiary {\r\n @include button.tertiary($modifiers: false);\r\n\r\n cursor: pointer;\r\n}\r\n\r\n.dso-input-number {\r\n @include input-number.root();\r\n}\r\n\r\n.dso-button-group {\r\n @include list-button.button-group(\".dso-input-number\", \".dso-list-button\");\r\n}\r\n\r\n.dso-selectable {\r\n @include selectable.root(\"dso-info\");\r\n\r\n label {\r\n font-weight: 700;\r\n }\r\n}\r\n\r\n.dso-list-button {\r\n @include button.base($modifiers: false);\r\n @include list-button.root();\r\n\r\n .dso-sublabel {\r\n padding-left: selectable.$size + units.$u1;\r\n }\r\n}\r\n\r\n.dso-list-button,\r\n.dso-button-group {\r\n + .dso-list-button,\r\n + .dso-button-group {\r\n @include list-button.sibling();\r\n }\r\n}\r\n\r\n.dso-input-wrapper {\r\n position: relative;\r\n\r\n .form-control {\r\n width: 9ch;\r\n }\r\n}\r\n\r\n.form-control {\r\n @include form-control.root();\r\n}\r\n\r\n.dso-manual-input-button[type=\"button\"] {\r\n background-color: transparent;\r\n border: 0;\r\n bottom: 0;\r\n left: 0;\r\n position: absolute;\r\n right: 0;\r\n top: 0;\r\n}\r\n\r\n.hidden {\r\n display: none !important;\r\n}\r\n","import {\r\n Component,\r\n ComponentInterface,\r\n Element,\r\n h,\r\n Prop,\r\n Event,\r\n EventEmitter,\r\n State,\r\n Watch,\r\n forceUpdate,\r\n} from \"@stencil/core\";\r\nimport { ListButtonChangeEvent, ListButtonSelectedEvent } from \"./list-button.interfaces\";\r\n\r\nimport { createFocusTrap, FocusTrap } from \"focus-trap\";\r\nimport clsx from \"clsx\";\r\n\r\n@Component({\r\n tag: \"dso-list-button\",\r\n shadow: true,\r\n styleUrl: \"list-button.scss\",\r\n})\r\nexport class ListButton implements ComponentInterface {\r\n @Element()\r\n host!: HTMLDsoListButtonElement;\r\n\r\n private trap?: FocusTrap;\r\n\r\n private mutationObserver?: MutationObserver;\r\n\r\n private get subcontentSlot() {\r\n return this.host.querySelector<HTMLElement>(\"[slot='subcontent']\");\r\n }\r\n\r\n @State()\r\n private manualInputWrapperElement?: HTMLDivElement;\r\n\r\n private manualInputButtonElement?: HTMLButtonElement;\r\n\r\n @State()\r\n manualCount?: number;\r\n\r\n /**\r\n * The label of the List Button.\r\n */\r\n @Prop()\r\n label?: string;\r\n\r\n /**\r\n * The sublabel of the List Button.\r\n */\r\n @Prop()\r\n sublabel?: string;\r\n\r\n /**\r\n * When defined the count can show on the List Button.\r\n */\r\n @Prop()\r\n count?: number;\r\n\r\n /**\r\n * The minimum value.\r\n */\r\n @Prop()\r\n min?: string | number;\r\n\r\n /**\r\n * The maximum value.\r\n */\r\n @Prop()\r\n max?: string | number;\r\n\r\n /**\r\n * Whether the List Button is checked.\r\n */\r\n @Prop({ reflect: true })\r\n checked = false;\r\n\r\n /**\r\n * Whether the List Button is disabled.\r\n */\r\n @Prop({ reflect: true })\r\n disabled = false;\r\n\r\n /**\r\n * Prefix to subcontent for the purpose of screenreading.\r\n */\r\n @Prop()\r\n subcontentPrefix?: string;\r\n\r\n /**\r\n * Allow user to directly input a value.\r\n *\r\n * Set to `false` to force users to use plus/minus buttons.\r\n */\r\n @Prop()\r\n manual = true;\r\n\r\n /**\r\n * Emitted when the user changes the count.\r\n */\r\n @Event()\r\n dsoCountChange!: EventEmitter<ListButtonChangeEvent>;\r\n\r\n /**\r\n * Emitted when the user activates the List Button itself.\r\n *\r\n * Does not fire when the user activates the count controls.\r\n */\r\n @Event()\r\n dsoSelectedChange!: EventEmitter<ListButtonSelectedEvent>;\r\n\r\n @Watch(\"manual\")\r\n watchManualCallback() {\r\n if (!this.manual && this.manualCount) {\r\n this.stopManualCountInput();\r\n }\r\n }\r\n\r\n connectedCallback() {\r\n this.mutationObserver = new MutationObserver(() => forceUpdate(this.host));\r\n\r\n this.mutationObserver.observe(this.host, {\r\n characterData: true,\r\n childList: true,\r\n subtree: true,\r\n attributes: true,\r\n });\r\n }\r\n\r\n componentDidRender(): void {\r\n if (this.manualCount !== undefined && this.manualInputWrapperElement && !this.trap) {\r\n this.trap = createFocusTrap(this.manualInputWrapperElement, {\r\n escapeDeactivates: true,\r\n setReturnFocus: false,\r\n\r\n clickOutsideDeactivates: (e) => {\r\n this.setCount(e);\r\n\r\n return true;\r\n },\r\n onDeactivate: () => this.stopManualCountInput(),\r\n onPostDeactivate: () => this.manualInputButtonElement?.focus(),\r\n }).activate();\r\n } else if (this.manualCount === undefined && this.trap) {\r\n this.trap?.deactivate();\r\n\r\n delete this.trap;\r\n }\r\n\r\n this.subcontentSlot?.setAttribute(\"aria-hidden\", \"true\");\r\n }\r\n\r\n disconnectedCallback(): void {\r\n this.trap?.deactivate();\r\n\r\n this.mutationObserver?.disconnect();\r\n delete this.mutationObserver;\r\n }\r\n\r\n private handleOnChange({ target }: Event): void {\r\n if (target instanceof HTMLInputElement) {\r\n this.manualCount = target.valueAsNumber;\r\n }\r\n }\r\n\r\n private stepValue(e: Event, direction: \"increment\" | \"decrement\"): void {\r\n if (typeof this.count === \"number\") {\r\n const newValue = direction === \"increment\" ? this.count + 1 : this.count - 1;\r\n\r\n if (!this.isNewCountValid(newValue)) {\r\n return;\r\n }\r\n\r\n this.dsoCountChange.emit({\r\n originalEvent: e,\r\n count: newValue,\r\n });\r\n }\r\n }\r\n\r\n private setCount(e: Event): void {\r\n e.preventDefault();\r\n\r\n if (typeof this.manualCount === \"number\" && this.isNewCountValid(this.manualCount)) {\r\n this.dsoCountChange.emit({\r\n originalEvent: e,\r\n count: this.manualCount,\r\n });\r\n this.stopManualCountInput();\r\n }\r\n }\r\n\r\n private handleSelectClick(e: Event): void {\r\n e.preventDefault();\r\n\r\n if (this.count !== undefined) {\r\n this.dsoCountChange.emit({\r\n originalEvent: e,\r\n count: this.count > 0 ? 0 : 1,\r\n });\r\n\r\n return;\r\n }\r\n\r\n this.dsoSelectedChange.emit({\r\n originalEvent: e,\r\n checked: !this.checked,\r\n });\r\n }\r\n\r\n private startManualCountInput(): void {\r\n this.manualCount = this.count;\r\n }\r\n\r\n private stopManualCountInput(): void {\r\n this.manualCount = undefined;\r\n }\r\n\r\n private isNewCountValid(newValue: number): boolean {\r\n return !(\r\n this.min !== undefined &&\r\n this.max !== undefined &&\r\n (newValue < Number(this.min) || newValue > Number(this.max))\r\n );\r\n }\r\n\r\n render() {\r\n const showButtonInputs = this.manualCount === undefined;\r\n\r\n const selected = this.checked || (this.count !== undefined && this.count > 0);\r\n\r\n return (\r\n <div class={clsx([\"dso-button-group\", { \"dso-disabled\": this.disabled }])}>\r\n <div\r\n class={clsx([\"dso-list-button\", { \"dso-selected\": selected, \"dso-single-count\": this.count === 1 }])}\r\n onClick={(e) => this.handleSelectClick(e)}\r\n >\r\n <div class=\"dso-selectable\">\r\n <input\r\n id=\"dso-list-button-checkbox\"\r\n type=\"checkbox\"\r\n value=\"list-button\"\r\n name=\"naam\"\r\n aria-describedby={\r\n [this.sublabel && \"sublabel\", this.subcontentSlot && \"description\"].filter((s) => !!s).join(\" \") || null\r\n }\r\n checked={selected}\r\n disabled={this.disabled}\r\n />\r\n <label htmlFor=\"dso-list-button-checkbox\">{this.label}</label>\r\n {this.subcontentSlot && (\r\n <div class=\"sr-only\" id=\"description\">\r\n {this.subcontentPrefix && this.subcontentPrefix + \":\"}\r\n <div innerHTML={this.subcontentSlot.innerHTML}></div>\r\n </div>\r\n )}\r\n </div>\r\n {this.sublabel && (\r\n <span class=\"dso-sublabel\" id=\"sublabel\">\r\n {this.sublabel}\r\n </span>\r\n )}\r\n <slot name=\"subcontent\" />\r\n </div>\r\n\r\n {this.count !== undefined && this.count > 0 && (\r\n <div class=\"dso-input-number\">\r\n {this.manualCount === undefined && this.count > 1 && (\r\n <button\r\n type=\"button\"\r\n class=\"dso-tertiary\"\r\n disabled={this.count === Number(this.min) || this.disabled}\r\n onClick={(e) => this.stepValue(e, \"decrement\")}\r\n >\r\n <dso-icon icon=\"minus-circle\"></dso-icon>\r\n <span class=\"sr-only\">Aantal verlagen</span>\r\n </button>\r\n )}\r\n\r\n <div class=\"dso-input-wrapper\">\r\n {this.manualCount === undefined && this.count > 1 && (\r\n <input\r\n class=\"dso-input-step-counter\"\r\n type=\"number\"\r\n tabIndex={-1}\r\n aria-label=\"Aantal\"\r\n value={this.count}\r\n readOnly\r\n />\r\n )}\r\n\r\n <form onSubmit={(e) => this.setCount(e)}>\r\n <div ref={(element) => (this.manualInputWrapperElement = element)}>\r\n <input\r\n class={clsx(\"form-control\", { hidden: showButtonInputs })}\r\n type=\"number\"\r\n aria-label=\"Aantal\"\r\n value={this.manualCount}\r\n min={this.min}\r\n max={this.max}\r\n onInput={(e) => this.handleOnChange(e)}\r\n />\r\n </div>\r\n\r\n {this.manual && (\r\n <button\r\n class={clsx(\"dso-manual-input-button\", { \"sr-only\": !showButtonInputs })}\r\n type={!showButtonInputs ? \"submit\" : \"button\"}\r\n disabled={this.disabled}\r\n onClick={() => showButtonInputs && this.startManualCountInput()}\r\n >\r\n {showButtonInputs ? (\r\n <span class=\"sr-only\">Handmatig aantal invullen</span>\r\n ) : (\r\n <span class=\"sr-only\">Zet waarde</span>\r\n )}\r\n </button>\r\n )}\r\n </form>\r\n </div>\r\n\r\n {showButtonInputs && (\r\n <button\r\n type=\"button\"\r\n class=\"dso-tertiary\"\r\n disabled={this.count === Number(this.max) || this.disabled}\r\n onClick={(e) => this.stepValue(e, \"increment\")}\r\n >\r\n <dso-icon icon=\"plus-circle\"></dso-icon>\r\n <span class=\"sr-only\">Aantal verhogen</span>\r\n </button>\r\n )}\r\n </div>\r\n )}\r\n </div>\r\n );\r\n }\r\n}\r\n"],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
function n({activeElement:e}=document){var r;if(!e){return null}if(e.shadowRoot){return(r=n(e.shadowRoot))!==null&&r!==void 0?r:e}return e}export{n as g};
|
|
2
|
-
//# sourceMappingURL=p-
|
|
2
|
+
//# sourceMappingURL=p-c8f6f8d9.js.map
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{r as d,h as a,F as s}from"./p-701648d3.js";const t=":host .dso-card-list{padding-left:0;list-style:none;border-bottom:1px solid #ccc;margin-top:-1px}:host .dso-card-grid{display:grid;gap:32px;grid-auto-rows:1fr}@media (max-width: 991px){:host .dso-card-grid{grid-template-columns:repeat(1, 1fr)}}@media (min-width: 992px) and (max-width: 1199px){:host .dso-card-grid{grid-template-columns:repeat(2, 1fr)}}@media (min-width: 1200px){:host .dso-card-grid{grid-template-columns:repeat(3, 1fr)}}";const r=t;const e=class{constructor(a){d(this,a);this.mode="list"}render(){return a(s,null,this.mode==="list"&&a("ul",{key:"54a6e926c22a118a77119add63558c55a7ef2cf9",class:"dso-card-list"},a("slot",{key:"63777d504620cbc54a94a95bbada8b7028ef5d92"})),this.mode==="grid"&&a("div",{key:"3b0feb3331f54fb7f084ad4c1e3bb18ddca6ee9d",class:"dso-card-grid"},a("slot",{key:"0bc1a70a40326d61cfa9af7b8cdf8e73bb8d39cf"})))}};e.style=r;export{e as dso_card_container};
|
|
2
|
+
//# sourceMappingURL=p-cd466fa3.entry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["cardContainerCss","DsoCardContainerStyle0","CardContainer","render","h","Fragment","this","mode","key","class"],"sources":["src/components/card-container/card-container.scss?tag=dso-card-container&encapsulation=shadow","src/components/card-container/card-container.tsx"],"sourcesContent":["@use \"~dso-toolkit/src/components/card-container\";\r\n@use \"~dso-toolkit/src/components/list\";\r\n@use \"~dso-toolkit/src/variables/media-query-breakpoints\";\r\n\r\n@use \"~dso-toolkit/src/components/grid/grid.variables\" as grid-variables;\r\n\r\n:host {\r\n .dso-card-list {\r\n @include list.unstyled();\r\n\r\n border-bottom: card-container.$border-width solid card-container.$border-color;\r\n margin-top: card-container.$border-width * -1;\r\n }\r\n\r\n .dso-card-grid {\r\n display: grid;\r\n gap: grid-variables.$grid-gutter-width;\r\n grid-auto-rows: 1fr;\r\n\r\n @media (max-width: media-query-breakpoints.$screen-sm-max) {\r\n grid-template-columns: repeat(1, 1fr);\r\n }\r\n\r\n @media (min-width: media-query-breakpoints.$screen-md-min) and (max-width: media-query-breakpoints.$screen-md-max) {\r\n grid-template-columns: repeat(2, 1fr);\r\n }\r\n\r\n @media (min-width: media-query-breakpoints.$screen-lg-min) {\r\n grid-template-columns: repeat(3, 1fr);\r\n }\r\n }\r\n}\r\n","import { h, Component, ComponentInterface, Fragment, Prop } from \"@stencil/core\";\r\nimport { CardContainerMode } from \"./card-container.interfaces\";\r\n\r\n@Component({\r\n tag: \"dso-card-container\",\r\n styleUrl: \"card-container.scss\",\r\n shadow: true,\r\n})\r\nexport class CardContainer implements ComponentInterface {\r\n /**\r\n * The mode of the Card Container.\r\n */\r\n @Prop({ reflect: true })\r\n mode: CardContainerMode = \"list\";\r\n\r\n render() {\r\n return (\r\n <>\r\n {this.mode === \"list\" && (\r\n <ul class=\"dso-card-list\">\r\n <slot />\r\n </ul>\r\n )}\r\n {this.mode === \"grid\" && (\r\n <div class=\"dso-card-grid\">\r\n <slot />\r\n </div>\r\n )}\r\n </>\r\n );\r\n }\r\n}\r\n"],"mappings":"kDAAA,MAAMA,EAAmB,0bACzB,MAAAC,EAAeD,E,MCOFE,EAAa,M,mCAKE,M,CAE1B,MAAAC,GACE,OACEC,EAAAC,EAAA,KACGC,KAAKC,OAAS,QACbH,EAAA,MAAAI,IAAA,2CAAIC,MAAM,iBACRL,EAAA,QAAAI,IAAA,8CAGHF,KAAKC,OAAS,QACbH,EAAA,OAAAI,IAAA,2CAAKC,MAAM,iBACTL,EAAA,QAAAI,IAAA,8C"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{r as o,c as d,h as s,a}from"./p-
|
|
2
|
-
//# sourceMappingURL=p-
|
|
1
|
+
import{r as o,c as d,h as s,a}from"./p-701648d3.js";import{g as i}from"./p-c8f6f8d9.js";import{v as l}from"./p-14616bce.js";const e="@keyframes ModalFadeIn{0%{opacity:0}100%{opacity:1}}*,*::after,*::before{box-sizing:border-box}:host{display:block}:host([fullscreen]) dialog{inline-size:100dvi;block-size:100dvb}:host([fullscreen]) dialog .dso-dialog{display:flex;flex-direction:column;inline-size:100%;block-size:100%}:host([fullscreen]) dialog .dso-dialog>dso-scrollable{flex-grow:1;max-block-size:unset}:host([fullscreen]) dialog .dso-footer{flex-shrink:0}@media screen and (max-width: 480px){:host dialog{inline-size:100dvi;block-size:100dvb}:host dialog .dso-dialog{display:flex;flex-direction:column;inline-size:100%;block-size:100%}:host dialog .dso-dialog>dso-scrollable{flex-grow:1;max-block-size:unset}:host dialog .dso-footer{flex-shrink:0}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);border:0}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}.dso-modal{overflow:visible;padding:0;border:0}.dso-modal::backdrop{background-color:rgba(255, 255, 255, 0.8)}.dso-modal .dso-dialog{inline-size:640px;background-color:#fff;opacity:1;box-shadow:0 8px 24px 0 rgba(25, 25, 25, 0.4);animation:200ms ease-out 0s 1 ModalFadeIn}.dso-modal .dso-header{position:relative;padding:16px;border-block-end:1px solid #ccc}.dso-modal .dso-header h2{max-inline-size:calc(100% - 24px);margin:0;color:#275937}.dso-modal .dso-header .dso-close{position:absolute;inset-block-start:16px;inset-inline-end:13px;block-size:32px;inline-size:32px;padding:0;background-color:transparent;border:0;text-align:center}.dso-modal>.dso-dialog>.dso-body{block-size:calc(100% - 96px - 1.5rem);max-block-size:calc(70vh - 144px - 1.5em);min-block-size:1.5rem;overflow-x:auto;padding:32px}.dso-modal>.dso-dialog>.dso-body p{margin:0 0 16px}.dso-modal>.dso-dialog>.dso-body ul,.dso-modal>.dso-dialog>.dso-body ol{margin-bottom:16px}.dso-modal>.dso-dialog>.dso-body ul:not(.list-group):not(.dso-link-list):not(.dso-columns-list),.dso-modal>.dso-dialog>.dso-body ol:not(.list-group):not(.dso-link-list):not(.dso-columns-list){padding-inline-start:24px}.dso-modal>.dso-dialog>.dso-body pre{margin:0 0 16px}.dso-modal>.dso-dialog>.dso-body blockquote{padding:16px 24px}.dso-modal>.dso-dialog>.dso-body dso-highlight-box,.dso-modal>.dso-dialog>.dso-body .dso-highlight-box{margin-bottom:24px}.dso-modal>.dso-dialog>.dso-body img{height:auto;max-width:100%}.dso-modal>.dso-dialog>dso-scrollable{block-size:calc(100% - 96px - 1.5rem);max-block-size:calc(70vh - 144px - 1.5em);min-block-size:6.5rem}.dso-modal>.dso-dialog>dso-scrollable .dso-body{padding:32px}.dso-modal>.dso-dialog>dso-scrollable .dso-body p{margin:0 0 16px}.dso-modal>.dso-dialog>dso-scrollable .dso-body ul,.dso-modal>.dso-dialog>dso-scrollable .dso-body ol{margin-bottom:16px}.dso-modal>.dso-dialog>dso-scrollable .dso-body ul:not(.list-group):not(.dso-link-list):not(.dso-columns-list),.dso-modal>.dso-dialog>dso-scrollable .dso-body ol:not(.list-group):not(.dso-link-list):not(.dso-columns-list){padding-inline-start:24px}.dso-modal>.dso-dialog>dso-scrollable .dso-body pre{margin:0 0 16px}.dso-modal>.dso-dialog>dso-scrollable .dso-body blockquote{padding:16px 24px}.dso-modal>.dso-dialog>dso-scrollable .dso-body dso-highlight-box,.dso-modal>.dso-dialog>dso-scrollable .dso-body .dso-highlight-box{margin-bottom:24px}.dso-modal>.dso-dialog>dso-scrollable .dso-body img{height:auto;max-width:100%}.dso-modal .dso-body:focus-visible{outline:none}.dso-modal .dso-footer{min-block-size:80px;padding:16px 32px;text-align:end}@media screen and (max-width: 767px){.dso-modal .dso-footer .dso-primary+.dso-primary,.dso-modal .dso-footer .dso-primary+.dso-secondary,.dso-modal .dso-footer .dso-primary+.dso-tertiary,.dso-modal .dso-footer .dso-secondary+.dso-primary,.dso-modal .dso-footer .dso-secondary+.dso-secondary,.dso-modal .dso-footer .dso-secondary+.dso-tertiary,.dso-modal .dso-footer .dso-tertiary+.dso-primary,.dso-modal .dso-footer .dso-tertiary+.dso-secondary,.dso-modal .dso-footer .dso-tertiary+.dso-tertiary{margin-inline-start:0}.dso-modal .dso-footer button{inline-size:100%;text-align:center}.dso-modal .dso-footer button+button{margin-block-start:8px}.dso-modal .dso-footer button.dso-tertiary,.dso-modal .dso-footer button.dso-tertiary span{float:none}}@media screen and (min-width: 768px){.dso-modal .dso-footer .dso-primary+.dso-secondary,.dso-modal .dso-footer .dso-secondary+.dso-secondary,.dso-modal .dso-footer .dso-tertiary+.dso-secondary{margin-inline-start:16px}.dso-modal .dso-footer .dso-primary+.dso-tertiary,.dso-modal .dso-footer .dso-secondary+.dso-tertiary,.dso-modal .dso-footer .dso-tertiary+.dso-tertiary{margin-inline-start:0}}@media screen and (max-width: 767px){.dso-modal .dso-dialog{max-inline-size:100%;margin-block-start:0}.dso-modal .dso-footer .dso-primary+.dso-primary,.dso-modal .dso-footer .dso-primary+.dso-secondary,.dso-modal .dso-footer .dso-primary+.dso-tertiary,.dso-modal .dso-footer .dso-secondary+.dso-primary,.dso-modal .dso-footer .dso-secondary+.dso-secondary,.dso-modal .dso-footer .dso-secondary+.dso-tertiary,.dso-modal .dso-footer .dso-tertiary+.dso-primary,.dso-modal .dso-footer .dso-tertiary+.dso-secondary,.dso-modal .dso-footer .dso-tertiary+.dso-tertiary{margin-inline-start:0}.dso-modal .dso-footer button{inline-size:100%;text-align:center}.dso-modal .dso-footer button+button{margin-block-start:8px}.dso-modal .dso-footer button.dso-tertiary,.dso-modal .dso-footer button.dso-tertiary span{float:none}}@media screen and (max-height: 380px){.dso-modal .dso-dialog{min-block-size:216px;margin-block-start:8px;margin-block-end:8px}.dso-modal .dso-header{padding:8px 16px}.dso-modal .dso-header .dso-close{inset-block-start:8px}.dso-modal .dso-body{padding:16px 24px}.dso-modal .dso-footer{min-block-size:auto;overflow:auto;padding:8px 32px}}.dso-close dso-icon{color:#39870c}";const t=e;const r=class{constructor(s){o(this,s);this.dsoClose=d(this,"dsoClose",7);this.ariaId=l();this.fullscreen=undefined;this.modalTitle=undefined;this.role="dialog";this.returnFocus=undefined;this.showCloseButton=true}get hasFooter(){return this.host.querySelector("[slot='footer']")!==null}componentDidLoad(){var o;if((o=this.htmlDialogElement)===null||o===void 0?void 0:o.isConnected){const o=i();if(o instanceof HTMLElement){this.returnFocusElement=o}this.htmlDialogElement.showModal()}}disconnectedCallback(){var o,d,s;(o=this.htmlDialogElement)===null||o===void 0?void 0:o.close();if(this.returnFocus===false){return}(s=(d=this.returnFocus)!==null&&d!==void 0?d:this.returnFocusElement)===null||s===void 0?void 0:s.focus()}render(){var o;return s("dialog",{key:"6072654b30fb1d5d37a85e415cc8238d9737fb62",class:"dso-modal",role:(o=this.role)!==null&&o!==void 0?o:undefined,"aria-modal":"true","aria-labelledby":this.ariaId,ref:o=>this.htmlDialogElement=o,onCancel:o=>{o.preventDefault();this.dsoClose.emit({originalEvent:o})}},s("div",{key:"f1332e303c002cdc221237f69691c339fe6b629f",class:"dso-dialog",role:"document"},this.modalTitle?s("div",{class:"dso-header"},s("h2",{id:this.ariaId},this.modalTitle),this.showCloseButton&&s("button",{type:"button",class:"dso-close",onClick:o=>this.dsoClose.emit({originalEvent:o})},s("dso-icon",{icon:"times"}),s("span",{class:"sr-only"},"Sluiten"))):s("span",{class:"sr-only",id:this.ariaId},"Dialoog"),s("dso-scrollable",{key:"8ada9f86ded3d0b35cfcc2df1edcd2c969864d00"},s("div",{key:"b3845f15bdb227ade9a13ef4e718c6a13b0e21b8",class:"dso-body",tabIndex:0},s("slot",{key:"5b55389b43bcaa09eabef43e16cb2d298e9d47dd",name:"body"}))),this.hasFooter&&s("div",{key:"135742b97efe4617a4ec7f64b86461fa69b5ab4a",class:"dso-footer"},s("slot",{key:"6ddd36972880b56bc98764da436872a38664ad44",name:"footer"}))))}get host(){return a(this)}};r.style=t;export{r as dso_modal};
|
|
2
|
+
//# sourceMappingURL=p-cef2a4da.entry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["modalCss","DsoModalStyle0","Modal","v4","undefined","hasFooter","this","host","querySelector","componentDidLoad","_a","htmlDialogElement","isConnected","activeElement","getActiveElement","HTMLElement","returnFocusElement","showModal","disconnectedCallback","close","returnFocus","_c","_b","focus","render","h","key","class","role","ariaId","ref","element","onCancel","e","preventDefault","dsoClose","emit","originalEvent","modalTitle","id","showCloseButton","type","onClick","icon","tabIndex","name"],"sources":["src/components/modal/modal.scss?tag=dso-modal&encapsulation=shadow","src/components/modal/modal.tsx"],"sourcesContent":["@use \"~dso-toolkit/src/utilities\";\r\n@use \"~dso-toolkit/src/components/button\";\r\n@use \"~dso-toolkit/src/components/modal\";\r\n@use \"~dso-toolkit/src/variables/media-query-breakpoints\";\r\n\r\n@include utilities.box-sizing();\r\n\r\n:host {\r\n display: block;\r\n}\r\n\r\n// fullscreen option\r\n:host([fullscreen]) dialog {\r\n @include modal.fullscreen();\r\n}\r\n\r\n// Go to fullscreen on =< 480px viewport\r\n@media screen and (max-width: media-query-breakpoints.$screen-xs-min) {\r\n :host dialog {\r\n @include modal.fullscreen();\r\n }\r\n}\r\n\r\n.sr-only {\r\n @include utilities.sr-only();\r\n}\r\n\r\nbutton {\r\n @include button.element();\r\n}\r\n\r\n.dso-modal {\r\n @include modal.root();\r\n}\r\n\r\n.dso-close {\r\n dso-icon {\r\n color: modal.$close-icon-color;\r\n }\r\n}\r\n","import { h, Component, ComponentInterface, Element, Event, EventEmitter, Prop, State } from \"@stencil/core\";\r\nimport { v4 } from \"uuid\";\r\n\r\nimport { ModalCloseEvent } from \"./modal.interfaces\";\r\nimport { getActiveElement } from \"../../utils/get-active-element\";\r\n\r\n@Component({\r\n tag: \"dso-modal\",\r\n styleUrl: \"modal.scss\",\r\n shadow: true,\r\n})\r\nexport class Modal implements ComponentInterface {\r\n private htmlDialogElement?: HTMLDialogElement;\r\n\r\n @Element()\r\n host!: HTMLDsoModalElement;\r\n\r\n @State()\r\n ariaId = v4();\r\n\r\n /**\r\n * when set the modal will be shown in fullscreen.\r\n */\r\n @Prop({ reflect: true })\r\n fullscreen?: boolean;\r\n\r\n /**\r\n * The title of the Modal.\r\n */\r\n @Prop()\r\n modalTitle?: string;\r\n\r\n /**\r\n * the role for the modal `dialog` | `alert` | `alertdialog`.\r\n */\r\n @Prop()\r\n // eslint-disable-next-line @stencil-community/reserved-member-names\r\n role: string | null = \"dialog\";\r\n\r\n /**\r\n * The element to return focus to after the modal is closed.\r\n *\r\n * * `undefined` will return focus to the previously focused element (default).\r\n * * `false` will not return focus to any element.\r\n * * or, provide your own `HTMLElement` that will receive focus upon closing.\r\n */\r\n @Prop()\r\n returnFocus: false | HTMLElement | undefined = undefined;\r\n\r\n /**\r\n * when `false` the close button in the header will not be rendered. Defaults to `true`.\r\n *\r\n * Needs `modalTitle` to be set.\r\n */\r\n @Prop()\r\n showCloseButton = true;\r\n\r\n private returnFocusElement: HTMLElement | undefined;\r\n\r\n /**\r\n * Emitted when the user wants to close the Modal.\r\n */\r\n @Event()\r\n dsoClose!: EventEmitter<ModalCloseEvent>;\r\n\r\n get hasFooter() {\r\n return this.host.querySelector(\"[slot='footer']\") !== null;\r\n }\r\n\r\n componentDidLoad(): void {\r\n if (this.htmlDialogElement?.isConnected) {\r\n const activeElement = getActiveElement();\r\n if (activeElement instanceof HTMLElement) {\r\n this.returnFocusElement = activeElement;\r\n }\r\n\r\n this.htmlDialogElement.showModal();\r\n }\r\n }\r\n\r\n disconnectedCallback(): void {\r\n this.htmlDialogElement?.close();\r\n\r\n if (this.returnFocus === false) {\r\n return;\r\n }\r\n\r\n (this.returnFocus ?? this.returnFocusElement)?.focus();\r\n }\r\n\r\n render() {\r\n return (\r\n <dialog\r\n class=\"dso-modal\"\r\n role={this.role ?? undefined}\r\n aria-modal=\"true\"\r\n aria-labelledby={this.ariaId}\r\n ref={(element) => (this.htmlDialogElement = element)}\r\n onCancel={(e) => {\r\n e.preventDefault();\r\n\r\n this.dsoClose.emit({ originalEvent: e });\r\n }}\r\n >\r\n <div class=\"dso-dialog\" role=\"document\">\r\n {this.modalTitle ? (\r\n <div class=\"dso-header\">\r\n <h2 id={this.ariaId}>{this.modalTitle}</h2>\r\n {this.showCloseButton && (\r\n <button type=\"button\" class=\"dso-close\" onClick={(e) => this.dsoClose.emit({ originalEvent: e })}>\r\n <dso-icon icon=\"times\"></dso-icon>\r\n <span class=\"sr-only\">Sluiten</span>\r\n </button>\r\n )}\r\n </div>\r\n ) : (\r\n <span class=\"sr-only\" id={this.ariaId}>\r\n Dialoog\r\n </span>\r\n )}\r\n\r\n <dso-scrollable>\r\n <div class=\"dso-body\" tabIndex={0}>\r\n <slot name=\"body\" />\r\n </div>\r\n </dso-scrollable>\r\n\r\n {this.hasFooter && (\r\n <div class=\"dso-footer\">\r\n <slot name=\"footer\" />\r\n </div>\r\n )}\r\n </div>\r\n </dialog>\r\n );\r\n }\r\n}\r\n"],"mappings":"4HAAA,MAAMA,EAAW,43LACjB,MAAAC,EAAeD,E,MCUFE,EAAK,M,wEAOPC,I,8DAmBa,S,iBAUyBC,U,qBAQ7B,I,CAUlB,aAAIC,GACF,OAAOC,KAAKC,KAAKC,cAAc,qBAAuB,I,CAGxD,gBAAAC,G,MACE,IAAIC,EAAAJ,KAAKK,qBAAiB,MAAAD,SAAA,SAAAA,EAAEE,YAAa,CACvC,MAAMC,EAAgBC,IACtB,GAAID,aAAyBE,YAAa,CACxCT,KAAKU,mBAAqBH,C,CAG5BP,KAAKK,kBAAkBM,W,EAI3B,oBAAAC,G,WACER,EAAAJ,KAAKK,qBAAiB,MAAAD,SAAA,SAAAA,EAAES,QAExB,GAAIb,KAAKc,cAAgB,MAAO,CAC9B,M,EAGFC,GAACC,EAAAhB,KAAKc,eAAW,MAAAE,SAAA,EAAAA,EAAIhB,KAAKU,sBAAmB,MAAAK,SAAA,SAAAA,EAAEE,O,CAGjD,MAAAC,G,MACE,OACEC,EAAA,UAAAC,IAAA,2CACEC,MAAM,YACNC,MAAMlB,EAAAJ,KAAKsB,QAAI,MAAAlB,SAAA,EAAAA,EAAIN,UAAS,aACjB,OAAM,kBACAE,KAAKuB,OACtBC,IAAMC,GAAazB,KAAKK,kBAAoBoB,EAC5CC,SAAWC,IACTA,EAAEC,iBAEF5B,KAAK6B,SAASC,KAAK,CAAEC,cAAeJ,GAAI,GAG1CR,EAAA,OAAAC,IAAA,2CAAKC,MAAM,aAAaC,KAAK,YAC1BtB,KAAKgC,WACJb,EAAA,OAAKE,MAAM,cACTF,EAAA,MAAIc,GAAIjC,KAAKuB,QAASvB,KAAKgC,YAC1BhC,KAAKkC,iBACJf,EAAA,UAAQgB,KAAK,SAASd,MAAM,YAAYe,QAAUT,GAAM3B,KAAK6B,SAASC,KAAK,CAAEC,cAAeJ,KAC1FR,EAAA,YAAUkB,KAAK,UACflB,EAAA,QAAME,MAAM,WAAS,aAK3BF,EAAA,QAAME,MAAM,UAAUY,GAAIjC,KAAKuB,QAAM,WAKvCJ,EAAA,kBAAAC,IAAA,4CACED,EAAA,OAAAC,IAAA,2CAAKC,MAAM,WAAWiB,SAAU,GAC9BnB,EAAA,QAAAC,IAAA,2CAAMmB,KAAK,WAIdvC,KAAKD,WACJoB,EAAA,OAAAC,IAAA,2CAAKC,MAAM,cACTF,EAAA,QAAAC,IAAA,2CAAMmB,KAAK,a"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{r as i,c as t,h as n,F as e,a}from"./p-701648d3.js";import{i as o}from"./p-2d694112.js";const s=':host{display:block}*,*::after,*::before{box-sizing:border-box}.pagination{padding-inline-start:initial;text-align:center}.pagination>li{display:inline-block;font-weight:bold;line-height:calc(2rem - 4px);text-align:center;vertical-align:middle}.pagination>li>a,.pagination>li>span{align-items:center;color:#39870c;display:flex;height:2rem;justify-content:center;position:relative;min-inline-size:2rem;padding:2px}.pagination>li>a:active,.pagination>li>span:active{background-color:#ebf3e6}.pagination>li>span{border:2px solid transparent;border-radius:1rem}.pagination>li a{line-height:2rem;text-decoration:none}.pagination>li a:hover,.pagination>li a:focus{text-decoration:none}.pagination>li a:hover::after,.pagination>li a:focus::after{border-bottom-color:#39870c}.pagination>li a::after{border-bottom:3px solid transparent;bottom:0;content:"";display:inline-block;left:0;position:absolute;width:100%}.pagination>li.active span{background-color:#39870c;color:#fff}.pagination>li+li{margin-left:8px}.dso-page-hidden{visibility:hidden}';const r=s;const l=class{constructor(n){i(this,n);this.dsoSelectPage=t(this,"dsoSelectPage",7);this.sizePositionsMap={small:7,medium:9,large:11};this.availablePositions=undefined;this.totalPages=undefined;this.currentPage=undefined;this.formatHref=i=>"#"+i}sizeChangeHandler(i){this.availablePositions=this.getAvailablePositions(this.sizePositionsMap[i.detail])}clickHandler(i,t){this.dsoSelectPage.emit({originalEvent:i,page:t,isModifiedEvent:o(i)})}componentDidLoad(){var i;(i=this.responsiveElement)===null||i===void 0?void 0:i.getSize().then((i=>this.availablePositions=this.getAvailablePositions(this.sizePositionsMap[i])))}render(){var i,t,a;if(!this.totalPages){return null}if(this.availablePositions===undefined){return n("dso-responsive-element",{ref:i=>this.responsiveElement=i})}const o=this.availablePositions;const s=(i=this.currentPage)!==null&&i!==void 0?i:0;const r=this.getPages(s,this.availablePositions,this.totalPages);return n("dso-responsive-element",{ref:i=>this.responsiveElement=i},n("ul",{class:"pagination"},n("li",{class:s<=1||s>this.totalPages?"dso-page-hidden":undefined},n("a",{href:this.formatHref((t=r[r.indexOf(s)-1])!==null&&t!==void 0?t:1),"aria-label":"Vorige",onClick:i=>{var t;return s&&this.clickHandler(i,(t=r[r.indexOf(s)-1])!==null&&t!==void 0?t:1)}},n("dso-icon",{icon:"chevron-left"}))),r.map((i=>n(e,null,this.showEllipsisBeforeLast(r,i,o)&&n("li",null,n("span",null,"...")),n("li",{key:i,class:s===i?"active":undefined},s===i?n("span",{"aria-current":"page"},i):n("a",{href:this.formatHref(i),onClick:t=>this.clickHandler(t,i)},i)),this.showEllipsisAfterFirst(r,i,o)&&n("li",null,n("span",null,"..."))))),n("li",{class:s<1||s>=this.totalPages?"dso-page-hidden":undefined},n("a",{href:this.formatHref((a=r[r.indexOf(s)+1])!==null&&a!==void 0?a:this.totalPages),"aria-label":"Volgende",onClick:i=>{var t;return s&&this.totalPages&&this.clickHandler(i,(t=r[r.indexOf(s)+1])!==null&&t!==void 0?t:this.totalPages)}},n("dso-icon",{icon:"chevron-right"})))))}getAvailablePositions(i){if(i%2===0){return i-1}if(i<=3){return 3}return i}getPages(i,t,n){if(n+2<=t){return Array.from({length:n},((i,t)=>t+1))}if(t===3){return[i]}if(t===5){return[1,i,n]}return[1,...this.getPageRange(i,t,n),n]}getPageRange(i,t,n){const e=[];const a=Math.floor(t/2);if(i<=a){for(let i=2;i<=t-4;i++){e.push(i)}}if(i>=a&&i<=n-a){if(a===1){if(i>n-2){e.push(n-2)}e.push(i);if(i<3){e.push(3)}}if(a>1){const t=a-3;for(let o=Math.min(i-t,n-a);o<=Math.max(i+t,a);o++){if(o>2&&o<n-1){e.push(o)}}}}if(i>n-a){for(let i=n-(t-5);i<=n-1;i++){e.push(i)}}return e.filter(((i,t,n)=>n.indexOf(i)===t))}showEllipsisAfterFirst(i,t,n){const e=i[i.length-1];if(!e){throw new Error("No totalPages")}return i.indexOf(t)===0&&e>n-2&&!i.some((i=>i===2))&&n>=7}showEllipsisBeforeLast(i,t,n){const e=i[i.length-1];if(!e){throw new Error("No totalPages")}return i.indexOf(t)===i.length-1&&e>n-2&&!i.some((i=>i===e-1))&&n>=7}get host(){return a(this)}};l.style=r;export{l as dso_pagination};
|
|
2
|
+
//# sourceMappingURL=p-d75e278f.entry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["paginationCss","DsoPaginationStyle0","Pagination","this","sizePositionsMap","small","medium","large","page","sizeChangeHandler","event","availablePositions","getAvailablePositions","detail","clickHandler","e","dsoSelectPage","emit","originalEvent","isModifiedEvent","componentDidLoad","_a","responsiveElement","getSize","then","size","render","totalPages","undefined","h","ref","element","currentPage","pages","getPages","class","href","formatHref","_b","indexOf","onClick","icon","map","Fragment","showEllipsisBeforeLast","key","showEllipsisAfterFirst","_c","sizePositions","Array","from","length","_value","i","getPageRange","range","positionRange","Math","floor","push","pagesBeforeOrAfter","min","max","filter","v","a","Error","some","p"],"sources":["src/components/pagination/pagination.scss?tag=dso-pagination&encapsulation=shadow","src/components/pagination/pagination.tsx"],"sourcesContent":["@use \"~dso-toolkit/src/utilities\";\r\n@use \"~dso-toolkit/src/components/pagination\";\r\n\r\n:host {\r\n display: block;\r\n}\r\n\r\n@include utilities.box-sizing();\r\n\r\n.pagination {\r\n @include pagination.root();\r\n}\r\n\r\n.dso-page-hidden {\r\n visibility: hidden;\r\n}\r\n","import {\r\n h,\r\n Component,\r\n ComponentInterface,\r\n Element,\r\n Event,\r\n EventEmitter,\r\n Fragment,\r\n Listen,\r\n Prop,\r\n State,\r\n} from \"@stencil/core\";\r\nimport { isModifiedEvent } from \"../../utils/is-modified-event\";\r\n\r\nimport { ResponsiveElementSize } from \"../responsive-element/responsive-element.interfaces\";\r\nimport { PaginationSelectPageEvent } from \"./pagination.interfaces\";\r\n\r\n@Component({\r\n tag: \"dso-pagination\",\r\n styleUrl: \"pagination.scss\",\r\n shadow: true,\r\n})\r\nexport class Pagination implements ComponentInterface {\r\n private sizePositionsMap: Record<ResponsiveElementSize, number> = {\r\n small: 7,\r\n medium: 9,\r\n large: 11,\r\n };\r\n\r\n private responsiveElement?: HTMLDsoResponsiveElementElement;\r\n\r\n @Element()\r\n host!: HTMLDsoPaginationElement;\r\n\r\n @State()\r\n availablePositions?: number;\r\n /**\r\n * Total pages\r\n */\r\n @Prop()\r\n totalPages?: number;\r\n\r\n /**\r\n * Current page\r\n */\r\n @Prop()\r\n currentPage?: number;\r\n\r\n /**\r\n * This function is called to format the href\r\n */\r\n @Prop()\r\n formatHref: (page: number) => string = (page) => \"#\" + page;\r\n\r\n /**\r\n * Emitted on page select\r\n */\r\n @Event()\r\n dsoSelectPage!: EventEmitter<PaginationSelectPageEvent>;\r\n\r\n /**\r\n * Listens to the dsoSizeChange event on Responsive Element\r\n */\r\n @Listen(\"dsoSizeChange\")\r\n sizeChangeHandler(event: CustomEvent<ResponsiveElementSize>) {\r\n this.availablePositions = this.getAvailablePositions(this.sizePositionsMap[event.detail]);\r\n }\r\n\r\n private clickHandler(e: MouseEvent, page: number) {\r\n this.dsoSelectPage.emit({\r\n originalEvent: e,\r\n page,\r\n isModifiedEvent: isModifiedEvent(e),\r\n });\r\n }\r\n\r\n componentDidLoad(): void {\r\n this.responsiveElement\r\n ?.getSize()\r\n .then(\r\n (size: ResponsiveElementSize) =>\r\n (this.availablePositions = this.getAvailablePositions(this.sizePositionsMap[size])),\r\n );\r\n }\r\n\r\n render() {\r\n if (!this.totalPages) {\r\n return null;\r\n }\r\n\r\n if (this.availablePositions === undefined) {\r\n return <dso-responsive-element ref={(element) => (this.responsiveElement = element)}></dso-responsive-element>;\r\n }\r\n\r\n const availablePositions = this.availablePositions;\r\n\r\n const currentPage = this.currentPage ?? 0;\r\n\r\n const pages: number[] = this.getPages(currentPage, this.availablePositions, this.totalPages);\r\n\r\n return (\r\n <dso-responsive-element ref={(element) => (this.responsiveElement = element)}>\r\n <ul class=\"pagination\">\r\n <li class={currentPage <= 1 || currentPage > this.totalPages ? \"dso-page-hidden\" : undefined}>\r\n <a\r\n href={this.formatHref(pages[pages.indexOf(currentPage) - 1] ?? 1)}\r\n aria-label=\"Vorige\"\r\n onClick={(e) => currentPage && this.clickHandler(e, pages[pages.indexOf(currentPage) - 1] ?? 1)}\r\n >\r\n <dso-icon icon=\"chevron-left\"></dso-icon>\r\n </a>\r\n </li>\r\n {pages.map((page) => (\r\n <>\r\n {this.showEllipsisBeforeLast(pages, page, availablePositions) && (\r\n <li>\r\n <span>...</span>\r\n </li>\r\n )}\r\n\r\n <li key={page} class={currentPage === page ? \"active\" : undefined}>\r\n {currentPage === page ? (\r\n <span aria-current=\"page\">{page}</span>\r\n ) : (\r\n <a href={this.formatHref(page)} onClick={(e) => this.clickHandler(e, page)}>\r\n {page}\r\n </a>\r\n )}\r\n </li>\r\n\r\n {this.showEllipsisAfterFirst(pages, page, availablePositions) && (\r\n <li>\r\n <span>...</span>\r\n </li>\r\n )}\r\n </>\r\n ))}\r\n <li class={currentPage < 1 || currentPage >= this.totalPages ? \"dso-page-hidden\" : undefined}>\r\n <a\r\n href={this.formatHref(pages[pages.indexOf(currentPage) + 1] ?? this.totalPages)}\r\n aria-label=\"Volgende\"\r\n onClick={(e) =>\r\n currentPage &&\r\n this.totalPages &&\r\n this.clickHandler(e, pages[pages.indexOf(currentPage) + 1] ?? this.totalPages)\r\n }\r\n >\r\n <dso-icon icon=\"chevron-right\"></dso-icon>\r\n </a>\r\n </li>\r\n </ul>\r\n </dso-responsive-element>\r\n );\r\n }\r\n\r\n private getAvailablePositions(sizePositions: number) {\r\n if (sizePositions % 2 === 0) {\r\n // Even aantal posities zorgt voor een scheve pagination\r\n return sizePositions - 1;\r\n }\r\n if (sizePositions <= 3) {\r\n // Voor het kunnen tonen van de vorige knop, volgende knop en 1 pagina zijn minimaal 3 posities nodig.\r\n return 3;\r\n }\r\n\r\n return sizePositions;\r\n }\r\n\r\n private getPages(currentPage: number, availablePositions: number, totalPages: number): number[] {\r\n if (totalPages + 2 <= availablePositions) {\r\n // + 2 voor de vorige en volgende knop\r\n return Array.from({ length: totalPages }, (_value, i) => i + 1);\r\n }\r\n\r\n if (availablePositions === 3) {\r\n return [currentPage];\r\n }\r\n\r\n if (availablePositions === 5) {\r\n return [1, currentPage, totalPages];\r\n }\r\n\r\n return [1, ...this.getPageRange(currentPage, availablePositions, totalPages), totalPages];\r\n }\r\n\r\n private getPageRange(currentPage: number, availablePositions: number, totalPages: number): number[] {\r\n const range: number[] = [];\r\n\r\n const positionRange = Math.floor(availablePositions / 2);\r\n\r\n if (currentPage <= positionRange) {\r\n for (let i = 2; i <= availablePositions - 4; i++) {\r\n range.push(i);\r\n }\r\n }\r\n\r\n if (currentPage >= positionRange && currentPage <= totalPages - positionRange) {\r\n if (positionRange === 1) {\r\n if (currentPage > totalPages - 2) {\r\n range.push(totalPages - 2);\r\n }\r\n\r\n range.push(currentPage);\r\n\r\n if (currentPage < 3) {\r\n range.push(3);\r\n }\r\n }\r\n\r\n if (positionRange > 1) {\r\n const pagesBeforeOrAfter = positionRange - 3;\r\n\r\n for (\r\n let i = Math.min(currentPage - pagesBeforeOrAfter, totalPages - positionRange);\r\n i <= Math.max(currentPage + pagesBeforeOrAfter, positionRange);\r\n i++\r\n ) {\r\n if (i > 2 && i < totalPages - 1) {\r\n range.push(i);\r\n }\r\n }\r\n }\r\n }\r\n\r\n if (currentPage > totalPages - positionRange) {\r\n for (let i = totalPages - (availablePositions - 5); i <= totalPages - 1; i++) {\r\n range.push(i);\r\n }\r\n }\r\n\r\n return range.filter((v, i, a) => a.indexOf(v) === i);\r\n }\r\n\r\n private showEllipsisAfterFirst(pages: number[], page: number, availablePositions: number): boolean {\r\n const totalPages = pages[pages.length - 1];\r\n if (!totalPages) {\r\n throw new Error(\"No totalPages\");\r\n }\r\n\r\n return (\r\n pages.indexOf(page) === 0 &&\r\n totalPages > availablePositions - 2 &&\r\n !pages.some((p) => p === 2) &&\r\n availablePositions >= 7\r\n );\r\n }\r\n\r\n private showEllipsisBeforeLast(pages: number[], page: number, availablePositions: number): boolean {\r\n const totalPages = pages[pages.length - 1];\r\n if (!totalPages) {\r\n throw new Error(\"No totalPages\");\r\n }\r\n\r\n return (\r\n pages.indexOf(page) === pages.length - 1 &&\r\n totalPages > availablePositions - 2 &&\r\n !pages.some((p) => p === totalPages - 1) &&\r\n availablePositions >= 7\r\n );\r\n }\r\n}\r\n"],"mappings":"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"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{g as t,f as e,r as s,h as n,H as o,a as r}from"./p-701648d3.js";const c=(t,e,s)=>{const n=t.get(e);if(!n){t.set(e,[s])}else if(!n.includes(s)){n.push(s)}};const i=(t,e)=>{let s;return(...n)=>{if(s){clearTimeout(s)}s=setTimeout((()=>{s=0;t(...n)}),e)}};const a=t=>!("isConnected"in t)||t.isConnected;const u=i((t=>{for(let e of t.keys()){t.set(e,t.get(e).filter(a))}}),2e3);const f=()=>{if(typeof t!=="function"){return{}}const s=new Map;return{dispose:()=>s.clear(),get:e=>{const n=t();if(n){c(s,e,n)}},set:t=>{const n=s.get(t);if(n){s.set(t,n.filter(e))}u(s)},reset:()=>{s.forEach((t=>t.forEach(e)));u(s)}}};const d=t=>typeof t==="function"?t():t;const l=(t,e=((t,e)=>t!==e))=>{const s=d(t);let n=new Map(Object.entries(s!==null&&s!==void 0?s:{}));const o={dispose:[],get:[],set:[],reset:[]};const r=()=>{var e;n=new Map(Object.entries((e=d(t))!==null&&e!==void 0?e:{}));o.reset.forEach((t=>t()))};const c=()=>{o.dispose.forEach((t=>t()));r()};const i=t=>{o.get.forEach((e=>e(t)));return n.get(t)};const a=(t,s)=>{const r=n.get(t);if(e(s,r,t)){n.set(t,s);o.set.forEach((e=>e(t,s,r)))}};const u=typeof Proxy==="undefined"?{}:new Proxy(s,{get(t,e){return i(e)},ownKeys(t){return Array.from(n.keys())},getOwnPropertyDescriptor(){return{enumerable:true,configurable:true}},has(t,e){return n.has(e)},set(t,e,s){a(e,s);return true}});const f=(t,e)=>{o[t].push(e);return()=>{p(o[t],e)}};const l=(e,s)=>{const n=f("set",((t,n)=>{if(t===e){s(n)}}));const o=f("reset",(()=>s(d(t)[e])));return()=>{n();o()}};const h=(...t)=>{const e=t.reduce(((t,e)=>{if(e.set){t.push(f("set",e.set))}if(e.get){t.push(f("get",e.get))}if(e.reset){t.push(f("reset",e.reset))}if(e.dispose){t.push(f("dispose",e.dispose))}return t}),[]);return()=>e.forEach((t=>t()))};const g=t=>{const e=n.get(t);o.set.forEach((s=>s(t,e,e)))};return{state:u,get:i,set:a,on:f,onChange:l,use:h,dispose:c,reset:r,forceUpdate:g}};const p=(t,e)=>{const s=t.indexOf(e);if(s>=0){t[s]=t[t.length-1];t.length--}};const h=(t,e)=>{const s=l(t,e);s.use(f());return s};const g=":host{display:block}*,*::after,*::before{box-sizing:border-box}";const b=g;const y=class{updateVariant(t="default"){this.accordionState.variant=t}updateReverseAlign(t){this.accordionState.reverseAlign=t}async _getState(){return this.accordionState}componentWillLoad(){this.accordionState.variant=this.variant;this.accordionState.reverseAlign=this.reverseAlign}constructor(t){s(this,t);this.variant="default";this.reverseAlign=false;const{state:e}=h({});this.accordionState=e}render(){return n(o,{key:"ff5ce15d5c8f250a00fd32179023c5640fcdaa60",class:"dso-accordion"},n("slot",{key:"4d8471b5d095ccfb38184cba1c1dab7f958638aa"}))}get host(){return r(this)}static get watchers(){return{variant:["updateVariant"],reverseAlign:["updateReverseAlign"]}}};y.style=b;export{y as dso_accordion};
|
|
2
|
+
//# sourceMappingURL=p-dd9d670a.entry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["appendToMap","map","propName","value","items","get","set","includes","push","debounce","fn","ms","timeoutId","args","clearTimeout","setTimeout","isConnected","maybeElement","cleanupElements","key","keys","filter","stencilSubscription","getRenderingRef","elmsToUpdate","Map","dispose","clear","elm","elements","forceUpdate","reset","forEach","elms","unwrap","val","createObservableMap","defaultState","shouldUpdate","a","b","unwrappedState","states","Object","entries","handlers","_a","cb","oldValue","state","Proxy","_","ownKeys","Array","from","getOwnPropertyDescriptor","enumerable","configurable","has","on","eventName","callback","removeFromArray","onChange","unSet","newValue","unReset","use","subscriptions","unsubs","reduce","subscription","unsub","array","item","index","indexOf","length","createStore","accordionCss","DsoAccordionStyle0","Accordion","updateVariant","variant","this","accordionState","updateReverseAlign","reverseAlign","_getState","componentWillLoad","constructor","hostRef","render","h","Host","class"],"sources":["../../node_modules/@stencil/store/dist/index.mjs","src/components/accordion/accordion.scss?tag=dso-accordion&encapsulation=shadow","src/components/accordion/accordion.tsx"],"sourcesContent":["import { getRenderingRef, forceUpdate } from '@stencil/core';\n\nconst appendToMap = (map, propName, value) => {\n const items = map.get(propName);\n if (!items) {\n map.set(propName, [value]);\n }\n else if (!items.includes(value)) {\n items.push(value);\n }\n};\nconst debounce = (fn, ms) => {\n let timeoutId;\n return (...args) => {\n if (timeoutId) {\n clearTimeout(timeoutId);\n }\n timeoutId = setTimeout(() => {\n timeoutId = 0;\n fn(...args);\n }, ms);\n };\n};\n\n/**\n * Check if a possible element isConnected.\n * The property might not be there, so we check for it.\n *\n * We want it to return true if isConnected is not a property,\n * otherwise we would remove these elements and would not update.\n *\n * Better leak in Edge than to be useless.\n */\nconst isConnected = (maybeElement) => !('isConnected' in maybeElement) || maybeElement.isConnected;\nconst cleanupElements = debounce((map) => {\n for (let key of map.keys()) {\n map.set(key, map.get(key).filter(isConnected));\n }\n}, 2000);\nconst stencilSubscription = () => {\n if (typeof getRenderingRef !== 'function') {\n // If we are not in a stencil project, we do nothing.\n // This function is not really exported by @stencil/core.\n return {};\n }\n const elmsToUpdate = new Map();\n return {\n dispose: () => elmsToUpdate.clear(),\n get: (propName) => {\n const elm = getRenderingRef();\n if (elm) {\n appendToMap(elmsToUpdate, propName, elm);\n }\n },\n set: (propName) => {\n const elements = elmsToUpdate.get(propName);\n if (elements) {\n elmsToUpdate.set(propName, elements.filter(forceUpdate));\n }\n cleanupElements(elmsToUpdate);\n },\n reset: () => {\n elmsToUpdate.forEach((elms) => elms.forEach(forceUpdate));\n cleanupElements(elmsToUpdate);\n },\n };\n};\n\nconst unwrap = (val) => (typeof val === 'function' ? val() : val);\nconst createObservableMap = (defaultState, shouldUpdate = (a, b) => a !== b) => {\n const unwrappedState = unwrap(defaultState);\n let states = new Map(Object.entries(unwrappedState !== null && unwrappedState !== void 0 ? unwrappedState : {}));\n const handlers = {\n dispose: [],\n get: [],\n set: [],\n reset: [],\n };\n const reset = () => {\n var _a;\n // When resetting the state, the default state may be a function - unwrap it to invoke it.\n // otherwise, the state won't be properly reset\n states = new Map(Object.entries((_a = unwrap(defaultState)) !== null && _a !== void 0 ? _a : {}));\n handlers.reset.forEach((cb) => cb());\n };\n const dispose = () => {\n // Call first dispose as resetting the state would\n // cause less updates ;)\n handlers.dispose.forEach((cb) => cb());\n reset();\n };\n const get = (propName) => {\n handlers.get.forEach((cb) => cb(propName));\n return states.get(propName);\n };\n const set = (propName, value) => {\n const oldValue = states.get(propName);\n if (shouldUpdate(value, oldValue, propName)) {\n states.set(propName, value);\n handlers.set.forEach((cb) => cb(propName, value, oldValue));\n }\n };\n const state = (typeof Proxy === 'undefined'\n ? {}\n : new Proxy(unwrappedState, {\n get(_, propName) {\n return get(propName);\n },\n ownKeys(_) {\n return Array.from(states.keys());\n },\n getOwnPropertyDescriptor() {\n return {\n enumerable: true,\n configurable: true,\n };\n },\n has(_, propName) {\n return states.has(propName);\n },\n set(_, propName, value) {\n set(propName, value);\n return true;\n },\n }));\n const on = (eventName, callback) => {\n handlers[eventName].push(callback);\n return () => {\n removeFromArray(handlers[eventName], callback);\n };\n };\n const onChange = (propName, cb) => {\n const unSet = on('set', (key, newValue) => {\n if (key === propName) {\n cb(newValue);\n }\n });\n // We need to unwrap the defaultState because it might be a function.\n // Otherwise we might not be sending the right reset value.\n const unReset = on('reset', () => cb(unwrap(defaultState)[propName]));\n return () => {\n unSet();\n unReset();\n };\n };\n const use = (...subscriptions) => {\n const unsubs = subscriptions.reduce((unsubs, subscription) => {\n if (subscription.set) {\n unsubs.push(on('set', subscription.set));\n }\n if (subscription.get) {\n unsubs.push(on('get', subscription.get));\n }\n if (subscription.reset) {\n unsubs.push(on('reset', subscription.reset));\n }\n if (subscription.dispose) {\n unsubs.push(on('dispose', subscription.dispose));\n }\n return unsubs;\n }, []);\n return () => unsubs.forEach((unsub) => unsub());\n };\n const forceUpdate = (key) => {\n const oldValue = states.get(key);\n handlers.set.forEach((cb) => cb(key, oldValue, oldValue));\n };\n return {\n state,\n get,\n set,\n on,\n onChange,\n use,\n dispose,\n reset,\n forceUpdate,\n };\n};\nconst removeFromArray = (array, item) => {\n const index = array.indexOf(item);\n if (index >= 0) {\n array[index] = array[array.length - 1];\n array.length--;\n }\n};\n\nconst createStore = (defaultState, shouldUpdate) => {\n const map = createObservableMap(defaultState, shouldUpdate);\n map.use(stencilSubscription());\n return map;\n};\n\nexport { createObservableMap, createStore };\n","@use \"~dso-toolkit/src/utilities\";\r\n\r\n:host {\r\n display: block;\r\n}\r\n\r\n@include utilities.box-sizing();\r\n","import { h, Component, ComponentInterface, Prop, Host, Method, Watch, Element } from \"@stencil/core\";\r\n\r\nimport { AccordionInternalState, AccordionVariant } from \"./accordion.interfaces\";\r\n\r\nimport { createStore } from \"@stencil/store\";\r\n\r\n@Component({\r\n tag: \"dso-accordion\",\r\n styleUrl: \"accordion.scss\",\r\n shadow: true,\r\n})\r\nexport class Accordion implements ComponentInterface {\r\n private accordionState: AccordionInternalState;\r\n\r\n @Element()\r\n host!: HTMLDsoAccordionElement;\r\n\r\n /**\r\n * The variant of the Accordion.\r\n */\r\n @Prop({ reflect: true })\r\n variant: AccordionVariant = \"default\";\r\n\r\n /**\r\n * Places the chevron at the opposite side.\r\n *\r\n * Note: this mode does not display `state`, `attachmentCount` or `status` props on Accordion Sections\r\n */\r\n @Prop({ reflect: true })\r\n reverseAlign = false;\r\n\r\n @Watch(\"variant\")\r\n updateVariant(variant: AccordionVariant = \"default\") {\r\n this.accordionState.variant = variant;\r\n }\r\n\r\n @Watch(\"reverseAlign\")\r\n updateReverseAlign(reverseAlign: boolean) {\r\n this.accordionState.reverseAlign = reverseAlign;\r\n }\r\n\r\n /**\r\n * @internal\r\n */\r\n @Method()\r\n async _getState(): Promise<AccordionInternalState> {\r\n return this.accordionState;\r\n }\r\n\r\n componentWillLoad() {\r\n this.accordionState.variant = this.variant;\r\n this.accordionState.reverseAlign = this.reverseAlign;\r\n }\r\n\r\n constructor() {\r\n const { state } = createStore<AccordionInternalState>({});\r\n\r\n this.accordionState = state;\r\n }\r\n\r\n render() {\r\n return (\r\n <Host class=\"dso-accordion\">\r\n <slot></slot>\r\n </Host>\r\n );\r\n }\r\n}\r\n"],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["globalScripts"],"sources":["@stencil/core/internal/app-globals"],"sourcesContent":["export const globalScripts = () => {};\n"],"mappings":"AAAY,MAACA,EAAgB,c"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{h as e,F as t,r as o,c as n}from"./p-701648d3.js";import{c as i}from"./p-8a1a6e56.js";const r=({owner:o,ancestors:n,item:s,index:a,level:l,setSize:c})=>{var d,h,p,u;return e("li",{key:s.id,class:i("tree-item",{"has-child":s.hasItems,"is-expanded":!!s.open&&!!((d=s.items)===null||d===void 0?void 0:d.length)}),role:"none"},e("div",{class:"tree-branch-control"},s.hasItems?e("div",{onClick:e=>o.itemClick(e,n,s)},e("dso-icon",{icon:s.open?"minus-square":"plus-square"})):e("dso-icon",null)),e("p",{class:i("tree-content",{active:s.active},{selected:s.selected}),tabindex:l===1&&a===0?0:-1,role:"treeitem","aria-expanded":s.hasItems?""+(!!s.open&&!!((h=s.items)===null||h===void 0?void 0:h.length)):undefined,"aria-current":s.active?"true":undefined,"aria-level":l,"aria-setsize":c,"aria-posinset":a+1,"aria-busy":s.loading?"true":undefined,"data-item-id":s.id,onClick:e=>o.itemClick(e,n,s)},s.selected&&e("span",{class:"sr-only"},"Resultaat: "),s.href?e("a",{href:s.href,tabindex:"-1"},s.label):e("span",null,s.label),(p=s.icons)===null||p===void 0?void 0:p.map((t=>e("dso-icon",{icon:t.icon,title:t.label})))),s.open&&e(t,null,s.hasItems&&!s.items&&s.loading?e("dso-progress-indicator",{size:"small",label:"Resultaten laden: een moment geduld alstublieft."}):e("ul",{role:"group"},(u=s.items)===null||u===void 0?void 0:u.map(((t,i,a)=>e(r,{owner:o,ancestors:[...n,s],item:t,index:i,level:l+1,setSize:a.length}))))))};const s=':host ul{list-style-type:none;padding-inline-start:32px;position:relative}:host li{position:relative}:host ul[role=tree]{padding-left:0}:host ul[role=group]::before{border-left:1px solid #275937;content:"";height:8px;left:44px;position:absolute;top:0;width:0}:host li:not(.has-child)::before{border-top:1px solid #275937;content:"";height:0;left:12px;position:absolute;top:20px;width:16px}:host li:not(.has-child)::after{border-left:1px solid #275937;content:"";height:100%;left:12px;position:absolute;top:8px;width:0}:host li:not(.has-child):last-child::after{height:20px;top:0}:host li.has-child::before{border-top:1px solid #275937;content:"";height:0;left:24px;position:absolute;top:20px;width:4px}:host li.has-child:not(:last-child)::after{border-left:1px solid #275937;content:"";height:calc(100% - 24px);left:12px;position:absolute;top:32px;width:0}:host li.has-child.is-expanded:last-child::after{border-left:1px solid #275937;content:"";height:calc(100% - 32px);left:12px;position:absolute;top:32px;width:0}:host .tree-branch-control{color:#39870c;display:inline-block;font-size:16px;margin:8px 8px 8px 0;vertical-align:top}:host .tree-branch-control>div{cursor:pointer}:host .tree-content{cursor:pointer;display:inline-block;margin:8px 0;max-width:calc(100% - 40px)}:host .tree-content a{color:#191919;text-decoration:underline}:host .tree-content a:hover,:host .tree-content a:focus{color:#191919;text-decoration:none}:host .tree-content a:active{text-decoration:none}:host .tree-content.selected{color:#191919;font-weight:700;text-decoration:underline}:host .tree-content.selected:hover,:host .tree-content.selected:focus{text-decoration:none}:host .tree-content.active{color:#8b4a6a;font-style:italic;font-weight:700;text-decoration:underline}:host .tree-content.active:hover,:host .tree-content.active:focus{text-decoration:none}:host .tree-content.active a{color:#8b4a6a}:host .tree-content.active a:hover,:host .tree-content.active a:focus{text-decoration:none}:host .tree-content dso-icon{color:#39870c;font-size:0.75em;margin-left:0.5em;vertical-align:text-bottom}*,*::after,*::before{box-sizing:border-box}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);border:0}';const a=s;const l=class{constructor(e){o(this,e);this.dsoOpenItem=n(this,"dsoOpenItem",7);this.dsoCloseItem=n(this,"dsoCloseItem",7);this.dsoClickItem=n(this,"dsoClickItem",7);this.keyDownListener=e=>{if(e.defaultPrevented){return}const t=e=>e.length===1&&e.match(/\S/);const o=e.composedPath().find((e=>e instanceof HTMLElement?e.className==="dso-tree":false));if(!(e.target instanceof HTMLParagraphElement)||!(o instanceof HTMLElement)){return}switch(e.key){case"ArrowDown":l.moveFocus(o,e.target,"next");break;case"ArrowUp":l.moveFocus(o,e.target,"previous");break;case"ArrowRight":l.expandItemOrFocusChild(o,e.target);break;case"ArrowLeft":l.collapseItemOrFocusParent(o,e.target);break;case"End":l.moveFocus(o,e.target,"last");break;case"Home":l.moveFocus(o,e.target,"first");break;case"Enter":case" ":e.target.click();break;default:if(t(e.key)){if(l.setFocusByFirstCharacter(o,e.target,e.key,e.shiftKey)){break}}return}e.preventDefault()};this.itemClick=(e,t,o)=>{if(!(e.target instanceof HTMLElement)){return}const n=e.target.closest(".tree-content");if(n){const i=e.composedPath().find((e=>e instanceof HTMLElement?e.className==="dso-tree":false));if(!(n instanceof HTMLParagraphElement)||!(i instanceof HTMLElement)){return}l.setFocus(i,n);this.dsoClickItem.emit({path:[...t,o],originalEvent:e});return}if(o.open){this.dsoCloseItem.emit([...t,o])}else{this.dsoOpenItem.emit([...t,o])}};this.collection=undefined}async focusItem(e){var t;const o=this.tree;if(!o||e.length===0){return false}const n=e[e.length-1];if(!n){throw new Error("No itemToFocus found")}const i=Array.from((t=o.querySelectorAll("p"))!==null&&t!==void 0?t:[]).filter((e=>e.offsetWidth>0&&e.offsetHeight>0)).find((e=>e.dataset["itemId"]===n.id));if(!i){return false}l.setFocus(o,i);return true}static setFocus(e,t){if(t){Array.from(e.querySelectorAll("p")).filter((e=>e.tabIndex===0)).forEach((e=>e.tabIndex=-1));t.tabIndex=0;t.focus()}}static moveFocus(e,t,o){const n=Array.from(e.querySelectorAll("p")).filter((e=>e.offsetWidth>0&&e.offsetHeight>0));let i=0;switch(o){case"first":i=0;break;case"previous":i=n.indexOf(t)-1;break;case"next":i=n.indexOf(t)+1;break;case"last":i=n.length-1;break}const r=n[i];if(!r){throw new Error("No focusableItem found")}l.setFocus(e,r)}static expandItemOrFocusChild(e,t){var o;if((t===null||t===void 0?void 0:t.getAttribute("aria-expanded"))==="true"){l.moveFocus(e,t,"next")}else{const e=(o=t.previousElementSibling)===null||o===void 0?void 0:o.firstElementChild;if(e instanceof HTMLElement){e.click()}}}static collapseItemOrFocusParent(e,t){var o,n,i;if((t===null||t===void 0?void 0:t.getAttribute("aria-expanded"))==="true"){const e=(o=t.previousElementSibling)===null||o===void 0?void 0:o.firstElementChild;if(e instanceof HTMLElement){e.click()}}else{const o=(i=(n=t===null||t===void 0?void 0:t.parentElement)===null||n===void 0?void 0:n.parentElement)===null||i===void 0?void 0:i.previousElementSibling;if(o instanceof HTMLElement){l.setFocus(e,o)}}}static setFocusByFirstCharacter(e,t,o,n){const i=Array.from(e.querySelectorAll("p")).filter((e=>e.offsetWidth>0&&e.offsetHeight>0));if(n){i.reverse()}const r=i.indexOf(t);o=o.toLowerCase();let s=i.find(((e,t)=>{var n;return t>r&&((n=e.textContent)===null||n===void 0?void 0:n.toLowerCase().startsWith(o))}));if(!s){s=i.find(((e,t)=>{var n;return t<r&&((n=e.textContent)===null||n===void 0?void 0:n.toLowerCase().startsWith(o))}))}if(s){l.setFocus(e,s);return true}return false}render(){var t;return e("div",{key:"7caf849d7004716c1fc48ce1aec4ccedb1068364",id:"tree",class:"dso-tree",onKeyDown:e=>this.keyDownListener(e),ref:e=>this.tree=e},e("ul",{key:"634cdcdda153d1200dba326e2fe70f0fc41e5668",role:"tree","aria-label":"Objectenboom"},(t=this.collection)===null||t===void 0?void 0:t.map(((t,o)=>e(r,{owner:this,ancestors:[],item:t,index:o,level:1,setSize:this.collection.length})))))}};l.style=a;export{l as dso_tree_view};
|
|
2
|
+
//# sourceMappingURL=p-e3b54b03.entry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["DsoTreeItem","owner","ancestors","item","index","level","setSize","h","key","id","class","clsx","hasItems","open","_a","items","length","role","onClick","e","itemClick","icon","active","selected","tabindex","_b","undefined","loading","href","label","_c","icons","map","title","Fragment","size","_d","childItem","childIndex","org","treeViewCss","DsoTreeViewStyle0","TreeView","this","keyDownListener","event","defaultPrevented","isIndexLetter","str","match","tree","composedPath","find","HTMLElement","className","target","HTMLParagraphElement","moveFocus","expandItemOrFocusChild","collapseItemOrFocusParent","click","setFocusByFirstCharacter","shiftKey","preventDefault","contentElement","closest","eventTarget","setFocus","dsoClickItem","emit","path","originalEvent","dsoCloseItem","dsoOpenItem","focusItem","itemToFocus","Error","elementToFocus","Array","from","querySelectorAll","filter","offsetWidth","offsetHeight","dataset","tabIndex","forEach","focus","el","moveTo","focusableItems","indexOf","focusableItem","getAttribute","controlElement","previousElementSibling","firstElementChild","parentTarget","parentElement","char","backwards","reverse","current","toLowerCase","nextItem","textContent","startsWith","render","onKeyDown","ref","element","collection"],"sources":["src/components/tree-view/tree-item.tsx","src/components/tree-view/tree-view.scss?tag=dso-tree-view&encapsulation=shadow","src/components/tree-view/tree-view.tsx"],"sourcesContent":["import { h, FunctionalComponent, Fragment } from \"@stencil/core\";\r\nimport clsx from \"clsx\";\r\nimport { TreeViewItem, TreeViewItemIcon } from \"./tree-view.interfaces\";\r\n\r\nimport { TreeView } from \"./tree-view\";\r\n\r\ninterface TreeViewItemProps {\r\n owner: TreeView;\r\n ancestors: TreeViewItem[];\r\n item: TreeViewItem;\r\n index: number;\r\n level: number;\r\n setSize: number;\r\n}\r\n\r\nexport const DsoTreeItem: FunctionalComponent<TreeViewItemProps> = ({\r\n owner,\r\n ancestors,\r\n item,\r\n index,\r\n level,\r\n setSize,\r\n}) => (\r\n <li\r\n key={item.id}\r\n class={clsx(\"tree-item\", { \"has-child\": item.hasItems, \"is-expanded\": !!item.open && !!item.items?.length })}\r\n role=\"none\"\r\n >\r\n <div class=\"tree-branch-control\">\r\n {item.hasItems ? (\r\n <div onClick={(e) => owner.itemClick(e, ancestors, item)}>\r\n <dso-icon icon={item.open ? \"minus-square\" : \"plus-square\"}></dso-icon>\r\n </div>\r\n ) : (\r\n <dso-icon></dso-icon>\r\n )}\r\n </div>\r\n <p\r\n class={clsx(\"tree-content\", { active: item.active }, { selected: item.selected })}\r\n tabindex={level === 1 && index === 0 ? 0 : -1}\r\n role=\"treeitem\"\r\n aria-expanded={item.hasItems ? \"\" + (!!item.open && !!item.items?.length) : undefined}\r\n aria-current={item.active ? \"true\" : undefined}\r\n aria-level={level}\r\n aria-setsize={setSize}\r\n aria-posinset={index + 1}\r\n aria-busy={item.loading ? \"true\" : undefined}\r\n data-item-id={item.id}\r\n onClick={(e) => owner.itemClick(e, ancestors, item)}\r\n >\r\n {item.selected && <span class=\"sr-only\">Resultaat: </span>}\r\n {item.href ? (\r\n <a href={item.href} tabindex=\"-1\">\r\n {item.label}\r\n </a>\r\n ) : (\r\n <span>{item.label}</span>\r\n )}\r\n {item.icons?.map((icon: TreeViewItemIcon) => <dso-icon icon={icon.icon} title={icon.label}></dso-icon>)}\r\n </p>\r\n {item.open && (\r\n <>\r\n {item.hasItems && !item.items && item.loading ? (\r\n <dso-progress-indicator size=\"small\" label=\"Resultaten laden: een moment geduld alstublieft.\" />\r\n ) : (\r\n <ul role=\"group\">\r\n {item.items?.map((childItem: TreeViewItem, childIndex: number, org: TreeViewItem[]) => (\r\n <DsoTreeItem\r\n owner={owner}\r\n ancestors={[...ancestors, item]}\r\n item={childItem}\r\n index={childIndex}\r\n level={level + 1}\r\n setSize={org.length}\r\n ></DsoTreeItem>\r\n ))}\r\n </ul>\r\n )}\r\n </>\r\n )}\r\n </li>\r\n);\r\n","@use \"sass:math\";\r\n\r\n@use \"~dso-toolkit/src/utilities\";\r\n@use \"~dso-toolkit/src/variables/colors\";\r\n@use \"~dso-toolkit/src/variables/scaffolding\";\r\n\r\n@use \"tree-view.mixins\" as core-tree-view-mixins;\r\n@use \"tree-view.variables\" as core-tree-view-variables;\r\n\r\n:host {\r\n ul {\r\n list-style-type: none;\r\n padding-inline-start: core-tree-view-variables.$indent;\r\n position: relative;\r\n }\r\n\r\n li {\r\n position: relative;\r\n }\r\n\r\n ul[role=\"tree\"] {\r\n padding-left: 0;\r\n }\r\n\r\n // connects branch or leaf to parent\r\n ul[role=\"group\"]::before {\r\n @include core-tree-view-mixins.vertical-line(\r\n core-tree-view-variables.$indent + core-tree-view-variables.$hcenter,\r\n 0,\r\n core-tree-view-variables.$vspace\r\n );\r\n }\r\n\r\n li:not(.has-child) {\r\n // horizontal connector for a leaf\r\n &::before {\r\n @include core-tree-view-mixins.horizontal-line(\r\n core-tree-view-variables.$hcenter,\r\n core-tree-view-variables.$vcenter,\r\n core-tree-view-variables.$hspace + 0.5 * core-tree-view-variables.$icon-size - 4px\r\n );\r\n }\r\n\r\n // vertical connector for a leaf\r\n &::after {\r\n @include core-tree-view-mixins.vertical-line(\r\n core-tree-view-variables.$hcenter,\r\n core-tree-view-variables.$vspace,\r\n 100%\r\n );\r\n }\r\n\r\n // vertical connector for the last leaf\r\n &:last-child::after {\r\n height: core-tree-view-variables.$vcenter;\r\n top: 0;\r\n }\r\n }\r\n\r\n li.has-child {\r\n // horizontal connector for a branch\r\n &::before {\r\n @include core-tree-view-mixins.horizontal-line(\r\n core-tree-view-variables.$icon-size,\r\n core-tree-view-variables.$vcenter,\r\n core-tree-view-variables.$hspace - 4px\r\n );\r\n }\r\n\r\n // vertical connector for a branch (not last)\r\n &:not(:last-child)::after {\r\n @include core-tree-view-mixins.vertical-line(\r\n core-tree-view-variables.$hcenter,\r\n core-tree-view-variables.$vcenter + 0.5 * core-tree-view-variables.$icon-size,\r\n calc(100% - core-tree-view-variables.$icon-size)\r\n );\r\n }\r\n\r\n // vertical line after a expanded branch (creating dead ends)\r\n &.is-expanded:last-child::after {\r\n @include core-tree-view-mixins.vertical-line(\r\n core-tree-view-variables.$hcenter,\r\n core-tree-view-variables.$vcenter + 0.5 * core-tree-view-variables.$icon-size,\r\n calc(100% - (core-tree-view-variables.$vcenter + 0.5 * core-tree-view-variables.$icon-size))\r\n );\r\n }\r\n }\r\n\r\n .tree-branch-control {\r\n color: colors.$grasgroen;\r\n display: inline-block;\r\n font-size: math.div(2 * core-tree-view-variables.$icon-size, 3);\r\n margin: core-tree-view-variables.$vspace core-tree-view-variables.$hspace core-tree-view-variables.$vspace 0;\r\n vertical-align: top;\r\n\r\n > div {\r\n cursor: pointer;\r\n }\r\n }\r\n\r\n .tree-content {\r\n cursor: pointer;\r\n display: inline-block;\r\n margin: core-tree-view-variables.$vspace 0;\r\n max-width: calc(100% - (core-tree-view-variables.$indent + core-tree-view-variables.$hspace));\r\n\r\n a {\r\n color: scaffolding.$text-color;\r\n text-decoration: underline;\r\n\r\n &:hover,\r\n &:focus {\r\n color: scaffolding.$text-color;\r\n text-decoration: none;\r\n }\r\n\r\n &:active {\r\n text-decoration: none;\r\n }\r\n }\r\n\r\n &.selected {\r\n color: scaffolding.$text-color;\r\n font-weight: 700;\r\n text-decoration: underline;\r\n\r\n &:hover,\r\n &:focus {\r\n text-decoration: none;\r\n }\r\n }\r\n\r\n &.active {\r\n color: colors.$mauve;\r\n font-style: italic;\r\n font-weight: 700;\r\n\r\n text-decoration: underline;\r\n\r\n &:hover,\r\n &:focus {\r\n text-decoration: none;\r\n }\r\n\r\n a {\r\n color: colors.$mauve;\r\n\r\n &:hover,\r\n &:focus {\r\n text-decoration: none;\r\n }\r\n }\r\n }\r\n\r\n dso-icon {\r\n color: colors.$grasgroen;\r\n font-size: 0.75em;\r\n margin-left: 0.5em;\r\n vertical-align: text-bottom;\r\n }\r\n }\r\n}\r\n\r\n@include utilities.box-sizing();\r\n\r\n.sr-only {\r\n @include utilities.sr-only();\r\n}\r\n","import { h, Component, ComponentInterface, Event, EventEmitter, Prop, Method } from \"@stencil/core\";\r\n\r\nimport { TreeViewPointerEvent, TreeViewItem } from \"./tree-view.interfaces\";\r\nimport { DsoTreeItem } from \"./tree-item\";\r\n\r\n@Component({\r\n tag: \"dso-tree-view\",\r\n styleUrl: \"./tree-view.scss\",\r\n shadow: true,\r\n})\r\nexport class TreeView implements ComponentInterface {\r\n private tree?: HTMLElement;\r\n\r\n /**\r\n * The collection of TreeViewItems\r\n */\r\n @Prop()\r\n collection!: TreeViewItem[];\r\n\r\n /**\r\n * Emitted when a tree view item is opened.\r\n * The `detail` property of the `CustomEvent` will contain the complete path of TreeViewItems from the\r\n * root to the item that is emitting the open event. The consumer of the event is responsible for updating\r\n * the TreeView's collection (usually set the open state on the last TreeViewItem in path).\r\n */\r\n @Event()\r\n dsoOpenItem!: EventEmitter<TreeViewItem[]>;\r\n\r\n /**\r\n * Emitted when a tree view item is closed.\r\n * The `detail` property of the `CustomEvent` will contain the complete path of TreeViewItems from the\r\n * root to the item that is emitting the close event. The consumer of the event is responsible for updating\r\n * the TreeView's collection (usually set the closed state on the last TreeViewItem in path).\r\n */\r\n @Event()\r\n dsoCloseItem!: EventEmitter<TreeViewItem[]>;\r\n\r\n /**\r\n * Emitted when a tree view item is clicked.\r\n * The `detail` property of the `CustomEvent` will contain an object with:\r\n * `path` = the complete path of TreeViewItems from the root to the item that is emitting the clicked event.\r\n * `originalEvent` = the original click event.\r\n * The consumer of the event is responsible for updating the TreeView's collection (usually set the active\r\n * state on the last TreeViewItem in path and clear all other active item states).\r\n */\r\n @Event()\r\n dsoClickItem!: EventEmitter<TreeViewPointerEvent>;\r\n\r\n /**\r\n * Set focus on the last item in the specified path.\r\n * The consumer is responsible for providing a TreeView collection where the last item is visible.\r\n * @async\r\n * @returns Whether the item was found.\r\n */\r\n @Method()\r\n async focusItem(path: TreeViewItem[]): Promise<boolean> {\r\n const tree = this.tree;\r\n\r\n if (!tree || path.length === 0) {\r\n return false;\r\n }\r\n\r\n const itemToFocus = path[path.length - 1];\r\n if (!itemToFocus) {\r\n throw new Error(\"No itemToFocus found\");\r\n }\r\n\r\n const elementToFocus = (Array.from(tree.querySelectorAll(\"p\") ?? []) as HTMLElement[])\r\n .filter((item) => item.offsetWidth > 0 && item.offsetHeight > 0)\r\n .find((item) => item.dataset[\"itemId\"] === itemToFocus.id);\r\n\r\n if (!elementToFocus) {\r\n return false;\r\n }\r\n\r\n TreeView.setFocus(tree, elementToFocus);\r\n\r\n return true;\r\n }\r\n\r\n private keyDownListener = (event: KeyboardEvent) => {\r\n if (event.defaultPrevented) {\r\n return;\r\n }\r\n\r\n const isIndexLetter = (str: string) => str.length === 1 && str.match(/\\S/);\r\n\r\n const tree = event\r\n .composedPath()\r\n .find((item) => (item instanceof HTMLElement ? item.className === \"dso-tree\" : false));\r\n\r\n if (!(event.target instanceof HTMLParagraphElement) || !(tree instanceof HTMLElement)) {\r\n return;\r\n }\r\n\r\n switch (event.key) {\r\n case \"ArrowDown\":\r\n TreeView.moveFocus(tree, event.target, \"next\");\r\n break;\r\n case \"ArrowUp\":\r\n TreeView.moveFocus(tree, event.target, \"previous\");\r\n break;\r\n case \"ArrowRight\":\r\n TreeView.expandItemOrFocusChild(tree, event.target);\r\n break;\r\n case \"ArrowLeft\":\r\n TreeView.collapseItemOrFocusParent(tree, event.target);\r\n break;\r\n case \"End\":\r\n TreeView.moveFocus(tree, event.target, \"last\");\r\n break;\r\n case \"Home\":\r\n TreeView.moveFocus(tree, event.target, \"first\");\r\n break;\r\n case \"Enter\":\r\n case \" \":\r\n event.target.click();\r\n break;\r\n default:\r\n if (isIndexLetter(event.key)) {\r\n if (TreeView.setFocusByFirstCharacter(tree, event.target, event.key, event.shiftKey)) {\r\n break;\r\n }\r\n }\r\n\r\n return;\r\n }\r\n\r\n event.preventDefault();\r\n };\r\n\r\n // eslint-disable-next-line @stencil-community/own-props-must-be-private -- Omdat this als TreeView instance aan Functionele Components wordt gegeven\r\n itemClick = (event: MouseEvent, ancestors: TreeViewItem[], item: TreeViewItem) => {\r\n if (!(event.target instanceof HTMLElement)) {\r\n return;\r\n }\r\n\r\n const contentElement = event.target.closest(\".tree-content\");\r\n\r\n if (contentElement) {\r\n const tree = event\r\n .composedPath()\r\n .find((eventTarget) => (eventTarget instanceof HTMLElement ? eventTarget.className === \"dso-tree\" : false));\r\n if (!(contentElement instanceof HTMLParagraphElement) || !(tree instanceof HTMLElement)) {\r\n return;\r\n }\r\n\r\n TreeView.setFocus(tree, contentElement);\r\n this.dsoClickItem.emit({ path: [...ancestors, item], originalEvent: event });\r\n\r\n return;\r\n }\r\n\r\n if (item.open) {\r\n this.dsoCloseItem.emit([...ancestors, item]);\r\n } else {\r\n this.dsoOpenItem.emit([...ancestors, item]);\r\n }\r\n };\r\n\r\n private static setFocus(tree: HTMLElement, target: HTMLElement) {\r\n if (target) {\r\n (Array.from(tree.querySelectorAll(\"p\")) as HTMLElement[])\r\n .filter((item) => item.tabIndex === 0)\r\n .forEach((item) => (item.tabIndex = -1));\r\n\r\n target.tabIndex = 0;\r\n target.focus();\r\n }\r\n }\r\n\r\n private static moveFocus(tree: HTMLElement, el: HTMLElement, moveTo: \"first\" | \"previous\" | \"next\" | \"last\"): void {\r\n const focusableItems = (Array.from(tree.querySelectorAll(\"p\")) as HTMLElement[]).filter(\r\n (item) => item.offsetWidth > 0 && item.offsetHeight > 0,\r\n );\r\n\r\n let index = 0;\r\n switch (moveTo) {\r\n case \"first\":\r\n index = 0;\r\n break;\r\n case \"previous\":\r\n index = focusableItems.indexOf(el) - 1;\r\n break;\r\n case \"next\":\r\n index = focusableItems.indexOf(el) + 1;\r\n break;\r\n case \"last\":\r\n index = focusableItems.length - 1;\r\n break;\r\n }\r\n\r\n const focusableItem = focusableItems[index];\r\n if (!focusableItem) {\r\n throw new Error(\"No focusableItem found\");\r\n }\r\n\r\n TreeView.setFocus(tree, focusableItem);\r\n }\r\n\r\n private static expandItemOrFocusChild(tree: HTMLElement, target: HTMLElement): void {\r\n if (target?.getAttribute(\"aria-expanded\") === \"true\") {\r\n TreeView.moveFocus(tree, target, \"next\");\r\n } else {\r\n const controlElement = target.previousElementSibling?.firstElementChild;\r\n if (controlElement instanceof HTMLElement) {\r\n controlElement.click();\r\n }\r\n }\r\n }\r\n\r\n private static collapseItemOrFocusParent(tree: HTMLElement, target: HTMLElement): void {\r\n if (target?.getAttribute(\"aria-expanded\") === \"true\") {\r\n const controlElement = target.previousElementSibling?.firstElementChild;\r\n if (controlElement instanceof HTMLElement) {\r\n controlElement.click();\r\n }\r\n } else {\r\n const parentTarget = target?.parentElement?.parentElement?.previousElementSibling;\r\n if (parentTarget instanceof HTMLElement) {\r\n TreeView.setFocus(tree, parentTarget);\r\n }\r\n }\r\n }\r\n\r\n private static setFocusByFirstCharacter(\r\n tree: HTMLElement,\r\n el: HTMLElement,\r\n char: string,\r\n backwards: boolean,\r\n ): boolean {\r\n const focusableItems = (Array.from(tree.querySelectorAll(\"p\")) as HTMLElement[]).filter(\r\n (item) => item.offsetWidth > 0 && item.offsetHeight > 0,\r\n );\r\n\r\n if (backwards) {\r\n focusableItems.reverse();\r\n }\r\n\r\n const current = focusableItems.indexOf(el);\r\n\r\n char = char.toLowerCase();\r\n let nextItem = focusableItems.find(\r\n (item, index) => index > current && item.textContent?.toLowerCase().startsWith(char),\r\n );\r\n if (!nextItem) {\r\n nextItem = focusableItems.find(\r\n (item, index) => index < current && item.textContent?.toLowerCase().startsWith(char),\r\n );\r\n }\r\n\r\n if (nextItem) {\r\n TreeView.setFocus(tree, nextItem);\r\n return true;\r\n }\r\n\r\n return false;\r\n }\r\n\r\n render() {\r\n return (\r\n <div\r\n id=\"tree\"\r\n class=\"dso-tree\"\r\n onKeyDown={(e) => this.keyDownListener(e)}\r\n ref={(element) => (this.tree = element)}\r\n >\r\n <ul role=\"tree\" aria-label=\"Objectenboom\">\r\n {this.collection?.map((item, index) => (\r\n <DsoTreeItem\r\n owner={this}\r\n ancestors={[]}\r\n item={item}\r\n index={index}\r\n level={1}\r\n setSize={this.collection.length}\r\n ></DsoTreeItem>\r\n ))}\r\n </ul>\r\n </div>\r\n );\r\n }\r\n}\r\n"],"mappings":"6FAeO,MAAMA,EAAsD,EACjEC,QACAC,YACAC,OACAC,QACAC,QACAC,c,YACI,OACJC,EAAA,MACEC,IAAKL,EAAKM,GACVC,MAAOC,EAAK,YAAa,CAAE,YAAaR,EAAKS,SAAU,gBAAiBT,EAAKU,UAAUC,EAAAX,EAAKY,SAAK,MAAAD,SAAA,SAAAA,EAAEE,UACnGC,KAAK,QAELV,EAAA,OAAKG,MAAM,uBACRP,EAAKS,SACJL,EAAA,OAAKW,QAAUC,GAAMlB,EAAMmB,UAAUD,EAAGjB,EAAWC,IACjDI,EAAA,YAAUc,KAAMlB,EAAKU,KAAO,eAAiB,iBAG/CN,EAAA,kBAGJA,EAAA,KACEG,MAAOC,EAAK,eAAgB,CAAEW,OAAQnB,EAAKmB,QAAU,CAAEC,SAAUpB,EAAKoB,WACtEC,SAAUnB,IAAU,GAAKD,IAAU,EAAI,GAAK,EAC5Ca,KAAK,WAAU,gBACAd,EAAKS,SAAW,MAAQT,EAAKU,UAAUY,EAAAtB,EAAKY,SAAK,MAAAU,SAAA,SAAAA,EAAET,SAAUU,UAAS,eACvEvB,EAAKmB,OAAS,OAASI,UAAS,aAClCrB,EAAK,eACHC,EAAO,gBACNF,EAAQ,EAAC,YACbD,EAAKwB,QAAU,OAASD,UAAS,eAC9BvB,EAAKM,GACnBS,QAAUC,GAAMlB,EAAMmB,UAAUD,EAAGjB,EAAWC,IAE7CA,EAAKoB,UAAYhB,EAAA,QAAMG,MAAM,WAAS,eACtCP,EAAKyB,KACJrB,EAAA,KAAGqB,KAAMzB,EAAKyB,KAAMJ,SAAS,MAC1BrB,EAAK0B,OAGRtB,EAAA,YAAOJ,EAAK0B,QAEbC,EAAA3B,EAAK4B,SAAK,MAAAD,SAAA,S,EAAEE,KAAKX,GAA2Bd,EAAA,YAAUc,KAAMA,EAAKA,KAAMY,MAAOZ,EAAKQ,WAErF1B,EAAKU,MACJN,EAAA2B,EAAA,KACG/B,EAAKS,WAAaT,EAAKY,OAASZ,EAAKwB,QACpCpB,EAAA,0BAAwB4B,KAAK,QAAQN,MAAM,qDAE3CtB,EAAA,MAAIU,KAAK,UACNmB,EAAAjC,EAAKY,SAAK,MAAAqB,SAAA,SAAAA,EAAEJ,KAAI,CAACK,EAAyBC,EAAoBC,IAC7DhC,EAACP,EAAW,CACVC,MAAOA,EACPC,UAAW,IAAIA,EAAWC,GAC1BA,KAAMkC,EACNjC,MAAOkC,EACPjC,MAAOA,EAAQ,EACfC,QAASiC,EAAIvB,aAOtB,EChFP,MAAMwB,EAAc,qsEACpB,MAAAC,EAAeD,E,MCSFE,EAAQ,M,wJAsEXC,KAAAC,gBAAmBC,IACzB,GAAIA,EAAMC,iBAAkB,CAC1B,M,CAGF,MAAMC,EAAiBC,GAAgBA,EAAIhC,SAAW,GAAKgC,EAAIC,MAAM,MAErE,MAAMC,EAAOL,EACVM,eACAC,MAAMjD,GAAUA,aAAgBkD,YAAclD,EAAKmD,YAAc,WAAa,QAEjF,KAAMT,EAAMU,kBAAkBC,yBAA2BN,aAAgBG,aAAc,CACrF,M,CAGF,OAAQR,EAAMrC,KACZ,IAAK,YACHkC,EAASe,UAAUP,EAAML,EAAMU,OAAQ,QACvC,MACF,IAAK,UACHb,EAASe,UAAUP,EAAML,EAAMU,OAAQ,YACvC,MACF,IAAK,aACHb,EAASgB,uBAAuBR,EAAML,EAAMU,QAC5C,MACF,IAAK,YACHb,EAASiB,0BAA0BT,EAAML,EAAMU,QAC/C,MACF,IAAK,MACHb,EAASe,UAAUP,EAAML,EAAMU,OAAQ,QACvC,MACF,IAAK,OACHb,EAASe,UAAUP,EAAML,EAAMU,OAAQ,SACvC,MACF,IAAK,QACL,IAAK,IACHV,EAAMU,OAAOK,QACb,MACF,QACE,GAAIb,EAAcF,EAAMrC,KAAM,CAC5B,GAAIkC,EAASmB,yBAAyBX,EAAML,EAAMU,OAAQV,EAAMrC,IAAKqC,EAAMiB,UAAW,CACpF,K,EAIJ,OAGJjB,EAAMkB,gBAAgB,EAIxBpB,KAAAvB,UAAY,CAACyB,EAAmB3C,EAA2BC,KACzD,KAAM0C,EAAMU,kBAAkBF,aAAc,CAC1C,M,CAGF,MAAMW,EAAiBnB,EAAMU,OAAOU,QAAQ,iBAE5C,GAAID,EAAgB,CAClB,MAAMd,EAAOL,EACVM,eACAC,MAAMc,GAAiBA,aAAuBb,YAAca,EAAYZ,YAAc,WAAa,QACtG,KAAMU,aAA0BR,yBAA2BN,aAAgBG,aAAc,CACvF,M,CAGFX,EAASyB,SAASjB,EAAMc,GACxBrB,KAAKyB,aAAaC,KAAK,CAAEC,KAAM,IAAIpE,EAAWC,GAAOoE,cAAe1B,IAEpE,M,CAGF,GAAI1C,EAAKU,KAAM,CACb8B,KAAK6B,aAAaH,KAAK,IAAInE,EAAWC,G,KACjC,CACLwC,KAAK8B,YAAYJ,KAAK,IAAInE,EAAWC,G,6BArGzC,eAAMuE,CAAUJ,G,MACd,MAAMpB,EAAOP,KAAKO,KAElB,IAAKA,GAAQoB,EAAKtD,SAAW,EAAG,CAC9B,OAAO,K,CAGT,MAAM2D,EAAcL,EAAKA,EAAKtD,OAAS,GACvC,IAAK2D,EAAa,CAChB,MAAM,IAAIC,MAAM,uB,CAGlB,MAAMC,EAAkBC,MAAMC,MAAKjE,EAAAoC,EAAK8B,iBAAiB,QAAI,MAAAlE,SAAA,EAAAA,EAAI,IAC9DmE,QAAQ9E,GAASA,EAAK+E,YAAc,GAAK/E,EAAKgF,aAAe,IAC7D/B,MAAMjD,GAASA,EAAKiF,QAAQ,YAAcT,EAAYlE,KAEzD,IAAKoE,EAAgB,CACnB,OAAO,K,CAGTnC,EAASyB,SAASjB,EAAM2B,GAExB,OAAO,I,CAmFD,eAAOV,CAASjB,EAAmBK,GACzC,GAAIA,EAAQ,CACTuB,MAAMC,KAAK7B,EAAK8B,iBAAiB,MAC/BC,QAAQ9E,GAASA,EAAKkF,WAAa,IACnCC,SAASnF,GAAUA,EAAKkF,UAAY,IAEvC9B,EAAO8B,SAAW,EAClB9B,EAAOgC,O,EAIH,gBAAO9B,CAAUP,EAAmBsC,EAAiBC,GAC3D,MAAMC,EAAkBZ,MAAMC,KAAK7B,EAAK8B,iBAAiB,MAAwBC,QAC9E9E,GAASA,EAAK+E,YAAc,GAAK/E,EAAKgF,aAAe,IAGxD,IAAI/E,EAAQ,EACZ,OAAQqF,GACN,IAAK,QACHrF,EAAQ,EACR,MACF,IAAK,WACHA,EAAQsF,EAAeC,QAAQH,GAAM,EACrC,MACF,IAAK,OACHpF,EAAQsF,EAAeC,QAAQH,GAAM,EACrC,MACF,IAAK,OACHpF,EAAQsF,EAAe1E,OAAS,EAChC,MAGJ,MAAM4E,EAAgBF,EAAetF,GACrC,IAAKwF,EAAe,CAClB,MAAM,IAAIhB,MAAM,yB,CAGlBlC,EAASyB,SAASjB,EAAM0C,E,CAGlB,6BAAOlC,CAAuBR,EAAmBK,G,MACvD,IAAIA,IAAM,MAANA,SAAM,SAANA,EAAQsC,aAAa,oBAAqB,OAAQ,CACpDnD,EAASe,UAAUP,EAAMK,EAAQ,O,KAC5B,CACL,MAAMuC,GAAiBhF,EAAAyC,EAAOwC,0BAAsB,MAAAjF,SAAA,SAAAA,EAAEkF,kBACtD,GAAIF,aAA0BzC,YAAa,CACzCyC,EAAelC,O,GAKb,gCAAOD,CAA0BT,EAAmBK,G,UAC1D,IAAIA,IAAM,MAANA,SAAM,SAANA,EAAQsC,aAAa,oBAAqB,OAAQ,CACpD,MAAMC,GAAiBhF,EAAAyC,EAAOwC,0BAAsB,MAAAjF,SAAA,SAAAA,EAAEkF,kBACtD,GAAIF,aAA0BzC,YAAa,CACzCyC,EAAelC,O,MAEZ,CACL,MAAMqC,GAAenE,GAAAL,EAAA8B,IAAM,MAANA,SAAM,SAANA,EAAQ2C,iBAAa,MAAAzE,SAAA,SAAAA,EAAEyE,iBAAa,MAAApE,SAAA,SAAAA,EAAEiE,uBAC3D,GAAIE,aAAwB5C,YAAa,CACvCX,EAASyB,SAASjB,EAAM+C,E,GAKtB,+BAAOpC,CACbX,EACAsC,EACAW,EACAC,GAEA,MAAMV,EAAkBZ,MAAMC,KAAK7B,EAAK8B,iBAAiB,MAAwBC,QAC9E9E,GAASA,EAAK+E,YAAc,GAAK/E,EAAKgF,aAAe,IAGxD,GAAIiB,EAAW,CACbV,EAAeW,S,CAGjB,MAAMC,EAAUZ,EAAeC,QAAQH,GAEvCW,EAAOA,EAAKI,cACZ,IAAIC,EAAWd,EAAetC,MAC5B,CAACjD,EAAMC,KAAK,IAAAU,EAAK,OAAAV,EAAQkG,KAAWxF,EAAAX,EAAKsG,eAAW,MAAA3F,SAAA,SAAAA,EAAEyF,cAAcG,WAAWP,GAAK,IAEtF,IAAKK,EAAU,CACbA,EAAWd,EAAetC,MACxB,CAACjD,EAAMC,KAAK,IAAAU,EAAK,OAAAV,EAAQkG,KAAWxF,EAAAX,EAAKsG,eAAW,MAAA3F,SAAA,SAAAA,EAAEyF,cAAcG,WAAWP,GAAK,G,CAIxF,GAAIK,EAAU,CACZ9D,EAASyB,SAASjB,EAAMsD,GACxB,OAAO,I,CAGT,OAAO,K,CAGT,MAAAG,G,MACE,OACEpG,EAAA,OAAAC,IAAA,2CACEC,GAAG,OACHC,MAAM,WACNkG,UAAYzF,GAAMwB,KAAKC,gBAAgBzB,GACvC0F,IAAMC,GAAanE,KAAKO,KAAO4D,GAE/BvG,EAAA,MAAAC,IAAA,2CAAIS,KAAK,OAAM,aAAY,iBACxBH,EAAA6B,KAAKoE,cAAU,MAAAjG,SAAA,SAAAA,EAAEkB,KAAI,CAAC7B,EAAMC,IAC3BG,EAACP,EAAW,CACVC,MAAO0C,KACPzC,UAAW,GACXC,KAAMA,EACNC,MAAOA,EACPC,MAAO,EACPC,QAASqC,KAAKoE,WAAW/F,Y"}
|