@dso-toolkit/core 68.5.0 → 69.1.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.
Files changed (171) hide show
  1. package/dist/cjs/annotation-list-renvooi-values-9836dd5d.js +13 -0
  2. package/dist/cjs/annotation-list-renvooi-values-9836dd5d.js.map +1 -0
  3. package/dist/cjs/dso-alert_6.cjs.entry.js +15 -2
  4. package/dist/cjs/dso-alert_6.cjs.entry.js.map +1 -1
  5. package/dist/cjs/dso-annotation-activiteit.cjs.entry.js +2 -1
  6. package/dist/cjs/dso-annotation-activiteit.cjs.entry.js.map +1 -1
  7. package/dist/cjs/dso-annotation-omgevingsnormwaarde.cjs.entry.js +2 -1
  8. package/dist/cjs/dso-annotation-omgevingsnormwaarde.cjs.entry.js.map +1 -1
  9. package/dist/cjs/dso-autosuggest.cjs.entry.js +149 -20
  10. package/dist/cjs/dso-autosuggest.cjs.entry.js.map +1 -1
  11. package/dist/cjs/dso-info_2.cjs.entry.js +1 -1
  12. package/dist/cjs/dso-label_3.cjs.entry.js +9 -6
  13. package/dist/cjs/dso-label_3.cjs.entry.js.map +1 -1
  14. package/dist/cjs/dso-pagination.cjs.entry.js +39 -26
  15. package/dist/cjs/dso-pagination.cjs.entry.js.map +1 -1
  16. package/dist/cjs/dso-responsive-element.cjs.entry.js +1 -1
  17. package/dist/cjs/dso-scrollable.cjs.entry.js +5 -2
  18. package/dist/cjs/dso-scrollable.cjs.entry.js.map +1 -1
  19. package/dist/cjs/dso-skiplink.cjs.entry.js +1 -1
  20. package/dist/cjs/dso-survey-rating.cjs.entry.js +2 -2
  21. package/dist/cjs/dso-tabs.cjs.entry.js +1 -1
  22. package/dist/cjs/dso-toggletip.cjs.entry.js +1 -1
  23. package/dist/cjs/dso-toolkit.cjs.js +1 -1
  24. package/dist/cjs/dso-tooltip.cjs.entry.js +1 -1
  25. package/dist/cjs/dso-tree-view.cjs.entry.js +1 -1
  26. package/dist/cjs/dso-viewer-grid.cjs.entry.js +2 -2
  27. package/dist/cjs/loader.cjs.js +1 -1
  28. package/dist/collection/components/annotation/annotation-activiteit/annotation-activiteit.js +2 -1
  29. package/dist/collection/components/annotation/annotation-activiteit/annotation-activiteit.js.map +1 -1
  30. package/dist/collection/components/annotation/annotation-list-renvooi-values.js +5 -0
  31. package/dist/collection/components/annotation/annotation-list-renvooi-values.js.map +1 -0
  32. package/dist/collection/components/annotation/annotation-omgevingsnormwaarde/annotation-omgevingsnormwaarde.js +2 -1
  33. package/dist/collection/components/annotation/annotation-omgevingsnormwaarde/annotation-omgevingsnormwaarde.js.map +1 -1
  34. package/dist/collection/components/autosuggest/autosuggest.css +23 -11
  35. package/dist/collection/components/autosuggest/autosuggest.interfaces.js.map +1 -1
  36. package/dist/collection/components/autosuggest/autosuggest.js +158 -23
  37. package/dist/collection/components/autosuggest/autosuggest.js.map +1 -1
  38. package/dist/collection/components/ozon-content/nodes/abbr.node.js +11 -0
  39. package/dist/collection/components/ozon-content/nodes/abbr.node.js.map +1 -0
  40. package/dist/collection/components/ozon-content/ozon-content-mapper.js +2 -0
  41. package/dist/collection/components/ozon-content/ozon-content-mapper.js.map +1 -1
  42. package/dist/collection/components/ozon-content/ozon-content.css +4 -0
  43. package/dist/collection/components/pagination/pagination.js +39 -26
  44. package/dist/collection/components/pagination/pagination.js.map +1 -1
  45. package/dist/collection/components/renvooi/renvooi.js +8 -5
  46. package/dist/collection/components/renvooi/renvooi.js.map +1 -1
  47. package/dist/collection/components/responsive-element/responsive-element.js +1 -1
  48. package/dist/collection/components/scrollable/scrollable.js +5 -2
  49. package/dist/collection/components/scrollable/scrollable.js.map +1 -1
  50. package/dist/collection/components/selectable/selectable.js +1 -1
  51. package/dist/collection/components/skiplink/skiplink.js +1 -1
  52. package/dist/collection/components/slide-toggle/slide-toggle.js +1 -1
  53. package/dist/collection/components/survey-rating/survey-rating.js +2 -2
  54. package/dist/collection/components/table/table.js +1 -1
  55. package/dist/collection/components/tabs/tabs.js +1 -1
  56. package/dist/collection/components/toggletip/toggletip.js +1 -1
  57. package/dist/collection/components/tooltip/tooltip.js +1 -1
  58. package/dist/collection/components/tree-view/tree-view.js +1 -1
  59. package/dist/collection/components/viewer-grid/viewer-grid.js +2 -2
  60. package/dist/components/annotation-list-renvooi-values.js +11 -0
  61. package/dist/components/annotation-list-renvooi-values.js.map +1 -0
  62. package/dist/components/dso-annotation-activiteit.js +2 -1
  63. package/dist/components/dso-annotation-activiteit.js.map +1 -1
  64. package/dist/components/dso-annotation-omgevingsnormwaarde.js +2 -1
  65. package/dist/components/dso-annotation-omgevingsnormwaarde.js.map +1 -1
  66. package/dist/components/dso-autosuggest.js +150 -20
  67. package/dist/components/dso-autosuggest.js.map +1 -1
  68. package/dist/components/dso-pagination.js +39 -26
  69. package/dist/components/dso-pagination.js.map +1 -1
  70. package/dist/components/dso-skiplink.js +1 -1
  71. package/dist/components/dso-survey-rating.js +2 -2
  72. package/dist/components/dso-tabs.js +1 -1
  73. package/dist/components/dso-tree-view.js +1 -1
  74. package/dist/components/dso-viewer-grid.js +2 -2
  75. package/dist/components/ozon-content.js +14 -1
  76. package/dist/components/ozon-content.js.map +1 -1
  77. package/dist/components/renvooi.js +8 -5
  78. package/dist/components/renvooi.js.map +1 -1
  79. package/dist/components/responsive-element.js +1 -1
  80. package/dist/components/scrollable.js +5 -2
  81. package/dist/components/scrollable.js.map +1 -1
  82. package/dist/components/selectable.js +1 -1
  83. package/dist/components/slide-toggle.js +1 -1
  84. package/dist/components/table.js +1 -1
  85. package/dist/components/toggletip.js +1 -1
  86. package/dist/components/tooltip.js +1 -1
  87. package/dist/dso-toolkit/dso-toolkit.esm.js +1 -1
  88. package/dist/dso-toolkit/dso-toolkit.esm.js.map +1 -1
  89. package/dist/dso-toolkit/p-03e5e9e1.entry.js +2 -0
  90. package/dist/dso-toolkit/p-276777d7.entry.js +2 -0
  91. package/dist/dso-toolkit/p-276777d7.entry.js.map +1 -0
  92. package/dist/dso-toolkit/{p-d3131297.entry.js → p-327cbc96.entry.js} +2 -2
  93. package/dist/dso-toolkit/{p-898ad366.entry.js → p-32f26545.entry.js} +2 -2
  94. package/dist/dso-toolkit/p-3efc1929.entry.js +2 -0
  95. package/dist/dso-toolkit/p-3efc1929.entry.js.map +1 -0
  96. package/dist/dso-toolkit/{p-0dcef2bb.entry.js → p-4549dc10.entry.js} +2 -2
  97. package/dist/dso-toolkit/{p-11e367b3.entry.js → p-4b536d17.entry.js} +2 -2
  98. package/dist/dso-toolkit/p-7949fc70.entry.js +2 -0
  99. package/dist/dso-toolkit/p-7949fc70.entry.js.map +1 -0
  100. package/dist/dso-toolkit/p-b73839a2.js +2 -0
  101. package/dist/dso-toolkit/p-b73839a2.js.map +1 -0
  102. package/dist/dso-toolkit/{p-3033a7f3.entry.js → p-cc3366a5.entry.js} +2 -2
  103. package/dist/dso-toolkit/p-d343ecd3.entry.js +2 -0
  104. package/dist/dso-toolkit/p-d343ecd3.entry.js.map +1 -0
  105. package/dist/dso-toolkit/{p-323455dc.entry.js → p-d51d44f7.entry.js} +2 -2
  106. package/dist/dso-toolkit/p-d51d44f7.entry.js.map +1 -0
  107. package/dist/dso-toolkit/{p-e9d15fae.entry.js → p-e26460b5.entry.js} +2 -2
  108. package/dist/dso-toolkit/p-e26460b5.entry.js.map +1 -0
  109. package/dist/dso-toolkit/p-e2d3d553.entry.js +2 -0
  110. package/dist/dso-toolkit/{p-880d04c4.entry.js → p-e8064fba.entry.js} +2 -2
  111. package/dist/dso-toolkit/p-eeca54c6.entry.js +2 -0
  112. package/dist/dso-toolkit/p-eeca54c6.entry.js.map +1 -0
  113. package/dist/dso-toolkit/{p-5cdbbba6.entry.js → p-fed0928b.entry.js} +2 -2
  114. package/dist/esm/annotation-list-renvooi-values-ed9c0ff3.js +11 -0
  115. package/dist/esm/annotation-list-renvooi-values-ed9c0ff3.js.map +1 -0
  116. package/dist/esm/dso-alert_6.entry.js +15 -2
  117. package/dist/esm/dso-alert_6.entry.js.map +1 -1
  118. package/dist/esm/dso-annotation-activiteit.entry.js +2 -1
  119. package/dist/esm/dso-annotation-activiteit.entry.js.map +1 -1
  120. package/dist/esm/dso-annotation-omgevingsnormwaarde.entry.js +2 -1
  121. package/dist/esm/dso-annotation-omgevingsnormwaarde.entry.js.map +1 -1
  122. package/dist/esm/dso-autosuggest.entry.js +149 -20
  123. package/dist/esm/dso-autosuggest.entry.js.map +1 -1
  124. package/dist/esm/dso-info_2.entry.js +1 -1
  125. package/dist/esm/dso-label_3.entry.js +9 -6
  126. package/dist/esm/dso-label_3.entry.js.map +1 -1
  127. package/dist/esm/dso-pagination.entry.js +39 -26
  128. package/dist/esm/dso-pagination.entry.js.map +1 -1
  129. package/dist/esm/dso-responsive-element.entry.js +1 -1
  130. package/dist/esm/dso-scrollable.entry.js +5 -2
  131. package/dist/esm/dso-scrollable.entry.js.map +1 -1
  132. package/dist/esm/dso-skiplink.entry.js +1 -1
  133. package/dist/esm/dso-survey-rating.entry.js +2 -2
  134. package/dist/esm/dso-tabs.entry.js +1 -1
  135. package/dist/esm/dso-toggletip.entry.js +1 -1
  136. package/dist/esm/dso-toolkit.js +1 -1
  137. package/dist/esm/dso-tooltip.entry.js +1 -1
  138. package/dist/esm/dso-tree-view.entry.js +1 -1
  139. package/dist/esm/dso-viewer-grid.entry.js +2 -2
  140. package/dist/esm/loader.js +1 -1
  141. package/dist/types/components/annotation/annotation-list-renvooi-values.d.ts +7 -0
  142. package/dist/types/components/autosuggest/autosuggest.d.ts +18 -7
  143. package/dist/types/components/autosuggest/autosuggest.interfaces.d.ts +10 -0
  144. package/dist/types/components/ozon-content/nodes/abbr.node.d.ts +6 -0
  145. package/dist/types/components/pagination/pagination.d.ts +2 -0
  146. package/dist/types/components/renvooi/renvooi.d.ts +1 -0
  147. package/dist/types/components.d.ts +6 -6
  148. package/package.json +3 -3
  149. package/dist/dso-toolkit/p-135bf595.entry.js +0 -2
  150. package/dist/dso-toolkit/p-135bf595.entry.js.map +0 -1
  151. package/dist/dso-toolkit/p-2aaad2dd.entry.js +0 -2
  152. package/dist/dso-toolkit/p-323455dc.entry.js.map +0 -1
  153. package/dist/dso-toolkit/p-4b70b133.entry.js +0 -2
  154. package/dist/dso-toolkit/p-4b70b133.entry.js.map +0 -1
  155. package/dist/dso-toolkit/p-9331c2fc.entry.js +0 -2
  156. package/dist/dso-toolkit/p-d8c11809.entry.js +0 -2
  157. package/dist/dso-toolkit/p-d8c11809.entry.js.map +0 -1
  158. package/dist/dso-toolkit/p-da7f089a.entry.js +0 -2
  159. package/dist/dso-toolkit/p-da7f089a.entry.js.map +0 -1
  160. package/dist/dso-toolkit/p-e4f473e2.entry.js +0 -2
  161. package/dist/dso-toolkit/p-e4f473e2.entry.js.map +0 -1
  162. package/dist/dso-toolkit/p-e9d15fae.entry.js.map +0 -1
  163. /package/dist/dso-toolkit/{p-2aaad2dd.entry.js.map → p-03e5e9e1.entry.js.map} +0 -0
  164. /package/dist/dso-toolkit/{p-d3131297.entry.js.map → p-327cbc96.entry.js.map} +0 -0
  165. /package/dist/dso-toolkit/{p-898ad366.entry.js.map → p-32f26545.entry.js.map} +0 -0
  166. /package/dist/dso-toolkit/{p-0dcef2bb.entry.js.map → p-4549dc10.entry.js.map} +0 -0
  167. /package/dist/dso-toolkit/{p-11e367b3.entry.js.map → p-4b536d17.entry.js.map} +0 -0
  168. /package/dist/dso-toolkit/{p-3033a7f3.entry.js.map → p-cc3366a5.entry.js.map} +0 -0
  169. /package/dist/dso-toolkit/{p-9331c2fc.entry.js.map → p-e2d3d553.entry.js.map} +0 -0
  170. /package/dist/dso-toolkit/{p-880d04c4.entry.js.map → p-e8064fba.entry.js.map} +0 -0
  171. /package/dist/dso-toolkit/{p-5cdbbba6.entry.js.map → p-fed0928b.entry.js.map} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"scrollable.js","sourceRoot":"","sources":["../../../../src/components/scrollable/scrollable.tsx"],"names":[],"mappings":"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","sourcesContent":["import { Component, Element, Event, EventEmitter, h, Method, State } from \"@stencil/core\";\r\nimport clsx from \"clsx\";\r\nimport debounce from \"debounce\";\r\n\r\nimport { DsoScrollEndEvent, ScrollPosition } from \"./scrollable.interfaces\";\r\n\r\nconst resizeObserver = new ResizeObserver(\r\n debounce(\r\n (entries: ResizeObserverEntry[]) =>\r\n entries.forEach((entry) => getScrollableComponentFromResizeObserverEntry(entry)?._setScrollState()),\r\n 50,\r\n ),\r\n);\r\n\r\nfunction getScrollableComponentFromResizeObserverEntry({\r\n target,\r\n}: ResizeObserverEntry): HTMLDsoScrollableElement | undefined {\r\n if (target.parentNode instanceof ShadowRoot && isDsoScrollableComponent(target.parentNode.host)) {\r\n return target.parentNode.host;\r\n }\r\n\r\n if (target.parentElement && isDsoScrollableComponent(target.parentElement)) {\r\n return target.parentElement;\r\n }\r\n\r\n return undefined;\r\n}\r\n\r\nfunction isDsoScrollableComponent(element: Element): element is HTMLDsoScrollableElement {\r\n return element.tagName === \"DSO-SCROLLABLE\";\r\n}\r\n\r\n@Component({\r\n tag: \"dso-scrollable\",\r\n styleUrl: \"scrollable.scss\",\r\n shadow: true,\r\n})\r\nexport class Scrollable {\r\n // One MutationObserver per instance because of https://github.com/whatwg/dom/issues/126\r\n private mutationObserver = new MutationObserver((entries) =>\r\n entries.forEach(({ target }) => {\r\n const element = target.parentElement?.closest(\"dso-scrollable\");\r\n if (element !== this.host) {\r\n return;\r\n }\r\n\r\n this._setScrollState();\r\n }),\r\n );\r\n\r\n private scrollContainerDiv?: HTMLDivElement;\r\n\r\n private shadowContainerDiv?: HTMLDivElement;\r\n\r\n @Element()\r\n host!: HTMLDsoScrollableElement;\r\n\r\n /**\r\n * Event emitted when the scrollbar has reached top or bottom.\r\n */\r\n @Event()\r\n dsoScrollEnd!: EventEmitter<DsoScrollEndEvent>;\r\n\r\n @State()\r\n scrollPosition: ScrollPosition = \"noScroll\";\r\n\r\n /**\r\n * @internal\r\n */\r\n @Method()\r\n async _setScrollState() {\r\n const scrollPosition = this.getScrollPosition();\r\n if (this.scrollPosition !== scrollPosition) {\r\n this.scrollPosition = scrollPosition;\r\n\r\n if (this.scrollPosition === \"top\" || this.scrollPosition === \"bottom\") {\r\n this.dsoScrollEnd.emit({ scrollEnd: this.scrollPosition });\r\n }\r\n }\r\n }\r\n\r\n private get slottedElements() {\r\n return Array.from(this.host.children);\r\n }\r\n\r\n private getScrollPosition(): ScrollPosition {\r\n if (!this.scrollContainerDiv) {\r\n return \"noScroll\";\r\n }\r\n\r\n const { scrollHeight, clientHeight, scrollTop } = this.scrollContainerDiv;\r\n\r\n if (scrollHeight <= clientHeight) {\r\n return \"noScroll\";\r\n }\r\n\r\n if (scrollTop === 0) {\r\n return \"top\";\r\n }\r\n\r\n if (scrollHeight - scrollTop - clientHeight < 1) {\r\n return \"bottom\";\r\n }\r\n\r\n if (scrollTop > 0) {\r\n return \"middle\";\r\n }\r\n\r\n return \"noScroll\";\r\n }\r\n\r\n componentDidLoad(): void {\r\n this.mutationObserver.observe(this.host, {\r\n characterData: true,\r\n attributes: false,\r\n childList: false,\r\n subtree: true,\r\n });\r\n\r\n if (this.shadowContainerDiv instanceof HTMLDivElement) {\r\n resizeObserver.observe(this.shadowContainerDiv);\r\n }\r\n\r\n this.slottedElements.forEach((element) => resizeObserver.observe(element));\r\n }\r\n\r\n disconnectedCallback(): void {\r\n if (this.shadowContainerDiv instanceof HTMLDivElement) {\r\n resizeObserver.unobserve(this.shadowContainerDiv);\r\n }\r\n\r\n this.mutationObserver.disconnect();\r\n\r\n this.slottedElements.forEach((element) => resizeObserver.unobserve(element));\r\n }\r\n\r\n render() {\r\n return (\r\n <div ref={(el) => (this.shadowContainerDiv = el)} class=\"dso-shadow-container\">\r\n <div\r\n ref={(el) => (this.scrollContainerDiv = el)}\r\n class={clsx(\"dso-scroll-container\", {\r\n [`dso-scroll-${this.scrollPosition}`]: this.scrollPosition !== \"noScroll\",\r\n })}\r\n onScroll={() => this._setScrollState()}\r\n >\r\n <slot></slot>\r\n </div>\r\n </div>\r\n );\r\n }\r\n}\r\n"]}
