@dryui/ui 1.8.0 → 2.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 (419) hide show
  1. package/dist/accordion/accordion.meta.d.ts +8 -0
  2. package/dist/accordion/accordion.meta.js +7 -0
  3. package/dist/adjust/adjust.meta.d.ts +8 -0
  4. package/dist/adjust/adjust.meta.js +7 -0
  5. package/dist/alert/alert.meta.d.ts +8 -0
  6. package/dist/alert/alert.meta.js +7 -0
  7. package/dist/alert-dialog/alert-dialog-root.svelte +2 -2
  8. package/dist/alert-dialog/alert-dialog.meta.d.ts +8 -0
  9. package/dist/alert-dialog/alert-dialog.meta.js +7 -0
  10. package/dist/alpha-slider/alpha-slider.meta.d.ts +8 -0
  11. package/dist/alpha-slider/alpha-slider.meta.js +7 -0
  12. package/dist/app-frame/app-frame.meta.d.ts +8 -0
  13. package/dist/app-frame/app-frame.meta.js +7 -0
  14. package/dist/aspect-ratio/aspect-ratio.meta.d.ts +8 -0
  15. package/dist/aspect-ratio/aspect-ratio.meta.js +7 -0
  16. package/dist/aurora/aurora.meta.d.ts +8 -0
  17. package/dist/aurora/aurora.meta.js +7 -0
  18. package/dist/avatar/avatar.meta.d.ts +8 -0
  19. package/dist/avatar/avatar.meta.js +7 -0
  20. package/dist/avatar/avatar.svelte +4 -1
  21. package/dist/backdrop/backdrop.meta.d.ts +8 -0
  22. package/dist/backdrop/backdrop.meta.js +7 -0
  23. package/dist/badge/badge.meta.d.ts +8 -0
  24. package/dist/badge/badge.meta.js +7 -0
  25. package/dist/badge/badge.svelte +50 -31
  26. package/dist/badge/badge.svelte.d.ts +6 -0
  27. package/dist/beam/beam.meta.d.ts +8 -0
  28. package/dist/beam/beam.meta.js +7 -0
  29. package/dist/border-beam/border-beam.meta.d.ts +8 -0
  30. package/dist/border-beam/border-beam.meta.js +7 -0
  31. package/dist/breadcrumb/breadcrumb.meta.d.ts +8 -0
  32. package/dist/breadcrumb/breadcrumb.meta.js +7 -0
  33. package/dist/button/button.meta.d.ts +8 -0
  34. package/dist/button/button.meta.js +7 -0
  35. package/dist/button/button.svelte +91 -36
  36. package/dist/button/button.svelte.d.ts +7 -0
  37. package/dist/button-group/button-group.meta.d.ts +8 -0
  38. package/dist/button-group/button-group.meta.js +7 -0
  39. package/dist/calendar/calendar.meta.d.ts +8 -0
  40. package/dist/calendar/calendar.meta.js +7 -0
  41. package/dist/card/card-content.svelte +1 -1
  42. package/dist/card/card-footer.svelte +1 -1
  43. package/dist/card/card-header.svelte +1 -1
  44. package/dist/card/card-root.svelte +28 -18
  45. package/dist/card/card-root.svelte.d.ts +1 -0
  46. package/dist/card/card.meta.d.ts +8 -0
  47. package/dist/card/card.meta.js +7 -0
  48. package/dist/carousel/carousel.meta.d.ts +8 -0
  49. package/dist/carousel/carousel.meta.js +7 -0
  50. package/dist/chart/chart.meta.d.ts +8 -0
  51. package/dist/chart/chart.meta.js +7 -0
  52. package/dist/chat-thread/chat-thread.meta.d.ts +8 -0
  53. package/dist/chat-thread/chat-thread.meta.js +7 -0
  54. package/dist/checkbox/checkbox.meta.d.ts +8 -0
  55. package/dist/checkbox/checkbox.meta.js +7 -0
  56. package/dist/chip/chip.meta.d.ts +8 -0
  57. package/dist/chip/chip.meta.js +7 -0
  58. package/dist/chip-group/chip-group.meta.d.ts +8 -0
  59. package/dist/chip-group/chip-group.meta.js +18 -0
  60. package/dist/chromatic-aberration/chromatic-aberration.meta.d.ts +8 -0
  61. package/dist/chromatic-aberration/chromatic-aberration.meta.js +7 -0
  62. package/dist/chromatic-aberration/chromatic-aberration.svelte +2 -2
  63. package/dist/chromatic-shift/chromatic-shift.meta.d.ts +8 -0
  64. package/dist/chromatic-shift/chromatic-shift.meta.js +7 -0
  65. package/dist/clipboard/clipboard.meta.d.ts +8 -0
  66. package/dist/clipboard/clipboard.meta.js +7 -0
  67. package/dist/code-block/code-block.meta.d.ts +8 -0
  68. package/dist/code-block/code-block.meta.js +7 -0
  69. package/dist/collapsible/collapsible-root.svelte +3 -2
  70. package/dist/collapsible/collapsible.meta.d.ts +8 -0
  71. package/dist/collapsible/collapsible.meta.js +7 -0
  72. package/dist/collapsible/context.svelte.d.ts +1 -2
  73. package/dist/collapsible/context.svelte.js +1 -2
  74. package/dist/color-picker/color-picker-channel-input.svelte +1 -0
  75. package/dist/color-picker/color-picker.meta.d.ts +8 -0
  76. package/dist/color-picker/color-picker.meta.js +7 -0
  77. package/dist/combobox/combobox-content.svelte +1 -0
  78. package/dist/combobox/combobox-input-root.svelte +3 -3
  79. package/dist/combobox/combobox.meta.d.ts +8 -0
  80. package/dist/combobox/combobox.meta.js +7 -0
  81. package/dist/command-palette/command-palette-dialog-root.svelte +5 -4
  82. package/dist/command-palette/command-palette-item.svelte +3 -3
  83. package/dist/command-palette/command-palette.meta.d.ts +8 -0
  84. package/dist/command-palette/command-palette.meta.js +7 -0
  85. package/dist/container/container.meta.d.ts +8 -0
  86. package/dist/container/container.meta.js +7 -0
  87. package/dist/context-menu/context-menu-content.svelte +2 -1
  88. package/dist/context-menu/context-menu-root.svelte +2 -0
  89. package/dist/context-menu/context-menu.meta.d.ts +8 -0
  90. package/dist/context-menu/context-menu.meta.js +7 -0
  91. package/dist/data-grid/data-grid.meta.d.ts +8 -0
  92. package/dist/data-grid/data-grid.meta.js +7 -0
  93. package/dist/date-field/date-field-segment.svelte +26 -4
  94. package/dist/date-field/date-field.meta.d.ts +8 -0
  95. package/dist/date-field/date-field.meta.js +7 -0
  96. package/dist/date-picker/date-picker.meta.d.ts +8 -0
  97. package/dist/date-picker/date-picker.meta.js +7 -0
  98. package/dist/date-picker/datepicker-input-root.svelte +2 -0
  99. package/dist/date-range-picker/date-range-picker-root.svelte +2 -0
  100. package/dist/date-range-picker/date-range-picker.meta.d.ts +8 -0
  101. package/dist/date-range-picker/date-range-picker.meta.js +7 -0
  102. package/dist/date-time-input/date-time-input.meta.d.ts +8 -0
  103. package/dist/date-time-input/date-time-input.meta.js +7 -0
  104. package/dist/description-list/description-list.meta.d.ts +8 -0
  105. package/dist/description-list/description-list.meta.js +7 -0
  106. package/dist/diagram/diagram.meta.d.ts +8 -0
  107. package/dist/diagram/diagram.meta.js +7 -0
  108. package/dist/dialog/dialog-root.svelte +2 -2
  109. package/dist/dialog/dialog.meta.d.ts +8 -0
  110. package/dist/dialog/dialog.meta.js +7 -0
  111. package/dist/displacement/displacement.meta.d.ts +8 -0
  112. package/dist/displacement/displacement.meta.js +7 -0
  113. package/dist/drag-and-drop/drag-and-drop-root.svelte +34 -3
  114. package/dist/drag-and-drop/drag-and-drop.meta.d.ts +8 -0
  115. package/dist/drag-and-drop/drag-and-drop.meta.js +7 -0
  116. package/dist/drawer/drawer-root.svelte +2 -2
  117. package/dist/drawer/drawer.meta.d.ts +8 -0
  118. package/dist/drawer/drawer.meta.js +7 -0
  119. package/dist/drop-zone/drop-zone.meta.d.ts +8 -0
  120. package/dist/drop-zone/drop-zone.meta.js +7 -0
  121. package/dist/dropdown-menu/dropdown-menu-content.svelte +4 -2
  122. package/dist/dropdown-menu/dropdown-menu-root.svelte +2 -0
  123. package/dist/dropdown-menu/dropdown-menu.meta.d.ts +8 -0
  124. package/dist/dropdown-menu/dropdown-menu.meta.js +7 -0
  125. package/dist/enter/enter.meta.d.ts +8 -0
  126. package/dist/enter/enter.meta.js +7 -0
  127. package/dist/enter/index.d.ts +1 -0
  128. package/dist/enter/index.js +1 -0
  129. package/dist/exit/exit.meta.d.ts +8 -0
  130. package/dist/exit/exit.meta.js +7 -0
  131. package/dist/exit/index.d.ts +1 -0
  132. package/dist/exit/index.js +1 -0
  133. package/dist/field/field-root.svelte +10 -2
  134. package/dist/field/field-root.svelte.d.ts +1 -0
  135. package/dist/field/field.meta.d.ts +8 -0
  136. package/dist/field/field.meta.js +7 -0
  137. package/dist/fieldset/fieldset.meta.d.ts +8 -0
  138. package/dist/fieldset/fieldset.meta.js +7 -0
  139. package/dist/file-select/file-select-root.svelte +1 -0
  140. package/dist/file-select/file-select.meta.d.ts +8 -0
  141. package/dist/file-select/file-select.meta.js +7 -0
  142. package/dist/file-upload/file-upload-item.svelte +1 -0
  143. package/dist/file-upload/file-upload.meta.d.ts +8 -0
  144. package/dist/file-upload/file-upload.meta.js +7 -0
  145. package/dist/flip-card/flip-card.meta.d.ts +8 -0
  146. package/dist/flip-card/flip-card.meta.js +7 -0
  147. package/dist/float-button/float-button.meta.d.ts +8 -0
  148. package/dist/float-button/float-button.meta.js +7 -0
  149. package/dist/focus-trap/focus-trap.meta.d.ts +8 -0
  150. package/dist/focus-trap/focus-trap.meta.js +7 -0
  151. package/dist/format-bytes/format-bytes.meta.d.ts +8 -0
  152. package/dist/format-bytes/format-bytes.meta.js +7 -0
  153. package/dist/format-date/format-date.meta.d.ts +8 -0
  154. package/dist/format-date/format-date.meta.js +7 -0
  155. package/dist/format-date/format-date.svelte +1 -0
  156. package/dist/format-number/format-number.meta.d.ts +8 -0
  157. package/dist/format-number/format-number.meta.js +7 -0
  158. package/dist/gauge/gauge.meta.d.ts +8 -0
  159. package/dist/gauge/gauge.meta.js +7 -0
  160. package/dist/glass/glass.meta.d.ts +8 -0
  161. package/dist/glass/glass.meta.js +7 -0
  162. package/dist/glow/glow.meta.d.ts +8 -0
  163. package/dist/glow/glow.meta.js +7 -0
  164. package/dist/god-rays/god-rays.meta.d.ts +8 -0
  165. package/dist/god-rays/god-rays.meta.js +7 -0
  166. package/dist/gradient-mesh/gradient-mesh.meta.d.ts +8 -0
  167. package/dist/gradient-mesh/gradient-mesh.meta.js +7 -0
  168. package/dist/halftone/halftone.meta.d.ts +8 -0
  169. package/dist/halftone/halftone.meta.js +7 -0
  170. package/dist/heading/heading.meta.d.ts +8 -0
  171. package/dist/heading/heading.meta.js +7 -0
  172. package/dist/heading/heading.svelte +6 -2
  173. package/dist/hotkey/hotkey.meta.d.ts +8 -0
  174. package/dist/hotkey/hotkey.meta.js +7 -0
  175. package/dist/hover-card/hover-card.meta.d.ts +8 -0
  176. package/dist/hover-card/hover-card.meta.js +7 -0
  177. package/dist/icon/icon.meta.d.ts +8 -0
  178. package/dist/icon/icon.meta.js +7 -0
  179. package/dist/icon/icon.svelte +1 -0
  180. package/dist/icon-swap/icon-swap.meta.d.ts +8 -0
  181. package/dist/icon-swap/icon-swap.meta.js +7 -0
  182. package/dist/icon-swap/icon-swap.svelte +47 -0
  183. package/dist/icon-swap/icon-swap.svelte.d.ts +9 -0
  184. package/dist/icon-swap/index.d.ts +1 -0
  185. package/dist/icon-swap/index.js +1 -0
  186. package/dist/image/image.meta.d.ts +8 -0
  187. package/dist/image/image.meta.js +7 -0
  188. package/dist/image/image.svelte +4 -1
  189. package/dist/image-comparison/image-comparison.meta.d.ts +8 -0
  190. package/dist/image-comparison/image-comparison.meta.js +7 -0
  191. package/dist/index.d.ts +7 -0
  192. package/dist/index.js +7 -0
  193. package/dist/infinite-scroll/infinite-scroll.meta.d.ts +8 -0
  194. package/dist/infinite-scroll/infinite-scroll.meta.js +7 -0
  195. package/dist/input/input.meta.d.ts +8 -0
  196. package/dist/input/input.meta.js +7 -0
  197. package/dist/input-group/input-group.meta.d.ts +8 -0
  198. package/dist/input-group/input-group.meta.js +7 -0
  199. package/dist/internal/date-family-controller.svelte.d.ts +2 -1
  200. package/dist/internal/date-family-controller.svelte.js +4 -4
  201. package/dist/internal/menu-item.svelte +1 -4
  202. package/dist/internal/menu-root-state.svelte.d.ts +1 -0
  203. package/dist/internal/menu-root-state.svelte.js +2 -3
  204. package/dist/internal/modal-content.svelte +5 -2
  205. package/dist/internal/picker-popover-content.svelte +1 -0
  206. package/dist/kbd/kbd.meta.d.ts +8 -0
  207. package/dist/kbd/kbd.meta.js +7 -0
  208. package/dist/label/label.meta.d.ts +8 -0
  209. package/dist/label/label.meta.js +7 -0
  210. package/dist/link/link.meta.d.ts +8 -0
  211. package/dist/link/link.meta.js +7 -0
  212. package/dist/link-preview/link-preview-root.svelte +3 -3
  213. package/dist/link-preview/link-preview.meta.d.ts +8 -0
  214. package/dist/link-preview/link-preview.meta.js +7 -0
  215. package/dist/list/list.meta.d.ts +8 -0
  216. package/dist/list/list.meta.js +7 -0
  217. package/dist/listbox/listbox.meta.d.ts +8 -0
  218. package/dist/listbox/listbox.meta.js +7 -0
  219. package/dist/logo-mark/logo-mark.meta.d.ts +8 -0
  220. package/dist/logo-mark/logo-mark.meta.js +7 -0
  221. package/dist/logo-mark/logo-mark.svelte +1 -0
  222. package/dist/map/map.meta.d.ts +8 -0
  223. package/dist/map/map.meta.js +7 -0
  224. package/dist/markdown-renderer/markdown-renderer.meta.d.ts +8 -0
  225. package/dist/markdown-renderer/markdown-renderer.meta.js +7 -0
  226. package/dist/markdown-renderer/markdown-renderer.svelte +9 -3
  227. package/dist/markdown-renderer/markdown-renderer.svelte.d.ts +1 -1
  228. package/dist/marquee/marquee.meta.d.ts +8 -0
  229. package/dist/marquee/marquee.meta.js +7 -0
  230. package/dist/mask-reveal/mask-reveal.meta.d.ts +8 -0
  231. package/dist/mask-reveal/mask-reveal.meta.js +7 -0
  232. package/dist/mega-menu/mega-menu-item.svelte +4 -4
  233. package/dist/mega-menu/mega-menu.meta.d.ts +8 -0
  234. package/dist/mega-menu/mega-menu.meta.js +7 -0
  235. package/dist/menubar/menubar-content.svelte +3 -1
  236. package/dist/menubar/menubar-item.svelte +1 -4
  237. package/dist/menubar/menubar-menu.svelte +2 -2
  238. package/dist/menubar/menubar-root.svelte +1 -0
  239. package/dist/menubar/menubar.meta.d.ts +8 -0
  240. package/dist/menubar/menubar.meta.js +7 -0
  241. package/dist/motion/enter.d.ts +10 -0
  242. package/dist/motion/enter.js +36 -0
  243. package/dist/motion/enter.svelte +28 -0
  244. package/dist/motion/enter.svelte.d.ts +10 -0
  245. package/dist/motion/exit.svelte +20 -0
  246. package/dist/motion/exit.svelte.d.ts +7 -0
  247. package/dist/motion/index.d.ts +7 -0
  248. package/dist/motion/index.js +5 -0
  249. package/dist/motion/leave.d.ts +9 -0
  250. package/dist/motion/leave.js +32 -0
  251. package/dist/motion/motion.meta.d.ts +8 -0
  252. package/dist/motion/motion.meta.js +7 -0
  253. package/dist/motion/stagger.svelte +29 -0
  254. package/dist/motion/stagger.svelte.d.ts +9 -0
  255. package/dist/multi-select-combobox/multi-select-combobox-content.svelte +1 -0
  256. package/dist/multi-select-combobox/multi-select-combobox-item.svelte +2 -2
  257. package/dist/multi-select-combobox/multi-select-combobox-root-input.svelte +4 -3
  258. package/dist/multi-select-combobox/multi-select-combobox.meta.d.ts +8 -0
  259. package/dist/multi-select-combobox/multi-select-combobox.meta.js +7 -0
  260. package/dist/navigation-menu/context.svelte.d.ts +0 -2
  261. package/dist/navigation-menu/context.svelte.js +1 -2
  262. package/dist/navigation-menu/navigation-menu-item.svelte +5 -8
  263. package/dist/navigation-menu/navigation-menu.meta.d.ts +8 -0
  264. package/dist/navigation-menu/navigation-menu.meta.js +7 -0
  265. package/dist/noise/noise.meta.d.ts +8 -0
  266. package/dist/noise/noise.meta.js +7 -0
  267. package/dist/notification-center/notification-center-root.svelte +3 -3
  268. package/dist/notification-center/notification-center.meta.d.ts +8 -0
  269. package/dist/notification-center/notification-center.meta.js +7 -0
  270. package/dist/number-input/number-input.meta.d.ts +8 -0
  271. package/dist/number-input/number-input.meta.js +7 -0
  272. package/dist/numeric/index.d.ts +1 -0
  273. package/dist/numeric/index.js +1 -0
  274. package/dist/numeric/numeric.meta.d.ts +8 -0
  275. package/dist/numeric/numeric.meta.js +7 -0
  276. package/dist/numeric/numeric.svelte +49 -0
  277. package/dist/numeric/numeric.svelte.d.ts +9 -0
  278. package/dist/option-picker/option-picker.meta.d.ts +8 -0
  279. package/dist/option-picker/option-picker.meta.js +7 -0
  280. package/dist/pagination/pagination.meta.d.ts +8 -0
  281. package/dist/pagination/pagination.meta.js +7 -0
  282. package/dist/phone-input/phone-input.meta.d.ts +8 -0
  283. package/dist/phone-input/phone-input.meta.js +7 -0
  284. package/dist/pin-input/pin-input.meta.d.ts +8 -0
  285. package/dist/pin-input/pin-input.meta.js +7 -0
  286. package/dist/popover/popover-content.svelte +2 -1
  287. package/dist/popover/popover-root.svelte +3 -3
  288. package/dist/popover/popover.meta.d.ts +8 -0
  289. package/dist/popover/popover.meta.js +7 -0
  290. package/dist/portal/portal.meta.d.ts +8 -0
  291. package/dist/portal/portal.meta.js +7 -0
  292. package/dist/progress/progress.meta.d.ts +8 -0
  293. package/dist/progress/progress.meta.js +7 -0
  294. package/dist/progress-ring/progress-ring.meta.d.ts +8 -0
  295. package/dist/progress-ring/progress-ring.meta.js +7 -0
  296. package/dist/prompt-input/prompt-input.meta.d.ts +8 -0
  297. package/dist/prompt-input/prompt-input.meta.js +7 -0
  298. package/dist/qr-code/qr-code.meta.d.ts +8 -0
  299. package/dist/qr-code/qr-code.meta.js +7 -0
  300. package/dist/radio-group/radio-group.meta.d.ts +8 -0
  301. package/dist/radio-group/radio-group.meta.js +7 -0
  302. package/dist/radio-group/radio-group.svelte +2 -2
  303. package/dist/range-calendar/range-calendar.meta.d.ts +8 -0
  304. package/dist/range-calendar/range-calendar.meta.js +7 -0
  305. package/dist/rating/rating.meta.d.ts +8 -0
  306. package/dist/rating/rating.meta.js +7 -0
  307. package/dist/relative-time/relative-time.meta.d.ts +8 -0
  308. package/dist/relative-time/relative-time.meta.js +7 -0
  309. package/dist/relative-time/relative-time.svelte +1 -0
  310. package/dist/reveal/reveal.meta.d.ts +8 -0
  311. package/dist/reveal/reveal.meta.js +7 -0
  312. package/dist/rich-text-editor/rich-text-editor-content.svelte +14 -6
  313. package/dist/rich-text-editor/rich-text-editor-root.svelte +19 -9
  314. package/dist/rich-text-editor/rich-text-editor-root.svelte.d.ts +1 -0
  315. package/dist/rich-text-editor/rich-text-editor-toolbar-button-input.svelte +1 -0
  316. package/dist/rich-text-editor/rich-text-editor.meta.d.ts +8 -0
  317. package/dist/rich-text-editor/rich-text-editor.meta.js +7 -0
  318. package/dist/scroll-area/scroll-area.meta.d.ts +8 -0
  319. package/dist/scroll-area/scroll-area.meta.js +7 -0
  320. package/dist/scroll-to-top/scroll-to-top.meta.d.ts +8 -0
  321. package/dist/scroll-to-top/scroll-to-top.meta.js +7 -0
  322. package/dist/segmented-control/segmented-control.meta.d.ts +8 -0
  323. package/dist/segmented-control/segmented-control.meta.js +7 -0
  324. package/dist/select/select-root-input.svelte +3 -3
  325. package/dist/select/select.meta.d.ts +8 -0
  326. package/dist/select/select.meta.js +7 -0
  327. package/dist/separator/separator.meta.d.ts +8 -0
  328. package/dist/separator/separator.meta.js +7 -0
  329. package/dist/separator/separator.svelte +17 -1
  330. package/dist/separator/separator.svelte.d.ts +1 -1
  331. package/dist/shader-canvas/shader-canvas.meta.d.ts +8 -0
  332. package/dist/shader-canvas/shader-canvas.meta.js +7 -0
  333. package/dist/shimmer/shimmer.meta.d.ts +8 -0
  334. package/dist/shimmer/shimmer.meta.js +7 -0
  335. package/dist/sidebar/sidebar.meta.d.ts +8 -0
  336. package/dist/sidebar/sidebar.meta.js +7 -0
  337. package/dist/skeleton/skeleton.meta.d.ts +8 -0
  338. package/dist/skeleton/skeleton.meta.js +7 -0
  339. package/dist/slider/slider.meta.d.ts +8 -0
  340. package/dist/slider/slider.meta.js +7 -0
  341. package/dist/spacer/spacer.meta.d.ts +8 -0
  342. package/dist/spacer/spacer.meta.js +7 -0
  343. package/dist/sparkline/sparkline.meta.d.ts +8 -0
  344. package/dist/sparkline/sparkline.meta.js +7 -0
  345. package/dist/spinner/spinner.meta.d.ts +8 -0
  346. package/dist/spinner/spinner.meta.js +7 -0
  347. package/dist/splitter/splitter.meta.d.ts +8 -0
  348. package/dist/splitter/splitter.meta.js +7 -0
  349. package/dist/spotlight/spotlight.meta.d.ts +8 -0
  350. package/dist/spotlight/spotlight.meta.js +7 -0
  351. package/dist/stagger/index.d.ts +1 -0
  352. package/dist/stagger/index.js +1 -0
  353. package/dist/stagger/stagger.meta.d.ts +8 -0
  354. package/dist/stagger/stagger.meta.js +7 -0
  355. package/dist/star-rating/star-rating.meta.d.ts +8 -0
  356. package/dist/star-rating/star-rating.meta.js +7 -0
  357. package/dist/stepper/stepper.meta.d.ts +8 -0
  358. package/dist/stepper/stepper.meta.js +7 -0
  359. package/dist/svg/svg.meta.d.ts +8 -0
  360. package/dist/svg/svg.meta.js +7 -0
  361. package/dist/table/table.meta.d.ts +8 -0
  362. package/dist/table/table.meta.js +7 -0
  363. package/dist/table-of-contents/table-of-contents.meta.d.ts +8 -0
  364. package/dist/table-of-contents/table-of-contents.meta.js +7 -0
  365. package/dist/tabs/tabs.meta.d.ts +8 -0
  366. package/dist/tabs/tabs.meta.js +7 -0
  367. package/dist/tag/tag.meta.d.ts +8 -0
  368. package/dist/tag/tag.meta.js +7 -0
  369. package/dist/tags-input/tags-input-root.svelte +1 -0
  370. package/dist/tags-input/tags-input.meta.d.ts +8 -0
  371. package/dist/tags-input/tags-input.meta.js +7 -0
  372. package/dist/text/text.meta.d.ts +8 -0
  373. package/dist/text/text.meta.js +7 -0
  374. package/dist/textarea/textarea.meta.d.ts +8 -0
  375. package/dist/textarea/textarea.meta.js +7 -0
  376. package/dist/theme-toggle/theme-toggle.meta.d.ts +8 -0
  377. package/dist/theme-toggle/theme-toggle.meta.js +7 -0
  378. package/dist/themes/aurora.css +20 -0
  379. package/dist/themes/dark.css +40 -0
  380. package/dist/themes/default.css +162 -9
  381. package/dist/themes/midnight.css +20 -0
  382. package/dist/themes/terminal.css +20 -0
  383. package/dist/time-input/time-input.meta.d.ts +8 -0
  384. package/dist/time-input/time-input.meta.js +7 -0
  385. package/dist/timeline/timeline-title.svelte +6 -0
  386. package/dist/timeline/timeline.meta.d.ts +8 -0
  387. package/dist/timeline/timeline.meta.js +7 -0
  388. package/dist/toast/toast-root.svelte +8 -3
  389. package/dist/toast/toast.meta.d.ts +8 -0
  390. package/dist/toast/toast.meta.js +7 -0
  391. package/dist/toggle/toggle.meta.d.ts +8 -0
  392. package/dist/toggle/toggle.meta.js +7 -0
  393. package/dist/toggle-group/toggle-group.meta.d.ts +8 -0
  394. package/dist/toggle-group/toggle-group.meta.js +7 -0
  395. package/dist/toolbar/toolbar-root.svelte +1 -0
  396. package/dist/toolbar/toolbar.meta.d.ts +8 -0
  397. package/dist/toolbar/toolbar.meta.js +7 -0
  398. package/dist/tooltip/tooltip-content.svelte +2 -1
  399. package/dist/tooltip/tooltip-root.svelte +3 -3
  400. package/dist/tooltip/tooltip.meta.d.ts +8 -0
  401. package/dist/tooltip/tooltip.meta.js +7 -0
  402. package/dist/tour/tour.meta.d.ts +8 -0
  403. package/dist/tour/tour.meta.js +7 -0
  404. package/dist/transfer/transfer.meta.d.ts +8 -0
  405. package/dist/transfer/transfer.meta.js +7 -0
  406. package/dist/tree/tree.meta.d.ts +8 -0
  407. package/dist/tree/tree.meta.js +7 -0
  408. package/dist/typing-indicator/typing-indicator.meta.d.ts +8 -0
  409. package/dist/typing-indicator/typing-indicator.meta.js +7 -0
  410. package/dist/typography/typography.meta.d.ts +8 -0
  411. package/dist/typography/typography.meta.js +7 -0
  412. package/dist/video-embed/video-embed-button.svelte +1 -0
  413. package/dist/video-embed/video-embed.meta.d.ts +8 -0
  414. package/dist/video-embed/video-embed.meta.js +7 -0
  415. package/dist/virtual-list/virtual-list.meta.d.ts +8 -0
  416. package/dist/virtual-list/virtual-list.meta.js +7 -0
  417. package/dist/visually-hidden/visually-hidden.meta.d.ts +8 -0
  418. package/dist/visually-hidden/visually-hidden.meta.js +7 -0
  419. package/package.json +37 -4
