@dso-toolkit/core 68.0.0 → 68.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (60) hide show
  1. package/dist/cjs/dso-annotation-activiteit.cjs.entry.js +1 -1
  2. package/dist/cjs/dso-annotation-activiteit.cjs.entry.js.map +1 -1
  3. package/dist/cjs/dso-annotation-gebiedsaanwijzing.cjs.entry.js +1 -1
  4. package/dist/cjs/dso-annotation-gebiedsaanwijzing.cjs.entry.js.map +1 -1
  5. package/dist/cjs/dso-annotation-kaart.cjs.entry.js +1 -1
  6. package/dist/cjs/dso-annotation-kaart.cjs.entry.js.map +1 -1
  7. package/dist/cjs/dso-annotation-locatie_2.cjs.entry.js +1 -1
  8. package/dist/cjs/dso-annotation-locatie_2.cjs.entry.js.map +1 -1
  9. package/dist/cjs/dso-annotation-omgevingsnormwaarde.cjs.entry.js +1 -1
  10. package/dist/cjs/dso-annotation-omgevingsnormwaarde.cjs.entry.js.map +1 -1
  11. package/dist/cjs/dso-label_2.cjs.entry.js +1 -1
  12. package/dist/cjs/dso-label_2.cjs.entry.js.map +1 -1
  13. package/dist/collection/components/annotation/annotation.css +1 -0
  14. package/dist/collection/components/tooltip/tooltip.css +13 -2
  15. package/dist/components/annotation-locatie.js +1 -1
  16. package/dist/components/annotation-locatie.js.map +1 -1
  17. package/dist/components/dso-annotation-activiteit.js +1 -1
  18. package/dist/components/dso-annotation-activiteit.js.map +1 -1
  19. package/dist/components/dso-annotation-gebiedsaanwijzing.js +1 -1
  20. package/dist/components/dso-annotation-gebiedsaanwijzing.js.map +1 -1
  21. package/dist/components/dso-annotation-kaart.js +1 -1
  22. package/dist/components/dso-annotation-kaart.js.map +1 -1
  23. package/dist/components/dso-annotation-omgevingsnormwaarde.js +1 -1
  24. package/dist/components/dso-annotation-omgevingsnormwaarde.js.map +1 -1
  25. package/dist/components/tooltip.js +1 -1
  26. package/dist/components/tooltip.js.map +1 -1
  27. package/dist/dso-toolkit/dso-toolkit.esm.js +1 -1
  28. package/dist/dso-toolkit/{p-be4bb602.entry.js → p-07f5c6ed.entry.js} +2 -2
  29. package/dist/dso-toolkit/p-07f5c6ed.entry.js.map +1 -0
  30. package/dist/dso-toolkit/p-1564b1d5.entry.js +2 -0
  31. package/dist/dso-toolkit/p-1564b1d5.entry.js.map +1 -0
  32. package/dist/dso-toolkit/{p-90c790cf.entry.js → p-7c7bea23.entry.js} +2 -2
  33. package/dist/dso-toolkit/p-7c7bea23.entry.js.map +1 -0
  34. package/dist/dso-toolkit/p-7e76fe6f.entry.js +2 -0
  35. package/dist/dso-toolkit/p-7e76fe6f.entry.js.map +1 -0
  36. package/dist/dso-toolkit/{p-34ae249e.entry.js → p-8d0b4ab8.entry.js} +2 -2
  37. package/dist/dso-toolkit/p-8d0b4ab8.entry.js.map +1 -0
  38. package/dist/dso-toolkit/{p-35cc2afa.entry.js → p-ba40138e.entry.js} +2 -2
  39. package/dist/dso-toolkit/p-ba40138e.entry.js.map +1 -0
  40. package/dist/esm/dso-annotation-activiteit.entry.js +1 -1
  41. package/dist/esm/dso-annotation-activiteit.entry.js.map +1 -1
  42. package/dist/esm/dso-annotation-gebiedsaanwijzing.entry.js +1 -1
  43. package/dist/esm/dso-annotation-gebiedsaanwijzing.entry.js.map +1 -1
  44. package/dist/esm/dso-annotation-kaart.entry.js +1 -1
  45. package/dist/esm/dso-annotation-kaart.entry.js.map +1 -1
  46. package/dist/esm/dso-annotation-locatie_2.entry.js +1 -1
  47. package/dist/esm/dso-annotation-locatie_2.entry.js.map +1 -1
  48. package/dist/esm/dso-annotation-omgevingsnormwaarde.entry.js +1 -1
  49. package/dist/esm/dso-annotation-omgevingsnormwaarde.entry.js.map +1 -1
  50. package/dist/esm/dso-label_2.entry.js +1 -1
  51. package/dist/esm/dso-label_2.entry.js.map +1 -1
  52. package/package.json +3 -3
  53. package/dist/dso-toolkit/p-34ae249e.entry.js.map +0 -1
  54. package/dist/dso-toolkit/p-35cc2afa.entry.js.map +0 -1
  55. package/dist/dso-toolkit/p-488aa456.entry.js +0 -2
  56. package/dist/dso-toolkit/p-488aa456.entry.js.map +0 -1
  57. package/dist/dso-toolkit/p-90c790cf.entry.js.map +0 -1
  58. package/dist/dso-toolkit/p-b9a2793a.entry.js +0 -2
  59. package/dist/dso-toolkit/p-b9a2793a.entry.js.map +0 -1
  60. package/dist/dso-toolkit/p-be4bb602.entry.js.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"names":["labelCss","DsoLabelStyle0","resizeObserver","ResizeObserver","debounce","entries","forEach","target","isDsoLabelComponent","_truncateLabel","element","tagName","hasEllipses","el","scrollWidth","clientWidth","Label","constructor","hostRef","this","isTruncated","labelText","watchRemovable","removable","startMutationObserver","stopMutationObserver","watchTruncate","truncate","startTruncate","stopTruncate","keyDownListener","event","key","textHover","textFocus","setTimeout","labelContent","syncLabelText","_b","_a","host","textContent","trim","componentDidLoad","disconnectedCallback","mutationObserver","MutationObserver","observe","characterData","childList","subtree","attributes","force","disconnect","unobserve","render","h","Fragment","class","clsx","status","compact","removeHover","removeFocus","name","ref","tabindex","undefined","onMouseEnter","onMouseLeave","onFocus","onBlur","type","onClick","e","dsoRemoveClick","emit","icon","stateless","id","active","position","strategy","maxSize","enabled","phase","requiresIfExists","fn","_ref","state","options","overflow","detectOverflow","_ref2","modifiersData","preventOverflow","x","y","_state$rects$popper","rects","popper","width","height","_state$placement$spli","placement","split","basePlacement","widthProp","heightProp","tooltipCss","DsoTooltipStyle0","transitionDuration","applyMaxSize","beforeWrite","requires","styles","Object","assign","maxWidth","Tooltip","descriptive","noArrow","callbacks","activate","deactivate","matches","hidden","deactivatePopper","destroy","_Tooltip_target","set","watchPosition","setOptions","watchStrategy","setStrategy","parentNode","document","ShadowRoot","parentElement","hasOverflow","watchActive","activatePopper","modifiers","addEventListener","removeEventListener","listenClick","stopPropagation","tooltip","shadowRoot","querySelector","HTMLElement","Error","componentDidRender","update","Host","role","in","small","createPopper","__classPrivateFieldGet","initializeTarget","__classPrivateFieldSet","console","warn","rootNode","getRootNode","Document","reference"],"sources":["src/components/label/label.scss?tag=dso-label&encapsulation=shadow","src/components/label/label.tsx","../../node_modules/popper-max-size-modifier/dist/popper-max-size-modifier.esm.js","src/components/tooltip/tooltip.scss?tag=dso-tooltip&encapsulation=shadow","src/components/tooltip/tooltip.tsx"],"sourcesContent":["@use \"~dso-toolkit/src/utilities\";\r\n@use \"~dso-toolkit/src/variables/units\";\r\n@use \"~dso-toolkit/src/components/label\";\r\n\r\n:host {\r\n display: inline-block;\r\n max-inline-size: 100%;\r\n}\r\n\r\n@include utilities.box-sizing();\r\n\r\n// Todo: Replace .sr-only selector with web component specific selector, no need for .sr-only if we can generate the SCSS\r\n.sr-only {\r\n @include utilities.sr-only();\r\n}\r\n\r\n.dso-label {\r\n @include label.root();\r\n\r\n &.dso-hover {\r\n .dso-label-content {\r\n text-decoration: line-through;\r\n }\r\n }\r\n}\r\n\r\n.dso-truncate.dso-label-content {\r\n display: inline-block;\r\n max-inline-size: 100%;\r\n overflow: hidden;\r\n text-overflow: ellipsis; // stylelint-disable-line declaration-property-value-disallowed-list -- full text can be viewed via tooltip.\r\n vertical-align: bottom;\r\n white-space: nowrap; // stylelint-disable-line declaration-property-value-disallowed-list -- full text can be viewed via tooltip.\r\n}\r\n\r\n:host([removable]) {\r\n .dso-truncate.dso-label-content {\r\n max-inline-size: calc(100% - (units.$u3 + 4px));\r\n }\r\n}\r\n","import {\r\n h,\r\n Component,\r\n ComponentInterface,\r\n Element,\r\n Event,\r\n EventEmitter,\r\n Fragment,\r\n Method,\r\n Prop,\r\n State,\r\n Watch,\r\n Listen,\r\n} from \"@stencil/core\";\r\nimport clsx from \"clsx\";\r\nimport debounce from \"debounce\";\r\nimport { LabelStatus } from \"./label.interfaces\";\r\n\r\nconst resizeObserver = new ResizeObserver(\r\n debounce((entries: ResizeObserverEntry[]) => {\r\n entries.forEach(({ target }) => {\r\n if (isDsoLabelComponent(target)) {\r\n target._truncateLabel();\r\n }\r\n });\r\n }, 150),\r\n);\r\n\r\nfunction isDsoLabelComponent(element: Element): element is HTMLDsoLabelElement {\r\n return element.tagName === \"DSO-LABEL\";\r\n}\r\n\r\nfunction hasEllipses(el: HTMLElement): boolean {\r\n return el.scrollWidth > el.clientWidth;\r\n}\r\n\r\n@Component({\r\n tag: \"dso-label\",\r\n styleUrl: \"label.scss\",\r\n shadow: true,\r\n})\r\nexport class Label implements ComponentInterface {\r\n private labelContent: HTMLSpanElement | undefined;\r\n\r\n private mutationObserver?: MutationObserver;\r\n\r\n @Element()\r\n private host!: HTMLDsoLabelElement;\r\n\r\n /**\r\n * For compact Label\r\n */\r\n @Prop()\r\n compact?: boolean;\r\n\r\n /**\r\n * Shows a button that can be used to remove the Label.\r\n */\r\n @Prop({ reflect: true })\r\n removable?: boolean;\r\n\r\n /**\r\n * The status of this Label.\r\n */\r\n @Prop()\r\n status?: LabelStatus;\r\n\r\n /**\r\n * Emitted when the user activates the remove button.\r\n */\r\n @Event()\r\n dsoRemoveClick!: EventEmitter<MouseEvent>;\r\n\r\n @State()\r\n removeHover?: boolean;\r\n\r\n @State()\r\n removeFocus?: boolean;\r\n\r\n /**\r\n * Whether the Label is allowed to truncate the contents if it does not fit the container element.\r\n */\r\n @Prop()\r\n truncate?: boolean;\r\n\r\n @State()\r\n textHover?: boolean;\r\n\r\n @State()\r\n textFocus?: boolean;\r\n\r\n @State()\r\n isTruncated = false;\r\n\r\n @State()\r\n labelText = \"\";\r\n\r\n @Watch(\"removable\")\r\n watchRemovable(removable: boolean) {\r\n if (removable) {\r\n this.startMutationObserver();\r\n } else {\r\n this.stopMutationObserver();\r\n }\r\n }\r\n\r\n @Watch(\"truncate\")\r\n watchTruncate(truncate: boolean) {\r\n if (truncate) {\r\n this.startTruncate();\r\n } else {\r\n this.stopTruncate();\r\n }\r\n }\r\n\r\n @Listen(\"keydown\", { target: \"document\" })\r\n keyDownListener(event: KeyboardEvent) {\r\n if (event.key === \"Escape\") {\r\n this.textHover = false;\r\n this.textFocus = false;\r\n }\r\n }\r\n\r\n /**\r\n * @internal\r\n */\r\n @Method()\r\n async _truncateLabel() {\r\n setTimeout(() => {\r\n this.isTruncated = !!this.labelContent && hasEllipses(this.labelContent);\r\n });\r\n }\r\n\r\n private syncLabelText() {\r\n this.labelText = this.host.textContent?.trim() ?? \"\";\r\n }\r\n\r\n componentDidLoad() {\r\n if (this.truncate) {\r\n this.startTruncate();\r\n }\r\n\r\n if (this.removable) {\r\n this.startMutationObserver();\r\n }\r\n }\r\n\r\n disconnectedCallback() {\r\n this.stopTruncate();\r\n\r\n this.stopMutationObserver(true);\r\n }\r\n\r\n /** The mutationObserver fetches the text placed inside the label, this is then used for the remove button and tooltip. */\r\n private startMutationObserver(): void {\r\n this.mutationObserver = new MutationObserver(() => this.syncLabelText());\r\n\r\n this.mutationObserver.observe(this.host, {\r\n characterData: true,\r\n childList: true,\r\n subtree: true,\r\n attributes: true,\r\n });\r\n\r\n this.syncLabelText();\r\n }\r\n\r\n private stopMutationObserver(force = false): void {\r\n if (force || !(this.truncate && this.removable)) {\r\n this.mutationObserver?.disconnect();\r\n\r\n delete this.mutationObserver;\r\n }\r\n }\r\n\r\n private startTruncate(): void {\r\n resizeObserver.observe(this.host);\r\n this.startMutationObserver();\r\n this._truncateLabel();\r\n }\r\n\r\n private stopTruncate(): void {\r\n resizeObserver.unobserve(this.host);\r\n this.stopMutationObserver();\r\n this.isTruncated = false;\r\n }\r\n\r\n render() {\r\n return (\r\n <Fragment>\r\n <span\r\n aria-describedby=\"toggle-anchor\"\r\n class={clsx(\"dso-label\", {\r\n [`dso-label-${this.status}`]: this.status,\r\n \"dso-compact\": this.compact && !this.removable,\r\n \"dso-hover\": this.removeHover || this.removeFocus,\r\n })}\r\n >\r\n <slot name=\"symbol\"></slot>\r\n <span\r\n class={clsx(\"dso-label-content\", {\r\n \"dso-truncate\": !!this.truncate,\r\n })}\r\n ref={(element) => (this.labelContent = element)}\r\n tabindex={this.truncate && this.isTruncated ? 0 : undefined}\r\n onMouseEnter={() => (this.textHover = true)}\r\n onMouseLeave={() => (this.textHover = false)}\r\n onFocus={() => (this.textFocus = true)}\r\n onBlur={() => (this.textFocus = false)}\r\n >\r\n <slot></slot>\r\n </span>\r\n {this.removable && (\r\n <button\r\n type=\"button\"\r\n onClick={(e) => this.dsoRemoveClick.emit(e)}\r\n onMouseEnter={() => (this.removeHover = true)}\r\n onMouseLeave={() => (this.removeHover = false)}\r\n onFocus={() => (this.removeFocus = true)}\r\n onBlur={() => (this.removeFocus = false)}\r\n >\r\n <span class=\"sr-only\">Verwijder: {this.labelText}</span>\r\n <dso-icon icon=\"times\"></dso-icon>\r\n </button>\r\n )}\r\n </span>\r\n {this.isTruncated && (\r\n <dso-tooltip\r\n stateless\r\n id=\"toggle-anchor\"\r\n active={this.textHover || this.textFocus}\r\n position=\"top\"\r\n strategy=\"absolute\"\r\n >\r\n {this.labelText}\r\n </dso-tooltip>\r\n )}\r\n </Fragment>\r\n );\r\n }\r\n}\r\n","import { detectOverflow } from '@popperjs/core';\n\nvar maxSize = {\n name: 'maxSize',\n enabled: true,\n phase: 'main',\n requiresIfExists: ['offset', 'preventOverflow', 'flip'],\n fn: function fn(_ref) {\n var state = _ref.state,\n name = _ref.name,\n options = _ref.options;\n var overflow = detectOverflow(state, options);\n\n var _ref2 = state.modifiersData.preventOverflow || {\n x: 0,\n y: 0\n },\n x = _ref2.x,\n y = _ref2.y;\n\n var _state$rects$popper = state.rects.popper,\n width = _state$rects$popper.width,\n height = _state$rects$popper.height;\n\n var _state$placement$spli = state.placement.split('-'),\n basePlacement = _state$placement$spli[0];\n\n var widthProp = basePlacement === 'left' ? 'left' : 'right';\n var heightProp = basePlacement === 'top' ? 'top' : 'bottom';\n state.modifiersData[name] = {\n width: width - overflow[widthProp] - x,\n height: height - overflow[heightProp] - y\n };\n }\n};\n\nexport default maxSize;\n","@use \"~dso-toolkit/src/utilities\";\r\n@use \"~dso-toolkit/src/variables/colors\";\r\n@use \"~dso-toolkit/src/variables/typography\";\r\n@use \"~dso-toolkit/src/variables/units\";\r\n@use \"~dso-toolkit/src/variables/zindex\";\r\n\r\n@use \"tooltip.variables\" as tooltip-variables;\r\n\r\n:host(.hidden) {\r\n visibility: hidden;\r\n}\r\n\r\n@include utilities.box-sizing();\r\n\r\n.tooltip {\r\n font-family: typography.$font-family-base;\r\n // We deliberately do NOT reset font-size.\r\n font-style: normal;\r\n font-weight: 400;\r\n line-height: typography.$line-height-base;\r\n line-break: auto;\r\n text-align: start;\r\n text-decoration: none;\r\n text-shadow: none;\r\n text-transform: none;\r\n letter-spacing: normal;\r\n word-break: break-word;\r\n word-spacing: normal;\r\n word-wrap: normal;\r\n white-space: normal;\r\n\r\n --link-color: #{colors.$grasgroen};\r\n\r\n display: block;\r\n filter: drop-shadow(0 2px 8px rgba(0, 0, 0, 0.4));\r\n font-size: typography.$font-size-small;\r\n opacity: 0;\r\n position: absolute;\r\n transition: opacity tooltip-variables.$transition-duration linear;\r\n z-index: zindex.$tooltip;\r\n\r\n &.in {\r\n opacity: tooltip-variables.$opacity;\r\n }\r\n\r\n .tooltip-inner {\r\n background-color: colors.$wit;\r\n border-radius: tooltip-variables.$border-radius;\r\n color: colors.$grijs-90;\r\n display: inline-block;\r\n font-size: typography.$root-font-size-base;\r\n max-inline-size: tooltip-variables.$max-inline-size;\r\n padding-block: tooltip-variables.$padding-block;\r\n padding-inline: tooltip-variables.$padding-inline;\r\n position: relative;\r\n\r\n &.dso-small {\r\n max-inline-size: tooltip-variables.$max-inline-size-small;\r\n }\r\n }\r\n\r\n .tooltip-arrow {\r\n border-color: transparent;\r\n border-style: solid;\r\n block-size: 0;\r\n inline-size: 0;\r\n }\r\n\r\n &[data-popper-placement=\"top\"] {\r\n margin-block-start: -3px;\r\n padding-block: tooltip-variables.$arrow-inline-size;\r\n padding-inline: 0;\r\n\r\n .tooltip-arrow {\r\n inset-block-end: 0;\r\n border-block-start-color: tooltip-variables.$arrow-color;\r\n border-width: tooltip-variables.$arrow-inline-size;\r\n border-block-end-width: 0;\r\n margin-inline-start: var(--tooltip-margin-inline-start, tooltip-variables.$arrow-margin * -1);\r\n }\r\n }\r\n\r\n &[data-popper-placement=\"right\"] {\r\n margin-inline-start: 3px;\r\n padding-block: 0;\r\n padding-inline: tooltip-variables.$arrow-inline-size;\r\n\r\n .tooltip-arrow {\r\n inset-inline-start: 0;\r\n border-inline-end-color: tooltip-variables.$arrow-color;\r\n border-width: tooltip-variables.$arrow-inline-size;\r\n border-inline-start-width: 0;\r\n margin-block-start: var(--tooltip-margin-block-start, tooltip-variables.$arrow-margin * -1);\r\n }\r\n }\r\n\r\n &[data-popper-placement=\"bottom\"] {\r\n margin-block-start: 3px;\r\n padding-block: tooltip-variables.$arrow-inline-size;\r\n padding-inline: 0;\r\n\r\n .tooltip-arrow {\r\n inset-block-start: 0;\r\n border-block-end-color: tooltip-variables.$arrow-color;\r\n border-width: tooltip-variables.$arrow-inline-size;\r\n border-block-start-width: 0;\r\n margin-inline-start: var(--tooltip-margin-inline-start, tooltip-variables.$arrow-margin * -1);\r\n }\r\n }\r\n\r\n &[data-popper-placement=\"left\"] {\r\n margin-inline-start: -3px;\r\n margin-inline-end: var(--tooltip-margin-inline-end, unset);\r\n padding-block: 0;\r\n padding-inline: tooltip-variables.$arrow-inline-size;\r\n\r\n .tooltip-arrow {\r\n inset-inline-end: 0;\r\n border-inline-start-color: tooltip-variables.$arrow-color;\r\n border-width: tooltip-variables.$arrow-inline-size;\r\n border-inline-end-width: 0;\r\n margin-block-start: var(--tooltip-margin-block-start, tooltip-variables.$arrow-margin * -1);\r\n }\r\n }\r\n}\r\n","import { beforeWrite, createPopper, Instance as PopperInstance, Placement, State as PopperState } from \"@popperjs/core\";\r\nimport maxSize from \"popper-max-size-modifier\";\r\nimport { h, Component, Element, Host, Method, Prop, State, Watch } from \"@stencil/core\";\r\nimport clsx from \"clsx\";\r\nimport { hasOverflow } from \"../../utils/has-overflow\";\r\nimport debounce from \"debounce\";\r\n\r\n// Keep const in sync with $tooltip-transition-duration in dso-toolkit/src/components/tooltip/tooltip.scss tooltip_root() mixin\r\nconst transitionDuration = 150;\r\n\r\nconst applyMaxSize = {\r\n name: \"applyMaxSize\",\r\n enabled: true,\r\n phase: beforeWrite,\r\n requires: [\"maxSize\"],\r\n fn({ state }: { state: PopperState }) {\r\n let { width } = state.modifiersData.maxSize;\r\n if (width < 160) {\r\n width = 160;\r\n }\r\n\r\n state.styles.popper = {\r\n ...state.styles.popper,\r\n maxWidth: `${width}px`,\r\n };\r\n },\r\n};\r\n\r\n@Component({\r\n tag: \"dso-tooltip\",\r\n styleUrl: \"tooltip.scss\",\r\n shadow: true,\r\n})\r\nexport class Tooltip {\r\n /**\r\n * Defines if the tooltip is descriptive. A descriptive tooltip contains a meaningful message. Tooltips that are not descriptive are hidden from screenreaders using `aria-hidden`.\r\n */\r\n @Prop({\r\n reflect: true,\r\n })\r\n descriptive = false;\r\n\r\n /**\r\n * Set position of tooltip relative to target\r\n */\r\n @Prop()\r\n position: Placement = \"top\";\r\n\r\n /**\r\n * Set position strategy of tooltip\r\n */\r\n @Prop()\r\n strategy: \"auto\" | \"absolute\" | \"fixed\" = \"auto\";\r\n\r\n /**\r\n * Set attribute `no-arrow` to hide the arrow\r\n */\r\n @Prop()\r\n noArrow = false;\r\n\r\n /**\r\n * Deactivates mouseover behaviour\r\n */\r\n @Prop()\r\n stateless?: boolean;\r\n\r\n /**\r\n * Defines if the tooltip has a smaller max-width\r\n */\r\n @Prop()\r\n small?: boolean;\r\n\r\n /**\r\n * Whether or not to show the tooltip. To control the tooltip add the `active` attribute or use the `activate()` and `deactivate()` instance methods.\r\n */\r\n @Prop({ reflect: true, mutable: true })\r\n active = false;\r\n\r\n /**\r\n * Activate the tooltip (Sets the `active` attribute)\r\n */\r\n @Method()\r\n async activate(): Promise<void> {\r\n this.active = true;\r\n }\r\n\r\n /**\r\n * Deactivate the tooltip (Removes the `active` attribute)\r\n */\r\n @Method()\r\n async deactivate(): Promise<void> {\r\n this.active = false;\r\n }\r\n\r\n @Watch(\"position\")\r\n watchPosition() {\r\n if (!this.popper) {\r\n return;\r\n }\r\n\r\n this.popper.setOptions({\r\n placement: this.position,\r\n });\r\n }\r\n\r\n @Watch(\"strategy\")\r\n watchStrategy() {\r\n this.setStrategy();\r\n }\r\n\r\n private setStrategy() {\r\n if (!this.popper) {\r\n return;\r\n }\r\n\r\n if (this.strategy === \"absolute\" || this.strategy === \"fixed\") {\r\n this.popper.setOptions({\r\n strategy: this.strategy,\r\n });\r\n\r\n return;\r\n }\r\n\r\n let element: Element | null = this.element;\r\n while (element && element.parentNode !== document) {\r\n element = element.parentNode instanceof ShadowRoot ? element.parentNode.host : element.parentElement;\r\n if (element !== null && hasOverflow(element)) {\r\n this.popper.setOptions({\r\n strategy: \"fixed\",\r\n });\r\n\r\n return;\r\n }\r\n }\r\n\r\n this.popper.setOptions({\r\n strategy: \"absolute\",\r\n });\r\n }\r\n\r\n @Watch(\"active\")\r\n watchActive() {\r\n if (this.active) {\r\n this.activatePopper();\r\n\r\n if (!this.stateless) {\r\n setTimeout(() => {\r\n this.popper?.setOptions({\r\n modifiers: [{ name: \"eventListeners\", enabled: true }],\r\n });\r\n document.addEventListener(\"keydown\", this.keyDownListener);\r\n });\r\n }\r\n } else {\r\n document.removeEventListener(\"keydown\", this.keyDownListener);\r\n this.deactivatePopper();\r\n }\r\n }\r\n\r\n @Element()\r\n private element!: HTMLDsoTooltipElement;\r\n\r\n private popper: PopperInstance | undefined;\r\n\r\n private callbacks: TooltipCallbacks = {\r\n activate: () => (this.active = true),\r\n deactivate: () => (this.active = false),\r\n };\r\n\r\n private onMouseLeave = () => {\r\n if (!this.element.matches(\":hover\") && !this.target?.matches(\":hover\")) {\r\n this.callbacks.deactivate();\r\n }\r\n };\r\n\r\n @State()\r\n private hidden = true;\r\n\r\n private listenClick(e: MouseEvent) {\r\n e.stopPropagation();\r\n }\r\n\r\n componentDidLoad(): void {\r\n const tooltip = this.element.shadowRoot?.querySelector(\".tooltip\");\r\n if (!(tooltip instanceof HTMLElement)) {\r\n throw new Error(\"tooltip element is not instanceof HTMLElement\");\r\n }\r\n\r\n if (!this.stateless && this.target) {\r\n this.target.addEventListener(\"mouseenter\", this.callbacks.activate);\r\n [this.element, this.target].forEach((element) => element.addEventListener(\"mouseleave\", this.onMouseLeave));\r\n this.target.addEventListener(\"focus\", this.callbacks.activate);\r\n this.target.addEventListener(\"blur\", this.callbacks.deactivate);\r\n }\r\n }\r\n\r\n disconnectedCallback(): void {\r\n this.popper?.destroy();\r\n\r\n if (!this.stateless && this.target) {\r\n this.target.removeEventListener(\"mouseenter\", this.callbacks.activate);\r\n [this.element, this.target].forEach((element) => element.removeEventListener(\"mouseleave\", this.onMouseLeave));\r\n this.target.removeEventListener(\"focus\", this.callbacks.activate);\r\n this.target.removeEventListener(\"blur\", this.callbacks.deactivate);\r\n }\r\n\r\n this.target = undefined;\r\n }\r\n\r\n componentDidRender() {\r\n if (this.active) {\r\n this.popper?.update();\r\n }\r\n }\r\n\r\n private keyDownListener = (event: KeyboardEvent) => {\r\n if (event.key === \"Escape\") {\r\n this.deactivate();\r\n }\r\n };\r\n\r\n render() {\r\n return (\r\n <Host class={{ hidden: this.hidden }} role=\"tooltip\" onClick={this.listenClick}>\r\n <div class={clsx(\"tooltip\", { in: this.active })}>\r\n {!this.noArrow && <div data-popper-arrow class=\"tooltip-arrow\"></div>}\r\n <div aria-hidden={!this.descriptive || undefined} class={clsx(\"tooltip-inner\", { \"dso-small\": this.small })}>\r\n <slot></slot>\r\n </div>\r\n </div>\r\n </Host>\r\n );\r\n }\r\n\r\n private deactivatePopper = debounce(() => {\r\n this.hidden = true;\r\n this.popper?.destroy();\r\n this.popper = undefined;\r\n }, transitionDuration);\r\n\r\n private activatePopper(): void {\r\n this.hidden = false;\r\n\r\n if (this.popper) {\r\n return;\r\n }\r\n\r\n const tooltip = this.element.shadowRoot?.querySelector(\".tooltip\");\r\n\r\n if (this.target && tooltip instanceof HTMLElement) {\r\n this.popper = createPopper(this.target, tooltip, {\r\n placement: this.position,\r\n modifiers: [maxSize, applyMaxSize, { name: \"eventListeners\", enabled: false }],\r\n });\r\n\r\n this.setStrategy();\r\n }\r\n }\r\n\r\n private get target(): HTMLElement | undefined {\r\n return this.#target ?? this.initializeTarget();\r\n }\r\n\r\n private set target(element: HTMLElement | undefined) {\r\n this.#target = element;\r\n }\r\n\r\n #target?: HTMLElement;\r\n\r\n private initializeTarget(): HTMLElement | undefined {\r\n const id = this.element.id;\r\n\r\n if (!id) {\r\n console.warn(\"Unable to find reference tooltip has no [id] attribute.\");\r\n\r\n return;\r\n }\r\n\r\n const rootNode = this.element.getRootNode();\r\n if (!(rootNode instanceof Document || rootNode instanceof ShadowRoot)) {\r\n console.warn(`rootNode is not instance of Document or ShadowRoot`);\r\n\r\n return;\r\n }\r\n\r\n const reference = rootNode.querySelector<HTMLElement>(`[aria-describedBy=\"${id}`);\r\n if (!reference) {\r\n console.warn(`Unable to find reference with aria-describedby ${id}`);\r\n\r\n return;\r\n }\r\n\r\n this.#target = reference;\r\n return reference;\r\n }\r\n}\r\n\r\ninterface TooltipCallbacks {\r\n activate: () => void;\r\n deactivate: () => void;\r\n}\r\n"],"mappings":"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","ignoreList":[]}