1
+ {"version":3,"file":"scrollable.js","sourceRoot":"","sources":["../../../../src/components/scrollable/scrollable.tsx"],"names":[],"mappings":"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","sourcesContent":["import { Component, Element, Event, EventEmitter, h, Method, State } from \"@stencil/core\";\r\nimport clsx from \"clsx\";\r\nimport debounce from \"debounce\";\r\n\r\nimport { DsoScrollEndEvent, ScrollPosition } from \"./scrollable.interfaces\";\r\n\r\nconst resizeObserver = new ResizeObserver(\r\n debounce(\r\n (entries: ResizeObserverEntry[]) =>\r\n entries.forEach((entry) => getScrollableComponentFromResizeObserverEntry(entry)?._setScrollState()),\r\n 50,\r\n ),\r\n);\r\n\r\nfunction getScrollableComponentFromResizeObserverEntry({\r\n target,\r\n}: ResizeObserverEntry): HTMLDsoScrollableElement | undefined {\r\n if (target.parentNode instanceof ShadowRoot && isDsoScrollableComponent(target.parentNode.host)) {\r\n return target.parentNode.host;\r\n }\r\n\r\n if (target.parentElement && isDsoScrollableComponent(target.parentElement)) {\r\n return target.parentElement;\r\n }\r\n\r\n return undefined;\r\n}\r\n\r\nfunction isDsoScrollableComponent(element: Element): element is HTMLDsoScrollableElement {\r\n return element.tagName === \"DSO-SCROLLABLE\";\r\n}\r\n\r\n@Component({\r\n tag: \"dso-scrollable\",\r\n styleUrl: \"scrollable.scss\",\r\n shadow: true,\r\n})\r\nexport class Scrollable {\r\n // One MutationObserver per instance because of https://github.com/whatwg/dom/issues/126\r\n private mutationObserver = new MutationObserver((entries) =>\r\n entries.forEach(({ target }) => {\r\n const element = target.parentElement?.closest(\"dso-scrollable\");\r\n if (element !== this.host) {\r\n return;\r\n }\r\n\r\n this._setScrollState();\r\n }),\r\n );\r\n\r\n private scrollContainerDiv?: HTMLDivElement;\r\n\r\n private shadowContainerDiv?: HTMLDivElement;\r\n\r\n @Element()\r\n host!: HTMLDsoScrollableElement;\r\n\r\n /**\r\n * Event emitted when the scrollbar has reached top or bottom.\r\n */\r\n @Event()\r\n dsoScrollEnd!: EventEmitter<DsoScrollEndEvent>;\r\n\r\n @State()\r\n scrollPosition: ScrollPosition = \"noScroll\";\r\n\r\n /**\r\n * @internal\r\n */\r\n @Method()\r\n async _setScrollState() {\r\n if (!this.host.isConnected) {\r\n return;\r\n }\r\n\r\n const scrollPosition = this.getScrollPosition();\r\n if (this.scrollPosition !== scrollPosition) {\r\n this.scrollPosition = scrollPosition;\r\n\r\n if (this.scrollPosition === \"top\" || this.scrollPosition === \"bottom\") {\r\n this.dsoScrollEnd.emit({ scrollEnd: this.scrollPosition });\r\n }\r\n }\r\n }\r\n\r\n private get slottedElements() {\r\n return Array.from(this.host.children);\r\n }\r\n\r\n private getScrollPosition(): ScrollPosition {\r\n if (!this.scrollContainerDiv) {\r\n return \"noScroll\";\r\n }\r\n\r\n const { scrollHeight, clientHeight, scrollTop } = this.scrollContainerDiv;\r\n\r\n if (scrollHeight <= clientHeight) {\r\n return \"noScroll\";\r\n }\r\n\r\n if (scrollTop === 0) {\r\n return \"top\";\r\n }\r\n\r\n if (scrollHeight - scrollTop - clientHeight < 1) {\r\n return \"bottom\";\r\n }\r\n\r\n if (scrollTop > 0) {\r\n return \"middle\";\r\n }\r\n\r\n return \"noScroll\";\r\n }\r\n\r\n componentDidLoad(): void {\r\n this.mutationObserver.observe(this.host, {\r\n characterData: true,\r\n attributes: false,\r\n childList: false,\r\n subtree: true,\r\n });\r\n\r\n if (this.shadowContainerDiv instanceof HTMLDivElement) {\r\n resizeObserver.observe(this.shadowContainerDiv);\r\n }\r\n\r\n this.slottedElements.forEach((element) => resizeObserver.observe(element));\r\n }\r\n\r\n disconnectedCallback(): void {\r\n if (this.shadowContainerDiv instanceof HTMLDivElement) {\r\n resizeObserver.unobserve(this.shadowContainerDiv);\r\n }\r\n\r\n this.mutationObserver.disconnect();\r\n\r\n this.slottedElements.forEach((element) => resizeObserver.unobserve(element));\r\n }\r\n\r\n render() {\r\n return (\r\n <div ref={(el) => (this.shadowContainerDiv = el)} class=\"dso-shadow-container\">\r\n <div\r\n ref={(el) => (this.scrollContainerDiv = el)}\r\n class={clsx(\"dso-scroll-container\", {\r\n [`dso-scroll-${this.scrollPosition}`]: this.scrollPosition !== \"noScroll\",\r\n })}\r\n onScroll={() => this._setScrollState()}\r\n >\r\n <slot></slot>\r\n </div>\r\n </div>\r\n );\r\n }\r\n}\r\n"]}
@@ -51,7 +51,7 @@ export class Selectable {
51
51
  render() {
52
52
  var _a;
53
53
  const hasInfo = !!this.host.querySelector('[slot="info"]');
54
- return (h(Fragment, { key: 'a222ec7ad8d066da17bb7464e527d12c2a76e590' }, h("div", { key: '9f2ca503f4b3d3ec2018c25d38c689a249a660b0', class: "dso-selectable-container" }, h("div", { key: 'd2e134932e6a3e44edf369429ecbe005749d9457', class: clsx("dso-selectable-input-wrapper", { "dso-keyboard-focus": this.keyboardFocus }) }, h("input", { key: '52c07cf54ff5fe937b8bb07c602ce3814d6d7cb0', type: this.type, id: this.getIdentifier(), value: this.value, name: this.name, "aria-invalid": (_a = this.invalid) === null || _a === void 0 ? void 0 : _a.toString(), "aria-describedby": hasInfo && this.infoFixed ? this.describedById : undefined, "aria-labelledBy": this.labelledById, disabled: this.disabled, required: this.required, checked: this.checked, onChange: this.handleOnChange, onBlur: () => (this.keyboardFocus = false), onKeyUp: () => (this.keyboardFocus = true), ref: (el) => (this.input = el) }), !this.labelledById ? (h("label", { htmlFor: this.getIdentifier() }, h("slot", null))) : (h("label", null, h("slot", null)))), hasInfo && !this.infoFixed && (h("dso-info-button", { key: '9d99bb8b25689d51f9ec6662eb422f617c8e639d', active: this.infoActive, onDsoToggle: (e) => (this.infoActive = e.detail.active) }))), hasInfo && (h("dso-info", { key: '85ccbf3e8e8fe3138cdfaf292d542f82eeaf04aa', id: hasInfo && this.infoFixed ? this.describedById : undefined, fixed: this.infoFixed, active: this.infoActive, onDsoClose: () => (this.infoActive = false) }, h("div", { key: 'ebe2a93e03ccb00fca6a788e6119a8c2557993f1' }, h("slot", { key: '745d4fd460fdd9d4efe63a14fe13d3b84a5cdc0c', name: "info" })))), h("slot", { key: '0dfdb5ca0d5b5569f16e1cc1ee84b416ccbc118e', name: "options" })));
54
+ return (h(Fragment, { key: '8eaf459e1b418a9c5eb61c12939aa137b1e9a9b7' }, h("div", { key: 'ecbf02645dd338d6071fb06426662d78649bd8c8', class: "dso-selectable-container" }, h("div", { key: 'c244e0254c468e30c22ec958c6be91e532d77392', class: clsx("dso-selectable-input-wrapper", { "dso-keyboard-focus": this.keyboardFocus }) }, h("input", { key: 'df920ead7e69f3e136a058cd5ab7953ecad8c707', type: this.type, id: this.getIdentifier(), value: this.value, name: this.name, "aria-invalid": (_a = this.invalid) === null || _a === void 0 ? void 0 : _a.toString(), "aria-describedby": hasInfo && this.infoFixed ? this.describedById : undefined, "aria-labelledBy": this.labelledById, disabled: this.disabled, required: this.required, checked: this.checked, onChange: this.handleOnChange, onBlur: () => (this.keyboardFocus = false), onKeyUp: () => (this.keyboardFocus = true), ref: (el) => (this.input = el) }), !this.labelledById ? (h("label", { htmlFor: this.getIdentifier() }, h("slot", null))) : (h("label", null, h("slot", null)))), hasInfo && !this.infoFixed && (h("dso-info-button", { key: 'f539a4ea7af6bb4c1412895c2af316b9014d8420', active: this.infoActive, onDsoToggle: (e) => (this.infoActive = e.detail.active) }))), hasInfo && (h("dso-info", { key: '69bde115eba8f18261c79886654defb9f0f703f6', id: hasInfo && this.infoFixed ? this.describedById : undefined, fixed: this.infoFixed, active: this.infoActive, onDsoClose: () => (this.infoActive = false) }, h("div", { key: '9d92cccb1adfd77adc579f57281dddc56a2225ba' }, h("slot", { key: '4fee8b038cb69e5321c23502eb6a5dad31c3c9ee', name: "info" })))), h("slot", { key: 'fd69188bb07390259d9ac58f328d3a7c8b42fe12', name: "options" })));
55
55
  }
56
56
  componentDidRender() {
57
57
  if (this.input && typeof this.checked === "boolean" && this.input.checked !== this.checked) {
@@ -8,7 +8,7 @@ export class Skiplink {
8
8
  return this.dsoSkiplinkClick.emit({ originalEvent: e, isModifiedEvent: isModifiedEvent(e) });
9
9
  }
10
10
  render() {
11
- return (h("a", { key: 'c4f0355b8a63e27a60e10694ace01f2f14b25768', href: `#${this.to}`, onClick: (e) => this.clickEventHandler(e) }, this.label, h("dso-icon", { key: '5e4772a2100670675a21a00dd9b1db09209c051e', icon: "chevron-right" })));
11
+ return (h("a", { key: '40c3c6d5b541f6c69b3dd1e13ab6120a13e89f08', href: `#${this.to}`, onClick: (e) => this.clickEventHandler(e) }, this.label, h("dso-icon", { key: 'fceb144a8534dfd1f53f3c63a50e723800086c9d', icon: "chevron-right" })));
12
12
  }
13
13
  static get is() { return "dso-skiplink"; }
14
14
  static get encapsulation() { return "shadow"; }
@@ -25,7 +25,7 @@ export class SlideToggle {
25
25
  this.hasVisibleLabel = this.host.querySelector("*") !== null;
26
26
  }
27
27
  render() {
28
- return (h(Fragment, null, h("button", Object.assign({ key: '47ab037e365eb57922b02241e841b8eb848836a3', id: this.identifier, role: "switch", class: "dso-slider", "aria-checked": "" + this.checked, disabled: this.disabled, onClick: (e) => this.handleSwitch(e) }, (this.accessibleLabel ? { "aria-label": this.accessibleLabel } : {}), (this.labelledbyId ? { "aria-labelledby": this.labelledbyId } : {})), h("svg", { key: '8e985e4789f4b6194dfc8f2e1f8e2b4a996c0c65', xmlns: "http://www.w3.org/2000/svg", width: "40", height: "20", viewBox: "0 0 40 20" }, h("g", { key: '6d185794241cd22e19b884a0ca8e64b2078d1679', fill: "none", "fill-rule": "evenodd" }, h("rect", { key: '1b4d88a1b241c8f380bd5aaa0fd185937387597f', width: "40", height: "20", fill: "currentColor", rx: "10" }), h("circle", { key: '9f559b1daed390bb7b623ca8a7954fe1d724578b', cy: "10", r: "8", fill: "currentColor" })))), this.hasVisibleLabel && (h("label", { key: '14e3fae9ea95616076688c7a43b212e5bc84a33f', htmlFor: this.identifier }, h("slot", { key: '9e0c9eaad8deeaa0956ab5314d28363a39c3fbf4' })))));
28
+ return (h(Fragment, null, h("button", Object.assign({ key: '5aee4d9968329a8df970a172e481d00aa89f6cfc', id: this.identifier, role: "switch", class: "dso-slider", "aria-checked": "" + this.checked, disabled: this.disabled, onClick: (e) => this.handleSwitch(e) }, (this.accessibleLabel ? { "aria-label": this.accessibleLabel } : {}), (this.labelledbyId ? { "aria-labelledby": this.labelledbyId } : {})), h("svg", { key: '470f2fef216e0b5fc3d450af8285c007a376d1f6', xmlns: "http://www.w3.org/2000/svg", width: "40", height: "20", viewBox: "0 0 40 20" }, h("g", { key: 'd013d54c54240c42ab7a2fe35cfaf8ff82fbe36d', fill: "none", "fill-rule": "evenodd" }, h("rect", { key: 'abb51b7d6bf57c19945644d93d7f7651c728ec74', width: "40", height: "20", fill: "currentColor", rx: "10" }), h("circle", { key: 'b4b6842b0a7acb77de82d79b9932dfaa3e0ae7c4', cy: "10", r: "8", fill: "currentColor" })))), this.hasVisibleLabel && (h("label", { key: '718c01776b005c142c58c3f5a96f956c8cecab5a', htmlFor: this.identifier }, h("slot", { key: '398f532a0442e039704f9fcd130eafb33a19b55f' })))));
29
29
  }
30
30
  static get is() { return "dso-slide-toggle"; }
31
31
  static get encapsulation() { return "scoped"; }
@@ -18,10 +18,10 @@ export class SurveyRating {
18
18
  "Makkelijk",
19
19
  "Heel makkelijk",
20
20
  ];
21
- return (h("dso-panel", { key: 'ee2d66c3664442953dfa287dbb234f1c2b24973d', emphasized: true, onDsoCloseClick: (e) => this.dsoClose.emit({ originalEvent: e }) }, h("h2", { key: '1762bf6ae0ce6c7603bdcf6986e233f71e7a48f1', slot: "heading" }, "Help ons met een onderzoek"), h("strong", { key: 'b0a318ab699be1e36b6044b115becc6682bd0bb3' }, "Hoe moeilijk of makkelijk was deze taak om uit te voeren"), h("form", { key: '3d66888af1d2d535f4723346029f9edbc03102a3', onSubmit: (e) => this.handleForm(e) }, h("div", { key: '66ed1a08b68aaa791ba1772bf2cf81f305745829', class: "visual-rating-labels", "aria-hidden": "true" }, h("span", { key: 'a0edb09da125715b09186138db492a516ecbe6ea' }, "Heel moeilijk"), h("span", { key: 'e0d3b6c28a88a4edeca0689cb5b8c62bf074ac48' }, "Heel makkelijk")), h("div", { key: '2730d1b4941f078c506bbda76af4843157abc22c', role: "radiogroup" }, ratings.map((rating, index) => {
21
+ return (h("dso-panel", { key: '0cf488d4cae02ff7c37d6f6953ad32d6c19c7011', emphasized: true, onDsoCloseClick: (e) => this.dsoClose.emit({ originalEvent: e }) }, h("h2", { key: '8b36e4dbf8c9017cfec97283b0c4bb11dc2ba60a', slot: "heading" }, "Help ons met een onderzoek"), h("strong", { key: '3f819218453cd2e500c7e03856754c5afbf16001' }, "Hoe moeilijk of makkelijk was deze taak om uit te voeren"), h("form", { key: 'a9b6ccfbccddcb07b94c3889cee0447f1d09118e', onSubmit: (e) => this.handleForm(e) }, h("div", { key: 'a321b5ff7c0e021ed8e3264ae7aa2f78781b674d', class: "visual-rating-labels", "aria-hidden": "true" }, h("span", { key: 'dc908a71b2fc40d017e55f7995924731caf9d1c8' }, "Heel moeilijk"), h("span", { key: '8affdcc507818d6f6a8792285aa1f59d75e8b16a' }, "Heel makkelijk")), h("div", { key: '616c3feb3eabdb93c949f1a5166d08300b8c370b', role: "radiogroup" }, ratings.map((rating, index) => {
22
22
  const ratingNumber = index + 1;
23
23
  return (h(Fragment, null, h("label", { class: `survey-rating-${ratingNumber}` }, ratingNumber, h("span", { class: "sr-only" }, rating), h("input", { type: "radio", name: "rating", value: ratingNumber, checked: ratingNumber === this.rating, onChange: (e) => this.handleChange(e) }))));
24
- })), h("button", { key: '4b5a9454231d24e64cc4e09385b2161262982de7', type: "submit", class: "dso-secondary" }, h("span", { key: '6d6e9f53abec5e1522e5a8b04eea8793c354f101' }, "Antwoord verzenden")))));
24
+ })), h("button", { key: '733c311a66455f627ec1921bb61e7bab92b53c23', type: "submit", class: "dso-secondary" }, h("span", { key: '461c2e464c7bd2d005d2511a62bafa1099412e6d' }, "Antwoord verzenden")))));
25
25
  }
26
26
  static get is() { return "dso-survey-rating"; }
27
27
  static get encapsulation() { return "shadow"; }
@@ -35,7 +35,7 @@ export class Table {
35
35
  render() {
36
36
  var _a, _b;
37
37
  const caption = (_b = (_a = this.host.querySelector(":scope > table > caption")) === null || _a === void 0 ? void 0 : _a.textContent) === null || _b === void 0 ? void 0 : _b.trim();
38
- return (h(Host, { key: '4a3e31c590ead4a74f0550073b1bbc148ae70f78' }, this.modalActive && this.placeholderHeight && (h("div", { key: '7620ca23d4f808ef8bec14678eedd55f97c3ae29', class: "dso-table-placeholder", style: { height: `${this.placeholderHeight}px` } })), this.modalActive && h("div", { key: '4eb447ab8afc2630f0e30be8311bd1105a85b83c', class: "dso-modal-overlay" }), h("div", { key: 'c1b585dde75ddc92c8922b049628dbcd8a100d34', class: { "dso-modal": this.modalActive } }, h("div", Object.assign({ key: '88ad8719f80c3c4f65ab7e6879e4abad690298cb', class: { "dso-dialog": this.modalActive, "dso-table-dialog": true }, ref: (element) => (this.focusTrapElement = element) }, (this.modalActive ? { ["aria-labelledby"]: this.labelledbyId, role: "dialog" } : {})), (this.isResponsive || !this.noModal) && (h("div", { key: '9613603a64d41db5ee116369202d4ba515b73d8f', class: "dso-table-utilities", style: this.modalActive ? { display: "none" } : undefined }, this.isResponsive && (h("div", { key: '46257884cb6e02250b1afd4b26a3a0578cd48877', class: "dso-responsive-message" }, h("span", { key: '7a3c406ad5ec4f94f4d073ff9a53edb18c02f542' }, "beweeg de tabel van links naar rechts"))), !this.noModal && (h("button", { key: 'c336fe4775b023a440177806fa54e5625f529908', type: "button", class: "dso-tertiary open-modal-button", ref: (element) => (this.buttonElement = element), onClick: () => this.openModal() }, h("span", { key: 'c8bf55ed14ce3118a6a241b5720d6f0324b7cedd', class: "sr-only" }, "tabel ", caption !== null && caption !== void 0 ? caption : "", " "), h("span", { key: 'f4e0d52eb32d641dd3f90c29d6d0f67249e1c1bc' }, "vergroten"), h("dso-icon", { key: '22f45a465920a501450cb3f379fc01172bbf75f7', icon: "external-link" }))))), this.modalActive && (h("div", { key: '4fc87b95fe133e9719f9b79e0c8da9dd90ca5107', class: "dso-header" }, h("h2", { key: '005ce442e38893e10598314a207df249e65c98c2', id: this.labelledbyId, class: { "sr-only": !caption } }, caption || "Uitvergrote tabel dialoog"), h("button", { key: 'd85326b032ac6a859f94b35ad05281c6b0dbdd2e', type: "button", class: "dso-close", onClick: () => this.closeModal() }, h("dso-icon", { key: 'e31275c0fb68c4ba60cada741193ed992b31b8e4', icon: "times" }), h("span", { key: '96ba7a49baaa9d88963c92e7265bc3d4f2d5236f', class: "sr-only" }, "Sluiten")))), h("div", { key: '2c6aac7907786c603247f02b71df2ef85e63d2c6', class: { "dso-body": this.modalActive, "dso-table-body": true } }, h("slot", { key: '11c944f3e16fc5481f0e29c68d0316df41bcd038' }))))));
38
+ return (h(Host, { key: '799047946f16a8725591dddd4ff0604dd2387835' }, this.modalActive && this.placeholderHeight && (h("div", { key: 'b8c6bca3012e27a56f312c759116362f83a73a05', class: "dso-table-placeholder", style: { height: `${this.placeholderHeight}px` } })), this.modalActive && h("div", { key: '95191abbb4021a485aa2d85dc16528f77be6b389', class: "dso-modal-overlay" }), h("div", { key: '1a1bd5f370343044660676562b68a7e001838b0a', class: { "dso-modal": this.modalActive } }, h("div", Object.assign({ key: '895ecea73b81b7734a5740a38393986e05bf0336', class: { "dso-dialog": this.modalActive, "dso-table-dialog": true }, ref: (element) => (this.focusTrapElement = element) }, (this.modalActive ? { ["aria-labelledby"]: this.labelledbyId, role: "dialog" } : {})), (this.isResponsive || !this.noModal) && (h("div", { key: 'cef13e59f5639ddce0643af4549489f46e68aaed', class: "dso-table-utilities", style: this.modalActive ? { display: "none" } : undefined }, this.isResponsive && (h("div", { key: '53f31dec4a2b517d7c1cc3d70267367c4776b5dd', class: "dso-responsive-message" }, h("span", { key: 'aff559990bc306381e35d0f10e8af5058fe346ff' }, "beweeg de tabel van links naar rechts"))), !this.noModal && (h("button", { key: 'b3dcee1e998d70efcf0849b742d18e0e40fabc4e', type: "button", class: "dso-tertiary open-modal-button", ref: (element) => (this.buttonElement = element), onClick: () => this.openModal() }, h("span", { key: '3e72a4e6605a874eb4487cc18c628d5bc771562b', class: "sr-only" }, "tabel ", caption !== null && caption !== void 0 ? caption : "", " "), h("span", { key: '17536f51ff5f561d94adf2f366ae5bef6f4a2192' }, "vergroten"), h("dso-icon", { key: '80742bbcdfd1ea381f5e88557f9f2515dd105f4d', icon: "external-link" }))))), this.modalActive && (h("div", { key: 'd9c6b4ff790c2cd781056ae88605d98635d13c1d', class: "dso-header" }, h("h2", { key: '66fe55917fe1e6b76a2e9239b12cf445cf38909d', id: this.labelledbyId, class: { "sr-only": !caption } }, caption || "Uitvergrote tabel dialoog"), h("button", { key: '236ff7cae30219425ec410795f7b5bd5f07409ae', type: "button", class: "dso-close", onClick: () => this.closeModal() }, h("dso-icon", { key: '93a325c4368207a453e9bb07c1fd24fb98f0e8dd', icon: "times" }), h("span", { key: 'a58215c1e577ee5e987d9227d986bf7e1edd568e', class: "sr-only" }, "Sluiten")))), h("div", { key: '6964623cc9365f8349e6b5ba7802b379d625097c', class: { "dso-body": this.modalActive, "dso-table-body": true } }, h("slot", { key: '86c401b073e39aa151799b9791bceac8e1335fb1' }))))));
39
39
  }
40
40
  openModal() {
41
41
  this.placeholderHeight = this.host.clientHeight;
@@ -64,7 +64,7 @@ export class Tabs {
64
64
  (_a = this.mutationObserver) === null || _a === void 0 ? void 0 : _a.disconnect();
65
65
  }
66
66
  render() {
67
- return (h(Host, { key: 'eda4f3cabd4f4a373ebf5e5b2fce9c5a336f4680' }, h("div", { key: '445a0b6a745a1f45eca44ca59def6f4557904748', class: "tabs", role: "tablist", onKeyUp: this.keyUpHandler }, h("slot", { key: 'd344d2c68cc0bd6d0abbea591a7ffa22b17dbdf7' })), h("div", { key: 'c17a1774b3cf81c30e07c0c8446f05d8a6e86b95', role: "tabpanel", tabindex: "0" }, h("slot", { key: 'c32d940c2e5fe01b67919d7253bb5d2666146f6f', name: "panel" }))));
67
+ return (h(Host, { key: '349c801fdadbfd077ca6cc68f5d1f48dea0d4ff4' }, h("div", { key: '1413312c78b126135b10295690aa957d99304acf', class: "tabs", role: "tablist", onKeyUp: this.keyUpHandler }, h("slot", { key: '3b4cbf35c3d29ba1f6158853d755335dd8a05b5e' })), h("div", { key: '95e97aa712722fc019bbf1578dfb1c6224ecebb5', role: "tabpanel", tabindex: "0" }, h("slot", { key: '305195dcc64770963bb740d64c5cc0d08f0c16bc', name: "panel" }))));
68
68
  }
69
69
  static get is() { return "dso-tabs"; }
70
70
  static get encapsulation() { return "shadow"; }
@@ -44,7 +44,7 @@ export class Toggletip {
44
44
  };
45
45
  }
46
46
  render() {
47
- return (h(Fragment, null, h("dso-info-button", { key: 'c6b7ee824a9ad3417f394467177fa3b07a59a710', "aria-describedby": "toggle", onClick: this.click, label: this.label, active: this.active, secondary: this.secondary, ref: (element) => (this.infoButton = element) }), h("dso-tooltip", { key: 'a82167f713fc51dbafcad6758527ce7c36e28552', stateless: true, descriptive: true, id: "toggle", strategy: "absolute", active: this.active, position: this.position, small: this.small }, h("slot", { key: '5f4548c244f97b6278b7642bb927d3133dab872c' }))));
47
+ return (h(Fragment, null, h("dso-info-button", { key: '5ade4ddc0b1b9dd981b064491444585f78ff6341', "aria-describedby": "toggle", onClick: this.click, label: this.label, active: this.active, secondary: this.secondary, ref: (element) => (this.infoButton = element) }), h("dso-tooltip", { key: 'cce7b117c2cb73355311768297789ec2e6bdd08a', stateless: true, descriptive: true, id: "toggle", strategy: "absolute", active: this.active, position: this.position, small: this.small }, h("slot", { key: 'b1ea6bb7d7e7fd862fb3d628649f79cf18b79a9d' }))));
48
48
  }
49
49
  static get is() { return "dso-toggletip"; }
50
50
  static get encapsulation() { return "shadow"; }
@@ -189,7 +189,7 @@ export class Tooltip {
189
189
  }
190
190
  }
191
191
  render() {
192
- return (h(Host, { key: '0dae667b622fac9d6e45eead0e5ffd0b3c4fc64a', class: { hidden: this.hidden }, role: "tooltip", onClick: this.listenClick }, h("div", { key: '8b80667d0734bfd9ea91f698ddf31493f7c27e49', class: clsx("tooltip", { in: this.active }) }, !this.noArrow && h("div", { key: '7124f75b7ba640b0a5e63a15917eddf0ade65853', "data-popper-arrow": true, class: "tooltip-arrow" }), h("div", { key: '962322da0404132b4b4ef4046ca70b1b25d11f1f', "aria-hidden": !this.descriptive || undefined, class: clsx("tooltip-inner", { "dso-small": this.small }) }, h("slot", { key: '1fec252ad2f238dc8b8969bc4aa2d237b5aae943' })))));
192
+ return (h(Host, { key: '937cf3e393747c90908dd40d9f1cd4004972ee14', class: { hidden: this.hidden }, role: "tooltip", onClick: this.listenClick }, h("div", { key: 'ec8d45dfe98721323a129f885c17458c2fce1755', class: clsx("tooltip", { in: this.active }) }, !this.noArrow && h("div", { key: 'f41fcdefbcbfbfa6898ae0ac380f40bac2d20fef', "data-popper-arrow": true, class: "tooltip-arrow" }), h("div", { key: '9dc5919c76eb4bae36267cb884a8e07ea9b795b8', "aria-hidden": !this.descriptive || undefined, class: clsx("tooltip-inner", { "dso-small": this.small }) }, h("slot", { key: '3c999ec1a312662dbd287486eb54114638499db9' })))));
193
193
  }
194
194
  activatePopper() {
195
195
  var _a;
@@ -174,7 +174,7 @@ export class TreeView {
174
174
  }
175
175
  render() {
176
176
  var _a;
177
- return (h("div", { key: 'f6f6832d0613dcb1eb30f1170cc848e5dd5a47f3', id: "tree", class: "dso-tree", onKeyDown: (e) => this.keyDownListener(e), ref: (element) => (this.tree = element) }, h("ul", { key: 'aaea2cfc733ff714e907758e41ea31fa2f460b68', role: "tree", "aria-label": "Objectenboom" }, (_a = this.collection) === null || _a === void 0 ? void 0 : _a.map((item, index) => (h(DsoTreeItem, { owner: this, ancestors: [], item: item, index: index, level: 1, setSize: this.collection.length }))))));
177
+ return (h("div", { key: 'fda90d8a03ae58672b99f314ec5f97c1ac9dab19', id: "tree", class: "dso-tree", onKeyDown: (e) => this.keyDownListener(e), ref: (element) => (this.tree = element) }, h("ul", { key: '02c4d4665e8d3fdb2618e6e730ad899776149501', role: "tree", "aria-label": "Objectenboom" }, (_a = this.collection) === null || _a === void 0 ? void 0 : _a.map((item, index) => (h(DsoTreeItem, { owner: this, ancestors: [], item: item, index: index, level: 1, setSize: this.collection.length }))))));
178
178
  }
179
179
  static get is() { return "dso-tree-view"; }
180
180
  static get encapsulation() { return "shadow"; }
@@ -193,8 +193,8 @@ export class ViewerGrid {
193
193
  }
194
194
  render() {
195
195
  const tabLabels = this.mode === "vdk" ? viewerGridVdkTabs : viewerGridVrkTabs;
196
- return (h(Fragment, null, this.tabView && (h("nav", { key: 'd8a89e6fd85a9ec4adea0b52670c1cba714350ef', class: "dso-navbar" }, h("ul", { key: '34b3436df21fd14c6403b33b0b728415c7ee2c3f', class: "dso-nav dso-nav-sub" }, tabLabels.map((tab) => (h("li", { key: tab, class: clsx({ "dso-active": this.activeTab === tab }) }, h("button", { type: "button", class: "dso-tertiary", onClick: () => this.switchActiveTab(tab) }, viewerGridTabLabelMap[tab]))))))), (!this.tabView || (this.tabView && (this.activeTab === "main" || this.activeTab === "search"))) && (h(MainPanel, { key: 'a5166e11ec537da288535ef1f78027b6942288bc', mode: this.mode, tabView: this.tabView, mainSize: this.mainSize, documentPanelOpen: this.documentPanelOpen, mainPanelExpanded: this.mainPanelExpanded, mainPanelHidden: this.mainPanelHidden, shrinkMain: this.emitShrinkMain, expandMain: this.emitExpandMain, toggleMainPanel: this.toggleMainPanel, dsoMainSizeChangeAnimationEnd: this.dsoMainSizeChangeAnimationEnd })), (!this.tabView ||
197
- (this.tabView && ((this.activeTab === "main" && this.mode === "vrk") || this.activeTab === "search"))) && (h(Filterpanel, { key: '994efb6648cd215a4ff8e0fe7fffe16b65a40775', title: this.filterpanelTitle, mode: this.mode, ref: (element) => (this.filterpanel = element), onApply: this.handleFilterpanelApply, onCancel: this.handleFilterpanelCancel, dsoCloseFilterpanel: (e) => this.dsoCloseFilterpanel.emit({ originalEvent: e }) })), (!this.tabView || (this.tabView && this.activeTab === "map")) && (h("div", { key: 'b021cfb6be8c3a16453eb9927f6dac93736b0d2b', class: "map", ref: (element) => (this.mapElement = element) }, h("slot", { key: '85a6dbcd00d82a8c6eb78e55755bae26aed76076', name: "map" }))), ((!this.tabView && this.documentPanelOpen) || (this.tabView && this.activeTab === "document")) && (h(DocumentPanel, { key: '163277775c959cf0f83ed6bf8bd79ff2a81d3806', tabView: this.tabView, panelSize: this.documentPanelSize, shrinkDocumentPanel: this.shrinkDocumentPanel, expandDocumentPanel: this.expandDocumentPanel, dsoDocumentPanelSizeChangeAnimationEnd: this.dsoDocumentPanelSizeChangeAnimationEnd })), h(Overlay, { key: '2577736644258d037e41fef06ec19be4d9db92fa', ref: (element) => (this.overlay = element), dsoCloseOverlay: (e) => this.dsoCloseOverlay.emit({ originalEvent: e }) })));
196
+ return (h(Fragment, null, this.tabView && (h("nav", { key: '67c2e60734775ecdbf3139555fb6915013b1961e', class: "dso-navbar" }, h("ul", { key: '4e50ab7896a2ffdeb8fa9a279e1a2d0182a81499', class: "dso-nav dso-nav-sub" }, tabLabels.map((tab) => (h("li", { key: tab, class: clsx({ "dso-active": this.activeTab === tab }) }, h("button", { type: "button", class: "dso-tertiary", onClick: () => this.switchActiveTab(tab) }, viewerGridTabLabelMap[tab]))))))), (!this.tabView || (this.tabView && (this.activeTab === "main" || this.activeTab === "search"))) && (h(MainPanel, { key: '2ed0b4973958f49af4878f8b47837204645b6648', mode: this.mode, tabView: this.tabView, mainSize: this.mainSize, documentPanelOpen: this.documentPanelOpen, mainPanelExpanded: this.mainPanelExpanded, mainPanelHidden: this.mainPanelHidden, shrinkMain: this.emitShrinkMain, expandMain: this.emitExpandMain, toggleMainPanel: this.toggleMainPanel, dsoMainSizeChangeAnimationEnd: this.dsoMainSizeChangeAnimationEnd })), (!this.tabView ||
197
+ (this.tabView && ((this.activeTab === "main" && this.mode === "vrk") || this.activeTab === "search"))) && (h(Filterpanel, { key: '24f3be6f1165b6d88b0978c05091636e2fbcedaf', title: this.filterpanelTitle, mode: this.mode, ref: (element) => (this.filterpanel = element), onApply: this.handleFilterpanelApply, onCancel: this.handleFilterpanelCancel, dsoCloseFilterpanel: (e) => this.dsoCloseFilterpanel.emit({ originalEvent: e }) })), (!this.tabView || (this.tabView && this.activeTab === "map")) && (h("div", { key: 'b846fb472829718e3e092817f485a9186e4f0c30', class: "map", ref: (element) => (this.mapElement = element) }, h("slot", { key: '158e2d376aeb183114e90965ebff21ed71b95184', name: "map" }))), ((!this.tabView && this.documentPanelOpen) || (this.tabView && this.activeTab === "document")) && (h(DocumentPanel, { key: '58f4e9ab3208a6d1144877505965ea40ebfe8a75', tabView: this.tabView, panelSize: this.documentPanelSize, shrinkDocumentPanel: this.shrinkDocumentPanel, expandDocumentPanel: this.expandDocumentPanel, dsoDocumentPanelSizeChangeAnimationEnd: this.dsoDocumentPanelSizeChangeAnimationEnd })), h(Overlay, { key: '1d22628a694b5dfc081ccf865eb93f4bab3325b7', ref: (element) => (this.overlay = element), dsoCloseOverlay: (e) => this.dsoCloseOverlay.emit({ originalEvent: e }) })));
198
198
  }
199
199
  static get is() { return "dso-viewer-grid"; }
200
200
  static get encapsulation() { return "shadow"; }
@@ -0,0 +1,11 @@
1
+ import { h, Fragment } from '@stencil/core/internal/client';
2
+
3
+ const AnnotationListRenvooiValues = ({ values }) => {
4
+ return (h(Fragment, null, values === null || values === void 0 ? void 0 : values.map((v, i) => (h(Fragment, null,
5
+ i > 0 && ", ",
6
+ h("dso-renvooi", { value: v }))))));
7
+ };
8
+
9
+ export { AnnotationListRenvooiValues as A };
10
+
11
+ //# sourceMappingURL=annotation-list-renvooi-values.js.map
@@ -0,0 +1 @@
1
+ {"file":"annotation-list-renvooi-values.js","mappings":";;MAOa,2BAA2B,GAAqD,CAAC,EAAE,MAAM,EAAE;IACtG,QACE,kBACG,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,MAChB;QACG,CAAC,GAAG,CAAC,IAAI,IAAI;QACd,mBAAa,KAAK,EAAE,CAAC,GAAI,CACxB,CACJ,CAAC,CACD,EACH;AACJ;;;;","names":[],"sources":["src/components/annotation/annotation-list-renvooi-values.tsx"],"sourcesContent":["import { FunctionalComponent, Fragment, h } from \"@stencil/core\";\r\nimport { RenvooiValue } from \"../renvooi/renvooi.interfaces\";\r\n\r\ninterface AnnotationListRenvooiValues {\r\n values: RenvooiValue[] | undefined;\r\n}\r\n\r\nexport const AnnotationListRenvooiValues: FunctionalComponent<AnnotationListRenvooiValues> = ({ values }) => {\r\n return (\r\n <>\r\n {values?.map((v, i) => (\r\n <>\r\n {i > 0 && \", \"}\r\n <dso-renvooi value={v} />\r\n </>\r\n ))}\r\n </>\r\n );\r\n};\r\n"],"version":3}
@@ -1,6 +1,7 @@
1
1
  import { proxyCustomElement, HTMLElement, createEvent, h, Fragment } from '@stencil/core/internal/client';
2
2
  import { A as AnnotationBody } from './annotation-body.js';
3
3
  import { w as watcher, A as AnnotationSymbolSlot, a as AnnotationGewijzigdeLocatie } from './annotation-symbol-slot.js';
4
+ import { A as AnnotationListRenvooiValues } from './annotation-list-renvooi-values.js';
4
5
  import { d as defineCustomElement$6 } from './icon.js';
5
6
  import { d as defineCustomElement$5 } from './label.js';
6
7
  import { d as defineCustomElement$4 } from './renvooi.js';
@@ -26,7 +27,7 @@ const AnnotationActiviteit = /*@__PURE__*/ proxyCustomElement(class AnnotationAc
26
27
  }
27
28
  render() {
28
29
  const hasSymbool = this.watcher.hasSymbool();
29
- return (h(AnnotationBody, { key: 'afe2613ad46948be1043902330c9b18530aeecfc', symbol: hasSymbool ? h(AnnotationSymbolSlot, null) : undefined, active: this.active, dsoActiveChange: this.dsoActiveChange, title: h("dso-renvooi", { value: this.naam }), data: h(Fragment, null, h("span", { class: "content" }, this.regelKwalificatie && (h(Fragment, null, h("dso-renvooi", { value: this.regelKwalificatie }), " ")), this.regelKwalificatieVoorzetsel && `${this.regelKwalificatieVoorzetsel}: `, h("dso-renvooi", { value: this.locatieNoemers })), this.gewijzigdeLocatie && h(AnnotationGewijzigdeLocatie, null)) }));
30
+ return (h(AnnotationBody, { key: '004c59bc3cf2700fecabc0df774b820de13d9e06', symbol: hasSymbool ? h(AnnotationSymbolSlot, null) : undefined, active: this.active, dsoActiveChange: this.dsoActiveChange, title: h("dso-renvooi", { value: this.naam }), data: h(Fragment, null, h("span", { class: "content" }, this.regelKwalificatie && (h(Fragment, null, h("dso-renvooi", { value: this.regelKwalificatie }), " ")), this.regelKwalificatieVoorzetsel && `${this.regelKwalificatieVoorzetsel}: `, h(AnnotationListRenvooiValues, { values: this.locatieNoemers })), this.gewijzigdeLocatie && h(AnnotationGewijzigdeLocatie, null)) }));
30
31
  }
31
32
  get host() { return this; }
32
33
  static get style() { return DsoAnnotationActiviteitStyle0; }
@@ -1 +1 @@
1
- {"file":"dso-annotation-activiteit.js","mappings":";;;;;;;;;AAAA,MAAM,aAAa,GAAG,usKAAusK,CAAC;AAC9tK,sCAAe,aAAa;;MCef,oBAAoB;IALjC;;;;;QAyDU,YAAO,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;KAoCtC;IAlCC,iBAAiB;QACf,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;KACtB;IAED,oBAAoB;QAClB,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;KACxB;IAED,MAAM;QACJ,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC;QAE7C,QACE,EAAC,cAAc,qDACb,MAAM,EAAE,UAAU,GAAG,EAAC,oBAAoB,OAAG,GAAG,SAAS,EACzD,MAAM,EAAE,IAAI,CAAC,MAAM,EACnB,eAAe,EAAE,IAAI,CAAC,eAAe,EACrC,KAAK,EAAE,mBAAa,KAAK,EAAE,IAAI,CAAC,IAAI,GAAI,EACxC,IAAI,EACF,kBACE,YAAM,KAAK,EAAC,SAAS,IAClB,IAAI,CAAC,iBAAiB,KACrB,kBACE,mBAAa,KAAK,EAAE,IAAI,CAAC,iBAAiB,GAAI,EAAC,GAAG,CACjD,CACJ,EACA,IAAI,CAAC,2BAA2B,IAAI,GAAG,IAAI,CAAC,2BAA2B,IAAI,EAC5E,mBAAa,KAAK,EAAE,IAAI,CAAC,cAAc,GAAI,CACtC,EACN,IAAI,CAAC,iBAAiB,IAAI,EAAC,2BAA2B,OAAG,CACzD,GAEL,EACF;KACH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","names":[],"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 word-break: break-word;\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"],"version":3}
1
+ {"file":"dso-annotation-activiteit.js","mappings":";;;;;;;;;;AAAA,MAAM,aAAa,GAAG,usKAAusK,CAAC;AAC9tK,sCAAe,aAAa;;MCgBf,oBAAoB;IALjC;;;;;QAyDU,YAAO,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;KAoCtC;IAlCC,iBAAiB;QACf,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;KACtB;IAED,oBAAoB;QAClB,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;KACxB;IAED,MAAM;QACJ,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC;QAE7C,QACE,EAAC,cAAc,qDACb,MAAM,EAAE,UAAU,GAAG,EAAC,oBAAoB,OAAG,GAAG,SAAS,EACzD,MAAM,EAAE,IAAI,CAAC,MAAM,EACnB,eAAe,EAAE,IAAI,CAAC,eAAe,EACrC,KAAK,EAAE,mBAAa,KAAK,EAAE,IAAI,CAAC,IAAI,GAAI,EACxC,IAAI,EACF,kBACE,YAAM,KAAK,EAAC,SAAS,IAClB,IAAI,CAAC,iBAAiB,KACrB,kBACE,mBAAa,KAAK,EAAE,IAAI,CAAC,iBAAiB,GAAI,EAAC,GAAG,CACjD,CACJ,EACA,IAAI,CAAC,2BAA2B,IAAI,GAAG,IAAI,CAAC,2BAA2B,IAAI,EAC5E,EAAC,2BAA2B,IAAC,MAAM,EAAE,IAAI,CAAC,cAAc,GAAI,CACvD,EACN,IAAI,CAAC,iBAAiB,IAAI,EAAC,2BAA2B,OAAG,CACzD,GAEL,EACF;KACH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","names":[],"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 word-break: break-word;\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\nimport { AnnotationListRenvooiValues } from \"../annotation-list-renvooi-values\";\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 <AnnotationListRenvooiValues values={this.locatieNoemers} />\r\n </span>\r\n {this.gewijzigdeLocatie && <AnnotationGewijzigdeLocatie />}\r\n </>\r\n }\r\n />\r\n );\r\n }\r\n}\r\n"],"version":3}
@@ -1,6 +1,7 @@
1
1
  import { proxyCustomElement, HTMLElement, createEvent, h, Fragment } from '@stencil/core/internal/client';
2
2
  import { A as AnnotationBody } from './annotation-body.js';
3
3
  import { w as watcher, A as AnnotationSymbolSlot, a as AnnotationGewijzigdeLocatie } from './annotation-symbol-slot.js';
4
+ import { A as AnnotationListRenvooiValues } from './annotation-list-renvooi-values.js';
4
5
  import { d as defineCustomElement$6 } from './icon.js';
5
6
  import { d as defineCustomElement$5 } from './label.js';
6
7
  import { d as defineCustomElement$4 } from './renvooi.js';
@@ -26,7 +27,7 @@ const AnnotationOmgevingsnormwaarde = /*@__PURE__*/ proxyCustomElement(class Ann
26
27
  }
27
28
  render() {
28
29
  const hasSymbool = this.watcher.hasSymbool();
29
- return (h(AnnotationBody, { key: '5e2947e6f85b9c02cdf87099f59a304224e96b81', symbol: hasSymbool ? h(AnnotationSymbolSlot, null) : undefined, active: this.active || false, dsoActiveChange: this.dsoActiveChange, title: h(Fragment, null, h("dso-renvooi", { value: this.naam }), this.eenheid && (h(Fragment, null, " ", "(in ", h("dso-renvooi", { value: this.eenheid }), ")"))), data: h(Fragment, null, h("span", { class: "content" }, this.toelichting && h(Fragment, null, this.toelichting), this.waardes && this.waardes.length > 0 && (h(Fragment, null, ": ", h("dso-renvooi", { value: this.waardes })))), this.gewijzigdeLocatie && h(AnnotationGewijzigdeLocatie, null)) }));
30
+ return (h(AnnotationBody, { key: '7b118d1c32131742b38869b59683942e1d6f78e9', symbol: hasSymbool ? h(AnnotationSymbolSlot, null) : undefined, active: this.active || false, dsoActiveChange: this.dsoActiveChange, title: h(Fragment, null, h("dso-renvooi", { value: this.naam }), this.eenheid && (h(Fragment, null, " ", "(in ", h("dso-renvooi", { value: this.eenheid }), ")"))), data: h(Fragment, null, h("span", { class: "content" }, this.toelichting && h(Fragment, null, this.toelichting), this.waardes && this.waardes.length > 0 && (h(Fragment, null, ": ", h(AnnotationListRenvooiValues, { values: this.waardes })))), this.gewijzigdeLocatie && h(AnnotationGewijzigdeLocatie, null)) }));
30
31
  }
31
32
  get host() { return this; }
32
33
  static get style() { return DsoAnnotationOmgevingsnormwaardeStyle0; }
@@ -1 +1 @@
1
- {"file":"dso-annotation-omgevingsnormwaarde.js","mappings":";;;;;;;;;AAAA,MAAM,aAAa,GAAG,usKAAusK,CAAC;AAC9tK,+CAAe,aAAa;;MCkBf,6BAA6B;IAL1C;;;;;QAyDU,YAAO,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;KA6CtC;IA3CC,iBAAiB;QACf,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;KACtB;IAED,oBAAoB;QAClB,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;KACxB;IAED,MAAM;QACJ,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC;QAE7C,QACE,EAAC,cAAc,qDACb,MAAM,EAAE,UAAU,GAAG,EAAC,oBAAoB,OAAG,GAAG,SAAS,EACzD,MAAM,EAAE,IAAI,CAAC,MAAM,IAAI,KAAK,EAC5B,eAAe,EAAE,IAAI,CAAC,eAAe,EACrC,KAAK,EACH,kBACE,mBAAa,KAAK,EAAE,IAAI,CAAC,IAAI,GAAI,EAChC,IAAI,CAAC,OAAO,KACX,kBACG,GAAG,UACA,mBAAa,KAAK,EAAE,IAAI,CAAC,OAAO,GAAI,MACvC,CACJ,CACA,EAEL,IAAI,EACF,kBACE,YAAM,KAAK,EAAC,SAAS,IAClB,IAAI,CAAC,WAAW,IAAI,kBAAG,IAAI,CAAC,WAAW,CAAI,EAC3C,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,KACtC,wBACI,mBAAa,KAAK,EAAE,IAAI,CAAC,OAAO,GAAI,CACrC,CACJ,CACI,EACN,IAAI,CAAC,iBAAiB,IAAI,EAAC,2BAA2B,OAAG,CACzD,GAEL,EACF;KACH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","names":[],"sources":["src/components/annotation/annotation.scss?tag=dso-annotation-omgevingsnormwaarde&encapsulation=shadow","src/components/annotation/annotation-omgevingsnormwaarde/annotation-omgevingsnormwaarde.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 word-break: break-word;\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, EventEmitter, Fragment, Element } from \"@stencil/core\";\r\n\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 * Dit component wordt voor een Omgevingsnorm en Omgevingswaarde gebruikt.\r\n *\r\n * @slot symbool - Een optionele afbeelding die de annotatie symboliseert.\r\n */\r\n@Component({\r\n tag: \"dso-annotation-omgevingsnormwaarde\",\r\n styleUrl: \"../annotation.scss\",\r\n shadow: true,\r\n})\r\nexport class AnnotationOmgevingsnormwaarde 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 omgevingsnorm of omgevingswaarde.\r\n */\r\n @Prop()\r\n naam?: RenvooiValue | string;\r\n\r\n /**\r\n * De toelichting van de waardes.\r\n */\r\n @Prop()\r\n toelichting?: string;\r\n\r\n /**\r\n * De waardes van de omgevingsnorm of omgevingswaarde.\r\n */\r\n @Prop()\r\n waardes?: Array<RenvooiValue | string>;\r\n\r\n /**\r\n * De eenheid van de omgevingsnorm of omgevingswaarde.\r\n */\r\n @Prop()\r\n eenheid?: RenvooiValue | string;\r\n\r\n @Element()\r\n private host!: HTMLDsoAnnotationOmgevingsnormwaardeElement;\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 || false}\r\n dsoActiveChange={this.dsoActiveChange}\r\n title={\r\n <>\r\n <dso-renvooi value={this.naam} />\r\n {this.eenheid && (\r\n <>\r\n {\" \"}\r\n (in <dso-renvooi value={this.eenheid} />)\r\n </>\r\n )}\r\n </>\r\n }\r\n data={\r\n <>\r\n <span class=\"content\">\r\n {this.toelichting && <>{this.toelichting}</>}\r\n {this.waardes && this.waardes.length > 0 && (\r\n <>\r\n : <dso-renvooi value={this.waardes} />\r\n </>\r\n )}\r\n </span>\r\n {this.gewijzigdeLocatie && <AnnotationGewijzigdeLocatie />}\r\n </>\r\n }\r\n />\r\n );\r\n }\r\n}\r\n"],"version":3}
1
+ {"file":"dso-annotation-omgevingsnormwaarde.js","mappings":";;;;;;;;;;AAAA,MAAM,aAAa,GAAG,usKAAusK,CAAC;AAC9tK,+CAAe,aAAa;;MCmBf,6BAA6B;IAL1C;;;;;QAyDU,YAAO,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;KA6CtC;IA3CC,iBAAiB;QACf,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;KACtB;IAED,oBAAoB;QAClB,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;KACxB;IAED,MAAM;QACJ,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC;QAE7C,QACE,EAAC,cAAc,qDACb,MAAM,EAAE,UAAU,GAAG,EAAC,oBAAoB,OAAG,GAAG,SAAS,EACzD,MAAM,EAAE,IAAI,CAAC,MAAM,IAAI,KAAK,EAC5B,eAAe,EAAE,IAAI,CAAC,eAAe,EACrC,KAAK,EACH,kBACE,mBAAa,KAAK,EAAE,IAAI,CAAC,IAAI,GAAI,EAChC,IAAI,CAAC,OAAO,KACX,kBACG,GAAG,UACA,mBAAa,KAAK,EAAE,IAAI,CAAC,OAAO,GAAI,MACvC,CACJ,CACA,EAEL,IAAI,EACF,kBACE,YAAM,KAAK,EAAC,SAAS,IAClB,IAAI,CAAC,WAAW,IAAI,kBAAG,IAAI,CAAC,WAAW,CAAI,EAC3C,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,KACtC,wBACI,EAAC,2BAA2B,IAAC,MAAM,EAAE,IAAI,CAAC,OAAO,GAAI,CACtD,CACJ,CACI,EACN,IAAI,CAAC,iBAAiB,IAAI,EAAC,2BAA2B,OAAG,CACzD,GAEL,EACF;KACH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","names":[],"sources":["src/components/annotation/annotation.scss?tag=dso-annotation-omgevingsnormwaarde&encapsulation=shadow","src/components/annotation/annotation-omgevingsnormwaarde/annotation-omgevingsnormwaarde.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 word-break: break-word;\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, EventEmitter, Fragment, Element } from \"@stencil/core\";\r\n\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\nimport { AnnotationListRenvooiValues } from \"../annotation-list-renvooi-values\";\r\n\r\n/**\r\n * Dit component wordt voor een Omgevingsnorm en Omgevingswaarde gebruikt.\r\n *\r\n * @slot symbool - Een optionele afbeelding die de annotatie symboliseert.\r\n */\r\n@Component({\r\n tag: \"dso-annotation-omgevingsnormwaarde\",\r\n styleUrl: \"../annotation.scss\",\r\n shadow: true,\r\n})\r\nexport class AnnotationOmgevingsnormwaarde 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 omgevingsnorm of omgevingswaarde.\r\n */\r\n @Prop()\r\n naam?: RenvooiValue | string;\r\n\r\n /**\r\n * De toelichting van de waardes.\r\n */\r\n @Prop()\r\n toelichting?: string;\r\n\r\n /**\r\n * De waardes van de omgevingsnorm of omgevingswaarde.\r\n */\r\n @Prop()\r\n waardes?: Array<RenvooiValue | string>;\r\n\r\n /**\r\n * De eenheid van de omgevingsnorm of omgevingswaarde.\r\n */\r\n @Prop()\r\n eenheid?: RenvooiValue | string;\r\n\r\n @Element()\r\n private host!: HTMLDsoAnnotationOmgevingsnormwaardeElement;\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 || false}\r\n dsoActiveChange={this.dsoActiveChange}\r\n title={\r\n <>\r\n <dso-renvooi value={this.naam} />\r\n {this.eenheid && (\r\n <>\r\n {\" \"}\r\n (in <dso-renvooi value={this.eenheid} />)\r\n </>\r\n )}\r\n </>\r\n }\r\n data={\r\n <>\r\n <span class=\"content\">\r\n {this.toelichting && <>{this.toelichting}</>}\r\n {this.waardes && this.waardes.length > 0 && (\r\n <>\r\n : <AnnotationListRenvooiValues values={this.waardes} />\r\n </>\r\n )}\r\n </span>\r\n {this.gewijzigdeLocatie && <AnnotationGewijzigdeLocatie />}\r\n </>\r\n }\r\n />\r\n );\r\n }\r\n}\r\n"],"version":3}
@@ -31,12 +31,28 @@ const translations = {
31
31
  },
32
32
  };
