@dso-toolkit/core 62.17.0 → 62.19.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 (874) hide show
  1. package/dist/cjs/app-globals-3a1e7e63.js +7 -0
  2. package/dist/cjs/app-globals-3a1e7e63.js.map +1 -0
  3. package/dist/cjs/clsx-fc789adc.js +7 -0
  4. package/dist/cjs/clsx-fc789adc.js.map +1 -0
  5. package/dist/cjs/{create-identifier-5900c27b.js → create-identifier-4a76663b.js} +3 -3
  6. package/dist/cjs/{create-identifier-5900c27b.js.map → create-identifier-4a76663b.js.map} +1 -1
  7. package/dist/cjs/dso-accordion-section.cjs.entry.js +159 -158
  8. package/dist/cjs/dso-accordion-section.cjs.entry.js.map +1 -1
  9. package/dist/cjs/dso-accordion.cjs.entry.js +34 -33
  10. package/dist/cjs/dso-accordion.cjs.entry.js.map +1 -1
  11. package/dist/cjs/dso-action-list-item.cjs.entry.js +17 -16
  12. package/dist/cjs/dso-action-list-item.cjs.entry.js.map +1 -1
  13. package/dist/cjs/dso-action-list.cjs.entry.js +10 -9
  14. package/dist/cjs/dso-action-list.cjs.entry.js.map +1 -1
  15. package/dist/cjs/dso-advanced-select.cjs.entry.js +79 -78
  16. package/dist/cjs/dso-advanced-select.cjs.entry.js.map +1 -1
  17. package/dist/cjs/dso-alert_7.cjs.entry.js +834 -773
  18. package/dist/cjs/dso-alert_7.cjs.entry.js.map +1 -1
  19. package/dist/cjs/dso-annotation-output_3.cjs.entry.js +138 -135
  20. package/dist/cjs/dso-annotation-output_3.cjs.entry.js.map +1 -1
  21. package/dist/cjs/dso-attachments-counter.cjs.entry.js +10 -9
  22. package/dist/cjs/dso-attachments-counter.cjs.entry.js.map +1 -1
  23. package/dist/cjs/dso-autosuggest.cjs.entry.js +258 -245
  24. package/dist/cjs/dso-autosuggest.cjs.entry.js.map +1 -1
  25. package/dist/cjs/dso-banner.cjs.entry.js +15 -14
  26. package/dist/cjs/dso-banner.cjs.entry.js.map +1 -1
  27. package/dist/cjs/dso-card-container.cjs.entry.js +10 -9
  28. package/dist/cjs/dso-card-container.cjs.entry.js.map +1 -1
  29. package/dist/cjs/dso-card.cjs.entry.js +61 -60
  30. package/dist/cjs/dso-card.cjs.entry.js.map +1 -1
  31. package/dist/cjs/dso-date-picker-legacy.cjs.entry.js +598 -597
  32. package/dist/cjs/dso-date-picker-legacy.cjs.entry.js.map +1 -1
  33. package/dist/cjs/dso-date-picker.cjs.entry.js +124 -123
  34. package/dist/cjs/dso-date-picker.cjs.entry.js.map +1 -1
  35. package/dist/cjs/dso-dropdown-menu.cjs.entry.js +215 -214
  36. package/dist/cjs/dso-dropdown-menu.cjs.entry.js.map +1 -1
  37. package/dist/cjs/dso-expandable.cjs.entry.js +49 -1444
  38. package/dist/cjs/dso-expandable.cjs.entry.js.map +1 -1
  39. package/dist/cjs/dso-header.cjs.entry.js +119 -118
  40. package/dist/cjs/dso-header.cjs.entry.js.map +1 -1
  41. package/dist/cjs/dso-helpcenter-panel.cjs.entry.js +80 -79
  42. package/dist/cjs/dso-helpcenter-panel.cjs.entry.js.map +1 -1
  43. package/dist/cjs/dso-highlight-box.cjs.entry.js +17 -16
  44. package/dist/cjs/dso-highlight-box.cjs.entry.js.map +1 -1
  45. package/dist/cjs/dso-icon.cjs.entry.js +114 -113
  46. package/dist/cjs/dso-icon.cjs.entry.js.map +1 -1
  47. package/dist/cjs/dso-info-button.cjs.entry.js +26 -25
  48. package/dist/cjs/dso-info-button.cjs.entry.js.map +1 -1
  49. package/dist/cjs/dso-info_2.cjs.entry.js +88 -86
  50. package/dist/cjs/dso-info_2.cjs.entry.js.map +1 -1
  51. package/dist/cjs/dso-input-range.cjs.entry.js +27 -26
  52. package/dist/cjs/dso-input-range.cjs.entry.js.map +1 -1
  53. package/dist/cjs/dso-list-button.cjs.entry.js +117 -116
  54. package/dist/cjs/dso-list-button.cjs.entry.js.map +1 -1
  55. package/dist/cjs/dso-logo.cjs.entry.js +11 -10
  56. package/dist/cjs/dso-logo.cjs.entry.js.map +1 -1
  57. package/dist/cjs/dso-map-base-layers.cjs.entry.js +27 -26
  58. package/dist/cjs/dso-map-base-layers.cjs.entry.js.map +1 -1
  59. package/dist/cjs/dso-map-controls.cjs.entry.js +57 -56
  60. package/dist/cjs/dso-map-controls.cjs.entry.js.map +1 -1
  61. package/dist/cjs/dso-map-overlays.cjs.entry.js +28 -27
  62. package/dist/cjs/dso-map-overlays.cjs.entry.js.map +1 -1
  63. package/dist/cjs/dso-mark-bar.cjs.entry.js +51 -50
  64. package/dist/cjs/dso-mark-bar.cjs.entry.js.map +1 -1
  65. package/dist/cjs/dso-modal.cjs.entry.js +41 -42
  66. package/dist/cjs/dso-modal.cjs.entry.js.map +1 -1
  67. package/dist/cjs/dso-pagination.cjs.entry.js +118 -117
  68. package/dist/cjs/dso-pagination.cjs.entry.js.map +1 -1
  69. package/dist/cjs/dso-progress-bar.cjs.entry.js +14 -13
  70. package/dist/cjs/dso-progress-bar.cjs.entry.js.map +1 -1
  71. package/dist/cjs/dso-progress-indicator.cjs.entry.js +12 -11
  72. package/dist/cjs/dso-progress-indicator.cjs.entry.js.map +1 -1
  73. package/dist/cjs/dso-responsive-element.cjs.entry.js +46 -45
  74. package/dist/cjs/dso-responsive-element.cjs.entry.js.map +1 -1
  75. package/dist/cjs/dso-scrollable.cjs.entry.js +80 -79
  76. package/dist/cjs/dso-scrollable.cjs.entry.js.map +1 -1
  77. package/dist/cjs/dso-toggletip.cjs.entry.js +42 -41
  78. package/dist/cjs/dso-toggletip.cjs.entry.js.map +1 -1
  79. package/dist/cjs/dso-toolkit.cjs.js +6 -4
  80. package/dist/cjs/dso-toolkit.cjs.js.map +1 -1
  81. package/dist/cjs/dso-tooltip.cjs.entry.js +192 -191
  82. package/dist/cjs/dso-tooltip.cjs.entry.js.map +1 -1
  83. package/dist/cjs/dso-tree-view.cjs.entry.js +184 -183
  84. package/dist/cjs/dso-tree-view.cjs.entry.js.map +1 -1
  85. package/dist/cjs/dso-viewer-grid.cjs.entry.js +219 -217
  86. package/dist/cjs/dso-viewer-grid.cjs.entry.js.map +1 -1
  87. package/dist/cjs/dsot-document-component-demo.cjs.entry.js +163 -162
  88. package/dist/cjs/dsot-document-component-demo.cjs.entry.js.map +1 -1
  89. package/dist/cjs/get-active-element-05f06ef1.js +16 -0
  90. package/dist/cjs/{get-active-element-618f7b1f.js.map → get-active-element-05f06ef1.js.map} +1 -1
  91. package/dist/cjs/{has-overflow-27e20400.js → has-overflow-2fb1d618.js} +6 -6
  92. package/dist/cjs/{has-overflow-27e20400.js.map → has-overflow-2fb1d618.js.map} +1 -1
  93. package/dist/cjs/{index-2556c4c6.js → index-a58ba49d.js} +170 -67
  94. package/dist/cjs/index-a58ba49d.js.map +1 -0
  95. package/dist/{esm/index-aaea0a65.js → cjs/index-a5d31aab.js} +10 -5
  96. package/dist/cjs/index-a5d31aab.js.map +1 -0
  97. package/dist/cjs/{is-modified-event-97f83d0f.js → is-modified-event-f643edb2.js} +2 -2
  98. package/dist/cjs/{is-modified-event-97f83d0f.js.map → is-modified-event-f643edb2.js.map} +1 -1
  99. package/dist/cjs/loader.cjs.js +5 -3
  100. package/dist/cjs/loader.cjs.js.map +1 -1
  101. package/dist/collection/collection-manifest.json +2 -2
  102. package/dist/collection/components/accordion/accordion.js +120 -120
  103. package/dist/collection/components/accordion/accordion.js.map +1 -1
  104. package/dist/collection/components/accordion/components/accordion-section.css +11 -7
  105. package/dist/collection/components/accordion/components/accordion-section.interfaces.js +5 -5
  106. package/dist/collection/components/accordion/components/accordion-section.interfaces.js.map +1 -1
  107. package/dist/collection/components/accordion/components/accordion-section.js +415 -415
  108. package/dist/collection/components/accordion/components/accordion-section.js.map +1 -1
  109. package/dist/collection/components/action-list/action-list.js +39 -39
  110. package/dist/collection/components/action-list/action-list.js.map +1 -1
  111. package/dist/collection/components/action-list/components/action-list-item.js +117 -117
  112. package/dist/collection/components/action-list/components/action-list-item.js.map +1 -1
  113. package/dist/collection/components/advanced-select/advanced-select.js +204 -204
  114. package/dist/collection/components/advanced-select/advanced-select.js.map +1 -1
  115. package/dist/collection/components/alert/alert.css +84 -0
  116. package/dist/collection/components/alert/alert.js +64 -64
  117. package/dist/collection/components/alert/alert.js.map +1 -1
  118. package/dist/collection/components/annotation-button/annotation-button.css +0 -11
  119. package/dist/collection/components/annotation-button/annotation-button.js +83 -83
  120. package/dist/collection/components/annotation-button/annotation-button.js.map +1 -1
  121. package/dist/collection/components/annotation-output/annotation-output.css +0 -17
  122. package/dist/collection/components/annotation-output/annotation-output.js +101 -101
  123. package/dist/collection/components/annotation-output/annotation-output.js.map +1 -1
  124. package/dist/collection/components/attachments-counter/attachments-counter.js +39 -39
  125. package/dist/collection/components/attachments-counter/attachments-counter.js.map +1 -1
  126. package/dist/collection/components/autosuggest/autosuggest.css +12 -3
  127. package/dist/collection/components/autosuggest/autosuggest.interfaces.js.map +1 -1
  128. package/dist/collection/components/autosuggest/autosuggest.js +448 -436
  129. package/dist/collection/components/autosuggest/autosuggest.js.map +1 -1
  130. package/dist/collection/components/badge/badge.js +39 -39
  131. package/dist/collection/components/badge/badge.js.map +1 -1
  132. package/dist/collection/components/banner/banner.js +79 -79
  133. package/dist/collection/components/banner/banner.js.map +1 -1
  134. package/dist/collection/components/card/card.js +167 -167
  135. package/dist/collection/components/card/card.js.map +1 -1
  136. package/dist/collection/components/card-container/card-container.js +45 -45
  137. package/dist/collection/components/card-container/card-container.js.map +1 -1
  138. package/dist/collection/components/date-picker/date-picker.js +389 -389
  139. package/dist/collection/components/date-picker/date-picker.js.map +1 -1
  140. package/dist/collection/components/date-picker/date-utils.js +22 -22
  141. package/dist/collection/components/date-picker/date-utils.js.map +1 -1
  142. package/dist/collection/components/date-picker-legacy/date-localization.js +26 -26
  143. package/dist/collection/components/date-picker-legacy/date-localization.js.map +1 -1
  144. package/dist/collection/components/date-picker-legacy/date-picker-day.js +15 -15
  145. package/dist/collection/components/date-picker-legacy/date-picker-day.js.map +1 -1
  146. package/dist/collection/components/date-picker-legacy/date-picker-legacy.js +810 -809
  147. package/dist/collection/components/date-picker-legacy/date-picker-legacy.js.map +1 -1
  148. package/dist/collection/components/date-picker-legacy/date-picker-month.js +16 -16
  149. package/dist/collection/components/date-picker-legacy/date-picker-month.js.map +1 -1
  150. package/dist/collection/components/date-picker-legacy/date-utils.js +89 -89
  151. package/dist/collection/components/date-picker-legacy/date-utils.js.map +1 -1
  152. package/dist/collection/components/date-picker-legacy/utils/month-range.js +25 -25
  153. package/dist/collection/components/date-picker-legacy/utils/month-range.js.map +1 -1
  154. package/dist/collection/components/date-picker-legacy/utils/range.js +5 -5
  155. package/dist/collection/components/date-picker-legacy/utils/range.js.map +1 -1
  156. package/dist/collection/components/document-component/document-component-heading.js +24 -24
  157. package/dist/collection/components/document-component/document-component-heading.js.map +1 -1
  158. package/dist/collection/components/document-component/document-component.css +4 -4
  159. package/dist/collection/components/document-component/document-component.js +558 -558
  160. package/dist/collection/components/document-component/document-component.js.map +1 -1
  161. package/dist/collection/components/document-component-demo/document-component.demo.js +266 -266
  162. package/dist/collection/components/document-component-demo/document-component.demo.js.map +1 -1
  163. package/dist/collection/components/dropdown-menu/dropdown-menu.js +358 -358
  164. package/dist/collection/components/dropdown-menu/dropdown-menu.js.map +1 -1
  165. package/dist/collection/components/expandable/expandable.css +12 -13
  166. package/dist/collection/components/expandable/expandable.js +169 -246
  167. package/dist/collection/components/expandable/expandable.js.map +1 -1
  168. package/dist/collection/components/header/header.js +355 -355
  169. package/dist/collection/components/header/header.js.map +1 -1
  170. package/dist/collection/components/helpcenter-panel/helpcenter-panel.js +149 -149
  171. package/dist/collection/components/helpcenter-panel/helpcenter-panel.js.map +1 -1
  172. package/dist/collection/components/highlight-box/highlight-box.js +114 -114
  173. package/dist/collection/components/highlight-box/highlight-box.js.map +1 -1
  174. package/dist/collection/components/icon/icon.js +143 -143
  175. package/dist/collection/components/icon/icon.js.map +1 -1
  176. package/dist/collection/components/image-overlay/image-overlay.css +124 -1
  177. package/dist/collection/components/image-overlay/image-overlay.js +150 -110
  178. package/dist/collection/components/image-overlay/image-overlay.js.map +1 -1
  179. package/dist/collection/components/info/info.js +79 -79
  180. package/dist/collection/components/info/info.js.map +1 -1
  181. package/dist/collection/components/info-button/info-button.js +136 -136
  182. package/dist/collection/components/info-button/info-button.js.map +1 -1
  183. package/dist/collection/components/input-range/input-range.js +181 -181
  184. package/dist/collection/components/input-range/input-range.js.map +1 -1
  185. package/dist/collection/components/label/label.js +252 -252
  186. package/dist/collection/components/label/label.js.map +1 -1
  187. package/dist/collection/components/list-button/list-button.js +333 -333
  188. package/dist/collection/components/list-button/list-button.js.map +1 -1
  189. package/dist/collection/components/logo/logo.js +57 -57
  190. package/dist/collection/components/logo/logo.js.map +1 -1
  191. package/dist/collection/components/map-base-layers/map-base-layers.js +99 -99
  192. package/dist/collection/components/map-base-layers/map-base-layers.js.map +1 -1
  193. package/dist/collection/components/map-controls/map-controls.js +206 -208
  194. package/dist/collection/components/map-controls/map-controls.js.map +1 -1
  195. package/dist/collection/components/map-overlays/map-overlays.js +100 -100
  196. package/dist/collection/components/map-overlays/map-overlays.js.map +1 -1
  197. package/dist/collection/components/mark-bar/mark-bar.js +241 -240
  198. package/dist/collection/components/mark-bar/mark-bar.js.map +1 -1
  199. package/dist/collection/components/modal/modal.js +171 -173
  200. package/dist/collection/components/modal/modal.js.map +1 -1
  201. package/dist/collection/components/ozon-content/get-node-name.function.js +7 -7
  202. package/dist/collection/components/ozon-content/get-node-name.function.js.map +1 -1
  203. package/dist/collection/components/ozon-content/nodes/al.node.js +24 -23
  204. package/dist/collection/components/ozon-content/nodes/al.node.js.map +1 -1
  205. package/dist/collection/components/ozon-content/nodes/bron.node.js +6 -6
  206. package/dist/collection/components/ozon-content/nodes/bron.node.js.map +1 -1
  207. package/dist/collection/components/ozon-content/nodes/document.node.js +6 -6
  208. package/dist/collection/components/ozon-content/nodes/document.node.js.map +1 -1
  209. package/dist/collection/components/ozon-content/nodes/ext-ref.node.js +8 -8
  210. package/dist/collection/components/ozon-content/nodes/ext-ref.node.js.map +1 -1
  211. package/dist/collection/components/ozon-content/nodes/fallback.node.js +7 -7
  212. package/dist/collection/components/ozon-content/nodes/fallback.node.js.map +1 -1
  213. package/dist/collection/components/ozon-content/nodes/figuur.node.js +37 -36
  214. package/dist/collection/components/ozon-content/nodes/figuur.node.js.map +1 -1
  215. package/dist/collection/components/ozon-content/nodes/inhoud.node.js +14 -6
  216. package/dist/collection/components/ozon-content/nodes/inhoud.node.js.map +1 -1
  217. package/dist/collection/components/ozon-content/nodes/inline-tekst-afbeelding.node.js +7 -7
  218. package/dist/collection/components/ozon-content/nodes/inline-tekst-afbeelding.node.js.map +1 -1
  219. package/dist/collection/components/ozon-content/nodes/inline.nodes.js +9 -9
  220. package/dist/collection/components/ozon-content/nodes/inline.nodes.js.map +1 -1
  221. package/dist/collection/components/ozon-content/nodes/int-io-ref.node.js +23 -23
  222. package/dist/collection/components/ozon-content/nodes/int-io-ref.node.js.map +1 -1
  223. package/dist/collection/components/ozon-content/nodes/int-ref.node.js +23 -23
  224. package/dist/collection/components/ozon-content/nodes/int-ref.node.js.map +1 -1
  225. package/dist/collection/components/ozon-content/nodes/lijst.node.js +16 -16
  226. package/dist/collection/components/ozon-content/nodes/lijst.node.js.map +1 -1
  227. package/dist/collection/components/ozon-content/nodes/nieuwe-tekst.node.js +6 -6
  228. package/dist/collection/components/ozon-content/nodes/nieuwe-tekst.node.js.map +1 -1
  229. package/dist/collection/components/ozon-content/nodes/noot.node.js +18 -18
  230. package/dist/collection/components/ozon-content/nodes/noot.node.js.map +1 -1
  231. package/dist/collection/components/ozon-content/nodes/opschrift.node.js +12 -12
  232. package/dist/collection/components/ozon-content/nodes/opschrift.node.js.map +1 -1
  233. package/dist/collection/components/ozon-content/nodes/table.node/colspec/colspec-mapper.js +35 -33
  234. package/dist/collection/components/ozon-content/nodes/table.node/colspec/colspec-mapper.js.map +1 -1
  235. package/dist/collection/components/ozon-content/nodes/table.node/colspec/colspec.interface.js.map +1 -1
  236. package/dist/collection/components/ozon-content/nodes/table.node/table-cell.js +40 -19
  237. package/dist/collection/components/ozon-content/nodes/table.node/table-cell.js.map +1 -1
  238. package/dist/collection/components/ozon-content/nodes/table.node/table-rows.js +1 -1
  239. package/dist/collection/components/ozon-content/nodes/table.node/table-rows.js.map +1 -1
  240. package/dist/collection/components/ozon-content/nodes/table.node/table.node.js +26 -23
  241. package/dist/collection/components/ozon-content/nodes/table.node/table.node.js.map +1 -1
  242. package/dist/collection/components/ozon-content/nodes/text.node.js +14 -14
  243. package/dist/collection/components/ozon-content/nodes/text.node.js.map +1 -1
  244. package/dist/collection/components/ozon-content/nodes/verwijderde-tekst.node.js +6 -6
  245. package/dist/collection/components/ozon-content/nodes/verwijderde-tekst.node.js.map +1 -1
  246. package/dist/collection/components/ozon-content/ozon-content-mapper.js +89 -89
  247. package/dist/collection/components/ozon-content/ozon-content-mapper.js.map +1 -1
  248. package/dist/collection/components/ozon-content/ozon-content.css +181 -52
  249. package/dist/collection/components/ozon-content/ozon-content.js +159 -159
  250. package/dist/collection/components/ozon-content/ozon-content.js.map +1 -1
  251. package/dist/collection/components/pagination/pagination.js +223 -223
  252. package/dist/collection/components/pagination/pagination.js.map +1 -1
  253. package/dist/collection/components/progress-bar/progress-bar.js +79 -79
  254. package/dist/collection/components/progress-bar/progress-bar.js.map +1 -1
  255. package/dist/collection/components/progress-indicator/progress-indicator.js +76 -76
  256. package/dist/collection/components/progress-indicator/progress-indicator.js.map +1 -1
  257. package/dist/collection/components/responsive-element/responsive-element.js +107 -107
  258. package/dist/collection/components/responsive-element/responsive-element.js.map +1 -1
  259. package/dist/collection/components/scrollable/scrollable.js +135 -135
  260. package/dist/collection/components/scrollable/scrollable.js.map +1 -1
  261. package/dist/collection/components/selectable/selectable.css +4 -0
  262. package/dist/collection/components/selectable/selectable.js +348 -350
  263. package/dist/collection/components/selectable/selectable.js.map +1 -1
  264. package/dist/collection/components/slide-toggle/slide-toggle.js +152 -152
  265. package/dist/collection/components/slide-toggle/slide-toggle.js.map +1 -1
  266. package/dist/collection/components/table/table.js +126 -126
  267. package/dist/collection/components/table/table.js.map +1 -1
  268. package/dist/collection/components/toggletip/toggletip.js +134 -134
  269. package/dist/collection/components/toggletip/toggletip.js.map +1 -1
  270. package/dist/collection/components/tooltip/tooltip.js +379 -379
  271. package/dist/collection/components/tooltip/tooltip.js.map +1 -1
  272. package/dist/collection/components/tree-view/tree-item.js +3 -3
  273. package/dist/collection/components/tree-view/tree-item.js.map +1 -1
  274. package/dist/collection/components/tree-view/tree-view.js +305 -304
  275. package/dist/collection/components/tree-view/tree-view.js.map +1 -1
  276. package/dist/collection/components/viewer-grid/components/document-panel.js +4 -4
  277. package/dist/collection/components/viewer-grid/components/document-panel.js.map +1 -1
  278. package/dist/collection/components/viewer-grid/components/filterpanel.js +3 -3
  279. package/dist/collection/components/viewer-grid/components/filterpanel.js.map +1 -1
  280. package/dist/collection/components/viewer-grid/components/main-panel.js +11 -10
  281. package/dist/collection/components/viewer-grid/components/main-panel.js.map +1 -1
  282. package/dist/collection/components/viewer-grid/components/overlay.js +3 -3
  283. package/dist/collection/components/viewer-grid/components/overlay.js.map +1 -1
  284. package/dist/collection/components/viewer-grid/components/sizing-buttons.js +8 -8
  285. package/dist/collection/components/viewer-grid/components/sizing-buttons.js.map +1 -1
  286. package/dist/collection/components/viewer-grid/components/viewer-grid-filterpanel-buttons.js.map +1 -1
  287. package/dist/collection/components/viewer-grid/viewer-grid.css +3 -2
  288. package/dist/collection/components/viewer-grid/viewer-grid.interfaces.js +7 -7
  289. package/dist/collection/components/viewer-grid/viewer-grid.interfaces.js.map +1 -1
  290. package/dist/collection/components/viewer-grid/viewer-grid.js +584 -584
  291. package/dist/collection/components/viewer-grid/viewer-grid.js.map +1 -1
  292. package/dist/collection/utils/create-identifier.js +2 -2
  293. package/dist/collection/utils/create-identifier.js.map +1 -1
  294. package/dist/collection/utils/get-active-element.js +8 -8
  295. package/dist/collection/utils/get-active-element.js.map +1 -1
  296. package/dist/collection/utils/has-overflow.js +5 -5
  297. package/dist/collection/utils/has-overflow.js.map +1 -1
  298. package/dist/collection/utils/is-interactive-element.js +4 -4
  299. package/dist/collection/utils/is-interactive-element.js.map +1 -1
  300. package/dist/collection/utils/is-modified-event.js +1 -1
  301. package/dist/collection/utils/is-modified-event.js.map +1 -1
  302. package/dist/components/alert.js +39 -38
  303. package/dist/components/alert.js.map +1 -1
  304. package/dist/components/annotation-button.js +35 -34
  305. package/dist/components/annotation-button.js.map +1 -1
  306. package/dist/components/annotation-output.js +47 -46
  307. package/dist/components/annotation-output.js.map +1 -1
  308. package/dist/components/attachments-counter.js +29 -28
  309. package/dist/components/attachments-counter.js.map +1 -1
  310. package/dist/components/badge.js +24 -23
  311. package/dist/components/badge.js.map +1 -1
  312. package/dist/components/clsx.js +1 -1
  313. package/dist/components/clsx.js.map +1 -1
  314. package/dist/components/create-identifier.js +2 -2
  315. package/dist/components/create-identifier.js.map +1 -1
  316. package/dist/components/document-component.js +174 -173
  317. package/dist/components/document-component.js.map +1 -1
  318. package/dist/components/dropdown-menu.js +219 -218
  319. package/dist/components/dropdown-menu.js.map +1 -1
  320. package/dist/components/dso-accordion-section.d.ts +2 -2
  321. package/dist/components/dso-accordion-section.js +198 -197
  322. package/dist/components/dso-accordion-section.js.map +1 -1
  323. package/dist/components/dso-accordion.d.ts +2 -2
  324. package/dist/components/dso-accordion.js +53 -52
  325. package/dist/components/dso-accordion.js.map +1 -1
  326. package/dist/components/dso-action-list-item.d.ts +2 -2
  327. package/dist/components/dso-action-list-item.js +40 -39
  328. package/dist/components/dso-action-list-item.js.map +1 -1
  329. package/dist/components/dso-action-list.d.ts +2 -2
  330. package/dist/components/dso-action-list.js +24 -23
  331. package/dist/components/dso-action-list.js.map +1 -1
  332. package/dist/components/dso-advanced-select.d.ts +2 -2
  333. package/dist/components/dso-advanced-select.js +104 -103
  334. package/dist/components/dso-advanced-select.js.map +1 -1
  335. package/dist/components/dso-alert.d.ts +2 -2
  336. package/dist/components/dso-annotation-button.d.ts +2 -2
  337. package/dist/components/dso-annotation-output.d.ts +2 -2
  338. package/dist/components/dso-attachments-counter.d.ts +2 -2
  339. package/dist/components/dso-autosuggest.d.ts +2 -2
  340. package/dist/components/dso-autosuggest.js +292 -279
  341. package/dist/components/dso-autosuggest.js.map +1 -1
  342. package/dist/components/dso-badge.d.ts +2 -2
  343. package/dist/components/dso-banner.d.ts +2 -2
  344. package/dist/components/dso-banner.js +30 -29
  345. package/dist/components/dso-banner.js.map +1 -1
  346. package/dist/components/dso-card-container.d.ts +2 -2
  347. package/dist/components/dso-card-container.js +24 -23
  348. package/dist/components/dso-card-container.js.map +1 -1
  349. package/dist/components/dso-card.d.ts +2 -2
  350. package/dist/components/dso-card.js +82 -81
  351. package/dist/components/dso-card.js.map +1 -1
  352. package/dist/components/dso-date-picker-legacy.d.ts +2 -2
  353. package/dist/components/dso-date-picker-legacy.js +633 -632
  354. package/dist/components/dso-date-picker-legacy.js.map +1 -1
  355. package/dist/components/dso-date-picker.d.ts +2 -2
  356. package/dist/components/dso-date-picker.js +146 -145
  357. package/dist/components/dso-date-picker.js.map +1 -1
  358. package/dist/components/dso-document-component.d.ts +2 -2
  359. package/dist/components/dso-dropdown-menu.d.ts +2 -2
  360. package/dist/components/dso-expandable.d.ts +2 -2
  361. package/dist/components/dso-header.d.ts +2 -2
  362. package/dist/components/dso-header.js +155 -154
  363. package/dist/components/dso-header.js.map +1 -1
  364. package/dist/components/dso-helpcenter-panel.d.ts +2 -2
  365. package/dist/components/dso-helpcenter-panel.js +107 -106
  366. package/dist/components/dso-helpcenter-panel.js.map +1 -1
  367. package/dist/components/dso-highlight-box.d.ts +2 -2
  368. package/dist/components/dso-highlight-box.js +35 -34
  369. package/dist/components/dso-highlight-box.js.map +1 -1
  370. package/dist/components/dso-icon.d.ts +2 -2
  371. package/dist/components/dso-image-overlay.d.ts +2 -2
  372. package/dist/components/dso-info-button.d.ts +2 -2
  373. package/dist/components/dso-info.d.ts +2 -2
  374. package/dist/components/dso-input-range.d.ts +2 -2
  375. package/dist/components/dso-input-range.js +47 -46
  376. package/dist/components/dso-input-range.js.map +1 -1
  377. package/dist/components/dso-label.d.ts +2 -2
  378. package/dist/components/dso-list-button.d.ts +2 -2
  379. package/dist/components/dso-list-button.js +147 -146
  380. package/dist/components/dso-list-button.js.map +1 -1
  381. package/dist/components/dso-logo.d.ts +2 -2
  382. package/dist/components/dso-logo.js +26 -25
  383. package/dist/components/dso-logo.js.map +1 -1
  384. package/dist/components/dso-map-base-layers.d.ts +2 -2
  385. package/dist/components/dso-map-base-layers.js +62 -61
  386. package/dist/components/dso-map-base-layers.js.map +1 -1
  387. package/dist/components/dso-map-controls.d.ts +2 -2
  388. package/dist/components/dso-map-controls.js +86 -85
  389. package/dist/components/dso-map-controls.js.map +1 -1
  390. package/dist/components/dso-map-overlays.d.ts +2 -2
  391. package/dist/components/dso-map-overlays.js +63 -62
  392. package/dist/components/dso-map-overlays.js.map +1 -1
  393. package/dist/components/dso-mark-bar.d.ts +2 -2
  394. package/dist/components/dso-mark-bar.js +74 -73
  395. package/dist/components/dso-mark-bar.js.map +1 -1
  396. package/dist/components/dso-modal.d.ts +2 -2
  397. package/dist/components/dso-modal.js +69 -70
  398. package/dist/components/dso-modal.js.map +1 -1
  399. package/dist/components/dso-ozon-content.d.ts +2 -2
  400. package/dist/components/dso-pagination.d.ts +2 -2
  401. package/dist/components/dso-pagination.js +144 -143
  402. package/dist/components/dso-pagination.js.map +1 -1
  403. package/dist/components/dso-progress-bar.d.ts +2 -2
  404. package/dist/components/dso-progress-bar.js +30 -29
  405. package/dist/components/dso-progress-bar.js.map +1 -1
  406. package/dist/components/dso-progress-indicator.d.ts +2 -2
  407. package/dist/components/dso-responsive-element.d.ts +2 -2
  408. package/dist/components/dso-scrollable.d.ts +2 -2
  409. package/dist/components/dso-selectable.d.ts +2 -2
  410. package/dist/components/dso-slide-toggle.d.ts +2 -2
  411. package/dist/components/dso-table.d.ts +2 -2
  412. package/dist/components/dso-toggletip.d.ts +2 -2
  413. package/dist/components/dso-toggletip.js +75 -74
  414. package/dist/components/dso-toggletip.js.map +1 -1
  415. package/dist/components/dso-tooltip.d.ts +2 -2
  416. package/dist/components/dso-tree-view.d.ts +2 -2
  417. package/dist/components/dso-tree-view.js +208 -207
  418. package/dist/components/dso-tree-view.js.map +1 -1
  419. package/dist/components/dso-viewer-grid.d.ts +2 -2
  420. package/dist/components/dso-viewer-grid.js +246 -244
  421. package/dist/components/dso-viewer-grid.js.map +1 -1
  422. package/dist/components/dsot-document-component-demo.d.ts +2 -2
  423. package/dist/components/dsot-document-component-demo.js +258 -257
  424. package/dist/components/dsot-document-component-demo.js.map +1 -1
  425. package/dist/components/expandable.js +62 -1459
  426. package/dist/components/expandable.js.map +1 -1
  427. package/dist/components/focus-trap.esm.js +1 -1
  428. package/dist/components/get-active-element.js +8 -8
  429. package/dist/components/get-active-element.js.map +1 -1
  430. package/dist/components/has-overflow.js +5 -5
  431. package/dist/components/has-overflow.js.map +1 -1
  432. package/dist/components/icon.js +128 -127
  433. package/dist/components/icon.js.map +1 -1
  434. package/dist/components/image-overlay.js +128 -107
  435. package/dist/components/image-overlay.js.map +1 -1
  436. package/dist/components/index.esm.js +1 -1
  437. package/dist/components/index2.js +7 -4
  438. package/dist/components/index2.js.map +1 -1
  439. package/dist/components/info-button.js +48 -47
  440. package/dist/components/info-button.js.map +1 -1
  441. package/dist/components/info.js +32 -31
  442. package/dist/components/info.js.map +1 -1
  443. package/dist/components/is-modified-event.js +1 -1
  444. package/dist/components/is-modified-event.js.map +1 -1
  445. package/dist/components/label.js +143 -142
  446. package/dist/components/label.js.map +1 -1
  447. package/dist/components/ozon-content.js +542 -506
  448. package/dist/components/ozon-content.js.map +1 -1
  449. package/dist/components/progress-indicator.js +33 -32
  450. package/dist/components/progress-indicator.js.map +1 -1
  451. package/dist/components/responsive-element.js +62 -61
  452. package/dist/components/responsive-element.js.map +1 -1
  453. package/dist/components/scrollable.js +94 -93
  454. package/dist/components/scrollable.js.map +1 -1
  455. package/dist/components/selectable.js +119 -118
  456. package/dist/components/selectable.js.map +1 -1
  457. package/dist/components/slide-toggle.js +44 -43
  458. package/dist/components/slide-toggle.js.map +1 -1
  459. package/dist/components/table.js +95 -94
  460. package/dist/components/table.js.map +1 -1
  461. package/dist/components/tooltip.js +217 -216
  462. package/dist/components/tooltip.js.map +1 -1
  463. package/dist/dso-toolkit/dso-toolkit.esm.js +1 -1
  464. package/dist/dso-toolkit/dso-toolkit.esm.js.map +1 -1
  465. package/dist/dso-toolkit/p-00f36d82.entry.js +2 -0
  466. package/dist/dso-toolkit/p-00f36d82.entry.js.map +1 -0
  467. package/dist/dso-toolkit/p-05115f40.entry.js +2 -0
  468. package/dist/dso-toolkit/p-05115f40.entry.js.map +1 -0
  469. package/dist/dso-toolkit/p-0df15acb.entry.js +2 -0
  470. package/dist/dso-toolkit/p-0df15acb.entry.js.map +1 -0
  471. package/dist/dso-toolkit/p-0edf4492.entry.js +2 -0
  472. package/dist/dso-toolkit/p-0edf4492.entry.js.map +1 -0
  473. package/dist/dso-toolkit/p-0f1c1ad3.entry.js +2 -0
  474. package/dist/dso-toolkit/p-0f1c1ad3.entry.js.map +1 -0
  475. package/dist/dso-toolkit/p-130c00f5.entry.js +2 -0
  476. package/dist/dso-toolkit/p-130c00f5.entry.js.map +1 -0
  477. package/dist/dso-toolkit/{p-e1cb1603.entry.js → p-1543b25f.entry.js} +2 -2
  478. package/dist/dso-toolkit/p-1543b25f.entry.js.map +1 -0
  479. package/dist/dso-toolkit/p-171df922.entry.js +2 -0
  480. package/dist/dso-toolkit/p-171df922.entry.js.map +1 -0
  481. package/dist/dso-toolkit/{p-86133aa5.js → p-1dbcaeef.js} +2 -2
  482. package/dist/dso-toolkit/{p-fd7891ef.js → p-202d2cdf.js} +1 -1
  483. package/dist/dso-toolkit/p-23b5692c.js +2 -0
  484. package/dist/dso-toolkit/p-23b5692c.js.map +1 -0
  485. package/dist/dso-toolkit/{p-17e4b846.js → p-2d694112.js} +1 -1
  486. package/dist/dso-toolkit/p-30f09a47.entry.js +2 -0
  487. package/dist/dso-toolkit/p-30f09a47.entry.js.map +1 -0
  488. package/dist/dso-toolkit/{p-1b8d34a6.entry.js → p-32e3c872.entry.js} +2 -2
  489. package/dist/dso-toolkit/p-32e3c872.entry.js.map +1 -0
  490. package/dist/dso-toolkit/p-3603f65a.entry.js +2 -0
  491. package/dist/dso-toolkit/p-3603f65a.entry.js.map +1 -0
  492. package/dist/dso-toolkit/p-3b8f44b1.entry.js +2 -0
  493. package/dist/dso-toolkit/p-3b8f44b1.entry.js.map +1 -0
  494. package/dist/dso-toolkit/{p-c9fbf040.entry.js → p-3e0495a4.entry.js} +2 -2
  495. package/dist/dso-toolkit/p-3e0495a4.entry.js.map +1 -0
  496. package/dist/dso-toolkit/p-487a5da9.entry.js +2 -0
  497. package/dist/dso-toolkit/p-487a5da9.entry.js.map +1 -0
  498. package/dist/dso-toolkit/p-535f755f.entry.js +2 -0
  499. package/dist/dso-toolkit/p-535f755f.entry.js.map +1 -0
  500. package/dist/dso-toolkit/p-590c98cb.entry.js +2 -0
  501. package/dist/dso-toolkit/p-590c98cb.entry.js.map +1 -0
  502. package/dist/dso-toolkit/p-64ed1e16.entry.js +2 -0
  503. package/dist/dso-toolkit/p-64ed1e16.entry.js.map +1 -0
  504. package/dist/dso-toolkit/p-69e2f1a3.entry.js +2 -0
  505. package/dist/dso-toolkit/p-69e2f1a3.entry.js.map +1 -0
  506. package/dist/dso-toolkit/p-701648d3.js +3 -0
  507. package/dist/dso-toolkit/p-701648d3.js.map +1 -0
  508. package/dist/dso-toolkit/{p-fbb226aa.js → p-808a98bc.js} +3 -3
  509. package/dist/dso-toolkit/p-889aa72f.entry.js +2 -0
  510. package/dist/dso-toolkit/p-889aa72f.entry.js.map +1 -0
  511. package/dist/dso-toolkit/p-8a1a6e56.js +2 -0
  512. package/dist/dso-toolkit/p-8a1a6e56.js.map +1 -0
  513. package/dist/dso-toolkit/p-8a41761d.entry.js +2 -0
  514. package/dist/dso-toolkit/p-8a41761d.entry.js.map +1 -0
  515. package/dist/dso-toolkit/{p-ea6ca8b2.entry.js → p-9579c352.entry.js} +2 -2
  516. package/dist/dso-toolkit/p-9579c352.entry.js.map +1 -0
  517. package/dist/dso-toolkit/{p-c19cfe3f.js → p-97f788d4.js} +1 -1
  518. package/dist/dso-toolkit/p-9bf86dbf.entry.js +2 -0
  519. package/dist/dso-toolkit/p-9bf86dbf.entry.js.map +1 -0
  520. package/dist/dso-toolkit/p-9f465136.entry.js +2 -0
  521. package/dist/dso-toolkit/p-9f465136.entry.js.map +1 -0
  522. package/dist/dso-toolkit/p-9f9ed7fc.entry.js +2 -0
  523. package/dist/dso-toolkit/p-9f9ed7fc.entry.js.map +1 -0
  524. package/dist/dso-toolkit/p-a7ec3cce.entry.js +2 -0
  525. package/dist/dso-toolkit/p-a7ec3cce.entry.js.map +1 -0
  526. package/dist/dso-toolkit/p-ae783ec3.entry.js +2 -0
  527. package/dist/dso-toolkit/p-ae783ec3.entry.js.map +1 -0
  528. package/dist/dso-toolkit/p-b73a27bc.entry.js +2 -0
  529. package/dist/dso-toolkit/p-b73a27bc.entry.js.map +1 -0
  530. package/dist/dso-toolkit/{p-46955cda.entry.js → p-b8be68cd.entry.js} +2 -2
  531. package/dist/dso-toolkit/p-b8be68cd.entry.js.map +1 -0
  532. package/dist/dso-toolkit/{p-69231fe7.entry.js → p-ba1757f9.entry.js} +2 -2
  533. package/dist/dso-toolkit/p-ba1757f9.entry.js.map +1 -0
  534. package/dist/dso-toolkit/{p-dd21df39.entry.js → p-bb65ba35.entry.js} +2 -2
  535. package/dist/dso-toolkit/p-bb65ba35.entry.js.map +1 -0
  536. package/dist/dso-toolkit/p-bf2ef44a.entry.js +2 -0
  537. package/dist/dso-toolkit/p-bf2ef44a.entry.js.map +1 -0
  538. package/dist/dso-toolkit/{p-eb7275e9.entry.js → p-c3af1efc.entry.js} +2 -2
  539. package/dist/dso-toolkit/p-c3af1efc.entry.js.map +1 -0
  540. package/dist/dso-toolkit/p-c435f94d.entry.js +2 -0
  541. package/dist/dso-toolkit/p-c435f94d.entry.js.map +1 -0
  542. package/dist/dso-toolkit/{p-6e9b961b.js → p-c8f6f8d9.js} +1 -1
  543. package/dist/dso-toolkit/{p-67461818.entry.js → p-d6fa20f7.entry.js} +2 -2
  544. package/dist/dso-toolkit/p-d6fa20f7.entry.js.map +1 -0
  545. package/dist/dso-toolkit/p-d75e278f.entry.js +2 -0
  546. package/dist/dso-toolkit/p-d75e278f.entry.js.map +1 -0
  547. package/dist/dso-toolkit/p-db0796f2.entry.js +2 -0
  548. package/dist/dso-toolkit/p-db0796f2.entry.js.map +1 -0
  549. package/dist/dso-toolkit/p-e1255160.js +2 -0
  550. package/dist/dso-toolkit/p-e1255160.js.map +1 -0
  551. package/dist/dso-toolkit/p-e1f82103.entry.js +2 -0
  552. package/dist/dso-toolkit/p-e1f82103.entry.js.map +1 -0
  553. package/dist/dso-toolkit/p-e968c726.entry.js +2 -0
  554. package/dist/dso-toolkit/p-e968c726.entry.js.map +1 -0
  555. package/dist/dso-toolkit/p-f3f23018.entry.js +2 -0
  556. package/dist/dso-toolkit/p-f3f23018.entry.js.map +1 -0
  557. package/dist/dso-toolkit/p-ffdcb2e4.entry.js +2 -0
  558. package/dist/dso-toolkit/p-ffdcb2e4.entry.js.map +1 -0
  559. package/dist/esm/app-globals-0f993ce5.js +5 -0
  560. package/dist/esm/app-globals-0f993ce5.js.map +1 -0
  561. package/dist/esm/clsx-297c1ffe.js +5 -0
  562. package/dist/esm/clsx-297c1ffe.js.map +1 -0
  563. package/dist/esm/create-identifier-d61d46af.js +17 -0
  564. package/dist/esm/{create-identifier-479a4699.js.map → create-identifier-d61d46af.js.map} +1 -1
  565. package/dist/esm/dso-accordion-section.entry.js +159 -158
  566. package/dist/esm/dso-accordion-section.entry.js.map +1 -1
  567. package/dist/esm/dso-accordion.entry.js +34 -33
  568. package/dist/esm/dso-accordion.entry.js.map +1 -1
  569. package/dist/esm/dso-action-list-item.entry.js +17 -16
  570. package/dist/esm/dso-action-list-item.entry.js.map +1 -1
  571. package/dist/esm/dso-action-list.entry.js +10 -9
  572. package/dist/esm/dso-action-list.entry.js.map +1 -1
  573. package/dist/esm/dso-advanced-select.entry.js +81 -80
  574. package/dist/esm/dso-advanced-select.entry.js.map +1 -1
  575. package/dist/esm/dso-alert_7.entry.js +836 -775
  576. package/dist/esm/dso-alert_7.entry.js.map +1 -1
  577. package/dist/esm/dso-annotation-output_3.entry.js +138 -135
  578. package/dist/esm/dso-annotation-output_3.entry.js.map +1 -1
  579. package/dist/esm/dso-attachments-counter.entry.js +10 -9
  580. package/dist/esm/dso-attachments-counter.entry.js.map +1 -1
  581. package/dist/esm/dso-autosuggest.entry.js +258 -245
  582. package/dist/esm/dso-autosuggest.entry.js.map +1 -1
  583. package/dist/esm/dso-banner.entry.js +15 -14
  584. package/dist/esm/dso-banner.entry.js.map +1 -1
  585. package/dist/esm/dso-card-container.entry.js +10 -9
  586. package/dist/esm/dso-card-container.entry.js.map +1 -1
  587. package/dist/esm/dso-card.entry.js +61 -60
  588. package/dist/esm/dso-card.entry.js.map +1 -1
  589. package/dist/esm/dso-date-picker-legacy.entry.js +598 -597
  590. package/dist/esm/dso-date-picker-legacy.entry.js.map +1 -1
  591. package/dist/esm/dso-date-picker.entry.js +124 -123
  592. package/dist/esm/dso-date-picker.entry.js.map +1 -1
  593. package/dist/esm/dso-dropdown-menu.entry.js +216 -215
  594. package/dist/esm/dso-dropdown-menu.entry.js.map +1 -1
  595. package/dist/esm/dso-expandable.entry.js +49 -1444
  596. package/dist/esm/dso-expandable.entry.js.map +1 -1
  597. package/dist/esm/dso-header.entry.js +119 -118
  598. package/dist/esm/dso-header.entry.js.map +1 -1
  599. package/dist/esm/dso-helpcenter-panel.entry.js +82 -81
  600. package/dist/esm/dso-helpcenter-panel.entry.js.map +1 -1
  601. package/dist/esm/dso-highlight-box.entry.js +17 -16
  602. package/dist/esm/dso-highlight-box.entry.js.map +1 -1
  603. package/dist/esm/dso-icon.entry.js +114 -113
  604. package/dist/esm/dso-icon.entry.js.map +1 -1
  605. package/dist/esm/dso-info-button.entry.js +26 -25
  606. package/dist/esm/dso-info-button.entry.js.map +1 -1
  607. package/dist/esm/dso-info_2.entry.js +88 -86
  608. package/dist/esm/dso-info_2.entry.js.map +1 -1
  609. package/dist/esm/dso-input-range.entry.js +27 -26
  610. package/dist/esm/dso-input-range.entry.js.map +1 -1
  611. package/dist/esm/dso-list-button.entry.js +119 -118
  612. package/dist/esm/dso-list-button.entry.js.map +1 -1
  613. package/dist/esm/dso-logo.entry.js +11 -10
  614. package/dist/esm/dso-logo.entry.js.map +1 -1
  615. package/dist/esm/dso-map-base-layers.entry.js +27 -26
  616. package/dist/esm/dso-map-base-layers.entry.js.map +1 -1
  617. package/dist/esm/dso-map-controls.entry.js +57 -56
  618. package/dist/esm/dso-map-controls.entry.js.map +1 -1
  619. package/dist/esm/dso-map-overlays.entry.js +28 -27
  620. package/dist/esm/dso-map-overlays.entry.js.map +1 -1
  621. package/dist/esm/dso-mark-bar.entry.js +51 -50
  622. package/dist/esm/dso-mark-bar.entry.js.map +1 -1
  623. package/dist/esm/dso-modal.entry.js +41 -42
  624. package/dist/esm/dso-modal.entry.js.map +1 -1
  625. package/dist/esm/dso-pagination.entry.js +118 -117
  626. package/dist/esm/dso-pagination.entry.js.map +1 -1
  627. package/dist/esm/dso-progress-bar.entry.js +14 -13
  628. package/dist/esm/dso-progress-bar.entry.js.map +1 -1
  629. package/dist/esm/dso-progress-indicator.entry.js +12 -11
  630. package/dist/esm/dso-progress-indicator.entry.js.map +1 -1
  631. package/dist/esm/dso-responsive-element.entry.js +46 -45
  632. package/dist/esm/dso-responsive-element.entry.js.map +1 -1
  633. package/dist/esm/dso-scrollable.entry.js +80 -79
  634. package/dist/esm/dso-scrollable.entry.js.map +1 -1
  635. package/dist/esm/dso-toggletip.entry.js +42 -41
  636. package/dist/esm/dso-toggletip.entry.js.map +1 -1
  637. package/dist/esm/dso-toolkit.js +7 -5
  638. package/dist/esm/dso-toolkit.js.map +1 -1
  639. package/dist/esm/dso-tooltip.entry.js +192 -191
  640. package/dist/esm/dso-tooltip.entry.js.map +1 -1
  641. package/dist/esm/dso-tree-view.entry.js +184 -183
  642. package/dist/esm/dso-tree-view.entry.js.map +1 -1
  643. package/dist/esm/dso-viewer-grid.entry.js +219 -217
  644. package/dist/esm/dso-viewer-grid.entry.js.map +1 -1
  645. package/dist/esm/dsot-document-component-demo.entry.js +163 -162
  646. package/dist/esm/dsot-document-component-demo.entry.js.map +1 -1
  647. package/dist/esm/{focus-trap.esm-d8deb1f0.js → focus-trap.esm-f16e876b.js} +2 -2
  648. package/dist/esm/{focus-trap.esm-d8deb1f0.js.map → focus-trap.esm-f16e876b.js.map} +1 -1
  649. package/dist/esm/get-active-element-37680994.js +14 -0
  650. package/dist/esm/{get-active-element-0e7dc01b.js.map → get-active-element-37680994.js.map} +1 -1
  651. package/dist/esm/{has-overflow-9f720f83.js → has-overflow-6d7f3a71.js} +6 -6
  652. package/dist/esm/{has-overflow-9f720f83.js.map → has-overflow-6d7f3a71.js.map} +1 -1
  653. package/dist/esm/{index-528d5213.js → index-2e1b7388.js} +170 -67
  654. package/dist/esm/index-2e1b7388.js.map +1 -0
  655. package/dist/{cjs/index-1b083a00.js → esm/index-baba34a8.js} +7 -6
  656. package/dist/esm/index-baba34a8.js.map +1 -0
  657. package/dist/esm/{index.esm-7e16e884.js → index.esm-7a561c35.js} +2 -2
  658. package/dist/esm/{index.esm-7e16e884.js.map → index.esm-7a561c35.js.map} +1 -1
  659. package/dist/esm/{is-modified-event-4fc531e3.js → is-modified-event-70db5fa8.js} +2 -2
  660. package/dist/esm/{is-modified-event-4fc531e3.js.map → is-modified-event-70db5fa8.js.map} +1 -1
  661. package/dist/esm/loader.js +6 -4
  662. package/dist/esm/loader.js.map +1 -1
  663. package/dist/scripts/readme.js +66 -66
  664. package/dist/scripts/readme.js.map +1 -1
  665. package/dist/types/components/accordion/accordion.d.ts +21 -21
  666. package/dist/types/components/accordion/accordion.interfaces.d.ts +2 -2
  667. package/dist/types/components/accordion/components/accordion-section.d.ts +67 -67
  668. package/dist/types/components/accordion/components/accordion-section.interfaces.d.ts +26 -26
  669. package/dist/types/components/action-list/action-list.d.ts +5 -5
  670. package/dist/types/components/action-list/components/action-list-item.d.ts +21 -21
  671. package/dist/types/components/advanced-select/advanced-select.d.ts +36 -36
  672. package/dist/types/components/advanced-select/advanced-select.models.d.ts +17 -17
  673. package/dist/types/components/alert/alert.d.ts +10 -10
  674. package/dist/types/components/annotation-button/annotation-button.d.ts +16 -16
  675. package/dist/types/components/annotation-output/annotation-output.d.ts +19 -19
  676. package/dist/types/components/attachments-counter/attachments-counter.d.ts +5 -5
  677. package/dist/types/components/autosuggest/autosuggest.d.ts +77 -76
  678. package/dist/types/components/autosuggest/autosuggest.interfaces.d.ts +16 -12
  679. package/dist/types/components/badge/badge.d.ts +5 -5
  680. package/dist/types/components/banner/banner.d.ts +15 -15
  681. package/dist/types/components/card/card.d.ts +36 -36
  682. package/dist/types/components/card/card.interfaces.d.ts +3 -3
  683. package/dist/types/components/card-container/card-container.d.ts +5 -5
  684. package/dist/types/components/date-picker/date-picker.d.ts +78 -78
  685. package/dist/types/components/date-picker/date-picker.interfaces.d.ts +37 -37
  686. package/dist/types/components/date-picker-legacy/date-localization.d.ts +13 -13
  687. package/dist/types/components/date-picker-legacy/date-picker-day.d.ts +7 -7
  688. package/dist/types/components/date-picker-legacy/date-picker-legacy.d.ts +168 -168
  689. package/dist/types/components/date-picker-legacy/date-picker-legacy.interfaces.d.ts +7 -7
  690. package/dist/types/components/date-picker-legacy/date-picker-month.d.ts +12 -12
  691. package/dist/types/components/date-picker-legacy/date-utils.d.ts +7 -7
  692. package/dist/types/components/document-component/document-component-heading.d.ts +1 -1
  693. package/dist/types/components/document-component/document-component.d.ts +102 -102
  694. package/dist/types/components/document-component/document-component.models.d.ts +11 -11
  695. package/dist/types/components/document-component-demo/document-component.demo.d.ts +63 -63
  696. package/dist/types/components/dropdown-menu/dropdown-menu.d.ts +50 -50
  697. package/dist/types/components/expandable/expandable.d.ts +37 -39
  698. package/dist/types/components/header/header.d.ts +73 -73
  699. package/dist/types/components/header/header.interfaces.d.ts +10 -10
  700. package/dist/types/components/helpcenter-panel/helpcenter-panel.d.ts +26 -26
  701. package/dist/types/components/highlight-box/highlight-box.d.ts +22 -22
  702. package/dist/types/components/icon/icon.d.ts +5 -5
  703. package/dist/types/components/image-overlay/image-overlay.d.ts +23 -18
  704. package/dist/types/components/info/info.d.ts +13 -13
  705. package/dist/types/components/info-button/info-button.d.ts +24 -24
  706. package/dist/types/components/info-button/info-button.interfaces.d.ts +2 -2
  707. package/dist/types/components/input-range/input-range.d.ts +34 -34
  708. package/dist/types/components/input-range/input-range.interfaces.d.ts +5 -5
  709. package/dist/types/components/label/label.d.ts +45 -45
  710. package/dist/types/components/list-button/list-button.d.ts +67 -67
  711. package/dist/types/components/list-button/list-button.interfaces.d.ts +6 -6
  712. package/dist/types/components/logo/logo.d.ts +12 -12
  713. package/dist/types/components/map-base-layers/map-base-layers.d.ts +17 -17
  714. package/dist/types/components/map-base-layers/map-base-layers.interfaces.d.ts +6 -6
  715. package/dist/types/components/map-controls/map-controls.d.ts +39 -39
  716. package/dist/types/components/map-controls/map-controls.interfaces.d.ts +2 -2
  717. package/dist/types/components/map-overlays/map-overlays.d.ts +17 -17
  718. package/dist/types/components/map-overlays/map-overlays.interfaces.d.ts +7 -7
  719. package/dist/types/components/mark-bar/mark-bar.d.ts +43 -43
  720. package/dist/types/components/mark-bar/mark-bar.interfaces.d.ts +8 -8
  721. package/dist/types/components/modal/modal.d.ts +38 -38
  722. package/dist/types/components/modal/modal.interfaces.d.ts +1 -1
  723. package/dist/types/components/ozon-content/nodes/al.node.d.ts +2 -2
  724. package/dist/types/components/ozon-content/nodes/bron.node.d.ts +2 -2
  725. package/dist/types/components/ozon-content/nodes/document.node.d.ts +2 -2
  726. package/dist/types/components/ozon-content/nodes/ext-ref.node.d.ts +2 -2
  727. package/dist/types/components/ozon-content/nodes/fallback.node.d.ts +2 -2
  728. package/dist/types/components/ozon-content/nodes/figuur.node.d.ts +4 -4
  729. package/dist/types/components/ozon-content/nodes/inhoud.node.d.ts +2 -2
  730. package/dist/types/components/ozon-content/nodes/inline-tekst-afbeelding.node.d.ts +2 -2
  731. package/dist/types/components/ozon-content/nodes/inline.nodes.d.ts +2 -2
  732. package/dist/types/components/ozon-content/nodes/int-io-ref.node.d.ts +2 -2
  733. package/dist/types/components/ozon-content/nodes/int-ref.node.d.ts +2 -2
  734. package/dist/types/components/ozon-content/nodes/lijst.node.d.ts +2 -2
  735. package/dist/types/components/ozon-content/nodes/nieuwe-tekst.node.d.ts +2 -2
  736. package/dist/types/components/ozon-content/nodes/noot.node.d.ts +4 -4
  737. package/dist/types/components/ozon-content/nodes/opschrift.node.d.ts +2 -2
  738. package/dist/types/components/ozon-content/nodes/table.node/colspec/colspec.interface.d.ts +8 -6
  739. package/dist/types/components/ozon-content/nodes/table.node/table-cell.d.ts +3 -3
  740. package/dist/types/components/ozon-content/nodes/table.node/table-colgroup.d.ts +1 -1
  741. package/dist/types/components/ozon-content/nodes/table.node/table-rows.d.ts +3 -3
  742. package/dist/types/components/ozon-content/nodes/table.node/table.node.d.ts +4 -4
  743. package/dist/types/components/ozon-content/nodes/text.node.d.ts +2 -2
  744. package/dist/types/components/ozon-content/nodes/verwijderde-tekst.node.d.ts +2 -2
  745. package/dist/types/components/ozon-content/ozon-content-context.interface.d.ts +6 -6
  746. package/dist/types/components/ozon-content/ozon-content-mapper.d.ts +8 -8
  747. package/dist/types/components/ozon-content/ozon-content-node-context.interface.d.ts +8 -8
  748. package/dist/types/components/ozon-content/ozon-content-node-state.interface.d.ts +1 -1
  749. package/dist/types/components/ozon-content/ozon-content-node.interface.d.ts +4 -4
  750. package/dist/types/components/ozon-content/ozon-content.d.ts +24 -24
  751. package/dist/types/components/ozon-content/ozon-content.interfaces.d.ts +9 -9
  752. package/dist/types/components/pagination/pagination.d.ts +32 -32
  753. package/dist/types/components/pagination/pagination.interfaces.d.ts +6 -6
  754. package/dist/types/components/progress-bar/progress-bar.d.ts +13 -13
  755. package/dist/types/components/progress-indicator/progress-indicator.d.ts +15 -15
  756. package/dist/types/components/responsive-element/responsive-element.d.ts +15 -15
  757. package/dist/types/components/responsive-element/responsive-element.interfaces.d.ts +2 -2
  758. package/dist/types/components/scrollable/scrollable.d.ts +18 -18
  759. package/dist/types/components/scrollable/scrollable.interfaces.d.ts +1 -1
  760. package/dist/types/components/selectable/selectable.d.ts +77 -77
  761. package/dist/types/components/selectable/selectable.interfaces.d.ts +2 -2
  762. package/dist/types/components/slide-toggle/slide-toggle.d.ts +29 -29
  763. package/dist/types/components/slide-toggle/slide-toggle.interfaces.d.ts +3 -3
  764. package/dist/types/components/table/table.d.ts +26 -26
  765. package/dist/types/components/toggletip/toggletip.d.ts +25 -25
  766. package/dist/types/components/tooltip/tooltip.d.ts +57 -57
  767. package/dist/types/components/tree-view/tree-item.d.ts +6 -6
  768. package/dist/types/components/tree-view/tree-view.d.ts +43 -43
  769. package/dist/types/components/tree-view/tree-view.interfaces.d.ts +28 -28
  770. package/dist/types/components/viewer-grid/components/document-panel.d.ts +5 -5
  771. package/dist/types/components/viewer-grid/components/filterpanel.d.ts +3 -3
  772. package/dist/types/components/viewer-grid/components/main-panel.d.ts +10 -10
  773. package/dist/types/components/viewer-grid/components/overlay.d.ts +2 -2
  774. package/dist/types/components/viewer-grid/components/sizing-buttons.d.ts +5 -5
  775. package/dist/types/components/viewer-grid/components/viewer-grid-filterpanel-buttons.d.ts +2 -2
  776. package/dist/types/components/viewer-grid/viewer-grid.d.ts +110 -110
  777. package/dist/types/components/viewer-grid/viewer-grid.interfaces.d.ts +11 -11
  778. package/dist/types/components.d.ts +8 -0
  779. package/dist/types/stencil-public-runtime.d.ts +8 -0
  780. package/package.json +9 -11
  781. package/dist/cjs/clsx-fd0bee58.js +0 -7
  782. package/dist/cjs/clsx-fd0bee58.js.map +0 -1
  783. package/dist/cjs/get-active-element-618f7b1f.js +0 -16
  784. package/dist/cjs/index-1b083a00.js.map +0 -1
  785. package/dist/cjs/index-2556c4c6.js.map +0 -1
  786. package/dist/dso-toolkit/p-09552584.entry.js +0 -2
  787. package/dist/dso-toolkit/p-09552584.entry.js.map +0 -1
  788. package/dist/dso-toolkit/p-11eb95a2.entry.js +0 -2
  789. package/dist/dso-toolkit/p-11eb95a2.entry.js.map +0 -1
  790. package/dist/dso-toolkit/p-159c0a88.entry.js +0 -2
  791. package/dist/dso-toolkit/p-159c0a88.entry.js.map +0 -1
  792. package/dist/dso-toolkit/p-15c3da8e.entry.js +0 -2
  793. package/dist/dso-toolkit/p-15c3da8e.entry.js.map +0 -1
  794. package/dist/dso-toolkit/p-1981592d.entry.js +0 -2
  795. package/dist/dso-toolkit/p-1981592d.entry.js.map +0 -1
  796. package/dist/dso-toolkit/p-1a85e2f8.entry.js +0 -2
  797. package/dist/dso-toolkit/p-1a85e2f8.entry.js.map +0 -1
  798. package/dist/dso-toolkit/p-1b8d34a6.entry.js.map +0 -1
  799. package/dist/dso-toolkit/p-21de21d6.entry.js +0 -2
  800. package/dist/dso-toolkit/p-21de21d6.entry.js.map +0 -1
  801. package/dist/dso-toolkit/p-302764ae.entry.js +0 -2
  802. package/dist/dso-toolkit/p-302764ae.entry.js.map +0 -1
  803. package/dist/dso-toolkit/p-31825ec2.entry.js +0 -2
  804. package/dist/dso-toolkit/p-31825ec2.entry.js.map +0 -1
  805. package/dist/dso-toolkit/p-36ddddf4.entry.js +0 -2
  806. package/dist/dso-toolkit/p-36ddddf4.entry.js.map +0 -1
  807. package/dist/dso-toolkit/p-4592810d.js +0 -3
  808. package/dist/dso-toolkit/p-4592810d.js.map +0 -1
  809. package/dist/dso-toolkit/p-46955cda.entry.js.map +0 -1
  810. package/dist/dso-toolkit/p-4e5a6107.entry.js +0 -2
  811. package/dist/dso-toolkit/p-4e5a6107.entry.js.map +0 -1
  812. package/dist/dso-toolkit/p-51f9702b.entry.js +0 -2
  813. package/dist/dso-toolkit/p-51f9702b.entry.js.map +0 -1
  814. package/dist/dso-toolkit/p-5def1d28.entry.js +0 -2
  815. package/dist/dso-toolkit/p-5def1d28.entry.js.map +0 -1
  816. package/dist/dso-toolkit/p-67461818.entry.js.map +0 -1
  817. package/dist/dso-toolkit/p-69231fe7.entry.js.map +0 -1
  818. package/dist/dso-toolkit/p-7a71cd3f.entry.js +0 -2
  819. package/dist/dso-toolkit/p-7a71cd3f.entry.js.map +0 -1
  820. package/dist/dso-toolkit/p-7bcce109.entry.js +0 -2
  821. package/dist/dso-toolkit/p-7bcce109.entry.js.map +0 -1
  822. package/dist/dso-toolkit/p-7cac2dd2.entry.js +0 -2
  823. package/dist/dso-toolkit/p-7cac2dd2.entry.js.map +0 -1
  824. package/dist/dso-toolkit/p-84be819d.entry.js +0 -2
  825. package/dist/dso-toolkit/p-84be819d.entry.js.map +0 -1
  826. package/dist/dso-toolkit/p-94f26620.js +0 -2
  827. package/dist/dso-toolkit/p-94f26620.js.map +0 -1
  828. package/dist/dso-toolkit/p-9bf33855.entry.js +0 -2
  829. package/dist/dso-toolkit/p-9bf33855.entry.js.map +0 -1
  830. package/dist/dso-toolkit/p-a435b9fd.entry.js +0 -2
  831. package/dist/dso-toolkit/p-a435b9fd.entry.js.map +0 -1
  832. package/dist/dso-toolkit/p-aa6d1e42.entry.js +0 -2
  833. package/dist/dso-toolkit/p-aa6d1e42.entry.js.map +0 -1
  834. package/dist/dso-toolkit/p-b6af439e.entry.js +0 -2
  835. package/dist/dso-toolkit/p-b6af439e.entry.js.map +0 -1
  836. package/dist/dso-toolkit/p-c1bab0f1.entry.js +0 -2
  837. package/dist/dso-toolkit/p-c1bab0f1.entry.js.map +0 -1
  838. package/dist/dso-toolkit/p-c87b4d11.js +0 -2
  839. package/dist/dso-toolkit/p-c87b4d11.js.map +0 -1
  840. package/dist/dso-toolkit/p-c9fbf040.entry.js.map +0 -1
  841. package/dist/dso-toolkit/p-cc771810.entry.js +0 -2
  842. package/dist/dso-toolkit/p-cc771810.entry.js.map +0 -1
  843. package/dist/dso-toolkit/p-d24073fe.entry.js +0 -2
  844. package/dist/dso-toolkit/p-d24073fe.entry.js.map +0 -1
  845. package/dist/dso-toolkit/p-d714aea4.entry.js +0 -2
  846. package/dist/dso-toolkit/p-d714aea4.entry.js.map +0 -1
  847. package/dist/dso-toolkit/p-dd21df39.entry.js.map +0 -1
  848. package/dist/dso-toolkit/p-df63a085.entry.js +0 -2
  849. package/dist/dso-toolkit/p-df63a085.entry.js.map +0 -1
  850. package/dist/dso-toolkit/p-e0f9a16f.entry.js +0 -2
  851. package/dist/dso-toolkit/p-e0f9a16f.entry.js.map +0 -1
  852. package/dist/dso-toolkit/p-e1cb1603.entry.js.map +0 -1
  853. package/dist/dso-toolkit/p-ea6ca8b2.entry.js.map +0 -1
  854. package/dist/dso-toolkit/p-eb7275e9.entry.js.map +0 -1
  855. package/dist/dso-toolkit/p-f15b9304.entry.js +0 -2
  856. package/dist/dso-toolkit/p-f15b9304.entry.js.map +0 -1
  857. package/dist/dso-toolkit/p-f3facab4.entry.js +0 -2
  858. package/dist/dso-toolkit/p-f3facab4.entry.js.map +0 -1
  859. package/dist/dso-toolkit/p-f6d1d215.entry.js +0 -2
  860. package/dist/dso-toolkit/p-f6d1d215.entry.js.map +0 -1
  861. package/dist/dso-toolkit/p-fd4b0b0b.entry.js +0 -2
  862. package/dist/dso-toolkit/p-fd4b0b0b.entry.js.map +0 -1
  863. package/dist/esm/clsx-93f1b68e.js +0 -5
  864. package/dist/esm/clsx-93f1b68e.js.map +0 -1
  865. package/dist/esm/create-identifier-479a4699.js +0 -17
  866. package/dist/esm/get-active-element-0e7dc01b.js +0 -14
  867. package/dist/esm/index-528d5213.js.map +0 -1
  868. package/dist/esm/index-aaea0a65.js.map +0 -1
  869. /package/dist/dso-toolkit/{p-86133aa5.js.map → p-1dbcaeef.js.map} +0 -0
  870. /package/dist/dso-toolkit/{p-fd7891ef.js.map → p-202d2cdf.js.map} +0 -0
  871. /package/dist/dso-toolkit/{p-17e4b846.js.map → p-2d694112.js.map} +0 -0
  872. /package/dist/dso-toolkit/{p-fbb226aa.js.map → p-808a98bc.js.map} +0 -0
  873. /package/dist/dso-toolkit/{p-c19cfe3f.js.map → p-97f788d4.js.map} +0 -0
  874. /package/dist/dso-toolkit/{p-6e9b961b.js.map → p-c8f6f8d9.js.map} +0 -0
