@synnaxlabs/pluto 0.23.0 → 0.25.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 (493) hide show
  1. package/dist/{Animated-DPIV1IH6.js → Animated-BpuQZROI.js} +3 -3
  2. package/dist/{Animated-DjcnDVGC.cjs → Animated-DqAjXT8r.cjs} +1 -1
  3. package/dist/{Keyboard-BLHHROrq.js → Keyboard-BTyEk3pg.js} +3 -3
  4. package/dist/{Keyboard-CJLEUbYu.cjs → Keyboard-GDYsV4-x.cjs} +1 -1
  5. package/dist/{LinePlot-C9MVJErC.js → LinePlot-CQAK-dkX.js} +4110 -3906
  6. package/dist/LinePlot-DnLLplw_.cjs +66 -0
  7. package/dist/{Link-BsqVxj6V.js → Link-BrhOiMiE.js} +2 -2
  8. package/dist/Link-CpMcH9c1.cjs +1 -0
  9. package/dist/List-BS57aL1n.js +22 -0
  10. package/dist/List-Dux7qweq.cjs +1 -0
  11. package/dist/{Pack-mkZBsSIU.js → Pack-CCCsIeot.js} +6 -6
  12. package/dist/{Pack-CBNcamuh.cjs → Pack-_i2cfPYc.cjs} +1 -1
  13. package/dist/{Toggle-W4K3cLf7.js → Toggle-CpLFBHo7.js} +17239 -17153
  14. package/dist/Toggle-DlNzb7nt.cjs +143 -0
  15. package/dist/{Video-C2EYBKLN.js → Video-Bi9kFIHV.js} +2 -2
  16. package/dist/{Video-Kb-c-N69.cjs → Video-THwAEuOy.cjs} +1 -1
  17. package/dist/{aggregator-BZJAV5yZ.js → aggregator-CoD5WrqU.js} +5151 -5636
  18. package/dist/aggregator-D47lwtdn.cjs +51 -0
  19. package/dist/align.cjs +1 -1
  20. package/dist/align.js +1 -1
  21. package/dist/button.cjs +1 -1
  22. package/dist/button.js +1 -1
  23. package/dist/color.cjs +1 -1
  24. package/dist/color.js +1 -1
  25. package/dist/css-CC1MhhH7.cjs +1 -0
  26. package/dist/css-Ce6IGevn.js +1042 -0
  27. package/dist/css.cjs +1 -1
  28. package/dist/css.js +2 -2
  29. package/dist/dropdown.cjs +1 -1
  30. package/dist/dropdown.js +1 -1
  31. package/dist/ether.cjs +1 -1
  32. package/dist/ether.js +9 -9
  33. package/dist/{external-DjjMU4Z6.cjs → external-B7RXnD0a.cjs} +1 -1
  34. package/dist/external-B815mDB0.cjs +1 -0
  35. package/dist/external-BxBMVx6g.js +97 -0
  36. package/dist/{external-CduvGaPN.js → external-C6v1z0ty.js} +37 -51
  37. package/dist/{external-XoJlPNFB.js → external-C8CIAjMj.js} +2 -2
  38. package/dist/external-CLwP0eXe.cjs +1 -0
  39. package/dist/{external-mlV4Onnq.cjs → external-CMk1k986.cjs} +1 -1
  40. package/dist/external-CUJXIrxM.cjs +1 -0
  41. package/dist/{external-0w2SHXg_.js → external-CXrgzQf5.js} +2 -2
  42. package/dist/external-Cv5GChi6.js +344 -0
  43. package/dist/{external-BKWizK6o.cjs → external-DMYExlt2.cjs} +1 -1
  44. package/dist/{external-WGyRiKbb.js → external-DQ4EhNBA.js} +32 -32
  45. package/dist/external-DRvtVPhp.cjs +1 -0
  46. package/dist/external-DShO9063.js +74 -0
  47. package/dist/external-DU5Xqqld.cjs +1 -0
  48. package/dist/external-D_WKlwCh.js +231 -0
  49. package/dist/{external-DlCoToEB.cjs → external-DjSiwSCE.cjs} +1 -1
  50. package/dist/external-Dm3eiIEN.cjs +1 -0
  51. package/dist/external-Do75w1Zt.cjs +1 -0
  52. package/dist/{external-DsNtnR-y.cjs → external-DqnUE4mV.cjs} +1 -1
  53. package/dist/external-DyTzmzSc.js +93 -0
  54. package/dist/{external-BB2SaR1o.js → external-NHkWeW29.js} +1 -1
  55. package/dist/external-NeMo53nv.js +271 -0
  56. package/dist/{external-TNsi3_BK.js → external-e0OPlFyY.js} +26 -26
  57. package/dist/header.cjs +1 -1
  58. package/dist/header.js +1 -1
  59. package/dist/index.cjs +1 -1
  60. package/dist/index.js +4937 -4262
  61. package/dist/input.cjs +1 -1
  62. package/dist/input.js +1 -1
  63. package/dist/{jsx-runtime-DqxPLdyS.js → jsx-runtime-B6kdoens.js} +225 -214
  64. package/dist/jsx-runtime-Cek9Ww4S.cjs +30 -0
  65. package/dist/list.cjs +1 -1
  66. package/dist/list.js +1 -1
  67. package/dist/menu.cjs +1 -1
  68. package/dist/menu.js +1 -1
  69. package/dist/src/accordion/Accordion.d.ts +2 -2
  70. package/dist/src/aether/aether/aether.d.ts +5 -5
  71. package/dist/src/aether/main.d.ts +4 -4
  72. package/dist/src/aether/main.d.ts.map +1 -1
  73. package/dist/src/aether/test/test.d.ts +1 -1
  74. package/dist/src/aether/test/test.d.ts.map +1 -1
  75. package/dist/src/alamos/Provider.d.ts +3 -3
  76. package/dist/src/alamos/aether/alamos.d.ts +2 -2
  77. package/dist/src/alamos/aether/alamos.d.ts.map +1 -1
  78. package/dist/src/align/Center.d.ts +1 -1
  79. package/dist/src/align/Center.d.ts.map +1 -1
  80. package/dist/src/align/Pack.d.ts +1 -1
  81. package/dist/src/align/Pack.d.ts.map +1 -1
  82. package/dist/src/align/Space.d.ts +3 -3
  83. package/dist/src/align/Space.d.ts.map +1 -1
  84. package/dist/src/button/Button.d.ts +15 -11
  85. package/dist/src/button/Button.d.ts.map +1 -1
  86. package/dist/src/button/Icon.d.ts +2 -2
  87. package/dist/src/button/Link.d.ts +3 -3
  88. package/dist/src/button/Link.d.ts.map +1 -1
  89. package/dist/src/button/Toggle.d.ts +8 -8
  90. package/dist/src/button/color.d.ts +2 -2
  91. package/dist/src/button/color.d.ts.map +1 -1
  92. package/dist/src/channel/AliasProvider.d.ts +2 -2
  93. package/dist/src/channel/AliasProvider.d.ts.map +1 -1
  94. package/dist/src/channel/LinePlot.d.ts +11 -8
  95. package/dist/src/channel/LinePlot.d.ts.map +1 -1
  96. package/dist/src/channel/Select.d.ts +2 -2
  97. package/dist/src/color/Picker/Picker.d.ts +2 -2
  98. package/dist/src/color/Swatch/Swatch.d.ts +4 -4
  99. package/dist/src/color/core/color.d.ts +7 -0
  100. package/dist/src/color/core/color.d.ts.map +1 -1
  101. package/dist/src/css/color.d.ts.map +1 -1
  102. package/dist/src/css/css.d.ts +4 -4
  103. package/dist/src/css/css.d.ts.map +1 -1
  104. package/dist/src/css/vars.d.ts.map +1 -1
  105. package/dist/src/dialog/index.d.ts +2 -0
  106. package/dist/src/dialog/index.d.ts.map +1 -0
  107. package/dist/src/dialog/use.d.ts +28 -0
  108. package/dist/src/dialog/use.d.ts.map +1 -0
  109. package/dist/src/divider/Divider.d.ts +2 -2
  110. package/dist/src/divider/Divider.d.ts.map +1 -1
  111. package/dist/src/dropdown/Dropdown.d.ts +8 -30
  112. package/dist/src/dropdown/Dropdown.d.ts.map +1 -1
  113. package/dist/src/form/Field.d.ts +35 -0
  114. package/dist/src/form/Field.d.ts.map +1 -0
  115. package/dist/src/form/Form.d.ts +19 -49
  116. package/dist/src/form/Form.d.ts.map +1 -1
  117. package/dist/src/form/external.d.ts +1 -0
  118. package/dist/src/form/external.d.ts.map +1 -1
  119. package/dist/src/generic/Generic.d.ts +1 -1
  120. package/dist/src/generic/Generic.d.ts.map +1 -1
  121. package/dist/src/hardware/device/Select.d.ts +2 -2
  122. package/dist/src/haul/Haul.d.ts +84 -3
  123. package/dist/src/haul/Haul.d.ts.map +1 -1
  124. package/dist/src/header/Actions.d.ts +1 -1
  125. package/dist/src/header/ButtonTitle.d.ts +1 -1
  126. package/dist/src/header/Header.d.ts +2 -2
  127. package/dist/src/header/Title.d.ts +1 -1
  128. package/dist/src/hooks/effect.d.ts.map +1 -1
  129. package/dist/src/hooks/ref.d.ts +3 -3
  130. package/dist/src/hooks/ref.d.ts.map +1 -1
  131. package/dist/src/hooks/useCursorDrag/types.d.ts +1 -1
  132. package/dist/src/hooks/useCursorDrag/useCursorDrag.d.ts +2 -2
  133. package/dist/src/hooks/useDebouncedCallback.d.ts.map +1 -1
  134. package/dist/src/hooks/useFilter.d.ts +1 -1
  135. package/dist/src/hooks/useFilter.d.ts.map +1 -1
  136. package/dist/src/hooks/useRequiredContext.d.ts.map +1 -1
  137. package/dist/src/hooks/useResize.d.ts +1 -1
  138. package/dist/src/hooks/useResize.d.ts.map +1 -1
  139. package/dist/src/hooks/useTransforms.d.ts.map +1 -1
  140. package/dist/src/hooks/useUniqueKey.d.ts.map +1 -1
  141. package/dist/src/icon/Icon.d.ts +14 -0
  142. package/dist/src/icon/Icon.d.ts.map +1 -0
  143. package/dist/src/icon/index.d.ts +2 -0
  144. package/dist/src/icon/index.d.ts.map +1 -0
  145. package/dist/src/index.d.ts +6 -0
  146. package/dist/src/index.d.ts.map +1 -1
  147. package/dist/src/input/Date.d.ts +1 -1
  148. package/dist/src/input/Date.d.ts.map +1 -1
  149. package/dist/src/input/DateTime.d.ts +1 -1
  150. package/dist/src/input/DragButton.d.ts +3 -3
  151. package/dist/src/input/HelpText.d.ts +2 -2
  152. package/dist/src/input/Item.d.ts +2 -2
  153. package/dist/src/input/Numeric.d.ts +3 -3
  154. package/dist/src/input/Numeric.d.ts.map +1 -1
  155. package/dist/src/input/Switch.d.ts.map +1 -1
  156. package/dist/src/input/Text.d.ts +2 -0
  157. package/dist/src/input/Text.d.ts.map +1 -1
  158. package/dist/src/input/TextArea.d.ts +1 -1
  159. package/dist/src/input/Time.d.ts +2 -2
  160. package/dist/src/input/Time.d.ts.map +1 -1
  161. package/dist/src/input/types.d.ts +2 -2
  162. package/dist/src/list/Column.d.ts +7 -6
  163. package/dist/src/list/Column.d.ts.map +1 -1
  164. package/dist/src/list/Core.d.ts +4 -4
  165. package/dist/src/list/Core.d.ts.map +1 -1
  166. package/dist/src/list/Data.d.ts +5 -3
  167. package/dist/src/list/Data.d.ts.map +1 -1
  168. package/dist/src/list/Filter.d.ts +4 -4
  169. package/dist/src/list/Filter.d.ts.map +1 -1
  170. package/dist/src/list/Hover.d.ts +1 -1
  171. package/dist/src/list/Hover.d.ts.map +1 -1
  172. package/dist/src/list/Item.d.ts +3 -3
  173. package/dist/src/list/Item.d.ts.map +1 -1
  174. package/dist/src/list/List.d.ts +1 -1
  175. package/dist/src/list/List.d.ts.map +1 -1
  176. package/dist/src/list/Search.d.ts +3 -3
  177. package/dist/src/list/Search.d.ts.map +1 -1
  178. package/dist/src/list/Selector.d.ts +3 -9
  179. package/dist/src/list/Selector.d.ts.map +1 -1
  180. package/dist/src/list/types.d.ts.map +1 -1
  181. package/dist/src/list/useSelect.d.ts +6 -2
  182. package/dist/src/list/useSelect.d.ts.map +1 -1
  183. package/dist/src/memo/useMemoCompare.d.ts +1 -1
  184. package/dist/src/memo/useMemoCompare.d.ts.map +1 -1
  185. package/dist/src/menu/ContextMenu.d.ts +2 -2
  186. package/dist/src/menu/Item.d.ts +7 -7
  187. package/dist/src/menu/Item.d.ts.map +1 -1
  188. package/dist/src/menu/Menu.d.ts +7 -5
  189. package/dist/src/menu/Menu.d.ts.map +1 -1
  190. package/dist/src/mock/MockGLBufferController.d.ts +1 -1
  191. package/dist/src/modal/Modal.d.ts +8 -0
  192. package/dist/src/modal/Modal.d.ts.map +1 -0
  193. package/dist/src/modal/index.d.ts +2 -0
  194. package/dist/src/modal/index.d.ts.map +1 -0
  195. package/dist/src/mosaic/Mosaic.d.ts +6 -5
  196. package/dist/src/mosaic/Mosaic.d.ts.map +1 -1
  197. package/dist/src/mosaic/tree.d.ts +3 -2
  198. package/dist/src/mosaic/tree.d.ts.map +1 -1
  199. package/dist/src/mosaic/types.d.ts +63 -1
  200. package/dist/src/mosaic/types.d.ts.map +1 -1
  201. package/dist/src/mosaic/use.d.ts +1 -1
  202. package/dist/src/nav/Bar.d.ts +2 -2
  203. package/dist/src/nav/Bar.d.ts.map +1 -1
  204. package/dist/src/nav/Drawer.d.ts +3 -3
  205. package/dist/src/note/Note.d.ts +1 -1
  206. package/dist/src/note/Note.d.ts.map +1 -1
  207. package/dist/src/observe/index.d.ts +2 -0
  208. package/dist/src/observe/index.d.ts.map +1 -0
  209. package/dist/src/observe/use.d.ts +19 -0
  210. package/dist/src/observe/use.d.ts.map +1 -0
  211. package/dist/src/os/Controls/Controls.d.ts +2 -2
  212. package/dist/src/os/Controls/Mac.d.ts +1 -1
  213. package/dist/src/os/Controls/Windows.d.ts +2 -2
  214. package/dist/src/os/Controls/Windows.d.ts.map +1 -1
  215. package/dist/src/os/Controls/types.d.ts +1 -1
  216. package/dist/src/os/use.d.ts.map +1 -1
  217. package/dist/src/pluto/Pluto.d.ts +8 -8
  218. package/dist/src/portal/Portal.d.ts +0 -1
  219. package/dist/src/portal/Portal.d.ts.map +1 -1
  220. package/dist/src/ranger/SelectLabel.d.ts +2 -2
  221. package/dist/src/ranger/TimeRangeChip.d.ts +4 -3
  222. package/dist/src/ranger/TimeRangeChip.d.ts.map +1 -1
  223. package/dist/src/resize/Core.d.ts +1 -1
  224. package/dist/src/resize/Multiple.d.ts +2 -2
  225. package/dist/src/resize/Single.d.ts +2 -2
  226. package/dist/src/select/Button.d.ts +8 -8
  227. package/dist/src/select/Button.d.ts.map +1 -1
  228. package/dist/src/select/ClearButton.d.ts +1 -1
  229. package/dist/src/select/ClearButton.d.ts.map +1 -1
  230. package/dist/src/select/DataType.d.ts +1 -1
  231. package/dist/src/select/DataType.d.ts.map +1 -1
  232. package/dist/src/select/Direction.d.ts +2 -2
  233. package/dist/src/select/List.d.ts +6 -5
  234. package/dist/src/select/List.d.ts.map +1 -1
  235. package/dist/src/select/Multiple.d.ts +10 -9
  236. package/dist/src/select/Multiple.d.ts.map +1 -1
  237. package/dist/src/select/Select.spec.d.ts.map +1 -1
  238. package/dist/src/select/Single.d.ts +9 -7
  239. package/dist/src/select/Single.d.ts.map +1 -1
  240. package/dist/src/state/state.d.ts +2 -1
  241. package/dist/src/state/state.d.ts.map +1 -1
  242. package/dist/src/status/Aggregator.d.ts +4 -4
  243. package/dist/src/status/Circle.d.ts +2 -2
  244. package/dist/src/status/Notification.d.ts +4 -4
  245. package/dist/src/status/Notification.d.ts.map +1 -1
  246. package/dist/src/status/Text.d.ts +2 -2
  247. package/dist/src/status/Text.d.ts.map +1 -1
  248. package/dist/src/status/aether/aggregator.d.ts +3 -3
  249. package/dist/src/status/aether/aggregator.d.ts.map +1 -1
  250. package/dist/src/status/aether/types.d.ts +1 -1
  251. package/dist/src/steps/Steps.d.ts +2 -2
  252. package/dist/src/synnax/Provider.d.ts +2 -2
  253. package/dist/src/synnax/Provider.d.ts.map +1 -1
  254. package/dist/src/synnax/aether/provider.d.ts +14 -14
  255. package/dist/src/synnax/aether/provider.d.ts.map +1 -1
  256. package/dist/src/tabs/Selector.d.ts +6 -12
  257. package/dist/src/tabs/Selector.d.ts.map +1 -1
  258. package/dist/src/tabs/Tabs.d.ts +8 -13
  259. package/dist/src/tabs/Tabs.d.ts.map +1 -1
  260. package/dist/src/tabs/external.d.ts +1 -0
  261. package/dist/src/tabs/external.d.ts.map +1 -1
  262. package/dist/src/tabs/types.d.ts +54 -0
  263. package/dist/src/tabs/types.d.ts.map +1 -0
  264. package/dist/src/tag/Tag.d.ts +3 -3
  265. package/dist/src/telem/Provider.d.ts +1 -1
  266. package/dist/src/telem/aether/context.d.ts +4 -4
  267. package/dist/src/telem/aether/context.d.ts.map +1 -1
  268. package/dist/src/telem/aether/factory.d.ts +1 -1
  269. package/dist/src/telem/aether/factory.d.ts.map +1 -1
  270. package/dist/src/telem/aether/noop.d.ts +1 -1
  271. package/dist/src/telem/aether/pipeline.d.ts +3 -3
  272. package/dist/src/telem/aether/pipeline.d.ts.map +1 -1
  273. package/dist/src/telem/aether/provider.d.ts +6 -6
  274. package/dist/src/telem/aether/remote.d.ts +3 -3
  275. package/dist/src/telem/aether/remote.d.ts.map +1 -1
  276. package/dist/src/telem/aether/static.d.ts +3 -3
  277. package/dist/src/telem/aether/telem.d.ts +3 -3
  278. package/dist/src/telem/aether/transformers.d.ts +3 -3
  279. package/dist/src/telem/aether/transformers.d.ts.map +1 -1
  280. package/dist/src/telem/client/cache/cache.d.ts +3 -3
  281. package/dist/src/telem/client/cache/static.d.ts +1 -1
  282. package/dist/src/telem/client/cache/unary.d.ts +3 -3
  283. package/dist/src/telem/client/client.d.ts +4 -5
  284. package/dist/src/telem/client/client.d.ts.map +1 -1
  285. package/dist/src/telem/client/reader.d.ts +4 -4
  286. package/dist/src/telem/client/streamer.d.ts +4 -4
  287. package/dist/src/telem/client/types.d.ts +1 -1
  288. package/dist/src/telem/control/Chip.d.ts +3 -3
  289. package/dist/src/telem/control/Chip.d.ts.map +1 -1
  290. package/dist/src/telem/control/Controller.d.ts +4 -4
  291. package/dist/src/telem/control/Indicator.d.ts +3 -3
  292. package/dist/src/telem/control/Legend.d.ts +1 -1
  293. package/dist/src/telem/control/Legend.d.ts.map +1 -1
  294. package/dist/src/telem/control/StateProvider.d.ts +3 -3
  295. package/dist/src/telem/control/aether/chip.d.ts +3 -3
  296. package/dist/src/telem/control/aether/controller.d.ts +8 -8
  297. package/dist/src/telem/control/aether/controller.d.ts.map +1 -1
  298. package/dist/src/telem/control/aether/indicator.d.ts +3 -3
  299. package/dist/src/telem/control/aether/legend.d.ts +3 -3
  300. package/dist/src/telem/control/aether/state.d.ts +5 -5
  301. package/dist/src/telem/test/mock.d.ts +2 -2
  302. package/dist/src/testutil/dom.d.ts.map +1 -1
  303. package/dist/src/text/DateTime.d.ts +5 -5
  304. package/dist/src/text/DateTime.d.ts.map +1 -1
  305. package/dist/src/text/Editable.d.ts +8 -7
  306. package/dist/src/text/Editable.d.ts.map +1 -1
  307. package/dist/src/text/Keyboard.d.ts +3 -3
  308. package/dist/src/text/Keyboard.d.ts.map +1 -1
  309. package/dist/src/text/Link.d.ts +3 -3
  310. package/dist/src/text/Link.d.ts.map +1 -1
  311. package/dist/src/text/SelectLevel.d.ts +2 -2
  312. package/dist/src/text/Text.d.ts +4 -4
  313. package/dist/src/text/Text.d.ts.map +1 -1
  314. package/dist/src/text/WithIcon.d.ts +5 -5
  315. package/dist/src/text/WithIcon.d.ts.map +1 -1
  316. package/dist/src/text/core/types.d.ts +1 -1
  317. package/dist/src/text/dimensions.d.ts.map +1 -1
  318. package/dist/src/theming/Provider.d.ts +4 -4
  319. package/dist/src/theming/Provider.d.ts.map +1 -1
  320. package/dist/src/theming/aether/provider.d.ts +2 -2
  321. package/dist/src/theming/aether/provider.d.ts.map +1 -1
  322. package/dist/src/theming/core/fontString.d.ts +2 -2
  323. package/dist/src/theming/core/fontString.d.ts.map +1 -1
  324. package/dist/src/theming/core/theme.d.ts +1 -1
  325. package/dist/src/theming/css.d.ts.map +1 -1
  326. package/dist/src/theming/font.d.ts.map +1 -1
  327. package/dist/src/tooltip/Config.d.ts +1 -1
  328. package/dist/src/tooltip/Dialog.d.ts +2 -2
  329. package/dist/src/tooltip/Dialog.d.ts.map +1 -1
  330. package/dist/src/tooltip/wrap.d.ts +1 -1
  331. package/dist/src/tooltip/wrap.d.ts.map +1 -1
  332. package/dist/src/tree/Tree.d.ts +16 -11
  333. package/dist/src/tree/Tree.d.ts.map +1 -1
  334. package/dist/src/tree/core.d.ts +2 -1
  335. package/dist/src/tree/core.d.ts.map +1 -1
  336. package/dist/src/triggers/Provider.d.ts +2 -2
  337. package/dist/src/triggers/Status.d.ts +1 -1
  338. package/dist/src/triggers/Text.d.ts +4 -4
  339. package/dist/src/triggers/Text.d.ts.map +1 -1
  340. package/dist/src/triggers/hooks.d.ts +4 -4
  341. package/dist/src/triggers/hooks.d.ts.map +1 -1
  342. package/dist/src/triggers/triggers.d.ts +3 -2
  343. package/dist/src/triggers/triggers.d.ts.map +1 -1
  344. package/dist/src/triggers/useDrag.d.ts +2 -2
  345. package/dist/src/util/children.d.ts +2 -2
  346. package/dist/src/util/children.d.ts.map +1 -1
  347. package/dist/src/util/component.d.ts +1 -1
  348. package/dist/src/util/component.d.ts.map +1 -1
  349. package/dist/src/util/renderProp.d.ts +1 -1
  350. package/dist/src/util/renderProp.d.ts.map +1 -1
  351. package/dist/src/util/rootElement.d.ts +2 -0
  352. package/dist/src/util/rootElement.d.ts.map +1 -0
  353. package/dist/src/util/zod.d.ts.map +1 -1
  354. package/dist/src/viewport/Mask.d.ts.map +1 -1
  355. package/dist/src/viewport/SelectMode.d.ts +2 -2
  356. package/dist/src/viewport/use.d.ts +4 -2
  357. package/dist/src/viewport/use.d.ts.map +1 -1
  358. package/dist/src/vis/axis/axis.d.ts +3 -3
  359. package/dist/src/vis/axis/canvas.d.ts +2 -2
  360. package/dist/src/vis/axis/ticks.d.ts +1 -1
  361. package/dist/src/vis/button/aether/button.d.ts +2 -2
  362. package/dist/src/vis/button/use.d.ts +1 -1
  363. package/dist/src/vis/canvas/Canvas.d.ts +2 -2
  364. package/dist/src/vis/canvas/Canvas.d.ts.map +1 -1
  365. package/dist/src/vis/canvas/aether/canvas.d.ts +25 -25
  366. package/dist/src/vis/diagram/Diagram.d.ts +6 -6
  367. package/dist/src/vis/diagram/Diagram.d.ts.map +1 -1
  368. package/dist/src/vis/diagram/aether/Diagram.d.ts +41 -41
  369. package/dist/src/vis/diagram/aether/Diagram.d.ts.map +1 -1
  370. package/dist/src/vis/diagram/aether/types.d.ts +331 -0
  371. package/dist/src/vis/diagram/aether/types.d.ts.map +1 -0
  372. package/dist/src/vis/diagram/align.d.ts +1 -1
  373. package/dist/src/vis/diagram/align.d.ts.map +1 -1
  374. package/dist/src/vis/diagram/edge/Edge.d.ts +4 -4
  375. package/dist/src/vis/diagram/edge/Edge.d.ts.map +1 -1
  376. package/dist/src/vis/diagram/edge/connector/connector.d.ts +12 -4
  377. package/dist/src/vis/diagram/edge/connector/connector.d.ts.map +1 -1
  378. package/dist/src/vis/diagram/external.d.ts +1 -1
  379. package/dist/src/vis/diagram/external.d.ts.map +1 -1
  380. package/dist/src/vis/diagram/util.d.ts +1 -1
  381. package/dist/src/vis/diagram/util.d.ts.map +1 -1
  382. package/dist/src/vis/draw2d/index.d.ts +4 -4
  383. package/dist/src/vis/eraser/aether/eraser.d.ts +26 -26
  384. package/dist/src/vis/eraser/use.d.ts +2 -2
  385. package/dist/src/vis/legend/Container.d.ts +101 -7
  386. package/dist/src/vis/legend/Container.d.ts.map +1 -1
  387. package/dist/src/vis/legend/Simple.d.ts +2 -2
  388. package/dist/src/vis/line/Line.d.ts +2 -2
  389. package/dist/src/vis/line/Line.d.ts.map +1 -1
  390. package/dist/src/vis/line/aether/line.d.ts +10 -9
  391. package/dist/src/vis/line/aether/line.d.ts.map +1 -1
  392. package/dist/src/vis/lineplot/Axis.d.ts +5 -5
  393. package/dist/src/vis/lineplot/Axis.d.ts.map +1 -1
  394. package/dist/src/vis/lineplot/Legend.d.ts +2 -2
  395. package/dist/src/vis/lineplot/Line.d.ts +1 -1
  396. package/dist/src/vis/lineplot/Line.d.ts.map +1 -1
  397. package/dist/src/vis/lineplot/LinePlot.d.ts +7 -7
  398. package/dist/src/vis/lineplot/LinePlot.d.ts.map +1 -1
  399. package/dist/src/vis/lineplot/Title.d.ts +2 -2
  400. package/dist/src/vis/lineplot/Title.d.ts.map +1 -1
  401. package/dist/src/vis/lineplot/Viewport.d.ts +1 -1
  402. package/dist/src/vis/lineplot/aether/LinePlot.d.ts +57 -57
  403. package/dist/src/vis/lineplot/aether/LinePlot.d.ts.map +1 -1
  404. package/dist/src/vis/lineplot/aether/XAxis.d.ts +4 -3
  405. package/dist/src/vis/lineplot/aether/XAxis.d.ts.map +1 -1
  406. package/dist/src/vis/lineplot/aether/YAxis.d.ts +5 -4
  407. package/dist/src/vis/lineplot/aether/YAxis.d.ts.map +1 -1
  408. package/dist/src/vis/lineplot/aether/axis.d.ts +6 -6
  409. package/dist/src/vis/lineplot/aether/axis.d.ts.map +1 -1
  410. package/dist/src/vis/lineplot/aether/grid.d.ts +1 -1
  411. package/dist/src/vis/lineplot/aether/grid.d.ts.map +1 -1
  412. package/dist/src/vis/lineplot/range/Annotation.d.ts +2 -2
  413. package/dist/src/vis/lineplot/range/Annotation.d.ts.map +1 -1
  414. package/dist/src/vis/lineplot/range/Provider.d.ts +2 -2
  415. package/dist/src/vis/lineplot/range/Provider.d.ts.map +1 -1
  416. package/dist/src/vis/lineplot/range/aether/annotation.d.ts +4 -4
  417. package/dist/src/vis/lineplot/range/aether/provider.d.ts +19 -19
  418. package/dist/src/vis/lineplot/tooltip/Tooltip.d.ts +2 -2
  419. package/dist/src/vis/lineplot/tooltip/Tooltip.d.ts.map +1 -1
  420. package/dist/src/vis/lineplot/tooltip/aether/tooltip.d.ts +6 -6
  421. package/dist/src/vis/measure/Measure.d.ts +1 -2
  422. package/dist/src/vis/measure/Measure.d.ts.map +1 -1
  423. package/dist/src/vis/measure/aether/measure.d.ts +7 -7
  424. package/dist/src/vis/render/GLProgram.d.ts +2 -2
  425. package/dist/src/vis/render/clear/program.d.ts +1 -1
  426. package/dist/src/vis/render/context.d.ts +4 -7
  427. package/dist/src/vis/render/context.d.ts.map +1 -1
  428. package/dist/src/vis/render/eraser.d.ts +3 -3
  429. package/dist/src/vis/render/performance.d.ts +11 -0
  430. package/dist/src/vis/render/performance.d.ts.map +1 -0
  431. package/dist/src/vis/render/util.d.ts.map +1 -1
  432. package/dist/src/vis/rule/Rule.d.ts +2 -2
  433. package/dist/src/vis/rule/Rule.d.ts.map +1 -1
  434. package/dist/src/vis/rule/aether/aether.d.ts +5 -5
  435. package/dist/src/vis/schematic/Forms.d.ts +1 -0
  436. package/dist/src/vis/schematic/Forms.d.ts.map +1 -1
  437. package/dist/src/vis/schematic/Labeled.d.ts +2 -2
  438. package/dist/src/vis/schematic/Labeled.d.ts.map +1 -1
  439. package/dist/src/vis/schematic/SelectOrientation.d.ts +3 -3
  440. package/dist/src/vis/schematic/Symbols.d.ts +113 -19
  441. package/dist/src/vis/schematic/Symbols.d.ts.map +1 -1
  442. package/dist/src/vis/schematic/primitives/Primitives.d.ts +27 -3
  443. package/dist/src/vis/schematic/primitives/Primitives.d.ts.map +1 -1
  444. package/dist/src/vis/schematic/registry.d.ts +5 -6
  445. package/dist/src/vis/schematic/registry.d.ts.map +1 -1
  446. package/dist/src/vis/toggle/aether/toggle.d.ts +5 -5
  447. package/dist/src/vis/toggle/use.d.ts +1 -1
  448. package/dist/src/vis/value/aether/value.d.ts +43 -43
  449. package/dist/src/vis/value/use.d.ts +12 -12
  450. package/dist/src/worker/Context.d.ts +1 -1
  451. package/dist/src/worker/Context.d.ts.map +1 -1
  452. package/dist/style.css +1 -1
  453. package/dist/tabs.cjs +1 -1
  454. package/dist/tabs.js +1 -1
  455. package/dist/text.cjs +1 -1
  456. package/dist/text.js +2 -2
  457. package/dist/theming.cjs +1 -1
  458. package/dist/theming.js +2 -2
  459. package/dist/tree.cjs +1 -1
  460. package/dist/tree.js +1 -1
  461. package/dist/triggers.cjs +1 -1
  462. package/dist/triggers.js +1 -1
  463. package/dist/{units-BsHX82D_.cjs → units-CoE6Mywf.cjs} +1 -1
  464. package/dist/{units-DechjShe.js → units-DlP7zkaE.js} +1 -1
  465. package/dist/video.cjs +1 -1
  466. package/dist/video.js +1 -1
  467. package/package.json +23 -24
  468. package/dist/LinePlot-DkAUE5Nq.cjs +0 -68
  469. package/dist/Link-C3NUk5cp.cjs +0 -1
  470. package/dist/List-BbB1S5Vo.cjs +0 -1
  471. package/dist/List-DPugi06W.js +0 -22
  472. package/dist/Toggle-BBGPiXIA.cjs +0 -188
  473. package/dist/aggregator-DueF6Q-Z.cjs +0 -45
  474. package/dist/css-DZx3bWkH.cjs +0 -1
  475. package/dist/css-TXuXKs3A.js +0 -1364
  476. package/dist/external-B-CtJFCn.js +0 -96
  477. package/dist/external-B39SmpRo.js +0 -201
  478. package/dist/external-BbnWD0Pc.js +0 -66
  479. package/dist/external-BphNoXuB.js +0 -92
  480. package/dist/external-CsPOXIEm.cjs +0 -1
  481. package/dist/external-CyiLaYmg.js +0 -322
  482. package/dist/external-CztU6wom.cjs +0 -1
  483. package/dist/external-D1NnASGa.cjs +0 -1
  484. package/dist/external-DrS33VU5.cjs +0 -1
  485. package/dist/external-WzX6JA2j.cjs +0 -1
  486. package/dist/external-fg-pJfZR.js +0 -260
  487. package/dist/external-vZfda3xX.cjs +0 -1
  488. package/dist/external-vgqH7hLg.cjs +0 -1
  489. package/dist/jsx-runtime-fmb_vB8K.cjs +0 -25
  490. package/dist/src/util/case.d.ts +0 -2
  491. package/dist/src/util/case.d.ts.map +0 -1
  492. package/dist/src/vis/diagram/types.d.ts +0 -73
  493. package/dist/src/vis/diagram/types.d.ts.map +0 -1
