@dso-toolkit/core 62.19.0 → 62.20.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (377) hide show
  1. package/dist/cjs/dso-accordion-section.cjs.entry.js +2 -2
  2. package/dist/cjs/dso-accordion.cjs.entry.js +1 -1
  3. package/dist/cjs/dso-action-list-item.cjs.entry.js +2 -2
  4. package/dist/cjs/dso-action-list-item.cjs.entry.js.map +1 -1
  5. package/dist/cjs/dso-action-list.cjs.entry.js +1 -1
  6. package/dist/cjs/dso-advanced-select.cjs.entry.js +2 -2
  7. package/dist/cjs/dso-advanced-select.cjs.entry.js.map +1 -1
  8. package/dist/cjs/dso-alert_7.cjs.entry.js +55 -30
  9. package/dist/cjs/dso-alert_7.cjs.entry.js.map +1 -1
  10. package/dist/cjs/dso-annotation-output_3.cjs.entry.js +3 -3
  11. package/dist/cjs/dso-annotation-output_3.cjs.entry.js.map +1 -1
  12. package/dist/cjs/dso-attachments-counter.cjs.entry.js +1 -1
  13. package/dist/cjs/dso-autosuggest.cjs.entry.js +1 -1
  14. package/dist/cjs/dso-banner.cjs.entry.js +2 -2
  15. package/dist/cjs/dso-card-container.cjs.entry.js +1 -1
  16. package/dist/cjs/dso-card-container.cjs.entry.js.map +1 -1
  17. package/dist/cjs/dso-card.cjs.entry.js +2 -2
  18. package/dist/cjs/dso-card.cjs.entry.js.map +1 -1
  19. package/dist/cjs/dso-date-picker-legacy.cjs.entry.js +3 -3
  20. package/dist/cjs/dso-date-picker-legacy.cjs.entry.js.map +1 -1
  21. package/dist/cjs/dso-date-picker.cjs.entry.js +1 -1
  22. package/dist/cjs/dso-dropdown-menu.cjs.entry.js +1 -1
  23. package/dist/cjs/dso-expandable.cjs.entry.js +2 -2
  24. package/dist/cjs/dso-helpcenter-panel.cjs.entry.js +2 -2
  25. package/dist/cjs/dso-highlight-box.cjs.entry.js +1 -1
  26. package/dist/cjs/dso-highlight-box.cjs.entry.js.map +1 -1
  27. package/dist/cjs/dso-icon.cjs.entry.js +1 -1
  28. package/dist/cjs/dso-info-button.cjs.entry.js +1 -1
  29. package/dist/cjs/dso-info_2.cjs.entry.js +2 -2
  30. package/dist/cjs/dso-info_2.cjs.entry.js.map +1 -1
  31. package/dist/cjs/dso-input-range.cjs.entry.js +2 -2
  32. package/dist/cjs/dso-input-range.cjs.entry.js.map +1 -1
  33. package/dist/cjs/dso-legend-item.cjs.entry.js +46 -0
  34. package/dist/cjs/dso-legend-item.cjs.entry.js.map +1 -0
  35. package/dist/cjs/dso-list-button.cjs.entry.js +1 -1
  36. package/dist/cjs/dso-list-button.cjs.entry.js.map +1 -1
  37. package/dist/cjs/dso-logo.cjs.entry.js +1 -1
  38. package/dist/cjs/dso-logo.cjs.entry.js.map +1 -1
  39. package/dist/cjs/dso-map-base-layers.cjs.entry.js +1 -1
  40. package/dist/cjs/dso-map-controls.cjs.entry.js +1 -1
  41. package/dist/cjs/dso-map-overlays.cjs.entry.js +1 -1
  42. package/dist/cjs/dso-mark-bar.cjs.entry.js +1 -1
  43. package/dist/cjs/dso-modal.cjs.entry.js +2 -2
  44. package/dist/cjs/dso-modal.cjs.entry.js.map +1 -1
  45. package/dist/cjs/dso-progress-bar.cjs.entry.js +1 -1
  46. package/dist/cjs/dso-progress-indicator.cjs.entry.js +1 -1
  47. package/dist/cjs/dso-responsive-element.cjs.entry.js +1 -1
  48. package/dist/cjs/dso-scrollable.cjs.entry.js +2 -2
  49. package/dist/cjs/dso-toggletip.cjs.entry.js +1 -1
  50. package/dist/cjs/dso-toolkit.cjs.js +2 -2
  51. package/dist/cjs/dso-toolkit.cjs.js.map +1 -1
  52. package/dist/cjs/dso-tooltip.cjs.entry.js +1 -1
  53. package/dist/cjs/dso-tooltip.cjs.entry.js.map +1 -1
  54. package/dist/cjs/dso-tree-view.cjs.entry.js +1 -1
  55. package/dist/cjs/dso-viewer-grid.cjs.entry.js +1 -1
  56. package/dist/cjs/dso-viewer-grid.cjs.entry.js.map +1 -1
  57. package/dist/cjs/dsot-document-component-demo.cjs.entry.js +1 -1
  58. package/dist/cjs/dsot-document-component-demo.cjs.entry.js.map +1 -1
  59. package/dist/cjs/index-a58ba49d.js.map +1 -1
  60. package/dist/cjs/loader.cjs.js +1 -1
  61. package/dist/collection/collection-manifest.json +3 -2
  62. package/dist/collection/components/accordion/accordion.js +1 -1
  63. package/dist/collection/components/accordion/components/accordion-section.js +2 -2
  64. package/dist/collection/components/action-list/action-list.js +1 -1
  65. package/dist/collection/components/action-list/components/action-list-item.js +2 -2
  66. package/dist/collection/components/action-list/components/action-list-item.js.map +1 -1
  67. package/dist/collection/components/advanced-select/advanced-select.js +2 -2
  68. package/dist/collection/components/advanced-select/advanced-select.js.map +1 -1
  69. package/dist/collection/components/alert/alert.js +1 -1
  70. package/dist/collection/components/annotation-output/annotation-output.js +1 -1
  71. package/dist/collection/components/annotation-output/annotation-output.js.map +1 -1
  72. package/dist/collection/components/attachments-counter/attachments-counter.js +1 -1
  73. package/dist/collection/components/autosuggest/autosuggest.js +1 -1
  74. package/dist/collection/components/badge/badge.js +1 -1
  75. package/dist/collection/components/banner/banner.js +2 -2
  76. package/dist/collection/components/card/card.js +2 -2
  77. package/dist/collection/components/card/card.js.map +1 -1
  78. package/dist/collection/components/card-container/card-container.js +1 -1
  79. package/dist/collection/components/card-container/card-container.js.map +1 -1
  80. package/dist/collection/components/date-picker/date-picker.js +1 -1
  81. package/dist/collection/components/date-picker-legacy/date-picker-legacy.js +3 -3
  82. package/dist/collection/components/document-component/document-component.js +1 -1
  83. package/dist/collection/components/document-component/document-component.js.map +1 -1
  84. package/dist/collection/components/document-component-demo/document-component.demo.js +1 -1
  85. package/dist/collection/components/document-component-demo/document-component.demo.js.map +1 -1
  86. package/dist/collection/components/dropdown-menu/dropdown-menu.js +1 -1
  87. package/dist/collection/components/expandable/expandable.js +2 -2
  88. package/dist/collection/components/helpcenter-panel/helpcenter-panel.js +2 -2
  89. package/dist/collection/components/highlight-box/highlight-box.js +1 -1
  90. package/dist/collection/components/highlight-box/highlight-box.js.map +1 -1
  91. package/dist/collection/components/icon/icon.js +1 -1
  92. package/dist/collection/components/info/info.js +1 -1
  93. package/dist/collection/components/info/info.js.map +1 -1
  94. package/dist/collection/components/info-button/info-button.js +1 -1
  95. package/dist/collection/components/input-range/input-range.js +2 -2
  96. package/dist/collection/components/input-range/input-range.js.map +1 -1
  97. package/dist/collection/components/label/label.js +3 -3
  98. package/dist/collection/components/label/label.js.map +1 -1
  99. package/dist/collection/components/legend-item/legend-item.css +104 -0
  100. package/dist/collection/components/legend-item/legend-item.interfaces.js +2 -0
  101. package/dist/collection/components/legend-item/legend-item.interfaces.js.map +1 -0
  102. package/dist/collection/components/legend-item/legend-item.js +162 -0
  103. package/dist/collection/components/legend-item/legend-item.js.map +1 -0
  104. package/dist/collection/components/list-button/list-button.js +1 -1
  105. package/dist/collection/components/list-button/list-button.js.map +1 -1
  106. package/dist/collection/components/logo/logo.js +1 -1
  107. package/dist/collection/components/logo/logo.js.map +1 -1
  108. package/dist/collection/components/map-base-layers/map-base-layers.js +1 -1
  109. package/dist/collection/components/map-controls/map-controls.js +1 -1
  110. package/dist/collection/components/map-overlays/map-overlays.js +1 -1
  111. package/dist/collection/components/mark-bar/mark-bar.js +1 -1
  112. package/dist/collection/components/modal/modal.js +2 -2
  113. package/dist/collection/components/modal/modal.js.map +1 -1
  114. package/dist/collection/components/ozon-content/functional-components/wrap-wijzigactie.functional-component.js +11 -0
  115. package/dist/collection/components/ozon-content/functional-components/wrap-wijzigactie.functional-component.js.map +1 -0
  116. package/dist/collection/components/ozon-content/functions/parse-wijzigactie-from-node.function.js +5 -0
  117. package/dist/collection/components/ozon-content/functions/parse-wijzigactie-from-node.function.js.map +1 -0
  118. package/dist/collection/components/ozon-content/functions/wijzigactie-to-class-name.function.js +10 -0
  119. package/dist/collection/components/ozon-content/functions/wijzigactie-to-class-name.function.js.map +1 -0
  120. package/dist/collection/components/ozon-content/nodes/al.node.js +6 -11
  121. package/dist/collection/components/ozon-content/nodes/al.node.js.map +1 -1
  122. package/dist/collection/components/ozon-content/nodes/lijst.node.js +14 -4
  123. package/dist/collection/components/ozon-content/nodes/lijst.node.js.map +1 -1
  124. package/dist/collection/components/ozon-content/ozon-content.css +23 -2
  125. package/dist/collection/components/ozon-content/ozon-content.interfaces.js.map +1 -1
  126. package/dist/collection/components/ozon-content/ozon-content.js +1 -1
  127. package/dist/collection/components/progress-bar/progress-bar.js +1 -1
  128. package/dist/collection/components/progress-indicator/progress-indicator.js +1 -1
  129. package/dist/collection/components/responsive-element/responsive-element.js +1 -1
  130. package/dist/collection/components/scrollable/scrollable.js +2 -2
  131. package/dist/collection/components/selectable/selectable.js +1 -1
  132. package/dist/collection/components/selectable/selectable.js.map +1 -1
  133. package/dist/collection/components/slide-toggle/slide-toggle.js +1 -1
  134. package/dist/collection/components/slide-toggle/slide-toggle.js.map +1 -1
  135. package/dist/collection/components/table/table.js +1 -1
  136. package/dist/collection/components/table/table.js.map +1 -1
  137. package/dist/collection/components/toggletip/toggletip.js +1 -1
  138. package/dist/collection/components/tooltip/tooltip.js +1 -1
  139. package/dist/collection/components/tooltip/tooltip.js.map +1 -1
  140. package/dist/collection/components/tree-view/tree-view.js +1 -1
  141. package/dist/collection/components/viewer-grid/viewer-grid.js +1 -1
  142. package/dist/collection/components/viewer-grid/viewer-grid.js.map +1 -1
  143. package/dist/components/alert.js +1 -1
  144. package/dist/components/annotation-output.js +1 -1
  145. package/dist/components/annotation-output.js.map +1 -1
  146. package/dist/components/attachments-counter.js +1 -1
  147. package/dist/components/badge.js +1 -1
  148. package/dist/components/document-component.js +1 -1
  149. package/dist/components/document-component.js.map +1 -1
  150. package/dist/components/dropdown-menu.js +1 -1
  151. package/dist/components/dso-accordion-section.js +2 -2
  152. package/dist/components/dso-accordion.js +1 -1
  153. package/dist/components/dso-action-list-item.js +2 -2
  154. package/dist/components/dso-action-list-item.js.map +1 -1
  155. package/dist/components/dso-action-list.js +1 -1
  156. package/dist/components/dso-advanced-select.js +2 -2
  157. package/dist/components/dso-advanced-select.js.map +1 -1
  158. package/dist/components/dso-autosuggest.js +1 -1
  159. package/dist/components/dso-banner.js +2 -2
  160. package/dist/components/dso-card-container.js +1 -1
  161. package/dist/components/dso-card-container.js.map +1 -1
  162. package/dist/components/dso-card.js +2 -2
  163. package/dist/components/dso-card.js.map +1 -1
  164. package/dist/components/dso-date-picker-legacy.js +3 -3
  165. package/dist/components/dso-date-picker-legacy.js.map +1 -1
  166. package/dist/components/dso-date-picker.js +1 -1
  167. package/dist/components/dso-helpcenter-panel.js +2 -2
  168. package/dist/components/dso-highlight-box.js +1 -1
  169. package/dist/components/dso-highlight-box.js.map +1 -1
  170. package/dist/components/dso-input-range.js +2 -2
  171. package/dist/components/dso-input-range.js.map +1 -1
  172. package/dist/components/dso-legend-item.d.ts +11 -0
  173. package/dist/components/dso-legend-item.js +89 -0
  174. package/dist/components/dso-legend-item.js.map +1 -0
  175. package/dist/components/dso-list-button.js +1 -1
  176. package/dist/components/dso-list-button.js.map +1 -1
  177. package/dist/components/dso-logo.js +1 -1
  178. package/dist/components/dso-logo.js.map +1 -1
  179. package/dist/components/dso-map-base-layers.js +1 -1
  180. package/dist/components/dso-map-controls.js +1 -1
  181. package/dist/components/dso-map-overlays.js +1 -1
  182. package/dist/components/dso-mark-bar.js +1 -1
  183. package/dist/components/dso-modal.js +2 -2
  184. package/dist/components/dso-modal.js.map +1 -1
  185. package/dist/components/dso-progress-bar.js +1 -1
  186. package/dist/components/dso-toggletip.js +1 -86
  187. package/dist/components/dso-toggletip.js.map +1 -1
  188. package/dist/components/dso-tree-view.js +1 -1
  189. package/dist/components/dso-viewer-grid.js +1 -1
  190. package/dist/components/dso-viewer-grid.js.map +1 -1
  191. package/dist/components/dsot-document-component-demo.js +1 -1
  192. package/dist/components/dsot-document-component-demo.js.map +1 -1
  193. package/dist/components/expandable.js +2 -2
  194. package/dist/components/icon.js +1 -1
  195. package/dist/components/index.d.ts +2 -0
  196. package/dist/components/index.js +1 -0
  197. package/dist/components/index.js.map +1 -1
  198. package/dist/components/info-button.js +1 -1
  199. package/dist/components/info.js +1 -1
  200. package/dist/components/info.js.map +1 -1
  201. package/dist/components/label.js +3 -3
  202. package/dist/components/label.js.map +1 -1
  203. package/dist/components/ozon-content.js +49 -24
  204. package/dist/components/ozon-content.js.map +1 -1
  205. package/dist/components/progress-indicator.js +1 -1
  206. package/dist/components/responsive-element.js +1 -1
  207. package/dist/components/scrollable.js +2 -2
  208. package/dist/components/selectable.js +1 -1
  209. package/dist/components/selectable.js.map +1 -1
  210. package/dist/components/slide-toggle.js +1 -1
  211. package/dist/components/slide-toggle.js.map +1 -1
  212. package/dist/components/table.js +1 -1
  213. package/dist/components/table.js.map +1 -1
  214. package/dist/components/toggletip.js +90 -0
  215. package/dist/components/toggletip.js.map +1 -0
  216. package/dist/components/tooltip.js +1 -1
  217. package/dist/components/tooltip.js.map +1 -1
  218. package/dist/dso-toolkit/dso-toolkit.esm.js +1 -1
  219. package/dist/dso-toolkit/dso-toolkit.esm.js.map +1 -1
  220. package/dist/dso-toolkit/p-0142294a.entry.js +2 -0
  221. package/dist/dso-toolkit/p-0142294a.entry.js.map +1 -0
  222. package/dist/dso-toolkit/{p-69e2f1a3.entry.js → p-0308135a.entry.js} +2 -2
  223. package/dist/dso-toolkit/{p-69e2f1a3.entry.js.map → p-0308135a.entry.js.map} +1 -1
  224. package/dist/dso-toolkit/{p-590c98cb.entry.js → p-0bb4a95b.entry.js} +2 -2
  225. package/dist/dso-toolkit/{p-590c98cb.entry.js.map → p-0bb4a95b.entry.js.map} +1 -1
  226. package/dist/dso-toolkit/{p-b8be68cd.entry.js → p-0bbdb3e7.entry.js} +2 -2
  227. package/dist/dso-toolkit/{p-d6fa20f7.entry.js → p-0c1b34f6.entry.js} +2 -2
  228. package/dist/dso-toolkit/{p-d6fa20f7.entry.js.map → p-0c1b34f6.entry.js.map} +1 -1
  229. package/dist/dso-toolkit/p-10d464fa.entry.js +2 -0
  230. package/dist/dso-toolkit/{p-9f9ed7fc.entry.js → p-1cb9cd71.entry.js} +2 -2
  231. package/dist/dso-toolkit/{p-9f9ed7fc.entry.js.map → p-1cb9cd71.entry.js.map} +1 -1
  232. package/dist/dso-toolkit/{p-05115f40.entry.js → p-1f66a719.entry.js} +2 -2
  233. package/dist/dso-toolkit/{p-00f36d82.entry.js → p-28de6034.entry.js} +2 -2
  234. package/dist/dso-toolkit/{p-c435f94d.entry.js → p-435baefc.entry.js} +2 -2
  235. package/dist/dso-toolkit/{p-c435f94d.entry.js.map → p-435baefc.entry.js.map} +1 -1
  236. package/dist/dso-toolkit/{p-9579c352.entry.js → p-43bcfb18.entry.js} +2 -2
  237. package/dist/dso-toolkit/{p-9579c352.entry.js.map → p-43bcfb18.entry.js.map} +1 -1
  238. package/dist/dso-toolkit/{p-8a41761d.entry.js → p-4eaf26e3.entry.js} +2 -2
  239. package/dist/dso-toolkit/{p-0df15acb.entry.js → p-5028d1e1.entry.js} +2 -2
  240. package/dist/dso-toolkit/{p-171df922.entry.js → p-62ec675a.entry.js} +2 -2
  241. package/dist/dso-toolkit/{p-171df922.entry.js.map → p-62ec675a.entry.js.map} +1 -1
  242. package/dist/dso-toolkit/{p-ba1757f9.entry.js → p-64755e52.entry.js} +2 -2
  243. package/dist/dso-toolkit/{p-1543b25f.entry.js → p-64d88436.entry.js} +2 -2
  244. package/dist/dso-toolkit/{p-c3af1efc.entry.js → p-67480a2f.entry.js} +2 -2
  245. package/dist/dso-toolkit/{p-3b8f44b1.entry.js → p-6e7dcc0e.entry.js} +2 -2
  246. package/dist/dso-toolkit/{p-3b8f44b1.entry.js.map → p-6e7dcc0e.entry.js.map} +1 -1
  247. package/dist/dso-toolkit/p-701648d3.js.map +1 -1
  248. package/dist/dso-toolkit/{p-e1f82103.entry.js → p-7f5b0979.entry.js} +2 -2
  249. package/dist/dso-toolkit/{p-bf2ef44a.entry.js → p-86e80f9c.entry.js} +2 -2
  250. package/dist/dso-toolkit/{p-ffdcb2e4.entry.js → p-88b1db54.entry.js} +2 -2
  251. package/dist/dso-toolkit/p-906ae1e7.entry.js +2 -0
  252. package/dist/dso-toolkit/p-9709ff83.entry.js +2 -0
  253. package/dist/dso-toolkit/p-a00fb3ac.entry.js +2 -0
  254. package/dist/dso-toolkit/p-a00fb3ac.entry.js.map +1 -0
  255. package/dist/dso-toolkit/{p-ae783ec3.entry.js → p-b22757ab.entry.js} +2 -2
  256. package/dist/dso-toolkit/p-b51c4022.entry.js +2 -0
  257. package/dist/dso-toolkit/{p-e968c726.entry.js.map → p-b51c4022.entry.js.map} +1 -1
  258. package/dist/dso-toolkit/{p-0f1c1ad3.entry.js → p-b879c985.entry.js} +2 -2
  259. package/dist/dso-toolkit/{p-db0796f2.entry.js → p-bc3c966f.entry.js} +2 -2
  260. package/dist/dso-toolkit/p-bc95874a.entry.js +2 -0
  261. package/dist/dso-toolkit/{p-64ed1e16.entry.js.map → p-bc95874a.entry.js.map} +1 -1
  262. package/dist/dso-toolkit/{p-130c00f5.entry.js → p-bcc19bae.entry.js} +2 -2
  263. package/dist/dso-toolkit/{p-f3f23018.entry.js → p-bec5778a.entry.js} +2 -2
  264. package/dist/dso-toolkit/{p-f3f23018.entry.js.map → p-bec5778a.entry.js.map} +1 -1
  265. package/dist/dso-toolkit/{p-32e3c872.entry.js → p-c22965e0.entry.js} +2 -2
  266. package/dist/dso-toolkit/{p-32e3c872.entry.js.map → p-c22965e0.entry.js.map} +1 -1
  267. package/dist/dso-toolkit/p-cd466fa3.entry.js +2 -0
  268. package/dist/dso-toolkit/p-cd466fa3.entry.js.map +1 -0
  269. package/dist/dso-toolkit/{p-bb65ba35.entry.js → p-cef2a4da.entry.js} +2 -2
  270. package/dist/dso-toolkit/{p-bb65ba35.entry.js.map → p-cef2a4da.entry.js.map} +1 -1
  271. package/dist/dso-toolkit/{p-487a5da9.entry.js → p-dd9d670a.entry.js} +2 -2
  272. package/dist/dso-toolkit/{p-b73a27bc.entry.js → p-e3b54b03.entry.js} +2 -2
  273. package/dist/dso-toolkit/{p-3e0495a4.entry.js → p-e8648400.entry.js} +2 -2
  274. package/dist/dso-toolkit/p-e8ada03b.entry.js +2 -0
  275. package/dist/dso-toolkit/{p-889aa72f.entry.js.map → p-e8ada03b.entry.js.map} +1 -1
  276. package/dist/dso-toolkit/{p-0edf4492.entry.js → p-fbf6613f.entry.js} +2 -2
  277. package/dist/dso-toolkit/{p-0edf4492.entry.js.map → p-fbf6613f.entry.js.map} +1 -1
  278. package/dist/esm/dso-accordion-section.entry.js +2 -2
  279. package/dist/esm/dso-accordion.entry.js +1 -1
  280. package/dist/esm/dso-action-list-item.entry.js +2 -2
  281. package/dist/esm/dso-action-list-item.entry.js.map +1 -1
  282. package/dist/esm/dso-action-list.entry.js +1 -1
  283. package/dist/esm/dso-advanced-select.entry.js +2 -2
  284. package/dist/esm/dso-advanced-select.entry.js.map +1 -1
  285. package/dist/esm/dso-alert_7.entry.js +55 -30
  286. package/dist/esm/dso-alert_7.entry.js.map +1 -1
  287. package/dist/esm/dso-annotation-output_3.entry.js +3 -3
  288. package/dist/esm/dso-annotation-output_3.entry.js.map +1 -1
  289. package/dist/esm/dso-attachments-counter.entry.js +1 -1
  290. package/dist/esm/dso-autosuggest.entry.js +1 -1
  291. package/dist/esm/dso-banner.entry.js +2 -2
  292. package/dist/esm/dso-card-container.entry.js +1 -1
  293. package/dist/esm/dso-card-container.entry.js.map +1 -1
  294. package/dist/esm/dso-card.entry.js +2 -2
  295. package/dist/esm/dso-card.entry.js.map +1 -1
  296. package/dist/esm/dso-date-picker-legacy.entry.js +3 -3
  297. package/dist/esm/dso-date-picker-legacy.entry.js.map +1 -1
  298. package/dist/esm/dso-date-picker.entry.js +1 -1
  299. package/dist/esm/dso-dropdown-menu.entry.js +1 -1
  300. package/dist/esm/dso-expandable.entry.js +2 -2
  301. package/dist/esm/dso-helpcenter-panel.entry.js +2 -2
  302. package/dist/esm/dso-highlight-box.entry.js +1 -1
  303. package/dist/esm/dso-highlight-box.entry.js.map +1 -1
  304. package/dist/esm/dso-icon.entry.js +1 -1
  305. package/dist/esm/dso-info-button.entry.js +1 -1
  306. package/dist/esm/dso-info_2.entry.js +2 -2
  307. package/dist/esm/dso-info_2.entry.js.map +1 -1
  308. package/dist/esm/dso-input-range.entry.js +2 -2
  309. package/dist/esm/dso-input-range.entry.js.map +1 -1
  310. package/dist/esm/dso-legend-item.entry.js +42 -0
  311. package/dist/esm/dso-legend-item.entry.js.map +1 -0
  312. package/dist/esm/dso-list-button.entry.js +1 -1
  313. package/dist/esm/dso-list-button.entry.js.map +1 -1
  314. package/dist/esm/dso-logo.entry.js +1 -1
  315. package/dist/esm/dso-logo.entry.js.map +1 -1
  316. package/dist/esm/dso-map-base-layers.entry.js +1 -1
  317. package/dist/esm/dso-map-controls.entry.js +1 -1
  318. package/dist/esm/dso-map-overlays.entry.js +1 -1
  319. package/dist/esm/dso-mark-bar.entry.js +1 -1
  320. package/dist/esm/dso-modal.entry.js +2 -2
  321. package/dist/esm/dso-modal.entry.js.map +1 -1
  322. package/dist/esm/dso-progress-bar.entry.js +1 -1
  323. package/dist/esm/dso-progress-indicator.entry.js +1 -1
  324. package/dist/esm/dso-responsive-element.entry.js +1 -1
  325. package/dist/esm/dso-scrollable.entry.js +2 -2
  326. package/dist/esm/dso-toggletip.entry.js +1 -1
  327. package/dist/esm/dso-toolkit.js +2 -2
  328. package/dist/esm/dso-toolkit.js.map +1 -1
  329. package/dist/esm/dso-tooltip.entry.js +1 -1
  330. package/dist/esm/dso-tooltip.entry.js.map +1 -1
  331. package/dist/esm/dso-tree-view.entry.js +1 -1
  332. package/dist/esm/dso-viewer-grid.entry.js +1 -1
  333. package/dist/esm/dso-viewer-grid.entry.js.map +1 -1
  334. package/dist/esm/dsot-document-component-demo.entry.js +1 -1
  335. package/dist/esm/dsot-document-component-demo.entry.js.map +1 -1
  336. package/dist/esm/index-2e1b7388.js.map +1 -1
  337. package/dist/esm/loader.js +1 -1
  338. package/dist/types/components/legend-item/legend-item.d.ts +39 -0
  339. package/dist/types/components/legend-item/legend-item.interfaces.d.ts +3 -0
  340. package/dist/types/components/ozon-content/functional-components/wrap-wijzigactie.functional-component.d.ts +6 -0
  341. package/dist/types/components/ozon-content/functions/parse-wijzigactie-from-node.function.d.ts +2 -0
  342. package/dist/types/components/ozon-content/functions/wijzigactie-to-class-name.function.d.ts +2 -0
  343. package/dist/types/components/ozon-content/nodes/al.node.d.ts +1 -1
  344. package/dist/types/components/ozon-content/ozon-content.interfaces.d.ts +1 -0
  345. package/dist/types/components.d.ts +68 -0
  346. package/package.json +4 -4
  347. package/dist/dso-toolkit/p-30f09a47.entry.js +0 -2
  348. package/dist/dso-toolkit/p-3603f65a.entry.js +0 -2
  349. package/dist/dso-toolkit/p-3603f65a.entry.js.map +0 -1
  350. package/dist/dso-toolkit/p-535f755f.entry.js +0 -2
  351. package/dist/dso-toolkit/p-535f755f.entry.js.map +0 -1
  352. package/dist/dso-toolkit/p-64ed1e16.entry.js +0 -2
  353. package/dist/dso-toolkit/p-889aa72f.entry.js +0 -2
  354. package/dist/dso-toolkit/p-9f465136.entry.js +0 -2
  355. package/dist/dso-toolkit/p-a7ec3cce.entry.js +0 -2
  356. package/dist/dso-toolkit/p-e968c726.entry.js +0 -2
  357. /package/dist/dso-toolkit/{p-b8be68cd.entry.js.map → p-0bbdb3e7.entry.js.map} +0 -0
  358. /package/dist/dso-toolkit/{p-9f465136.entry.js.map → p-10d464fa.entry.js.map} +0 -0
  359. /package/dist/dso-toolkit/{p-05115f40.entry.js.map → p-1f66a719.entry.js.map} +0 -0
  360. /package/dist/dso-toolkit/{p-00f36d82.entry.js.map → p-28de6034.entry.js.map} +0 -0
  361. /package/dist/dso-toolkit/{p-8a41761d.entry.js.map → p-4eaf26e3.entry.js.map} +0 -0
  362. /package/dist/dso-toolkit/{p-0df15acb.entry.js.map → p-5028d1e1.entry.js.map} +0 -0
  363. /package/dist/dso-toolkit/{p-ba1757f9.entry.js.map → p-64755e52.entry.js.map} +0 -0
  364. /package/dist/dso-toolkit/{p-1543b25f.entry.js.map → p-64d88436.entry.js.map} +0 -0
  365. /package/dist/dso-toolkit/{p-c3af1efc.entry.js.map → p-67480a2f.entry.js.map} +0 -0
  366. /package/dist/dso-toolkit/{p-e1f82103.entry.js.map → p-7f5b0979.entry.js.map} +0 -0
  367. /package/dist/dso-toolkit/{p-bf2ef44a.entry.js.map → p-86e80f9c.entry.js.map} +0 -0
  368. /package/dist/dso-toolkit/{p-ffdcb2e4.entry.js.map → p-88b1db54.entry.js.map} +0 -0
  369. /package/dist/dso-toolkit/{p-a7ec3cce.entry.js.map → p-906ae1e7.entry.js.map} +0 -0
  370. /package/dist/dso-toolkit/{p-30f09a47.entry.js.map → p-9709ff83.entry.js.map} +0 -0
  371. /package/dist/dso-toolkit/{p-ae783ec3.entry.js.map → p-b22757ab.entry.js.map} +0 -0
  372. /package/dist/dso-toolkit/{p-0f1c1ad3.entry.js.map → p-b879c985.entry.js.map} +0 -0
  373. /package/dist/dso-toolkit/{p-db0796f2.entry.js.map → p-bc3c966f.entry.js.map} +0 -0
  374. /package/dist/dso-toolkit/{p-130c00f5.entry.js.map → p-bcc19bae.entry.js.map} +0 -0
  375. /package/dist/dso-toolkit/{p-487a5da9.entry.js.map → p-dd9d670a.entry.js.map} +0 -0
  376. /package/dist/dso-toolkit/{p-b73a27bc.entry.js.map → p-e3b54b03.entry.js.map} +0 -0
  377. /package/dist/dso-toolkit/{p-3e0495a4.entry.js.map → p-e8648400.entry.js.map} +0 -0