@@ -1,227 +1,228 @@
1
- import { r as registerInstance, h, H as Host, a as getElement } from './index-528d5213.js';
2
- import { t as tabbable } from './index.esm-7e16e884.js';
3
- import { h as hasOverflow, c as createPopper } from './has-overflow-9f720f83.js';
4
- import { g as getActiveElement } from './get-active-element-0e7dc01b.js';
1
+ import { r as registerInstance, h, H as Host, a as getElement } from './index-2e1b7388.js';
2
+ import { t as tabbable } from './index.esm-7a561c35.js';
3
+ import { h as hasOverflow, c as createPopper } from './has-overflow-6d7f3a71.js';
4
+ import { g as getActiveElement } from './get-active-element-37680994.js';
5
5
  import { v as v4 } from './v4-23648a96.js';
6
6
 
7
7
  const dropdownMenuCss = ":host(:focus){outline:none}:host{display:inline-block}";
8
+ const DsoDropdownMenuStyle0 = dropdownMenuCss;
8
9
 
9
10
  const DropdownMenu = class {
10
- constructor(hostRef) {
11
- registerInstance(this, hostRef);
12
- this.focusOutListener = (event) => {
13
- if (this.open &&
14
- (!(event.relatedTarget instanceof HTMLElement) || !this.tabbables(true).includes(event.relatedTarget))) {
11
+ constructor(hostRef) {
12
+ registerInstance(this, hostRef);
13
+ this.focusOutListener = (event) => {
14
+ if (this.open &&
15
+ (!(event.relatedTarget instanceof HTMLElement) || !this.tabbables(true).includes(event.relatedTarget))) {
16
+ this.open = false;
17
+ }
18
+ };
19
+ this.escape = () => {
20
+ this.button.focus();
21
+ this.open = false;
22
+ };
15
23
  this.open = false;
16
- }
17
- };
18
- this.escape = () => {
19
- this.button.focus();
20
- this.open = false;
21
- };
22
- this.open = false;
23
- this.dropdownAlign = "left";
24
- this.dropdownOptionsOffset = 2;
25
- this.checkable = false;
26
- this.boundary = undefined;
27
- this.placement = undefined;
28
- this.strategy = "auto";
29
- }
30
- watchPosition() {
31
- if (!this.popper) {
32
- return;
33
- }
34
- this.popper.setOptions({
35
- placement: this.placement || (this.dropdownAlign === "right" ? "bottom-end" : "bottom-start"),
36
- });
37
- }
38
- watchOptionsOffset() {
39
- var _a;
40
- (_a = this.popper) === null || _a === void 0 ? void 0 : _a.setOptions({
41
- modifiers: [
42
- {
43
- name: "offset",
44
- options: {
45
- offset: [0, this.dropdownOptionsOffset],
46
- },
47
- },
48
- ],
49
- });
50
- }
51
- watchStrategy() {
52
- this.setStrategy();
53
- }
54
- setStrategy() {
55
- if (!this.popper) {
56
- return;
57
- }
58
- if (this.strategy === "absolute" || this.strategy === "fixed") {
59
- this.popper.setOptions({
60
- strategy: this.strategy,
61
- });
62
- return;
63
- }
64
- let element = this.host;
65
- const boundary = this.boundary || document;
66
- while (element && element.parentNode !== boundary) {
67
- element = element.parentNode instanceof ShadowRoot ? element.parentNode.host : element.parentElement;
68
- if (element !== null && hasOverflow(element)) {
24
+ this.dropdownAlign = "left";
25
+ this.dropdownOptionsOffset = 2;
26
+ this.checkable = false;
27
+ this.boundary = undefined;
28
+ this.placement = undefined;
29
+ this.strategy = "auto";
30
+ }
31
+ watchPosition() {
32
+ if (!this.popper) {
33
+ return;
34
+ }
69
35
  this.popper.setOptions({
70
- strategy: "fixed",
36
+ placement: this.placement || (this.dropdownAlign === "right" ? "bottom-end" : "bottom-start"),
37
+ });
38
+ }
39
+ watchOptionsOffset() {
40
+ var _a;
41
+ (_a = this.popper) === null || _a === void 0 ? void 0 : _a.setOptions({
42
+ modifiers: [
43
+ {
44
+ name: "offset",
45
+ options: {
46
+ offset: [0, this.dropdownOptionsOffset],
47
+ },
48
+ },
49
+ ],
50
+ });
51
+ }
52
+ watchStrategy() {
53
+ this.setStrategy();
54
+ }
55
+ setStrategy() {
56
+ if (!this.popper) {
57
+ return;
58
+ }
59
+ if (this.strategy === "absolute" || this.strategy === "fixed") {
60
+ this.popper.setOptions({
61
+ strategy: this.strategy,
62
+ });
63
+ return;
64
+ }
65
+ let element = this.host;
66
+ const boundary = this.boundary || document;
67
+ while (element && element.parentNode !== boundary) {
68
+ element = element.parentNode instanceof ShadowRoot ? element.parentNode.host : element.parentElement;
69
+ if (element !== null && hasOverflow(element)) {
70
+ this.popper.setOptions({
71
+ strategy: "fixed",
72
+ });
73
+ return;
74
+ }
75
+ }
76
+ this.popper.setOptions({
77
+ strategy: "absolute",
78
+ });
79
+ }
80
+ get button() {
81
+ const button = this.host.querySelector('button[slot="toggle"]');
82
+ if (!(button instanceof HTMLButtonElement)) {
83
+ throw new ReferenceError("Mandatory toggle button not found");
84
+ }
85
+ return button;
86
+ }
87
+ tabbables(withButton) {
88
+ const tabbables = tabbable(this.host);
89
+ return withButton ? tabbables : tabbables.filter((element) => element !== this.button);
90
+ }
91
+ componentDidLoad() {
92
+ this.button.setAttribute("aria-haspopup", "menu");
93
+ this.button.setAttribute("aria-expanded", "false");
94
+ if (!this.button.id) {
95
+ this.button.id = v4();
96
+ }
97
+ const options = this.host.querySelector(".dso-dropdown-options");
98
+ if (!options) {
99
+ throw new ReferenceError("Dropdown options not found");
100
+ }
101
+ options.setAttribute("role", "menu");
102
+ options.setAttribute("aria-labelledby", this.button.id);
103
+ for (const ul of Array.from(this.host.getElementsByTagName("ul"))) {
104
+ ul.setAttribute("role", "group");
105
+ for (const li of Array.from(ul.getElementsByTagName("li"))) {
106
+ li.setAttribute("role", "none");
107
+ }
108
+ }
109
+ if (this.popper) {
110
+ return;
111
+ }
112
+ const dropdownOptionsElement = this.host.querySelector(".dso-dropdown-options");
113
+ if (!(dropdownOptionsElement instanceof HTMLElement)) {
114
+ throw new Error("dropdown options element is not instanceof HTMLElement");
115
+ }
116
+ this.popper = createPopper(this.button, dropdownOptionsElement, {
117
+ placement: this.placement || (this.dropdownAlign === "right" ? "bottom-end" : "bottom-start"),
118
+ modifiers: [
119
+ {
120
+ name: "offset",
121
+ options: {
122
+ offset: [0, this.dropdownOptionsOffset],
123
+ },
124
+ },
125
+ {
126
+ name: "preventOverflow",
127
+ options: {
128
+ boundary: this.boundary ? document.querySelector(this.boundary) : null,
129
+ },
130
+ enabled: this.boundary !== undefined,
131
+ },
132
+ ],
71
133
  });
72
- return;
73
- }
74
- }
75
- this.popper.setOptions({
76
- strategy: "absolute",
77
- });
78
- }
79
- get button() {
80
- const button = this.host.querySelector('button[slot="toggle"]');
81
- if (!(button instanceof HTMLButtonElement)) {
82
- throw new ReferenceError("Mandatory toggle button not found");
83
- }
84
- return button;
85
- }
86
- tabbables(withButton) {
87
- const tabbables = tabbable(this.host);
88
- return withButton ? tabbables : tabbables.filter((element) => element !== this.button);
89
- }
90
- componentDidLoad() {
91
- this.button.setAttribute("aria-haspopup", "menu");
92
- this.button.setAttribute("aria-expanded", "false");
93
- if (!this.button.id) {
94
- this.button.id = v4();
95
- }
96
- const options = this.host.querySelector(".dso-dropdown-options");
97
- if (!options) {
98
- throw new ReferenceError("Dropdown options not found");
99
- }
100
- options.setAttribute("role", "menu");
101
- options.setAttribute("aria-labelledby", this.button.id);
102
- for (const ul of Array.from(this.host.getElementsByTagName("ul"))) {
103
- ul.setAttribute("role", "group");
104
- for (const li of Array.from(ul.getElementsByTagName("li"))) {
105
- li.setAttribute("role", "none");
106
- }
107
- }
108
- if (this.popper) {
109
- return;
110
- }
111
- const dropdownOptionsElement = this.host.querySelector(".dso-dropdown-options");
112
- if (!(dropdownOptionsElement instanceof HTMLElement)) {
113
- throw new Error("dropdown options element is not instanceof HTMLElement");
114
- }
115
- this.popper = createPopper(this.button, dropdownOptionsElement, {
116
- placement: this.placement || (this.dropdownAlign === "right" ? "bottom-end" : "bottom-start"),
117
- modifiers: [
118
- {
119
- name: "offset",
120
- options: {
121
- offset: [0, this.dropdownOptionsOffset],
122
- },
123
- },
124
- {
125
- name: "preventOverflow",
126
- options: {
127
- boundary: this.boundary ? document.querySelector(this.boundary) : null,
128
- },
129
- enabled: this.boundary !== undefined,
130
- },
131
- ],
132
- });
133
- }
134
- componentDidRender() {
135
- var _a;
136
- this.setStrategy();
137
- if (this.open) {
138
- (_a = this.popper) === null || _a === void 0 ? void 0 : _a.update();
139
- }
140
- for (const li of Array.from(this.host.getElementsByTagName("li"))) {
141
- for (const tab of tabbable(li)) {
142
- tab.setAttribute("role", this.checkable ? "menuitemradio" : "menuitem");
143
- if (this.checkable) {
144
- tab.setAttribute("aria-checked", li.classList.contains("dso-checked").toString());
145
- }
146
- }
147
- }
148
- this.button.setAttribute("aria-expanded", this.open ? "true" : "false");
149
- }
150
- onClick(event) {
151
- const composedPath = event.composedPath();
152
- if (this.isToggleButtonEvent(composedPath)) {
153
- this.open = !this.open;
154
- }
155
- else if (this.open && this.isMenuItemEvent(composedPath)) {
156
- this.open = false;
157
- }
158
- }
159
- isToggleButtonEvent(composedPath) {
160
- return composedPath.includes(this.button);
161
- }
162
- isMenuItemEvent(composedPath) {
163
- return composedPath.includes(this.host) && !this.isToggleButtonEvent(composedPath);
164
- }
165
- disconnectedCallback() {
166
- var _a;
167
- (_a = this.popper) === null || _a === void 0 ? void 0 : _a.destroy();
168
- }
169
- keyDownListener(event) {
170
- if (event.defaultPrevented || !this.open) {
171
- return;
172
- }
173
- switch (event.key) {
174
- case "Tab":
175
- if (event.shiftKey) {
176
- this.tabInPopup(this.tabbables(true), -1);
177
- }
178
- else {
179
- this.tabInPopup(this.tabbables(true), 1);
180
- }
181
- break;
182
- case "ArrowDown":
183
- this.tabInPopup(this.tabbables(false), 1);
184
- break;
185
- case "ArrowUp":
186
- this.tabInPopup(this.tabbables(false), -1);
187
- break;
188
- case "Escape":
189
- this.escape();
190
- break;
191
- case " ":
192
- if (event.target instanceof HTMLElement) {
193
- event.target.click();
194
- }
195
- break;
196
- default:
197
- return;
198
- }
199
- event.preventDefault();
200
- }
201
- tabInPopup(tabbables, direction) {
202
- var _a;
203
- const currentIndex = tabbables.findIndex((e) => e === getActiveElement());
204
- let nextIndex = currentIndex + direction;
205
- if (nextIndex >= tabbables.length) {
206
- nextIndex = 0;
207
- }
208
- else if (nextIndex < 0) {
209
- nextIndex = tabbables.length - 1;
210
- }
211
- (_a = tabbables[nextIndex]) === null || _a === void 0 ? void 0 : _a.focus();
212
- }
213
- render() {
214
- return (h(Host, { onFocusout: this.focusOutListener }, h("slot", { name: "toggle" }), h("div", { hidden: !this.open }, h("slot", null))));
215
- }
216
- get host() { return getElement(this); }
217
- static get watchers() { return {
218
- "placement": ["watchPosition"],
219
- "dropdownAlign": ["watchPosition"],
220
- "dropdownOptionsOffset": ["watchOptionsOffset"],
221
- "strategy": ["watchStrategy"]
222
- }; }
134
+ }
135
+ componentDidRender() {
136
+ var _a;
137
+ this.setStrategy();
138
+ if (this.open) {
139
+ (_a = this.popper) === null || _a === void 0 ? void 0 : _a.update();
140
+ }
141
+ for (const li of Array.from(this.host.getElementsByTagName("li"))) {
142
+ for (const tab of tabbable(li)) {
143
+ tab.setAttribute("role", this.checkable ? "menuitemradio" : "menuitem");
144
+ if (this.checkable) {
145
+ tab.setAttribute("aria-checked", li.classList.contains("dso-checked").toString());
146
+ }
147
+ }
148
+ }
149
+ this.button.setAttribute("aria-expanded", this.open ? "true" : "false");
150
+ }
151
+ onClick(event) {
152
+ const composedPath = event.composedPath();
153
+ if (this.isToggleButtonEvent(composedPath)) {
154
+ this.open = !this.open;
155
+ }
156
+ else if (this.open && this.isMenuItemEvent(composedPath)) {
157
+ this.open = false;
158
+ }
159
+ }
160
+ isToggleButtonEvent(composedPath) {
161
+ return composedPath.includes(this.button);
162
+ }
163
+ isMenuItemEvent(composedPath) {
164
+ return composedPath.includes(this.host) && !this.isToggleButtonEvent(composedPath);
165
+ }
166
+ disconnectedCallback() {
167
+ var _a;
168
+ (_a = this.popper) === null || _a === void 0 ? void 0 : _a.destroy();
169
+ }
170
+ keyDownListener(event) {
171
+ if (event.defaultPrevented || !this.open) {
172
+ return;
173
+ }
174
+ switch (event.key) {
175
+ case "Tab":
176
+ if (event.shiftKey) {
177
+ this.tabInPopup(this.tabbables(true), -1);
178
+ }
179
+ else {
180
+ this.tabInPopup(this.tabbables(true), 1);
181
+ }
182
+ break;
183
+ case "ArrowDown":
184
+ this.tabInPopup(this.tabbables(false), 1);
185
+ break;
186
+ case "ArrowUp":
187
+ this.tabInPopup(this.tabbables(false), -1);
188
+ break;
189
+ case "Escape":
190
+ this.escape();
191
+ break;
192
+ case " ":
193
+ if (event.target instanceof HTMLElement) {
194
+ event.target.click();
195
+ }
196
+ break;
197
+ default:
198
+ return;
199
+ }
200
+ event.preventDefault();
201
+ }
202
+ tabInPopup(tabbables, direction) {
203
+ var _a;
204
+ const currentIndex = tabbables.findIndex((e) => e === getActiveElement());
205
+ let nextIndex = currentIndex + direction;
206
+ if (nextIndex >= tabbables.length) {
207
+ nextIndex = 0;
208
+ }
209
+ else if (nextIndex < 0) {
210
+ nextIndex = tabbables.length - 1;
211
+ }
212
+ (_a = tabbables[nextIndex]) === null || _a === void 0 ? void 0 : _a.focus();
213
+ }
214
+ render() {
215
+ return (h(Host, { key: '8511a4953a043ad97ce78a54e3cad085af2fbbf9', onFocusout: this.focusOutListener }, h("slot", { key: '47ad6e2194994af7b3ea7b85f4069f0fac342d7c', name: "toggle" }), h("div", { key: '6398693835335f206a6eaba54bcf318ce097d306', hidden: !this.open }, h("slot", { key: '1c6f158faeaf1666505c7251b94e657d72d8129d' }))));
216
+ }
217
+ get host() { return getElement(this); }
218
+ static get watchers() { return {
219
+ "placement": ["watchPosition"],
220
+ "dropdownAlign": ["watchPosition"],
221
+ "dropdownOptionsOffset": ["watchOptionsOffset"],
222
+ "strategy": ["watchStrategy"]
223
+ }; }
223
224
  };
