@dso-toolkit/core 56.1.0 → 58.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (292) hide show
  1. package/dist/cjs/dso-accordion-section.cjs.entry.js +2 -2
  2. package/dist/cjs/dso-accordion-section.cjs.entry.js.map +1 -1
  3. package/dist/cjs/dso-accordion.cjs.entry.js +1 -1
  4. package/dist/cjs/dso-action-list-item.cjs.entry.js +1 -1
  5. package/dist/cjs/dso-action-list.cjs.entry.js +1 -1
  6. package/dist/cjs/dso-alert_5.cjs.entry.js +3 -3
  7. package/dist/cjs/dso-alert_5.cjs.entry.js.map +1 -1
  8. package/dist/cjs/dso-annotation-output_3.cjs.entry.js +1 -1
  9. package/dist/cjs/dso-attachments-counter.cjs.entry.js +1 -1
  10. package/dist/cjs/dso-autosuggest.cjs.entry.js +1 -1
  11. package/dist/cjs/dso-banner.cjs.entry.js +1 -1
  12. package/dist/cjs/dso-card-container.cjs.entry.js +1 -1
  13. package/dist/cjs/dso-card.cjs.entry.js +1 -1
  14. package/dist/cjs/dso-date-picker.cjs.entry.js +1 -1
  15. package/dist/cjs/dso-dropdown-menu.cjs.entry.js +1 -1
  16. package/dist/cjs/dso-expandable.cjs.entry.js +1 -1
  17. package/dist/cjs/dso-header.cjs.entry.js +2 -2
  18. package/dist/cjs/dso-header.cjs.entry.js.map +1 -1
  19. package/dist/cjs/dso-helpcenter-panel.cjs.entry.js +2 -2
  20. package/dist/cjs/dso-helpcenter-panel.cjs.entry.js.map +1 -1
  21. package/dist/cjs/dso-highlight-box.cjs.entry.js +1 -1
  22. package/dist/cjs/dso-icon.cjs.entry.js +1 -1
  23. package/dist/cjs/dso-image-overlay.cjs.entry.js +2 -2
  24. package/dist/cjs/dso-image-overlay.cjs.entry.js.map +1 -1
  25. package/dist/cjs/dso-info-button.cjs.entry.js +2 -2
  26. package/dist/cjs/dso-info-button.cjs.entry.js.map +1 -1
  27. package/dist/cjs/dso-info_2.cjs.entry.js +1 -1
  28. package/dist/cjs/dso-list-button.cjs.entry.js +3 -3
  29. package/dist/cjs/dso-list-button.cjs.entry.js.map +1 -1
  30. package/dist/cjs/dso-map-base-layers.cjs.entry.js +1 -1
  31. package/dist/cjs/dso-map-controls.cjs.entry.js +2 -2
  32. package/dist/cjs/dso-map-controls.cjs.entry.js.map +1 -1
  33. package/dist/cjs/dso-map-overlays.cjs.entry.js +1 -1
  34. package/dist/cjs/dso-modal.cjs.entry.js +13 -45
  35. package/dist/cjs/dso-modal.cjs.entry.js.map +1 -1
  36. package/dist/cjs/dso-pagination.cjs.entry.js +1 -1
  37. package/dist/cjs/dso-progress-bar.cjs.entry.js +1 -1
  38. package/dist/cjs/dso-progress-indicator.cjs.entry.js +1 -1
  39. package/dist/cjs/dso-responsive-element.cjs.entry.js +1 -1
  40. package/dist/cjs/dso-scrollable.cjs.entry.js +1 -1
  41. package/dist/cjs/dso-table.cjs.entry.js +2 -2
  42. package/dist/cjs/dso-table.cjs.entry.js.map +1 -1
  43. package/dist/cjs/dso-toggletip.cjs.entry.js +1 -1
  44. package/dist/cjs/dso-toolkit.cjs.js +2 -2
  45. package/dist/cjs/dso-tooltip.cjs.entry.js +1 -1
  46. package/dist/cjs/dso-tree-view.cjs.entry.js +1 -1
  47. package/dist/cjs/dso-viewer-grid.cjs.entry.js +83 -62
  48. package/dist/cjs/dso-viewer-grid.cjs.entry.js.map +1 -1
  49. package/dist/cjs/dsot-document-component-demo.cjs.entry.js +1 -1
  50. package/dist/cjs/{index-efc2222e.js → index-d4003ee3.js} +1 -4
  51. package/dist/cjs/index-d4003ee3.js.map +1 -0
  52. package/dist/cjs/index.cjs.js +0 -72
  53. package/dist/cjs/index.cjs.js.map +1 -1
  54. package/dist/cjs/loader.cjs.js +2 -2
  55. package/dist/collection/components/accordion/accordion.interfaces.js.map +1 -1
  56. package/dist/collection/components/accordion/accordion.js +1 -1
  57. package/dist/collection/components/accordion/components/accordion-section.css +66 -1
  58. package/dist/collection/components/annotation-button/annotation-button.css +59 -383
  59. package/dist/collection/components/header/header.css +3 -3
  60. package/dist/collection/components/helpcenter-panel/helpcenter-panel.css +12 -12
  61. package/dist/collection/components/image-overlay/image-overlay.css +14 -14
  62. package/dist/collection/components/info-button/info-button.js +1 -1
  63. package/dist/collection/components/info-button/info-button.js.map +1 -1
  64. package/dist/collection/components/list-button/list-button.css +29 -23
  65. package/dist/collection/components/list-button/list-button.js +1 -1
  66. package/dist/collection/components/list-button/list-button.js.map +1 -1
  67. package/dist/collection/components/map-controls/map-controls.css +21 -15
  68. package/dist/collection/components/modal/modal.css +92 -65
  69. package/dist/collection/components/modal/modal.interfaces.js.map +1 -1
  70. package/dist/collection/components/modal/modal.js +33 -90
  71. package/dist/collection/components/modal/modal.js.map +1 -1
  72. package/dist/collection/components/ozon-content/ozon-content.css +7 -1
  73. package/dist/collection/components/table/table.css +60 -55
  74. package/dist/collection/components/viewer-grid/components/filterpanel.js +7 -0
  75. package/dist/collection/components/viewer-grid/components/filterpanel.js.map +1 -0
  76. package/dist/collection/components/viewer-grid/components/index.js +4 -0
  77. package/dist/collection/components/viewer-grid/components/index.js.map +1 -0
  78. package/dist/collection/components/viewer-grid/components/main-panel.js +10 -0
  79. package/dist/collection/components/viewer-grid/components/main-panel.js.map +1 -0
  80. package/dist/collection/components/viewer-grid/components/overlay.js +6 -0
  81. package/dist/collection/components/viewer-grid/components/overlay.js.map +1 -0
  82. package/dist/collection/components/viewer-grid/components/viewer-grid-filterpanel-buttons.js.map +1 -0
  83. package/dist/collection/components/viewer-grid/viewer-grid.css +331 -108
  84. package/dist/collection/components/viewer-grid/viewer-grid.interfaces.js +1 -1
  85. package/dist/collection/components/viewer-grid/viewer-grid.interfaces.js.map +1 -1
  86. package/dist/collection/components/viewer-grid/viewer-grid.js +59 -73
  87. package/dist/collection/components/viewer-grid/viewer-grid.js.map +1 -1
  88. package/dist/collection/index.js +0 -1
  89. package/dist/collection/index.js.map +1 -1
  90. package/dist/components/annotation-button.js +1 -1
  91. package/dist/components/annotation-button.js.map +1 -1
  92. package/dist/components/dso-accordion-section.js +1 -1
  93. package/dist/components/dso-accordion-section.js.map +1 -1
  94. package/dist/components/dso-header.js +1 -1
  95. package/dist/components/dso-header.js.map +1 -1
  96. package/dist/components/dso-helpcenter-panel.js +1 -1
  97. package/dist/components/dso-helpcenter-panel.js.map +1 -1
  98. package/dist/components/dso-image-overlay.js +1 -1
  99. package/dist/components/dso-image-overlay.js.map +1 -1
  100. package/dist/components/dso-list-button.js +2 -2
  101. package/dist/components/dso-list-button.js.map +1 -1
  102. package/dist/components/dso-map-controls.js +1 -1
  103. package/dist/components/dso-map-controls.js.map +1 -1
  104. package/dist/components/dso-modal.js +14 -46
  105. package/dist/components/dso-modal.js.map +1 -1
  106. package/dist/components/dso-table.js +1 -1
  107. package/dist/components/dso-table.js.map +1 -1
  108. package/dist/components/dso-viewer-grid.js +86 -68
  109. package/dist/components/dso-viewer-grid.js.map +1 -1
  110. package/dist/components/index.js +0 -71
  111. package/dist/components/index.js.map +1 -1
  112. package/dist/components/info-button.js +1 -1
  113. package/dist/components/info-button.js.map +1 -1
  114. package/dist/components/ozon-content.js +1 -1
  115. package/dist/components/ozon-content.js.map +1 -1
  116. package/dist/dso-toolkit/dso-toolkit.esm.js +1 -1
  117. package/dist/dso-toolkit/dso-toolkit.esm.js.map +1 -1
  118. package/dist/dso-toolkit/index.esm.js +1 -1
  119. package/dist/dso-toolkit/index.esm.js.map +1 -1
  120. package/dist/dso-toolkit/p-0dffb117.entry.js +2 -0
  121. package/dist/dso-toolkit/{p-29752a45.entry.js.map → p-0dffb117.entry.js.map} +1 -1
  122. package/dist/dso-toolkit/{p-14453f73.entry.js → p-14aa091d.entry.js} +2 -2
  123. package/dist/dso-toolkit/p-1a1a43fd.js +3 -0
  124. package/dist/dso-toolkit/p-1a1a43fd.js.map +1 -0
  125. package/dist/dso-toolkit/{p-d8c137b5.entry.js → p-1c721290.entry.js} +2 -2
  126. package/dist/dso-toolkit/{p-56d87a53.entry.js → p-22baee8e.entry.js} +2 -2
  127. package/dist/dso-toolkit/{p-a616ab8a.entry.js → p-2ccbf58d.entry.js} +2 -2
  128. package/dist/dso-toolkit/{p-9f2bb98b.entry.js → p-3cbf8b97.entry.js} +2 -2
  129. package/dist/dso-toolkit/{p-29b741cb.entry.js → p-3d4308ba.entry.js} +2 -2
  130. package/dist/dso-toolkit/{p-c8165a50.entry.js → p-420e0d23.entry.js} +2 -2
  131. package/dist/dso-toolkit/{p-bf203ab8.entry.js → p-423fa057.entry.js} +2 -2
  132. package/dist/dso-toolkit/{p-debbe184.entry.js → p-440fc4ae.entry.js} +2 -2
  133. package/dist/dso-toolkit/{p-d3f69d06.entry.js → p-49bce8b2.entry.js} +2 -2
  134. package/dist/dso-toolkit/{p-f56c1b28.entry.js → p-4bc67e5c.entry.js} +2 -2
  135. package/dist/dso-toolkit/{p-9b587a94.entry.js → p-4da2fa8b.entry.js} +2 -2
  136. package/dist/dso-toolkit/{p-0e5a93c3.entry.js → p-4e86089d.entry.js} +2 -2
  137. package/dist/dso-toolkit/{p-68e9f61b.entry.js → p-51f19c06.entry.js} +2 -2
  138. package/dist/dso-toolkit/{p-05ea1fba.entry.js → p-54c65314.entry.js} +2 -2
  139. package/dist/dso-toolkit/p-5e5302ef.entry.js +2 -0
  140. package/dist/dso-toolkit/p-5e5302ef.entry.js.map +1 -0
  141. package/dist/dso-toolkit/{p-818d032e.entry.js → p-5ee79846.entry.js} +2 -2
  142. package/dist/dso-toolkit/p-604eb60b.entry.js +2 -0
  143. package/dist/dso-toolkit/p-604eb60b.entry.js.map +1 -0
  144. package/dist/dso-toolkit/p-669c3743.entry.js +2 -0
  145. package/dist/dso-toolkit/{p-88f4366e.entry.js.map → p-669c3743.entry.js.map} +1 -1
  146. package/dist/dso-toolkit/p-712fca2c.entry.js +2 -0
  147. package/dist/dso-toolkit/p-712fca2c.entry.js.map +1 -0
  148. package/dist/dso-toolkit/{p-b67631ef.entry.js → p-745b6678.entry.js} +2 -2
  149. package/dist/dso-toolkit/{p-cfd6f4ef.entry.js → p-7a6be9c1.entry.js} +2 -2
  150. package/dist/dso-toolkit/p-8b77b083.entry.js +2 -0
  151. package/dist/dso-toolkit/{p-b627d9ac.entry.js.map → p-8b77b083.entry.js.map} +1 -1
  152. package/dist/dso-toolkit/{p-3fa7489e.entry.js → p-8f8dd254.entry.js} +2 -2
  153. package/dist/dso-toolkit/p-918bcdbe.entry.js +2 -0
  154. package/dist/dso-toolkit/p-918bcdbe.entry.js.map +1 -0
  155. package/dist/dso-toolkit/p-98f7ede6.entry.js +2 -0
  156. package/dist/dso-toolkit/p-98f7ede6.entry.js.map +1 -0
  157. package/dist/dso-toolkit/{p-fafa5ea1.entry.js → p-a00c4003.entry.js} +2 -2
  158. package/dist/dso-toolkit/p-a0798096.entry.js +2 -0
  159. package/dist/dso-toolkit/{p-42d3c595.entry.js.map → p-a0798096.entry.js.map} +1 -1
  160. package/dist/dso-toolkit/{p-9fee52e5.entry.js → p-a1060560.entry.js} +2 -2
  161. package/dist/dso-toolkit/{p-6050e8e6.entry.js → p-b34f24b4.entry.js} +2 -2
  162. package/dist/dso-toolkit/{p-168750a2.entry.js → p-b76768a5.entry.js} +2 -2
  163. package/dist/dso-toolkit/{p-674e2406.entry.js → p-b9d441d5.entry.js} +2 -2
  164. package/dist/dso-toolkit/p-b9d441d5.entry.js.map +1 -0
  165. package/dist/dso-toolkit/p-bc9e3037.entry.js +2 -0
  166. package/dist/dso-toolkit/{p-422bcf93.entry.js.map → p-bc9e3037.entry.js.map} +1 -1
  167. package/dist/dso-toolkit/{p-bcae3f55.entry.js → p-bcecc743.entry.js} +2 -2
  168. package/dist/dso-toolkit/p-e69d7e62.entry.js +2 -0
  169. package/dist/dso-toolkit/{p-5265e22b.entry.js.map → p-e69d7e62.entry.js.map} +1 -1
  170. package/dist/dso-toolkit/{p-83cdfde8.entry.js → p-f21e4ccc.entry.js} +2 -2
  171. package/dist/dso-toolkit/{p-83cdfde8.entry.js.map → p-f21e4ccc.entry.js.map} +1 -1
  172. package/dist/esm/dso-accordion-section.entry.js +2 -2
  173. package/dist/esm/dso-accordion-section.entry.js.map +1 -1
  174. package/dist/esm/dso-accordion.entry.js +1 -1
  175. package/dist/esm/dso-action-list-item.entry.js +1 -1
  176. package/dist/esm/dso-action-list.entry.js +1 -1
  177. package/dist/esm/dso-alert_5.entry.js +3 -3
  178. package/dist/esm/dso-alert_5.entry.js.map +1 -1
  179. package/dist/esm/dso-annotation-output_3.entry.js +1 -1
  180. package/dist/esm/dso-attachments-counter.entry.js +1 -1
  181. package/dist/esm/dso-autosuggest.entry.js +1 -1
  182. package/dist/esm/dso-banner.entry.js +1 -1
  183. package/dist/esm/dso-card-container.entry.js +1 -1
  184. package/dist/esm/dso-card.entry.js +1 -1
  185. package/dist/esm/dso-date-picker.entry.js +1 -1
  186. package/dist/esm/dso-dropdown-menu.entry.js +1 -1
  187. package/dist/esm/dso-expandable.entry.js +1 -1
  188. package/dist/esm/dso-header.entry.js +2 -2
  189. package/dist/esm/dso-header.entry.js.map +1 -1
  190. package/dist/esm/dso-helpcenter-panel.entry.js +2 -2
  191. package/dist/esm/dso-helpcenter-panel.entry.js.map +1 -1
  192. package/dist/esm/dso-highlight-box.entry.js +1 -1
  193. package/dist/esm/dso-icon.entry.js +1 -1
  194. package/dist/esm/dso-image-overlay.entry.js +2 -2
  195. package/dist/esm/dso-image-overlay.entry.js.map +1 -1
  196. package/dist/esm/dso-info-button.entry.js +2 -2
  197. package/dist/esm/dso-info-button.entry.js.map +1 -1
  198. package/dist/esm/dso-info_2.entry.js +1 -1
  199. package/dist/esm/dso-list-button.entry.js +3 -3
  200. package/dist/esm/dso-list-button.entry.js.map +1 -1
  201. package/dist/esm/dso-map-base-layers.entry.js +1 -1
  202. package/dist/esm/dso-map-controls.entry.js +2 -2
  203. package/dist/esm/dso-map-controls.entry.js.map +1 -1
  204. package/dist/esm/dso-map-overlays.entry.js +1 -1
  205. package/dist/esm/dso-modal.entry.js +13 -45
  206. package/dist/esm/dso-modal.entry.js.map +1 -1
  207. package/dist/esm/dso-pagination.entry.js +1 -1
  208. package/dist/esm/dso-progress-bar.entry.js +1 -1
  209. package/dist/esm/dso-progress-indicator.entry.js +1 -1
  210. package/dist/esm/dso-responsive-element.entry.js +1 -1
  211. package/dist/esm/dso-scrollable.entry.js +1 -1
  212. package/dist/esm/dso-table.entry.js +2 -2
  213. package/dist/esm/dso-table.entry.js.map +1 -1
  214. package/dist/esm/dso-toggletip.entry.js +1 -1
  215. package/dist/esm/dso-toolkit.js +3 -3
  216. package/dist/esm/dso-tooltip.entry.js +1 -1
  217. package/dist/esm/dso-tree-view.entry.js +1 -1
  218. package/dist/esm/dso-viewer-grid.entry.js +83 -62
  219. package/dist/esm/dso-viewer-grid.entry.js.map +1 -1
  220. package/dist/esm/dsot-document-component-demo.entry.js +1 -1
  221. package/dist/esm/{index-367cff36.js → index-3e9ed0c5.js} +1 -4
  222. package/dist/esm/index-3e9ed0c5.js.map +1 -0
  223. package/dist/esm/index.js +0 -69
  224. package/dist/esm/index.js.map +1 -1
  225. package/dist/esm/loader.js +3 -3
  226. package/dist/types/components/accordion/accordion.interfaces.d.ts +1 -1
  227. package/dist/types/components/modal/modal.d.ts +9 -15
  228. package/dist/types/components/modal/modal.interfaces.d.ts +2 -13
  229. package/dist/types/components/viewer-grid/components/filterpanel.d.ts +7 -0
  230. package/dist/types/components/viewer-grid/components/index.d.ts +3 -0
  231. package/dist/types/components/viewer-grid/components/main-panel.d.ts +10 -0
  232. package/dist/types/components/viewer-grid/components/overlay.d.ts +6 -0
  233. package/dist/types/components/viewer-grid/components/viewer-grid-filterpanel-buttons.d.ts +6 -0
  234. package/dist/types/components/viewer-grid/viewer-grid.d.ts +12 -11
  235. package/dist/types/components/viewer-grid/viewer-grid.interfaces.d.ts +13 -2
  236. package/dist/types/components.d.ts +14 -24
  237. package/dist/types/index.d.ts +0 -1
  238. package/package.json +2 -2
  239. package/dist/cjs/index-efc2222e.js.map +0 -1
  240. package/dist/collection/components/modal/modal-ref.js +0 -19
  241. package/dist/collection/components/modal/modal-ref.js.map +0 -1
  242. package/dist/collection/components/modal/modal.controller.js +0 -51
  243. package/dist/collection/components/modal/modal.controller.js.map +0 -1
  244. package/dist/collection/components/viewer-grid/viewer-grid-filterpanel-buttons.js.map +0 -1
  245. package/dist/dso-toolkit/p-021589dc.entry.js +0 -2
  246. package/dist/dso-toolkit/p-021589dc.entry.js.map +0 -1
  247. package/dist/dso-toolkit/p-29752a45.entry.js +0 -2
  248. package/dist/dso-toolkit/p-3c554a18.entry.js +0 -2
  249. package/dist/dso-toolkit/p-3c554a18.entry.js.map +0 -1
  250. package/dist/dso-toolkit/p-422bcf93.entry.js +0 -2
  251. package/dist/dso-toolkit/p-42d3c595.entry.js +0 -2
  252. package/dist/dso-toolkit/p-5265e22b.entry.js +0 -2
  253. package/dist/dso-toolkit/p-674e2406.entry.js.map +0 -1
  254. package/dist/dso-toolkit/p-88f4366e.entry.js +0 -2
  255. package/dist/dso-toolkit/p-909ccf98.entry.js +0 -2
  256. package/dist/dso-toolkit/p-909ccf98.entry.js.map +0 -1
  257. package/dist/dso-toolkit/p-9c0477fc.entry.js +0 -2
  258. package/dist/dso-toolkit/p-9c0477fc.entry.js.map +0 -1
  259. package/dist/dso-toolkit/p-b627d9ac.entry.js +0 -2
  260. package/dist/dso-toolkit/p-ce928197.js +0 -3
  261. package/dist/dso-toolkit/p-ce928197.js.map +0 -1
  262. package/dist/dso-toolkit/p-d4320890.entry.js +0 -2
  263. package/dist/dso-toolkit/p-d4320890.entry.js.map +0 -1
  264. package/dist/esm/index-367cff36.js.map +0 -1
  265. package/dist/types/components/modal/modal-ref.d.ts +0 -8
  266. package/dist/types/components/modal/modal.controller.d.ts +0 -6
  267. package/dist/types/components/viewer-grid/viewer-grid-filterpanel-buttons.d.ts +0 -6
  268. /package/dist/collection/components/viewer-grid/{viewer-grid-filterpanel-buttons.js → components/viewer-grid-filterpanel-buttons.js} +0 -0
  269. /package/dist/dso-toolkit/{p-14453f73.entry.js.map → p-14aa091d.entry.js.map} +0 -0
  270. /package/dist/dso-toolkit/{p-d8c137b5.entry.js.map → p-1c721290.entry.js.map} +0 -0
  271. /package/dist/dso-toolkit/{p-56d87a53.entry.js.map → p-22baee8e.entry.js.map} +0 -0
  272. /package/dist/dso-toolkit/{p-a616ab8a.entry.js.map → p-2ccbf58d.entry.js.map} +0 -0
  273. /package/dist/dso-toolkit/{p-9f2bb98b.entry.js.map → p-3cbf8b97.entry.js.map} +0 -0
  274. /package/dist/dso-toolkit/{p-29b741cb.entry.js.map → p-3d4308ba.entry.js.map} +0 -0
  275. /package/dist/dso-toolkit/{p-c8165a50.entry.js.map → p-420e0d23.entry.js.map} +0 -0
  276. /package/dist/dso-toolkit/{p-bf203ab8.entry.js.map → p-423fa057.entry.js.map} +0 -0
  277. /package/dist/dso-toolkit/{p-debbe184.entry.js.map → p-440fc4ae.entry.js.map} +0 -0
  278. /package/dist/dso-toolkit/{p-d3f69d06.entry.js.map → p-49bce8b2.entry.js.map} +0 -0
  279. /package/dist/dso-toolkit/{p-f56c1b28.entry.js.map → p-4bc67e5c.entry.js.map} +0 -0
  280. /package/dist/dso-toolkit/{p-9b587a94.entry.js.map → p-4da2fa8b.entry.js.map} +0 -0
  281. /package/dist/dso-toolkit/{p-0e5a93c3.entry.js.map → p-4e86089d.entry.js.map} +0 -0
  282. /package/dist/dso-toolkit/{p-68e9f61b.entry.js.map → p-51f19c06.entry.js.map} +0 -0
  283. /package/dist/dso-toolkit/{p-05ea1fba.entry.js.map → p-54c65314.entry.js.map} +0 -0
  284. /package/dist/dso-toolkit/{p-818d032e.entry.js.map → p-5ee79846.entry.js.map} +0 -0
  285. /package/dist/dso-toolkit/{p-b67631ef.entry.js.map → p-745b6678.entry.js.map} +0 -0
  286. /package/dist/dso-toolkit/{p-cfd6f4ef.entry.js.map → p-7a6be9c1.entry.js.map} +0 -0
  287. /package/dist/dso-toolkit/{p-3fa7489e.entry.js.map → p-8f8dd254.entry.js.map} +0 -0
  288. /package/dist/dso-toolkit/{p-fafa5ea1.entry.js.map → p-a00c4003.entry.js.map} +0 -0
  289. /package/dist/dso-toolkit/{p-9fee52e5.entry.js.map → p-a1060560.entry.js.map} +0 -0
  290. /package/dist/dso-toolkit/{p-6050e8e6.entry.js.map → p-b34f24b4.entry.js.map} +0 -0
  291. /package/dist/dso-toolkit/{p-168750a2.entry.js.map → p-b76768a5.entry.js.map} +0 -0
  292. /package/dist/dso-toolkit/{p-bcae3f55.entry.js.map → p-bcecc743.entry.js.map} +0 -0