@@ -168,12 +168,12 @@ const AccordionSection = class {
168
168
  var _a;
169
169
  const { variant, reverseAlign } = (_a = this.accordionState) !== null && _a !== void 0 ? _a : {};
170
170
  const hasAddons = !!this.statusDescription || !!this.status || !!this.icon || !!this.attachmentCount;
171
- return (index.h(index.Host, { key: 'b2d2f79aa344a6134017dcae3b8d97dc2f057ea6', class: {
171
+ return (index.h(index.Host, { key: 'e6d935b422454ca54ef161939dbe7ff8707cd336', class: {
172
172
  "dso-accordion-section": true,
173
173
  ["dso-accordion-" + variant]: true,
174
174
  "dso-nested-accordion": this.hasNestedAccordion || this.containsNestedAccordion,
175
175
  "dso-accordion-reverse-align": reverseAlign !== null && reverseAlign !== void 0 ? reverseAlign : false,
176
- }, hidden: !variant, onMouseenter: () => (this.hover = true), onMouseleave: () => (this.hover = false) }, index.h(Handle, { key: 'd3b1f3a364a4a2a534a0fdc74f2b49fb7bc4d840', heading: this.heading, ref: (element) => (this.sectionHeading = element) }, index.h(HandleElement, { key: 'fba29abcbda2824b5df104498decab1530e16366', handleUrl: this.handleUrl, onClick: this.handleClick, open: this.open, handleElementRef: (e) => (this.handleElementRef = e) }, reverseAlign ? (index.h(index.Fragment, null, hasAddons && (index.h("div", { class: "dso-section-handle-addons" }, index.h(HandleIcon, { icon: this.icon }))), index.h("span", null, this.handleTitle), index.h("dso-icon", { class: "dso-section-handle-chevron", icon: "chevron-down" }))) : (index.h(index.Fragment, null, index.h("dso-icon", { class: "dso-section-handle-chevron", icon: "chevron-right" }), this.status && index.h("span", { class: "sr-only" }, stateMap[this.status]), index.h("span", null, this.handleTitle, this.isNeutral && (index.h("dso-icon", { class: "info-icon", icon: this.open || this.hover ? "info-active" : "info" }))), hasAddons && (index.h("div", { class: "dso-section-handle-addons" }, this.statusDescription && index.h("span", { class: "dso-status" }, this.statusDescription), index.h(HandleIcon, { state: this.status, icon: this.icon, attachmentCount: this.attachmentCount }))))))), index.h("dso-expandable", { key: 'ecfc718a37a6606669b80530ecacd0373dd290e3', class: "dso-section-body", open: this.open, enableAnimation: true, minimumHeight: this.isNeutral ? 0 : 4, onDsoExpandableAnimationStart: this.handleExpandableAnimationStart, onDsoExpandableAnimationEnd: this.handleExpandableAnimationEnd }, index.h("div", { key: 'ea10c7688a91c4886b63418d3ec4a25c79a86ee0', class: "dso-section-body-content", ref: (element) => (this.sectionBody = element) }, index.h("slot", { key: 'a0113e3a08f3254b8268628aea529797c318e700' })))));
176
+ }, hidden: !variant, onMouseenter: () => (this.hover = true), onMouseleave: () => (this.hover = false) }, index.h(Handle, { key: 'df0aade07259ea950aa2d5af7fc78d318607f99f', heading: this.heading, ref: (element) => (this.sectionHeading = element) }, index.h(HandleElement, { key: 'c3113baab09dcb2429f2755558f47bd5cd0f81f2', handleUrl: this.handleUrl, onClick: this.handleClick, open: this.open, handleElementRef: (e) => (this.handleElementRef = e) }, reverseAlign ? (index.h(index.Fragment, null, hasAddons && (index.h("div", { class: "dso-section-handle-addons" }, index.h(HandleIcon, { icon: this.icon }))), index.h("span", null, this.handleTitle), index.h("dso-icon", { class: "dso-section-handle-chevron", icon: "chevron-down" }))) : (index.h(index.Fragment, null, index.h("dso-icon", { class: "dso-section-handle-chevron", icon: "chevron-right" }), this.status && index.h("span", { class: "sr-only" }, stateMap[this.status]), index.h("span", null, this.handleTitle, this.isNeutral && (index.h("dso-icon", { class: "info-icon", icon: this.open || this.hover ? "info-active" : "info" }))), hasAddons && (index.h("div", { class: "dso-section-handle-addons" }, this.statusDescription && index.h("span", { class: "dso-status" }, this.statusDescription), index.h(HandleIcon, { state: this.status, icon: this.icon, attachmentCount: this.attachmentCount }))))))), index.h("dso-expandable", { key: 'fc46969992194a44e6118eae4d1ad7c52c4d5105', class: "dso-section-body", open: this.open, enableAnimation: true, minimumHeight: this.isNeutral ? 0 : 4, onDsoExpandableAnimationStart: this.handleExpandableAnimationStart, onDsoExpandableAnimationEnd: this.handleExpandableAnimationEnd }, index.h("div", { key: '72b09c8a6e9121e3454b796cfcc4b248cae2733f', class: "dso-section-body-content", ref: (element) => (this.sectionBody = element) }, index.h("slot", { key: 'a45f7c226d70d44f86e58c960c486960586fd62f' })))));
177
177
  }
