@dryui/ui 0.2.1 → 0.3.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 (588) hide show
  1. package/dist/accordion/accordion-trigger.svelte +9 -1
  2. package/dist/accordion/index.d.ts +24 -10
  3. package/dist/adjust/adjust.svelte +1 -1
  4. package/dist/adjust/index.d.ts +10 -10
  5. package/dist/alert/index.d.ts +7 -13
  6. package/dist/alert-dialog/index.d.ts +10 -20
  7. package/dist/alpha-slider/index.d.ts +6 -6
  8. package/dist/aspect-ratio/index.d.ts +2 -2
  9. package/dist/aurora/aurora.svelte +58 -11
  10. package/dist/aurora/aurora.svelte.d.ts +1 -0
  11. package/dist/aurora/index.d.ts +10 -8
  12. package/dist/avatar/index.d.ts +11 -4
  13. package/dist/badge/index.d.ts +3 -3
  14. package/dist/beam/index.d.ts +7 -7
  15. package/dist/breadcrumb/index.d.ts +24 -12
  16. package/dist/button/button.svelte +5 -1
  17. package/dist/button/index.d.ts +3 -3
  18. package/dist/button-group/index.d.ts +1 -1
  19. package/dist/calendar/index.d.ts +7 -14
  20. package/dist/card/index.d.ts +15 -15
  21. package/dist/carousel/index.d.ts +8 -16
  22. package/dist/chart/index.d.ts +49 -44
  23. package/dist/chat-thread/index.d.ts +9 -11
  24. package/dist/checkbox/checkbox.svelte +1 -5
  25. package/dist/checkbox/index.d.ts +1 -1
  26. package/dist/chip/index.d.ts +13 -18
  27. package/dist/chip-group/index.d.ts +3 -3
  28. package/dist/chromatic-aberration/index.d.ts +3 -3
  29. package/dist/chromatic-shift/index.d.ts +2 -1
  30. package/dist/code-block/highlighter/types.d.ts +3 -3
  31. package/dist/code-block/index.d.ts +3 -3
  32. package/dist/collapsible/collapsible-trigger.svelte +9 -1
  33. package/dist/collapsible/index.d.ts +16 -8
  34. package/dist/color-picker/color-picker-eyedropper.svelte +13 -1
  35. package/dist/color-picker/index.d.ts +11 -19
  36. package/dist/combobox/index.d.ts +10 -15
  37. package/dist/command-palette/index.d.ts +8 -16
  38. package/dist/container/index.d.ts +3 -3
  39. package/dist/context-menu/index.d.ts +8 -16
  40. package/dist/data-grid/index.d.ts +22 -29
  41. package/dist/date-field/date-field-separator.svelte +1 -7
  42. package/dist/date-field/index.d.ts +4 -4
  43. package/dist/date-picker/datepicker-trigger.svelte +15 -1
  44. package/dist/date-picker/index.d.ts +6 -10
  45. package/dist/date-range-picker/date-range-picker-trigger.svelte +12 -1
  46. package/dist/date-range-picker/index.d.ts +6 -12
  47. package/dist/date-time-input/index.d.ts +1 -1
  48. package/dist/description-list/index.d.ts +8 -8
  49. package/dist/diagram/diagram.svelte +769 -0
  50. package/dist/diagram/diagram.svelte.d.ts +10 -0
  51. package/dist/diagram/edge-routing.d.ts +9 -0
  52. package/dist/diagram/edge-routing.js +281 -0
  53. package/dist/diagram/index.d.ts +9 -0
  54. package/dist/diagram/index.js +1 -0
  55. package/dist/diagram/layout.d.ts +2 -0
  56. package/dist/diagram/layout.js +985 -0
  57. package/dist/diagram/types.d.ts +196 -0
  58. package/dist/dialog/index.d.ts +9 -18
  59. package/dist/displacement/displacement.svelte +39 -3
  60. package/dist/displacement/index.d.ts +2 -1
  61. package/dist/drag-and-drop/context.svelte.d.ts +1 -0
  62. package/dist/drag-and-drop/drag-and-drop-group.svelte +37 -0
  63. package/dist/drag-and-drop/drag-and-drop-group.svelte.d.ts +8 -0
  64. package/dist/drag-and-drop/drag-and-drop-handle.svelte +2 -0
  65. package/dist/drag-and-drop/drag-and-drop-item.svelte +25 -6
  66. package/dist/drag-and-drop/drag-and-drop-root.svelte +624 -34
  67. package/dist/drag-and-drop/group-context.svelte.d.ts +13 -0
  68. package/dist/drag-and-drop/group-context.svelte.js +8 -0
  69. package/dist/drag-and-drop/index.d.ts +6 -8
  70. package/dist/drag-and-drop/index.js +3 -1
  71. package/dist/drawer/drawer-content.svelte +2 -1
  72. package/dist/drawer/drawer-footer.svelte +1 -1
  73. package/dist/drawer/index.d.ts +10 -18
  74. package/dist/drop-zone/index.d.ts +2 -2
  75. package/dist/dropdown-menu/index.d.ts +8 -16
  76. package/dist/field/index.d.ts +3 -3
  77. package/dist/fieldset/index.d.ts +8 -8
  78. package/dist/file-select/file-select-clear.svelte +8 -1
  79. package/dist/file-select/index.d.ts +8 -10
  80. package/dist/file-upload/file-upload-item-delete.svelte +8 -1
  81. package/dist/file-upload/file-upload-root.svelte +0 -1
  82. package/dist/file-upload/index.d.ts +14 -19
  83. package/dist/flip-card/index.d.ts +3 -3
  84. package/dist/float-button/float-button-root.svelte +7 -1
  85. package/dist/float-button/index.d.ts +6 -10
  86. package/dist/glass/index.d.ts +4 -4
  87. package/dist/glow/index.d.ts +5 -5
  88. package/dist/god-rays/index.d.ts +10 -10
  89. package/dist/gradient-mesh/gradient-mesh.svelte +42 -5
  90. package/dist/gradient-mesh/index.d.ts +2 -1
  91. package/dist/halftone/halftone.svelte +16 -36
  92. package/dist/halftone/index.d.ts +5 -5
  93. package/dist/heading/index.d.ts +3 -3
  94. package/dist/hover-card/index.d.ts +4 -8
  95. package/dist/icon/index.d.ts +5 -5
  96. package/dist/index.d.ts +65 -590
  97. package/dist/index.js +1 -2
  98. package/dist/input/index.d.ts +2 -2
  99. package/dist/input-group/index.d.ts +11 -17
  100. package/dist/input-group/input-group-root.svelte +0 -1
  101. package/dist/internal/color-aliases.d.ts +5 -8
  102. package/dist/kbd/index.d.ts +6 -1
  103. package/dist/label/index.d.ts +1 -1
  104. package/dist/link/index.d.ts +1 -1
  105. package/dist/link-preview/index.d.ts +4 -8
  106. package/dist/list/index.d.ts +6 -12
  107. package/dist/list/list-root.svelte +0 -1
  108. package/dist/listbox/index.d.ts +2 -2
  109. package/dist/logo-mark/logo-mark.svelte +2 -2
  110. package/dist/logo-mark/logo-mark.svelte.d.ts +7 -7
  111. package/dist/map/index.d.ts +31 -43
  112. package/dist/mask-reveal/index.d.ts +2 -1
  113. package/dist/mega-menu/index.d.ts +7 -14
  114. package/dist/menubar/index.d.ts +8 -16
  115. package/dist/multi-select-combobox/index.d.ts +10 -20
  116. package/dist/multi-select-combobox/multi-select-combobox-input.svelte +0 -1
  117. package/dist/navigation-menu/index.d.ts +27 -14
  118. package/dist/navigation-menu/navigation-menu-list.svelte +0 -1
  119. package/dist/noise/index.d.ts +5 -5
  120. package/dist/noise/noise.svelte +2 -2
  121. package/dist/notification-center/index.d.ts +6 -13
  122. package/dist/notification-center/notification-center-panel.svelte +4 -1
  123. package/dist/notification-center/notification-center-trigger.svelte +0 -1
  124. package/dist/number-input/index.d.ts +1 -1
  125. package/dist/number-input/number-input.svelte +3 -1
  126. package/dist/option-swatch-group/index.d.ts +8 -8
  127. package/dist/pagination/index.d.ts +8 -16
  128. package/dist/phone-input/index.d.ts +1 -1
  129. package/dist/pin-input/index.d.ts +7 -13
  130. package/dist/popover/index.d.ts +3 -3
  131. package/dist/progress/index.d.ts +3 -7
  132. package/dist/progress-ring/index.d.ts +2 -2
  133. package/dist/radio-group/index.d.ts +2 -2
  134. package/dist/radio-group/radio-group.svelte +0 -1
  135. package/dist/range-calendar/index.d.ts +2 -2
  136. package/dist/range-calendar/range-calendar-grid.svelte +10 -4
  137. package/dist/range-calendar/range-calendar-root.svelte +1 -5
  138. package/dist/rating/index.d.ts +1 -1
  139. package/dist/reveal/index.d.ts +3 -1
  140. package/dist/rich-text-editor/index.d.ts +5 -4
  141. package/dist/rich-text-editor/rich-text-editor-content.svelte +9 -1
  142. package/dist/rich-text-editor/rich-text-editor-toolbar.svelte +1 -2
  143. package/dist/scroll-to-top/index.d.ts +2 -2
  144. package/dist/segmented-control/index.d.ts +2 -2
  145. package/dist/select/index.d.ts +6 -12
  146. package/dist/select/select-trigger.svelte +9 -1
  147. package/dist/separator/index.d.ts +3 -3
  148. package/dist/shader-canvas/index.d.ts +13 -18
  149. package/dist/shader-canvas/presets.d.ts +5 -10
  150. package/dist/shader-canvas/presets.js +1 -1
  151. package/dist/shader-canvas/shader-canvas.svelte +4 -2
  152. package/dist/sidebar/index.d.ts +37 -18
  153. package/dist/sidebar/sidebar-footer.svelte +5 -4
  154. package/dist/sidebar/sidebar-header.svelte +4 -1
  155. package/dist/sidebar/sidebar-root.svelte +1 -1
  156. package/dist/skeleton/index.d.ts +5 -5
  157. package/dist/slider/index.d.ts +1 -1
  158. package/dist/spacer/index.d.ts +2 -2
  159. package/dist/spinner/index.d.ts +5 -4
  160. package/dist/splitter/index.d.ts +3 -3
  161. package/dist/spotlight/index.d.ts +2 -1
  162. package/dist/spotlight/spotlight.svelte +42 -4
  163. package/dist/star-rating/index.d.ts +5 -5
  164. package/dist/stepper/index.d.ts +5 -10
  165. package/dist/svg/index.d.ts +2 -1
  166. package/dist/table/index.d.ts +9 -18
  167. package/dist/table-of-contents/index.d.ts +4 -9
  168. package/dist/tabs/index.d.ts +25 -8
  169. package/dist/tabs/tabs-trigger.svelte +4 -2
  170. package/dist/tag/index.d.ts +3 -3
  171. package/dist/tags-input/index.d.ts +7 -12
  172. package/dist/text/index.d.ts +7 -7
  173. package/dist/textarea/index.d.ts +1 -1
  174. package/dist/themes/aurora.css +229 -0
  175. package/dist/themes/dark.css +134 -0
  176. package/dist/themes/default.css +80 -1
  177. package/dist/themes/midnight.css +142 -0
  178. package/dist/themes/terminal.css +175 -0
  179. package/dist/themes/use-theme-override.svelte.d.ts +1 -17
  180. package/dist/time-input/index.d.ts +6 -6
  181. package/dist/time-input/time-input.svelte +1 -3
  182. package/dist/timeline/index.d.ts +9 -16
  183. package/dist/timeline/timeline-item.svelte +2 -1
  184. package/dist/toast/index.d.ts +7 -15
  185. package/dist/toggle/index.d.ts +2 -2
  186. package/dist/toggle-group/index.d.ts +3 -3
  187. package/dist/toolbar/index.d.ts +5 -10
  188. package/dist/tooltip/index.d.ts +3 -3
  189. package/dist/tour/index.d.ts +2 -2
  190. package/dist/tour/tour-root.svelte +4 -1
  191. package/dist/transfer/index.d.ts +9 -16
  192. package/dist/tree/index.d.ts +5 -10
  193. package/dist/typing-indicator/index.d.ts +2 -1
  194. package/dist/typography/index.d.ts +9 -12
  195. package/dist/visually-hidden/index.d.ts +5 -1
  196. package/package.json +22 -27
  197. package/skills/dryui/SKILL.md +29 -16
  198. package/skills/dryui/rules/composition.md +262 -225
  199. package/dist/system-map/index.d.ts +0 -45
  200. package/dist/system-map/index.js +0 -1
  201. package/dist/system-map/system-map.svelte +0 -311
  202. package/dist/system-map/system-map.svelte.d.ts +0 -25
  203. package/dist/system-map/types.d.ts +0 -116
  204. package/dist/thumbnail/_layout-content.svelte +0 -89
  205. package/dist/thumbnail/_layout-content.svelte.d.ts +0 -9
  206. package/dist/thumbnail/_layout-footer.svelte +0 -54
  207. package/dist/thumbnail/_layout-footer.svelte.d.ts +0 -9
  208. package/dist/thumbnail/_layout-header.svelte +0 -76
  209. package/dist/thumbnail/_layout-header.svelte.d.ts +0 -9
  210. package/dist/thumbnail/_layout-sidebar.svelte +0 -75
  211. package/dist/thumbnail/_layout-sidebar.svelte.d.ts +0 -9
  212. package/dist/thumbnail/accordion.svelte +0 -144
  213. package/dist/thumbnail/accordion.svelte.d.ts +0 -7
  214. package/dist/thumbnail/add-on-selector.svelte +0 -213
  215. package/dist/thumbnail/add-on-selector.svelte.d.ts +0 -7
  216. package/dist/thumbnail/affix-group.svelte +0 -55
  217. package/dist/thumbnail/affix-group.svelte.d.ts +0 -7
  218. package/dist/thumbnail/alert-dialog.svelte +0 -100
  219. package/dist/thumbnail/alert-dialog.svelte.d.ts +0 -7
  220. package/dist/thumbnail/alert.svelte +0 -79
  221. package/dist/thumbnail/alert.svelte.d.ts +0 -7
  222. package/dist/thumbnail/alpha-slider.svelte +0 -55
  223. package/dist/thumbnail/alpha-slider.svelte.d.ts +0 -7
  224. package/dist/thumbnail/amenity-grid.svelte +0 -236
  225. package/dist/thumbnail/amenity-grid.svelte.d.ts +0 -7
  226. package/dist/thumbnail/app-frame.svelte.d.ts +0 -7
  227. package/dist/thumbnail/apply-size.d.ts +0 -3
  228. package/dist/thumbnail/apply-size.js +0 -14
  229. package/dist/thumbnail/aspect-ratio.svelte +0 -64
  230. package/dist/thumbnail/aspect-ratio.svelte.d.ts +0 -7
  231. package/dist/thumbnail/aurora.svelte +0 -88
  232. package/dist/thumbnail/aurora.svelte.d.ts +0 -7
  233. package/dist/thumbnail/avatar-group.svelte.d.ts +0 -7
  234. package/dist/thumbnail/avatar.svelte +0 -60
  235. package/dist/thumbnail/avatar.svelte.d.ts +0 -7
  236. package/dist/thumbnail/backdrop.svelte +0 -73
  237. package/dist/thumbnail/backdrop.svelte.d.ts +0 -7
  238. package/dist/thumbnail/badge.svelte +0 -100
  239. package/dist/thumbnail/badge.svelte.d.ts +0 -7
  240. package/dist/thumbnail/booking-confirmation.svelte +0 -109
  241. package/dist/thumbnail/booking-confirmation.svelte.d.ts +0 -7
  242. package/dist/thumbnail/breadcrumb.svelte +0 -80
  243. package/dist/thumbnail/breadcrumb.svelte.d.ts +0 -7
  244. package/dist/thumbnail/button-group.svelte +0 -76
  245. package/dist/thumbnail/button-group.svelte.d.ts +0 -7
  246. package/dist/thumbnail/button.svelte +0 -62
  247. package/dist/thumbnail/button.svelte.d.ts +0 -7
  248. package/dist/thumbnail/calendar.svelte +0 -86
  249. package/dist/thumbnail/calendar.svelte.d.ts +0 -7
  250. package/dist/thumbnail/card.svelte +0 -113
  251. package/dist/thumbnail/card.svelte.d.ts +0 -7
  252. package/dist/thumbnail/carousel.svelte +0 -111
  253. package/dist/thumbnail/carousel.svelte.d.ts +0 -7
  254. package/dist/thumbnail/chart.svelte +0 -93
  255. package/dist/thumbnail/chart.svelte.d.ts +0 -7
  256. package/dist/thumbnail/chat-message.svelte.d.ts +0 -7
  257. package/dist/thumbnail/chat-thread.svelte +0 -140
  258. package/dist/thumbnail/chat-thread.svelte.d.ts +0 -7
  259. package/dist/thumbnail/checkbox.svelte +0 -71
  260. package/dist/thumbnail/checkbox.svelte.d.ts +0 -7
  261. package/dist/thumbnail/chip-group.svelte +0 -79
  262. package/dist/thumbnail/chip-group.svelte.d.ts +0 -7
  263. package/dist/thumbnail/chip.svelte +0 -76
  264. package/dist/thumbnail/chip.svelte.d.ts +0 -7
  265. package/dist/thumbnail/chromatic-shift.svelte +0 -55
  266. package/dist/thumbnail/chromatic-shift.svelte.d.ts +0 -7
  267. package/dist/thumbnail/clipboard.svelte +0 -68
  268. package/dist/thumbnail/clipboard.svelte.d.ts +0 -7
  269. package/dist/thumbnail/code-block.svelte +0 -125
  270. package/dist/thumbnail/code-block.svelte.d.ts +0 -7
  271. package/dist/thumbnail/collapsible.svelte +0 -101
  272. package/dist/thumbnail/collapsible.svelte.d.ts +0 -7
  273. package/dist/thumbnail/color-picker.svelte +0 -108
  274. package/dist/thumbnail/color-picker.svelte.d.ts +0 -7
  275. package/dist/thumbnail/combobox.svelte +0 -122
  276. package/dist/thumbnail/combobox.svelte.d.ts +0 -7
  277. package/dist/thumbnail/command-palette.svelte +0 -134
  278. package/dist/thumbnail/command-palette.svelte.d.ts +0 -7
  279. package/dist/thumbnail/commerce-header.svelte +0 -55
  280. package/dist/thumbnail/commerce-header.svelte.d.ts +0 -7
  281. package/dist/thumbnail/comparison-table.svelte +0 -193
  282. package/dist/thumbnail/comparison-table.svelte.d.ts +0 -7
  283. package/dist/thumbnail/container.svelte +0 -119
  284. package/dist/thumbnail/container.svelte.d.ts +0 -7
  285. package/dist/thumbnail/context-menu.svelte +0 -108
  286. package/dist/thumbnail/context-menu.svelte.d.ts +0 -7
  287. package/dist/thumbnail/country-select.svelte +0 -111
  288. package/dist/thumbnail/country-select.svelte.d.ts +0 -7
  289. package/dist/thumbnail/currency-selector.svelte +0 -111
  290. package/dist/thumbnail/currency-selector.svelte.d.ts +0 -7
  291. package/dist/thumbnail/data-grid.svelte +0 -230
  292. package/dist/thumbnail/data-grid.svelte.d.ts +0 -7
  293. package/dist/thumbnail/date-field.svelte +0 -132
  294. package/dist/thumbnail/date-field.svelte.d.ts +0 -7
  295. package/dist/thumbnail/date-picker.svelte +0 -126
  296. package/dist/thumbnail/date-picker.svelte.d.ts +0 -7
  297. package/dist/thumbnail/date-range-picker.svelte +0 -100
  298. package/dist/thumbnail/date-range-picker.svelte.d.ts +0 -7
  299. package/dist/thumbnail/date-time-input.svelte +0 -182
  300. package/dist/thumbnail/date-time-input.svelte.d.ts +0 -7
  301. package/dist/thumbnail/description-list.svelte +0 -142
  302. package/dist/thumbnail/description-list.svelte.d.ts +0 -7
  303. package/dist/thumbnail/dialog.svelte +0 -136
  304. package/dist/thumbnail/dialog.svelte.d.ts +0 -7
  305. package/dist/thumbnail/displacement.svelte +0 -55
  306. package/dist/thumbnail/displacement.svelte.d.ts +0 -7
  307. package/dist/thumbnail/drag-and-drop.svelte +0 -139
  308. package/dist/thumbnail/drag-and-drop.svelte.d.ts +0 -7
  309. package/dist/thumbnail/drawer.svelte +0 -112
  310. package/dist/thumbnail/drawer.svelte.d.ts +0 -7
  311. package/dist/thumbnail/drop-zone.svelte +0 -55
  312. package/dist/thumbnail/drop-zone.svelte.d.ts +0 -7
  313. package/dist/thumbnail/dropdown-menu.svelte +0 -128
  314. package/dist/thumbnail/dropdown-menu.svelte.d.ts +0 -7
  315. package/dist/thumbnail/empty-state.svelte.d.ts +0 -7
  316. package/dist/thumbnail/fare-class-picker.svelte +0 -225
  317. package/dist/thumbnail/fare-class-picker.svelte.d.ts +0 -7
  318. package/dist/thumbnail/feature-split-section.svelte.d.ts +0 -7
  319. package/dist/thumbnail/field.svelte +0 -82
  320. package/dist/thumbnail/field.svelte.d.ts +0 -7
  321. package/dist/thumbnail/fieldset.svelte +0 -123
  322. package/dist/thumbnail/fieldset.svelte.d.ts +0 -7
  323. package/dist/thumbnail/file-select.svelte +0 -90
  324. package/dist/thumbnail/file-select.svelte.d.ts +0 -7
  325. package/dist/thumbnail/file-upload.svelte +0 -84
  326. package/dist/thumbnail/file-upload.svelte.d.ts +0 -7
  327. package/dist/thumbnail/filter-sidebar.svelte +0 -201
  328. package/dist/thumbnail/filter-sidebar.svelte.d.ts +0 -7
  329. package/dist/thumbnail/flexible-dates-grid.svelte +0 -210
  330. package/dist/thumbnail/flexible-dates-grid.svelte.d.ts +0 -7
  331. package/dist/thumbnail/flight-timeline.svelte +0 -155
  332. package/dist/thumbnail/flight-timeline.svelte.d.ts +0 -7
  333. package/dist/thumbnail/flip-card.svelte +0 -128
  334. package/dist/thumbnail/flip-card.svelte.d.ts +0 -7
  335. package/dist/thumbnail/float-button.svelte +0 -63
  336. package/dist/thumbnail/float-button.svelte.d.ts +0 -7
  337. package/dist/thumbnail/focus-trap.svelte +0 -110
  338. package/dist/thumbnail/focus-trap.svelte.d.ts +0 -7
  339. package/dist/thumbnail/format-bytes.svelte +0 -51
  340. package/dist/thumbnail/format-bytes.svelte.d.ts +0 -7
  341. package/dist/thumbnail/format-date.svelte +0 -51
  342. package/dist/thumbnail/format-date.svelte.d.ts +0 -7
  343. package/dist/thumbnail/format-number.svelte +0 -51
  344. package/dist/thumbnail/format-number.svelte.d.ts +0 -7
  345. package/dist/thumbnail/gauge.svelte +0 -90
  346. package/dist/thumbnail/gauge.svelte.d.ts +0 -7
  347. package/dist/thumbnail/glass-surface.svelte.d.ts +0 -7
  348. package/dist/thumbnail/glow.svelte +0 -55
  349. package/dist/thumbnail/glow.svelte.d.ts +0 -7
  350. package/dist/thumbnail/gradient-mesh.svelte +0 -55
  351. package/dist/thumbnail/gradient-mesh.svelte.d.ts +0 -7
  352. package/dist/thumbnail/guest-room-selector.svelte +0 -214
  353. package/dist/thumbnail/guest-room-selector.svelte.d.ts +0 -7
  354. package/dist/thumbnail/halftone.svelte +0 -55
  355. package/dist/thumbnail/halftone.svelte.d.ts +0 -7
  356. package/dist/thumbnail/heading.svelte +0 -91
  357. package/dist/thumbnail/heading.svelte.d.ts +0 -7
  358. package/dist/thumbnail/hotel-gallery.svelte +0 -117
  359. package/dist/thumbnail/hotel-gallery.svelte.d.ts +0 -7
  360. package/dist/thumbnail/hotkey.svelte +0 -108
  361. package/dist/thumbnail/hotkey.svelte.d.ts +0 -7
  362. package/dist/thumbnail/hover-card.svelte +0 -117
  363. package/dist/thumbnail/hover-card.svelte.d.ts +0 -7
  364. package/dist/thumbnail/icon.svelte +0 -55
  365. package/dist/thumbnail/icon.svelte.d.ts +0 -7
  366. package/dist/thumbnail/image-comparison.svelte +0 -96
  367. package/dist/thumbnail/image-comparison.svelte.d.ts +0 -7
  368. package/dist/thumbnail/image.svelte +0 -74
  369. package/dist/thumbnail/image.svelte.d.ts +0 -7
  370. package/dist/thumbnail/index.d.ts +0 -12
  371. package/dist/thumbnail/index.js +0 -359
  372. package/dist/thumbnail/infinite-scroll.svelte +0 -129
  373. package/dist/thumbnail/infinite-scroll.svelte.d.ts +0 -7
  374. package/dist/thumbnail/input-group.svelte +0 -55
  375. package/dist/thumbnail/input-group.svelte.d.ts +0 -7
  376. package/dist/thumbnail/input.svelte +0 -74
  377. package/dist/thumbnail/input.svelte.d.ts +0 -7
  378. package/dist/thumbnail/itinerary-timeline.svelte +0 -143
  379. package/dist/thumbnail/itinerary-timeline.svelte.d.ts +0 -7
  380. package/dist/thumbnail/kbd.svelte +0 -112
  381. package/dist/thumbnail/kbd.svelte.d.ts +0 -7
  382. package/dist/thumbnail/label.svelte +0 -54
  383. package/dist/thumbnail/label.svelte.d.ts +0 -7
  384. package/dist/thumbnail/layout-header-content-footer.svelte +0 -64
  385. package/dist/thumbnail/layout-header-content-footer.svelte.d.ts +0 -7
  386. package/dist/thumbnail/layout-header-sidebar-main.svelte +0 -64
  387. package/dist/thumbnail/layout-header-sidebar-main.svelte.d.ts +0 -7
  388. package/dist/thumbnail/layout-sidebar-main.svelte +0 -57
  389. package/dist/thumbnail/layout-sidebar-main.svelte.d.ts +0 -7
  390. package/dist/thumbnail/link-preview.svelte +0 -141
  391. package/dist/thumbnail/link-preview.svelte.d.ts +0 -7
  392. package/dist/thumbnail/link.svelte +0 -70
  393. package/dist/thumbnail/link.svelte.d.ts +0 -7
  394. package/dist/thumbnail/list.svelte +0 -86
  395. package/dist/thumbnail/list.svelte.d.ts +0 -7
  396. package/dist/thumbnail/listbox.svelte +0 -102
  397. package/dist/thumbnail/listbox.svelte.d.ts +0 -7
  398. package/dist/thumbnail/location-autocomplete.svelte +0 -219
  399. package/dist/thumbnail/location-autocomplete.svelte.d.ts +0 -7
  400. package/dist/thumbnail/logo-cloud.svelte.d.ts +0 -7
  401. package/dist/thumbnail/loyalty-points-display.svelte +0 -147
  402. package/dist/thumbnail/loyalty-points-display.svelte.d.ts +0 -7
  403. package/dist/thumbnail/map-list-toggle.svelte +0 -140
  404. package/dist/thumbnail/map-list-toggle.svelte.d.ts +0 -7
  405. package/dist/thumbnail/map.svelte +0 -112
  406. package/dist/thumbnail/map.svelte.d.ts +0 -7
  407. package/dist/thumbnail/markdown-renderer.svelte +0 -113
  408. package/dist/thumbnail/markdown-renderer.svelte.d.ts +0 -7
  409. package/dist/thumbnail/marquee.svelte +0 -114
  410. package/dist/thumbnail/marquee.svelte.d.ts +0 -7
  411. package/dist/thumbnail/mask-reveal.svelte +0 -55
  412. package/dist/thumbnail/mask-reveal.svelte.d.ts +0 -7
  413. package/dist/thumbnail/mega-menu.svelte +0 -176
  414. package/dist/thumbnail/mega-menu.svelte.d.ts +0 -7
  415. package/dist/thumbnail/menubar.svelte +0 -99
  416. package/dist/thumbnail/menubar.svelte.d.ts +0 -7
  417. package/dist/thumbnail/multi-city-search-form.svelte +0 -241
  418. package/dist/thumbnail/multi-city-search-form.svelte.d.ts +0 -7
  419. package/dist/thumbnail/multi-select-combobox.svelte +0 -142
  420. package/dist/thumbnail/multi-select-combobox.svelte.d.ts +0 -7
  421. package/dist/thumbnail/navigation-menu.svelte +0 -102
  422. package/dist/thumbnail/navigation-menu.svelte.d.ts +0 -7
  423. package/dist/thumbnail/noise.svelte +0 -72
  424. package/dist/thumbnail/noise.svelte.d.ts +0 -7
  425. package/dist/thumbnail/notification-center.svelte +0 -152
  426. package/dist/thumbnail/notification-center.svelte.d.ts +0 -7
  427. package/dist/thumbnail/number-input.svelte +0 -113
  428. package/dist/thumbnail/number-input.svelte.d.ts +0 -7
  429. package/dist/thumbnail/option-swatch-group.svelte +0 -55
  430. package/dist/thumbnail/option-swatch-group.svelte.d.ts +0 -7
  431. package/dist/thumbnail/page-header.svelte.d.ts +0 -7
  432. package/dist/thumbnail/pagination.svelte +0 -121
  433. package/dist/thumbnail/pagination.svelte.d.ts +0 -7
  434. package/dist/thumbnail/passenger-class-selector.svelte +0 -142
  435. package/dist/thumbnail/passenger-class-selector.svelte.d.ts +0 -7
  436. package/dist/thumbnail/payment-card-input.svelte +0 -172
  437. package/dist/thumbnail/payment-card-input.svelte.d.ts +0 -7
  438. package/dist/thumbnail/phone-input.svelte +0 -103
  439. package/dist/thumbnail/phone-input.svelte.d.ts +0 -7
  440. package/dist/thumbnail/pin-input.svelte +0 -72
  441. package/dist/thumbnail/pin-input.svelte.d.ts +0 -7
  442. package/dist/thumbnail/popover.svelte +0 -122
  443. package/dist/thumbnail/popover.svelte.d.ts +0 -7
  444. package/dist/thumbnail/portal.svelte +0 -115
  445. package/dist/thumbnail/portal.svelte.d.ts +0 -7
  446. package/dist/thumbnail/price-calendar.svelte +0 -366
  447. package/dist/thumbnail/price-calendar.svelte.d.ts +0 -7
  448. package/dist/thumbnail/price-summary-panel.svelte +0 -165
  449. package/dist/thumbnail/price-summary-panel.svelte.d.ts +0 -7
  450. package/dist/thumbnail/progress-ring.svelte +0 -63
  451. package/dist/thumbnail/progress-ring.svelte.d.ts +0 -7
  452. package/dist/thumbnail/progress.svelte +0 -66
  453. package/dist/thumbnail/progress.svelte.d.ts +0 -7
  454. package/dist/thumbnail/promo-code-input.svelte +0 -111
  455. package/dist/thumbnail/promo-code-input.svelte.d.ts +0 -7
  456. package/dist/thumbnail/promo-mosaic.svelte +0 -55
  457. package/dist/thumbnail/promo-mosaic.svelte.d.ts +0 -7
  458. package/dist/thumbnail/prompt-input.svelte +0 -91
  459. package/dist/thumbnail/prompt-input.svelte.d.ts +0 -7
  460. package/dist/thumbnail/qr-code.svelte +0 -217
  461. package/dist/thumbnail/qr-code.svelte.d.ts +0 -7
  462. package/dist/thumbnail/radio-group.svelte +0 -97
  463. package/dist/thumbnail/radio-group.svelte.d.ts +0 -7
  464. package/dist/thumbnail/range-calendar.svelte +0 -92
  465. package/dist/thumbnail/range-calendar.svelte.d.ts +0 -7
  466. package/dist/thumbnail/rating.svelte +0 -61
  467. package/dist/thumbnail/rating.svelte.d.ts +0 -7
  468. package/dist/thumbnail/recent-searches.svelte +0 -197
  469. package/dist/thumbnail/recent-searches.svelte.d.ts +0 -7
  470. package/dist/thumbnail/relative-time.svelte +0 -51
  471. package/dist/thumbnail/relative-time.svelte.d.ts +0 -7
  472. package/dist/thumbnail/result-card-car.svelte +0 -149
  473. package/dist/thumbnail/result-card-car.svelte.d.ts +0 -7
  474. package/dist/thumbnail/result-card-flight.svelte +0 -170
  475. package/dist/thumbnail/result-card-flight.svelte.d.ts +0 -7
  476. package/dist/thumbnail/result-card-hotel.svelte +0 -174
  477. package/dist/thumbnail/result-card-hotel.svelte.d.ts +0 -7
  478. package/dist/thumbnail/reveal.svelte +0 -109
  479. package/dist/thumbnail/reveal.svelte.d.ts +0 -7
  480. package/dist/thumbnail/review-card.svelte +0 -153
  481. package/dist/thumbnail/review-card.svelte.d.ts +0 -7
  482. package/dist/thumbnail/rich-text-editor.svelte +0 -134
  483. package/dist/thumbnail/rich-text-editor.svelte.d.ts +0 -7
  484. package/dist/thumbnail/room-type-picker.svelte +0 -212
  485. package/dist/thumbnail/room-type-picker.svelte.d.ts +0 -7
  486. package/dist/thumbnail/root.svelte +0 -52
  487. package/dist/thumbnail/root.svelte.d.ts +0 -10
  488. package/dist/thumbnail/route-map.svelte +0 -132
  489. package/dist/thumbnail/route-map.svelte.d.ts +0 -7
  490. package/dist/thumbnail/scroll-area.svelte +0 -124
  491. package/dist/thumbnail/scroll-area.svelte.d.ts +0 -7
  492. package/dist/thumbnail/scroll-to-top.svelte +0 -60
  493. package/dist/thumbnail/scroll-to-top.svelte.d.ts +0 -7
  494. package/dist/thumbnail/search-form-tabs.svelte +0 -192
  495. package/dist/thumbnail/search-form-tabs.svelte.d.ts +0 -7
  496. package/dist/thumbnail/seat-map.svelte +0 -358
  497. package/dist/thumbnail/seat-map.svelte.d.ts +0 -7
  498. package/dist/thumbnail/segmented-control.svelte +0 -93
  499. package/dist/thumbnail/segmented-control.svelte.d.ts +0 -7
  500. package/dist/thumbnail/select.svelte +0 -82
  501. package/dist/thumbnail/select.svelte.d.ts +0 -7
  502. package/dist/thumbnail/selectable-tile-group.svelte +0 -55
  503. package/dist/thumbnail/selectable-tile-group.svelte.d.ts +0 -7
  504. package/dist/thumbnail/separator.svelte +0 -94
  505. package/dist/thumbnail/separator.svelte.d.ts +0 -7
  506. package/dist/thumbnail/shader-canvas.svelte +0 -55
  507. package/dist/thumbnail/shader-canvas.svelte.d.ts +0 -7
  508. package/dist/thumbnail/sidebar.svelte +0 -109
  509. package/dist/thumbnail/sidebar.svelte.d.ts +0 -7
  510. package/dist/thumbnail/skeleton.svelte +0 -94
  511. package/dist/thumbnail/skeleton.svelte.d.ts +0 -7
  512. package/dist/thumbnail/slider.svelte +0 -71
  513. package/dist/thumbnail/slider.svelte.d.ts +0 -7
  514. package/dist/thumbnail/sort-bar.svelte +0 -156
  515. package/dist/thumbnail/sort-bar.svelte.d.ts +0 -7
  516. package/dist/thumbnail/spacer.svelte +0 -95
  517. package/dist/thumbnail/spacer.svelte.d.ts +0 -7
  518. package/dist/thumbnail/sparkline.svelte +0 -59
  519. package/dist/thumbnail/sparkline.svelte.d.ts +0 -7
  520. package/dist/thumbnail/spinner.svelte +0 -63
  521. package/dist/thumbnail/spinner.svelte.d.ts +0 -7
  522. package/dist/thumbnail/splitter.svelte +0 -79
  523. package/dist/thumbnail/splitter.svelte.d.ts +0 -7
  524. package/dist/thumbnail/spotlight.svelte +0 -90
  525. package/dist/thumbnail/spotlight.svelte.d.ts +0 -7
  526. package/dist/thumbnail/star-rating.svelte +0 -106
  527. package/dist/thumbnail/star-rating.svelte.d.ts +0 -7
  528. package/dist/thumbnail/stat-card.svelte.d.ts +0 -7
  529. package/dist/thumbnail/stepper.svelte +0 -94
  530. package/dist/thumbnail/stepper.svelte.d.ts +0 -7
  531. package/dist/thumbnail/svg.svelte +0 -55
  532. package/dist/thumbnail/svg.svelte.d.ts +0 -8
  533. package/dist/thumbnail/swatch-strip.svelte.d.ts +0 -7
  534. package/dist/thumbnail/switch.svelte.d.ts +0 -7
  535. package/dist/thumbnail/system-map.svelte +0 -154
  536. package/dist/thumbnail/system-map.svelte.d.ts +0 -7
  537. package/dist/thumbnail/table-of-contents.svelte +0 -101
  538. package/dist/thumbnail/table-of-contents.svelte.d.ts +0 -7
  539. package/dist/thumbnail/table.svelte +0 -214
  540. package/dist/thumbnail/table.svelte.d.ts +0 -7
  541. package/dist/thumbnail/tabs.svelte +0 -133
  542. package/dist/thumbnail/tabs.svelte.d.ts +0 -7
  543. package/dist/thumbnail/tag.svelte +0 -95
  544. package/dist/thumbnail/tag.svelte.d.ts +0 -7
  545. package/dist/thumbnail/tags-input.svelte +0 -142
  546. package/dist/thumbnail/tags-input.svelte.d.ts +0 -7
  547. package/dist/thumbnail/text.svelte +0 -72
  548. package/dist/thumbnail/text.svelte.d.ts +0 -7
  549. package/dist/thumbnail/textarea.svelte +0 -111
  550. package/dist/thumbnail/textarea.svelte.d.ts +0 -7
  551. package/dist/thumbnail/time-input.svelte +0 -94
  552. package/dist/thumbnail/time-input.svelte.d.ts +0 -7
  553. package/dist/thumbnail/timeline.svelte +0 -123
  554. package/dist/thumbnail/timeline.svelte.d.ts +0 -7
  555. package/dist/thumbnail/toast.svelte +0 -105
  556. package/dist/thumbnail/toast.svelte.d.ts +0 -7
  557. package/dist/thumbnail/toggle-group.svelte +0 -76
  558. package/dist/thumbnail/toggle-group.svelte.d.ts +0 -7
  559. package/dist/thumbnail/toggle.svelte +0 -46
  560. package/dist/thumbnail/toggle.svelte.d.ts +0 -7
  561. package/dist/thumbnail/token-preview.svelte.d.ts +0 -7
  562. package/dist/thumbnail/toolbar.svelte +0 -109
  563. package/dist/thumbnail/toolbar.svelte.d.ts +0 -7
  564. package/dist/thumbnail/tooltip.svelte +0 -85
  565. package/dist/thumbnail/tooltip.svelte.d.ts +0 -7
  566. package/dist/thumbnail/tour.svelte +0 -149
  567. package/dist/thumbnail/tour.svelte.d.ts +0 -7
  568. package/dist/thumbnail/transfer.svelte +0 -168
  569. package/dist/thumbnail/transfer.svelte.d.ts +0 -7
  570. package/dist/thumbnail/tree.svelte +0 -215
  571. package/dist/thumbnail/tree.svelte.d.ts +0 -7
  572. package/dist/thumbnail/trip-card.svelte +0 -137
  573. package/dist/thumbnail/trip-card.svelte.d.ts +0 -7
  574. package/dist/thumbnail/trust-badges.svelte +0 -207
  575. package/dist/thumbnail/trust-badges.svelte.d.ts +0 -7
  576. package/dist/thumbnail/typing-indicator.svelte +0 -65
  577. package/dist/thumbnail/typing-indicator.svelte.d.ts +0 -7
  578. package/dist/thumbnail/typography.svelte +0 -80
  579. package/dist/thumbnail/typography.svelte.d.ts +0 -7
  580. package/dist/thumbnail/user.svelte.d.ts +0 -7
  581. package/dist/thumbnail/video-embed.svelte +0 -87
  582. package/dist/thumbnail/video-embed.svelte.d.ts +0 -7
  583. package/dist/thumbnail/virtual-list.svelte +0 -178
  584. package/dist/thumbnail/virtual-list.svelte.d.ts +0 -7
  585. package/dist/thumbnail/visually-hidden.svelte +0 -106
  586. package/dist/thumbnail/visually-hidden.svelte.d.ts +0 -7
  587. package/dist/thumbnail/wave-divider.svelte.d.ts +0 -7
  588. /package/dist/{system-map → diagram}/types.js +0 -0
