@dso-toolkit/core 97.1.0 → 98.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (538) hide show
  1. package/dist/bundle/dso-accordion-section.js +15 -14
  2. package/dist/bundle/dso-accordion.js +2 -276
  3. package/dist/bundle/dso-action-list-item.js +3 -3
  4. package/dist/bundle/dso-action-list.js +2 -2
  5. package/dist/bundle/dso-advanced-select.js +109 -232
  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 +6 -6
  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 +26 -17
  14. package/dist/bundle/dso-badge.js +1 -1
  15. package/dist/bundle/dso-banner.js +3 -3
  16. package/dist/bundle/dso-button-group.js +1 -1
  17. package/dist/bundle/dso-card-container.js +1 -1
  18. package/dist/bundle/dso-card.js +3 -3
  19. package/dist/bundle/dso-contact-information.js +1 -1
  20. package/dist/bundle/dso-cursor-tooltip.js +1 -1
  21. package/dist/bundle/dso-date-picker.js +1 -1
  22. package/dist/bundle/dso-document-card.js +3 -3
  23. package/dist/bundle/dso-document-component.js +1 -1
  24. package/dist/bundle/dso-dropdown-menu-group.d.ts +11 -0
  25. package/dist/bundle/dso-dropdown-menu-group.js +51 -0
  26. package/dist/bundle/dso-dropdown-menu-item.d.ts +11 -0
  27. package/dist/bundle/dso-dropdown-menu-item.js +70 -0
  28. package/dist/bundle/dso-dropdown-menu.js +93 -107
  29. package/dist/bundle/dso-expandable.js +1 -1
  30. package/dist/bundle/dso-header.js +23 -6
  31. package/dist/bundle/dso-highlight-box.js +2 -2
  32. package/dist/bundle/dso-history-item.js +3 -3
  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 +3 -3
  39. package/dist/bundle/dso-label.js +1 -1
  40. package/dist/bundle/dso-legend-group.js +5 -5
  41. package/dist/bundle/dso-legend-item.js +8 -8
  42. package/dist/bundle/dso-legend.js +7 -7
  43. package/dist/bundle/dso-list-button.js +9 -9
  44. package/dist/bundle/dso-logo.js +2 -2
  45. package/dist/bundle/dso-map-base-layers.js +9 -9
  46. package/dist/bundle/dso-map-controls.js +8 -8
  47. package/dist/bundle/dso-map-layer-object.js +5 -5
  48. package/dist/bundle/dso-map-layer.js +5 -5
  49. package/dist/bundle/dso-map-message.js +4 -4
  50. package/dist/bundle/dso-map-overlays.js +9 -9
  51. package/dist/bundle/dso-mark-bar.js +4 -4
  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 +5 -5
  59. package/dist/bundle/dso-progress-indicator.js +1 -1
  60. package/dist/bundle/dso-project-item.js +6 -6
  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 +2 -2
  65. package/dist/bundle/dso-selectable.js +1 -1
  66. package/dist/bundle/dso-skiplink.js +3 -3
  67. package/dist/bundle/dso-slide-toggle.js +1 -1
  68. package/dist/bundle/dso-survey-rating.js +7 -7
  69. package/dist/bundle/dso-tab.js +1 -1
  70. package/dist/bundle/dso-table.js +1 -1
  71. package/dist/bundle/dso-tabs.js +2 -2
  72. package/dist/bundle/dso-tijdreis-banner.js +3 -3
  73. package/dist/bundle/dso-tooltip.js +2 -2
  74. package/dist/bundle/dso-tree-view.js +5 -5
  75. package/dist/bundle/dso-viewer-grid.js +4 -4
  76. package/dist/bundle/dsot-document-component-demo.js +18 -18
  77. package/dist/bundle/index.js +6 -2
  78. package/dist/bundle/p-B75VIizV.js +166 -0
  79. package/dist/bundle/{p-jon8ZgCu.js → p-B94z5NjB.js} +19 -5
  80. package/dist/bundle/{p-CA57bAyP.js → p-BCqaYIQt.js} +3 -3
  81. package/dist/bundle/{p-D1ciWwSo.js → p-BFzVw-DT.js} +2 -2
  82. package/dist/bundle/{p-ChO20JhC.js → p-BHpXZF8A.js} +4 -4
  83. package/dist/bundle/{p-DaRtnn5i.js → p-BO8XMsvv.js} +1 -1
  84. package/dist/bundle/p-BXiN5sX-.js +189 -0
  85. package/dist/{esm/index.esm-PsHl6ZhV.js → bundle/p-BZ0vuOVx.js} +1 -1
  86. package/dist/bundle/{p-CFPWVcsY.js → p-BfWc_aEb.js} +4 -4
  87. package/dist/bundle/{p-D33HZm70.js → p-Bk1uG4K2.js} +7 -7
  88. package/dist/bundle/p-BlVogjOP.js +1209 -0
  89. package/dist/bundle/{p-rHiKziuf.js → p-ByYAhz9G.js} +1 -1
  90. package/dist/bundle/p-C2TaY3C1.js +148 -0
  91. package/dist/bundle/{p-HMxVj4ab.js → p-C5AGixB6.js} +2 -2
  92. package/dist/bundle/{p-C7VfGukK.js → p-CFFKe8A0.js} +2 -2
  93. package/dist/bundle/{p-B2ZlmdWO.js → p-CH7Qz1nD.js} +5 -5
  94. package/dist/bundle/{p-DwBHVuoZ.js → p-CRgylkO_.js} +12 -4
  95. package/dist/bundle/p-CaARHb7c.js +122 -0
  96. package/dist/bundle/p-CvSgAdem.js +83 -0
  97. package/dist/bundle/{p-DtNjY6f6.js → p-CxCyh-ue.js} +6 -6
  98. package/dist/bundle/{p-DYFOhFhk.js → p-D-E3DKqU.js} +2 -2
  99. package/dist/bundle/p-D1Oc-tJz.js +124 -0
  100. package/dist/bundle/{p-Bh_AjQ7z.js → p-D9ik-TAM.js} +7 -7
  101. package/dist/bundle/{p-CcFEBE0l.js → p-DFS4M3wz.js} +4 -4
  102. package/dist/bundle/{p-C-8vTVVo.js → p-DH5oGVbg.js} +9 -9
  103. package/dist/bundle/{p-BNEJjrr8.js → p-DTmh2fpe.js} +2 -2
  104. package/dist/bundle/p-DVuh3xxM.js +278 -0
  105. package/dist/bundle/p-DbanifFc.js +341 -0
  106. package/dist/bundle/{p-BIShp3sw.js → p-Di7uBIhp.js} +1 -1
  107. package/dist/bundle/{p-WEiXvjCu.js → p-DiFgvE1s.js} +1 -1
  108. package/dist/bundle/{p-DgKvq-q9.js → p-_Cugwqbf.js} +1 -1
  109. package/dist/bundle/{p-CgXakBQA.js → p-_TVwcL7Y.js} +1 -1
  110. package/dist/bundle/{p-CKnJRPZn.js → p-_WFAb7kl.js} +27 -8
  111. package/dist/cjs/{annotation-body-DorcBRdu.js → annotation-body-CiWbOM67.js} +1 -1
  112. package/dist/cjs/{annotation-list-renvooi-values-DY_nt_wa.js → annotation-list-renvooi-values-BeNFLgnO.js} +1 -1
  113. package/dist/cjs/{annotation-watcher-DuftgGaK.js → annotation-watcher-5j3WUBEz.js} +1 -1
  114. package/dist/cjs/dso-accordion-section.cjs.entry.js +8 -7
  115. package/dist/cjs/dso-accordion.cjs.entry.js +3 -277
  116. package/dist/cjs/dso-action-list-item.cjs.entry.js +2 -2
  117. package/dist/cjs/dso-action-list.cjs.entry.js +2 -2
  118. package/dist/cjs/dso-advanced-select.cjs.entry.js +103 -226
  119. package/dist/cjs/dso-alert_7.cjs.entry.js +68 -27
  120. package/dist/cjs/dso-annotation-activiteit.cjs.entry.js +5 -5
  121. package/dist/cjs/dso-annotation-gebiedsaanwijzing.cjs.entry.js +4 -4
  122. package/dist/cjs/dso-annotation-kaart.cjs.entry.js +3 -3
  123. package/dist/cjs/dso-annotation-locatie_2.cjs.entry.js +6 -6
  124. package/dist/cjs/dso-annotation-omgevingsnormwaarde.cjs.entry.js +5 -5
  125. package/dist/cjs/dso-attachments-counter_2.cjs.entry.js +3 -3
  126. package/dist/cjs/dso-autosuggest.cjs.entry.js +23 -14
  127. package/dist/cjs/dso-banner.cjs.entry.js +2 -2
  128. package/dist/cjs/dso-button-group.cjs.entry.js +2 -2
  129. package/dist/cjs/dso-card-container.cjs.entry.js +1 -1
  130. package/dist/cjs/dso-card.cjs.entry.js +2 -2
  131. package/dist/cjs/dso-contact-information.cjs.entry.js +1 -1
  132. package/dist/cjs/dso-cursor-tooltip.cjs.entry.js +1 -1
  133. package/dist/cjs/dso-date-picker.cjs.entry.js +1 -1
  134. package/dist/cjs/dso-document-card.cjs.entry.js +2 -2
  135. package/dist/cjs/dso-dropdown-menu-group.cjs.entry.js +31 -0
  136. package/dist/cjs/dso-dropdown-menu-item.cjs.entry.js +41 -0
  137. package/dist/cjs/dso-dropdown-menu.cjs.entry.js +80 -101
  138. package/dist/cjs/dso-header.cjs.entry.js +21 -4
  139. package/dist/cjs/dso-highlight-box.cjs.entry.js +2 -2
  140. package/dist/cjs/dso-history-item.cjs.entry.js +2 -2
  141. package/dist/cjs/dso-icon-button.cjs.entry.js +97 -0
  142. package/dist/cjs/{dso-icon_2.cjs.entry.js → dso-icon.cjs.entry.js} +2 -95
  143. package/dist/cjs/dso-info_3.cjs.entry.js +7 -7
  144. package/dist/cjs/dso-input-range.cjs.entry.js +3 -3
  145. package/dist/cjs/dso-label_3.cjs.entry.js +7 -7
  146. package/dist/cjs/dso-legend-group.cjs.entry.js +3 -3
  147. package/dist/cjs/dso-legend-item.cjs.entry.js +3 -3
  148. package/dist/cjs/dso-legend.cjs.entry.js +4 -4
  149. package/dist/cjs/dso-list-button.cjs.entry.js +3 -3
  150. package/dist/cjs/dso-logo.cjs.entry.js +2 -2
  151. package/dist/cjs/dso-map-base-layers.cjs.entry.js +3 -3
  152. package/dist/cjs/dso-map-controls.cjs.entry.js +4 -4
  153. package/dist/cjs/dso-map-layer-object.cjs.entry.js +4 -4
  154. package/dist/cjs/dso-map-layer.cjs.entry.js +4 -4
  155. package/dist/cjs/dso-map-message.cjs.entry.js +3 -3
  156. package/dist/cjs/dso-map-overlays.cjs.entry.js +3 -3
  157. package/dist/cjs/dso-mark-bar.cjs.entry.js +2 -2
  158. package/dist/cjs/dso-modal.cjs.entry.js +4 -4
  159. package/dist/cjs/dso-onboarding-tip.cjs.entry.js +2 -2
  160. package/dist/cjs/dso-pagination.cjs.entry.js +1 -1
  161. package/dist/cjs/dso-plekinfo-card.cjs.entry.js +4 -4
  162. package/dist/cjs/dso-progress-indicator.cjs.entry.js +3 -3
  163. package/dist/cjs/dso-project-item.cjs.entry.js +3 -3
  164. package/dist/cjs/dso-responsive-element.cjs.entry.js +19 -5
  165. package/dist/cjs/dso-scrollable.cjs.entry.js +4 -4
  166. package/dist/cjs/dso-segmented-button.cjs.entry.js +2 -2
  167. package/dist/cjs/dso-skiplink.cjs.entry.js +2 -2
  168. package/dist/cjs/dso-survey-rating.cjs.entry.js +4 -4
  169. package/dist/cjs/dso-tab.cjs.entry.js +1 -1
  170. package/dist/cjs/dso-tabs.cjs.entry.js +2 -2
  171. package/dist/cjs/dso-tijdreis-banner.cjs.entry.js +2 -2
  172. package/dist/cjs/dso-toolkit.cjs.js +3 -3
  173. package/dist/cjs/dso-tooltip.cjs.entry.js +2 -2
  174. package/dist/cjs/dso-tree-view.cjs.entry.js +3 -3
  175. package/dist/cjs/dso-viewer-grid.cjs.entry.js +4 -4
  176. package/dist/cjs/dsot-document-component-demo.cjs.entry.js +1 -1
  177. package/dist/cjs/{i18n-5XH7oHkT.js → i18n-DxQ6ZWA0.js} +12 -4
  178. package/dist/cjs/index-D8SsuyUx.js +280 -0
  179. package/dist/cjs/{index-BOI4CviS.js → index-fOjUpMJG.js} +1 -1
  180. package/dist/cjs/loader.cjs.js +2 -2
  181. package/dist/cjs/{parse-wijzigactie-from-node.function-BbYINqVA.js → parse-wijzigactie-from-node.function-Bi4NE9Tt.js} +1 -1
  182. package/dist/cjs/{tooltip.functional-component-CW6vXWhM.js → tooltip.functional-component-D6oJmzwD.js} +1 -1
  183. package/dist/cjs/{wrap-wijzigactie.functional-component-BOafAh_v.js → wrap-wijzigactie.functional-component-CV8gX7lQ.js} +1 -1
  184. package/dist/collection/collection-manifest.json +3 -1
  185. package/dist/collection/components/accordion/components/accordion-section.css +5 -5
  186. package/dist/collection/components/accordion/components/accordion-section.js +6 -5
  187. package/dist/collection/components/action-list/action-list.css +5 -5
  188. package/dist/collection/components/action-list/components/action-list-item.css +4 -4
  189. package/dist/collection/components/alert/alert.css +82 -89
  190. package/dist/collection/components/alert/alert.js +1 -1
  191. package/dist/collection/components/annotation/annotation.css +3 -3
  192. package/dist/collection/components/autosuggest/autosuggest.js +21 -12
  193. package/dist/collection/components/badge/badge.css +5 -5
  194. package/dist/collection/components/banner/banner.css +31 -31
  195. package/dist/collection/components/button-group/button-group.css +11 -11
  196. package/dist/collection/components/card/card.css +6 -6
  197. package/dist/collection/components/document-card/document-card.css +1 -1
  198. package/dist/collection/components/document-component/document-component.css +35 -35
  199. package/dist/collection/components/dropdown-menu/dropdown-menu-group/dropdown-menu-group.css +16 -0
  200. package/dist/collection/components/dropdown-menu/dropdown-menu-group/dropdown-menu-group.js +55 -0
  201. package/dist/collection/components/dropdown-menu/dropdown-menu-item/dropdown-menu-item.css +80 -0
  202. package/dist/collection/components/dropdown-menu/dropdown-menu-item/dropdown-menu-item.js +160 -0
  203. package/dist/collection/components/dropdown-menu/dropdown-menu.css +482 -2
  204. package/dist/collection/components/dropdown-menu/dropdown-menu.interfaces.js +1 -0
  205. package/dist/collection/components/dropdown-menu/dropdown-menu.js +134 -142
  206. package/dist/collection/components/expandable/expandable.js +2 -2
  207. package/dist/collection/components/header/header.js +19 -2
  208. package/dist/collection/components/highlight-box/highlight-box.js +1 -1
  209. package/dist/collection/components/history-item/history-item.js +1 -1
  210. package/dist/collection/components/icon/icon.js +1 -1
  211. package/dist/collection/components/icon-button/icon-button.css +28 -28
  212. package/dist/collection/components/icon-button/icon-button.js +1 -1
  213. package/dist/collection/components/image-overlay/image-overlay.css +6 -6
  214. package/dist/collection/components/image-overlay/image-overlay.js +23 -4
  215. package/dist/collection/components/info/info.js +1 -1
  216. package/dist/collection/components/info-button/info-button.css +6 -6
  217. package/dist/collection/components/info-button/info-button.js +1 -1
  218. package/dist/collection/components/input-range/input-range.js +2 -2
  219. package/dist/collection/components/label/label.css +4 -4
  220. package/dist/collection/components/label/label.js +2 -2
  221. package/dist/collection/components/legend/legend-group/legend-group.js +1 -1
  222. package/dist/collection/components/legend/legend-item/legend-item.js +1 -1
  223. package/dist/collection/components/legend/legend.css +3 -3
  224. package/dist/collection/components/legend/legend.js +1 -1
  225. package/dist/collection/components/list-button/list-button.css +9 -9
  226. package/dist/collection/components/list-button/list-button.js +1 -1
  227. package/dist/collection/components/logo/logo.js +1 -1
  228. package/dist/collection/components/map-base-layers/map-base-layers.js +1 -1
  229. package/dist/collection/components/map-controls/map-controls.css +28 -28
  230. package/dist/collection/components/map-controls/map-controls.js +1 -1
  231. package/dist/collection/components/map-layer/components/map-layer-object.css +2 -2
  232. package/dist/collection/components/map-layer/components/map-layer-object.js +1 -1
  233. package/dist/collection/components/map-layer/map-layer.css +2 -2
  234. package/dist/collection/components/map-layer/map-layer.js +1 -1
  235. package/dist/collection/components/map-message/map-message.js +2 -2
  236. package/dist/collection/components/map-overlays/map-overlays.js +1 -1
  237. package/dist/collection/components/mark-bar/mark-bar.js +1 -1
  238. package/dist/collection/components/modal/modal.css +18 -19
  239. package/dist/collection/components/modal/modal.js +1 -1
  240. package/dist/collection/components/onboarding-tip/onboarding-tip.js +1 -1
  241. package/dist/collection/components/ozon-content/components/ozon-content-toggletip/ozon-content-toggletip.css +8 -8
  242. package/dist/collection/components/ozon-content/components/ozon-content-toggletip/ozon-content-toggletip.js +1 -1
  243. package/dist/collection/components/ozon-content/ozon-content.css +60 -60
  244. package/dist/collection/components/ozon-content/ozon-content.js +3 -3
  245. package/dist/collection/components/panel/panel.js +1 -1
  246. package/dist/collection/components/plekinfo-card/plekinfo-card.css +6 -6
  247. package/dist/collection/components/plekinfo-card/plekinfo-card.js +1 -1
  248. package/dist/collection/components/progress-indicator/progress-indicator.js +1 -1
  249. package/dist/collection/components/project-item/project-item.css +22 -22
  250. package/dist/collection/components/project-item/project-item.js +1 -1
  251. package/dist/collection/components/renvooi/renvooi.css +7 -7
  252. package/dist/collection/components/responsive-element/responsive-element.js +18 -4
  253. package/dist/collection/components/scrollable/scrollable.css +7 -7
  254. package/dist/collection/components/scrollable/scrollable.js +2 -2
  255. package/dist/collection/components/segmented-button/segmented-button.js +1 -1
  256. package/dist/collection/components/selectable/selectable.css +3 -3
  257. package/dist/collection/components/selectable/selectable.js +1 -1
  258. package/dist/collection/components/skiplink/skiplink.js +1 -1
  259. package/dist/collection/components/slide-toggle/slide-toggle.js +1 -1
  260. package/dist/collection/components/survey-rating/survey-rating.css +6 -6
  261. package/dist/collection/components/survey-rating/survey-rating.js +2 -2
  262. package/dist/collection/components/table/table.css +36 -36
  263. package/dist/collection/components/table/table.js +30 -8
  264. package/dist/collection/components/tabs/tabs.js +1 -1
  265. package/dist/collection/components/tijdreis-banner/tijdreis-banner.js +1 -1
  266. package/dist/collection/components/tooltip/tooltip.js +1 -1
  267. package/dist/collection/components/tree-view/tree-view.js +2 -2
  268. package/dist/collection/components/viewer-grid/viewer-grid.css +17 -13
  269. package/dist/collection/components/viewer-grid/viewer-grid.js +2 -2
  270. package/dist/components/alert.js +1 -1
  271. package/dist/components/annotation-locatie.js +1 -1
  272. package/dist/components/badge.js +1 -1
  273. package/dist/components/button-group.js +1 -1
  274. package/dist/components/document-component.js +1 -1
  275. package/dist/components/dso-accordion-section.js +1 -1
  276. package/dist/components/dso-accordion.js +1 -1
  277. package/dist/components/dso-action-list-item.js +1 -1
  278. package/dist/components/dso-action-list.js +1 -1
  279. package/dist/components/dso-advanced-select.js +3 -5
  280. package/dist/components/dso-annotation-activiteit.js +1 -1
  281. package/dist/components/dso-annotation-gebiedsaanwijzing.js +1 -1
  282. package/dist/components/dso-annotation-kaart.js +1 -1
  283. package/dist/components/dso-annotation-omgevingsnormwaarde.js +1 -1
  284. package/dist/components/dso-autosuggest.js +1 -1
  285. package/dist/components/dso-banner.js +1 -1
  286. package/dist/components/dso-card.js +1 -1
  287. package/dist/components/dso-document-card.js +1 -1
  288. package/dist/components/dso-dropdown-menu-group.d.ts +11 -0
  289. package/dist/components/dso-dropdown-menu-group.js +1 -0
  290. package/dist/components/dso-dropdown-menu-item.d.ts +11 -0
  291. package/dist/components/dso-dropdown-menu-item.js +1 -0
  292. package/dist/components/dso-dropdown-menu.js +1 -1
  293. package/dist/components/dso-header.js +1 -1
  294. package/dist/components/dso-highlight-box.js +1 -1
  295. package/dist/components/dso-history-item.js +1 -1
  296. package/dist/components/dso-input-range.js +1 -1
  297. package/dist/components/dso-legend-group.js +1 -1
  298. package/dist/components/dso-legend-item.js +1 -1
  299. package/dist/components/dso-legend.js +1 -1
  300. package/dist/components/dso-list-button.js +1 -1
  301. package/dist/components/dso-logo.js +1 -1
  302. package/dist/components/dso-map-base-layers.js +1 -1
  303. package/dist/components/dso-map-controls.js +1 -1
  304. package/dist/components/dso-map-layer-object.js +1 -1
  305. package/dist/components/dso-map-layer.js +1 -1
  306. package/dist/components/dso-map-message.js +1 -1
  307. package/dist/components/dso-map-overlays.js +1 -1
  308. package/dist/components/dso-mark-bar.js +1 -1
  309. package/dist/components/dso-onboarding-tip.js +1 -1
  310. package/dist/components/dso-plekinfo-card.js +1 -1
  311. package/dist/components/dso-project-item.js +1 -1
  312. package/dist/components/dso-segmented-button.js +1 -1
  313. package/dist/components/dso-skiplink.js +1 -1
  314. package/dist/components/dso-survey-rating.js +1 -1
  315. package/dist/components/dso-tabs.js +1 -1
  316. package/dist/components/dso-tijdreis-banner.js +1 -1
  317. package/dist/components/dso-tooltip.js +1 -1
  318. package/dist/components/dso-tree-view.js +1 -1
  319. package/dist/components/dso-viewer-grid.js +1 -1
  320. package/dist/components/expandable.js +1 -1
  321. package/dist/components/i18n.js +1 -1
  322. package/dist/components/icon-button.js +1 -1
  323. package/dist/components/icon.js +1 -1
  324. package/dist/components/image-overlay.js +1 -1
  325. package/dist/components/index.d.ts +4 -0
  326. package/dist/components/index.esm.js +1 -1
  327. package/dist/components/index.js +1 -1
  328. package/dist/components/index2.js +1 -1
  329. package/dist/components/index3.js +1 -0
  330. package/dist/components/info-button.js +1 -1
  331. package/dist/components/info.js +1 -1
  332. package/dist/components/label.js +1 -1
  333. package/dist/components/modal.js +1 -1
  334. package/dist/components/ozon-content-toggletip.js +1 -1
  335. package/dist/components/ozon-content.js +1 -1
  336. package/dist/components/panel.js +1 -1
  337. package/dist/components/progress-indicator.js +1 -1
  338. package/dist/components/renvooi.js +1 -1
  339. package/dist/components/responsive-element.js +1 -1
  340. package/dist/components/scrollable.js +1 -1
  341. package/dist/components/selectable.js +1 -1
  342. package/dist/components/slide-toggle.js +1 -1
  343. package/dist/components/table.js +1 -1
  344. package/dist/dso-toolkit/dso-toolkit.esm.js +1 -1
  345. package/dist/dso-toolkit/p-01ef7894.entry.js +1 -0
  346. package/dist/dso-toolkit/p-14c01a1b.entry.js +1 -0
  347. package/dist/dso-toolkit/{p-44549e9c.entry.js → p-1512f23c.entry.js} +1 -1
  348. package/dist/dso-toolkit/{p-540a8027.entry.js → p-15cf1d50.entry.js} +1 -1
  349. package/dist/dso-toolkit/{p-2d1eb113.entry.js → p-1bcb1be6.entry.js} +1 -1
  350. package/dist/dso-toolkit/{p-d9800183.entry.js → p-20dff64b.entry.js} +1 -1
  351. package/dist/dso-toolkit/{p-be7adaac.entry.js → p-2adca4ff.entry.js} +1 -1
  352. package/dist/dso-toolkit/p-2c966756.entry.js +1 -0
  353. package/dist/dso-toolkit/{p-f066244e.entry.js → p-2eecf6c8.entry.js} +1 -1
  354. package/dist/dso-toolkit/p-388128c4.entry.js +1 -0
  355. package/dist/dso-toolkit/{p-dabed551.entry.js → p-3b7b2b8f.entry.js} +1 -1
  356. package/dist/dso-toolkit/{p-e03ff53f.entry.js → p-3defafe9.entry.js} +1 -1
  357. package/dist/dso-toolkit/{p-798eeae6.entry.js → p-4172e122.entry.js} +1 -1
  358. package/dist/dso-toolkit/p-43d180dd.entry.js +1 -0
  359. package/dist/dso-toolkit/{p-bb7ac6f7.entry.js → p-45b1fde3.entry.js} +1 -1
  360. package/dist/dso-toolkit/p-45d91da0.entry.js +1 -0
  361. package/dist/dso-toolkit/p-4855c2f3.entry.js +1 -0
  362. package/dist/dso-toolkit/p-48a683ed.entry.js +1 -0
  363. package/dist/dso-toolkit/{p-c9768843.entry.js → p-4da1153e.entry.js} +1 -1
  364. package/dist/dso-toolkit/{p-2edbfaae.entry.js → p-4fc4d02f.entry.js} +1 -1
  365. package/dist/dso-toolkit/p-4fc83300.entry.js +1 -0
  366. package/dist/dso-toolkit/{p-8e206e7e.entry.js → p-520dc726.entry.js} +1 -1
  367. package/dist/dso-toolkit/p-5517c4f6.entry.js +1 -0
  368. package/dist/dso-toolkit/{p-cce55fbb.entry.js → p-57ff1b4b.entry.js} +1 -1
  369. package/dist/dso-toolkit/{p-4020bb89.entry.js → p-5904bfcb.entry.js} +1 -1
  370. package/dist/dso-toolkit/p-5962b2d4.entry.js +1 -0
  371. package/dist/dso-toolkit/p-5a3e159b.entry.js +1 -0
  372. package/dist/dso-toolkit/{p-6ebe1b0e.entry.js → p-70972000.entry.js} +1 -1
  373. package/dist/dso-toolkit/p-7379b3bc.entry.js +1 -0
  374. package/dist/dso-toolkit/p-737d1d0e.entry.js +1 -0
  375. package/dist/dso-toolkit/{p-181cb6f7.entry.js → p-796cebce.entry.js} +1 -1
  376. package/dist/dso-toolkit/{p-3047432c.entry.js → p-7a2c40f3.entry.js} +1 -1
  377. package/dist/dso-toolkit/{p-85c2c887.entry.js → p-7b8b9188.entry.js} +1 -1
  378. package/dist/dso-toolkit/p-7c41ad14.entry.js +5 -0
  379. package/dist/dso-toolkit/{p-875b414d.entry.js → p-7d9ce75e.entry.js} +1 -1
  380. package/dist/dso-toolkit/{p-626ae90b.entry.js → p-845d3d61.entry.js} +1 -1
  381. package/dist/dso-toolkit/p-85d562bd.entry.js +1 -0
  382. package/dist/dso-toolkit/p-8b46e524.entry.js +1 -0
  383. package/dist/dso-toolkit/{p-ea1f5082.entry.js → p-91e4c3e6.entry.js} +1 -1
  384. package/dist/dso-toolkit/{p-b2202cd6.entry.js → p-965ee5c3.entry.js} +1 -1
  385. package/dist/dso-toolkit/{p-b4747ac0.entry.js → p-96d40735.entry.js} +1 -1
  386. package/dist/dso-toolkit/p-9b9588a4.entry.js +1 -0
  387. package/dist/dso-toolkit/{p-e08e43be.entry.js → p-9e4fcb9a.entry.js} +1 -1
  388. package/dist/dso-toolkit/{p-PsHl6ZhV.js → p-BZ0vuOVx.js} +1 -1
  389. package/dist/dso-toolkit/{p-PjubEIMY.js → p-CDgoS98P.js} +1 -1
  390. package/dist/dso-toolkit/{p-Chbfdofl.js → p-CHpgprST.js} +1 -1
  391. package/dist/dso-toolkit/p-CKvC5fms.js +1 -0
  392. package/dist/dso-toolkit/p-CRgylkO_.js +1 -0
  393. package/dist/dso-toolkit/p-CWxbEBiv.js +1 -0
  394. package/dist/dso-toolkit/p-CmOx9B7G.js +1 -0
  395. package/dist/dso-toolkit/p-Cw_CPOlV.js +1 -0
  396. package/dist/dso-toolkit/p-DHGCm31c.js +1 -0
  397. package/dist/dso-toolkit/p-a8ef7b7e.entry.js +1 -0
  398. package/dist/dso-toolkit/{p-fc8f252a.entry.js → p-adf26ede.entry.js} +1 -1
  399. package/dist/dso-toolkit/p-b469a75d.entry.js +1 -0
  400. package/dist/dso-toolkit/{p-c3d5ccc6.entry.js → p-b59d6811.entry.js} +1 -1
  401. package/dist/dso-toolkit/p-c41060e1.entry.js +1 -0
  402. package/dist/dso-toolkit/{p-75e5057e.entry.js → p-c782af02.entry.js} +1 -1
  403. package/dist/dso-toolkit/{p-84f647aa.entry.js → p-cb7a5987.entry.js} +1 -1
  404. package/dist/dso-toolkit/{p-e311d101.entry.js → p-cb8ad08f.entry.js} +1 -1
  405. package/dist/dso-toolkit/{p-3fe44227.entry.js → p-cdaeddbf.entry.js} +1 -1
  406. package/dist/dso-toolkit/p-d91feee5.entry.js +1 -0
  407. package/dist/dso-toolkit/{p-b270f26b.entry.js → p-ddbbc77d.entry.js} +1 -1
  408. package/dist/dso-toolkit/p-e53de048.entry.js +1 -0
  409. package/dist/dso-toolkit/{p-e1f30dbb.entry.js → p-e7323c65.entry.js} +1 -1
  410. package/dist/dso-toolkit/{p-a14ee5bd.entry.js → p-e7a860be.entry.js} +1 -1
  411. package/dist/dso-toolkit/p-e803701e.entry.js +1 -0
  412. package/dist/dso-toolkit/{p-d877c432.entry.js → p-edddf0f5.entry.js} +1 -1
  413. package/dist/dso-toolkit/{p-7a809a49.entry.js → p-f52d7bb1.entry.js} +1 -1
  414. package/dist/dso-toolkit/p-fdf9798a.entry.js +1 -0
  415. package/dist/dso-toolkit/{p-d87dd7c8.entry.js → p-fe00cb79.entry.js} +1 -1
  416. package/dist/esm/{annotation-body-DeKLxp3F.js → annotation-body-DBGu5INB.js} +1 -1
  417. package/dist/esm/{annotation-list-renvooi-values-CGxBKqb7.js → annotation-list-renvooi-values-DoTvSWOI.js} +1 -1
  418. package/dist/esm/{annotation-watcher-BO_h7wWk.js → annotation-watcher-Dm4MhmMp.js} +1 -1
  419. package/dist/esm/dso-accordion-section.entry.js +8 -7
  420. package/dist/esm/dso-accordion.entry.js +2 -276
  421. package/dist/esm/dso-action-list-item.entry.js +2 -2
  422. package/dist/esm/dso-action-list.entry.js +2 -2
  423. package/dist/esm/dso-advanced-select.entry.js +104 -227
  424. package/dist/esm/dso-alert_7.entry.js +68 -27
  425. package/dist/esm/dso-annotation-activiteit.entry.js +5 -5
  426. package/dist/esm/dso-annotation-gebiedsaanwijzing.entry.js +4 -4
  427. package/dist/esm/dso-annotation-kaart.entry.js +3 -3
  428. package/dist/esm/dso-annotation-locatie_2.entry.js +6 -6
  429. package/dist/esm/dso-annotation-omgevingsnormwaarde.entry.js +5 -5
  430. package/dist/esm/dso-attachments-counter_2.entry.js +3 -3
  431. package/dist/esm/dso-autosuggest.entry.js +23 -14
  432. package/dist/esm/dso-banner.entry.js +2 -2
  433. package/dist/esm/dso-button-group.entry.js +2 -2
  434. package/dist/esm/dso-card-container.entry.js +1 -1
  435. package/dist/esm/dso-card.entry.js +2 -2
  436. package/dist/esm/dso-contact-information.entry.js +1 -1
  437. package/dist/esm/dso-cursor-tooltip.entry.js +1 -1
  438. package/dist/esm/dso-date-picker.entry.js +1 -1
  439. package/dist/esm/dso-document-card.entry.js +2 -2
  440. package/dist/esm/dso-dropdown-menu-group.entry.js +29 -0
  441. package/dist/esm/dso-dropdown-menu-item.entry.js +39 -0
  442. package/dist/esm/dso-dropdown-menu.entry.js +80 -101
  443. package/dist/esm/dso-header.entry.js +22 -5
  444. package/dist/esm/dso-highlight-box.entry.js +2 -2
  445. package/dist/esm/dso-history-item.entry.js +2 -2
  446. package/dist/esm/dso-icon-button.entry.js +95 -0
  447. package/dist/esm/{dso-icon_2.entry.js → dso-icon.entry.js} +3 -95
  448. package/dist/esm/dso-info_3.entry.js +7 -7
  449. package/dist/esm/dso-input-range.entry.js +3 -3
  450. package/dist/esm/dso-label_3.entry.js +7 -7
  451. package/dist/esm/dso-legend-group.entry.js +3 -3
  452. package/dist/esm/dso-legend-item.entry.js +3 -3
  453. package/dist/esm/dso-legend.entry.js +4 -4
  454. package/dist/esm/dso-list-button.entry.js +3 -3
  455. package/dist/esm/dso-logo.entry.js +2 -2
  456. package/dist/esm/dso-map-base-layers.entry.js +3 -3
  457. package/dist/esm/dso-map-controls.entry.js +4 -4
  458. package/dist/esm/dso-map-layer-object.entry.js +4 -4
  459. package/dist/esm/dso-map-layer.entry.js +4 -4
  460. package/dist/esm/dso-map-message.entry.js +3 -3
  461. package/dist/esm/dso-map-overlays.entry.js +3 -3
  462. package/dist/esm/dso-mark-bar.entry.js +2 -2
  463. package/dist/esm/dso-modal.entry.js +4 -4
  464. package/dist/esm/dso-onboarding-tip.entry.js +2 -2
  465. package/dist/esm/dso-pagination.entry.js +1 -1
  466. package/dist/esm/dso-plekinfo-card.entry.js +4 -4
  467. package/dist/esm/dso-progress-indicator.entry.js +3 -3
  468. package/dist/esm/dso-project-item.entry.js +3 -3
  469. package/dist/esm/dso-responsive-element.entry.js +19 -5
  470. package/dist/esm/dso-scrollable.entry.js +4 -4
  471. package/dist/esm/dso-segmented-button.entry.js +2 -2
  472. package/dist/esm/dso-skiplink.entry.js +2 -2
  473. package/dist/esm/dso-survey-rating.entry.js +4 -4
  474. package/dist/esm/dso-tab.entry.js +1 -1
  475. package/dist/esm/dso-tabs.entry.js +2 -2
  476. package/dist/esm/dso-tijdreis-banner.entry.js +2 -2
  477. package/dist/esm/dso-toolkit.js +4 -4
  478. package/dist/esm/dso-tooltip.entry.js +2 -2
  479. package/dist/esm/dso-tree-view.entry.js +3 -3
  480. package/dist/esm/dso-viewer-grid.entry.js +4 -4
  481. package/dist/esm/dsot-document-component-demo.entry.js +1 -1
  482. package/dist/esm/{i18n-DwBHVuoZ.js → i18n-CRgylkO_.js} +12 -4
  483. package/dist/esm/index-OTFpj3vR.js +278 -0
  484. package/dist/esm/{index-DrQGiJP8.js → index-pqfDfKeZ.js} +1 -1
  485. package/dist/{bundle/p-PsHl6ZhV.js → esm/index.esm-BZ0vuOVx.js} +1 -1
  486. package/dist/esm/loader.js +3 -3
  487. package/dist/esm/{parse-wijzigactie-from-node.function-BroGebB4.js → parse-wijzigactie-from-node.function-Cn1GXjSM.js} +1 -1
  488. package/dist/esm/{tooltip.functional-component-nHAIYF3o.js → tooltip.functional-component-CsWjK64w.js} +1 -1
  489. package/dist/esm/{wrap-wijzigactie.functional-component-BCT1o51-.js → wrap-wijzigactie.functional-component-DzSLSv0i.js} +1 -1
  490. package/dist/types/components/annotation/annotation-list-renvooi-values.d.ts +2 -2
  491. package/dist/types/components/autosuggest/autosuggest.d.ts +2 -0
  492. package/dist/types/components/dropdown-menu/dropdown-menu-group/dropdown-menu-group.d.ts +12 -0
  493. package/dist/types/components/dropdown-menu/dropdown-menu-item/dropdown-menu-item.d.ts +31 -0
  494. package/dist/types/components/dropdown-menu/dropdown-menu.d.ts +25 -20
  495. package/dist/types/components/dropdown-menu/dropdown-menu.interfaces.d.ts +10 -0
  496. package/dist/types/components/header/header.d.ts +3 -0
  497. package/dist/types/components/image-overlay/image-overlay.d.ts +3 -0
  498. package/dist/types/components/responsive-element/responsive-element.d.ts +3 -0
  499. package/dist/types/components/table/table.d.ts +3 -0
  500. package/dist/types/components.d.ts +99 -25
  501. package/dist/types/stencil-public-runtime.d.ts +1 -0
  502. package/package.json +13 -13
  503. package/dist/bundle/p-0h9cOnX9.js +0 -148
  504. package/dist/bundle/p-6-0kKG2F.js +0 -189
  505. package/dist/bundle/p-BnDZHxeO.js +0 -166
  506. package/dist/bundle/p-C2l5d-V9.js +0 -341
  507. package/dist/bundle/p-C332B2dN.js +0 -100
  508. package/dist/bundle/p-HXung-P3.js +0 -1209
  509. package/dist/bundle/p-z2uKmX1Q.js +0 -83
  510. package/dist/bundle/p-zYhsKlIm.js +0 -124
  511. package/dist/dso-toolkit/p-0146f231.entry.js +0 -1
  512. package/dist/dso-toolkit/p-040f3f53.entry.js +0 -1
  513. package/dist/dso-toolkit/p-0cc62094.entry.js +0 -1
  514. package/dist/dso-toolkit/p-1bb92456.entry.js +0 -7
  515. package/dist/dso-toolkit/p-1ea5fb0d.entry.js +0 -1
  516. package/dist/dso-toolkit/p-4a493df9.entry.js +0 -1
  517. package/dist/dso-toolkit/p-5a25d8d9.entry.js +0 -1
  518. package/dist/dso-toolkit/p-61fd983a.entry.js +0 -1
  519. package/dist/dso-toolkit/p-6c41b0a9.entry.js +0 -1
  520. package/dist/dso-toolkit/p-7f3898d7.entry.js +0 -1
  521. package/dist/dso-toolkit/p-869027bc.entry.js +0 -1
  522. package/dist/dso-toolkit/p-8b9194ca.entry.js +0 -1
  523. package/dist/dso-toolkit/p-9b0716d8.entry.js +0 -1
  524. package/dist/dso-toolkit/p-9ce75fcd.entry.js +0 -1
  525. package/dist/dso-toolkit/p-AZpKxz9p.js +0 -1
  526. package/dist/dso-toolkit/p-BKr5d3Gu.js +0 -1
  527. package/dist/dso-toolkit/p-Dev1bLxp.js +0 -1
  528. package/dist/dso-toolkit/p-DwBHVuoZ.js +0 -1
  529. package/dist/dso-toolkit/p-a286ac17.entry.js +0 -1
  530. package/dist/dso-toolkit/p-a8184705.entry.js +0 -1
  531. package/dist/dso-toolkit/p-ab33a108.entry.js +0 -1
  532. package/dist/dso-toolkit/p-b2d0319d.entry.js +0 -1
  533. package/dist/dso-toolkit/p-bf803e4f.entry.js +0 -1
  534. package/dist/dso-toolkit/p-c0111a70.entry.js +0 -1
  535. package/dist/dso-toolkit/p-d4539b83.entry.js +0 -1
  536. package/dist/dso-toolkit/p-db32a77a.entry.js +0 -1
  537. package/dist/dso-toolkit/p-go_iJ4_L.js +0 -1
  538. /package/dist/dso-toolkit/{p-DrQGiJP8.js → p-pqfDfKeZ.js} +0 -0
