@dso-toolkit/core 81.1.0 → 82.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/bundle/dso-accordion-section.js +3 -3
- package/dist/bundle/dso-accordion-section.js.map +1 -1
- package/dist/bundle/dso-accordion.js +2 -2
- package/dist/bundle/dso-accordion.js.map +1 -1
- package/dist/bundle/dso-document-component.js +1 -1
- package/dist/bundle/dso-history-item.js +3 -2
- package/dist/bundle/dso-history-item.js.map +1 -1
- package/dist/bundle/dso-list-button.js +1 -1
- package/dist/bundle/dso-list-button.js.map +1 -1
- package/dist/bundle/dso-map-base-layers.js +1 -1
- package/dist/bundle/dso-map-overlays.js +1 -1
- package/dist/bundle/dso-ozon-content.js +1 -1
- package/dist/bundle/dso-selectable.js +1 -1
- package/dist/bundle/dsot-document-component-demo.js +2 -2
- package/dist/bundle/{p-ZFqVNkha.js → p-COQMcyrp.js} +3 -3
- package/dist/bundle/p-COQMcyrp.js.map +1 -0
- package/dist/bundle/{p-DwMDdxsX.js → p-DbaZzGS_.js} +8 -8
- package/dist/bundle/p-DbaZzGS_.js.map +1 -0
- package/dist/bundle/{p-mimda5aG.js → p-ZIaudZgD.js} +3 -3
- package/dist/bundle/{p-mimda5aG.js.map → p-ZIaudZgD.js.map} +1 -1
- package/dist/cjs/dso-accordion-section.cjs.entry.js +3 -3
- package/dist/cjs/dso-accordion-section.cjs.entry.js.map +1 -1
- package/dist/cjs/dso-accordion-section.entry.cjs.js.map +1 -1
- package/dist/cjs/dso-accordion.cjs.entry.js +2 -2
- package/dist/cjs/dso-accordion.cjs.entry.js.map +1 -1
- package/dist/cjs/dso-accordion.entry.cjs.js.map +1 -1
- package/dist/cjs/dso-alert.dso-badge.dso-image-overlay.dso-ozon-content.dso-ozon-content-toggletip.dso-panel.dso-table.entry.cjs.js.map +1 -1
- package/dist/cjs/dso-alert_7.cjs.entry.js +6 -6
- package/dist/cjs/dso-alert_7.cjs.entry.js.map +1 -1
- package/dist/cjs/dso-history-item.cjs.entry.js +3 -2
- package/dist/cjs/dso-history-item.cjs.entry.js.map +1 -1
- package/dist/cjs/dso-history-item.entry.cjs.js.map +1 -1
- package/dist/cjs/dso-info.dso-selectable.entry.cjs.js.map +1 -1
- package/dist/cjs/dso-info_2.cjs.entry.js +1 -1
- package/dist/cjs/dso-info_2.cjs.entry.js.map +1 -1
- package/dist/cjs/dso-list-button.cjs.entry.js.map +1 -1
- package/dist/cjs/dso-list-button.entry.cjs.js.map +1 -1
- package/dist/collection/components/accordion/accordion.css +10 -0
- package/dist/collection/components/accordion/accordion.js +1 -1
- package/dist/collection/components/accordion/accordion.js.map +1 -1
- package/dist/collection/components/accordion/components/accordion-section.css +1 -0
- package/dist/collection/components/accordion/components/accordion-section.js +2 -2
- package/dist/collection/components/accordion/components/accordion-section.js.map +1 -1
- package/dist/collection/components/history-item/history-item.css +4 -0
- package/dist/collection/components/history-item/history-item.interfaces.js.map +1 -1
- package/dist/collection/components/history-item/history-item.js +3 -2
- package/dist/collection/components/history-item/history-item.js.map +1 -1
- package/dist/collection/components/ozon-content/nodes/figuur.node.js +4 -4
- package/dist/collection/components/ozon-content/nodes/figuur.node.js.map +1 -1
- package/dist/collection/components/selectable/selectable.css +22 -6
- package/dist/components/dso-accordion-section.js +3 -3
- package/dist/components/dso-accordion-section.js.map +1 -1
- package/dist/components/dso-accordion.js +2 -2
- package/dist/components/dso-accordion.js.map +1 -1
- package/dist/components/dso-history-item.js +3 -2
- package/dist/components/dso-history-item.js.map +1 -1
- package/dist/components/dso-list-button.js.map +1 -1
- package/dist/components/ozon-content.js +6 -6
- package/dist/components/ozon-content.js.map +1 -1
- package/dist/components/selectable.js +1 -1
- package/dist/components/selectable.js.map +1 -1
- package/dist/dso-toolkit/dso-accordion-section.entry.esm.js.map +1 -1
- package/dist/dso-toolkit/dso-accordion.entry.esm.js.map +1 -1
- package/dist/dso-toolkit/dso-alert.dso-badge.dso-image-overlay.dso-ozon-content.dso-ozon-content-toggletip.dso-panel.dso-table.entry.esm.js.map +1 -1
- package/dist/dso-toolkit/dso-history-item.entry.esm.js.map +1 -1
- package/dist/dso-toolkit/dso-info.dso-selectable.entry.esm.js.map +1 -1
- package/dist/dso-toolkit/dso-list-button.entry.esm.js.map +1 -1
- package/dist/dso-toolkit/dso-toolkit.esm.js +1 -1
- package/dist/dso-toolkit/{p-9c063e0c.entry.js → p-004b02b7.entry.js} +2 -2
- package/dist/dso-toolkit/p-004b02b7.entry.js.map +1 -0
- package/dist/dso-toolkit/p-05275c43.entry.js +2 -0
- package/dist/dso-toolkit/p-05275c43.entry.js.map +1 -0
- package/dist/dso-toolkit/p-32b64025.entry.js.map +1 -1
- package/dist/dso-toolkit/p-4bd397cb.entry.js +2 -0
- package/dist/dso-toolkit/p-4bd397cb.entry.js.map +1 -0
- package/dist/dso-toolkit/p-4f87903d.entry.js +2 -0
- package/dist/dso-toolkit/p-4f87903d.entry.js.map +1 -0
- package/dist/dso-toolkit/p-5a7ce367.entry.js +2 -0
- package/dist/dso-toolkit/p-5a7ce367.entry.js.map +1 -0
- package/dist/esm/dso-accordion-section.entry.js +3 -3
- package/dist/esm/dso-accordion-section.entry.js.map +1 -1
- package/dist/esm/dso-accordion.entry.js +2 -2
- package/dist/esm/dso-accordion.entry.js.map +1 -1
- package/dist/esm/dso-alert.dso-badge.dso-image-overlay.dso-ozon-content.dso-ozon-content-toggletip.dso-panel.dso-table.entry.js.map +1 -1
- package/dist/esm/dso-alert_7.entry.js +6 -6
- package/dist/esm/dso-alert_7.entry.js.map +1 -1
- package/dist/esm/dso-history-item.entry.js +3 -2
- package/dist/esm/dso-history-item.entry.js.map +1 -1
- package/dist/esm/dso-info.dso-selectable.entry.js.map +1 -1
- package/dist/esm/dso-info_2.entry.js +1 -1
- package/dist/esm/dso-info_2.entry.js.map +1 -1
- package/dist/esm/dso-list-button.entry.js.map +1 -1
- package/dist/types/components/history-item/history-item.interfaces.d.ts +1 -1
- package/package.json +3 -3
- package/dist/bundle/p-DwMDdxsX.js.map +0 -1
- package/dist/bundle/p-ZFqVNkha.js.map +0 -1
- package/dist/dso-toolkit/p-622e11c0.entry.js +0 -2
- package/dist/dso-toolkit/p-622e11c0.entry.js.map +0 -1
- package/dist/dso-toolkit/p-70ea6c42.entry.js +0 -2
- package/dist/dso-toolkit/p-70ea6c42.entry.js.map +0 -1
- package/dist/dso-toolkit/p-9c063e0c.entry.js.map +0 -1
- package/dist/dso-toolkit/p-c123217b.entry.js +0 -2
- package/dist/dso-toolkit/p-c123217b.entry.js.map +0 -1
- package/dist/dso-toolkit/p-d14bcff7.entry.js +0 -2
- package/dist/dso-toolkit/p-d14bcff7.entry.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"file":"dso-list-button.js","mappings":"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","names":["__stencil_proxyCustomElement","HTMLElement"],"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/colors\";\r\n@use \"~dso-toolkit/src/variables/units\";\r\n@use \"~dso-toolkit/src/variables/media-query-breakpoints\";\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@use \"list-button.variables\" as list-button-variables;\r\n\r\n@include utilities.box-sizing();\r\n\r\n@mixin _state-styling($background-color: inherit, $border-color: inherit, $color: inherit) {\r\n & {\r\n background-color: $background-color;\r\n border-color: $border-color;\r\n color: $color;\r\n }\r\n}\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-tertiary {\r\n @include button.tertiary($modifiers: false);\r\n\r\n // stylelint-disable-next-line no-duplicate-selectors -- needed to fix sass deprecation warnings: #2724\r\n & {\r\n cursor: pointer;\r\n }\r\n}\r\n\r\n.dso-input-number {\r\n align-items: center;\r\n display: flex;\r\n\r\n .dso-input-step-counter {\r\n text-align: center;\r\n inline-size: units.$ru3;\r\n font-size: list-button-variables.$font-size-count;\r\n }\r\n}\r\n\r\n.dso-button-group {\r\n display: flex;\r\n flex-direction: row;\r\n\r\n &.dso-disabled {\r\n > * {\r\n @include _state-styling(colors.$wit, colors.$grijs-10, colors.$grijs-60);\r\n\r\n // stylelint-disable-next-line no-duplicate-selectors -- needed to fix sass deprecation warnings: #2724\r\n & {\r\n pointer-events: none;\r\n }\r\n }\r\n }\r\n\r\n > * {\r\n border-radius: 0;\r\n\r\n &:first-child {\r\n border-radius: list-button-variables.$border-radius 0 0 list-button-variables.$border-radius;\r\n }\r\n\r\n &:not(:first-child) {\r\n border-inline-start-style: none !important;\r\n }\r\n\r\n &:last-child {\r\n border-radius: 0 list-button-variables.$border-radius list-button-variables.$border-radius 0;\r\n }\r\n\r\n &:only-child {\r\n border-radius: list-button-variables.$border-radius;\r\n }\r\n }\r\n\r\n > .dso-input-number {\r\n border-style: solid;\r\n border-width: 1px;\r\n flex-wrap: nowrap;\r\n padding-block: 0;\r\n padding-inline: units.$u2;\r\n\r\n @include _state-styling(colors.$wit, colors.$grijs-20, colors.$grijs-90);\r\n\r\n @media screen and (max-width: media-query-breakpoints.$screen-xs-max) {\r\n justify-content: center;\r\n }\r\n }\r\n\r\n > *:hover + .dso-input-number,\r\n > *:focus + .dso-input-number {\r\n @include _state-styling(colors.$wit, button.$secondary-hover-background-color, colors.$grijs-90);\r\n }\r\n\r\n > *.dso-selected + .dso-input-number {\r\n box-shadow:\r\n inset 0 -1px 0 0 button.$secondary-border-color,\r\n inset 0 1px 0 0 button.$secondary-border-color,\r\n inset -1px 0 0 0 button.$secondary-border-color;\r\n\r\n @include _state-styling(colors.$wit, button.$secondary-border-color, colors.$grijs-90);\r\n }\r\n\r\n > *:active + .dso-input-number,\r\n > *.active + .dso-input-number {\r\n &,\r\n &:hover {\r\n @include _state-styling(colors.$wit, button.$secondary-hover-background-color, colors.$grijs-90);\r\n }\r\n }\r\n\r\n > *.disabled + .dso-input-number,\r\n > *[disabled] + .dso-input-number {\r\n &,\r\n &:hover {\r\n opacity: 1;\r\n\r\n @include _state-styling(colors.$wit, colors.$grijs-20, colors.$grijs-60);\r\n }\r\n }\r\n\r\n .dso-list-button {\r\n padding-inline-end: #{units.$u2 - 1};\r\n }\r\n}\r\n\r\n.dso-list-button {\r\n @include button.base($modifiers: false);\r\n @include _state-styling(colors.$wit, colors.$grijs-20, colors.$grijs-90);\r\n\r\n // stylelint-disable-next-line no-duplicate-selectors -- needed to fix sass deprecation warnings: #2977\r\n & {\r\n border-radius: button.$border-radius;\r\n border-width: 1px;\r\n border-style: solid;\r\n font-weight: 600;\r\n padding-block: #{units.$u2 - 1};\r\n padding-inline: #{units.$u2 - 1} #{units.$u6 - 1};\r\n position: relative;\r\n text-align: start;\r\n white-space: normal;\r\n inline-size: 100%;\r\n cursor: pointer;\r\n }\r\n\r\n &:hover,\r\n &:focus {\r\n @include _state-styling(colors.$wit, button.$secondary-border-color, colors.$grijs-90);\r\n }\r\n\r\n &:active,\r\n &.active {\r\n &,\r\n &:hover {\r\n @include _state-styling(colors.$wit, button.$secondary-hover-background-color, colors.$grijs-90);\r\n }\r\n }\r\n\r\n &.disabled,\r\n &[disabled] {\r\n &,\r\n &:hover {\r\n @include _state-styling(colors.$wit, colors.$grijs-20, colors.$grijs-60);\r\n\r\n // stylelint-disable-next-line no-duplicate-selectors -- needed to fix sass deprecation warnings: #2724\r\n & {\r\n opacity: 1;\r\n }\r\n }\r\n }\r\n\r\n dso-selectable:not(:last-child) {\r\n margin-block-end: 0;\r\n }\r\n\r\n .dso-selectable-container label {\r\n font-weight: 700;\r\n }\r\n\r\n &.dso-selected {\r\n border-color: colors.$grasgroen;\r\n border-width: 1px;\r\n box-shadow:\r\n inset 0px 0px 0px 1px colors.$grasgroen,\r\n inset -1px 0px 0px 0px colors.$grasgroen;\r\n\r\n &.dso-single-count {\r\n @media screen and (min-width: media-query-breakpoints.$screen-sm-min) {\r\n border-inline-end: 0;\r\n box-shadow:\r\n colors.$grasgroen 0px 1px 0px 0px inset,\r\n colors.$grasgroen 1px 0px 0px 0px inset,\r\n colors.$grasgroen 0px -1px 0px 0px inset;\r\n }\r\n }\r\n }\r\n\r\n label {\r\n cursor: inherit;\r\n }\r\n\r\n > span {\r\n display: block;\r\n }\r\n\r\n .dso-sublabel,\r\n .subcontent {\r\n font-weight: 400;\r\n inline-size: 100%;\r\n padding-inline-start: selectable.$size + units.$u1;\r\n }\r\n\r\n dso-icon {\r\n block-size: units.$u3;\r\n color: colors.$grasgroen;\r\n inset-block-start: #{units.$u2 - 1};\r\n inset-inline-end: #{units.$u2 - 1};\r\n inline-size: units.$u3;\r\n page-break-before: always;\r\n position: absolute;\r\n }\r\n\r\n @media screen and (max-width: media-query-breakpoints.$screen-xs-max) {\r\n &.dso-selected.dso-single-count {\r\n &::after {\r\n inline-size: 0;\r\n }\r\n }\r\n }\r\n}\r\n","import {\r\n Component,\r\n ComponentInterface,\r\n Element,\r\n Event,\r\n EventEmitter,\r\n Fragment,\r\n Prop,\r\n forceUpdate,\r\n h,\r\n} from \"@stencil/core\";\r\nimport clsx from \"clsx\";\r\n\r\nimport { ListButtonChangeEvent, ListButtonSelectedEvent } from \"./list-button.interfaces\";\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 mutationObserver?: MutationObserver;\r\n\r\n private get subcontentSlot() {\r\n return this.host.querySelector<HTMLElement>(\"[slot='subcontent']\");\r\n }\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 * 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 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.subcontentSlot?.hasAttribute(\"aria-hidden\")) {\r\n this.subcontentSlot?.setAttribute(\"aria-hidden\", \"true\");\r\n }\r\n }\r\n\r\n disconnectedCallback(): void {\r\n this.mutationObserver?.disconnect();\r\n delete this.mutationObserver;\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 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 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 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 <dso-selectable type=\"checkbox\" value=\"list-button\" name=\"naam\" checked={selected} disabled={this.disabled}>\r\n {this.label}\r\n {this.sublabel && <span class=\"sr-only\"> {this.sublabel}</span>}\r\n {this.subcontentSlot && (\r\n <span class=\"sr-only\">\r\n {this.subcontentPrefix && this.subcontentPrefix + \":\"}{\" \"}\r\n <span innerHTML={this.subcontentSlot.innerHTML}></span>\r\n </span>\r\n )}\r\n </dso-selectable>\r\n {this.sublabel && <span class=\"dso-sublabel\">{this.sublabel}</span>}\r\n {this.subcontentSlot && (\r\n <div class=\"subcontent\">\r\n <slot name=\"subcontent\" />\r\n </div>\r\n )}\r\n </div>\r\n\r\n {this.count !== undefined && this.count > 0 && (\r\n <div class=\"dso-input-number\">\r\n {this.count > 1 && (\r\n <Fragment>\r\n <dso-icon-button\r\n label=\"Aantal verlagen\"\r\n variant=\"tertiary\"\r\n icon=\"minus-circle\"\r\n disabled={this.count === Number(this.min) || this.disabled}\r\n onDsoClick={(e) => this.stepValue(e, \"decrement\")}\r\n />\r\n <span class=\"dso-input-step-counter\" aria-label=\"Aantal\" aria-live=\"polite\">\r\n {this.count}\r\n </span>\r\n </Fragment>\r\n )}\r\n\r\n <dso-icon-button\r\n label=\"Aantal verhogen\"\r\n variant=\"tertiary\"\r\n icon=\"plus-circle\"\r\n disabled={this.count === Number(this.max) || this.disabled}\r\n onDsoClick={(e) => this.stepValue(e, \"increment\")}\r\n />\r\n </div>\r\n )}\r\n </div>\r\n );\r\n }\r\n}\r\n"],"version":3}
|
|
1
|
+
{"file":"dso-list-button.js","mappings":"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","names":["__stencil_proxyCustomElement","HTMLElement"],"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/colors\";\r\n@use \"~dso-toolkit/src/variables/units\";\r\n@use \"~dso-toolkit/src/variables/media-query-breakpoints\";\r\n@use \"~dso-toolkit/src/components/button\";\r\n@use \"~dso-toolkit/src/components/form-control\";\r\n@use \"~dso-toolkit/src/utilities\";\r\n\r\n@use \"list-button.variables\" as list-button-variables;\r\n\r\n@include utilities.box-sizing();\r\n\r\n@mixin _state-styling($background-color: inherit, $border-color: inherit, $color: inherit) {\r\n & {\r\n background-color: $background-color;\r\n border-color: $border-color;\r\n color: $color;\r\n }\r\n}\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-tertiary {\r\n @include button.tertiary($modifiers: false);\r\n\r\n // stylelint-disable-next-line no-duplicate-selectors -- needed to fix sass deprecation warnings: #2724\r\n & {\r\n cursor: pointer;\r\n }\r\n}\r\n\r\n.dso-input-number {\r\n align-items: center;\r\n display: flex;\r\n\r\n .dso-input-step-counter {\r\n text-align: center;\r\n inline-size: units.$ru3;\r\n font-size: list-button-variables.$font-size-count;\r\n }\r\n}\r\n\r\n.dso-button-group {\r\n display: flex;\r\n flex-direction: row;\r\n\r\n &.dso-disabled {\r\n > * {\r\n @include _state-styling(colors.$wit, colors.$grijs-10, colors.$grijs-60);\r\n\r\n // stylelint-disable-next-line no-duplicate-selectors -- needed to fix sass deprecation warnings: #2724\r\n & {\r\n pointer-events: none;\r\n }\r\n }\r\n }\r\n\r\n > * {\r\n border-radius: 0;\r\n\r\n &:first-child {\r\n border-radius: list-button-variables.$border-radius 0 0 list-button-variables.$border-radius;\r\n }\r\n\r\n &:not(:first-child) {\r\n border-inline-start-style: none !important;\r\n }\r\n\r\n &:last-child {\r\n border-radius: 0 list-button-variables.$border-radius list-button-variables.$border-radius 0;\r\n }\r\n\r\n &:only-child {\r\n border-radius: list-button-variables.$border-radius;\r\n }\r\n }\r\n\r\n > .dso-input-number {\r\n border-style: solid;\r\n border-width: 1px;\r\n flex-wrap: nowrap;\r\n padding-block: 0;\r\n padding-inline: units.$u2;\r\n\r\n @include _state-styling(colors.$wit, colors.$grijs-20, colors.$grijs-90);\r\n\r\n @media screen and (max-width: media-query-breakpoints.$screen-xs-max) {\r\n justify-content: center;\r\n }\r\n }\r\n\r\n > *:hover + .dso-input-number,\r\n > *:focus + .dso-input-number {\r\n @include _state-styling(colors.$wit, button.$secondary-hover-background-color, colors.$grijs-90);\r\n }\r\n\r\n > *.dso-selected + .dso-input-number {\r\n box-shadow:\r\n inset 0 -1px 0 0 button.$secondary-border-color,\r\n inset 0 1px 0 0 button.$secondary-border-color,\r\n inset -1px 0 0 0 button.$secondary-border-color;\r\n\r\n @include _state-styling(colors.$wit, button.$secondary-border-color, colors.$grijs-90);\r\n }\r\n\r\n > *:active + .dso-input-number,\r\n > *.active + .dso-input-number {\r\n &,\r\n &:hover {\r\n @include _state-styling(colors.$wit, button.$secondary-hover-background-color, colors.$grijs-90);\r\n }\r\n }\r\n\r\n > *.disabled + .dso-input-number,\r\n > *[disabled] + .dso-input-number {\r\n &,\r\n &:hover {\r\n opacity: 1;\r\n\r\n @include _state-styling(colors.$wit, colors.$grijs-20, colors.$grijs-60);\r\n }\r\n }\r\n\r\n .dso-list-button {\r\n padding-inline-end: #{units.$u2 - 1};\r\n }\r\n}\r\n\r\n.dso-list-button {\r\n @include button.base($modifiers: false);\r\n @include _state-styling(colors.$wit, colors.$grijs-20, colors.$grijs-90);\r\n\r\n // stylelint-disable-next-line no-duplicate-selectors -- needed to fix sass deprecation warnings: #2977\r\n & {\r\n border-radius: button.$border-radius;\r\n border-width: 1px;\r\n border-style: solid;\r\n font-weight: 600;\r\n padding-block: #{units.$u2 - 1};\r\n padding-inline: #{units.$u2 - 1} #{units.$u6 - 1};\r\n position: relative;\r\n text-align: start;\r\n white-space: normal;\r\n inline-size: 100%;\r\n cursor: pointer;\r\n }\r\n\r\n &:hover,\r\n &:focus {\r\n @include _state-styling(colors.$wit, button.$secondary-border-color, colors.$grijs-90);\r\n }\r\n\r\n &:active,\r\n &.active {\r\n &,\r\n &:hover {\r\n @include _state-styling(colors.$wit, button.$secondary-hover-background-color, colors.$grijs-90);\r\n }\r\n }\r\n\r\n &.disabled,\r\n &[disabled] {\r\n &,\r\n &:hover {\r\n @include _state-styling(colors.$wit, colors.$grijs-20, colors.$grijs-60);\r\n\r\n // stylelint-disable-next-line no-duplicate-selectors -- needed to fix sass deprecation warnings: #2724\r\n & {\r\n opacity: 1;\r\n }\r\n }\r\n }\r\n\r\n dso-selectable:not(:last-child) {\r\n margin-block-end: 0;\r\n }\r\n\r\n .dso-selectable-container label {\r\n font-weight: 700;\r\n }\r\n\r\n &.dso-selected {\r\n border-color: colors.$grasgroen;\r\n border-width: 1px;\r\n box-shadow:\r\n inset 0px 0px 0px 1px colors.$grasgroen,\r\n inset -1px 0px 0px 0px colors.$grasgroen;\r\n\r\n &.dso-single-count {\r\n @media screen and (min-width: media-query-breakpoints.$screen-sm-min) {\r\n border-inline-end: 0;\r\n box-shadow:\r\n colors.$grasgroen 0px 1px 0px 0px inset,\r\n colors.$grasgroen 1px 0px 0px 0px inset,\r\n colors.$grasgroen 0px -1px 0px 0px inset;\r\n }\r\n }\r\n }\r\n\r\n label {\r\n cursor: inherit;\r\n }\r\n\r\n > span {\r\n display: block;\r\n }\r\n\r\n .dso-sublabel,\r\n .subcontent {\r\n font-weight: 400;\r\n inline-size: 100%;\r\n padding-inline-start: units.$u4;\r\n }\r\n\r\n dso-icon {\r\n block-size: units.$u3;\r\n color: colors.$grasgroen;\r\n inset-block-start: #{units.$u2 - 1};\r\n inset-inline-end: #{units.$u2 - 1};\r\n inline-size: units.$u3;\r\n page-break-before: always;\r\n position: absolute;\r\n }\r\n\r\n @media screen and (max-width: media-query-breakpoints.$screen-xs-max) {\r\n &.dso-selected.dso-single-count {\r\n &::after {\r\n inline-size: 0;\r\n }\r\n }\r\n }\r\n}\r\n","import {\r\n Component,\r\n ComponentInterface,\r\n Element,\r\n Event,\r\n EventEmitter,\r\n Fragment,\r\n Prop,\r\n forceUpdate,\r\n h,\r\n} from \"@stencil/core\";\r\nimport clsx from \"clsx\";\r\n\r\nimport { ListButtonChangeEvent, ListButtonSelectedEvent } from \"./list-button.interfaces\";\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 mutationObserver?: MutationObserver;\r\n\r\n private get subcontentSlot() {\r\n return this.host.querySelector<HTMLElement>(\"[slot='subcontent']\");\r\n }\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 * 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 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.subcontentSlot?.hasAttribute(\"aria-hidden\")) {\r\n this.subcontentSlot?.setAttribute(\"aria-hidden\", \"true\");\r\n }\r\n }\r\n\r\n disconnectedCallback(): void {\r\n this.mutationObserver?.disconnect();\r\n delete this.mutationObserver;\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 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 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 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 <dso-selectable type=\"checkbox\" value=\"list-button\" name=\"naam\" checked={selected} disabled={this.disabled}>\r\n {this.label}\r\n {this.sublabel && <span class=\"sr-only\"> {this.sublabel}</span>}\r\n {this.subcontentSlot && (\r\n <span class=\"sr-only\">\r\n {this.subcontentPrefix && this.subcontentPrefix + \":\"}{\" \"}\r\n <span innerHTML={this.subcontentSlot.innerHTML}></span>\r\n </span>\r\n )}\r\n </dso-selectable>\r\n {this.sublabel && <span class=\"dso-sublabel\">{this.sublabel}</span>}\r\n {this.subcontentSlot && (\r\n <div class=\"subcontent\">\r\n <slot name=\"subcontent\" />\r\n </div>\r\n )}\r\n </div>\r\n\r\n {this.count !== undefined && this.count > 0 && (\r\n <div class=\"dso-input-number\">\r\n {this.count > 1 && (\r\n <Fragment>\r\n <dso-icon-button\r\n label=\"Aantal verlagen\"\r\n variant=\"tertiary\"\r\n icon=\"minus-circle\"\r\n disabled={this.count === Number(this.min) || this.disabled}\r\n onDsoClick={(e) => this.stepValue(e, \"decrement\")}\r\n />\r\n <span class=\"dso-input-step-counter\" aria-label=\"Aantal\" aria-live=\"polite\">\r\n {this.count}\r\n </span>\r\n </Fragment>\r\n )}\r\n\r\n <dso-icon-button\r\n label=\"Aantal verhogen\"\r\n variant=\"tertiary\"\r\n icon=\"plus-circle\"\r\n disabled={this.count === Number(this.max) || this.disabled}\r\n onDsoClick={(e) => this.stepValue(e, \"increment\")}\r\n />\r\n </div>\r\n )}\r\n </div>\r\n );\r\n }\r\n}\r\n"],"version":3}
|
|
@@ -4,7 +4,7 @@ import { d as defineCustomElement$6 } from './p-DTle6By6.js';
|
|
|
4
4
|
import { d as defineCustomElement$5 } from './p-BJ43Q58h.js';
|
|
5
5
|
import { d as defineCustomElement$4 } from './p-fTG2YwZq.js';
|
|
6
6
|
import { d as defineCustomElement$3 } from './p-DpzeiE9g.js';
|
|
7
|
-
import { d as defineCustomElement$2 } from './p-
|
|
7
|
+
import { d as defineCustomElement$2 } from './p-COQMcyrp.js';
|
|
8
8
|
import { v as v4 } from './p-BF0_OXTe.js';
|
|
9
9
|
|
|
10
10
|
const translations = {
|
|
@@ -4,7 +4,7 @@ import { d as defineCustomElement$6 } from './p-DTle6By6.js';
|
|
|
4
4
|
import { d as defineCustomElement$5 } from './p-BJ43Q58h.js';
|
|
5
5
|
import { d as defineCustomElement$4 } from './p-fTG2YwZq.js';
|
|
6
6
|
import { d as defineCustomElement$3 } from './p-DpzeiE9g.js';
|
|
7
|
-
import { d as defineCustomElement$2 } from './p-
|
|
7
|
+
import { d as defineCustomElement$2 } from './p-COQMcyrp.js';
|
|
8
8
|
import { v as v4 } from './p-BF0_OXTe.js';
|
|
9
9
|
|
|
10
10
|
const translations = {
|
|
@@ -3,12 +3,12 @@ import { g as getDefaultExportFromCjs, c as commonjsGlobal } from './p-BxvZeNWe.
|
|
|
3
3
|
import { d as defineCustomElement$h } from './p-D_6TKRgI.js';
|
|
4
4
|
import { d as defineCustomElement$g } from './p-YEwuOvaY.js';
|
|
5
5
|
import { d as defineCustomElement$f } from './p-Bv7dmPUW.js';
|
|
6
|
-
import { d as defineCustomElement$e } from './p-
|
|
6
|
+
import { d as defineCustomElement$e } from './p-ZIaudZgD.js';
|
|
7
7
|
import { d as defineCustomElement$d } from './p-DTle6By6.js';
|
|
8
8
|
import { d as defineCustomElement$c } from './p-BJ43Q58h.js';
|
|
9
9
|
import { d as defineCustomElement$b } from './p-DAvYoaob.js';
|
|
10
10
|
import { d as defineCustomElement$a } from './p-BDuXq5bx.js';
|
|
11
|
-
import { d as defineCustomElement$9 } from './p-
|
|
11
|
+
import { d as defineCustomElement$9 } from './p-DbaZzGS_.js';
|
|
12
12
|
import { d as defineCustomElement$8 } from './p-BuyCa_uF.js';
|
|
13
13
|
import { d as defineCustomElement$7 } from './p-Cpkqb2I3.js';
|
|
14
14
|
import { d as defineCustomElement$6 } from './p-B4T_HZRq.js';
|
|
@@ -18,7 +18,7 @@ function createIdentifier(prefix) {
|
|
|
18
18
|
return `${prefix}-${chr4()}${chr4()}-${chr4()}-${chr4()}-${chr4()}-${chr4()}${chr4()}${chr4()}`;
|
|
19
19
|
}
|
|
20
20
|
|
|
21
|
-
const selectableCss = ".sc-dso-selectable-h{padding-inline-start:var(--_dt-selectable-padding-inline-start, 32px);position:relative;display:var(--dso-selectable-display, block)}.sc-dso-selectable-h label.sc-dso-selectable{font-weight:400;line-height:24px;margin:0}.sc-dso-selectable-h input[type=checkbox][disabled].sc-dso-selectable+label.sc-dso-selectable::before,.sc-dso-selectable-h input[type=checkbox][disabled].sc-dso-selectable:active+label.sc-dso-selectable::before,.sc-dso-selectable-h input[type=checkbox][disabled].sc-dso-selectable:focus+label.sc-dso-selectable::before,.sc-dso-selectable-h input[type=radio][disabled].sc-dso-selectable+label.sc-dso-selectable::before,.sc-dso-selectable-h input[type=radio][disabled].sc-dso-selectable:active+label.sc-dso-selectable::before,.sc-dso-selectable-h input[type=radio][disabled].sc-dso-selectable:focus+label.sc-dso-selectable::before{background-color:#fff;box-shadow:0 0 0 2px #e5e5e5}.sc-dso-selectable-h input[type=checkbox].sc-dso-selectable,.sc-dso-selectable-h input[type=radio].sc-dso-selectable{block-size:100%;inset-inline-start:0;margin:0;appearance:none;position:absolute;inset-block-start:0;inline-size:100%;z-index:100;zoom:1}@media (prefers-contrast: more){.sc-dso-selectable-h input[type=checkbox].sc-dso-selectable,.sc-dso-selectable-h input[type=radio].sc-dso-selectable{opacity:1}}.sc-dso-selectable-h input[type=checkbox].sc-dso-selectable:not([disabled]),.sc-dso-selectable-h input[type=radio].sc-dso-selectable:not([disabled]){cursor:pointer}.sc-dso-selectable-h input[type=checkbox].sc-dso-selectable+label.sc-dso-selectable,.sc-dso-selectable-h input[type=radio].sc-dso-selectable+label.sc-dso-selectable{display:inline;font-style:normal;padding-inline-start:0}.sc-dso-selectable-h input[type=checkbox].sc-dso-selectable+label.sc-dso-selectable::before,.sc-dso-selectable-h input[type=radio].sc-dso-selectable+label.sc-dso-selectable::before{background:#fff;border:0;box-shadow:0 0 0 2px var(--
|
|
21
|
+
const selectableCss = ".sc-dso-selectable-h{padding-inline-start:var(--_dt-selectable-padding-inline-start, 32px);position:relative;display:var(--dso-selectable-display, block)}.sc-dso-selectable-h label.sc-dso-selectable{font-weight:400;line-height:24px;margin:0}.sc-dso-selectable-h input[type=checkbox][disabled].sc-dso-selectable+label.sc-dso-selectable::before,.sc-dso-selectable-h input[type=checkbox][disabled].sc-dso-selectable:active+label.sc-dso-selectable::before,.sc-dso-selectable-h input[type=checkbox][disabled].sc-dso-selectable:focus+label.sc-dso-selectable::before,.sc-dso-selectable-h input[type=radio][disabled].sc-dso-selectable+label.sc-dso-selectable::before,.sc-dso-selectable-h input[type=radio][disabled].sc-dso-selectable:active+label.sc-dso-selectable::before,.sc-dso-selectable-h input[type=radio][disabled].sc-dso-selectable:focus+label.sc-dso-selectable::before{background-color:#fff;box-shadow:0 0 0 2px #e5e5e5}.sc-dso-selectable-h input[type=checkbox].sc-dso-selectable,.sc-dso-selectable-h input[type=radio].sc-dso-selectable{block-size:100%;inset-inline-start:0;margin:0;appearance:none;position:absolute;inset-block-start:0;inline-size:100%;z-index:100;zoom:1}@media (prefers-contrast: more){.sc-dso-selectable-h input[type=checkbox].sc-dso-selectable,.sc-dso-selectable-h input[type=radio].sc-dso-selectable{opacity:1}}.sc-dso-selectable-h input[type=checkbox].sc-dso-selectable:not([disabled]),.sc-dso-selectable-h input[type=radio].sc-dso-selectable:not([disabled]){cursor:pointer}.sc-dso-selectable-h input[type=checkbox].sc-dso-selectable+label.sc-dso-selectable,.sc-dso-selectable-h input[type=radio].sc-dso-selectable+label.sc-dso-selectable{display:inline;font-style:normal;padding-inline-start:0}.sc-dso-selectable-h input[type=checkbox].sc-dso-selectable+label.sc-dso-selectable::before,.sc-dso-selectable-h input[type=radio].sc-dso-selectable+label.sc-dso-selectable::before{background:#fff;border:0;box-shadow:0 0 0 2px var(--_dso-selectable-color, #275937);content:\"\";block-size:20px;inset-inline-start:2px;position:absolute;inset-block-start:2px;inline-size:20px}.sc-dso-selectable-h input[type=checkbox].sc-dso-selectable:active+label.sc-dso-selectable::before,.sc-dso-selectable-h input[type=checkbox].active.sc-dso-selectable+label.sc-dso-selectable::before,.sc-dso-selectable-h input[type=radio].sc-dso-selectable:active+label.sc-dso-selectable::before,.sc-dso-selectable-h input[type=radio].active.sc-dso-selectable+label.sc-dso-selectable::before{background-color:#ebf3e6;box-shadow:0 0 0 1px #275937;block-size:22px;inset-inline-start:1px;inset-block-start:1px;inline-size:22px}.sc-dso-selectable-h input[type=checkbox].sc-dso-selectable+label.sc-dso-selectable::before{border-radius:4px}.sc-dso-selectable-h input[type=checkbox].sc-dso-selectable+label.sc-dso-selectable::after{background:transparent;content:\"\";inset-inline-start:6px;opacity:0;position:absolute;inset-block-start:6px;zoom:1}.sc-dso-selectable-h input[type=checkbox].sc-dso-selectable:checked+label.sc-dso-selectable::after,.sc-dso-selectable-h input[type=checkbox].sc-dso-selectable:indeterminate+label.sc-dso-selectable::after{opacity:1}.sc-dso-selectable-h input[type=checkbox].sc-dso-selectable:checked+label.sc-dso-selectable::after{border:solid;border-color:var(--_dso-selectable-color, #39870c);border-block-start-color:transparent;border-width:0 0 3px 3px;block-size:8px;transform:rotate(-45deg);inline-size:13px}.sc-dso-selectable-h input[type=checkbox].sc-dso-selectable:indeterminate+label.sc-dso-selectable::after{background-color:var(--_dso-selectable-color, #39870c);block-size:12px;inline-size:12px}.sc-dso-selectable-h input[type=radio].sc-dso-selectable+label.sc-dso-selectable::before{border-radius:50%}.sc-dso-selectable-h input[type=radio].sc-dso-selectable+label.sc-dso-selectable::after{background-color:transparent;border-radius:50%;content:\"\";block-size:12px;inset-inline-start:6px;opacity:0;position:absolute;inset-block-start:6px;inline-size:12px;zoom:1}.sc-dso-selectable-h input[type=radio].sc-dso-selectable:checked+label.sc-dso-selectable::after{background-color:var(--_dso-selectable-color, #39870c);opacity:1}[invalid].sc-dso-selectable-h:not([invalid=false]){--_dso-selectable-color:#ce3f51}.sc-dso-selectable-h>dso-info.sc-dso-selectable{float:none;margin-block:8px 0;margin-inline:0 16px;inline-size:100%}.sc-dso-selectable-h .dso-selectable-options.sc-dso-selectable{list-style:none;margin-block-start:8px;padding-inline-start:0}.sc-dso-selectable-h .dso-selectable-options.sc-dso-selectable li.sc-dso-selectable+li.sc-dso-selectable{margin-block-start:8px}.sc-dso-selectable-h:not(:last-child){margin-block-end:8px}*.sc-dso-selectable,*.sc-dso-selectable::after,*.sc-dso-selectable::before{box-sizing:border-box}.dso-selectable-container.sc-dso-selectable{display:inline-block}.dso-selectable-container.sc-dso-selectable .dso-selectable-input-wrapper.sc-dso-selectable{display:inline-block;min-block-size:24px;position:relative;margin-inline-start:var(--_dt-selectable-input-wrapper-margin-inline-start, -32px);padding-inline-start:var(--_dt-selectable-input-wrapper-padding-inline-start, 32px)}.dso-selectable-container.sc-dso-selectable .dso-selectable-input-wrapper.sc-dso-selectable input[type=radio].sc-dso-selectable:focus+label.sc-dso-selectable::before,.dso-selectable-container.sc-dso-selectable .dso-selectable-input-wrapper.sc-dso-selectable input[type=checkbox].sc-dso-selectable:focus+label.sc-dso-selectable::before{box-shadow:0 0 0 2px var(--_dso-selectable-color, #275937);block-size:20px;inset-inline-start:2px;inset-block-start:2px;inline-size:20px}.sc-dso-selectable-s>[slot=info]{float:none;margin-block:8px 0;margin-inline:0 16px;inline-size:100%}.sc-dso-selectable-s>[slot=options]{list-style:none;margin-block-start:8px;padding-inline-start:0}.sc-dso-selectable-s>[slot=options] li+li{margin-block-start:8px}";
|
|
22
22
|
|
|
23
23
|
const Selectable = /*@__PURE__*/ proxyCustomElement(class Selectable extends H {
|
|
24
24
|
constructor() {
|
|
@@ -136,6 +136,6 @@ function defineCustomElement() {
|
|
|
136
136
|
}
|
|
137
137
|
|
|
138
138
|
export { Selectable as S, defineCustomElement as d };
|
|
139
|
-
//# sourceMappingURL=p-
|
|
139
|
+
//# sourceMappingURL=p-COQMcyrp.js.map
|
|
140
140
|
|
|
141
|
-
//# sourceMappingURL=p-
|
|
141
|
+
//# sourceMappingURL=p-COQMcyrp.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"file":"p-COQMcyrp.js","mappings":"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","names":["__stencil_proxyCustomElement","HTMLElement"],"sources":["src/utils/create-identifier.ts","src/components/selectable/selectable.scss?tag=dso-selectable&encapsulation=scoped","src/components/selectable/selectable.tsx"],"sourcesContent":["/**\r\n * Form random hash\r\n */\r\nexport function chr4() {\r\n return Math.random().toString(16).slice(-4);\r\n}\r\n\r\n/**\r\n * Create random identifier with a prefix\r\n * @param prefix\r\n */\r\nexport function createIdentifier(prefix: string): string {\r\n return `${prefix}-${chr4()}${chr4()}-${chr4()}-${chr4()}-${chr4()}-${chr4()}${chr4()}${chr4()}`;\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@use \"~dso-toolkit/src/variables/zindex\";\r\n@use \"selectable.variables\" as selectable-variables;\r\n\r\n:host {\r\n padding-inline-start: var(--_dt-selectable-padding-inline-start, selectable-variables.$symbol-indent);\r\n position: relative;\r\n display: var(--dso-selectable-display, block);\r\n\r\n label {\r\n font-weight: 400;\r\n line-height: selectable-variables.$size;\r\n margin: 0;\r\n }\r\n\r\n input[type=\"checkbox\"][disabled],\r\n input[type=\"radio\"][disabled] {\r\n &,\r\n &:active,\r\n &:focus {\r\n + label {\r\n &::before {\r\n background-color: colors.$wit;\r\n box-shadow: 0 0 0 selectable-variables.$border-width selectable-variables.$disabled-color;\r\n }\r\n }\r\n }\r\n }\r\n\r\n input[type=\"checkbox\"],\r\n input[type=\"radio\"] {\r\n block-size: 100%;\r\n inset-inline-start: 0;\r\n margin: 0;\r\n appearance: none;\r\n position: absolute;\r\n inset-block-start: 0;\r\n inline-size: 100%;\r\n z-index: zindex.$selectable;\r\n zoom: 1;\r\n\r\n @media (prefers-contrast: more) {\r\n & {\r\n opacity: 1;\r\n }\r\n }\r\n\r\n &:not([disabled]) {\r\n cursor: pointer;\r\n }\r\n\r\n + label {\r\n display: inline;\r\n font-style: normal;\r\n padding-inline-start: 0;\r\n\r\n &::before {\r\n background: colors.$wit;\r\n border: 0;\r\n box-shadow: 0 0 0 selectable-variables.$border-width\r\n var(--_dso-selectable-color, selectable-variables.$valid-color);\r\n content: \"\";\r\n block-size: selectable-variables.$size - 2 * selectable-variables.$border-width;\r\n inset-inline-start: selectable-variables.$border-width;\r\n position: absolute;\r\n inset-block-start: selectable-variables.$border-width;\r\n inline-size: selectable-variables.$size - 2 * selectable-variables.$border-width;\r\n }\r\n }\r\n\r\n &:active,\r\n &.active {\r\n + label::before {\r\n background-color: selectable-variables.$active-background-color;\r\n box-shadow: 0 0 0 1px selectable-variables.$valid-color;\r\n block-size: selectable-variables.$size - 2px;\r\n inset-inline-start: 1px;\r\n inset-block-start: 1px;\r\n inline-size: selectable-variables.$size - 2px;\r\n }\r\n }\r\n }\r\n\r\n input[type=\"checkbox\"] {\r\n + label {\r\n &::before {\r\n border-radius: 4px;\r\n }\r\n\r\n &::after {\r\n background: transparent;\r\n content: \"\";\r\n inset-inline-start: 6px;\r\n opacity: 0;\r\n position: absolute;\r\n inset-block-start: 6px;\r\n zoom: 1;\r\n }\r\n }\r\n\r\n &:checked,\r\n &:indeterminate {\r\n + label {\r\n &::after {\r\n opacity: 1;\r\n }\r\n }\r\n }\r\n\r\n &:checked {\r\n + label {\r\n &::after {\r\n border: solid;\r\n border-color: var(--_dso-selectable-color, selectable-variables.$valid-marker-color);\r\n border-block-start-color: transparent;\r\n border-width: 0 0 3px 3px;\r\n block-size: 8px;\r\n transform: rotate(-45deg);\r\n inline-size: 13px;\r\n }\r\n }\r\n }\r\n\r\n &:indeterminate {\r\n + label {\r\n &::after {\r\n background-color: var(--_dso-selectable-color, selectable-variables.$valid-marker-color);\r\n block-size: selectable-variables.$indeterminate-size;\r\n inline-size: selectable-variables.$indeterminate-size;\r\n }\r\n }\r\n }\r\n }\r\n\r\n input[type=\"radio\"] {\r\n + label {\r\n &::before {\r\n border-radius: 50%;\r\n }\r\n\r\n &::after {\r\n background-color: transparent;\r\n border-radius: 50%;\r\n content: \"\";\r\n block-size: 12px;\r\n inset-inline-start: 6px;\r\n opacity: 0;\r\n position: absolute;\r\n inset-block-start: 6px;\r\n inline-size: 12px;\r\n zoom: 1;\r\n }\r\n }\r\n\r\n &:checked {\r\n + label {\r\n &::after {\r\n background-color: var(--_dso-selectable-color, selectable-variables.$valid-marker-color);\r\n opacity: 1;\r\n }\r\n }\r\n }\r\n }\r\n\r\n &[invalid]:not([invalid=\"false\"]) {\r\n --_dso-selectable-color: #{selectable-variables.$invalid-color};\r\n }\r\n\r\n > dso-info {\r\n float: none;\r\n margin-block: units.$u1 0;\r\n margin-inline: 0 units.$u2;\r\n inline-size: 100%;\r\n }\r\n\r\n .dso-selectable-options {\r\n list-style: none;\r\n margin-block-start: units.$u1;\r\n padding-inline-start: 0;\r\n\r\n li + li {\r\n margin-block-start: units.$u1;\r\n }\r\n }\r\n}\r\n\r\n:host(:not(:last-child)) {\r\n margin-block-end: units.$u1;\r\n}\r\n\r\n@include utilities.box-sizing();\r\n\r\n.dso-selectable-container {\r\n display: inline-block;\r\n\r\n .dso-selectable-input-wrapper {\r\n display: inline-block;\r\n min-block-size: units.$u3;\r\n position: relative;\r\n margin-inline-start: var(\r\n --_dt-selectable-input-wrapper-margin-inline-start,\r\n -(selectable-variables.$symbol-indent)\r\n );\r\n padding-inline-start: var(--_dt-selectable-input-wrapper-padding-inline-start, selectable-variables.$symbol-indent);\r\n\r\n input[type=\"radio\"],\r\n input[type=\"checkbox\"] {\r\n &:focus + label::before {\r\n box-shadow: 0 0 0 selectable-variables.$border-width\r\n var(--_dso-selectable-color, selectable-variables.$valid-color);\r\n block-size: selectable-variables.$size - 2 * selectable-variables.$border-width;\r\n inset-inline-start: selectable-variables.$border-width;\r\n inset-block-start: selectable-variables.$border-width;\r\n inline-size: selectable-variables.$size - 2 * selectable-variables.$border-width;\r\n }\r\n }\r\n }\r\n}\r\n\r\n::slotted([slot=\"info\"]) {\r\n float: none;\r\n margin-block: units.$u1 0;\r\n margin-inline: 0 units.$u2;\r\n inline-size: 100%;\r\n}\r\n\r\n::slotted([slot=\"options\"]) {\r\n list-style: none;\r\n margin-block-start: units.$u1;\r\n padding-inline-start: 0;\r\n\r\n li + li {\r\n margin-block-start: units.$u1;\r\n }\r\n}\r\n","import {\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 forceUpdate,\r\n h,\r\n} from \"@stencil/core\";\r\n\r\nimport { createIdentifier } from \"../../utils/create-identifier\";\r\n\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 /**\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=\"dso-selectable-input-wrapper\">\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 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"],"version":3}
|
|
@@ -680,9 +680,9 @@ class OzonContentFiguurNode {
|
|
|
680
680
|
};
|
|
681
681
|
}
|
|
682
682
|
render(node, { mapNodeToJsx, urlResolver }) {
|
|
683
|
-
var _a, _b, _c, _d
|
|
683
|
+
var _a, _b, _c, _d;
|
|
684
684
|
const childNodes = Array.from(node.childNodes);
|
|
685
|
-
const titel =
|
|
685
|
+
const titel = childNodes.find((n) => getNodeName(n) === "Titel");
|
|
686
686
|
const bron = childNodes.find((n) => getNodeName(n) === "Bron");
|
|
687
687
|
const illustratieNode = childNodes.find((n) => getNodeName(n) === "Illustratie");
|
|
688
688
|
const bijschriftNode = childNodes.find((n) => getNodeName(n) === "Bijschrift");
|
|
@@ -692,17 +692,17 @@ class OzonContentFiguurNode {
|
|
|
692
692
|
const bijschrift = bijschriftNode instanceof Element
|
|
693
693
|
? {
|
|
694
694
|
inhoud: bijschriftNode.childNodes,
|
|
695
|
-
locatie: (
|
|
695
|
+
locatie: (_a = bijschriftNode.getAttribute("locatie")) !== null && _a !== void 0 ? _a : "onder",
|
|
696
696
|
}
|
|
697
697
|
: undefined;
|
|
698
698
|
const src = urlResolver ? urlResolver("Illustratie", "naam", illustratie.naam, node) : illustratie.naam;
|
|
699
699
|
return (h("div", { class: `dso-ozon-figuur ${bijschrift ? `bijschrift-${bijschrift.locatie}` : "onder"}`, style: this.getStyle(illustratie) },
|
|
700
|
-
titel && h("span", { class: "figuur-titel" }, titel),
|
|
700
|
+
titel && h("span", { class: "figuur-titel" }, mapNodeToJsx(titel)),
|
|
701
701
|
(bijschrift === null || bijschrift === void 0 ? void 0 : bijschrift.locatie) === "boven" && (h(Bijschrift, { bijschrift: bijschrift, bron: bron, mapNodeToJsx: mapNodeToJsx })),
|
|
702
702
|
h("dso-image-overlay", { wijzigactie: wijzigactie },
|
|
703
703
|
titel && (h("div", { slot: "titel" },
|
|
704
|
-
h("span", null, titel))),
|
|
705
|
-
h("img", { src: src !== null && src !== void 0 ? src : undefined, alt: (
|
|
704
|
+
h("span", null, mapNodeToJsx(titel)))),
|
|
705
|
+
h("img", { src: src !== null && src !== void 0 ? src : undefined, alt: (_d = (_c = (_b = illustratie.alt) !== null && _b !== void 0 ? _b : titel === null || titel === void 0 ? void 0 : titel.textContent) !== null && _c !== void 0 ? _c : illustratie.naam) !== null && _d !== void 0 ? _d : undefined }),
|
|
706
706
|
(bijschrift || bron) && (h("div", { slot: "bijschrift" },
|
|
707
707
|
h(Bijschrift, { bijschrift: bijschrift, bron: bron, mapNodeToJsx: mapNodeToJsx })))),
|
|
708
708
|
((bijschrift === null || bijschrift === void 0 ? void 0 : bijschrift.locatie) === "onder" || (!bijschrift && bron)) && (h(Bijschrift, { bijschrift: bijschrift, bron: bron, mapNodeToJsx: mapNodeToJsx }))));
|
|
@@ -1257,6 +1257,6 @@ function defineCustomElement() {
|
|
|
1257
1257
|
}
|
|
1258
1258
|
|
|
1259
1259
|
export { MarkText as M, OzonContent as O, parseWijzigactieFromNode as a, defineCustomElement as d, parseXml as p };
|
|
1260
|
-
//# sourceMappingURL=p-
|
|
1260
|
+
//# sourceMappingURL=p-DbaZzGS_.js.map
|
|
1261
1261
|
|
|
1262
|
-
//# sourceMappingURL=p-
|
|
1262
|
+
//# sourceMappingURL=p-DbaZzGS_.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"file":"p-DbaZzGS_.js","mappings":"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GAAG,EAAE,QAAQ,EAAE,GAAG;AAC7D,GAAE,QAAQ,EAAE,GAAG,GAAG,QAAQ,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG;AAC5E,GAAE,QAAQ,EAAE,GAAG,GAAG,QAAQ,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG;AAC5E,GAAE,QAAQ,EAAE,GAAG,GAAG,QAAQ,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG;AAC7D,GAAE,QAAQ,EAAE,GAAG,GAAG,QAAQ,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG;AAC7D,GAAE,QAAQ,EAAE,GAAG,GAAG,QAAQ,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG;AAC7D,GAAE,QAAQ,EAAE,GAAG,GAAG,QAAQ,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG;AAC5E,GAAE,QAAQ,EAAE,GAAG,GAAG,QAAQ,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG;AAC5E,GAAE,QAAQ,EAAE,GAAG,GAAG,QAAQ,EAAE,GAAG;GAC7B,QAAQ,EAAE,GAAG,GAAG,QAAQ,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG;AAC9C,GAAE,QAAQ,EAAE,GAAG,GAAG,QAAQ,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG;AAC5E,GAAE,QAAQ,EAAE,GAAG,GAAG,QAAQ,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG;AAC5E,GAAE,QAAQ,EAAE,GAAG,GAAG,QAAQ,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG;AAC7D,GAAE,QAAQ,EAAE,GAAG,GAAG,QAAQ,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG;GA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","names":["global","mapData","uuidv4","__stencil_proxyCustomElement","HTMLElement"],"sources":["src/functional-components/mark-text/mark-text.functional-component.tsx","src/utils/parse-xml.ts","src/components/ozon-content/functions/parse-wijzigactie-from-node.function.ts","src/components/ozon-content/get-node-name.function.ts","src/components/ozon-content/nodes/abbr.node.tsx","src/components/ozon-content/functional-components/wrap-wijzigactie.functional-component.tsx","src/components/ozon-content/functions/wijzigactie-to-class-name.function.ts","src/components/ozon-content/nodes/al.node.tsx","src/components/ozon-content/nodes/begrip.node.tsx","src/components/ozon-content/nodes/begrippenlijst.node.tsx","src/components/ozon-content/nodes/bron.node.tsx","src/components/ozon-content/nodes/document.node.tsx","../../node_modules/lodash.kebabcase/index.js","src/components/ozon-content/nodes/ext-ref.node.tsx","src/components/ozon-content/nodes/fallback.node.tsx","src/components/ozon-content/nodes/figuur.node.tsx","src/components/ozon-content/nodes/inhoud.node.tsx","src/components/ozon-content/nodes/inline-tekst-afbeelding.node.tsx","src/components/ozon-content/nodes/inline.nodes.tsx","src/components/ozon-content/nodes/int-io-ref.node.tsx","src/components/ozon-content/nodes/int-ref.node.tsx","src/components/ozon-content/nodes/kop.node.tsx","src/components/ozon-content/nodes/lijst.node.tsx","src/components/ozon-content/nodes/nieuwe-tekst.node.tsx","src/components/ozon-content/nodes/noot.node.tsx","src/components/ozon-content/nodes/table.node/colspec/colspec-mapper.ts","src/components/ozon-content/nodes/table.node/table-colgroup.tsx","src/components/ozon-content/nodes/table.node/table-cell.tsx","src/components/ozon-content/nodes/table.node/table-rows.tsx","src/components/ozon-content/nodes/table.node/table.node.tsx","src/components/ozon-content/nodes/text.node.tsx","src/components/ozon-content/nodes/verwijderde-tekst.node.tsx","src/components/ozon-content/ozon-content-mapper.tsx","src/components/ozon-content/ozon-content.scss?tag=dso-ozon-content&encapsulation=shadow","src/components/ozon-content/ozon-content.tsx"],"sourcesContent":["import { Fragment, FunctionalComponent, h } from \"@stencil/core\";\r\n\r\nimport { MarkTextMarkFunction } from \"./mark-text.interfaces\";\r\n\r\nexport interface MarkTextProps {\r\n mark: MarkTextMarkFunction;\r\n text: string;\r\n emitMarkItemHighlight(text: string, elementRef: HTMLElement): void;\r\n}\r\n\r\nexport const MarkText: FunctionalComponent<MarkTextProps> = ({ mark, text, emitMarkItemHighlight }) => {\r\n const result = mark(text);\r\n\r\n return !result || result.length === 0 ? (\r\n <Fragment>{text}</Fragment>\r\n ) : (\r\n <Fragment>\r\n {result.map((value) => {\r\n if (typeof value === \"string\") {\r\n return <Fragment>{value}</Fragment>;\r\n }\r\n\r\n return (\r\n <mark\r\n class={value.highlight ? \"dso-highlight\" : undefined}\r\n ref={(ref) => value.highlight && ref && emitMarkItemHighlight(value.text, ref)}\r\n >\r\n {value.text}\r\n </mark>\r\n );\r\n })}\r\n </Fragment>\r\n );\r\n};\r\n","const parser = new DOMParser();\r\n\r\nexport function parseXml(input: string): XMLDocument | undefined {\r\n if (!input) {\r\n return undefined;\r\n }\r\n\r\n const doc = parser.parseFromString(input, \"application/xml\");\r\n\r\n if (doc.querySelector(\"parsererror\")) {\r\n console.error(\r\n {\r\n message: \"Unable to parse XML\",\r\n input,\r\n document: doc,\r\n },\r\n null,\r\n 2,\r\n );\r\n\r\n return undefined;\r\n }\r\n\r\n return doc;\r\n}\r\n","import { OzonContentWijzigActie } from \"../ozon-content.interfaces\";\r\n\r\nexport function parseWijzigactieFromNode(node: Node): OzonContentWijzigActie | undefined {\r\n const wijzigactie = node instanceof Element ? node.getAttribute(\"wijzigactie\") : undefined;\r\n\r\n return wijzigactie === \"voegtoe\" || wijzigactie === \"verwijder\" ? wijzigactie : undefined;\r\n}\r\n","export function getNodeName(node: Node): string {\r\n if (node instanceof Element) {\r\n return node.localName;\r\n }\r\n\r\n if (node.nodeName.includes(\":\")) {\r\n return node.nodeName.substring(node.nodeName.indexOf(\":\") + 1);\r\n }\r\n\r\n return node.nodeName;\r\n}\r\n","import { h } from \"@stencil/core\";\r\n\r\nimport { OzonContentNodeContext } from \"../ozon-content-node-context.interface\";\r\nimport { OzonContentNode } from \"../ozon-content-node.interface\";\r\n\r\nexport class OzonContentAbbrNode implements OzonContentNode {\r\n name = \"abbr\";\r\n\r\n render(node: Element, { mapNodeToJsx }: OzonContentNodeContext) {\r\n const title = node.getAttribute(\"title\");\r\n\r\n return (\r\n <span class=\"od-abbr\">\r\n <abbr>{mapNodeToJsx(node.childNodes)}</abbr>\r\n {title && ` (${title})`}\r\n </span>\r\n );\r\n }\r\n}\r\n","import { FunctionalComponent, h } from \"@stencil/core\";\r\n\r\nimport { OzonContentWijzigActie } from \"../ozon-content.interfaces\";\r\n\r\nexport interface WrapWijzigactieProps {\r\n wijzigactie: OzonContentWijzigActie | undefined;\r\n}\r\n\r\nexport const WrapWijzigactie: FunctionalComponent<WrapWijzigactieProps> = ({ wijzigactie }, children) => {\r\n if (wijzigactie === \"voegtoe\") {\r\n return <ins>{children}</ins>;\r\n }\r\n\r\n if (wijzigactie === \"verwijder\") {\r\n return <del>{children}</del>;\r\n }\r\n\r\n return children;\r\n};\r\n","import { OzonContentWijzigActie } from \"../ozon-content.interfaces\";\r\n\r\nexport function wijzigactieToClassName(wijzigactie: OzonContentWijzigActie | undefined): string | undefined {\r\n if (wijzigactie === \"voegtoe\") {\r\n return \"editaction-add\";\r\n }\r\n\r\n if (wijzigactie === \"verwijder\") {\r\n return \"editaction-remove\";\r\n }\r\n\r\n return undefined;\r\n}\r\n","import { h } from \"@stencil/core\";\r\n\r\nimport { WrapWijzigactie } from \"../functional-components/wrap-wijzigactie.functional-component\";\r\nimport { parseWijzigactieFromNode } from \"../functions/parse-wijzigactie-from-node.function\";\r\nimport { wijzigactieToClassName } from \"../functions/wijzigactie-to-class-name.function\";\r\nimport { getNodeName } from \"../get-node-name.function\";\r\nimport { OzonContentNodeContext } from \"../ozon-content-node-context.interface\";\r\nimport { OzonContentNode } from \"../ozon-content-node.interface\";\r\n\r\nfunction isNestedAl(path: Node[]) {\r\n return path.some((n) => {\r\n const nodeName = getNodeName(n);\r\n\r\n return nodeName === \"Al\" || nodeName === \"Opschrift\";\r\n });\r\n}\r\n\r\nexport class OzonContentAlNode implements OzonContentNode {\r\n name = \"Al\";\r\n\r\n render(node: Element, { mapNodeToJsx, path, inline }: OzonContentNodeContext) {\r\n let content = mapNodeToJsx(node.childNodes);\r\n const wijzigactie = parseWijzigactieFromNode(node);\r\n const className = wijzigactieToClassName(wijzigactie);\r\n\r\n if (inline || isNestedAl(path)) {\r\n content = (\r\n <span role=\"paragraph\" class={className}>\r\n {content}\r\n </span>\r\n );\r\n } else {\r\n content = <p class={className}>{content}</p>;\r\n }\r\n\r\n return <WrapWijzigactie wijzigactie={wijzigactie}>{content}</WrapWijzigactie>;\r\n }\r\n}\r\n","import { FunctionalComponent, JSX, h } from \"@stencil/core\";\r\n\r\nimport { WrapWijzigactie } from \"../functional-components/wrap-wijzigactie.functional-component\";\r\nimport { parseWijzigactieFromNode } from \"../functions/parse-wijzigactie-from-node.function\";\r\nimport { wijzigactieToClassName } from \"../functions/wijzigactie-to-class-name.function\";\r\nimport { getNodeName } from \"../get-node-name.function\";\r\nimport { OzonContentNodeContext } from \"../ozon-content-node-context.interface\";\r\nimport { OzonContentNode } from \"../ozon-content-node.interface\";\r\nimport { OzonContentWijzigActie } from \"../ozon-content.interfaces\";\r\n\r\ninterface BegripProps {\r\n begripWijzigactie: OzonContentWijzigActie | undefined;\r\n node: ChildNode;\r\n mapNodeToJsx: (node: Node | NodeList | Node[]) => JSX.Element;\r\n}\r\n\r\nconst Term: FunctionalComponent<BegripProps> = ({ begripWijzigactie, node, mapNodeToJsx }) => {\r\n const content = mapNodeToJsx(node.childNodes);\r\n const wijzigactie = parseWijzigactieFromNode(node);\r\n const className = wijzigactieToClassName(wijzigactie);\r\n\r\n return (\r\n <dt class={className}>\r\n <WrapWijzigactie wijzigactie={begripWijzigactie || wijzigactie}>{content}</WrapWijzigactie>\r\n </dt>\r\n );\r\n};\r\n\r\nconst Definitie: FunctionalComponent<BegripProps> = ({ begripWijzigactie, node, mapNodeToJsx }) => {\r\n const content = mapNodeToJsx(node.childNodes);\r\n const wijzigactie = parseWijzigactieFromNode(node);\r\n const className = wijzigactieToClassName(wijzigactie);\r\n\r\n return (\r\n <dd class={className}>\r\n <WrapWijzigactie wijzigactie={begripWijzigactie || wijzigactie}>{content}</WrapWijzigactie>\r\n </dd>\r\n );\r\n};\r\n\r\nexport class OzonContentBegripNode implements OzonContentNode {\r\n name = \"Begrip\";\r\n\r\n render(node: Element, { mapNodeToJsx }: OzonContentNodeContext) {\r\n const wijzigactie = parseWijzigactieFromNode(node);\r\n const className = wijzigactieToClassName(wijzigactie);\r\n\r\n const childNodes = Array.from(node.childNodes);\r\n const terms = childNodes.filter((n) => getNodeName(n) === \"Term\");\r\n const definitions = childNodes.filter((n) => getNodeName(n) === \"Definitie\");\r\n\r\n return (\r\n <div class={className}>\r\n {terms.map((term) => (\r\n <Term node={term} begripWijzigactie={wijzigactie} mapNodeToJsx={mapNodeToJsx} />\r\n ))}\r\n {definitions.map((definition) => (\r\n <Definitie node={definition} begripWijzigactie={wijzigactie} mapNodeToJsx={mapNodeToJsx} />\r\n ))}\r\n </div>\r\n );\r\n }\r\n}\r\n","import { h } from \"@stencil/core\";\r\n\r\nimport { WrapWijzigactie } from \"../functional-components/wrap-wijzigactie.functional-component\";\r\nimport { parseWijzigactieFromNode } from \"../functions/parse-wijzigactie-from-node.function\";\r\nimport { wijzigactieToClassName } from \"../functions/wijzigactie-to-class-name.function\";\r\nimport { OzonContentNodeContext } from \"../ozon-content-node-context.interface\";\r\nimport { OzonContentNode } from \"../ozon-content-node.interface\";\r\n\r\nexport class OzonContentBegrippenlijstNode implements OzonContentNode {\r\n name = \"Begrippenlijst\";\r\n\r\n render(node: Element, { mapNodeToJsx }: OzonContentNodeContext) {\r\n const content = mapNodeToJsx(node.childNodes);\r\n const wijzigactie = parseWijzigactieFromNode(node);\r\n const className = wijzigactieToClassName(wijzigactie);\r\n\r\n return (\r\n <div class=\"begrippenlijst\">\r\n <WrapWijzigactie wijzigactie={wijzigactie}>\r\n <dl class={className}>{content}</dl>\r\n </WrapWijzigactie>\r\n </div>\r\n );\r\n }\r\n}\r\n","import { h } from \"@stencil/core\";\r\n\r\nimport { OzonContentNodeContext } from \"../ozon-content-node-context.interface\";\r\nimport { OzonContentNode } from \"../ozon-content-node.interface\";\r\n\r\nexport class OzonContentBronNode implements OzonContentNode {\r\n name = \"Bron\";\r\n\r\n render(node: Element, { mapNodeToJsx }: OzonContentNodeContext) {\r\n return <span class=\"dso-ozon-bron\">{mapNodeToJsx(node.childNodes)}</span>;\r\n }\r\n}\r\n","import { Fragment, h } from \"@stencil/core\";\r\n\r\nimport { OzonContentNodeContext } from \"../ozon-content-node-context.interface\";\r\nimport { OzonContentNode } from \"../ozon-content-node.interface\";\r\n\r\nexport class OzonContentDocumentNode implements OzonContentNode {\r\n name = \"#document\";\r\n\r\n render(node: Node, { mapNodeToJsx }: OzonContentNodeContext) {\r\n return <Fragment>{mapNodeToJsx(node.childNodes)}</Fragment>;\r\n }\r\n}\r\n","/**\n * lodash (Custom Build) <https://lodash.com/>\n * Build: `lodash modularize exports=\"npm\" -o ./`\n * Copyright jQuery Foundation and other contributors <https://jquery.org/>\n * Released under MIT license <https://lodash.com/license>\n * Based on Underscore.js 1.8.3 <http://underscorejs.org/LICENSE>\n * Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors\n */\n\n/** Used as references for various `Number` constants. */\nvar INFINITY = 1 / 0;\n\n/** `Object#toString` result references. */\nvar symbolTag = '[object Symbol]';\n\n/** Used to match words composed of alphanumeric characters. */\nvar reAsciiWord = /[^\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\x7f]+/g;\n\n/** Used to match Latin Unicode letters (excluding mathematical operators). */\nvar reLatin = /[\\xc0-\\xd6\\xd8-\\xf6\\xf8-\\xff\\u0100-\\u017f]/g;\n\n/** Used to compose unicode character classes. */\nvar rsAstralRange = '\\\\ud800-\\\\udfff',\n rsComboMarksRange = '\\\\u0300-\\\\u036f\\\\ufe20-\\\\ufe23',\n rsComboSymbolsRange = '\\\\u20d0-\\\\u20f0',\n rsDingbatRange = '\\\\u2700-\\\\u27bf',\n rsLowerRange = 'a-z\\\\xdf-\\\\xf6\\\\xf8-\\\\xff',\n rsMathOpRange = '\\\\xac\\\\xb1\\\\xd7\\\\xf7',\n rsNonCharRange = '\\\\x00-\\\\x2f\\\\x3a-\\\\x40\\\\x5b-\\\\x60\\\\x7b-\\\\xbf',\n rsPunctuationRange = '\\\\u2000-\\\\u206f',\n rsSpaceRange = ' \\\\t\\\\x0b\\\\f\\\\xa0\\\\ufeff\\\\n\\\\r\\\\u2028\\\\u2029\\\\u1680\\\\u180e\\\\u2000\\\\u2001\\\\u2002\\\\u2003\\\\u2004\\\\u2005\\\\u2006\\\\u2007\\\\u2008\\\\u2009\\\\u200a\\\\u202f\\\\u205f\\\\u3000',\n rsUpperRange = 'A-Z\\\\xc0-\\\\xd6\\\\xd8-\\\\xde',\n rsVarRange = '\\\\ufe0e\\\\ufe0f',\n rsBreakRange = rsMathOpRange + rsNonCharRange + rsPunctuationRange + rsSpaceRange;\n\n/** Used to compose unicode capture groups. */\nvar rsApos = \"['\\u2019]\",\n rsBreak = '[' + rsBreakRange + ']',\n rsCombo = '[' + rsComboMarksRange + rsComboSymbolsRange + ']',\n rsDigits = '\\\\d+',\n rsDingbat = '[' + rsDingbatRange + ']',\n rsLower = '[' + rsLowerRange + ']',\n rsMisc = '[^' + rsAstralRange + rsBreakRange + rsDigits + rsDingbatRange + rsLowerRange + rsUpperRange + ']',\n rsFitz = '\\\\ud83c[\\\\udffb-\\\\udfff]',\n rsModifier = '(?:' + rsCombo + '|' + rsFitz + ')',\n rsNonAstral = '[^' + rsAstralRange + ']',\n rsRegional = '(?:\\\\ud83c[\\\\udde6-\\\\uddff]){2}',\n rsSurrPair = '[\\\\ud800-\\\\udbff][\\\\udc00-\\\\udfff]',\n rsUpper = '[' + rsUpperRange + ']',\n rsZWJ = '\\\\u200d';\n\n/** Used to compose unicode regexes. */\nvar rsLowerMisc = '(?:' + rsLower + '|' + rsMisc + ')',\n rsUpperMisc = '(?:' + rsUpper + '|' + rsMisc + ')',\n rsOptLowerContr = '(?:' + rsApos + '(?:d|ll|m|re|s|t|ve))?',\n rsOptUpperContr = '(?:' + rsApos + '(?:D|LL|M|RE|S|T|VE))?',\n reOptMod = rsModifier + '?',\n rsOptVar = '[' + rsVarRange + ']?',\n rsOptJoin = '(?:' + rsZWJ + '(?:' + [rsNonAstral, rsRegional, rsSurrPair].join('|') + ')' + rsOptVar + reOptMod + ')*',\n rsSeq = rsOptVar + reOptMod + rsOptJoin,\n rsEmoji = '(?:' + [rsDingbat, rsRegional, rsSurrPair].join('|') + ')' + rsSeq;\n\n/** Used to match apostrophes. */\nvar reApos = RegExp(rsApos, 'g');\n\n/**\n * Used to match [combining diacritical marks](https://en.wikipedia.org/wiki/Combining_Diacritical_Marks) and\n * [combining diacritical marks for symbols](https://en.wikipedia.org/wiki/Combining_Diacritical_Marks_for_Symbols).\n */\nvar reComboMark = RegExp(rsCombo, 'g');\n\n/** Used to match complex or compound words. */\nvar reUnicodeWord = RegExp([\n rsUpper + '?' + rsLower + '+' + rsOptLowerContr + '(?=' + [rsBreak, rsUpper, '$'].join('|') + ')',\n rsUpperMisc + '+' + rsOptUpperContr + '(?=' + [rsBreak, rsUpper + rsLowerMisc, '$'].join('|') + ')',\n rsUpper + '?' + rsLowerMisc + '+' + rsOptLowerContr,\n rsUpper + '+' + rsOptUpperContr,\n rsDigits,\n rsEmoji\n].join('|'), 'g');\n\n/** Used to detect strings that need a more robust regexp to match words. */\nvar reHasUnicodeWord = /[a-z][A-Z]|[A-Z]{2,}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/;\n\n/** Used to map Latin Unicode letters to basic Latin letters. */\nvar deburredLetters = {\n // Latin-1 Supplement block.\n '\\xc0': 'A', '\\xc1': 'A', '\\xc2': 'A', '\\xc3': 'A', '\\xc4': 'A', '\\xc5': 'A',\n '\\xe0': 'a', '\\xe1': 'a', '\\xe2': 'a', '\\xe3': 'a', '\\xe4': 'a', '\\xe5': 'a',\n '\\xc7': 'C', '\\xe7': 'c',\n '\\xd0': 'D', '\\xf0': 'd',\n '\\xc8': 'E', '\\xc9': 'E', '\\xca': 'E', '\\xcb': 'E',\n '\\xe8': 'e', '\\xe9': 'e', '\\xea': 'e', '\\xeb': 'e',\n '\\xcc': 'I', '\\xcd': 'I', '\\xce': 'I', '\\xcf': 'I',\n '\\xec': 'i', '\\xed': 'i', '\\xee': 'i', '\\xef': 'i',\n '\\xd1': 'N', '\\xf1': 'n',\n '\\xd2': 'O', '\\xd3': 'O', '\\xd4': 'O', '\\xd5': 'O', '\\xd6': 'O', '\\xd8': 'O',\n '\\xf2': 'o', '\\xf3': 'o', '\\xf4': 'o', '\\xf5': 'o', '\\xf6': 'o', '\\xf8': 'o',\n '\\xd9': 'U', '\\xda': 'U', '\\xdb': 'U', '\\xdc': 'U',\n '\\xf9': 'u', '\\xfa': 'u', '\\xfb': 'u', '\\xfc': 'u',\n '\\xdd': 'Y', '\\xfd': 'y', '\\xff': 'y',\n '\\xc6': 'Ae', '\\xe6': 'ae',\n '\\xde': 'Th', '\\xfe': 'th',\n '\\xdf': 'ss',\n // Latin Extended-A block.\n '\\u0100': 'A', '\\u0102': 'A', '\\u0104': 'A',\n '\\u0101': 'a', '\\u0103': 'a', '\\u0105': 'a',\n '\\u0106': 'C', '\\u0108': 'C', '\\u010a': 'C', '\\u010c': 'C',\n '\\u0107': 'c', '\\u0109': 'c', '\\u010b': 'c', '\\u010d': 'c',\n '\\u010e': 'D', '\\u0110': 'D', '\\u010f': 'd', '\\u0111': 'd',\n '\\u0112': 'E', '\\u0114': 'E', '\\u0116': 'E', '\\u0118': 'E', '\\u011a': 'E',\n '\\u0113': 'e', '\\u0115': 'e', '\\u0117': 'e', '\\u0119': 'e', '\\u011b': 'e',\n '\\u011c': 'G', '\\u011e': 'G', '\\u0120': 'G', '\\u0122': 'G',\n '\\u011d': 'g', '\\u011f': 'g', '\\u0121': 'g', '\\u0123': 'g',\n '\\u0124': 'H', '\\u0126': 'H', '\\u0125': 'h', '\\u0127': 'h',\n '\\u0128': 'I', '\\u012a': 'I', '\\u012c': 'I', '\\u012e': 'I', '\\u0130': 'I',\n '\\u0129': 'i', '\\u012b': 'i', '\\u012d': 'i', '\\u012f': 'i', '\\u0131': 'i',\n '\\u0134': 'J', '\\u0135': 'j',\n '\\u0136': 'K', '\\u0137': 'k', '\\u0138': 'k',\n '\\u0139': 'L', '\\u013b': 'L', '\\u013d': 'L', '\\u013f': 'L', '\\u0141': 'L',\n '\\u013a': 'l', '\\u013c': 'l', '\\u013e': 'l', '\\u0140': 'l', '\\u0142': 'l',\n '\\u0143': 'N', '\\u0145': 'N', '\\u0147': 'N', '\\u014a': 'N',\n '\\u0144': 'n', '\\u0146': 'n', '\\u0148': 'n', '\\u014b': 'n',\n '\\u014c': 'O', '\\u014e': 'O', '\\u0150': 'O',\n '\\u014d': 'o', '\\u014f': 'o', '\\u0151': 'o',\n '\\u0154': 'R', '\\u0156': 'R', '\\u0158': 'R',\n '\\u0155': 'r', '\\u0157': 'r', '\\u0159': 'r',\n '\\u015a': 'S', '\\u015c': 'S', '\\u015e': 'S', '\\u0160': 'S',\n '\\u015b': 's', '\\u015d': 's', '\\u015f': 's', '\\u0161': 's',\n '\\u0162': 'T', '\\u0164': 'T', '\\u0166': 'T',\n '\\u0163': 't', '\\u0165': 't', '\\u0167': 't',\n '\\u0168': 'U', '\\u016a': 'U', '\\u016c': 'U', '\\u016e': 'U', '\\u0170': 'U', '\\u0172': 'U',\n '\\u0169': 'u', '\\u016b': 'u', '\\u016d': 'u', '\\u016f': 'u', '\\u0171': 'u', '\\u0173': 'u',\n '\\u0174': 'W', '\\u0175': 'w',\n '\\u0176': 'Y', '\\u0177': 'y', '\\u0178': 'Y',\n '\\u0179': 'Z', '\\u017b': 'Z', '\\u017d': 'Z',\n '\\u017a': 'z', '\\u017c': 'z', '\\u017e': 'z',\n '\\u0132': 'IJ', '\\u0133': 'ij',\n '\\u0152': 'Oe', '\\u0153': 'oe',\n '\\u0149': \"'n\", '\\u017f': 'ss'\n};\n\n/** Detect free variable `global` from Node.js. */\nvar freeGlobal = typeof global == 'object' && global && global.Object === Object && global;\n\n/** Detect free variable `self`. */\nvar freeSelf = typeof self == 'object' && self && self.Object === Object && self;\n\n/** Used as a reference to the global object. */\nvar root = freeGlobal || freeSelf || Function('return this')();\n\n/**\n * A specialized version of `_.reduce` for arrays without support for\n * iteratee shorthands.\n *\n * @private\n * @param {Array} [array] The array to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @param {*} [accumulator] The initial value.\n * @param {boolean} [initAccum] Specify using the first element of `array` as\n * the initial value.\n * @returns {*} Returns the accumulated value.\n */\nfunction arrayReduce(array, iteratee, accumulator, initAccum) {\n var index = -1,\n length = array ? array.length : 0;\n\n if (initAccum && length) {\n accumulator = array[++index];\n }\n while (++index < length) {\n accumulator = iteratee(accumulator, array[index], index, array);\n }\n return accumulator;\n}\n\n/**\n * Splits an ASCII `string` into an array of its words.\n *\n * @private\n * @param {string} The string to inspect.\n * @returns {Array} Returns the words of `string`.\n */\nfunction asciiWords(string) {\n return string.match(reAsciiWord) || [];\n}\n\n/**\n * The base implementation of `_.propertyOf` without support for deep paths.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Function} Returns the new accessor function.\n */\nfunction basePropertyOf(object) {\n return function(key) {\n return object == null ? undefined : object[key];\n };\n}\n\n/**\n * Used by `_.deburr` to convert Latin-1 Supplement and Latin Extended-A\n * letters to basic Latin letters.\n *\n * @private\n * @param {string} letter The matched letter to deburr.\n * @returns {string} Returns the deburred letter.\n */\nvar deburrLetter = basePropertyOf(deburredLetters);\n\n/**\n * Checks if `string` contains a word composed of Unicode symbols.\n *\n * @private\n * @param {string} string The string to inspect.\n * @returns {boolean} Returns `true` if a word is found, else `false`.\n */\nfunction hasUnicodeWord(string) {\n return reHasUnicodeWord.test(string);\n}\n\n/**\n * Splits a Unicode `string` into an array of its words.\n *\n * @private\n * @param {string} The string to inspect.\n * @returns {Array} Returns the words of `string`.\n */\nfunction unicodeWords(string) {\n return string.match(reUnicodeWord) || [];\n}\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/**\n * Used to resolve the\n * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)\n * of values.\n */\nvar objectToString = objectProto.toString;\n\n/** Built-in value references. */\nvar Symbol = root.Symbol;\n\n/** Used to convert symbols to primitives and strings. */\nvar symbolProto = Symbol ? Symbol.prototype : undefined,\n symbolToString = symbolProto ? symbolProto.toString : undefined;\n\n/**\n * The base implementation of `_.toString` which doesn't convert nullish\n * values to empty strings.\n *\n * @private\n * @param {*} value The value to process.\n * @returns {string} Returns the string.\n */\nfunction baseToString(value) {\n // Exit early for strings to avoid a performance hit in some environments.\n if (typeof value == 'string') {\n return value;\n }\n if (isSymbol(value)) {\n return symbolToString ? symbolToString.call(value) : '';\n }\n var result = (value + '');\n return (result == '0' && (1 / value) == -INFINITY) ? '-0' : result;\n}\n\n/**\n * Creates a function like `_.camelCase`.\n *\n * @private\n * @param {Function} callback The function to combine each word.\n * @returns {Function} Returns the new compounder function.\n */\nfunction createCompounder(callback) {\n return function(string) {\n return arrayReduce(words(deburr(string).replace(reApos, '')), callback, '');\n };\n}\n\n/**\n * Checks if `value` is object-like. A value is object-like if it's not `null`\n * and has a `typeof` result of \"object\".\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is object-like, else `false`.\n * @example\n *\n * _.isObjectLike({});\n * // => true\n *\n * _.isObjectLike([1, 2, 3]);\n * // => true\n *\n * _.isObjectLike(_.noop);\n * // => false\n *\n * _.isObjectLike(null);\n * // => false\n */\nfunction isObjectLike(value) {\n return !!value && typeof value == 'object';\n}\n\n/**\n * Checks if `value` is classified as a `Symbol` primitive or object.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a symbol, else `false`.\n * @example\n *\n * _.isSymbol(Symbol.iterator);\n * // => true\n *\n * _.isSymbol('abc');\n * // => false\n */\nfunction isSymbol(value) {\n return typeof value == 'symbol' ||\n (isObjectLike(value) && objectToString.call(value) == symbolTag);\n}\n\n/**\n * Converts `value` to a string. An empty string is returned for `null`\n * and `undefined` values. The sign of `-0` is preserved.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to process.\n * @returns {string} Returns the string.\n * @example\n *\n * _.toString(null);\n * // => ''\n *\n * _.toString(-0);\n * // => '-0'\n *\n * _.toString([1, 2, 3]);\n * // => '1,2,3'\n */\nfunction toString(value) {\n return value == null ? '' : baseToString(value);\n}\n\n/**\n * Deburrs `string` by converting\n * [Latin-1 Supplement](https://en.wikipedia.org/wiki/Latin-1_Supplement_(Unicode_block)#Character_table)\n * and [Latin Extended-A](https://en.wikipedia.org/wiki/Latin_Extended-A)\n * letters to basic Latin letters and removing\n * [combining diacritical marks](https://en.wikipedia.org/wiki/Combining_Diacritical_Marks).\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category String\n * @param {string} [string=''] The string to deburr.\n * @returns {string} Returns the deburred string.\n * @example\n *\n * _.deburr('déjà vu');\n * // => 'deja vu'\n */\nfunction deburr(string) {\n string = toString(string);\n return string && string.replace(reLatin, deburrLetter).replace(reComboMark, '');\n}\n\n/**\n * Converts `string` to\n * [kebab case](https://en.wikipedia.org/wiki/Letter_case#Special_case_styles).\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category String\n * @param {string} [string=''] The string to convert.\n * @returns {string} Returns the kebab cased string.\n * @example\n *\n * _.kebabCase('Foo Bar');\n * // => 'foo-bar'\n *\n * _.kebabCase('fooBar');\n * // => 'foo-bar'\n *\n * _.kebabCase('__FOO_BAR__');\n * // => 'foo-bar'\n */\nvar kebabCase = createCompounder(function(result, word, index) {\n return result + (index ? '-' : '') + word.toLowerCase();\n});\n\n/**\n * Splits `string` into an array of its words.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category String\n * @param {string} [string=''] The string to inspect.\n * @param {RegExp|string} [pattern] The pattern to match words.\n * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.\n * @returns {Array} Returns the words of `string`.\n * @example\n *\n * _.words('fred, barney, & pebbles');\n * // => ['fred', 'barney', 'pebbles']\n *\n * _.words('fred, barney, & pebbles', /[^, ]+/g);\n * // => ['fred', 'barney', '&', 'pebbles']\n */\nfunction words(string, pattern, guard) {\n string = toString(string);\n pattern = guard ? undefined : pattern;\n\n if (pattern === undefined) {\n return hasUnicodeWord(string) ? unicodeWords(string) : asciiWords(string);\n }\n return string.match(pattern) || [];\n}\n\nmodule.exports = kebabCase;\n","import { h } from \"@stencil/core\";\r\nimport kebabCase from \"lodash.kebabcase\";\r\n\r\nimport { OzonContentNodeContext } from \"../ozon-content-node-context.interface\";\r\nimport { OzonContentNode } from \"../ozon-content-node.interface\";\r\n\r\nexport class OzonContentExtRefNode implements OzonContentNode {\r\n name = [\"ExtRef\", \"ExtIoRef\"];\r\n\r\n render(node: Element, { mapNodeToJsx, urlResolver }: OzonContentNodeContext) {\r\n const className = kebabCase(node.tagName);\r\n const value = node.getAttribute(\"ref\");\r\n const name: \"ExtRef\" | \"ExtIoRef\" = node.tagName === \"ExtRef\" ? \"ExtRef\" : \"ExtIoRef\";\r\n const href = urlResolver ? urlResolver(name, \"ref\", value, node) : value;\r\n\r\n return (\r\n <a\r\n target=\"_blank\"\r\n rel=\"noopener noreferrer\"\r\n href={href ?? undefined}\r\n class={className}\r\n title=\"Opent andere website in nieuw tabblad\"\r\n >\r\n <span>{mapNodeToJsx(node.childNodes)}</span>\r\n <dso-icon icon=\"external-link\"></dso-icon>\r\n </a>\r\n );\r\n }\r\n}\r\n","import { h } from \"@stencil/core\";\r\n\r\nimport { getNodeName } from \"../get-node-name.function\";\r\nimport { OzonContentNodeContext } from \"../ozon-content-node-context.interface\";\r\nimport { OzonContentNode } from \"../ozon-content-node.interface\";\r\n\r\nexport class OzonContentFallbackNode implements OzonContentNode {\r\n // This name does not match any elements\r\n name = [\"<fallback>\"];\r\n\r\n render(node: Node, { mapNodeToJsx }: OzonContentNodeContext) {\r\n return <span class={`fallback od-${getNodeName(node)}`}>{mapNodeToJsx(node.childNodes)}</span>;\r\n }\r\n}\r\n","import { Fragment, FunctionalComponent, JSX, h } from \"@stencil/core\";\r\n\r\nimport { getNodeName } from \"../get-node-name.function\";\r\nimport { OzonContentNodeContext } from \"../ozon-content-node-context.interface\";\r\nimport { OzonContentNode } from \"../ozon-content-node.interface\";\r\n\r\ntype BijschriftProps = {\r\n bijschrift?: IBijschrift;\r\n bron?: ChildNode;\r\n mapNodeToJsx: (node: Node | NodeList | Node[]) => JSX.Element;\r\n};\r\n\r\ninterface IBijschrift {\r\n inhoud: NodeListOf<ChildNode>;\r\n locatie: string;\r\n}\r\n\r\ninterface Illustratie {\r\n naam: string;\r\n breedte: number;\r\n hoogte: number;\r\n dpi: number;\r\n uitlijning: \"start\" | \"center\" | \"end\";\r\n alt: string | undefined;\r\n}\r\n\r\nconst Bijschrift: FunctionalComponent<BijschriftProps> = ({ bijschrift, bron, mapNodeToJsx }) => {\r\n const bronText = bron && bron.textContent?.trim();\r\n\r\n return (\r\n <span class=\"figuur-bijschrift\">\r\n {bijschrift && bijschrift.inhoud && mapNodeToJsx(bijschrift.inhoud)}\r\n {bronText && (\r\n <Fragment>\r\n {`${bijschrift ? \" \" : \"\"}(bron: `}\r\n {mapNodeToJsx(bron)})\r\n </Fragment>\r\n )}\r\n </span>\r\n );\r\n};\r\n\r\nexport class OzonContentFiguurNode implements OzonContentNode {\r\n name = [\"Figuur\"];\r\n\r\n private getStyle(illustratie: Illustratie) {\r\n const widthPixels = Number(illustratie.breedte);\r\n const heightPixels = Number(illustratie.hoogte);\r\n\r\n const style = {\r\n \"--_dso-ozon-content-illustratie-uitlijning\": illustratie.uitlijning,\r\n };\r\n\r\n if (widthPixels && heightPixels) {\r\n // This is the STOP formula to calculate the width in percentage\r\n // see: https://koop.gitlab.io/stop/standaard/1.4.0-ic/regeltekst_afbeelding.html\r\n // We maximise it to 100% in the case of missing dpi or a calculated percentage greater than 100%\r\n const widthPercentage = Math.min(illustratie.dpi ? (16.4 * widthPixels) / Number(illustratie.dpi) : 100, 100);\r\n\r\n Object.assign(style, {\r\n \"--_dso-ozon-content-illustratie-aspect-ratio\": (widthPixels / heightPixels).toString(),\r\n \"--_dso-ozon-content-illustratie-width\": `${widthPercentage}%`,\r\n });\r\n }\r\n\r\n return style;\r\n }\r\n\r\n private mapIllustratieNode(node: Element): Illustratie {\r\n return {\r\n naam: node.getAttribute(\"naam\") ?? \"\",\r\n breedte: Number(node.getAttribute(\"breedte\")),\r\n hoogte: Number(node.getAttribute(\"hoogte\")),\r\n dpi: Number(node.getAttribute(\"dpi\")),\r\n uitlijning:\r\n [\"start\", \"center\", \"end\"].find((u): u is Illustratie[\"uitlijning\"] => node.getAttribute(\"uitlijning\") === u) ??\r\n \"start\",\r\n alt: node.getAttribute(\"alt\") ?? undefined,\r\n };\r\n }\r\n\r\n render(node: Element, { mapNodeToJsx, urlResolver }: OzonContentNodeContext) {\r\n const childNodes = Array.from(node.childNodes);\r\n const titel = childNodes.find((n) => getNodeName(n) === \"Titel\");\r\n const bron = childNodes.find((n) => getNodeName(n) === \"Bron\");\r\n\r\n const illustratieNode = childNodes.find((n) => getNodeName(n) === \"Illustratie\");\r\n const bijschriftNode = childNodes.find((n) => getNodeName(n) === \"Bijschrift\");\r\n\r\n const wijzigactie = node.getAttribute(\"wijzigactie\") || undefined;\r\n\r\n if (illustratieNode instanceof Element) {\r\n const illustratie = this.mapIllustratieNode(illustratieNode);\r\n\r\n const bijschrift =\r\n bijschriftNode instanceof Element\r\n ? {\r\n inhoud: bijschriftNode.childNodes,\r\n locatie: bijschriftNode.getAttribute(\"locatie\") ?? \"onder\",\r\n }\r\n : undefined;\r\n\r\n const src = urlResolver ? urlResolver(\"Illustratie\", \"naam\", illustratie.naam, node) : illustratie.naam;\r\n\r\n return (\r\n <div\r\n class={`dso-ozon-figuur ${bijschrift ? `bijschrift-${bijschrift.locatie}` : \"onder\"}`}\r\n style={this.getStyle(illustratie)}\r\n >\r\n {titel && <span class=\"figuur-titel\">{mapNodeToJsx(titel)}</span>}\r\n {bijschrift?.locatie === \"boven\" && (\r\n <Bijschrift bijschrift={bijschrift} bron={bron} mapNodeToJsx={mapNodeToJsx} />\r\n )}\r\n <dso-image-overlay wijzigactie={wijzigactie}>\r\n {titel && (\r\n <div slot=\"titel\">\r\n <span>{mapNodeToJsx(titel)}</span>\r\n </div>\r\n )}\r\n <img src={src ?? undefined} alt={illustratie.alt ?? titel?.textContent ?? illustratie.naam ?? undefined} />\r\n {(bijschrift || bron) && (\r\n <div slot=\"bijschrift\">\r\n <Bijschrift bijschrift={bijschrift} bron={bron} mapNodeToJsx={mapNodeToJsx} />\r\n </div>\r\n )}\r\n </dso-image-overlay>\r\n {(bijschrift?.locatie === \"onder\" || (!bijschrift && bron)) && (\r\n <Bijschrift bijschrift={bijschrift} bron={bron} mapNodeToJsx={mapNodeToJsx} />\r\n )}\r\n </div>\r\n );\r\n }\r\n }\r\n}\r\n","import { h } from \"@stencil/core\";\r\n\r\nimport { OzonContentNodeContext } from \"../ozon-content-node-context.interface\";\r\nimport { OzonContentNode } from \"../ozon-content-node.interface\";\r\n\r\nexport class OzonContentInhoudNode implements OzonContentNode {\r\n name = [\"Inhoud\", \"ContainerBlocksType\", \"BlockMixedcontentMetMaximaleInlinesMarkersPopupsType\"];\r\n\r\n render(node: Element, { mapNodeToJsx }: OzonContentNodeContext) {\r\n const wijzigactie = node.getAttribute(\"wijzigactie\");\r\n\r\n const richContent = <div class=\"dso-rich-content\">{mapNodeToJsx(node.childNodes)}</div>;\r\n\r\n if (wijzigactie === \"verwijder\") {\r\n return <del class=\"editaction-remove\">{richContent}</del>;\r\n }\r\n\r\n if (wijzigactie === \"voegtoe\") {\r\n return <ins class=\"editaction-add\">{richContent}</ins>;\r\n }\r\n\r\n return richContent;\r\n }\r\n}\r\n","import { h } from \"@stencil/core\";\r\n\r\nimport { OzonContentNodeContext } from \"../ozon-content-node-context.interface\";\r\nimport { OzonContentNode } from \"../ozon-content-node.interface\";\r\n\r\nexport class OzonContentInlineTekstAfbeeldingNode implements OzonContentNode {\r\n name = [\"InlineTekstAfbeelding\", \"Illustratie\"];\r\n\r\n render(node: Element, { urlResolver }: OzonContentNodeContext) {\r\n const value = node.getAttribute(\"naam\");\r\n const name: \"InlineTekstAfbeelding\" | \"Illustratie\" =\r\n node.tagName === \"InlineTekstAfbeelding\" ? \"InlineTekstAfbeelding\" : \"Illustratie\";\r\n const src = urlResolver ? urlResolver(name, \"naam\", value, node) : value;\r\n\r\n return (\r\n <img\r\n src={src ?? undefined}\r\n alt={node.getAttribute(\"naam\") ?? undefined}\r\n height={node.getAttribute(\"hoogte\") ?? undefined}\r\n width={node.getAttribute(\"breedte\") ?? undefined}\r\n />\r\n );\r\n }\r\n}\r\n","import { h } from \"@stencil/core\";\r\n\r\nimport { OzonContentNodeContext } from \"../ozon-content-node-context.interface\";\r\nimport { OzonContentNode } from \"../ozon-content-node.interface\";\r\n\r\nexport class OzonContentInlineNodes implements OzonContentNode {\r\n name = [\"sub\", \"sup\", \"strong\", \"b\", \"u\", \"i\", \"br\"];\r\n\r\n render(node: Element, { mapNodeToJsx }: OzonContentNodeContext) {\r\n if (node.localName === \"br\") {\r\n return <br />;\r\n }\r\n\r\n const Tag = node.localName;\r\n\r\n return <Tag>{mapNodeToJsx(node.childNodes)}</Tag>;\r\n }\r\n}\r\n","import { Fragment, h } from \"@stencil/core\";\r\n\r\nimport { OzonContentNodeContext } from \"../ozon-content-node-context.interface\";\r\nimport { OzonContentNode } from \"../ozon-content-node.interface\";\r\n\r\nexport class OzonContentIntIoRefNode implements OzonContentNode {\r\n name = \"IntIoRef\";\r\n\r\n render(node: Element, { mapNodeToJsx, emitClick, urlResolver }: OzonContentNodeContext) {\r\n const value = node.getAttribute(\"ref\");\r\n const href = urlResolver ? urlResolver(\"IntIoRef\", \"ref\", value, node) : value;\r\n\r\n if (!value) {\r\n return mapNodeToJsx(node.childNodes);\r\n }\r\n\r\n const intIoRefOnClick = (event: MouseEvent) => {\r\n emitClick({\r\n type: \"IntIoRef\",\r\n node,\r\n originalEvent: event,\r\n });\r\n };\r\n\r\n return (\r\n <Fragment>\r\n <dso-ozon-content-toggletip icon=\"map-location\">\r\n <span slot=\"label\">{mapNodeToJsx(node.childNodes)}</span>\r\n <p>\r\n Gebieden op de kaart tonen:{\" \"}\r\n <button type=\"button\" class=\"dso-tertiary\" onClick={intIoRefOnClick}>\r\n <span>Kenmerken en kaart</span>\r\n <dso-icon icon=\"label\" />\r\n </button>\r\n </p>\r\n <p>\r\n Officiële publicaties:{\" \"}\r\n <a\r\n target=\"_blank\"\r\n rel=\"noopener noreferrer\"\r\n href={href ?? undefined}\r\n title=\"Opent andere website in nieuw tabblad\"\r\n >\r\n <span>{mapNodeToJsx(node.childNodes)}</span>\r\n <dso-icon icon=\"external-link\" />\r\n </a>\r\n </p>\r\n </dso-ozon-content-toggletip>\r\n </Fragment>\r\n );\r\n }\r\n}\r\n","import { h } from \"@stencil/core\";\r\n\r\nimport { isModifiedEvent } from \"../../../utils/is-modified-event\";\r\nimport { parseXml } from \"../../../utils/parse-xml\";\r\nimport { OzonContentNodeContext } from \"../ozon-content-node-context.interface\";\r\nimport { OzonContentNode } from \"../ozon-content-node.interface\";\r\n\r\nexport class OzonContentIntRefNode implements OzonContentNode {\r\n name = \"IntRef\";\r\n\r\n render(node: Element, { mapNodeToJsx, emitClick, begripResolver, urlResolver }: OzonContentNodeContext) {\r\n const scope = node.getAttribute(\"scope\");\r\n const value = node.getAttribute(\"ref\");\r\n\r\n if (scope === \"Begrip\") {\r\n const definitie = begripResolver?.(value, node) ?? value;\r\n const definitieNode = typeof definitie === \"string\" ? parseXml(definitie) : definitie;\r\n\r\n return (\r\n <dso-ozon-content-toggletip icon=\"info\">\r\n <span slot=\"label\">{mapNodeToJsx(node.childNodes)}</span>\r\n {definitieNode ? mapNodeToJsx(definitieNode) : null}\r\n </dso-ozon-content-toggletip>\r\n );\r\n }\r\n\r\n const handleIntRefClick = (event: MouseEvent) => {\r\n emitClick({\r\n type: \"IntRef\",\r\n node,\r\n originalEvent: event,\r\n isModifiedEvent: isModifiedEvent(event),\r\n });\r\n };\r\n\r\n return (\r\n <a href={urlResolver?.(\"IntRef\", \"ref\", value, node)} onClick={handleIntRefClick}>\r\n {mapNodeToJsx(node.childNodes)}\r\n </a>\r\n );\r\n }\r\n}\r\n","import { Fragment, h } from \"@stencil/core\";\r\n\r\nimport { WrapWijzigactie } from \"../functional-components/wrap-wijzigactie.functional-component\";\r\nimport { parseWijzigactieFromNode } from \"../functions/parse-wijzigactie-from-node.function\";\r\nimport { OzonContentNodeContext } from \"../ozon-content-node-context.interface\";\r\nimport { OzonContentNode } from \"../ozon-content-node.interface\";\r\n\r\nfunction mapData(node: Element) {\r\n return {\r\n label: node.querySelector(\"Label\"),\r\n nummer: node.querySelector(\"Nummer\"),\r\n opschrift: node.querySelector(\"Opschrift\"),\r\n subtitels: Array.from(node.querySelectorAll(\"Subtitel\")),\r\n };\r\n}\r\n\r\nexport class OzonContentKopNode implements OzonContentNode {\r\n name = \"Kop\";\r\n\r\n handles = [\"Label\", \"Nummer\", \"Opschrift\", \"Subtitel\"];\r\n\r\n render(node: Element, { mapNodeToJsx, emitClick }: OzonContentNodeContext) {\r\n const handleKopClick = (event: MouseEvent) => {\r\n emitClick({\r\n type: \"Kop\",\r\n node,\r\n originalEvent: event,\r\n });\r\n };\r\n\r\n const { label, nummer, opschrift, subtitels } = mapData(node);\r\n\r\n const wijzigactieLabel = label ? parseWijzigactieFromNode(label) : undefined;\r\n const wijzigactieNummer = nummer ? parseWijzigactieFromNode(nummer) : undefined;\r\n const wijzigactieOpschrift = opschrift ? parseWijzigactieFromNode(opschrift) : undefined;\r\n\r\n return (\r\n <WrapWijzigactie wijzigactie={parseWijzigactieFromNode(node)}>\r\n <div onClick={handleKopClick} part=\"_kop\" class=\"kop\">\r\n {label && <WrapWijzigactie wijzigactie={wijzigactieLabel}>{mapNodeToJsx(label.childNodes)}</WrapWijzigactie>}\r\n {nummer && (\r\n <Fragment>\r\n {\" \"}\r\n <WrapWijzigactie wijzigactie={wijzigactieNummer}>{mapNodeToJsx(nummer.childNodes)}</WrapWijzigactie>\r\n </Fragment>\r\n )}\r\n {opschrift && (\r\n <Fragment>\r\n {\" \"}\r\n <WrapWijzigactie wijzigactie={wijzigactieOpschrift}>{mapNodeToJsx(opschrift.childNodes)}</WrapWijzigactie>\r\n </Fragment>\r\n )}\r\n </div>\r\n {subtitels.length > 0 && (\r\n <div class=\"subtitels-container\" part=\"_subtitels\">\r\n {subtitels.map((subtitel) => {\r\n const wijzigactieSubtitel = parseWijzigactieFromNode(subtitel);\r\n\r\n return (\r\n <div class=\"subtitel\">\r\n <WrapWijzigactie wijzigactie={wijzigactieSubtitel}>\r\n {mapNodeToJsx(subtitel.childNodes)}\r\n </WrapWijzigactie>\r\n </div>\r\n );\r\n })}\r\n </div>\r\n )}\r\n </WrapWijzigactie>\r\n );\r\n }\r\n}\r\n","import { h } from \"@stencil/core\";\r\nimport clsx from \"clsx\";\r\n\r\nimport { WrapWijzigactie } from \"../functional-components/wrap-wijzigactie.functional-component\";\r\nimport { parseWijzigactieFromNode } from \"../functions/parse-wijzigactie-from-node.function\";\r\nimport { wijzigactieToClassName } from \"../functions/wijzigactie-to-class-name.function\";\r\nimport { getNodeName } from \"../get-node-name.function\";\r\nimport { OzonContentNodeContext } from \"../ozon-content-node-context.interface\";\r\nimport { OzonContentNode } from \"../ozon-content-node.interface\";\r\n\r\nexport class OzonContentLijstNode implements OzonContentNode {\r\n name = \"Lijst\";\r\n\r\n render(node: Element, { mapNodeToJsx }: OzonContentNodeContext) {\r\n const wijzigactie = parseWijzigactieFromNode(node);\r\n const childNodes = Array.from(node.childNodes);\r\n const type = parseTypeFromLijstNode(node);\r\n const aanhef = childNodes.find((n) => getNodeName(n) === \"Lijstaanhef\");\r\n const sluiting = childNodes.find((n) => getNodeName(n) === \"Lijstsluiting\");\r\n const listItems = childNodes.filter((n) => getNodeName(n) === \"Li\");\r\n\r\n return (\r\n <WrapWijzigactie wijzigactie={wijzigactie}>\r\n <div class={clsx(\"dso-ozon-lijst od-Lijst\", wijzigactieToClassName(wijzigactie))}>\r\n {aanhef && mapNodeToJsx(aanhef)}\r\n <ul class={type}>\r\n {listItems.map((item) => {\r\n const itemNodes = Array.from(item.childNodes);\r\n const liNummer = itemNodes.find((n) => getNodeName(n) === \"LiNummer\")?.childNodes;\r\n const liWijzigactie = parseWijzigactieFromNode(item);\r\n\r\n return (\r\n <li class={clsx(\"od-Li\", wijzigactieToClassName(liWijzigactie))}>\r\n {liNummer && <span class=\"od-LiNummer\">{mapNodeToJsx(liNummer)}</span>}\r\n <WrapWijzigactie wijzigactie={liWijzigactie}>\r\n {mapNodeToJsx(itemNodes.filter((n) => getNodeName(n) !== \"LiNummer\"))}\r\n </WrapWijzigactie>\r\n </li>\r\n );\r\n })}\r\n </ul>\r\n {sluiting && mapNodeToJsx(sluiting)}\r\n </div>\r\n </WrapWijzigactie>\r\n );\r\n }\r\n}\r\n\r\nfunction parseTypeFromLijstNode(node: Node): LijstType | undefined {\r\n const type = node instanceof Element ? node.getAttribute(\"type\") : undefined;\r\n\r\n return type === \"expliciet\" || type === \"ongemarkeerd\" ? type : undefined;\r\n}\r\n\r\ntype LijstType = \"expliciet\" | \"ongemarkeerd\";\r\n","import { h } from \"@stencil/core\";\r\n\r\nimport { OzonContentNodeContext } from \"../ozon-content-node-context.interface\";\r\nimport { OzonContentNode } from \"../ozon-content-node.interface\";\r\n\r\nexport class OzonContentNieuweTekstNode implements OzonContentNode {\r\n name = \"NieuweTekst\";\r\n\r\n render(node: Element, { mapNodeToJsx }: OzonContentNodeContext) {\r\n return <ins class=\"new-text\">{mapNodeToJsx(node.childNodes)}</ins>;\r\n }\r\n}\r\n","import { Fragment, h } from \"@stencil/core\";\r\n\r\nimport { getNodeName } from \"../get-node-name.function\";\r\nimport { OzonContentNodeContext } from \"../ozon-content-node-context.interface\";\r\nimport { OzonContentNode } from \"../ozon-content-node.interface\";\r\n\r\nexport class OzonContentNootNode implements OzonContentNode {\r\n name = \"Noot\";\r\n\r\n handles = [\"NootNummer\"];\r\n\r\n identify(): string | undefined {\r\n return \"Noot\";\r\n }\r\n\r\n render(node: Element, { mapNodeToJsx, state: openNoteId, setState }: OzonContentNodeContext<string | undefined>) {\r\n const noteId = node.getAttribute(\"id\");\r\n if (!noteId) {\r\n console.error(\"Noot node without id\", node);\r\n\r\n return <Fragment />;\r\n }\r\n\r\n const noteControlsId = `dso-ozon-note-${noteId}`;\r\n\r\n const childNodes = Array.from(node.childNodes);\r\n const nootNummer = childNodes.find((n) => getNodeName(n) === \"NootNummer\")?.textContent ?? noteId;\r\n\r\n return (\r\n <Fragment>\r\n <sup>\r\n <button\r\n type=\"button\"\r\n class=\"toggle-note\"\r\n aria-describedby={noteControlsId}\r\n onClick={() => setState?.(openNoteId === noteId ? undefined : noteId)}\r\n onBlur={() => setState?.(undefined)}\r\n aria-expanded={openNoteId === noteId ? \"true\" : \"false\"}\r\n >\r\n {nootNummer}\r\n </button>\r\n </sup>\r\n <dso-tooltip active={openNoteId === noteId} id={noteControlsId} stateless descriptive>\r\n <span role=\"section\">{mapNodeToJsx(Array.from(node.querySelectorAll(\":scope > Al\")))}</span>\r\n </dso-tooltip>\r\n </Fragment>\r\n );\r\n }\r\n}\r\n","import { Colspec, Colspecs } from \"./colspec.interface\";\r\n\r\nexport function mapColspecs(count: number, nodeList: NodeListOf<Element>): Colspecs {\r\n const elements = Array.from(nodeList);\r\n const totalWidth = getTotalWidth(elements);\r\n\r\n return {\r\n totalWidth,\r\n count,\r\n columns: elements.map((element, index): Colspec => {\r\n const colNumber = element.getAttribute(\"colnum\");\r\n\r\n return {\r\n colsep: element.getAttribute(\"colsep\"),\r\n name: element.getAttribute(\"colname\") ?? \"\",\r\n number: colNumber ? parseInt(colNumber, 10) : index + 1,\r\n rowsep: element.getAttribute(\"rowsep\"),\r\n width: getWidth(totalWidth, element),\r\n };\r\n }),\r\n };\r\n}\r\n\r\nfunction getTotalWidth(elements: Element[]): number {\r\n return elements.reduce((totalWidth, element) => {\r\n const width = element.getAttribute(\"colwidth\")?.replace(/[^0-9]/, \"\") ?? \"\";\r\n const colWidth = parseInt(width, 10);\r\n\r\n return totalWidth + (isNaN(colWidth) ? 0 : colWidth);\r\n }, 0);\r\n}\r\n\r\nfunction getWidth(totalWidth: number, element: Element): string | undefined {\r\n const width = element.getAttribute(\"colwidth\");\r\n\r\n if (!width) {\r\n return undefined;\r\n }\r\n\r\n if (width === \"*\") {\r\n return \"100%\";\r\n }\r\n\r\n if (width.includes(\"*\") || width.match(/^[\\d+]$/)) {\r\n const colWidth = parseInt(width.replace(/[^0-9]/, \"\"), 10);\r\n\r\n return `${Math.round((colWidth / totalWidth) * 100)}%`;\r\n }\r\n\r\n return width;\r\n}\r\n","import { Fragment, FunctionalComponent, h } from \"@stencil/core\";\r\n\r\nimport { Colspecs } from \"./colspec/colspec.interface\";\r\n\r\nexport const Colgroup: FunctionalComponent<{ colspecs: Colspecs }> = ({ colspecs }) =>\r\n colspecs.columns.length > 0 ? (\r\n <colgroup>\r\n {colspecs.columns.map((colspec) => (\r\n <col style={{ width: colspec.width }} />\r\n ))}\r\n </colgroup>\r\n ) : (\r\n <Fragment />\r\n );\r\n","import { FunctionalComponent } from \"@stencil/core\";\r\nimport { h } from \"@stencil/core/internal\";\r\nimport clsx from \"clsx\";\r\n\r\nimport { WrapWijzigactie } from \"../../functional-components/wrap-wijzigactie.functional-component\";\r\nimport { wijzigactieToClassName } from \"../../functions/wijzigactie-to-class-name.function\";\r\nimport { OzonContentNodeContext } from \"../../ozon-content-node-context.interface\";\r\nimport { OzonContentWijzigActie } from \"../../ozon-content.interfaces\";\r\n\r\nimport { Colspecs } from \"./colspec/colspec.interface\";\r\n\r\nfunction getColspecStartColsep({ columns }: Colspecs, nameStart: string): string | null {\r\n const colspecStart = columns.find((c) => c.name === nameStart);\r\n\r\n return colspecStart ? colspecStart.colsep : null;\r\n}\r\n\r\nfunction getColspecStartRowsep({ columns }: Colspecs, nameStart: string): string | null {\r\n const colspecStart = columns.find((c) => c.name === nameStart);\r\n\r\n return colspecStart ? colspecStart.rowsep : null;\r\n}\r\n\r\nfunction getData(cell: Element, colspecs?: Colspecs) {\r\n const nameStart = cell.getAttribute(\"namest\");\r\n const row = cell.parentElement;\r\n const tgroup = row?.parentElement?.parentElement;\r\n const table = tgroup?.parentElement;\r\n const colsep =\r\n cell.getAttribute(\"colsep\") ||\r\n (colspecs && nameStart ? getColspecStartColsep(colspecs, nameStart) : null) ||\r\n (tgroup && tgroup.getAttribute(\"colsep\")) ||\r\n (table && table.getAttribute(\"colsep\"));\r\n const rowsep =\r\n cell.getAttribute(\"rowsep\") ||\r\n (row && row.getAttribute(\"rowsep\")) ||\r\n (colspecs && nameStart ? getColspecStartRowsep(colspecs, nameStart) : null) ||\r\n (tgroup && tgroup.getAttribute(\"rowsep\")) ||\r\n (table && table.getAttribute(\"rowsep\"));\r\n\r\n return {\r\n moreRows: cell.getAttribute(\"morerows\"),\r\n nameStart,\r\n nameEnd: cell.getAttribute(\"nameend\"),\r\n colsep,\r\n rowsep,\r\n };\r\n}\r\n\r\nfunction getColspan({ columns }: Colspecs, nameStart: string, nameEnd: string): number | undefined {\r\n const colspecStart = columns.find((c) => c.name === nameStart);\r\n const colspecEnd = columns.find((c) => c.name === nameEnd);\r\n if (!colspecStart || !colspecEnd) {\r\n return undefined;\r\n }\r\n\r\n const colspan = colspecEnd.number - colspecStart.number + 1;\r\n\r\n return colspan === 1 ? undefined : colspan;\r\n}\r\n\r\nexport const Cell: FunctionalComponent<{\r\n context: OzonContentNodeContext;\r\n colspecs: Colspecs | undefined;\r\n cell: Element;\r\n wijzigactie: OzonContentWijzigActie | undefined;\r\n}> = ({ context: { mapNodeToJsx }, colspecs, cell, wijzigactie }) => {\r\n const { moreRows, nameStart, nameEnd, colsep, rowsep } = getData(cell, colspecs);\r\n\r\n return (\r\n <td\r\n class={clsx(\r\n { \"dso-horizontal-line\": rowsep !== \"0\" },\r\n { \"dso-vertical-line\": colsep !== \"0\" },\r\n wijzigactieToClassName(wijzigactie),\r\n )}\r\n rowSpan={moreRows ? parseInt(moreRows, 10) + 1 : undefined}\r\n colSpan={colspecs && nameStart && nameEnd ? getColspan(colspecs, nameStart, nameEnd) : undefined}\r\n >\r\n <WrapWijzigactie wijzigactie={wijzigactie}>{mapNodeToJsx(cell.childNodes)}</WrapWijzigactie>\r\n </td>\r\n );\r\n};\r\n","import { Fragment, FunctionalComponent, h } from \"@stencil/core\";\r\n\r\nimport { parseWijzigactieFromNode } from \"../../functions/parse-wijzigactie-from-node.function\";\r\nimport { OzonContentNodeContext } from \"../../ozon-content-node-context.interface\";\r\n\r\nimport { Colspecs } from \"./colspec/colspec.interface\";\r\nimport { Cell } from \"./table-cell\";\r\n\r\nexport const Rows: FunctionalComponent<{\r\n context: OzonContentNodeContext;\r\n colspecs: Colspecs | undefined;\r\n rows: Element[];\r\n}> = ({ context, colspecs, rows }) => {\r\n return (\r\n <Fragment>\r\n {rows.map((row) => (\r\n <tr>\r\n {Array.from(row.children).map((cell) => (\r\n <Cell cell={cell} colspecs={colspecs} context={context} wijzigactie={parseWijzigactieFromNode(row)} />\r\n ))}\r\n </tr>\r\n ))}\r\n </Fragment>\r\n );\r\n};\r\n","import { h } from \"@stencil/core\";\r\nimport clsx from \"clsx\";\r\nimport { v4 as uuidv4 } from \"uuid\";\r\n\r\nimport { getNodeName } from \"../../get-node-name.function\";\r\nimport { OzonContentNodeContext } from \"../../ozon-content-node-context.interface\";\r\nimport { OzonContentNode } from \"../../ozon-content-node.interface\";\r\n\r\nimport { mapColspecs } from \"./colspec/colspec-mapper\";\r\nimport { Colgroup } from \"./table-colgroup\";\r\nimport { Rows } from \"./table-rows\";\r\n\r\nfunction mapData(node: Element) {\r\n const tgroup = node.querySelector(\":scope > tgroup\");\r\n const colAttribute = tgroup?.getAttribute(\"cols\") ?? undefined;\r\n const columnCount = colAttribute ? parseInt(colAttribute, 10) : undefined;\r\n\r\n return {\r\n caption: node.querySelector(\":scope > title\")?.textContent ?? undefined,\r\n colspecs: tgroup && columnCount ? mapColspecs(columnCount, tgroup.querySelectorAll(\":scope > colspec\")) : undefined,\r\n headRows: Array.from(node.querySelectorAll(\":scope > tgroup > thead > row\")),\r\n bodyRows: Array.from(node.querySelectorAll(\":scope > tgroup > tbody > row\")),\r\n wijzigactie: node.getAttribute(\"wijzigactie\"),\r\n frame: node.getAttribute(\"frame\") ? node.getAttribute(\"frame\") : \"all\",\r\n };\r\n}\r\n\r\nexport class OzonContentTableNode implements OzonContentNode {\r\n name = \"table\";\r\n\r\n handles = [\"title\", \"tgroup\", \"colspec\", \"thead\", \"tbody\", \"row\", \"cell\"];\r\n\r\n id = uuidv4();\r\n\r\n render(node: Element, context: OzonContentNodeContext) {\r\n const { caption, colspecs, headRows, bodyRows, wijzigactie, frame } = mapData(node);\r\n\r\n const bron = Array.from(node.childNodes).find((n) => getNodeName(n) === \"Bron\");\r\n\r\n return (\r\n <dso-table>\r\n <table\r\n class={clsx(\"table\", {\r\n \"editaction-add\": wijzigactie === \"voegtoe\",\r\n \"editaction-remove\": wijzigactie === \"verwijder\",\r\n [`dso-table-outside-lines-${frame}`]: frame,\r\n })}\r\n {...(bron ? { \"aria-describedby\": this.id } : {})}\r\n >\r\n {caption && <caption>{caption}</caption>}\r\n {colspecs && <Colgroup colspecs={colspecs} />}\r\n {headRows.length > 0 && (\r\n <thead>\r\n <Rows rows={headRows} colspecs={colspecs} context={context}></Rows>\r\n </thead>\r\n )}\r\n {bodyRows.length > 0 && (\r\n <tbody>\r\n <Rows rows={bodyRows} colspecs={colspecs} context={context}></Rows>\r\n </tbody>\r\n )}\r\n </table>\r\n {bron && <div id={this.id}>{context.mapNodeToJsx(bron)}</div>}\r\n </dso-table>\r\n );\r\n }\r\n}\r\n","import { Fragment, h } from \"@stencil/core\";\r\n\r\nimport { MarkText } from \"../../../functional-components/mark-text/mark-text.functional-component\";\r\nimport { OzonContentNodeContext } from \"../ozon-content-node-context.interface\";\r\nimport { OzonContentNode } from \"../ozon-content-node.interface\";\r\n\r\nexport class OzonContentTextNode implements OzonContentNode {\r\n name = \"#text\";\r\n\r\n render({ textContent }: Node, { mark, emitMarkItemHighlight }: OzonContentNodeContext) {\r\n if (!mark || !textContent) {\r\n return <Fragment>{textContent}</Fragment>;\r\n }\r\n\r\n return <MarkText mark={mark} text={textContent} emitMarkItemHighlight={emitMarkItemHighlight} />;\r\n }\r\n}\r\n","import { h } from \"@stencil/core\";\r\n\r\nimport { OzonContentNodeContext } from \"../ozon-content-node-context.interface\";\r\nimport { OzonContentNode } from \"../ozon-content-node.interface\";\r\n\r\nexport class OzonContentVerwijderdeTekstNode implements OzonContentNode {\r\n name = \"VerwijderdeTekst\";\r\n\r\n render(node: Element, { mapNodeToJsx }: OzonContentNodeContext) {\r\n return <del class=\"removed-text\">{mapNodeToJsx(node.childNodes)}</del>;\r\n }\r\n}\r\n","import { Fragment, JSX, h } from \"@stencil/core\";\r\n\r\nimport { parseXml } from \"../../utils/parse-xml\";\r\n\r\nimport { getNodeName } from \"./get-node-name.function\";\r\nimport { OzonContentAbbrNode } from \"./nodes/abbr.node\";\r\nimport { OzonContentAlNode } from \"./nodes/al.node\";\r\nimport { OzonContentBegripNode } from \"./nodes/begrip.node\";\r\nimport { OzonContentBegrippenlijstNode } from \"./nodes/begrippenlijst.node\";\r\nimport { OzonContentBronNode } from \"./nodes/bron.node\";\r\nimport { OzonContentDocumentNode } from \"./nodes/document.node\";\r\nimport { OzonContentExtRefNode } from \"./nodes/ext-ref.node\";\r\nimport { OzonContentFallbackNode } from \"./nodes/fallback.node\";\r\nimport { OzonContentFiguurNode } from \"./nodes/figuur.node\";\r\nimport { OzonContentInhoudNode } from \"./nodes/inhoud.node\";\r\nimport { OzonContentInlineTekstAfbeeldingNode } from \"./nodes/inline-tekst-afbeelding.node\";\r\nimport { OzonContentInlineNodes } from \"./nodes/inline.nodes\";\r\nimport { OzonContentIntIoRefNode } from \"./nodes/int-io-ref.node\";\r\nimport { OzonContentIntRefNode } from \"./nodes/int-ref.node\";\r\nimport { OzonContentKopNode } from \"./nodes/kop.node\";\r\nimport { OzonContentLijstNode } from \"./nodes/lijst.node\";\r\nimport { OzonContentNieuweTekstNode } from \"./nodes/nieuwe-tekst.node\";\r\nimport { OzonContentNootNode } from \"./nodes/noot.node\";\r\nimport { OzonContentTableNode } from \"./nodes/table.node\";\r\nimport { OzonContentTextNode } from \"./nodes/text.node\";\r\nimport { OzonContentVerwijderdeTekstNode } from \"./nodes/verwijderde-tekst.node\";\r\nimport { OzonContentContext } from \"./ozon-content-context.interface\";\r\nimport { OzonContentNode } from \"./ozon-content-node.interface\";\r\nimport { OzonContentInputType } from \"./ozon-content.interfaces\";\r\n\r\nexport class Mapper {\r\n private mappers: OzonContentNode[] = [\r\n new OzonContentAbbrNode(),\r\n new OzonContentBegrippenlijstNode(),\r\n new OzonContentBegripNode(),\r\n new OzonContentTextNode(),\r\n new OzonContentDocumentNode(),\r\n new OzonContentInhoudNode(),\r\n new OzonContentKopNode(),\r\n new OzonContentIntRefNode(),\r\n new OzonContentExtRefNode(),\r\n new OzonContentAlNode(),\r\n new OzonContentInlineNodes(),\r\n new OzonContentInlineTekstAfbeeldingNode(),\r\n new OzonContentNootNode(),\r\n new OzonContentTableNode(),\r\n new OzonContentIntIoRefNode(),\r\n new OzonContentFiguurNode(),\r\n new OzonContentLijstNode(),\r\n new OzonContentBronNode(),\r\n new OzonContentNieuweTekstNode(),\r\n new OzonContentVerwijderdeTekstNode(),\r\n ];\r\n\r\n private skip = this.mappers.reduce<string[]>((t, m) => {\r\n if (m.handles) {\r\n t.push(...m.handles);\r\n }\r\n\r\n return t;\r\n }, []);\r\n\r\n private fallbackNode = new OzonContentFallbackNode();\r\n\r\n private findMapper(name: string): OzonContentNode | undefined {\r\n if (this.skip.includes(name)) {\r\n return undefined;\r\n }\r\n\r\n return (\r\n this.mappers.find((m) => {\r\n if (Array.isArray(m.name)) {\r\n return m.name.includes(name);\r\n }\r\n\r\n return m.name === name;\r\n }) ?? this.fallbackNode\r\n );\r\n }\r\n\r\n mapNodeToJsx(node: Node | Node[] | NodeList, context: OzonContentContext, path: Node[]): JSX.Element {\r\n if (node instanceof NodeList) {\r\n return <Fragment>{Array.from(node).map((n) => this.mapNodeToJsx(n, context, path))}</Fragment>;\r\n }\r\n\r\n if (Array.isArray(node)) {\r\n return <Fragment>{node.map((n) => this.mapNodeToJsx(n, context, path))}</Fragment>;\r\n }\r\n\r\n const nodeName = getNodeName(node);\r\n const mapper = this.findMapper(nodeName);\r\n if (!mapper) {\r\n return <Fragment />;\r\n }\r\n\r\n const identity = mapper.identify?.(node);\r\n\r\n const state = identity ? context.state[identity] : undefined;\r\n const setState = identity ? (s: unknown) => context.setState({ ...context.state, [identity]: s }) : undefined;\r\n\r\n return mapper.render(node, {\r\n inline: context.inline,\r\n mark: context.mark,\r\n mapNodeToJsx: (n) => this.mapNodeToJsx(n, context, [...path, node]),\r\n emitClick: context.emitClick,\r\n setState,\r\n emitMarkItemHighlight: context.emitMarkItemHighlight,\r\n state,\r\n path,\r\n urlResolver: context.urlResolver,\r\n begripResolver: context.begripResolver,\r\n });\r\n }\r\n\r\n transform(input: OzonContentInputType | undefined, context: OzonContentContext): JSX.Element {\r\n if (!input) {\r\n return <Fragment />;\r\n }\r\n\r\n const doc = typeof input === \"string\" ? parseXml(input) : input;\r\n\r\n if (!doc) {\r\n return <Fragment />;\r\n }\r\n\r\n return this.mapNodeToJsx(doc.getRootNode(), context, []);\r\n }\r\n}\r\n","@use \"~dso-toolkit/src/variables/units\";\r\n@use \"~dso-toolkit/src/variables/colors\";\r\n\r\n@use \"~dso-toolkit/src/components/link\";\r\n@use \"~dso-toolkit/src/components/button/button.mixins\" as button-mixins;\r\n@use \"~dso-toolkit/src/components/insert\";\r\n@use \"~dso-toolkit/src/components/delete\";\r\n@use \"~dso-toolkit/src/components/rich-content\";\r\n\r\n@use \"~dso-toolkit/src/components/button/button\";\r\n@use \"~dso-toolkit/src/components/mark/mark\";\r\n@use \"~dso-toolkit/src/components/superscript/superscript\";\r\n@use \"~dso-toolkit/src/components/subscript/subscript\";\r\n@use \"~dso-toolkit/src/components/table/table\";\r\n\r\n@use \"./ozon-content.variables\" as ozon-content-variables;\r\n\r\n:host(:not([inline])) {\r\n display: block;\r\n}\r\n\r\n:host([inline]) {\r\n display: inline;\r\n}\r\n\r\nbutton.toggle-note {\r\n @include button-mixins.tertiary($modifiers: false);\r\n}\r\n\r\nspan[role=\"section\"],\r\nspan[role=\"paragraph\"] {\r\n display: block;\r\n}\r\n\r\n:host(:not([inline])) .fallback {\r\n display: block;\r\n}\r\n\r\na {\r\n @include link.root();\r\n}\r\n\r\n// Styling below copied from DSO Viewer 20211011\r\n\r\n.od-Term {\r\n font-weight: 700;\r\n}\r\n\r\n.od-Definitie,\r\n.od-Tussenkop {\r\n font-style: italic;\r\n}\r\n\r\n.od-Inhoud,\r\n.od-Inhoud > .od-Lijst,\r\n.od-Lidnr,\r\n.od-LiNr,\r\n.od-Opschrift,\r\n.od-Tussenkop {\r\n display: inline;\r\n}\r\n\r\n.od-Al {\r\n margin-block-end: 0.75em;\r\n}\r\n\r\n.dso-ozon-bron {\r\n font-style: italic;\r\n font-size: 0.75rem;\r\n}\r\n\r\n.dso-ozon-figuur {\r\n text-align: var(--_dso-ozon-content-illustratie-uitlijning);\r\n margin-block-end: units.$u1;\r\n\r\n .figuur-bijschrift {\r\n display: block;\r\n font-size: 0.75rem;\r\n font-style: italic;\r\n }\r\n\r\n &.bijschrift-boven {\r\n .figuur-bijschrift {\r\n padding-block-end: 0.25rem;\r\n }\r\n }\r\n\r\n &.bijschrift-onder {\r\n .figuur-bijschrift {\r\n padding-block-start: 0.25rem;\r\n }\r\n }\r\n\r\n .figuur-titel {\r\n color: colors.$mauve;\r\n display: block;\r\n font-weight: 500;\r\n padding-block-end: 0.5rem;\r\n }\r\n\r\n > dso-image-overlay {\r\n inline-size: var(--_dso-ozon-content-illustratie-width);\r\n block-size: auto;\r\n max-block-size: 200vh;\r\n aspect-ratio: var(--_dso-ozon-content-illustratie-aspect-ratio);\r\n\r\n img {\r\n block-size: 100%;\r\n inline-size: 100%;\r\n }\r\n }\r\n}\r\n\r\n.dso-ozon-lijst {\r\n span.od-Lijstaanhef,\r\n span.od-Lijstsluiting {\r\n margin-block-end: units.$u1;\r\n }\r\n\r\n ul {\r\n margin-block-end: units.$u1 !important;\r\n margin-block-start: units.$u1;\r\n\r\n p {\r\n margin-block-end: units.$u1;\r\n }\r\n\r\n &.expliciet {\r\n list-style: none;\r\n\r\n > .od-Li {\r\n position: relative;\r\n\r\n > span.od-LiNummer {\r\n position: absolute;\r\n inset-inline-start: units.$u6 * -1 + 4;\r\n text-align: end;\r\n inline-size: units.$u5;\r\n }\r\n }\r\n }\r\n }\r\n\r\n p {\r\n margin: 0;\r\n }\r\n}\r\n\r\n.od-Tabel thead {\r\n font-weight: 600;\r\n}\r\n\r\n.od-Kadertekst {\r\n border: 1px solid #e5e5e5;\r\n margin-block-end: units.$u1;\r\n padding: units.$u1;\r\n}\r\n\r\np,\r\nspan[role=\"paragraph\"],\r\n.dso-ozon-lijst,\r\n.dso-ozon-lijst > ul > li,\r\ntable {\r\n &.editaction-add {\r\n @include insert.root();\r\n }\r\n\r\n &.editaction-remove {\r\n @include delete.root();\r\n }\r\n}\r\n\r\nins {\r\n @include insert.element();\r\n\r\n &.new-text {\r\n @include insert.root();\r\n }\r\n\r\n &.editaction-add {\r\n display: inline-block;\r\n margin-block-end: units.$u1;\r\n padding: units.$u1;\r\n\r\n @include insert.root();\r\n\r\n p:last-child {\r\n margin: 0;\r\n }\r\n }\r\n}\r\n\r\ndel {\r\n &.removed-text {\r\n @include delete.root();\r\n }\r\n\r\n &.editaction-remove {\r\n display: inline-block;\r\n margin-block-end: units.$u1;\r\n padding: units.$u1;\r\n @include delete.root();\r\n\r\n p:last-child {\r\n margin: 0;\r\n }\r\n }\r\n}\r\n\r\n.editaction-label {\r\n font-style: italic;\r\n}\r\n\r\n.dso-rich-content {\r\n @include rich-content.children();\r\n}\r\n\r\n.od-abbr {\r\n text-decoration: underline dotted;\r\n}\r\n\r\n.subtitels-container {\r\n cursor: default;\r\n}\r\n\r\n.subtitel {\r\n color: ozon-content-variables.$subtitel-color;\r\n font-weight: 700;\r\n margin-block: 0 units.$u2;\r\n margin-inline: 0;\r\n\r\n &:has(del, ins) {\r\n display: inline-block;\r\n inline-size: 100%;\r\n margin-inline: units.$u1 * -0.5;\r\n padding-inline: units.$u1 * 0.5;\r\n }\r\n\r\n &:has(del:not(.removed-text)) {\r\n @include delete.root();\r\n }\r\n\r\n &:has(ins:not(.new-text)) {\r\n @include insert.element();\r\n @include insert.root();\r\n }\r\n\r\n ins,\r\n del {\r\n color: ozon-content-variables.$subtitel-renvooi-color;\r\n }\r\n}\r\n\r\ntd {\r\n &.editaction-remove {\r\n @include delete.root();\r\n }\r\n &.editaction-add {\r\n @include insert.root();\r\n }\r\n}\r\n\r\n.begrippenlijst {\r\n .editaction-add {\r\n @include insert.root();\r\n }\r\n\r\n .editaction-remove {\r\n @include delete.root();\r\n\r\n dt,\r\n dd {\r\n @include delete.strikethrough();\r\n }\r\n }\r\n\r\n dt {\r\n display: inline-block;\r\n }\r\n}\r\n\r\n.kop {\r\n ins {\r\n @include insert.element();\r\n @include insert.root();\r\n }\r\n\r\n del {\r\n @include delete.root();\r\n }\r\n}\r\n","import {\r\n Component,\r\n ComponentInterface,\r\n Event,\r\n EventEmitter,\r\n Fragment,\r\n JSX,\r\n Prop,\r\n State,\r\n Watch,\r\n h,\r\n} from \"@stencil/core\";\r\n\r\nimport { MarkTextMarkFunction } from \"../../functional-components/mark-text/mark-text.interfaces\";\r\n\r\nimport { OzonContentContext } from \"./ozon-content-context.interface\";\r\nimport { Mapper } from \"./ozon-content-mapper\";\r\nimport { OzonContentNodeState } from \"./ozon-content-node-state.interface\";\r\nimport {\r\n OzonContentBegripResolver,\r\n OzonContentClickEvent,\r\n OzonContentInputType,\r\n OzonContentMarkItemHighlightEvent,\r\n OzonContentUrlResolver,\r\n} from \"./ozon-content.interfaces\";\r\n\r\nconst mapper = new Mapper();\r\n\r\n@Component({\r\n tag: \"dso-ozon-content\",\r\n styleUrl: \"ozon-content.scss\",\r\n shadow: true,\r\n})\r\nexport class OzonContent implements ComponentInterface {\r\n /**\r\n * The XML to be rendered.\r\n */\r\n @Prop()\r\n content?: OzonContentInputType;\r\n\r\n /**\r\n * Setting this property creates dso-ozon-content as inline element instead of a block element.\r\n */\r\n @Prop({ reflect: true })\r\n inline = false;\r\n\r\n /**\r\n * To mark text.\r\n */\r\n @Prop()\r\n mark?: MarkTextMarkFunction;\r\n\r\n /**\r\n * A UrlResolver that will be called for all STOP elements that render to HTML5 elements with external references.\r\n */\r\n @Prop()\r\n urlResolver?: OzonContentUrlResolver;\r\n\r\n /**\r\n * A BegripResolver that will be called for STOP element \"IntRef\" with scope=\"Begrip\".\r\n */\r\n @Prop()\r\n begripResolver?: OzonContentBegripResolver;\r\n\r\n /**\r\n * Emitted when an interactive element is clicked.\r\n */\r\n @Event({ bubbles: false })\r\n dsoClick!: EventEmitter<OzonContentClickEvent>;\r\n\r\n /**\r\n * Emitted when a marked item is highlighted.\r\n */\r\n @Event({ bubbles: false })\r\n dsoOzonContentMarkItemHighlight!: EventEmitter<OzonContentMarkItemHighlightEvent>;\r\n\r\n @Watch(\"content\")\r\n contentWatcher() {\r\n this.state = {};\r\n }\r\n\r\n @State()\r\n state: OzonContentNodeState = {};\r\n\r\n private handleMarkItemHighlight = (text: string, elementRef: HTMLElement) => {\r\n this.dsoOzonContentMarkItemHighlight.emit({ text, elementRef });\r\n };\r\n\r\n render(): JSX.Element {\r\n const context: OzonContentContext = {\r\n state: this.state,\r\n inline: this.inline,\r\n mark: this.mark,\r\n setState: (state) => (this.state = state),\r\n emitMarkItemHighlight: this.handleMarkItemHighlight,\r\n emitClick: this.dsoClick.emit,\r\n urlResolver: this.urlResolver,\r\n begripResolver: this.begripResolver,\r\n };\r\n\r\n const transformed = mapper.transform(this.content, context);\r\n\r\n return <Fragment>{transformed}</Fragment>;\r\n }\r\n}\r\n\r\nconst dependencies = () => {\r\n dependencies();\r\n\r\n return (\r\n <Fragment>\r\n <dso-icon />\r\n <dso-image-overlay />\r\n <dso-ozon-content-toggletip />\r\n <dso-tooltip />\r\n <dso-table />\r\n </Fragment>\r\n );\r\n};\r\n"],"version":3}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { h, p as proxyCustomElement, H, e as createEvent, F as Fragment, d as Host } from './p-Dm38fPV4.js';
|
|
2
|
-
import { p as parseXml, a as parseWijzigactieFromNode, M as MarkText, d as defineCustomElement$5 } from './p-
|
|
2
|
+
import { p as parseXml, a as parseWijzigactieFromNode, M as MarkText, d as defineCustomElement$5 } from './p-DbaZzGS_.js';
|
|
3
3
|
import { i as isModifiedEvent } from './p-Hgv-pDpy.js';
|
|
4
4
|
import { d as defineCustomElement$b } from './p-D_6TKRgI.js';
|
|
5
5
|
import { d as defineCustomElement$a } from './p-Bv7dmPUW.js';
|
|
@@ -328,6 +328,6 @@ function defineCustomElement() {
|
|
|
328
328
|
}
|
|
329
329
|
|
|
330
330
|
export { DocumentComponent as D, defineCustomElement as d };
|
|
331
|
-
//# sourceMappingURL=p-
|
|
331
|
+
//# sourceMappingURL=p-ZIaudZgD.js.map
|
|
332
332
|
|
|
333
|
-
//# sourceMappingURL=p-
|
|
333
|
+
//# sourceMappingURL=p-ZIaudZgD.js.map
|