@dso-toolkit/core 63.0.0 → 64.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/{annotation-body-88802b1e.js → annotation-body-b062e93f.js} +2 -2
- package/dist/cjs/{annotation-body-88802b1e.js.map → annotation-body-b062e93f.js.map} +1 -1
- package/dist/cjs/{annotation-symbol-slot-939136f8.js → annotation-symbol-slot-e9741f0b.js} +2 -2
- package/dist/cjs/{annotation-symbol-slot-939136f8.js.map → annotation-symbol-slot-e9741f0b.js.map} +1 -1
- package/dist/cjs/dso-accordion-section.cjs.entry.js +6 -6
- package/dist/cjs/dso-accordion-section.cjs.entry.js.map +1 -1
- package/dist/cjs/dso-accordion.cjs.entry.js +1 -1
- package/dist/cjs/dso-action-list-item.cjs.entry.js +1 -1
- package/dist/cjs/dso-action-list.cjs.entry.js +1 -1
- package/dist/cjs/dso-advanced-select.cjs.entry.js +1 -1
- package/dist/cjs/{dso-alert_5.cjs.entry.js → dso-alert_6.cjs.entry.js} +17 -2
- package/dist/cjs/dso-alert_6.cjs.entry.js.map +1 -0
- package/dist/cjs/dso-annotation-activiteit.cjs.entry.js +3 -3
- package/dist/cjs/dso-annotation-gebiedsaanwijzing.cjs.entry.js +3 -3
- package/dist/cjs/dso-annotation-kaart.cjs.entry.js +2 -2
- package/dist/cjs/dso-annotation-locatie_2.cjs.entry.js +3 -3
- package/dist/cjs/dso-annotation-omgevingsnormwaarde.cjs.entry.js +3 -3
- package/dist/cjs/dso-attachments-counter_2.cjs.entry.js +1 -1
- package/dist/cjs/dso-autosuggest.cjs.entry.js +2 -2
- package/dist/cjs/dso-autosuggest.cjs.entry.js.map +1 -1
- package/dist/cjs/dso-banner.cjs.entry.js +1 -1
- package/dist/cjs/dso-card-container.cjs.entry.js +1 -1
- package/dist/cjs/dso-card.cjs.entry.js +1 -1
- package/dist/cjs/dso-date-picker-legacy.cjs.entry.js +1 -1
- package/dist/cjs/dso-date-picker.cjs.entry.js +1 -1
- package/dist/cjs/dso-dropdown-menu.cjs.entry.js +1 -1
- package/dist/cjs/dso-header.cjs.entry.js +1 -1
- package/dist/cjs/dso-helpcenter-panel.cjs.entry.js +1 -1
- package/dist/cjs/dso-highlight-box.cjs.entry.js +1 -1
- package/dist/cjs/dso-icon.cjs.entry.js +1 -1
- package/dist/cjs/dso-info-button.cjs.entry.js +1 -1
- package/dist/cjs/dso-info_2.cjs.entry.js +1 -1
- package/dist/cjs/dso-input-range.cjs.entry.js +1 -1
- package/dist/cjs/{dso-tooltip.cjs.entry.js → dso-label_2.cjs.entry.js} +131 -8
- package/dist/cjs/dso-label_2.cjs.entry.js.map +1 -0
- package/dist/cjs/dso-legend-item.cjs.entry.js +1 -1
- package/dist/cjs/dso-list-button.cjs.entry.js +2 -2
- package/dist/cjs/dso-logo.cjs.entry.js +1 -1
- package/dist/cjs/dso-map-base-layers.cjs.entry.js +1 -1
- package/dist/cjs/dso-map-controls.cjs.entry.js +1 -1
- package/dist/cjs/dso-map-overlays.cjs.entry.js +1 -1
- package/dist/cjs/dso-mark-bar.cjs.entry.js +1 -1
- package/dist/cjs/dso-modal.cjs.entry.js +1 -1
- package/dist/cjs/dso-pagination.cjs.entry.js +1 -1
- package/dist/cjs/dso-progress-bar.cjs.entry.js +1 -1
- package/dist/cjs/dso-progress-indicator.cjs.entry.js +1 -1
- package/dist/cjs/dso-renvooi_2.cjs.entry.js +68 -0
- package/dist/cjs/dso-renvooi_2.cjs.entry.js.map +1 -0
- package/dist/cjs/dso-responsive-element.cjs.entry.js +1 -1
- package/dist/cjs/dso-scrollable.cjs.entry.js +1 -1
- package/dist/cjs/dso-toggletip.cjs.entry.js +1 -1
- package/dist/cjs/dso-toolkit.cjs.js +3 -3
- package/dist/cjs/dso-toolkit.cjs.js.map +1 -1
- package/dist/cjs/dso-tree-view.cjs.entry.js +1 -1
- package/dist/cjs/dso-viewer-grid.cjs.entry.js +1 -1
- package/dist/cjs/dsot-document-component-demo.cjs.entry.js +1 -1
- package/dist/cjs/{index-ac055dd1.js → index-848434f1.js} +33 -7
- package/dist/cjs/index-848434f1.js.map +1 -0
- package/dist/cjs/loader.cjs.js +2 -2
- package/dist/collection/collection-manifest.json +2 -2
- package/dist/collection/components/accordion/components/accordion-section.css +5 -5
- package/dist/collection/components/accordion/components/accordion-section.js +15 -15
- package/dist/collection/components/accordion/components/accordion-section.js.map +1 -1
- package/dist/collection/components/autosuggest/autosuggest.css +7 -0
- package/dist/collection/components/label/label.interfaces.js +2 -0
- package/dist/collection/components/label/label.interfaces.js.map +1 -0
- package/dist/collection/components/label/label.js +11 -5
- package/dist/collection/components/label/label.js.map +1 -1
- package/dist/collection/components/list-button/list-button.css +2 -2
- package/dist/components/dso-accordion-section.js +21 -15
- package/dist/components/dso-accordion-section.js.map +1 -1
- package/dist/components/dso-autosuggest.js +1 -1
- package/dist/components/dso-autosuggest.js.map +1 -1
- package/dist/components/dso-list-button.js +1 -1
- package/dist/components/label.js +3 -3
- package/dist/components/label.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-6c73ed77.js → p-00caab3b.js} +2 -2
- package/dist/dso-toolkit/{p-95fb1798.entry.js → p-065ea3f8.entry.js} +2 -2
- package/dist/dso-toolkit/{p-f0637435.entry.js → p-09b3cda7.entry.js} +2 -2
- package/dist/dso-toolkit/{p-03dd8a73.entry.js → p-0cd85e9b.entry.js} +2 -2
- package/dist/dso-toolkit/{p-b194b9ae.entry.js → p-142b052b.entry.js} +2 -2
- package/dist/dso-toolkit/{p-0b390a43.entry.js → p-33629822.entry.js} +2 -2
- package/dist/dso-toolkit/{p-e7d7bae2.entry.js → p-38210481.entry.js} +2 -2
- package/dist/dso-toolkit/{p-a092b873.entry.js → p-470c6242.entry.js} +2 -2
- package/dist/dso-toolkit/{p-a67d289d.entry.js → p-4e6511c3.entry.js} +2 -2
- package/dist/dso-toolkit/{p-3b2495b4.entry.js → p-502f51b9.entry.js} +2 -2
- package/dist/dso-toolkit/{p-74439b69.entry.js → p-54dd8d20.entry.js} +2 -2
- package/dist/dso-toolkit/{p-d2910fa1.entry.js → p-54fff8c0.entry.js} +2 -2
- package/dist/dso-toolkit/p-54fff8c0.entry.js.map +1 -0
- package/dist/dso-toolkit/{p-a252cb3d.entry.js → p-5fa80df5.entry.js} +2 -2
- package/dist/dso-toolkit/{p-8fc08ddf.entry.js → p-64f032ae.entry.js} +2 -2
- package/dist/dso-toolkit/{p-fa249c92.entry.js → p-6742d457.entry.js} +2 -2
- package/dist/dso-toolkit/{p-da23f9ed.entry.js → p-786f3a41.entry.js} +2 -2
- package/dist/dso-toolkit/{p-59f3f399.entry.js → p-78daa04d.entry.js} +2 -2
- package/dist/dso-toolkit/{p-a4fd114d.entry.js → p-7acf6216.entry.js} +2 -2
- package/dist/dso-toolkit/{p-69c44279.entry.js → p-8e902d74.entry.js} +2 -2
- package/dist/dso-toolkit/{p-cc54f978.entry.js → p-8ff36cfa.entry.js} +2 -2
- package/dist/dso-toolkit/{p-55f6a27c.entry.js → p-9367abb1.entry.js} +2 -2
- package/dist/dso-toolkit/p-949f5bc0.entry.js +2 -0
- package/dist/dso-toolkit/p-949f5bc0.entry.js.map +1 -0
- package/dist/dso-toolkit/{p-d28182cd.entry.js → p-9630207a.entry.js} +2 -2
- package/dist/dso-toolkit/{p-afce1df4.entry.js → p-99a8a8d0.entry.js} +2 -2
- package/dist/dso-toolkit/p-9ec63c53.entry.js +2 -0
- package/dist/dso-toolkit/p-9ec63c53.entry.js.map +1 -0
- package/dist/dso-toolkit/p-9f22940a.entry.js +2 -0
- package/dist/dso-toolkit/p-9f22940a.entry.js.map +1 -0
- package/dist/dso-toolkit/{p-07022a3d.entry.js → p-a13ad7da.entry.js} +2 -2
- package/dist/dso-toolkit/{p-c8518aab.entry.js → p-a40730f7.entry.js} +2 -2
- package/dist/dso-toolkit/{p-5671370e.entry.js → p-aa4d13b4.entry.js} +2 -2
- package/dist/dso-toolkit/{p-ac583d76.js → p-ae8b8810.js} +2 -2
- package/dist/dso-toolkit/{p-f2f91b97.entry.js → p-afb2d842.entry.js} +2 -2
- package/dist/dso-toolkit/{p-44148440.entry.js → p-b5744b74.entry.js} +2 -2
- package/dist/dso-toolkit/p-b623c74b.js +3 -0
- package/dist/dso-toolkit/p-b623c74b.js.map +1 -0
- package/dist/dso-toolkit/{p-afbf63ee.entry.js → p-b69aca6c.entry.js} +2 -2
- package/dist/dso-toolkit/{p-a6457fc6.entry.js → p-c0e4bcee.entry.js} +2 -2
- package/dist/dso-toolkit/{p-7ed9a1a0.entry.js → p-cd1a65e7.entry.js} +2 -2
- package/dist/dso-toolkit/{p-d9ddeee2.entry.js → p-d246e155.entry.js} +2 -2
- package/dist/dso-toolkit/{p-6d3b3bc9.entry.js → p-d3d7cd07.entry.js} +2 -2
- package/dist/dso-toolkit/{p-53b7c61b.entry.js → p-d6c90738.entry.js} +2 -2
- package/dist/dso-toolkit/p-dd680a61.entry.js +2 -0
- package/dist/dso-toolkit/p-dd680a61.entry.js.map +1 -0
- package/dist/dso-toolkit/{p-cc0e5e1f.entry.js → p-e563fe5b.entry.js} +2 -2
- package/dist/dso-toolkit/{p-53b5cc29.entry.js → p-e96c2531.entry.js} +2 -2
- package/dist/dso-toolkit/{p-289c49f5.entry.js → p-ea62fe33.entry.js} +2 -2
- package/dist/dso-toolkit/{p-bf0207ff.entry.js → p-eaa9146c.entry.js} +2 -2
- package/dist/dso-toolkit/{p-c5678d6e.entry.js → p-ede5568b.entry.js} +2 -2
- package/dist/dso-toolkit/{p-67e0739d.entry.js → p-f7428e63.entry.js} +2 -2
- package/dist/dso-toolkit/{p-feedd113.entry.js → p-f9a0b819.entry.js} +2 -2
- package/dist/dso-toolkit/{p-301dbfb1.entry.js → p-ff8a8429.entry.js} +2 -2
- package/dist/esm/{annotation-body-a8fadf3a.js → annotation-body-75f77191.js} +2 -2
- package/dist/esm/{annotation-body-a8fadf3a.js.map → annotation-body-75f77191.js.map} +1 -1
- package/dist/esm/{annotation-symbol-slot-28380b95.js → annotation-symbol-slot-1947dce6.js} +2 -2
- package/dist/esm/{annotation-symbol-slot-28380b95.js.map → annotation-symbol-slot-1947dce6.js.map} +1 -1
- package/dist/esm/dso-accordion-section.entry.js +6 -6
- package/dist/esm/dso-accordion-section.entry.js.map +1 -1
- package/dist/esm/dso-accordion.entry.js +1 -1
- package/dist/esm/dso-action-list-item.entry.js +1 -1
- package/dist/esm/dso-action-list.entry.js +1 -1
- package/dist/esm/dso-advanced-select.entry.js +1 -1
- package/dist/esm/{dso-alert_5.entry.js → dso-alert_6.entry.js} +17 -3
- package/dist/esm/dso-alert_6.entry.js.map +1 -0
- package/dist/esm/dso-annotation-activiteit.entry.js +3 -3
- package/dist/esm/dso-annotation-gebiedsaanwijzing.entry.js +3 -3
- package/dist/esm/dso-annotation-kaart.entry.js +2 -2
- package/dist/esm/dso-annotation-locatie_2.entry.js +3 -3
- package/dist/esm/dso-annotation-omgevingsnormwaarde.entry.js +3 -3
- package/dist/esm/dso-attachments-counter_2.entry.js +1 -1
- package/dist/esm/dso-autosuggest.entry.js +2 -2
- package/dist/esm/dso-autosuggest.entry.js.map +1 -1
- package/dist/esm/dso-banner.entry.js +1 -1
- package/dist/esm/dso-card-container.entry.js +1 -1
- package/dist/esm/dso-card.entry.js +1 -1
- package/dist/esm/dso-date-picker-legacy.entry.js +1 -1
- package/dist/esm/dso-date-picker.entry.js +1 -1
- package/dist/esm/dso-dropdown-menu.entry.js +1 -1
- package/dist/esm/dso-header.entry.js +1 -1
- package/dist/esm/dso-helpcenter-panel.entry.js +1 -1
- package/dist/esm/dso-highlight-box.entry.js +1 -1
- package/dist/esm/dso-icon.entry.js +1 -1
- package/dist/esm/dso-info-button.entry.js +1 -1
- package/dist/esm/dso-info_2.entry.js +1 -1
- package/dist/esm/dso-input-range.entry.js +1 -1
- package/dist/esm/{dso-tooltip.entry.js → dso-label_2.entry.js} +126 -4
- package/dist/esm/dso-label_2.entry.js.map +1 -0
- package/dist/esm/dso-legend-item.entry.js +1 -1
- package/dist/esm/dso-list-button.entry.js +2 -2
- package/dist/esm/dso-logo.entry.js +1 -1
- package/dist/esm/dso-map-base-layers.entry.js +1 -1
- package/dist/esm/dso-map-controls.entry.js +1 -1
- package/dist/esm/dso-map-overlays.entry.js +1 -1
- package/dist/esm/dso-mark-bar.entry.js +1 -1
- package/dist/esm/dso-modal.entry.js +1 -1
- package/dist/esm/dso-pagination.entry.js +1 -1
- package/dist/esm/dso-progress-bar.entry.js +1 -1
- package/dist/esm/dso-progress-indicator.entry.js +1 -1
- package/dist/esm/dso-renvooi_2.entry.js +63 -0
- package/dist/esm/dso-renvooi_2.entry.js.map +1 -0
- package/dist/esm/dso-responsive-element.entry.js +1 -1
- package/dist/esm/dso-scrollable.entry.js +1 -1
- package/dist/esm/dso-toggletip.entry.js +1 -1
- package/dist/esm/dso-toolkit.js +4 -4
- package/dist/esm/dso-toolkit.js.map +1 -1
- package/dist/esm/dso-tree-view.entry.js +1 -1
- package/dist/esm/dso-viewer-grid.entry.js +1 -1
- package/dist/esm/dsot-document-component-demo.entry.js +1 -1
- package/dist/esm/{index-c8e19f05.js → index-1a8f2a10.js} +33 -7
- package/dist/esm/index-1a8f2a10.js.map +1 -0
- package/dist/esm/loader.js +3 -3
- package/dist/types/components/accordion/components/accordion-section.d.ts +5 -5
- package/dist/types/components/annotation/annotation-body.d.ts +0 -1
- package/dist/types/components/label/label.d.ts +2 -1
- package/dist/types/components/label/label.interfaces.d.ts +1 -0
- package/dist/types/components.d.ts +22 -20
- package/package.json +4 -4
- package/dist/cjs/dso-alert_5.cjs.entry.js.map +0 -1
- package/dist/cjs/dso-badge.cjs.entry.js +0 -24
- package/dist/cjs/dso-badge.cjs.entry.js.map +0 -1
- package/dist/cjs/dso-label_3.cjs.entry.js +0 -193
- package/dist/cjs/dso-label_3.cjs.entry.js.map +0 -1
- package/dist/cjs/dso-tooltip.cjs.entry.js.map +0 -1
- package/dist/cjs/index-ac055dd1.js.map +0 -1
- package/dist/dso-toolkit/p-6ccd21fb.entry.js +0 -2
- package/dist/dso-toolkit/p-6ccd21fb.entry.js.map +0 -1
- package/dist/dso-toolkit/p-82752e49.entry.js +0 -2
- package/dist/dso-toolkit/p-82752e49.entry.js.map +0 -1
- package/dist/dso-toolkit/p-9275aad6.entry.js +0 -2
- package/dist/dso-toolkit/p-9275aad6.entry.js.map +0 -1
- package/dist/dso-toolkit/p-cdce1bd5.entry.js +0 -2
- package/dist/dso-toolkit/p-cdce1bd5.entry.js.map +0 -1
- package/dist/dso-toolkit/p-d2910fa1.entry.js.map +0 -1
- package/dist/dso-toolkit/p-d638c2b0.js +0 -3
- package/dist/dso-toolkit/p-d638c2b0.js.map +0 -1
- package/dist/dso-toolkit/p-fba55b6b.entry.js +0 -2
- package/dist/dso-toolkit/p-fba55b6b.entry.js.map +0 -1
- package/dist/esm/dso-alert_5.entry.js.map +0 -1
- package/dist/esm/dso-badge.entry.js +0 -20
- package/dist/esm/dso-badge.entry.js.map +0 -1
- package/dist/esm/dso-label_3.entry.js +0 -187
- package/dist/esm/dso-label_3.entry.js.map +0 -1
- package/dist/esm/dso-tooltip.entry.js.map +0 -1
- package/dist/esm/index-c8e19f05.js.map +0 -1
- /package/dist/dso-toolkit/{p-6c73ed77.js.map → p-00caab3b.js.map} +0 -0
- /package/dist/dso-toolkit/{p-95fb1798.entry.js.map → p-065ea3f8.entry.js.map} +0 -0
- /package/dist/dso-toolkit/{p-f0637435.entry.js.map → p-09b3cda7.entry.js.map} +0 -0
- /package/dist/dso-toolkit/{p-03dd8a73.entry.js.map → p-0cd85e9b.entry.js.map} +0 -0
- /package/dist/dso-toolkit/{p-b194b9ae.entry.js.map → p-142b052b.entry.js.map} +0 -0
- /package/dist/dso-toolkit/{p-0b390a43.entry.js.map → p-33629822.entry.js.map} +0 -0
- /package/dist/dso-toolkit/{p-e7d7bae2.entry.js.map → p-38210481.entry.js.map} +0 -0
- /package/dist/dso-toolkit/{p-a092b873.entry.js.map → p-470c6242.entry.js.map} +0 -0
- /package/dist/dso-toolkit/{p-a67d289d.entry.js.map → p-4e6511c3.entry.js.map} +0 -0
- /package/dist/dso-toolkit/{p-3b2495b4.entry.js.map → p-502f51b9.entry.js.map} +0 -0
- /package/dist/dso-toolkit/{p-74439b69.entry.js.map → p-54dd8d20.entry.js.map} +0 -0
- /package/dist/dso-toolkit/{p-a252cb3d.entry.js.map → p-5fa80df5.entry.js.map} +0 -0
- /package/dist/dso-toolkit/{p-8fc08ddf.entry.js.map → p-64f032ae.entry.js.map} +0 -0
- /package/dist/dso-toolkit/{p-fa249c92.entry.js.map → p-6742d457.entry.js.map} +0 -0
- /package/dist/dso-toolkit/{p-da23f9ed.entry.js.map → p-786f3a41.entry.js.map} +0 -0
- /package/dist/dso-toolkit/{p-59f3f399.entry.js.map → p-78daa04d.entry.js.map} +0 -0
- /package/dist/dso-toolkit/{p-a4fd114d.entry.js.map → p-7acf6216.entry.js.map} +0 -0
- /package/dist/dso-toolkit/{p-69c44279.entry.js.map → p-8e902d74.entry.js.map} +0 -0
- /package/dist/dso-toolkit/{p-cc54f978.entry.js.map → p-8ff36cfa.entry.js.map} +0 -0
- /package/dist/dso-toolkit/{p-55f6a27c.entry.js.map → p-9367abb1.entry.js.map} +0 -0
- /package/dist/dso-toolkit/{p-d28182cd.entry.js.map → p-9630207a.entry.js.map} +0 -0
- /package/dist/dso-toolkit/{p-afce1df4.entry.js.map → p-99a8a8d0.entry.js.map} +0 -0
- /package/dist/dso-toolkit/{p-07022a3d.entry.js.map → p-a13ad7da.entry.js.map} +0 -0
- /package/dist/dso-toolkit/{p-c8518aab.entry.js.map → p-a40730f7.entry.js.map} +0 -0
- /package/dist/dso-toolkit/{p-5671370e.entry.js.map → p-aa4d13b4.entry.js.map} +0 -0
- /package/dist/dso-toolkit/{p-ac583d76.js.map → p-ae8b8810.js.map} +0 -0
- /package/dist/dso-toolkit/{p-f2f91b97.entry.js.map → p-afb2d842.entry.js.map} +0 -0
- /package/dist/dso-toolkit/{p-44148440.entry.js.map → p-b5744b74.entry.js.map} +0 -0
- /package/dist/dso-toolkit/{p-afbf63ee.entry.js.map → p-b69aca6c.entry.js.map} +0 -0
- /package/dist/dso-toolkit/{p-a6457fc6.entry.js.map → p-c0e4bcee.entry.js.map} +0 -0
- /package/dist/dso-toolkit/{p-7ed9a1a0.entry.js.map → p-cd1a65e7.entry.js.map} +0 -0
- /package/dist/dso-toolkit/{p-d9ddeee2.entry.js.map → p-d246e155.entry.js.map} +0 -0
- /package/dist/dso-toolkit/{p-6d3b3bc9.entry.js.map → p-d3d7cd07.entry.js.map} +0 -0
- /package/dist/dso-toolkit/{p-53b7c61b.entry.js.map → p-d6c90738.entry.js.map} +0 -0
- /package/dist/dso-toolkit/{p-cc0e5e1f.entry.js.map → p-e563fe5b.entry.js.map} +0 -0
- /package/dist/dso-toolkit/{p-53b5cc29.entry.js.map → p-e96c2531.entry.js.map} +0 -0
- /package/dist/dso-toolkit/{p-289c49f5.entry.js.map → p-ea62fe33.entry.js.map} +0 -0
- /package/dist/dso-toolkit/{p-bf0207ff.entry.js.map → p-eaa9146c.entry.js.map} +0 -0
- /package/dist/dso-toolkit/{p-c5678d6e.entry.js.map → p-ede5568b.entry.js.map} +0 -0
- /package/dist/dso-toolkit/{p-67e0739d.entry.js.map → p-f7428e63.entry.js.map} +0 -0
- /package/dist/dso-toolkit/{p-feedd113.entry.js.map → p-f9a0b819.entry.js.map} +0 -0
- /package/dist/dso-toolkit/{p-301dbfb1.entry.js.map → p-ff8a8429.entry.js.map} +0 -0
|
@@ -1,193 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
-
|
|
5
|
-
const index$1 = require('./index-ac055dd1.js');
|
|
6
|
-
const clsx = require('./clsx-fc789adc.js');
|
|
7
|
-
const index = require('./index-10c6b031.js');
|
|
8
|
-
const v4 = require('./v4-7014b8b0.js');
|
|
9
|
-
|
|
10
|
-
const labelCss = ":host{display:inline-block;max-inline-size:100%}*,*::after,*::before{box-sizing:border-box}.sr-only{position:absolute;inline-size:1px;block-size:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);border:0}.dso-label{border-radius:4px;display:inline-block;line-height:1.5;max-inline-size:100%;padding-block:4px;padding-inline:8px}.dso-label:focus-within,.dso-label.dso-hover{text-decoration:line-through}.dso-label button{background:none;border:0;border-radius:0 4px 4px 0;color:inherit;float:inline-end;font-size:1rem;margin-block-end:-4px;margin-inline-start:8px;margin-inline-end:-4px;margin-block-start:0;padding:0}.dso-label button:hover{cursor:pointer}.dso-label button>dso-icon,.dso-label button>svg.di{display:block}.dso-label{background-color:#f2f2f2;border-color:#f2f2f2;color:#191919}.dso-label.dso-label-info{background-color:#6ca4d9;border-color:#6ca4d9;color:#191919}.dso-label.dso-label-primary{background-color:#275937;border-color:#275937;color:#fff}.dso-label.dso-label-success{background-color:#39870c;border-color:#39870c;color:#fff}.dso-label.dso-label-warning{background-color:#dcd400;border-color:#dcd400;color:#191919}.dso-label.dso-label-danger{background-color:#ce3f51;border-color:#ce3f51;color:#fff}.dso-label.dso-label-error{background-color:#ce3f51;border-color:#ce3f51;color:#fff}.dso-label.dso-label-bright{background-color:#fff;border-color:#fff;color:#191919;outline:1px solid #ccc;outline-offset:-1px}.dso-label.dso-label-attention{background-color:#8b4a6a;border-color:#8b4a6a;color:#fff}.dso-label.dso-compact{padding-block:0;padding-inline:8px}.dso-label.dso-hover .dso-label-content{text-decoration:line-through}.dso-truncate.dso-label-content{display:inline-block;max-inline-size:100%;overflow:hidden;text-overflow:ellipsis;vertical-align:bottom;white-space:nowrap}:host([removable]) .dso-truncate.dso-label-content{max-inline-size:calc(100% - 28px)}";
|
|
11
|
-
const DsoLabelStyle0 = labelCss;
|
|
12
|
-
|
|
13
|
-
const resizeObserver = new ResizeObserver(index.debounce((entries) => {
|
|
14
|
-
entries.forEach(({ target }) => {
|
|
15
|
-
if (isDsoLabelComponent(target)) {
|
|
16
|
-
target._truncateLabel();
|
|
17
|
-
}
|
|
18
|
-
});
|
|
19
|
-
}, 150));
|
|
20
|
-
function isDsoLabelComponent(element) {
|
|
21
|
-
return element.tagName === "DSO-LABEL";
|
|
22
|
-
}
|
|
23
|
-
function hasEllipses(el) {
|
|
24
|
-
return el.scrollWidth > el.clientWidth;
|
|
25
|
-
}
|
|
26
|
-
const Label = class {
|
|
27
|
-
constructor(hostRef) {
|
|
28
|
-
index$1.registerInstance(this, hostRef);
|
|
29
|
-
this.dsoRemoveClick = index$1.createEvent(this, "dsoRemoveClick", 7);
|
|
30
|
-
this.compact = undefined;
|
|
31
|
-
this.removable = undefined;
|
|
32
|
-
this.status = undefined;
|
|
33
|
-
this.removeHover = undefined;
|
|
34
|
-
this.removeFocus = undefined;
|
|
35
|
-
this.truncate = undefined;
|
|
36
|
-
this.textHover = undefined;
|
|
37
|
-
this.textFocus = undefined;
|
|
38
|
-
this.isTruncated = false;
|
|
39
|
-
this.labelText = "";
|
|
40
|
-
}
|
|
41
|
-
watchRemovable(removable) {
|
|
42
|
-
if (removable) {
|
|
43
|
-
this.startMutationObserver();
|
|
44
|
-
}
|
|
45
|
-
else {
|
|
46
|
-
this.stopMutationObserver();
|
|
47
|
-
}
|
|
48
|
-
}
|
|
49
|
-
watchTruncate(truncate) {
|
|
50
|
-
if (truncate) {
|
|
51
|
-
this.startTruncate();
|
|
52
|
-
}
|
|
53
|
-
else {
|
|
54
|
-
this.stopTruncate();
|
|
55
|
-
}
|
|
56
|
-
}
|
|
57
|
-
keyDownListener(event) {
|
|
58
|
-
if (event.key === "Escape") {
|
|
59
|
-
this.textHover = false;
|
|
60
|
-
this.textFocus = false;
|
|
61
|
-
}
|
|
62
|
-
}
|
|
63
|
-
/**
|
|
64
|
-
* @internal
|
|
65
|
-
*/
|
|
66
|
-
async _truncateLabel() {
|
|
67
|
-
setTimeout(() => {
|
|
68
|
-
this.isTruncated = !!this.labelContent && hasEllipses(this.labelContent);
|
|
69
|
-
});
|
|
70
|
-
}
|
|
71
|
-
syncLabelText() {
|
|
72
|
-
var _a, _b;
|
|
73
|
-
this.labelText = (_b = (_a = this.host.textContent) === null || _a === void 0 ? void 0 : _a.trim()) !== null && _b !== void 0 ? _b : "";
|
|
74
|
-
}
|
|
75
|
-
componentDidLoad() {
|
|
76
|
-
if (this.truncate) {
|
|
77
|
-
this.startTruncate();
|
|
78
|
-
}
|
|
79
|
-
if (this.removable) {
|
|
80
|
-
this.startMutationObserver();
|
|
81
|
-
}
|
|
82
|
-
}
|
|
83
|
-
disconnectedCallback() {
|
|
84
|
-
this.stopTruncate();
|
|
85
|
-
this.stopMutationObserver(true);
|
|
86
|
-
}
|
|
87
|
-
/** The mutationObserver fetches the text placed inside the label, this is then used for the remove button and tooltip. */
|
|
88
|
-
startMutationObserver() {
|
|
89
|
-
this.mutationObserver = new MutationObserver(() => this.syncLabelText());
|
|
90
|
-
this.mutationObserver.observe(this.host, {
|
|
91
|
-
characterData: true,
|
|
92
|
-
childList: true,
|
|
93
|
-
subtree: true,
|
|
94
|
-
attributes: true,
|
|
95
|
-
});
|
|
96
|
-
this.syncLabelText();
|
|
97
|
-
}
|
|
98
|
-
stopMutationObserver(force = false) {
|
|
99
|
-
var _a;
|
|
100
|
-
if (force || !(this.truncate && this.removable)) {
|
|
101
|
-
(_a = this.mutationObserver) === null || _a === void 0 ? void 0 : _a.disconnect();
|
|
102
|
-
delete this.mutationObserver;
|
|
103
|
-
}
|
|
104
|
-
}
|
|
105
|
-
startTruncate() {
|
|
106
|
-
resizeObserver.observe(this.host);
|
|
107
|
-
this.startMutationObserver();
|
|
108
|
-
this._truncateLabel();
|
|
109
|
-
}
|
|
110
|
-
stopTruncate() {
|
|
111
|
-
resizeObserver.unobserve(this.host);
|
|
112
|
-
this.stopMutationObserver();
|
|
113
|
-
this.isTruncated = false;
|
|
114
|
-
}
|
|
115
|
-
render() {
|
|
116
|
-
return (index$1.h(index$1.Fragment, { key: '7d0859b14bf6b8b6bc1f1ea7f6e6428431cc1197' }, index$1.h("span", { key: 'b1c8c1302f21caaaebb0193a171a95e4330b92b8', "aria-describedby": "toggle-anchor", class: clsx.clsx("dso-label", {
|
|
117
|
-
[`dso-label-${this.status}`]: this.status,
|
|
118
|
-
"dso-compact": this.compact && !this.removable,
|
|
119
|
-
"dso-hover": this.removeHover || this.removeFocus,
|
|
120
|
-
}) }, index$1.h("slot", { key: '5f3f5b65b4e4b44949b817800b505c5db1d25275', name: "symbol" }), index$1.h("span", { key: '6070e0d015cf2464121cf0dfb0088676ab00628b', class: clsx.clsx("dso-label-content", {
|
|
121
|
-
"dso-truncate": !!this.truncate,
|
|
122
|
-
}), ref: (element) => (this.labelContent = element), tabindex: this.truncate && this.isTruncated ? 0 : undefined, onMouseEnter: () => (this.textHover = true), onMouseLeave: () => (this.textHover = false), onFocus: () => (this.textFocus = true), onBlur: () => (this.textFocus = false) }, index$1.h("slot", { key: '04b20cade12d23246ce7b21e1aae447689e9c1c7' })), this.removable && (index$1.h("button", { key: 'bb184213b1ca01f83e2a1f265429293f3dda8f3b', type: "button", onClick: (e) => this.dsoRemoveClick.emit(e), onMouseEnter: () => (this.removeHover = true), onMouseLeave: () => (this.removeHover = false), onFocus: () => (this.removeFocus = true), onBlur: () => (this.removeFocus = false) }, index$1.h("span", { key: '9805c7dcd105ba5a6a59e75e822250defb107940', class: "sr-only" }, "Verwijder: ", this.labelText), index$1.h("dso-icon", { key: '19fef3d7fbd4b017cc880bc02fb3408706536933', icon: "times" })))), this.isTruncated && (index$1.h("dso-tooltip", { key: 'c136e39ed459e5c4680888b2a27bd0c17485406b', stateless: true, id: "toggle-anchor", active: this.textHover || this.textFocus, position: "top", strategy: "absolute" }, this.labelText))));
|
|
123
|
-
}
|
|
124
|
-
get host() { return index$1.getElement(this); }
|
|
125
|
-
static get watchers() { return {
|
|
126
|
-
"removable": ["watchRemovable"],
|
|
127
|
-
"truncate": ["watchTruncate"]
|
|
128
|
-
}; }
|
|
129
|
-
};
|
|
130
|
-
Label.style = DsoLabelStyle0;
|
|
131
|
-
|
|
132
|
-
const renvooiCss = "ins{text-decoration:none;--link-color:currentColor;--link-hover-color:currentColor;--link-visited-color:currentColor;background-color:#e4f1d4;border-color:#e4f1d4;color:#191919;box-shadow:0 1px 3px 1px rgba(0, 0, 0, 0.25)}ins a:is(.download,.download:hover,.download:focus-visible){background-image:url(\"./dso-icons.svg#img-download-zwart\")}ins a:is(.extern,.extern:hover,.extern:focus-visible){background-image:url(\"./dso-icons.svg#img-external-link-zwart\")}ins a:is([href^=\"tel:\"],[href^=\"tel:\"]:hover,[href^=\"tel:\"]:focus-visible){background-image:url(\"./dso-icons.svg#img-call-zwart\")}ins a:is([href^=\"mailto:\"],[href^=\"mailto:\"]:hover,[href^=\"mailto:\"]:focus-visible){background-image:url(\"./dso-icons.svg#img-email-zwart\")}del{--link-color:currentColor;--link-hover-color:currentColor;--link-visited-color:currentColor;background-color:#f5d8dc;border-color:#f5d8dc;color:#191919;text-decoration:line-through}del a:is(.download,.download:hover,.download:focus-visible){background-image:url(\"./dso-icons.svg#img-download-zwart\")}del a:is(.extern,.extern:hover,.extern:focus-visible){background-image:url(\"./dso-icons.svg#img-external-link-zwart\")}del a:is([href^=\"tel:\"],[href^=\"tel:\"]:hover,[href^=\"tel:\"]:focus-visible){background-image:url(\"./dso-icons.svg#img-call-zwart\")}del a:is([href^=\"mailto:\"],[href^=\"mailto:\"]:hover,[href^=\"mailto:\"]:focus-visible){background-image:url(\"./dso-icons.svg#img-email-zwart\")}:host{display:inline}*,*::after,*::before{box-sizing:border-box}";
|
|
133
|
-
const DsoRenvooiStyle0 = renvooiCss;
|
|
134
|
-
|
|
135
|
-
const Renvooi = class {
|
|
136
|
-
constructor(hostRef) {
|
|
137
|
-
index$1.registerInstance(this, hostRef);
|
|
138
|
-
this.value = undefined;
|
|
139
|
-
}
|
|
140
|
-
render() {
|
|
141
|
-
const { value } = this;
|
|
142
|
-
if (typeof value === "string" || !value) {
|
|
143
|
-
return value;
|
|
144
|
-
}
|
|
145
|
-
if (Array.isArray(value)) {
|
|
146
|
-
return (index$1.h(index$1.Fragment, null, value.map((v, i, { length }) => (index$1.h(index$1.Fragment, null, index$1.h("dso-renvooi", { value: v }), i < length - 1 ? ", " : "")))));
|
|
147
|
-
}
|
|
148
|
-
if ("toegevoegd" in value) {
|
|
149
|
-
return index$1.h("ins", null, value.toegevoegd);
|
|
150
|
-
}
|
|
151
|
-
if ("verwijderd" in value) {
|
|
152
|
-
return index$1.h("del", null, value.verwijderd);
|
|
153
|
-
}
|
|
154
|
-
return (index$1.h(index$1.Fragment, null, index$1.h("del", null, value.was), " ", index$1.h("ins", null, value.wordt)));
|
|
155
|
-
}
|
|
156
|
-
};
|
|
157
|
-
Renvooi.style = DsoRenvooiStyle0;
|
|
158
|
-
|
|
159
|
-
const slideToggleCss = "button.dso-slider{border:0;padding:0}button.dso-slider:focus-visible{outline:2px solid #323232;outline-offset:1px}button.dso-slider svg rect{fill:#999;transition:fill 0.25s}button.dso-slider svg circle{transition:transform 260ms cubic-bezier(0.4, 0, 0.2, 1);transform:translateX(10px);fill:#fff}button.dso-slider[aria-checked=true] svg rect{fill:#275937}button.dso-slider[aria-checked=true] svg circle{transform:translateX(30px);fill:#fff}button.dso-slider[disabled] svg rect{fill:#ccc}button.dso-slider[disabled] svg circle{fill:#e5e5e5}button.dso-slider[disabled][aria-checked=true] svg rect{fill:#a8bcaf}button.dso-slider[disabled][aria-checked=true] svg circle{fill:#e5e5e5}.dso-slider{border-radius:24px;display:inline-flex}.dso-slider:hover{cursor:pointer}";
|
|
160
|
-
const DsoSlideToggleStyle0 = slideToggleCss;
|
|
161
|
-
|
|
162
|
-
const SlideToggle = class {
|
|
163
|
-
constructor(hostRef) {
|
|
164
|
-
index$1.registerInstance(this, hostRef);
|
|
165
|
-
this.dsoActiveChange = index$1.createEvent(this, "dsoActiveChange", 5);
|
|
166
|
-
this.checked = false;
|
|
167
|
-
this.disabled = false;
|
|
168
|
-
this.accessibleLabel = undefined;
|
|
169
|
-
this.labelledbyId = undefined;
|
|
170
|
-
this.hasVisibleLabel = undefined;
|
|
171
|
-
this.identifier = v4.v4();
|
|
172
|
-
}
|
|
173
|
-
handleSwitch(e) {
|
|
174
|
-
this.dsoActiveChange.emit({
|
|
175
|
-
originalEvent: e,
|
|
176
|
-
checked: !this.checked,
|
|
177
|
-
});
|
|
178
|
-
}
|
|
179
|
-
componentWillLoad() {
|
|
180
|
-
this.hasVisibleLabel = this.host.querySelector("*") !== null;
|
|
181
|
-
}
|
|
182
|
-
render() {
|
|
183
|
-
return (index$1.h(index$1.Fragment, null, index$1.h("button", Object.assign({ key: '7ce2d8bf2bb8ba405449eaefc5762cb67a4ac4dc', id: this.identifier, role: "switch", class: "dso-slider", "aria-checked": "" + this.checked, disabled: this.disabled, onClick: (e) => this.handleSwitch(e) }, (this.accessibleLabel ? { "aria-label": this.accessibleLabel } : {}), (this.labelledbyId ? { "aria-labelledby": this.labelledbyId } : {})), index$1.h("svg", { key: '12e21116b6fc68e0bf49c53496940bd580e6f10b', xmlns: "http://www.w3.org/2000/svg", width: "40", height: "20", viewBox: "0 0 40 20" }, index$1.h("g", { key: 'aca7818aa5260621fc58279481b312ada6dbddc7', fill: "none", "fill-rule": "evenodd" }, index$1.h("rect", { key: 'dfbc32a846cea43c346f10d70076a261db8d5d96', width: "40", height: "20", fill: "currentColor", rx: "10" }), index$1.h("circle", { key: '9497b94ec12c7629550c95228fc975c9fdd9520c', cy: "10", r: "8", fill: "currentColor" })))), this.hasVisibleLabel && (index$1.h("label", { key: 'b5859b19eb2aaddc36b39bb57874f0ae8bf637fc', htmlFor: this.identifier }, index$1.h("slot", { key: 'd98d76eb907c33f5a1bb0427a3fa5d9b2a99b32a' })))));
|
|
184
|
-
}
|
|
185
|
-
get host() { return index$1.getElement(this); }
|
|
186
|
-
};
|
|
187
|
-
SlideToggle.style = DsoSlideToggleStyle0;
|
|
188
|
-
|
|
189
|
-
exports.dso_label = Label;
|
|
190
|
-
exports.dso_renvooi = Renvooi;
|
|
191
|
-
exports.dso_slide_toggle = SlideToggle;
|
|
192
|
-
|
|
193
|
-
//# sourceMappingURL=dso-label_3.cjs.entry.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"file":"dso-label.dso-renvooi.dso-slide-toggle.entry.cjs.js","mappings":"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","names":["debounce","h","Fragment","clsx","v4"],"sources":["src/components/label/label.scss?tag=dso-label&encapsulation=shadow","src/components/label/label.tsx","src/components/renvooi/renvooi.scss?tag=dso-renvooi&encapsulation=shadow","src/components/renvooi/renvooi.tsx","src/components/slide-toggle/slide-toggle.scss?tag=dso-slide-toggle","src/components/slide-toggle/slide-toggle.tsx"],"sourcesContent":["@use \"~dso-toolkit/src/utilities\";\r\n@use \"~dso-toolkit/src/variables/units\";\r\n@use \"~dso-toolkit/src/components/label\";\r\n\r\n:host {\r\n display: inline-block;\r\n max-inline-size: 100%;\r\n}\r\n\r\n@include utilities.box-sizing();\r\n\r\n// Todo: Replace .sr-only selector with web component specific selector, no need for .sr-only if we can generate the SCSS\r\n.sr-only {\r\n @include utilities.sr-only();\r\n}\r\n\r\n.dso-label {\r\n @include label.root();\r\n\r\n &.dso-hover {\r\n .dso-label-content {\r\n text-decoration: line-through;\r\n }\r\n }\r\n}\r\n\r\n.dso-truncate.dso-label-content {\r\n display: inline-block;\r\n max-inline-size: 100%;\r\n overflow: hidden;\r\n text-overflow: ellipsis; // stylelint-disable-line declaration-property-value-disallowed-list -- full text can be viewed via tooltip.\r\n vertical-align: bottom;\r\n white-space: nowrap; // stylelint-disable-line declaration-property-value-disallowed-list -- full text can be viewed via tooltip.\r\n}\r\n\r\n:host([removable]) {\r\n .dso-truncate.dso-label-content {\r\n max-inline-size: calc(100% - (units.$u3 + 4px));\r\n }\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 Method,\r\n Prop,\r\n State,\r\n Watch,\r\n Listen,\r\n} from \"@stencil/core\";\r\nimport clsx from \"clsx\";\r\nimport debounce from \"debounce\";\r\n\r\nconst resizeObserver = new ResizeObserver(\r\n debounce((entries: ResizeObserverEntry[]) => {\r\n entries.forEach(({ target }) => {\r\n if (isDsoLabelComponent(target)) {\r\n target._truncateLabel();\r\n }\r\n });\r\n }, 150),\r\n);\r\n\r\nfunction isDsoLabelComponent(element: Element): element is HTMLDsoLabelElement {\r\n return element.tagName === \"DSO-LABEL\";\r\n}\r\n\r\nfunction hasEllipses(el: HTMLElement): boolean {\r\n return el.scrollWidth > el.clientWidth;\r\n}\r\n\r\n@Component({\r\n tag: \"dso-label\",\r\n styleUrl: \"label.scss\",\r\n shadow: true,\r\n})\r\nexport class Label implements ComponentInterface {\r\n private labelContent: HTMLSpanElement | undefined;\r\n\r\n private mutationObserver?: MutationObserver;\r\n\r\n @Element()\r\n private host!: HTMLDsoLabelElement;\r\n\r\n /**\r\n * For compact Label\r\n */\r\n @Prop()\r\n compact?: boolean;\r\n\r\n /**\r\n * Shows a button that can be used to remove the Label.\r\n */\r\n @Prop()\r\n removable?: boolean;\r\n\r\n /**\r\n * The status of this Label.\r\n */\r\n @Prop()\r\n status?: \"primary\" | \"info\" | \"success\" | \"warning\" | \"danger\" | \"error\" | \"bright\" | \"attention\";\r\n\r\n /**\r\n * Emitted when the user activates the remove button.\r\n */\r\n @Event()\r\n dsoRemoveClick!: EventEmitter<MouseEvent>;\r\n\r\n @State()\r\n removeHover?: boolean;\r\n\r\n @State()\r\n removeFocus?: boolean;\r\n\r\n /**\r\n * Whether the Label is allowed to truncate the contents if it does not fit the container element.\r\n */\r\n @Prop()\r\n truncate?: boolean;\r\n\r\n @State()\r\n textHover?: boolean;\r\n\r\n @State()\r\n textFocus?: boolean;\r\n\r\n @State()\r\n isTruncated = false;\r\n\r\n @State()\r\n labelText = \"\";\r\n\r\n @Watch(\"removable\")\r\n watchRemovable(removable: boolean) {\r\n if (removable) {\r\n this.startMutationObserver();\r\n } else {\r\n this.stopMutationObserver();\r\n }\r\n }\r\n\r\n @Watch(\"truncate\")\r\n watchTruncate(truncate: boolean) {\r\n if (truncate) {\r\n this.startTruncate();\r\n } else {\r\n this.stopTruncate();\r\n }\r\n }\r\n\r\n @Listen(\"keydown\", { target: \"document\" })\r\n keyDownListener(event: KeyboardEvent) {\r\n if (event.key === \"Escape\") {\r\n this.textHover = false;\r\n this.textFocus = false;\r\n }\r\n }\r\n\r\n /**\r\n * @internal\r\n */\r\n @Method()\r\n async _truncateLabel() {\r\n setTimeout(() => {\r\n this.isTruncated = !!this.labelContent && hasEllipses(this.labelContent);\r\n });\r\n }\r\n\r\n private syncLabelText() {\r\n this.labelText = this.host.textContent?.trim() ?? \"\";\r\n }\r\n\r\n componentDidLoad() {\r\n if (this.truncate) {\r\n this.startTruncate();\r\n }\r\n\r\n if (this.removable) {\r\n this.startMutationObserver();\r\n }\r\n }\r\n\r\n disconnectedCallback() {\r\n this.stopTruncate();\r\n\r\n this.stopMutationObserver(true);\r\n }\r\n\r\n /** The mutationObserver fetches the text placed inside the label, this is then used for the remove button and tooltip. */\r\n private startMutationObserver(): void {\r\n this.mutationObserver = new MutationObserver(() => this.syncLabelText());\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 this.syncLabelText();\r\n }\r\n\r\n private stopMutationObserver(force = false): void {\r\n if (force || !(this.truncate && this.removable)) {\r\n this.mutationObserver?.disconnect();\r\n\r\n delete this.mutationObserver;\r\n }\r\n }\r\n\r\n private startTruncate(): void {\r\n resizeObserver.observe(this.host);\r\n this.startMutationObserver();\r\n this._truncateLabel();\r\n }\r\n\r\n private stopTruncate(): void {\r\n resizeObserver.unobserve(this.host);\r\n this.stopMutationObserver();\r\n this.isTruncated = false;\r\n }\r\n\r\n render() {\r\n return (\r\n <Fragment>\r\n <span\r\n aria-describedby=\"toggle-anchor\"\r\n class={clsx(\"dso-label\", {\r\n [`dso-label-${this.status}`]: this.status,\r\n \"dso-compact\": this.compact && !this.removable,\r\n \"dso-hover\": this.removeHover || this.removeFocus,\r\n })}\r\n >\r\n <slot name=\"symbol\"></slot>\r\n <span\r\n class={clsx(\"dso-label-content\", {\r\n \"dso-truncate\": !!this.truncate,\r\n })}\r\n ref={(element) => (this.labelContent = element)}\r\n tabindex={this.truncate && this.isTruncated ? 0 : undefined}\r\n onMouseEnter={() => (this.textHover = true)}\r\n onMouseLeave={() => (this.textHover = false)}\r\n onFocus={() => (this.textFocus = true)}\r\n onBlur={() => (this.textFocus = false)}\r\n >\r\n <slot></slot>\r\n </span>\r\n {this.removable && (\r\n <button\r\n type=\"button\"\r\n onClick={(e) => this.dsoRemoveClick.emit(e)}\r\n onMouseEnter={() => (this.removeHover = true)}\r\n onMouseLeave={() => (this.removeHover = false)}\r\n onFocus={() => (this.removeFocus = true)}\r\n onBlur={() => (this.removeFocus = false)}\r\n >\r\n <span class=\"sr-only\">Verwijder: {this.labelText}</span>\r\n <dso-icon icon=\"times\"></dso-icon>\r\n </button>\r\n )}\r\n </span>\r\n {this.isTruncated && (\r\n <dso-tooltip\r\n stateless\r\n id=\"toggle-anchor\"\r\n active={this.textHover || this.textFocus}\r\n position=\"top\"\r\n strategy=\"absolute\"\r\n >\r\n {this.labelText}\r\n </dso-tooltip>\r\n )}\r\n </Fragment>\r\n );\r\n }\r\n}\r\n","@use \"~dso-toolkit/src/utilities\";\r\n\r\n@use \"~dso-toolkit/src/components/insert/insert\";\r\n@use \"~dso-toolkit/src/components/delete/delete\";\r\n\r\n:host {\r\n display: inline;\r\n}\r\n\r\n@include utilities.box-sizing();\r\n","import { Component, ComponentInterface, Fragment, Prop, h } from \"@stencil/core\";\r\n\r\nimport { RenvooiValue } from \"./renvooi.interfaces\";\r\n\r\n/**\r\n * Met dit component kan een `RenvooiValue` worden gepresenteerd.\r\n */\r\n@Component({\r\n tag: \"dso-renvooi\",\r\n styleUrl: \"renvooi.scss\",\r\n shadow: true,\r\n})\r\nexport class Renvooi implements ComponentInterface {\r\n /**\r\n * The renvooi value to render.\r\n */\r\n @Prop()\r\n value?: RenvooiValue | RenvooiValue[];\r\n\r\n render() {\r\n const { value } = this;\r\n\r\n if (typeof value === \"string\" || !value) {\r\n return value;\r\n }\r\n\r\n if (Array.isArray(value)) {\r\n return (\r\n <>\r\n {value.map((v, i, { length }) => (\r\n <>\r\n <dso-renvooi value={v} />\r\n {i < length - 1 ? \", \" : \"\"}\r\n </>\r\n ))}\r\n </>\r\n );\r\n }\r\n\r\n if (\"toegevoegd\" in value) {\r\n return <ins>{value.toegevoegd}</ins>;\r\n }\r\n\r\n if (\"verwijderd\" in value) {\r\n return <del>{value.verwijderd}</del>;\r\n }\r\n\r\n return (\r\n <>\r\n <del>{value.was}</del> <ins>{value.wordt}</ins>\r\n </>\r\n );\r\n }\r\n}\r\n","@use \"~dso-toolkit/src/utilities\";\r\n@use \"~dso-toolkit/src/variables/colors\";\r\n@use \"~dso-toolkit/src/variables/units\";\r\n\r\nbutton.dso-slider {\r\n border: 0;\r\n padding: 0;\r\n\r\n &:focus-visible {\r\n outline: 2px solid colors.$grijs-80;\r\n outline-offset: 1px;\r\n }\r\n\r\n svg {\r\n rect {\r\n fill: colors.$grijs-40;\r\n transition: fill 0.25s;\r\n }\r\n\r\n circle {\r\n @include utilities.transition(transform);\r\n\r\n transform: translateX(10px);\r\n fill: colors.$wit;\r\n }\r\n }\r\n\r\n &[aria-checked=\"true\"] svg {\r\n rect {\r\n fill: colors.$bosgroen;\r\n }\r\n\r\n circle {\r\n transform: translateX(30px);\r\n fill: colors.$wit;\r\n }\r\n }\r\n\r\n &[disabled] svg {\r\n rect {\r\n fill: colors.$grijs-20;\r\n }\r\n\r\n circle {\r\n fill: colors.$grijs-10;\r\n }\r\n }\r\n\r\n &[disabled][aria-checked=\"true\"] svg {\r\n rect {\r\n fill: colors.$bosgroen-40;\r\n }\r\n\r\n circle {\r\n fill: colors.$grijs-10;\r\n }\r\n }\r\n}\r\n\r\n.dso-slider {\r\n border-radius: units.$u3;\r\n display: inline-flex;\r\n\r\n &:hover {\r\n cursor: pointer;\r\n }\r\n}\r\n","import { h, Component, ComponentInterface, Event, Fragment, Prop, EventEmitter, Element, State } from \"@stencil/core\";\r\nimport { v4 } from \"uuid\";\r\nimport { SlideToggleActiveEvent } from \"./slide-toggle.interfaces\";\r\n\r\n@Component({\r\n tag: \"dso-slide-toggle\",\r\n styleUrl: \"slide-toggle.scss\",\r\n shadow: false,\r\n})\r\nexport class SlideToggle implements ComponentInterface {\r\n @Element()\r\n private host!: HTMLDsoSlideToggleElement;\r\n\r\n /**\r\n * Set to true if Slide Toggle is checked.\r\n */\r\n @Prop()\r\n checked = false;\r\n\r\n /**\r\n * Disables the Slide Toggle, preventing it from checking/unchecking and therefor not emitting any events.\r\n */\r\n @Prop()\r\n disabled = false;\r\n\r\n /**\r\n * When provided the `<button>` will be labelled with `aria-label`. For a visible label provide a `<span>` inside the component.\r\n */\r\n @Prop()\r\n accessibleLabel?: string;\r\n\r\n /**\r\n * Provide the `id` of the element that labels this element. this property sets the `aria-labelledby` on the switch button.\r\n */\r\n @Prop()\r\n labelledbyId?: string;\r\n\r\n @State()\r\n hasVisibleLabel?: boolean;\r\n\r\n /**\r\n * Provide an `id` for the `<button>`. Useful for placing your to place your own `<label for=\"id\">`.\r\n */\r\n @Prop()\r\n identifier = v4();\r\n\r\n /**\r\n * Emitted when user checks or unchecks the Slide Toggle.\r\n */\r\n @Event({ composed: false })\r\n dsoActiveChange!: EventEmitter<SlideToggleActiveEvent>;\r\n\r\n private handleSwitch(e: Event): void {\r\n this.dsoActiveChange.emit({\r\n originalEvent: e,\r\n checked: !this.checked,\r\n });\r\n }\r\n\r\n componentWillLoad(): void {\r\n this.hasVisibleLabel = this.host.querySelector(\"*\") !== null;\r\n }\r\n\r\n render() {\r\n return (\r\n <>\r\n <button\r\n id={this.identifier}\r\n role=\"switch\"\r\n class=\"dso-slider\"\r\n aria-checked={\"\" + this.checked}\r\n disabled={this.disabled}\r\n onClick={(e) => this.handleSwitch(e)}\r\n {...(this.accessibleLabel ? { \"aria-label\": this.accessibleLabel } : {})}\r\n {...(this.labelledbyId ? { \"aria-labelledby\": this.labelledbyId } : {})}\r\n >\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"40\" height=\"20\" viewBox=\"0 0 40 20\">\r\n <g fill=\"none\" fill-rule=\"evenodd\">\r\n <rect width=\"40\" height=\"20\" fill=\"currentColor\" rx=\"10\" />\r\n <circle cy=\"10\" r=\"8\" fill=\"currentColor\" />\r\n </g>\r\n </svg>\r\n </button>\r\n {this.hasVisibleLabel && (\r\n <label htmlFor={this.identifier}>\r\n <slot />\r\n </label>\r\n )}\r\n </>\r\n );\r\n }\r\n}\r\n"],"version":3}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"file":"dso-tooltip.entry.cjs.js","mappings":"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","names":["detectOverflow","beforeWrite","debounce","hasOverflow","h","Host","clsx","createPopper"],"sources":["../../node_modules/popper-max-size-modifier/dist/popper-max-size-modifier.esm.js","src/components/tooltip/tooltip.scss?tag=dso-tooltip&encapsulation=shadow","src/components/tooltip/tooltip.tsx"],"sourcesContent":["import { detectOverflow } from '@popperjs/core';\n\nvar maxSize = {\n name: 'maxSize',\n enabled: true,\n phase: 'main',\n requiresIfExists: ['offset', 'preventOverflow', 'flip'],\n fn: function fn(_ref) {\n var state = _ref.state,\n name = _ref.name,\n options = _ref.options;\n var overflow = detectOverflow(state, options);\n\n var _ref2 = state.modifiersData.preventOverflow || {\n x: 0,\n y: 0\n },\n x = _ref2.x,\n y = _ref2.y;\n\n var _state$rects$popper = state.rects.popper,\n width = _state$rects$popper.width,\n height = _state$rects$popper.height;\n\n var _state$placement$spli = state.placement.split('-'),\n basePlacement = _state$placement$spli[0];\n\n var widthProp = basePlacement === 'left' ? 'left' : 'right';\n var heightProp = basePlacement === 'top' ? 'top' : 'bottom';\n state.modifiersData[name] = {\n width: width - overflow[widthProp] - x,\n height: height - overflow[heightProp] - y\n };\n }\n};\n\nexport default maxSize;\n","@use \"~dso-toolkit/src/utilities\";\r\n@use \"~dso-toolkit/src/variables/colors\";\r\n@use \"~dso-toolkit/src/variables/typography\";\r\n@use \"~dso-toolkit/src/variables/units\";\r\n@use \"~dso-toolkit/src/variables/zindex\";\r\n\r\n@use \"tooltip.variables\" as tooltip-variables;\r\n\r\n:host(.hidden) {\r\n visibility: hidden;\r\n}\r\n\r\n@include utilities.box-sizing();\r\n\r\n.tooltip {\r\n font-family: typography.$font-family-base;\r\n // We deliberately do NOT reset font-size.\r\n font-style: normal;\r\n font-weight: 400;\r\n line-height: typography.$line-height-base;\r\n line-break: auto;\r\n text-align: start;\r\n text-decoration: none;\r\n text-shadow: none;\r\n text-transform: none;\r\n letter-spacing: normal;\r\n word-break: break-word;\r\n word-spacing: normal;\r\n word-wrap: normal;\r\n white-space: normal;\r\n\r\n --link-color: #{colors.$grasgroen};\r\n\r\n display: block;\r\n filter: drop-shadow(0 2px 8px rgba(0, 0, 0, 0.4));\r\n font-size: typography.$font-size-small;\r\n opacity: 0;\r\n position: absolute;\r\n transition: opacity tooltip-variables.$transition-duration linear;\r\n z-index: zindex.$tooltip;\r\n\r\n &.in {\r\n opacity: tooltip-variables.$opacity;\r\n }\r\n\r\n .tooltip-inner {\r\n background-color: colors.$wit;\r\n border-radius: tooltip-variables.$border-radius;\r\n color: colors.$grijs-90;\r\n display: inline-block;\r\n font-size: typography.$root-font-size-base;\r\n max-inline-size: tooltip-variables.$max-inline-size;\r\n padding-block: tooltip-variables.$padding-block;\r\n padding-inline: tooltip-variables.$padding-inline;\r\n position: relative;\r\n\r\n &.dso-small {\r\n max-inline-size: tooltip-variables.$max-inline-size-small;\r\n }\r\n }\r\n\r\n .tooltip-arrow {\r\n border-color: transparent;\r\n border-style: solid;\r\n block-size: 0;\r\n inline-size: 0;\r\n }\r\n\r\n &[data-popper-placement=\"top\"] {\r\n margin-block-start: -3px;\r\n padding-block: tooltip-variables.$arrow-inline-size;\r\n padding-inline: 0;\r\n\r\n .tooltip-arrow {\r\n inset-block-end: 0;\r\n border-block-start-color: tooltip-variables.$arrow-color;\r\n border-width: tooltip-variables.$arrow-inline-size;\r\n border-block-end-width: 0;\r\n margin-inline-start: var(--tooltip-margin-inline-start, tooltip-variables.$arrow-margin * -1);\r\n }\r\n }\r\n\r\n &[data-popper-placement=\"right\"] {\r\n margin-inline-start: 3px;\r\n padding-block: 0;\r\n padding-inline: tooltip-variables.$arrow-inline-size;\r\n\r\n .tooltip-arrow {\r\n inset-inline-start: 0;\r\n border-inline-end-color: tooltip-variables.$arrow-color;\r\n border-width: tooltip-variables.$arrow-inline-size;\r\n border-inline-start-width: 0;\r\n margin-block-start: var(--tooltip-margin-block-start, tooltip-variables.$arrow-margin * -1);\r\n }\r\n }\r\n\r\n &[data-popper-placement=\"bottom\"] {\r\n margin-block-start: 3px;\r\n padding-block: tooltip-variables.$arrow-inline-size;\r\n padding-inline: 0;\r\n\r\n .tooltip-arrow {\r\n inset-block-start: 0;\r\n border-block-end-color: tooltip-variables.$arrow-color;\r\n border-width: tooltip-variables.$arrow-inline-size;\r\n border-block-start-width: 0;\r\n margin-inline-start: var(--tooltip-margin-inline-start, tooltip-variables.$arrow-margin * -1);\r\n }\r\n }\r\n\r\n &[data-popper-placement=\"left\"] {\r\n margin-inline-start: -3px;\r\n margin-inline-end: var(--tooltip-margin-inline-end, unset);\r\n padding-block: 0;\r\n padding-inline: tooltip-variables.$arrow-inline-size;\r\n\r\n .tooltip-arrow {\r\n inset-inline-end: 0;\r\n border-inline-start-color: tooltip-variables.$arrow-color;\r\n border-width: tooltip-variables.$arrow-inline-size;\r\n border-inline-end-width: 0;\r\n margin-block-start: var(--tooltip-margin-block-start, tooltip-variables.$arrow-margin * -1);\r\n }\r\n }\r\n}\r\n","import { beforeWrite, createPopper, Instance as PopperInstance, Placement, State as PopperState } from \"@popperjs/core\";\r\nimport maxSize from \"popper-max-size-modifier\";\r\nimport { h, Component, Element, Host, Method, Prop, State, Watch } from \"@stencil/core\";\r\nimport clsx from \"clsx\";\r\nimport { hasOverflow } from \"../../utils/has-overflow\";\r\nimport debounce from \"debounce\";\r\n\r\n// Keep const in sync with $tooltip-transition-duration in dso-toolkit/src/components/tooltip/tooltip.scss tooltip_root() mixin\r\nconst transitionDuration = 150;\r\n\r\nconst applyMaxSize = {\r\n name: \"applyMaxSize\",\r\n enabled: true,\r\n phase: beforeWrite,\r\n requires: [\"maxSize\"],\r\n fn({ state }: { state: PopperState }) {\r\n let { width } = state.modifiersData.maxSize;\r\n if (width < 160) {\r\n width = 160;\r\n }\r\n\r\n state.styles.popper = {\r\n ...state.styles.popper,\r\n maxWidth: `${width}px`,\r\n };\r\n },\r\n};\r\n\r\n@Component({\r\n tag: \"dso-tooltip\",\r\n styleUrl: \"tooltip.scss\",\r\n shadow: true,\r\n})\r\nexport class Tooltip {\r\n /**\r\n * Defines if the tooltip is descriptive. A descriptive tooltip contains a meaningful message. Tooltips that are not descriptive are hidden from screenreaders using `aria-hidden`.\r\n */\r\n @Prop({\r\n reflect: true,\r\n })\r\n descriptive = false;\r\n\r\n /**\r\n * Set position of tooltip relative to target\r\n */\r\n @Prop()\r\n position: Placement = \"top\";\r\n\r\n /**\r\n * Set position strategy of tooltip\r\n */\r\n @Prop()\r\n strategy: \"auto\" | \"absolute\" | \"fixed\" = \"auto\";\r\n\r\n /**\r\n * Set attribute `no-arrow` to hide the arrow\r\n */\r\n @Prop()\r\n noArrow = false;\r\n\r\n /**\r\n * Deactivates mouseover behaviour\r\n */\r\n @Prop()\r\n stateless?: boolean;\r\n\r\n /**\r\n * Defines if the tooltip has a smaller max-width\r\n */\r\n @Prop()\r\n small?: boolean;\r\n\r\n /**\r\n * Whether or not to show the tooltip. To control the tooltip add the `active` attribute or use the `activate()` and `deactivate()` instance methods.\r\n */\r\n @Prop({ reflect: true, mutable: true })\r\n active = false;\r\n\r\n /**\r\n * Activate the tooltip (Sets the `active` attribute)\r\n */\r\n @Method()\r\n async activate(): Promise<void> {\r\n this.active = true;\r\n }\r\n\r\n /**\r\n * Deactivate the tooltip (Removes the `active` attribute)\r\n */\r\n @Method()\r\n async deactivate(): Promise<void> {\r\n this.active = false;\r\n }\r\n\r\n @Watch(\"position\")\r\n watchPosition() {\r\n if (!this.popper) {\r\n return;\r\n }\r\n\r\n this.popper.setOptions({\r\n placement: this.position,\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.element;\r\n while (element && element.parentNode !== document) {\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 @Watch(\"active\")\r\n watchActive() {\r\n if (this.active) {\r\n this.activatePopper();\r\n\r\n if (!this.stateless) {\r\n setTimeout(() => {\r\n this.popper?.setOptions({\r\n modifiers: [{ name: \"eventListeners\", enabled: true }],\r\n });\r\n document.addEventListener(\"keydown\", this.keyDownListener);\r\n });\r\n }\r\n } else {\r\n document.removeEventListener(\"keydown\", this.keyDownListener);\r\n this.deactivatePopper();\r\n }\r\n }\r\n\r\n @Element()\r\n private element!: HTMLDsoTooltipElement;\r\n\r\n private popper: PopperInstance | undefined;\r\n\r\n private callbacks: TooltipCallbacks = {\r\n activate: () => (this.active = true),\r\n deactivate: () => (this.active = false),\r\n };\r\n\r\n private onMouseLeave = () => {\r\n if (!this.element.matches(\":hover\") && !this.target?.matches(\":hover\")) {\r\n this.callbacks.deactivate();\r\n }\r\n };\r\n\r\n @State()\r\n private hidden = true;\r\n\r\n private listenClick(e: MouseEvent) {\r\n e.stopPropagation();\r\n }\r\n\r\n componentDidLoad(): void {\r\n const tooltip = this.element.shadowRoot?.querySelector(\".tooltip\");\r\n if (!(tooltip instanceof HTMLElement)) {\r\n throw new Error(\"tooltip element is not instanceof HTMLElement\");\r\n }\r\n\r\n if (!this.stateless && this.target) {\r\n this.target.addEventListener(\"mouseenter\", this.callbacks.activate);\r\n [this.element, this.target].forEach((element) => element.addEventListener(\"mouseleave\", this.onMouseLeave));\r\n this.target.addEventListener(\"focus\", this.callbacks.activate);\r\n this.target.addEventListener(\"blur\", this.callbacks.deactivate);\r\n }\r\n }\r\n\r\n disconnectedCallback(): void {\r\n this.popper?.destroy();\r\n\r\n if (!this.stateless && this.target) {\r\n this.target.removeEventListener(\"mouseenter\", this.callbacks.activate);\r\n [this.element, this.target].forEach((element) => element.removeEventListener(\"mouseleave\", this.onMouseLeave));\r\n this.target.removeEventListener(\"focus\", this.callbacks.activate);\r\n this.target.removeEventListener(\"blur\", this.callbacks.deactivate);\r\n }\r\n\r\n this.target = undefined;\r\n }\r\n\r\n componentDidRender() {\r\n if (this.active) {\r\n this.popper?.update();\r\n }\r\n }\r\n\r\n private keyDownListener = (event: KeyboardEvent) => {\r\n if (event.key === \"Escape\") {\r\n this.deactivate();\r\n }\r\n };\r\n\r\n render() {\r\n return (\r\n <Host class={{ hidden: this.hidden }} role=\"tooltip\" onClick={this.listenClick}>\r\n <div class={clsx(\"tooltip\", { in: this.active })}>\r\n {!this.noArrow && <div data-popper-arrow class=\"tooltip-arrow\"></div>}\r\n <div aria-hidden={!this.descriptive || undefined} class={clsx(\"tooltip-inner\", { \"dso-small\": this.small })}>\r\n <slot></slot>\r\n </div>\r\n </div>\r\n </Host>\r\n );\r\n }\r\n\r\n private deactivatePopper = debounce(() => {\r\n this.hidden = true;\r\n this.popper?.destroy();\r\n this.popper = undefined;\r\n }, transitionDuration);\r\n\r\n private activatePopper(): void {\r\n this.hidden = false;\r\n\r\n if (this.popper) {\r\n return;\r\n }\r\n\r\n const tooltip = this.element.shadowRoot?.querySelector(\".tooltip\");\r\n\r\n if (this.target && tooltip instanceof HTMLElement) {\r\n this.popper = createPopper(this.target, tooltip, {\r\n placement: this.position,\r\n modifiers: [maxSize, applyMaxSize, { name: \"eventListeners\", enabled: false }],\r\n });\r\n\r\n this.setStrategy();\r\n }\r\n }\r\n\r\n private get target(): HTMLElement | undefined {\r\n return this.#target ?? this.initializeTarget();\r\n }\r\n\r\n private set target(element: HTMLElement | undefined) {\r\n this.#target = element;\r\n }\r\n\r\n #target?: HTMLElement;\r\n\r\n private initializeTarget(): HTMLElement | undefined {\r\n const id = this.element.id;\r\n\r\n if (!id) {\r\n console.warn(\"Unable to find reference tooltip has no [id] attribute.\");\r\n\r\n return;\r\n }\r\n\r\n const rootNode = this.element.getRootNode();\r\n if (!(rootNode instanceof Document || rootNode instanceof ShadowRoot)) {\r\n console.warn(`rootNode is not instance of Document or ShadowRoot`);\r\n\r\n return;\r\n }\r\n\r\n const reference = rootNode.querySelector<HTMLElement>(`[aria-describedBy=\"${id}`);\r\n if (!reference) {\r\n console.warn(`Unable to find reference with aria-describedby ${id}`);\r\n\r\n return;\r\n }\r\n\r\n this.#target = reference;\r\n return reference;\r\n }\r\n}\r\n\r\ninterface TooltipCallbacks {\r\n activate: () => void;\r\n deactivate: () => void;\r\n}\r\n"],"version":3}
|