@@ -1,10 +1,6 @@
1
1
  <script lang="ts">
2
2
  import type { Snippet } from 'svelte';
3
- import {
4
- setNavigationMenuItemCtx,
5
- getNavigationMenuCtx,
6
- generateFormId
7
- } from './context.svelte.js';
3
+ import { setNavigationMenuItemCtx, getNavigationMenuCtx } from './context.svelte.js';
8
4
 
9
5
  interface Props {
10
6
  children: Snippet;
@@ -13,9 +9,10 @@
13
9
  let { children }: Props = $props();
14
10
 
15
11
  const ctx = getNavigationMenuCtx();
16
- const itemId = generateFormId('nav-item');
17
- const triggerId = generateFormId('nav-trigger');
18
- const contentId = generateFormId('nav-content');
12
+ const uid = $props.id();
13
+ const itemId = `nav-item-${uid}`;
14
+ const triggerId = `nav-trigger-${uid}`;
15
+ const contentId = `nav-content-${uid}`;
19
16
 
20
17
  setNavigationMenuItemCtx({
21
18
  itemId,
@@ -0,0 +1,8 @@
1
+ /** DryUI agent metadata. Consumed by @dryui/mcp/load-component-meta. */
2
+ declare const _default: {
3
+ name: string;
4
+ description: string;
5
+ category: string;
6
+ tags: string[];
7
+ };
8
+ export default _default;
@@ -0,0 +1,7 @@
1
+ /** DryUI agent metadata. Consumed by @dryui/mcp/load-component-meta. */
2
+ export default {
3
+ name: 'NavigationMenu',
4
+ description: 'Site-level navigation with flyout content panels',
5
+ category: 'navigation',
6
+ tags: ['navigation', 'menu', 'flyout', 'mega-menu']
7
+ };
@@ -0,0 +1,8 @@
1
+ /** DryUI agent metadata. Consumed by @dryui/mcp/load-component-meta. */
2
+ declare const _default: {
3
+ name: string;
4
+ description: string;
5
+ category: string;
6
+ tags: string[];
7
+ };
8
+ export default _default;
@@ -0,0 +1,7 @@
1
+ /** DryUI agent metadata. Consumed by @dryui/mcp/load-component-meta. */
2
+ export default {
3
+ name: 'Noise',
4
+ description: 'Texture overlay that adds grain and atmosphere to surfaces without external assets',
5
+ category: 'layout',
6
+ tags: ['texture', 'grain', 'surface', 'overlay', 'shader-like']
7
+ };
@@ -1,6 +1,5 @@
1
1
  <script lang="ts">
2
2
  import type { Snippet } from 'svelte';
3
- import { generateFormId } from '@dryui/primitives';
4
3
  import { setNotificationCenterCtx, type NotificationItem } from './context.svelte.js';
5
4
 
6
5
  interface Props {
@@ -15,8 +14,9 @@
15
14
  children
16
15
  }: Props = $props();
17
16
 
18
- const triggerId = generateFormId('nc-trigger');
19
- const panelId = generateFormId('nc-panel');
17
+ const uid = $props.id();
18
+ const triggerId = `nc-trigger-${uid}`;
19
+ const panelId = `nc-panel-${uid}`;
20
20
 
21
21
  const unreadCount = $derived(items.filter((item) => !item.read).length);
22
22
 
@@ -0,0 +1,8 @@
1
+ /** DryUI agent metadata. Consumed by @dryui/mcp/load-component-meta. */
2
+ declare const _default: {
3
+ name: string;
4
+ description: string;
5
+ category: string;
6
+ tags: string[];
7
+ };
8
+ export default _default;
@@ -0,0 +1,7 @@
1
+ /** DryUI agent metadata. Consumed by @dryui/mcp/load-component-meta. */
2
+ export default {
3
+ name: 'NotificationCenter',
4
+ description: 'Notification panel with trigger, groups, and items',
5
+ category: 'overlay',
6
+ tags: ['notification', 'bell', 'alerts', 'inbox', 'popover', 'unread', 'feedback', 'status']
7
+ };
@@ -0,0 +1,8 @@
1
+ /** DryUI agent metadata. Consumed by @dryui/mcp/load-component-meta. */
2
+ declare const _default: {
3
+ name: string;
4
+ description: string;
5
+ category: string;
6
+ tags: string[];
7
+ };
8
+ export default _default;
@@ -0,0 +1,7 @@
1
+ /** DryUI agent metadata. Consumed by @dryui/mcp/load-component-meta. */
2
+ export default {
3
+ name: 'NumberInput',
4
+ description: 'Numeric input with increment/decrement controls',
5
+ category: 'input',
6
+ tags: ['form', 'number', 'input', 'counter']
7
+ };
@@ -0,0 +1 @@
1
+ export { default as Numeric } from './numeric.svelte';
@@ -0,0 +1 @@
1
+ export { default as Numeric } from './numeric.svelte';
@@ -0,0 +1,8 @@
1
+ /** DryUI agent metadata. Consumed by @dryui/mcp/load-component-meta. */
2
+ declare const _default: {
3
+ name: string;
4
+ description: string;
5
+ category: string;
6
+ tags: string[];
7
+ };
8
+ export default _default;
@@ -0,0 +1,7 @@
1
+ /** DryUI agent metadata. Consumed by @dryui/mcp/load-component-meta. */
2
+ export default {
3
+ name: 'Numeric',
4
+ description: 'Tabular-nums numeric display with optional stable min-width and alignment',
5
+ category: 'display',
6
+ tags: ['numeric', 'tabular', 'number', 'stable', 'align']
7
+ };
@@ -0,0 +1,49 @@
1
+ <script lang="ts">
2
+ interface Props {
3
+ value: number | string;
4
+ stable?: boolean;
5
+ align?: 'start' | 'center' | 'end';
6
+ minDigits?: number;
7
+ }
8
+
9
+ let { value, stable = false, align = 'end', minDigits }: Props = $props();
10
+
11
+ const minWidth = $derived.by(() => {
12
+ if (!stable) return undefined;
13
+ const digits = minDigits ?? String(value).replace(/[^\d]/g, '').length;
14
+ return `${digits * 0.6}em`;
15
+ });
16
+
17
+ function applyStyles(node: HTMLElement) {
18
+ $effect(() => {
19
+ if (minWidth) {
20
+ node.style.setProperty('min-width', minWidth);
21
+ } else {
22
+ node.style.removeProperty('min-width');
23
+ }
24
+ });
25
+ }
26
+ </script>
27
+
28
+ <span class="dry-numeric dry-tabular-nums" data-align={align} {@attach applyStyles}>
29
+ {value}
30
+ </span>
31
+
32
+ <style>
33
+ .dry-numeric {
34
+ display: inline-block;
35
+ font-variant-numeric: var(--dry-numeric-variant);
36
+ }
37
+
38
+ [data-align='end'] {
39
+ text-align: end;
40
+ }
41
+
42
+ [data-align='center'] {
43
+ text-align: center;
44
+ }
45
+
46
+ [data-align='start'] {
47
+ text-align: start;
48
+ }
49
+ </style>
@@ -0,0 +1,9 @@
1
+ interface Props {
2
+ value: number | string;
3
+ stable?: boolean;
4
+ align?: 'start' | 'center' | 'end';
5
+ minDigits?: number;
6
+ }
7
+ declare const Numeric: import("svelte").Component<Props, {}, "">;
8
+ type Numeric = ReturnType<typeof Numeric>;
9
+ export default Numeric;
@@ -0,0 +1,8 @@
1
+ /** DryUI agent metadata. Consumed by @dryui/mcp/load-component-meta. */
2
+ declare const _default: {
3
+ name: string;
4
+ description: string;
5
+ category: string;
6
+ tags: string[];
7
+ };
8
+ export default _default;
@@ -0,0 +1,7 @@
1
+ /** DryUI agent metadata. Consumed by @dryui/mcp/load-component-meta. */
2
+ export default {
3
+ name: 'OptionPicker',
4
+ description: 'Selectable option tiles with preview, label, and description for presets, fonts, shapes, and other visual choices',
5
+ category: 'input',
6
+ tags: ['picker', 'selection', 'options', 'tiles', 'preset', 'preview']
7
+ };
@@ -0,0 +1,8 @@
1
+ /** DryUI agent metadata. Consumed by @dryui/mcp/load-component-meta. */
2
+ declare const _default: {
3
+ name: string;
4
+ description: string;
5
+ category: string;
6
+ tags: string[];
7
+ };
8
+ export default _default;
@@ -0,0 +1,7 @@
1
+ /** DryUI agent metadata. Consumed by @dryui/mcp/load-component-meta. */
2
+ export default {
3
+ name: 'Pagination',
4
+ description: 'Page navigation with previous/next and page links',
5
+ category: 'navigation',
6
+ tags: ['nav', 'pages', 'paging', 'navigation']
7
+ };
@@ -0,0 +1,8 @@
1
+ /** DryUI agent metadata. Consumed by @dryui/mcp/load-component-meta. */
2
+ declare const _default: {
3
+ name: string;
4
+ description: string;
5
+ category: string;
6
+ tags: string[];
7
+ };
8
+ export default _default;
@@ -0,0 +1,7 @@
1
+ /** DryUI agent metadata. Consumed by @dryui/mcp/load-component-meta. */
2
+ export default {
3
+ name: 'PhoneInput',
4
+ description: 'Phone number input with country code selector',
5
+ category: 'input',
6
+ tags: ['form', 'phone', 'telephone', 'input', 'country-code', 'international']
7
+ };
@@ -0,0 +1,8 @@
1
+ /** DryUI agent metadata. Consumed by @dryui/mcp/load-component-meta. */
2
+ declare const _default: {
3
+ name: string;
4
+ description: string;
5
+ category: string;
6
+ tags: string[];
7
+ };
8
+ export default _default;
@@ -0,0 +1,7 @@
1
+ /** DryUI agent metadata. Consumed by @dryui/mcp/load-component-meta. */
2
+ export default {
3
+ name: 'PinInput',
4
+ description: 'Segmented input for PIN/OTP codes with single hidden input architecture',
5
+ category: 'input',
6
+ tags: ['form', 'pin', 'otp', 'code', 'verification']
7
+ };
@@ -54,10 +54,11 @@
54
54
  </div>
55
55
 
56
56
  <style>
57
+ /* outer: var(--dry-radius-popover); children inside the padded region use var(--dry-radius-nested-popover). */
57
58
  [data-popover-content] {
58
59
  --dry-popover-bg: var(--dry-overlay-bg, var(--dry-color-bg-overlay));
59
60
  --dry-popover-border: var(--dry-overlay-border, var(--dry-color-stroke-weak));
60
- --dry-popover-radius: var(--dry-overlay-radius, var(--dry-radius-lg));
61
+ --dry-popover-radius: var(--dry-overlay-radius, var(--dry-radius-popover));
61
62
  --dry-popover-shadow: var(--dry-overlay-shadow, var(--dry-shadow-lg));
62
63
  --dry-popover-padding: var(--dry-space-4);
63
64
  --dry-radius-nested: max(
@@ -1,6 +1,5 @@
1
1
  <script lang="ts">
2
2
  import type { Snippet } from 'svelte';
3
- import { generateFormId } from '@dryui/primitives';
4
3
  import { setPopoverCtx } from './context.svelte.js';
5
4
 
6
5
  interface Props {
@@ -10,8 +9,9 @@
10
9
 
11
10
  let { open = $bindable(false), children }: Props = $props();
12
11
 
13
- const triggerId = generateFormId('popover-trigger');
14
- const contentId = generateFormId('popover-content');
12
+ const uid = $props.id();
13
+ const triggerId = `popover-trigger-${uid}`;
14
+ const contentId = `popover-content-${uid}`;
15
15
 
16
16
  setPopoverCtx({
17
17
  get open() {
@@ -0,0 +1,8 @@
1
+ /** DryUI agent metadata. Consumed by @dryui/mcp/load-component-meta. */
2
+ declare const _default: {
3
+ name: string;
4
+ description: string;
5
+ category: string;
6
+ tags: string[];
7
+ };
8
+ export default _default;
@@ -0,0 +1,7 @@
1
+ /** DryUI agent metadata. Consumed by @dryui/mcp/load-component-meta. */
2
+ export default {
3
+ name: 'Popover',
4
+ description: 'Floating content panel anchored to a trigger',
5
+ category: 'overlay',
6
+ tags: ['popup', 'floating', 'tooltip', 'popover']
7
+ };
@@ -0,0 +1,8 @@
1
+ /** DryUI agent metadata. Consumed by @dryui/mcp/load-component-meta. */
2
+ declare const _default: {
3
+ name: string;
4
+ description: string;
5
+ category: string;
6
+ tags: string[];
7
+ };
8
+ export default _default;
@@ -0,0 +1,7 @@
1
+ /** DryUI agent metadata. Consumed by @dryui/mcp/load-component-meta. */
2
+ export default {
3
+ name: 'Portal',
4
+ description: 'Renders children into a different DOM location',
5
+ category: 'utility',
6
+ tags: ['teleport', 'portal', 'mount', 'target']
7
+ };
@@ -0,0 +1,8 @@
1
+ /** DryUI agent metadata. Consumed by @dryui/mcp/load-component-meta. */
2
+ declare const _default: {
3
+ name: string;
4
+ description: string;
5
+ category: string;
6
+ tags: string[];
7
+ };
8
+ export default _default;
@@ -0,0 +1,7 @@
1
+ /** DryUI agent metadata. Consumed by @dryui/mcp/load-component-meta. */
2
+ export default {
3
+ name: 'Progress',
4
+ description: 'Progress bar indicator',
5
+ category: 'feedback',
6
+ tags: ['loading', 'progress', 'bar', 'percentage']
7
+ };
@@ -0,0 +1,8 @@
1
+ /** DryUI agent metadata. Consumed by @dryui/mcp/load-component-meta. */
2
+ declare const _default: {
3
+ name: string;
4
+ description: string;
5
+ category: string;
6
+ tags: string[];
7
+ };
8
+ export default _default;
@@ -0,0 +1,7 @@
1
+ /** DryUI agent metadata. Consumed by @dryui/mcp/load-component-meta. */
2
+ export default {
3
+ name: 'ProgressRing',
4
+ description: 'Circular progress ring with SVG rendering',
5
+ category: 'feedback',
6
+ tags: ['progress', 'ring', 'circular', 'loading']
7
+ };
@@ -0,0 +1,8 @@
1
+ /** DryUI agent metadata. Consumed by @dryui/mcp/load-component-meta. */
2
+ declare const _default: {
3
+ name: string;
4
+ description: string;
5
+ category: string;
6
+ tags: string[];
7
+ };
8
+ export default _default;
@@ -0,0 +1,7 @@
1
+ /** DryUI agent metadata. Consumed by @dryui/mcp/load-component-meta. */
2
+ export default {
3
+ name: 'PromptInput',
4
+ description: 'AI-style prompt input with auto-resize and submit',
5
+ category: 'input',
6
+ tags: ['prompt', 'input', 'chat', 'ai', 'textarea']
7
+ };
@@ -0,0 +1,8 @@
1
+ /** DryUI agent metadata. Consumed by @dryui/mcp/load-component-meta. */
2
+ declare const _default: {
3
+ name: string;
4
+ description: string;
5
+ category: string;
6
+ tags: string[];
7
+ };
8
+ export default _default;
@@ -0,0 +1,7 @@
1
+ /** DryUI agent metadata. Consumed by @dryui/mcp/load-component-meta. */
2
+ export default {
3
+ name: 'QRCode',
4
+ description: 'QR code generator using Canvas 2D API',
5
+ category: 'display',
6
+ tags: ['qr', 'code', 'barcode', 'canvas', 'generate']
7
+ };
@@ -0,0 +1,8 @@
1
+ /** DryUI agent metadata. Consumed by @dryui/mcp/load-component-meta. */
2
+ declare const _default: {
3
+ name: string;
4
+ description: string;
5
+ category: string;
6
+ tags: string[];
7
+ };
8
+ export default _default;
@@ -0,0 +1,7 @@
1
+ /** DryUI agent metadata. Consumed by @dryui/mcp/load-component-meta. */
2
+ export default {
3
+ name: 'RadioGroup',
4
+ description: 'Single selection from multiple options',
5
+ category: 'input',
6
+ tags: ['form', 'radio', 'select', 'option', 'group']
7
+ };
@@ -1,7 +1,6 @@
1
1
  <script lang="ts">
2
2
  import type { Snippet } from 'svelte';
3
3
  import type { HTMLAttributes } from 'svelte/elements';
4
- import { createId } from '@dryui/primitives';
5
4
  import { setRadioGroupCtx } from './context.svelte.js';
6
5
 
7
6
  interface Props extends HTMLAttributes<HTMLDivElement> {
@@ -25,7 +24,8 @@
25
24
  ...rest
26
25
  }: Props = $props();
27
26
 
28
- const fallbackName = createId('dryui-radio');
27
+ const uid = $props.id();
28
+ const fallbackName = `dryui-radio-${uid}`;
29
29
  const groupName = $derived(name ?? fallbackName);
30
30
 
31
31
  setRadioGroupCtx({
@@ -0,0 +1,8 @@
1
+ /** DryUI agent metadata. Consumed by @dryui/mcp/load-component-meta. */
2
+ declare const _default: {
3
+ name: string;
4
+ description: string;
5
+ category: string;
6
+ tags: string[];
7
+ };
8
+ export default _default;
@@ -0,0 +1,7 @@
1
+ /** DryUI agent metadata. Consumed by @dryui/mcp/load-component-meta. */
2
+ export default {
3
+ name: 'RangeCalendar',
4
+ description: 'Calendar for selecting date ranges',
5
+ category: 'form',
6
+ tags: ['date', 'range', 'calendar', 'selection']
7
+ };
@@ -0,0 +1,8 @@
1
+ /** DryUI agent metadata. Consumed by @dryui/mcp/load-component-meta. */
2
+ declare const _default: {
3
+ name: string;
4
+ description: string;
5
+ category: string;
6
+ tags: string[];
7
+ };
8
+ export default _default;
@@ -0,0 +1,7 @@
1
+ /** DryUI agent metadata. Consumed by @dryui/mcp/load-component-meta. */
2
+ export default {
3
+ name: 'Rating',
4
+ description: 'Star rating input with half-star support',
5
+ category: 'input',
6
+ tags: ['form', 'stars', 'rating', 'review', 'score']
7
+ };
@@ -0,0 +1,8 @@
1
+ /** DryUI agent metadata. Consumed by @dryui/mcp/load-component-meta. */
2
+ declare const _default: {
3
+ name: string;
4
+ description: string;
5
+ category: string;
6
+ tags: string[];
7
+ };
8
+ export default _default;
@@ -0,0 +1,7 @@
1
+ /** DryUI agent metadata. Consumed by @dryui/mcp/load-component-meta. */
2
+ export default {
3
+ name: 'RelativeTime',
4
+ description: 'Displays relative time with auto-updating',
5
+ category: 'display',
6
+ tags: ['time', 'relative', 'ago', 'auto-update']
7
+ };
@@ -65,6 +65,7 @@
65
65
  color: var(--dry-relative-time-color);
66
66
  font-size: var(--dry-relative-time-font-size);
67
67
  font-family: var(--dry-font-sans);
68
+ font-variant-numeric: var(--dry-numeric-variant);
68
69
  line-height: var(--dry-type-small-leading);
69
70
  }
70
71
  </style>
@@ -0,0 +1,8 @@
1
+ /** DryUI agent metadata. Consumed by @dryui/mcp/load-component-meta. */
2
+ declare const _default: {
3
+ name: string;
4
+ description: string;
5
+ category: string;
6
+ tags: string[];
7
+ };
8
+ export default _default;
@@ -0,0 +1,7 @@
1
+ /** DryUI agent metadata. Consumed by @dryui/mcp/load-component-meta. */
2
+ export default {
3
+ name: 'Reveal',
4
+ description: 'IntersectionObserver-powered entry transitions with reduced-motion and no-dependency fallbacks',
5
+ category: 'display',
6
+ tags: ['animation', 'reveal', 'intersection-observer', 'stagger', 'motion']
7
+ };
@@ -1,6 +1,9 @@
1
1
  <script lang="ts">
2
2
  import type { HTMLAttributes } from 'svelte/elements';
3
- import { getRichTextEditorCtx } from '@dryui/primitives/rich-text-editor';
3
+ import {
4
+ getRichTextEditorCtx,
5
+ setSanitizedRichTextHtml
6
+ } from '@dryui/primitives/rich-text-editor';
4
7
 
5
8
  interface Props extends HTMLAttributes<HTMLDivElement> {}
6
9
 
@@ -12,17 +15,19 @@
12
15
 
13
16
  // Register the content element with the context
14
17
  $effect(() => {
15
- if (contentEl) {
16
- ctx.contentEl = contentEl;
17
- }
18
+ if (!contentEl) return;
19
+ ctx.contentEl = contentEl;
20
+ return () => {
21
+ if (ctx.contentEl === contentEl) ctx.contentEl = null;
22
+ };
18
23
  });
19
24
 
20
25
  // Sync value into contenteditable (also clears hint elements on mount)
21
26
  $effect(() => {
22
27
  if (!contentEl) return;
23
- const html = ctx.html || '';
28
+ const html = ctx.sanitizeHtml(ctx.html || '');
24
29
  if (contentEl.innerHTML !== html && document.activeElement !== contentEl) {
25
- contentEl.innerHTML = html;
30
+ setSanitizedRichTextHtml(contentEl, html);
26
31
  }
27
32
  });
28
33
 
@@ -96,8 +101,11 @@
96
101
  onkeydown={handleKeydown}
97
102
  {...rest}
98
103
  >
104
+ <!-- dryui-allow raw-heading: hidden seed nodes make Svelte retain scoped styles for sanitized contenteditable HTML. -->
99
105
  <h1>.</h1>
106
+ <!-- dryui-allow raw-heading: hidden seed nodes make Svelte retain scoped styles for sanitized contenteditable HTML. -->
100
107
  <h2>.</h2>
108
+ <!-- dryui-allow raw-heading: hidden seed nodes make Svelte retain scoped styles for sanitized contenteditable HTML. -->
101
109
  <h3>.</h3>
102
110
  <p></p>
103
111
  <ul><li></li></ul>