@@ -1,122 +1,100 @@
1
1
  import { autoUpdate, computePosition, flip, offset } from "@floating-ui/dom";
2
- import { Host, h } from "@stencil/core";
3
- import { tabbable } from "tabbable";
2
+ import { Host, forceUpdate, h, } from "@stencil/core";
3
+ import { createStore } from "@stencil/store";
4
4
  import { v4 as uuidv4 } from "uuid";
5
- import { getActiveElement } from "../../utils/get-active-element";
6
5
  export class DropdownMenu {
7
6
  constructor() {
8
7
  /**
9
- * Whether the menu is open or closed.
10
- * This attribute is reflected and mutable.
8
+ * The variant of the Button to toggle the menu
11
9
  */
10
+ this.variant = "secondary";
12
11
  this.open = false;
13
- /**
14
- * Alignment of the dropdown
15
- */
16
- this.dropdownAlign = "left";
17
- /**
18
- * Space between button and dropdown options
19
- */
20
- this.dropdownOptionsOffset = 2;
21
- /**
22
- * Whether the menu is checkable.
23
- */
24
- this.checkable = false;
25
12
  this.focusOutListener = (event) => {
26
- if (this.open &&
27
- (!(event.relatedTarget instanceof HTMLElement) || !this.tabbables(true).includes(event.relatedTarget))) {
13
+ if (this.open && !(event.relatedTarget instanceof HTMLElement)) {
28
14
  this.toggleOptions(false);
29
15
  }
30
16
  };
31
- this.keyDownListener = (event) => {
17
+ this.keyDownHandler = (event) => {
18
+ if (!(event.target instanceof HTMLElement)) {
19
+ return;
20
+ }
32
21
  if (event.defaultPrevented || !this.open) {
33
22
  return;
34
23
  }
35
24
  switch (event.key) {
36
25
  case "Tab":
37
26
  if (event.shiftKey) {
38
- this.tabInPopup(this.tabbables(true), -1);
27
+ this.moveFocusToPrevious(event.target);
39
28
  }
40
29
  else {
41
- this.tabInPopup(this.tabbables(true), 1);
30
+ this.moveFocusToNext(event.target);
42
31
  }
43
32
  break;
44
33
  case "ArrowDown":
45
- this.tabInPopup(this.tabbables(false), 1);
34
+ this.moveFocusToNext(event.target, false);
46
35
  break;
47
36
  case "ArrowUp":
48
- this.tabInPopup(this.tabbables(false), -1);
37
+ this.moveFocusToPrevious(event.target, false);
49
38
  break;
50
39
  case "Escape":
51
40
  this.escape();
52
41
  break;
53
- case " ":
54
- if (event.target instanceof HTMLElement) {
55
- event.target.click();
56
- }
57
- break;
58
42
  default:
59
43
  return;
60
44
  }
61
45
  event.preventDefault();
62
46
  };
63
47
  this.escape = () => {
64
- this.button.focus();
48
+ this.button?.focus();
65
49
  this.toggleOptions(false);
66
50
  };
51
+ const { state } = createStore({
52
+ checkable: false,
53
+ });
54
+ this.dropdownMenuState = state;
67
55
  }
68
- get button() {
69
- const button = this.host.querySelector('button[slot="toggle"]');
70
- if (!(button instanceof HTMLButtonElement)) {
71
- throw new ReferenceError("Mandatory toggle button not found");
72
- }
73
- return button;
56
+ /**
57
+ * Whether the menu items are checkable.
58
+ */
59
+ get checkable() {
60
+ return this.dropdownMenuState.checkable;
74
61
  }
75
- tabbables(withButton) {
76
- const tabbables = this.host.isConnected ? tabbable(this.host) : [];
77
- return withButton ? tabbables : tabbables.filter((element) => element !== this.button);
62
+ set checkable(value) {
63
+ this.dropdownMenuState.checkable = value || false;
64
+ forceUpdate(this.host);
78
65
  }
79
- componentDidLoad() {
80
- this.button.setAttribute("aria-haspopup", "menu");
81
- this.button.setAttribute("aria-expanded", "false");
82
- if (!this.button.id) {
83
- this.button.id = uuidv4();
84
- }
85
- const dropdownOptionsElement = this.host.querySelector(".dso-dropdown-options");
86
- if (!(dropdownOptionsElement instanceof HTMLElement)) {
87
- throw new Error("dropdown options element is not instanceof HTMLElement");
88
- }
89
- dropdownOptionsElement.setAttribute("role", "menu");
90
- dropdownOptionsElement.setAttribute("aria-labelledby", this.button.id);
91
- for (const ul of Array.from(this.host.getElementsByTagName("ul"))) {
92
- ul.setAttribute("role", "group");
93
- for (const li of Array.from(ul.getElementsByTagName("li"))) {
94
- li.setAttribute("role", "none");
95
- }
66
+ dsoClickHandler(event) {
67
+ event.stopPropagation();
68
+ if (this.open && event.target instanceof HTMLElement) {
69
+ this.toggleOptions(false);
96
70
  }
97
71
  }
72
+ /**
73
+ * @internal
74
+ */
75
+ async _getState() {
76
+ return this.dropdownMenuState;
77
+ }
78
+ dropdownMenuTabbables(withButton) {
79
+ const menuItems = this.host.isConnected
80
+ ? Array.from(this.host.querySelectorAll(":scope > dso-dropdown-menu-group > dso-dropdown-menu-item"))
81
+ : [];
82
+ return withButton ? [this.host, ...menuItems] : menuItems;
83
+ }
98
84
  componentDidRender() {
99
- for (const li of Array.from(this.host.getElementsByTagName("li"))) {
100
- for (const tab of this.host.isConnected ? tabbable(li) : []) {
101
- tab.setAttribute("role", this.checkable ? "menuitemradio" : "menuitem");
102
- if (this.checkable) {
103
- tab.setAttribute("aria-checked", li.classList.contains("dso-checked").toString());
104
- }
105
- }
106
- }
107
- this.button.setAttribute("aria-expanded", this.open ? "true" : "false");
108
- if (this.popoverElement && !this.cleanUp) {
85
+ if (this.button && this.popoverElement && !this.cleanUp) {
109
86
  const element = this.popoverElement;
110
- this.cleanUp = autoUpdate(this.button, element, () => {
111
- computePosition(this.button, element, {
87
+ const referenceElement = this.button;
88
+ this.cleanUp = autoUpdate(referenceElement, element, () => {
89
+ computePosition(referenceElement, element, {
112
90
  strategy: "fixed",
113
91
  middleware: [
114
- offset(this.dropdownOptionsOffset),
92
+ offset(2),
115
93
  flip({
116
- padding: this.dropdownOptionsOffset,
94
+ padding: 2,
117
95
  }),
118
96
  ],
119
- placement: this.dropdownAlign === "right" ? "bottom-end" : "bottom-start",
97
+ placement: "bottom-start",
120
98
  }).then(({ x, y }) => {
121
99
  Object.assign(element.style, {
122
100
  left: `${x}px`,
@@ -126,51 +104,52 @@ export class DropdownMenu {
126
104
  });
127
105
  }
128
106
  }
129
- onClick(event) {
130
- const composedPath = event.composedPath();
131
- if (this.isToggleButtonEvent(composedPath)) {
132
- this.toggleOptions();
133
- }
134
- else if (this.open && this.isMenuItemEvent(composedPath)) {
135
- this.toggleOptions(false);
136
- }
137
- }
138
- isToggleButtonEvent(composedPath) {
139
- return composedPath.includes(this.button);
140
- }
141
- isMenuItemEvent(composedPath) {
142
- return composedPath.includes(this.host) && !this.isToggleButtonEvent(composedPath);
143
- }
144
107
  toggleOptions(force) {
145
108
  this.open = force ?? !this.open;
146
109
  if (this.popoverElement?.isConnected) {
147
- this.popoverElement?.togglePopover(this.open);
110
+ this.popoverElement.togglePopover(this.open);
148
111
  }
149
112
  if (!this.open && this.cleanUp) {
150
113
  this.cleanUp();
151
114
  this.cleanUp = undefined;
152
115
  }
153
116
  }
154
- connectedCallback() {
155
- this.host.addEventListener("keydown", this.keyDownListener);
156
- }
157
117
  disconnectedCallback() {
158
- this.host.removeEventListener("keydown", this.keyDownListener);
159
118
  this.toggleOptions(false);
160
119
  }
161
- tabInPopup(tabbables, direction) {
162
- const currentIndex = tabbables.findIndex((e) => e === getActiveElement());
163
- let nextIndex = currentIndex + direction;
164
- if (nextIndex >= tabbables.length) {
165
- nextIndex = 0;
120
+ get lastItem() {
121
+ return this.dropdownMenuTabbables(true).at(-1);
122
+ }
123
+ firstItem(withButton) {
124
+ return this.dropdownMenuTabbables(withButton)[0];
125
+ }
126
+ moveFocusToPrevious(focussedElement, withButton = true) {
127
+ const tabbables = this.dropdownMenuTabbables(withButton);
128
+ const index = tabbables.findIndex((element) => element === focussedElement);
129
+ const next = this.dropdownMenuTabbables(withButton)[index - 1] ?? this.lastItem;
130
+ this.moveFocusTo(next);
131
+ }
132
+ moveFocusToNext(focussedElement, withButton = true) {
133
+ const tabbables = this.dropdownMenuTabbables(withButton);
134
+ const index = tabbables.findIndex((element) => element === focussedElement);
135
+ const next = this.dropdownMenuTabbables(withButton)[index + 1] ?? this.firstItem(withButton);
136
+ this.moveFocusTo(next);
137
+ }
138
+ moveFocusTo(element) {
139
+ if (!element) {
140
+ return;
141
+ }
142
+ if (element === this.host && this.button) {
143
+ this.button.focus();
144
+ return;
166
145
  }
167
- else if (nextIndex < 0) {
168
- nextIndex = tabbables.length - 1;
146
+ if ("_dsoFocus" in element) {
147
+ element._dsoFocus();
169
148
  }
170
- tabbables[nextIndex]?.focus();
171
149
  }
172
150
  render() {
173
- return (h(Host, { key: '2b1a77a0d5ec49784f038af3540c6369d4c2cc2c', onFocusout: this.focusOutListener }, h("slot", { key: '32d8b7f6e23a5b11b5ab3bdeb78575fc6855322f', name: "toggle" }), h("div", { key: '262486ced58fb98375ccf8abc38959144fc9296d', popover: "manual", ref: (element) => (this.popoverElement = element) }, h("slot", { key: '2c76def3904869f1a6227430f6718d85eb9cfc30' }))));
151
+ const buttonId = uuidv4();
152
+ return (h(Host, { key: '73eb6230081dd28bb473514f6b0aa26171c975d1', onFocusout: this.focusOutListener, onKeyDown: this.keyDownHandler }, this.label && (h("button", { key: '2723bd3be70034df5380907ae417c53cd6485da1', 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: '0ee3b32c6e5b630ed0f2b073ef8032be71643a41', icon: this.open ? "chevron-up" : "chevron-down" }))), h("div", { key: '7ba3817d9bb1e1af868f59d3e9c1401ba5653544', popover: "manual", class: "dso-dropdown-options", "aria-labelledby": buttonId, role: "menu", ref: (element) => (this.popoverElement = element) }, h("slot", { key: 'af7124507118b89d0915992daa24c66952364d15' }))));
174
153
  }
175
154
  static get is() { return "dso-dropdown-menu"; }
176
155
  static get encapsulation() { return "shadow"; }
@@ -186,9 +165,9 @@ export class DropdownMenu {
186
165
  }
187
166
  static get properties() {
188
167
  return {
189
- "open": {
168
+ "checkable": {
190
169
  "type": "boolean",
191
- "mutable": true,
170
+ "mutable": false,
192
171
  "complexType": {
193
172
  "original": "boolean",
194
173
  "resolved": "boolean",
@@ -198,82 +177,95 @@ export class DropdownMenu {
198
177
  "optional": false,
199
178
  "docs": {
200
179
  "tags": [],
201
- "text": "Whether the menu is open or closed.\r\nThis attribute is reflected and mutable."
180
+ "text": "Whether the menu items are checkable."
202
181
  },
203
- "getter": false,
204
- "setter": false,
182
+ "getter": true,
183
+ "setter": true,
205
184
  "reflect": true,
206
- "attribute": "open",
207
- "defaultValue": "false"
185
+ "attribute": "checkable"
208
186
  },
209
- "dropdownAlign": {
187
+ "label": {
210
188
  "type": "string",
211
189
  "mutable": false,
212
190
  "complexType": {
213
- "original": "\"left\" | \"right\"",
214
- "resolved": "\"left\" | \"right\"",
191
+ "original": "string | undefined",
192
+ "resolved": "string | undefined",
215
193
  "references": {}
216
194
  },
217
195
  "required": false,
218
196
  "optional": false,
219
197
  "docs": {
220
198
  "tags": [],
221
- "text": "Alignment of the dropdown"
199
+ "text": "The label of the Dropdown Menu Button"
222
200
  },
223
201
  "getter": false,
224
202
  "setter": false,
225
- "reflect": false,
226
- "attribute": "dropdown-align",
227
- "defaultValue": "\"left\""
203
+ "reflect": true,
204
+ "attribute": "label"
228
205
  },
229
- "dropdownOptionsOffset": {
230
- "type": "number",
206
+ "variant": {
207
+ "type": "string",
231
208
  "mutable": false,
232
209
  "complexType": {
233
- "original": "number",
234
- "resolved": "number",
210
+ "original": "\"primary\" | \"secondary\" | \"tertiary\"",
211
+ "resolved": "\"primary\" | \"secondary\" | \"tertiary\"",
235
212
  "references": {}
236
213
  },
237
214
  "required": false,
238
215
  "optional": false,
239
216
  "docs": {
240
217
  "tags": [],
241
- "text": "Space between button and dropdown options"
218
+ "text": "The variant of the Button to toggle the menu"
242
219
  },
243
220
  "getter": false,
244
221
  "setter": false,
245
- "reflect": false,
246
- "attribute": "dropdown-options-offset",
247
- "defaultValue": "2"
248
- },
249
- "checkable": {
250
- "type": "boolean",
251
- "mutable": false,
222
+ "reflect": true,
223
+ "attribute": "variant",
224
+ "defaultValue": "\"secondary\""
225
+ }
226
+ };
227
+ }
228
+ static get states() {
229
+ return {
230
+ "open": {}
231
+ };
232
+ }
233
+ static get methods() {
234
+ return {
235
+ "_getState": {
252
236
  "complexType": {
253
- "original": "boolean",
254
- "resolved": "boolean",
255
- "references": {}
237
+ "signature": "() => Promise<DropdownMenuInternalState>",
238
+ "parameters": [],
239
+ "references": {
240
+ "Promise": {
241
+ "location": "global",
242
+ "id": "global::Promise"
243
+ },
244
+ "DropdownMenuInternalState": {
245
+ "location": "import",
246
+ "path": "./dropdown-menu.interfaces",
247
+ "id": "src/components/dropdown-menu/dropdown-menu.interfaces.ts::DropdownMenuInternalState",
248
+ "referenceLocation": "DropdownMenuInternalState"
249
+ }
250
+ },
251
+ "return": "Promise<DropdownMenuInternalState>"
256
252
  },
257
- "required": false,
258
- "optional": false,
259
253
  "docs": {
260
- "tags": [],
261
- "text": "Whether the menu is checkable."
262
- },
263
- "getter": false,
264
- "setter": false,
265
- "reflect": false,
266
- "attribute": "checkable",
267
- "defaultValue": "false"
254
+ "text": "",
255
+ "tags": [{
256
+ "name": "internal",
257
+ "text": undefined
258
+ }]
259
+ }
268
260
  }
269
261
  };
270
262
  }
271
263
  static get elementRef() { return "host"; }
272
264
  static get listeners() {
273
265
  return [{
274
- "name": "click",
275
- "method": "onClick",
276
- "target": "window",
266
+ "name": "dsoClick",
267
+ "method": "dsoClickHandler",
268
+ "target": undefined,
277
269
  "capture": false,
278
270
  "passive": false
279
271
  }];
@@ -36,10 +36,10 @@ export class Expandable {
36
36
  }
37
37
  }
38
38
  render() {
39
- return (h(Host, { key: 'cb4240aaf6c07bc54ffe334b2ba05a7471593dcd', "aria-hidden": this.open ? "false" : "true", class: clsx({
39
+ return (h(Host, { key: 'abc68cc74bade4651794f59e31ec3260306f4c79', "aria-hidden": this.open ? "false" : "true", class: clsx({
40
40
  "dso-animate-ready": this.enableAnimation,
41
41
  "dso-hide": this.isClosed,
42
- }) }, h("div", { key: '5e649127a1d0b41628bf5106f161d037cbc02d4e', class: "slot-container" }, h("slot", { key: '44ccc85c8af6b6fd368323bd04b22624227daa70' }))));
42
+ }) }, h("div", { key: '064fce34f03a94e976b826025e45e0dada4fdb12', class: "slot-container" }, h("slot", { key: '8f5c525d7c0ad8d1a3c3739ee7c45ebbc26ad9b4' }))));
43
43
  }
44
44
  static get is() { return "dso-expandable"; }
45
45
  static get encapsulation() { return "shadow"; }
@@ -86,11 +86,24 @@ export class Header {
86
86
  };
87
87
  this.menuItemElementRefs = [];
88
88
  this.text = i18n(() => this.host, translations);
89
- this.resizeObserver = new ResizeObserver(() => {
89
+ this.flushResize = () => {
90
+ this.resizeFrameId = undefined;
91
+ if (!this.host.isConnected) {
92
+ return;
93
+ }
90
94
  this.resetVisibleMenuItems();
91
95
  this.toggleOptions(false);
92
96
  this.dropdownOptionsOffset = 0;
93
97
  forceUpdate(this.host);
98
+ };
99
+ this.scheduleResize = () => {
100
+ if (this.resizeFrameId !== undefined) {
101
+ return;
102
+ }
103
+ this.resizeFrameId = requestAnimationFrame(this.flushResize);
104
+ };
105
+ this.resizeObserver = new ResizeObserver(() => {
106
+ this.scheduleResize();
94
107
  });
95
108
  this.focusOutListener = (event) => {
96
109
  if (this.open &&
@@ -170,6 +183,10 @@ export class Header {
170
183
  }
171
184
  disconnectedCallback() {
172
185
  this.resizeObserver.disconnect();
186
+ if (this.resizeFrameId !== undefined) {
187
+ cancelAnimationFrame(this.resizeFrameId);
188
+ this.resizeFrameId = undefined;
189
+ }
173
190
  this.toggleOptions(false);
174
191
  }
175
192
  componentDidRender() {
@@ -206,7 +223,7 @@ export class Header {
206
223
  }
207
224
  }
208
225
  render() {
209
- return (h(Host, { key: '049a7cd2e6c5beccbe9a1b23bcd505ce2cfbc1e4', "is-compact": this.isCompact }, h("div", { key: '69626521734262e4cb40369667b084bee23cec42', class: "dso-header" }, h("div", { key: '7e0106defaff8c5f6c0c8942c987d3416acb39bc', class: "logo-container" }, h("slot", { key: '7355a1f157c81f785bb101f7c5490aa6ae0330c4', name: "logo" })), this.isCompact ? this.renderCompact() : this.renderNormal())));
226
+ return (h(Host, { key: '7616366268bd638278a5c8de35edad2caf574b41', "is-compact": this.isCompact }, h("div", { key: '94d457313e7fae53ce4d680c1f046f04c6bf4eb5', class: "dso-header" }, h("div", { key: '5f28b536b1cf02cae5a8f49ff9a0013c4ac44734', class: "logo-container" }, h("slot", { key: 'c806a6d6443faab890b185b7f78b561f0b5bc133', name: "logo" })), this.isCompact ? this.renderCompact() : this.renderNormal())));
210
227
  }
211
228
  tabbables(withButton) {
212
229
  const tabbables = this.dropdownElement ? tabbable(this.dropdownElement) : [];
@@ -2,7 +2,7 @@ import { Host, h } from "@stencil/core";
2
2
  export class HighlightBox {
3
3
  render() {
4
4
  const hasCounter = this.step || !!this.element.querySelector("[slot=icon]");
5
- return (h(Host, { key: '11fabaa968d990291c856c89f08c7d9cf73c47e8', "has-counter": hasCounter }, hasCounter && h("div", { key: 'f5bdf7d62ebf65996f6cf8c151ef4a4bab65654d', class: "dso-step-counter" }, this.step ?? h("slot", { key: '7a5a4f56968c88710cdb095bb9f2768efb9972f3', name: "icon" })), h("slot", { key: 'a2f640620379148fb881f993e17cf42d9e02bb4c' })));
5
+ return (h(Host, { key: '1e902cf67675123014ad9e2c1bfcc35284c2828b', "has-counter": hasCounter }, hasCounter && h("div", { key: '59a5633cf405c58276188f21f0627a00ad3d6a11', class: "dso-step-counter" }, this.step ?? h("slot", { key: 'edb70c650e0c9a63421b4c88b8f8ed3c79011d5c', name: "icon" })), h("slot", { key: '255d6709a5a8eb50e8a7aec26671505cbddab89a' })));
6
6
  }
7
7
  static get is() { return "dso-highlight-box"; }
8
8
  static get encapsulation() { return "shadow"; }
@@ -42,7 +42,7 @@ export class HistoryItem {
42
42
  return this.host.querySelector("[slot='warning']");
43
43
  }
44
44
  render() {
45
- return (h("div", { key: '46b086a93f12ddfa53c1fbabd36a96c7b2905bf9', class: "history-item" }, h("div", { key: 'e6e36dbbeea19b949f39e08d1447e159f3e9dec3', class: "history-item-date" }, h("slot", { key: '2abff00e5b46822d29f0ba132ec7bc611a743a77', name: "date" })), h("div", { key: '29015f198acaefe304926b6190cef2360468b171', class: "history-item-content" }, h("div", { key: '979f988d463139993a2ce50fe6c7aa5f67376055', class: "history-item-status-message" }, h("dso-icon", { key: '54fed97c8f7cda66a062a45135b4de5f8ae2e99d', icon: this.typeIcons[this.type], "aria-hidden": "true" }), h("slot", { key: 'a4e0f448ef5e2b8814894ec7ec363a9d1ca49054', name: "status" })), this.titleSlottedElement !== null && this.href && (h("div", { key: 'c7552d220c1c6975eddee04a05ef47fc901ed101', class: "history-item-title" }, h("a", { key: 'afb73216739f1e773e8af90ebd0fb3f9883389a1', href: this.href, class: "title-anchor", onClick: (e) => this.clickEventHandler(e), "aria-current": this.current ? "true" : undefined }, h("span", { key: 'b7ef7db153f9ab537f57c42ebe0b8cfeb05290c8', class: "history-item-title-content" }, h("slot", { key: '8102f8a64cea0c4a91403db71fe4238b8ab45657', name: "title" })), "\u2060", h("dso-icon", { key: '0db7fec66135bb97e504d69ec496dbe07f649080', icon: "chevron-right", "aria-hidden": "true" })))), this.explanationSlottedElement !== null && (h("div", { key: '04668c9a02458071fa95ef7ab07ab684c59209e2', class: "history-item-explanation" }, h("slot", { key: 'c8dce4885752b53bd86569793b0d479e136e020c', name: "explanation" }))), this.warningSlottedElement !== null && (h("div", { key: '4e70edd351fa28d880395da0d39635b80b89e5c6', class: "history-item-warning" }, h("dso-icon", { key: 'd57c337527ab3e37388f1ddcb27f127267dcd59c', icon: "status-warning-red-solid", role: "img", "aria-label": "Waarschuwing" }), h("slot", { key: '306f3b2e834b1f707f0422f7a928758787955189', name: "warning" }))))));
45
+ return (h("div", { key: '286c3a153bcfe21c6a1061ec684f034dce5b5dd0', class: "history-item" }, h("div", { key: '06e056e57255b7fbaa76e953851f9b7866daa11c', class: "history-item-date" }, h("slot", { key: '8e78082b36fb909bc733ca04edc75c00e811052d', name: "date" })), h("div", { key: '17e209c98bbf9af6882973d3fb7ff96b7728ccda', class: "history-item-content" }, h("div", { key: 'bd575db077061c0d47f52d3ef20a0bc9f105dc19', class: "history-item-status-message" }, h("dso-icon", { key: '35d6e6822cd74dd891820cf9cd105c06d258fc86', icon: this.typeIcons[this.type], "aria-hidden": "true" }), h("slot", { key: '569d3fb874ec165b98a2c9adeb3cb486e37e04fc', name: "status" })), this.titleSlottedElement !== null && this.href && (h("div", { key: 'ed60f29a6b6210938c330fdd96eddc11304f124e', class: "history-item-title" }, h("a", { key: 'beeacf730a1b5f2982904a5a8d33fd77d895b516', href: this.href, class: "title-anchor", onClick: (e) => this.clickEventHandler(e), "aria-current": this.current ? "true" : undefined }, h("span", { key: 'e91ff8f57b28c5ac65551a7de78062a280c3db11', class: "history-item-title-content" }, h("slot", { key: '683603e86b5e949f2ec8fa97a30644264733768b', name: "title" })), "\u2060", h("dso-icon", { key: '9646a46c7637c2c31aad5966cf26b44bf5a5ddd2', icon: "chevron-right", "aria-hidden": "true" })))), this.explanationSlottedElement !== null && (h("div", { key: '94c3a4affe2dbff1db032ea96b9eb6cc400c25d3', class: "history-item-explanation" }, h("slot", { key: 'b2f1927d4429e9a051bc8bd2b107ba8d8a8fbd14', name: "explanation" }))), this.warningSlottedElement !== null && (h("div", { key: '0578320d731fc2b982ced2f19b577878ba73d0c0', class: "history-item-warning" }, h("dso-icon", { key: '2e6589b370b700117c4761a81be83b46db4bcdef', icon: "status-warning-red-solid", role: "img", "aria-label": "Waarschuwing" }), h("slot", { key: '739c49fd64725c068f781ca6369465d0c67479ce', name: "warning" }))))));
46
46
  }
47
47
  static get is() { return "dso-history-item"; }
48
48
  static get encapsulation() { return "shadow"; }
@@ -258,7 +258,7 @@ export class Icon {
258
258
  if (!icon) {
259
259
  throw new TypeError(`Unknown svg: ${this.icon}`);
260
260
  }
261
- return h("span", { key: 'a3de4e16f316b2ccb22a32de5552f8458e41f8c9', class: "icon-container", innerHTML: icon.svg });
261
+ return h("span", { key: '442fcbabe7a1d6a43bedc87f5f337889ba210aec', class: "icon-container", innerHTML: icon.svg });
262
262
  }
263
263
  }
264
264
  static get is() { return "dso-icon"; }