@@ -0,0 +1,196 @@
1
+ export type DiagramColor = 'neutral' | 'brand' | 'success' | 'warning' | 'error' | 'info';
2
+ export type DiagramDirection = 'TB' | 'BT' | 'LR' | 'RL';
3
+ export interface DiagramNode {
4
+ id: string;
5
+ label: string;
6
+ description?: string;
7
+ icon?: string;
8
+ variant?: 'default' | 'filled' | 'outlined' | 'pill';
9
+ color?: DiagramColor;
10
+ state?: 'default' | 'active' | 'complete' | 'blocked';
11
+ width?: number;
12
+ height?: number;
13
+ }
14
+ export interface DiagramEdge {
15
+ from: string;
16
+ to: string;
17
+ label?: string;
18
+ arrow?: 'end' | 'start' | 'both' | 'none';
19
+ dashed?: boolean;
20
+ color?: DiagramColor;
21
+ }
22
+ export interface DiagramCluster {
23
+ id: string;
24
+ label?: string;
25
+ nodes: string[];
26
+ color?: DiagramColor;
27
+ dashed?: boolean;
28
+ }
29
+ export interface DiagramAnnotation {
30
+ text: string;
31
+ anchor: string | {
32
+ x: number;
33
+ y: number;
34
+ };
35
+ offset?: {
36
+ dx?: number;
37
+ dy?: number;
38
+ };
39
+ color?: DiagramColor;
40
+ }
41
+ export interface DiagramMessage {
42
+ from: string;
43
+ to: string;
44
+ label: string;
45
+ dashed?: boolean;
46
+ color?: DiagramColor;
47
+ arrow?: 'end' | 'start' | 'both' | 'none';
48
+ }
49
+ export interface DiagramFragment {
50
+ id: string;
51
+ label: string;
52
+ condition?: string;
53
+ messages: number[];
54
+ color?: DiagramColor;
55
+ dashed?: boolean;
56
+ }
57
+ export interface DiagramSwimlane {
58
+ id: string;
59
+ label: string;
60
+ nodes: string[];
61
+ color?: DiagramColor;
62
+ }
63
+ export interface DiagramRegion {
64
+ id: string;
65
+ label: string;
66
+ contains: string[];
67
+ color?: DiagramColor;
68
+ dashed?: boolean;
69
+ }
70
+ export interface DiagramConfig {
71
+ nodes: DiagramNode[];
72
+ edges: DiagramEdge[];
73
+ clusters?: DiagramCluster[];
74
+ annotations?: DiagramAnnotation[];
75
+ direction?: DiagramDirection;
76
+ layout?: 'layered' | 'swimlane' | 'sequence';
77
+ swimlanes?: DiagramSwimlane[];
78
+ messages?: DiagramMessage[];
79
+ fragments?: DiagramFragment[];
80
+ regions?: DiagramRegion[];
81
+ spacing?: {
82
+ nodeGap?: number;
83
+ layerGap?: number;
84
+ clusterPadding?: number;
85
+ };
86
+ ariaLabel?: string;
87
+ }
88
+ export interface PositionedNode {
89
+ id: string;
90
+ x: number;
91
+ y: number;
92
+ width: number;
93
+ height: number;
94
+ label: string;
95
+ description?: string;
96
+ icon?: string;
97
+ variant: string;
98
+ color: DiagramColor;
99
+ state: string;
100
+ }
101
+ export interface PositionedEdge {
102
+ from: string;
103
+ to: string;
104
+ path: string;
105
+ label?: string;
106
+ labelX: number;
107
+ labelY: number;
108
+ arrow: string;
109
+ dashed: boolean;
110
+ color: DiagramColor;
111
+ }
112
+ export interface PositionedCluster {
113
+ id: string;
114
+ x: number;
115
+ y: number;
116
+ width: number;
117
+ height: number;
118
+ label?: string;
119
+ color: DiagramColor;
120
+ dashed: boolean;
121
+ }
122
+ export interface PositionedSwimlane {
123
+ id: string;
124
+ label: string;
125
+ x: number;
126
+ lineX: number;
127
+ headerY: number;
128
+ footerY: number;
129
+ lineY1: number;
130
+ lineY2: number;
131
+ color: DiagramColor;
132
+ }
133
+ export interface PositionedRegion {
134
+ id: string;
135
+ x: number;
136
+ y: number;
137
+ width: number;
138
+ height: number;
139
+ label: string;
140
+ color: DiagramColor;
141
+ dashed: boolean;
142
+ }
143
+ export interface PositionedAnnotation {
144
+ text: string;
145
+ x: number;
146
+ y: number;
147
+ color: DiagramColor;
148
+ }
149
+ export interface PositionedMessage {
150
+ from: string;
151
+ to: string;
152
+ label: string;
153
+ x1: number;
154
+ y: number;
155
+ x2: number;
156
+ labelX: number;
157
+ labelY: number;
158
+ arrow: string;
159
+ dashed: boolean;
160
+ color: DiagramColor;
161
+ isSelf: boolean;
162
+ }
163
+ export interface PositionedFragment {
164
+ id: string;
165
+ label: string;
166
+ condition?: string;
167
+ x: number;
168
+ y: number;
169
+ width: number;
170
+ height: number;
171
+ color: DiagramColor;
172
+ dashed: boolean;
173
+ }
174
+ export interface PositionedLifeline {
175
+ id: string;
176
+ label: string;
177
+ x: number;
178
+ topY: number;
179
+ bottomY: number;
180
+ color: DiagramColor;
181
+ }
182
+ export interface LayoutResult {
183
+ nodes: PositionedNode[];
184
+ edges: PositionedEdge[];
185
+ clusters: PositionedCluster[];
186
+ swimlanes: PositionedSwimlane[];
187
+ regions: PositionedRegion[];
188
+ annotations: PositionedAnnotation[];
189
+ messages: PositionedMessage[];
190
+ lifelines: PositionedLifeline[];
191
+ positionedFragments: PositionedFragment[];
192
+ viewBox: {
193
+ width: number;
194
+ height: number;
195
+ };
196
+ }
@@ -1,13 +1,4 @@
1
- export type {
2
- DialogRootProps,
3
- DialogTriggerProps,
4
- DialogContentProps,
5
- DialogOverlayProps,
6
- DialogHeaderProps,
7
- DialogBodyProps,
8
- DialogFooterProps,
9
- DialogCloseProps
10
- } from '@dryui/primitives';
1
+ export type { DialogRootProps, DialogTriggerProps, DialogContentProps, DialogOverlayProps, DialogHeaderProps, DialogBodyProps, DialogFooterProps, DialogCloseProps } from '@dryui/primitives';
11
2
  import DialogRoot from './dialog-root.svelte';
