@synnaxlabs/pluto 0.49.0 → 0.50.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 (500) hide show
  1. package/dist/{Animated-Dsn1pmhz.cjs → Animated-Bm-WM4BW.cjs} +1 -1
  2. package/dist/Animated-DpzwlYqX.cjs +1 -0
  3. package/dist/{Animated-38tdmPR0.js → Animated-DxBr38YY.js} +50 -50
  4. package/dist/{Animated-Bp6IK3ct.js → Animated-eavjaVoD.js} +3 -3
  5. package/dist/{Box-4l6DWG-3.cjs → Box-D27bV7QJ.cjs} +1 -1
  6. package/dist/{Box-BVyAHr2f.js → Box-DLO7l9hM.js} +9 -9
  7. package/dist/Button-Cj2hR9EM.cjs +1 -0
  8. package/dist/{Button-CoOYEk1J.js → Button-DulIBpNI.js} +98 -98
  9. package/dist/{Dialog-puVY-0Mt.js → Dialog-CwTHvHHD.js} +3 -3
  10. package/dist/{Dialog-JwJQD3xZ.cjs → Dialog-DJJQBUgw.cjs} +1 -1
  11. package/dist/{Editable-DI0-D1K5.cjs → Editable-C-z-stcD.cjs} +1 -1
  12. package/dist/{Editable-DEbVpi5i.js → Editable-DjQORuR1.js} +3 -3
  13. package/dist/{Haul-Db9j45Fu.js → Haul-CofQrOeX.js} +24 -24
  14. package/dist/Haul-gTF4QDh3.cjs +1 -0
  15. package/dist/{Items-BVKW0udb.js → Items-B5aeU-Pt.js} +22 -22
  16. package/dist/{Items-BCG7kyaR.cjs → Items-DjAwxhhi.cjs} +2 -2
  17. package/dist/Menu-Bjfeoaln.js +135 -0
  18. package/dist/Menu-BqfIul2o.cjs +1 -0
  19. package/dist/{Provider-DQM7IBoi.js → Provider-BoQtgQtU.js} +394 -318
  20. package/dist/Provider-CKROy_xK.cjs +1 -0
  21. package/dist/{Tags-CQFa3kY-.cjs → Tags-B3m_Kzbp.cjs} +1 -1
  22. package/dist/{Tags-B8l5Dvw-.js → Tags-C38F7I5z.js} +173 -173
  23. package/dist/Text-IFQH97iK.cjs +1 -0
  24. package/dist/{Text-90J6p5Uj.js → Text-TzKJ38En.js} +611 -591
  25. package/dist/{Video-CLpcYcKf.js → Video-C56z7qvH.js} +1 -1
  26. package/dist/{Video-Bmg4gwom.cjs → Video-CBPTBLTB.cjs} +1 -1
  27. package/dist/button.cjs +1 -1
  28. package/dist/button.js +1 -1
  29. package/dist/color.cjs +1 -1
  30. package/dist/color.js +1 -1
  31. package/dist/{css-bahPRiQI.js → css-BkBrZtKZ.js} +562 -569
  32. package/dist/{css-BVgFAmaj.cjs → css-D3NdC2sx.cjs} +4 -4
  33. package/dist/css.cjs +1 -1
  34. package/dist/css.js +2 -2
  35. package/dist/dialog.cjs +1 -1
  36. package/dist/dialog.js +1 -1
  37. package/dist/{dimensions-SDA3fM2T.cjs → dimensions-C7b02rFi.cjs} +1 -1
  38. package/dist/{dimensions-qcyzaTKI.js → dimensions-qj2CkPTy.js} +6 -6
  39. package/dist/{eraser-Dz6nZuPp.js → eraser-Bd14L_5k.js} +38 -38
  40. package/dist/{eraser-Cbfc1frM.cjs → eraser-DZxY0pWe.cjs} +3 -3
  41. package/dist/ether.cjs +1 -1
  42. package/dist/ether.js +54 -55
  43. package/dist/{external-m-0q-0os.js → external-6HkYP0wd.js} +5 -5
  44. package/dist/external-B0R_yw6F.cjs +84 -0
  45. package/dist/{external-CwYoEhB2.cjs → external-B3o5P8Yw.cjs} +1 -1
  46. package/dist/{external-Bixqkw5N.cjs → external-BIW55htp.cjs} +1 -1
  47. package/dist/{external-TI-6Umwm.js → external-BKkDVUP_.js} +6 -6
  48. package/dist/{external-D2tzyCDs.cjs → external-BU5fnKG8.cjs} +1 -1
  49. package/dist/{external-PA6ulZR9.cjs → external-BWI-FZRf.cjs} +1 -1
  50. package/dist/{external-04ve_X21.js → external-Bl8zTvKt.js} +14 -14
  51. package/dist/{external-xJ67ivgR.js → external-BoAcV4dI.js} +3 -3
  52. package/dist/{external-CrXS1qj_.js → external-BsdKmL37.js} +13386 -12955
  53. package/dist/{external-B3b7kdID.cjs → external-CUHCzUJE.cjs} +1 -1
  54. package/dist/{external-DJWZ43k0.js → external-CVzhqlPH.js} +1 -1
  55. package/dist/{external-kwuGKgyL.cjs → external-CkwpcNCW.cjs} +1 -1
  56. package/dist/{external-CMs_BCc5.cjs → external-D4rp1QBE.cjs} +2 -2
  57. package/dist/external-D7qXEQQM.cjs +1 -0
  58. package/dist/{external-DUVDOJfj.cjs → external-DAmwuDsu.cjs} +1 -1
  59. package/dist/{external-D2deiHyL.js → external-DCZMzNZX.js} +10 -9
  60. package/dist/{external-CB3VxPJp.js → external-DKc3PiyN.js} +24 -24
  61. package/dist/external-DPow1FDR.cjs +1 -0
  62. package/dist/external-DlHNhR1y.cjs +1 -0
  63. package/dist/{external-CnWQzZlQ.js → external-DqaHmzvp.js} +69 -68
  64. package/dist/{external-Hhx8JoAS.js → external-DrcMI5oa.js} +12 -12
  65. package/dist/{external-DP9FiRHq.js → external-MvcifV4O.js} +3 -3
  66. package/dist/{external-Cxojc4yT.js → external-gDa9Z0SY.js} +11 -11
  67. package/dist/flex.cjs +1 -1
  68. package/dist/flex.js +1 -1
  69. package/dist/{fontString-qfWSw62X.js → fontString-BtjO8Met.js} +3 -3
  70. package/dist/{fontString-62eEvw4b.cjs → fontString-CeR_vHX_.cjs} +1 -1
  71. package/dist/header.cjs +1 -1
  72. package/dist/header.js +1 -1
  73. package/dist/{hooks-Dh0v1QWQ.js → hooks-Ddqh5NVY.js} +25 -25
  74. package/dist/hooks-Dxvxse16.cjs +1 -0
  75. package/dist/index.cjs +23 -15
  76. package/dist/index.js +11132 -10768
  77. package/dist/input.cjs +1 -1
  78. package/dist/input.js +1 -1
  79. package/dist/list.cjs +1 -1
  80. package/dist/list.js +1 -1
  81. package/dist/menu.cjs +1 -1
  82. package/dist/menu.js +1 -1
  83. package/dist/pluto.css +1 -1
  84. package/dist/provider-BmDwHwF4.cjs +78 -0
  85. package/dist/{provider-ClhgBr_F.js → provider-CfFukcDe.js} +3984 -3662
  86. package/dist/src/access/policy/Select.d.ts.map +1 -1
  87. package/dist/src/access/policy/aether/queries.d.ts.map +1 -1
  88. package/dist/src/access/policy/queries.d.ts +8 -6
  89. package/dist/src/access/policy/queries.d.ts.map +1 -1
  90. package/dist/src/access/role/Select.d.ts +2 -2
  91. package/dist/src/access/role/Select.d.ts.map +1 -1
  92. package/dist/src/access/role/queries.d.ts +2 -2
  93. package/dist/src/access/role/queries.d.ts.map +1 -1
  94. package/dist/src/aether/aether/aether.d.ts +86 -10
  95. package/dist/src/aether/aether/aether.d.ts.map +1 -1
  96. package/dist/src/aether/aether/aether.spec.d.ts.map +1 -1
  97. package/dist/src/aether/main.d.ts +34 -11
  98. package/dist/src/aether/main.d.ts.map +1 -1
  99. package/dist/src/aether/message.d.ts +31 -6
  100. package/dist/src/aether/message.d.ts.map +1 -1
  101. package/dist/src/aether/test/index.d.ts +2 -0
  102. package/dist/src/aether/test/index.d.ts.map +1 -0
  103. package/dist/src/aether/test/provider.d.ts +4 -0
  104. package/dist/src/aether/test/provider.d.ts.map +1 -0
  105. package/dist/src/aether/test/provider.spec.d.ts +2 -0
  106. package/dist/src/aether/test/provider.spec.d.ts.map +1 -0
  107. package/dist/src/arc/handle/Base.d.ts +8 -0
  108. package/dist/src/arc/handle/{Core.d.ts.map → Base.d.ts.map} +1 -1
  109. package/dist/src/arc/handle/Sink.d.ts +2 -2
  110. package/dist/src/arc/handle/Source.d.ts +2 -2
  111. package/dist/src/arc/queries.d.ts +33 -10
  112. package/dist/src/arc/queries.d.ts.map +1 -1
  113. package/dist/src/button/Button.d.ts +2 -2
  114. package/dist/src/button/Button.d.ts.map +1 -1
  115. package/dist/src/button/Toggle.d.ts.map +1 -1
  116. package/dist/src/channel/LinePlot.d.ts +7 -6
  117. package/dist/src/channel/LinePlot.d.ts.map +1 -1
  118. package/dist/src/channel/Select.d.ts.map +1 -1
  119. package/dist/src/channel/queries.d.ts +6 -5
  120. package/dist/src/channel/queries.d.ts.map +1 -1
  121. package/dist/src/color/BaseSwatch.d.ts.map +1 -1
  122. package/dist/src/color/Picker.d.ts.map +1 -1
  123. package/dist/src/color/Swatch.d.ts.map +1 -1
  124. package/dist/src/component/SelectSize.d.ts.map +1 -1
  125. package/dist/src/css/bem.d.ts +2 -2
  126. package/dist/src/css/css.d.ts +1 -1
  127. package/dist/src/device/Select.d.ts.map +1 -1
  128. package/dist/src/device/queries.d.ts +8 -8
  129. package/dist/src/device/queries.d.ts.map +1 -1
  130. package/dist/src/dialog/Frame.d.ts.map +1 -1
  131. package/dist/src/direction/Select.d.ts +2 -2
  132. package/dist/src/direction/Select.d.ts.map +1 -1
  133. package/dist/src/errors/Boundary.d.ts +29 -0
  134. package/dist/src/errors/Boundary.d.ts.map +1 -0
  135. package/dist/src/errors/Fallback.d.ts +32 -0
  136. package/dist/src/errors/Fallback.d.ts.map +1 -0
  137. package/dist/src/errors/errors.spec.d.ts +2 -0
  138. package/dist/src/errors/errors.spec.d.ts.map +1 -0
  139. package/dist/src/errors/external.d.ts +3 -0
  140. package/dist/src/errors/external.d.ts.map +1 -0
  141. package/dist/src/errors/index.d.ts +2 -0
  142. package/dist/src/errors/index.d.ts.map +1 -0
  143. package/dist/src/flux/Provider.d.ts +2 -2
  144. package/dist/src/flux/aether/external.d.ts +4 -4
  145. package/dist/src/flux/aether/provider.d.ts +7 -7
  146. package/dist/src/flux/{core → base}/client.d.ts.map +1 -1
  147. package/dist/src/flux/{core → base}/external.d.ts.map +1 -1
  148. package/dist/src/flux/base/index.d.ts +2 -0
  149. package/dist/src/flux/base/index.d.ts.map +1 -0
  150. package/dist/src/flux/{core → base}/store.d.ts.map +1 -1
  151. package/dist/src/flux/base/store.spec.d.ts.map +1 -0
  152. package/dist/src/flux/{core → base}/streamer.d.ts +1 -1
  153. package/dist/src/flux/{core → base}/streamer.d.ts.map +1 -1
  154. package/dist/src/flux/base/streamer.spec.d.ts.map +1 -0
  155. package/dist/src/flux/{core → base}/types.d.ts.map +1 -1
  156. package/dist/src/flux/external.d.ts +3 -3
  157. package/dist/src/flux/form.d.ts +13 -13
  158. package/dist/src/flux/form.d.ts.map +1 -1
  159. package/dist/src/flux/list.d.ts +11 -11
  160. package/dist/src/flux/list.d.ts.map +1 -1
  161. package/dist/src/flux/retrieve.d.ts +20 -20
  162. package/dist/src/flux/retrieve.d.ts.map +1 -1
  163. package/dist/src/flux/update.d.ts +23 -22
  164. package/dist/src/flux/update.d.ts.map +1 -1
  165. package/dist/src/form/Field.d.ts.map +1 -1
  166. package/dist/src/form/external.d.ts +0 -1
  167. package/dist/src/form/external.d.ts.map +1 -1
  168. package/dist/src/form/useField.d.ts.map +1 -1
  169. package/dist/src/group/queries.d.ts +5 -5
  170. package/dist/src/group/queries.d.ts.map +1 -1
  171. package/dist/src/haul/Haul.d.ts +3 -3
  172. package/dist/src/haul/Haul.d.ts.map +1 -1
  173. package/dist/src/header/ButtonTitle.d.ts.map +1 -1
  174. package/dist/src/icon/Icon.d.ts +1 -1
  175. package/dist/src/icon/Icon.d.ts.map +1 -1
  176. package/dist/src/icon/registry.d.ts +4 -0
  177. package/dist/src/icon/registry.d.ts.map +1 -1
  178. package/dist/src/index.d.ts +2 -1
  179. package/dist/src/index.d.ts.map +1 -1
  180. package/dist/src/input/Boolean.d.ts.map +1 -1
  181. package/dist/src/input/Date.d.ts.map +1 -1
  182. package/dist/src/input/DateTime.d.ts.map +1 -1
  183. package/dist/src/input/DragButton.d.ts.map +1 -1
  184. package/dist/src/input/HelpText.d.ts.map +1 -1
  185. package/dist/src/input/Label.d.ts.map +1 -1
  186. package/dist/src/input/Numeric.d.ts.map +1 -1
  187. package/dist/src/input/Text.d.ts.map +1 -1
  188. package/dist/src/input/Time.d.ts.map +1 -1
  189. package/dist/src/label/Select.d.ts.map +1 -1
  190. package/dist/src/label/queries.d.ts +3 -3
  191. package/dist/src/label/queries.d.ts.map +1 -1
  192. package/dist/src/lineplot/Axis.d.ts.map +1 -1
  193. package/dist/src/lineplot/Legend.d.ts +2 -2
  194. package/dist/src/lineplot/Line.d.ts +2 -2
  195. package/dist/src/lineplot/LinePlot.d.ts +9 -3
  196. package/dist/src/lineplot/LinePlot.d.ts.map +1 -1
  197. package/dist/src/lineplot/Viewport.d.ts +2 -2
  198. package/dist/src/lineplot/aether/LinePlot.d.ts +17 -5
  199. package/dist/src/lineplot/aether/LinePlot.d.ts.map +1 -1
  200. package/dist/src/lineplot/aether/XAxis.d.ts +2 -2
  201. package/dist/src/lineplot/aether/YAxis.d.ts +2 -2
  202. package/dist/src/lineplot/aether/axis.d.ts +4 -4
  203. package/dist/src/lineplot/aether/external.d.ts +0 -1
  204. package/dist/src/lineplot/aether/external.d.ts.map +1 -1
  205. package/dist/src/lineplot/external.d.ts +0 -1
  206. package/dist/src/lineplot/external.d.ts.map +1 -1
  207. package/dist/src/lineplot/queries.d.ts +3 -3
  208. package/dist/src/lineplot/queries.d.ts.map +1 -1
  209. package/dist/src/lineplot/range/Annotation.d.ts.map +1 -1
  210. package/dist/src/lineplot/tooltip/Tooltip.d.ts.map +1 -1
  211. package/dist/src/list/Frame.d.ts +2 -2
  212. package/dist/src/list/Frame.d.ts.map +1 -1
  213. package/dist/src/list/Items.d.ts.map +1 -1
  214. package/dist/src/list/useKeysData.d.ts.map +1 -1
  215. package/dist/src/log/Log.d.ts.map +1 -1
  216. package/dist/src/log/queries.d.ts +3 -3
  217. package/dist/src/log/queries.d.ts.map +1 -1
  218. package/dist/src/menu/ContextMenu.d.ts +3 -2
  219. package/dist/src/menu/ContextMenu.d.ts.map +1 -1
  220. package/dist/src/menu/Menu.d.ts.map +1 -1
  221. package/dist/src/mosaic/Mosaic.d.ts.map +1 -1
  222. package/dist/src/nav/Bar.d.ts +3 -3
  223. package/dist/src/nav/Drawer.d.ts.map +1 -1
  224. package/dist/src/notation/Select.d.ts +2 -2
  225. package/dist/src/notation/Select.d.ts.map +1 -1
  226. package/dist/src/ontology/aether/queries.d.ts.map +1 -1
  227. package/dist/src/ontology/queries.d.ts +3 -3
  228. package/dist/src/ontology/queries.d.ts.map +1 -1
  229. package/dist/src/pluto/Pluto.d.ts +2 -0
  230. package/dist/src/pluto/Pluto.d.ts.map +1 -1
  231. package/dist/src/rack/Select.d.ts.map +1 -1
  232. package/dist/src/rack/queries.d.ts +2 -2
  233. package/dist/src/rack/queries.d.ts.map +1 -1
  234. package/dist/src/ranger/Breadcrumb.d.ts +2 -2
  235. package/dist/src/ranger/Select.d.ts +2 -2
  236. package/dist/src/ranger/Select.d.ts.map +1 -1
  237. package/dist/src/ranger/SelectStage.d.ts.map +1 -1
  238. package/dist/src/ranger/queries.d.ts +5 -5
  239. package/dist/src/ranger/queries.d.ts.map +1 -1
  240. package/dist/src/resize/{Core.d.ts → Base.d.ts} +3 -3
  241. package/dist/src/resize/{Core.d.ts.map → Base.d.ts.map} +1 -1
  242. package/dist/src/resize/Single.d.ts +2 -2
  243. package/dist/src/resize/Single.d.ts.map +1 -1
  244. package/dist/src/resize/external.d.ts +1 -1
  245. package/dist/src/schematic/Schematic.d.ts.map +1 -1
  246. package/dist/src/schematic/edge/paths.d.ts.map +1 -1
  247. package/dist/src/schematic/queries.d.ts +5 -5
  248. package/dist/src/schematic/queries.d.ts.map +1 -1
  249. package/dist/src/schematic/symbol/Primitives.d.ts +5 -5
  250. package/dist/src/schematic/symbol/Primitives.d.ts.map +1 -1
  251. package/dist/src/schematic/symbol/SelectOrientation.d.ts +2 -2
  252. package/dist/src/schematic/symbol/SelectOrientation.d.ts.map +1 -1
  253. package/dist/src/schematic/symbol/Symbols.d.ts +13 -13
  254. package/dist/src/schematic/symbol/Symbols.d.ts.map +1 -1
  255. package/dist/src/schematic/symbol/external.d.ts +1 -0
  256. package/dist/src/schematic/symbol/external.d.ts.map +1 -1
  257. package/dist/src/schematic/symbol/queries.d.ts +8 -6
  258. package/dist/src/schematic/symbol/queries.d.ts.map +1 -1
  259. package/dist/src/schematic/symbol/registry.d.ts +1 -1
  260. package/dist/src/select/Button.d.ts +3 -3
  261. package/dist/src/select/Button.d.ts.map +1 -1
  262. package/dist/src/select/Dialog.d.ts +3 -3
  263. package/dist/src/select/Dialog.d.ts.map +1 -1
  264. package/dist/src/select/Frame.d.ts +1 -1
  265. package/dist/src/select/Frame.d.ts.map +1 -1
  266. package/dist/src/select/Multiple.d.ts +3 -3
  267. package/dist/src/select/Multiple.d.ts.map +1 -1
  268. package/dist/src/select/MultipleTrigger.d.ts.map +1 -1
  269. package/dist/src/select/Single.d.ts.map +1 -1
  270. package/dist/src/select/Static.d.ts.map +1 -1
  271. package/dist/src/select/flex/Alignment.d.ts.map +1 -1
  272. package/dist/src/select/text/Level.d.ts +1 -1
  273. package/dist/src/select/text/Weight.d.ts +1 -1
  274. package/dist/src/select/use.d.ts.map +1 -1
  275. package/dist/src/showcase/InputShowcase.d.ts.map +1 -1
  276. package/dist/src/state/state.d.ts.map +1 -1
  277. package/dist/src/status/Select.d.ts +2 -2
  278. package/dist/src/status/Select.d.ts.map +1 -1
  279. package/dist/src/status/SelectVariant.d.ts +2 -2
  280. package/dist/src/status/SelectVariant.d.ts.map +1 -1
  281. package/dist/src/status/aether/aggregator.d.ts +1 -1
  282. package/dist/src/status/{core → base}/Aggregator.d.ts.map +1 -1
  283. package/dist/src/status/base/Aggregator.spec.d.ts.map +1 -0
  284. package/dist/src/status/{core → base}/CreateIcon.d.ts.map +1 -1
  285. package/dist/src/status/{core → base}/Indicator.d.ts.map +1 -1
  286. package/dist/src/status/{core → base}/Notification.d.ts.map +1 -1
  287. package/dist/src/status/base/Notification.spec.d.ts.map +1 -0
  288. package/dist/src/status/{core → base}/Summary.d.ts.map +1 -1
  289. package/dist/src/status/{core → base}/colors.d.ts.map +1 -1
  290. package/dist/src/status/{core → base}/external.d.ts.map +1 -1
  291. package/dist/src/status/base/index.d.ts.map +1 -0
  292. package/dist/src/status/external.d.ts +1 -1
  293. package/dist/src/status/queries.d.ts +3 -3
  294. package/dist/src/status/queries.d.ts.map +1 -1
  295. package/dist/src/steps/Steps.d.ts.map +1 -1
  296. package/dist/src/table/Table.d.ts.map +1 -1
  297. package/dist/src/table/cells/Forms.d.ts.map +1 -1
  298. package/dist/src/table/queries.d.ts +3 -3
  299. package/dist/src/table/queries.d.ts.map +1 -1
  300. package/dist/src/tabs/Selector.d.ts.map +1 -1
  301. package/dist/src/tabs/Tabs.d.ts.map +1 -1
  302. package/dist/src/tag/Tag.d.ts.map +1 -1
  303. package/dist/src/task/queries.d.ts +7 -6
  304. package/dist/src/task/queries.d.ts.map +1 -1
  305. package/dist/src/telem/SelectDataType.d.ts.map +1 -1
  306. package/dist/src/telem/aether/context.d.ts +2 -2
  307. package/dist/src/telem/aether/context.d.ts.map +1 -1
  308. package/dist/src/telem/aether/factory.d.ts +2 -2
  309. package/dist/src/telem/aether/factory.d.ts.map +1 -1
  310. package/dist/src/telem/aether/provider.d.ts +4 -14
  311. package/dist/src/telem/aether/provider.d.ts.map +1 -1
  312. package/dist/src/telem/aether/remote.d.ts.map +1 -1
  313. package/dist/src/telem/aether/test/external.d.ts +4 -0
  314. package/dist/src/telem/aether/test/external.d.ts.map +1 -0
  315. package/dist/src/telem/aether/test/factory.d.ts +11 -0
  316. package/dist/src/telem/aether/test/factory.d.ts.map +1 -0
  317. package/dist/src/telem/aether/test/factory.spec.d.ts +2 -0
  318. package/dist/src/telem/aether/test/factory.spec.d.ts.map +1 -0
  319. package/dist/src/telem/aether/test/index.d.ts +2 -0
  320. package/dist/src/telem/aether/test/index.d.ts.map +1 -0
  321. package/dist/src/telem/aether/test/sink.d.ts +18 -0
  322. package/dist/src/telem/aether/test/sink.d.ts.map +1 -0
  323. package/dist/src/telem/aether/test/sink.spec.d.ts +2 -0
  324. package/dist/src/telem/aether/test/sink.spec.d.ts.map +1 -0
  325. package/dist/src/telem/aether/test/source.d.ts +17 -0
  326. package/dist/src/telem/aether/test/source.d.ts.map +1 -0
  327. package/dist/src/telem/aether/test/source.spec.d.ts +2 -0
  328. package/dist/src/telem/aether/test/source.spec.d.ts.map +1 -0
  329. package/dist/src/telem/client/cache/cache.d.ts.map +1 -1
  330. package/dist/src/telem/control/Chip.d.ts.map +1 -1
  331. package/dist/src/telem/control/Controller.d.ts +2 -0
  332. package/dist/src/telem/control/Controller.d.ts.map +1 -1
  333. package/dist/src/telem/control/Indicator.d.ts.map +1 -1
  334. package/dist/src/telem/control/Legend.d.ts +2 -2
  335. package/dist/src/telem/control/aether/controller.d.ts +17 -6
  336. package/dist/src/telem/control/aether/controller.d.ts.map +1 -1
  337. package/dist/src/telem/test/external.d.ts +2 -0
  338. package/dist/src/telem/test/external.d.ts.map +1 -0
  339. package/dist/src/telem/test/index.d.ts +2 -0
  340. package/dist/src/telem/test/index.d.ts.map +1 -0
  341. package/dist/src/telem/test/wrapper.d.ts +9 -0
  342. package/dist/src/telem/test/wrapper.d.ts.map +1 -0
  343. package/dist/src/telem/text/TimeRange.d.ts.map +1 -1
  344. package/dist/src/text/Text.d.ts +1 -1
  345. package/dist/src/text/Text.d.ts.map +1 -1
  346. package/dist/src/text/{core → base}/dimensions.d.ts +5 -5
  347. package/dist/src/text/{core → base}/dimensions.d.ts.map +1 -1
  348. package/dist/src/text/base/dimensions.spec.d.ts.map +1 -0
  349. package/dist/src/text/base/external.d.ts.map +1 -0
  350. package/dist/src/text/base/index.d.ts.map +1 -0
  351. package/dist/src/text/{core → base}/types.d.ts.map +1 -1
  352. package/dist/src/text/external.d.ts +2 -2
  353. package/dist/src/theming/aether/external.d.ts +2 -2
  354. package/dist/src/theming/aether/provider.d.ts +1 -1
  355. package/dist/src/theming/{core → base}/fontString.d.ts +1 -1
  356. package/dist/src/theming/{core → base}/fontString.d.ts.map +1 -1
  357. package/dist/src/theming/{core → base}/theme.d.ts.map +1 -1
  358. package/dist/src/theming/css.d.ts +1 -1
  359. package/dist/src/theming/external.d.ts +1 -1
  360. package/dist/src/tooltip/Config.d.ts.map +1 -1
  361. package/dist/src/tree/Context.d.ts +1 -1
  362. package/dist/src/tree/Tree.d.ts +1 -1
  363. package/dist/src/tree/Tree.d.ts.map +1 -1
  364. package/dist/src/tree/{core.d.ts → base.d.ts} +1 -1
  365. package/dist/src/tree/{core.d.ts.map → base.d.ts.map} +1 -1
  366. package/dist/src/tree/base.spec.d.ts +2 -0
  367. package/dist/src/tree/base.spec.d.ts.map +1 -0
  368. package/dist/src/tree/external.d.ts +1 -1
  369. package/dist/src/triggers/Text.d.ts +2 -2
  370. package/dist/src/user/queries.d.ts +4 -4
  371. package/dist/src/user/queries.d.ts.map +1 -1
  372. package/dist/src/view/index.d.ts +2 -0
  373. package/dist/src/view/index.d.ts.map +1 -0
  374. package/dist/src/view/queries.d.ts +35 -0
  375. package/dist/src/view/queries.d.ts.map +1 -0
  376. package/dist/src/view/queries.spec.d.ts +2 -0
  377. package/dist/src/view/queries.spec.d.ts.map +1 -0
  378. package/dist/src/viewport/Mask.d.ts.map +1 -1
  379. package/dist/src/viewport/SelectMode.d.ts.map +1 -1
  380. package/dist/src/vis/button/aether/button.d.ts +15 -6
  381. package/dist/src/vis/button/aether/button.d.ts.map +1 -1
  382. package/dist/src/vis/button/aether/button.spec.d.ts +2 -0
  383. package/dist/src/vis/button/aether/button.spec.d.ts.map +1 -0
  384. package/dist/src/vis/button/use.d.ts +1 -1
  385. package/dist/src/vis/button/use.d.ts.map +1 -1
  386. package/dist/src/vis/diagram/Diagram.d.ts +6 -6
  387. package/dist/src/vis/diagram/Diagram.d.ts.map +1 -1
  388. package/dist/src/vis/diagram/aether/types.d.ts +2 -2
  389. package/dist/src/vis/diagram/align.d.ts.map +1 -1
  390. package/dist/src/vis/draw2d/canvas.d.ts.map +1 -1
  391. package/dist/src/vis/draw2d/index.d.ts +1 -1
  392. package/dist/src/vis/draw2d/index.d.ts.map +1 -1
  393. package/dist/src/vis/gauge/aether/gauge.d.ts +1 -1
  394. package/dist/src/vis/gauge/use.d.ts +2 -2
  395. package/dist/src/vis/input/aether/input.d.ts +11 -6
  396. package/dist/src/vis/input/aether/input.d.ts.map +1 -1
  397. package/dist/src/vis/input/use.d.ts.map +1 -1
  398. package/dist/src/vis/legend/Container.d.ts.map +1 -1
  399. package/dist/src/vis/legend/Grouped.d.ts.map +1 -1
  400. package/dist/src/vis/legend/Simple.d.ts.map +1 -1
  401. package/dist/src/vis/line/Line.d.ts.map +1 -1
  402. package/dist/src/vis/measure/aether/measure.d.ts +1 -1
  403. package/dist/src/vis/render/loop.d.ts +1 -1
  404. package/dist/src/vis/rule/Rule.d.ts.map +1 -1
  405. package/dist/src/vis/setpoint/aether/setpoint.d.ts +11 -6
  406. package/dist/src/vis/setpoint/aether/setpoint.d.ts.map +1 -1
  407. package/dist/src/vis/setpoint/use.d.ts.map +1 -1
  408. package/dist/src/vis/text/atlas.d.ts.map +1 -1
  409. package/dist/src/vis/toggle/aether/toggle.d.ts +12 -3
  410. package/dist/src/vis/toggle/aether/toggle.d.ts.map +1 -1
  411. package/dist/src/vis/toggle/aether/toggle.spec.d.ts +2 -0
  412. package/dist/src/vis/toggle/aether/toggle.spec.d.ts.map +1 -0
  413. package/dist/src/vis/toggle/use.d.ts +1 -1
  414. package/dist/src/vis/toggle/use.d.ts.map +1 -1
  415. package/dist/src/vis/value/use.d.ts +2 -2
  416. package/dist/src/workspace/queries.d.ts +7 -7
  417. package/dist/src/workspace/queries.d.ts.map +1 -1
  418. package/dist/tabs.cjs +1 -1
  419. package/dist/tabs.js +1 -1
  420. package/dist/text.cjs +1 -1
  421. package/dist/text.js +2 -2
  422. package/dist/theme.css +1 -1
  423. package/dist/theming.cjs +1 -1
  424. package/dist/theming.js +2 -2
  425. package/dist/tree.cjs +1 -1
  426. package/dist/tree.js +1 -1
  427. package/dist/triggers.cjs +1 -1
  428. package/dist/triggers.js +1 -1
  429. package/dist/types-B5-Tni3G.js +82 -0
  430. package/dist/types-C0tUDfsz.cjs +1 -0
  431. package/dist/units-Bd_mf9Ye.cjs +1 -0
  432. package/dist/{units-CgMHbHoA.js → units-CEfK1L7C.js} +1 -1
  433. package/dist/value-0g5Cxim9.cjs +53 -0
  434. package/dist/{value-CzFrd9p6.js → value-C-e017qO.js} +2278 -2285
  435. package/dist/video.cjs +1 -1
  436. package/dist/video.js +1 -1
  437. package/package.json +23 -21
  438. package/dist/Animated-D-pQ3CYh.cjs +0 -1
  439. package/dist/Button-D5aoG3sV.cjs +0 -1
  440. package/dist/Haul-9RVCn3cI.cjs +0 -1
  441. package/dist/Menu-BYca9tGe.cjs +0 -1
  442. package/dist/Menu-CQsrN_mP.js +0 -134
  443. package/dist/Provider-DBg-Li_7.cjs +0 -5
  444. package/dist/Text-DeWvfrdF.cjs +0 -1
  445. package/dist/external-DDHknds-.cjs +0 -1
  446. package/dist/external-DcMOF1Je.cjs +0 -1
  447. package/dist/external-JpvbclD8.cjs +0 -79
  448. package/dist/external-RkrrZXG5.cjs +0 -1
  449. package/dist/hooks-CRSphXSb.cjs +0 -1
  450. package/dist/provider-DHDqgF1B.cjs +0 -76
  451. package/dist/src/arc/handle/Core.d.ts +0 -8
  452. package/dist/src/flux/core/index.d.ts +0 -2
  453. package/dist/src/flux/core/index.d.ts.map +0 -1
  454. package/dist/src/flux/core/store.spec.d.ts.map +0 -1
  455. package/dist/src/flux/core/streamer.spec.d.ts.map +0 -1
  456. package/dist/src/form/synced.d.ts +0 -26
  457. package/dist/src/form/synced.d.ts.map +0 -1
  458. package/dist/src/lineplot/aether/BoundQuerier.d.ts +0 -35
  459. package/dist/src/lineplot/aether/BoundQuerier.d.ts.map +0 -1
  460. package/dist/src/lineplot/useBoundQuerier.d.ts +0 -11
  461. package/dist/src/lineplot/useBoundQuerier.d.ts.map +0 -1
  462. package/dist/src/observe/index.d.ts +0 -2
  463. package/dist/src/observe/index.d.ts.map +0 -1
  464. package/dist/src/observe/use.d.ts +0 -8
  465. package/dist/src/observe/use.d.ts.map +0 -1
  466. package/dist/src/status/core/Aggregator.spec.d.ts.map +0 -1
  467. package/dist/src/status/core/Notification.spec.d.ts.map +0 -1
  468. package/dist/src/status/core/index.d.ts.map +0 -1
  469. package/dist/src/testutil/Aether.d.ts +0 -4
  470. package/dist/src/testutil/Aether.d.ts.map +0 -1
  471. package/dist/src/text/core/dimensions.spec.d.ts.map +0 -1
  472. package/dist/src/text/core/external.d.ts.map +0 -1
  473. package/dist/src/text/core/index.d.ts.map +0 -1
  474. package/dist/src/tree/core.spec.d.ts +0 -2
  475. package/dist/src/tree/core.spec.d.ts.map +0 -1
  476. package/dist/types-8-Mr79SF.cjs +0 -1
  477. package/dist/types-DGaZ_JZb.js +0 -82
  478. package/dist/units-InoNiVrK.cjs +0 -1
  479. package/dist/value-QHhF9WPA.cjs +0 -53
  480. /package/dist/src/flux/{core → base}/client.d.ts +0 -0
  481. /package/dist/src/flux/{core → base}/external.d.ts +0 -0
  482. /package/dist/src/flux/{core → base}/store.d.ts +0 -0
  483. /package/dist/src/flux/{core → base}/store.spec.d.ts +0 -0
  484. /package/dist/src/flux/{core → base}/streamer.spec.d.ts +0 -0
  485. /package/dist/src/flux/{core → base}/types.d.ts +0 -0
  486. /package/dist/src/status/{core → base}/Aggregator.d.ts +0 -0
  487. /package/dist/src/status/{core → base}/Aggregator.spec.d.ts +0 -0
  488. /package/dist/src/status/{core → base}/CreateIcon.d.ts +0 -0
  489. /package/dist/src/status/{core → base}/Indicator.d.ts +0 -0
  490. /package/dist/src/status/{core → base}/Notification.d.ts +0 -0
  491. /package/dist/src/status/{core → base}/Notification.spec.d.ts +0 -0
  492. /package/dist/src/status/{core → base}/Summary.d.ts +0 -0
  493. /package/dist/src/status/{core → base}/colors.d.ts +0 -0
  494. /package/dist/src/status/{core → base}/external.d.ts +0 -0
  495. /package/dist/src/status/{core → base}/index.d.ts +0 -0
  496. /package/dist/src/text/{core → base}/dimensions.spec.d.ts +0 -0
  497. /package/dist/src/text/{core → base}/external.d.ts +0 -0
  498. /package/dist/src/text/{core → base}/index.d.ts +0 -0
  499. /package/dist/src/text/{core → base}/types.d.ts +0 -0
  500. /package/dist/src/theming/{core → base}/theme.d.ts +0 -0