33
33
 
34
- const autosuggestCss = ".sc-dso-autosuggest-h{display:block;position:relative}.listbox-container.sc-dso-autosuggest{inset-inline:0;inset-block-start:100%;block-size:auto;max-block-size:var(--max-block-size);min-block-size:50px;overflow-y:auto;position:absolute;z-index:200}ul.sc-dso-autosuggest,.autosuggest-progress-box.sc-dso-autosuggest{background-clip:padding-box;background-color:#fff;border:1px solid rgba(0, 0, 0, 0.15);border-radius:4px;box-shadow:0 6px 12px rgba(0, 0, 0, 0.175);list-style-type:none;margin-block:0}.autosuggest-progress-box.sc-dso-autosuggest{padding-block:12px;padding-inline:8px}ul.sc-dso-autosuggest{padding-block:8px;padding-inline:0}ul.sc-dso-autosuggest li.sc-dso-autosuggest{padding-block:4px;padding-inline:16px}ul.sc-dso-autosuggest li.sc-dso-autosuggest .suggestion-row.sc-dso-autosuggest{display:flex;justify-content:space-between}li[aria-selected=true].sc-dso-autosuggest{cursor:pointer;background-color:#39870c}li[aria-selected=true].sc-dso-autosuggest,li[aria-selected=true].sc-dso-autosuggest .type.sc-dso-autosuggest,li[aria-selected=true].sc-dso-autosuggest .extra.sc-dso-autosuggest{color:#fff}mark.sc-dso-autosuggest{font-weight:700;background-color:inherit;color:inherit;padding:0}.type.sc-dso-autosuggest,.extra.sc-dso-autosuggest{color:#666}.type.sc-dso-autosuggest{text-align:end}.extra.sc-dso-autosuggest{font-size:14px;line-height:21px}.extra.sc-dso-autosuggest:not(:first-child){text-align:end}";
34
+ const autosuggestCss = ".sc-dso-autosuggest-h{display:block;position:relative}.listbox-container.sc-dso-autosuggest{inset-inline:0;inset-block-start:100%;block-size:auto;max-block-size:var(--max-block-size);min-block-size:50px;overflow-y:auto;position:absolute;z-index:200}.listbox.sc-dso-autosuggest,.autosuggest-progress-box.sc-dso-autosuggest{background-clip:padding-box;background-color:#fff;border:1px solid rgba(0, 0, 0, 0.15);border-radius:4px;box-shadow:0 6px 12px rgba(0, 0, 0, 0.175);list-style-type:none;margin-block:0}.autosuggest-progress-box.sc-dso-autosuggest{padding-block:12px;padding-inline:8px}.listbox.sc-dso-autosuggest{padding-block:8px;padding-inline:0}.listbox.sc-dso-autosuggest .group.sc-dso-autosuggest:not(:first-child) .group-label.sc-dso-autosuggest{border-block-start:1px solid #b2b2b2}.listbox.sc-dso-autosuggest .group-label.sc-dso-autosuggest{color:#275937;font-weight:700;padding-block:4px;margin-inline:16px}.listbox.sc-dso-autosuggest .option.sc-dso-autosuggest{padding-block:4px;padding-inline:16px}.listbox.sc-dso-autosuggest .option.sc-dso-autosuggest .suggestion-row.sc-dso-autosuggest{display:flex;justify-content:space-between}.listbox.sc-dso-autosuggest .option.sc-dso-autosuggest:active{background-color:#275937}.listbox.sc-dso-autosuggest .option.sc-dso-autosuggest:active,.listbox.sc-dso-autosuggest .option.sc-dso-autosuggest:active .type.sc-dso-autosuggest,.listbox.sc-dso-autosuggest .option.sc-dso-autosuggest:active .extra.sc-dso-autosuggest{color:#fff}.option[aria-selected=true].sc-dso-autosuggest{cursor:pointer;background-color:#d7e7ce}mark.sc-dso-autosuggest{font-weight:700;background-color:inherit;color:inherit;padding:0}.type.sc-dso-autosuggest,.extra.sc-dso-autosuggest{color:#666}.type.sc-dso-autosuggest{text-align:end}.extra.sc-dso-autosuggest{font-size:14px;line-height:21px}.extra.sc-dso-autosuggest:not(:first-child){text-align:end}";
35
35
  const DsoAutosuggestStyle0 = autosuggestCss;