12
3
  import DialogTrigger from './dialog-trigger.svelte';
13
4
  import DialogContent from './dialog-content.svelte';
@@ -17,12 +8,12 @@ import DialogBody from './dialog-body.svelte';
17
8
  import DialogFooter from './dialog-footer.svelte';
18
9
  import DialogClose from './dialog-close.svelte';
19
10
  export declare const Dialog: {
20
- Root: typeof DialogRoot;
21
- Trigger: typeof DialogTrigger;
22
- Content: typeof DialogContent;
23
- Overlay: typeof DialogOverlay;
24
- Header: typeof DialogHeader;
25
- Body: typeof DialogBody;
26
- Footer: typeof DialogFooter;
27
- Close: typeof DialogClose;
11
+ Root: typeof DialogRoot;
12
+ Trigger: typeof DialogTrigger;
13
+ Content: typeof DialogContent;
14
+ Overlay: typeof DialogOverlay;
15
+ Header: typeof DialogHeader;
16
+ Body: typeof DialogBody;
17
+ Footer: typeof DialogFooter;
18
+ Close: typeof DialogClose;
28
19
  };
@@ -21,8 +21,11 @@
21
21
  }: Props = $props();
22
22
 
23
23
  const filterId = `dry-displacement-${Math.random().toString(36).slice(2, 8)}`;
