@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
@@ -0,0 +1,7 @@
1
+ /** DryUI agent metadata. Consumed by @dryui/mcp/load-component-meta. */
2
+ export default {
3
+ name: 'TagsInput',
4
+ description: 'Input for managing a list of tags',
5
+ category: 'input',
6
+ tags: ['form', 'tags', 'chips', 'multi', 'input']
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: 'Text',
4
+ description: 'Standalone body copy export for starter-kit typography',
5
+ category: 'display',
6
+ tags: ['text', 'copy', 'paragraph', 'typography']
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: 'Textarea',
4
+ description: 'Multi-line text input',
5
+ category: 'input',
6
+ tags: ['form', 'text', 'multiline', '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: 'ThemeToggle',
4
+ description: 'Persisted light/dark theme switcher with system-preference fallback',
5
+ category: 'action',
6
+ tags: ['theme', 'dark-mode', 'light-mode', 'toggle', 'switcher', 'preference']
7
+ };
@@ -167,6 +167,26 @@
167
167
  --dry-shadow-brand: 0 4px 14px hsla(15, 90%, 70%, 0.18), 0 2px 6px hsla(15, 90%, 70%, 0.1);
168
168
  --dry-shadow-accent: 0 4px 14px hsla(38, 88%, 68%, 0.18), 0 2px 6px hsla(38, 88%, 68%, 0.1);
169
169
 
170
+ /* ─── Utility shadows — warm dark edge + ink layers ─────────────── */
171
+ --dry-shadow-sm:
172
+ 0px 0px 0px 1px hsla(30, 30%, 95%, 0.06), 0px 1px 2px -1px hsla(20, 40%, 5%, 0.45),
173
+ 0px 2px 4px 0px hsla(20, 40%, 5%, 0.35);
174
+ --dry-shadow-md:
175
+ 0px 0px 0px 1px hsla(30, 30%, 95%, 0.07), 0px 2px 4px -1px hsla(20, 40%, 5%, 0.5),
176
+ 0px 4px 8px -2px hsla(20, 40%, 5%, 0.35);
177
+ --dry-shadow-lg:
178
+ 0px 0px 0px 1px hsla(30, 30%, 95%, 0.08), 0px 4px 8px -2px hsla(20, 40%, 5%, 0.55),
179
+ 0px 8px 20px -4px hsla(20, 40%, 5%, 0.45);
180
+ --dry-shadow-xl:
181
+ 0px 0px 0px 1px hsla(30, 30%, 95%, 0.08), 0px 8px 16px -4px hsla(20, 40%, 5%, 0.6),
182
+ 0px 20px 40px -8px hsla(20, 40%, 5%, 0.5);
183
+ --dry-shadow-sm-hover:
184
+ 0px 0px 0px 1px hsla(30, 30%, 95%, 0.1), 0px 1px 2px -1px hsla(20, 40%, 5%, 0.5),
185
+ 0px 2px 4px 0px hsla(20, 40%, 5%, 0.4);
186
+ --dry-shadow-md-hover:
187
+ 0px 0px 0px 1px hsla(30, 30%, 95%, 0.1), 0px 2px 4px -1px hsla(20, 40%, 5%, 0.55),
188
+ 0px 4px 8px -2px hsla(20, 40%, 5%, 0.4);
189
+
170
190
  /* ─── Glass — dark warm frosted ───────────────────────────────── */
171
191
  --dry-glass-tint: hsla(20, 14%, 12%, 0.7);
172
192
  --dry-glass-opacity: 62%;
@@ -157,6 +157,26 @@
157
157
  --dry-shadow-brand: 0 4px 14px hsla(230, 100%, 82%, 0.15), 0 2px 6px hsla(230, 100%, 82%, 0.1);
158
158
  --dry-shadow-accent: 0 4px 14px hsla(25, 85%, 68%, 0.15), 0 2px 6px hsla(25, 85%, 68%, 0.1);
159
159
 
160
+ /* ─── Utility shadows (dark) — edge reads white, layers stay ink ── */
161
+ --dry-shadow-sm:
162
+ 0px 0px 0px 1px rgba(255, 255, 255, 0.06), 0px 1px 2px -1px rgba(0, 0, 0, 0.4),
163
+ 0px 2px 4px 0px rgba(0, 0, 0, 0.3);
164
+ --dry-shadow-md:
165
+ 0px 0px 0px 1px rgba(255, 255, 255, 0.07), 0px 2px 4px -1px rgba(0, 0, 0, 0.45),
166
+ 0px 4px 8px -2px rgba(0, 0, 0, 0.3);
167
+ --dry-shadow-lg:
168
+ 0px 0px 0px 1px rgba(255, 255, 255, 0.08), 0px 4px 8px -2px rgba(0, 0, 0, 0.5),
169
+ 0px 8px 20px -4px rgba(0, 0, 0, 0.4);
170
+ --dry-shadow-xl:
171
+ 0px 0px 0px 1px rgba(255, 255, 255, 0.08), 0px 8px 16px -4px rgba(0, 0, 0, 0.55),
172
+ 0px 20px 40px -8px rgba(0, 0, 0, 0.5);
173
+ --dry-shadow-sm-hover:
174
+ 0px 0px 0px 1px rgba(255, 255, 255, 0.1), 0px 1px 2px -1px rgba(0, 0, 0, 0.45),
175
+ 0px 2px 4px 0px rgba(0, 0, 0, 0.35);
176
+ --dry-shadow-md-hover:
177
+ 0px 0px 0px 1px rgba(255, 255, 255, 0.1), 0px 2px 4px -1px rgba(0, 0, 0, 0.5),
178
+ 0px 4px 8px -2px rgba(0, 0, 0, 0.35);
179
+
160
180
  /* ─── Overlay backdrops ───────────────────────────────────────── */
161
181
  --dry-color-overlay-backdrop: hsla(0, 0%, 0%, 0.6);
162
182
  --dry-color-overlay-backdrop-strong: hsla(0, 0%, 0%, 0.75);
@@ -387,6 +407,26 @@
387
407
  0 4px 14px hsla(230, 100%, 82%, 0.15), 0 2px 6px hsla(230, 100%, 82%, 0.1);
388
408
  --dry-shadow-accent: 0 4px 14px hsla(25, 85%, 68%, 0.15), 0 2px 6px hsla(25, 85%, 68%, 0.1);
389
409
 
410
+ /* ─── Utility shadows (dark auto) ─────────────────────────────── */
411
+ --dry-shadow-sm:
412
+ 0px 0px 0px 1px rgba(255, 255, 255, 0.06), 0px 1px 2px -1px rgba(0, 0, 0, 0.4),
413
+ 0px 2px 4px 0px rgba(0, 0, 0, 0.3);
414
+ --dry-shadow-md:
415
+ 0px 0px 0px 1px rgba(255, 255, 255, 0.07), 0px 2px 4px -1px rgba(0, 0, 0, 0.45),
416
+ 0px 4px 8px -2px rgba(0, 0, 0, 0.3);
417
+ --dry-shadow-lg:
418
+ 0px 0px 0px 1px rgba(255, 255, 255, 0.08), 0px 4px 8px -2px rgba(0, 0, 0, 0.5),
419
+ 0px 8px 20px -4px rgba(0, 0, 0, 0.4);
420
+ --dry-shadow-xl:
421
+ 0px 0px 0px 1px rgba(255, 255, 255, 0.08), 0px 8px 16px -4px rgba(0, 0, 0, 0.55),
422
+ 0px 20px 40px -8px rgba(0, 0, 0, 0.5);
423
+ --dry-shadow-sm-hover:
424
+ 0px 0px 0px 1px rgba(255, 255, 255, 0.1), 0px 1px 2px -1px rgba(0, 0, 0, 0.45),
425
+ 0px 2px 4px 0px rgba(0, 0, 0, 0.35);
426
+ --dry-shadow-md-hover:
427
+ 0px 0px 0px 1px rgba(255, 255, 255, 0.1), 0px 2px 4px -1px rgba(0, 0, 0, 0.5),
428
+ 0px 4px 8px -2px rgba(0, 0, 0, 0.35);
429
+
390
430
  /* ─── Overlay backdrops ───────────────────────────────────────── */
391
431
  --dry-color-overlay-backdrop: hsla(0, 0%, 0%, 0.6);
392
432
  --dry-color-overlay-backdrop-strong: hsla(0, 0%, 0%, 0.75);
@@ -10,6 +10,8 @@ html {
10
10
  color: var(--dry-color-text-strong);
11
11
  background: var(--dry-color-bg-base);
12
12
  -webkit-font-smoothing: antialiased;
13
+ -moz-osx-font-smoothing: grayscale;
14
+ text-rendering: optimizeLegibility;
13
15
  }
14
16
 
15
17
  body {
@@ -17,6 +19,13 @@ body {
17
19
  min-height: 100dvh;
18
20
  }
19
21
 
22
+ :where(h1, h2, h3, h4, h5, h6) {
23
+ text-wrap: balance;
24
+ }
25
+ :where(p) {
26
+ text-wrap: pretty;
27
+ }
28
+
20
29
  code,
21
30
  pre,
22
31
  kbd,
@@ -221,6 +230,7 @@ samp {
221
230
 
222
231
  /* ─── Radius ──────────────────────────────────────────────────── */
223
232
  --dry-radius-none: 0;
233
+ --dry-radius-xs: 2px;
224
234
  --dry-radius-sm: 4px;
225
235
  --dry-radius-md: 8px;
226
236
  --dry-radius-lg: 8px;
@@ -228,6 +238,55 @@ samp {
228
238
  --dry-radius-2xl: 16px;
229
239
  --dry-radius-full: 9999px;
230
240
 
241
+ /* ─── Concentric radius ─────────────────────────────────────────
242
+ Per-container outer radii + the padding each container wraps
243
+ its children in. The derived `--dry-radius-nested-*` tokens
244
+ below are what children inside the padded region should use
245
+ so inner corners sit concentric with the outer edge. */
246
+ --dry-radius-card: var(--dry-radius-2xl);
247
+ --dry-radius-dialog: var(--dry-radius-2xl);
248
+ --dry-radius-popover: var(--dry-radius-xl);
249
+ --dry-radius-sheet: var(--dry-radius-2xl);
250
+ --dry-radius-toast: var(--dry-radius-lg);
251
+ --dry-radius-tooltip: var(--dry-radius-md);
252
+
253
+ --dry-padding-card: var(--dry-space-8);
254
+ --dry-padding-dialog: var(--dry-space-6);
255
+ --dry-padding-popover: var(--dry-space-2);
256
+ --dry-padding-sheet: var(--dry-space-6);
257
+ --dry-padding-toast: var(--dry-space-3);
258
+ --dry-padding-tooltip: var(--dry-space-2);
259
+ --dry-padding-field: var(--dry-space-4);
260
+
261
+ --dry-radius-nested-card: max(
262
+ var(--dry-radius-sm),
263
+ calc(var(--dry-radius-card) - var(--dry-padding-card))
264
+ );
265
+ --dry-radius-nested-dialog: max(
266
+ var(--dry-radius-sm),
267
+ calc(var(--dry-radius-dialog) - var(--dry-padding-dialog))
268
+ );
269
+ --dry-radius-nested-popover: max(
270
+ var(--dry-radius-xs),
271
+ calc(var(--dry-radius-popover) - var(--dry-padding-popover))
272
+ );
273
+ --dry-radius-nested-sheet: max(
274
+ var(--dry-radius-sm),
275
+ calc(var(--dry-radius-sheet) - var(--dry-padding-sheet))
276
+ );
277
+ --dry-radius-nested-toast: max(
278
+ var(--dry-radius-xs),
279
+ calc(var(--dry-radius-toast) - var(--dry-padding-toast))
280
+ );
281
+ --dry-radius-nested-tooltip: max(
282
+ var(--dry-radius-xs),
283
+ calc(var(--dry-radius-tooltip) - var(--dry-padding-tooltip))
284
+ );
285
+ --dry-radius-nested-field: max(
286
+ var(--dry-radius-sm),
287
+ calc(var(--dry-radius-md) - var(--dry-padding-field))
288
+ );
289
+
231
290
  /* ─── Typography ──────────────────────────────────────────────── */
232
291
  --dry-font-sans:
233
292
  ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto,
@@ -375,6 +434,50 @@ samp {
375
434
  --dry-stagger-step: 60ms;
376
435
  --dry-stagger-max: 8; /* cap delay so very long lists don't take forever */
377
436
 
437
+ /* ─── Entrance motion ──────────────────────────────────────────
438
+ Dramatic one-shot reveal (hero sections, page loads). Distinct
439
+ from `--dry-duration-entrance` which drives ambient component
440
+ mounts. `dry-enter` keyframe + `.dry-enter` class below consume
441
+ these tokens. */
442
+ --dry-enter-translate: 8px;
443
+ --dry-enter-blur: 5px;
444
+ --dry-enter-duration: 800ms;
445
+ --dry-enter-ease: cubic-bezier(0.25, 0.46, 0.45, 0.94);
446
+ --dry-enter-stagger-section: 100ms;
447
+ --dry-enter-stagger-word: 80ms;
448
+ --dry-enter-stagger-letter: 40ms;
449
+ --dry-enter-stagger-max: 16;
450
+
451
+ /* ─── Exit motion ──────────────────────────────────────────────
452
+ Subtle dismissal — small fixed offset, not full container
453
+ travel. Consumed by the `leave` Svelte transition and any
454
+ overlay primitive using `out:leave`. */
455
+ --dry-exit-translate: 12px;
456
+ --dry-exit-blur: 4px;
457
+ --dry-exit-duration: var(--dry-duration-slow);
458
+ --dry-exit-ease: var(--dry-ease-out);
459
+
460
+ /* ─── Icon swap ────────────────────────────────────────────────
461
+ Motion for `<IconSwap>` when one icon replaces another
462
+ (copy ↔ check, play ↔ pause). Uses the same retarget-friendly
463
+ transition as `[data-dry-icon-reveal]`. */
464
+ --dry-icon-swap-duration: var(--dry-duration-fast);
465
+ --dry-icon-swap-ease: var(--dry-ease-spring-snappy);
466
+ --dry-icon-swap-scale-out: 0.85;
467
+ --dry-icon-swap-blur-out: 2px;
468
+
469
+ /* ─── Optical offset ───────────────────────────────────────────
470
+ Small horizontal nudge used by `:has()` selectors on Button,
471
+ Chip, etc. to shift padding on the icon side so the label
472
+ reads visually centered. */
473
+ --dry-optical-icon-offset: 0.125rem;
474
+
475
+ /* ─── Numeric variant ──────────────────────────────────────────
476
+ Indirection layer so `.dry-tabular-nums` and the `Numeric`
477
+ primitive can be swapped to `slashed-zero tabular-nums` or
478
+ similar without a code sweep. */
479
+ --dry-numeric-variant: tabular-nums;
480
+
378
481
  /* ─── Glass surface ───────────────────────────────────────────── */
379
482
  --dry-glass-blur: 12px;
380
483
  --dry-glass-tint: var(--dry-color-bg-raised);
@@ -435,17 +538,29 @@ samp {
435
538
  --dry-tracking-wide: 0.05em;
436
539
  --dry-tracking-wider: 0.1em;
437
540
 
438
- /* ─── Utility shadows (fixed dark ink for depth across themes) ── */
439
- --dry-shadow-sm: 0 1px 2px 0 color-mix(in srgb, #020617 12%, transparent);
541
+ /* ─── Utility shadows three-layer shadow-as-border recipe ──────
542
+ Edge + close contact + ambient, so a raised surface reads as
543
+ raised without needing a solid border. Consumers: Card, Button,
544
+ and any raised chrome that used to pair border + subtle shadow.
545
+ Hover variants ramp the first two layers slightly. */
546
+ --dry-shadow-sm:
547
+ 0px 0px 0px 1px rgba(0, 0, 0, 0.06), 0px 1px 2px -1px rgba(0, 0, 0, 0.06),
548
+ 0px 2px 4px 0px rgba(0, 0, 0, 0.04);
440
549
  --dry-shadow-md:
441
- 0 4px 6px -1px color-mix(in srgb, #020617 18%, transparent),
442
- 0 2px 4px -2px color-mix(in srgb, #020617 14%, transparent);
550
+ 0px 0px 0px 1px rgba(0, 0, 0, 0.07), 0px 2px 4px -1px rgba(0, 0, 0, 0.08),
551
+ 0px 4px 8px -2px rgba(0, 0, 0, 0.04);
443
552
  --dry-shadow-lg:
444
- 0 10px 15px -3px color-mix(in srgb, #020617 24%, transparent),
445
- 0 4px 6px -4px color-mix(in srgb, #020617 18%, transparent);
553
+ 0px 0px 0px 1px rgba(0, 0, 0, 0.08), 0px 4px 8px -2px rgba(0, 0, 0, 0.08),
554
+ 0px 8px 20px -4px rgba(0, 0, 0, 0.06);
446
555
  --dry-shadow-xl:
447
- 0 20px 25px -5px color-mix(in srgb, #020617 30%, transparent),
448
- 0 8px 10px -6px color-mix(in srgb, #020617 22%, transparent);
556
+ 0px 0px 0px 1px rgba(0, 0, 0, 0.08), 0px 8px 16px -4px rgba(0, 0, 0, 0.1),
557
+ 0px 20px 40px -8px rgba(0, 0, 0, 0.08);
558
+ --dry-shadow-sm-hover:
559
+ 0px 0px 0px 1px rgba(0, 0, 0, 0.08), 0px 1px 2px -1px rgba(0, 0, 0, 0.08),
560
+ 0px 2px 4px 0px rgba(0, 0, 0, 0.06);
561
+ --dry-shadow-md-hover:
562
+ 0px 0px 0px 1px rgba(0, 0, 0, 0.09), 0px 2px 4px -1px rgba(0, 0, 0, 0.1),
563
+ 0px 4px 8px -2px rgba(0, 0, 0, 0.06);
449
564
 
450
565
  /* ─── Layers ──────────────────────────────────────────────────── */
451
566
  --dry-layer-overlay: 50;
@@ -509,6 +624,18 @@ samp {
509
624
  --dry-motion-opacity-enter: 1;
510
625
  --dry-motion-blur-enter: 0px;
511
626
  --dry-motion-scale-enter: 1;
627
+ --dry-enter-translate: 0px;
628
+ --dry-enter-blur: 0px;
629
+ --dry-enter-duration: 1ms;
630
+ --dry-enter-stagger-section: 0ms;
631
+ --dry-enter-stagger-word: 0ms;
632
+ --dry-enter-stagger-letter: 0ms;
633
+ --dry-exit-translate: 0px;
634
+ --dry-exit-blur: 0px;
635
+ --dry-exit-duration: 1ms;
636
+ --dry-icon-swap-duration: 0ms;
637
+ --dry-icon-swap-scale-out: 1;
638
+ --dry-icon-swap-blur-out: 0px;
512
639
  }
513
640
  }
514
641
 
@@ -569,7 +696,33 @@ samp {
569
696
  }
570
697
 
571
698
  .dry-tabular-nums {
572
- font-variant-numeric: tabular-nums;
699
+ font-variant-numeric: var(--dry-numeric-variant);
700
+ }
701
+
702
+ /* ─── Entrance animation ───────────────────────────────────────────
703
+ One-shot reveal for mounted content. Keyframes here are acceptable
704
+ (non-interactive, fires once on mount). Apply via:
705
+ - `<Enter index={n}>` / `<Stagger>` components.
706
+ - `in:enter={{ index }}` Svelte transition.
707
+ - `.dry-enter` + `style="--dry-enter-index: {n}"` for hand-rolled markup. */
708
+ @keyframes dry-enter {
709
+ from {
710
+ transform: translateY(var(--dry-enter-translate));
711
+ filter: blur(var(--dry-enter-blur));
712
+ opacity: 0;
713
+ }
714
+ }
715
+ .dry-enter {
716
+ animation: dry-enter var(--dry-enter-duration) var(--dry-enter-ease) both;
717
+ animation-delay: calc(
718
+ var(--dry-enter-stagger-section) * min(var(--dry-enter-index, 0), var(--dry-enter-stagger-max))
719
+ );
720
+ }
721
+ @media (prefers-reduced-motion: reduce) {
722
+ .dry-enter {
723
+ animation-duration: 1ms;
724
+ animation-delay: 0ms;
725
+ }
573
726
  }
574
727
 
575
728
  [data-dry-icon-reveal] {
@@ -65,6 +65,26 @@
65
65
  --dry-shadow-brand: 0 4px 20px hsla(250, 70%, 75%, 0.12), 0 2px 8px hsla(250, 70%, 75%, 0.08);
66
66
  --dry-shadow-accent: 0 4px 20px hsla(350, 60%, 70%, 0.12), 0 2px 8px hsla(350, 60%, 70%, 0.08);
67
67
 
68
+ /* ─── Utility shadows — dark edge + deep ink layers ─────────────── */
69
+ --dry-shadow-sm:
70
+ 0px 0px 0px 1px rgba(255, 255, 255, 0.06), 0px 1px 2px -1px hsla(240, 40%, 3%, 0.5),
71
+ 0px 2px 4px 0px hsla(240, 40%, 3%, 0.4);
72
+ --dry-shadow-md:
73
+ 0px 0px 0px 1px rgba(255, 255, 255, 0.07), 0px 2px 4px -1px hsla(240, 40%, 3%, 0.55),
74
+ 0px 4px 8px -2px hsla(240, 40%, 3%, 0.4);
75
+ --dry-shadow-lg:
76
+ 0px 0px 0px 1px rgba(255, 255, 255, 0.08), 0px 4px 8px -2px hsla(240, 40%, 3%, 0.6),
77
+ 0px 8px 20px -4px hsla(240, 40%, 3%, 0.5);
78
+ --dry-shadow-xl:
79
+ 0px 0px 0px 1px rgba(255, 255, 255, 0.08), 0px 8px 16px -4px hsla(240, 40%, 3%, 0.6),
80
+ 0px 20px 40px -8px hsla(240, 40%, 3%, 0.55);
81
+ --dry-shadow-sm-hover:
82
+ 0px 0px 0px 1px rgba(255, 255, 255, 0.1), 0px 1px 2px -1px hsla(240, 40%, 3%, 0.55),
83
+ 0px 2px 4px 0px hsla(240, 40%, 3%, 0.45);
84
+ --dry-shadow-md-hover:
85
+ 0px 0px 0px 1px rgba(255, 255, 255, 0.1), 0px 2px 4px -1px hsla(240, 40%, 3%, 0.6),
86
+ 0px 4px 8px -2px hsla(240, 40%, 3%, 0.45);
87
+
68
88
  /* ─── Glass — the hero feature of this theme ──────────────────── */
69
89
  --dry-glass-blur: 16px;
70
90
  --dry-glass-tint: hsla(240, 15%, 10%, 0.65);
@@ -64,6 +64,26 @@
64
64
  --dry-shadow-brand: 0 0 12px hsla(145, 80%, 50%, 0.15), 0 0 4px hsla(145, 80%, 50%, 0.1);
65
65
  --dry-shadow-accent: 0 0 12px hsla(45, 90%, 55%, 0.15), 0 0 4px hsla(45, 90%, 55%, 0.1);
66
66
 
67
+ /* ─── Utility shadows — thin edge, minimal layering (CRT feel) ─── */
68
+ --dry-shadow-sm:
69
+ 0px 0px 0px 1px rgba(255, 255, 255, 0.08), 0px 1px 2px -1px rgba(0, 0, 0, 0.55),
70
+ 0px 2px 4px 0px rgba(0, 0, 0, 0.4);
71
+ --dry-shadow-md:
72
+ 0px 0px 0px 1px rgba(255, 255, 255, 0.1), 0px 2px 4px -1px rgba(0, 0, 0, 0.6),
73
+ 0px 4px 8px -2px rgba(0, 0, 0, 0.4);
74
+ --dry-shadow-lg:
75
+ 0px 0px 0px 1px rgba(255, 255, 255, 0.12), 0px 4px 8px -2px rgba(0, 0, 0, 0.65),
76
+ 0px 8px 20px -4px rgba(0, 0, 0, 0.5);
77
+ --dry-shadow-xl:
78
+ 0px 0px 0px 1px rgba(255, 255, 255, 0.14), 0px 8px 16px -4px rgba(0, 0, 0, 0.7),
79
+ 0px 20px 40px -8px rgba(0, 0, 0, 0.6);
80
+ --dry-shadow-sm-hover:
81
+ 0px 0px 0px 1px rgba(255, 255, 255, 0.12), 0px 1px 2px -1px rgba(0, 0, 0, 0.6),
82
+ 0px 2px 4px 0px rgba(0, 0, 0, 0.45);
83
+ --dry-shadow-md-hover:
84
+ 0px 0px 0px 1px rgba(255, 255, 255, 0.14), 0px 2px 4px -1px rgba(0, 0, 0, 0.65),
85
+ 0px 4px 8px -2px rgba(0, 0, 0, 0.45);
86
+
67
87
  /* ─── Glass — minimal, tinted dark ────────────────────────────── */
68
88
  --dry-glass-blur: 8px;
69
89
  --dry-glass-tint: hsla(0, 0%, 4%, 0.85);
@@ -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: 'TimeInput',
4
+ description: 'Native time input with form control integration',
5
+ category: 'input',
6
+ tags: ['time', 'input', 'form', 'clock']
7
+ };
@@ -11,16 +11,22 @@
11
11
  </script>
12
12
 
13
13
  {#if level === 1}
14
+ <!-- dryui-allow raw-heading: Timeline.Title owns its semantic heading element while applying timeline-specific title styling. -->
14
15
  <h1 data-part="title" data-level={level} class={className} {...rest}>{@render children()}</h1>
15
16
  {:else if level === 2}
17
+ <!-- dryui-allow raw-heading: Timeline.Title owns its semantic heading element while applying timeline-specific title styling. -->
16
18
  <h2 data-part="title" data-level={level} class={className} {...rest}>{@render children()}</h2>
17
19
  {:else if level === 3}
20
+ <!-- dryui-allow raw-heading: Timeline.Title owns its semantic heading element while applying timeline-specific title styling. -->
18
21
  <h3 data-part="title" data-level={level} class={className} {...rest}>{@render children()}</h3>
19
22
  {:else if level === 4}
23
+ <!-- dryui-allow raw-heading: Timeline.Title owns its semantic heading element while applying timeline-specific title styling. -->
20
24
  <h4 data-part="title" data-level={level} class={className} {...rest}>{@render children()}</h4>
21
25
  {:else if level === 5}
26
+ <!-- dryui-allow raw-heading: Timeline.Title owns its semantic heading element while applying timeline-specific title styling. -->
22
27
  <h5 data-part="title" data-level={level} class={className} {...rest}>{@render children()}</h5>
23
28
  {:else}
29
+ <!-- dryui-allow raw-heading: Timeline.Title owns its semantic heading element while applying timeline-specific title styling. -->
24
30
  <h6 data-part="title" data-level={level} class={className} {...rest}>{@render children()}</h6>
25
31
  {/if}
26
32
 
@@ -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: 'Timeline',
4
+ description: 'Vertical timeline for activity feeds and history',
5
+ category: 'display',
6
+ tags: ['timeline', 'activity', 'feed', 'history', 'events']
7
+ };
@@ -57,15 +57,19 @@
57
57
  </div>
58
58
 
59
59
  <style>
60
+ /* outer: var(--dry-radius-toast); children inside the padded region use var(--dry-radius-nested-toast). */
60
61
  [data-part='root'] {
61
62
  --dry-toast-accent: var(--dry-color-fill-info);
62
- --dry-radius-nested: max(var(--dry-radius-sm), calc(var(--dry-radius-lg) - var(--dry-space-4)));
63
+ --dry-radius-nested: max(
64
+ var(--dry-radius-sm),
65
+ calc(var(--dry-radius-toast) - var(--dry-space-4))
66
+ );
63
67
  --dry-btn-radius: var(--dry-radius-nested);
64
68
 
65
69
  position: relative;
66
70
  background: var(--dry-toast-bg, var(--dry-color-bg-overlay));
67
71
  border: 1px solid var(--dry-toast-border, var(--dry-color-stroke-weak));
68
- border-radius: var(--dry-radius-lg);
72
+ border-radius: var(--dry-radius-toast);
69
73
  box-shadow: var(--dry-shadow-lg);
70
74
  padding: var(--dry-space-4);
71
75
  padding-right: calc(var(--dry-space-4) + var(--dry-space-12) + var(--dry-space-2));
@@ -104,6 +108,7 @@
104
108
  }
105
109
  }
106
110
 
111
+ /* dryui-allow ad-hoc-enter-keyframe: toast predates motion wrappers and keeps reduced-motion handling in this file. */
107
112
  @keyframes slideIn {
108
113
  from {
109
114
  opacity: 0;
@@ -148,7 +153,7 @@
148
153
  display: grid;
149
154
  grid-template-columns: var(--progress-width, 0%) 1fr;
150
155
  background: var(--dry-color-stroke-weak, #e2e8f0);
151
- border-radius: 0 0 var(--dry-radius-lg) var(--dry-radius-lg);
156
+ border-radius: 0 0 var(--dry-radius-toast) var(--dry-radius-toast);
152
157
  overflow: hidden;
153
158
  transition: grid-template-columns var(--dry-duration-normal) var(--dry-ease-default);
154
159
  }
@@ -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: 'Toast',
4
+ description: 'Temporary notification message',
5
+ category: 'feedback',
6
+ tags: ['notification', 'toast', 'snackbar', 'alert']
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: 'Toggle',
4
+ description: 'Pressable toggle button',
5
+ category: 'action',
6
+ tags: ['button', 'toggle', 'pressed', 'switch']
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: 'ToggleGroup',
4
+ description: 'Group of toggle buttons with single/multiple selection',
5
+ category: 'action',
6
+ tags: ['button', 'toggle', 'group', 'select']
7
+ };
@@ -89,6 +89,7 @@
89
89
  gap: var(--dry-space-1);
90
90
  padding: var(--dry-space-1);
91
91
  background: var(--dry-color-bg-overlay);
92
+ /* dryui-allow solid-border-on-raised: toolbar chrome needs a visible control group boundary. */
92
93
  border: 1px solid var(--dry-color-stroke-weak);
93
94
  border-radius: var(--dry-radius-lg);
94
95
  }
@@ -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: 'Toolbar',
4
+ description: 'Horizontal button group for actions',
5
+ category: 'navigation',
6
+ tags: ['actions', 'toolbar', 'buttons', 'bar']
7
+ };
@@ -45,6 +45,7 @@
45
45
  </div>
46
46
 
47
47
  <style>
48
+ /* outer: var(--dry-radius-tooltip); children inside the padded region use var(--dry-radius-nested-tooltip). */
48
49
  [data-tooltip-content] {
49
50
  /* Reset UA popover defaults */
50
51
  inset: unset;
@@ -53,7 +54,7 @@
53
54
  background: var(--dry-tooltip-bg, var(--dry-color-bg-inverse));
54
55
  color: var(--dry-tooltip-color, var(--dry-color-text-inverse));
55
56
  border: 1px solid var(--dry-tooltip-border, var(--dry-color-stroke-inverse-weak));
56
- border-radius: var(--dry-tooltip-radius, var(--dry-overlay-radius, var(--dry-radius-xl)));
57
+ border-radius: var(--dry-tooltip-radius, var(--dry-overlay-radius, var(--dry-radius-tooltip)));
57
58
  display: grid;
58
59
  grid-template-columns: minmax(0, min(28ch, calc(100vw - var(--dry-space-8))));
59
60
  padding: var(--dry-tooltip-padding-y, var(--dry-space-6))
@@ -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 { setTooltipCtx } from './context.svelte.js';
5
4
 
6
5
  interface Props {
@@ -13,8 +12,9 @@
13
12
 
14
13
  let open = $state(false);
15
14
 
16
- const triggerId = generateFormId('tooltip-trigger');
17
- const contentId = generateFormId('tooltip-content');
15
+ const uid = $props.id();
16
+ const triggerId = `tooltip-trigger-${uid}`;
17
+ const contentId = `tooltip-content-${uid}`;
18
18
 
19
19
  let openTimeout: ReturnType<typeof setTimeout>;
20
20
  let closeTimeout: ReturnType<typeof setTimeout>;