178
178
  get host() { return index.getElement(this); }
179
179
  };
@@ -223,7 +223,7 @@ const Accordion = class {
223
223
  this.accordionState = state;
224
224
  }
225
225
  render() {
226
- return (index.h(index.Host, { key: 'd6667475866e0ec08b2241adace595dfcf726bb4', class: "dso-accordion" }, index.h("slot", { key: '033c929ab22a1ceac2c22d4bc04451f275acb2a1' })));
226
+ return (index.h(index.Host, { key: 'ff5ce15d5c8f250a00fd32179023c5640fcdaa60', class: "dso-accordion" }, index.h("slot", { key: '4d8471b5d095ccfb38184cba1c1dab7f958638aa' })));
227
227
  }
228
228
  get host() { return index.getElement(this); }
229
229
  static get watchers() { return {
@@ -17,10 +17,10 @@ const ActionListItem = class {
17
17
  this.divider = false;
18
18
  }
19
19
  render() {
20
- return (index.h(index.Host, { key: '6001eb96200e375b5dfbee1967208ada369e7881', class: {
20
+ return (index.h(index.Host, { key: 'e8990e05c76ad77722c3077377a14b8595359cf1', class: {
21
21
  divider: this.divider,
22
22
  "flow-line": this.flowLine,
23
- } }, index.h("div", { key: '76894291897f03dbcef8d0f453b46860ae6f1516', class: "dso-action-list-item" }, this.warning ? index.h("dso-icon", { icon: "status-warning" }) : index.h("div", { class: "dso-step-counter" }, this.step), index.h("div", { key: '4b36fe4e8ed574373ea8e40f5d67b2a206c08896', class: "action-list-item-content" }, this.itemTitle && index.h("h3", null, this.itemTitle), index.h("slot", { key: '5b80bfdc9281d12b19f8f6532dda740600b85ff8' })))));
23
+ } }, index.h("div", { key: 'f1f9bc9160d015bec044d56f6f9d4bdc8cfcb6c0', class: "dso-action-list-item" }, this.warning ? index.h("dso-icon", { icon: "status-warning" }) : index.h("div", { class: "dso-step-counter" }, this.step), index.h("div", { key: '4fccf3d1ae0fc47154ee934ed6e5fb067b5ff059', class: "action-list-item-content" }, this.itemTitle && index.h("h3", { key: '284707c09c1452c332353c2ac04f519ccc8fc409' }, this.itemTitle), index.h("slot", { key: 'd90f788cdbde8734a8130731808a2cb04495faa2' })))));
24
24
  }
25
25
  };
26
26
  ActionListItem.style = DsoActionListItemStyle0;
@@ -1 +1 @@
1
- {"file":"dso-action-list-item.entry.cjs.js","mappings":";;;;;;AAAA,MAAM,iBAAiB,GAAG,6zCAA6zC,CAAC;AACx1C,gCAAe,iBAAiB;;MCMnB,cAAc;;;;;wBAiBd,KAAK;uBAMN,KAAK;uBAML,KAAK;;IAEf,MAAM;QACJ,QACEA,QAACC,UAAI,qDACH,KAAK,EAAE;gBACL,OAAO,EAAE,IAAI,CAAC,OAAO;gBACrB,WAAW,EAAE,IAAI,CAAC,QAAQ;aAC3B,IAEDD,kEAAK,KAAK,EAAC,sBAAsB,IAC9B,IAAI,CAAC,OAAO,GAAGA,sBAAU,IAAI,EAAC,gBAAgB,GAAY,GAAGA,iBAAK,KAAK,EAAC,kBAAkB,IAAE,IAAI,CAAC,IAAI,CAAO,EAC7GA,kEAAK,KAAK,EAAC,0BAA0B,IAClC,IAAI,CAAC,SAAS,IAAIA,oBAAK,IAAI,CAAC,SAAS,CAAM,EAC5CA,oEAAQ,CACJ,CACF,CACD,EACP;KACH;;;;;;","names":["h","Host"],"sources":["src/components/action-list/components/action-list-item.scss?tag=dso-action-list-item&encapsulation=shadow","src/components/action-list/components/action-list-item.tsx"],"sourcesContent":["@use \"~dso-toolkit/src/utilities\";\r\n@use \"~dso-toolkit/src/variables/colors\";\r\n@use \"~dso-toolkit/src/variables/units\";\r\n@use \"~dso-toolkit/src/variables/media-query-breakpoints\";\r\n@use \"~dso-toolkit/src/components/headings\";\r\n@use \"~dso-toolkit/src/components/step-counter\";\r\n@use \"~dso-toolkit/src/components/action-list/action-list.variables\" as action-list-variables;\r\n@use \"~dso-toolkit/src/components/action-list/components/action-list-item.variables\" as action-list-item-variables;\r\n\r\n@include utilities.box-sizing();\r\n\r\n:host {\r\n @include step-counter.step-counter();\r\n\r\n display: block;\r\n padding-block: action-list-item-variables.$padding-vertical;\r\n position: relative;\r\n}\r\n\r\n:host(.divider) {\r\n .dso-action-list-item {\r\n &::after {\r\n border-bottom: 0.25rem dashed colors.$lichtblauw;\r\n bottom: 0;\r\n content: \"\";\r\n display: block;\r\n height: units.$u3;\r\n position: absolute;\r\n left: calc(action-list-variables.$content-indent - action-list-item-variables.$step-counter-margin);\r\n width: calc(100% - (action-list-variables.$content-indent - action-list-item-variables.$step-counter-margin));\r\n\r\n @media screen and (min-width: media-query-breakpoints.$screen-xs-min) {\r\n left: action-list-variables.$content-indent;\r\n width: calc(100% - action-list-variables.$content-indent);\r\n }\r\n }\r\n }\r\n}\r\n\r\nh3 {\r\n @include headings.base();\r\n @include headings.h3();\r\n\r\n margin-block-end: units.$u2;\r\n margin-block-start: 0;\r\n min-height: units.$u6;\r\n padding-block-start: 9px;\r\n}\r\n\r\n.dso-action-list-item {\r\n display: grid;\r\n grid-template-columns: calc(action-list-variables.$content-indent - action-list-item-variables.$step-counter-margin) 1fr;\r\n\r\n @media screen and (min-width: media-query-breakpoints.$screen-xs-min) {\r\n grid-template-columns: action-list-variables.$content-indent 1fr;\r\n }\r\n\r\n .dso-step-counter {\r\n position: unset;\r\n }\r\n\r\n .action-list-item-content {\r\n grid-column: 2 / 2;\r\n }\r\n}\r\n\r\ndso-icon {\r\n height: units.$u6;\r\n width: units.$u6;\r\n}\r\n","import { h, Component, ComponentInterface, Host, Prop } from \"@stencil/core\";\r\n\r\n@Component({\r\n tag: \"dso-action-list-item\",\r\n styleUrl: \"action-list-item.scss\",\r\n shadow: true,\r\n})\r\nexport class ActionListItem implements ComponentInterface {\r\n /**\r\n * The step of the Action List Item.\r\n */\r\n @Prop()\r\n step!: number;\r\n\r\n /**\r\n * The title of the item.\r\n */\r\n @Prop()\r\n itemTitle?: string;\r\n\r\n /**\r\n * Show flow line to next step\r\n */\r\n @Prop()\r\n flowLine = false;\r\n\r\n /**\r\n * When there is a warning.\r\n */\r\n @Prop()\r\n warning = false;\r\n\r\n /**\r\n * Places a dashed line at the bottom of the item.\r\n */\r\n @Prop()\r\n divider = false;\r\n\r\n render() {\r\n return (\r\n <Host\r\n class={{\r\n divider: this.divider,\r\n \"flow-line\": this.flowLine,\r\n }}\r\n >\r\n <div class=\"dso-action-list-item\">\r\n {this.warning ? <dso-icon icon=\"status-warning\"></dso-icon> : <div class=\"dso-step-counter\">{this.step}</div>}\r\n <div class=\"action-list-item-content\">\r\n {this.itemTitle && <h3>{this.itemTitle}</h3>}\r\n <slot />\r\n </div>\r\n </div>\r\n </Host>\r\n );\r\n }\r\n}\r\n"],"version":3}
1
+ {"file":"dso-action-list-item.entry.cjs.js","mappings":";;;;;;AAAA,MAAM,iBAAiB,GAAG,6zCAA6zC,CAAC;AACx1C,gCAAe,iBAAiB;;MCMnB,cAAc;;;;;wBAiBd,KAAK;uBAMN,KAAK;uBAML,KAAK;;IAEf,MAAM;QACJ,QACEA,QAACC,UAAI,qDACH,KAAK,EAAE;gBACL,OAAO,EAAE,IAAI,CAAC,OAAO;gBACrB,WAAW,EAAE,IAAI,CAAC,QAAQ;aAC3B,IAEDD,kEAAK,KAAK,EAAC,sBAAsB,IAC9B,IAAI,CAAC,OAAO,GAAGA,sBAAU,IAAI,EAAC,gBAAgB,GAAY,GAAGA,iBAAK,KAAK,EAAC,kBAAkB,IAAE,IAAI,CAAC,IAAI,CAAO,EAC7GA,kEAAK,KAAK,EAAC,0BAA0B,IAClC,IAAI,CAAC,SAAS,IAAIA,mEAAK,IAAI,CAAC,SAAS,CAAM,EAC5CA,oEAAQ,CACJ,CACF,CACD,EACP;KACH;;;;;;","names":["h","Host"],"sources":["src/components/action-list/components/action-list-item.scss?tag=dso-action-list-item&encapsulation=shadow","src/components/action-list/components/action-list-item.tsx"],"sourcesContent":["@use \"~dso-toolkit/src/utilities\";\r\n@use \"~dso-toolkit/src/variables/colors\";\r\n@use \"~dso-toolkit/src/variables/units\";\r\n@use \"~dso-toolkit/src/variables/media-query-breakpoints\";\r\n@use \"~dso-toolkit/src/components/headings\";\r\n@use \"~dso-toolkit/src/components/step-counter\";\r\n@use \"~dso-toolkit/src/components/action-list/action-list.variables\" as action-list-variables;\r\n@use \"~dso-toolkit/src/components/action-list/components/action-list-item.variables\" as action-list-item-variables;\r\n\r\n@include utilities.box-sizing();\r\n\r\n:host {\r\n @include step-counter.step-counter();\r\n\r\n display: block;\r\n padding-block: action-list-item-variables.$padding-vertical;\r\n position: relative;\r\n}\r\n\r\n:host(.divider) {\r\n .dso-action-list-item {\r\n &::after {\r\n border-bottom: 0.25rem dashed colors.$lichtblauw;\r\n bottom: 0;\r\n content: \"\";\r\n display: block;\r\n height: units.$u3;\r\n position: absolute;\r\n left: calc(action-list-variables.$content-indent - action-list-item-variables.$step-counter-margin);\r\n width: calc(100% - (action-list-variables.$content-indent - action-list-item-variables.$step-counter-margin));\r\n\r\n @media screen and (min-width: media-query-breakpoints.$screen-xs-min) {\r\n left: action-list-variables.$content-indent;\r\n width: calc(100% - action-list-variables.$content-indent);\r\n }\r\n }\r\n }\r\n}\r\n\r\nh3 {\r\n @include headings.base();\r\n @include headings.h3();\r\n\r\n margin-block-end: units.$u2;\r\n margin-block-start: 0;\r\n min-height: units.$u6;\r\n padding-block-start: 9px;\r\n}\r\n\r\n.dso-action-list-item {\r\n display: grid;\r\n grid-template-columns: calc(action-list-variables.$content-indent - action-list-item-variables.$step-counter-margin) 1fr;\r\n\r\n @media screen and (min-width: media-query-breakpoints.$screen-xs-min) {\r\n grid-template-columns: action-list-variables.$content-indent 1fr;\r\n }\r\n\r\n .dso-step-counter {\r\n position: unset;\r\n }\r\n\r\n .action-list-item-content {\r\n grid-column: 2 / 2;\r\n }\r\n}\r\n\r\ndso-icon {\r\n height: units.$u6;\r\n width: units.$u6;\r\n}\r\n","import { h, Component, ComponentInterface, Host, Prop } from \"@stencil/core\";\r\n\r\n@Component({\r\n tag: \"dso-action-list-item\",\r\n styleUrl: \"action-list-item.scss\",\r\n shadow: true,\r\n})\r\nexport class ActionListItem implements ComponentInterface {\r\n /**\r\n * The step of the Action List Item.\r\n */\r\n @Prop()\r\n step!: number;\r\n\r\n /**\r\n * The title of the item.\r\n */\r\n @Prop()\r\n itemTitle?: string;\r\n\r\n /**\r\n * Show flow line to next step\r\n */\r\n @Prop()\r\n flowLine = false;\r\n\r\n /**\r\n * When there is a warning.\r\n */\r\n @Prop()\r\n warning = false;\r\n\r\n /**\r\n * Places a dashed line at the bottom of the item.\r\n */\r\n @Prop()\r\n divider = false;\r\n\r\n render() {\r\n return (\r\n <Host\r\n class={{\r\n divider: this.divider,\r\n \"flow-line\": this.flowLine,\r\n }}\r\n >\r\n <div class=\"dso-action-list-item\">\r\n {this.warning ? <dso-icon icon=\"status-warning\"></dso-icon> : <div class=\"dso-step-counter\">{this.step}</div>}\r\n <div class=\"action-list-item-content\">\r\n {this.itemTitle && <h3>{this.itemTitle}</h3>}\r\n <slot />\r\n </div>\r\n </div>\r\n </Host>\r\n );\r\n }\r\n}\r\n"],"version":3}
@@ -13,7 +13,7 @@ const ActionList = class {
13
13
  this.listTitle = undefined;
14
14
  }
15
15
  render() {
16
- return (index.h(index.Host, { key: '8952d80fc976ad0c509269df1f24c4f28efed240' }, index.h("h2", { key: '0515ec8bfc9fbea6d7711df407b9c5d2dfcb7ab6' }, this.listTitle), index.h("div", { key: '5f31d7420ce404dffd0409fb06e7154d573323c2', class: "dso-action-list-content" }, index.h("slot", { key: 'aefb5cb158154da87f5e08371cad2a5f771ad015' }))));
16
+ return (index.h(index.Host, { key: 'ccfbfad51860c767b58f0d1c5f8c41beac645353' }, index.h("h2", { key: 'dee9b4b9b262637e1c4a944df6f26ec984d6d4ae' }, this.listTitle), index.h("div", { key: '2d725e445a201bf47ccb837e4251aae65bfc0ba2', class: "dso-action-list-content" }, index.h("slot", { key: '9947aab99743404054b4c5f678da57813462f9e0' }))));
17
17
  }
18
18
  };