24
+ let element = $state<HTMLElement | null>(null);
24
25
  let seed = $state(1);
25
26
  let prefersReducedMotion = $state(false);
27
+ let documentVisible = $state(true);
28
+ let inViewport = $state(true);
26
29
 
27
30
  const baseFrequency = $derived.by(() => {
28
31
  if (turbulence === 'gentle') return '0.015';
@@ -31,7 +34,18 @@
31
34
  });
32
35
 
33
36
  const scaleValue = $derived(`${Math.max(0, scale)}`);
34
- const shouldAnimate = $derived(animated && !prefersReducedMotion);
37
+ const shouldAnimate = $derived(
38
+ animated && !prefersReducedMotion && documentVisible && inViewport
39
+ );
40
+
41
+ function captureElement(node: HTMLElement) {
42
+ element = node;
43
+ return {
44
+ destroy() {
45
+ if (element === node) element = null;
46
+ }
47
+ };
48
+ }
35
49
 
36
50
  onMount(() => {
37
51
  const mql = window.matchMedia('(prefers-reduced-motion: reduce)');
@@ -40,6 +54,11 @@
40
54
  prefersReducedMotion = e.matches;
41
55
  };
42
56
  mql.addEventListener('change', handler);
57
+ documentVisible = !document.hidden;
58
+ const handleVisibilityChange = () => {
59
+ documentVisible = !document.hidden;
60
+ };
61
+ document.addEventListener('visibilitychange', handleVisibilityChange);
43
62
 
44
63
  let frameId: number | undefined;
45
64
  let lastTime = 0;
@@ -66,7 +85,23 @@
66
85
  };
