@dso-toolkit/core 100.3.1 → 100.4.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 (491) hide show
  1. package/dist/bundle/dso-accordion-section.js +20 -11
  2. package/dist/bundle/dso-accordion.js +3 -3
  3. package/dist/bundle/dso-action-list-item.js +4 -4
  4. package/dist/bundle/dso-action-list.js +2 -2
  5. package/dist/bundle/dso-advanced-select.js +6 -6
  6. package/dist/bundle/dso-alert.js +1 -1
  7. package/dist/bundle/dso-annotation-activiteit.js +10 -10
  8. package/dist/bundle/dso-annotation-gebiedsaanwijzing.js +9 -9
  9. package/dist/bundle/dso-annotation-kaart.js +5 -5
  10. package/dist/bundle/dso-annotation-locatie.js +1 -1
  11. package/dist/bundle/dso-annotation-omgevingsnormwaarde.js +10 -10
  12. package/dist/bundle/dso-attachments-counter.js +1 -1
  13. package/dist/bundle/dso-autosuggest.js +7 -7
  14. package/dist/bundle/dso-badge.js +1 -1
  15. package/dist/bundle/dso-banner.js +4 -4
  16. package/dist/bundle/dso-button-group.js +1 -1
  17. package/dist/bundle/dso-card-container.js +2 -2
  18. package/dist/bundle/dso-card.js +2 -2
  19. package/dist/bundle/dso-contact-information.js +1 -1
  20. package/dist/bundle/dso-cursor-tooltip.js +2 -2
  21. package/dist/bundle/dso-date-picker.js +1 -1
  22. package/dist/bundle/dso-document-card.js +2 -2
  23. package/dist/bundle/dso-document-component.js +1 -1
  24. package/dist/bundle/dso-dropdown-menu-group.js +2 -2
  25. package/dist/bundle/dso-dropdown-menu-item.js +3 -3
  26. package/dist/bundle/dso-dropdown-menu.js +5 -5
  27. package/dist/bundle/dso-expandable.js +1 -1
  28. package/dist/bundle/dso-grid-column.js +3 -4
  29. package/dist/bundle/dso-header.js +24 -8
  30. package/dist/bundle/dso-hero-image.js +1 -1
  31. package/dist/bundle/dso-highlight-box.js +2 -2
  32. package/dist/bundle/dso-history-item.js +2 -2
  33. package/dist/bundle/dso-icon-button.js +1 -1
  34. package/dist/bundle/dso-icon.js +1 -1
  35. package/dist/bundle/dso-image-overlay.js +1 -1
  36. package/dist/bundle/dso-info-button.js +1 -1
  37. package/dist/bundle/dso-info.js +1 -1
  38. package/dist/bundle/dso-input-range.js +1 -1
  39. package/dist/bundle/dso-label.js +1 -1
  40. package/dist/bundle/dso-legend-group.js +4 -4
  41. package/dist/bundle/dso-legend-item.js +7 -7
  42. package/dist/bundle/dso-legend.js +6 -6
  43. package/dist/bundle/dso-list-button.js +8 -8
  44. package/dist/bundle/dso-logo.js +1 -1
  45. package/dist/bundle/dso-map-base-layers.js +8 -8
  46. package/dist/bundle/dso-map-controls.js +7 -7
  47. package/dist/bundle/dso-map-layer-object.js +3 -3
  48. package/dist/bundle/dso-map-layer.js +3 -3
  49. package/dist/bundle/dso-map-message.js +2 -2
  50. package/dist/bundle/dso-map-overlays.js +8 -8
  51. package/dist/bundle/dso-mark-bar.js +3 -3
  52. package/dist/bundle/dso-modal.js +1 -1
  53. package/dist/bundle/dso-onboarding-tip.js +5 -5
  54. package/dist/bundle/dso-ozon-content-toggletip.js +1 -1
  55. package/dist/bundle/dso-ozon-content.js +1 -1
  56. package/dist/bundle/dso-pagination.js +3 -3
  57. package/dist/bundle/dso-panel.js +1 -1
  58. package/dist/bundle/dso-plekinfo-card.js +3 -3
  59. package/dist/bundle/dso-progress-indicator.js +1 -1
  60. package/dist/bundle/dso-project-item.js +5 -5
  61. package/dist/bundle/dso-renvooi.js +1 -1
  62. package/dist/bundle/dso-responsive-element.js +1 -1
  63. package/dist/bundle/dso-scrollable.js +1 -1
  64. package/dist/bundle/dso-segmented-button.js +1 -1
  65. package/dist/bundle/dso-selectable.js +1 -1
  66. package/dist/bundle/dso-shopping-cart-item.js +3 -3
  67. package/dist/bundle/dso-shopping-cart.js +3 -3
  68. package/dist/bundle/dso-skiplink.js +2 -2
  69. package/dist/bundle/dso-slide-toggle.js +1 -1
  70. package/dist/bundle/dso-survey-rating.js +4 -4
  71. package/dist/bundle/dso-tab.js +1 -1
  72. package/dist/bundle/dso-table.js +1 -1
  73. package/dist/bundle/dso-tabs.js +1 -1
  74. package/dist/bundle/dso-tijdreis-banner.js +3 -3
  75. package/dist/bundle/dso-tree-view.js +3 -3
  76. package/dist/bundle/dso-viewer-grid.js +3 -3
  77. package/dist/bundle/dsot-document-component-demo.js +18 -18
  78. package/dist/bundle/index.js +2 -2
  79. package/dist/bundle/{p-LAIYa8JB.js → p-6lwKSTtN.js} +9 -9
  80. package/dist/bundle/{p-DSn98k7j.js → p-B1sfJaTU.js} +16 -45
  81. package/dist/bundle/{p-BhW3MSGZ.js → p-B5zDTnXM.js} +5 -5
  82. package/dist/bundle/{p-wroz5qbN.js → p-BHAfq_R9.js} +5 -5
  83. package/dist/bundle/{p-C78OzjGD.js → p-BHPEhHca.js} +2 -2
  84. package/dist/bundle/{p-DB6jeYdL.js → p-BIioZO_6.js} +1 -1
  85. package/dist/bundle/{p-Cz4DEkYY.js → p-BMhDrgpW.js} +4 -4
  86. package/dist/bundle/{p-3mY5bRq3.js → p-BZr7fJps.js} +16 -27
  87. package/dist/bundle/{p-Cy1s6Fqo.js → p-BdK56OMA.js} +6 -6
  88. package/dist/bundle/{p-COI1m0uI.js → p-BdO8V8e5.js} +4 -4
  89. package/dist/bundle/{p-Ci81TOhm.js → p-BiTWJ9tJ.js} +29 -79
  90. package/dist/bundle/{p-CkzyPAOs.js → p-Brr0tC8B.js} +1 -1
  91. package/dist/bundle/p-BsaL-EuM.js +76 -0
  92. package/dist/bundle/{p-CMm0xWy5.js → p-BvB8dh8P.js} +2 -2
  93. package/dist/bundle/p-C49HfF1N.js +60 -0
  94. package/dist/bundle/{p-D8J4Z2LD.js → p-CDD0hRMQ.js} +9 -9
  95. package/dist/bundle/{p-DTx5uLrL.js → p-CDym9tDn.js} +3 -3
  96. package/dist/bundle/{p-DdH_IPw_.js → p-CMhiuOhg.js} +1 -1
  97. package/dist/bundle/{p-BcoGSCi2.js → p-CSbcQBj9.js} +2 -2
  98. package/dist/bundle/{p-nBjxlgfX.js → p-Ccf_D9uM.js} +6 -6
  99. package/dist/bundle/{p-Cg-toWNU.js → p-CvUpjPda.js} +1 -1
  100. package/dist/bundle/{p-CIfxp928.js → p-D09qaSTl.js} +3 -3
  101. package/dist/bundle/{p-BydRjBUc.js → p-D7-d0naf.js} +18 -42
  102. package/dist/bundle/{p-BVLZrKNg.js → p-DHj0KBgK.js} +1 -1
  103. package/dist/bundle/{p-BPxWl5Jg.js → p-DStIHFXU.js} +17 -17
  104. package/dist/bundle/{p-DFhKaDMe.js → p-DZCYhv_b.js} +1 -1
  105. package/dist/bundle/{p-D33uqBOM.js → p-D_wg33r9.js} +3 -3
  106. package/dist/bundle/{p-BeyBvNPm.js → p-Diwr4pu4.js} +16 -30
  107. package/dist/bundle/{p-Bj6TmNEh.js → p-DixhcduG.js} +1 -1
  108. package/dist/bundle/{p-CiFTQ7lb.js → p-DtUeWj74.js} +76 -33
  109. package/dist/bundle/{p-ZSFwKURq.js → p-Dtkoi4Xj.js} +2 -2
  110. package/dist/bundle/{p-DjR55R0Z.js → p-d1IkgLLm.js} +1 -1
  111. package/dist/bundle/{p-TaOl3xYb.js → p-uUZVT-Ex.js} +3 -3
  112. package/dist/{esm/i18n-CCOI5nUo.js → bundle/p-xDSTG4OU.js} +28 -1
  113. package/dist/cjs/{annotation-body-H_YdGRBP.js → annotation-body-CCYWAvBu.js} +1 -1
  114. package/dist/cjs/{annotation-list-renvooi-values-DnvYPhrD.js → annotation-list-renvooi-values-UnGybDbb.js} +1 -1
  115. package/dist/cjs/{annotation-watcher-DXLGEmn8.js → annotation-watcher-D9lm8RSy.js} +1 -1
  116. package/dist/cjs/dso-accordion-section.cjs.entry.js +13 -4
  117. package/dist/cjs/dso-accordion.cjs.entry.js +3 -3
  118. package/dist/cjs/dso-action-list-item.cjs.entry.js +3 -3
  119. package/dist/cjs/dso-action-list.cjs.entry.js +2 -2
  120. package/dist/cjs/dso-advanced-select.cjs.entry.js +1 -1
  121. package/dist/cjs/dso-alert_7.cjs.entry.js +45 -110
  122. package/dist/cjs/dso-annotation-activiteit.cjs.entry.js +5 -5
  123. package/dist/cjs/dso-annotation-gebiedsaanwijzing.cjs.entry.js +4 -4
  124. package/dist/cjs/dso-annotation-kaart.cjs.entry.js +2 -2
  125. package/dist/cjs/dso-annotation-locatie_2.cjs.entry.js +9 -9
  126. package/dist/cjs/dso-annotation-omgevingsnormwaarde.cjs.entry.js +5 -5
  127. package/dist/cjs/dso-attachments-counter_2.cjs.entry.js +3 -3
  128. package/dist/cjs/dso-autosuggest.cjs.entry.js +4 -4
  129. package/dist/cjs/dso-banner.cjs.entry.js +3 -3
  130. package/dist/cjs/dso-button-group.cjs.entry.js +2 -2
  131. package/dist/cjs/dso-card-container.cjs.entry.js +2 -2
  132. package/dist/cjs/dso-card.cjs.entry.js +1 -1
  133. package/dist/cjs/dso-contact-information.cjs.entry.js +1 -1
  134. package/dist/cjs/dso-cursor-tooltip.cjs.entry.js +2 -2
  135. package/dist/cjs/dso-date-picker.cjs.entry.js +1 -1
  136. package/dist/cjs/dso-document-card.cjs.entry.js +1 -1
  137. package/dist/cjs/dso-dropdown-menu-group.cjs.entry.js +2 -2
  138. package/dist/cjs/dso-dropdown-menu-item.cjs.entry.js +2 -2
  139. package/dist/cjs/dso-dropdown-menu.cjs.entry.js +3 -3
  140. package/dist/cjs/dso-grid-column.cjs.entry.js +3 -4
  141. package/dist/cjs/dso-header.cjs.entry.js +22 -6
  142. package/dist/cjs/dso-hero-image.cjs.entry.js +1 -1
  143. package/dist/cjs/dso-highlight-box.cjs.entry.js +2 -2
  144. package/dist/cjs/dso-history-item.cjs.entry.js +1 -1
  145. package/dist/cjs/dso-icon_2.cjs.entry.js +16 -45
  146. package/dist/cjs/dso-info_3.cjs.entry.js +17 -41
  147. package/dist/cjs/dso-input-range.cjs.entry.js +1 -1
  148. package/dist/cjs/dso-label_3.cjs.entry.js +16 -27
  149. package/dist/cjs/dso-legend-group.cjs.entry.js +2 -2
  150. package/dist/cjs/dso-legend-item.cjs.entry.js +2 -2
  151. package/dist/cjs/dso-legend.cjs.entry.js +3 -3
  152. package/dist/cjs/dso-list-button.cjs.entry.js +2 -2
  153. package/dist/cjs/dso-logo.cjs.entry.js +1 -1
  154. package/dist/cjs/dso-map-base-layers.cjs.entry.js +2 -2
  155. package/dist/cjs/dso-map-controls.cjs.entry.js +3 -3
  156. package/dist/cjs/dso-map-layer-object.cjs.entry.js +2 -2
  157. package/dist/cjs/dso-map-layer.cjs.entry.js +2 -2
  158. package/dist/cjs/dso-map-message.cjs.entry.js +1 -1
  159. package/dist/cjs/dso-map-overlays.cjs.entry.js +2 -2
  160. package/dist/cjs/dso-mark-bar.cjs.entry.js +1 -1
  161. package/dist/cjs/dso-modal.cjs.entry.js +2 -2
  162. package/dist/cjs/dso-onboarding-tip.cjs.entry.js +2 -2
  163. package/dist/cjs/dso-pagination.cjs.entry.js +1 -1
  164. package/dist/cjs/dso-plekinfo-card.cjs.entry.js +2 -2
  165. package/dist/cjs/dso-progress-indicator.cjs.entry.js +2 -2
  166. package/dist/cjs/dso-project-item.cjs.entry.js +2 -2
  167. package/dist/cjs/dso-responsive-element.cjs.entry.js +2 -2
  168. package/dist/cjs/dso-scrollable.cjs.entry.js +3 -3
  169. package/dist/cjs/dso-segmented-button.cjs.entry.js +1 -1
  170. package/dist/cjs/dso-shopping-cart-item.cjs.entry.js +1 -1
  171. package/dist/cjs/dso-shopping-cart.cjs.entry.js +1 -1
  172. package/dist/cjs/dso-skiplink.cjs.entry.js +1 -1
  173. package/dist/cjs/dso-survey-rating.cjs.entry.js +1 -1
  174. package/dist/cjs/dso-tab.cjs.entry.js +1 -1
  175. package/dist/cjs/dso-tabs.cjs.entry.js +1 -1
  176. package/dist/cjs/dso-tijdreis-banner.cjs.entry.js +2 -2
  177. package/dist/cjs/dso-toolkit.cjs.js +2 -2
  178. package/dist/cjs/dso-tree-view.cjs.entry.js +1 -1
  179. package/dist/cjs/dso-viewer-grid.cjs.entry.js +3 -3
  180. package/dist/cjs/dsot-document-component-demo.cjs.entry.js +1 -1
  181. package/dist/cjs/{i18n-DH0Su3jj.js → i18n-Bzut_vVm.js} +28 -1
  182. package/dist/cjs/{index-CfwUrDXc.js → index-BBx5yytN.js} +76 -33
  183. package/dist/cjs/{index-EngjN4P3.js → index-DZPLxT1W.js} +1 -1
  184. package/dist/cjs/loader.cjs.js +1 -1
  185. package/dist/cjs/{parse-wijzigactie-from-node.function-B2dUQ7Rf.js → parse-wijzigactie-from-node.function-CYUDdIa0.js} +1 -1
  186. package/dist/cjs/toggletip.controller-BB-Voe-Z.js +63 -0
  187. package/dist/cjs/tooltip.controller-Cvac0qe3.js +78 -0
  188. package/dist/cjs/{tooltip.functional-component-BEcuvKwS.js → tooltip.functional-component-DOBjuEpE.js} +1 -1
  189. package/dist/cjs/{wrap-wijzigactie.functional-component-DodUwf7_.js → wrap-wijzigactie.functional-component-D1UjZ36u.js} +1 -1
  190. package/dist/collection/collection-manifest.json +1 -1
  191. package/dist/collection/components/accordion/accordion.js +4 -1
  192. package/dist/collection/components/accordion/components/accordion-section.css +4 -0
  193. package/dist/collection/components/accordion/components/accordion-section.js +15 -2
  194. package/dist/collection/components/action-list/action-list.js +4 -1
  195. package/dist/collection/components/action-list/components/action-list-item.js +5 -2
  196. package/dist/collection/components/alert/alert.js +4 -1
  197. package/dist/collection/components/annotation/annotation-activiteit/annotation-activiteit.js +1 -4
  198. package/dist/collection/components/annotation/annotation-gebiedsaanwijzing/annotation-gebiedsaanwijzing.js +1 -4
  199. package/dist/collection/components/annotation/annotation-locatie/annotation-locatie.js +1 -4
  200. package/dist/collection/components/annotation/annotation-omgevingsnormwaarde/annotation-omgevingsnormwaarde.js +1 -6
  201. package/dist/collection/components/autosuggest/autosuggest.js +5 -2
  202. package/dist/collection/components/badge/badge.js +26 -77
  203. package/dist/collection/components/banner/banner.js +5 -2
  204. package/dist/collection/components/button-group/button-group.js +4 -1
  205. package/dist/collection/components/card-container/card-container.js +4 -1
  206. package/dist/collection/components/cursor-tooltip/cursor-tooltip.js +4 -1
  207. package/dist/collection/components/document-component/document-component.js +6 -4
  208. package/dist/collection/components/dropdown-menu/dropdown-menu-group/dropdown-menu-group.js +4 -1
  209. package/dist/collection/components/dropdown-menu/dropdown-menu-item/dropdown-menu-item.js +4 -1
  210. package/dist/collection/components/dropdown-menu/dropdown-menu.js +4 -1
  211. package/dist/collection/components/expandable/expandable.js +5 -2
  212. package/dist/collection/components/grid-column/grid-column.js +2 -3
  213. package/dist/collection/components/header/header.css +31 -14
  214. package/dist/collection/components/header/header.js +22 -3
  215. package/dist/collection/components/highlight-box/highlight-box.js +5 -1
  216. package/dist/collection/components/icon-button/icon-button.js +13 -43
  217. package/dist/collection/components/image-overlay/image-overlay.js +5 -0
  218. package/dist/collection/components/info/info.js +4 -1
  219. package/dist/collection/components/info-button/info-button.js +16 -38
  220. package/dist/collection/components/label/label.js +16 -24
  221. package/dist/collection/components/legend/legend.js +4 -1
  222. package/dist/collection/components/list-button/list-button.js +4 -1
  223. package/dist/collection/components/map-controls/map-controls.js +4 -1
  224. package/dist/collection/components/onboarding-tip/onboarding-tip.js +5 -1
  225. package/dist/collection/components/ozon-content/components/ozon-content-toggletip/ozon-content-toggletip.js +16 -27
  226. package/dist/collection/components/project-item/project-item.js +7 -1
  227. package/dist/collection/components/responsive-element/responsive-element.js +4 -1
  228. package/dist/collection/components/scrollable/scrollable.js +5 -2
  229. package/dist/collection/components/slide-toggle/slide-toggle.js +4 -1
  230. package/dist/collection/components/table/table.js +5 -1
  231. package/dist/collection/components/tijdreis-banner/tijdreis-banner.js +5 -1
  232. package/dist/collection/components/viewer-grid/viewer-grid.js +5 -9
  233. package/dist/collection/functional-components/tooltip/toggletip.controller.js +57 -0
  234. package/dist/collection/functional-components/tooltip/tooltip.controller.js +73 -0
  235. package/dist/components/alert.js +1 -1
  236. package/dist/components/annotation-locatie.js +1 -1
  237. package/dist/components/badge.js +1 -1
  238. package/dist/components/button-group.js +1 -1
  239. package/dist/components/document-component.js +1 -1
  240. package/dist/components/dso-accordion-section.js +1 -1
  241. package/dist/components/dso-accordion.js +1 -1
  242. package/dist/components/dso-action-list-item.js +1 -1
  243. package/dist/components/dso-action-list.js +1 -1
  244. package/dist/components/dso-annotation-activiteit.js +1 -1
  245. package/dist/components/dso-annotation-gebiedsaanwijzing.js +1 -1
  246. package/dist/components/dso-annotation-omgevingsnormwaarde.js +1 -1
  247. package/dist/components/dso-autosuggest.js +1 -1
  248. package/dist/components/dso-banner.js +1 -1
  249. package/dist/components/dso-card-container.js +1 -1
  250. package/dist/components/dso-cursor-tooltip.js +1 -1
  251. package/dist/components/dso-dropdown-menu-group.js +1 -1
  252. package/dist/components/dso-dropdown-menu-item.js +1 -1
  253. package/dist/components/dso-dropdown-menu.js +1 -1
  254. package/dist/components/dso-grid-column.js +1 -1
  255. package/dist/components/dso-header.js +1 -1
  256. package/dist/components/dso-highlight-box.js +1 -1
  257. package/dist/components/dso-legend.js +1 -1
  258. package/dist/components/dso-list-button.js +1 -1
  259. package/dist/components/dso-map-controls.js +1 -1
  260. package/dist/components/dso-onboarding-tip.js +1 -1
  261. package/dist/components/dso-project-item.js +1 -1
  262. package/dist/components/dso-tijdreis-banner.js +1 -1
  263. package/dist/components/dso-viewer-grid.js +1 -1
  264. package/dist/components/expandable.js +1 -1
  265. package/dist/components/i18n.js +1 -1
  266. package/dist/components/icon-button.js +1 -1
  267. package/dist/components/info-button.js +1 -1
  268. package/dist/components/info.js +1 -1
  269. package/dist/components/label.js +1 -1
  270. package/dist/components/ozon-content-toggletip.js +1 -1
  271. package/dist/components/responsive-element.js +1 -1
  272. package/dist/components/scrollable.js +1 -1
  273. package/dist/components/slide-toggle.js +1 -1
  274. package/dist/components/table.js +1 -1
  275. package/dist/components/toggletip.controller.js +1 -0
  276. package/dist/components/tooltip.controller.js +1 -0
  277. package/dist/dso-toolkit/dso-toolkit.esm.js +1 -1
  278. package/dist/dso-toolkit/{p-342636b2.entry.js → p-0150c527.entry.js} +1 -1
  279. package/dist/dso-toolkit/p-0b1d6ae8.entry.js +1 -0
  280. package/dist/dso-toolkit/{p-99db12e8.entry.js → p-13e28f82.entry.js} +1 -1
  281. package/dist/dso-toolkit/p-179c804c.entry.js +1 -0
  282. package/dist/dso-toolkit/{p-a93cfad8.entry.js → p-19fa3db4.entry.js} +1 -1
  283. package/dist/dso-toolkit/{p-301cb792.entry.js → p-1ee5fdd2.entry.js} +1 -1
  284. package/dist/dso-toolkit/{p-f0b21f16.entry.js → p-1f197259.entry.js} +1 -1
  285. package/dist/dso-toolkit/{p-d92b4f7b.entry.js → p-2153bba4.entry.js} +1 -1
  286. package/dist/dso-toolkit/p-2sI1K6K0.js +3 -0
  287. package/dist/dso-toolkit/{p-fb2eb060.entry.js → p-300882d5.entry.js} +1 -1
  288. package/dist/dso-toolkit/{p-3ce055f8.entry.js → p-32b07ce7.entry.js} +1 -1
  289. package/dist/dso-toolkit/{p-6a6a38e6.entry.js → p-36a98cb8.entry.js} +1 -1
  290. package/dist/dso-toolkit/{p-f5575f84.entry.js → p-37c83fa7.entry.js} +1 -1
  291. package/dist/dso-toolkit/{p-8bd4637f.entry.js → p-3a6a1010.entry.js} +1 -1
  292. package/dist/dso-toolkit/p-3ed9443d.entry.js +1 -0
  293. package/dist/dso-toolkit/p-42bf0148.entry.js +1 -0
  294. package/dist/dso-toolkit/p-432f9847.entry.js +1 -0
  295. package/dist/dso-toolkit/{p-acb7b5c5.entry.js → p-4632a0df.entry.js} +1 -1
  296. package/dist/dso-toolkit/{p-b83b2fa7.entry.js → p-47e2a6ae.entry.js} +1 -1
  297. package/dist/dso-toolkit/{p-16288a6a.entry.js → p-4aa3ca6c.entry.js} +1 -1
  298. package/dist/dso-toolkit/{p-0f019b7c.entry.js → p-4d7fa0e9.entry.js} +1 -1
  299. package/dist/dso-toolkit/{p-84ca2384.entry.js → p-4ec77050.entry.js} +1 -1
  300. package/dist/dso-toolkit/{p-0099ff32.entry.js → p-52d7dd12.entry.js} +1 -1
  301. package/dist/dso-toolkit/{p-3628d830.entry.js → p-54036b31.entry.js} +1 -1
  302. package/dist/dso-toolkit/p-5612fca8.entry.js +1 -0
  303. package/dist/dso-toolkit/{p-768794e0.entry.js → p-5901d652.entry.js} +1 -1
  304. package/dist/dso-toolkit/{p-3098df1c.entry.js → p-63fce2aa.entry.js} +1 -1
  305. package/dist/dso-toolkit/{p-610341c7.entry.js → p-640306bf.entry.js} +1 -1
  306. package/dist/dso-toolkit/{p-64f2263c.entry.js → p-64331ac9.entry.js} +1 -1
  307. package/dist/dso-toolkit/{p-f6e9a1b4.entry.js → p-67bdfcdd.entry.js} +1 -1
  308. package/dist/dso-toolkit/p-6835e07d.entry.js +1 -0
  309. package/dist/dso-toolkit/{p-5018c559.entry.js → p-6a53b29f.entry.js} +1 -1
  310. package/dist/dso-toolkit/{p-48cd0276.entry.js → p-6a68177b.entry.js} +1 -1
  311. package/dist/dso-toolkit/{p-ab498200.entry.js → p-6f7241e5.entry.js} +1 -1
  312. package/dist/dso-toolkit/p-7119884a.entry.js +1 -0
  313. package/dist/dso-toolkit/{p-460e04c3.entry.js → p-780ebd6c.entry.js} +1 -1
  314. package/dist/dso-toolkit/{p-7eadab64.entry.js → p-7ebf7e11.entry.js} +1 -1
  315. package/dist/dso-toolkit/{p-5598c232.entry.js → p-7ff8aa45.entry.js} +2 -2
  316. package/dist/dso-toolkit/{p-e2d4f404.entry.js → p-8cbb00ac.entry.js} +1 -1
  317. package/dist/dso-toolkit/{p-0117fba0.entry.js → p-8eda69f2.entry.js} +1 -1
  318. package/dist/dso-toolkit/{p-ecc3eaab.entry.js → p-9aea5b98.entry.js} +1 -1
  319. package/dist/dso-toolkit/{p-ec50e32d.entry.js → p-9c96a21a.entry.js} +1 -1
  320. package/dist/dso-toolkit/p-B02Jy5YO.js +1 -0
  321. package/dist/dso-toolkit/p-B_Ud6lxQ.js +1 -0
  322. package/dist/dso-toolkit/p-C0I7oJkh.js +1 -0
  323. package/dist/dso-toolkit/p-CUqv0PSk.js +1 -0
  324. package/dist/dso-toolkit/p-DkZG4rwC.js +1 -0
  325. package/dist/dso-toolkit/{p-kDBsQgLI.js → p-Dksz1aH2.js} +1 -1
  326. package/dist/dso-toolkit/{p-DeuvCGGT.js → p-DoJpDsvb.js} +1 -1
  327. package/dist/dso-toolkit/p-DxsAk2iQ.js +1 -0
  328. package/dist/dso-toolkit/{p-58978006.entry.js → p-a00c540b.entry.js} +1 -1
  329. package/dist/dso-toolkit/{p-0438b8cb.entry.js → p-a0ac6345.entry.js} +1 -1
  330. package/dist/dso-toolkit/{p-f85b0396.entry.js → p-a3003466.entry.js} +1 -1
  331. package/dist/dso-toolkit/{p-7cea7c6f.entry.js → p-a43a81a4.entry.js} +1 -1
  332. package/dist/dso-toolkit/p-b093e2f2.entry.js +1 -0
  333. package/dist/dso-toolkit/{p-f17348e1.entry.js → p-b1fc14cc.entry.js} +1 -1
  334. package/dist/dso-toolkit/{p-cfccb614.entry.js → p-b26c5285.entry.js} +1 -1
  335. package/dist/dso-toolkit/{p-2e7acaf8.entry.js → p-bb0d9c4a.entry.js} +1 -1
  336. package/dist/dso-toolkit/{p-d2e60e72.entry.js → p-c0735ea5.entry.js} +1 -1
  337. package/dist/dso-toolkit/{p-a639c227.entry.js → p-c8ead3ad.entry.js} +1 -1
  338. package/dist/dso-toolkit/{p-c525f97c.entry.js → p-cafa54b4.entry.js} +1 -1
  339. package/dist/dso-toolkit/{p-f9490a3f.entry.js → p-cca237f7.entry.js} +1 -1
  340. package/dist/dso-toolkit/{p-ebf09749.entry.js → p-d64bd153.entry.js} +1 -1
  341. package/dist/dso-toolkit/{p-9fef9c1a.entry.js → p-d819abc5.entry.js} +1 -1
  342. package/dist/dso-toolkit/{p-02f97f93.entry.js → p-d8dfaacb.entry.js} +1 -1
  343. package/dist/dso-toolkit/{p-3fc897a1.entry.js → p-de86de0a.entry.js} +1 -1
  344. package/dist/dso-toolkit/{p-0085311a.entry.js → p-e2ff8b0c.entry.js} +1 -1
  345. package/dist/dso-toolkit/{p-272382d1.entry.js → p-e3d0debf.entry.js} +1 -1
  346. package/dist/dso-toolkit/{p-0cd1de97.entry.js → p-e4181a16.entry.js} +1 -1
  347. package/dist/dso-toolkit/{p-a0b21fb2.entry.js → p-e442fe62.entry.js} +1 -1
  348. package/dist/dso-toolkit/{p-918d8967.entry.js → p-e5cd6084.entry.js} +1 -1
  349. package/dist/dso-toolkit/p-ead6c401.entry.js +1 -0
  350. package/dist/dso-toolkit/{p-55a160ad.entry.js → p-f1047e57.entry.js} +1 -1
  351. package/dist/dso-toolkit/p-mhQu0fx2.js +1 -0
  352. package/dist/dso-toolkit/p-xDSTG4OU.js +1 -0
  353. package/dist/esm/{annotation-body-CfhN4FON.js → annotation-body-lbq2tmAQ.js} +1 -1
  354. package/dist/esm/{annotation-list-renvooi-values-BTPUEm3B.js → annotation-list-renvooi-values-iAOwX0lR.js} +1 -1
  355. package/dist/esm/{annotation-watcher-BO0jbdlD.js → annotation-watcher-COiqhqqD.js} +1 -1
  356. package/dist/esm/dso-accordion-section.entry.js +13 -4
  357. package/dist/esm/dso-accordion.entry.js +3 -3
  358. package/dist/esm/dso-action-list-item.entry.js +3 -3
  359. package/dist/esm/dso-action-list.entry.js +2 -2
  360. package/dist/esm/dso-advanced-select.entry.js +1 -1
  361. package/dist/esm/dso-alert_7.entry.js +45 -110
  362. package/dist/esm/dso-annotation-activiteit.entry.js +5 -5
  363. package/dist/esm/dso-annotation-gebiedsaanwijzing.entry.js +4 -4
  364. package/dist/esm/dso-annotation-kaart.entry.js +2 -2
  365. package/dist/esm/dso-annotation-locatie_2.entry.js +9 -9
  366. package/dist/esm/dso-annotation-omgevingsnormwaarde.entry.js +5 -5
  367. package/dist/esm/dso-attachments-counter_2.entry.js +3 -3
  368. package/dist/esm/dso-autosuggest.entry.js +4 -4
  369. package/dist/esm/dso-banner.entry.js +3 -3
  370. package/dist/esm/dso-button-group.entry.js +2 -2
  371. package/dist/esm/dso-card-container.entry.js +2 -2
  372. package/dist/esm/dso-card.entry.js +1 -1
  373. package/dist/esm/dso-contact-information.entry.js +1 -1
  374. package/dist/esm/dso-cursor-tooltip.entry.js +2 -2
  375. package/dist/esm/dso-date-picker.entry.js +1 -1
  376. package/dist/esm/dso-document-card.entry.js +1 -1
  377. package/dist/esm/dso-dropdown-menu-group.entry.js +2 -2
  378. package/dist/esm/dso-dropdown-menu-item.entry.js +2 -2
  379. package/dist/esm/dso-dropdown-menu.entry.js +3 -3
  380. package/dist/esm/dso-grid-column.entry.js +3 -4
  381. package/dist/esm/dso-header.entry.js +22 -6
  382. package/dist/esm/dso-hero-image.entry.js +1 -1
  383. package/dist/esm/dso-highlight-box.entry.js +2 -2
  384. package/dist/esm/dso-history-item.entry.js +1 -1
  385. package/dist/esm/dso-icon_2.entry.js +16 -45
  386. package/dist/esm/dso-info_3.entry.js +17 -41
  387. package/dist/esm/dso-input-range.entry.js +1 -1
  388. package/dist/esm/dso-label_3.entry.js +16 -27
  389. package/dist/esm/dso-legend-group.entry.js +2 -2
  390. package/dist/esm/dso-legend-item.entry.js +2 -2
  391. package/dist/esm/dso-legend.entry.js +3 -3
  392. package/dist/esm/dso-list-button.entry.js +2 -2
  393. package/dist/esm/dso-logo.entry.js +1 -1
  394. package/dist/esm/dso-map-base-layers.entry.js +2 -2
  395. package/dist/esm/dso-map-controls.entry.js +3 -3
  396. package/dist/esm/dso-map-layer-object.entry.js +2 -2
  397. package/dist/esm/dso-map-layer.entry.js +2 -2
  398. package/dist/esm/dso-map-message.entry.js +1 -1
  399. package/dist/esm/dso-map-overlays.entry.js +2 -2
  400. package/dist/esm/dso-mark-bar.entry.js +1 -1
  401. package/dist/esm/dso-modal.entry.js +2 -2
  402. package/dist/esm/dso-onboarding-tip.entry.js +2 -2
  403. package/dist/esm/dso-pagination.entry.js +1 -1
  404. package/dist/esm/dso-plekinfo-card.entry.js +2 -2
  405. package/dist/esm/dso-progress-indicator.entry.js +2 -2
  406. package/dist/esm/dso-project-item.entry.js +2 -2
  407. package/dist/esm/dso-responsive-element.entry.js +2 -2
  408. package/dist/esm/dso-scrollable.entry.js +3 -3
  409. package/dist/esm/dso-segmented-button.entry.js +1 -1
  410. package/dist/esm/dso-shopping-cart-item.entry.js +1 -1
  411. package/dist/esm/dso-shopping-cart.entry.js +1 -1
  412. package/dist/esm/dso-skiplink.entry.js +1 -1
  413. package/dist/esm/dso-survey-rating.entry.js +1 -1
  414. package/dist/esm/dso-tab.entry.js +1 -1
  415. package/dist/esm/dso-tabs.entry.js +1 -1
  416. package/dist/esm/dso-tijdreis-banner.entry.js +2 -2
  417. package/dist/esm/dso-toolkit.js +3 -3
  418. package/dist/esm/dso-tree-view.entry.js +1 -1
  419. package/dist/esm/dso-viewer-grid.entry.js +3 -3
  420. package/dist/esm/dsot-document-component-demo.entry.js +1 -1
  421. package/dist/{bundle/p-CCOI5nUo.js → esm/i18n-xDSTG4OU.js} +28 -1
  422. package/dist/esm/{index-CieBNbUH.js → index-2sI1K6K0.js} +76 -33
  423. package/dist/esm/{index-B0pTkGRp.js → index-LpJ181Xi.js} +1 -1
  424. package/dist/esm/loader.js +2 -2
  425. package/dist/esm/{parse-wijzigactie-from-node.function-DhCCxNJH.js → parse-wijzigactie-from-node.function-CrOTV1B6.js} +1 -1
  426. package/dist/esm/toggletip.controller-KNf1n4og.js +60 -0
  427. package/dist/esm/tooltip.controller-RLM8ixUv.js +76 -0
  428. package/dist/esm/{tooltip.functional-component-chN-aNlU.js → tooltip.functional-component-3fxPwYtA.js} +1 -1
  429. package/dist/esm/{wrap-wijzigactie.functional-component-BYWldnbn.js → wrap-wijzigactie.functional-component-C-ha4z-Y.js} +1 -1
  430. package/dist/types/components/accordion/accordion.d.ts +3 -0
  431. package/dist/types/components/accordion/components/accordion-section.d.ts +4 -0
  432. package/dist/types/components/action-list/action-list.d.ts +3 -0
  433. package/dist/types/components/action-list/components/action-list-item.d.ts +3 -0
  434. package/dist/types/components/alert/alert.d.ts +3 -0
  435. package/dist/types/components/annotation/annotation-activiteit/annotation-activiteit.d.ts +0 -3
  436. package/dist/types/components/annotation/annotation-gebiedsaanwijzing/annotation-gebiedsaanwijzing.d.ts +0 -3
  437. package/dist/types/components/annotation/annotation-locatie/annotation-locatie.d.ts +0 -3
  438. package/dist/types/components/annotation/annotation-omgevingsnormwaarde/annotation-omgevingsnormwaarde.d.ts +0 -5
  439. package/dist/types/components/autosuggest/autosuggest.d.ts +3 -0
  440. package/dist/types/components/badge/badge.d.ts +2 -8
  441. package/dist/types/components/banner/banner.d.ts +3 -0
  442. package/dist/types/components/button-group/button-group.d.ts +3 -0
  443. package/dist/types/components/card-container/card-container.d.ts +3 -0
  444. package/dist/types/components/cursor-tooltip/cursor-tooltip.d.ts +3 -0
  445. package/dist/types/components/document-component/document-component.d.ts +2 -0
  446. package/dist/types/components/dropdown-menu/dropdown-menu-group/dropdown-menu-group.d.ts +3 -0
  447. package/dist/types/components/dropdown-menu/dropdown-menu-item/dropdown-menu-item.d.ts +3 -0
  448. package/dist/types/components/dropdown-menu/dropdown-menu.d.ts +3 -0
  449. package/dist/types/components/expandable/expandable.d.ts +3 -0
  450. package/dist/types/components/header/header.d.ts +8 -0
  451. package/dist/types/components/highlight-box/highlight-box.d.ts +4 -0
  452. package/dist/types/components/icon-button/icon-button.d.ts +2 -7
  453. package/dist/types/components/image-overlay/image-overlay.d.ts +5 -0
  454. package/dist/types/components/info/info.d.ts +3 -0
  455. package/dist/types/components/info-button/info-button.d.ts +4 -2
  456. package/dist/types/components/label/label.d.ts +5 -2
  457. package/dist/types/components/legend/legend.d.ts +3 -0
  458. package/dist/types/components/list-button/list-button.d.ts +3 -0
  459. package/dist/types/components/map-controls/map-controls.d.ts +3 -0
  460. package/dist/types/components/onboarding-tip/onboarding-tip.d.ts +4 -0
  461. package/dist/types/components/ozon-content/components/ozon-content-toggletip/ozon-content-toggletip.d.ts +5 -2
  462. package/dist/types/components/project-item/project-item.d.ts +6 -0
  463. package/dist/types/components/responsive-element/responsive-element.d.ts +3 -0
  464. package/dist/types/components/scrollable/scrollable.d.ts +3 -0
  465. package/dist/types/components/slide-toggle/slide-toggle.d.ts +3 -0
  466. package/dist/types/components/table/table.d.ts +4 -0
  467. package/dist/types/components/tijdreis-banner/tijdreis-banner.d.ts +4 -0
  468. package/dist/types/components/viewer-grid/viewer-grid.d.ts +3 -7
  469. package/dist/types/components.d.ts +1 -13
  470. package/dist/types/functional-components/tooltip/toggletip.controller.d.ts +31 -0
  471. package/dist/types/functional-components/tooltip/tooltip.controller.d.ts +30 -0
  472. package/dist/types/stencil-public-runtime.d.ts +12 -0
  473. package/loader/index.d.ts +1 -1
  474. package/package.json +10 -10
  475. package/dist/dso-toolkit/p-0fb7714e.entry.js +0 -1
  476. package/dist/dso-toolkit/p-55668cd5.entry.js +0 -1
  477. package/dist/dso-toolkit/p-6a42dae9.entry.js +0 -1
  478. package/dist/dso-toolkit/p-947abc8e.entry.js +0 -1
  479. package/dist/dso-toolkit/p-C32sfSnK.js +0 -1
  480. package/dist/dso-toolkit/p-C7Q97EIG.js +0 -1
  481. package/dist/dso-toolkit/p-CCOI5nUo.js +0 -1
  482. package/dist/dso-toolkit/p-CieBNbUH.js +0 -2
  483. package/dist/dso-toolkit/p-DQbnZnP0.js +0 -1
  484. package/dist/dso-toolkit/p-DxGQgnCh.js +0 -1
  485. package/dist/dso-toolkit/p-a98b5b00.entry.js +0 -1
  486. package/dist/dso-toolkit/p-b6a747b3.entry.js +0 -1
  487. package/dist/dso-toolkit/p-be6bbcf3.entry.js +0 -1
  488. package/dist/dso-toolkit/p-d71f20c0.entry.js +0 -1
  489. package/dist/dso-toolkit/p-de3ece98.entry.js +0 -1
  490. package/dist/dso-toolkit/p-e9bcbf0c.entry.js +0 -1
  491. package/dist/dso-toolkit/p-jq9f4Z3R.js +0 -1