19
19
  ActionList.style = DsoActionListStyle0;
@@ -83,12 +83,12 @@ const AdvancedSelect = class {
83
83
  }
84
84
  render() {
85
85
  var _a, _b;
86
- return (index.h(index.Fragment, null, index.h("button", { key: '072b5a2364ecc6c09f0acfe6b6d02693b02a647d', "aria-expanded": this.open.toString(), class: clsx.clsx(["active-option", { open: this.open }]), type: "button", onClick: this.toggleOpen, ref: (element) => (this.toggleButtonElementRef = element) }, index.h("span", { key: 'c71ed7e63e245a074220af6942665c416f99e8aa', class: "active-option-label" }, (_b = (_a = this.active) === null || _a === void 0 ? void 0 : _a.label) !== null && _b !== void 0 ? _b : "Selecteer een optie"), index.h("span", { key: 'f1bf83fd32e79863dda67160d3045277d500658c', class: "active-option-aside" }, this.options.some((optionOrGroup) => "summaryCounter" in optionOrGroup && (optionOrGroup === null || optionOrGroup === void 0 ? void 0 : optionOrGroup.summaryCounter)) && (index.h("span", { class: "badges" }, this.options
86
+ return (index.h(index.Fragment, null, index.h("button", { key: 'faa2a464654b5588270e5167fd6fcbd02bcb2e4c', "aria-expanded": this.open.toString(), class: clsx.clsx(["active-option", { open: this.open }]), type: "button", onClick: this.toggleOpen, ref: (element) => (this.toggleButtonElementRef = element) }, index.h("span", { key: 'f6ac64547bde1524cb7d3b58c58bf869dc726f65', class: "active-option-label" }, (_b = (_a = this.active) === null || _a === void 0 ? void 0 : _a.label) !== null && _b !== void 0 ? _b : "Selecteer een optie"), index.h("span", { key: '5aa6fbc03ef2b9452cbe9c6af20ce402bf5d0a3f', class: "active-option-aside" }, this.options.some((optionOrGroup) => "summaryCounter" in optionOrGroup && (optionOrGroup === null || optionOrGroup === void 0 ? void 0 : optionOrGroup.summaryCounter)) && (index.h("span", { key: '44fe615ffd6638471c4d8022a654296405b9311a', class: "badges" }, this.options
87
87
  .filter((option) => "options" in option && "summaryCounter" in option && !!(option === null || option === void 0 ? void 0 : option.summaryCounter))
88
88
  .map((group) => {
89
89
  var _a;
90
90
  return (index.h("dso-badge", { status: (_a = group.variant) !== null && _a !== void 0 ? _a : "outline" }, group.options.length));
91
- }))), index.h("dso-icon", { key: '2e99c6bb67badeb7f7e6620c6d9aa35f0e591931', icon: "caret-down" }))), this.open && (index.h("div", { class: "groups-container" }, index.h("ul", { class: "groups" }, this.options.map((optionOrGroup) => ("options" in optionOrGroup && (index.h("li", { class: clsx.clsx(["group", { [`group-${optionOrGroup.variant}`]: !!optionOrGroup.variant }]) }, index.h("p", { class: "group-label" }, optionOrGroup.label), index.h("ul", { class: "options" }, optionOrGroup.options.map((option) => (index.h("li", null, index.h(OptionElement, { option: option, active: this.active, activeHint: this.activeHint, callback: this.handleOptionClick }))))), optionOrGroup.redirect && (index.h(RedirectElement, { redirect: optionOrGroup.redirect, callback: this.handleRedirectClick }))))) ||
91
+ }))), index.h("dso-icon", { key: 'b0a5459c6c17c7d109b88a923054c85cc2a9c75f', icon: "caret-down" }))), this.open && (index.h("div", { key: 'f1490ff92e27d6b970558c83ccab35efec989597', class: "groups-container" }, index.h("ul", { key: 'a10ee50e10d87e7437cb9a51bc349207f82725fc', class: "groups" }, this.options.map((optionOrGroup) => ("options" in optionOrGroup && (index.h("li", { class: clsx.clsx(["group", { [`group-${optionOrGroup.variant}`]: !!optionOrGroup.variant }]) }, index.h("p", { class: "group-label" }, optionOrGroup.label), index.h("ul", { class: "options" }, optionOrGroup.options.map((option) => (index.h("li", null, index.h(OptionElement, { option: option, active: this.active, activeHint: this.activeHint, callback: this.handleOptionClick }))))), optionOrGroup.redirect && (index.h(RedirectElement, { redirect: optionOrGroup.redirect, callback: this.handleRedirectClick }))))) ||
92
92
  ("placeholder" in optionOrGroup && (index.h("li", { class: "group" }, index.h("p", { class: "group-label" }, optionOrGroup.label), index.h(PlaceholderElement, { placeholder: optionOrGroup.placeholder }), optionOrGroup.redirect && (index.h(RedirectElement, { redirect: optionOrGroup.redirect, callback: this.handleRedirectClick }))))) || (index.h("li", null, index.h(OptionElement, { option: optionOrGroup, active: this.active, activeHint: this.activeHint, callback: this.handleOptionClick })))))))));
93
93
  }
94
94
  get host() { return index.getElement(this); }
@@ -1 +1 @@
1
- {"file":"dso-advanced-select.entry.cjs.js","mappings":"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","names":["isModifiedEvent","createFocusTrap","tabbable","h","clsx"],"sources":["src/components/advanced-select/advanced-select.scss?tag=dso-advanced-select&encapsulation=shadow","src/components/advanced-select/advanced-select.tsx"],"sourcesContent":["@use \"~dso-toolkit/src/utilities\";\r\n@use \"~dso-toolkit/src/global/mixins/set-colors.mixin\" as set-colors;\r\n@use \"~dso-toolkit/src/components/advanced-select\";\r\n\r\n:host {\r\n display: block;\r\n}\r\n\r\n@include utilities.box-sizing();\r\n\r\n.active-option {\r\n display: flex;\r\n inline-size: 100%;\r\n justify-content: space-between;\r\n align-items: center;\r\n padding: 0;\r\n border: 1px solid advanced-select.$border-color;\r\n border-radius: advanced-select.$border-radius;\r\n cursor: pointer;\r\n background-color: advanced-select.$bg-color;\r\n line-height: inherit;\r\n font-family: inherit;\r\n font-size: inherit;\r\n\r\n &.open {\r\n border-radius: advanced-select.$border-radius advanced-select.$border-radius 0 0;\r\n }\r\n\r\n dso-icon {\r\n color: advanced-select.$icon-color;\r\n }\r\n}\r\n\r\n.active-option-label {\r\n padding: advanced-select.$vertical-padding advanced-select.$horizontal-padding;\r\n overflow: hidden;\r\n /* stylelint-disable-next-line declaration-property-value-disallowed-list -- Nodig om lange titels op de zelfde regel te houden */\r\n white-space: nowrap;\r\n /* stylelint-disable-next-line declaration-property-value-disallowed-list -- Nodig om lange titels op de zelfde regel te houden */\r\n text-overflow: ellipsis;\r\n}\r\n\r\n.active-option-aside {\r\n display: flex;\r\n align-items: center;\r\n gap: advanced-select.$horizontal-padding * 0.5;\r\n padding: 0 advanced-select.$horizontal-padding * 0.5;\r\n}\r\n\r\n.badges {\r\n display: flex;\r\n justify-content: space-between;\r\n align-items: center;\r\n gap: advanced-select.$vertical-padding;\r\n}\r\n\r\n.groups-container {\r\n position: relative;\r\n}\r\n\r\n.groups {\r\n position: absolute;\r\n inset-block-start: -1px;\r\n inset-inline-start: 0;\r\n inline-size: 100%;\r\n max-block-size: 500px;\r\n margin: 0;\r\n padding: 0;\r\n overflow-y: auto;\r\n background-color: advanced-select.$bg-color;\r\n border: 1px solid advanced-select.$border-color;\r\n border-radius: 0 0 advanced-select.$border-radius advanced-select.$border-radius;\r\n\r\n li {\r\n &::marker {\r\n display: none;\r\n }\r\n }\r\n}\r\n\r\n.group {\r\n border-bottom: 1px solid advanced-select.$hr-color;\r\n\r\n &:last-child {\r\n border-bottom: none;\r\n }\r\n\r\n .option {\r\n padding-left: advanced-select.$horizontal-padding * 2 + advanced-select.$option-dot-size * 0.5;\r\n }\r\n\r\n .option-label::before {\r\n content: \"\";\r\n position: absolute;\r\n display: block;\r\n block-size: advanced-select.$option-dot-size;\r\n inline-size: advanced-select.$option-dot-size;\r\n inset: advanced-select.$vertical-padding auto auto -#{advanced-select.$option-dot-size * 2};\r\n border-radius: 50%;\r\n @include set-colors.apply(advanced-select.$default-variant-color, $icons: false, $links: false);\r\n }\r\n}\r\n\r\n.group-label {\r\n margin: 0;\r\n padding: advanced-select.$vertical-padding advanced-select.$horizontal-padding;\r\n color: advanced-select.$group-label-color;\r\n font-size: advanced-select.$group-label-font-size;\r\n font-weight: advanced-select.$group-label-font-weight;\r\n border-bottom: 1px solid advanced-select.$hr-color;\r\n}\r\n\r\n.group-link {\r\n display: block;\r\n padding: advanced-select.$group-link-horizontal-padding advanced-select.$group-link-vertical-padding;\r\n text-align: end;\r\n color: advanced-select.$group-link-color;\r\n text-decoration: none;\r\n\r\n &:hover {\r\n text-decoration: underline;\r\n }\r\n\r\n dso-icon {\r\n color: advanced-select.$redirect-icon-color;\r\n }\r\n}\r\n\r\n.group-info .option-label::before {\r\n @include set-colors.apply(advanced-select.$info-variant-color, $icons: false, $links: false);\r\n}\r\n\r\n.group-primary .option-label::before {\r\n @include set-colors.apply(advanced-select.$primary-variant-color, $icons: false, $links: false);\r\n}\r\n\r\n.group-success .option-label::before {\r\n @include set-colors.apply(advanced-select.$success-variant-color, $icons: false, $links: false);\r\n}\r\n\r\n.group-warning .option-label::before {\r\n @include set-colors.apply(advanced-select.$warning-variant-color, $icons: false, $links: false);\r\n}\r\n\r\n.group-danger .option-label::before {\r\n @include set-colors.apply(advanced-select.$danger-variant-color, $icons: false, $links: false);\r\n}\r\n\r\n.group-error .option-label::before {\r\n @include set-colors.apply(advanced-select.$error-variant-color, $icons: false, $links: false);\r\n}\r\n\r\n.group-attention .option-label::before {\r\n @include set-colors.apply(advanced-select.$attention-variant-color, $icons: false, $links: false);\r\n}\r\n\r\n.options {\r\n margin: 0;\r\n padding: 0;\r\n}\r\n\r\n.option {\r\n display: block;\r\n inline-size: 100%;\r\n padding: advanced-select.$vertical-padding * 2 advanced-select.$horizontal-padding;\r\n cursor: pointer;\r\n line-height: inherit;\r\n font-family: inherit;\r\n font-size: inherit;\r\n border: none;\r\n text-align: left;\r\n background-color: advanced-select.$bg-color;\r\n\r\n &:hover {\r\n background-color: advanced-select.$option-hover-bg-color;\r\n\r\n .option-label {\r\n color: advanced-select.$option-hover-color;\r\n font-weight: advanced-select.$option-hover-font-weight;\r\n }\r\n }\r\n}\r\n\r\n.option.option-active .option-label {\r\n color: advanced-select.$option-active-color;\r\n font-weight: advanced-select.$option-active-font-weight;\r\n text-decoration: underline;\r\n}\r\n\r\n.option-label {\r\n position: relative;\r\n color: advanced-select.$option-color;\r\n font-size: advanced-select.$option-font-size;\r\n font-weight: advanced-select.$option-font-weight;\r\n}\r\n\r\n.option-hint {\r\n padding-left: 5px;\r\n color: advanced-select.$option-active-color;\r\n font-size: advanced-select.$option-font-size;\r\n font-weight: advanced-select.$option-active-font-weight;\r\n}\r\n\r\n.placeholder {\r\n margin: 0;\r\n padding: advanced-select.$vertical-padding * 2 advanced-select.$horizontal-padding;\r\n color: advanced-select.$option-placeholder-color;\r\n}\r\n","import {\r\n Component,\r\n ComponentInterface,\r\n Prop,\r\n h,\r\n FunctionalComponent,\r\n Element,\r\n Event,\r\n EventEmitter,\r\n State,\r\n Fragment,\r\n Listen,\r\n} from \"@stencil/core\";\r\nimport clsx from \"clsx\";\r\nimport {\r\n AdvancedSelectGroup,\r\n AdvancedSelectGroupRedirect,\r\n AdvancedSelectOption,\r\n AdvancedSelectChangeEvent,\r\n AdvancedSelectOptionOrGroup,\r\n AdvancedSelectRedirectEvent,\r\n} from \"./advanced-select.models\";\r\nimport { createFocusTrap, FocusTrap } from \"focus-trap\";\r\nimport { tabbable } from \"tabbable\";\r\nimport { isModifiedEvent } from \"../../utils/is-modified-event\";\r\n\r\n@Component({\r\n tag: \"dso-advanced-select\",\r\n styleUrl: \"advanced-select.scss\",\r\n shadow: true,\r\n})\r\nexport class AdvancedSelect implements ComponentInterface {\r\n private trap?: FocusTrap;\r\n\r\n @Element()\r\n host!: HTMLDsoAdvancedSelectElement;\r\n\r\n /**\r\n * The options to display in the select.\r\n */\r\n @Prop()\r\n options: AdvancedSelectOptionOrGroup<never>[] = [];\r\n\r\n /**\r\n * The active option. By object reference.\r\n */\r\n @Prop()\r\n active?: AdvancedSelectOption<never>;\r\n\r\n /**\r\n * An extra text for the active option. Only visible in the list of options.\r\n */\r\n @Prop()\r\n activeHint?: string;\r\n\r\n /**\r\n * The open state of the options list.\r\n */\r\n @State()\r\n open: boolean = false;\r\n\r\n /**\r\n * Emitted when user selects an option\r\n */\r\n @Event({ bubbles: false })\r\n dsoChange!: EventEmitter<AdvancedSelectChangeEvent<never>>;\r\n\r\n /**\r\n * Emitted when user activates a group redirect link.\r\n */\r\n @Event({ bubbles: false })\r\n dsoRedirect!: EventEmitter<AdvancedSelectRedirectEvent>;\r\n\r\n private toggleButtonElementRef: HTMLButtonElement | undefined;\r\n\r\n @Listen(\"keydown\", { target: \"window\" })\r\n keyDownListener(event: KeyboardEvent) {\r\n if (this.open && event.key === \"ArrowUp\") {\r\n event.preventDefault();\r\n this.handleTab(-1);\r\n } else if (this.open && event.key === \"ArrowDown\") {\r\n event.preventDefault();\r\n this.handleTab(1);\r\n }\r\n }\r\n\r\n componentDidRender() {\r\n if (this.open && !this.trap) {\r\n this.createTrap();\r\n } else if (!this.open && this.trap) {\r\n this.removeTrap();\r\n }\r\n }\r\n\r\n private toggleOpen = () => {\r\n this.open = !this.open;\r\n };\r\n\r\n private createTrap() {\r\n this.trap = createFocusTrap(this.host, {\r\n clickOutsideDeactivates: true,\r\n escapeDeactivates: true,\r\n setReturnFocus: this.toggleButtonElementRef,\r\n tabbableOptions: {\r\n getShadowRoot: true,\r\n },\r\n onDeactivate: () => {\r\n this.open = false;\r\n },\r\n }).activate();\r\n }\r\n\r\n private removeTrap() {\r\n this.trap?.deactivate();\r\n delete this.trap;\r\n }\r\n\r\n private handleTab(direction: number) {\r\n const elements = tabbable(this.host, { getShadowRoot: true });\r\n const currentIndex = elements.findIndex((e) => e === this.host.shadowRoot?.activeElement);\r\n\r\n let nextIndex = currentIndex + direction;\r\n if (nextIndex >= elements.length) {\r\n nextIndex = 0;\r\n } else if (nextIndex < 0) {\r\n nextIndex = elements.length - 1;\r\n }\r\n\r\n elements[nextIndex]?.focus();\r\n }\r\n\r\n private handleOptionClick = (event: MouseEvent, option: AdvancedSelectOption<never>) => {\r\n this.dsoChange.emit({ originalEvent: event, option });\r\n this.open = false;\r\n };\r\n\r\n private handleRedirectClick = (event: MouseEvent, redirect: AdvancedSelectGroupRedirect) => {\r\n this.dsoRedirect.emit({ originalEvent: event, isModifiedEvent: isModifiedEvent(event), redirect });\r\n this.open = false;\r\n };\r\n\r\n render() {\r\n return (\r\n <>\r\n <button\r\n aria-expanded={this.open.toString()}\r\n class={clsx([\"active-option\", { open: this.open }])}\r\n type=\"button\"\r\n onClick={this.toggleOpen}\r\n ref={(element) => (this.toggleButtonElementRef = element)}\r\n >\r\n <span class=\"active-option-label\">{this.active?.label ?? \"Selecteer een optie\"}</span>\r\n <span class=\"active-option-aside\">\r\n {this.options.some(\r\n (optionOrGroup) => \"summaryCounter\" in optionOrGroup && optionOrGroup?.summaryCounter,\r\n ) && (\r\n <span class=\"badges\">\r\n {this.options\r\n .filter(\r\n (option): option is AdvancedSelectGroup<never> =>\r\n \"options\" in option && \"summaryCounter\" in option && !!option?.summaryCounter,\r\n )\r\n .map((group) => (\r\n <dso-badge status={group.variant ?? \"outline\"}>{group.options.length}</dso-badge>\r\n ))}\r\n </span>\r\n )}\r\n <dso-icon icon=\"caret-down\"></dso-icon>\r\n </span>\r\n </button>\r\n {this.open && (\r\n <div class=\"groups-container\">\r\n <ul class=\"groups\">\r\n {this.options.map(\r\n (optionOrGroup) =>\r\n (\"options\" in optionOrGroup && (\r\n <li class={clsx([\"group\", { [`group-${optionOrGroup.variant}`]: !!optionOrGroup.variant }])}>\r\n <p class=\"group-label\">{optionOrGroup.label}</p>\r\n <ul class=\"options\">\r\n {optionOrGroup.options.map((option) => (\r\n <li>\r\n <OptionElement\r\n option={option}\r\n active={this.active}\r\n activeHint={this.activeHint}\r\n callback={this.handleOptionClick}\r\n />\r\n </li>\r\n ))}\r\n </ul>\r\n {optionOrGroup.redirect && (\r\n <RedirectElement\r\n redirect={optionOrGroup.redirect}\r\n callback={this.handleRedirectClick}\r\n ></RedirectElement>\r\n )}\r\n </li>\r\n )) ||\r\n (\"placeholder\" in optionOrGroup && (\r\n <li class=\"group\">\r\n <p class=\"group-label\">{optionOrGroup.label}</p>\r\n <PlaceholderElement placeholder={optionOrGroup.placeholder}></PlaceholderElement>\r\n {optionOrGroup.redirect && (\r\n <RedirectElement\r\n redirect={optionOrGroup.redirect}\r\n callback={this.handleRedirectClick}\r\n ></RedirectElement>\r\n )}\r\n </li>\r\n )) || (\r\n <li>\r\n <OptionElement\r\n option={optionOrGroup}\r\n active={this.active}\r\n activeHint={this.activeHint}\r\n callback={this.handleOptionClick}\r\n />\r\n </li>\r\n ),\r\n )}\r\n </ul>\r\n </div>\r\n )}\r\n </>\r\n );\r\n }\r\n}\r\n\r\nconst PlaceholderElement: FunctionalComponent<{\r\n placeholder: string;\r\n}> = ({ placeholder }) => <p class=\"placeholder\">{placeholder}</p>;\r\n\r\nconst OptionElement: FunctionalComponent<{\r\n option: AdvancedSelectOption<never>;\r\n active: AdvancedSelectOption<never> | undefined;\r\n activeHint: string | undefined;\r\n callback: (event: MouseEvent, value: AdvancedSelectOption<never>) => void;\r\n}> = ({ option, active, activeHint, callback }) => (\r\n <button\r\n class={clsx([\"option\", { \"option-active\": active === option }])}\r\n type=\"button\"\r\n onClick={(e) => callback(e, option)}\r\n >\r\n <span class=\"option-label\">{option.label}</span>\r\n {!!activeHint && active === option && <span class=\"option-hint\">({activeHint})</span>}\r\n </button>\r\n);\r\n\r\nconst RedirectElement: FunctionalComponent<{\r\n redirect: AdvancedSelectGroupRedirect;\r\n callback: (event: MouseEvent, value: AdvancedSelectGroupRedirect) => void;\r\n}> = ({ redirect, callback }) => (\r\n <a class=\"group-link\" href={redirect.href} onClick={(e) => callback(e, redirect)}>\r\n {redirect.label}\r\n <dso-icon icon=\"chevron-right\"></dso-icon>\r\n </a>\r\n);\r\n"],"version":3}
1
+ {"file":"dso-advanced-select.entry.cjs.js","mappings":"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","names":["isModifiedEvent","createFocusTrap","tabbable","h","clsx"],"sources":["src/components/advanced-select/advanced-select.scss?tag=dso-advanced-select&encapsulation=shadow","src/components/advanced-select/advanced-select.tsx"],"sourcesContent":["@use \"~dso-toolkit/src/utilities\";\r\n@use \"~dso-toolkit/src/global/mixins/set-colors.mixin\" as set-colors;\r\n@use \"~dso-toolkit/src/components/advanced-select\";\r\n\r\n:host {\r\n display: block;\r\n}\r\n\r\n@include utilities.box-sizing();\r\n\r\n.active-option {\r\n display: flex;\r\n inline-size: 100%;\r\n justify-content: space-between;\r\n align-items: center;\r\n padding: 0;\r\n border: 1px solid advanced-select.$border-color;\r\n border-radius: advanced-select.$border-radius;\r\n cursor: pointer;\r\n background-color: advanced-select.$bg-color;\r\n line-height: inherit;\r\n font-family: inherit;\r\n font-size: inherit;\r\n\r\n &.open {\r\n border-radius: advanced-select.$border-radius advanced-select.$border-radius 0 0;\r\n }\r\n\r\n dso-icon {\r\n color: advanced-select.$icon-color;\r\n }\r\n}\r\n\r\n.active-option-label {\r\n padding: advanced-select.$vertical-padding advanced-select.$horizontal-padding;\r\n overflow: hidden;\r\n /* stylelint-disable-next-line declaration-property-value-disallowed-list -- Nodig om lange titels op de zelfde regel te houden */\r\n white-space: nowrap;\r\n /* stylelint-disable-next-line declaration-property-value-disallowed-list -- Nodig om lange titels op de zelfde regel te houden */\r\n text-overflow: ellipsis;\r\n}\r\n\r\n.active-option-aside {\r\n display: flex;\r\n align-items: center;\r\n gap: advanced-select.$horizontal-padding * 0.5;\r\n padding: 0 advanced-select.$horizontal-padding * 0.5;\r\n}\r\n\r\n.badges {\r\n display: flex;\r\n justify-content: space-between;\r\n align-items: center;\r\n gap: advanced-select.$vertical-padding;\r\n}\r\n\r\n.groups-container {\r\n position: relative;\r\n}\r\n\r\n.groups {\r\n position: absolute;\r\n inset-block-start: -1px;\r\n inset-inline-start: 0;\r\n inline-size: 100%;\r\n max-block-size: 500px;\r\n margin: 0;\r\n padding: 0;\r\n overflow-y: auto;\r\n background-color: advanced-select.$bg-color;\r\n border: 1px solid advanced-select.$border-color;\r\n border-radius: 0 0 advanced-select.$border-radius advanced-select.$border-radius;\r\n\r\n li {\r\n &::marker {\r\n display: none;\r\n }\r\n }\r\n}\r\n\r\n.group {\r\n border-bottom: 1px solid advanced-select.$hr-color;\r\n\r\n &:last-child {\r\n border-bottom: none;\r\n }\r\n\r\n .option {\r\n padding-left: advanced-select.$horizontal-padding * 2 + advanced-select.$option-dot-size * 0.5;\r\n }\r\n\r\n .option-label::before {\r\n content: \"\";\r\n position: absolute;\r\n display: block;\r\n block-size: advanced-select.$option-dot-size;\r\n inline-size: advanced-select.$option-dot-size;\r\n inset: advanced-select.$vertical-padding auto auto -#{advanced-select.$option-dot-size * 2};\r\n border-radius: 50%;\r\n @include set-colors.apply(advanced-select.$default-variant-color, $icons: false, $links: false);\r\n }\r\n}\r\n\r\n.group-label {\r\n margin: 0;\r\n padding: advanced-select.$vertical-padding advanced-select.$horizontal-padding;\r\n color: advanced-select.$group-label-color;\r\n font-size: advanced-select.$group-label-font-size;\r\n font-weight: advanced-select.$group-label-font-weight;\r\n border-bottom: 1px solid advanced-select.$hr-color;\r\n}\r\n\r\n.group-link {\r\n display: block;\r\n padding: advanced-select.$group-link-horizontal-padding advanced-select.$group-link-vertical-padding;\r\n text-align: end;\r\n color: advanced-select.$group-link-color;\r\n text-decoration: none;\r\n\r\n &:hover {\r\n text-decoration: underline;\r\n }\r\n\r\n dso-icon {\r\n color: advanced-select.$redirect-icon-color;\r\n }\r\n}\r\n\r\n.group-info .option-label::before {\r\n @include set-colors.apply(advanced-select.$info-variant-color, $icons: false, $links: false);\r\n}\r\n\r\n.group-primary .option-label::before {\r\n @include set-colors.apply(advanced-select.$primary-variant-color, $icons: false, $links: false);\r\n}\r\n\r\n.group-success .option-label::before {\r\n @include set-colors.apply(advanced-select.$success-variant-color, $icons: false, $links: false);\r\n}\r\n\r\n.group-warning .option-label::before {\r\n @include set-colors.apply(advanced-select.$warning-variant-color, $icons: false, $links: false);\r\n}\r\n\r\n.group-danger .option-label::before {\r\n @include set-colors.apply(advanced-select.$danger-variant-color, $icons: false, $links: false);\r\n}\r\n\r\n.group-error .option-label::before {\r\n @include set-colors.apply(advanced-select.$error-variant-color, $icons: false, $links: false);\r\n}\r\n\r\n.group-attention .option-label::before {\r\n @include set-colors.apply(advanced-select.$attention-variant-color, $icons: false, $links: false);\r\n}\r\n\r\n.options {\r\n margin: 0;\r\n padding: 0;\r\n}\r\n\r\n.option {\r\n display: block;\r\n inline-size: 100%;\r\n padding: advanced-select.$vertical-padding * 2 advanced-select.$horizontal-padding;\r\n cursor: pointer;\r\n line-height: inherit;\r\n font-family: inherit;\r\n font-size: inherit;\r\n border: none;\r\n text-align: left;\r\n background-color: advanced-select.$bg-color;\r\n\r\n &:hover {\r\n background-color: advanced-select.$option-hover-bg-color;\r\n\r\n .option-label {\r\n color: advanced-select.$option-hover-color;\r\n font-weight: advanced-select.$option-hover-font-weight;\r\n }\r\n }\r\n}\r\n\r\n.option.option-active .option-label {\r\n color: advanced-select.$option-active-color;\r\n font-weight: advanced-select.$option-active-font-weight;\r\n text-decoration: underline;\r\n}\r\n\r\n.option-label {\r\n position: relative;\r\n color: advanced-select.$option-color;\r\n font-size: advanced-select.$option-font-size;\r\n font-weight: advanced-select.$option-font-weight;\r\n}\r\n\r\n.option-hint {\r\n padding-left: 5px;\r\n color: advanced-select.$option-active-color;\r\n font-size: advanced-select.$option-font-size;\r\n font-weight: advanced-select.$option-active-font-weight;\r\n}\r\n\r\n.placeholder {\r\n margin: 0;\r\n padding: advanced-select.$vertical-padding * 2 advanced-select.$horizontal-padding;\r\n color: advanced-select.$option-placeholder-color;\r\n}\r\n","import {\r\n Component,\r\n ComponentInterface,\r\n Prop,\r\n h,\r\n FunctionalComponent,\r\n Element,\r\n Event,\r\n EventEmitter,\r\n State,\r\n Fragment,\r\n Listen,\r\n} from \"@stencil/core\";\r\nimport clsx from \"clsx\";\r\nimport {\r\n AdvancedSelectGroup,\r\n AdvancedSelectGroupRedirect,\r\n AdvancedSelectOption,\r\n AdvancedSelectChangeEvent,\r\n AdvancedSelectOptionOrGroup,\r\n AdvancedSelectRedirectEvent,\r\n} from \"./advanced-select.models\";\r\nimport { createFocusTrap, FocusTrap } from \"focus-trap\";\r\nimport { tabbable } from \"tabbable\";\r\nimport { isModifiedEvent } from \"../../utils/is-modified-event\";\r\n\r\n@Component({\r\n tag: \"dso-advanced-select\",\r\n styleUrl: \"advanced-select.scss\",\r\n shadow: true,\r\n})\r\nexport class AdvancedSelect implements ComponentInterface {\r\n private trap?: FocusTrap;\r\n\r\n @Element()\r\n host!: HTMLDsoAdvancedSelectElement;\r\n\r\n /**\r\n * The options to display in the select.\r\n */\r\n @Prop()\r\n options: AdvancedSelectOptionOrGroup<never>[] = [];\r\n\r\n /**\r\n * The active option. By object reference.\r\n */\r\n @Prop()\r\n active?: AdvancedSelectOption<never>;\r\n\r\n /**\r\n * An extra text for the active option. Only visible in the list of options.\r\n */\r\n @Prop()\r\n activeHint?: string;\r\n\r\n /**\r\n * The open state of the options list.\r\n */\r\n @State()\r\n open: boolean = false;\r\n\r\n /**\r\n * Emitted when user selects an option\r\n */\r\n @Event({ bubbles: false })\r\n dsoChange!: EventEmitter<AdvancedSelectChangeEvent<never>>;\r\n\r\n /**\r\n * Emitted when user activates a group redirect link.\r\n */\r\n @Event({ bubbles: false })\r\n dsoRedirect!: EventEmitter<AdvancedSelectRedirectEvent>;\r\n\r\n private toggleButtonElementRef: HTMLButtonElement | undefined;\r\n\r\n @Listen(\"keydown\", { target: \"window\" })\r\n keyDownListener(event: KeyboardEvent) {\r\n if (this.open && event.key === \"ArrowUp\") {\r\n event.preventDefault();\r\n this.handleTab(-1);\r\n } else if (this.open && event.key === \"ArrowDown\") {\r\n event.preventDefault();\r\n this.handleTab(1);\r\n }\r\n }\r\n\r\n componentDidRender() {\r\n if (this.open && !this.trap) {\r\n this.createTrap();\r\n } else if (!this.open && this.trap) {\r\n this.removeTrap();\r\n }\r\n }\r\n\r\n private toggleOpen = () => {\r\n this.open = !this.open;\r\n };\r\n\r\n private createTrap() {\r\n this.trap = createFocusTrap(this.host, {\r\n clickOutsideDeactivates: true,\r\n escapeDeactivates: true,\r\n setReturnFocus: this.toggleButtonElementRef,\r\n tabbableOptions: {\r\n getShadowRoot: true,\r\n },\r\n onDeactivate: () => {\r\n this.open = false;\r\n },\r\n }).activate();\r\n }\r\n\r\n private removeTrap() {\r\n this.trap?.deactivate();\r\n delete this.trap;\r\n }\r\n\r\n private handleTab(direction: number) {\r\n const elements = tabbable(this.host, { getShadowRoot: true });\r\n const currentIndex = elements.findIndex((e) => e === this.host.shadowRoot?.activeElement);\r\n\r\n let nextIndex = currentIndex + direction;\r\n if (nextIndex >= elements.length) {\r\n nextIndex = 0;\r\n } else if (nextIndex < 0) {\r\n nextIndex = elements.length - 1;\r\n }\r\n\r\n elements[nextIndex]?.focus();\r\n }\r\n\r\n private handleOptionClick = (event: MouseEvent, option: AdvancedSelectOption<never>) => {\r\n this.dsoChange.emit({ originalEvent: event, option });\r\n this.open = false;\r\n };\r\n\r\n private handleRedirectClick = (event: MouseEvent, redirect: AdvancedSelectGroupRedirect) => {\r\n this.dsoRedirect.emit({ originalEvent: event, isModifiedEvent: isModifiedEvent(event), redirect });\r\n this.open = false;\r\n };\r\n\r\n render() {\r\n return (\r\n <>\r\n <button\r\n aria-expanded={this.open.toString()}\r\n class={clsx([\"active-option\", { open: this.open }])}\r\n type=\"button\"\r\n onClick={this.toggleOpen}\r\n ref={(element) => (this.toggleButtonElementRef = element)}\r\n >\r\n <span class=\"active-option-label\">{this.active?.label ?? \"Selecteer een optie\"}</span>\r\n <span class=\"active-option-aside\">\r\n {this.options.some(\r\n (optionOrGroup) => \"summaryCounter\" in optionOrGroup && optionOrGroup?.summaryCounter,\r\n ) && (\r\n <span class=\"badges\">\r\n {this.options\r\n .filter(\r\n (option): option is AdvancedSelectGroup<never> =>\r\n \"options\" in option && \"summaryCounter\" in option && !!option?.summaryCounter,\r\n )\r\n .map((group) => (\r\n <dso-badge status={group.variant ?? \"outline\"}>{group.options.length}</dso-badge>\r\n ))}\r\n </span>\r\n )}\r\n <dso-icon icon=\"caret-down\"></dso-icon>\r\n </span>\r\n </button>\r\n {this.open && (\r\n <div class=\"groups-container\">\r\n <ul class=\"groups\">\r\n {this.options.map(\r\n (optionOrGroup) =>\r\n (\"options\" in optionOrGroup && (\r\n <li class={clsx([\"group\", { [`group-${optionOrGroup.variant}`]: !!optionOrGroup.variant }])}>\r\n <p class=\"group-label\">{optionOrGroup.label}</p>\r\n <ul class=\"options\">\r\n {optionOrGroup.options.map((option) => (\r\n <li>\r\n <OptionElement\r\n option={option}\r\n active={this.active}\r\n activeHint={this.activeHint}\r\n callback={this.handleOptionClick}\r\n />\r\n </li>\r\n ))}\r\n </ul>\r\n {optionOrGroup.redirect && (\r\n <RedirectElement\r\n redirect={optionOrGroup.redirect}\r\n callback={this.handleRedirectClick}\r\n ></RedirectElement>\r\n )}\r\n </li>\r\n )) ||\r\n (\"placeholder\" in optionOrGroup && (\r\n <li class=\"group\">\r\n <p class=\"group-label\">{optionOrGroup.label}</p>\r\n <PlaceholderElement placeholder={optionOrGroup.placeholder}></PlaceholderElement>\r\n {optionOrGroup.redirect && (\r\n <RedirectElement\r\n redirect={optionOrGroup.redirect}\r\n callback={this.handleRedirectClick}\r\n ></RedirectElement>\r\n )}\r\n </li>\r\n )) || (\r\n <li>\r\n <OptionElement\r\n option={optionOrGroup}\r\n active={this.active}\r\n activeHint={this.activeHint}\r\n callback={this.handleOptionClick}\r\n />\r\n </li>\r\n ),\r\n )}\r\n </ul>\r\n </div>\r\n )}\r\n </>\r\n );\r\n }\r\n}\r\n\r\nconst PlaceholderElement: FunctionalComponent<{\r\n placeholder: string;\r\n}> = ({ placeholder }) => <p class=\"placeholder\">{placeholder}</p>;\r\n\r\nconst OptionElement: FunctionalComponent<{\r\n option: AdvancedSelectOption<never>;\r\n active: AdvancedSelectOption<never> | undefined;\r\n activeHint: string | undefined;\r\n callback: (event: MouseEvent, value: AdvancedSelectOption<never>) => void;\r\n}> = ({ option, active, activeHint, callback }) => (\r\n <button\r\n class={clsx([\"option\", { \"option-active\": active === option }])}\r\n type=\"button\"\r\n onClick={(e) => callback(e, option)}\r\n >\r\n <span class=\"option-label\">{option.label}</span>\r\n {!!activeHint && active === option && <span class=\"option-hint\">({activeHint})</span>}\r\n </button>\r\n);\r\n\r\nconst RedirectElement: FunctionalComponent<{\r\n redirect: AdvancedSelectGroupRedirect;\r\n callback: (event: MouseEvent, value: AdvancedSelectGroupRedirect) => void;\r\n}> = ({ redirect, callback }) => (\r\n <a class=\"group-link\" href={redirect.href} onClick={(e) => callback(e, redirect)}>\r\n {redirect.label}\r\n <dso-icon icon=\"chevron-right\"></dso-icon>\r\n </a>\r\n);\r\n"],"version":3}