@@ -0,0 +1,1042 @@
1
+ var lt = Object.defineProperty;
2
+ var pt = (t, e, r) => e in t ? lt(t, e, { enumerable: !0, configurable: !0, writable: !0, value: r }) : t[e] = r;
3
+ var N = (t, e, r) => pt(t, typeof e != "symbol" ? e + "" : e, r);
4
+ import { z as i } from "zod";
5
+ const G = i.tuple([i.number(), i.number()]);
6
+ i.tuple([i.bigint(), i.bigint()]);
7
+ const ge = i.object({ width: i.number(), height: i.number() }), ht = i.object({
8
+ signedWidth: i.number(),
9
+ signedHeight: i.number()
10
+ }), yt = ["width", "height"];
11
+ i.enum(yt);
12
+ const dt = ["start", "center", "end"], gt = ["signedWidth", "signedHeight"];
13
+ i.enum(gt);
14
+ const R = i.object({ x: i.number(), y: i.number() }), Ce = i.object({ clientX: i.number(), clientY: i.number() }), be = ["x", "y"], xe = i.enum(be), Re = ["top", "right", "bottom", "left"], bt = i.enum(Re), J = ["left", "right"], fe = i.enum(J), K = ["top", "bottom"], me = i.enum(K), we = ["center"], Ae = i.enum(we), xt = [...Re, ...we], $e = i.enum(xt), jn = i.enum(dt), ft = ["first", "last"], Tn = i.enum(ft), _e = i.object({ lower: i.number(), upper: i.number() }), mt = i.object({ lower: i.bigint(), upper: i.bigint() });
15
+ i.union([_e, G]);
16
+ i.union([mt, G]);
17
+ const wt = i.union([xe, $e]), $t = i.union([xe, $e, i.instanceof(String)]), ve = (t, e) => typeof t == "bigint" ? t - BigInt(e) : t - Number(e), Le = (t, e) => typeof t == "bigint" ? t + BigInt(e) : t + Number(e), vt = (t, e, r = 1e-4) => Math.abs(t - e) < r, Mt = (t) => {
18
+ const e = Math.pow(10, Math.floor(Math.log10(t)));
19
+ return Math.round(t / e) * e;
20
+ }, Sn = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
21
+ __proto__: null,
22
+ add: Le,
23
+ closeTo: vt,
24
+ roundToNearestMagnitude: Mt,
25
+ sub: ve
26
+ }, Symbol.toStringTag, { value: "Module" })), c = (t, e) => {
27
+ const r = {};
28
+ if (typeof t == "number" || typeof t == "bigint")
29
+ e != null ? (r.lower = t, r.upper = e) : (r.lower = typeof t == "bigint" ? 0n : 0, r.upper = t);
30
+ else if (Array.isArray(t)) {
31
+ if (t.length !== 2) throw new Error("bounds: expected array of length 2");
32
+ [r.lower, r.upper] = t;
33
+ } else return oe(t);
34
+ return oe(r);
35
+ }, Ot = Object.freeze({ lower: 0, upper: 0 }), jt = Object.freeze({ lower: -1 / 0, upper: 1 / 0 }), Tt = Object.freeze({ lower: 0, upper: 1 }), St = Object.freeze({ lower: -1, upper: 1 }), Et = (t, e) => {
36
+ if (t == null && e == null) return !0;
37
+ if (t == null || e == null) return !1;
38
+ const r = c(t), n = c(e);
39
+ return (r == null ? void 0 : r.lower) === (n == null ? void 0 : n.lower) && (r == null ? void 0 : r.upper) === (n == null ? void 0 : n.upper);
40
+ }, oe = (t) => t.lower > t.upper ? { lower: t.upper, upper: t.lower } : t, It = (t, e) => {
41
+ const r = c(t);
42
+ return e < r.lower ? r.lower : e >= r.upper ? r.upper - (typeof r.upper == "number" ? 1 : 1n) : e;
43
+ }, S = (t, e) => {
44
+ const r = c(t);
45
+ if (typeof e == "number" || typeof e == "bigint")
46
+ return e >= r.lower && e < r.upper;
47
+ const n = c(e);
48
+ return n.lower >= r.lower && n.upper <= r.upper;
49
+ }, Bt = (t, e) => {
50
+ const r = c(t), n = c(e);
51
+ return r.lower === n.lower ? !0 : n.upper === r.lower || n.lower === r.upper ? !1 : S(r, n.upper) || S(r, n.lower) || S(n, r.upper) || S(n, r.lower);
52
+ }, m = (t) => {
53
+ const e = c(t);
54
+ return e.upper - e.lower;
55
+ }, At = (t) => {
56
+ const e = c(t);
57
+ return typeof e.lower == "bigint" ? e.lower === 0n && e.upper === 0n : e.lower === 0 && e.upper === 0;
58
+ }, Nt = (t) => {
59
+ const e = m(t);
60
+ return typeof e == "number" ? e === 0 : e === 0n;
61
+ }, zt = (t) => {
62
+ const e = c(t);
63
+ return typeof e.lower == "bigint" ? !0 : Number.isFinite(e.lower) && Number.isFinite(e.upper);
64
+ }, Ct = (t) => ({
65
+ lower: Math.min(...t.map((e) => c(e).lower)),
66
+ upper: Math.max(...t.map((e) => c(e).upper))
67
+ }), Rt = (t) => ({
68
+ lower: Math.max(...t.map((e) => c(e).lower)),
69
+ upper: Math.min(...t.map((e) => c(e).upper))
70
+ }), _t = (t) => {
71
+ const e = c(t), r = typeof e.lower == "bigint";
72
+ return Array.from({ length: Number(m(t)) }, (n, o) => r ? e.lower + BigInt(o) : e.lower + o);
73
+ }, se = (t, e) => {
74
+ const r = t.map((s) => c(s)), n = r.findIndex(
75
+ (s, u) => S(s, e) || e < r[u].lower
76
+ );
77
+ if (n === -1) return { index: t.length, position: 0 };
78
+ const o = r[n];
79
+ return S(o, e) ? { index: n, position: Number(e - o.lower) } : { index: n, position: 0 };
80
+ }, re = {
81
+ removeBefore: 0,
82
+ removeAfter: 0,
83
+ insertInto: 0,
84
+ deleteInBetween: 0
85
+ }, Pe = (t, e) => {
86
+ const r = t.map((y) => c(y)), n = c(e);
87
+ if (r.length === 0) return re;
88
+ const o = se(r, n.lower), s = se(r, n.upper);
89
+ if (o.index === t.length) return { ...re, insertInto: t.length };
90
+ if (s.index === 0) return { ...re, removeAfter: s.position };
91
+ if (o.index === s.index)
92
+ return o.position !== 0 && s.position !== 0 ? null : {
93
+ removeAfter: s.position,
94
+ removeBefore: o.position,
95
+ insertInto: o.index,
96
+ deleteInBetween: 0
97
+ };
98
+ let u = s.index - o.index, a = o.index, p = ve(Number(m(r[o.index])), o.position);
99
+ return o.position !== 0 ? (u -= 1, a += 1) : p = 0, {
100
+ removeBefore: p,
101
+ removeAfter: s.position,
102
+ insertInto: a,
103
+ deleteInBetween: u
104
+ };
105
+ }, Lt = (t, e) => {
106
+ const r = Pe(t, e), n = t.map((s) => c(s));
107
+ if (r == null) return n;
108
+ const o = c(e);
109
+ return o.lower = Le(o.lower, r.removeBefore), o.upper = ve(o.upper, r.removeAfter), n.splice(r.insertInto, r.deleteInBetween, o), n;
110
+ }, Pt = (t, e) => {
111
+ const r = c(t), n = c(e);
112
+ return r.upper <= n.lower || r.lower >= n.upper ? 0 : r.lower >= n.lower && r.upper <= n.upper ? 1 : r.lower <= n.lower && r.upper >= n.upper ? m(n) / m(r) : r.lower <= n.lower ? (r.upper - n.lower) / m(r) : (n.upper - r.lower) / m(r);
113
+ }, En = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
114
+ __proto__: null,
115
+ CLIP: St,
116
+ DECIMAL: Tt,
117
+ INFINITE: jt,
118
+ ZERO: Ot,
119
+ bounds: _e,
120
+ buildInsertionPlan: Pe,
121
+ clamp: It,
122
+ construct: c,
123
+ contains: S,
124
+ equals: Et,
125
+ exposure: Pt,
126
+ findInsertPosition: se,
127
+ insert: Lt,
128
+ isFinite: zt,
129
+ isZero: At,
130
+ linspace: _t,
131
+ makeValid: oe,
132
+ max: Ct,
133
+ min: Rt,
134
+ overlapsWith: Bt,
135
+ span: m,
136
+ spanIsZero: Nt
137
+ }, Symbol.toStringTag, { value: "Module" })), He = wt, j = (t) => be.includes(t) ? t : K.includes(t) ? "y" : "x", Ht = (t) => j(t) === "x" ? "y" : "x", Zt = (t) => j(t) === "x" ? "width" : "height", Yt = (t) => j(t) === "x" ? "left" : "top", Ft = (t) => He.safeParse(t).success, Wt = (t) => j(t) === "x" ? "signedWidth" : "signedHeight", Xt = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
138
+ __proto__: null,
139
+ construct: j,
140
+ crude: He,
141
+ dimension: Zt,
142
+ direction: xe,
143
+ isDirection: Ft,
144
+ location: Yt,
145
+ signedDimension: Wt,
146
+ swap: Ht
147
+ }, Symbol.toStringTag, { value: "Module" })), kt = (t) => {
148
+ const e = t.replace(/_[a-z]/g, (r) => r[1].toUpperCase());
149
+ return e.length > 1 && e[0] === e[0].toUpperCase() && e[1] === e[1].toUpperCase() ? e : e[0].toLowerCase() + e.slice(1);
150
+ }, Ze = (t) => {
151
+ const e = (r, n = V) => {
152
+ if (typeof r == "string") return t(r);
153
+ if (Array.isArray(r)) return r.map((s) => e(s, n));
154
+ if (!W(r)) return null;
155
+ n = Fe(n);
156
+ const o = {};
157
+ return Object.keys(r).forEach((s) => {
158
+ let u = r[s];
159
+ const a = t(s);
160
+ n.recursive && (W(u) ? ue(u, n.keepTypesOnRecursion) || (u = e(u, n)) : n.recursiveInArray && ie(u) && (u = [...u].map((p) => {
161
+ let y = p;
162
+ return W(p) ? ue(y, n.keepTypesOnRecursion) || (y = e(p, n)) : ie(p) && (y = e({ key: p }, n).key), y;
163
+ }))), o[a] = u;
164
+ }), o;
165
+ };
166
+ return e;
167
+ }, Dt = Ze(kt), Vt = (t) => t.replace(/([a-z0-9])([A-Z])/g, (e, r, n) => `${r}_${n.toLowerCase()}`), qt = Ze(Vt), Ye = (t) => t[0].toUpperCase() + t.slice(1), V = {
168
+ recursive: !0,
169
+ recursiveInArray: !0,
170
+ keepTypesOnRecursion: [Number, String, Uint8Array]
171
+ }, Fe = (t = V) => (t.recursive == null ? t = V : t.recursiveInArray == null && (t.recursiveInArray = !1), t), ie = (t) => t != null && Array.isArray(t), W = (t) => t != null && typeof t == "object" && !Array.isArray(t), ue = (t, e) => (e || []).some((r) => t instanceof r), In = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
172
+ __proto__: null,
173
+ belongToTypes: ue,
174
+ camelToSnake: qt,
175
+ capitalize: Ye,
176
+ defaultOptions: V,
177
+ isArrayObject: ie,
178
+ isValidObject: W,
179
+ snakeToCamel: Dt,
180
+ validateOptions: Fe
181
+ }, Symbol.toStringTag, { value: "Module" })), Ut = fe, Gt = me, Jt = {
182
+ top: "bottom",
183
+ right: "left",
184
+ bottom: "top",
185
+ left: "right",
186
+ center: "center"
187
+ }, Kt = {
188
+ top: "left",
189
+ right: "top",
190
+ bottom: "right",
191
+ left: "bottom",
192
+ center: "center"
193
+ }, Qt = $t, v = (t) => t instanceof String ? t : be.includes(t) ? t === "x" ? "left" : "top" : t, er = (t) => Jt[v(t)], tr = (t) => Kt[v(t)], _ = (t) => {
194
+ const e = v(t);
195
+ return e === "top" || e === "bottom" ? "y" : "x";
196
+ }, rr = i.object({
197
+ x: fe.or(Ae),
198
+ y: me.or(Ae)
199
+ }), We = i.object({ x: fe, y: me }), L = Object.freeze({ x: "left", y: "top" }), Me = Object.freeze({ x: "right", y: "top" }), Q = Object.freeze({ x: "left", y: "bottom" }), Oe = Object.freeze({ x: "right", y: "bottom" }), je = Object.freeze({ x: "center", y: "center" }), Xe = Object.freeze({ x: "center", y: "top" }), ke = Object.freeze({ x: "center", y: "bottom" }), De = Object.freeze({ x: "right", y: "center" }), Ve = Object.freeze({ x: "left", y: "center" }), nr = Object.freeze([
200
+ Ve,
201
+ De,
202
+ Xe,
203
+ ke,
204
+ L,
205
+ Me,
206
+ Q,
207
+ Oe,
208
+ je
209
+ ]), Te = (t, e) => t.x === e.x && t.y === e.y, or = (t, e) => {
210
+ if (typeof e == "object") {
211
+ let r = !0;
212
+ return "x" in e && (t.x === e.x || (r = !1)), "y" in e && (t.y === e.y || (r = !1)), r;
213
+ }
214
+ return t.x === e || t.y === e;
215
+ }, qe = (t) => [t.x, t.y], X = (t) => _(v(t)) === "x", sr = (t) => _(v(t)) === "y", ir = (t) => `${t.x}${Ye(t.y)}`, ur = (t, e) => {
216
+ let r, n;
217
+ if (typeof t == "object" && "x" in t ? (r = t.x, n = t.y) : (r = v(t), n = v(e ?? t)), _(r) === _(n) && r !== "center" && n !== "center")
218
+ throw new Error(
219
+ `[XYLocation] - encountered two locations with the same direction: ${r.toString()} - ${n.toString()}`
220
+ );
221
+ const o = { ...je };
222
+ return r === "center" ? X(n) ? [o.x, o.y] = [n, r] : [o.x, o.y] = [r, n] : n === "center" ? X(r) ? [o.x, o.y] = [r, n] : [o.x, o.y] = [n, r] : X(r) ? [o.x, o.y] = [r, n] : [o.x, o.y] = [n, r], o;
223
+ }, Ue = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
224
+ __proto__: null,
225
+ BOTTOM_CENTER: ke,
226
+ BOTTOM_LEFT: Q,
227
+ BOTTOM_RIGHT: Oe,
228
+ CENTER: je,
229
+ CENTER_LOCATIONS: we,
230
+ LEFT_CENTER: Ve,
231
+ RIGHT_CENTER: De,
232
+ TOP_CENTER: Xe,
233
+ TOP_LEFT: L,
234
+ TOP_RIGHT: Me,
235
+ XY_LOCATIONS: nr,
236
+ X_LOCATIONS: J,
237
+ Y_LOCATIONS: K,
238
+ construct: v,
239
+ constructXY: ur,
240
+ corner: We,
241
+ crude: Qt,
242
+ direction: _,
243
+ isX: X,
244
+ isY: sr,
245
+ location: $e,
246
+ outer: bt,
247
+ rotate90: tr,
248
+ swap: er,
249
+ x: Ut,
250
+ xy: rr,
251
+ xyCouple: qe,
252
+ xyEquals: Te,
253
+ xyMatches: or,
254
+ xyToString: ir,
255
+ y: Gt
256
+ }, Symbol.toStringTag, { value: "Module" })), ae = i.union([
257
+ i.number(),
258
+ R,
259
+ G,
260
+ ge,
261
+ ht,
262
+ Ce
263
+ ]), h = (t, e) => {
264
+ if (typeof t == "string") {
265
+ if (e === void 0) throw new Error("The y coordinate must be given.");
266
+ return t === "x" ? { x: e, y: 0 } : { x: 0, y: e };
267
+ }
268
+ return typeof t == "number" ? { x: t, y: e ?? t } : Array.isArray(t) ? { x: t[0], y: t[1] } : "signedWidth" in t ? { x: t.signedWidth, y: t.signedHeight } : "clientX" in t ? { x: t.clientX, y: t.clientY } : "width" in t ? { x: t.width, y: t.height } : { x: t.x, y: t.y };
269
+ }, f = Object.freeze({ x: 0, y: 0 }), Ge = Object.freeze({ x: 1, y: 1 }), ar = Object.freeze({ x: 1 / 0, y: 1 / 0 }), cr = Object.freeze({ x: NaN, y: NaN }), q = (t, e, r = 0) => {
270
+ const n = h(t), o = h(e);
271
+ return r === 0 ? n.x === o.x && n.y === o.y : Math.abs(n.x - o.x) <= r && Math.abs(n.y - o.y) <= r;
272
+ }, lr = (t) => q(t, f), pr = (t, e, r) => {
273
+ const n = h(t), o = h(e, r);
274
+ return { x: n.x * o.x, y: n.y * o.y };
275
+ }, Je = (t, e) => {
276
+ const r = h(t);
277
+ return { x: r.x + e, y: r.y };
278
+ }, Ke = (t, e) => {
279
+ const r = h(t);
280
+ return { x: r.x, y: r.y + e };
281
+ }, U = (t, e, r, ...n) => typeof e == "string" && typeof r == "number" ? e === "x" ? Je(t, r) : Ke(t, r) : [t, e, r ?? f, ...n].reduce((o, s) => {
282
+ const u = h(s);
283
+ return { x: o.x + u.x, y: o.y + u.y };
284
+ }, f), hr = (t, e, r) => {
285
+ const n = h(t);
286
+ return e === "x" ? { x: r, y: n.y } : { x: n.x, y: r };
287
+ }, yr = (t, e) => {
288
+ const r = h(t), n = h(e);
289
+ return Math.sqrt((r.x - n.x) ** 2 + (r.y - n.y) ** 2);
290
+ }, dr = (t, e) => {
291
+ const r = h(t), n = h(e);
292
+ return { x: n.x - r.x, y: n.y - r.y };
293
+ }, gr = (t) => {
294
+ const e = h(t);
295
+ return Number.isNaN(e.x) || Number.isNaN(e.y);
296
+ }, br = (t) => {
297
+ const e = h(t);
298
+ return Number.isFinite(e.x) && Number.isFinite(e.y);
299
+ }, xr = (t) => {
300
+ const e = h(t);
301
+ return [e.x, e.y];
302
+ }, fr = (t) => {
303
+ const e = h(t);
304
+ return { left: e.x, top: e.y };
305
+ }, ce = (t, e = 0) => {
306
+ const r = h(t);
307
+ return { x: Number(r.x.toFixed(e)), y: Number(r.y.toFixed(e)) };
308
+ }, Bn = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
309
+ __proto__: null,
310
+ INFINITY: ar,
311
+ NAN: cr,
312
+ ONE: Ge,
313
+ ZERO: f,
314
+ clientXY: Ce,
315
+ construct: h,
316
+ couple: xr,
317
+ crudeZ: ae,
318
+ css: fr,
319
+ distance: yr,
320
+ equals: q,
321
+ isFinite: br,
322
+ isNan: gr,
323
+ isZero: lr,
324
+ scale: pr,
325
+ set: hr,
326
+ translate: U,
327
+ translateX: Je,
328
+ translateY: Ke,
329
+ translation: dr,
330
+ truncate: ce,
331
+ xy: R
332
+ }, Symbol.toStringTag, { value: "Module" })), H = i.union([i.number(), i.string()]);
333
+ i.object({
334
+ top: H,
335
+ left: H,
336
+ width: H,
337
+ height: H
338
+ });
339
+ i.object({
340
+ left: i.number(),
341
+ top: i.number(),
342
+ right: i.number(),
343
+ bottom: i.number()
344
+ });
345
+ const mr = i.object({
346
+ one: R,
347
+ two: R,
348
+ root: We
349
+ }), Qe = { one: f, two: f, root: L }, wr = { one: f, two: Ge, root: Q }, et = (t, e) => ({
350
+ one: t.one,
351
+ two: t.two,
352
+ root: e ?? t.root
353
+ }), l = (t, e, r = 0, n = 0, o) => {
354
+ const s = {
355
+ one: { ...f },
356
+ two: { ...f },
357
+ root: o ?? L
358
+ };
359
+ if (typeof t == "number") {
360
+ if (typeof e != "number")
361
+ throw new Error("Box constructor called with invalid arguments");
362
+ return s.one = { x: t, y: e }, s.two = { x: s.one.x + r, y: s.one.y + n }, s;
363
+ }
364
+ return "one" in t && "two" in t && "root" in t ? { ...t, root: o ?? t.root } : ("getBoundingClientRect" in t && (t = t.getBoundingClientRect()), "left" in t ? (s.one = { x: t.left, y: t.top }, s.two = { x: t.right, y: t.bottom }, s) : (s.one = t, e == null ? s.two = { x: s.one.x + r, y: s.one.y + n } : typeof e == "number" ? s.two = { x: s.one.x + e, y: s.one.y + r } : "width" in e ? s.two = {
365
+ x: s.one.x + e.width,
366
+ y: s.one.y + e.height
367
+ } : "signedWidth" in e ? s.two = {
368
+ x: s.one.x + e.signedWidth,
369
+ y: s.one.y + e.signedHeight
370
+ } : s.two = e, s));
371
+ }, $r = (t, e, r) => {
372
+ const n = l(t);
373
+ if (typeof e == "string") {
374
+ if (r == null) throw new Error("Invalid arguments for resize");
375
+ const o = j(e);
376
+ return l(
377
+ n.one,
378
+ void 0,
379
+ o === "x" ? r : M(n),
380
+ o === "y" ? r : O(n),
381
+ n.root
382
+ );
383
+ }
384
+ return l(n.one, e, void 0, void 0, n.root);
385
+ }, vr = (t, e, r = !0) => {
386
+ const n = l(t);
387
+ let o = (s, u) => s < u;
388
+ return r && (o = (s, u) => s <= u), "one" in e ? o(w(n), w(e)) && o(E(e), E(n)) && o($(n), $(e)) && o(I(e), I(n)) : o(w(n), e.x) && o(e.x, E(n)) && o($(n), e.y) && o(e.y, I(n));
389
+ }, Mr = (t, e) => q(t.one, e.one) && q(t.two, e.two) && Te(t.root, e.root), tt = (t) => ({
390
+ width: M(t),
391
+ height: O(t)
392
+ }), Or = (t) => ({
393
+ signedWidth: ee(t),
394
+ signedHeight: te(t)
395
+ }), jr = (t) => ({
396
+ top: $(t),
397
+ left: w(t),
398
+ width: M(t),
399
+ height: O(t)
400
+ }), Se = (t, e, r = !1) => {
401
+ const n = j(e) === "y" ? te(t) : ee(t);
402
+ return r ? n : Math.abs(n);
403
+ }, P = (t, e) => {
404
+ const r = l(t);
405
+ return {
406
+ x: e.x === "center" ? le(r).x : B(r, e.x),
407
+ y: e.y === "center" ? le(r).y : B(r, e.y)
408
+ };
409
+ }, B = (t, e) => {
410
+ const r = l(t), n = qe(r.root).includes(e) ? Math.min : Math.max;
411
+ return J.includes(e) ? n(r.one.x, r.two.x) : n(r.one.y, r.two.y);
412
+ }, Tr = (t) => t.one.x === t.two.x && t.one.y === t.two.y, M = (t) => Se(t, "x"), O = (t) => Se(t, "y"), ee = (t) => {
413
+ const e = l(t);
414
+ return e.two.x - e.one.x;
415
+ }, te = (t) => {
416
+ const e = l(t);
417
+ return e.two.y - e.one.y;
418
+ }, rt = (t) => P(t, L), Sr = (t) => P(t, Me), Er = (t) => P(t, Q), Ir = (t) => P(t, Oe), E = (t) => B(t, "right"), I = (t) => B(t, "bottom"), w = (t) => B(t, "left"), $ = (t) => B(t, "top"), le = (t) => U(rt(t), {
419
+ x: ee(t) / 2,
420
+ y: te(t) / 2
421
+ }), Ee = (t) => {
422
+ const e = l(t);
423
+ return e.root.x === "left" ? w(e) : E(e);
424
+ }, Ie = (t) => {
425
+ const e = l(t);
426
+ return e.root.y === "top" ? $(e) : I(e);
427
+ }, Br = (t) => ({ x: Ee(t), y: Ie(t) }), k = (t) => {
428
+ const e = l(t);
429
+ return { lower: e.one.x, upper: e.two.x };
430
+ }, D = (t) => {
431
+ const e = l(t);
432
+ return { lower: e.one.y, upper: e.two.y };
433
+ }, Ar = (t, e) => et(t, e), Nr = (t, e) => {
434
+ const r = l(t), n = J.includes(e) ? "x" : K.includes(e) ? "y" : null;
435
+ if (n === null) throw new Error(`Invalid location: ${Ue}`);
436
+ const o = e === "top" || e === "left" ? Math.min : Math.max, s = { ...r.one }, u = { ...r.two };
437
+ return s[n] = o(r.one[n], r.two[n]), u[n] = o(r.one[n], r.two[n]), [s, u];
438
+ }, zr = (t, e) => {
439
+ const r = l(t), n = l(e), o = Ee(n) + (M(n) - M(r)) / 2, s = Ie(n) + (O(n) - O(r)) / 2;
440
+ return l({ x: o, y: s }, tt(r));
441
+ }, nt = (t) => typeof t != "object" || t == null ? !1 : "one" in t && "two" in t && "root" in t, Cr = (t) => M(t) / O(t), Rr = (t, e, r) => {
442
+ if (typeof e == "string") {
443
+ if (r == null) throw new Error("Undefined amount passed into box.translate");
444
+ const o = j(e);
445
+ e = h(o, r);
446
+ }
447
+ const n = l(t);
448
+ return l(
449
+ U(n.one, e),
450
+ U(n.two, e),
451
+ void 0,
452
+ void 0,
453
+ n.root
454
+ );
455
+ }, _r = (t, e) => {
456
+ const r = Math.max(w(t), w(e)), n = Math.max($(t), $(e)), o = Math.min(E(t), E(e)), s = Math.min(I(t), I(e));
457
+ return r > o || n > s ? Qe : l({ x: r, y: n }, { x: o, y: s }, void 0, void 0, t.root);
458
+ }, Lr = (t) => M(t) * O(t), Pr = (t, e) => {
459
+ const r = l(t);
460
+ return l(
461
+ ce(r.one, e),
462
+ ce(r.two, e),
463
+ void 0,
464
+ void 0,
465
+ r.root
466
+ );
467
+ }, Hr = (t, e, r, n, o, s) => {
468
+ const u = { x: t, y: e }, a = { x: t + r, y: e + n };
469
+ return o.x !== s.x && (o.x === "center" ? (u.x -= r / 2, a.x -= r / 2) : (u.x -= r, a.x -= r)), o.y !== s.y && (o.y === "center" ? (u.y -= n / 2, a.y -= n / 2) : (u.y -= n, a.y -= n)), l(u, a, void 0, void 0, s);
470
+ }, An = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
471
+ __proto__: null,
472
+ DECIMAL: wr,
473
+ ZERO: Qe,
474
+ area: Lr,
475
+ areaIsZero: Tr,
476
+ aspect: Cr,
477
+ bottom: I,
478
+ bottomLeft: Er,
479
+ bottomRight: Ir,
480
+ box: mr,
481
+ center: le,
482
+ construct: l,
483
+ constructWithAlternateRoot: Hr,
484
+ contains: vr,
485
+ copy: et,
486
+ css: jr,
487
+ dim: Se,
488
+ dims: tt,
489
+ edgePoints: Nr,
490
+ equals: Mr,
491
+ height: O,
492
+ intersection: _r,
493
+ isBox: nt,
494
+ left: w,
495
+ loc: B,
496
+ positionInCenter: zr,
497
+ reRoot: Ar,
498
+ resize: $r,
499
+ right: E,
500
+ root: Br,
501
+ signedDims: Or,
502
+ signedHeight: te,
503
+ signedWidth: ee,
504
+ top: $,
505
+ topLeft: rt,
506
+ topRight: Sr,
507
+ translate: Rr,
508
+ truncate: Pr,
509
+ width: M,
510
+ x: Ee,
511
+ xBounds: k,
512
+ xyLoc: P,
513
+ y: Ie,
514
+ yBounds: D
515
+ }, Symbol.toStringTag, { value: "Module" })), ot = i.object({ signedWidth: i.number(), signedHeight: i.number() }), Zr = i.union([ge, ot, R, G]), Yr = { width: 0, height: 0 }, Fr = { width: 1, height: 1 }, d = (t, e) => typeof t == "number" ? { width: t, height: e ?? t } : Array.isArray(t) ? { width: t[0], height: t[1] } : "x" in t ? { width: t.x, height: t.y } : "signedWidth" in t ? { width: t.signedWidth, height: t.signedHeight } : { ...t }, Wr = (t, e) => {
516
+ if (e == null) return !1;
517
+ const r = d(t), n = d(e);
518
+ return r.width === n.width && r.height === n.height;
519
+ }, Xr = (t) => {
520
+ const e = d(t);
521
+ return { width: e.height, height: e.width };
522
+ }, kr = (t) => {
523
+ const e = d(t);
524
+ return `0 0 ${e.width} ${e.height}`;
525
+ }, Dr = (t) => {
526
+ const e = d(t);
527
+ return [e.width, e.height];
528
+ }, Vr = (t) => ({
529
+ width: Math.max(...t.map((e) => d(e).width)),
530
+ height: Math.max(...t.map((e) => d(e).height))
531
+ }), qr = (t) => ({
532
+ width: Math.min(...t.map((e) => d(e).width)),
533
+ height: Math.min(...t.map((e) => d(e).height))
534
+ }), Ur = (t, e) => {
535
+ const r = d(t);
536
+ return { width: r.width * e, height: r.height * e };
537
+ }, Nn = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
538
+ __proto__: null,
539
+ DECIMAL: Fr,
540
+ ZERO: Yr,
541
+ construct: d,
542
+ couple: Dr,
543
+ crude: Zr,
544
+ dimensions: ge,
545
+ equals: Wr,
546
+ max: Vr,
547
+ min: qr,
548
+ scale: Ur,
549
+ signed: ot,
550
+ svgViewBox: kr,
551
+ swap: Xr
552
+ }, Symbol.toStringTag, { value: "Module" }));
553
+ var Gr = Object.defineProperty, Jr = (t, e, r) => e in t ? Gr(t, e, { enumerable: !0, configurable: !0, writable: !0, value: r }) : t[e] = r, x = (t, e, r) => Jr(t, typeof e != "symbol" ? e + "" : e, r);
554
+ const Kr = (t, e, r) => e !== void 0 && t < e ? e : r !== void 0 && t > r ? r : t, Qr = i.object({ offset: ae, scale: ae }), en = (t) => (e, r, n, o) => r === "dimension" ? [e, n] : [
555
+ e,
556
+ o ? n - t : n + t
557
+ ], tn = (t) => (e, r, n, o) => [
558
+ e,
559
+ o ? n / t : n * t
560
+ ], rn = (t) => (e, r, n) => {
561
+ if (e === null) return [t, n];
562
+ const { lower: o, upper: s } = e, { lower: u, upper: a } = t, p = s - o, y = a - u;
563
+ if (r === "dimension") return [t, n * (y / p)];
564
+ const T = (n - o) * (y / p) + u;
565
+ return [t, T];
566
+ }, nn = (t) => (e, r, n) => [t, n], on = () => (t, e, r) => {
567
+ if (t === null) throw new Error("cannot invert without bounds");
568
+ if (e === "dimension") return [t, r];
569
+ const { lower: n, upper: o } = t;
570
+ return [t, o - (r - n)];
571
+ }, sn = (t) => (e, r, n) => {
572
+ const { lower: o, upper: s } = t;
573
+ return n = Kr(n, o, s), [e, n];
574
+ }, pe = class C {
575
+ constructor() {
576
+ x(this, "ops", []), x(this, "currBounds", null), x(this, "currType", null), x(this, "reversed", !1), this.ops = [];
577
+ }
578
+ static translate(e) {
579
+ return new C().translate(e);
580
+ }
581
+ static magnify(e) {
582
+ return new C().magnify(e);
583
+ }
584
+ static scale(e, r) {
585
+ return new C().scale(e, r);
586
+ }
587
+ translate(e) {
588
+ const r = this.new(), n = en(e);
589
+ return n.type = "translate", r.ops.push(n), r;
590
+ }
591
+ magnify(e) {
592
+ const r = this.new(), n = tn(e);
593
+ return n.type = "magnify", r.ops.push(n), r;
594
+ }
595
+ scale(e, r) {
596
+ const n = c(e, r), o = this.new(), s = rn(n);
597
+ return s.type = "scale", o.ops.push(s), o;
598
+ }
599
+ clamp(e, r) {
600
+ const n = c(e, r), o = this.new(), s = sn(n);
601
+ return s.type = "clamp", o.ops.push(s), o;
602
+ }
603
+ reBound(e, r) {
604
+ const n = c(e, r), o = this.new(), s = nn(n);
605
+ return s.type = "re-bound", o.ops.push(s), o;
606
+ }
607
+ invert() {
608
+ const e = on();
609
+ e.type = "invert";
610
+ const r = this.new();
611
+ return r.ops.push(e), r;
612
+ }
613
+ pos(e) {
614
+ return this.exec("position", e);
615
+ }
616
+ dim(e) {
617
+ return this.exec("dimension", e);
618
+ }
619
+ new() {
620
+ const e = new C();
621
+ return e.ops = this.ops.slice(), e.reversed = this.reversed, e;
622
+ }
623
+ exec(e, r) {
624
+ return this.currBounds = null, this.ops.reduce(
625
+ ([n, o], s) => s(n, e, o, this.reversed),
626
+ [null, r]
627
+ )[1];
628
+ }
629
+ reverse() {
630
+ const e = this.new();
631
+ e.ops.reverse();
632
+ const r = [];
633
+ return e.ops.forEach((n, o) => {
634
+ if (n.type === "scale" || r.some(([u, a]) => o >= u && o <= a))
635
+ return;
636
+ const s = e.ops.findIndex((u, a) => u.type === "scale" && a > o);
637
+ s !== -1 && r.push([o, s]);
638
+ }), r.forEach(([n, o]) => {
639
+ const s = e.ops.slice(n, o);
640
+ s.unshift(e.ops[o]), e.ops.splice(n, o - n + 1, ...s);
641
+ }), e.reversed = !e.reversed, e;
642
+ }
643
+ };
644
+ x(pe, "IDENTITY", new pe());
645
+ let he = pe;
646
+ const un = (t) => ({
647
+ scale: {
648
+ x: t.x.dim(1),
649
+ y: t.y.dim(1)
650
+ },
651
+ offset: {
652
+ x: t.x.pos(0),
653
+ y: t.y.pos(0)
654
+ }
655
+ }), ye = class b {
656
+ constructor(e = new he(), r = new he(), n = null) {
657
+ x(this, "x"), x(this, "y"), x(this, "currRoot"), this.x = e, this.y = r, this.currRoot = n;
658
+ }
659
+ static translate(e, r) {
660
+ return new b().translate(e, r);
661
+ }
662
+ static translateX(e) {
663
+ return new b().translateX(e);
664
+ }
665
+ static translateY(e) {
666
+ return new b().translateY(e);
667
+ }
668
+ static clamp(e) {
669
+ return new b().clamp(e);
670
+ }
671
+ static magnify(e) {
672
+ return new b().magnify(e);
673
+ }
674
+ static scale(e) {
675
+ return new b().scale(e);
676
+ }
677
+ static reBound(e) {
678
+ return new b().reBound(e);
679
+ }
680
+ translate(e, r) {
681
+ const n = h(e, r), o = this.copy();
682
+ return o.x = this.x.translate(n.x), o.y = this.y.translate(n.y), o;
683
+ }
684
+ translateX(e) {
685
+ const r = this.copy();
686
+ return r.x = this.x.translate(e), r;
687
+ }
688
+ translateY(e) {
689
+ const r = this.copy();
690
+ return r.y = this.y.translate(e), r;
691
+ }
692
+ magnify(e) {
693
+ const r = this.copy();
694
+ return r.x = this.x.magnify(e.x), r.y = this.y.magnify(e.y), r;
695
+ }
696
+ scale(e) {
697
+ const r = this.copy();
698
+ if (nt(e)) {
699
+ const n = this.currRoot;
700
+ return r.currRoot = e.root, n != null && !Te(n, e.root) && (n.x !== e.root.x && (r.x = r.x.invert()), n.y !== e.root.y && (r.y = r.y.invert())), r.x = r.x.scale(k(e)), r.y = r.y.scale(D(e)), r;
701
+ }
702
+ return r.x = r.x.scale(e.width), r.y = r.y.scale(e.height), r;
703
+ }
704
+ reBound(e) {
705
+ const r = this.copy();
706
+ return r.x = this.x.reBound(k(e)), r.y = this.y.reBound(D(e)), r;
707
+ }
708
+ clamp(e) {
709
+ const r = this.copy();
710
+ return r.x = this.x.clamp(k(e)), r.y = this.y.clamp(D(e)), r;
711
+ }
712
+ copy() {
713
+ const e = new b();
714
+ return e.currRoot = this.currRoot, e.x = this.x, e.y = this.y, e;
715
+ }
716
+ reverse() {
717
+ const e = this.copy();
718
+ return e.x = this.x.reverse(), e.y = this.y.reverse(), e;
719
+ }
720
+ pos(e) {
721
+ return { x: this.x.pos(e.x), y: this.y.pos(e.y) };
722
+ }
723
+ box(e) {
724
+ return l(
725
+ this.pos(e.one),
726
+ this.pos(e.two),
727
+ 0,
728
+ 0,
729
+ this.currRoot ?? e.root
730
+ );
731
+ }
732
+ };
733
+ x(ye, "IDENTITY", new ye());
734
+ let an = ye;
735
+ const zn = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
736
+ __proto__: null,
737
+ Scale: he,
738
+ XY: an,
739
+ crudeXYTransform: Qr,
740
+ xyScaleToTransform: un
741
+ }, Symbol.toStringTag, { value: "Module" }));
742
+ function st(t) {
743
+ var e, r, n = "";
744
+ if (typeof t == "string" || typeof t == "number") n += t;
745
+ else if (typeof t == "object") if (Array.isArray(t)) {
746
+ var o = t.length;
747
+ for (e = 0; e < o; e++) t[e] && (r = st(t[e])) && (n && (n += " "), n += r);
748
+ } else for (r in t) t[r] && (n && (n += " "), n += r);
749
+ return n;
750
+ }
751
+ function cn() {
752
+ for (var t, e, r = 0, n = "", o = arguments.length; r < o; r++) (t = arguments[r]) && (e = st(t)) && (n && (n += " "), n += e);
753
+ return n;
754
+ }
755
+ const ln = cn, Ne = "-", ze = "__", Z = "--", it = (t) => {
756
+ const e = (...r) => ln(...r);
757
+ return e.B = (r) => t + Ne + r, e.E = (r) => t + ze + r, e.M = (r) => t + Z + r, e.BM = (r, n) => e.B(r) + Z + n, e.BE = (r, n) => e.B(r) + ze + n, e.BEM = (r, n, o) => e.BE(r, n) + Z + o, e.extend = (r) => it(e.B(r)), e.var = (r) => Z + t + Ne + r, e;
758
+ }, pn = /^#?([0-9a-f]{6}|[0-9a-f]{8})$/i, de = i.string().regex(pn), z = i.number().min(0).max(255), hn = i.number().min(0).max(1), Be = i.tuple([z, z, z, hn]), ut = i.tuple([z, z, z]), at = i.object({ rgba255: Be }), yn = (t) => t == null ? void 0 : new A(t).hex, dn = (t) => {
759
+ if (t == null) return;
760
+ const e = A.z.safeParse(t);
761
+ if (e.success) return e.data.rgbaCSS;
762
+ if (typeof t == "string") return t;
763
+ throw e.error;
764
+ }, g = class g {
765
+ /**
766
+ * @constructor Creates a new color from the given color value. The color value can be
767
+ * a hex string, an array of RGB or RGBA values, or another color.
768
+ *
769
+ * @param color - The color value to create the color from. If the color value is a
770
+ * string, it must be a valid hex color (with or without the '#') with a hasheless
771
+ * length 6 or 8. If the hex color is 8 characters long, the last twoc haracters are
772
+ * used as the alpha value. If the color value is an array, it must be an array of
773
+ * length 3 or 4, with each value between 0 and 255. If the color value is another
774
+ * color, the color will be copied.
775
+ *
776
+ * @param alpha - An optional alpha value to set. If the color value carries its own
777
+ * alpha value, this value will be ignored. Defaults to 1.
778
+ */
779
+ constructor(e, r = 1) {
780
+ /**
781
+ * @property the color as an RGBA tuple, with each color value between 0 and 255,
782
+ * and the alpha value between 0 and 1.
783
+ */
784
+ N(this, "rgba255");
785
+ if (typeof e == "string")
786
+ this.rgba255 = g.fromHex(e, r);
787
+ else if (Array.isArray(e)) {
788
+ if (e.length < 3 || e.length > 4)
789
+ throw new Error(`Invalid color: [${e.join(", ")}]`);
790
+ this.rgba255 = e.length === 3 ? [...e, r ?? 1] : e;
791
+ } else this.rgba255 = e.rgba255;
792
+ }
793
+ /**
794
+ * @returns true if the given color is semantically equal to this color. Different
795
+ * representations of the same color are considered equal (e.g. hex and rgba).
796
+ */
797
+ equals(e) {
798
+ if (e == null) return !1;
799
+ const r = new g(e);
800
+ return this.rgba255.every((n, o) => n === r.rgba255[o]);
801
+ }
802
+ /**
803
+ * @returns the hex representation of the color. If the color has an opacity of 1,
804
+ * the returned hex will be 6 characters long. Otherwise, it will be 8 characters
805
+ * long.
806
+ */
807
+ get hex() {
808
+ const [e, r, n, o] = this.rgba255;
809
+ return `#${Y(e)}${Y(r)}${Y(n)}${o === 1 ? "" : Y(o * 255)}`;
810
+ }
811
+ /**
812
+ * @returns the color as a CSS RGBA string.
813
+ */
814
+ get rgbaCSS() {
815
+ const [e, r, n, o] = this.rgba255;
816
+ return `rgba(${e}, ${r}, ${n}, ${o})`;
817
+ }
818
+ /**
819
+ * @returns the color as a CSS RGB string with no alpha value.
820
+ */
821
+ get rgbCSS() {
822
+ return `rgb(${this.rgbString})`;
823
+ }
824
+ /**
825
+ * @returns the color as an RGB string, with each color value between 0 and 255.
826
+ * @example "255, 255, 255"
827
+ */
828
+ get rgbString() {
829
+ const [e, r, n] = this.rgba255;
830
+ return `${e}, ${r}, ${n}`;
831
+ }
832
+ /**
833
+ * @returns the color as an RGBA tuple, with each color value between 0 and 1,
834
+ * and the alpha value between 0 and 1.
835
+ */
836
+ get rgba1() {
837
+ return [...this.rgb1, this.rgba255[3]];
838
+ }
839
+ get rgb1() {
840
+ return [this.rgba255[0] / 255, this.rgba255[1] / 255, this.rgba255[2] / 255];
841
+ }
842
+ /** @returns the red value of the color, between 0 and 255. */
843
+ get r() {
844
+ return this.rgba255[0];
845
+ }
846
+ /** @returns the green value of the color, between 0 and 255. */
847
+ get g() {
848
+ return this.rgba255[1];
849
+ }
850
+ /** @returns the blue value of the color, between 0 and 255. */
851
+ get b() {
852
+ return this.rgba255[2];
853
+ }
854
+ /** @returns the alpha value of the color, between 0 and 1. */
855
+ get a() {
856
+ return this.rgba255[3];
857
+ }
858
+ /** @returns true if all RGBA values are 0. */
859
+ get isZero() {
860
+ return this.equals(ct);
861
+ }
862
+ get hsla() {
863
+ return xn(this.rgba255);
864
+ }
865
+ /**
866
+ * Creates a new color with the given alpha.
867
+ *
868
+ * @param alpha - The alpha value to set. If the value is greater than 1, it will be
869
+ * divided by 100.
870
+ * @returns A new color with the given alpha.
871
+ */
872
+ setAlpha(e) {
873
+ const [r, n, o] = this.rgba255;
874
+ if (e > 100)
875
+ throw new Error(`Color opacity must be between 0 and 100, got ${e}`);
876
+ return e > 1 && (e = e / 100), new g([r, n, o, e]);
877
+ }
878
+ /**
879
+ * @returns the luminance of the color, between 0 and 1.
880
+ */
881
+ get luminance() {
882
+ const [e, r, n] = this.rgb1.map((o) => o <= 0.03928 ? o / 12.92 : ((o + 0.055) / 1.055) ** 2.4);
883
+ return Number((0.2126 * e + 0.7152 * r + 0.0722 * n).toFixed(3));
884
+ }
885
+ /**
886
+ * @returns the contrast ratio between this color and the given color. The contrast
887
+ * ratio is a number between 1 and 21, where 1 is the lowest contrast and 21 is the
888
+ * highest.
889
+ * @param other
890
+ * @returns
891
+ */
892
+ contrast(e) {
893
+ const r = new g(e), n = this.luminance, o = r.luminance;
894
+ return (Math.max(n, o) + 0.5) / (Math.min(n, o) + 0.5);
895
+ }
896
+ pickByContrast(...e) {
897
+ if (e.length === 0)
898
+ throw new Error("[Color.pickByContrast] - must provide at least one color");
899
+ const [r] = e.map((n) => new g(n)).sort((n, o) => this.contrast(o) - this.contrast(n));
900
+ return r;
901
+ }
902
+ get isDark() {
903
+ return this.luminance < 0.5;
904
+ }
905
+ get isLight() {
906
+ return !this.isDark;
907
+ }
908
+ static fromHex(e, r = 1) {
909
+ if (!de.safeParse(e).success) throw new Error(`Invalid hex color: ${e}`);
910
+ return e = gn(e), [
911
+ F(e, 0),
912
+ F(e, 2),
913
+ F(e, 4),
914
+ e.length === 8 ? F(e, 6) / 255 : r
915
+ ];
916
+ }
917
+ };
918
+ N(g, "z", i.union([de, Be, ut, i.instanceof(g), at]).transform((e) => new g(e)));
919
+ let A = g;
920
+ const ct = new A([0, 0, 0, 0]), Y = (t) => Math.floor(t).toString(16).padStart(2, "0"), F = (t, e) => parseInt(t.slice(e, e + 2), 16), gn = (t) => t.startsWith("#") ? t.slice(1) : t, bn = (t) => {
921
+ let [e, r, n] = t;
922
+ const o = t[3];
923
+ e /= 360, r /= 100, n /= 100;
924
+ let s, u, a;
925
+ if (r === 0)
926
+ s = u = a = n;
927
+ else {
928
+ const p = n < 0.5 ? n * (1 + r) : n + r - n * r, y = 2 * n - p;
929
+ s = ne(y, p, e + 1 / 3), u = ne(y, p, e), a = ne(y, p, e - 1 / 3);
930
+ }
931
+ return [Math.round(s * 255), Math.round(u * 255), Math.round(a * 255), o];
932
+ }, ne = (t, e, r) => (r < 0 && (r += 1), r > 1 && (r -= 1), r < 1 / 6 ? t + (e - t) * 6 * r : r < 1 / 2 ? e : r < 2 / 3 ? t + (e - t) * (2 / 3 - r) * 6 : t), xn = (t) => {
933
+ let [e, r, n] = t;
934
+ const o = t[3];
935
+ e /= 255, r /= 255, n /= 255, e /= 255, r /= 255, n /= 255;
936
+ const s = Math.max(e, r, n), u = Math.min(e, r, n);
937
+ let a, p, y = (s + u) / 2;
938
+ if (s === u)
939
+ a = p = 0;
940
+ else {
941
+ const T = s - u;
942
+ p = y > 0.5 ? T / (2 - s - u) : T / (s + u), s === e ? a = (r - n) / T + (r < n ? 6 : 0) : s === r ? a = (n - e) / T + 2 : a = (e - r) / T + 4, a /= 6;
943
+ }
944
+ return a *= 360, p *= 100, y *= 100, [Math.round(a), Math.round(p), Math.round(y), o];
945
+ }, fn = i.union([
946
+ de,
947
+ Be,
948
+ i.instanceof(A),
949
+ i.string(),
950
+ ut,
951
+ at
952
+ ]), Cn = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
953
+ __proto__: null,
954
+ Color: A,
955
+ ZERO: ct,
956
+ crudeZ: fn,
957
+ cssString: dn,
958
+ fromHSLA: bn,
959
+ toHex: yn
960
+ }, Symbol.toStringTag, { value: "Module" }));
961
+ class mn {
962
+ constructor(e = "") {
963
+ N(this, "rows", []);
964
+ N(this, "columns", []);
965
+ N(this, "prefix");
966
+ this.prefix = e;
967
+ }
968
+ row(e, r, n) {
969
+ const { prefix: o } = this;
970
+ return this.rows.push({ startLabel: o + e, endLabel: o + r, size: n }), this;
971
+ }
972
+ col(e, r, n) {
973
+ const { prefix: o } = this;
974
+ return this.columns.push({ startLabel: o + e, endLabel: o + r, size: n }), this;
975
+ }
976
+ build() {
977
+ return {
978
+ display: "grid",
979
+ gridTemplateRows: this.rows.map((e, r) => {
980
+ let n = r === 0 ? "[" : "";
981
+ return n += `${e.startLabel}] ${e.size}${typeof e.size == "number" ? "px" : ""} [${e.endLabel}`, n += r === this.rows.length - 1 ? "]" : "", n;
982
+ }).join(" "),
983
+ gridTemplateColumns: this.columns.map((e, r) => {
984
+ let n = r === 0 ? "[" : "";
985
+ return n += `${e.startLabel}] ${e.size}${typeof e.size == "number" ? "px" : ""} [${e.endLabel}`, n += r === this.columns.length - 1 ? "]" : "", n;
986
+ }).join(" ")
987
+ };
988
+ }
989
+ }
990
+ const wn = (t, e) => Object.entries(e).forEach(
991
+ ([r, n]) => n != null && t.style.setProperty(r, `${n}`)
992
+ ), $n = (t, e) => Array.from(t.style).forEach((r) => {
993
+ r.startsWith(e) && t.style.removeProperty(r);
994
+ }), vn = (t) => {
995
+ const e = it(t);
996
+ return e.visible = (r) => e.M(r ? "visible" : "hidden"), e.expanded = (r) => e.M(r ? "expanded" : "collapsed"), e.loc = (r) => e.M(Ue.construct(r)), e.disabled = (r) => r === !0 && e.M("disabled"), e.align = (r) => e.M(r), e.dir = (r) => r != null && e.M(Xt.construct(r)), e.size = (r) => typeof r == "string" && e.M(r), e.sharp = (r) => r !== !1 && e.M("sharp"), e.rounded = (r) => r !== !1 && e.M("rounded"), e.bordered = (r) => typeof r == "boolean" ? r && e.M("bordered") : r != null ? e.M("bordered-" + r) : e.M("bordered"), e.selected = (r) => r && e.M("selected"), e.altColor = (r) => r && e.M("altColor"), e.editable = (r) => r && e.M("editable"), e.noSelect = e.M("no-select"), e.noWrap = (r) => r && e.M("no-wrap"), e.applyVars = wn, e.removeVars = $n, e.newGridBuilder = (r) => new mn(r), e.dropRegion = (r) => r && e.B("haul-drop-region"), e.px = (r) => `${r}px`, e.inheritDims = (r = !0) => r && e.M("inherit-dims"), e;
997
+ }, Rn = vn("pluto");
998
+ export {
999
+ Te as $,
1000
+ O as A,
1001
+ or as B,
1002
+ Rn as C,
1003
+ jn as D,
1004
+ M as E,
1005
+ Lr as F,
1006
+ _r as G,
1007
+ er as H,
1008
+ Ue as J,
1009
+ nr as M,
1010
+ Dt as O,
1011
+ En as R,
1012
+ In as S,
1013
+ An as T,
1014
+ ct as Z,
1015
+ Nn as _,
1016
+ A as a,
1017
+ fn as b,
1018
+ dn as c,
1019
+ Cn as d,
1020
+ Sn as e,
1021
+ bn as f,
1022
+ Xt as g,
1023
+ cn as h,
1024
+ ft as i,
1025
+ Kr as j,
1026
+ zn as k,
1027
+ Tn as l,
1028
+ rr as m,
1029
+ it as n,
1030
+ c as o,
1031
+ $e as p,
1032
+ Bn as q,
1033
+ j as r,
1034
+ l as s,
1035
+ yn as t,
1036
+ dt as u,
1037
+ qt as v,
1038
+ P as w,
1039
+ Hr as x,
1040
+ je as y,
1041
+ L as z
1042
+ };