@@ -2,6 +2,9 @@ import { autoUpdate, computePosition, flip, offset, size } from "@floating-ui/do
2
2
  import { Host, forceUpdate, h, } from "@stencil/core";
3
3
  import { createStore } from "@stencil/store";
4
4
  import { v4 as uuidv4 } from "uuid";
5
+ /**
6
+ * @slot - Menu items and content displayed inside the dropdown menu options list.
7
+ */
5
8
  export class DropdownMenu {
6
9
  constructor() {
7
10
  /**
@@ -200,7 +203,7 @@ export class DropdownMenu {
200
203
  }
201
204
  render() {
202
205
  const buttonId = uuidv4();
203
- return (h(Host, { key: 'd6eecca58b117e847ed5e2d6c4749ccf1cf45ade', onFocusout: this.focusOutListener, onKeyDown: this.keyDownHandler }, this.label && (h("button", { key: '7bd4e3718dd56a7ed820fd7a0bff73299387bca0', id: buttonId, class: `dso-${this.variant}`, type: "button", onClick: () => this.toggleOptions(), "aria-expanded": this.open.toString(), "aria-haspopup": "menu", ref: (element) => (this.button = element) }, this.label, h("dso-icon", { key: 'f3db2d02fb532d0dce562de99447be5d2ba93111', icon: this.open ? "chevron-up" : "chevron-down" }))), h("div", { key: 'b599fc40124282b4afd1f78e346dd736717ece81', popover: "manual", class: "dso-dropdown-options", "aria-labelledby": buttonId, role: "menu", ref: (element) => (this.popoverElement = element) }, h("dso-scrollable", { key: 'ab2517807d8a940ce8d4fae40f9d657b416724dc' }, h("slot", { key: '746e632a7bf1e9e7d585dcf71660ef2944799db8' })))));
206
+ return (h(Host, { key: '898e03c9fb8dcd98b45cc42d05fe4f29cb408d07', onFocusout: this.focusOutListener, onKeyDown: this.keyDownHandler }, this.label && (h("button", { key: '94945d023367cbcd32d3d774fad82ec2f17ab50f', id: buttonId, class: `dso-${this.variant}`, type: "button", onClick: () => this.toggleOptions(), "aria-expanded": this.open.toString(), "aria-haspopup": "menu", ref: (element) => (this.button = element) }, this.label, h("dso-icon", { key: '1ff9abf3f6f67587277d80514fb02c172dd5e65b', icon: this.open ? "chevron-up" : "chevron-down" }))), h("div", { key: 'f1eca3859c3ba0cedd96a1631d155b0db5b401f9', popover: "manual", class: "dso-dropdown-options", "aria-labelledby": buttonId, role: "menu", ref: (element) => (this.popoverElement = element) }, h("dso-scrollable", { key: '7943c1d3063bc8972027f6e3b8dd0dd42561c2c9' }, h("slot", { key: '95f224579f8a636f03d0f6bf185105d005696297' })))));
204
207
  }
205
208
  static get is() { return "dso-dropdown-menu"; }
206
209
  static get encapsulation() { return "shadow"; }
@@ -1,5 +1,8 @@
1
1
  import { Host, h, } from "@stencil/core";
2
2
  import { clsx } from "clsx";
3
+ /**
4
+ * @slot - Content to be shown or hidden when the expandable is toggled.
5
+ */
3
6
  export class Expandable {
4
7
  constructor() {
5
8
  /**
@@ -36,10 +39,10 @@ export class Expandable {
36
39
  }
37
40
  }
38
41
  render() {
39
- return (h(Host, { key: '27aa43cd7a129ede2ac42e1f36957be51497bb80', "aria-hidden": this.open ? "false" : "true", class: clsx({
42
+ return (h(Host, { key: 'a0469ae8e68f3d121fcdab6fc08b8a92018d9ab0', "aria-hidden": this.open ? "false" : "true", class: clsx({
40
43
  "dso-animate-ready": this.enableAnimation,
41
44
  "dso-hide": this.isClosed,
42
- }) }, h("div", { key: 'b9e104e23b5eeceebd860c607cb9c68dc1506184', class: "slot-container" }, h("slot", { key: 'd623667f451248271ebf78ee7896a51936e4c0cd' }))));
45
+ }) }, h("div", { key: '1fbfd59136f816df3d8b44c6c7dd54c8201435aa', class: "slot-container" }, h("slot", { key: '6e7247668ff0ea70589c3b654a2b52b22379a717' }))));
43
46
  }
44
47
  static get is() { return "dso-expandable"; }
45
48
  static get encapsulation() { return "shadow"; }
@@ -28,8 +28,7 @@ export class GridColumn {
28
28
  event.preventDefault();
29
29
  this.dsoClose.emit({ originalEvent: event });
30
30
  };
31
- this.handleDialogClose = (event) => {
32
- this.dsoClose.emit({ originalEvent: event });
31
+ this.handleDialogClose = () => {
33
32
  if (this.overlayActive && this.dialogElement && !this.dialogElement.open) {
34
33
  this.dialogElement.showModal();
35
34
  }
@@ -88,7 +87,7 @@ export class GridColumn {
88
87
  this.resizeObserver = undefined;
89
88
  }
90
89
  render() {
91
- return (h(Host, { key: 'e02e6fcc5aa1c2e279c36cfab5bf661df6099c49' }, this.overlayActive ? (h("dialog", { class: "grid-column-content", ref: (element) => (this.dialogElement = element), onClick: this.handleDialogClick, onCancel: this.handleDialogCancel, onClose: this.handleDialogClose }, h("slot", null))) : (h("div", { class: "grid-column-content" }, h("slot", null)))));
90
+ return (h(Host, { key: '603befb14663a71590e342c590f3ebde4d08be42' }, this.overlayActive ? (h("dialog", { class: "grid-column-content", ref: (element) => (this.dialogElement = element), onClick: this.handleDialogClick, onCancel: this.handleDialogCancel, onClose: this.handleDialogClose }, h("slot", null))) : (h("div", { class: "grid-column-content" }, h("slot", null)))));
92
91
  }
93
92
  static get is() { return "dso-grid-column"; }
94
93
  static get encapsulation() { return "shadow"; }
@@ -18,9 +18,6 @@
18
18
  inline-size: 100%;
19
19
  }
20
20
 
21
- :host(:not([is-compact])) .dso-header {
22
- align-items: center;
23
- }
24
21
  :host(:not([is-compact])) .dropdown-menu .dropdown-menu-options {
25
22
  inline-size: 375px;
26
23
  }
@@ -38,6 +35,7 @@ div[popover] {
38
35
  border-block-end: 1px solid #ccc;
39
36
  display: flex;
40
37
  flex-wrap: wrap;
38
+ align-items: center;
41
39
  position: relative;
42
40
  }
43
41
  .dso-header .dso-nav {
@@ -53,7 +51,6 @@ div[popover] {
53
51
 
54
52
  .dso-header-session {
55
53
  display: flex;
56
- align-items: center;
57
54
  margin-inline-start: auto;
58
55
  }
59
56
  .dso-header-session .profile .dso-tertiary,
@@ -79,16 +76,20 @@ div[popover] {
79
76
  .dso-header-session .help .dso-tertiary:hover {
80
77
  text-decoration: underline;
81
78
  }
82
- .dso-header-session .profile + .logout,
83
- .dso-header-session .logout + .help,
84
- .dso-header-session .login + .help {
85
- border-inline-start: 3px solid #ccc;
86
- margin-inline-start: 8px;
87
- padding-inline-start: 8px;
88
- }
89
- .dso-header-session .help a,
90
- .dso-header-session .help button {
91
- display: flex;
79
+ @media screen and (min-width: 481px) {
80
+ .dso-header-session .profile + .logout,
81
+ .dso-header-session .logout + .help,
82
+ .dso-header-session .login + .help, .dso-header-session:has(*) + .dropdown {
83
+ border-inline-start: 3px solid #ccc;
84
+ block-size: 20px;
85
+ margin-inline-start: 8px;
86
+ padding-inline-start: 8px;
87
+ }
88
+ }
89
+ @media screen and (min-width: 481px) {
90
+ .dso-header-session .help a {
91
+ gap: 4px;
92
+ }
92
93
  }
93
94
 
94
95
  .dso-navbar {
@@ -109,6 +110,7 @@ div[popover] {
109
110
  line-height: normal;
110
111
  letter-spacing: inherit;
111
112
  position: relative;
113
+ padding-inline-start: 0;
112
114
  }
113
115
  .dropdown-menu button::after {
114
116
  margin-inline-start: 8px;
@@ -212,6 +214,21 @@ div[popover] {
212
214
  .dropdown-menu .dropdown-menu-options ul li.dso-active a {
213
215
  font-weight: 600;
214
216
  }
217
+ .dropdown-menu .dropdown-menu-options ul li a.dso-tertiary,
218
+ .dropdown-menu .dropdown-menu-options ul li button.dso-tertiary {
219
+ align-items: center;
220
+ display: flex;
221
+ gap: 10px;
222
+ }
223
+ .dropdown-menu .dropdown-menu-options ul li a.dso-tertiary dso-icon,
224
+ .dropdown-menu .dropdown-menu-options ul li button.dso-tertiary dso-icon {
225
+ margin-inline-start: 0;
226
+ order: -1;
227
+ }
228
+ .dropdown-menu .dropdown-menu-options ul li a.dso-tertiary span,
229
+ .dropdown-menu .dropdown-menu-options ul li button.dso-tertiary span {
230
+ order: 0;
231
+ }
215
232
  .dropdown-menu .dropdown-menu-options ul li + li {
216
233
  border-block-start: 1px solid #ccc;
217
234
  }
@@ -9,6 +9,10 @@ import { isModifiedEvent } from "../../utils/is-modified-event";
9
9
  import { translations } from "./header.i18n";
10
10
  import { MenuItem } from "./menu-item.functional-component";
11
11
  const minDesktopViewportWidth = 992;
12
+ const minMobileViewportWidth = 480;
13
+ /**
14
+ * @slot logo - A slot to place the logo element (e.g. `dso-logo`) in.
15
+ */
12
16
  export class Header {
13
17
  constructor() {
14
18
  /**
@@ -129,6 +133,9 @@ export class Header {
129
133
  get isCompact() {
130
134
  return this.compact === "always" || window.innerWidth < minDesktopViewportWidth;
131
135
  }
136
+ get isMobileViewport() {
137
+ return window.innerWidth <= minMobileViewportWidth;
138
+ }
132
139
  /**
133
140
  * Before determining the visible menu items, all the menu items are rendered (including the dropdown menu item and the user home menu item).
134
141
  * Then the visible menu items are calculated in componentDidRender() and ONLY when the visibleMenuItemsCount is undefined.
@@ -271,7 +278,7 @@ export class Header {
271
278
  }
272
279
  }
273
280
  render() {
274
- return (h(Host, { key: '70ed6e8dc9a02875dd773c205af3549b324dfb8e', "is-compact": this.isCompact }, h("div", { key: 'ab3f94264421bca5caec2ae59f5b40f6934a440e', class: "dso-header" }, h("div", { key: 'f092ce977dcd3acd0d9620af8506cb138ee1f0a7', class: "logo-container" }, h("slot", { key: '898f5c094fd6dd18ec4e843a240c31081e2a9253', name: "logo" })), this.isCompact ? this.renderCompact() : this.renderNormal())));
281
+ return (h(Host, { key: 'cb1ed3299e9c55352cab476696bd2d6ad94cbd54', "is-compact": this.isCompact }, h("div", { key: '218cefd65ca18da0237e39fba0aba06259119254', class: "dso-header" }, h("div", { key: 'c7681803acf271892e46819e3d9568ebc3ed849a', class: "logo-container" }, h("slot", { key: 'cba4cf96314214ee2af03501ede754c879d31fec', name: "logo" })), this.renderHeaderSession(), this.isCompact ? this.renderCompact() : this.renderNormal())));
275
282
  }
276
283
  tabbables(withButton) {
277
284
  const tabbables = this.dropdownElement ? tabbable(this.dropdownElement) : [];
@@ -287,12 +294,24 @@ export class Header {
287
294
  this.cleanUp = undefined;
288
295
  }
289
296
  }
297
+ renderHelp() {
298
+ return this.helpUrl ? (h("a", { href: this.helpUrl, class: "dso-tertiary", onClick: (e) => this.clickHandler(e, "help", { url: this.helpUrl }) }, h("span", null, this.text("help")), h("dso-icon", { icon: "help-outline" }))) : (h("button", { class: "dso-tertiary", type: "button", onClick: (e) => this.clickHandler(e, "help") }, h("span", null, this.text("help")), h("dso-icon", { icon: "help-outline" })));
299
+ }
300
+ renderLogin(tertiary = true) {
301
+ return this.loginUrl ? (h("a", { href: this.loginUrl, class: tertiary ? "dso-tertiary" : undefined, onClick: (e) => this.clickHandler(e, "login", { url: this.loginUrl }) }, h("dso-icon", { icon: "user-outline" }), h("span", null, this.text("login")))) : (h("button", { class: tertiary ? "dso-tertiary" : undefined, type: "button", onClick: (e) => this.clickHandler(e, "login") }, h("dso-icon", { icon: "user-outline" }), h("span", null, this.text("login"))));
302
+ }
303
+ renderLogout() {
304
+ return this.logoutUrl ? (h("a", { href: this.logoutUrl, class: "dso-tertiary", onClick: (e) => this.clickHandler(e, "logout", { url: this.logoutUrl }) }, this.text("logout"))) : (h("button", { class: "dso-tertiary", type: "button", onClick: (e) => this.clickHandler(e, "logout") }, this.text("logout")));
305
+ }
306
+ renderHeaderSession() {
307
+ return (h("div", { class: "dso-header-session" }, !this.isCompact && (h(Fragment, null, this.userProfileUrl && this.userProfileName && this.authStatus === "loggedIn" && (h("div", { class: "profile" }, h("a", { href: this.userProfileUrl, class: "dso-tertiary", onClick: (e) => this.clickHandler(e, "profile", { url: this.userProfileUrl }) }, this.userProfileName))), this.authStatus === "loggedOut" && h("div", { class: "login" }, this.renderLogin()), this.authStatus === "loggedIn" && h("div", { class: "logout" }, this.renderLogout()))), this.showHelp && !this.isMobileViewport && h("div", { class: "help" }, this.renderHelp())));
308
+ }
290
309
  renderCompact() {
291
- return ((this.mainMenu.length > 0 || this.userHomeUrl || this.authStatus !== "none") && (h("div", { class: "dropdown" }, h("div", { class: "dropdown-menu", onFocusout: this.focusOutListener, ref: (element) => (this.dropdownElement = element) }, h("button", { id: uuidv4(), type: "button", onClick: () => this.toggleOptions(), ref: (element) => (this.dropdownButtonElement = element), "aria-haspopup": "menu", "aria-expanded": this.open ? "true" : "false" }, h("span", null, this.text("menu")), h("dso-icon", { icon: "chevron-down" })), h("div", { popover: "manual", ref: (element) => (this.popoverElement = element) }, h("dso-scrollable", { class: "dropdown-menu-options", role: "menu", "aria-labelledby": this.dropdownButtonElement?.id, onKeyDown: this.keyDownHandler }, h("ul", { role: "group" }, this.mainMenu.map((menuItem) => (h(MenuItem, { item: menuItem, onClick: (e) => this.clickHandler(e, "menuItem", { menuItem }), key: menuItem.label }))), this.userHomeUrl && (h("li", { role: "menuitem" }, h("a", { href: this.userHomeUrl, onClick: (e) => this.clickHandler(e, "userHome", { url: this.userHomeUrl }) }, this.text("userHome")))), this.userProfileUrl && this.userProfileName && this.authStatus === "loggedIn" && (h("li", { role: "menuitem" }, h("a", { href: this.userProfileUrl, onClick: (e) => this.clickHandler(e, "profile", { url: this.userProfileUrl }) }, this.userProfileName, h("span", { class: "profile-label" }, " - Mijn profiel")))), this.authStatus === "loggedOut" && (h("li", { role: "menuitem" }, this.loginUrl ? (h("a", { href: this.loginUrl, onClick: (e) => this.clickHandler(e, "login", { url: this.loginUrl }) }, this.text("login"))) : (h("button", { type: "button", onClick: (e) => this.clickHandler(e, "login") }, this.text("login"))))), this.authStatus === "loggedIn" && (h("li", { role: "menuitem" }, this.logoutUrl ? (h("a", { href: this.logoutUrl, onClick: (e) => this.clickHandler(e, "logout", { url: this.logoutUrl }) }, this.text("logout"))) : (h("button", { type: "button", onClick: (e) => this.clickHandler(e, "logout") }, this.text("logout"))))), this.showHelp && (h("li", { role: "menuitem" }, this.helpUrl ? (h("a", { href: this.helpUrl, class: "dso-tertiary", onClick: (e) => this.clickHandler(e, "help", { url: this.helpUrl }) }, h("span", null, this.text("help")), h("dso-icon", { icon: "help-outline" }))) : (h("button", { type: "button", class: "dso-tertiary", onClick: (e) => this.clickHandler(e, "help") }, h("span", null, this.text("help")), h("dso-icon", { icon: "help-outline" }))))))))))));
310
+ return ((this.mainMenu.length > 0 || this.userHomeUrl || this.authStatus !== "none") && (h("div", { class: "dropdown" }, h("div", { class: "dropdown-menu", onFocusout: this.focusOutListener, ref: (element) => (this.dropdownElement = element) }, h("button", { id: uuidv4(), type: "button", onClick: () => this.toggleOptions(), ref: (element) => (this.dropdownButtonElement = element), "aria-haspopup": "menu", "aria-expanded": this.open ? "true" : "false" }, h("span", null, this.text("menu")), h("dso-icon", { icon: "chevron-down" })), h("div", { popover: "manual", ref: (element) => (this.popoverElement = element) }, h("dso-scrollable", { class: "dropdown-menu-options", role: "menu", "aria-labelledby": this.dropdownButtonElement?.id, onKeyDown: this.keyDownHandler }, h("ul", { role: "group" }, this.mainMenu.map((menuItem) => (h(MenuItem, { item: menuItem, onClick: (e) => this.clickHandler(e, "menuItem", { menuItem }), key: menuItem.label }))), this.userHomeUrl && (h("li", { role: "menuitem" }, h("a", { href: this.userHomeUrl, onClick: (e) => this.clickHandler(e, "userHome", { url: this.userHomeUrl }) }, this.text("userHome")))), this.userProfileUrl && this.userProfileName && this.authStatus === "loggedIn" && (h("li", { role: "menuitem" }, h("a", { href: this.userProfileUrl, onClick: (e) => this.clickHandler(e, "profile", { url: this.userProfileUrl }) }, this.userProfileName, h("span", { class: "profile-label" }, " - Mijn profiel")))), this.authStatus === "loggedIn" && h("li", { role: "menuitem" }, this.renderLogout()), this.authStatus === "loggedOut" && h("li", { role: "menuitem" }, this.renderLogin()), this.showHelp && this.isMobileViewport && h("li", { role: "menuitem" }, this.renderHelp()))))))));
292
311
  }
293
312
  renderNormal() {
294
313
  this.menuItemElementRefs = [];
295
- return (h(Fragment, null, h("div", { class: "dso-header-session" }, this.userProfileUrl && this.userProfileName && this.authStatus === "loggedIn" && (h("div", { class: "profile" }, h("a", { href: this.userProfileUrl, class: "dso-tertiary", onClick: (e) => this.clickHandler(e, "profile", { url: this.userProfileUrl }) }, this.userProfileName))), this.authStatus === "loggedOut" && (h("div", { class: "login" }, this.loginUrl ? (h("a", { href: this.loginUrl, class: "dso-tertiary", onClick: (e) => this.clickHandler(e, "login", { url: this.loginUrl }) }, this.text("login"))) : (h("button", { class: "dso-tertiary", type: "button", onClick: (e) => this.clickHandler(e, "login") }, this.text("login"))))), this.authStatus === "loggedIn" && (h("div", { class: "logout" }, this.logoutUrl ? (h("a", { href: this.logoutUrl, class: "dso-tertiary", onClick: (e) => this.clickHandler(e, "logout", { url: this.logoutUrl }) }, this.text("logout"))) : (h("button", { class: "dso-tertiary", type: "button", onClick: (e) => this.clickHandler(e, "logout") }, this.text("logout"))))), this.showHelp && (h("div", { class: "help" }, this.helpUrl ? (h("a", { href: this.helpUrl, class: "dso-tertiary", onClick: (e) => this.clickHandler(e, "help", { url: this.helpUrl }) }, h("span", null, this.text("help")), h("dso-icon", { icon: "help-outline" }))) : (h("button", { class: "dso-tertiary", type: "button", onClick: (e) => this.clickHandler(e, "help") }, h("span", null, this.text("help")), h("dso-icon", { icon: "help-outline" })))))), (this.mainMenu.length > 0 || this.userHomeUrl) && (h("nav", { class: "dso-navbar" }, h("ul", { class: clsx("dso-nav", "dso-nav-main", { ready: this.visibleMenuItemsCount !== undefined }), ref: (element) => (this.navElement = element) }, this.visibleMainMenuItems.map((menuItem, i) => (h(MenuItem, { item: menuItem, onClick: (e) => this.clickHandler(e, "menuItem", { menuItem }), key: menuItem.label, ref: (el) => (this.menuItemElementRefs[i] = el) }))), (this.visibleMenuItemsCount === undefined || this.hiddenMainMenuItems.length > 0) && (h("li", { "aria-hidden": this.visibleMenuItemsCount === undefined, ref: (el) => (this.dropdownMenuItemElementRef = el), class: "dropdown-menu-item" }, h("div", { class: "dropdown-menu", onFocusout: this.focusOutListener, ref: (element) => (this.dropdownElement = element) }, h("button", { id: uuidv4(), type: "button", onClick: () => this.toggleOptions(), ref: (element) => (this.dropdownButtonElement = element), "aria-haspopup": "menu", "aria-expanded": this.open ? "true" : "false" }, h("span", null, this.text("overflowMenu")), h("dso-icon", { icon: "chevron-down", class: "main-menu-item-icon" })), h("div", { popover: "manual", ref: (element) => (this.popoverElement = element) }, h("div", { class: "dropdown-menu-options", role: "menu", "aria-labelledby": this.dropdownButtonElement?.id, onKeyDown: this.keyDownHandler }, h("ul", null, this.hiddenMainMenuItems.map((menuItem) => (h(MenuItem, { item: menuItem, onClick: (e) => this.clickHandler(e, "menuItem", { menuItem }), key: menuItem.label }))))))))), this.userHomeUrl && (h("li", { class: clsx("menu-user-home", { "dso-active": this.userHomeActive }), ref: (el) => (this.userHomeMenuItemElementRef = el) }, h("a", { href: this.userHomeUrl, "aria-current": this.userHomeActive ? "page" : undefined, onClick: (e) => this.clickHandler(e, "userHome", { url: this.userHomeUrl }) }, h("dso-icon", { icon: "user-outline", class: "main-menu-item-icon" }), this.text("userHome")))))))));
314
+ return (h(Fragment, null, (this.mainMenu.length > 0 || this.userHomeUrl) && (h("nav", { class: "dso-navbar" }, h("ul", { class: clsx("dso-nav", "dso-nav-main", { ready: this.visibleMenuItemsCount !== undefined }), ref: (element) => (this.navElement = element) }, this.visibleMainMenuItems.map((menuItem, i) => (h(MenuItem, { item: menuItem, onClick: (e) => this.clickHandler(e, "menuItem", { menuItem }), key: menuItem.label, ref: (el) => (this.menuItemElementRefs[i] = el) }))), (this.visibleMenuItemsCount === undefined || this.hiddenMainMenuItems.length > 0) && (h("li", { "aria-hidden": this.visibleMenuItemsCount === undefined, ref: (el) => (this.dropdownMenuItemElementRef = el), class: "dropdown-menu-item" }, h("div", { class: "dropdown-menu", onFocusout: this.focusOutListener, ref: (element) => (this.dropdownElement = element) }, h("button", { id: uuidv4(), type: "button", onClick: () => this.toggleOptions(), ref: (element) => (this.dropdownButtonElement = element), "aria-haspopup": "menu", "aria-expanded": this.open ? "true" : "false" }, h("span", null, this.text("overflowMenu")), h("dso-icon", { icon: "chevron-down", class: "main-menu-item-icon" })), h("div", { popover: "manual", ref: (element) => (this.popoverElement = element) }, h("div", { class: "dropdown-menu-options", role: "menu", "aria-labelledby": this.dropdownButtonElement?.id, onKeyDown: this.keyDownHandler }, h("ul", null, this.hiddenMainMenuItems.map((menuItem) => (h(MenuItem, { item: menuItem, onClick: (e) => this.clickHandler(e, "menuItem", { menuItem }), key: menuItem.label }))))))))), this.userHomeUrl && (h("li", { class: clsx("menu-user-home", { "dso-active": this.userHomeActive }), ref: (el) => (this.userHomeMenuItemElementRef = el) }, h("a", { href: this.userHomeUrl, "aria-current": this.userHomeActive ? "page" : undefined, onClick: (e) => this.clickHandler(e, "userHome", { url: this.userHomeUrl }) }, h("dso-icon", { icon: "user-outline", class: "main-menu-item-icon" }), this.text("userHome")))))))));
296
315
  }
297
316
  static get is() { return "dso-header"; }
298
317
  static get encapsulation() { return "shadow"; }
@@ -1,8 +1,12 @@
1
1
  import { Host, h } from "@stencil/core";
2
+ /**
3
+ * @slot - A slot to place content inside the highlight box.
4
+ * @slot icon - A slot to display an icon inside the step counter instead of a step number.
5
+ */
2
6
  export class HighlightBox {
3
7
  render() {
4
8
  const hasCounter = this.step || !!this.element.querySelector("[slot=icon]");
5
- return (h(Host, { key: 'a31042efc0e6676e06f08765d05320c2debe0b87', "has-counter": hasCounter }, hasCounter && (h("div", { key: 'ae5f42277bd801d07ac66467c652e211c8e8fe14', class: "dso-step-counter", "aria-hidden": "true" }, this.step ?? h("slot", { key: '7d8424c37b64775e83f34eb3f2165e8965c428bd', name: "icon" }))), h("slot", { key: '22edb75de8bb54565157a80a7be1ab82b7b12773' })));
9
+ return (h(Host, { key: '91d00560a3617308d002684f4c67c940b16dc1c7', "has-counter": hasCounter }, hasCounter && (h("div", { key: 'ed7997c8e77b13b44e5a567ee31116ba937fc6c2', class: "dso-step-counter", "aria-hidden": "true" }, this.step ?? h("slot", { key: '4993d27042a6a7839da8fd679625dbe17a1cd3b2', name: "icon" }))), h("slot", { key: 'bfab78815718775c72114b51730d229c1d2b3615' })));
6
10
  }
7
11
  static get is() { return "dso-highlight-box"; }
8
12
  static get encapsulation() { return "shadow"; }
@@ -1,10 +1,15 @@
1
1
  import { h } from "@stencil/core";
2
- import { positionTooltip } from "../../functional-components/tooltip/position-tooltip.function";
2
+ import { TooltipController } from "../../functional-components/tooltip/tooltip.controller";
3
3
  import { Tooltip } from "../../functional-components/tooltip/tooltip.functional-component";
4
4
  export class IconButton {
5
5
  constructor() {
6
- this.lastClickTime = 0;
7
- this.tooltipShowDelay = 500;
6
+ this.tooltipController = new TooltipController({
7
+ getReferenceElement: () => this.buttonElRef,
8
+ getTipElement: () => this.tooltipElRef,
9
+ getTipArrowElement: () => this.tooltipArrowElRef,
10
+ getPlacement: () => this.tooltipPlacement,
11
+ showDelay: 500,
12
+ });
8
13
  /**
9
14
  * The variant of the Icon Button.
10
15
  */
@@ -21,43 +26,13 @@ export class IconButton {
21
26
  if (this.disabled) {
22
27
  return;
23
28
  }
24
- // Don't show the tooltip if the button is clicked within 500ms of the last click
25
- if (Date.now() - this.lastClickTime < this.tooltipShowDelay) {
26
- return;
27
- }
28
- this.clearToolTipTimeout();
29
- this.tooltipTimeout = window.setTimeout(() => {
30
- if (!this.tooltipElRef?.isConnected) {
31
- return;
32
- }
33
- this.tooltipElRef?.showPopover();
34
- if (!this.cleanUpFunction && this.buttonElRef && this.tooltipElRef && this.tooltipArrowElRef) {
35
- this.cleanUpFunction = positionTooltip({
36
- referenceElement: this.buttonElRef,
37
- tipRef: this.tooltipElRef,
38
- tipArrowRef: this.tooltipArrowElRef,
39
- placementTip: this.tooltipPlacement,
40
- topPositionSmallViewPort: false,
41
- halfMainAxisOffset: false,
42
- forceVisible: true,
43
- });
44
- }
45
- }, this.tooltipShowDelay);
46
- };
47
- this.clearToolTipTimeout = () => {
48
- if (this.tooltipTimeout) {
49
- clearTimeout(this.tooltipTimeout);
50
- }
29
+ this.tooltipController.show();
51
30
  };
52
31
  this.handleHideTooltip = () => {
53
- this.clearToolTipTimeout();
54
- if (this.tooltipElRef?.isConnected && this.tooltipElRef.matches(":popover-open")) {
55
- this.tooltipElRef.hidePopover();
56
- }
57
- this.cleanUpTooltip();
32
+ this.tooltipController.hide();
58
33
  };
59
34
  this.handleClick = (event) => {
60
- this.lastClickTime = Date.now();
35
+ this.tooltipController.notifyClick();
61
36
  this.handleHideTooltip();
62
37
  this.dsoClick.emit({ originalEvent: event, toggled: !this.toggled });
63
38
  };
@@ -68,16 +43,11 @@ export class IconButton {
68
43
  async setFocus() {
69
44
  this.buttonElRef?.focus();
70
45
  }
71
- cleanUpTooltip() {
72
- this.cleanUpFunction?.();
73
- this.cleanUpFunction = undefined;
74
- }
75
46
  disconnectedCallback() {
76
- this.clearToolTipTimeout();
77
- this.cleanUpTooltip();
47
+ this.tooltipController.dispose();
78
48
  }
79
49
  render() {
80
- return (h("button", { key: 'dff33a98f0a06ee8c7875ea2361cf9dbb2033946', ref: (element) => (this.buttonElRef = element), type: "button", disabled: this.disabled, "aria-label": this.label, class: `icon-button dso-${this.variant} ${this.toggled ? "toggled" : ""}`, "aria-pressed": this.toggled?.toString(), "aria-expanded": this.expanded?.toString(), onMouseEnter: this.handleShowTooltip, onMouseLeave: this.handleHideTooltip, onFocus: this.handleShowTooltip, onBlur: this.handleHideTooltip, onClick: this.handleClick }, h("dso-icon", { key: 'd4770a99eac2fb86e572b6a67595e948bbb8076e', icon: this.icon, "aria-hidden": "true" }), h(Tooltip, { key: '0a8b3a5194d8fd3b1c7110f9a760b13e16b570d7', tipElementRef: (element) => (this.tooltipElRef = element), tipArrowElementRef: (element) => (this.tooltipArrowElRef = element) }, this.label)));
50
+ return (h("button", { key: '7d3bf4a79f897ec497bd7309b4f841bfa894a577', ref: (element) => (this.buttonElRef = element), type: "button", disabled: this.disabled, "aria-label": this.label, class: `icon-button dso-${this.variant} ${this.toggled ? "toggled" : ""}`, "aria-pressed": this.toggled?.toString(), "aria-expanded": this.expanded?.toString(), onMouseEnter: this.handleShowTooltip, onMouseLeave: this.handleHideTooltip, onFocus: this.handleShowTooltip, onBlur: this.handleHideTooltip, onClick: this.handleClick }, h("dso-icon", { key: 'a3c3df83e533e83df10f5b8d7926f70a49422e30', icon: this.icon, "aria-hidden": "true" }), h(Tooltip, { key: '8e2334a4b4ecaecf91394a4743f5757bf3e3044e', tipElementRef: (element) => (this.tooltipElRef = element), tipArrowElementRef: (element) => (this.tooltipArrowElRef = element) }, this.label)));
81
51
  }
82
52
  static get is() { return "dso-icon-button"; }
83
53
  static get encapsulation() { return "shadow"; }
@@ -6,6 +6,11 @@ const wijzigactieLabels = {
6
6
  };
7
7
  const Dimmer = ({ active, src, alt, ref, close, click }, children) => active &&
8
8
  src && (h("dialog", { class: "wrapper", ref: ref, onClose: close, onClick: close }, h("div", { onClick: close }, children[2], children[0], h("img", { src: src, alt: alt }), h("dso-icon-button", { icon: "cross", variant: "map", class: "close", label: "Sluiten", onDsoClick: click }), children[1])));
9
+ /**
10
+ * @slot - A slot to place the target `<img>` element in to make it zoomable.
11
+ * @slot bijschrift - An optional slot to place a caption in, displayed inside the modal overlay.
12
+ * @slot titel - An optional slot to place a title in, displayed inside the modal overlay.
13
+ */
9
14
  export class ImageOverlay {
10
15
  constructor() {
11
16
  this.active = false;
@@ -1,7 +1,10 @@
1
1
  import { Fragment, h } from "@stencil/core";
2
+ /**
3
+ * @slot - The content to be displayed inside the info box.
4
+ */
2
5
  export class Info {
3
6
  render() {
4
- return (h(Fragment, { key: 'a9db2b8522cbfa55e8629b58a9757d58931ecbca' }, h("slot", { key: '2059c0fb8926f48a4b1f36a2210d5c8e48861b1a' }), !this.fixed && (h("dso-icon-button", { key: 'b5350abb35893dabf2dfcb0278aee5efd7bb8951', label: "Sluiten", variant: "tertiary", icon: "cross", onDsoClick: (e) => this.dsoClose.emit(e.detail.originalEvent) }))));
7
+ return (h(Fragment, { key: '501034aaf66e9109b35acead40058a4a42081904' }, h("slot", { key: '3e92f25b24180c39db9cbe8967baac16e41e0f03' }), !this.fixed && (h("dso-icon-button", { key: '568cdfc82e1fb885849226689812843a9045184d', label: "Sluiten", variant: "tertiary", icon: "cross", onDsoClick: (e) => this.dsoClose.emit(e.detail.originalEvent) }))));
5
8
  }
6
9
  static get is() { return "dso-info"; }
7
10
  static get encapsulation() { return "shadow"; }
@@ -1,8 +1,18 @@
1
1
  import { Host, h, } from "@stencil/core";
2
- import { positionTooltip } from "../../functional-components/tooltip/position-tooltip.function";
2
+ import { ToggletipController, isEventOutside } from "../../functional-components/tooltip/toggletip.controller";
3
3
  import { Tooltip } from "../../functional-components/tooltip/tooltip.functional-component";
4
+ /**
5
+ * @slot toggletip - A slot for content displayed inside the info button toggletip.
6
+ */
4
7
  export class InfoButton {
5
8
  constructor() {
9
+ this.toggletipController = new ToggletipController({
10
+ getReferenceElement: () => this.button,
11
+ getTipElement: () => this.toggletipElRef,
12
+ getTipArrowElement: () => this.toggletipArrowElRef,
13
+ getRestrictContentElement: () => this.restrictContentElement,
14
+ getPlacement: () => this.toggletipPlacement,
15
+ });
6
16
  /**
7
17
  * Whether the InfoButton is active.
8
18
  */
@@ -21,7 +31,7 @@ export class InfoButton {
21
31
  if (!this.toggletipActive) {
22
32
  return;
23
33
  }
24
- if (!event.composedPath().includes(this.host)) {
34
+ if (isEventOutside(this.host, event)) {
25
35
  this.closeToggletip();
26
36
  }
27
37
  };
@@ -62,42 +72,10 @@ export class InfoButton {
62
72
  }
63
73
  closeToggletip() {
64
74
  this.toggletipActive = false;
65
- if (this.toggletipElRef?.isConnected && this.toggletipElRef.matches(":popover-open")) {
66
- this.toggletipElRef.hidePopover();
67
- }
68
- this.cleanUpTooltip();
69
- }
70
- cleanUpTooltip() {
71
- this.cleanUpFunction?.();
72
- this.cleanUpFunction = undefined;
75
+ this.toggletipController.update(false);
73
76
  }
74
77
  componentDidRender() {
75
- if (!this.hasToggletip) {
76
- this.toggletipElRef?.hidePopover();
77
- this.cleanUpTooltip();
78
- return;
79
- }
80
- if (!this.cleanUpFunction &&
81
- this.toggletipActive &&
82
- this.button &&
83
- this.toggletipElRef &&
84
- this.toggletipArrowElRef) {
85
- this.cleanUpFunction = positionTooltip({
86
- referenceElement: this.button,
87
- tipRef: this.toggletipElRef,
88
- tipArrowRef: this.toggletipArrowElRef,
89
- placementTip: this.toggletipPlacement,
90
- restrictContentElement: this.restrictContentElement,
91
- });
92
- }
93
- if (this.cleanUpFunction) {
94
- if (this.toggletipActive) {
95
- this.toggletipElRef?.showPopover();
96
- }
97
- else {
98
- this.closeToggletip();
99
- }
100
- }
78
+ this.toggletipController.update(this.hasToggletip && this.toggletipActive);
101
79
  }
102
80
  connectedCallback() {
103
81
  this.mutationObserver = new MutationObserver(() => {
@@ -109,12 +87,12 @@ export class InfoButton {
109
87
  });
110
88
  }
111
89
  disconnectedCallback() {
112
- this.closeToggletip();
90
+ this.toggletipController.dispose();
113
91
  this.mutationObserver?.disconnect();
114
92
  delete this.mutationObserver;
115
93
  }
116
94
  render() {
117
- return (h(Host, { key: 'f89df0ddad22608cc30c910b1fd4a0352516cee6', onKeyDown: this.keyDownHandler }, h("dso-icon-button", { key: '8f46b9c1930d3e546ab604620b19241e3628a3d1', variant: "tertiary", label: this.label, onDsoClick: (e) => this.handleToggle(e.detail.originalEvent), icon: this.active || this.toggletipActive ? "info-solid" : "info-outline", ref: (element) => (this.button = element), expanded: this.hasToggletip ? this.toggletipActive : undefined }), this.hasToggletip && (h(Tooltip, { key: '2f6cbae1716c36b47e9ddb608682abdec648564b', tipElementRef: (element) => (this.toggletipElRef = element), tipArrowElementRef: (element) => (this.toggletipArrowElRef = element) }, h("dso-scrollable", { key: 'fc29889f2ea054cc48ee22ecde9ebeb4ba414d32', ref: (element) => (this.restrictContentElement = element), "aria-live": "polite" }, h("slot", { key: '44b45316c3785a231fb8c214710c0689f8db7e08', name: "toggletip" }))))));
95
+ return (h(Host, { key: 'b38212731ef3325d9d9b87919248494ce7eb27ab', onKeyDown: this.keyDownHandler }, h("dso-icon-button", { key: '3f5e645d8e69e01b1342914c330f7951bd3d38cc', variant: "tertiary", label: this.label, onDsoClick: (e) => this.handleToggle(e.detail.originalEvent), icon: this.active || this.toggletipActive ? "info-solid" : "info-outline", ref: (element) => (this.button = element), expanded: this.hasToggletip ? this.toggletipActive : undefined }), this.hasToggletip && (h(Tooltip, { key: '01af1c555dadef251f3076c9137fd5d3cff3d34a', tipElementRef: (element) => (this.toggletipElRef = element), tipArrowElementRef: (element) => (this.toggletipArrowElRef = element) }, h("dso-scrollable", { key: 'd5b69968072ca345f825685643a9d371b62a6562', ref: (element) => (this.restrictContentElement = element), "aria-live": "polite" }, h("slot", { key: '01f5101e35bfb869909b1b9788c88dcdc9d91351', name: "toggletip" }))))));
118
96
  }
119
97
  static get is() { return "dso-info-button"; }
120
98
  static get encapsulation() { return "shadow"; }
@@ -1,7 +1,7 @@
1
1
  import { Fragment, h, } from "@stencil/core";
2
2
  import { clsx } from "clsx";
3
3
  import debounce from "debounce";
4
- import { positionTooltip } from "../../functional-components/tooltip/position-tooltip.function";
4
+ import { TooltipController } from "../../functional-components/tooltip/tooltip.controller";
5
5
  import { Tooltip } from "../../functional-components/tooltip/tooltip.functional-component";
6
6
  const resizeObserver = new ResizeObserver(debounce((entries) => {
7
7
  entries.forEach(({ target }) => {
@@ -16,29 +16,25 @@ function isDsoLabelComponent(element) {
16
16
  function hasEllipses(el) {
17
17
  return el.scrollWidth > el.clientWidth;
18
18
  }
19
+ /**
20
+ * @slot - A slot for the label text or content.
21
+ * @slot symbol - An optional slot for an icon or symbol displayed before the label text.
22
+ */
19
23
  export class Label {
20
24
  constructor() {
25
+ this.tooltipController = new TooltipController({
26
+ getReferenceElement: () => this.labelContent,
27
+ getTipElement: () => this.tooltipElRef,
28
+ getTipArrowElement: () => this.tooltipArrowElRef,
29
+ getPlacement: () => "top",
30
+ });
21
31
  this.isTruncated = false;
22
32
  this.labelText = "";
23
33
  this.handleShowTooltip = () => {
24
- this.tooltipElRef?.showPopover();
25
- if (!this.cleanUpFunction && this.labelContent && this.tooltipElRef && this.tooltipArrowElRef) {
26
- this.cleanUpFunction = positionTooltip({
27
- referenceElement: this.labelContent,
28
- tipRef: this.tooltipElRef,
29
- tipArrowRef: this.tooltipArrowElRef,
30
- placementTip: "top",
31
- topPositionSmallViewPort: false,
32
- halfMainAxisOffset: false,
33
- forceVisible: true,
34
- });
35
- }
34
+ this.tooltipController.show();
36
35
  };
37
36
  this.handleHideTooltip = () => {
38
- if (this.tooltipElRef?.isConnected && this.tooltipElRef.matches(":popover-open")) {
39
- this.tooltipElRef.hidePopover();
40
- }
41
- this.cleanUpTooltip();
37
+ this.tooltipController.hide();
42
38
  };
43
39
  }
44
40
  watchRemovable(removable) {
@@ -73,10 +69,6 @@ export class Label {
73
69
  syncLabelText() {
74
70
  this.labelText = this.host.textContent?.trim() ?? "";
75
71
  }
76
- cleanUpTooltip() {
77
- this.cleanUpFunction?.();
78
- this.cleanUpFunction = undefined;
79
- }
80
72
  componentDidLoad() {
81
73
  if (this.truncate) {
82
74
  this.startTruncate();
@@ -88,7 +80,7 @@ export class Label {
88
80
  disconnectedCallback() {
89
81
  this.stopTruncate();
90
82
  this.stopMutationObserver(true);
91
- this.cleanUpTooltip();
83
+ this.tooltipController.dispose();
92
84
  }
93
85
  /** The mutationObserver fetches the text placed inside the label, this is then used for the remove button and tooltip. */
94
86
  startMutationObserver() {
@@ -118,11 +110,11 @@ export class Label {
118
110
  this.isTruncated = false;
119
111
  }
120
112
  render() {
121
- return (h(Fragment, { key: '91bdf045c5ed63dc007707e0bc69a68eeb85b081' }, h("span", { key: 'd18b289fdf86d1d7218d040179bf2f406db22e89', "aria-describedby": this.isTruncated ? "toggle-anchor" : null, class: clsx("dso-label", {
113
+ return (h(Fragment, { key: '2f9aae45d0e9200d23a19859f28e9f7f15168c8b' }, h("span", { key: 'aad9e727272e7eea28ea910cbb6ff3378f71c2e4', "aria-describedby": this.isTruncated ? "toggle-anchor" : null, class: clsx("dso-label", {
122
114
  [`dso-label-${this.status}`]: this.status,
123
115
  "dso-compact": this.compact && !this.removable,
124
116
  "dso-hover": this.removeHover || this.removeFocus,
125
- }) }, h("slot", { key: 'b335ef4c4a3c96be81d8d6153e7b94d5edeea63e', name: "symbol" }), h("span", { key: '1e7b5709be467de0ad1bd3a74a76f0ae7be74401', class: "dso-label-content", ref: (element) => (this.labelContent = element), tabindex: this.truncate && this.isTruncated ? 0 : undefined, onMouseEnter: this.handleShowTooltip, onMouseLeave: this.handleHideTooltip, onFocus: this.handleShowTooltip, onBlur: this.handleHideTooltip }, h("slot", { key: '6f27332800f26af5a1595c3ef7a241f640afcd8e' })), this.removable && (h("dso-icon-button", { key: 'c907dd54543ddfd79cfb46e5824fe60de503a831', variant: "tertiary", icon: "cross", label: `Verwijder: ${this.labelText}`, onDsoClick: (e) => this.dsoRemoveClick.emit(e.detail.originalEvent), onMouseEnter: () => (this.removeHover = true), onMouseLeave: () => (this.removeHover = false), onFocus: () => (this.removeFocus = true), onBlur: () => (this.removeFocus = false) }))), this.isTruncated && (h(Tooltip, { key: '1f5a56aa14db9576cb8b9adc723eccc751809df8', tipElementRef: (element) => (this.tooltipElRef = element), tipArrowElementRef: (element) => (this.tooltipArrowElRef = element) }, h("span", { key: '9820b8c6a6444d97c4cb4b661778e98b53e97a4b', id: "toggle-anchor" }, this.labelText)))));
117
+ }) }, h("slot", { key: '45d06013df712c4ef56f16f35ad7adaf912257b5', name: "symbol" }), h("span", { key: '31fd2520c6560c36a7cd314a39054272dab7d26f', class: "dso-label-content", ref: (element) => (this.labelContent = element), tabindex: this.truncate && this.isTruncated ? 0 : undefined, onMouseEnter: this.handleShowTooltip, onMouseLeave: this.handleHideTooltip, onFocus: this.handleShowTooltip, onBlur: this.handleHideTooltip }, h("slot", { key: '382b5b0e82e9cf23d88d537a822c2fe588d0a0e0' })), this.removable && (h("dso-icon-button", { key: '5810082fed31639c83ee1a077ea3e741acc4f027', variant: "tertiary", icon: "cross", label: `Verwijder: ${this.labelText}`, onDsoClick: (e) => this.dsoRemoveClick.emit(e.detail.originalEvent), onMouseEnter: () => (this.removeHover = true), onMouseLeave: () => (this.removeHover = false), onFocus: () => (this.removeFocus = true), onBlur: () => (this.removeFocus = false) }))), this.isTruncated && (h(Tooltip, { key: '102b8127bae8441c01f4d402d7ca2531633dae00', tipElementRef: (element) => (this.tooltipElRef = element), tipArrowElementRef: (element) => (this.tooltipArrowElRef = element) }, h("span", { key: '9bc36d77f9436d26955d566c6f37274393cf7430', id: "toggle-anchor" }, this.labelText)))));
126
118
  }
127
119
  static get is() { return "dso-label"; }
128
120
  static get encapsulation() { return "shadow"; }
@@ -3,6 +3,9 @@ import { clsx } from "clsx";
3
3
  import { i18n } from "../../utils/i18n";
4
4
  import { isModifiedEvent } from "../../utils/is-modified-event";
5
5
  import { translations } from "./legend.i18n";
6
+ /**
7
+ * @slot - Content to be displayed inside the active tab panel of the legend.
8
+ */
6
9
  export class Legend {
7
10
  constructor() {
8
11
  /**
@@ -63,7 +66,7 @@ export class Legend {
63
66
  this.moveFocusToTab(next);
64
67
  }
65
68
  render() {
66
- return (h(Host, { key: '6a19193a2882506d8ed6c2678fc5fb7d50e306d3' }, h("div", { key: '377d9462efb4a215fb59c3a71ad992ff75053a43', class: "topbar" }, h("div", { key: 'efc1f5cf56372d7a542268cb76bdee32315ba203', class: "tabs", role: "tablist", onKeyUp: this.keyUpHandler }, this.tabItems.map((tabItem) => (h("button", { class: clsx("tab", { active: tabItem.active }), role: "tab", "aria-selected": tabItem.active ? "true" : "false", ...(!tabItem.active ? { tabIndex: -1 } : {}), onClick: this.clickHandler }, tabItem.label)))), h("dso-icon-button", { key: 'c6344cb53732dc7c8e2147fa5164b23b9908e2c5', icon: "cross", variant: "tertiary", label: this.text("closeLegend"), class: "close-button", onDsoClick: (e) => this.dsoClose.emit({ originalEvent: e.detail.originalEvent }) })), h("dso-scrollable", { key: '10a5928f03f917e015bfed1cdbbdc3cd4b741a75', class: "content" }, h("div", { key: '57341e45e63cf1fa5105fc88dcbcd27c639c0e06', role: "tabpanel", tabIndex: 0 }, h("slot", { key: '0215d38bdde6a07b4142649656658a1bd4710dc6' })))));
69
+ return (h(Host, { key: '25a92448519ae10b449b58081d662a64954d3c04' }, h("div", { key: 'b560a4aff6a2e8f8328fb596202e0a7c145763ce', class: "topbar" }, h("div", { key: '3b23d0cb0e74a2aade4cbb0146e36d8d7fd299d4', class: "tabs", role: "tablist", onKeyUp: this.keyUpHandler }, this.tabItems.map((tabItem) => (h("button", { class: clsx("tab", { active: tabItem.active }), role: "tab", "aria-selected": tabItem.active ? "true" : "false", ...(!tabItem.active ? { tabIndex: -1 } : {}), onClick: this.clickHandler }, tabItem.label)))), h("dso-icon-button", { key: '319beb77b8931ae142cd2bf2e4a6fdc0d3eaa787', icon: "cross", variant: "tertiary", label: this.text("closeLegend"), class: "close-button", onDsoClick: (e) => this.dsoClose.emit({ originalEvent: e.detail.originalEvent }) })), h("dso-scrollable", { key: '8e7d2821f2ffd170effc0a7e46fe202ed4992b8b', class: "content" }, h("div", { key: 'd76f6c4a9689bb851bb8625263474ccef9427bf2', role: "tabpanel", tabIndex: 0 }, h("slot", { key: 'ac0a97d5910e0a4388765aab12af3875dafc5b70' })))));
67
70
  }
68
71
  static get is() { return "dso-legend"; }
69
72
  static get encapsulation() { return "shadow"; }
@@ -1,5 +1,8 @@
1
1
  import { Fragment, forceUpdate, h, } from "@stencil/core";
2
2
  import { clsx } from "clsx";
3
+ /**
4
+ * @slot subcontent - An optional slot for additional content or details displayed below the main label.
5
+ */
3
6
  export class ListButton {
4
7
  constructor() {
5
8
  this.focusIncrementButtonAfterRender = false;
@@ -73,7 +76,7 @@ export class ListButton {
73
76
  }
74
77
  render() {
75
78
  const selected = this.checked || (this.count !== undefined && this.count > 0);
76
- return (h("div", { key: '427ff9cd8cc7dc0c569a2f394ccf2d45563b21e8', class: clsx(["dso-button-group", { "dso-disabled": this.disabled }]) }, h("div", { key: 'd088de067e202fa3e9e07b7efa0f12e3bbcd6623', class: clsx(["dso-list-button", { "dso-selected": selected, "dso-single-count": this.count === 1 }]), onClick: (e) => this.handleSelectClick(e) }, h("dso-selectable", { key: 'd81f506ad4d2825e11fb02b58d53084db34e805d', type: "checkbox", value: "list-button", name: "naam", checked: selected, disabled: this.disabled }, h("span", { key: '3d4add309ed7f30664055d68fbd82d0ada7209c3' }, this.label, this.sublabel && h("span", { key: '8ea2cee6ec78f2dac9f82c0ac68d63325e333172', class: "sr-only" }, " ", this.sublabel), this.subcontentSlot && (h("span", { key: 'c108019419d8392734c72881c9e12f7ab939eeac', class: "sr-only" }, this.subcontentPrefix && this.subcontentPrefix + ":", " ", h("span", { key: 'e92bdb531740986a4740c40273b7e59d87a2f14c', innerHTML: this.subcontentSlot.innerHTML }))))), this.sublabel && h("span", { key: 'f6829e8e7cfa5ad117bea1c4d43fd57723f9f126', class: "dso-sublabel" }, this.sublabel), this.subcontentSlot && (h("div", { key: '50ac21ae4c209ffebc2dcdd6bdf38fd77540b2f2', class: "subcontent" }, h("slot", { key: '8cf1fda0a7d5c20d719ffcf926e468617c13005e', name: "subcontent" })))), this.count !== undefined && this.count > 0 && (h("div", { key: 'dd5a7569abfeae4fc70882f7bdd1eb26f6c124fe', class: "dso-input-number" }, this.count > 1 && (h(Fragment, { key: '5579dffd39aae5d6a66c8c9f98231d1b80756d20' }, h("dso-icon-button", { key: '4544a7074baabc5b220eca4b25b7f730e6107d3f', label: "Aantal verlagen", variant: "tertiary", icon: "minus-circle-outline", disabled: this.count === Number(this.min) || this.disabled, onDsoClick: (e) => this.stepValue(e, "decrement") }), h("span", { key: '3676a56084254d00110d4c9983204b5d66752a33', class: "dso-input-step-counter", "aria-hidden": "true" }, this.count))), h("span", { key: 'c2f47bb502b61a6d50de0078a2e13c53f158ba51', class: "sr-only", "aria-live": "polite", "aria-atomic": "true" }, this.count), h("dso-icon-button", { key: '2933caf8dfa55d54519aac55574e3ec5422cbf00', ref: (element) => (this.incrementButton = element), label: "Aantal verhogen", variant: "tertiary", icon: "plus-circle-outline", disabled: this.count === Number(this.max) || this.disabled, onDsoClick: (e) => this.stepValue(e, "increment") })))));
79
+ return (h("div", { key: '171dba726ae2681a45f7da87267c64660f645fb5', class: clsx(["dso-button-group", { "dso-disabled": this.disabled }]) }, h("div", { key: '39fbf1a635e320bb5cec27cd33263e36eb809774', class: clsx(["dso-list-button", { "dso-selected": selected, "dso-single-count": this.count === 1 }]), onClick: (e) => this.handleSelectClick(e) }, h("dso-selectable", { key: '13fb9f0427198c07d2b00050e763647895dd1ab9', type: "checkbox", value: "list-button", name: "naam", checked: selected, disabled: this.disabled }, h("span", { key: 'a460a8f89ab12d090d94f2b3b73d8c6cac2dd2ac' }, this.label, this.sublabel && h("span", { key: 'b8427ca80a914d2e6b3832019afe8060dd6d284d', class: "sr-only" }, " ", this.sublabel), this.subcontentSlot && (h("span", { key: '72506275399775cbc5ceae5e8b16dbcd8a69c140', class: "sr-only" }, this.subcontentPrefix && this.subcontentPrefix + ":", " ", h("span", { key: '7a097ac4604c40d0fda1d2421feef68642075ab6', innerHTML: this.subcontentSlot.innerHTML }))))), this.sublabel && h("span", { key: '3ac2a0ecf78fbaffbf25fc00d56269cb00643e7f', class: "dso-sublabel" }, this.sublabel), this.subcontentSlot && (h("div", { key: 'a5049ef168c07738d5f789b19ff8932265a21299', class: "subcontent" }, h("slot", { key: '0af769250d4ddf272a68e4788494bf121f5bc064', name: "subcontent" })))), this.count !== undefined && this.count > 0 && (h("div", { key: '7e59c5a27c6fc4a7726c2b17ff70346867b7ffa9', class: "dso-input-number" }, this.count > 1 && (h(Fragment, { key: 'a58578a81c70886bdc69a4fa2adb7be721023671' }, h("dso-icon-button", { key: '3a7229664ea99386f70cfb695205e1ca62db0620', label: "Aantal verlagen", variant: "tertiary", icon: "minus-circle-outline", disabled: this.count === Number(this.min) || this.disabled, onDsoClick: (e) => this.stepValue(e, "decrement") }), h("span", { key: '9cfc61641c5f4abd1b00901640a79e7ba8f12a63', class: "dso-input-step-counter", "aria-hidden": "true" }, this.count))), h("span", { key: '73aaacff6df752f3190d917059dc92c5be0eb15b', class: "sr-only", "aria-live": "polite", "aria-atomic": "true" }, this.count), h("dso-icon-button", { key: 'f7f644cce4ee9de5e99999bf53c12312db30bd9b', ref: (element) => (this.incrementButton = element), label: "Aantal verhogen", variant: "tertiary", icon: "plus-circle-outline", disabled: this.count === Number(this.max) || this.disabled, onDsoClick: (e) => this.stepValue(e, "increment") })))));
77
80
  }
78
81
  static get is() { return "dso-list-button"; }
79
82
  static get encapsulation() { return "shadow"; }