67
86
  });
68
87
 
69
- return () => mql.removeEventListener('change', handler);
88
+ $effect(() => {
89
+ if (!element || typeof IntersectionObserver === 'undefined') return;
90
+
91
+ const observer = new IntersectionObserver((entries) => {
92
+ const entry = entries[0];
93
+ inViewport = entry?.isIntersecting ?? true;
94
+ });
95
+
96
+ observer.observe(element);
97
+
98
+ return () => observer.disconnect();
99
+ });
100
+
101
+ return () => {
102
+ document.removeEventListener('visibilitychange', handleVisibilityChange);
103
+ mql.removeEventListener('change', handler);
104
+ };
70
105
  });
71
106
 
72
107
  // Flash-on-load: filter references a runtime-generated SVG filter ID (url(#${filterId})),
@@ -96,13 +131,14 @@
96
131
  </svg>
97
132
 
98
133
  <div
134
+ {@attach captureElement}
135
+ {@attach applyFilterStyles}
99
136
  data-displacement
100
137
  class={className}
101
138
  data-turbulence={turbulence}
102
139
  data-animated={shouldAnimate || undefined}
103
140
  data-reduced-motion={prefersReducedMotion || undefined}
104
141
  {...rest}
105
- use:applyFilterStyles
106
142
  >
