@dso-toolkit/core 62.29.0 → 62.30.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 (323) 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.cjs.entry.js +1 -1
  5. package/dist/cjs/dso-advanced-select.cjs.entry.js +2 -2
  6. package/dist/cjs/dso-alert_5.cjs.entry.js +3 -3
  7. package/dist/cjs/dso-annotation-activiteit.cjs.entry.js +1 -1
  8. package/dist/cjs/dso-annotation-gebiedsaanwijzing.cjs.entry.js +1 -1
  9. package/dist/cjs/dso-annotation-kaart.cjs.entry.js +1 -1
  10. package/dist/cjs/dso-annotation-locatie.cjs.entry.js +1 -1
  11. package/dist/cjs/dso-annotation-omgevingsnormwaarde.cjs.entry.js +1 -1
  12. package/dist/cjs/dso-annotation-output_2.cjs.entry.js +1 -1
  13. package/dist/cjs/dso-attachments-counter.cjs.entry.js +1 -1
  14. package/dist/cjs/dso-autosuggest.cjs.entry.js +57 -20
  15. package/dist/cjs/dso-autosuggest.cjs.entry.js.map +1 -1
  16. package/dist/cjs/dso-badge.cjs.entry.js +1 -1
  17. package/dist/cjs/dso-banner.cjs.entry.js +2 -2
  18. package/dist/cjs/dso-card-container.cjs.entry.js +1 -1
  19. package/dist/cjs/dso-card.cjs.entry.js +2 -2
  20. package/dist/cjs/dso-date-picker-legacy.cjs.entry.js +3 -3
  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-helpcenter-panel.cjs.entry.js +2 -2
  24. package/dist/cjs/dso-highlight-box.cjs.entry.js +1 -1
  25. package/dist/cjs/dso-icon.cjs.entry.js +1 -1
  26. package/dist/cjs/dso-info-button.cjs.entry.js +1 -1
  27. package/dist/cjs/dso-info_2.cjs.entry.js +2 -2
  28. package/dist/cjs/dso-input-range.cjs.entry.js +2 -2
  29. package/dist/cjs/dso-label_2.cjs.entry.js +4 -4
  30. package/dist/cjs/dso-legend-item.cjs.entry.js +2 -2
  31. package/dist/cjs/dso-list-button.cjs.entry.js +1 -1
  32. package/dist/cjs/dso-logo.cjs.entry.js +2 -2
  33. package/dist/cjs/dso-logo.cjs.entry.js.map +1 -1
  34. package/dist/cjs/dso-map-base-layers.cjs.entry.js +1 -1
  35. package/dist/cjs/dso-map-controls.cjs.entry.js +1 -1
  36. package/dist/cjs/dso-map-overlays.cjs.entry.js +1 -1
  37. package/dist/cjs/dso-mark-bar.cjs.entry.js +1 -1
  38. package/dist/cjs/dso-modal.cjs.entry.js +2 -2
  39. package/dist/cjs/dso-panel.cjs.entry.js +23 -0
  40. package/dist/cjs/dso-panel.cjs.entry.js.map +1 -0
  41. package/dist/cjs/dso-progress-bar.cjs.entry.js +1 -1
  42. package/dist/cjs/dso-progress-indicator.cjs.entry.js +1 -1
  43. package/dist/cjs/dso-renvooi_2.cjs.entry.js +1 -1
  44. package/dist/cjs/dso-responsive-element.cjs.entry.js +1 -1
  45. package/dist/cjs/dso-scrollable.cjs.entry.js +2 -2
  46. package/dist/cjs/dso-toggletip.cjs.entry.js +1 -1
  47. package/dist/cjs/dso-toolkit.cjs.js +1 -1
  48. package/dist/cjs/dso-tree-view.cjs.entry.js +1 -1
  49. package/dist/cjs/dso-viewer-grid.cjs.entry.js +1 -1
  50. package/dist/cjs/dsot-document-component-demo.cjs.entry.js +1 -1
  51. package/dist/cjs/loader.cjs.js +1 -1
  52. package/dist/collection/collection-manifest.json +1 -0
  53. package/dist/collection/components/accordion/accordion.js +1 -1
  54. package/dist/collection/components/accordion/components/accordion-section.js +2 -2
  55. package/dist/collection/components/action-list/action-list.js +1 -1
  56. package/dist/collection/components/action-list/components/action-list-item.js +2 -2
  57. package/dist/collection/components/advanced-select/advanced-select.js +2 -2
  58. package/dist/collection/components/alert/alert.js +1 -1
  59. package/dist/collection/components/annotation/annotation-activiteit/annotation-activiteit.js +1 -1
  60. package/dist/collection/components/annotation/annotation-gebiedsaanwijzing/annotation-gebiedsaanwijzing.js +1 -1
  61. package/dist/collection/components/annotation/annotation-kaart/annotation-kaart.js +1 -1
  62. package/dist/collection/components/annotation/annotation-locatie/annotation-locatie.js +1 -1
  63. package/dist/collection/components/annotation/annotation-omgevingsnormwaarde/annotation-omgevingsnormwaarde.js +1 -1
  64. package/dist/collection/components/attachments-counter/attachments-counter.js +1 -1
  65. package/dist/collection/components/autosuggest/autosuggest.css +12 -8
  66. package/dist/collection/components/autosuggest/autosuggest.js +59 -20
  67. package/dist/collection/components/autosuggest/autosuggest.js.map +1 -1
  68. package/dist/collection/components/badge/badge.js +1 -1
  69. package/dist/collection/components/banner/banner.js +2 -2
  70. package/dist/collection/components/card/card.js +2 -2
  71. package/dist/collection/components/card-container/card-container.js +1 -1
  72. package/dist/collection/components/date-picker/date-picker.js +1 -1
  73. package/dist/collection/components/date-picker-legacy/date-picker-legacy.js +3 -3
  74. package/dist/collection/components/document-component/document-component.js +1 -1
  75. package/dist/collection/components/document-component-demo/document-component.demo.js +1 -1
  76. package/dist/collection/components/dropdown-menu/dropdown-menu.js +1 -1
  77. package/dist/collection/components/helpcenter-panel/helpcenter-panel.js +2 -2
  78. package/dist/collection/components/highlight-box/highlight-box.js +1 -1
  79. package/dist/collection/components/icon/icon.js +1 -1
  80. package/dist/collection/components/info/info.js +1 -1
  81. package/dist/collection/components/info-button/info-button.js +1 -1
  82. package/dist/collection/components/input-range/input-range.js +2 -2
  83. package/dist/collection/components/label/label.js +3 -3
  84. package/dist/collection/components/legend-item/legend-item.js +2 -2
  85. package/dist/collection/components/list-button/list-button.js +1 -1
  86. package/dist/collection/components/logo/logo.js +3 -3
  87. package/dist/collection/components/logo/logo.js.map +1 -1
  88. package/dist/collection/components/map-base-layers/map-base-layers.js +1 -1
  89. package/dist/collection/components/map-controls/map-controls.js +1 -1
  90. package/dist/collection/components/map-overlays/map-overlays.js +1 -1
  91. package/dist/collection/components/mark-bar/mark-bar.js +1 -1
  92. package/dist/collection/components/modal/modal.js +2 -2
  93. package/dist/collection/components/ozon-content/ozon-content.js +1 -1
  94. package/dist/collection/components/panel/panel.css +58 -0
  95. package/dist/collection/components/panel/panel.js +47 -0
  96. package/dist/collection/components/panel/panel.js.map +1 -0
  97. package/dist/collection/components/progress-bar/progress-bar.js +1 -1
  98. package/dist/collection/components/progress-indicator/progress-indicator.js +1 -1
  99. package/dist/collection/components/responsive-element/responsive-element.js +1 -1
  100. package/dist/collection/components/scrollable/scrollable.js +2 -2
  101. package/dist/collection/components/selectable/selectable.js +1 -1
  102. package/dist/collection/components/slide-toggle/slide-toggle.js +1 -1
  103. package/dist/collection/components/table/table.js +1 -1
  104. package/dist/collection/components/toggletip/toggletip.js +1 -1
  105. package/dist/collection/components/tooltip/tooltip.js +1 -1
  106. package/dist/collection/components/tree-view/tree-view.js +1 -1
  107. package/dist/collection/components/viewer-grid/viewer-grid.js +1 -1
  108. package/dist/components/alert.js +1 -1
  109. package/dist/components/attachments-counter.js +1 -1
  110. package/dist/components/badge.js +1 -1
  111. package/dist/components/document-component.js +1 -1
  112. package/dist/components/dropdown-menu.js +1 -1
  113. package/dist/components/dso-accordion-section.js +2 -2
  114. package/dist/components/dso-accordion.js +1 -1
  115. package/dist/components/dso-action-list-item.js +2 -2
  116. package/dist/components/dso-action-list.js +1 -1
  117. package/dist/components/dso-advanced-select.js +2 -2
  118. package/dist/components/dso-annotation-activiteit.js +1 -1
  119. package/dist/components/dso-annotation-gebiedsaanwijzing.js +1 -1
  120. package/dist/components/dso-annotation-kaart.js +1 -1
  121. package/dist/components/dso-annotation-locatie.js +1 -1
  122. package/dist/components/dso-annotation-omgevingsnormwaarde.js +1 -1
  123. package/dist/components/dso-autosuggest.js +70 -25
  124. package/dist/components/dso-autosuggest.js.map +1 -1
  125. package/dist/components/dso-banner.js +2 -2
  126. package/dist/components/dso-card-container.js +1 -1
  127. package/dist/components/dso-card.js +2 -2
  128. package/dist/components/dso-date-picker-legacy.js +3 -3
  129. package/dist/components/dso-date-picker.js +1 -1
  130. package/dist/components/dso-helpcenter-panel.js +2 -2
  131. package/dist/components/dso-highlight-box.js +1 -1
  132. package/dist/components/dso-input-range.js +2 -2
  133. package/dist/components/dso-legend-item.js +2 -2
  134. package/dist/components/dso-list-button.js +1 -1
  135. package/dist/components/dso-logo.js +3 -3
  136. package/dist/components/dso-logo.js.map +1 -1
  137. package/dist/components/dso-map-base-layers.js +1 -1
  138. package/dist/components/dso-map-controls.js +1 -1
  139. package/dist/components/dso-map-overlays.js +1 -1
  140. package/dist/components/dso-mark-bar.js +1 -1
  141. package/dist/components/dso-modal.js +2 -2
  142. package/dist/components/dso-panel.d.ts +11 -0
  143. package/dist/components/dso-panel.js +43 -0
  144. package/dist/components/dso-panel.js.map +1 -0
  145. package/dist/components/dso-progress-bar.js +1 -1
  146. package/dist/components/dso-tree-view.js +1 -1
  147. package/dist/components/dso-viewer-grid.js +1 -1
  148. package/dist/components/dsot-document-component-demo.js +1 -1
  149. package/dist/components/icon.js +1 -1
  150. package/dist/components/index.d.ts +2 -0
  151. package/dist/components/index.js +1 -0
  152. package/dist/components/index.js.map +1 -1
  153. package/dist/components/info-button.js +1 -1
  154. package/dist/components/info.js +1 -1
  155. package/dist/components/label.js +3 -3
  156. package/dist/components/ozon-content.js +1 -1
  157. package/dist/components/progress-indicator.js +1 -1
  158. package/dist/components/responsive-element.js +1 -1
  159. package/dist/components/scrollable.js +2 -2
  160. package/dist/components/selectable.js +1 -1
  161. package/dist/components/slide-toggle.js +1 -1
  162. package/dist/components/table.js +1 -1
  163. package/dist/components/toggletip.js +1 -1
  164. package/dist/components/tooltip.js +1 -1
  165. package/dist/dso-toolkit/dso-toolkit.esm.js +1 -1
  166. package/dist/dso-toolkit/dso-toolkit.esm.js.map +1 -1
  167. package/dist/dso-toolkit/{p-d8744e6e.entry.js → p-07bdda5e.entry.js} +2 -2
  168. package/dist/dso-toolkit/{p-ba314475.entry.js → p-0ea714fa.entry.js} +2 -2
  169. package/dist/dso-toolkit/{p-45934ea5.entry.js → p-0eedf36a.entry.js} +2 -2
  170. package/dist/dso-toolkit/p-12bea4ab.entry.js +2 -0
  171. package/dist/dso-toolkit/{p-32aa9cba.entry.js → p-224469db.entry.js} +2 -2
  172. package/dist/dso-toolkit/p-28622002.entry.js +2 -0
  173. package/dist/dso-toolkit/{p-c076cd49.entry.js → p-2d1f870c.entry.js} +2 -2
  174. package/dist/dso-toolkit/{p-9b698eb6.entry.js → p-2e3bc902.entry.js} +2 -2
  175. package/dist/dso-toolkit/{p-536b70d8.entry.js → p-30dbca1b.entry.js} +2 -2
  176. package/dist/dso-toolkit/{p-ef8cccbd.entry.js → p-38b3f31e.entry.js} +2 -2
  177. package/dist/dso-toolkit/{p-ab91a31a.entry.js → p-38d518f9.entry.js} +2 -2
  178. package/dist/dso-toolkit/{p-97b5ad7b.entry.js → p-3b4a3e37.entry.js} +2 -2
  179. package/dist/dso-toolkit/{p-81790cb0.entry.js → p-3c8f0a89.entry.js} +2 -2
  180. package/dist/dso-toolkit/{p-0a7eaafc.entry.js → p-421d223d.entry.js} +2 -2
  181. package/dist/dso-toolkit/{p-98325f23.entry.js → p-4a59df70.entry.js} +2 -2
  182. package/dist/dso-toolkit/{p-f850de62.entry.js → p-5c69d9c7.entry.js} +2 -2
  183. package/dist/dso-toolkit/p-5cf23978.entry.js +2 -0
  184. package/dist/dso-toolkit/{p-995b15a4.entry.js → p-7470bb47.entry.js} +2 -2
  185. package/dist/dso-toolkit/{p-8e4ec29c.entry.js → p-76e2a14e.entry.js} +2 -2
  186. package/dist/dso-toolkit/{p-d8cbc58f.entry.js → p-7e4c553d.entry.js} +2 -2
  187. package/dist/dso-toolkit/{p-ba0bd24d.entry.js → p-7fa33a0c.entry.js} +2 -2
  188. package/dist/dso-toolkit/p-8914f72a.entry.js +2 -0
  189. package/dist/dso-toolkit/{p-c311d632.entry.js → p-8939c14f.entry.js} +2 -2
  190. package/dist/dso-toolkit/{p-a3d88101.entry.js → p-96370f12.entry.js} +2 -2
  191. package/dist/dso-toolkit/p-9ee33188.entry.js +2 -0
  192. package/dist/dso-toolkit/p-9ee33188.entry.js.map +1 -0
  193. package/dist/dso-toolkit/{p-16b98c73.entry.js → p-a2e9f65d.entry.js} +2 -2
  194. package/dist/dso-toolkit/{p-be09cdfb.entry.js → p-a325b5b5.entry.js} +2 -2
  195. package/dist/dso-toolkit/{p-08dba16d.entry.js → p-a94bf203.entry.js} +2 -2
  196. package/dist/dso-toolkit/{p-d072c749.entry.js → p-ab3fca8d.entry.js} +2 -2
  197. package/dist/dso-toolkit/{p-f4893ad4.entry.js → p-b48845c9.entry.js} +2 -2
  198. package/dist/dso-toolkit/{p-6d87bed5.entry.js → p-b51c8bd1.entry.js} +2 -2
  199. package/dist/dso-toolkit/p-b53c6fb6.entry.js +2 -0
  200. package/dist/dso-toolkit/p-b53c6fb6.entry.js.map +1 -0
  201. package/dist/dso-toolkit/p-bc0e3147.entry.js +2 -0
  202. package/dist/dso-toolkit/{p-bc3f6f57.entry.js → p-be05632e.entry.js} +2 -2
  203. package/dist/dso-toolkit/{p-a6a47dd2.entry.js → p-c8bbb012.entry.js} +2 -2
  204. package/dist/dso-toolkit/{p-65103f88.entry.js → p-cc9bf183.entry.js} +2 -2
  205. package/dist/dso-toolkit/{p-0900fddd.entry.js → p-cf0a95cf.entry.js} +2 -2
  206. package/dist/dso-toolkit/p-dac60705.entry.js +2 -0
  207. package/dist/dso-toolkit/{p-b245e776.entry.js → p-df30c56c.entry.js} +2 -2
  208. package/dist/dso-toolkit/{p-a81af4b2.entry.js → p-e13733dc.entry.js} +2 -2
  209. package/dist/dso-toolkit/{p-dd2e80f0.entry.js → p-e15b7ce7.entry.js} +2 -2
  210. package/dist/dso-toolkit/{p-b4452919.entry.js → p-e881b305.entry.js} +2 -2
  211. package/dist/dso-toolkit/{p-70f2eed4.entry.js → p-f1089571.entry.js} +2 -2
  212. package/dist/dso-toolkit/{p-c1ae4697.entry.js → p-f68abdad.entry.js} +2 -2
  213. package/dist/dso-toolkit/{p-ca5a3ce5.entry.js → p-fc72f21c.entry.js} +2 -2
  214. package/dist/dso-toolkit/p-ff29c841.entry.js +2 -0
  215. package/dist/dso-toolkit/p-ff29c841.entry.js.map +1 -0
  216. package/dist/esm/dso-accordion-section.entry.js +2 -2
  217. package/dist/esm/dso-accordion.entry.js +1 -1
  218. package/dist/esm/dso-action-list-item.entry.js +2 -2
  219. package/dist/esm/dso-action-list.entry.js +1 -1
  220. package/dist/esm/dso-advanced-select.entry.js +2 -2
  221. package/dist/esm/dso-alert_5.entry.js +3 -3
  222. package/dist/esm/dso-annotation-activiteit.entry.js +1 -1
  223. package/dist/esm/dso-annotation-gebiedsaanwijzing.entry.js +1 -1
  224. package/dist/esm/dso-annotation-kaart.entry.js +1 -1
  225. package/dist/esm/dso-annotation-locatie.entry.js +1 -1
  226. package/dist/esm/dso-annotation-omgevingsnormwaarde.entry.js +1 -1
  227. package/dist/esm/dso-annotation-output_2.entry.js +1 -1
  228. package/dist/esm/dso-attachments-counter.entry.js +1 -1
  229. package/dist/esm/dso-autosuggest.entry.js +57 -20
  230. package/dist/esm/dso-autosuggest.entry.js.map +1 -1
  231. package/dist/esm/dso-badge.entry.js +1 -1
  232. package/dist/esm/dso-banner.entry.js +2 -2
  233. package/dist/esm/dso-card-container.entry.js +1 -1
  234. package/dist/esm/dso-card.entry.js +2 -2
  235. package/dist/esm/dso-date-picker-legacy.entry.js +3 -3
  236. package/dist/esm/dso-date-picker.entry.js +1 -1
  237. package/dist/esm/dso-dropdown-menu.entry.js +1 -1
  238. package/dist/esm/dso-helpcenter-panel.entry.js +2 -2
  239. package/dist/esm/dso-highlight-box.entry.js +1 -1
  240. package/dist/esm/dso-icon.entry.js +1 -1
  241. package/dist/esm/dso-info-button.entry.js +1 -1
  242. package/dist/esm/dso-info_2.entry.js +2 -2
  243. package/dist/esm/dso-input-range.entry.js +2 -2
  244. package/dist/esm/dso-label_2.entry.js +4 -4
  245. package/dist/esm/dso-legend-item.entry.js +2 -2
  246. package/dist/esm/dso-list-button.entry.js +1 -1
  247. package/dist/esm/dso-logo.entry.js +3 -3
  248. package/dist/esm/dso-logo.entry.js.map +1 -1
  249. package/dist/esm/dso-map-base-layers.entry.js +1 -1
  250. package/dist/esm/dso-map-controls.entry.js +1 -1
  251. package/dist/esm/dso-map-overlays.entry.js +1 -1
  252. package/dist/esm/dso-mark-bar.entry.js +1 -1
  253. package/dist/esm/dso-modal.entry.js +2 -2
  254. package/dist/esm/dso-panel.entry.js +19 -0
  255. package/dist/esm/dso-panel.entry.js.map +1 -0
  256. package/dist/esm/dso-progress-bar.entry.js +1 -1
  257. package/dist/esm/dso-progress-indicator.entry.js +1 -1
  258. package/dist/esm/dso-renvooi_2.entry.js +1 -1
  259. package/dist/esm/dso-responsive-element.entry.js +1 -1
  260. package/dist/esm/dso-scrollable.entry.js +2 -2
  261. package/dist/esm/dso-toggletip.entry.js +1 -1
  262. package/dist/esm/dso-toolkit.js +1 -1
  263. package/dist/esm/dso-tree-view.entry.js +1 -1
  264. package/dist/esm/dso-viewer-grid.entry.js +1 -1
  265. package/dist/esm/dsot-document-component-demo.entry.js +1 -1
  266. package/dist/esm/loader.js +1 -1
  267. package/dist/types/components/autosuggest/autosuggest.d.ts +10 -0
  268. package/dist/types/components/panel/panel.d.ts +15 -0
  269. package/dist/types/components.d.ts +34 -0
  270. package/package.json +2 -2
  271. package/dist/dso-toolkit/p-0bc8b0cb.entry.js +0 -2
  272. package/dist/dso-toolkit/p-0bc8b0cb.entry.js.map +0 -1
  273. package/dist/dso-toolkit/p-200b6f6d.entry.js +0 -2
  274. package/dist/dso-toolkit/p-357d709b.entry.js +0 -2
  275. package/dist/dso-toolkit/p-380eef98.entry.js +0 -2
  276. package/dist/dso-toolkit/p-91f631a2.entry.js +0 -2
  277. package/dist/dso-toolkit/p-a070bb9e.entry.js +0 -2
  278. package/dist/dso-toolkit/p-c2f27106.entry.js +0 -2
  279. package/dist/dso-toolkit/p-f59101bd.entry.js +0 -2
  280. package/dist/dso-toolkit/p-f59101bd.entry.js.map +0 -1
  281. /package/dist/dso-toolkit/{p-d8744e6e.entry.js.map → p-07bdda5e.entry.js.map} +0 -0
  282. /package/dist/dso-toolkit/{p-ba314475.entry.js.map → p-0ea714fa.entry.js.map} +0 -0
  283. /package/dist/dso-toolkit/{p-45934ea5.entry.js.map → p-0eedf36a.entry.js.map} +0 -0
  284. /package/dist/dso-toolkit/{p-91f631a2.entry.js.map → p-12bea4ab.entry.js.map} +0 -0
  285. /package/dist/dso-toolkit/{p-32aa9cba.entry.js.map → p-224469db.entry.js.map} +0 -0
  286. /package/dist/dso-toolkit/{p-380eef98.entry.js.map → p-28622002.entry.js.map} +0 -0
  287. /package/dist/dso-toolkit/{p-c076cd49.entry.js.map → p-2d1f870c.entry.js.map} +0 -0
  288. /package/dist/dso-toolkit/{p-9b698eb6.entry.js.map → p-2e3bc902.entry.js.map} +0 -0
  289. /package/dist/dso-toolkit/{p-536b70d8.entry.js.map → p-30dbca1b.entry.js.map} +0 -0
  290. /package/dist/dso-toolkit/{p-ef8cccbd.entry.js.map → p-38b3f31e.entry.js.map} +0 -0
  291. /package/dist/dso-toolkit/{p-ab91a31a.entry.js.map → p-38d518f9.entry.js.map} +0 -0
  292. /package/dist/dso-toolkit/{p-97b5ad7b.entry.js.map → p-3b4a3e37.entry.js.map} +0 -0
  293. /package/dist/dso-toolkit/{p-81790cb0.entry.js.map → p-3c8f0a89.entry.js.map} +0 -0
  294. /package/dist/dso-toolkit/{p-0a7eaafc.entry.js.map → p-421d223d.entry.js.map} +0 -0
  295. /package/dist/dso-toolkit/{p-98325f23.entry.js.map → p-4a59df70.entry.js.map} +0 -0
  296. /package/dist/dso-toolkit/{p-f850de62.entry.js.map → p-5c69d9c7.entry.js.map} +0 -0
  297. /package/dist/dso-toolkit/{p-200b6f6d.entry.js.map → p-5cf23978.entry.js.map} +0 -0
  298. /package/dist/dso-toolkit/{p-995b15a4.entry.js.map → p-7470bb47.entry.js.map} +0 -0
  299. /package/dist/dso-toolkit/{p-8e4ec29c.entry.js.map → p-76e2a14e.entry.js.map} +0 -0
  300. /package/dist/dso-toolkit/{p-d8cbc58f.entry.js.map → p-7e4c553d.entry.js.map} +0 -0
  301. /package/dist/dso-toolkit/{p-ba0bd24d.entry.js.map → p-7fa33a0c.entry.js.map} +0 -0
  302. /package/dist/dso-toolkit/{p-357d709b.entry.js.map → p-8914f72a.entry.js.map} +0 -0
  303. /package/dist/dso-toolkit/{p-c311d632.entry.js.map → p-8939c14f.entry.js.map} +0 -0
  304. /package/dist/dso-toolkit/{p-a3d88101.entry.js.map → p-96370f12.entry.js.map} +0 -0
  305. /package/dist/dso-toolkit/{p-16b98c73.entry.js.map → p-a2e9f65d.entry.js.map} +0 -0
  306. /package/dist/dso-toolkit/{p-be09cdfb.entry.js.map → p-a325b5b5.entry.js.map} +0 -0
  307. /package/dist/dso-toolkit/{p-08dba16d.entry.js.map → p-a94bf203.entry.js.map} +0 -0
  308. /package/dist/dso-toolkit/{p-d072c749.entry.js.map → p-ab3fca8d.entry.js.map} +0 -0
  309. /package/dist/dso-toolkit/{p-f4893ad4.entry.js.map → p-b48845c9.entry.js.map} +0 -0
  310. /package/dist/dso-toolkit/{p-6d87bed5.entry.js.map → p-b51c8bd1.entry.js.map} +0 -0
  311. /package/dist/dso-toolkit/{p-c2f27106.entry.js.map → p-bc0e3147.entry.js.map} +0 -0
  312. /package/dist/dso-toolkit/{p-bc3f6f57.entry.js.map → p-be05632e.entry.js.map} +0 -0
  313. /package/dist/dso-toolkit/{p-a6a47dd2.entry.js.map → p-c8bbb012.entry.js.map} +0 -0
  314. /package/dist/dso-toolkit/{p-65103f88.entry.js.map → p-cc9bf183.entry.js.map} +0 -0
  315. /package/dist/dso-toolkit/{p-0900fddd.entry.js.map → p-cf0a95cf.entry.js.map} +0 -0
  316. /package/dist/dso-toolkit/{p-a070bb9e.entry.js.map → p-dac60705.entry.js.map} +0 -0
  317. /package/dist/dso-toolkit/{p-b245e776.entry.js.map → p-df30c56c.entry.js.map} +0 -0
  318. /package/dist/dso-toolkit/{p-a81af4b2.entry.js.map → p-e13733dc.entry.js.map} +0 -0
  319. /package/dist/dso-toolkit/{p-dd2e80f0.entry.js.map → p-e15b7ce7.entry.js.map} +0 -0
  320. /package/dist/dso-toolkit/{p-b4452919.entry.js.map → p-e881b305.entry.js.map} +0 -0
  321. /package/dist/dso-toolkit/{p-70f2eed4.entry.js.map → p-f1089571.entry.js.map} +0 -0
  322. /package/dist/dso-toolkit/{p-c1ae4697.entry.js.map → p-f68abdad.entry.js.map} +0 -0
  323. /package/dist/dso-toolkit/{p-ca5a3ce5.entry.js.map → p-fc72f21c.entry.js.map} +0 -0