@@ -1,15 +1,15 @@
1
- import { v as h, A as y, N as d, M as k, P as C, y as X, C as q } from "./css-bahPRiQI.js";
1
+ import { E as h, T as C, A as d, S as B, Z as y, b as U, C as q } from "./css-BkBrZtKZ.js";
2
2
  import { z as _ } from "zod";
3
- import { g as x, C as z, U as K, h as W, j as H, L as V } from "./provider-ClhgBr_F.js";
4
- import { a as G } from "./dimensions-qcyzaTKI.js";
5
- const Z = _.object({
3
+ import { g as x, C as z, h as K, j as W, k as Z, L as H } from "./provider-CfFukcDe.js";
4
+ import { a as G } from "./dimensions-qj2CkPTy.js";
5
+ const V = _.object({
6
6
  include: _.string().array().optional(),
7
7
  exclude: _.string().array().optional(),
8
8
  level: _.enum(x.LOG_LEVELS).default("info")
9
9
  }), L = "alamos-provider";
10
10
  class v extends z {
11
11
  static TYPE = "alamos.Provider";
12
- schema = Z;
12
+ schema = V;
13
13
  afterUpdate(t) {
14
14
  if (t.getOptional(L) != null) return;
15
15
  const s = [], { include: i, exclude: r, level: a } = this.state;
@@ -31,7 +31,7 @@ const J = (l, t) => {
31
31
  h.width(l) + t.x * 2,
32
32
  h.height(l) + t.y * 2
33
33
  );
34
- class R {
34
+ class E {
35
35
  scale_;
36
36
  wrapped;
37
37
  atlasRegistry;
@@ -46,7 +46,7 @@ class R {
46
46
  cachedLineJoin = null;
47
47
  cachedMiterLimit = null;
48
48
  dpr;
49
- constructor(t, e, s, i = y.XY.IDENTITY) {
49
+ constructor(t, e, s, i = C.XY.IDENTITY) {
50
50
  this.wrapped = t, this.scale_ = i, this.atlasRegistry = e, this.dpr = s;
51
51
  }
52
52
  get fontStretch() {
@@ -91,7 +91,7 @@ class R {
91
91
  this.wrapped.reset();
92
92
  }
93
93
  applyScale(t) {
94
- return new R(
94
+ return new E(
95
95
  this,
96
96
  this.atlasRegistry,
97
97
  this.dpr,
@@ -438,7 +438,7 @@ class R {
438
438
  }
439
439
  scissor(t, e = d.ZERO) {
440
440
  const s = new $(this.scale_);
441
- return t = T(t, e), s.rect(...d.couple(h.topLeft(t)), ...k.couple(h.dims(t))), this.save(), this.clip(s.getPath()), () => this.restore();
441
+ return t = T(t, e), s.rect(...d.couple(h.topLeft(t)), ...B.couple(h.dims(t))), this.save(), this.clip(s.getPath()), () => this.restore();
442
442
  }
443
443
  setTransform(t, e, s, i, r, a) {
444
444
  this.wrapped.setTransform(t, e, s, i, r, a);
@@ -453,7 +453,7 @@ class R {
453
453
  class $ {
454
454
  scale_;
455
455
  path;
456
- constructor(t = y.XY.IDENTITY, e) {
456
+ constructor(t = C.XY.IDENTITY, e) {
457
457
  this.scale_ = t, e instanceof Path2D || typeof e == "string" ? this.path = new Path2D(e) : this.path = new Path2D();
458
458
  }
459
459
  addPath(t, e) {
@@ -558,7 +558,7 @@ void main(void) {
558
558
  void main(void) {
559
559
  gl_Position = a_position;
560
560
  }
561
- `, P = (l) => new Error(`failed to compile webgl program: ${l}`), tt = new Error("null shader encountered");
561
+ `, D = (l) => new Error(`failed to compile webgl program: ${l}`), tt = new Error("null shader encountered");
562
562
  let et = class {
563
563
  /** The render context used by this program. */
564
564
  renderCtx;
@@ -580,7 +580,7 @@ let et = class {
580
580
  constructor(t, e, s) {
581
581
  this.renderCtx = t;
582
582
  const i = t.gl.createProgram();
583
- if (i == null) throw P("failed to create program");
583
+ if (i == null) throw D("failed to create program");
584
584
  this.prog = i, this.vertShader = e, this.fragShader = s, this.compile();
585
585
  }
586
586
  /** Sets the current program as the active program used by the context. */
@@ -603,7 +603,7 @@ let et = class {
603
603
  * @param value - The value to set.
604
604
  */
605
605
  uniformColor(t, e) {
606
- this.renderCtx.gl.uniform4fv(this.getUniformLoc(t), C.rgba1(e));
606
+ this.renderCtx.gl.uniform4fv(this.getUniformLoc(t), y.rgba1(e));
607
607
  }
608
608
  getUniformLoc(t) {
609
609
  const e = this.uniformLocCache.get(t);
@@ -621,7 +621,7 @@ let et = class {
621
621
  if (i == null) throw tt;
622
622
  if (s.shaderSource(i, t), s.compileShader(i), !s.getShaderParameter(i, s.COMPILE_STATUS)) {
623
623
  const a = s.getShaderInfoLog(i);
624
- throw s.deleteShader(i), P(a ?? "unknown");
624
+ throw s.deleteShader(i), D(a ?? "unknown");
625
625
  }
626
626
  s.attachShader(this.prog, i);
627
627
  }
@@ -642,7 +642,7 @@ class it extends et {
642
642
  t.bindVertexArray(s), t.enableVertexAttribArray(e), t.vertexAttribPointer(e, 2, t.FLOAT, !1, 0, 0), this.setAsActive(), t.drawArrays(t.TRIANGLES, 0, 3);
643
643
  }
644
644
  }
645
- const D = { high: 1, low: 0 };
645
+ const P = { high: 1, low: 0 };
646
646
  class rt {
647
647
  /** Stores the current requests for rendering. */
648
648
  requests = /* @__PURE__ */ new Map();
@@ -675,7 +675,7 @@ class rt {
675
675
  const e = this.requests.get(t.key);
676
676
  if (e == null) this.requests.set(t.key, t);
677
677
  else {
678
- const s = D[t.priority] >= D[e.priority], i = t.canvases.length >= e.canvases.length;
678
+ const s = P[t.priority] >= P[e.priority], i = t.canvases.length >= e.canvases.length;
679
679
  s && i && this.requests.set(t.key, t);
680
680
  }
681
681
  }
@@ -724,23 +724,23 @@ class b {
724
724
  // A map of characters to their index in the atlas.
725
725
  charMap;
726
726
  // The default characters to include in the atlas.
727
- static DEFAULT_CHARS = "0123456789.:-µmsNa∞ᴇABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz%";
727
+ static DEFAULT_CHARS = "0123456789.:-°µmsNa∞ᴇABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz%";
728
728
  constructor(t) {
729
729
  const { font: e, characters: s = b.DEFAULT_CHARS, textColor: i } = t;
730
730
  this.charMap = /* @__PURE__ */ new Map();
731
- const r = X.unique(Array.from(s)), n = new OffscreenCanvas(1, 1).getContext("2d");
731
+ const r = U.unique(Array.from(s)), n = new OffscreenCanvas(1, 1).getContext("2d");
732
732
  n.font = e;
733
733
  const o = n.measureText("0");
734
734
  this.charDims = G(o), this.charDims.width += S, this.charDims.height += S;
735
- const p = r.length, u = this.charDims.width, m = this.charDims.height, c = Math.ceil(Math.sqrt(p)), E = Math.ceil(p / c);
735
+ const p = r.length, u = this.charDims.width, m = this.charDims.height, c = Math.ceil(Math.sqrt(p)), R = Math.ceil(p / c);
736
736
  this.atlas = new OffscreenCanvas(
737
737
  u * c * g,
738
- m * (E + 1) * g
738
+ m * (R + 1) * g
739
739
  );
740
740
  const f = this.atlas.getContext("2d");
741
- f.scale(g, g), f.font = e, f.textBaseline = "alphabetic", f.textAlign = "left", f.fillStyle = C.hex(i), f.clearRect(0, 0, this.atlas.width, this.atlas.height), r.forEach((O, A) => {
742
- const M = A % c, Y = Math.floor(A / c), N = M * u, U = (Y + 1) * m;
743
- f.fillText(O, N, U), this.charMap.set(O, A);
741
+ f.scale(g, g), f.font = e, f.textBaseline = "alphabetic", f.textAlign = "left", f.fillStyle = y.hex(i), f.clearRect(0, 0, this.atlas.width, this.atlas.height), r.forEach((O, A) => {
742
+ const M = A % c, Y = Math.floor(A / c), N = M * u, X = (Y + 1) * m;
743
+ f.fillText(O, N, X), this.charMap.set(O, A);
744
744
  });
745
745
  }
746
746
  fillText(t, e, s, i) {
@@ -777,7 +777,7 @@ class at {
777
777
  * atlas does not exist in the registry, it is created and added to the registry.
778
778
  */
779
779
  get(t) {
780
- const e = `${t.font}-${C.hex(t.textColor)}-${t.characters}`;
780
+ const e = `${t.font}-${y.hex(t.textColor)}-${t.characters}`;
781
781
  if (this.atlases.has(e)) return this.atlases.get(e);
782
782
  const s = new b(t);
783
783
  return this.atlases.set(e, s), s;
@@ -816,7 +816,7 @@ class w {
816
816
  r,
817
817
  a,
818
818
  W(t),
819
- H(t)
819
+ Z(t)
820
820
  );
821
821
  return t.set(w.CONTEXT_KEY, n), n;
822
822
  }
@@ -826,12 +826,12 @@ class w {
826
826
  if (o == null) throw new Error("Could not get 2D context");
827
827
  const p = new at();
828
828
  this.lower2d = F(
829
- new R(o, p, this.dpr)
829
+ new E(o, p, this.dpr)
830
830
  );
831
831
  const u = this.upper2dCanvas.getContext("2d");
832
832
  if (u == null) throw new Error("Could not get 2D context");
833
833
  this.upper2d = F(
834
- new R(u, p, this.dpr)
834
+ new E(u, p, this.dpr)
835
835
  );
836
836
  const m = {
837
837
  preserveDrawingBuffer: !0,
@@ -844,11 +844,11 @@ class w {
844
844
  variant: "error",
845
845
  message: "WebGL context lost"
846
846
  });
847
- const E = () => {
847
+ const R = () => {
848
848
  this.gl.flush(), this.gl.finish();
849
849
  };
850
850
  this.loop = new rt({
851
- afterRender: E,
851
+ afterRender: R,
852
852
  instrumentation: this.instrumentation,
853
853
  handleError: n
854
854
  }), this.region = h.ZERO, this.os === "Windows" && (this.clearProgram = new it(this));
@@ -882,11 +882,11 @@ class w {
882
882
  * in the canvas.
883
883
  */
884
884
  scaleRegion(t) {
885
- return new y.XY(
885
+ return new C.XY(
886
886
  // Accept a value in decimal.
887
- y.Scale.scale(0, 1).scale(h.width(t)).translate(h.left(t)).reBound(h.width(this.region)).scale(-1, 1),
887
+ C.Scale.scale(0, 1).scale(h.width(t)).translate(h.left(t)).reBound(h.width(this.region)).scale(-1, 1),
888
888
  // Accept a value in decimal.
889
- y.Scale.scale(0, 1).scale(h.height(t)).invert().translate(h.top(t)).reBound(h.height(this.region)).scale(-1, 1).invert()
889
+ C.Scale.scale(0, 1).scale(h.height(t)).invert().translate(h.top(t)).reBound(h.height(this.region)).scale(-1, 1).invert()
890
890
  );
891
891
  }
892
892
  scissor(t, e = d.ZERO, s) {
@@ -906,18 +906,18 @@ class w {
906
906
  }
907
907
  eraseGL(t, e = d.ZERO) {
908
908
  const { gl: s } = this, i = this.scissorGL(T(t, e));
909
- s.clearColor(...C.rgba1(C.ZERO)), s.clear(s.COLOR_BUFFER_BIT), this.os === "Windows" && this.clearProgram?.exec(), i();
909
+ s.clearColor(...y.rgba1(y.ZERO)), s.clear(s.COLOR_BUFFER_BIT), this.os === "Windows" && this.clearProgram?.exec(), i();
910
910
  }
911
911
  eraseCanvas(t, e, s = d.ZERO) {
912
912
  const i = T(e, s);
913
- t.clearRect(...d.couple(h.topLeft(i)), ...k.couple(h.dims(i)));
913
+ t.clearRect(...d.couple(h.topLeft(i)), ...B.couple(h.dims(i)));
914
914
  }
915
915
  }
916
916
  const ht = _.object({
917
917
  region: h.box,
918
918
  enabled: _.boolean().default(!1)
919
919
  }), I = ["gl", "lower2d", "upper2d"];
920
- class B extends V {
920
+ class k extends H {
921
921
  static TYPE = "eraser";
922
922
  schema = ht;
923
923
  afterUpdate(t) {
@@ -939,17 +939,17 @@ class B extends V {
939
939
  }
940
940
  }
941
941
  const ut = {
942
- [B.TYPE]: B
942
+ [k.TYPE]: k
943
943
  };
944
944
  export {
945
945
  w as C,
946
- B as E,
946
+ k as E,
947
947
  et as G,
948
948
  rt as L,
949
949
  v as P,
950
950
  ut as R,
951
951
  pt as a,
952
952
  ht as e,
953
- Z as p,
953
+ V as p,
954
954
  J as u
955
955
  };
@@ -1,11 +1,11 @@
1
- "use strict";const a=require("./css-BVgFAmaj.cjs"),_=require("zod"),d=require("./provider-DHDqgF1B.cjs"),F=require("./dimensions-SDA3fM2T.cjs"),I=_.z.object({include:_.z.string().array().optional(),exclude:_.z.string().array().optional(),level:_.z.enum(d.g.LOG_LEVELS).default("info")}),R="alamos-provider";class E extends d.Composite{static TYPE="alamos.Provider";schema=I;afterUpdate(t){if(t.getOptional(R)!=null)return;const s=[],{include:i,exclude:r,level:n}=this.state;(i!=null||r!=null)&&s.push(d.g.logLevelKeyFiler({include:i,exclude:r})),n!=null&&s.push(d.g.logThresholdFilter(n)),s.length===0&&s.push(()=>!1),this.internal.ins=new d.g.Instrumentation({key:"aether",logger:new d.g.Logger({filters:s})}),t.set(R,this.internal.ins)}}const B=(l,t)=>{const e=l.get(R);if(e==null)throw new Error("No instrumentation provider");return t==null?e:e.child(t)},U={[E.TYPE]:E},y=(l,t)=>a.vu.construct(a.vu.left(l)-t.x,a.vu.top(l)-t.y,a.vu.width(l)+t.x*2,a.vu.height(l)+t.y*2);class C{scale_;wrapped;atlasRegistry;cachedFont=null;cachedFillStyle=null;cachedStrokeStyle=null;cachedLineWidth=null;cachedGlobalAlpha=null;cachedTextAlign=null;cachedTextBaseline=null;cachedLineCap=null;cachedLineJoin=null;cachedMiterLimit=null;dpr;constructor(t,e,s,i=a.Au.XY.IDENTITY){this.wrapped=t,this.scale_=i,this.atlasRegistry=e,this.dpr=s}get fontStretch(){return this.wrapped.fontStretch}set fontStretch(t){this.wrapped.fontStretch=t}get fontVariantCaps(){return this.wrapped.fontVariantCaps}set fontVariantCaps(t){this.wrapped.fontVariantCaps=t}isContextLost(){return this.wrapped.isContextLost()}get wordSpacing(){return this.wrapped.wordSpacing}set wordSpacing(t){this.wrapped.wordSpacing=t}get letterSpacing(){return this.wrapped.letterSpacing}set letterSpacing(t){this.wrapped.letterSpacing=t}get textRendering(){return this.wrapped.textRendering}set textRendering(t){this.wrapped.textRendering=t}checkAtlasFillStyle(t=!1){return t&&typeof this.fillStyle=="string"?[!0,this.fillStyle]:(t&&console.warn("attempted to use a text atlas with a gradient fill style. This is not supported. Falling back to default canvas fill."),[!1,null])}reset(){this.wrapped.reset()}applyScale(t){return new C(this,this.atlasRegistry,this.dpr,t)}get canvas(){return this.wrapped.canvas}get miterLimit(){return this.cachedMiterLimit??this.wrapped.miterLimit}set miterLimit(t){const e=this.scale_.x.dim(t);e!==this.cachedMiterLimit&&(this.cachedMiterLimit=e,this.wrapped.miterLimit=e)}get globalAlpha(){return this.cachedGlobalAlpha??this.wrapped.globalAlpha}set globalAlpha(t){t!==this.cachedGlobalAlpha&&(this.cachedGlobalAlpha=t,this.wrapped.globalAlpha=t)}get globalCompositeOperation(){return this.wrapped.globalCompositeOperation}set globalCompositeOperation(t){this.wrapped.globalCompositeOperation=t}get fillStyle(){return this.cachedFillStyle??this.wrapped.fillStyle}set fillStyle(t){t!==this.cachedFillStyle&&(this.cachedFillStyle=t,this.wrapped.fillStyle=t)}get strokeStyle(){return this.cachedStrokeStyle??this.wrapped.strokeStyle}set strokeStyle(t){t!==this.cachedStrokeStyle&&(this.cachedStrokeStyle=t,this.wrapped.strokeStyle=t)}drawImage(t,e,s,i,r,n,h,o,p){this.wrapped.drawImage(t,e,s,i,r,n!=null?this.scale_.x.pos(n):n,h!=null?this.scale_.y.pos(h):h,o!=null?this.scale_.x.dim(o):o,p!=null?this.scale_.y.dim(p):p)}beginPath(){this.wrapped.beginPath()}clip(t,e){this.wrapped.clip(t,e)}fill(t,e){if(t==null)return this.wrapped.fill();this.wrapped.fill(t,e)}isPointInPath(t,e,s,i){return this.wrapped.isPointInPath(t,e,s,i)}isPointInStroke(t,e,s){return this.wrapped.isPointInStroke(t,e,s)}stroke(t){if(t==null)return this.wrapped.stroke();this.wrapped.stroke(t)}createConicGradient(t,e,s){return this.wrapped.createConicGradient(t,e,s)}createLinearGradient(t,e,s,i){return this.wrapped.createLinearGradient(t,e,s,i)}createPattern(t,e){return this.wrapped.createPattern(t,e)}createRadialGradient(t,e,s,i,r,n){return this.wrapped.createRadialGradient(t,e,s,i,r,n)}get filter(){return this.wrapped.filter}set filter(t){this.wrapped.filter=t}createImageData(t,e,s){return this.wrapped.createImageData(t,e,s)}getImageData(t,e,s,i,r){return this.wrapped.getImageData(t,e,s,i,r)}putImageData(t,e,s,i,r,n,h){this.wrapped.putImageData(t,e,s,i,r,n,h)}get imageSmoothingEnabled(){return this.wrapped.imageSmoothingEnabled}set imageSmoothingEnabled(t){this.wrapped.imageSmoothingEnabled=t}get imageSmoothingQuality(){return this.wrapped.imageSmoothingQuality}set imageSmoothingQuality(t){this.wrapped.imageSmoothingQuality=t}arc(t,e,s,i,r,n){this.wrapped.arc(this.scale_.x.pos(t),this.scale_.y.pos(e),this.scale_.x.dim(s),i,r,n)}arcTo(t,e,s,i,r){this.wrapped.arcTo(this.scale_.x.pos(t),this.scale_.y.pos(e),this.scale_.x.pos(s),this.scale_.y.pos(i),this.scale_.x.dim(r))}bezierCurveTo(t,e,s,i,r,n){this.wrapped.bezierCurveTo(this.scale_.x.pos(t),this.scale_.y.pos(e),this.scale_.x.pos(s),this.scale_.y.pos(i),this.scale_.x.pos(r),this.scale_.y.pos(n))}closePath(){this.wrapped.closePath()}ellipse(t,e,s,i,r,n,h,o){this.wrapped.ellipse(this.scale_.x.pos(t),this.scale_.y.pos(e),this.scale_.x.dim(s),this.scale_.y.dim(i),r,n,h,o)}lineTo(t,e){this.wrapped.lineTo(this.scale_.x.pos(t),this.scale_.y.pos(e))}moveTo(t,e){this.wrapped.moveTo(this.scale_.x.pos(t),this.scale_.y.pos(e))}quadraticCurveTo(t,e,s,i){this.wrapped.quadraticCurveTo(this.scale_.x.pos(t),this.scale_.y.pos(e),this.scale_.x.pos(s),this.scale_.y.pos(i))}rect(t,e,s,i){this.wrapped.rect(this.scale_.x.pos(t),this.scale_.y.pos(e),this.scale_.x.dim(s),this.scale_.y.dim(i))}roundRect(t,e,s,i,r){this.wrapped.roundRect(this.scale_.x.pos(t),this.scale_.y.pos(e),this.scale_.x.dim(s),this.scale_.y.dim(i),typeof r=="number"?this.scale_.x.dim(r):r)}get lineCap(){return this.cachedLineCap??this.wrapped.lineCap}set lineCap(t){t!==this.cachedLineCap&&(this.cachedLineCap=t,this.wrapped.lineCap=t)}get lineDashOffset(){return this.wrapped.lineDashOffset}set lineDashOffset(t){this.wrapped.lineDashOffset=this.scale_.x.dim(t)}get lineJoin(){return this.cachedLineJoin??this.wrapped.lineJoin}set lineJoin(t){t!==this.cachedLineJoin&&(this.cachedLineJoin=t,this.wrapped.lineJoin=t)}get lineWidth(){return this.cachedLineWidth??this.wrapped.lineWidth}set lineWidth(t){const e=this.scale_.x.dim(t);e!==this.cachedLineWidth&&(this.cachedLineWidth=e,this.wrapped.lineWidth=e)}getLineDash(){return this.wrapped.getLineDash()}setLineDash(t){const e=Array.from(t).map(s=>this.scale_.x.dim(s));this.wrapped.setLineDash(e)}clearRect(t,e,s,i){this.wrapped.clearRect(t,e,s,i)}fillRect(t,e,s,i){this.wrapped.fillRect(this.scale_.x.pos(t),this.scale_.y.pos(e),this.scale_.x.dim(s),this.scale_.y.dim(i))}strokeRect(t,e,s,i){this.wrapped.strokeRect(this.scale_.x.pos(t),this.scale_.y.pos(e),this.scale_.x.dim(s),this.scale_.y.dim(i))}get shadowBlur(){return this.wrapped.shadowBlur}set shadowBlur(t){this.wrapped.shadowBlur=t}get shadowColor(){return this.wrapped.shadowColor}set shadowColor(t){this.wrapped.shadowColor=t}get shadowOffsetX(){return this.wrapped.shadowOffsetX}set shadowOffsetX(t){this.wrapped.shadowOffsetX=t}get shadowOffsetY(){return this.wrapped.shadowOffsetY}restore(){this.cachedFillStyle=null,this.cachedStrokeStyle=null,this.cachedLineWidth=null,this.cachedGlobalAlpha=null,this.cachedTextAlign=null,this.cachedTextBaseline=null,this.cachedLineCap=null,this.cachedLineJoin=null,this.cachedMiterLimit=null,this.cachedFont=null,this.wrapped.restore()}save(){this.wrapped.save()}fillText(t,e,s,i,r={}){const[n,h]=this.checkAtlasFillStyle(r.useAtlas);if(n){this.atlasRegistry.get({font:this.font,textColor:h}).fillText(this,t,e,s);return}this.wrapped.fillText(t,this.scale_.x.pos(e),this.scale_.y.pos(s),i!=null?this.scale_.x.dim(i):void 0)}measureText(t){return this.wrapped.measureText(t)}textDimensions(t,e={}){const[s,i]=this.checkAtlasFillStyle(e.useAtlas);return s?this.atlasRegistry.get({font:this.font,textColor:i}).measureText(t):F.dimensionsFromMetrics(this.measureText(t))}strokeText(t,e,s,i){this.wrapped.strokeText(t,this.scale_.x.pos(e),this.scale_.y.pos(s),i!=null?this.scale_.x.dim(i):void 0)}get direction(){return this.wrapped.direction}set direction(t){this.wrapped.direction=t}get font(){return this.cachedFont!=null?this.cachedFont:this.wrapped.font}set font(t){t!==this.cachedFont&&(this.cachedFont=t,this.wrapped.font=this.cachedFont)}get fontKerning(){return this.wrapped.fontKerning}set fontKerning(t){this.wrapped.fontKerning=t}get textAlign(){return this.cachedTextAlign??this.wrapped.textAlign}set textAlign(t){t!==this.cachedTextAlign&&(this.cachedTextAlign=t,this.wrapped.textAlign=t)}get textBaseline(){return this.cachedTextBaseline??this.wrapped.textBaseline}set textBaseline(t){t!==this.cachedTextBaseline&&(this.cachedTextBaseline=t,this.wrapped.textBaseline=t)}getTransform(){return this.wrapped.getTransform()}resetTransform(){this.wrapped.resetTransform()}rotate(t){this.wrapped.rotate(t)}scale(t,e){this.wrapped.scale(t,e),this.dpr=t}scissor(t,e=a.Nu.ZERO){const s=new X(this.scale_);return t=y(t,e),s.rect(...a.Nu.couple(a.vu.topLeft(t)),...a.Mu.couple(a.vu.dims(t))),this.save(),this.clip(s.getPath()),()=>this.restore()}setTransform(t,e,s,i,r,n){this.wrapped.setTransform(t,e,s,i,r,n)}transform(t,e,s,i,r,n){this.wrapped.transform(t,e,s,i,r,n)}translate(t,e){this.wrapped.translate(t,e)}}class X{scale_;path;constructor(t=a.Au.XY.IDENTITY,e){this.scale_=t,e instanceof Path2D||typeof e=="string"?this.path=new Path2D(e):this.path=new Path2D}addPath(t,e){this.path.addPath(t,e)}arc(t,e,s,i,r,n){this.path.arc(this.scale_.x.pos(t),this.scale_.y.pos(e),this.scale_.x.dim(s),i,r,n)}arcTo(t,e,s,i,r){this.path.arcTo(this.scale_.x.pos(t),this.scale_.y.pos(e),this.scale_.x.pos(s),this.scale_.y.pos(i),this.scale_.x.dim(r))}bezierCurveTo(t,e,s,i,r,n){this.path.bezierCurveTo(this.scale_.x.pos(t),this.scale_.y.pos(e),this.scale_.x.pos(s),this.scale_.y.pos(i),this.scale_.x.pos(r),this.scale_.y.pos(n))}closePath(){this.path.closePath()}ellipse(t,e,s,i,r,n,h,o){this.path.ellipse(this.scale_.x.pos(t),this.scale_.y.pos(e),this.scale_.x.dim(s),this.scale_.y.dim(i),r,n,h,o)}lineTo(t,e){this.path.lineTo(this.scale_.x.pos(t),this.scale_.y.pos(e))}moveTo(t,e){this.path.moveTo(this.scale_.x.pos(t),this.scale_.y.pos(e))}quadraticCurveTo(t,e,s,i){this.path.quadraticCurveTo(this.scale_.x.pos(t),this.scale_.y.pos(e),this.scale_.x.pos(s),this.scale_.y.pos(i))}rect(t,e,s,i){this.path.rect(this.scale_.x.pos(t),this.scale_.y.pos(e),this.scale_.x.dim(s),this.scale_.y.dim(i))}roundRect(t,e,s,i,r){const n=this.scaleRadii(r);this.path.roundRect(this.scale_.x.pos(t),this.scale_.y.pos(e),this.scale_.x.dim(s),this.scale_.y.dim(i),n)}scaleRadii(t){return t==null?t:typeof t=="number"?this.scale_.x.dim(t):Array.isArray(t)?t.map(e=>this.scaleRadius(e)):this.scaleRadius(t)}scaleRadius(t){return typeof t=="number"?this.scale_.x.dim(t):{x:this.scale_.x.dim(t.x??0),y:this.scale_.y.dim(t.y??0)}}getPath(){return this.path}}const K=`precision mediump float;
1
+ "use strict";const a=require("./css-D3NdC2sx.cjs"),_=require("zod"),d=require("./provider-BmDwHwF4.cjs"),F=require("./dimensions-C7b02rFi.cjs"),I=_.z.object({include:_.z.string().array().optional(),exclude:_.z.string().array().optional(),level:_.z.enum(d.g.LOG_LEVELS).default("info")}),T="alamos-provider";class A extends d.Composite{static TYPE="alamos.Provider";schema=I;afterUpdate(t){if(t.getOptional(T)!=null)return;const s=[],{include:i,exclude:r,level:n}=this.state;(i!=null||r!=null)&&s.push(d.g.logLevelKeyFiler({include:i,exclude:r})),n!=null&&s.push(d.g.logThresholdFilter(n)),s.length===0&&s.push(()=>!1),this.internal.ins=new d.g.Instrumentation({key:"aether",logger:new d.g.Logger({filters:s})}),t.set(T,this.internal.ins)}}const B=(l,t)=>{const e=l.get(T);if(e==null)throw new Error("No instrumentation provider");return t==null?e:e.child(t)},Z={[A.TYPE]:A},y=(l,t)=>a.Eu.construct(a.Eu.left(l)-t.x,a.Eu.top(l)-t.y,a.Eu.width(l)+t.x*2,a.Eu.height(l)+t.y*2);class C{scale_;wrapped;atlasRegistry;cachedFont=null;cachedFillStyle=null;cachedStrokeStyle=null;cachedLineWidth=null;cachedGlobalAlpha=null;cachedTextAlign=null;cachedTextBaseline=null;cachedLineCap=null;cachedLineJoin=null;cachedMiterLimit=null;dpr;constructor(t,e,s,i=a.Tu.XY.IDENTITY){this.wrapped=t,this.scale_=i,this.atlasRegistry=e,this.dpr=s}get fontStretch(){return this.wrapped.fontStretch}set fontStretch(t){this.wrapped.fontStretch=t}get fontVariantCaps(){return this.wrapped.fontVariantCaps}set fontVariantCaps(t){this.wrapped.fontVariantCaps=t}isContextLost(){return this.wrapped.isContextLost()}get wordSpacing(){return this.wrapped.wordSpacing}set wordSpacing(t){this.wrapped.wordSpacing=t}get letterSpacing(){return this.wrapped.letterSpacing}set letterSpacing(t){this.wrapped.letterSpacing=t}get textRendering(){return this.wrapped.textRendering}set textRendering(t){this.wrapped.textRendering=t}checkAtlasFillStyle(t=!1){return t&&typeof this.fillStyle=="string"?[!0,this.fillStyle]:(t&&console.warn("attempted to use a text atlas with a gradient fill style. This is not supported. Falling back to default canvas fill."),[!1,null])}reset(){this.wrapped.reset()}applyScale(t){return new C(this,this.atlasRegistry,this.dpr,t)}get canvas(){return this.wrapped.canvas}get miterLimit(){return this.cachedMiterLimit??this.wrapped.miterLimit}set miterLimit(t){const e=this.scale_.x.dim(t);e!==this.cachedMiterLimit&&(this.cachedMiterLimit=e,this.wrapped.miterLimit=e)}get globalAlpha(){return this.cachedGlobalAlpha??this.wrapped.globalAlpha}set globalAlpha(t){t!==this.cachedGlobalAlpha&&(this.cachedGlobalAlpha=t,this.wrapped.globalAlpha=t)}get globalCompositeOperation(){return this.wrapped.globalCompositeOperation}set globalCompositeOperation(t){this.wrapped.globalCompositeOperation=t}get fillStyle(){return this.cachedFillStyle??this.wrapped.fillStyle}set fillStyle(t){t!==this.cachedFillStyle&&(this.cachedFillStyle=t,this.wrapped.fillStyle=t)}get strokeStyle(){return this.cachedStrokeStyle??this.wrapped.strokeStyle}set strokeStyle(t){t!==this.cachedStrokeStyle&&(this.cachedStrokeStyle=t,this.wrapped.strokeStyle=t)}drawImage(t,e,s,i,r,n,h,o,p){this.wrapped.drawImage(t,e,s,i,r,n!=null?this.scale_.x.pos(n):n,h!=null?this.scale_.y.pos(h):h,o!=null?this.scale_.x.dim(o):o,p!=null?this.scale_.y.dim(p):p)}beginPath(){this.wrapped.beginPath()}clip(t,e){this.wrapped.clip(t,e)}fill(t,e){if(t==null)return this.wrapped.fill();this.wrapped.fill(t,e)}isPointInPath(t,e,s,i){return this.wrapped.isPointInPath(t,e,s,i)}isPointInStroke(t,e,s){return this.wrapped.isPointInStroke(t,e,s)}stroke(t){if(t==null)return this.wrapped.stroke();this.wrapped.stroke(t)}createConicGradient(t,e,s){return this.wrapped.createConicGradient(t,e,s)}createLinearGradient(t,e,s,i){return this.wrapped.createLinearGradient(t,e,s,i)}createPattern(t,e){return this.wrapped.createPattern(t,e)}createRadialGradient(t,e,s,i,r,n){return this.wrapped.createRadialGradient(t,e,s,i,r,n)}get filter(){return this.wrapped.filter}set filter(t){this.wrapped.filter=t}createImageData(t,e,s){return this.wrapped.createImageData(t,e,s)}getImageData(t,e,s,i,r){return this.wrapped.getImageData(t,e,s,i,r)}putImageData(t,e,s,i,r,n,h){this.wrapped.putImageData(t,e,s,i,r,n,h)}get imageSmoothingEnabled(){return this.wrapped.imageSmoothingEnabled}set imageSmoothingEnabled(t){this.wrapped.imageSmoothingEnabled=t}get imageSmoothingQuality(){return this.wrapped.imageSmoothingQuality}set imageSmoothingQuality(t){this.wrapped.imageSmoothingQuality=t}arc(t,e,s,i,r,n){this.wrapped.arc(this.scale_.x.pos(t),this.scale_.y.pos(e),this.scale_.x.dim(s),i,r,n)}arcTo(t,e,s,i,r){this.wrapped.arcTo(this.scale_.x.pos(t),this.scale_.y.pos(e),this.scale_.x.pos(s),this.scale_.y.pos(i),this.scale_.x.dim(r))}bezierCurveTo(t,e,s,i,r,n){this.wrapped.bezierCurveTo(this.scale_.x.pos(t),this.scale_.y.pos(e),this.scale_.x.pos(s),this.scale_.y.pos(i),this.scale_.x.pos(r),this.scale_.y.pos(n))}closePath(){this.wrapped.closePath()}ellipse(t,e,s,i,r,n,h,o){this.wrapped.ellipse(this.scale_.x.pos(t),this.scale_.y.pos(e),this.scale_.x.dim(s),this.scale_.y.dim(i),r,n,h,o)}lineTo(t,e){this.wrapped.lineTo(this.scale_.x.pos(t),this.scale_.y.pos(e))}moveTo(t,e){this.wrapped.moveTo(this.scale_.x.pos(t),this.scale_.y.pos(e))}quadraticCurveTo(t,e,s,i){this.wrapped.quadraticCurveTo(this.scale_.x.pos(t),this.scale_.y.pos(e),this.scale_.x.pos(s),this.scale_.y.pos(i))}rect(t,e,s,i){this.wrapped.rect(this.scale_.x.pos(t),this.scale_.y.pos(e),this.scale_.x.dim(s),this.scale_.y.dim(i))}roundRect(t,e,s,i,r){this.wrapped.roundRect(this.scale_.x.pos(t),this.scale_.y.pos(e),this.scale_.x.dim(s),this.scale_.y.dim(i),typeof r=="number"?this.scale_.x.dim(r):r)}get lineCap(){return this.cachedLineCap??this.wrapped.lineCap}set lineCap(t){t!==this.cachedLineCap&&(this.cachedLineCap=t,this.wrapped.lineCap=t)}get lineDashOffset(){return this.wrapped.lineDashOffset}set lineDashOffset(t){this.wrapped.lineDashOffset=this.scale_.x.dim(t)}get lineJoin(){return this.cachedLineJoin??this.wrapped.lineJoin}set lineJoin(t){t!==this.cachedLineJoin&&(this.cachedLineJoin=t,this.wrapped.lineJoin=t)}get lineWidth(){return this.cachedLineWidth??this.wrapped.lineWidth}set lineWidth(t){const e=this.scale_.x.dim(t);e!==this.cachedLineWidth&&(this.cachedLineWidth=e,this.wrapped.lineWidth=e)}getLineDash(){return this.wrapped.getLineDash()}setLineDash(t){const e=Array.from(t).map(s=>this.scale_.x.dim(s));this.wrapped.setLineDash(e)}clearRect(t,e,s,i){this.wrapped.clearRect(t,e,s,i)}fillRect(t,e,s,i){this.wrapped.fillRect(this.scale_.x.pos(t),this.scale_.y.pos(e),this.scale_.x.dim(s),this.scale_.y.dim(i))}strokeRect(t,e,s,i){this.wrapped.strokeRect(this.scale_.x.pos(t),this.scale_.y.pos(e),this.scale_.x.dim(s),this.scale_.y.dim(i))}get shadowBlur(){return this.wrapped.shadowBlur}set shadowBlur(t){this.wrapped.shadowBlur=t}get shadowColor(){return this.wrapped.shadowColor}set shadowColor(t){this.wrapped.shadowColor=t}get shadowOffsetX(){return this.wrapped.shadowOffsetX}set shadowOffsetX(t){this.wrapped.shadowOffsetX=t}get shadowOffsetY(){return this.wrapped.shadowOffsetY}restore(){this.cachedFillStyle=null,this.cachedStrokeStyle=null,this.cachedLineWidth=null,this.cachedGlobalAlpha=null,this.cachedTextAlign=null,this.cachedTextBaseline=null,this.cachedLineCap=null,this.cachedLineJoin=null,this.cachedMiterLimit=null,this.cachedFont=null,this.wrapped.restore()}save(){this.wrapped.save()}fillText(t,e,s,i,r={}){const[n,h]=this.checkAtlasFillStyle(r.useAtlas);if(n){this.atlasRegistry.get({font:this.font,textColor:h}).fillText(this,t,e,s);return}this.wrapped.fillText(t,this.scale_.x.pos(e),this.scale_.y.pos(s),i!=null?this.scale_.x.dim(i):void 0)}measureText(t){return this.wrapped.measureText(t)}textDimensions(t,e={}){const[s,i]=this.checkAtlasFillStyle(e.useAtlas);return s?this.atlasRegistry.get({font:this.font,textColor:i}).measureText(t):F.dimensionsFromMetrics(this.measureText(t))}strokeText(t,e,s,i){this.wrapped.strokeText(t,this.scale_.x.pos(e),this.scale_.y.pos(s),i!=null?this.scale_.x.dim(i):void 0)}get direction(){return this.wrapped.direction}set direction(t){this.wrapped.direction=t}get font(){return this.cachedFont!=null?this.cachedFont:this.wrapped.font}set font(t){t!==this.cachedFont&&(this.cachedFont=t,this.wrapped.font=this.cachedFont)}get fontKerning(){return this.wrapped.fontKerning}set fontKerning(t){this.wrapped.fontKerning=t}get textAlign(){return this.cachedTextAlign??this.wrapped.textAlign}set textAlign(t){t!==this.cachedTextAlign&&(this.cachedTextAlign=t,this.wrapped.textAlign=t)}get textBaseline(){return this.cachedTextBaseline??this.wrapped.textBaseline}set textBaseline(t){t!==this.cachedTextBaseline&&(this.cachedTextBaseline=t,this.wrapped.textBaseline=t)}getTransform(){return this.wrapped.getTransform()}resetTransform(){this.wrapped.resetTransform()}rotate(t){this.wrapped.rotate(t)}scale(t,e){this.wrapped.scale(t,e),this.dpr=t}scissor(t,e=a.Au.ZERO){const s=new X(this.scale_);return t=y(t,e),s.rect(...a.Au.couple(a.Eu.topLeft(t)),...a.Su.couple(a.Eu.dims(t))),this.save(),this.clip(s.getPath()),()=>this.restore()}setTransform(t,e,s,i,r,n){this.wrapped.setTransform(t,e,s,i,r,n)}transform(t,e,s,i,r,n){this.wrapped.transform(t,e,s,i,r,n)}translate(t,e){this.wrapped.translate(t,e)}}class X{scale_;path;constructor(t=a.Tu.XY.IDENTITY,e){this.scale_=t,e instanceof Path2D||typeof e=="string"?this.path=new Path2D(e):this.path=new Path2D}addPath(t,e){this.path.addPath(t,e)}arc(t,e,s,i,r,n){this.path.arc(this.scale_.x.pos(t),this.scale_.y.pos(e),this.scale_.x.dim(s),i,r,n)}arcTo(t,e,s,i,r){this.path.arcTo(this.scale_.x.pos(t),this.scale_.y.pos(e),this.scale_.x.pos(s),this.scale_.y.pos(i),this.scale_.x.dim(r))}bezierCurveTo(t,e,s,i,r,n){this.path.bezierCurveTo(this.scale_.x.pos(t),this.scale_.y.pos(e),this.scale_.x.pos(s),this.scale_.y.pos(i),this.scale_.x.pos(r),this.scale_.y.pos(n))}closePath(){this.path.closePath()}ellipse(t,e,s,i,r,n,h,o){this.path.ellipse(this.scale_.x.pos(t),this.scale_.y.pos(e),this.scale_.x.dim(s),this.scale_.y.dim(i),r,n,h,o)}lineTo(t,e){this.path.lineTo(this.scale_.x.pos(t),this.scale_.y.pos(e))}moveTo(t,e){this.path.moveTo(this.scale_.x.pos(t),this.scale_.y.pos(e))}quadraticCurveTo(t,e,s,i){this.path.quadraticCurveTo(this.scale_.x.pos(t),this.scale_.y.pos(e),this.scale_.x.pos(s),this.scale_.y.pos(i))}rect(t,e,s,i){this.path.rect(this.scale_.x.pos(t),this.scale_.y.pos(e),this.scale_.x.dim(s),this.scale_.y.dim(i))}roundRect(t,e,s,i,r){const n=this.scaleRadii(r);this.path.roundRect(this.scale_.x.pos(t),this.scale_.y.pos(e),this.scale_.x.dim(s),this.scale_.y.dim(i),n)}scaleRadii(t){return t==null?t:typeof t=="number"?this.scale_.x.dim(t):Array.isArray(t)?t.map(e=>this.scaleRadius(e)):this.scaleRadius(t)}scaleRadius(t){return typeof t=="number"?this.scale_.x.dim(t):{x:this.scale_.x.dim(t.x??0),y:this.scale_.y.dim(t.y??0)}}getPath(){return this.path}}const U=`precision mediump float;
2
2
 
3
3
  void main(void) {
4
4
  gl_FragColor = vec4(0.0, 0.0, 0.0, 0.0);
5
5
  }
6
- `,W=`attribute vec4 a_position;
6
+ `,K=`attribute vec4 a_position;
7
7
 
8
8
  void main(void) {
9
9
  gl_Position = a_position;
10
10
  }
11
- `,b=l=>new Error(`failed to compile webgl program: ${l}`),Z=new Error("null shader encountered");let k=class{renderCtx;prog;vertShader;fragShader;uniformLocCache=new Map;constructor(t,e,s){this.renderCtx=t;const i=t.gl.createProgram();if(i==null)throw b("failed to create program");this.prog=i,this.vertShader=e,this.fragShader=s,this.compile()}setAsActive(){return this.renderCtx.gl.useProgram(this.prog),()=>this.renderCtx.gl.useProgram(null)}uniformXY(t,e){this.renderCtx.gl.uniform2fv(this.getUniformLoc(t),a.Nu.couple(e))}uniformColor(t,e){this.renderCtx.gl.uniform4fv(this.getUniformLoc(t),a.Pu.rgba1(e))}getUniformLoc(t){const e=this.uniformLocCache.get(t);if(e!=null)return e;const s=this.renderCtx.gl.getUniformLocation(this.prog,t);if(s==null)throw new Error(`unexpected missing uniform ${t}`);return this.uniformLocCache.set(t,s),s}compile(){const t=this.renderCtx.gl;this.compileShader(this.vertShader,t.VERTEX_SHADER),this.compileShader(this.fragShader,t.FRAGMENT_SHADER),t.linkProgram(this.prog)}compileShader(t,e){const s=this.renderCtx.gl,i=s.createShader(e);if(i==null)throw Z;if(s.shaderSource(i,t),s.compileShader(i),!s.getShaderParameter(i,s.COMPILE_STATUS)){const n=s.getShaderInfoLog(i);throw s.deleteShader(i),b(n??"unknown")}s.attachShader(this.prog,i)}};const H=new Float32Array([0,0,0,0,0,0]);class V extends k{positionBuffer;constructor(t){super(t,W,K);const e=t.gl.createBuffer();if(e==null)throw new d.Ut("webgl: failed to create buffer");this.positionBuffer=e,t.gl.bindBuffer(t.gl.ARRAY_BUFFER,this.positionBuffer),t.gl.bufferData(t.gl.ARRAY_BUFFER,H,t.gl.STATIC_DRAW)}exec(){const{gl:t}=this.renderCtx,e=t.getAttribLocation(this.prog,"a_position");t.bindBuffer(t.ARRAY_BUFFER,this.positionBuffer);const s=t.createVertexArray();t.bindVertexArray(s),t.enableVertexAttribArray(e),t.vertexAttribPointer(e,2,t.FLOAT,!1,0,0),this.setAsActive(),t.drawArrays(t.TRIANGLES,0,3)}}const O={high:1,low:0};class G{requests=new Map;cleanup=new Map;afterRender;instrumentation;handleError;constructor({afterRender:t,instrumentation:e=d.g.Instrumentation.NOOP,handleError:s}){this.afterRender=t,this.instrumentation=e,this.handleError=s,this.start()}set(t){const e=this.requests.get(t.key);if(e==null)this.requests.set(t.key,t);else{const s=O[t.priority]>=O[e.priority],i=t.canvases.length>=e.canvases.length;s&&i&&this.requests.set(t.key,t)}}render(){const{requests:t}=this;t.size!==0&&(this.runCleanupsSync(),this.renderSync(),this.requests.clear(),this.afterRender?.())}runCleanupsSync(){const{cleanup:t,requests:e}=this;t.forEach((s,i)=>{const r=e.get(i);r!=null&&(s(r),t.delete(i))})}renderSync(){const{requests:t}=this;t.forEach(e=>{try{const s=e.render();s!=null&&this.cleanup.set(e.key,s)}catch(s){this.handleError(s,"render loop failed")}})}start(){const t=()=>{try{this.render()}catch(e){this.handleError(e,"render loop failed")}requestAnimationFrame(t)};requestAnimationFrame(t)}}const x=2,g=2;class A{atlas;charDims;charMap;static DEFAULT_CHARS="0123456789.:-µmsNa∞ᴇABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz%";constructor(t){const{font:e,characters:s=A.DEFAULT_CHARS,textColor:i}=t;this.charMap=new Map;const r=a.yu.unique(Array.from(s)),h=new OffscreenCanvas(1,1).getContext("2d");h.font=e;const o=h.measureText("0");this.charDims=F.dimensionsFromMetrics(o),this.charDims.width+=x,this.charDims.height+=x;const p=r.length,u=this.charDims.width,m=this.charDims.height,c=Math.ceil(Math.sqrt(p)),S=Math.ceil(p/c);this.atlas=new OffscreenCanvas(u*c*g,m*(S+1)*g);const w=this.atlas.getContext("2d");w.scale(g,g),w.font=e,w.textBaseline="alphabetic",w.textAlign="left",w.fillStyle=a.Pu.hex(i),w.clearRect(0,0,this.atlas.width,this.atlas.height),r.forEach((L,T)=>{const N=T%c,Y=Math.floor(T/c),z=N*u,q=(Y+1)*m;w.fillText(L,z,q),this.charMap.set(L,T)})}fillText(t,e,s,i){const{width:r,height:n}=this.charDims,h=Math.ceil(Math.sqrt(this.charMap.size));t.textAlign==="center"&&(s-=r*e.length/2),t.textBaseline==="middle"&&(i+=n/2);for(let o=0;o<e.length;o++){const p=e[o],u=this.charMap.get(p);if(u===void 0)continue;const m=u%h,c=Math.floor(u/h);t.drawImage(this.atlas,m*r*g,c*n*g+x,r*g,n*g,s+o*r,i-n-x/g,r,n)}}measureText(t){return{width:t.length*this.charDims.width,height:this.charDims.height}}}class J{atlases;constructor(){this.atlases=new Map}get(t){const e=`${t.font}-${a.Pu.hex(t.textColor)}-${t.characters}`;if(this.atlases.has(e))return this.atlases.get(e);const s=new A(t);return this.atlases.set(e,s),s}}const P=l=>(l.textRendering="optimizeSpeed",l.imageSmoothingEnabled=!1,l);class f{glCanvas;upper2dCanvas;lower2dCanvas;gl;lower2d;upper2d;region;dpr;loop;clearProgram;os;static CONTEXT_KEY=a.CSS.B("render-context");instrumentation;static create(t,e,s,i,r){const n=B(t,"render_context"),h=new f(e,s,i,r,n,d.useAdder(t),d.useErrorHandler(t));return t.set(f.CONTEXT_KEY,h),h}constructor(t,e,s,i,r,n,h){this.upper2dCanvas=s,this.lower2dCanvas=e,this.glCanvas=t,this.os=i,this.instrumentation=r,this.dpr=1;const o=this.lower2dCanvas.getContext("2d");if(o==null)throw new Error("Could not get 2D context");const p=new J;this.lower2d=P(new C(o,p,this.dpr));const u=this.upper2dCanvas.getContext("2d");if(u==null)throw new Error("Could not get 2D context");this.upper2d=P(new C(u,p,this.dpr));const m={preserveDrawingBuffer:!0,powerPreference:"high-performance",stencil:!1,depth:!1},c=this.glCanvas.getContext("webgl2",m);if(c==null)throw new Error("Could not get WebGL context");c.disable(c.DEPTH_TEST),c.disable(c.STENCIL_TEST),c.disable(c.CULL_FACE),c.disable(c.DITHER),this.gl=c,this.glCanvas.oncontextlost=()=>n({variant:"error",message:"WebGL context lost"});const S=()=>{this.gl.flush(),this.gl.finish()};this.loop=new G({afterRender:S,instrumentation:this.instrumentation,handleError:h}),this.region=a.vu.ZERO,this.os==="Windows"&&(this.clearProgram=new V(this))}static useOptional(t){return t.getOptional(f.CONTEXT_KEY)}static use(t){return t.get(f.CONTEXT_KEY)}update(t){t.set(f.CONTEXT_KEY,this)}resize(t,e){a.vu.equals(this.region,t)&&this.dpr===e||(this.region=t,this.dpr=e,this.resizeCanvas(this.glCanvas),this.resizeCanvas(this.upper2dCanvas),this.resizeCanvas(this.lower2dCanvas),this.lower2d.scale(this.dpr,this.dpr),this.upper2d.scale(this.dpr,this.dpr),this.gl.viewport(0,0,a.vu.width(t)*e,a.vu.height(t)*e))}resizeCanvas(t){t.width=a.vu.width(this.region)*this.dpr,t.height=a.vu.height(this.region)*this.dpr}get aspect(){return a.vu.aspect(this.region)}scaleRegion(t){return new a.Au.XY(a.Au.Scale.scale(0,1).scale(a.vu.width(t)).translate(a.vu.left(t)).reBound(a.vu.width(this.region)).scale(-1,1),a.Au.Scale.scale(0,1).scale(a.vu.height(t)).invert().translate(a.vu.top(t)).reBound(a.vu.height(this.region)).scale(-1,1).invert())}scissor(t,e=a.Nu.ZERO,s){const i=[];return s.includes("upper2d")&&i.push(this.upper2d.scissor(t,e)),s.includes("lower2d")&&i.push(this.lower2d.scissor(t,e)),s.includes("gl")&&i.push(this.scissorGL(t,e)),()=>i.forEach(r=>r())}scissorGL(t,e=a.Nu.ZERO){return this.gl.enable(this.gl.SCISSOR_TEST),t=y(t,e),this.gl.scissor(a.vu.left(t)*this.dpr,(a.vu.height(this.region)-a.vu.bottom(t))*this.dpr,a.vu.width(t)*this.dpr,a.vu.height(t)*this.dpr),()=>this.gl.disable(this.gl.SCISSOR_TEST)}erase(t,e=a.Nu.ZERO,...s){e=a.Nu.construct(e),s.length===0&&(s=["upper2d","lower2d","gl"]),s.includes("upper2d")&&this.eraseCanvas(this.upper2d,t,e),s.includes("lower2d")&&this.eraseCanvas(this.lower2d,t,e),s.includes("gl")&&this.eraseGL(t,e)}eraseGL(t,e=a.Nu.ZERO){const{gl:s}=this,i=this.scissorGL(y(t,e));s.clearColor(...a.Pu.rgba1(a.Pu.ZERO)),s.clear(s.COLOR_BUFFER_BIT),this.os==="Windows"&&this.clearProgram?.exec(),i()}eraseCanvas(t,e,s=a.Nu.ZERO){const i=y(e,s);t.clearRect(...a.Nu.couple(a.vu.topLeft(i)),...a.Mu.couple(a.vu.dims(i)))}}const M=_.z.object({region:a.vu.box,enabled:_.z.boolean().default(!1)}),D=["gl","lower2d","upper2d"];class v extends d.Leaf{static TYPE="eraser";schema=M;afterUpdate(t){this.deleted||(this.internal.renderCtx=f.use(t),this.renderOnLifecycleChange())}afterDelete(){this.renderOnLifecycleChange()}renderOnLifecycleChange(){this.internal.renderCtx.loop.set({key:`${this.type}-${this.key}`,render:this.render.bind(this),priority:"high",canvases:D})}render(){this.deleted||!this.state.enabled||this.internal.renderCtx.erase(this.state.region,a.Nu.construct(0),...D)}}const $={[v.TYPE]:v};exports.Context=f;exports.Eraser=v;exports.GLProgram=k;exports.Loop=G;exports.Provider=E;exports.REGISTRY=$;exports.REGISTRY$1=U;exports.eraserStateZ=M;exports.providerStateZ=I;exports.useInstrumentation=B;
11
+ `,O=l=>new Error(`failed to compile webgl program: ${l}`),W=new Error("null shader encountered");let k=class{renderCtx;prog;vertShader;fragShader;uniformLocCache=new Map;constructor(t,e,s){this.renderCtx=t;const i=t.gl.createProgram();if(i==null)throw O("failed to create program");this.prog=i,this.vertShader=e,this.fragShader=s,this.compile()}setAsActive(){return this.renderCtx.gl.useProgram(this.prog),()=>this.renderCtx.gl.useProgram(null)}uniformXY(t,e){this.renderCtx.gl.uniform2fv(this.getUniformLoc(t),a.Au.couple(e))}uniformColor(t,e){this.renderCtx.gl.uniform4fv(this.getUniformLoc(t),a.Zu.rgba1(e))}getUniformLoc(t){const e=this.uniformLocCache.get(t);if(e!=null)return e;const s=this.renderCtx.gl.getUniformLocation(this.prog,t);if(s==null)throw new Error(`unexpected missing uniform ${t}`);return this.uniformLocCache.set(t,s),s}compile(){const t=this.renderCtx.gl;this.compileShader(this.vertShader,t.VERTEX_SHADER),this.compileShader(this.fragShader,t.FRAGMENT_SHADER),t.linkProgram(this.prog)}compileShader(t,e){const s=this.renderCtx.gl,i=s.createShader(e);if(i==null)throw W;if(s.shaderSource(i,t),s.compileShader(i),!s.getShaderParameter(i,s.COMPILE_STATUS)){const n=s.getShaderInfoLog(i);throw s.deleteShader(i),O(n??"unknown")}s.attachShader(this.prog,i)}};const H=new Float32Array([0,0,0,0,0,0]);class V extends k{positionBuffer;constructor(t){super(t,K,U);const e=t.gl.createBuffer();if(e==null)throw new d.St("webgl: failed to create buffer");this.positionBuffer=e,t.gl.bindBuffer(t.gl.ARRAY_BUFFER,this.positionBuffer),t.gl.bufferData(t.gl.ARRAY_BUFFER,H,t.gl.STATIC_DRAW)}exec(){const{gl:t}=this.renderCtx,e=t.getAttribLocation(this.prog,"a_position");t.bindBuffer(t.ARRAY_BUFFER,this.positionBuffer);const s=t.createVertexArray();t.bindVertexArray(s),t.enableVertexAttribArray(e),t.vertexAttribPointer(e,2,t.FLOAT,!1,0,0),this.setAsActive(),t.drawArrays(t.TRIANGLES,0,3)}}const v={high:1,low:0};class G{requests=new Map;cleanup=new Map;afterRender;instrumentation;handleError;constructor({afterRender:t,instrumentation:e=d.g.Instrumentation.NOOP,handleError:s}){this.afterRender=t,this.instrumentation=e,this.handleError=s,this.start()}set(t){const e=this.requests.get(t.key);if(e==null)this.requests.set(t.key,t);else{const s=v[t.priority]>=v[e.priority],i=t.canvases.length>=e.canvases.length;s&&i&&this.requests.set(t.key,t)}}render(){const{requests:t}=this;t.size!==0&&(this.runCleanupsSync(),this.renderSync(),this.requests.clear(),this.afterRender?.())}runCleanupsSync(){const{cleanup:t,requests:e}=this;t.forEach((s,i)=>{const r=e.get(i);r!=null&&(s(r),t.delete(i))})}renderSync(){const{requests:t}=this;t.forEach(e=>{try{const s=e.render();s!=null&&this.cleanup.set(e.key,s)}catch(s){this.handleError(s,"render loop failed")}})}start(){const t=()=>{try{this.render()}catch(e){this.handleError(e,"render loop failed")}requestAnimationFrame(t)};requestAnimationFrame(t)}}const x=2,g=2;class L{atlas;charDims;charMap;static DEFAULT_CHARS="0123456789.:-°µmsNa∞ᴇABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz%";constructor(t){const{font:e,characters:s=L.DEFAULT_CHARS,textColor:i}=t;this.charMap=new Map;const r=a.bu.unique(Array.from(s)),h=new OffscreenCanvas(1,1).getContext("2d");h.font=e;const o=h.measureText("0");this.charDims=F.dimensionsFromMetrics(o),this.charDims.width+=x,this.charDims.height+=x;const p=r.length,u=this.charDims.width,m=this.charDims.height,c=Math.ceil(Math.sqrt(p)),S=Math.ceil(p/c);this.atlas=new OffscreenCanvas(u*c*g,m*(S+1)*g);const w=this.atlas.getContext("2d");w.scale(g,g),w.font=e,w.textBaseline="alphabetic",w.textAlign="left",w.fillStyle=a.Zu.hex(i),w.clearRect(0,0,this.atlas.width,this.atlas.height),r.forEach((b,E)=>{const Y=E%c,z=Math.floor(E/c),q=Y*u,N=(z+1)*m;w.fillText(b,q,N),this.charMap.set(b,E)})}fillText(t,e,s,i){const{width:r,height:n}=this.charDims,h=Math.ceil(Math.sqrt(this.charMap.size));t.textAlign==="center"&&(s-=r*e.length/2),t.textBaseline==="middle"&&(i+=n/2);for(let o=0;o<e.length;o++){const p=e[o],u=this.charMap.get(p);if(u===void 0)continue;const m=u%h,c=Math.floor(u/h);t.drawImage(this.atlas,m*r*g,c*n*g+x,r*g,n*g,s+o*r,i-n-x/g,r,n)}}measureText(t){return{width:t.length*this.charDims.width,height:this.charDims.height}}}class J{atlases;constructor(){this.atlases=new Map}get(t){const e=`${t.font}-${a.Zu.hex(t.textColor)}-${t.characters}`;if(this.atlases.has(e))return this.atlases.get(e);const s=new L(t);return this.atlases.set(e,s),s}}const D=l=>(l.textRendering="optimizeSpeed",l.imageSmoothingEnabled=!1,l);class f{glCanvas;upper2dCanvas;lower2dCanvas;gl;lower2d;upper2d;region;dpr;loop;clearProgram;os;static CONTEXT_KEY=a.CSS.B("render-context");instrumentation;static create(t,e,s,i,r){const n=B(t,"render_context"),h=new f(e,s,i,r,n,d.useAdder(t),d.useErrorHandler(t));return t.set(f.CONTEXT_KEY,h),h}constructor(t,e,s,i,r,n,h){this.upper2dCanvas=s,this.lower2dCanvas=e,this.glCanvas=t,this.os=i,this.instrumentation=r,this.dpr=1;const o=this.lower2dCanvas.getContext("2d");if(o==null)throw new Error("Could not get 2D context");const p=new J;this.lower2d=D(new C(o,p,this.dpr));const u=this.upper2dCanvas.getContext("2d");if(u==null)throw new Error("Could not get 2D context");this.upper2d=D(new C(u,p,this.dpr));const m={preserveDrawingBuffer:!0,powerPreference:"high-performance",stencil:!1,depth:!1},c=this.glCanvas.getContext("webgl2",m);if(c==null)throw new Error("Could not get WebGL context");c.disable(c.DEPTH_TEST),c.disable(c.STENCIL_TEST),c.disable(c.CULL_FACE),c.disable(c.DITHER),this.gl=c,this.glCanvas.oncontextlost=()=>n({variant:"error",message:"WebGL context lost"});const S=()=>{this.gl.flush(),this.gl.finish()};this.loop=new G({afterRender:S,instrumentation:this.instrumentation,handleError:h}),this.region=a.Eu.ZERO,this.os==="Windows"&&(this.clearProgram=new V(this))}static useOptional(t){return t.getOptional(f.CONTEXT_KEY)}static use(t){return t.get(f.CONTEXT_KEY)}update(t){t.set(f.CONTEXT_KEY,this)}resize(t,e){a.Eu.equals(this.region,t)&&this.dpr===e||(this.region=t,this.dpr=e,this.resizeCanvas(this.glCanvas),this.resizeCanvas(this.upper2dCanvas),this.resizeCanvas(this.lower2dCanvas),this.lower2d.scale(this.dpr,this.dpr),this.upper2d.scale(this.dpr,this.dpr),this.gl.viewport(0,0,a.Eu.width(t)*e,a.Eu.height(t)*e))}resizeCanvas(t){t.width=a.Eu.width(this.region)*this.dpr,t.height=a.Eu.height(this.region)*this.dpr}get aspect(){return a.Eu.aspect(this.region)}scaleRegion(t){return new a.Tu.XY(a.Tu.Scale.scale(0,1).scale(a.Eu.width(t)).translate(a.Eu.left(t)).reBound(a.Eu.width(this.region)).scale(-1,1),a.Tu.Scale.scale(0,1).scale(a.Eu.height(t)).invert().translate(a.Eu.top(t)).reBound(a.Eu.height(this.region)).scale(-1,1).invert())}scissor(t,e=a.Au.ZERO,s){const i=[];return s.includes("upper2d")&&i.push(this.upper2d.scissor(t,e)),s.includes("lower2d")&&i.push(this.lower2d.scissor(t,e)),s.includes("gl")&&i.push(this.scissorGL(t,e)),()=>i.forEach(r=>r())}scissorGL(t,e=a.Au.ZERO){return this.gl.enable(this.gl.SCISSOR_TEST),t=y(t,e),this.gl.scissor(a.Eu.left(t)*this.dpr,(a.Eu.height(this.region)-a.Eu.bottom(t))*this.dpr,a.Eu.width(t)*this.dpr,a.Eu.height(t)*this.dpr),()=>this.gl.disable(this.gl.SCISSOR_TEST)}erase(t,e=a.Au.ZERO,...s){e=a.Au.construct(e),s.length===0&&(s=["upper2d","lower2d","gl"]),s.includes("upper2d")&&this.eraseCanvas(this.upper2d,t,e),s.includes("lower2d")&&this.eraseCanvas(this.lower2d,t,e),s.includes("gl")&&this.eraseGL(t,e)}eraseGL(t,e=a.Au.ZERO){const{gl:s}=this,i=this.scissorGL(y(t,e));s.clearColor(...a.Zu.rgba1(a.Zu.ZERO)),s.clear(s.COLOR_BUFFER_BIT),this.os==="Windows"&&this.clearProgram?.exec(),i()}eraseCanvas(t,e,s=a.Au.ZERO){const i=y(e,s);t.clearRect(...a.Au.couple(a.Eu.topLeft(i)),...a.Su.couple(a.Eu.dims(i)))}}const M=_.z.object({region:a.Eu.box,enabled:_.z.boolean().default(!1)}),P=["gl","lower2d","upper2d"];class R extends d.Leaf{static TYPE="eraser";schema=M;afterUpdate(t){this.deleted||(this.internal.renderCtx=f.use(t),this.renderOnLifecycleChange())}afterDelete(){this.renderOnLifecycleChange()}renderOnLifecycleChange(){this.internal.renderCtx.loop.set({key:`${this.type}-${this.key}`,render:this.render.bind(this),priority:"high",canvases:P})}render(){this.deleted||!this.state.enabled||this.internal.renderCtx.erase(this.state.region,a.Au.construct(0),...P)}}const $={[R.TYPE]:R};exports.Context=f;exports.Eraser=R;exports.GLProgram=k;exports.Loop=G;exports.Provider=A;exports.REGISTRY=$;exports.REGISTRY$1=Z;exports.eraserStateZ=M;exports.providerStateZ=I;exports.useInstrumentation=B;
package/dist/ether.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("./provider-DHDqgF1B.cjs"),e=require("./value-QHhF9WPA.cjs"),i=require("./css-BVgFAmaj.cjs"),r=require("./eraser-Cbfc1frM.cjs");require("react");require("./types-8-Mr79SF.cjs");const s=require("./fontString-62eEvw4b.cjs"),E=Object.freeze(Object.defineProperty({__proto__:null,Provider:t.Provider,REGISTRY:t.REGISTRY,SYNNAX_DARK:t.SYNNAX_DARK,SYNNAX_LIGHT:t.SYNNAX_LIGHT,SYNNAX_THEMES:t.SYNNAX_THEMES,fontSpecZ:t.fontSpecZ,fontString:s.fontString,themeZ:t.themeZ,use:t.use},Symbol.toStringTag,{value:"Module"})),l=Object.freeze(Object.defineProperty({__proto__:null,Context:r.Context,GLProgram:r.GLProgram,Loop:r.Loop,control:e.control,request:e.request,useOptionalRequestor:e.useOptionalRequestor,useRequestor:e.useRequestor},Symbol.toStringTag,{value:"Module"})),u=Object.freeze(Object.defineProperty({__proto__:null,BoundQuerier:e.BoundQuerier,LinePlot:e.LinePlot,REGISTRY:e.REGISTRY,XAxis:e.XAxis,YAxis:e.YAxis,boundQuerierStateZ:e.boundQuerierStateZ,linePlotStateZ:e.linePlotStateZ,xAxisStateZ:e.xAxisStateZ,yAxisStateZ:e.yAxisStateZ},Symbol.toStringTag,{value:"Module"})),T={[e.FLUX_STORE_KEY$2]:e.FLUX_STORE_CONFIG$2,[e.RELATIONSHIPS_FLUX_STORE_KEY]:e.RELATIONSHIP_FLUX_STORE_CONFIG,[e.RESOURCES_FLUX_STORE_KEY]:e.RESOURCE_FLUX_STORE_CONFIG,[e.FLUX_STORE_KEY$1]:e.FLUX_STORE_CONFIG$1,[e.FLUX_STORE_KEY]:e.FLUX_STORE_CONFIG},a=()=>{const o=new i.ln((S,n)=>postMessage(S,n));onmessage=o.handle.bind(o);const R={...r.REGISTRY$1,...e.REGISTRY$19,...e.REGISTRY$18,...e.REGISTRY$17,...e.REGISTRY$16,...r.REGISTRY,...e.REGISTRY$15,...e.REGISTRY$14,...e.REGISTRY$13,...e.REGISTRY,...e.REGISTRY$12,...e.REGISTRY$11,...e.REGISTRY$10,...e.REGISTRY$9,...t.REGISTRY$1,...e.REGISTRY$8,...e.REGISTRY$7,...t.REGISTRY,...e.REGISTRY$6,...e.REGISTRY$5,...e.REGISTRY$4,...e.REGISTRY$3,...e.REGISTRY$2,...e.REGISTRY$1,...e.createRegistry({storeConfig:T})};t.render({comms:o.route("vis"),registry:R,instrumentation:new t.O({logger:new t._({filters:[t.be("info")]})})})},_=Object.freeze(Object.defineProperty({__proto__:null,render:a},Symbol.toStringTag,{value:"Module"}));exports.aether=t.aether;exports.canvas=e.canvas;exports.diagram=e.Diagram;exports.measure=e.measure;exports.rule=e.aether;exports.synnax=e.provider;exports.telem=e.external;exports.tooltip=e.tooltip;exports.value=e.value;exports.lineplot=u;exports.pluto=_;exports.render=l;exports.theming=E;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("./provider-BmDwHwF4.cjs"),e=require("./value-0g5Cxim9.cjs"),i=require("./css-D3NdC2sx.cjs"),o=require("./eraser-DZxY0pWe.cjs");require("react");require("./types-C0tUDfsz.cjs");const s=require("./fontString-CeR_vHX_.cjs"),l=Object.freeze(Object.defineProperty({__proto__:null,Provider:t.Provider,REGISTRY:t.REGISTRY,SYNNAX_DARK:t.SYNNAX_DARK,SYNNAX_LIGHT:t.SYNNAX_LIGHT,SYNNAX_THEMES:t.SYNNAX_THEMES,fontSpecZ:t.fontSpecZ,fontString:s.fontString,themeZ:t.themeZ,use:t.use},Symbol.toStringTag,{value:"Module"})),E=Object.freeze(Object.defineProperty({__proto__:null,Context:o.Context,GLProgram:o.GLProgram,Loop:o.Loop,control:e.control,request:e.request,useOptionalRequestor:e.useOptionalRequestor,useRequestor:e.useRequestor},Symbol.toStringTag,{value:"Module"})),T=Object.freeze(Object.defineProperty({__proto__:null,LinePlot:e.LinePlot,REGISTRY:e.REGISTRY,XAxis:e.XAxis,YAxis:e.YAxis,linePlotMethodsZ:e.linePlotMethodsZ,linePlotStateZ:e.linePlotStateZ,xAxisStateZ:e.xAxisStateZ,yAxisStateZ:e.yAxisStateZ},Symbol.toStringTag,{value:"Module"})),_={[e.FLUX_STORE_KEY$2]:e.FLUX_STORE_CONFIG$2,[e.RELATIONSHIPS_FLUX_STORE_KEY]:e.RELATIONSHIP_FLUX_STORE_CONFIG,[e.RESOURCES_FLUX_STORE_KEY]:e.RESOURCE_FLUX_STORE_CONFIG,[e.FLUX_STORE_KEY$1]:e.FLUX_STORE_CONFIG$1,[e.FLUX_STORE_KEY]:e.FLUX_STORE_CONFIG},a=()=>{const r=new i.fn((S,n)=>postMessage(S,n));onmessage=r.handle.bind(r);const R={...o.REGISTRY$1,...e.REGISTRY$19,...e.REGISTRY$18,...e.REGISTRY$17,...e.REGISTRY$16,...o.REGISTRY,...e.REGISTRY$15,...e.REGISTRY$14,...e.REGISTRY$13,...e.REGISTRY,...e.REGISTRY$12,...e.REGISTRY$11,...e.REGISTRY$10,...e.REGISTRY$9,...t.REGISTRY$1,...e.REGISTRY$8,...e.REGISTRY$7,...t.REGISTRY,...e.REGISTRY$6,...e.REGISTRY$5,...e.REGISTRY$4,...e.REGISTRY$3,...e.REGISTRY$2,...e.REGISTRY$1,...e.createRegistry({storeConfig:_})};t.render({comms:r.route("vis"),registry:R,instrumentation:new t.O({logger:new t._({filters:[t.be("info")]})})})},u=Object.freeze(Object.defineProperty({__proto__:null,render:a},Symbol.toStringTag,{value:"Module"}));exports.aether=t.aether;exports.canvas=e.canvas;exports.diagram=e.Diagram;exports.measure=e.measure;exports.rule=e.aether;exports.synnax=e.provider;exports.telem=e.external;exports.tooltip=e.tooltip;exports.value=e.value;exports.lineplot=T;exports.pluto=u;exports.render=E;exports.theming=l;
package/dist/ether.js CHANGED
@@ -1,78 +1,77 @@
1
- import { P as R, R as a, S, a as n, b as E, f as T, t as _, u as i, c as l, r as I, O as G, _ as Y, d as O } from "./provider-ClhgBr_F.js";
2
- import { e as Fe } from "./provider-ClhgBr_F.js";
3
- import { c as $, r as m, u, a as p, B as c, L as f, R as s, X as g, Y as d, b as L, l as b, x as F, y as N, d as X, e as x, f as y, g as P, h as U, i as C, j as A, k as j, m as v, n as K, o as M, p as h, q as Z, s as w, t as z, v as H, w as q, z as Q, A as k, C as B, F as D, D as J, E as V, G as W, H as ee, I as ae, J as se, K as te, M as oe, N as re } from "./value-CzFrd9p6.js";
4
- import { S as Xe, T as xe, U as ye, V as Pe, P as Ue, Q as Ce, O as Ae, W as je } from "./value-CzFrd9p6.js";
5
- import { l as Re } from "./css-bahPRiQI.js";
6
- import { C as Se, G as ne, L as Ee, R as Te, a as _e } from "./eraser-Dz6nZuPp.js";
1
+ import { P as r, R as s, S, a as n, b as E, f as T, t as _, u as l, c as i, r as I, O as G, _ as Y, d as O } from "./provider-CfFukcDe.js";
2
+ import { e as be } from "./provider-CfFukcDe.js";
3
+ import { c as $, r as m, u as f, a as p, L as u, R as a, X as c, Y as g, l as d, b as L, x as b, y as F, d as N, e as X, f as x, g as P, h as y, i as U, j as C, k as A, m as j, n as v, o as M, p as h, q as K, s as Z, t as w, v as z, w as H, z as q, A as k, B as D, F as B, C as J, D as Q, E as V, G as W, H as ee, I as se, J as ae, K as te, M as oe } from "./value-C-e017qO.js";
4
+ import { Q as Ne, S as Xe, T as xe, U as Pe, O as ye, P as Ue, N as Ce, V as Ae } from "./value-C-e017qO.js";
5
+ import { f as Re } from "./css-BkBrZtKZ.js";
6
+ import { C as re, G as Se, L as ne, R as Ee, a as Te } from "./eraser-Bd14L_5k.js";
7
7
  import "react";
8
- import "./types-DGaZ_JZb.js";
9
- import { f as ie } from "./fontString-qfWSw62X.js";
10
- const ce = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
8
+ import "./types-B5-Tni3G.js";
9
+ import { f as _e } from "./fontString-BtjO8Met.js";
10
+ const pe = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
11
11
  __proto__: null,
12
- Provider: R,
13
- REGISTRY: a,
12
+ Provider: r,
13
+ REGISTRY: s,
14
14
  SYNNAX_DARK: S,
15
15
  SYNNAX_LIGHT: n,
16
16
  SYNNAX_THEMES: E,
17
17
  fontSpecZ: T,
18
- fontString: ie,
18
+ fontString: _e,
19
19
  themeZ: _,
20
- use: i
21
- }, Symbol.toStringTag, { value: "Module" })), fe = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
20
+ use: l
21
+ }, Symbol.toStringTag, { value: "Module" })), ue = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
22
22
  __proto__: null,
23
- Context: Se,
24
- GLProgram: ne,
25
- Loop: Ee,
23
+ Context: re,
24
+ GLProgram: Se,
25
+ Loop: ne,
26
26
  control: $,
27
27
  request: m,
28
- useOptionalRequestor: u,
28
+ useOptionalRequestor: f,
29
29
  useRequestor: p
30
- }, Symbol.toStringTag, { value: "Module" })), ge = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
30
+ }, Symbol.toStringTag, { value: "Module" })), ce = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
31
31
  __proto__: null,
32
- BoundQuerier: c,
33
- LinePlot: f,
34
- REGISTRY: s,
35
- XAxis: g,
36
- YAxis: d,
37
- boundQuerierStateZ: L,
38
- linePlotStateZ: b,
39
- xAxisStateZ: F,
40
- yAxisStateZ: N
32
+ LinePlot: u,
33
+ REGISTRY: a,
34
+ XAxis: c,
35
+ YAxis: g,
36
+ linePlotMethodsZ: d,
37
+ linePlotStateZ: L,
38
+ xAxisStateZ: b,
39
+ yAxisStateZ: F
41
40
  }, Symbol.toStringTag, { value: "Module" })), le = {
42
- [re]: ee,
43
41
  [oe]: W,
44
42
  [te]: V,
43
+ [ae]: Q,
45
44
  [se]: J,
46
- [ae]: D
47
- }, Ie = () => {
48
- const e = new Re((o, r) => postMessage(o, r));
45
+ [ee]: B
46
+ }, ie = () => {
47
+ const e = new Re((o, R) => postMessage(o, R));
49
48
  onmessage = e.handle.bind(e);
50
49
  const t = {
51
- ..._e,
50
+ ...Te,
52
51
  ...k,
53
- ...Q,
54
52
  ...q,
55
53
  ...H,
56
- ...Te,
57
54
  ...z,
55
+ ...Ee,
58
56
  ...w,
59
57
  ...Z,
60
- ...s,
58
+ ...K,
59
+ ...a,
61
60
  ...h,
62
61
  ...M,
63
- ...K,
64
62
  ...v,
65
- ...l,
66
63
  ...j,
64
+ ...i,
67
65
  ...A,
68
- ...a,
69
66
  ...C,
67
+ ...s,
70
68
  ...U,
71
- ...P,
72
69
  ...y,
70
+ ...P,
73
71
  ...x,
74
72
  ...X,
75
- ...B({ storeConfig: le })
73
+ ...N,
74
+ ...D({ storeConfig: le })
76
75
  };
77
76
  I({
78
77
  comms: e.route("vis"),
@@ -81,22 +80,22 @@ const ce = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
81
80
  logger: new Y({ filters: [O("info")] })
82
81
  })
83
82
  });
84
- }, de = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
83
+ }, ge = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
85
84
  __proto__: null,
86
- render: Ie
85
+ render: ie
87
86
  }, Symbol.toStringTag, { value: "Module" }));
88
87
  export {
89
- Fe as aether,
90
- Xe as canvas,
91
- xe as diagram,
92
- ge as lineplot,
93
- ye as measure,
94
- de as pluto,
95
- fe as render,
88
+ be as aether,
89
+ Ne as canvas,
90
+ Xe as diagram,
91
+ ce as lineplot,
92
+ xe as measure,
93
+ ge as pluto,
94
+ ue as render,
96
95
  Pe as rule,
97
- Ue as synnax,
98
- Ce as telem,
99
- ce as theming,
100
- Ae as tooltip,
101
- je as value
96
+ ye as synnax,
97
+ Ue as telem,
98
+ pe as theming,
99
+ Ce as tooltip,
100
+ Ae as value
102
101
  };
@@ -1,9 +1,9 @@
1
- import { D as d } from "./Dialog-puVY-0Mt.js";
2
- import { u as s, F as b, p as x, a as g, b as j } from "./Animated-38tdmPR0.js";
1
+ import { D as d } from "./Dialog-CwTHvHHD.js";
2
+ import { u as s, F as b, p as x, a as g, b as j } from "./Animated-DxBr38YY.js";
3
3
  import { j as a } from "./jsx-runtime-BbD0H88J.js";
4
- import { B as v } from "./Button-CoOYEk1J.js";
5
- import { A as C } from "./Animated-Bp6IK3ct.js";
6
- import { C as r } from "./css-bahPRiQI.js";
4
+ import { B as v } from "./Button-DulIBpNI.js";
5
+ import { A as C } from "./Animated-eavjaVoD.js";
6
+ import { C as r } from "./css-BkBrZtKZ.js";
7
7
  const S = ({
8
8
  onClick: i,
9
9
  className: n,