224
- DropdownMenu.style = dropdownMenuCss;
225
+ DropdownMenu.style = DsoDropdownMenuStyle0;
225
226
 
226
227
  export { DropdownMenu as dso_dropdown_menu };
227
228
 
@@ -1 +1 @@
1
- {"file":"dso-dropdown-menu.entry.js","mappings":"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","names":["uuidv4"],"sources":["src/components/dropdown-menu/dropdown-menu.scss?tag=dso-dropdown-menu&encapsulation=shadow","src/components/dropdown-menu/dropdown-menu.tsx"],"sourcesContent":["@use \"~dso-toolkit/src/components/dropdown-menu\";\r\n\r\n:host(:focus) {\r\n outline: none;\r\n}\r\n\r\n:host {\r\n @include dropdown-menu.root();\r\n}\r\n","import { createPopper, Placement, Instance as PopperInstance } from \"@popperjs/core\";\r\nimport { h, Component, Element, Host, Prop, Watch, Listen } from \"@stencil/core\";\r\nimport { FocusableElement, tabbable } from \"tabbable\";\r\nimport { v4 as uuidv4 } from \"uuid\";\r\n\r\nimport { hasOverflow } from \"../../utils/has-overflow\";\r\nimport { getActiveElement } from \"../../utils/get-active-element\";\r\n\r\n@Component({\r\n tag: \"dso-dropdown-menu\",\r\n styleUrl: \"dropdown-menu.scss\",\r\n shadow: true,\r\n})\r\nexport class DropdownMenu {\r\n /**\r\n * Whether the menu is open or closed.\r\n * This attribute is reflected and mutable.\r\n */\r\n @Prop({ reflect: true, mutable: true })\r\n open = false;\r\n\r\n /**\r\n * Alignment of the dropdown\r\n */\r\n @Prop()\r\n dropdownAlign: \"left\" | \"right\" = \"left\";\r\n\r\n /**\r\n * Space between button and dropdown options\r\n */\r\n @Prop()\r\n dropdownOptionsOffset = 2;\r\n\r\n /**\r\n * Whether the menu is checkable.\r\n */\r\n @Prop()\r\n checkable = false;\r\n\r\n /**\r\n * Selector for the element the dropdown options should not be overflowing.\r\n */\r\n @Prop()\r\n boundary?: string;\r\n\r\n /**\r\n * Force placement of dropdown.\r\n *\r\n * This property overrides `dropdownAlign`.\r\n */\r\n @Prop()\r\n placement?: Placement;\r\n\r\n /**\r\n * Set position strategy of dropdown options\r\n */\r\n @Prop()\r\n strategy: \"auto\" | \"absolute\" | \"fixed\" = \"auto\";\r\n\r\n @Watch(\"placement\")\r\n @Watch(\"dropdownAlign\")\r\n watchPosition() {\r\n if (!this.popper) {\r\n return;\r\n }\r\n\r\n this.popper.setOptions({\r\n placement: this.placement || (this.dropdownAlign === \"right\" ? \"bottom-end\" : \"bottom-start\"),\r\n });\r\n }\r\n\r\n @Watch(\"dropdownOptionsOffset\")\r\n watchOptionsOffset() {\r\n this.popper?.setOptions({\r\n modifiers: [\r\n {\r\n name: \"offset\",\r\n options: {\r\n offset: [0, this.dropdownOptionsOffset],\r\n },\r\n },\r\n ],\r\n });\r\n }\r\n\r\n @Watch(\"strategy\")\r\n watchStrategy() {\r\n this.setStrategy();\r\n }\r\n\r\n private setStrategy() {\r\n if (!this.popper) {\r\n return;\r\n }\r\n\r\n if (this.strategy === \"absolute\" || this.strategy === \"fixed\") {\r\n this.popper.setOptions({\r\n strategy: this.strategy,\r\n });\r\n\r\n return;\r\n }\r\n\r\n let element: Element | null = this.host;\r\n\r\n const boundary = this.boundary || document;\r\n\r\n while (element && element.parentNode !== boundary) {\r\n element = element.parentNode instanceof ShadowRoot ? element.parentNode.host : element.parentElement;\r\n if (element !== null && hasOverflow(element)) {\r\n this.popper.setOptions({\r\n strategy: \"fixed\",\r\n });\r\n\r\n return;\r\n }\r\n }\r\n\r\n this.popper.setOptions({\r\n strategy: \"absolute\",\r\n });\r\n }\r\n\r\n @Element()\r\n host!: HTMLDsoDropdownMenuElement;\r\n\r\n private popper: PopperInstance | undefined;\r\n\r\n get button(): HTMLButtonElement {\r\n const button = this.host.querySelector('button[slot=\"toggle\"]');\r\n\r\n if (!(button instanceof HTMLButtonElement)) {\r\n throw new ReferenceError(\"Mandatory toggle button not found\");\r\n }\r\n\r\n return button;\r\n }\r\n\r\n private tabbables(withButton: boolean): FocusableElement[] {\r\n const tabbables = tabbable(this.host);\r\n\r\n return withButton ? tabbables : tabbables.filter((element) => element !== this.button);\r\n }\r\n\r\n componentDidLoad() {\r\n this.button.setAttribute(\"aria-haspopup\", \"menu\");\r\n this.button.setAttribute(\"aria-expanded\", \"false\");\r\n if (!this.button.id) {\r\n this.button.id = uuidv4();\r\n }\r\n\r\n const options = this.host.querySelector(\".dso-dropdown-options\");\r\n if (!options) {\r\n throw new ReferenceError(\"Dropdown options not found\");\r\n }\r\n\r\n options.setAttribute(\"role\", \"menu\");\r\n options.setAttribute(\"aria-labelledby\", this.button.id);\r\n\r\n for (const ul of Array.from(this.host.getElementsByTagName(\"ul\"))) {\r\n ul.setAttribute(\"role\", \"group\");\r\n for (const li of Array.from(ul.getElementsByTagName(\"li\"))) {\r\n li.setAttribute(\"role\", \"none\");\r\n }\r\n }\r\n\r\n if (this.popper) {\r\n return;\r\n }\r\n\r\n const dropdownOptionsElement = this.host.querySelector(\".dso-dropdown-options\");\r\n\r\n if (!(dropdownOptionsElement instanceof HTMLElement)) {\r\n throw new Error(\"dropdown options element is not instanceof HTMLElement\");\r\n }\r\n\r\n this.popper = createPopper(this.button, dropdownOptionsElement, {\r\n placement: this.placement || (this.dropdownAlign === \"right\" ? \"bottom-end\" : \"bottom-start\"),\r\n modifiers: [\r\n {\r\n name: \"offset\",\r\n options: {\r\n offset: [0, this.dropdownOptionsOffset],\r\n },\r\n },\r\n {\r\n name: \"preventOverflow\",\r\n options: {\r\n boundary: this.boundary ? document.querySelector(this.boundary) : null,\r\n },\r\n enabled: this.boundary !== undefined,\r\n },\r\n ],\r\n });\r\n }\r\n\r\n componentDidRender() {\r\n this.setStrategy();\r\n if (this.open) {\r\n this.popper?.update();\r\n }\r\n\r\n for (const li of Array.from(this.host.getElementsByTagName(\"li\"))) {\r\n for (const tab of tabbable(li)) {\r\n tab.setAttribute(\"role\", this.checkable ? \"menuitemradio\" : \"menuitem\");\r\n\r\n if (this.checkable) {\r\n tab.setAttribute(\"aria-checked\", li.classList.contains(\"dso-checked\").toString());\r\n }\r\n }\r\n }\r\n\r\n this.button.setAttribute(\"aria-expanded\", this.open ? \"true\" : \"false\");\r\n }\r\n\r\n @Listen(\"click\", { target: \"window\" })\r\n onClick(event: MouseEvent) {\r\n const composedPath = event.composedPath();\r\n\r\n if (this.isToggleButtonEvent(composedPath)) {\r\n this.open = !this.open;\r\n } else if (this.open && this.isMenuItemEvent(composedPath)) {\r\n this.open = false;\r\n }\r\n }\r\n\r\n private isToggleButtonEvent(composedPath: EventTarget[]) {\r\n return composedPath.includes(this.button);\r\n }\r\n\r\n private isMenuItemEvent(composedPath: EventTarget[]) {\r\n return composedPath.includes(this.host) && !this.isToggleButtonEvent(composedPath);\r\n }\r\n\r\n disconnectedCallback() {\r\n this.popper?.destroy();\r\n }\r\n\r\n private focusOutListener = (event: FocusEvent) => {\r\n if (\r\n this.open &&\r\n (!(event.relatedTarget instanceof HTMLElement) || !this.tabbables(true).includes(event.relatedTarget))\r\n ) {\r\n this.open = false;\r\n }\r\n };\r\n\r\n @Listen(\"keydown\", { target: \"window\" })\r\n keyDownListener(event: KeyboardEvent) {\r\n if (event.defaultPrevented || !this.open) {\r\n return;\r\n }\r\n\r\n switch (event.key) {\r\n case \"Tab\":\r\n if (event.shiftKey) {\r\n this.tabInPopup(this.tabbables(true), -1);\r\n } else {\r\n this.tabInPopup(this.tabbables(true), 1);\r\n }\r\n\r\n break;\r\n case \"ArrowDown\":\r\n this.tabInPopup(this.tabbables(false), 1);\r\n break;\r\n\r\n case \"ArrowUp\":\r\n this.tabInPopup(this.tabbables(false), -1);\r\n break;\r\n\r\n case \"Escape\":\r\n this.escape();\r\n break;\r\n\r\n case \" \":\r\n if (event.target instanceof HTMLElement) {\r\n event.target.click();\r\n }\r\n\r\n break;\r\n\r\n default:\r\n return;\r\n }\r\n\r\n event.preventDefault();\r\n }\r\n\r\n private tabInPopup(tabbables: FocusableElement[], direction: number) {\r\n const currentIndex = tabbables.findIndex((e) => e === getActiveElement());\r\n\r\n let nextIndex = currentIndex + direction;\r\n if (nextIndex >= tabbables.length) {\r\n nextIndex = 0;\r\n } else if (nextIndex < 0) {\r\n nextIndex = tabbables.length - 1;\r\n }\r\n\r\n tabbables[nextIndex]?.focus();\r\n }\r\n\r\n private escape = () => {\r\n this.button.focus();\r\n this.open = false;\r\n };\r\n\r\n render() {\r\n return (\r\n <Host onFocusout={this.focusOutListener}>\r\n <slot name=\"toggle\" />\r\n <div hidden={!this.open}>\r\n <slot />\r\n </div>\r\n </Host>\r\n );\r\n }\r\n}\r\n"],"version":3}
1
+ {"file":"dso-dropdown-menu.entry.js","mappings":"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","names":["uuidv4"],"sources":["src/components/dropdown-menu/dropdown-menu.scss?tag=dso-dropdown-menu&encapsulation=shadow","src/components/dropdown-menu/dropdown-menu.tsx"],"sourcesContent":["@use \"~dso-toolkit/src/components/dropdown-menu\";\r\n\r\n:host(:focus) {\r\n outline: none;\r\n}\r\n\r\n:host {\r\n @include dropdown-menu.root();\r\n}\r\n","import { createPopper, Placement, Instance as PopperInstance } from \"@popperjs/core\";\r\nimport { h, Component, Element, Host, Prop, Watch, Listen } from \"@stencil/core\";\r\nimport { FocusableElement, tabbable } from \"tabbable\";\r\nimport { v4 as uuidv4 } from \"uuid\";\r\n\r\nimport { hasOverflow } from \"../../utils/has-overflow\";\r\nimport { getActiveElement } from \"../../utils/get-active-element\";\r\n\r\n@Component({\r\n tag: \"dso-dropdown-menu\",\r\n styleUrl: \"dropdown-menu.scss\",\r\n shadow: true,\r\n})\r\nexport class DropdownMenu {\r\n /**\r\n * Whether the menu is open or closed.\r\n * This attribute is reflected and mutable.\r\n */\r\n @Prop({ reflect: true, mutable: true })\r\n open = false;\r\n\r\n /**\r\n * Alignment of the dropdown\r\n */\r\n @Prop()\r\n dropdownAlign: \"left\" | \"right\" = \"left\";\r\n\r\n /**\r\n * Space between button and dropdown options\r\n */\r\n @Prop()\r\n dropdownOptionsOffset = 2;\r\n\r\n /**\r\n * Whether the menu is checkable.\r\n */\r\n @Prop()\r\n checkable = false;\r\n\r\n /**\r\n * Selector for the element the dropdown options should not be overflowing.\r\n */\r\n @Prop()\r\n boundary?: string;\r\n\r\n /**\r\n * Force placement of dropdown.\r\n *\r\n * This property overrides `dropdownAlign`.\r\n */\r\n @Prop()\r\n placement?: Placement;\r\n\r\n /**\r\n * Set position strategy of dropdown options\r\n */\r\n @Prop()\r\n strategy: \"auto\" | \"absolute\" | \"fixed\" = \"auto\";\r\n\r\n @Watch(\"placement\")\r\n @Watch(\"dropdownAlign\")\r\n watchPosition() {\r\n if (!this.popper) {\r\n return;\r\n }\r\n\r\n this.popper.setOptions({\r\n placement: this.placement || (this.dropdownAlign === \"right\" ? \"bottom-end\" : \"bottom-start\"),\r\n });\r\n }\r\n\r\n @Watch(\"dropdownOptionsOffset\")\r\n watchOptionsOffset() {\r\n this.popper?.setOptions({\r\n modifiers: [\r\n {\r\n name: \"offset\",\r\n options: {\r\n offset: [0, this.dropdownOptionsOffset],\r\n },\r\n },\r\n ],\r\n });\r\n }\r\n\r\n @Watch(\"strategy\")\r\n watchStrategy() {\r\n this.setStrategy();\r\n }\r\n\r\n private setStrategy() {\r\n if (!this.popper) {\r\n return;\r\n }\r\n\r\n if (this.strategy === \"absolute\" || this.strategy === \"fixed\") {\r\n this.popper.setOptions({\r\n strategy: this.strategy,\r\n });\r\n\r\n return;\r\n }\r\n\r\n let element: Element | null = this.host;\r\n\r\n const boundary = this.boundary || document;\r\n\r\n while (element && element.parentNode !== boundary) {\r\n element = element.parentNode instanceof ShadowRoot ? element.parentNode.host : element.parentElement;\r\n if (element !== null && hasOverflow(element)) {\r\n this.popper.setOptions({\r\n strategy: \"fixed\",\r\n });\r\n\r\n return;\r\n }\r\n }\r\n\r\n this.popper.setOptions({\r\n strategy: \"absolute\",\r\n });\r\n }\r\n\r\n @Element()\r\n host!: HTMLDsoDropdownMenuElement;\r\n\r\n private popper: PopperInstance | undefined;\r\n\r\n get button(): HTMLButtonElement {\r\n const button = this.host.querySelector('button[slot=\"toggle\"]');\r\n\r\n if (!(button instanceof HTMLButtonElement)) {\r\n throw new ReferenceError(\"Mandatory toggle button not found\");\r\n }\r\n\r\n return button;\r\n }\r\n\r\n private tabbables(withButton: boolean): FocusableElement[] {\r\n const tabbables = tabbable(this.host);\r\n\r\n return withButton ? tabbables : tabbables.filter((element) => element !== this.button);\r\n }\r\n\r\n componentDidLoad() {\r\n this.button.setAttribute(\"aria-haspopup\", \"menu\");\r\n this.button.setAttribute(\"aria-expanded\", \"false\");\r\n if (!this.button.id) {\r\n this.button.id = uuidv4();\r\n }\r\n\r\n const options = this.host.querySelector(\".dso-dropdown-options\");\r\n if (!options) {\r\n throw new ReferenceError(\"Dropdown options not found\");\r\n }\r\n\r\n options.setAttribute(\"role\", \"menu\");\r\n options.setAttribute(\"aria-labelledby\", this.button.id);\r\n\r\n for (const ul of Array.from(this.host.getElementsByTagName(\"ul\"))) {\r\n ul.setAttribute(\"role\", \"group\");\r\n for (const li of Array.from(ul.getElementsByTagName(\"li\"))) {\r\n li.setAttribute(\"role\", \"none\");\r\n }\r\n }\r\n\r\n if (this.popper) {\r\n return;\r\n }\r\n\r\n const dropdownOptionsElement = this.host.querySelector(\".dso-dropdown-options\");\r\n\r\n if (!(dropdownOptionsElement instanceof HTMLElement)) {\r\n throw new Error(\"dropdown options element is not instanceof HTMLElement\");\r\n }\r\n\r\n this.popper = createPopper(this.button, dropdownOptionsElement, {\r\n placement: this.placement || (this.dropdownAlign === \"right\" ? \"bottom-end\" : \"bottom-start\"),\r\n modifiers: [\r\n {\r\n name: \"offset\",\r\n options: {\r\n offset: [0, this.dropdownOptionsOffset],\r\n },\r\n },\r\n {\r\n name: \"preventOverflow\",\r\n options: {\r\n boundary: this.boundary ? document.querySelector(this.boundary) : null,\r\n },\r\n enabled: this.boundary !== undefined,\r\n },\r\n ],\r\n });\r\n }\r\n\r\n componentDidRender() {\r\n this.setStrategy();\r\n if (this.open) {\r\n this.popper?.update();\r\n }\r\n\r\n for (const li of Array.from(this.host.getElementsByTagName(\"li\"))) {\r\n for (const tab of tabbable(li)) {\r\n tab.setAttribute(\"role\", this.checkable ? \"menuitemradio\" : \"menuitem\");\r\n\r\n if (this.checkable) {\r\n tab.setAttribute(\"aria-checked\", li.classList.contains(\"dso-checked\").toString());\r\n }\r\n }\r\n }\r\n\r\n this.button.setAttribute(\"aria-expanded\", this.open ? \"true\" : \"false\");\r\n }\r\n\r\n @Listen(\"click\", { target: \"window\" })\r\n onClick(event: MouseEvent) {\r\n const composedPath = event.composedPath();\r\n\r\n if (this.isToggleButtonEvent(composedPath)) {\r\n this.open = !this.open;\r\n } else if (this.open && this.isMenuItemEvent(composedPath)) {\r\n this.open = false;\r\n }\r\n }\r\n\r\n private isToggleButtonEvent(composedPath: EventTarget[]) {\r\n return composedPath.includes(this.button);\r\n }\r\n\r\n private isMenuItemEvent(composedPath: EventTarget[]) {\r\n return composedPath.includes(this.host) && !this.isToggleButtonEvent(composedPath);\r\n }\r\n\r\n disconnectedCallback() {\r\n this.popper?.destroy();\r\n }\r\n\r\n private focusOutListener = (event: FocusEvent) => {\r\n if (\r\n this.open &&\r\n (!(event.relatedTarget instanceof HTMLElement) || !this.tabbables(true).includes(event.relatedTarget))\r\n ) {\r\n this.open = false;\r\n }\r\n };\r\n\r\n @Listen(\"keydown\", { target: \"window\" })\r\n keyDownListener(event: KeyboardEvent) {\r\n if (event.defaultPrevented || !this.open) {\r\n return;\r\n }\r\n\r\n switch (event.key) {\r\n case \"Tab\":\r\n if (event.shiftKey) {\r\n this.tabInPopup(this.tabbables(true), -1);\r\n } else {\r\n this.tabInPopup(this.tabbables(true), 1);\r\n }\r\n\r\n break;\r\n case \"ArrowDown\":\r\n this.tabInPopup(this.tabbables(false), 1);\r\n break;\r\n\r\n case \"ArrowUp\":\r\n this.tabInPopup(this.tabbables(false), -1);\r\n break;\r\n\r\n case \"Escape\":\r\n this.escape();\r\n break;\r\n\r\n case \" \":\r\n if (event.target instanceof HTMLElement) {\r\n event.target.click();\r\n }\r\n\r\n break;\r\n\r\n default:\r\n return;\r\n }\r\n\r\n event.preventDefault();\r\n }\r\n\r\n private tabInPopup(tabbables: FocusableElement[], direction: number) {\r\n const currentIndex = tabbables.findIndex((e) => e === getActiveElement());\r\n\r\n let nextIndex = currentIndex + direction;\r\n if (nextIndex >= tabbables.length) {\r\n nextIndex = 0;\r\n } else if (nextIndex < 0) {\r\n nextIndex = tabbables.length - 1;\r\n }\r\n\r\n tabbables[nextIndex]?.focus();\r\n }\r\n\r\n private escape = () => {\r\n this.button.focus();\r\n this.open = false;\r\n };\r\n\r\n render() {\r\n return (\r\n <Host onFocusout={this.focusOutListener}>\r\n <slot name=\"toggle\" />\r\n <div hidden={!this.open}>\r\n <slot />\r\n </div>\r\n </Host>\r\n );\r\n }\r\n}\r\n"],"version":3}