107
143
  {#if childSnippet}
108
144
  {@render childSnippet()}
@@ -1,3 +1,4 @@
1
1
  import type { DisplacementProps as PrimitiveDisplacementProps } from '@dryui/primitives/displacement';
2
- export interface DisplacementProps extends PrimitiveDisplacementProps {}
2
+ export interface DisplacementProps extends PrimitiveDisplacementProps {
3
+ }
3
4
  export { default as Displacement } from './displacement.svelte';
@@ -4,6 +4,7 @@ export interface DragAndDropContext {
4
4
  readonly isDragging: boolean;
5
5
  readonly orientation: 'vertical' | 'horizontal';
6
6
  readonly hasHandle: boolean;
7
+ readonly foreignOverIndex: number | null;
7
8
  registerHandle: () => void;
8
9
  startDrag: (index: number, event: PointerEvent) => void;
9
10
  handleDragOver: (index: number) => void;
@@ -0,0 +1,37 @@
1
+ <script lang="ts">
2
+ import type { Snippet } from 'svelte';
3
+ import { setGroupCtx } from './group-context.svelte.js';
4
+
5
+ interface Props {
6
+ onMove: (fromListId: string, fromIndex: number, toListId: string, toIndex: number) => void;
7
+ children: Snippet;
8
+ }
9
+
10
+ let { onMove, children }: Props = $props();
11
+
12
+ const roots = new Map<string, HTMLElement>();
13
+ let activeTarget: { listId: string; index: number } | null = $state(null);
14
+
15
+ setGroupCtx({
16
+ register(listId, element) {
17
+ roots.set(listId, element);
18
+ },
19
+ unregister(listId) {
20
+ roots.delete(listId);
21
+ },
22
+ getRoots() {
23
+ return roots;
24
+ },
25
+ get activeTarget() {
26
+ return activeTarget;
27
+ },
28
+ setActiveTarget(listId, index) {
29
+ activeTarget = listId !== null && index !== null ? { listId, index } : null;
30
+ },
31
+ move(fromListId, fromIndex, toListId, toIndex) {
32
+ onMove(fromListId, fromIndex, toListId, toIndex);
33
+ }
34
+ });
35
+ </script>
36
+
37
+ {@render children()}
@@ -0,0 +1,8 @@
1
+ import type { Snippet } from 'svelte';
2
+ interface Props {
3
+ onMove: (fromListId: string, fromIndex: number, toListId: string, toIndex: number) => void;
4
+ children: Snippet;
5
+ }
6
+ declare const DragAndDropGroup: import("svelte").Component<Props, {}, "">;
7
+ type DragAndDropGroup = ReturnType<typeof DragAndDropGroup>;
8
+ export default DragAndDropGroup;
@@ -16,6 +16,7 @@
16
16
  ctx.registerHandle();
17
17
 
18
18
  function handlePointerDown(e: PointerEvent) {
19
+ if (e.button !== 0) return;
19
20
  e.preventDefault();
20
21
  e.stopPropagation();
21
22
  ctx.startDrag(index, e);
@@ -34,6 +35,7 @@
34
35
  tabindex="0"
35
36
  aria-roledescription="drag handle"
36
37
  aria-label="Drag to reorder"
38
+ aria-pressed={ctx.isDragging && ctx.draggedIndex === index ? 'true' : undefined}
37
39
  data-dnd-handle
38
40
  data-dragging={ctx.isDragging && ctx.draggedIndex === index ? '' : undefined}
39
41
  onpointerdown={handlePointerDown}
@@ -13,7 +13,10 @@
13
13
  const ctx = getDragAndDropCtx();
14
14
 
15
15
  let itemIsDragging = $derived(ctx.draggedIndex === index);
16
- let isOver = $derived(ctx.overIndex === index && ctx.isDragging && ctx.draggedIndex !== index);
16
+ let isOver = $derived(
17
+ (ctx.overIndex === index && ctx.isDragging && ctx.draggedIndex !== index) ||
18
+ ctx.foreignOverIndex === index
19
+ );
17
20
 
18
21
  let grabbing = $state(false);
19
22
 
@@ -66,6 +69,7 @@
66
69
  data-dnd-item
67
70
  data-index={index}
68
71
  data-dragging={itemIsDragging ? '' : undefined}
72
+ data-drag-active={ctx.isDragging ? '' : undefined}
69
73
  data-over={isOver ? '' : undefined}
70
74
  onpointerdown={handlePointerDown}
71
75
  onpointerup={handlePointerUp}
@@ -102,13 +106,20 @@
102
106
  }
103
107
 
104
108
  [data-dnd-item][data-dragging] {
105
- opacity: var(--dry-dnd-drag-opacity, 0.5);
106
- transform: scale(var(--dry-dnd-drag-scale, 1.02));
107
- box-shadow: var(--dry-dnd-drag-shadow, var(--dry-shadow-lg));
108
- z-index: var(--dry-dnd-drag-z-index, var(--dry-layer-overlay));
109
+ background: var(--dry-color-bg-sunken);
110
+ border-color: transparent;
111
+ box-shadow: none;
109
112
  }
110
113
 
111
- [data-dnd-item][data-over]::before {
114
+ [data-dnd-item][data-dragging]::after {
115
+ content: '';
116
+ position: absolute;
117
+ inset: 0;
118
+ background: inherit;
119
+ border-radius: inherit;
120
+ }
121
+
122
+ [data-dnd-item]::before {
112
123
  content: '';
113
124
  position: absolute;
114
125
  left: 0;
@@ -119,5 +130,13 @@
119
130
  height: var(--dry-dnd-indicator-size, 2px);
120
131
  background: var(--dry-dnd-indicator-color, var(--dry-color-fill-brand));
121
132
  border-radius: var(--dry-dnd-indicator-size, 2px);
133
+ opacity: 0;
134
+ transition: opacity var(--dry-duration-fast) var(--dry-ease-default);
135
+ pointer-events: none;
136
+ }
137
+
138
+ [data-dnd-item][data-over]::before {
139
+ opacity: 1;
140
+ transition: none;
122
141
  }
123
142
  </style>