sveltacular 0.0.76 → 1.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 (374) hide show
  1. package/README.md +142 -15
  2. package/dist/forms/base-input-wrapper.svelte +99 -0
  3. package/dist/forms/base-input-wrapper.svelte.d.ts +15 -0
  4. package/dist/forms/bool-box/bool-box.svelte +30 -17
  5. package/dist/forms/bool-box/bool-box.svelte.d.ts +9 -21
  6. package/dist/forms/button/button.svelte +153 -89
  7. package/dist/forms/button/button.svelte.d.ts +25 -29
  8. package/dist/forms/check-box/check-box-group.svelte +63 -29
  9. package/dist/forms/check-box/check-box-group.svelte.d.ts +11 -27
  10. package/dist/forms/check-box/check-box.svelte +57 -33
  11. package/dist/forms/check-box/check-box.svelte.d.ts +15 -25
  12. package/dist/forms/check-box/index.d.ts +2 -0
  13. package/dist/forms/check-box/index.js +2 -0
  14. package/dist/forms/combo/new-or-existing-combo.svelte +37 -18
  15. package/dist/forms/combo/new-or-existing-combo.svelte.d.ts +15 -25
  16. package/dist/forms/combo-box/combo-box.svelte +655 -0
  17. package/dist/forms/combo-box/combo-box.svelte.d.ts +62 -0
  18. package/dist/forms/combo-box/index.d.ts +1 -0
  19. package/dist/forms/combo-box/index.js +1 -0
  20. package/dist/forms/date-box/date-box.svelte +80 -54
  21. package/dist/forms/date-box/date-box.svelte.d.ts +21 -32
  22. package/dist/forms/file-area/file-area.svelte +109 -68
  23. package/dist/forms/file-area/file-area.svelte.d.ts +12 -22
  24. package/dist/forms/file-box/file-box.svelte +40 -21
  25. package/dist/forms/file-box/file-box.svelte.d.ts +14 -25
  26. package/dist/forms/form-field.svelte +18 -15
  27. package/dist/forms/form-field.svelte.d.ts +8 -18
  28. package/dist/forms/form-footer.svelte +6 -3
  29. package/dist/forms/form-footer.svelte.d.ts +6 -26
  30. package/dist/forms/form-header.svelte +15 -4
  31. package/dist/forms/form-header.svelte.d.ts +8 -18
  32. package/dist/forms/form-label.svelte +15 -6
  33. package/dist/forms/form-label.svelte.d.ts +8 -19
  34. package/dist/forms/form-section.svelte +15 -4
  35. package/dist/forms/form-section.svelte.d.ts +8 -18
  36. package/dist/forms/form.svelte +30 -13
  37. package/dist/forms/form.svelte.d.ts +11 -22
  38. package/dist/forms/index.d.ts +26 -0
  39. package/dist/forms/index.js +31 -0
  40. package/dist/forms/info-box/info-box.svelte +19 -8
  41. package/dist/forms/info-box/info-box.svelte.d.ts +8 -19
  42. package/dist/forms/list-box/index.d.ts +2 -0
  43. package/dist/forms/list-box/index.js +1 -0
  44. package/dist/forms/list-box/list-box.svelte +190 -118
  45. package/dist/forms/list-box/list-box.svelte.d.ts +16 -26
  46. package/dist/forms/money-box/money-box.svelte +223 -190
  47. package/dist/forms/money-box/money-box.svelte.d.ts +16 -28
  48. package/dist/forms/number-box/number-box.svelte +84 -67
  49. package/dist/forms/number-box/number-box.svelte.d.ts +17 -28
  50. package/dist/forms/phone-box/index.d.ts +1 -0
  51. package/dist/forms/phone-box/index.js +1 -0
  52. package/dist/forms/phone-box/phone-box.svelte +152 -122
  53. package/dist/forms/phone-box/phone-box.svelte.d.ts +8 -20
  54. package/dist/forms/radio-group/index.d.ts +2 -0
  55. package/dist/forms/radio-group/index.js +2 -0
  56. package/dist/forms/radio-group/radio-box.svelte +23 -8
  57. package/dist/forms/radio-group/radio-box.svelte.d.ts +10 -19
  58. package/dist/forms/radio-group/radio-group.svelte +27 -13
  59. package/dist/forms/radio-group/radio-group.svelte.d.ts +10 -21
  60. package/dist/forms/slider/slider.svelte +210 -0
  61. package/dist/forms/slider/slider.svelte.d.ts +17 -0
  62. package/dist/forms/switch-box/switch-box.svelte +35 -21
  63. package/dist/forms/switch-box/switch-box.svelte.d.ts +9 -20
  64. package/dist/forms/text-area/text-area.svelte +89 -15
  65. package/dist/forms/text-area/text-area.svelte.d.ts +15 -23
  66. package/dist/forms/text-box/text-box.svelte +253 -75
  67. package/dist/forms/text-box/text-box.svelte.d.ts +28 -36
  68. package/dist/forms/time-box/time-box.svelte +67 -0
  69. package/dist/forms/time-box/time-box.svelte.d.ts +12 -0
  70. package/dist/forms/url-box/url-box.svelte +32 -18
  71. package/dist/forms/url-box/url-box.svelte.d.ts +9 -20
  72. package/dist/forms/validation.d.ts +60 -0
  73. package/dist/forms/validation.js +123 -0
  74. package/dist/generic/address/address.svelte +22 -13
  75. package/dist/generic/address/address.svelte.d.ts +9 -19
  76. package/dist/generic/avatar/avatar.svelte +86 -0
  77. package/dist/generic/avatar/avatar.svelte.d.ts +10 -0
  78. package/dist/generic/badge/badge.svelte +82 -0
  79. package/dist/generic/badge/badge.svelte.d.ts +11 -0
  80. package/dist/generic/card/card-container.svelte +41 -13
  81. package/dist/generic/card/card-container.svelte.d.ts +8 -18
  82. package/dist/generic/card/card.svelte +47 -29
  83. package/dist/generic/card/card.svelte.d.ts +9 -19
  84. package/dist/generic/card/index.d.ts +3 -0
  85. package/dist/generic/card/index.js +2 -0
  86. package/dist/generic/chip/chip.svelte +90 -0
  87. package/dist/generic/chip/chip.svelte.d.ts +11 -0
  88. package/dist/generic/date/date-time.svelte +86 -64
  89. package/dist/generic/date/date-time.svelte.d.ts +10 -20
  90. package/dist/generic/divider/divider.svelte.d.ts +22 -19
  91. package/dist/generic/dot/dot.svelte +13 -4
  92. package/dist/generic/dot/dot.svelte.d.ts +7 -17
  93. package/dist/generic/dropdown-item/dropdown-item.svelte +24 -12
  94. package/dist/generic/dropdown-item/dropdown-item.svelte.d.ts +10 -21
  95. package/dist/generic/email/email.svelte +6 -4
  96. package/dist/generic/email/email.svelte.d.ts +5 -15
  97. package/dist/generic/empty/empty.svelte +57 -26
  98. package/dist/generic/empty/empty.svelte.d.ts +11 -21
  99. package/dist/generic/header/header.svelte +26 -10
  100. package/dist/generic/header/header.svelte.d.ts +10 -20
  101. package/dist/generic/index.d.ts +28 -0
  102. package/dist/generic/index.js +31 -0
  103. package/dist/generic/link/link.svelte +20 -7
  104. package/dist/generic/link/link.svelte.d.ts +11 -21
  105. package/dist/generic/list/index.d.ts +4 -0
  106. package/dist/generic/list/index.js +3 -0
  107. package/dist/generic/list/list-item.svelte +17 -13
  108. package/dist/generic/list/list-item.svelte.d.ts +6 -15
  109. package/dist/generic/list/list.d.ts +2 -2
  110. package/dist/generic/list/list.svelte +28 -15
  111. package/dist/generic/list/list.svelte.d.ts +9 -19
  112. package/dist/generic/menu/menu.svelte +163 -57
  113. package/dist/generic/menu/menu.svelte.d.ts +16 -24
  114. package/dist/generic/notice/notice.svelte +119 -81
  115. package/dist/generic/notice/notice.svelte.d.ts +17 -26
  116. package/dist/generic/overlay.svelte +40 -14
  117. package/dist/generic/overlay.svelte.d.ts +9 -19
  118. package/dist/generic/panel/panel.svelte +16 -6
  119. package/dist/generic/panel/panel.svelte.d.ts +8 -18
  120. package/dist/generic/phone/phone.svelte +30 -24
  121. package/dist/generic/phone/phone.svelte.d.ts +6 -16
  122. package/dist/generic/pill/pill.svelte +47 -33
  123. package/dist/generic/pill/pill.svelte.d.ts +10 -21
  124. package/dist/generic/popover/popover.svelte +226 -0
  125. package/dist/generic/popover/popover.svelte.d.ts +15 -0
  126. package/dist/generic/rating/rating.svelte +85 -0
  127. package/dist/generic/rating/rating.svelte.d.ts +11 -0
  128. package/dist/generic/scorecard/scorecard.svelte +34 -21
  129. package/dist/generic/scorecard/scorecard.svelte.d.ts +9 -19
  130. package/dist/generic/section/section.svelte +28 -9
  131. package/dist/generic/section/section.svelte.d.ts +11 -21
  132. package/dist/generic/spinner/spinner.svelte +64 -0
  133. package/dist/generic/spinner/spinner.svelte.d.ts +8 -0
  134. package/dist/generic/theme-provider/index.d.ts +1 -0
  135. package/dist/generic/theme-provider/index.js +1 -0
  136. package/dist/generic/theme-provider/theme-provider-demo.svelte +182 -0
  137. package/dist/generic/theme-provider/theme-provider-demo.svelte.d.ts +3 -0
  138. package/dist/generic/theme-provider/theme-provider.svelte +83 -0
  139. package/dist/generic/theme-provider/theme-provider.svelte.d.ts +44 -0
  140. package/dist/generic/toaster/toaster.svelte +31 -6
  141. package/dist/generic/toaster/toaster.svelte.d.ts +7 -15
  142. package/dist/generic/tooltip/tooltip.svelte +389 -0
  143. package/dist/generic/tooltip/tooltip.svelte.d.ts +21 -0
  144. package/dist/helpers/ago.d.ts +7 -1
  145. package/dist/helpers/ago.js +6 -0
  146. package/dist/helpers/animation-actions.d.ts +124 -0
  147. package/dist/helpers/animation-actions.js +299 -0
  148. package/dist/helpers/animations.d.ts +198 -0
  149. package/dist/helpers/animations.js +280 -0
  150. package/dist/helpers/announcer.d.ts +118 -0
  151. package/dist/helpers/announcer.js +250 -0
  152. package/dist/helpers/copy-to-clipboard.svelte.d.ts +5 -0
  153. package/dist/helpers/copy-to-clipboard.svelte.js +28 -0
  154. package/dist/helpers/debounce.d.ts +7 -0
  155. package/dist/helpers/debounce.js +7 -0
  156. package/dist/helpers/focus.d.ts +123 -0
  157. package/dist/helpers/focus.js +335 -0
  158. package/dist/helpers/fuzzy-search.d.ts +41 -0
  159. package/dist/helpers/fuzzy-search.js +114 -0
  160. package/dist/helpers/index.d.ts +24 -0
  161. package/dist/helpers/index.js +24 -0
  162. package/dist/helpers/navigate-to.d.ts +4 -0
  163. package/dist/helpers/navigate-to.js +4 -0
  164. package/dist/helpers/positioning.d.ts +97 -0
  165. package/dist/helpers/positioning.js +230 -0
  166. package/dist/helpers/round-to-decimals.d.ts +7 -5
  167. package/dist/helpers/round-to-decimals.js +7 -5
  168. package/dist/helpers/spring.svelte.d.ts +97 -0
  169. package/dist/helpers/spring.svelte.js +216 -0
  170. package/dist/helpers/subscribable.d.ts +1 -2
  171. package/dist/helpers/theme.svelte.d.ts +63 -0
  172. package/dist/helpers/theme.svelte.js +123 -0
  173. package/dist/helpers/unique-id.d.ts +4 -0
  174. package/dist/helpers/unique-id.js +4 -0
  175. package/dist/helpers/use-position.svelte.d.ts +96 -0
  176. package/dist/helpers/use-position.svelte.js +189 -0
  177. package/dist/helpers/use-virtual-list.svelte.d.ts +121 -0
  178. package/dist/helpers/use-virtual-list.svelte.js +239 -0
  179. package/dist/icons/angle-right-icon.svelte +2 -1
  180. package/dist/icons/angle-right-icon.svelte.d.ts +16 -12
  181. package/dist/icons/angle-up-icon.svelte.d.ts +22 -19
  182. package/dist/icons/check-icon.svelte.d.ts +22 -19
  183. package/dist/icons/copy-icon.svelte +46 -0
  184. package/dist/icons/copy-icon.svelte.d.ts +6 -0
  185. package/dist/icons/envelope-icon.svelte.d.ts +22 -19
  186. package/dist/icons/folder-open-icon.svelte.d.ts +22 -19
  187. package/dist/icons/hamburger-icon.svelte.d.ts +22 -19
  188. package/dist/icons/home-icon.svelte +2 -1
  189. package/dist/icons/home-icon.svelte.d.ts +16 -12
  190. package/dist/icons/index.d.ts +13 -0
  191. package/dist/icons/index.js +13 -0
  192. package/dist/icons/link-icon.svelte.d.ts +22 -19
  193. package/dist/icons/mobile-phone-icon.svelte.d.ts +22 -19
  194. package/dist/icons/phone-icon.svelte.d.ts +22 -19
  195. package/dist/icons/svg-icon.svelte +46 -12
  196. package/dist/icons/svg-icon.svelte.d.ts +13 -23
  197. package/dist/icons/upload-icon.svelte.d.ts +22 -19
  198. package/dist/images/icon.svelte +9 -3
  199. package/dist/images/icon.svelte.d.ts +6 -16
  200. package/dist/images/image.svelte +28 -10
  201. package/dist/images/image.svelte.d.ts +14 -26
  202. package/dist/images/index.d.ts +2 -0
  203. package/dist/images/index.js +2 -0
  204. package/dist/index.d.ts +13 -122
  205. package/dist/index.js +27 -135
  206. package/dist/layout/flex-col.svelte +65 -22
  207. package/dist/layout/flex-col.svelte.d.ts +12 -22
  208. package/dist/layout/flex-item.svelte +13 -3
  209. package/dist/layout/flex-item.svelte.d.ts +8 -18
  210. package/dist/layout/flex-row.svelte +70 -21
  211. package/dist/layout/flex-row.svelte.d.ts +14 -24
  212. package/dist/layout/grid.svelte +7 -1
  213. package/dist/layout/grid.svelte.d.ts +6 -26
  214. package/dist/layout/index.d.ts +4 -0
  215. package/dist/layout/index.js +4 -0
  216. package/dist/modals/alert.svelte +42 -28
  217. package/dist/modals/alert.svelte.d.ts +13 -24
  218. package/dist/modals/confirm.svelte +54 -37
  219. package/dist/modals/confirm.svelte.d.ts +16 -27
  220. package/dist/modals/dialog-body.svelte +10 -4
  221. package/dist/modals/dialog-body.svelte.d.ts +6 -26
  222. package/dist/modals/dialog-close-button.svelte +15 -9
  223. package/dist/modals/dialog-close-button.svelte.d.ts +6 -17
  224. package/dist/modals/dialog-footer.svelte +6 -3
  225. package/dist/modals/dialog-footer.svelte.d.ts +6 -26
  226. package/dist/modals/dialog-header.svelte +13 -1
  227. package/dist/modals/dialog-header.svelte.d.ts +7 -26
  228. package/dist/modals/dialog-window.svelte +42 -14
  229. package/dist/modals/dialog-window.svelte.d.ts +9 -17
  230. package/dist/modals/index.d.ts +9 -0
  231. package/dist/modals/index.js +9 -0
  232. package/dist/modals/modal.svelte +88 -25
  233. package/dist/modals/modal.svelte.d.ts +14 -22
  234. package/dist/modals/prompt.svelte +71 -50
  235. package/dist/modals/prompt.svelte.d.ts +19 -30
  236. package/dist/navigation/accordion/accordion.svelte +104 -0
  237. package/dist/navigation/accordion/accordion.svelte.d.ts +9 -0
  238. package/dist/navigation/app-bar/app-bar.svelte +26 -20
  239. package/dist/navigation/app-bar/app-bar.svelte.d.ts +10 -20
  240. package/dist/navigation/app-bar/app-branding.svelte +10 -5
  241. package/dist/navigation/app-bar/app-branding.svelte.d.ts +6 -15
  242. package/dist/navigation/app-bar/app-logo.svelte +20 -5
  243. package/dist/navigation/app-bar/app-logo.svelte.d.ts +9 -19
  244. package/dist/navigation/app-bar/app-nav-item.svelte +26 -14
  245. package/dist/navigation/app-bar/app-nav-item.svelte.d.ts +9 -20
  246. package/dist/navigation/app-bar/app-nav.svelte +39 -12
  247. package/dist/navigation/app-bar/app-nav.svelte.d.ts +8 -18
  248. package/dist/navigation/app-bar/index.d.ts +5 -0
  249. package/dist/navigation/app-bar/index.js +5 -0
  250. package/dist/navigation/breadcrumbs/breadcrumbs.svelte +54 -28
  251. package/dist/navigation/breadcrumbs/breadcrumbs.svelte.d.ts +12 -21
  252. package/dist/navigation/command-palette/command-palette.svelte +758 -0
  253. package/dist/navigation/command-palette/command-palette.svelte.d.ts +65 -0
  254. package/dist/navigation/command-palette/index.d.ts +2 -0
  255. package/dist/navigation/command-palette/index.js +1 -0
  256. package/dist/navigation/context-menu/README.md +146 -0
  257. package/dist/navigation/context-menu/context-menu-divider.svelte +21 -0
  258. package/dist/navigation/context-menu/context-menu-divider.svelte.d.ts +18 -0
  259. package/dist/navigation/context-menu/context-menu-item.svelte +268 -0
  260. package/dist/navigation/context-menu/context-menu-item.svelte.d.ts +19 -0
  261. package/dist/navigation/context-menu/context-menu.svelte +226 -0
  262. package/dist/navigation/context-menu/context-menu.svelte.d.ts +38 -0
  263. package/dist/navigation/context-menu/index.d.ts +3 -0
  264. package/dist/navigation/context-menu/index.js +3 -0
  265. package/dist/navigation/drawer/drawer.svelte +137 -0
  266. package/dist/navigation/drawer/drawer.svelte.d.ts +11 -0
  267. package/dist/navigation/dropdown-button/dropdown-button.svelte +58 -20
  268. package/dist/navigation/dropdown-button/dropdown-button.svelte.d.ts +10 -20
  269. package/dist/navigation/index.d.ts +11 -0
  270. package/dist/navigation/index.js +14 -0
  271. package/dist/navigation/pagination/pagination.svelte +55 -42
  272. package/dist/navigation/pagination/pagination.svelte.d.ts +10 -21
  273. package/dist/navigation/side-bar/side-bar.svelte +18 -9
  274. package/dist/navigation/side-bar/side-bar.svelte.d.ts +7 -17
  275. package/dist/navigation/tabs/index.d.ts +4 -0
  276. package/dist/navigation/tabs/index.js +3 -0
  277. package/dist/navigation/tabs/tab-context.d.ts +12 -6
  278. package/dist/navigation/tabs/tab-group.svelte +268 -55
  279. package/dist/navigation/tabs/tab-group.svelte.d.ts +9 -20
  280. package/dist/navigation/tabs/tab.svelte +64 -34
  281. package/dist/navigation/tabs/tab.svelte.d.ts +11 -22
  282. package/dist/navigation/wizard/index.d.ts +3 -0
  283. package/dist/navigation/wizard/index.js +2 -0
  284. package/dist/navigation/wizard/wizard-context.d.ts +13 -8
  285. package/dist/navigation/wizard/wizard-step.svelte +38 -15
  286. package/dist/navigation/wizard/wizard-step.svelte.d.ts +8 -18
  287. package/dist/navigation/wizard/wizard.svelte +123 -89
  288. package/dist/navigation/wizard/wizard.svelte.d.ts +15 -26
  289. package/dist/placeholders/index.d.ts +6 -0
  290. package/dist/placeholders/index.js +6 -0
  291. package/dist/placeholders/loading.svelte +39 -23
  292. package/dist/placeholders/loading.svelte.d.ts +10 -17
  293. package/dist/placeholders/progress.svelte +7 -6
  294. package/dist/placeholders/progress.svelte.d.ts +5 -15
  295. package/dist/placeholders/skeleton-input.svelte +66 -38
  296. package/dist/placeholders/skeleton-input.svelte.d.ts +5 -15
  297. package/dist/placeholders/skeleton-paragraph.svelte +25 -0
  298. package/dist/placeholders/skeleton-paragraph.svelte.d.ts +8 -0
  299. package/dist/placeholders/skeleton-table.svelte +75 -0
  300. package/dist/placeholders/skeleton-table.svelte.d.ts +8 -0
  301. package/dist/placeholders/skeleton-text.svelte +46 -16
  302. package/dist/placeholders/skeleton-text.svelte.d.ts +7 -17
  303. package/dist/tables/cell-renderers.d.ts +24 -0
  304. package/dist/tables/cell-renderers.js +228 -0
  305. package/dist/tables/data-grid.svelte +332 -135
  306. package/dist/tables/data-grid.svelte.d.ts +34 -33
  307. package/dist/tables/index.d.ts +10 -0
  308. package/dist/tables/index.js +12 -0
  309. package/dist/tables/table-caption.svelte +13 -4
  310. package/dist/tables/table-caption.svelte.d.ts +8 -18
  311. package/dist/tables/table-cell.svelte +45 -15
  312. package/dist/tables/table-cell.svelte.d.ts +10 -19
  313. package/dist/tables/table-context.svelte.d.ts +32 -0
  314. package/dist/tables/table-context.svelte.js +160 -0
  315. package/dist/tables/table-header-cell.svelte +158 -19
  316. package/dist/tables/table-header-cell.svelte.d.ts +15 -19
  317. package/dist/tables/table-header.svelte +31 -6
  318. package/dist/tables/table-header.svelte.d.ts +7 -26
  319. package/dist/tables/table-row.svelte +87 -7
  320. package/dist/tables/table-row.svelte.d.ts +10 -26
  321. package/dist/tables/table.svelte +61 -2
  322. package/dist/tables/table.svelte.d.ts +13 -26
  323. package/dist/test-utils/accessibility-helpers.d.ts +80 -0
  324. package/dist/test-utils/accessibility-helpers.js +220 -0
  325. package/dist/test-utils/index.d.ts +8 -0
  326. package/dist/test-utils/index.js +8 -0
  327. package/dist/test-utils/mock-helpers.d.ts +68 -0
  328. package/dist/test-utils/mock-helpers.js +165 -0
  329. package/dist/test-utils/render-helpers.d.ts +55 -0
  330. package/dist/test-utils/render-helpers.js +114 -0
  331. package/dist/test-utils/setup.d.ts +5 -0
  332. package/dist/test-utils/setup.js +91 -0
  333. package/dist/test-utils/test-data.d.ts +102 -0
  334. package/dist/test-utils/test-data.js +99 -0
  335. package/dist/timeline/index.d.ts +2 -0
  336. package/dist/timeline/index.js +2 -0
  337. package/dist/timeline/timeline-item.svelte +26 -9
  338. package/dist/timeline/timeline-item.svelte.d.ts +13 -23
  339. package/dist/timeline/timeline.svelte +12 -6
  340. package/dist/timeline/timeline.svelte.d.ts +6 -26
  341. package/dist/types/data.d.ts +61 -0
  342. package/dist/types/date.d.ts +1 -1
  343. package/dist/types/form.d.ts +20 -2
  344. package/dist/types/index.d.ts +5 -0
  345. package/dist/types/index.js +5 -0
  346. package/dist/types/size.d.ts +22 -0
  347. package/dist/types/size.js +22 -0
  348. package/dist/typography/code-block.svelte +89 -10
  349. package/dist/typography/code-block.svelte.d.ts +7 -17
  350. package/dist/typography/code.svelte +89 -0
  351. package/dist/typography/code.svelte.d.ts +7 -0
  352. package/dist/typography/headline.svelte +29 -9
  353. package/dist/typography/headline.svelte.d.ts +8 -18
  354. package/dist/typography/index.d.ts +6 -0
  355. package/dist/typography/index.js +6 -0
  356. package/dist/typography/paragraph.svelte +18 -10
  357. package/dist/typography/paragraph.svelte.d.ts +6 -26
  358. package/dist/typography/subtitle.svelte +18 -4
  359. package/dist/typography/subtitle.svelte.d.ts +8 -18
  360. package/dist/typography/text.svelte +20 -5
  361. package/dist/typography/text.svelte.d.ts +9 -19
  362. package/package.json +46 -36
  363. package/dist/navigation/accordian/accordian.svelte +0 -62
  364. package/dist/navigation/accordian/accordian.svelte.d.ts +0 -19
  365. package/dist/tables/table-body.svelte +0 -3
  366. package/dist/tables/table-body.svelte.d.ts +0 -27
  367. package/dist/tables/table-footer-cell.svelte +0 -22
  368. package/dist/tables/table-footer-cell.svelte.d.ts +0 -18
  369. package/dist/tables/table-footer-row.svelte +0 -3
  370. package/dist/tables/table-footer-row.svelte.d.ts +0 -27
  371. package/dist/tables/table-footer.svelte +0 -13
  372. package/dist/tables/table-footer.svelte.d.ts +0 -27
  373. package/dist/tables/table-header-row.svelte +0 -4
  374. package/dist/tables/table-header-row.svelte.d.ts +0 -27