@@ -1 +0,0 @@
1
- {"version":3,"names":["annotationCss","DsoAnnotationActiviteitStyle0","AnnotationActiviteit","constructor","hostRef","this","watcher","host","connectedCallback","watch","disconnectedCallback","unwatch","render","hasSymbool","h","AnnotationBody","key","symbol","AnnotationSymbolSlot","undefined","active","dsoActiveChange","title","value","naam","data","Fragment","class","regelKwalificatie","regelKwalificatieVoorzetsel","locatieNoemers","gewijzigdeLocatie","AnnotationGewijzigdeLocatie"],"sources":["src/components/annotation/annotation.scss?tag=dso-annotation-activiteit&encapsulation=shadow","src/components/annotation/annotation-activiteit/annotation-activiteit.tsx"],"sourcesContent":["@use \"~dso-toolkit/src/utilities\";\r\n@use \"~dso-toolkit/src/variables/units\";\r\n\r\n@use \"~dso-toolkit/src/components/insert\";\r\n@use \"~dso-toolkit/src/components/delete\";\r\n\r\n@use \"~dso-toolkit/src/components/anchor/anchor\";\r\n\r\n:host {\r\n display: block;\r\n padding: 2px;\r\n}\r\n\r\n:host([wijzigactie=\"voegtoe\"]) {\r\n @include insert.root();\r\n}\r\n\r\n:host([wijzigactie=\"verwijder\"]) {\r\n @include delete.root();\r\n}\r\n\r\n@include utilities.box-sizing();\r\n\r\n.annotation-body {\r\n display: flex;\r\n gap: units.$u1;\r\n}\r\n\r\n.annotation-info {\r\n flex-grow: 1;\r\n}\r\n\r\n.annotation-symbol,\r\n.annotation-control {\r\n flex-shrink: 0;\r\n}\r\n\r\n.annotation-title {\r\n font-weight: 500;\r\n}\r\n\r\n.annotation-title,\r\n.annotation-data {\r\n margin-block: 0;\r\n\r\n .content:has(+ dso-label) {\r\n margin-inline-end: units.$u1 * 0.5;\r\n }\r\n}\r\n\r\n.annotation-data {\r\n font-size: 0.875rem;\r\n}\r\n","import { Component, ComponentInterface, Prop, Event, h, Fragment, EventEmitter, Element } from \"@stencil/core\";\r\nimport { AnnotationActiveChangeEvent, AnnotationWijzigactie } from \"../annotation.interfaces\";\r\nimport { AnnotationBody } from \"../annotation-body\";\r\nimport { AnnotationGewijzigdeLocatie } from \"../annotation-gewijzigde-locatie\";\r\nimport { watcher } from \"../annotation-watcher\";\r\nimport { AnnotationSymbolSlot } from \"../annotation-symbol-slot\";\r\nimport { RenvooiValue } from \"../../renvooi/renvooi.interfaces\";\r\n\r\n/**\r\n * @slot symbool - Een optionele afbeelding die de annotatie symboliseert.\r\n */\r\n@Component({\r\n tag: \"dso-annotation-activiteit\",\r\n styleUrl: \"../annotation.scss\",\r\n shadow: true,\r\n})\r\nexport class AnnotationActiviteit implements ComponentInterface {\r\n /**\r\n * Een optionele wijzigactie die aangeeft of de annotatie toegevoegd of verwijderd is.\r\n */\r\n @Prop({ reflect: true })\r\n wijzigactie?: AnnotationWijzigactie;\r\n\r\n /**\r\n * Een optionele boolean die aangeeft of de annotatie actief is.\r\n */\r\n @Prop({ reflect: true })\r\n active?: boolean;\r\n\r\n /**\r\n * Een optionele boolean die aangeeft of de locatie van de annotatie gewijzigd is.\r\n */\r\n @Prop({ reflect: true })\r\n gewijzigdeLocatie?: boolean;\r\n\r\n /**\r\n * Een optionele event listener voor wijzigingen aan de status van de annotatie.\r\n */\r\n @Event()\r\n dsoActiveChange!: EventEmitter<AnnotationActiveChangeEvent>;\r\n\r\n /**\r\n * De naam van de activiteit.\r\n */\r\n @Prop()\r\n naam?: RenvooiValue | string;\r\n\r\n /**\r\n * De activiteit regel kwalificatie.\r\n */\r\n @Prop()\r\n regelKwalificatie?: RenvooiValue | string;\r\n\r\n /**\r\n * De noemer van de locatie.\r\n */\r\n @Prop()\r\n locatieNoemers?: Array<RenvooiValue | string>;\r\n\r\n /**\r\n * Voorzetsel van de regelKwalificatie. Exclusief dubbele punt.\r\n */\r\n @Prop()\r\n regelKwalificatieVoorzetsel?: string;\r\n\r\n @Element()\r\n private host!: HTMLDsoAnnotationActiviteitElement;\r\n\r\n private watcher = watcher(this.host);\r\n\r\n connectedCallback(): void {\r\n this.watcher.watch();\r\n }\r\n\r\n disconnectedCallback(): void {\r\n this.watcher.unwatch();\r\n }\r\n\r\n render() {\r\n const hasSymbool = this.watcher.hasSymbool();\r\n\r\n return (\r\n <AnnotationBody\r\n symbol={hasSymbool ? <AnnotationSymbolSlot /> : undefined}\r\n active={this.active}\r\n dsoActiveChange={this.dsoActiveChange}\r\n title={<dso-renvooi value={this.naam} />}\r\n data={\r\n <>\r\n <span class=\"content\">\r\n {this.regelKwalificatie && (\r\n <>\r\n <dso-renvooi value={this.regelKwalificatie} />{\" \"}\r\n </>\r\n )}\r\n {this.regelKwalificatieVoorzetsel && `${this.regelKwalificatieVoorzetsel}: `}\r\n <dso-renvooi value={this.locatieNoemers} />\r\n </span>\r\n {this.gewijzigdeLocatie && <AnnotationGewijzigdeLocatie />}\r\n </>\r\n }\r\n />\r\n );\r\n }\r\n}\r\n"],"mappings":"sJAAA,MAAMA,EAAgB,s1IACtB,MAAAC,EAAeD,E,MCeFE,EAAoB,MALjC,WAAAC,CAAAC,G,2DAyDUC,KAAAC,QAAUA,EAAQD,KAAKE,K,CAE/B,iBAAAC,GACEH,KAAKC,QAAQG,O,CAGf,oBAAAC,GACEL,KAAKC,QAAQK,S,CAGf,MAAAC,GACE,MAAMC,EAAaR,KAAKC,QAAQO,aAEhC,OACEC,EAACC,EAAc,CAAAC,IAAA,2CACbC,OAAQJ,EAAaC,EAACI,EAAoB,MAAMC,UAChDC,OAAQf,KAAKe,OACbC,gBAAiBhB,KAAKgB,gBACtBC,MAAOR,EAAA,eAAaS,MAAOlB,KAAKmB,OAChCC,KACEX,EAAAY,EAAA,KACEZ,EAAA,QAAMa,MAAM,WACTtB,KAAKuB,mBACJd,EAAAY,EAAA,KACEZ,EAAA,eAAaS,MAAOlB,KAAKuB,oBAAsB,KAGlDvB,KAAKwB,6BAA+B,GAAGxB,KAAKwB,gCAC7Cf,EAAA,eAAaS,MAAOlB,KAAKyB,kBAE1BzB,KAAK0B,mBAAqBjB,EAACkB,EAA2B,Q","ignoreList":[]}