@@ -12,6 +12,47 @@
12
12
  box-sizing: border-box;
13
13
  }
14
14
 
15
+ :host {
16
+ display: block;
17
+ }
18
+
19
+ :host([fullscreen]) dialog {
20
+ inline-size: 100dvi;
21
+ block-size: 100dvb;
22
+ }
23
+ :host([fullscreen]) dialog .dso-dialog {
24
+ display: flex;
25
+ flex-direction: column;
26
+ max-inline-size: 100%;
27
+ block-size: 100%;
28
+ }
29
+ :host([fullscreen]) dialog .dso-dialog > dso-scrollable {
30
+ flex-grow: 1;
31
+ max-block-size: unset;
32
+ }
33
+ :host([fullscreen]) dialog .dso-footer {
34
+ flex-shrink: 0;
35
+ }
36
+
37
+ @media screen and (max-width: 480px) {
38
+ :host dialog {
39
+ inline-size: 100dvi;
40
+ block-size: 100dvb;
41
+ }
42
+ :host dialog .dso-dialog {
43
+ display: flex;
44
+ flex-direction: column;
45
+ max-inline-size: 100%;
46
+ block-size: 100%;
47
+ }
48
+ :host dialog .dso-dialog > dso-scrollable {
49
+ flex-grow: 1;
50
+ max-block-size: unset;
51
+ }
52
+ :host dialog .dso-footer {
53
+ flex-shrink: 0;
54
+ }
55
+ }
15
56
  .sr-only {
16
57
  position: absolute;
17
58
  width: 1px;
@@ -44,49 +85,45 @@ button::-moz-focus-inner {
44
85
  }
45
86
 
46
87
  .dso-modal {
47
- bottom: 0;
48
- height: 100%;
49
- left: 0;
50
- position: fixed;
51
- right: 0;
52
- top: 0;
53
- z-index: 530;
88
+ overflow: visible;
89
+ padding: 0;
90
+ border: 0;
91
+ }
92
+ .dso-modal::backdrop {
93
+ background-color: rgba(255, 255, 255, 0.8);
54
94
  }
55
95
  .dso-modal .dso-dialog {
56
- animation: 1s ease-out 0s 1 slideInFromTop;
96
+ max-inline-size: 640px;
57
97
  background-color: #fff;
58
- box-shadow: 0 8px 24px 0 rgba(25, 25, 25, 0.4);
59
- margin-left: auto;
60
- margin-right: auto;
61
- margin-top: clamp(40px, 15vh, 15vh);
62
- max-width: 640px;
63
98
  opacity: 1;
99
+ box-shadow: 0 8px 24px 0 rgba(25, 25, 25, 0.4);
100
+ animation: 1s ease-out 0s 1 slideInFromTop;
64
101
  }
65
102
  .dso-modal .dso-header {
66
- border-bottom: 1px solid #ccc;
67
- padding: 16px;
68
103
  position: relative;
104
+ padding: 16px;
105
+ border-block-end: 1px solid #ccc;
69
106
  }
70
107
  .dso-modal .dso-header h2 {
71
- color: #275937;
108
+ max-inline-size: calc(100% - 24px);
72
109
  margin: 0;
73
- max-width: calc(100% - 24px);
110
+ color: #275937;
74
111
  }
75
112
  .dso-modal .dso-header .dso-close {
113
+ position: absolute;
114
+ inset-block-start: 16px;
115
+ inset-inline-end: 13px;
116
+ block-size: 32px;
117
+ inline-size: 32px;
118
+ padding: 0;
76
119
  background-color: transparent;
77
120
  border: 0;
78
- height: 32px;
79
- padding: 0;
80
- position: absolute;
81
- right: 13px;
82
121
  text-align: center;
83
- top: 16px;
84
- width: 32px;
85
122
  }
86
123
  .dso-modal > .dso-dialog > .dso-body {
87
- height: calc(100% - 96px - 1.5rem);
88
- max-height: calc(70vh - 144px - 1.5em);
89
- min-height: 1.5rem;
124
+ block-size: calc(100% - 96px - 1.5rem);
125
+ max-block-size: calc(70vh - 144px - 1.5em);
126
+ min-block-size: 1.5rem;
90
127
  overflow-x: auto;
91
128
  padding: 32px;
92
129
  }
@@ -116,9 +153,9 @@ button::-moz-focus-inner {
116
153
  max-width: 100%;
117
154
  }
118
155
  .dso-modal > .dso-dialog > dso-scrollable {
119
- height: calc(100% - 96px - 1.5rem);
120
- max-height: calc(70vh - 144px - 1.5em);
121
- min-height: 6.5rem;
156
+ block-size: calc(100% - 96px - 1.5rem);
157
+ max-block-size: calc(70vh - 144px - 1.5em);
158
+ min-block-size: 6.5rem;
122
159
  }
123
160
  .dso-modal > .dso-dialog > dso-scrollable .dso-body {
124
161
  padding: 32px;
@@ -148,90 +185,80 @@ button::-moz-focus-inner {
148
185
  height: auto;
149
186
  max-width: 100%;
150
187
  }
188
+ .dso-modal .dso-body:focus-visible {
189
+ outline: none;
190
+ }
151
191
  .dso-modal .dso-footer {
152
- min-height: 80px;
192
+ min-block-size: 80px;
153
193
  padding: 16px 32px;
154
- text-align: right;
194
+ text-align: end;
155
195
  }
156
196
  @media screen and (max-width: 767px) {
157
- .dso-modal .dso-footer .btn + .btn, .dso-modal .dso-footer .btn + .dso-primary, .dso-modal .dso-footer .btn + .dso-secondary, .dso-modal .dso-footer .btn + .dso-tertiary, .dso-modal .dso-footer .dso-primary + .btn, .dso-modal .dso-footer .dso-primary + .dso-primary, .dso-modal .dso-footer .dso-primary + .dso-secondary, .dso-modal .dso-footer .dso-primary + .dso-tertiary, .dso-modal .dso-footer .dso-secondary + .btn, .dso-modal .dso-footer .dso-secondary + .dso-primary, .dso-modal .dso-footer .dso-secondary + .dso-secondary, .dso-modal .dso-footer .dso-secondary + .dso-tertiary, .dso-modal .dso-footer .dso-tertiary + .btn, .dso-modal .dso-footer .dso-tertiary + .dso-primary, .dso-modal .dso-footer .dso-tertiary + .dso-secondary, .dso-modal .dso-footer .dso-tertiary + .dso-tertiary {
158
- margin-left: 0;
197
+ .dso-modal .dso-footer .dso-primary + .dso-primary, .dso-modal .dso-footer .dso-primary + .dso-secondary, .dso-modal .dso-footer .dso-primary + .dso-tertiary, .dso-modal .dso-footer .dso-secondary + .dso-primary, .dso-modal .dso-footer .dso-secondary + .dso-secondary, .dso-modal .dso-footer .dso-secondary + .dso-tertiary, .dso-modal .dso-footer .dso-tertiary + .dso-primary, .dso-modal .dso-footer .dso-tertiary + .dso-secondary, .dso-modal .dso-footer .dso-tertiary + .dso-tertiary {
198
+ margin-inline-start: 0;
159
199
  }
160
200
  .dso-modal .dso-footer button {
201
+ inline-size: 100%;
161
202
  text-align: center;
162
- width: 100%;
163
203
  }
164
204
  .dso-modal .dso-footer button + button {
165
- margin-top: 8px;
205
+ margin-block-start: 8px;
166
206
  }
167
207
  .dso-modal .dso-footer button.dso-tertiary,
168
- .dso-modal .dso-footer button.dso-tertiary span, .dso-modal .dso-footer button.btn-link,
169
- .dso-modal .dso-footer button.btn-link span {
208
+ .dso-modal .dso-footer button.dso-tertiary span {
170
209
  float: none;
171
210
  }
172
211
  }
173
212
  @media screen and (min-width: 768px) {
174
- .dso-modal .dso-footer .btn + .dso-secondary, .dso-modal .dso-footer .btn + .btn-default, .dso-modal .dso-footer .dso-primary + .dso-secondary, .dso-modal .dso-footer .dso-primary + .btn-default, .dso-modal .dso-footer .dso-secondary + .dso-secondary, .dso-modal .dso-footer .dso-secondary + .btn-default, .dso-modal .dso-footer .dso-tertiary + .dso-secondary, .dso-modal .dso-footer .dso-tertiary + .btn-default {
175
- margin-left: 16px;
213
+ .dso-modal .dso-footer .dso-primary + .dso-secondary, .dso-modal .dso-footer .dso-secondary + .dso-secondary, .dso-modal .dso-footer .dso-tertiary + .dso-secondary {
214
+ margin-inline-start: 16px;
176
215
  }
177
- .dso-modal .dso-footer .btn + .dso-tertiary, .dso-modal .dso-footer .btn + .btn-link, .dso-modal .dso-footer .dso-primary + .dso-tertiary, .dso-modal .dso-footer .dso-primary + .btn-link, .dso-modal .dso-footer .dso-secondary + .dso-tertiary, .dso-modal .dso-footer .dso-secondary + .btn-link, .dso-modal .dso-footer .dso-tertiary + .dso-tertiary, .dso-modal .dso-footer .dso-tertiary + .btn-link {
178
- margin-left: 0;
216
+ .dso-modal .dso-footer .dso-primary + .dso-tertiary, .dso-modal .dso-footer .dso-secondary + .dso-tertiary, .dso-modal .dso-footer .dso-tertiary + .dso-tertiary {
217
+ margin-inline-start: 0;
179
218
  }
180
219
  }
181
220
  @media screen and (max-width: 767px) {
182
221
  .dso-modal .dso-dialog {
183
- max-width: 100%;
184
- margin-top: 0;
222
+ max-inline-size: 100%;
223
+ margin-block-start: 0;
185
224
  }
186
- .dso-modal .dso-footer .btn + .btn, .dso-modal .dso-footer .btn + .dso-primary, .dso-modal .dso-footer .btn + .dso-secondary, .dso-modal .dso-footer .btn + .dso-tertiary, .dso-modal .dso-footer .dso-primary + .btn, .dso-modal .dso-footer .dso-primary + .dso-primary, .dso-modal .dso-footer .dso-primary + .dso-secondary, .dso-modal .dso-footer .dso-primary + .dso-tertiary, .dso-modal .dso-footer .dso-secondary + .btn, .dso-modal .dso-footer .dso-secondary + .dso-primary, .dso-modal .dso-footer .dso-secondary + .dso-secondary, .dso-modal .dso-footer .dso-secondary + .dso-tertiary, .dso-modal .dso-footer .dso-tertiary + .btn, .dso-modal .dso-footer .dso-tertiary + .dso-primary, .dso-modal .dso-footer .dso-tertiary + .dso-secondary, .dso-modal .dso-footer .dso-tertiary + .dso-tertiary {
187
- margin-left: 0;
225
+ .dso-modal .dso-footer .dso-primary + .dso-primary, .dso-modal .dso-footer .dso-primary + .dso-secondary, .dso-modal .dso-footer .dso-primary + .dso-tertiary, .dso-modal .dso-footer .dso-secondary + .dso-primary, .dso-modal .dso-footer .dso-secondary + .dso-secondary, .dso-modal .dso-footer .dso-secondary + .dso-tertiary, .dso-modal .dso-footer .dso-tertiary + .dso-primary, .dso-modal .dso-footer .dso-tertiary + .dso-secondary, .dso-modal .dso-footer .dso-tertiary + .dso-tertiary {
226
+ margin-inline-start: 0;
188
227
  }
189
228
  .dso-modal .dso-footer button {
229
+ inline-size: 100%;
190
230
  text-align: center;
191
- width: 100%;
192
231
  }
193
232
  .dso-modal .dso-footer button + button {
194
- margin-top: 8px;
233
+ margin-block-start: 8px;
195
234
  }
196
235
  .dso-modal .dso-footer button.dso-tertiary,
197
- .dso-modal .dso-footer button.dso-tertiary span, .dso-modal .dso-footer button.btn-link,
198
- .dso-modal .dso-footer button.btn-link span {
236
+ .dso-modal .dso-footer button.dso-tertiary span {
199
237
  float: none;
200
238
  }
201
239
  }
202
240
  @media screen and (max-height: 380px) {
203
241
  .dso-modal .dso-dialog {
204
- margin-bottom: 8px;
205
- margin-top: 8px;
206
- min-height: 216px;
242
+ min-block-size: 216px;
243
+ margin-block-start: 8px;
244
+ margin-block-end: 8px;
207
245
  }
208
246
  .dso-modal .dso-header {
209
247
  padding: 8px 16px;
210
248
  }
211
249
  .dso-modal .dso-header .dso-close {
212
- top: 8px;
250
+ inset-block-start: 8px;
213
251
  }
214
252
  .dso-modal .dso-body {
215
253
  padding: 16px 24px;
216
254
  }
217
255
  .dso-modal .dso-footer {
218
- min-height: auto;
256
+ min-block-size: auto;
219
257
  overflow: auto;
220
258
  padding: 8px 32px;
221
259
  }
222
260
  }
223
261
 
224
- .dso-modal-overlay {
225
- background-color: rgba(255, 255, 255, 0.8);
226
- bottom: 0;
227
- display: block;
228
- left: 0;
229
- position: fixed;
230
- right: 0;
231
- top: 0;
232
- z-index: 529;
233
- }
234
-
235
262
  .dso-close dso-icon {
236
263
  color: #39870c;
237
264
  }
@@ -1 +1 @@
1
- {"version":3,"file":"modal.interfaces.js","sourceRoot":"","sources":["../../../src/components/modal/modal.interfaces.ts"],"names":[],"mappings":"","sourcesContent":["export interface DsoModalCloseEvent {\r\n originalEvent?: MouseEvent;\r\n}\r\n\r\nexport type ModalRole = \"dialog\" | \"alert\" | \"alertdialog\";\r\n\r\nexport type AllowedModalContentTypes = HTMLElement | DocumentFragment | string;\r\n\r\nexport interface ModalContent {\r\n title?: string;\r\n body: AllowedModalContentTypes;\r\n footer?: AllowedModalContentTypes;\r\n}\r\n\r\nexport interface ModalOptions {\r\n role?: ModalRole;\r\n showCloseButton?: boolean;\r\n initialFocus?: string;\r\n returnFocus?: (nodeFocusedBeforeActivation: HTMLElement | SVGElement) => HTMLElement | SVGElement | string | false;\r\n}\r\n"]}
1
+ {"version":3,"file":"modal.interfaces.js","sourceRoot":"","sources":["../../../src/components/modal/modal.interfaces.ts"],"names":[],"mappings":"","sourcesContent":["export interface ModalCloseEvent {\r\n originalEvent?: MouseEvent | Event;\r\n}\r\n\r\nexport type ModalRole = \"dialog\" | \"alert\" | \"alertdialog\";\r\n\r\nexport type AllowedModalContentTypes = HTMLElement | DocumentFragment | string;\r\n"]}
@@ -1,64 +1,33 @@
1
- import { h, Fragment } from "@stencil/core";
2
- import { createFocusTrap } from "focus-trap";
1
+ import { h } from "@stencil/core";
3
2
  import { v4 } from "uuid";
4
3
  export class Modal {
5
4
  constructor() {
6
5
  this.ariaId = v4();
7
6
  this.hasFooter = undefined;
7
+ this.fullscreen = undefined;
8
8
  this.modalTitle = undefined;
9
9
  this.role = "dialog";
10
10
  this.showCloseButton = true;
11
- this.initialFocus = undefined;
12
- this.returnFocus = undefined;
13
11
  }
14
12
  componentWillLoad() {
15
- this.hasFooter = this.host.querySelector("*[slot = 'footer']") !== null;
13
+ this.hasFooter = this.host.querySelector("[slot='footer']") !== null;
16
14
  }
17
15
  componentDidLoad() {
18
- this.setFocusTrap();
16
+ var _a;
17
+ (_a = this.htmlDialogElement) === null || _a === void 0 ? void 0 : _a.showModal();
18
+ document.body.classList.add("dso-modal-open");
19
19
  }
20
20
  disconnectedCallback() {
21
21
  var _a;
22
- (_a = this.trap) === null || _a === void 0 ? void 0 : _a.deactivate({ onDeactivate: () => undefined }); // override FocusTrap onDeactivate callback to avoid double event emits
22
+ document.body.classList.remove("dso-modal-open");
23
+ (_a = this.htmlDialogElement) === null || _a === void 0 ? void 0 : _a.close();
23
24
  }
24
25
  render() {
25
26
  var _a;
26
- return (h(Fragment, null, h("div", { class: "dso-modal-overlay" }), h("div", { class: "dso-modal", role: (_a = this.role) !== null && _a !== void 0 ? _a : undefined, "aria-modal": "true", "aria-labelledby": this.ariaId, ref: (element) => (this.modalElement = element) }, h("div", { class: "dso-dialog", role: "document", ref: (element) => (this.dialogElement = element) }, this.modalTitle ? (h("div", { class: "dso-header" }, h("h2", { id: this.ariaId }, this.modalTitle), this.showCloseButton && (h("button", { type: "button", class: "dso-close", onClick: (e) => this.dsoClose.emit({ originalEvent: e }) }, h("dso-icon", { icon: "times" }), h("span", { class: "sr-only" }, "Sluiten"))))) : (h("span", { class: "sr-only", id: this.ariaId }, "Dialoog")), h("dso-scrollable", null, h("div", { class: "dso-body", tabIndex: 0 }, h("slot", { name: "body" }))), this.hasFooter && (h("div", { class: "dso-footer" }, h("slot", { name: "footer" })))))));
27
- }
28
- setFocusTrap() {
29
- if (this.dialogElement && !this.trap) {
30
- this.trap = createFocusTrap(this.dialogElement, {
31
- initialFocus: () => {
32
- var _a, _b, _c;
33
- if (this.initialFocus) {
34
- const initialFocusElement = this.host.querySelector(this.initialFocus);
35
- if (!initialFocusElement) {
36
- console.warn(`element '${this.initialFocus}' could not be found`);
37
- }
38
- else {
39
- return initialFocusElement;
40
- }
41
- }
42
- return ((_c = (_a = this.host.querySelector("div[slot='footer'] .dso-primary")) !== null && _a !== void 0 ? _a : (_b = this.modalElement) === null || _b === void 0 ? void 0 : _b.querySelector(".dso-close")) !== null && _c !== void 0 ? _c : false);
43
- },
44
- allowOutsideClick: true,
45
- setReturnFocus: (e) => { var _a, _b; return (_b = (_a = this.returnFocus) === null || _a === void 0 ? void 0 : _a.call(this, e)) !== null && _b !== void 0 ? _b : e; },
46
- escapeDeactivates: true,
47
- tabbableOptions: {
48
- getShadowRoot: true,
49
- },
50
- clickOutsideDeactivates: (e) => {
51
- if (e instanceof MouseEvent && e.composedPath()[0] === this.modalElement) {
52
- return true;
53
- }
54
- return false;
55
- },
56
- onDeactivate: () => {
57
- delete this.trap;
58
- this.dsoClose.emit({ originalEvent: undefined });
59
- },
60
- }).activate();
61
- }
27
+ return (h("dialog", { class: "dso-modal", role: (_a = this.role) !== null && _a !== void 0 ? _a : undefined, "aria-modal": "true", "aria-labelledby": this.ariaId, ref: (element) => (this.htmlDialogElement = element), onCancel: (e) => {
28
+ e.preventDefault();
29
+ this.dsoClose.emit({ originalEvent: e });
30
+ } }, h("div", { class: "dso-dialog", role: "document" }, this.modalTitle ? (h("div", { class: "dso-header" }, h("h2", { id: this.ariaId }, this.modalTitle), this.showCloseButton && (h("button", { type: "button", class: "dso-close", onClick: (e) => this.dsoClose.emit({ originalEvent: e }) }, h("dso-icon", { icon: "times" }), h("span", { class: "sr-only" }, "Sluiten"))))) : (h("span", { class: "sr-only", id: this.ariaId }, "Dialoog")), h("dso-scrollable", null, h("div", { class: "dso-body", tabIndex: 0 }, h("slot", { name: "body" }))), this.hasFooter && (h("div", { class: "dso-footer" }, h("slot", { name: "footer" }))))));
62
31
  }
63
32
  static get is() { return "dso-modal"; }
64
33
  static get encapsulation() { return "shadow"; }
@@ -74,6 +43,23 @@ export class Modal {
74
43
  }
75
44
  static get properties() {
76
45
  return {
46
+ "fullscreen": {
47
+ "type": "boolean",
48
+ "mutable": false,
49
+ "complexType": {
50
+ "original": "boolean",
51
+ "resolved": "boolean | undefined",
52
+ "references": {}
53
+ },
54
+ "required": false,
55
+ "optional": true,
56
+ "docs": {
57
+ "tags": [],
58
+ "text": "when set the modal will be shown in fullscreen."
59
+ },
60
+ "attribute": "fullscreen",
61
+ "reflect": true
62
+ },
77
63
  "modalTitle": {
78
64
  "type": "string",
79
65
  "mutable": false,
@@ -121,54 +107,11 @@ export class Modal {
121
107
  "optional": false,
122
108
  "docs": {
123
109
  "tags": [],
124
- "text": "when `false` the close button in the header will not be rendered. Defaults to `true`."
110
+ "text": "when `false` the close button in the header will not be rendered. Defaults to `true`.\r\n\r\nNeeds `modalTitle` to be set."
125
111
  },
126
112
  "attribute": "show-close-button",
127
113
  "reflect": false,
128
114
  "defaultValue": "true"
129
- },
130
- "initialFocus": {
131
- "type": "string",
132
- "mutable": false,
133
- "complexType": {
134
- "original": "string",
135
- "resolved": "string | undefined",
136
- "references": {}
137
- },
138
- "required": false,
139
- "optional": true,
140
- "docs": {
141
- "tags": [],
142
- "text": "Selector used to query the element which will be focused when the component instantiated. When undefined the modal focuses the first button.dso-primary in the modal footer. If no button can be found the close button is focused."
143
- },
144
- "attribute": "initial-focus",
145
- "reflect": false
146
- },
147
- "returnFocus": {
148
- "type": "unknown",
149
- "mutable": false,
150
- "complexType": {
151
- "original": "(nodeFocusedBeforeActivation: HTMLElement | SVGElement) => FocusTargetValueOrFalse",
152
- "resolved": "((nodeFocusedBeforeActivation: HTMLElement | SVGElement) => FocusTargetValueOrFalse) | undefined",
153
- "references": {
154
- "HTMLElement": {
155
- "location": "global"
156
- },
157
- "SVGElement": {
158
- "location": "global"
159
- },
160
- "FocusTargetValueOrFalse": {
161
- "location": "import",
162
- "path": "focus-trap"
163
- }
164
- }
165
- },
166
- "required": false,
167
- "optional": true,
168
- "docs": {
169
- "tags": [],
170
- "text": "Function that returns the element to focus on Modal close. Return `false` for no focus restore."
171
- }
172
115
  }
173
116
  };
174
117
  }
@@ -190,10 +133,10 @@ export class Modal {
190
133
  "text": "Emitted when the user wants to close the Modal."
191
134
  },
192
135
  "complexType": {
193
- "original": "DsoModalCloseEvent",
194
- "resolved": "DsoModalCloseEvent",
136
+ "original": "ModalCloseEvent",
137
+ "resolved": "ModalCloseEvent",
195
138
  "references": {
196
- "DsoModalCloseEvent": {
139
+ "ModalCloseEvent": {
197
140
  "location": "import",
198
141
  "path": "./modal.interfaces"
199
142
  }
@@ -1 +1 @@
1
- {"version":3,"file":"modal.js","sourceRoot":"","sources":["../../../src/components/modal/modal.tsx"],"names":[],"mappings":"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","sourcesContent":["import { h, Component, ComponentInterface, Element, Event, EventEmitter, Fragment, Prop, State } from \"@stencil/core\";\r\nimport { createFocusTrap, FocusTargetValueOrFalse, FocusTrap } from \"focus-trap\";\r\nimport { v4 } from \"uuid\";\r\n\r\nimport { DsoModalCloseEvent } from \"./modal.interfaces\";\r\n\r\n@Component({\r\n tag: \"dso-modal\",\r\n styleUrl: \"modal.scss\",\r\n shadow: true,\r\n})\r\nexport class Modal implements ComponentInterface {\r\n private trap?: FocusTrap;\r\n\r\n private dialogElement?: HTMLDivElement;\r\n\r\n private modalElement?: HTMLDivElement;\r\n\r\n @Element()\r\n host!: HTMLDsoModalElement;\r\n\r\n @State()\r\n ariaId = v4();\r\n\r\n @State()\r\n hasFooter?: boolean;\r\n\r\n /**\r\n * The title of the Modal.\r\n */\r\n @Prop()\r\n modalTitle?: string;\r\n\r\n /**\r\n * the role for the modal `dialog` | `alert` | `alertdialog`.\r\n */\r\n @Prop()\r\n role: string | null = \"dialog\";\r\n\r\n /**\r\n * when `false` the close button in the header will not be rendered. Defaults to `true`.\r\n */\r\n @Prop()\r\n showCloseButton = true;\r\n\r\n /**\r\n * Selector used to query the element which will be focused when the component instantiated. When undefined the modal focuses the first button.dso-primary in the modal footer. If no button can be found the close button is focused.\r\n */\r\n @Prop()\r\n initialFocus?: string;\r\n\r\n /**\r\n * Function that returns the element to focus on Modal close. Return `false` for no focus restore.\r\n */\r\n @Prop()\r\n returnFocus?: (nodeFocusedBeforeActivation: HTMLElement | SVGElement) => FocusTargetValueOrFalse;\r\n\r\n /**\r\n * Emitted when the user wants to close the Modal.\r\n */\r\n @Event()\r\n dsoClose!: EventEmitter<DsoModalCloseEvent>;\r\n\r\n componentWillLoad(): void {\r\n this.hasFooter = this.host.querySelector(\"*[slot = 'footer']\") !== null;\r\n }\r\n\r\n componentDidLoad(): void {\r\n this.setFocusTrap();\r\n }\r\n\r\n disconnectedCallback(): void {\r\n this.trap?.deactivate({ onDeactivate: () => undefined }); // override FocusTrap onDeactivate callback to avoid double event emits\r\n }\r\n\r\n render() {\r\n return (\r\n <Fragment>\r\n <div class=\"dso-modal-overlay\"></div>\r\n <div\r\n class=\"dso-modal\"\r\n role={this.role ?? undefined}\r\n aria-modal=\"true\"\r\n aria-labelledby={this.ariaId}\r\n ref={(element) => (this.modalElement = element)}\r\n >\r\n <div class=\"dso-dialog\" role=\"document\" ref={(element) => (this.dialogElement = element)}>\r\n {this.modalTitle ? (\r\n <div class=\"dso-header\">\r\n <h2 id={this.ariaId}>{this.modalTitle}</h2>\r\n {this.showCloseButton && (\r\n <button type=\"button\" class=\"dso-close\" onClick={(e) => this.dsoClose.emit({ originalEvent: e })}>\r\n <dso-icon icon=\"times\"></dso-icon>\r\n <span class=\"sr-only\">Sluiten</span>\r\n </button>\r\n )}\r\n </div>\r\n ) : (\r\n <span class=\"sr-only\" id={this.ariaId}>\r\n Dialoog\r\n </span>\r\n )}\r\n\r\n <dso-scrollable>\r\n <div class=\"dso-body\" tabIndex={0}>\r\n <slot name=\"body\" />\r\n </div>\r\n </dso-scrollable>\r\n\r\n {this.hasFooter && (\r\n <div class=\"dso-footer\">\r\n <slot name=\"footer\" />\r\n </div>\r\n )}\r\n </div>\r\n </div>\r\n </Fragment>\r\n );\r\n }\r\n\r\n private setFocusTrap() {\r\n if (this.dialogElement && !this.trap) {\r\n this.trap = createFocusTrap(this.dialogElement, {\r\n initialFocus: () => {\r\n if (this.initialFocus) {\r\n const initialFocusElement = this.host.querySelector<HTMLElement>(this.initialFocus);\r\n if (!initialFocusElement) {\r\n console.warn(`element '${this.initialFocus}' could not be found`);\r\n } else {\r\n return initialFocusElement;\r\n }\r\n }\r\n\r\n return (\r\n this.host.querySelector<HTMLButtonElement>(\"div[slot='footer'] .dso-primary\") ??\r\n this.modalElement?.querySelector<HTMLButtonElement>(\".dso-close\") ??\r\n false\r\n );\r\n },\r\n allowOutsideClick: true,\r\n setReturnFocus: (e) => this.returnFocus?.(e) ?? e,\r\n escapeDeactivates: true,\r\n tabbableOptions: {\r\n getShadowRoot: true,\r\n },\r\n clickOutsideDeactivates: (e) => {\r\n if (e instanceof MouseEvent && e.composedPath()[0] === this.modalElement) {\r\n return true;\r\n }\r\n\r\n return false;\r\n },\r\n onDeactivate: () => {\r\n delete this.trap;\r\n\r\n this.dsoClose.emit({ originalEvent: undefined });\r\n },\r\n }).activate();\r\n }\r\n }\r\n}\r\n"]}
1
+ {"version":3,"file":"modal.js","sourceRoot":"","sources":["../../../src/components/modal/modal.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,SAAS,EAAsB,OAAO,EAAE,KAAK,EAAgB,IAAI,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAC5G,OAAO,EAAE,EAAE,EAAE,MAAM,MAAM,CAAC;AAS1B,MAAM,OAAO,KAAK;;kBAOP,EAAE,EAAE;;;;gBAqBS,QAAQ;2BAQZ,IAAI;;EAQtB,iBAAiB;IACf,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,iBAAiB,CAAC,KAAK,IAAI,CAAC;EACvE,CAAC;EAED,gBAAgB;;IACd,MAAA,IAAI,CAAC,iBAAiB,0CAAE,SAAS,EAAE,CAAC;IACpC,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC;EAChD,CAAC;EAED,oBAAoB;;IAClB,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC;IACjD,MAAA,IAAI,CAAC,iBAAiB,0CAAE,KAAK,EAAE,CAAC;EAClC,CAAC;EAED,MAAM;;IACJ,OAAO,CACL,cACE,KAAK,EAAC,WAAW,EACjB,IAAI,EAAE,MAAA,IAAI,CAAC,IAAI,mCAAI,SAAS,gBACjB,MAAM,qBACA,IAAI,CAAC,MAAM,EAC5B,GAAG,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,iBAAiB,GAAG,OAAO,CAAC,EACpD,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE;QACd,CAAC,CAAC,cAAc,EAAE,CAAC;QAEnB,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,aAAa,EAAE,CAAC,EAAE,CAAC,CAAC;MAC3C,CAAC;MAED,WAAK,KAAK,EAAC,YAAY,EAAC,IAAI,EAAC,UAAU;QACpC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CACjB,WAAK,KAAK,EAAC,YAAY;UACrB,UAAI,EAAE,EAAE,IAAI,CAAC,MAAM,IAAG,IAAI,CAAC,UAAU,CAAM;UAC1C,IAAI,CAAC,eAAe,IAAI,CACvB,cAAQ,IAAI,EAAC,QAAQ,EAAC,KAAK,EAAC,WAAW,EAAC,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,aAAa,EAAE,CAAC,EAAE,CAAC;YAC9F,gBAAU,IAAI,EAAC,OAAO,GAAY;YAClC,YAAM,KAAK,EAAC,SAAS,cAAe,CAC7B,CACV,CACG,CACP,CAAC,CAAC,CAAC,CACF,YAAM,KAAK,EAAC,SAAS,EAAC,EAAE,EAAE,IAAI,CAAC,MAAM,cAE9B,CACR;QAED;UACE,WAAK,KAAK,EAAC,UAAU,EAAC,QAAQ,EAAE,CAAC;YAC/B,YAAM,IAAI,EAAC,MAAM,GAAG,CAChB,CACS;QAEhB,IAAI,CAAC,SAAS,IAAI,CACjB,WAAK,KAAK,EAAC,YAAY;UACrB,YAAM,IAAI,EAAC,QAAQ,GAAG,CAClB,CACP,CACG,CACC,CACV,CAAC;EACJ,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACF","sourcesContent":["import { h, Component, ComponentInterface, Element, Event, EventEmitter, Prop, State } from \"@stencil/core\";\r\nimport { v4 } from \"uuid\";\r\n\r\nimport { ModalCloseEvent } from \"./modal.interfaces\";\r\n\r\n@Component({\r\n tag: \"dso-modal\",\r\n styleUrl: \"modal.scss\",\r\n shadow: true,\r\n})\r\nexport class Modal implements ComponentInterface {\r\n private htmlDialogElement?: HTMLDialogElement;\r\n\r\n @Element()\r\n host!: HTMLDsoModalElement;\r\n\r\n @State()\r\n ariaId = v4();\r\n\r\n @State()\r\n hasFooter?: boolean;\r\n\r\n /**\r\n * when set the modal will be shown in fullscreen.\r\n */\r\n @Prop({ reflect: true })\r\n fullscreen?: boolean;\r\n\r\n /**\r\n * The title of the Modal.\r\n */\r\n @Prop()\r\n modalTitle?: string;\r\n\r\n /**\r\n * the role for the modal `dialog` | `alert` | `alertdialog`.\r\n */\r\n @Prop()\r\n role: string | null = \"dialog\";\r\n\r\n /**\r\n * when `false` the close button in the header will not be rendered. Defaults to `true`.\r\n *\r\n * Needs `modalTitle` to be set.\r\n */\r\n @Prop()\r\n showCloseButton = true;\r\n\r\n /**\r\n * Emitted when the user wants to close the Modal.\r\n */\r\n @Event()\r\n dsoClose!: EventEmitter<ModalCloseEvent>;\r\n\r\n componentWillLoad(): void {\r\n this.hasFooter = this.host.querySelector(\"[slot='footer']\") !== null;\r\n }\r\n\r\n componentDidLoad(): void {\r\n this.htmlDialogElement?.showModal();\r\n document.body.classList.add(\"dso-modal-open\");\r\n }\r\n\r\n disconnectedCallback(): void {\r\n document.body.classList.remove(\"dso-modal-open\");\r\n this.htmlDialogElement?.close();\r\n }\r\n\r\n render() {\r\n return (\r\n <dialog\r\n class=\"dso-modal\"\r\n role={this.role ?? undefined}\r\n aria-modal=\"true\"\r\n aria-labelledby={this.ariaId}\r\n ref={(element) => (this.htmlDialogElement = element)}\r\n onCancel={(e) => {\r\n e.preventDefault();\r\n\r\n this.dsoClose.emit({ originalEvent: e });\r\n }}\r\n >\r\n <div class=\"dso-dialog\" role=\"document\">\r\n {this.modalTitle ? (\r\n <div class=\"dso-header\">\r\n <h2 id={this.ariaId}>{this.modalTitle}</h2>\r\n {this.showCloseButton && (\r\n <button type=\"button\" class=\"dso-close\" onClick={(e) => this.dsoClose.emit({ originalEvent: e })}>\r\n <dso-icon icon=\"times\"></dso-icon>\r\n <span class=\"sr-only\">Sluiten</span>\r\n </button>\r\n )}\r\n </div>\r\n ) : (\r\n <span class=\"sr-only\" id={this.ariaId}>\r\n Dialoog\r\n </span>\r\n )}\r\n\r\n <dso-scrollable>\r\n <div class=\"dso-body\" tabIndex={0}>\r\n <slot name=\"body\" />\r\n </div>\r\n </dso-scrollable>\r\n\r\n {this.hasFooter && (\r\n <div class=\"dso-footer\">\r\n <slot name=\"footer\" />\r\n </div>\r\n )}\r\n </div>\r\n </dialog>\r\n );\r\n }\r\n}\r\n"]}
@@ -92,11 +92,17 @@ button.toggle-note:not([disabled]):hover {
92
92
  button.toggle-note:not([disabled]):active {
93
93
  color: #173521;
94
94
  }
95
- button.toggle-note.btn-align {
95
+ button.toggle-note.dso-align {
96
96
  line-height: calc(1.5em - 1px);
97
97
  padding: 11px 0;
98
98
  position: relative;
99
99
  }
100
+ button.toggle-note.dso-truncate {
101
+ max-width: 100%;
102
+ overflow: hidden;
103
+ text-overflow: ellipsis;
104
+ white-space: nowrap;
105
+ }
100
106
  button.toggle-note.dso-spinner-left::before {
101
107
  background-image: url("data:image/svg+xml,%3Csvg class='spinner' viewBox='0 0 100 100' xmlns='http://www.w3.org/2000/svg' %3E%3Cstyle%3E .spinner %7B animation: rotator 8s linear infinite; transform-origin: center; %7D @keyframes rotator %7B 0%25 %7B transform: rotate(0deg); %7D 100%25 %7B transform: rotate(360deg); %7D %7D .path %7B stroke-dasharray: 265; stroke-dashoffset: 0; transform-origin: center; stroke: %2339870c; animation: dash 2s ease-in-out infinite; %7D @keyframes dash %7B 0%25 %7B stroke-dashoffset: 265; %7D 50%25 %7B stroke-dashoffset: 65; transform:rotate(90deg); %7D 100%25 %7B stroke-dashoffset: 265; transform:rotate(360deg); %7D %3C/style%3E%3Ccircle class='path' fill='none' stroke-width='10' stroke-linecap='butt' cx='50' cy='50' r='45'%3E%3C/circle%3E%3C/svg%3E");
102
108
  background-repeat: no-repeat;