@@ -1,26 +1,15 @@
1
- import { SvelteComponent } from "svelte";
1
+ import type { Snippet } from 'svelte';
2
2
  import type { FormFieldSizeOptions } from '../types/form.js';
3
- declare const __propDef: {
4
- props: {
5
- open?: boolean | undefined;
6
- title?: string | undefined;
7
- size?: FormFieldSizeOptions | undefined;
8
- buttonText?: string | undefined;
9
- buttonStyle?: "primary" | "secondary" | "danger" | undefined;
10
- showCloseButton?: boolean | undefined;
11
- };
12
- events: {
13
- close: CustomEvent<void>;
14
- } & {
15
- [evt: string]: CustomEvent<any>;
16
- };
17
- slots: {
18
- default: {};
19
- };
3
+ type $$ComponentProps = {
4
+ open?: boolean;
5
+ title?: string | undefined;
6
+ size?: FormFieldSizeOptions;
7
+ buttonText?: string;
8
+ buttonVariant?: 'primary' | 'secondary' | 'danger';
9
+ showCloseButton?: boolean;
10
+ onClose?: (() => void) | undefined;
11
+ children: Snippet;
20
12
  };
21
- export type AlertProps = typeof __propDef.props;
22
- export type AlertEvents = typeof __propDef.events;
23
- export type AlertSlots = typeof __propDef.slots;
24
- export default class Alert extends SvelteComponent<AlertProps, AlertEvents, AlertSlots> {
25
- }
26
- export {};
13
+ declare const Alert: import("svelte").Component<$$ComponentProps, {}, "open">;
14
+ type Alert = ReturnType<typeof Alert>;
15
+ export default Alert;
@@ -1,52 +1,69 @@
1
- <script>import DialogBody from "./dialog-body.svelte";
2
- import DialogFooter from "./dialog-footer.svelte";
3
- import DialogHeader from "./dialog-header.svelte";
4
- import Dialog from "./dialog-window.svelte";
5
- import Overlay from "../generic/overlay.svelte";
6
- import { createEventDispatcher } from "svelte";
7
- import Button from "../forms/button/button.svelte";
8
- import Divider from "../generic/divider/divider.svelte";
9
- import DialogCloseButton from "./dialog-close-button.svelte";
10
- export let open = false;
11
- export let title = void 0;
12
- export let size = "md";
13
- export let yesText = "Yes";
14
- export let noText = "No";
15
- export let yesStyle = "primary";
16
- export let noStyle = "secondary";
17
- export let showCloseButton = true;
18
- const dispatch = createEventDispatcher();
19
- const no = () => {
20
- dispatch("no");
21
- open = false;
22
- };
23
- const yes = () => {
24
- dispatch("yes");
25
- open = false;
26
- };
1
+ <script lang="ts">
2
+ import type { Snippet } from 'svelte';
3
+ import DialogBody from './dialog-body.svelte';
4
+ import DialogFooter from './dialog-footer.svelte';
5
+ import DialogHeader from './dialog-header.svelte';
6
+ import Dialog from './dialog-window.svelte';
7
+ import Overlay from '../generic/overlay.svelte';
8
+ import type { FormFieldSizeOptions } from '../types/form.js';
9
+ import Button from '../forms/button/button.svelte';
10
+ import Divider from '../generic/divider/divider.svelte';
11
+ import DialogCloseButton from './dialog-close-button.svelte';
12
+
13
+ let {
14
+ open = $bindable(false),
15
+ title = undefined,
16
+ size = 'md' as FormFieldSizeOptions,
17
+ yesText = 'Yes',
18
+ noText = 'No',
19
+ yesVariant = 'primary' as 'primary' | 'secondary' | 'danger',
20
+ noVariant = 'secondary' as 'primary' | 'secondary' | 'danger',
21
+ showCloseButton = true,
22
+ onYes = undefined,
23
+ onNo = undefined,
24
+ children
25
+ }: {
26
+ open?: boolean;
27
+ title?: string | undefined;
28
+ size?: FormFieldSizeOptions;
29
+ yesText?: string;
30
+ noText?: string;
31
+ yesVariant?: 'primary' | 'secondary' | 'danger';
32
+ noVariant?: 'primary' | 'secondary' | 'danger';
33
+ showCloseButton?: boolean;
34
+ onYes?: (() => void) | undefined;
35
+ onNo?: (() => void) | undefined;
36
+ children: Snippet;
37
+ } = $props();
38
+
39
+ const no = () => {
40
+ open = false;
41
+ onNo?.();
42
+ };
43
+
44
+ const yes = () => {
45
+ open = false;
46
+ onYes?.();
47
+ };
27
48
  </script>
28
49
 
29
50
  {#if open}
30
- <Overlay on:click={no}>
31
- <Dialog {size}>
51
+ <Overlay onClick={no}>
52
+ <Dialog {size} role="alertdialog" aria-modal="true" aria-labelledby={title ? 'confirm-title' : undefined}>
32
53
  {#if title}
33
- <DialogHeader>
54
+ <DialogHeader id="confirm-title">
34
55
  {title}
35
56
  </DialogHeader>
36
57
  <Divider />
37
58
  {/if}
38
- <DialogCloseButton show={showCloseButton} on:click={no} />
59
+ <DialogCloseButton show={showCloseButton} onClick={no} />
39
60
  <DialogBody>
40
- <slot />
61
+ {@render children?.()}
41
62
  </DialogBody>
42
63
  <Divider />
43
64
  <DialogFooter>
44
- <Button on:click={no} style={noStyle} size="full">
45
- {noText}
46
- </Button>
47
- <Button on:click={yes} style={yesStyle} size="full">
48
- {yesText}
49
- </Button>
65
+ <Button onClick={no} variant={noVariant} size="full" label={noText} />
66
+ <Button onClick={yes} variant={yesVariant} size="full" label={yesText} />
50
67
  </DialogFooter>
51
68
  </Dialog>
52
69
  </Overlay>
@@ -1,29 +1,18 @@
1
- import { SvelteComponent } from "svelte";
1
+ import type { Snippet } from 'svelte';
2
2
  import type { FormFieldSizeOptions } from '../types/form.js';
3
- declare const __propDef: {
4
- props: {
5
- open?: boolean | undefined;
6
- title?: string | undefined;
7
- size?: FormFieldSizeOptions | undefined;
8
- yesText?: string | undefined;
9
- noText?: string | undefined;
10
- yesStyle?: "primary" | "secondary" | "danger" | undefined;
11
- noStyle?: "primary" | "secondary" | "danger" | undefined;
12
- showCloseButton?: boolean | undefined;
13
- };
14
- events: {
15
- yes: CustomEvent<void>;
16
- no: CustomEvent<void>;
17
- } & {
18
- [evt: string]: CustomEvent<any>;
19
- };
20
- slots: {
21
- default: {};
22
- };
3
+ type $$ComponentProps = {
4
+ open?: boolean;
5
+ title?: string | undefined;
6
+ size?: FormFieldSizeOptions;
7
+ yesText?: string;
8
+ noText?: string;
9
+ yesVariant?: 'primary' | 'secondary' | 'danger';
10
+ noVariant?: 'primary' | 'secondary' | 'danger';
11
+ showCloseButton?: boolean;
12
+ onYes?: (() => void) | undefined;
13
+ onNo?: (() => void) | undefined;
14
+ children: Snippet;
23
15
  };
24
- export type ConfirmProps = typeof __propDef.props;
25
- export type ConfirmEvents = typeof __propDef.events;
26
- export type ConfirmSlots = typeof __propDef.slots;
27
- export default class Confirm extends SvelteComponent<ConfirmProps, ConfirmEvents, ConfirmSlots> {
28
- }
29
- export {};
16
+ declare const Confirm: import("svelte").Component<$$ComponentProps, {}, "open">;
17
+ type Confirm = ReturnType<typeof Confirm>;
18
+ export default Confirm;
@@ -1,9 +1,15 @@
1
+ <script lang="ts">
2
+ import type { Snippet } from 'svelte';
3
+
4
+ let { children }: { children?: Snippet } = $props();
5
+ </script>
6
+
1
7
  <div>
2
- <slot />
8
+ {@render children?.()}
3
9
  </div>
4
10
 
5
11
  <style>div {
6
- color: #000;
7
- margin-top: 1rem;
8
- margin-bottom: 1rem;
12
+ color: var(--modal-body-fg);
13
+ margin-top: var(--spacing-base);
14
+ margin-bottom: var(--spacing-base);
9
15
  }</style>
@@ -1,27 +1,7 @@
1
- /** @typedef {typeof __propDef.props} DialogBodyProps */
2
- /** @typedef {typeof __propDef.events} DialogBodyEvents */
3
- /** @typedef {typeof __propDef.slots} DialogBodySlots */
4
- export default class DialogBody extends SvelteComponent<{
5
- [x: string]: never;
6
- }, {
7
- [evt: string]: CustomEvent<any>;
8
- }, {
9
- default: {};
10
- }> {
11
- }
12
- export type DialogBodyProps = typeof __propDef.props;
13
- export type DialogBodyEvents = typeof __propDef.events;
14
- export type DialogBodySlots = typeof __propDef.slots;
15
- import { SvelteComponent } from "svelte";
16
- declare const __propDef: {
17
- props: {
18
- [x: string]: never;
19
- };
20
- events: {
21
- [evt: string]: CustomEvent<any>;
22
- };
23
- slots: {
24
- default: {};
25
- };
1
+ import type { Snippet } from 'svelte';
2
+ type $$ComponentProps = {
3
+ children?: Snippet;
26
4
  };
27
- export {};
5
+ declare const DialogBody: import("svelte").Component<$$ComponentProps, {}, "">;
6
+ type DialogBody = ReturnType<typeof DialogBody>;
7
+ export default DialogBody;
@@ -1,15 +1,21 @@
1
- <script>import { createEventDispatcher } from "svelte";
2
- const dispatch = createEventDispatcher();
3
- export let show = true;
4
- const onClick = (e) => {
5
- e.preventDefault();
6
- e.stopPropagation();
7
- dispatch("click");
8
- };
1
+ <script lang="ts">
2
+ let {
3
+ show = true,
4
+ onClick = undefined
5
+ }: {
6
+ show?: boolean;
7
+ onClick?: (() => void) | undefined;
8
+ } = $props();
9
+
10
+ const handleClick = (e: Event) => {
11
+ e.preventDefault();
12
+ e.stopPropagation();
13
+ onClick?.();
14
+ };
9
15
  </script>
10
16
 
11
17
  {#if show}
12
- <button type="button" on:click={onClick}>X</button>
18
+ <button type="button" onclick={handleClick} aria-label="Close dialog">X</button>
13
19
  {/if}
14
20
 
15
21
  <style>button {
@@ -1,18 +1,7 @@
1
- import { SvelteComponent } from "svelte";
2
- declare const __propDef: {
3
- props: {
4
- show?: boolean | undefined;
5
- };
6
- events: {
7
- click: CustomEvent<void>;
8
- } & {
9
- [evt: string]: CustomEvent<any>;
10
- };
11
- slots: {};
1
+ type $$ComponentProps = {
2
+ show?: boolean;
3
+ onClick?: (() => void) | undefined;
12
4
  };
13
- export type DialogCloseButtonProps = typeof __propDef.props;
14
- export type DialogCloseButtonEvents = typeof __propDef.events;
15
- export type DialogCloseButtonSlots = typeof __propDef.slots;
16
- export default class DialogCloseButton extends SvelteComponent<DialogCloseButtonProps, DialogCloseButtonEvents, DialogCloseButtonSlots> {
17
- }
18
- export {};
5
+ declare const DialogCloseButton: import("svelte").Component<$$ComponentProps, {}, "">;
6
+ type DialogCloseButton = ReturnType<typeof DialogCloseButton>;
7
+ export default DialogCloseButton;
@@ -1,9 +1,12 @@
1
- <script>
1
+ <script lang="ts">
2
+ import type { Snippet } from 'svelte';
2
3
  import FlexRow from '../layout/flex-row.svelte';
4
+
5
+ let { children }: { children?: Snippet } = $props();
3
6
  </script>
4
7
 
5
8
  <footer>
6
- <FlexRow layout="stretch">
7
- <slot />
9
+ <FlexRow justifyContent="stretch">
10
+ {@render children?.()}
8
11
  </FlexRow>
9
12
  </footer>
@@ -1,27 +1,7 @@
1
- /** @typedef {typeof __propDef.props} DialogFooterProps */
2
- /** @typedef {typeof __propDef.events} DialogFooterEvents */
3
- /** @typedef {typeof __propDef.slots} DialogFooterSlots */
4
- export default class DialogFooter extends SvelteComponent<{
5
- [x: string]: never;
6
- }, {
7
- [evt: string]: CustomEvent<any>;
8
- }, {
9
- default: {};
10
- }> {
11
- }
12
- export type DialogFooterProps = typeof __propDef.props;
13
- export type DialogFooterEvents = typeof __propDef.events;
14
- export type DialogFooterSlots = typeof __propDef.slots;
15
- import { SvelteComponent } from "svelte";
16
- declare const __propDef: {
17
- props: {
18
- [x: string]: never;
19
- };
20
- events: {
21
- [evt: string]: CustomEvent<any>;
22
- };
23
- slots: {
24
- default: {};
25
- };
1
+ import type { Snippet } from 'svelte';
2
+ type $$ComponentProps = {
3
+ children?: Snippet;
26
4
  };
27
- export {};
5
+ declare const DialogFooter: import("svelte").Component<$$ComponentProps, {}, "">;
6
+ type DialogFooter = ReturnType<typeof DialogFooter>;
7
+ export default DialogFooter;
@@ -1,5 +1,17 @@
1
+ <script lang="ts">
2
+ import type { Snippet } from 'svelte';
3
+
4
+ let {
5
+ id = undefined,
6
+ children
7
+ }: {
8
+ id?: string | undefined;
9
+ children?: Snippet;
10
+ } = $props();
11
+ </script>
12
+
1
13
  <header>
2
- <h1><slot /></h1>
14
+ <h1 {id}>{@render children?.()}</h1>
3
15
  </header>
4
16
 
5
17
  <style>header {
@@ -1,27 +1,8 @@
1
- /** @typedef {typeof __propDef.props} DialogHeaderProps */
2
- /** @typedef {typeof __propDef.events} DialogHeaderEvents */
3
- /** @typedef {typeof __propDef.slots} DialogHeaderSlots */
4
- export default class DialogHeader extends SvelteComponent<{
5
- [x: string]: never;
6
- }, {
7
- [evt: string]: CustomEvent<any>;
8
- }, {
9
- default: {};
10
- }> {
11
- }
12
- export type DialogHeaderProps = typeof __propDef.props;
13
- export type DialogHeaderEvents = typeof __propDef.events;
14
- export type DialogHeaderSlots = typeof __propDef.slots;
15
- import { SvelteComponent } from "svelte";
16
- declare const __propDef: {
17
- props: {
18
- [x: string]: never;
19
- };
20
- events: {
21
- [evt: string]: CustomEvent<any>;
22
- };
23
- slots: {
24
- default: {};
25
- };
1
+ import type { Snippet } from 'svelte';
2
+ type $$ComponentProps = {
3
+ id?: string | undefined;
4
+ children?: Snippet;
26
5
  };
27
- export {};
6
+ declare const DialogHeader: import("svelte").Component<$$ComponentProps, {}, "">;
7
+ type DialogHeader = ReturnType<typeof DialogHeader>;
8
+ export default DialogHeader;
@@ -1,24 +1,52 @@
1
- <script>export let size = "md";
2
- const captureClick = (e) => {
3
- e.stopPropagation();
4
- };
1
+ <script lang="ts">
2
+ import type { Snippet } from 'svelte';
3
+ import type { FormFieldSizeOptions } from '../types/form.js';
4
+
5
+ let {
6
+ size = 'md' as FormFieldSizeOptions,
7
+ glass = false,
8
+ children,
9
+ ...restProps
10
+ }: {
11
+ size?: FormFieldSizeOptions;
12
+ glass?: boolean;
13
+ children: Snippet;
14
+ [key: string]: any;
15
+ } = $props();
16
+
17
+ const captureClick = (e: Event) => {
18
+ e.stopPropagation();
19
+ };
5
20
  </script>
6
21
 
7
- <!-- svelte-ignore a11y-click-events-have-key-events -->
8
- <!-- svelte-ignore a11y-no-static-element-interactions -->
9
- <div class={size} on:click={captureClick}>
10
- <slot />
22
+ <!-- svelte-ignore a11y_click_events_have_key_events -->
23
+ <!-- svelte-ignore a11y_no_static_element_interactions -->
24
+ <div class="{size} {glass ? 'glass' : ''}" onclick={captureClick} {...restProps}>
25
+ {@render children?.()}
11
26
  </div>
12
27
 
13
28
  <style>div {
14
29
  position: relative;
15
- border: solid 0.1rem #000;
16
- padding: 1rem;
17
- background-color: #fff;
18
- border-radius: 1rem;
19
- box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
30
+ border: solid var(--border-thin) var(--gray-300);
31
+ padding: var(--spacing-base);
32
+ background-color: var(--modal-bg);
33
+ border-radius: var(--radius-xl);
34
+ box-shadow: var(--shadow-2xl);
20
35
  z-index: 9999;
21
- font-family: var(--base-font-family, sans-serif);
36
+ font-family: var(--base-font-family);
37
+ }
38
+ div.glass {
39
+ background: var(--glass-bg);
40
+ backdrop-filter: blur(var(--glass-blur));
41
+ -webkit-backdrop-filter: blur(var(--glass-blur));
42
+ border: var(--border-thin) solid var(--glass-border);
43
+ /* Fallback for browsers without backdrop-filter support */
44
+ }
45
+ @supports not (backdrop-filter: blur(12px)) {
46
+ div.glass {
47
+ background: var(--modal-bg);
48
+ border: var(--border-thin) solid var(--gray-300);
49
+ }
22
50
  }
23
51
  div.sm {
24
52
  width: 25rem;
@@ -1,19 +1,11 @@
1
- import { SvelteComponent } from "svelte";
1
+ import type { Snippet } from 'svelte';
2
2
  import type { FormFieldSizeOptions } from '../types/form.js';
3
- declare const __propDef: {
4
- props: {
5
- size?: FormFieldSizeOptions | undefined;
6
- };
7
- events: {
8
- [evt: string]: CustomEvent<any>;
9
- };
10
- slots: {
11
- default: {};
12
- };
3
+ type $$ComponentProps = {
4
+ size?: FormFieldSizeOptions;
5
+ glass?: boolean;
6
+ children: Snippet;
7
+ [key: string]: any;
13
8
  };
14
- export type DialogWindowProps = typeof __propDef.props;
15
- export type DialogWindowEvents = typeof __propDef.events;
16
- export type DialogWindowSlots = typeof __propDef.slots;
17
- export default class DialogWindow extends SvelteComponent<DialogWindowProps, DialogWindowEvents, DialogWindowSlots> {
18
- }
19
- export {};
9
+ declare const DialogWindow: import("svelte").Component<$$ComponentProps, {}, "">;
10
+ type DialogWindow = ReturnType<typeof DialogWindow>;
11
+ export default DialogWindow;
@@ -0,0 +1,9 @@
1
+ export { default as Alert } from './alert.svelte';
2
+ export { default as Confirm } from './confirm.svelte';
3
+ export { default as Modal } from './modal.svelte';
4
+ export { default as Prompt } from './prompt.svelte';
5
+ export { default as DialogBody } from './dialog-body.svelte';
6
+ export { default as DialogCloseButton } from './dialog-close-button.svelte';
7
+ export { default as DialogFooter } from './dialog-footer.svelte';
8
+ export { default as DialogHeader } from './dialog-header.svelte';
9
+ export { default as DialogWindow } from './dialog-window.svelte';
@@ -0,0 +1,9 @@
1
+ export { default as Alert } from './alert.svelte';
2
+ export { default as Confirm } from './confirm.svelte';
3
+ export { default as Modal } from './modal.svelte';
4
+ export { default as Prompt } from './prompt.svelte';
5
+ export { default as DialogBody } from './dialog-body.svelte';
6
+ export { default as DialogCloseButton } from './dialog-close-button.svelte';
7
+ export { default as DialogFooter } from './dialog-footer.svelte';
8
+ export { default as DialogHeader } from './dialog-header.svelte';
9
+ export { default as DialogWindow } from './dialog-window.svelte';
@@ -1,30 +1,93 @@
1
- <script>import DialogBody from "./dialog-body.svelte";
2
- import Dialog from "./dialog-window.svelte";
3
- import Overlay from "../generic/overlay.svelte";
4
- import DialogCloseButton from "./dialog-close-button.svelte";
5
- import { createEventDispatcher } from "svelte";
6
- const dispatch = createEventDispatcher();
7
- export let open = false;
8
- export let size = "md";
9
- export let showCloseButton = true;
10
- export let dismissable = true;
11
- const close = () => {
12
- if (!dismissable)
13
- return;
14
- dispatch("close");
15
- open = false;
16
- };
17
- $:
18
- _showCloseButton = dismissable && showCloseButton;
1
+ <script lang="ts">
2
+ import type { Snippet } from 'svelte';
3
+ import DialogBody from './dialog-body.svelte';
4
+ import Dialog from './dialog-window.svelte';
5
+ import Overlay from '../generic/overlay.svelte';
6
+ import type { FormFieldSizeOptions } from '../types/form.js';
7
+ import DialogCloseButton from './dialog-close-button.svelte';
8
+ import { trapFocus, storeFocus, restoreFocus } from '../helpers/focus.js';
9
+ import { animateFadeIn, animateScaleIn } from '../helpers/animations.js';
10
+ import { browser } from '$app/environment';
11
+
12
+ let {
13
+ open = $bindable(false),
14
+ size = 'md' as FormFieldSizeOptions,
15
+ showCloseButton = true,
16
+ dismissable = true,
17
+ blur = false,
18
+ glass = false,
19
+ title = undefined,
20
+ onClose = undefined,
21
+ children
22
+ }: {
23
+ open?: boolean;
24
+ size?: FormFieldSizeOptions;
25
+ showCloseButton?: boolean;
26
+ dismissable?: boolean;
27
+ blur?: boolean;
28
+ glass?: boolean;
29
+ title?: string | undefined;
30
+ onClose?: (() => void) | undefined;
31
+ children: Snippet;
32
+ } = $props();
33
+
34
+ let dialogElement = $state<HTMLDivElement | null>(null);
35
+ let previousFocus = $state<HTMLElement | null>(null);
36
+
37
+ const close = () => {
38
+ if (!dismissable) return;
39
+ open = false;
40
+ onClose?.();
41
+ if (browser && previousFocus) {
42
+ restoreFocus(previousFocus);
43
+ }
44
+ };
45
+
46
+ let _showCloseButton = $derived(dismissable && showCloseButton);
47
+ let modalId = $derived(`modal-${Math.random().toString(36).substring(7)}`);
48
+ let titleId = $derived(title ? `${modalId}-title` : undefined);
49
+
50
+ $effect(() => {
51
+ if (open && browser) {
52
+ // Store cleanup function
53
+ let untrap: (() => void) | null = null;
54
+
55
+ // Wait for next tick to ensure dialogElement is bound
56
+ setTimeout(() => {
57
+ if (dialogElement) {
58
+ previousFocus = storeFocus();
59
+ untrap = trapFocus(dialogElement);
60
+ }
61
+ }, 0);
62
+
63
+ // Return cleanup function
64
+ return () => {
65
+ if (untrap) {
66
+ untrap();
67
+ }
68
+ };
69
+ }
70
+ });
71
+
72
+ // Trigger enter animation when modal opens
73
+ $effect(() => {
74
+ if (open && browser) {
75
+ setTimeout(() => {
76
+ if (dialogElement) animateScaleIn(dialogElement);
77
+ }, 10);
78
+ }
79
+ });
19
80
  </script>
20
81
 
21
82
  {#if open}
22
- <Overlay on:click={close}>
23
- <Dialog {size}>
24
- <DialogCloseButton show={_showCloseButton} on:click={close} />
25
- <DialogBody>
26
- <slot />
27
- </DialogBody>
28
- </Dialog>
83
+ <Overlay {blur} onClick={close}>
84
+ <div bind:this={dialogElement}>
85
+ <Dialog {size} {glass} role="dialog" aria-modal="true" aria-labelledby={titleId}>
86
+ <DialogCloseButton show={_showCloseButton} onClick={close} />
87
+ <DialogBody>
88
+ {@render children?.()}
89
+ </DialogBody>
90
+ </Dialog>
91
+ </div>
29
92
  </Overlay>
30
93
  {/if}