@@ -14,18 +14,23 @@ function escapeStringRegexp(string) {
14
14
  .replace(/-/g, '\\x2d');
15
15
  }
16
16
 
17
- const autosuggestCss = ".sc-dso-autosuggest-h{display:block;position:relative}ul.sc-dso-autosuggest,.autosuggest-progress-box.sc-dso-autosuggest{background-clip:padding-box;background-color:#fff;border:1px solid rgba(0, 0, 0, 0.15);border-radius:4px;box-shadow:0 6px 12px rgba(0, 0, 0, 0.175);list-style-type:none;margin-block-start:2px;padding-block:4px;padding-inline:0;position:absolute;inset-inline-start:0;inset-inline-end:0;inset-block-start:100%;z-index:200}.autosuggest-progress-box.sc-dso-autosuggest{padding-block:12px;padding-inline:8px}ul.sc-dso-autosuggest{padding-block:8px;padding-inline:0}ul.sc-dso-autosuggest li.sc-dso-autosuggest{padding-block:4px;padding-inline:16px}ul.sc-dso-autosuggest li.sc-dso-autosuggest .suggestion-row.sc-dso-autosuggest{display:flex;justify-content:space-between}li[aria-selected=true].sc-dso-autosuggest{cursor:pointer;background-color:#39870c}li[aria-selected=true].sc-dso-autosuggest,li[aria-selected=true].sc-dso-autosuggest .type.sc-dso-autosuggest,li[aria-selected=true].sc-dso-autosuggest .extra.sc-dso-autosuggest{color:#fff}mark.sc-dso-autosuggest{font-weight:700;background-color:inherit;color:inherit;padding:0}.type.sc-dso-autosuggest,.extra.sc-dso-autosuggest{color:#666}.extra.sc-dso-autosuggest{font-size:14px;line-height:21px}";
17
+ const autosuggestCss = ".sc-dso-autosuggest-h{display:block;position:relative}.listbox-container.sc-dso-autosuggest{inset-inline:0;inset-block-start:100%;block-size:auto;max-block-size:var(--max-block-size);min-block-size:48px;overflow-y:auto;position:absolute;z-index:200}ul.sc-dso-autosuggest,.autosuggest-progress-box.sc-dso-autosuggest{background-clip:padding-box;background-color:#fff;border:1px solid rgba(0, 0, 0, 0.15);border-radius:4px;box-shadow:0 6px 12px rgba(0, 0, 0, 0.175);list-style-type:none;margin-block:0}.autosuggest-progress-box.sc-dso-autosuggest{padding-block:12px;padding-inline:8px}ul.sc-dso-autosuggest{padding-block:8px;padding-inline:0}ul.sc-dso-autosuggest li.sc-dso-autosuggest{padding-block:4px;padding-inline:16px}ul.sc-dso-autosuggest li.sc-dso-autosuggest .suggestion-row.sc-dso-autosuggest{display:flex;justify-content:space-between}li[aria-selected=true].sc-dso-autosuggest{cursor:pointer;background-color:#39870c}li[aria-selected=true].sc-dso-autosuggest,li[aria-selected=true].sc-dso-autosuggest .type.sc-dso-autosuggest,li[aria-selected=true].sc-dso-autosuggest .extra.sc-dso-autosuggest{color:#fff}mark.sc-dso-autosuggest{font-weight:700;background-color:inherit;color:inherit;padding:0}.type.sc-dso-autosuggest,.extra.sc-dso-autosuggest{color:#666}.extra.sc-dso-autosuggest{font-size:14px;line-height:21px}";
18
18
  const DsoAutosuggestStyle0 = autosuggestCss;
19
19
 
