@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,10 @@
1
+ import type { SVGAttributes } from 'svelte/elements';
2
+ import type { DiagramConfig } from './types.js';
3
+ interface Props extends SVGAttributes<SVGSVGElement> {
4
+ config: DiagramConfig;
5
+ width?: number;
6
+ height?: number;
7
+ }
8
+ declare const Diagram: import("svelte").Component<Props, {}, "">;
9
+ type Diagram = ReturnType<typeof Diagram>;
10
+ export default Diagram;
@@ -0,0 +1,9 @@
1
+ import type { DiagramEdge, DiagramDirection, PositionedEdge } from './types.js';
2
+ export declare function computeEdgePaths(edges: DiagramEdge[], positions: Map<string, {
3
+ x: number;
4
+ y: number;
5
+ }>, nodeDims: Map<string, {
6
+ w: number;
7
+ h: number;
8
+ }>, direction: DiagramDirection): PositionedEdge[];
9
+ export declare function emptyEdge(edge: DiagramEdge): PositionedEdge;
@@ -0,0 +1,281 @@
1
+ const EDGE_GAP = 14;
2
+ const BUS_OFFSET_MIN = 28;
3
+ const BUS_OFFSET_MAX = 48;
4
+ export function computeEdgePaths(edges, positions, nodeDims, direction) {
5
+ const horizontal = direction === 'LR' || direction === 'RL';
6
+ const bySource = new Map();
7
+ const byTarget = new Map();
8
+ for (const edge of edges) {
9
+ const sourceList = bySource.get(edge.from) || [];
10
+ sourceList.push(edge);
11
+ bySource.set(edge.from, sourceList);
12
+ const targetList = byTarget.get(edge.to) || [];
13
+ targetList.push(edge);
14
+ byTarget.set(edge.to, targetList);
15
+ }
16
+ const sourceBusCache = new Map();
17
+ const targetBusCache = new Map();
18
+ return edges.map((edge) => {
19
+ const endpoints = getEndpoints(edge, positions, nodeDims, horizontal);
20
+ if (!endpoints) {
21
+ return emptyEdge(edge);
22
+ }
23
+ const sourceSiblings = bySource.get(edge.from) || [];
24
+ const targetSiblings = byTarget.get(edge.to) || [];
25
+ let points;
26
+ if (horizontal) {
27
+ if (sourceSiblings.length > 1) {
28
+ let busX = sourceBusCache.get(edge.from);
29
+ if (busX === undefined) {
30
+ busX = computeSourceBusAxis(sourceSiblings, positions, nodeDims, horizontal, endpoints.fx);
31
+ sourceBusCache.set(edge.from, busX);
32
+ }
33
+ points = buildHorizontalBusPoints(endpoints, busX);
34
+ }
35
+ else if (targetSiblings.length > 1) {
36
+ let busX = targetBusCache.get(edge.to);
37
+ if (busX === undefined) {
38
+ busX = computeTargetBusAxis(targetSiblings, positions, nodeDims, horizontal, endpoints.tx);
39
+ targetBusCache.set(edge.to, busX);
40
+ }
41
+ points = buildHorizontalBusPoints(endpoints, busX);
42
+ }
43
+ else {
44
+ points = buildHorizontalPoints(endpoints);
45
+ }
46
+ }
47
+ else if (sourceSiblings.length > 1) {
48
+ let busY = sourceBusCache.get(edge.from);
49
+ if (busY === undefined) {
50
+ busY = computeSourceBusAxis(sourceSiblings, positions, nodeDims, horizontal, endpoints.fy);
51
+ sourceBusCache.set(edge.from, busY);
52
+ }
53
+ points = buildVerticalBusPoints(endpoints, busY);
54
+ }
55
+ else if (targetSiblings.length > 1) {
56
+ let busY = targetBusCache.get(edge.to);
57
+ if (busY === undefined) {
58
+ busY = computeTargetBusAxis(targetSiblings, positions, nodeDims, horizontal, endpoints.ty);
59
+ targetBusCache.set(edge.to, busY);
60
+ }
61
+ points = buildVerticalBusPoints(endpoints, busY);
62
+ }
63
+ else {
64
+ points = buildVerticalPoints(endpoints);
65
+ }
66
+ const collapsed = collapsePoints(points);
67
+ const path = buildPathFromCollapsed(collapsed);
68
+ const midpoint = getMidpointFromCollapsed(collapsed);
69
+ return {
70
+ from: edge.from,
71
+ to: edge.to,
72
+ path,
73
+ label: edge.label,
74
+ labelX: midpoint.x,
75
+ labelY: midpoint.y - (horizontal ? 12 : 0),
76
+ arrow: edge.arrow || 'end',
77
+ dashed: edge.dashed || false,
78
+ color: edge.color || 'neutral'
79
+ };
80
+ });
81
+ }
82
+ function getEndpoints(edge, positions, nodeDims, horizontal) {
83
+ const fromPos = positions.get(edge.from);
84
+ const toPos = positions.get(edge.to);
85
+ const fromDims = nodeDims.get(edge.from);
86
+ const toDims = nodeDims.get(edge.to);
87
+ if (!fromPos || !toPos || !fromDims || !toDims) {
88
+ return undefined;
89
+ }
90
+ const fromCenter = {
91
+ x: fromPos.x + fromDims.w / 2,
92
+ y: fromPos.y + fromDims.h / 2
93
+ };
94
+ const toCenter = {
95
+ x: toPos.x + toDims.w / 2,
96
+ y: toPos.y + toDims.h / 2
97
+ };
98
+ if (horizontal) {
99
+ const leftToRight = fromCenter.x <= toCenter.x;
100
+ return {
101
+ fx: leftToRight ? fromPos.x + fromDims.w + EDGE_GAP : fromPos.x - EDGE_GAP,
102
+ fy: fromCenter.y,
103
+ tx: leftToRight ? toPos.x - EDGE_GAP : toPos.x + toDims.w + EDGE_GAP,
104
+ ty: toCenter.y
105
+ };
106
+ }
107
+ const topToBottom = fromCenter.y <= toCenter.y;
108
+ return {
109
+ fx: fromCenter.x,
110
+ fy: topToBottom ? fromPos.y + fromDims.h + EDGE_GAP : fromPos.y - EDGE_GAP,
111
+ tx: toCenter.x,
112
+ ty: topToBottom ? toPos.y - EDGE_GAP : toPos.y + toDims.h + EDGE_GAP
113
+ };
114
+ }
115
+ function computeSourceBusAxis(siblings, positions, nodeDims, horizontal, sourceAxis) {
116
+ const targetAxes = siblings
117
+ .map((edge) => getEndpoints(edge, positions, nodeDims, horizontal))
118
+ .filter((endpoints) => Boolean(endpoints))
119
+ .map((endpoints) => (horizontal ? endpoints.tx : endpoints.ty));
120
+ if (targetAxes.length === 0) {
121
+ return sourceAxis;
122
+ }
123
+ const direction = Math.sign(targetAxes.reduce((sum, axis) => sum + axis, 0) / targetAxes.length - sourceAxis) ||
124
+ 1;
125
+ const nearestAxis = direction > 0 ? Math.min(...targetAxes) : Math.max(...targetAxes);
126
+ const available = Math.abs(nearestAxis - sourceAxis);
127
+ const offset = clampBusOffset(available);
128
+ return sourceAxis + direction * offset;
129
+ }
130
+ function computeTargetBusAxis(siblings, positions, nodeDims, horizontal, targetAxis) {
131
+ const sourceAxes = siblings
132
+ .map((edge) => getEndpoints(edge, positions, nodeDims, horizontal))
133
+ .filter((endpoints) => Boolean(endpoints))
134
+ .map((endpoints) => (horizontal ? endpoints.fx : endpoints.fy));
135
+ if (sourceAxes.length === 0) {
136
+ return targetAxis;
137
+ }
138
+ const direction = Math.sign(targetAxis - sourceAxes.reduce((sum, axis) => sum + axis, 0) / sourceAxes.length) ||
139
+ 1;
140
+ const nearestAxis = direction > 0 ? Math.max(...sourceAxes) : Math.min(...sourceAxes);
141
+ const available = Math.abs(targetAxis - nearestAxis);
142
+ const offset = clampBusOffset(available);
143
+ return targetAxis - direction * offset;
144
+ }
145
+ function clampBusOffset(available) {
146
+ if (available <= 0)
147
+ return 0;
148
+ return Math.min(BUS_OFFSET_MAX, Math.max(BUS_OFFSET_MIN, available * 0.28), available / 2);
149
+ }
150
+ function buildHorizontalPoints(endpoints) {
151
+ if (Math.abs(endpoints.ty - endpoints.fy) < 1) {
152
+ return [
153
+ { x: endpoints.fx, y: endpoints.fy },
154
+ { x: endpoints.tx, y: endpoints.ty }
155
+ ];
156
+ }
157
+ const midX = endpoints.fx + (endpoints.tx - endpoints.fx) / 2;
158
+ return [
159
+ { x: endpoints.fx, y: endpoints.fy },
160
+ { x: midX, y: endpoints.fy },
161
+ { x: midX, y: endpoints.ty },
162
+ { x: endpoints.tx, y: endpoints.ty }
163
+ ];
164
+ }
165
+ function buildVerticalPoints(endpoints) {
166
+ if (Math.abs(endpoints.tx - endpoints.fx) < 1) {
167
+ return [
168
+ { x: endpoints.fx, y: endpoints.fy },
169
+ { x: endpoints.tx, y: endpoints.ty }
170
+ ];
171
+ }
172
+ const midY = endpoints.fy + (endpoints.ty - endpoints.fy) / 2;
173
+ return [
174
+ { x: endpoints.fx, y: endpoints.fy },
175
+ { x: endpoints.fx, y: midY },
176
+ { x: endpoints.tx, y: midY },
177
+ { x: endpoints.tx, y: endpoints.ty }
178
+ ];
179
+ }
180
+ function buildHorizontalBusPoints(endpoints, busX) {
181
+ const points = [{ x: endpoints.fx, y: endpoints.fy }];
182
+ if (Math.abs(busX - endpoints.fx) >= 1) {
183
+ points.push({ x: busX, y: endpoints.fy });
184
+ }
185
+ if (Math.abs(endpoints.ty - endpoints.fy) >= 1) {
186
+ points.push({ x: busX, y: endpoints.ty });
187
+ }
188
+ points.push({ x: endpoints.tx, y: endpoints.ty });
189
+ return points;
190
+ }
191
+ function buildVerticalBusPoints(endpoints, busY) {
192
+ const points = [{ x: endpoints.fx, y: endpoints.fy }];
193
+ if (Math.abs(busY - endpoints.fy) >= 1) {
194
+ points.push({ x: endpoints.fx, y: busY });
195
+ }
196
+ if (Math.abs(endpoints.tx - endpoints.fx) >= 1) {
197
+ points.push({ x: endpoints.tx, y: busY });
198
+ }
199
+ points.push({ x: endpoints.tx, y: endpoints.ty });
200
+ return points;
201
+ }
202
+ function buildPathFromCollapsed(collapsed) {
203
+ if (collapsed.length === 0)
204
+ return '';
205
+ if (collapsed.length === 1)
206
+ return `M ${collapsed[0].x} ${collapsed[0].y}`;
207
+ return collapsed
208
+ .map((point, index) => (index === 0 ? `M ${point.x} ${point.y}` : `L ${point.x} ${point.y}`))
209
+ .join(' ');
210
+ }
211
+ function collapsePoints(points) {
212
+ const collapsed = [];
213
+ for (const point of points) {
214
+ const snapped = snapPoint(point);
215
+ const previous = collapsed[collapsed.length - 1];
216
+ if (previous &&
217
+ Math.abs(previous.x - snapped.x) < 0.01 &&
218
+ Math.abs(previous.y - snapped.y) < 0.01) {
219
+ continue;
220
+ }
221
+ collapsed.push(snapped);
222
+ }
223
+ return collapsed;
224
+ }
225
+ function snapPoint(point) {
226
+ return {
227
+ x: snapCoordinate(point.x),
228
+ y: snapCoordinate(point.y)
229
+ };
230
+ }
231
+ function snapCoordinate(value) {
232
+ return Math.round(value) + 0.5;
233
+ }
234
+ function getMidpointFromCollapsed(collapsed) {
235
+ let totalLength = 0;
236
+ const segments = [];
237
+ for (let index = 1; index < collapsed.length; index += 1) {
238
+ const from = collapsed[index - 1];
239
+ const to = collapsed[index];
240
+ const length = Math.abs(to.x - from.x) + Math.abs(to.y - from.y);
241
+ if (length === 0)
242
+ continue;
243
+ segments.push({ from, to, length });
244
+ totalLength += length;
245
+ }
246
+ if (totalLength === 0) {
247
+ return collapsed[0] ?? { x: 0, y: 0 };
248
+ }
249
+ let remaining = totalLength / 2;
250
+ for (const segment of segments) {
251
+ if (remaining <= segment.length) {
252
+ if (segment.from.x !== segment.to.x) {
253
+ const direction = Math.sign(segment.to.x - segment.from.x);
254
+ return {
255
+ x: segment.from.x + direction * remaining,
256
+ y: segment.from.y
257
+ };
258
+ }
259
+ const direction = Math.sign(segment.to.y - segment.from.y);
260
+ return {
261
+ x: segment.from.x,
262
+ y: segment.from.y + direction * remaining
263
+ };
264
+ }
265
+ remaining -= segment.length;
266
+ }
267
+ return collapsed[collapsed.length - 1] ?? { x: 0, y: 0 };
268
+ }
269
+ export function emptyEdge(edge) {
270
+ return {
271
+ from: edge.from,
272
+ to: edge.to,
273
+ path: '',
274
+ label: edge.label,
275
+ labelX: 0,
276
+ labelY: 0,
277
+ arrow: edge.arrow || 'end',
278
+ dashed: edge.dashed || false,
279
+ color: edge.color || 'neutral'
280
+ };
281
+ }
@@ -0,0 +1,9 @@
1
+ import type { SVGAttributes } from 'svelte/elements';
2
+ import type { DiagramConfig } from './types.js';
3
+ export interface DiagramProps extends SVGAttributes<SVGSVGElement> {
4
+ config: DiagramConfig;
5
+ width?: number;
6
+ height?: number;
7
+ }
8
+ export { default as Diagram } from './diagram.svelte';
9
+ export type { DiagramConfig, DiagramNode, DiagramEdge, DiagramCluster, DiagramAnnotation, DiagramSwimlane, DiagramRegion, DiagramMessage, DiagramFragment, DiagramColor, DiagramDirection } from './types.js';
@@ -0,0 +1 @@
1
+ export { default as Diagram } from './diagram.svelte';
@@ -0,0 +1,2 @@
1
+ import type { DiagramConfig, LayoutResult } from './types.js';
2
+ export declare function computeLayout(config: DiagramConfig): LayoutResult;