36
36
 
37
37
  const maxSuggestionsViewable = 10;
38
38
  const listboxPaddingBlock = 8;
39
39
  const listboxBorderWidth = 1;
40
+ const Option = ({ id, mouseEnter, mouseLeave, click, selected, suggestion, ref, markedSuggestion }) => (h("div", { class: "option", role: "option", id: id, onMouseEnter: mouseEnter, onMouseLeave: mouseLeave, onClick: click, "aria-selected": selected, "aria-label": suggestion.value, ref: ref }, h("div", { class: "suggestion-row" }, h("span", { class: "value" }, markedSuggestion.value), markedSuggestion.type ? h("span", { class: "type" }, markedSuggestion.type) : undefined), markedSuggestion.extras &&
41
+ markedSuggestion.extras.map((markedChunk) => (h("div", { class: "suggestion-row" }, markedChunk.map((extra) => (h("span", { class: "extra" }, extra))))))));
42
+ function isGrouped(suggestions) {
43
+ return (!!suggestions &&
44
+ suggestions.length > 0 &&
45
+ suggestions.every((suggestion) => suggestion !== undefined &&
46
+ "groupLabel" in suggestion &&
47
+ suggestion.groupLabel !== undefined &&
48
+ "suggestions" in suggestion &&
49
+ suggestion.suggestions.length > 0));
50
+ }
51
+ function isFlat(suggestions) {
52
+ return (!!suggestions &&
53
+ suggestions.length > 0 &&
54
+ suggestions.every((suggestion) => suggestion !== undefined && "value" in suggestion && suggestion.value !== undefined));
55
+ }
40
56
  const Autosuggest = /*@__PURE__*/ proxyCustomElement(class Autosuggest extends HTMLElement {
41
57
  constructor() {
42
58
  super();
@@ -45,11 +61,16 @@ const Autosuggest = /*@__PURE__*/ proxyCustomElement(class Autosuggest extends H
45
61
  this.dsoChange = createEvent(this, "dsoChange", 7);
46
62
  this.dsoSearch = createEvent(this, "dsoSearch", 7);
47
63
  /**
48
- * The suggestions for the value of the slotted input element. Optionally a
49
- * Suggestion can have a `type` and `item`.
64
+ * The suggestions for the value of the slotted input element.
65
+ *
66
+ * This can be an array of type Suggestion or an Array of type SuggestionGroup.
50
67
  *
51
- * The `type` is used to style the suggestion. `item` can be use to reference
52
- * the original object that was used to create the suggestion.
68
+ * A suggestionGroup must have a `groupLabel` and `suggestions`.
69
+ *
70
+ * A suggestion must have a `value` and can have a `type`, an `item` or `extras`.
71
+ *
72
+ * The `type` is used to style the suggestion. `item` can be use to reference the original object that was used to
73
+ * create the suggestion. `extras` is an array of additional strings to further specify the suggestion.
53
74
  *
54
75
  * The value should be null when no suggestions have been fetched.
55
76
  */
@@ -270,22 +291,38 @@ const Autosuggest = /*@__PURE__*/ proxyCustomElement(class Autosuggest extends H
270
291
  return item;
271
292
  });
272
293
  }
273
- selectSuggestion(suggestion) {
294
+ selectSuggestion(suggestion, group) {
274
295
  this.selectedSuggestion = suggestion;
296
+ this.selectedSuggestionGroup = group;
275
297
  this.setAriaActiveDescendant();
276
298
  }
277
299
  selectFirstSuggestion() {
278
300
  if (!this.suggestions) {
279
301
  return;
280
302
  }
281
- this.selectedSuggestion = this.suggestions[0];
303
+ if (isGrouped(this.suggestions) && this.selectedSuggestionGroup) {
304
+ this.selectedSuggestion = this.selectedSuggestionGroup.suggestions[0];
305
+ }
306
+ else {
307
+ if (isFlat(this.suggestions)) {
308
+ this.selectedSuggestion = this.suggestions[0];
309
+ }
310
+ }
282
311
  this.setAriaActiveDescendant(true);
283
312
  }
284
313
  selectLastSuggestion() {
285
314
  if (!this.suggestions) {
286
315
  return;
287
316
  }
288
- this.selectedSuggestion = this.suggestions[this.suggestions.length - 1];
317
+ if (isGrouped(this.suggestions) && this.selectedSuggestionGroup) {
318
+ this.selectedSuggestion =
319
+ this.selectedSuggestionGroup.suggestions[this.selectedSuggestionGroup.suggestions.length - 1];
320
+ }
321
+ else {
322
+ if (isFlat(this.suggestions)) {
323
+ this.selectedSuggestion = this.suggestions[this.suggestions.length - 1];
324
+ }
325
+ }
289
326
  this.setAriaActiveDescendant(true);
290
327
  }
291
328
  selectNextSuggestion() {
@@ -293,23 +330,91 @@ const Autosuggest = /*@__PURE__*/ proxyCustomElement(class Autosuggest extends H
293
330
  if (!this.suggestions) {
294
331
  return;
295
332
  }
296
- const index = this.selectedSuggestion ? this.suggestions.indexOf(this.selectedSuggestion) : -1;
297
- this.selectedSuggestion = (_a = this.suggestions[index + 1]) !== null && _a !== void 0 ? _a : this.suggestions[0];
333
+ if (isGrouped(this.suggestions)) {
334
+ this.selectNextGroupedSuggestion();
335
+ }
336
+ else {
337
+ const index = this.selectedSuggestion ? this.suggestions.indexOf(this.selectedSuggestion) : -1;
338
+ this.selectedSuggestion = (_a = this.suggestions[index + 1]) !== null && _a !== void 0 ? _a : this.suggestions[0];
339
+ }
298
340
  this.setAriaActiveDescendant(true);
299
341
  }
342
+ selectNextGroupedSuggestion() {
343
+ var _a;
344
+ if (!this.suggestions) {
345
+ return;
346
+ }
347
+ if (this.selectedSuggestionGroup) {
348
+ const indexInGroup = this.selectedSuggestion
349
+ ? this.selectedSuggestionGroup.suggestions.indexOf(this.selectedSuggestion)
350
+ : -1;
351
+ if (indexInGroup === this.selectedSuggestionGroup.suggestions.length - 1) {
352
+ // Move to first suggestion in next or first group
353
+ const groupIndex = this.suggestionGroups.indexOf(this.selectedSuggestionGroup);
354
+ this.selectedSuggestionGroup = (_a = this.suggestionGroups[groupIndex + 1]) !== null && _a !== void 0 ? _a : this.suggestionGroups[0];
355
+ this.selectedSuggestion = this.selectedSuggestionGroup.suggestions[0];
356
+ }
357
+ else {
358
+ // Within this group
359
+ this.selectedSuggestion = this.selectedSuggestionGroup.suggestions[indexInGroup + 1];
360
+ }
361
+ }
362
+ else {
363
+ this.selectedSuggestionGroup = this.suggestionGroups[0];
364
+ this.selectedSuggestion = this.selectedSuggestionGroup.suggestions[0];
365
+ }
366
+ }
300
367
  selectPreviousSuggestion() {
301
368
  var _a;
302
369
  if (!this.suggestions) {
303
370
  return;
304
371
  }
305
- const index = this.selectedSuggestion ? this.suggestions.indexOf(this.selectedSuggestion) : 0;
306
- this.selectedSuggestion = (_a = this.suggestions[index - 1]) !== null && _a !== void 0 ? _a : this.suggestions[this.suggestions.length - 1];
372
+ if (isGrouped(this.suggestions)) {
373
+ this.selectPreviousGroupedSuggestion();
374
+ }
375
+ else {
376
+ const index = this.selectedSuggestion ? this.suggestions.indexOf(this.selectedSuggestion) : 0;
377
+ this.selectedSuggestion = (_a = this.suggestions[index - 1]) !== null && _a !== void 0 ? _a : this.suggestions[this.suggestions.length - 1];
378
+ }
307
379
  this.setAriaActiveDescendant(true);
308
380
  }
381
+ selectPreviousGroupedSuggestion() {
382
+ var _a;
383
+ if (!this.suggestions) {
384
+ return;
385
+ }
386
+ if (this.selectedSuggestionGroup) {
387
+ const indexInGroup = this.selectedSuggestion
388
+ ? this.selectedSuggestionGroup.suggestions.indexOf(this.selectedSuggestion)
389
+ : -1;
390
+ if (indexInGroup === 0) {
391
+ // Move to last suggestion in previous or last group
392
+ const groupIndex = this.suggestionGroups.indexOf(this.selectedSuggestionGroup);
393
+ this.selectedSuggestionGroup =
394
+ (_a = this.suggestionGroups[groupIndex - 1]) !== null && _a !== void 0 ? _a : this.suggestionGroups[this.suggestions.length - 1];
395
+ this.selectedSuggestion =
396
+ this.selectedSuggestionGroup.suggestions[this.selectedSuggestionGroup.suggestions.length - 1];
397
+ }
398
+ else {
399
+ // Within this group
400
+ this.selectedSuggestion = this.selectedSuggestionGroup.suggestions[indexInGroup - 1];
401
+ }
402
+ }
403
+ else {
404
+ this.selectedSuggestionGroup = this.suggestionGroups[this.suggestions.length - 1];
405
+ this.selectedSuggestion =
406
+ this.selectedSuggestionGroup.suggestions[this.selectedSuggestionGroup.suggestions.length - 1];
407
+ }
408
+ }
409
+ get suggestionGroups() {
410
+ return isGrouped(this.suggestions) ? this.suggestions : [];
411
+ }
309
412
  setAriaActiveDescendant(scroll = false) {
310
413
  var _a, _b;
311
414
  if (this.selectedSuggestion) {
312
- const id = this.listboxItemId(this.selectedSuggestion);
415
+ const id = this.selectedSuggestionGroup
416
+ ? this.listboxGroupedItemId(this.selectedSuggestionGroup, this.selectedSuggestion)
417
+ : this.listboxItemId(this.selectedSuggestion);
313
418
  (_a = this.input) === null || _a === void 0 ? void 0 : _a.setAttribute("aria-activedescendant", id);
314
419
  if (scroll) {
315
420
  (_b = document.getElementById(id)) === null || _b === void 0 ? void 0 : _b.scrollIntoView({ block: "nearest" });
@@ -321,6 +426,7 @@ const Autosuggest = /*@__PURE__*/ proxyCustomElement(class Autosuggest extends H
321
426
  this.showLoading = !this.loadingDelayed;
322
427
  this.notFound = false;
323
428
  this.selectedSuggestion = undefined;
429
+ this.selectedSuggestionGroup = undefined;
324
430
  (_a = this.input) === null || _a === void 0 ? void 0 : _a.setAttribute("aria-activedescendant", "");
325
431
  }
326
432
  openSuggestions(selectSuggestion) {
@@ -356,10 +462,16 @@ const Autosuggest = /*@__PURE__*/ proxyCustomElement(class Autosuggest extends H
356
462
  if (!this.suggestions) {
357
463
  return "";
358
464
  }
359
- return `${this.inputId}-${this.suggestions.indexOf(suggestion) + 1}`;
465
+ return `${this.inputId}-${isFlat(this.suggestions) && this.suggestions.indexOf(suggestion) + 1}`;
360
466
  }
361
- getChunkedExtras(extras) {
362
- return extras.reduce((resultArray, extra, index) => {
467
+ listboxGroupedItemId(suggestionGroup, suggestion) {
468
+ if (!this.suggestions) {
469
+ return "";
470
+ }
471
+ return `${this.inputId}-${this.suggestionGroups.indexOf(suggestionGroup) + 1}-${suggestionGroup.suggestions.indexOf(suggestion) + 1}`;
472
+ }
473
+ getMarkedChunkedExtras(extras, suggestion) {
474
+ const chunkedExtras = extras.reduce((resultArray, extra, index) => {
363
475
  var _a;
364
476
  const chunkIndex = Math.floor(index / 2);
365
477
  if (!resultArray[chunkIndex]) {
@@ -368,21 +480,38 @@ const Autosuggest = /*@__PURE__*/ proxyCustomElement(class Autosuggest extends H
368
480
  (_a = resultArray[chunkIndex]) === null || _a === void 0 ? void 0 : _a.push(extra);
369
481
  return resultArray;
370
482
  }, []);
483
+ return chunkedExtras.map((chunk, index) => chunk.map((c, i) => this.handleMark(suggestion, c, "extra", index * 2 + i)));
484
+ }
485
+ getMarkedSuggestions(suggestion) {
486
+ return {
487
+ value: this.handleMark(suggestion, suggestion.value, "value"),
488
+ type: suggestion.type ? this.handleMark(suggestion, suggestion.type, "type") : undefined,
489
+ extras: suggestion.extras ? this.getMarkedChunkedExtras(suggestion.extras, suggestion) : undefined,
490
+ };
371
491
  }
372
492
  render() {
373
493
  this.listboxItems = [];
374
494
  const showListbox = this.showSuggestions || this.notFound;
495
+ const grouped = isGrouped(this.suggestions);
496
+ const flat = isFlat(this.suggestions);
375
497
  if (showListbox && this.input) {
376
498
  this.input.setAttribute("aria-controls", this.listboxId);
377
499
  }
378
500
  else if (this.input) {
379
501
  this.input.removeAttribute("aria-controls");
380
502
  }
381
- return (h(Fragment, null, h("slot", { key: '2ed8694b6cfa86863f0e22b6a7cfa1a1144e673f' }), this.loading && this.showLoading ? (h("div", { class: "autosuggest-progress-box" }, h("dso-progress-indicator", { label: this.loadingLabel }))) : (showListbox && (h("dso-scrollable", { class: "listbox-container", ref: (element) => (this.listboxContainer = element), style: { "--max-block-size": `${this.listboxContainerMaxBlockSize}px` } }, h("ul", { role: "listbox", "aria-live": "polite", id: this.listboxId, "aria-labelledby": this.labelId, ref: (element) => (this.listbox = element), tabindex: "0" }, (this.showSuggestions &&
503
+ return (h(Fragment, null, h("slot", { key: '557d829f9238c3fa9f6082beba78381472115ccd' }), this.loading && this.showLoading ? (h("div", { class: "autosuggest-progress-box" }, h("dso-progress-indicator", { label: this.loadingLabel }))) : (showListbox && (h("dso-scrollable", { class: "listbox-container", ref: (element) => (this.listboxContainer = element), style: { "--max-block-size": `${this.listboxContainerMaxBlockSize}px` } }, h("div", { class: "listbox", role: "listbox", "aria-live": "polite", id: this.listboxId, "aria-labelledby": this.labelId, ref: (element) => (this.listbox = element), tabindex: "0" }, (flat &&
504
+ this.showSuggestions &&
382
505
  this.suggestions &&
383
- this.suggestions.map((suggestion) => (h("li", { role: "option", id: this.listboxItemId(suggestion), key: suggestion.value, onMouseEnter: () => this.selectSuggestion(suggestion), onMouseLeave: () => this.resetSelectedSuggestion(), onClick: () => this.pickSelectedValue(), "aria-selected": (suggestion === this.selectedSuggestion).toString(), "aria-label": suggestion.value, ref: (li) => li && this.listboxItems.push(li) }, h("div", { class: "suggestion-row" }, h("span", { class: "value" }, this.handleMark(suggestion, suggestion.value, "value")), suggestion.type ? (h("span", { class: "type" }, this.handleMark(suggestion, suggestion.type, "type"))) : undefined), suggestion.extras &&
384
- this.getChunkedExtras(suggestion.extras).map((chunk, index) => (h("div", { class: "suggestion-row" }, chunk.map((c, i) => (h("span", { class: "extra" }, this.handleMark(suggestion, c, "extra", index * 2 + i))))))))))) ||
385
- (this.notFound && (h("li", null, h("span", { class: "value" }, this.notFoundLabel ||
506
+ this.suggestions.map((suggestion) => (h(Option, { id: this.listboxItemId(suggestion), mouseEnter: () => this.selectSuggestion(suggestion), mouseLeave: () => this.resetSelectedSuggestion(), click: () => this.pickSelectedValue(), selected: (suggestion === this.selectedSuggestion).toString(), suggestion: suggestion, ref: (element) => element && this.listboxItems.push(element), markedSuggestion: this.getMarkedSuggestions(suggestion) })))) ||
507
+ (grouped &&
508
+ this.showSuggestions &&
509
+ this.suggestions &&
510
+ this.suggestions.map((suggestionGroup) => {
511
+ const groupLabelId = v4();
512
+ return (h("div", { role: "group", class: "group", "aria-labelledby": groupLabelId }, h("div", { class: "group-label", role: "presentation", id: groupLabelId }, suggestionGroup.groupLabel), suggestionGroup.suggestions.map((suggestion) => (h(Option, { id: this.listboxGroupedItemId(suggestionGroup, suggestion), mouseEnter: () => this.selectSuggestion(suggestion, suggestionGroup), mouseLeave: () => this.resetSelectedSuggestion(), click: () => this.pickSelectedValue(), selected: (suggestion === this.selectedSuggestion).toString(), suggestion: suggestion, ref: (element) => element && this.listboxItems.push(element), markedSuggestion: this.getMarkedSuggestions(suggestion) })))));
513
+ })) ||
514
+ (this.notFound && (h("div", { class: "option" }, h("span", { class: "value" }, this.notFoundLabel ||
386
515
  this.showInputValueNotFound(this.text("notFound", { inputValue: this.inputValue }))))))))))));
387
516
  }
388
517
  get host() { return this; }
@@ -400,6 +529,7 @@ const Autosuggest = /*@__PURE__*/ proxyCustomElement(class Autosuggest extends H
400
529
  "mark": [16],
401
530
  "showSuggestions": [32],
402
531
  "selectedSuggestion": [32],
532
+ "selectedSuggestionGroup": [32],
403
533
  "notFound": [32],
404
534
  "showLoading": [32],
405
535
  "listItemBlockSize": [32],