20
+ const maxSuggestionsViewable = 10;
21
+ const listboxPaddingBlock = 8;
22
+ const listboxBorderWidth = 1;
20
23
  const Autosuggest = class {
21
24
  constructor(hostRef) {
22
25
  registerInstance(this, hostRef);
23
26
  this.dsoSelect = createEvent(this, "dsoSelect", 7);
24
27
  this.dsoChange = createEvent(this, "dsoChange", 7);
25
28
  this.dsoSearch = createEvent(this, "dsoSearch", 7);
29
+ this.listboxItems = [];
26
30
  this.listboxId = v4();
27
31
  this.inputId = v4();
28
32
  this.labelId = v4();
33
+ this.resizeObserver = new ResizeObserver(debounce(() => this.setListboxContainerMaxBlockSize(), 150));
29
34
  this.debouncedEmitValue = debounce((value) => {
30
35
  this.dsoChange.emit(value);
31
36
  this.debouncedShowLoading();
@@ -50,6 +55,8 @@ const Autosuggest = class {
50
55
  this.openSuggestions();
51
56
  }
52
57
  };
58
+ this.onWindowResize = debounce(() => this.setListboxContainerMaxBlockSize(), 150);
59
+ this.onScrollend = () => this.setListboxContainerMaxBlockSize();
53
60
  this.onKeyDown = (event) => {
54
61
  if (event.defaultPrevented || this.loading) {
55
62
  return;
@@ -96,6 +103,8 @@ const Autosuggest = class {
96
103
  this.selectedSuggestion = undefined;
97
104
  this.notFound = false;
98
105
  this.showLoading = false;
106
+ this.listItemBlockSize = 0;
107
+ this.listboxContainerMaxBlockSize = 0;
99
108
  }
100
109
  suggestionsWatcher() {
101
110
  this.resetSelectedSuggestion();
@@ -115,6 +124,9 @@ const Autosuggest = class {
115
124
  this.closeSuggestions();
116
125
  }
117
126
  }
127
+ componentDidRender() {
128
+ this.setListboxContainerMaxBlockSize();
129
+ }
118
130
  connectedCallback() {
119
131
  setTimeout(() => {
120
132
  const input = this.host.querySelector('input[type="text"]');
@@ -150,6 +162,10 @@ const Autosuggest = class {
150
162
  this.input.addEventListener("input", this.onInput);
151
163
  this.input.addEventListener("keydown", this.onKeyDown);
152
164
  this.input.addEventListener("focusin", this.onFocusIn);
165
+ window.addEventListener("resize", this.onWindowResize);
166
+ document.addEventListener("scrollend", this.onScrollend);
167
+ this.resizeObserver.observe(this.host);
168
+ this.setListboxContainerMaxBlockSize();
153
169
  });
154
170
  }
155
171
  disconnectedCallback() {
@@ -157,6 +173,27 @@ const Autosuggest = class {
157
173
  (_a = this.input) === null || _a === void 0 ? void 0 : _a.removeEventListener("input", this.onInput);
158
174
  (_b = this.input) === null || _b === void 0 ? void 0 : _b.removeEventListener("keydown", this.onKeyDown);
159
175
  (_c = this.input) === null || _c === void 0 ? void 0 : _c.removeEventListener("focusin", this.onFocusIn);
176
+ window.removeEventListener("resize", this.onWindowResize);
177
+ document.removeEventListener("scrollend", this.onScrollend);
178
+ this.resizeObserver.disconnect();
179
+ }
180
+ setListboxContainerMaxBlockSize() {
181
+ if (!this.listboxContainer || !this.showSuggestions) {
182
+ return;
183
+ }
184
+ if (this.listboxItems[0] && this.showSuggestions) {
185
+ this.listItemBlockSize = this.listboxItems[0].getBoundingClientRect().height;
186
+ }
187
+ const availableBlockSize = window.innerHeight - this.host.getBoundingClientRect().bottom;
188
+ const listboxMaxBlockSize = this.listItemBlockSize * maxSuggestionsViewable + 2 * listboxPaddingBlock + 2 * listboxBorderWidth;
189
+ if (availableBlockSize > this.listItemBlockSize) {
190
+ if (availableBlockSize < listboxMaxBlockSize) {
191
+ this.listboxContainerMaxBlockSize = availableBlockSize - 2 * listboxPaddingBlock;
192
+ }
193
+ else {
194
+ this.listboxContainerMaxBlockSize = listboxMaxBlockSize;
195
+ }
196
+ }
160
197
  }
161
198
  showInputValueNotFound(text) {
162
199
  var _a, _b;
@@ -202,50 +239,49 @@ const Autosuggest = class {
202
239
  });
203
240
  }
204
241
  selectSuggestion(suggestion) {
205
- var _a;
206
242
  this.selectedSuggestion = suggestion;
207
- (_a = this.input) === null || _a === void 0 ? void 0 : _a.setAttribute("aria-activedescendant", this.listboxItemId(suggestion));
243
+ this.setAriaActiveDescendant();
208
244
  }
209
245
  selectFirstSuggestion() {
210
- var _a;
211
246
  if (!this.suggestions) {
212
247
  return;
213
248
  }
214
249
  this.selectedSuggestion = this.suggestions[0];
215
- if (this.selectedSuggestion) {
216
- (_a = this.input) === null || _a === void 0 ? void 0 : _a.setAttribute("aria-activedescendant", this.listboxItemId(this.selectedSuggestion));
217
- }
250
+ this.setAriaActiveDescendant(true);
218
251
  }
219
252
  selectLastSuggestion() {
220
- var _a;
221
253
  if (!this.suggestions) {
222
254
  return;
223
255
  }
224
256
  this.selectedSuggestion = this.suggestions[this.suggestions.length - 1];
225
- if (this.selectedSuggestion) {
226
- (_a = this.input) === null || _a === void 0 ? void 0 : _a.setAttribute("aria-activedescendant", this.listboxItemId(this.selectedSuggestion));
227
- }
257
+ this.setAriaActiveDescendant(true);
228
258
  }
229
259
  selectNextSuggestion() {
230
- var _a, _b;
260
+ var _a;
231
261
  if (!this.suggestions) {
232
262
  return;
233
263
  }
234
264
  const index = this.selectedSuggestion ? this.suggestions.indexOf(this.selectedSuggestion) : -1;
235
265
  this.selectedSuggestion = (_a = this.suggestions[index + 1]) !== null && _a !== void 0 ? _a : this.suggestions[0];
236
- if (this.selectedSuggestion) {
237
- (_b = this.input) === null || _b === void 0 ? void 0 : _b.setAttribute("aria-activedescendant", this.listboxItemId(this.selectedSuggestion));
238
- }
266
+ this.setAriaActiveDescendant(true);
239
267
  }
240
268
  selectPreviousSuggestion() {
241
- var _a, _b;
269
+ var _a;
242
270
  if (!this.suggestions) {
243
271
  return;
244
272
  }
245
273
  const index = this.selectedSuggestion ? this.suggestions.indexOf(this.selectedSuggestion) : 0;
246
274
  this.selectedSuggestion = (_a = this.suggestions[index - 1]) !== null && _a !== void 0 ? _a : this.suggestions[this.suggestions.length - 1];
275
+ this.setAriaActiveDescendant(true);
276
+ }
277
+ setAriaActiveDescendant(scroll = false) {
278
+ var _a, _b;
247
279
  if (this.selectedSuggestion) {
248
- (_b = this.input) === null || _b === void 0 ? void 0 : _b.setAttribute("aria-activedescendant", this.listboxItemId(this.selectedSuggestion));
280
+ const id = this.listboxItemId(this.selectedSuggestion);
281
+ (_a = this.input) === null || _a === void 0 ? void 0 : _a.setAttribute("aria-activedescendant", id);
282
+ if (scroll) {
283
+ (_b = document.getElementById(id)) === null || _b === void 0 ? void 0 : _b.scrollIntoView({ block: "nearest" });
284
+ }
249
285
  }
250
286
  }
251
287
  resetSelectedSuggestion() {
@@ -302,11 +338,12 @@ const Autosuggest = class {
302
338
  }, []);
303
339
  }
304
340
  render() {
305
- return (h(Fragment, null, h("slot", { key: 'ef4290b35d4c82e2ab0aa297cd58098562484bbb' }), this.loading && this.showLoading ? (h("div", { class: "autosuggest-progress-box" }, h("dso-progress-indicator", { label: this.loadingLabel }))) : (h("ul", { role: "listbox", "aria-live": "polite", id: this.listboxId, "aria-labelledby": this.labelId, ref: (element) => (this.listbox = element), hidden: !this.showSuggestions && !this.notFound }, (this.showSuggestions &&
341
+ this.listboxItems = [];
342
+ return (h(Fragment, null, h("slot", { key: '1c54ee8c0e3ecea23a23f4acfc641179908f630f' }), this.loading && this.showLoading ? (h("div", { class: "autosuggest-progress-box" }, h("dso-progress-indicator", { label: this.loadingLabel }))) : (h("dso-scrollable", { class: "listbox-container", ref: (element) => (this.listboxContainer = element), style: { "--max-block-size": `${this.listboxContainerMaxBlockSize}px` } }, h("ul", { role: "listbox", "aria-live": "polite", id: this.listboxId, "aria-labelledby": this.labelId, ref: (element) => (this.listbox = element), hidden: !this.showSuggestions && !this.notFound }, (this.showSuggestions &&
306
343
  this.suggestions &&
307
- this.suggestions.map((suggestion) => (h("li", { role: "option", id: this.listboxItemId(suggestion), key: suggestion.value, onMouseEnter: () => this.selectSuggestion(suggestion), onMouseLeave: () => this.resetSelectedSuggestion(), onClick: () => this.pickSelectedValue(), "aria-selected": (suggestion === this.selectedSuggestion).toString(), "aria-label": suggestion.value }, h("div", { class: "suggestion-row" }, h("span", { class: "value" }, this.handleMark(suggestion, suggestion.value, "value")), suggestion.type ? (h("span", { class: "type" }, this.handleMark(suggestion, suggestion.type, "type"))) : undefined), suggestion.extras &&
344
+ this.suggestions.map((suggestion) => (h("li", { role: "option", id: this.listboxItemId(suggestion), key: suggestion.value, onMouseEnter: () => this.selectSuggestion(suggestion), onMouseLeave: () => this.resetSelectedSuggestion(), onClick: () => this.pickSelectedValue(), "aria-selected": (suggestion === this.selectedSuggestion).toString(), "aria-label": suggestion.value, ref: (li) => li && this.listboxItems.push(li) }, h("div", { class: "suggestion-row" }, h("span", { class: "value" }, this.handleMark(suggestion, suggestion.value, "value")), suggestion.type ? (h("span", { class: "type" }, this.handleMark(suggestion, suggestion.type, "type"))) : undefined), suggestion.extras &&
308
345
  this.getChunkedExtras(suggestion.extras).map((chunk, index) => (h("div", { class: "suggestion-row" }, chunk.map((c, i) => (h("span", { class: "extra" }, this.handleMark(suggestion, c, "extra", index * 2 + i))))))))))) ||
309
- (this.notFound && (h("li", null, h("span", { class: "value" }, !this.notFoundLabel ? (this.showInputValueNotFound(`${this.inputValue} is niet gevonden.`)) : (h("span", null, this.notFoundLabel))))))))));
346
+ (this.notFound && (h("li", null, h("span", { class: "value" }, !this.notFoundLabel ? (this.showInputValueNotFound(`${this.inputValue} is niet gevonden.`)) : (h("span", null, this.notFoundLabel)))))))))));
310
347
  }
311
348
  get host() { return getElement(this); }
312
349
  static get watchers() { return {
@@ -1 +1 @@
1
- {"file":"dso-autosuggest.entry.js","mappings":";;;;AAAe,SAAS,kBAAkB,CAAC,MAAM,EAAE;AACnD,CAAC,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE;AACjC,EAAE,MAAM,IAAI,SAAS,CAAC,mBAAmB,CAAC,CAAC;AAC3C,EAAE;AACF;AACA;AACA;AACA,CAAC,OAAO,MAAM;AACd,GAAG,OAAO,CAAC,qBAAqB,EAAE,MAAM,CAAC;AACzC,GAAG,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;AAC1B;;ACVA,MAAM,cAAc,GAAG,kvCAAkvC,CAAC;AAC1wC,6BAAe,cAAc;;MCWhB,WAAW;;;;;;QAmGd,cAAS,GAAW,EAAE,EAAE,CAAC;QAEzB,YAAO,GAAW,EAAE,EAAE,CAAC;QAEvB,YAAO,GAAW,EAAE,EAAE,CAAC;QAEvB,uBAAkB,GAAG,QAAQ,CAAC,CAAC,KAAa;YAClD,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAC3B,IAAI,CAAC,oBAAoB,EAAE,CAAC;SAC7B,EAAE,GAAG,CAAC,CAAC;QAEA,yBAAoB,GAAG,QAAQ,CAAC;YACtC,IAAI,IAAI,CAAC,UAAU,EAAE;gBACnB,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;aACzB;SACF,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC;QAEhB,eAAU,GAAG,EAAE,CAAC;QAEhB,YAAO,GAAG,CAAC,KAAY;YAC7B,IAAI,EAAE,KAAK,CAAC,MAAM,YAAY,gBAAgB,CAAC,EAAE;gBAC/C,OAAO;;aAER;YAED,IAAI,CAAC,WAAW,GAAG,CAAC,IAAI,CAAC,cAAc,CAAC;YACxC,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC;YACrC,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,KAAK,GAAG,EAAE,CAAC,CAAC;SACvF,CAAC;QAEM,cAAS,GAAG;YAClB,IAAI,IAAI,CAAC,cAAc,EAAE;gBACvB,IAAI,CAAC,eAAe,EAAE,CAAC;aACxB;SACF,CAAC;QA8MM,cAAS,GAAG,CAAC,KAAoB;YACvC,IAAI,KAAK,CAAC,gBAAgB,IAAI,IAAI,CAAC,OAAO,EAAE;gBAC1C,OAAO;aACR;YAED,QAAQ,KAAK,CAAC,GAAG;gBACf,KAAK,WAAW;oBACd,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE;wBACzB,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;qBAC/B;yBAAM;wBACL,IAAI,CAAC,oBAAoB,EAAE,CAAC;qBAC7B;oBAED,MAAM;gBAER,KAAK,SAAS;oBACZ,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE;wBACzB,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;qBAC9B;yBAAM;wBACL,IAAI,CAAC,wBAAwB,EAAE,CAAC;qBACjC;oBAED,MAAM;gBAER,KAAK,KAAK;oBACR,IAAI,CAAC,gBAAgB,EAAE,CAAC;oBACxB,OAAO;gBAET,KAAK,QAAQ;oBACX,IAAI,CAAC,gBAAgB,EAAE,CAAC;oBACxB,MAAM;gBAER,KAAK,OAAO;oBACV,IAAI,CAAC,iBAAiB,EAAE,CAAC;oBACzB,MAAM;gBAER;oBACE,OAAO;aACV;YAED,KAAK,CAAC,cAAc,EAAE,CAAC;SACxB,CAAC;2BAjX0C,IAAI;uBAMtC,KAAK;4BAMS,oBAAoB;;;8BAkB3B,KAAK;;+BAgCJ,KAAK;;wBAMZ,KAAK;2BAGF,KAAK;;IAGnB,kBAAkB;QAChB,IAAI,CAAC,uBAAuB,EAAE,CAAC;QAE/B,IAAI,CAAC,CAAC,IAAI,CAAC,eAAe,IAAI,CAAC,IAAI,CAAC,QAAQ,KAAK,IAAI,CAAC,UAAU,EAAE;YAChE,IAAI,CAAC,eAAe,EAAE,CAAC;SACxB;aAAM,IAAI,CAAC,IAAI,CAAC,eAAe,IAAI,IAAI,CAAC,QAAQ,KAAK,CAAC,IAAI,CAAC,UAAU,EAAE;YACtE,IAAI,CAAC,gBAAgB,EAAE,CAAC;SACzB;KACF;IA2CD,eAAe,CAAC,KAAiB;QAC/B,IACE,CAAC,IAAI,CAAC,eAAe,IAAI,IAAI,CAAC,QAAQ;YACtC,IAAI,CAAC,OAAO;YACZ,KAAK,CAAC,MAAM,YAAY,IAAI;YAC5B,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC;YACpC,IAAI,CAAC,KAAK,KAAK,KAAK,CAAC,MAAM,EAC3B;YACA,IAAI,CAAC,gBAAgB,EAAE,CAAC;SACzB;KACF;IAED,iBAAiB;QACf,UAAU,CAAC;YACT,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,oBAAoB,CAAC,CAAC;YAC5D,IAAI,EAAE,KAAK,YAAY,gBAAgB,CAAC,EAAE;gBACxC,OAAO;;aAER;YAED,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;YACnB,IAAI,KAAK,CAAC,EAAE,EAAE;gBACZ,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC,EAAE,CAAC;aACzB;iBAAM;gBACL,KAAK,CAAC,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC;aACzB;YAED,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE;gBACtD,OAAO;;aAER;YAED,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;YACnC,IAAI,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,EAAE,EAAE;gBACb,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC,EAAE,CAAC;aACzB;iBAAM,IAAI,KAAK,EAAE;gBAChB,KAAK,CAAC,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC;aACzB;YAED,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;YAC5C,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,eAAe,EAAE,SAAS,CAAC,CAAC;YACpD,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,eAAe,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;YACzD,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,eAAe,EAAE,OAAO,CAAC,CAAC;YAClD,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,cAAc,EAAE,KAAK,CAAC,CAAC;YAC/C,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,mBAAmB,EAAE,MAAM,CAAC,CAAC;YACrD,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,uBAAuB,EAAE,EAAE,CAAC,CAAC;YACrD,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;YACnD,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;YACvD,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;SACxD,CAAC,CAAC;KACJ;IAED,oBAAoB;;QAClB,MAAA,IAAI,CAAC,KAAK,0CAAE,mBAAmB,CAAC,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;QACvD,MAAA,IAAI,CAAC,KAAK,0CAAE,mBAAmB,CAAC,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;QAC3D,MAAA,IAAI,CAAC,KAAK,0CAAE,mBAAmB,CAAC,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;KAC5D;IAEO,sBAAsB,CAAC,IAAY;;QACzC,OAAO,IAAI,CAAC,2BAA2B,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,MAAA,MAAA,IAAI,CAAC,KAAK,0CAAE,KAAK,CAAC,KAAK,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,mCAAI,EAAE,CAAC,CAAC,CAAC;KACpH;IAEO,UAAU,CAChB,UAAsB,EACtB,IAAY,EACZ,IAAiC,EACjC,UAAmB;;QAEnB,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,EAAE;YACrB,OAAO,IAAI,CAAC,2BAA2B,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,EAAE,IAAI,EAAE,UAAU,CAAC,CAAC,CAAC;SACxF;QACD,OAAO,IAAI,CAAC,2BAA2B,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,MAAA,MAAA,IAAI,CAAC,KAAK,0CAAE,KAAK,CAAC,KAAK,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,mCAAI,EAAE,CAAC,CAAC,CAAC;KACpH;IAEO,SAAS,CAAC,eAAuB,EAAE,KAAe;QACxD,IAAI,CAAC,eAAe,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,SAAS,EAAE;YAC9E,OAAO,CAAC,EAAE,CAAC,CAAC;SACb;QAED,MAAM,SAAS,GAAG,IAAI,MAAM,CAAC,IAAI,kBAAkB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;QAExE,OAAO,eAAe,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,CAAC,KAA4B,EAAE,SAAiB;YAC7F,IAAI,CAAC,SAAS,EAAE;gBACd,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;aACvB;iBAAM,IAAI,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE;gBACpC,KAAK,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,CAAC;aACjC;iBAAM,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE;gBAC7B,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;aACvB;iBAAM;gBACL,KAAK,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;aAC1D;YAED,OAAO,KAAK,CAAC;SACd,EAAE,EAAE,CAAC,CAAC;KACR;IAEO,2BAA2B,CAAC,KAA4B;QAC9D,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE;YACtB,OAAO,CAAC,EAAE,CAAC,CAAC;SACb;QAED,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI;YACpB,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE;gBAC5B,OAAO,gBAAO,IAAI,CAAC,IAAI,CAAQ,CAAC;aACjC;YACD,OAAO,IAAI,CAAC;SACb,CAAC,CAAC;KACJ;IAEO,gBAAgB,CAAC,UAAsB;;QAC7C,IAAI,CAAC,kBAAkB,GAAG,UAAU,CAAC;QAErC,MAAA,IAAI,CAAC,KAAK,0CAAE,YAAY,CAAC,uBAAuB,EAAE,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC,CAAC;KACnF;IAEO,qBAAqB;;QAC3B,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE;YACrB,OAAO;SACR;QAED,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;QAE9C,IAAI,IAAI,CAAC,kBAAkB,EAAE;YAC3B,MAAA,IAAI,CAAC,KAAK,0CAAE,YAAY,CAAC,uBAAuB,EAAE,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,CAAC;SAChG;KACF;IAEO,oBAAoB;;QAC1B,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE;YACrB,OAAO;SACR;QAED,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QAExE,IAAI,IAAI,CAAC,kBAAkB,EAAE;YAC3B,MAAA,IAAI,CAAC,KAAK,0CAAE,YAAY,CAAC,uBAAuB,EAAE,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,CAAC;SAChG;KACF;IAEO,oBAAoB;;QAC1B,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE;YACrB,OAAO;SACR;QAED,MAAM,KAAK,GAAG,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,CAAC,CAAC;QAE/F,IAAI,CAAC,kBAAkB,GAAG,MAAA,IAAI,CAAC,WAAW,CAAC,KAAK,GAAG,CAAC,CAAC,mCAAI,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;QAE7E,IAAI,IAAI,CAAC,kBAAkB,EAAE;YAC3B,MAAA,IAAI,CAAC,KAAK,0CAAE,YAAY,CAAC,uBAAuB,EAAE,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,CAAC;SAChG;KACF;IAEO,wBAAwB;;QAC9B,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE;YACrB,OAAO;SACR;QAED,MAAM,KAAK,GAAG,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,CAAC;QAE9F,IAAI,CAAC,kBAAkB,GAAG,MAAA,IAAI,CAAC,WAAW,CAAC,KAAK,GAAG,CAAC,CAAC,mCAAI,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QAEvG,IAAI,IAAI,CAAC,kBAAkB,EAAE;YAC3B,MAAA,IAAI,CAAC,KAAK,0CAAE,YAAY,CAAC,uBAAuB,EAAE,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,CAAC;SAChG;KACF;IAEO,uBAAuB;;QAC7B,IAAI,CAAC,WAAW,GAAG,CAAC,IAAI,CAAC,cAAc,CAAC;QACxC,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC;QACtB,IAAI,CAAC,kBAAkB,GAAG,SAAS,CAAC;QACpC,MAAA,IAAI,CAAC,KAAK,0CAAE,YAAY,CAAC,uBAAuB,EAAE,EAAE,CAAC,CAAC;KACvD;IAEO,eAAe,CAAC,gBAAmC;;QACzD,IAAI,CAAC,eAAe,GAAG,OAAC,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC,mCAAI,KAAK,CAAC;QAClF,IAAI,CAAC,QAAQ,GAAG,MAAA,CAAA,MAAA,IAAI,CAAC,WAAW,0CAAE,MAAM,MAAK,CAAC,mCAAI,KAAK,CAAC;QACxD,MAAA,IAAI,CAAC,KAAK,0CAAE,YAAY,CAAC,eAAe,EAAE,CAAC,IAAI,CAAC,eAAe,IAAI,IAAI,CAAC,QAAQ,EAAE,QAAQ,EAAE,CAAC,CAAC;QAE9F,IAAI,IAAI,CAAC,eAAe,IAAI,gBAAgB,KAAK,OAAO,EAAE;YACxD,IAAI,CAAC,qBAAqB,EAAE,CAAC;SAC9B;aAAM,IAAI,IAAI,CAAC,eAAe,IAAI,gBAAgB,KAAK,MAAM,EAAE;YAC9D,IAAI,CAAC,oBAAoB,EAAE,CAAC;SAC7B;KACF;IAEO,gBAAgB;;QACtB,IAAI,CAAC,eAAe,GAAG,KAAK,CAAC;QAC7B,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC;QACtB,MAAA,IAAI,CAAC,KAAK,0CAAE,YAAY,CAAC,eAAe,EAAE,OAAO,CAAC,CAAC;QACnD,IAAI,CAAC,qBAAqB,EAAE,CAAC;KAC9B;IAEO,iBAAiB;;QACvB,IAAI,IAAI,CAAC,kBAAkB,IAAI,IAAI,CAAC,eAAe,EAAE;YACnD,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;SAC9C;aAAM;YACL,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,MAAA,IAAI,CAAC,KAAK,0CAAE,KAAK,CAAC,CAAC;SACxC;QAED,IAAI,CAAC,gBAAgB,EAAE,CAAC;KACzB;IA6CO,aAAa,CAAC,UAAsB;QAC1C,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE;YACrB,OAAO,EAAE,CAAC;SACX;QACD,OAAO,GAAG,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;KACtE;IAEO,gBAAgB,CAAC,MAAgB;QACvC,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,WAAuB,EAAE,KAAK,EAAE,KAAK;;YACzD,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC;YAEzC,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,EAAE;gBAC5B,WAAW,CAAC,UAAU,CAAC,GAAG,EAAE,CAAC;aAC9B;YACD,MAAA,WAAW,CAAC,UAAU,CAAC,0CAAE,IAAI,CAAC,KAAK,CAAC,CAAC;YACrC,OAAO,WAAW,CAAC;SACpB,EAAE,EAAE,CAAC,CAAC;KACR;IAED,MAAM;QACJ,QACE,kBACE,8DAAQ,EACP,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,WAAW,IAC/B,WAAK,KAAK,EAAC,0BAA0B,IACnC,8BAAwB,KAAK,EAAE,IAAI,CAAC,YAAY,GAA2B,CACvE,KAEN,UACE,IAAI,EAAC,SAAS,eACJ,QAAQ,EAClB,EAAE,EAAE,IAAI,CAAC,SAAS,qBACD,IAAI,CAAC,OAAO,EAC7B,GAAG,EAAE,CAAC,OAAO,MAAM,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,EAC1C,MAAM,EAAE,CAAC,IAAI,CAAC,eAAe,IAAI,CAAC,IAAI,CAAC,QAAQ,IAE9C,CAAC,IAAI,CAAC,eAAe;YACpB,IAAI,CAAC,WAAW;YAChB,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,UAAU,MAC9B,UACE,IAAI,EAAC,QAAQ,EACb,EAAE,EAAE,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,EAClC,GAAG,EAAE,UAAU,CAAC,KAAK,EACrB,YAAY,EAAE,MAAM,IAAI,CAAC,gBAAgB,CAAC,UAAU,CAAC,EACrD,YAAY,EAAE,MAAM,IAAI,CAAC,uBAAuB,EAAE,EAClD,OAAO,EAAE,MAAM,IAAI,CAAC,iBAAiB,EAAE,mBACxB,CAAC,UAAU,KAAK,IAAI,CAAC,kBAAkB,EAAE,QAAQ,EAAE,gBACtD,UAAU,CAAC,KAAK,IAE5B,WAAK,KAAK,EAAC,gBAAgB,IACzB,YAAM,KAAK,EAAC,OAAO,IAAE,IAAI,CAAC,UAAU,CAAC,UAAU,EAAE,UAAU,CAAC,KAAK,EAAE,OAAO,CAAC,CAAQ,EAClF,UAAU,CAAC,IAAI,IACd,YAAM,KAAK,EAAC,MAAM,IAAE,IAAI,CAAC,UAAU,CAAC,UAAU,EAAE,UAAU,CAAC,IAAI,EAAE,MAAM,CAAC,CAAQ,IAC9E,SAAS,CACT,EACL,UAAU,CAAC,MAAM;gBAChB,IAAI,CAAC,gBAAgB,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,KAAK,MACxD,WAAK,KAAK,EAAC,gBAAgB,IACxB,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,MACd,YAAM,KAAK,EAAC,OAAO,IAAE,IAAI,CAAC,UAAU,CAAC,UAAU,EAAE,CAAC,EAAE,OAAO,EAAE,KAAK,GAAG,CAAC,GAAG,CAAC,CAAC,CAAQ,CACpF,CAAC,CACE,CACP,CAAC,CACD,CACN,CAAC;aACD,IAAI,CAAC,QAAQ,KACZ,cACE,YAAM,KAAK,EAAC,OAAO,IAChB,CAAC,IAAI,CAAC,aAAa,IAClB,IAAI,CAAC,sBAAsB,CAAC,GAAG,IAAI,CAAC,UAAU,oBAAoB,CAAC,KAEnE,gBAAO,IAAI,CAAC,aAAa,CAAQ,CAClC,CACI,CACJ,CACN,CAAC,CACD,CACN,CACA,EACH;KACH;;;;;;;;;;","names":[],"sources":["../../node_modules/escape-string-regexp/index.js","src/components/autosuggest/autosuggest.scss?tag=dso-autosuggest&encapsulation=scoped","src/components/autosuggest/autosuggest.tsx"],"sourcesContent":["export default function escapeStringRegexp(string) {\n\tif (typeof string !== 'string') {\n\t\tthrow new TypeError('Expected a string');\n\t}\n\n\t// Escape characters with special meaning either inside or outside character sets.\n\t// Use a simple backslash escape when it’s always valid, and a `\\xnn` escape when the simpler form would be disallowed by Unicode patterns’ stricter grammar.\n\treturn string\n\t\t.replace(/[|\\\\{}()[\\]^$+*?.]/g, '\\\\$&')\n\t\t.replace(/-/g, '\\\\x2d');\n}\n","@use \"~dso-toolkit/src/variables/units\";\r\n@use \"~dso-toolkit/src/variables/colors\";\r\n@use \"~dso-toolkit/src/variables/scaffolding\";\r\n@use \"~dso-toolkit/src/variables/typography\";\r\n@use \"~dso-toolkit/src/variables/zindex\";\r\n\r\n@use \"autosuggest.variables\" as core-autosuggest-variables;\r\n\r\n:host {\r\n display: block;\r\n position: relative;\r\n}\r\n\r\nul,\r\n.autosuggest-progress-box {\r\n background-clip: padding-box;\r\n background-color: core-autosuggest-variables.$background-color;\r\n border: 1px solid core-autosuggest-variables.$border-color;\r\n border-radius: scaffolding.$border-radius-base;\r\n box-shadow: core-autosuggest-variables.$box-shadow;\r\n list-style-type: none;\r\n margin-block-start: 2px;\r\n padding-block: units.$u1 * 0.5;\r\n padding-inline: 0;\r\n position: absolute;\r\n inset-inline-start: 0;\r\n inset-inline-end: 0;\r\n inset-block-start: 100%;\r\n z-index: zindex.$autosuggest;\r\n}\r\n\r\n.autosuggest-progress-box {\r\n padding-block: units.$u1 * 1.5;\r\n padding-inline: units.$u1;\r\n}\r\n\r\nul {\r\n padding-block: units.$u1;\r\n padding-inline: 0;\r\n\r\n li {\r\n padding-block: units.$u1 * 0.5;\r\n padding-inline: units.$u2;\r\n\r\n .suggestion-row {\r\n display: flex;\r\n justify-content: space-between;\r\n }\r\n }\r\n}\r\n\r\nli[aria-selected=\"true\"] {\r\n cursor: pointer;\r\n background-color: colors.$grasgroen;\r\n\r\n &,\r\n .type,\r\n .extra {\r\n color: colors.$wit;\r\n }\r\n}\r\n\r\nmark {\r\n font-weight: 700;\r\n background-color: inherit;\r\n color: inherit;\r\n padding: 0;\r\n}\r\n\r\n.type,\r\n.extra {\r\n color: colors.$grijs-60;\r\n}\r\n\r\n.extra {\r\n font-size: typography.$root-font-size-small;\r\n line-height: typography.$root-font-size-small * typography.$line-height-base;\r\n}\r\n","import { Component, Element, Event, EventEmitter, Fragment, h, Listen, Prop, State, VNode, Watch } from \"@stencil/core\";\r\nimport debounce from \"debounce\";\r\nimport { v4 } from \"uuid\";\r\nimport escapeStringRegexp from \"escape-string-regexp\";\r\n\r\nimport { AutosuggestMarkFunction, AutosuggestMarkItem, Suggestion } from \"./autosuggest.interfaces\";\r\n\r\n@Component({\r\n tag: \"dso-autosuggest\",\r\n styleUrl: \"autosuggest.scss\",\r\n scoped: true,\r\n})\r\nexport class Autosuggest {\r\n /**\r\n * The suggestions for the value of the slotted input element. Optionally a\r\n * Suggestion can have a `type` and `item`.\r\n *\r\n * The `type` is used to style the suggestion. `item` can be use to reference\r\n * the original object that was used to create the suggestion.\r\n *\r\n * The value should be null when no suggestions have been fetched.\r\n */\r\n @Prop()\r\n readonly suggestions: Suggestion[] | null = null;\r\n\r\n /**\r\n * Shows progress indicator when fetching results.\r\n */\r\n @Prop()\r\n loading = false;\r\n\r\n /**\r\n * To override progress indicator's default loading label.\r\n */\r\n @Prop()\r\n loadingLabel?: string = \"Een moment geduld.\";\r\n\r\n /**\r\n * To delay progress indicator showing (in ms).\r\n */\r\n @Prop()\r\n loadingDelayed?: number;\r\n\r\n /**\r\n * To show text when no results are found.\r\n */\r\n @Prop()\r\n notFoundLabel?: string;\r\n\r\n /**\r\n * Whether the previous suggestions will be presented when the input gets focus again.\r\n */\r\n @Prop()\r\n suggestOnFocus = false;\r\n\r\n /**\r\n * A function provided by the consumer of the autosuggest component, that returns an array of `AutosuggestMarkItem`s\r\n */\r\n @Prop()\r\n mark?: AutosuggestMarkFunction;\r\n\r\n /**\r\n * Emitted when a suggestion is selected.\r\n * The `detail` property of the `CustomEvent` will contain the selected suggestion.\r\n */\r\n @Event()\r\n dsoSelect!: EventEmitter<Suggestion>;\r\n\r\n /**\r\n * This is emitted debounced for every change for the slotted input type=text element.\r\n */\r\n @Event()\r\n dsoChange!: EventEmitter<string>;\r\n\r\n /**\r\n * Emitted when enter is pressed.\r\n * The `detail` property of the `CustomEvent` will contain the input text.\r\n */\r\n @Event()\r\n dsoSearch!: EventEmitter<string>;\r\n\r\n @Element()\r\n host!: HTMLDsoAutosuggestElement;\r\n\r\n @State()\r\n showSuggestions = false;\r\n\r\n @State()\r\n selectedSuggestion: Suggestion | undefined;\r\n\r\n @State()\r\n notFound = false;\r\n\r\n @State()\r\n showLoading = false;\r\n\r\n @Watch(\"suggestions\")\r\n suggestionsWatcher() {\r\n this.resetSelectedSuggestion();\r\n\r\n if ((!this.showSuggestions || !this.notFound) && this.inputValue) {\r\n this.openSuggestions();\r\n } else if ((this.showSuggestions || this.notFound) && !this.inputValue) {\r\n this.closeSuggestions();\r\n }\r\n }\r\n\r\n private input?: HTMLInputElement;\r\n\r\n private listbox: HTMLUListElement | undefined;\r\n\r\n private listboxId: string = v4();\r\n\r\n private inputId: string = v4();\r\n\r\n private labelId: string = v4();\r\n\r\n private debouncedEmitValue = debounce((value: string) => {\r\n this.dsoChange.emit(value);\r\n this.debouncedShowLoading();\r\n }, 200);\r\n\r\n private debouncedShowLoading = debounce(() => {\r\n if (this.inputValue) {\r\n this.showLoading = true;\r\n }\r\n }, this.loadingDelayed);\r\n\r\n private inputValue = \"\";\r\n\r\n private onInput = (event: Event) => {\r\n if (!(event.target instanceof HTMLInputElement)) {\r\n return;\r\n // throw new Error(\"event.target is not instanceof HTMLInputElement\"); #2293\r\n }\r\n\r\n this.showLoading = !this.loadingDelayed;\r\n this.inputValue = event.target.value;\r\n this.debouncedEmitValue(event.target.value.match(/(\\S+)/g) ? event.target.value : \"\");\r\n };\r\n\r\n private onFocusIn = () => {\r\n if (this.suggestOnFocus) {\r\n this.openSuggestions();\r\n }\r\n };\r\n\r\n @Listen(\"click\", { target: \"document\" })\r\n onDocumentClick(event: MouseEvent) {\r\n if (\r\n (this.showSuggestions || this.notFound) &&\r\n this.listbox &&\r\n event.target instanceof Node &&\r\n !this.listbox.contains(event.target) &&\r\n this.input !== event.target\r\n ) {\r\n this.closeSuggestions();\r\n }\r\n }\r\n\r\n connectedCallback() {\r\n setTimeout(() => {\r\n const input = this.host.querySelector('input[type=\"text\"]');\r\n if (!(input instanceof HTMLInputElement)) {\r\n return;\r\n // throw new ReferenceError(\"Mandatory text input not found\"); #2293\r\n }\r\n\r\n this.input = input;\r\n if (input.id) {\r\n this.inputId = input.id;\r\n } else {\r\n input.id = this.inputId;\r\n }\r\n\r\n if (!this.input.labels || this.input.labels.length < 1) {\r\n return;\r\n // throw new ReferenceError(\"Mandatory label for text input not found\"); #2293\r\n }\r\n\r\n const label = this.input.labels[0];\r\n if (label?.id) {\r\n this.labelId = label.id;\r\n } else if (label) {\r\n label.id = this.labelId;\r\n }\r\n\r\n this.input.setAttribute(\"role\", \"combobox\");\r\n this.input.setAttribute(\"aria-haspopup\", \"listbox\");\r\n this.input.setAttribute(\"aria-controls\", this.listboxId);\r\n this.input.setAttribute(\"aria-expanded\", \"false\");\r\n this.input.setAttribute(\"autocomplete\", \"off\");\r\n this.input.setAttribute(\"aria-autocomplete\", \"list\");\r\n this.input.setAttribute(\"aria-activedescendant\", \"\");\r\n this.input.addEventListener(\"input\", this.onInput);\r\n this.input.addEventListener(\"keydown\", this.onKeyDown);\r\n this.input.addEventListener(\"focusin\", this.onFocusIn);\r\n });\r\n }\r\n\r\n disconnectedCallback() {\r\n this.input?.removeEventListener(\"input\", this.onInput);\r\n this.input?.removeEventListener(\"keydown\", this.onKeyDown);\r\n this.input?.removeEventListener(\"focusin\", this.onFocusIn);\r\n }\r\n\r\n private showInputValueNotFound(text: string) {\r\n return this.processAutosuggestMarkItems(this.markTerms(text, this.input?.value.split(\" \").filter((t) => t) ?? []));\r\n }\r\n\r\n private handleMark(\r\n suggestion: Suggestion,\r\n text: string,\r\n type?: \"value\" | \"type\" | \"extra\",\r\n extraIndex?: number,\r\n ): (VNode | string)[] {\r\n if (this.mark && type) {\r\n return this.processAutosuggestMarkItems(this.mark(suggestion, text, type, extraIndex));\r\n }\r\n return this.processAutosuggestMarkItems(this.markTerms(text, this.input?.value.split(\" \").filter((t) => t) ?? []));\r\n }\r\n\r\n private markTerms(suggestionValue: string, terms: string[]): AutosuggestMarkItem[] {\r\n if (!suggestionValue || !terms || terms.length === 0 || terms[0] === undefined) {\r\n return [\"\"];\r\n }\r\n\r\n const termRegex = new RegExp(`(${escapeStringRegexp(terms[0])})`, \"gi\");\r\n\r\n return suggestionValue.split(termRegex).reduce((total: AutosuggestMarkItem[], valuePart: string) => {\r\n if (!valuePart) {\r\n total.push(valuePart);\r\n } else if (termRegex.test(valuePart)) {\r\n total.push({ mark: valuePart });\r\n } else if (terms.length === 1) {\r\n total.push(valuePart);\r\n } else {\r\n total.push(...this.markTerms(valuePart, terms.slice(1)));\r\n }\r\n\r\n return total;\r\n }, []);\r\n }\r\n\r\n private processAutosuggestMarkItems(items: AutosuggestMarkItem[]): (VNode | string)[] {\r\n if (items.length === 0) {\r\n return [\"\"];\r\n }\r\n\r\n return items.map((item) => {\r\n if (typeof item === \"object\") {\r\n return <mark>{item.mark}</mark>;\r\n }\r\n return item;\r\n });\r\n }\r\n\r\n private selectSuggestion(suggestion: Suggestion) {\r\n this.selectedSuggestion = suggestion;\r\n\r\n this.input?.setAttribute(\"aria-activedescendant\", this.listboxItemId(suggestion));\r\n }\r\n\r\n private selectFirstSuggestion() {\r\n if (!this.suggestions) {\r\n return;\r\n }\r\n\r\n this.selectedSuggestion = this.suggestions[0];\r\n\r\n if (this.selectedSuggestion) {\r\n this.input?.setAttribute(\"aria-activedescendant\", this.listboxItemId(this.selectedSuggestion));\r\n }\r\n }\r\n\r\n private selectLastSuggestion() {\r\n if (!this.suggestions) {\r\n return;\r\n }\r\n\r\n this.selectedSuggestion = this.suggestions[this.suggestions.length - 1];\r\n\r\n if (this.selectedSuggestion) {\r\n this.input?.setAttribute(\"aria-activedescendant\", this.listboxItemId(this.selectedSuggestion));\r\n }\r\n }\r\n\r\n private selectNextSuggestion() {\r\n if (!this.suggestions) {\r\n return;\r\n }\r\n\r\n const index = this.selectedSuggestion ? this.suggestions.indexOf(this.selectedSuggestion) : -1;\r\n\r\n this.selectedSuggestion = this.suggestions[index + 1] ?? this.suggestions[0];\r\n\r\n if (this.selectedSuggestion) {\r\n this.input?.setAttribute(\"aria-activedescendant\", this.listboxItemId(this.selectedSuggestion));\r\n }\r\n }\r\n\r\n private selectPreviousSuggestion() {\r\n if (!this.suggestions) {\r\n return;\r\n }\r\n\r\n const index = this.selectedSuggestion ? this.suggestions.indexOf(this.selectedSuggestion) : 0;\r\n\r\n this.selectedSuggestion = this.suggestions[index - 1] ?? this.suggestions[this.suggestions.length - 1];\r\n\r\n if (this.selectedSuggestion) {\r\n this.input?.setAttribute(\"aria-activedescendant\", this.listboxItemId(this.selectedSuggestion));\r\n }\r\n }\r\n\r\n private resetSelectedSuggestion() {\r\n this.showLoading = !this.loadingDelayed;\r\n this.notFound = false;\r\n this.selectedSuggestion = undefined;\r\n this.input?.setAttribute(\"aria-activedescendant\", \"\");\r\n }\r\n\r\n private openSuggestions(selectSuggestion?: \"first\" | \"last\") {\r\n this.showSuggestions = (this.suggestions && this.suggestions.length > 0) ?? false;\r\n this.notFound = this.suggestions?.length === 0 ?? false;\r\n this.input?.setAttribute(\"aria-expanded\", (this.showSuggestions || this.notFound).toString());\r\n\r\n if (this.showSuggestions && selectSuggestion === \"first\") {\r\n this.selectFirstSuggestion();\r\n } else if (this.showSuggestions && selectSuggestion === \"last\") {\r\n this.selectLastSuggestion();\r\n }\r\n }\r\n\r\n private closeSuggestions() {\r\n this.showSuggestions = false;\r\n this.notFound = false;\r\n this.input?.setAttribute(\"aria-expanded\", \"false\");\r\n this.selectFirstSuggestion();\r\n }\r\n\r\n private pickSelectedValue() {\r\n if (this.selectedSuggestion && this.showSuggestions) {\r\n this.dsoSelect.emit(this.selectedSuggestion);\r\n } else {\r\n this.dsoSearch.emit(this.input?.value);\r\n }\r\n\r\n this.closeSuggestions();\r\n }\r\n\r\n private onKeyDown = (event: KeyboardEvent) => {\r\n if (event.defaultPrevented || this.loading) {\r\n return;\r\n }\r\n\r\n switch (event.key) {\r\n case \"ArrowDown\":\r\n if (!this.showSuggestions) {\r\n this.openSuggestions(\"first\");\r\n } else {\r\n this.selectNextSuggestion();\r\n }\r\n\r\n break;\r\n\r\n case \"ArrowUp\":\r\n if (!this.showSuggestions) {\r\n this.openSuggestions(\"last\");\r\n } else {\r\n this.selectPreviousSuggestion();\r\n }\r\n\r\n break;\r\n\r\n case \"Tab\":\r\n this.closeSuggestions();\r\n return;\r\n\r\n case \"Escape\":\r\n this.closeSuggestions();\r\n break;\r\n\r\n case \"Enter\":\r\n this.pickSelectedValue();\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 listboxItemId(suggestion: Suggestion): string {\r\n if (!this.suggestions) {\r\n return \"\";\r\n }\r\n return `${this.inputId}-${this.suggestions.indexOf(suggestion) + 1}`;\r\n }\r\n\r\n private getChunkedExtras(extras: string[]): string[][] {\r\n return extras.reduce((resultArray: string[][], extra, index) => {\r\n const chunkIndex = Math.floor(index / 2);\r\n\r\n if (!resultArray[chunkIndex]) {\r\n resultArray[chunkIndex] = [];\r\n }\r\n resultArray[chunkIndex]?.push(extra);\r\n return resultArray;\r\n }, []);\r\n }\r\n\r\n render() {\r\n return (\r\n <>\r\n <slot />\r\n {this.loading && this.showLoading ? (\r\n <div class=\"autosuggest-progress-box\">\r\n <dso-progress-indicator label={this.loadingLabel}></dso-progress-indicator>\r\n </div>\r\n ) : (\r\n <ul\r\n role=\"listbox\"\r\n aria-live=\"polite\"\r\n id={this.listboxId}\r\n aria-labelledby={this.labelId}\r\n ref={(element) => (this.listbox = element)}\r\n hidden={!this.showSuggestions && !this.notFound}\r\n >\r\n {(this.showSuggestions &&\r\n this.suggestions &&\r\n this.suggestions.map((suggestion) => (\r\n <li\r\n role=\"option\"\r\n id={this.listboxItemId(suggestion)}\r\n key={suggestion.value}\r\n onMouseEnter={() => this.selectSuggestion(suggestion)}\r\n onMouseLeave={() => this.resetSelectedSuggestion()}\r\n onClick={() => this.pickSelectedValue()}\r\n aria-selected={(suggestion === this.selectedSuggestion).toString()}\r\n aria-label={suggestion.value}\r\n >\r\n <div class=\"suggestion-row\">\r\n <span class=\"value\">{this.handleMark(suggestion, suggestion.value, \"value\")}</span>\r\n {suggestion.type ? (\r\n <span class=\"type\">{this.handleMark(suggestion, suggestion.type, \"type\")}</span>\r\n ) : undefined}\r\n </div>\r\n {suggestion.extras &&\r\n this.getChunkedExtras(suggestion.extras).map((chunk, index) => (\r\n <div class=\"suggestion-row\">\r\n {chunk.map((c, i) => (\r\n <span class=\"extra\">{this.handleMark(suggestion, c, \"extra\", index * 2 + i)}</span>\r\n ))}\r\n </div>\r\n ))}\r\n </li>\r\n ))) ||\r\n (this.notFound && (\r\n <li>\r\n <span class=\"value\">\r\n {!this.notFoundLabel ? (\r\n this.showInputValueNotFound(`${this.inputValue} is niet gevonden.`)\r\n ) : (\r\n <span>{this.notFoundLabel}</span>\r\n )}\r\n </span>\r\n </li>\r\n ))}\r\n </ul>\r\n )}\r\n </>\r\n );\r\n }\r\n}\r\n"],"version":3}
1
+ {"file":"dso-autosuggest.entry.js","mappings":"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","names":[],"sources":["../../node_modules/escape-string-regexp/index.js","src/components/autosuggest/autosuggest.scss?tag=dso-autosuggest&encapsulation=scoped","src/components/autosuggest/autosuggest.tsx"],"sourcesContent":["export default function escapeStringRegexp(string) {\n\tif (typeof string !== 'string') {\n\t\tthrow new TypeError('Expected a string');\n\t}\n\n\t// Escape characters with special meaning either inside or outside character sets.\n\t// Use a simple backslash escape when it’s always valid, and a `\\xnn` escape when the simpler form would be disallowed by Unicode patterns’ stricter grammar.\n\treturn string\n\t\t.replace(/[|\\\\{}()[\\]^$+*?.]/g, '\\\\$&')\n\t\t.replace(/-/g, '\\\\x2d');\n}\n","@use \"~dso-toolkit/src/variables/units\";\r\n@use \"~dso-toolkit/src/variables/colors\";\r\n@use \"~dso-toolkit/src/variables/scaffolding\";\r\n@use \"~dso-toolkit/src/variables/typography\";\r\n@use \"~dso-toolkit/src/variables/zindex\";\r\n\r\n@use \"autosuggest.variables\" as core-autosuggest-variables;\r\n\r\n:host {\r\n display: block;\r\n position: relative;\r\n}\r\n\r\n.listbox-container {\r\n inset-inline: 0;\r\n inset-block-start: 100%;\r\n block-size: auto;\r\n max-block-size: var(--max-block-size);\r\n min-block-size: core-autosuggest-variables.$listbox-min-block-size;\r\n overflow-y: auto;\r\n position: absolute;\r\n z-index: zindex.$autosuggest;\r\n}\r\n\r\nul,\r\n.autosuggest-progress-box {\r\n background-clip: padding-box;\r\n background-color: core-autosuggest-variables.$background-color;\r\n border: core-autosuggest-variables.$listbox-border-width solid core-autosuggest-variables.$border-color;\r\n border-radius: scaffolding.$border-radius-base;\r\n box-shadow: core-autosuggest-variables.$box-shadow;\r\n list-style-type: none;\r\n margin-block: 0;\r\n}\r\n\r\n.autosuggest-progress-box {\r\n padding-block: units.$u1 * 1.5;\r\n padding-inline: units.$u1;\r\n}\r\n\r\nul {\r\n padding-block: core-autosuggest-variables.$listbox-padding-block;\r\n padding-inline: 0;\r\n\r\n li {\r\n padding-block: core-autosuggest-variables.$list-item-padding-block;\r\n padding-inline: units.$u2;\r\n\r\n .suggestion-row {\r\n display: flex;\r\n justify-content: space-between;\r\n }\r\n }\r\n}\r\n\r\nli[aria-selected=\"true\"] {\r\n cursor: pointer;\r\n background-color: colors.$grasgroen;\r\n\r\n &,\r\n .type,\r\n .extra {\r\n color: colors.$wit;\r\n }\r\n}\r\n\r\nmark {\r\n font-weight: 700;\r\n background-color: inherit;\r\n color: inherit;\r\n padding: 0;\r\n}\r\n\r\n.type,\r\n.extra {\r\n color: colors.$grijs-60;\r\n}\r\n\r\n.extra {\r\n font-size: typography.$root-font-size-small;\r\n line-height: typography.$root-font-size-small * typography.$line-height-base;\r\n}\r\n","import { Component, Element, Event, EventEmitter, Fragment, h, Listen, Prop, State, VNode, Watch } from \"@stencil/core\";\r\nimport debounce from \"debounce\";\r\nimport { v4 } from \"uuid\";\r\nimport escapeStringRegexp from \"escape-string-regexp\";\r\n\r\nimport { AutosuggestMarkFunction, AutosuggestMarkItem, Suggestion } from \"./autosuggest.interfaces\";\r\n\r\nconst maxSuggestionsViewable = 10;\r\nconst listboxPaddingBlock = 8;\r\nconst listboxBorderWidth = 1;\r\n\r\n@Component({\r\n tag: \"dso-autosuggest\",\r\n styleUrl: \"autosuggest.scss\",\r\n scoped: true,\r\n})\r\nexport class Autosuggest {\r\n /**\r\n * The suggestions for the value of the slotted input element. Optionally a\r\n * Suggestion can have a `type` and `item`.\r\n *\r\n * The `type` is used to style the suggestion. `item` can be use to reference\r\n * the original object that was used to create the suggestion.\r\n *\r\n * The value should be null when no suggestions have been fetched.\r\n */\r\n @Prop()\r\n readonly suggestions: Suggestion[] | null = null;\r\n\r\n /**\r\n * Shows progress indicator when fetching results.\r\n */\r\n @Prop()\r\n loading = false;\r\n\r\n /**\r\n * To override progress indicator's default loading label.\r\n */\r\n @Prop()\r\n loadingLabel?: string = \"Een moment geduld.\";\r\n\r\n /**\r\n * To delay progress indicator showing (in ms).\r\n */\r\n @Prop()\r\n loadingDelayed?: number;\r\n\r\n /**\r\n * To show text when no results are found.\r\n */\r\n @Prop()\r\n notFoundLabel?: string;\r\n\r\n /**\r\n * Whether the previous suggestions will be presented when the input gets focus again.\r\n */\r\n @Prop()\r\n suggestOnFocus = false;\r\n\r\n /**\r\n * A function provided by the consumer of the autosuggest component, that returns an array of `AutosuggestMarkItem`s\r\n */\r\n @Prop()\r\n mark?: AutosuggestMarkFunction;\r\n\r\n /**\r\n * Emitted when a suggestion is selected.\r\n * The `detail` property of the `CustomEvent` will contain the selected suggestion.\r\n */\r\n @Event()\r\n dsoSelect!: EventEmitter<Suggestion>;\r\n\r\n /**\r\n * This is emitted debounced for every change for the slotted input type=text element.\r\n */\r\n @Event()\r\n dsoChange!: EventEmitter<string>;\r\n\r\n /**\r\n * Emitted when enter is pressed.\r\n * The `detail` property of the `CustomEvent` will contain the input text.\r\n */\r\n @Event()\r\n dsoSearch!: EventEmitter<string>;\r\n\r\n @Element()\r\n host!: HTMLDsoAutosuggestElement;\r\n\r\n @State()\r\n showSuggestions = false;\r\n\r\n @State()\r\n selectedSuggestion: Suggestion | undefined;\r\n\r\n @State()\r\n notFound = false;\r\n\r\n @State()\r\n showLoading = false;\r\n\r\n @State()\r\n listItemBlockSize = 0;\r\n\r\n @State()\r\n listboxContainerMaxBlockSize = 0;\r\n\r\n @Watch(\"suggestions\")\r\n suggestionsWatcher() {\r\n this.resetSelectedSuggestion();\r\n\r\n if ((!this.showSuggestions || !this.notFound) && this.inputValue) {\r\n this.openSuggestions();\r\n } else if ((this.showSuggestions || this.notFound) && !this.inputValue) {\r\n this.closeSuggestions();\r\n }\r\n }\r\n\r\n private input?: HTMLInputElement;\r\n\r\n private listboxContainer: HTMLDsoScrollableElement | undefined;\r\n\r\n private listbox: HTMLUListElement | undefined;\r\n\r\n private listboxItems: HTMLLIElement[] = [];\r\n\r\n private listboxId: string = v4();\r\n\r\n private inputId: string = v4();\r\n\r\n private labelId: string = v4();\r\n\r\n private resizeObserver = new ResizeObserver(debounce(() => this.setListboxContainerMaxBlockSize(), 150));\r\n\r\n private debouncedEmitValue = debounce((value: string) => {\r\n this.dsoChange.emit(value);\r\n this.debouncedShowLoading();\r\n }, 200);\r\n\r\n private debouncedShowLoading = debounce(() => {\r\n if (this.inputValue) {\r\n this.showLoading = true;\r\n }\r\n }, this.loadingDelayed);\r\n\r\n private inputValue = \"\";\r\n\r\n private onInput = (event: Event) => {\r\n if (!(event.target instanceof HTMLInputElement)) {\r\n return;\r\n // throw new Error(\"event.target is not instanceof HTMLInputElement\"); #2293\r\n }\r\n\r\n this.showLoading = !this.loadingDelayed;\r\n this.inputValue = event.target.value;\r\n this.debouncedEmitValue(event.target.value.match(/(\\S+)/g) ? event.target.value : \"\");\r\n };\r\n\r\n private onFocusIn = () => {\r\n if (this.suggestOnFocus) {\r\n this.openSuggestions();\r\n }\r\n };\r\n\r\n @Listen(\"click\", { target: \"document\" })\r\n onDocumentClick(event: MouseEvent) {\r\n if (\r\n (this.showSuggestions || this.notFound) &&\r\n this.listbox &&\r\n event.target instanceof Node &&\r\n !this.listbox.contains(event.target) &&\r\n this.input !== event.target\r\n ) {\r\n this.closeSuggestions();\r\n }\r\n }\r\n\r\n componentDidRender() {\r\n this.setListboxContainerMaxBlockSize();\r\n }\r\n\r\n connectedCallback() {\r\n setTimeout(() => {\r\n const input = this.host.querySelector('input[type=\"text\"]');\r\n if (!(input instanceof HTMLInputElement)) {\r\n return;\r\n // throw new ReferenceError(\"Mandatory text input not found\"); #2293\r\n }\r\n\r\n this.input = input;\r\n if (input.id) {\r\n this.inputId = input.id;\r\n } else {\r\n input.id = this.inputId;\r\n }\r\n\r\n if (!this.input.labels || this.input.labels.length < 1) {\r\n return;\r\n // throw new ReferenceError(\"Mandatory label for text input not found\"); #2293\r\n }\r\n\r\n const label = this.input.labels[0];\r\n if (label?.id) {\r\n this.labelId = label.id;\r\n } else if (label) {\r\n label.id = this.labelId;\r\n }\r\n\r\n this.input.setAttribute(\"role\", \"combobox\");\r\n this.input.setAttribute(\"aria-haspopup\", \"listbox\");\r\n this.input.setAttribute(\"aria-controls\", this.listboxId);\r\n this.input.setAttribute(\"aria-expanded\", \"false\");\r\n this.input.setAttribute(\"autocomplete\", \"off\");\r\n this.input.setAttribute(\"aria-autocomplete\", \"list\");\r\n this.input.setAttribute(\"aria-activedescendant\", \"\");\r\n this.input.addEventListener(\"input\", this.onInput);\r\n this.input.addEventListener(\"keydown\", this.onKeyDown);\r\n this.input.addEventListener(\"focusin\", this.onFocusIn);\r\n\r\n window.addEventListener(\"resize\", this.onWindowResize);\r\n\r\n document.addEventListener(\"scrollend\", this.onScrollend);\r\n\r\n this.resizeObserver.observe(this.host);\r\n\r\n this.setListboxContainerMaxBlockSize();\r\n });\r\n }\r\n\r\n disconnectedCallback() {\r\n this.input?.removeEventListener(\"input\", this.onInput);\r\n this.input?.removeEventListener(\"keydown\", this.onKeyDown);\r\n this.input?.removeEventListener(\"focusin\", this.onFocusIn);\r\n\r\n window.removeEventListener(\"resize\", this.onWindowResize);\r\n\r\n document.removeEventListener(\"scrollend\", this.onScrollend);\r\n\r\n this.resizeObserver.disconnect();\r\n }\r\n\r\n private onWindowResize = debounce(() => this.setListboxContainerMaxBlockSize(), 150);\r\n\r\n private onScrollend = () => this.setListboxContainerMaxBlockSize();\r\n\r\n private setListboxContainerMaxBlockSize(): void {\r\n if (!this.listboxContainer || !this.showSuggestions) {\r\n return;\r\n }\r\n\r\n if (this.listboxItems[0] && this.showSuggestions) {\r\n this.listItemBlockSize = this.listboxItems[0].getBoundingClientRect().height;\r\n }\r\n\r\n const availableBlockSize = window.innerHeight - this.host.getBoundingClientRect().bottom;\r\n const listboxMaxBlockSize =\r\n this.listItemBlockSize * maxSuggestionsViewable + 2 * listboxPaddingBlock + 2 * listboxBorderWidth;\r\n\r\n if (availableBlockSize > this.listItemBlockSize) {\r\n if (availableBlockSize < listboxMaxBlockSize) {\r\n this.listboxContainerMaxBlockSize = availableBlockSize - 2 * listboxPaddingBlock;\r\n } else {\r\n this.listboxContainerMaxBlockSize = listboxMaxBlockSize;\r\n }\r\n }\r\n }\r\n\r\n private showInputValueNotFound(text: string) {\r\n return this.processAutosuggestMarkItems(this.markTerms(text, this.input?.value.split(\" \").filter((t) => t) ?? []));\r\n }\r\n\r\n private handleMark(\r\n suggestion: Suggestion,\r\n text: string,\r\n type?: \"value\" | \"type\" | \"extra\",\r\n extraIndex?: number,\r\n ): (VNode | string)[] {\r\n if (this.mark && type) {\r\n return this.processAutosuggestMarkItems(this.mark(suggestion, text, type, extraIndex));\r\n }\r\n return this.processAutosuggestMarkItems(this.markTerms(text, this.input?.value.split(\" \").filter((t) => t) ?? []));\r\n }\r\n\r\n private markTerms(suggestionValue: string, terms: string[]): AutosuggestMarkItem[] {\r\n if (!suggestionValue || !terms || terms.length === 0 || terms[0] === undefined) {\r\n return [\"\"];\r\n }\r\n\r\n const termRegex = new RegExp(`(${escapeStringRegexp(terms[0])})`, \"gi\");\r\n\r\n return suggestionValue.split(termRegex).reduce((total: AutosuggestMarkItem[], valuePart: string) => {\r\n if (!valuePart) {\r\n total.push(valuePart);\r\n } else if (termRegex.test(valuePart)) {\r\n total.push({ mark: valuePart });\r\n } else if (terms.length === 1) {\r\n total.push(valuePart);\r\n } else {\r\n total.push(...this.markTerms(valuePart, terms.slice(1)));\r\n }\r\n\r\n return total;\r\n }, []);\r\n }\r\n\r\n private processAutosuggestMarkItems(items: AutosuggestMarkItem[]): (VNode | string)[] {\r\n if (items.length === 0) {\r\n return [\"\"];\r\n }\r\n\r\n return items.map((item) => {\r\n if (typeof item === \"object\") {\r\n return <mark>{item.mark}</mark>;\r\n }\r\n return item;\r\n });\r\n }\r\n\r\n private selectSuggestion(suggestion: Suggestion) {\r\n this.selectedSuggestion = suggestion;\r\n\r\n this.setAriaActiveDescendant();\r\n }\r\n\r\n private selectFirstSuggestion() {\r\n if (!this.suggestions) {\r\n return;\r\n }\r\n\r\n this.selectedSuggestion = this.suggestions[0];\r\n\r\n this.setAriaActiveDescendant(true);\r\n }\r\n\r\n private selectLastSuggestion() {\r\n if (!this.suggestions) {\r\n return;\r\n }\r\n\r\n this.selectedSuggestion = this.suggestions[this.suggestions.length - 1];\r\n\r\n this.setAriaActiveDescendant(true);\r\n }\r\n\r\n private selectNextSuggestion() {\r\n if (!this.suggestions) {\r\n return;\r\n }\r\n\r\n const index = this.selectedSuggestion ? this.suggestions.indexOf(this.selectedSuggestion) : -1;\r\n\r\n this.selectedSuggestion = this.suggestions[index + 1] ?? this.suggestions[0];\r\n\r\n this.setAriaActiveDescendant(true);\r\n }\r\n\r\n private selectPreviousSuggestion() {\r\n if (!this.suggestions) {\r\n return;\r\n }\r\n\r\n const index = this.selectedSuggestion ? this.suggestions.indexOf(this.selectedSuggestion) : 0;\r\n\r\n this.selectedSuggestion = this.suggestions[index - 1] ?? this.suggestions[this.suggestions.length - 1];\r\n\r\n this.setAriaActiveDescendant(true);\r\n }\r\n\r\n private setAriaActiveDescendant(scroll = false): void {\r\n if (this.selectedSuggestion) {\r\n const id = this.listboxItemId(this.selectedSuggestion);\r\n this.input?.setAttribute(\"aria-activedescendant\", id);\r\n if (scroll) {\r\n document.getElementById(id)?.scrollIntoView({ block: \"nearest\" });\r\n }\r\n }\r\n }\r\n\r\n private resetSelectedSuggestion() {\r\n this.showLoading = !this.loadingDelayed;\r\n this.notFound = false;\r\n this.selectedSuggestion = undefined;\r\n this.input?.setAttribute(\"aria-activedescendant\", \"\");\r\n }\r\n\r\n private openSuggestions(selectSuggestion?: \"first\" | \"last\") {\r\n this.showSuggestions = (this.suggestions && this.suggestions.length > 0) ?? false;\r\n this.notFound = this.suggestions?.length === 0 ?? false;\r\n this.input?.setAttribute(\"aria-expanded\", (this.showSuggestions || this.notFound).toString());\r\n\r\n if (this.showSuggestions && selectSuggestion === \"first\") {\r\n this.selectFirstSuggestion();\r\n } else if (this.showSuggestions && selectSuggestion === \"last\") {\r\n this.selectLastSuggestion();\r\n }\r\n }\r\n\r\n private closeSuggestions() {\r\n this.showSuggestions = false;\r\n this.notFound = false;\r\n this.input?.setAttribute(\"aria-expanded\", \"false\");\r\n this.selectFirstSuggestion();\r\n }\r\n\r\n private pickSelectedValue() {\r\n if (this.selectedSuggestion && this.showSuggestions) {\r\n this.dsoSelect.emit(this.selectedSuggestion);\r\n } else {\r\n this.dsoSearch.emit(this.input?.value);\r\n }\r\n\r\n this.closeSuggestions();\r\n }\r\n\r\n private onKeyDown = (event: KeyboardEvent) => {\r\n if (event.defaultPrevented || this.loading) {\r\n return;\r\n }\r\n\r\n switch (event.key) {\r\n case \"ArrowDown\":\r\n if (!this.showSuggestions) {\r\n this.openSuggestions(\"first\");\r\n } else {\r\n this.selectNextSuggestion();\r\n }\r\n\r\n break;\r\n\r\n case \"ArrowUp\":\r\n if (!this.showSuggestions) {\r\n this.openSuggestions(\"last\");\r\n } else {\r\n this.selectPreviousSuggestion();\r\n }\r\n\r\n break;\r\n\r\n case \"Tab\":\r\n this.closeSuggestions();\r\n return;\r\n\r\n case \"Escape\":\r\n this.closeSuggestions();\r\n break;\r\n\r\n case \"Enter\":\r\n this.pickSelectedValue();\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 listboxItemId(suggestion: Suggestion): string {\r\n if (!this.suggestions) {\r\n return \"\";\r\n }\r\n return `${this.inputId}-${this.suggestions.indexOf(suggestion) + 1}`;\r\n }\r\n\r\n private getChunkedExtras(extras: string[]): string[][] {\r\n return extras.reduce((resultArray: string[][], extra, index) => {\r\n const chunkIndex = Math.floor(index / 2);\r\n\r\n if (!resultArray[chunkIndex]) {\r\n resultArray[chunkIndex] = [];\r\n }\r\n resultArray[chunkIndex]?.push(extra);\r\n return resultArray;\r\n }, []);\r\n }\r\n\r\n render() {\r\n this.listboxItems = [];\r\n\r\n return (\r\n <>\r\n <slot />\r\n {this.loading && this.showLoading ? (\r\n <div class=\"autosuggest-progress-box\">\r\n <dso-progress-indicator label={this.loadingLabel}></dso-progress-indicator>\r\n </div>\r\n ) : (\r\n <dso-scrollable\r\n class=\"listbox-container\"\r\n ref={(element) => (this.listboxContainer = element)}\r\n style={{ \"--max-block-size\": `${this.listboxContainerMaxBlockSize}px` }}\r\n >\r\n <ul\r\n role=\"listbox\"\r\n aria-live=\"polite\"\r\n id={this.listboxId}\r\n aria-labelledby={this.labelId}\r\n ref={(element) => (this.listbox = element)}\r\n hidden={!this.showSuggestions && !this.notFound}\r\n >\r\n {(this.showSuggestions &&\r\n this.suggestions &&\r\n this.suggestions.map((suggestion) => (\r\n <li\r\n role=\"option\"\r\n id={this.listboxItemId(suggestion)}\r\n key={suggestion.value}\r\n onMouseEnter={() => this.selectSuggestion(suggestion)}\r\n onMouseLeave={() => this.resetSelectedSuggestion()}\r\n onClick={() => this.pickSelectedValue()}\r\n aria-selected={(suggestion === this.selectedSuggestion).toString()}\r\n aria-label={suggestion.value}\r\n ref={(li) => li && this.listboxItems.push(li)}\r\n >\r\n <div class=\"suggestion-row\">\r\n <span class=\"value\">{this.handleMark(suggestion, suggestion.value, \"value\")}</span>\r\n {suggestion.type ? (\r\n <span class=\"type\">{this.handleMark(suggestion, suggestion.type, \"type\")}</span>\r\n ) : undefined}\r\n </div>\r\n {suggestion.extras &&\r\n this.getChunkedExtras(suggestion.extras).map((chunk, index) => (\r\n <div class=\"suggestion-row\">\r\n {chunk.map((c, i) => (\r\n <span class=\"extra\">{this.handleMark(suggestion, c, \"extra\", index * 2 + i)}</span>\r\n ))}\r\n </div>\r\n ))}\r\n </li>\r\n ))) ||\r\n (this.notFound && (\r\n <li>\r\n <span class=\"value\">\r\n {!this.notFoundLabel ? (\r\n this.showInputValueNotFound(`${this.inputValue} is niet gevonden.`)\r\n ) : (\r\n <span>{this.notFoundLabel}</span>\r\n )}\r\n </span>\r\n </li>\r\n ))}\r\n </ul>\r\n </dso-scrollable>\r\n )}\r\n </>\r\n );\r\n }\r\n}\r\n"],"version":3}
@@ -10,7 +10,7 @@ const Badge = class {
10
10
  this.status = undefined;
11
11
  }
12
12
  render() {
13
- return (h("span", { key: '2bb9ba75d3f55a887f805727189592504c5e17bd', class: clsx("dso-badge", { [`badge-${this.status}`]: this.status }) }, h("slot", { key: '6242b1b45ca07ef5789fb5f9fde005448235ea4a' })));
13
+ return (h("span", { key: '86bf6774feeac5d0bb55a6bbf9657e573c71e448', class: clsx("dso-badge", { [`badge-${this.status}`]: this.status }) }, h("slot", { key: 'fd3ee9530520cd05144a6039c25567ecf890d270' })));
14
14
  }
15
15
  };
16
16
  Badge.style = DsoBadgeStyle0;
@@ -12,9 +12,9 @@ const Banner = class {
12
12
  this.noIcon = true;
13
13
  }
14
14
  render() {
15
- return (h("section", { key: '4c3db4e3d1cb2b0de13dc2d7fd562b591102a1d4', class: clsx("dso-banner", `alert-${this.status}`, {
15
+ return (h("section", { key: '544f7c34467bed92b057c17e7349a7571f3bf207', class: clsx("dso-banner", `alert-${this.status}`, {
16
16
  "dso-compact": this.compact,
17
- }), role: "alert" }, h("slot", { key: '7a6dc8d1e60f63a28fbd5762b37e1e6744ee0ea6' })));
17
+ }), role: "alert" }, h("slot", { key: '8ffba655bc2391bea07fec89d70ddfb2666e843e' })));
18
18
  }
19
19
  };
20
20
  Banner.style = DsoBannerStyle0;
@@ -9,7 +9,7 @@ const CardContainer = class {
9
9
  this.mode = "list";
10
10
  }
11
11
  render() {
12
- return (h(Fragment, null, this.mode === "list" && (h("ul", { key: '6dc72f5395a0cdcb8fd11a2882ae94d946d14f06', class: "dso-card-list" }, h("slot", { key: 'e2c5ab66a35ae0db798bec1e62e382c5be4c8ff7' }))), this.mode === "grid" && (h("div", { key: '4a6d756341eaf9f3d79f1ee07bf09831669bfaa8', class: "dso-card-grid" }, h("slot", { key: '676e0db13a13bfaad87a0d5894038539c43e09c8' })))));
12
+ return (h(Fragment, null, this.mode === "list" && (h("ul", { key: '274f28d7b6fb8b9c0d35d48fbb3badcce3db6a77', class: "dso-card-list" }, h("slot", { key: '8cc91f5bafb570671f0f305804d71bf386420e5d' }))), this.mode === "grid" && (h("div", { key: '7fb30a76aba0d22cf2c474ba0a54d5985efd4519', class: "dso-card-grid" }, h("slot", { key: '3f208ae84706f29c469f31effd0d7649be5aa543' })))));
13
13
  }
14
14
  };
15
15
  CardContainer.style = DsoCardContainerStyle0;
@@ -62,9 +62,9 @@ const Card = class {
62
62
  render() {
63
63
  const isSelectable = this.selectableSlottedElement !== null;
64
64
  const hasImage = this.imageSlottedElement !== null;
65
- return (h(Host, { key: '16df08d7deb23d44de3919a212da749eb24b2aa3', onClick: (e) => this.clickEventHandler(e), "is-selectable": isSelectable, "has-image": hasImage }, h("div", { key: '06f68ba992964e076cc91b1008b3d90654660eb8', class: "dso-card-selectable", hidden: !isSelectable }, h("slot", { key: 'fdf924e13b4be544bd96999592a2d9c1fca43b93', name: "selectable" })), h("div", { key: '4e788d7258092d3c8b648502fa215a0286454cef', class: "dso-card-image", hidden: !hasImage }, h("slot", { key: '48f5c3ccfcc61d72a33a4f3b596cea0f766a328d', name: "image" })), h("div", { key: 'c2baf8f68141776219211d78c610312b4979b5f6', class: "dso-card-heading" }, this.headingSlottedElement instanceof HTMLAnchorElement || !this.href ? (h("slot", { name: "heading" })) : (((!this.mode || !["download", "extern"].includes(this.mode)) && (h("a", { href: this.href, class: "heading-anchor" }, h("slot", { name: "heading" }), h("dso-icon", { icon: "chevron-right" })))) ||
65
+ return (h(Host, { key: 'aa243fc06e00c3f93ec6f75e516a4f3c16dd6681', onClick: (e) => this.clickEventHandler(e), "is-selectable": isSelectable, "has-image": hasImage }, h("div", { key: 'b9e52fb2a05cf2af58507b9d9ece0865788bb404', class: "dso-card-selectable", hidden: !isSelectable }, h("slot", { key: 'ce472bb5847d4ef27ec223f4906575b928676908', name: "selectable" })), h("div", { key: '7c07d63522fe54adba3f1c1d03db4c6fd59a6535', class: "dso-card-image", hidden: !hasImage }, h("slot", { key: '717f5ea5872fb1c31330e97b66860d35e8e30e11', name: "image" })), h("div", { key: 'c714b7696b615fa3f1ca6993abc9fcc1ce9a133f', class: "dso-card-heading" }, this.headingSlottedElement instanceof HTMLAnchorElement || !this.href ? (h("slot", { name: "heading" })) : (((!this.mode || !["download", "extern"].includes(this.mode)) && (h("a", { href: this.href, class: "heading-anchor" }, h("slot", { name: "heading" }), h("dso-icon", { icon: "chevron-right" })))) ||
66
66
  (this.mode === "extern" && (h("a", { href: this.href, class: "heading-anchor", target: "_blank", rel: "noopener noreferrer" }, h("slot", { name: "heading" }), h("dso-icon", { icon: "external-link" }), h("span", { class: "sr-only" }, "(Opent andere website in nieuw tabblad)")))) ||
67
- (this.mode === "download" && (h("a", { href: this.href, class: "heading-anchor" }, h("slot", { name: "heading" }), h("dso-icon", { icon: "download" }))))), this.interactionsSlottedElement !== null && h("slot", { key: 'd6885f759a3ac7e44dd44aa5e3a0107dde02a640', name: "interactions" })), h("div", { key: '61dc016e0ac2a82da7555e3c3df8f61104e37c49', class: "dso-card-content" }, h("slot", { key: 'abe3a8a00a3744f456b65fb4d8c6f7be026a68be', name: "content" }))));
67
+ (this.mode === "download" && (h("a", { href: this.href, class: "heading-anchor" }, h("slot", { name: "heading" }), h("dso-icon", { icon: "download" }))))), this.interactionsSlottedElement !== null && h("slot", { key: '5bbd2a3dcb14103ee26ddd3a701c75194e46cb34', name: "interactions" })), h("div", { key: '29cd3bb581a11a53f1790a92d5cff9a39b933873', class: "dso-card-content" }, h("slot", { key: '925b422a88d02f47e3f568ae28c7dd5ec10d63e6', name: "content" }))));
68
68
  }
69
69
  get host() { return getElement(this); }
70
70
  };
@@ -683,14 +683,14 @@ const DsoDatePickerLegacy = class {
683
683
  if (maxDate) {
684
684
  maxYear = Math.min(maxYear, maxDate.getFullYear());
685
685
  }
686
- return (h(Host, { key: 'b3d2e7c01f27e48d26ca81c369d05a45e094c832' }, h("div", { key: 'adcc83d03b59da99459daad8d196100519ae8598', class: { "dso-date": true, "dso-visible": this.visible } }, h("div", { key: '3c8e690cd886af5c9c45f93696b9ebeb376c7035', class: "dso-date__input-wrapper" }, h("input", { key: '7035facb84ae39d5539d05e055f7a5faee73c012', class: "dso-date__input", value: this.value, placeholder: this.localization.placeholder, id: this.identifier, disabled: this.disabled, role: (_a = this.role) !== null && _a !== void 0 ? _a : undefined, required: this.required ? true : undefined, "aria-autocomplete": "none", "aria-invalid": (_b = this.invalid) === null || _b === void 0 ? void 0 : _b.toString(), "aria-describedby": this.describedBy, onInput: this.handleInputChange, onFocus: this.handleFocus, onBlur: this.handleBlur, onKeyUp: this.handleKeyUp, onKeyDown: this.handleKeyDown, autoComplete: "off", ref: (element) => (this.datePickerLegacyInput = element) }), h("button", { key: 'b2edba4d4c5743db852290e753b52d77ef123950', type: "button", class: "dso-date__toggle", onClick: this.toggleOpen, disabled: this.disabled, ref: (element) => (this.datePickerLegacyButton = element) }, h("span", { key: '8670a2db8ed7523ac5eb3d1a58235e5a0cc8289f', class: "dso-date__toggle-icon" }, h("dso-icon", { key: 'f7212888038a682fe74e8f8e6e84221a49f4cb28', icon: "calendar" })), h("span", { key: 'bd9b68a6957d97c0c16159a2a08a348463ca12b5', class: "dso-date__vhidden" }, this.localization.buttonLabel, formattedDate && (h("span", { key: '1f77a53aad38689238da7195247f0c3bbfc2b0d6' }, ", ", this.localization.selectedDateMessage, " ", formattedDate))))), h("div", { key: 'a52db3244f796435c39553e7b94fd3dfa48e1935', class: {
686
+ return (h(Host, { key: 'bd45a450559cde32c9fce77d7996efda0d3628cf' }, h("div", { key: '37ed94d8c7dd2897e6c1e4864b987bf54e1d6f46', class: { "dso-date": true, "dso-visible": this.visible } }, h("div", { key: 'be724e6c87603154090a79d8b4b82af81825c92f', class: "dso-date__input-wrapper" }, h("input", { key: '916104bf00c328759d3e187da42590dd1da0f191', class: "dso-date__input", value: this.value, placeholder: this.localization.placeholder, id: this.identifier, disabled: this.disabled, role: (_a = this.role) !== null && _a !== void 0 ? _a : undefined, required: this.required ? true : undefined, "aria-autocomplete": "none", "aria-invalid": (_b = this.invalid) === null || _b === void 0 ? void 0 : _b.toString(), "aria-describedby": this.describedBy, onInput: this.handleInputChange, onFocus: this.handleFocus, onBlur: this.handleBlur, onKeyUp: this.handleKeyUp, onKeyDown: this.handleKeyDown, autoComplete: "off", ref: (element) => (this.datePickerLegacyInput = element) }), h("button", { key: '67e1ade9d1a5e77c4b8fb6cbbbd2e60167fd4b56', type: "button", class: "dso-date__toggle", onClick: this.toggleOpen, disabled: this.disabled, ref: (element) => (this.datePickerLegacyButton = element) }, h("span", { key: '3b04dfb08f11d2af4574691d6c7f78712e1618f3', class: "dso-date__toggle-icon" }, h("dso-icon", { key: 'b74e8e95543de74cccd20d7b664bc94f80647a22', icon: "calendar" })), h("span", { key: 'bc6451497fb2ead77da282ea8a4d2e8015d1d435', class: "dso-date__vhidden" }, this.localization.buttonLabel, formattedDate && (h("span", { key: '4a1a282f61aafe19b5e046af1aaadb5029bd8c64' }, ", ", this.localization.selectedDateMessage, " ", formattedDate))))), h("div", { key: 'f311dd98c1f9f453c66d9f8d8d37ed76827e1ef8', class: {
687
687
  "dso-date__dialog": true,
688
688
  "is-left": this.direction === "left",
689
689
  "is-active": this.open,
690
- }, role: "dialog", "aria-modal": "true", "aria-hidden": this.open ? "false" : "true", "aria-labelledby": this.dialogLabelId, onTouchMove: this.handleTouchMove, onTouchStart: this.handleTouchStart, onTouchEnd: this.handleTouchEnd }, h("div", { key: '078d2aa2ac865a1d49a2c22c19da137969a3650b', class: "dso-date__dialog-content", onKeyDown: this.handleEscKey }, h("div", { key: '48f76b95bb6a37ea742bcf6bed4c6005eba839a4', class: "dso-date__vhidden dso-date__instructions", "aria-live": "polite" }, this.localization.keyboardInstruction), h("div", { key: 'af746900f6e52f32de832b87a176593e2746cd64', class: "dso-date__mobile", onFocusin: this.disableActiveFocus }, h("label", { key: '6cdc84ecf6372ac9097b8bf5dd643f499691cf61', class: "dso-date__mobile-heading" }, this.localization.calendarHeading), h("button", { key: '05d3293761177ba271c6724b7226ab573962f2d1', class: "dso-date__close", ref: (element) => (this.firstFocusableElement = element), onKeyDown: this.handleFirstFocusableKeydown, onClick: () => this.hide(), type: "button" }, h("dso-icon", { key: '7e5df245b7724e4db5806d5f08638cad0adfb0ef', icon: "times" }), h("span", { key: 'd21e9fb1eff589d88d16ad47e08f220c3d5530dd', class: "dso-date__vhidden" }, this.localization.closeLabel))), h("div", { key: '3d5cb8f2fb76df5de03ffe060a312b79128867a0', class: "dso-date__header", onFocusin: this.disableActiveFocus }, h("div", { key: '559c1774017da99d78f6d11404fa441cbda497d8' }, h("h2", { key: '9e015f5178718c3707c6e28ee9edb51671dacbc4', id: this.dialogLabelId, class: "dso-date__vhidden", "aria-live": "polite" }, this.localization.monthNames[focusedMonth], " ", this.focusedDay.getFullYear()), h("label", { key: '2699da4bbdd56a8508fdc1192318ceb2a2b61600', htmlFor: this.monthSelectId, class: "dso-date__vhidden" }, this.localization.monthSelectLabel), h("div", { key: '8d85382cb79adc212769b43dce0c63e844ac1288', class: "dso-date__select" }, h("select", { key: '7e8f7367d3eea300587b0e6d113a482691fd08fe', id: this.monthSelectId, class: "dso-date__select--month", ref: (element) => (this.monthSelectNode = element), onChange: this.handleMonthSelect }, monthRange(this.localization, selectedYear, minDate, maxDate).map((month) => {
690
+ }, role: "dialog", "aria-modal": "true", "aria-hidden": this.open ? "false" : "true", "aria-labelledby": this.dialogLabelId, onTouchMove: this.handleTouchMove, onTouchStart: this.handleTouchStart, onTouchEnd: this.handleTouchEnd }, h("div", { key: '2a9717a7de164e80557ae31ebe85f57ad83c273e', class: "dso-date__dialog-content", onKeyDown: this.handleEscKey }, h("div", { key: '05aebb2d40c5df0c3aee91678624c16522a49875', class: "dso-date__vhidden dso-date__instructions", "aria-live": "polite" }, this.localization.keyboardInstruction), h("div", { key: 'd5f1eb761cc9619319bd585255b5dc136ebbd4f7', class: "dso-date__mobile", onFocusin: this.disableActiveFocus }, h("label", { key: '7d6c0c8f5df3420e1f5f4082dff4d885a12739c2', class: "dso-date__mobile-heading" }, this.localization.calendarHeading), h("button", { key: 'b0713eab9d8bea21a83f34050e00ab33ff517dfd', class: "dso-date__close", ref: (element) => (this.firstFocusableElement = element), onKeyDown: this.handleFirstFocusableKeydown, onClick: () => this.hide(), type: "button" }, h("dso-icon", { key: '96285bc4d5dc3c236a0775ae89f5d8d170b30df6', icon: "times" }), h("span", { key: 'e7224bd3445123610a1505f28ad0eda52e4579cf', class: "dso-date__vhidden" }, this.localization.closeLabel))), h("div", { key: '038e057a356a9348e6ac1622da6eb06c8cffe8a3', class: "dso-date__header", onFocusin: this.disableActiveFocus }, h("div", { key: 'ab60bd0dabaa748eb1156aaa1a8f9d6f14acabfd' }, h("h2", { key: 'ec61251ead3f2da8313ef6152e4d391cad3107de', id: this.dialogLabelId, class: "dso-date__vhidden", "aria-live": "polite" }, this.localization.monthNames[focusedMonth], " ", this.focusedDay.getFullYear()), h("label", { key: '9257ef291253ceeabd91d43767b8b5bac199cf9c', htmlFor: this.monthSelectId, class: "dso-date__vhidden" }, this.localization.monthSelectLabel), h("div", { key: '4146ccdd8adf69fc5a5e363ac861737572f2cb24', class: "dso-date__select" }, h("select", { key: 'aee34d205c9b151c5ecf64c95a7612608f83d56d', id: this.monthSelectId, class: "dso-date__select--month", ref: (element) => (this.monthSelectNode = element), onChange: this.handleMonthSelect }, monthRange(this.localization, selectedYear, minDate, maxDate).map((month) => {
691
691
  const index = this.localization.monthNames.indexOf(month);
692
692
  return (h("option", { key: month, value: index, selected: index === focusedMonth }, month));
693
- })), h("div", { key: '3aec4bfa9aed416549469c774ca7990334986abb', class: "dso-date__select-label", "aria-hidden": "true" }, h("span", { key: '654fbd89bd61af259af4a4f798f55f450efd8c91' }, this.localization.monthNamesShort[focusedMonth]), h("dso-icon", { key: '8d11e6d7391bed1065c9b2c0ee44f1f6dc0bed73', icon: "chevron-down" }))), h("label", { key: 'c78b8385eda7cfcc2695f0282382ac5aad249f77', htmlFor: this.yearSelectId, class: "dso-date__vhidden" }, this.localization.yearSelectLabel), h("div", { key: '63b47ea8b8ca5a74ed874f4f9ed733174bb48370', class: "dso-date__select" }, h("select", { key: '591e66e848ec4fae139fdccacc8528dec6170de1', id: this.yearSelectId, class: "dso-date__select--year", onChange: this.handleYearSelect }, range(minYear, maxYear).map((year) => (h("option", { key: year, selected: year === focusedYear }, year)))), h("div", { key: 'f977ee13bda31f9ac716f43fa5eb8ec06296d2e9', class: "dso-date__select-label", "aria-hidden": "true" }, h("span", { key: 'e3ecb3b26f76beffb16bf90a2c261e50511ba396' }, this.focusedDay.getFullYear()), h("dso-icon", { key: 'd58cbe75109f9590e037bd215f549b85c32d0c80', icon: "chevron-down" })))), h("div", { key: '5480551f8f0f4a61ea6e74bde86063eb581272d1', class: "dso-date__nav" }, h("button", { key: '8283614fe659f5ac42aaaaaf519aeeaa8285779b', class: "dso-date__prev", onClick: this.handlePreviousMonthClick, disabled: prevMonthDisabled, type: "button" }, h("dso-icon", { key: '4f34550c65c77e1b51ba1c6a8ae8761641f07df5', icon: "chevron-left" }), h("span", { key: 'd7a6cb5244d940146bcc9dd805f98ad5f3f598d8', class: "dso-date__vhidden" }, this.localization.prevMonthLabel)), h("button", { key: '087cc800c8f71573085cb286573a577170ff6fda', class: "dso-date__next", onClick: this.handleNextMonthClick, disabled: nextMonthDisabled, type: "button" }, h("dso-icon", { key: '1d475a20f501a7b6584441df913b331aa511ce1e', icon: "chevron-right" }), h("span", { key: 'f30e4ee5c60cd16202295988021181ddaa61dd99', class: "dso-date__vhidden" }, this.localization.nextMonthLabel)))), h(DatePickerLegacyMonth, { key: '83bdd8b89200fd9efccf36cd84830d24341eb525', selectedDate: valueAsDate, focusedDate: this.focusedDay, onDateSelect: this.handleDaySelect, onKeyboardNavigation: this.handleKeyboardNavigation, labelledById: this.dialogLabelId, localization: this.localization, firstDayOfWeek: this.firstDayOfWeek, focusedDayRef: this.processFocusedDayNode, min: minDate, max: maxDate }))))));
693
+ })), h("div", { key: '0e3bb9e11abb2befa3f8d8fe9fdbef1a882fb572', class: "dso-date__select-label", "aria-hidden": "true" }, h("span", { key: 'a99e4edb857825e983defd70faa488fbb63e7d5d' }, this.localization.monthNamesShort[focusedMonth]), h("dso-icon", { key: '8dee7f423786a3c780c6d13cf95a47e4543d5a70', icon: "chevron-down" }))), h("label", { key: 'd3e756961b5f79283413eb9ccea100df638ffe0d', htmlFor: this.yearSelectId, class: "dso-date__vhidden" }, this.localization.yearSelectLabel), h("div", { key: '559919bc0bc74966743cf43421282cfc4982eb11', class: "dso-date__select" }, h("select", { key: '935763d554bf2b3b317ee68dd658a2d66fd1682b', id: this.yearSelectId, class: "dso-date__select--year", onChange: this.handleYearSelect }, range(minYear, maxYear).map((year) => (h("option", { key: year, selected: year === focusedYear }, year)))), h("div", { key: 'f10faac2bcefe12c699ba01ead2a31e3e72e640c', class: "dso-date__select-label", "aria-hidden": "true" }, h("span", { key: '769212719df55fe4f0cd3f2f59e613de50cbaf28' }, this.focusedDay.getFullYear()), h("dso-icon", { key: '776d3b6f61f44f716a799d97f7d8f79a6ff24472', icon: "chevron-down" })))), h("div", { key: 'e91c90ca602bfbaa80087e0bc6588997ce83bc90', class: "dso-date__nav" }, h("button", { key: '74552a754ca4fbac07745a657cdf7ba75941a0e0', class: "dso-date__prev", onClick: this.handlePreviousMonthClick, disabled: prevMonthDisabled, type: "button" }, h("dso-icon", { key: '87679302c3abd7e21e782d6d8803bfbfbb1b4769', icon: "chevron-left" }), h("span", { key: 'df8e75eeca089cd3857e47417373a4e61c5db7af', class: "dso-date__vhidden" }, this.localization.prevMonthLabel)), h("button", { key: 'b70bf53ab32c11d9bda8081a02b997afa53cc8af', class: "dso-date__next", onClick: this.handleNextMonthClick, disabled: nextMonthDisabled, type: "button" }, h("dso-icon", { key: '4eebf160fff4a8f34fb87e06e6179b55c189dc1e', icon: "chevron-right" }), h("span", { key: '3c7a277b5479974a86c115fe03ee96bc5b784003', class: "dso-date__vhidden" }, this.localization.nextMonthLabel)))), h(DatePickerLegacyMonth, { key: 'ccdd4d209778a9cb46b595599037dec9a6642fe6', selectedDate: valueAsDate, focusedDate: this.focusedDay, onDateSelect: this.handleDaySelect, onKeyboardNavigation: this.handleKeyboardNavigation, labelledById: this.dialogLabelId, localization: this.localization, firstDayOfWeek: this.firstDayOfWeek, focusedDayRef: this.processFocusedDayNode, min: minDate, max: maxDate }))))));
694
694
  }
695
695
  get element() { return getElement(this); }
696
696
  };
@@ -137,7 +137,7 @@ const DsoDatePicker = class {
137
137
  }
138
138
  render() {
139
139
  var _a;
140
- return (h("input", { key: '362ca534eec500da8a2a736a93e96fc7437e72bf', type: "date", id: this.identifier, class: "dso-date__input", value: parseToValueFormat(this.value), name: this.name, min: parseToValueFormat(this.min), max: parseToValueFormat(this.max), disabled: this.disabled || undefined, required: this.required || undefined, "aria-autocomplete": "none", "aria-invalid": (_a = this.invalid) === null || _a === void 0 ? void 0 : _a.toString(), "aria-describedby": this.describedBy, autoComplete: "off", autofocus: this.dsoAutofocus || undefined, onBlur: this.handleBlur, onFocus: this.handleFocus, onKeyUp: this.handleKeyUp, onKeyDown: this.handleKeyDown, onChange: this.handleInputChange }));
140
+ return (h("input", { key: 'f2fe8194c48bed2392736327c79db4420da4b14a', type: "date", id: this.identifier, class: "dso-date__input", value: parseToValueFormat(this.value), name: this.name, min: parseToValueFormat(this.min), max: parseToValueFormat(this.max), disabled: this.disabled || undefined, required: this.required || undefined, "aria-autocomplete": "none", "aria-invalid": (_a = this.invalid) === null || _a === void 0 ? void 0 : _a.toString(), "aria-describedby": this.describedBy, autoComplete: "off", autofocus: this.dsoAutofocus || undefined, onBlur: this.handleBlur, onFocus: this.handleFocus, onKeyUp: this.handleKeyUp, onKeyDown: this.handleKeyDown, onChange: this.handleInputChange }));
141
141
  }
142
142
  get element() { return getElement(this); }
143
143
  };
@@ -212,7 +212,7 @@ const DropdownMenu = class {
212
212
  (_a = tabbables[nextIndex]) === null || _a === void 0 ? void 0 : _a.focus();
213
213
  }
214
214
  render() {
215
- return (h(Host, { key: '051e0e49f0787115d3c0d32d64afd9925bbf7015', onFocusout: this.focusOutListener }, h("slot", { key: '19ef2a3cd39f922e97e6bdb2700fafa64f3c34ee', name: "toggle" }), h("div", { key: '07476f4d79b5eadab813d522381a4e918bb12e5e', hidden: !this.open }, h("slot", { key: 'fb6106ab14abaf2bc32cb9938519b97a14127c37' }))));
215
+ return (h(Host, { key: '8d8c4d76bf5da8cd782ae2bb7640a28a7de48c0d', onFocusout: this.focusOutListener }, h("slot", { key: '837efe3ccfab1c3b6ceb3d1004269aed32fb48d5', name: "toggle" }), h("div", { key: '881bea8d8240c672954ede46dca4682102395f8b', hidden: !this.open }, h("slot", { key: '5e4c55ca9f00f5bd0cb04be6dd20574cd9000925' }))));
216
216
  }
217
217
  get host() { return getElement(this); }
218
218
  static get watchers() { return {
@@ -83,10 +83,10 @@ const HelpcenterPanel = class {
83
83
  }
84
84
  }
85
85
  render() {
86
- return (h(Fragment, null, h("button", { key: '4eb48fdad3b3ad4e196c057be9e4ca2be9acad95', type: "button", onClick: this.openClick, class: `open-button ${this.isOpen}`, "aria-expanded": this.isOpen === "open" ? "true" : "false", "aria-haspopup": "dialog", "aria-controls": "dso-panel-wrapper", ref: (element) => (this.openButtonElement = element) }, h("dso-icon", { key: '4ed80fd64c25eec34883b8254f065f880b7d41a6', icon: "help" }), h("span", { key: '1e43605ab14511b8e8d4b7628b4f2bcb19a0f57a' }, this.label)), h("div", { key: 'db5d93917c9b7c64f8b41ad63edde93df4fbc44d', id: "dso-panel-wrapper", class: `wrapper ${this.visibility}`, "aria-label": "helpcentrum", role: "dialog", ref: (element) => (this.panelWrapperElement = element) }, h("div", { key: '5024649ae6920e583242554b215ea5dd43790eb4', class: "dimscreen", onClick: this.closeClick }), h("div", { key: '83b15da9a1647e578394ea594cf6a74089e3b416', class: `iframe-container ${this.slideState}`, "aria-live": "polite" }, this.loadIframe ? (h("iframe", { src: this.iframeUrl, tabindex: "0", onLoad: () => {
86
+ return (h(Fragment, null, h("button", { key: 'a8170e3024ee00b4c7907741061f20bd38bf043c', type: "button", onClick: this.openClick, class: `open-button ${this.isOpen}`, "aria-expanded": this.isOpen === "open" ? "true" : "false", "aria-haspopup": "dialog", "aria-controls": "dso-panel-wrapper", ref: (element) => (this.openButtonElement = element) }, h("dso-icon", { key: '9d86914b8a9d96f13e1675b31b423d6a1d627acc', icon: "help" }), h("span", { key: '115ff85cb5d22b3bc0976cadc3ae43c14b012219' }, this.label)), h("div", { key: '9a48de7acbf0a1688602ace722126f42db980d0e', id: "dso-panel-wrapper", class: `wrapper ${this.visibility}`, "aria-label": "helpcentrum", role: "dialog", ref: (element) => (this.panelWrapperElement = element) }, h("div", { key: 'dd98fd2c0270a0c6f19c44dcb73f14fb21cbdfdf', class: "dimscreen", onClick: this.closeClick }), h("div", { key: '67ed5ef2a7f2ec21d4d67937ec3e15000ff73e71', class: `iframe-container ${this.slideState}`, "aria-live": "polite" }, this.loadIframe ? (h("iframe", { src: this.iframeUrl, tabindex: "0", onLoad: () => {
87
87
  this.createTrap();
88
88
  this.iframeLoaded = true;
89
- } })) : (h("div", null))), h("button", { key: 'a20fabcb6e42397b514d0b15dd6dcaa4f5c04495', type: "button", class: `close-button ${this.isOpen}`, onClick: this.closeClick, "aria-expanded": this.isOpen === "open" ? "true" : "false", "aria-controls": "dso-panel-wrapper", ref: (element) => (this.closeButtonElement = element) }, h("dso-icon", { key: '4e06edd5f7d870db47a41b8b9ae95e7e0dcd2bf6', icon: "times" }), h("span", { key: 'd8092cfddace1390453ca1122980a524cc79993e', class: "sr-only" }, "sluiten")))));
89
+ } })) : (h("div", null))), h("button", { key: 'c16f22cda1869eb684c5fc0a11651441e82510a5', type: "button", class: `close-button ${this.isOpen}`, onClick: this.closeClick, "aria-expanded": this.isOpen === "open" ? "true" : "false", "aria-controls": "dso-panel-wrapper", ref: (element) => (this.closeButtonElement = element) }, h("dso-icon", { key: '4002011f88f58a7016e8ccbbc344ddbdaf56683b', icon: "times" }), h("span", { key: '25863addb1a994ee1d762ba4f2c54f44d409618c', class: "sr-only" }, "sluiten")))));
90
90
  }
91
91
  static get watchers() { return {
92
92
  "url": ["watchUrl"],
@@ -15,7 +15,7 @@ const HighlightBox = class {
15
15
  render() {
16
16
  var _a;
17
17
  const hasCounter = this.step || !!this.element.querySelector("[slot=icon]");
18
- return (h(Host, { key: '197d41b2fe49363ee590921008c935f43a5b1fee', "has-counter": hasCounter }, hasCounter && h("div", { key: 'f166216f13a0f703896c2c44aa89ae43d73051aa', class: "dso-step-counter" }, (_a = this.step) !== null && _a !== void 0 ? _a : h("slot", { key: 'd31ea4d9b291e4619ec15eb1d71142a4e8077450', name: "icon" })), h("slot", { key: '0f2a7876ea72118d06ffecd753c4c9f24c22dd7e' })));
18
+ return (h(Host, { key: '56216e3a1a502f4ad20289fbeea0bc2bad8be269', "has-counter": hasCounter }, hasCounter && h("div", { key: '0d0d5f6a49ca4384a0ea608a4c310550e73cfc19', class: "dso-step-counter" }, (_a = this.step) !== null && _a !== void 0 ? _a : h("slot", { key: '83237236c8d1f52dfa81c30903896e0be0e01b3c', name: "icon" })), h("slot", { key: 'f2651b6b400d2b9b1a54821e7ad8179061f94566' })));
19
19
  }
20
20
  get element() { return getElement(this); }
21
21
  };
@@ -658,7 +658,7 @@ const Icon = class {
658
658
  if (!icon) {
659
659
  throw new TypeError(`Unknown svg: ${this.icon}`);
660
660
  }
661
- return h("span", { key: 'ad568e901aca0e1bb7bfb6c5cf35579fd78e97f9', class: "icon-container", innerHTML: icon.svg });
661
+ return h("span", { key: '7e0261b5dd7ca57d3ff3e2bd1c342ec90d713075', class: "icon-container", innerHTML: icon.svg });
662
662
  }
663
663
  }
664
664
  };
@@ -25,7 +25,7 @@ const InfoButton = class {
25
25
  this.dsoToggle.emit({ originalEvent: e, active: this.active });
26
26
  }
27
27
  render() {
28
- return (h(Host, { key: 'a6e2aa03eb9724228f309392cfb9b2a8da123a15', onMouseenter: () => (this.hover = true), onMouseleave: () => (this.hover = false) }, h("button", { key: '419f8090a67ec29c910b1d925177451d4e98609c', type: "button", class: clsx({ "dso-open": !!this.active, "dso-info-secondary": !!this.secondary }), "aria-expanded": typeof this.active === "boolean" ? this.active.toString() : undefined, onClick: (e) => this.handleToggle(e), ref: (element) => (this.button = element) }, h("dso-icon", { key: '2f5b81f8142336f42e51c800fc8486b98095a40c', icon: this.active || this.hover ? "info-active" : "info" }), h("span", { key: '310fa68092bbee52d8c3935e48d6e5befd16c4ea', class: "sr-only" }, this.label))));
28
+ return (h(Host, { key: '49a4aa9c7941888cd926166344d5693d2a670a17', onMouseenter: () => (this.hover = true), onMouseleave: () => (this.hover = false) }, h("button", { key: '4b5866e00d9630b8e7b33be5a277e149edf5ffe7', type: "button", class: clsx({ "dso-open": !!this.active, "dso-info-secondary": !!this.secondary }), "aria-expanded": typeof this.active === "boolean" ? this.active.toString() : undefined, onClick: (e) => this.handleToggle(e), ref: (element) => (this.button = element) }, h("dso-icon", { key: 'e5c5a6aa0dd24df35a9ea00ff8330bedee988061', icon: this.active || this.hover ? "info-active" : "info" }), h("span", { key: 'd98edf483eaaf5703f57225e710a99384e202e72', class: "sr-only" }, this.label))));
29
29
  }
30
30
  };
31
31
  InfoButton.style = DsoInfoButtonStyle0;
@@ -13,7 +13,7 @@ const Info = class {
13
13
  this.active = undefined;
14
14
  }
15
15
  render() {
16
- return (h(Fragment, { key: '902f98c97248e2ddd76978921405904b843de499' }, h("slot", { key: 'fe9eed78ba371fc455ccaa6d9d3cc5eb5d042184' }), !this.fixed && (h("button", { key: 'c915ed3281316046b27b60e32d5f8a2d3399839d', type: "button", onClick: (e) => this.dsoClose.emit(e) }, h("dso-icon", { key: '7f342560dc0cd59123e8a1f3a37fcf0d88da9efa', icon: "times" }), h("span", { key: '966b0fdafa67cd988cb5c2c7efbcc90288810ca5', class: "sr-only" }, "Sluiten")))));
16
+ return (h(Fragment, { key: 'e158c18a96603f7d8780074f6efd389050e68d6e' }, h("slot", { key: '8c9b01f5643639a5897fc9b8b0b402b972164109' }), !this.fixed && (h("button", { key: 'f527a659ee5b1175263e4698f2b5f465c0f8c26a', type: "button", onClick: (e) => this.dsoClose.emit(e) }, h("dso-icon", { key: 'a6759dc5e67f8f10055761eadd80ecd2af03666e', icon: "times" }), h("span", { key: '2e29810fd8e0432f3d45b350c4377d1710513835', class: "sr-only" }, "Sluiten")))));
17
17
  }
18
18
  };
19
19
  Info.style = DsoInfoStyle0;
@@ -80,7 +80,7 @@ const Selectable = class {
80
80
  render() {
81
81
  var _a;
82
82
  const hasInfo = !!this.host.querySelector('[slot="info"]');
83
- return (h(Fragment, { key: 'dd7208bc6160768997ff4b00a1611316d0d3b170' }, h("div", { key: '3a56145fbd723e97dfd1047144699295e64cd83c', class: "dso-selectable-container" }, h("div", { key: '960d6051962d016eb4d10cd42e0378e348176e00', class: clsx("dso-selectable-input-wrapper", { "dso-keyboard-focus": this.keyboardFocus }) }, h("input", { key: '62515e7eb4d4752e9cd884ebb55e25600c796569', type: this.type, id: this.getIdentifier(), value: this.value, name: this.name, "aria-invalid": (_a = this.invalid) === null || _a === void 0 ? void 0 : _a.toString(), "aria-describedby": hasInfo && this.infoFixed ? this.describedById : undefined, "aria-labelledBy": this.labelledById, disabled: this.disabled, required: this.required, checked: this.checked, onChange: this.handleOnChange, onBlur: () => (this.keyboardFocus = false), onKeyUp: () => (this.keyboardFocus = true), ref: (el) => (this.input = el) }), !this.labelledById ? (h("label", { htmlFor: this.getIdentifier() }, h("slot", null))) : (h("label", null, h("slot", null)))), hasInfo && !this.infoFixed && (h("dso-info-button", { key: '88c7368c7cf2679a5b553423d6241e6edf1e171c', active: this.infoActive, onDsoToggle: (e) => (this.infoActive = e.detail.active) }))), hasInfo && (h("dso-info", { key: '574762e0f3643edb8b2fe2e728c7bdaff02fbb2e', id: hasInfo && this.infoFixed ? this.describedById : undefined, fixed: this.infoFixed, active: this.infoActive, onDsoClose: () => (this.infoActive = false) }, h("div", { key: '4d7366f99efa8e9dd04787630a86f2d8f4720f8b' }, h("slot", { key: '7294a8c9318544819d392552c529ac04a6af2322', name: "info" })))), h("slot", { key: 'fe3293f3aef16561ab13519887293181af6b2347', name: "options" })));
83
+ return (h(Fragment, { key: '0cbf9eb4ab6e2d8510f3ca3e3a1fe9f6be1c9f17' }, h("div", { key: 'bd82b5657d192f3d855183100794b257c0b8bff1', class: "dso-selectable-container" }, h("div", { key: 'c76c3c223acdf8e7954e7d04ed3fa79044e9d19b', class: clsx("dso-selectable-input-wrapper", { "dso-keyboard-focus": this.keyboardFocus }) }, h("input", { key: '7e881b0259bc9a34cf5dcff88af8be2b66ce9f80', type: this.type, id: this.getIdentifier(), value: this.value, name: this.name, "aria-invalid": (_a = this.invalid) === null || _a === void 0 ? void 0 : _a.toString(), "aria-describedby": hasInfo && this.infoFixed ? this.describedById : undefined, "aria-labelledBy": this.labelledById, disabled: this.disabled, required: this.required, checked: this.checked, onChange: this.handleOnChange, onBlur: () => (this.keyboardFocus = false), onKeyUp: () => (this.keyboardFocus = true), ref: (el) => (this.input = el) }), !this.labelledById ? (h("label", { htmlFor: this.getIdentifier() }, h("slot", null))) : (h("label", null, h("slot", null)))), hasInfo && !this.infoFixed && (h("dso-info-button", { key: '9c79309fc1e0c73a9ae55722ea0e58bfbca0a63c', active: this.infoActive, onDsoToggle: (e) => (this.infoActive = e.detail.active) }))), hasInfo && (h("dso-info", { key: 'c329819cc92b649483fc4de5f49d683c941ff81f', id: hasInfo && this.infoFixed ? this.describedById : undefined, fixed: this.infoFixed, active: this.infoActive, onDsoClose: () => (this.infoActive = false) }, h("div", { key: '0e0e3c4c78ab6ad828fe2201ec818cc1181bfbea' }, h("slot", { key: '83121c8ec4075d1e688b06c306b7ce142399f799', name: "info" })))), h("slot", { key: '53429644d8c03912156f6c3915f5f9b445bd92ce', name: "options" })));
84
84
  }
85
85
  componentDidRender() {
86
86
  if (this.input && typeof this.checked === "boolean" && this.input.checked !== this.checked) {
@@ -19,13 +19,13 @@ const InputRange = class {
19
19
  const min = this.min || 0;
20
20
  const max = this.max || 100;
21
21
  const step = this.step || 1;
22
- return (h(Fragment, null, this.description && (h("span", { key: 'd5ecf14f7a8950cde120066a8f8fe9770451cd84', id: "description", hidden: true }, this.description)), h("span", { key: '877239f0082c1e2b2254e9bd6e1e01ce1ae10933', class: "counter min", "aria-hidden": "true" }, min, this.unit), h("input", { key: 'c5df969a844d7773cebd6f8f97c72fb09aad7f05', type: "range", min: this.min, max: this.max, value: this.value, class: "input", "aria-label": this.label, "aria-describedby": this.description ? "description" : undefined, onChange: (event) => this.dsoChange.emit({
22
+ return (h(Fragment, null, this.description && (h("span", { key: '33a0e5071f0abe7a4c927b38bffbf01cc7c2b154', id: "description", hidden: true }, this.description)), h("span", { key: '570dd69f683c1823a8b3f92f3fc3204d6d61e980', class: "counter min", "aria-hidden": "true" }, min, this.unit), h("input", { key: '7d2ad8841d2408544c86a5edbb3a95ad1ebe94e1', type: "range", min: this.min, max: this.max, value: this.value, class: "input", "aria-label": this.label, "aria-describedby": this.description ? "description" : undefined, onChange: (event) => this.dsoChange.emit({
23
23
  originalEvent: event,
24
24
  value: event.target instanceof HTMLInputElement ? parseInt(event.target.value, 10) : undefined,
25
25
  max,
26
26
  min,
27
27
  step,
28
- }) }), h("span", { key: '29900f5d80966b2ad6be15b81d3895ebe46c287e', class: "counter max", "aria-hidden": "true" }, max, this.unit)));
28
+ }) }), h("span", { key: '4a74f2d784043162ca939d98af18cd103d1a638c', class: "counter max", "aria-hidden": "true" }, max, this.unit)));
29
29
  }
30
30
  get host() { return getElement(this); }
31
31
  };
@@ -109,13 +109,13 @@ const Label = class {
109
109
  this.isTruncated = false;
110
110
  }
111
111
  render() {
112
- return (h(Fragment, { key: '63bab23d605ff8edc1fe6bd2bdac751f890d81f4' }, h("span", { key: 'c7e6f11ba9be8c3666f335c0a1acd8f0a20a1c90', "aria-describedby": "toggle-anchor", class: clsx("dso-label", {
112
+ return (h(Fragment, { key: 'f0bca41140f5702856768564b7e24106f40657a6' }, h("span", { key: '3d12ab6670190e52769ddf3aab44a03d163186fb', "aria-describedby": "toggle-anchor", class: clsx("dso-label", {
113
113
  [`dso-label-${this.status}`]: this.status,
114
114
  "dso-compact": this.compact && !this.removable,
115
115
  "dso-hover": this.removeHover || this.removeFocus,
116
- }) }, h("slot", { key: 'b973a7965b5100f9ac28309dd48ffacb44276198', name: "symbol" }), h("span", { key: 'da0cc9a0f71117144d0e67efe86bc70bf970ee65', class: clsx("dso-label-content", {
116
+ }) }, h("slot", { key: '074e1b656f77708a33019acf5de2ddcac352047e', name: "symbol" }), h("span", { key: '78a996fb79f6c9d34346e65abf31f16c2af29fa3', class: clsx("dso-label-content", {
117
117
  "dso-truncate": !!this.truncate,
118
- }), ref: (element) => (this.labelContent = element), tabindex: this.truncate && this.isTruncated ? 0 : undefined, onMouseEnter: () => (this.textHover = true), onMouseLeave: () => (this.textHover = false), onFocus: () => (this.textFocus = true), onBlur: () => (this.textFocus = false) }, h("slot", { key: '0a74dc7a557ebae1a0d7a30888fe6716b4bdee72' })), this.removable && (h("button", { key: '53edfc2ee675a00196afc294fe3f92832074e0b8', type: "button", onClick: (e) => this.dsoRemoveClick.emit(e), onMouseEnter: () => (this.removeHover = true), onMouseLeave: () => (this.removeHover = false), onFocus: () => (this.removeFocus = true), onBlur: () => (this.removeFocus = false) }, h("span", { key: '4d01d7c7583881847012605dc95633875d8c63c3', class: "sr-only" }, "Verwijder: ", this.labelText), h("dso-icon", { key: '2c491a534f65603292b65905e17da3cd6c11d00f', icon: "times" })))), this.isTruncated && (h("dso-tooltip", { key: 'e7a24a236e64f272a694ae81ac9fa6a2442aa2d1', stateless: true, id: "toggle-anchor", active: this.textHover || this.textFocus, position: "top", strategy: "absolute" }, this.labelText))));
118
+ }), ref: (element) => (this.labelContent = element), tabindex: this.truncate && this.isTruncated ? 0 : undefined, onMouseEnter: () => (this.textHover = true), onMouseLeave: () => (this.textHover = false), onFocus: () => (this.textFocus = true), onBlur: () => (this.textFocus = false) }, h("slot", { key: '516aecaadaf1a4f48c353aa78f613788126180f2' })), this.removable && (h("button", { key: '72d49327863c6131ed48e4567e32580e18b054bc', type: "button", onClick: (e) => this.dsoRemoveClick.emit(e), onMouseEnter: () => (this.removeHover = true), onMouseLeave: () => (this.removeHover = false), onFocus: () => (this.removeFocus = true), onBlur: () => (this.removeFocus = false) }, h("span", { key: '414ff8dfe4787da02bfd5ec71efb9c8b74d6b7f1', class: "sr-only" }, "Verwijder: ", this.labelText), h("dso-icon", { key: 'a39666f5d3315156e5a906b31341a14117bc4f96', icon: "times" })))), this.isTruncated && (h("dso-tooltip", { key: '5e69e4dc83cf0ce5d72b8fec86e029c66cd84066', stateless: true, id: "toggle-anchor", active: this.textHover || this.textFocus, position: "top", strategy: "absolute" }, this.labelText))));
119
119
  }
120
120
  get host() { return getElement(this); }
121
121
  static get watchers() { return {
@@ -327,7 +327,7 @@ const Tooltip = class {
327
327
  }
328
328
  }
329
329
  render() {
330
- return (h(Host, { key: '46cf85f470ba4a74966d0c792ae81c11efa39808', class: { hidden: this.hidden }, role: "tooltip", onClick: this.listenClick }, h("div", { key: 'ec613cea1d402473b442a79abada1b2c7ef7b245', class: clsx("tooltip", { in: this.active }) }, !this.noArrow && h("div", { key: '2be32f7acb19152aaf933c275fedc1ba6d9563d1', "data-popper-arrow": true, class: "tooltip-arrow" }), h("div", { key: '6d791bcb763d0eccc54875f8a51fad4f90c8387d', "aria-hidden": !this.descriptive || undefined, class: clsx("tooltip-inner", { "dso-small": this.small }) }, h("slot", { key: '89f68418f41bd6163492165ecd88087ad78d26b6' })))));
330
+ return (h(Host, { key: 'cfad66ccb630fe271a2b2bd5485f158f7c509d90', class: { hidden: this.hidden }, role: "tooltip", onClick: this.listenClick }, h("div", { key: 'da25404fb6a06f3a4ceb841b3c51e221d9a6fb7b', class: clsx("tooltip", { in: this.active }) }, !this.noArrow && h("div", { key: '00ebab6f82ddfa1349a9df16bb7d36d37c87b942', "data-popper-arrow": true, class: "tooltip-arrow" }), h("div", { key: '2e69287dd8975def050c78d208fd823d42eaad0a', "aria-hidden": !this.descriptive || undefined, class: clsx("tooltip-inner", { "dso-small": this.small }) }, h("slot", { key: 'b59a912c960e685a005218d534affb1957f797c5' })))));
331
331
  }
332
332
  activatePopper() {
333
333
  var _a;