@synnaxlabs/pluto 0.45.0 → 0.46.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 (626) hide show
  1. package/dist/{Toggle-BNABJ5M2.js → Toggle-BZQSuhA3.js} +2 -2
  2. package/dist/{Toggle-BKrbt8lh.cjs → Toggle-D7uuc8BY.cjs} +1 -1
  3. package/dist/{Video-CgaO8bTm.cjs → Video-BgaQjOlJ.cjs} +1 -1
  4. package/dist/{Video-B4UWip-3.js → Video-Com7iIjJ.js} +2 -2
  5. package/dist/button.cjs +1 -1
  6. package/dist/button.js +1 -1
  7. package/dist/color.cjs +1 -1
  8. package/dist/color.js +1 -1
  9. package/dist/css-DA2F4zE4.cjs +8 -0
  10. package/dist/{css-BUXMI9PB.js → css-qKD7ZG81.js} +1450 -1285
  11. package/dist/css.cjs +1 -1
  12. package/dist/css.js +2 -2
  13. package/dist/dialog.cjs +1 -1
  14. package/dist/dialog.js +1 -1
  15. package/dist/ether.cjs +1 -1
  16. package/dist/ether.js +72 -69
  17. package/dist/external-B3j4WcRx.js +42 -0
  18. package/dist/{external-BEkAplsH.cjs → external-BH7AW9vg.cjs} +1 -1
  19. package/dist/{external-_ninRYLQ.js → external-BHDJdA7E.js} +10 -10
  20. package/dist/external-BaO1j7U1.cjs +1 -0
  21. package/dist/external-BatQDwpn.cjs +1 -0
  22. package/dist/external-Bfddv9ir.cjs +1 -0
  23. package/dist/{external-DLo-151g.js → external-Bnn6kifu.js} +206 -206
  24. package/dist/external-BoMP9V9w.js +14 -0
  25. package/dist/{external-DTLy0px_.js → external-Bor2llbx.js} +62 -62
  26. package/dist/external-Bp0LGk7L.cjs +1 -0
  27. package/dist/{external-BKOEKFd7.js → external-C0EjmEmQ.js} +25 -25
  28. package/dist/{external-BSeWLcfY.js → external-CBwmQS9D.js} +137 -122
  29. package/dist/external-CV0q6V-F.js +87 -0
  30. package/dist/external-CaehDJtX.cjs +1 -0
  31. package/dist/external-DLIuO7_6.cjs +1 -0
  32. package/dist/{external-W69NXl-R.js → external-DO--52ul.js} +26 -26
  33. package/dist/external-DZ9ZLLOd.cjs +1 -0
  34. package/dist/external-JI_JLXE9.cjs +46 -0
  35. package/dist/{external-BOvnkwzO.js → external-KX4HsfeC.js} +12 -12
  36. package/dist/external-LuDrHOj0.js +89 -0
  37. package/dist/{external-CGX7u75x.js → external-ObqQM9Wz.js} +2 -2
  38. package/dist/external-R1DnhHJ8.cjs +1 -0
  39. package/dist/external-iLU86byd.cjs +1 -0
  40. package/dist/external-iTOHqKBf.js +23 -0
  41. package/dist/external-ok-onqCX.cjs +1 -0
  42. package/dist/external-qAqWNZPd.cjs +1 -0
  43. package/dist/flex.cjs +1 -1
  44. package/dist/flex.js +1 -1
  45. package/dist/fontString-BpD7ezh8.cjs +1 -0
  46. package/dist/{fontString-D_jEa-uI.js → fontString-DXsCV3Wx.js} +2 -2
  47. package/dist/header.cjs +1 -1
  48. package/dist/header.js +1 -1
  49. package/dist/index.cjs +35 -7
  50. package/dist/index.js +32678 -21392
  51. package/dist/input.cjs +1 -1
  52. package/dist/input.js +1 -1
  53. package/dist/jsx-runtime-Dszzpdy0.cjs +22 -0
  54. package/dist/{jsx-runtime-C5mzlN2N.js → jsx-runtime-OVHDjVDe.js} +14 -14
  55. package/dist/list.cjs +1 -1
  56. package/dist/list.js +1 -1
  57. package/dist/main-20msMsI6.cjs +92 -0
  58. package/dist/{main-jKCzbrWn.js → main-ClIRTLfC.js} +17685 -17077
  59. package/dist/menu.cjs +1 -1
  60. package/dist/menu.js +1 -1
  61. package/dist/pluto.css +1 -1
  62. package/dist/provider-D295Uocj.cjs +52 -0
  63. package/dist/provider-DVqod4rl.cjs +83 -0
  64. package/dist/provider-RFk778pl.js +18803 -0
  65. package/dist/provider-laSzOgag.js +4673 -0
  66. package/dist/src/arc/Arc.d.ts +6 -0
  67. package/dist/src/arc/Arc.d.ts.map +1 -0
  68. package/dist/src/arc/external.d.ts +4 -0
  69. package/dist/src/arc/external.d.ts.map +1 -0
  70. package/dist/src/arc/handle/Core.d.ts +8 -0
  71. package/dist/src/arc/handle/Core.d.ts.map +1 -0
  72. package/dist/src/arc/handle/Sink.d.ts +5 -0
  73. package/dist/src/arc/handle/Sink.d.ts.map +1 -0
  74. package/dist/src/arc/handle/Source.d.ts +5 -0
  75. package/dist/src/arc/handle/Source.d.ts.map +1 -0
  76. package/dist/src/arc/handle/external.d.ts +3 -0
  77. package/dist/src/arc/handle/external.d.ts.map +1 -0
  78. package/dist/src/arc/handle/index.d.ts +2 -0
  79. package/dist/src/arc/handle/index.d.ts.map +1 -0
  80. package/dist/src/arc/index.d.ts +2 -0
  81. package/dist/src/arc/index.d.ts.map +1 -0
  82. package/dist/src/arc/queries.d.ts +89 -0
  83. package/dist/src/arc/queries.d.ts.map +1 -0
  84. package/dist/src/arc/stage/Base.d.ts +32 -0
  85. package/dist/src/arc/stage/Base.d.ts.map +1 -0
  86. package/dist/src/arc/stage/constant/Constant.d.ts +9 -0
  87. package/dist/src/arc/stage/constant/Constant.d.ts.map +1 -0
  88. package/dist/src/arc/stage/constant/Form.d.ts +2 -0
  89. package/dist/src/arc/stage/constant/Form.d.ts.map +1 -0
  90. package/dist/src/arc/stage/constant/external.d.ts +3 -0
  91. package/dist/src/arc/stage/constant/external.d.ts.map +1 -0
  92. package/dist/src/arc/stage/constant/index.d.ts +2 -0
  93. package/dist/src/arc/stage/constant/index.d.ts.map +1 -0
  94. package/dist/src/arc/stage/external.d.ts +4 -0
  95. package/dist/src/arc/stage/external.d.ts.map +1 -0
  96. package/dist/src/arc/stage/index.d.ts +2 -0
  97. package/dist/src/arc/stage/index.d.ts.map +1 -0
  98. package/dist/src/arc/stage/operator/Operator.d.ts +17 -0
  99. package/dist/src/arc/stage/operator/Operator.d.ts.map +1 -0
  100. package/dist/src/arc/stage/operator/external.d.ts +242 -0
  101. package/dist/src/arc/stage/operator/external.d.ts.map +1 -0
  102. package/dist/src/arc/stage/operator/index.d.ts +2 -0
  103. package/dist/src/arc/stage/operator/index.d.ts.map +1 -0
  104. package/dist/src/arc/stage/read/Form.d.ts +3 -0
  105. package/dist/src/arc/stage/read/Form.d.ts.map +1 -0
  106. package/dist/src/arc/stage/read/Read.d.ts +10 -0
  107. package/dist/src/arc/stage/read/Read.d.ts.map +1 -0
  108. package/dist/src/arc/stage/read/external.d.ts +9 -0
  109. package/dist/src/arc/stage/read/external.d.ts.map +1 -0
  110. package/dist/src/arc/stage/read/index.d.ts +2 -0
  111. package/dist/src/arc/stage/read/index.d.ts.map +1 -0
  112. package/dist/src/arc/stage/registry.d.ts +11 -0
  113. package/dist/src/arc/stage/registry.d.ts.map +1 -0
  114. package/dist/src/arc/stage/select/Select.d.ts +2 -0
  115. package/dist/src/arc/stage/select/Select.d.ts.map +1 -0
  116. package/dist/src/arc/stage/select/external.d.ts +12 -0
  117. package/dist/src/arc/stage/select/external.d.ts.map +1 -0
  118. package/dist/src/arc/stage/select/index.d.ts +2 -0
  119. package/dist/src/arc/stage/select/index.d.ts.map +1 -0
  120. package/dist/src/arc/stage/source/Form.d.ts +3 -0
  121. package/dist/src/arc/stage/source/Form.d.ts.map +1 -0
  122. package/dist/src/arc/stage/source/Source.d.ts +10 -0
  123. package/dist/src/arc/stage/source/Source.d.ts.map +1 -0
  124. package/dist/src/arc/stage/source/external.d.ts +9 -0
  125. package/dist/src/arc/stage/source/external.d.ts.map +1 -0
  126. package/dist/src/arc/stage/source/index.d.ts +2 -0
  127. package/dist/src/arc/stage/source/index.d.ts.map +1 -0
  128. package/dist/src/arc/stage/stable/Form.d.ts +2 -0
  129. package/dist/src/arc/stage/stable/Form.d.ts.map +1 -0
  130. package/dist/src/arc/stage/stable/StableFor.d.ts +9 -0
  131. package/dist/src/arc/stage/stable/StableFor.d.ts.map +1 -0
  132. package/dist/src/arc/stage/stable/external.d.ts +3 -0
  133. package/dist/src/arc/stage/stable/external.d.ts.map +1 -0
  134. package/dist/src/arc/stage/stable/index.d.ts +2 -0
  135. package/dist/src/arc/stage/stable/index.d.ts.map +1 -0
  136. package/dist/src/arc/stage/status/Change.d.ts +21 -0
  137. package/dist/src/arc/stage/status/Change.d.ts.map +1 -0
  138. package/dist/src/arc/stage/status/Form.d.ts +3 -0
  139. package/dist/src/arc/stage/status/Form.d.ts.map +1 -0
  140. package/dist/src/arc/stage/status/external.d.ts +7 -0
  141. package/dist/src/arc/stage/status/external.d.ts.map +1 -0
  142. package/dist/src/arc/stage/status/index.d.ts +2 -0
  143. package/dist/src/arc/stage/status/index.d.ts.map +1 -0
  144. package/dist/src/arc/stage/types/index.d.ts +2 -0
  145. package/dist/src/arc/stage/types/index.d.ts.map +1 -0
  146. package/dist/src/arc/stage/types/spec.d.ts +25 -0
  147. package/dist/src/arc/stage/types/spec.d.ts.map +1 -0
  148. package/dist/src/button/color.d.ts +1 -2
  149. package/dist/src/button/color.d.ts.map +1 -1
  150. package/dist/src/channel/AliasInput.d.ts +3 -3
  151. package/dist/src/channel/AliasInput.d.ts.map +1 -1
  152. package/dist/src/channel/LinePlot.d.ts +4 -4
  153. package/dist/src/channel/LinePlot.d.ts.map +1 -1
  154. package/dist/src/channel/Select.d.ts +5 -5
  155. package/dist/src/channel/Select.d.ts.map +1 -1
  156. package/dist/src/channel/queries.d.ts +37 -70
  157. package/dist/src/channel/queries.d.ts.map +1 -1
  158. package/dist/src/css/bem.d.ts +1 -2
  159. package/dist/src/css/bem.d.ts.map +1 -1
  160. package/dist/src/dialog/Frame.d.ts.map +1 -1
  161. package/dist/src/divider/Divider.d.ts +1 -1
  162. package/dist/src/divider/Divider.d.ts.map +1 -1
  163. package/dist/src/ether.d.ts +2 -2
  164. package/dist/src/ether.d.ts.map +1 -1
  165. package/dist/src/flux/Provider.d.ts.map +1 -1
  166. package/dist/src/flux/aether/external.d.ts +1 -1
  167. package/dist/src/flux/aether/external.d.ts.map +1 -1
  168. package/dist/src/flux/aether/provider.d.ts +1 -1
  169. package/dist/src/flux/aether/provider.d.ts.map +1 -1
  170. package/dist/src/flux/core/external.d.ts +1 -0
  171. package/dist/src/flux/core/external.d.ts.map +1 -1
  172. package/dist/src/flux/core/store.d.ts +19 -13
  173. package/dist/src/flux/core/store.d.ts.map +1 -1
  174. package/dist/src/flux/core/streamer.d.ts +1 -1
  175. package/dist/src/flux/core/streamer.d.ts.map +1 -1
  176. package/dist/src/flux/core/types.d.ts +42 -0
  177. package/dist/src/flux/core/types.d.ts.map +1 -0
  178. package/dist/src/flux/external.d.ts +1 -1
  179. package/dist/src/flux/external.d.ts.map +1 -1
  180. package/dist/src/flux/form.d.ts +29 -127
  181. package/dist/src/flux/form.d.ts.map +1 -1
  182. package/dist/src/flux/list.d.ts +28 -228
  183. package/dist/src/flux/list.d.ts.map +1 -1
  184. package/dist/src/flux/result.d.ts +32 -90
  185. package/dist/src/flux/result.d.ts.map +1 -1
  186. package/dist/src/flux/retrieve.d.ts +47 -176
  187. package/dist/src/flux/retrieve.d.ts.map +1 -1
  188. package/dist/src/flux/update.d.ts +45 -134
  189. package/dist/src/flux/update.d.ts.map +1 -1
  190. package/dist/src/form/Context.d.ts +2 -2
  191. package/dist/src/form/Context.d.ts.map +1 -1
  192. package/dist/src/form/Context.spec.d.ts +2 -0
  193. package/dist/src/form/Context.spec.d.ts.map +1 -0
  194. package/dist/src/group/queries.d.ts +18 -18
  195. package/dist/src/group/queries.d.ts.map +1 -1
  196. package/dist/src/hardware/device/Select.d.ts +2 -2
  197. package/dist/src/hardware/device/Select.d.ts.map +1 -1
  198. package/dist/src/hardware/device/queries.d.ts +369 -9
  199. package/dist/src/hardware/device/queries.d.ts.map +1 -1
  200. package/dist/src/hardware/rack/Select.d.ts +3 -3
  201. package/dist/src/hardware/rack/Select.d.ts.map +1 -1
  202. package/dist/src/hardware/rack/queries.d.ts +15 -11
  203. package/dist/src/hardware/rack/queries.d.ts.map +1 -1
  204. package/dist/src/hardware/task/queries.d.ts +70 -17
  205. package/dist/src/hardware/task/queries.d.ts.map +1 -1
  206. package/dist/src/hooks/useRequiredContext.d.ts.map +1 -1
  207. package/dist/src/hooks/useRequiredContext.spec.d.ts +2 -0
  208. package/dist/src/hooks/useRequiredContext.spec.d.ts.map +1 -0
  209. package/dist/src/icon/Modbus.d.ts +2 -0
  210. package/dist/src/icon/Modbus.d.ts.map +1 -0
  211. package/dist/src/icon/registry.d.ts +16 -3
  212. package/dist/src/icon/registry.d.ts.map +1 -1
  213. package/dist/src/index.d.ts +4 -3
  214. package/dist/src/index.d.ts.map +1 -1
  215. package/dist/src/input/Boolean.d.ts +3 -2
  216. package/dist/src/input/Boolean.d.ts.map +1 -1
  217. package/dist/src/input/Checkbox.d.ts +2 -3
  218. package/dist/src/input/Checkbox.d.ts.map +1 -1
  219. package/dist/src/input/DateTime.d.ts +1 -18
  220. package/dist/src/input/DateTime.d.ts.map +1 -1
  221. package/dist/src/input/Switch.d.ts +2 -3
  222. package/dist/src/input/Switch.d.ts.map +1 -1
  223. package/dist/src/input/Text.d.ts +2 -1
  224. package/dist/src/input/Text.d.ts.map +1 -1
  225. package/dist/src/input/external.d.ts +0 -1
  226. package/dist/src/input/external.d.ts.map +1 -1
  227. package/dist/src/label/Select.d.ts +5 -5
  228. package/dist/src/label/Select.d.ts.map +1 -1
  229. package/dist/src/label/queries.d.ts +35 -20
  230. package/dist/src/label/queries.d.ts.map +1 -1
  231. package/dist/src/{vis/lineplot → lineplot}/Axis.d.ts +3 -3
  232. package/dist/src/lineplot/Axis.d.ts.map +1 -0
  233. package/dist/src/{vis/lineplot → lineplot}/Legend.d.ts +1 -1
  234. package/dist/src/lineplot/Legend.d.ts.map +1 -0
  235. package/dist/src/{vis/lineplot → lineplot}/Line.d.ts +2 -2
  236. package/dist/src/lineplot/Line.d.ts.map +1 -0
  237. package/dist/src/{vis/lineplot → lineplot}/LinePlot.d.ts +3 -3
  238. package/dist/src/lineplot/LinePlot.d.ts.map +1 -0
  239. package/dist/src/{vis/lineplot → lineplot}/Title.d.ts +1 -1
  240. package/dist/src/lineplot/Title.d.ts.map +1 -0
  241. package/dist/src/{vis/lineplot → lineplot}/Viewport.d.ts +1 -1
  242. package/dist/src/lineplot/Viewport.d.ts.map +1 -0
  243. package/dist/src/{vis/lineplot → lineplot}/aether/BoundQuerier.d.ts +1 -1
  244. package/dist/src/lineplot/aether/BoundQuerier.d.ts.map +1 -0
  245. package/dist/src/{vis/lineplot → lineplot}/aether/LinePlot.d.ts +5 -5
  246. package/dist/src/lineplot/aether/LinePlot.d.ts.map +1 -0
  247. package/dist/src/{vis/lineplot → lineplot}/aether/XAxis.d.ts +3 -3
  248. package/dist/src/lineplot/aether/XAxis.d.ts.map +1 -0
  249. package/dist/src/{vis/lineplot → lineplot}/aether/YAxis.d.ts +2 -2
  250. package/dist/src/lineplot/aether/YAxis.d.ts.map +1 -0
  251. package/dist/src/{vis/lineplot → lineplot}/aether/axis.d.ts +6 -6
  252. package/dist/src/lineplot/aether/axis.d.ts.map +1 -0
  253. package/dist/src/lineplot/aether/external.d.ts.map +1 -0
  254. package/dist/src/lineplot/aether/index.d.ts.map +1 -0
  255. package/dist/src/{vis/lineplot → lineplot}/external.d.ts +1 -0
  256. package/dist/src/lineplot/external.d.ts.map +1 -0
  257. package/dist/src/lineplot/index.d.ts.map +1 -0
  258. package/dist/src/lineplot/queries.d.ts +33 -0
  259. package/dist/src/lineplot/queries.d.ts.map +1 -0
  260. package/dist/src/lineplot/queries.spec.d.ts +2 -0
  261. package/dist/src/lineplot/queries.spec.d.ts.map +1 -0
  262. package/dist/src/{vis/lineplot → lineplot}/range/Annotation.d.ts +1 -1
  263. package/dist/src/lineplot/range/Annotation.d.ts.map +1 -0
  264. package/dist/src/{vis/lineplot → lineplot}/range/Provider.d.ts +2 -2
  265. package/dist/src/lineplot/range/Provider.d.ts.map +1 -0
  266. package/dist/src/{vis/lineplot → lineplot}/range/aether/annotation.d.ts +3 -3
  267. package/dist/src/lineplot/range/aether/annotation.d.ts.map +1 -0
  268. package/dist/src/{vis/lineplot → lineplot}/range/aether/external.d.ts +1 -1
  269. package/dist/src/lineplot/range/aether/external.d.ts.map +1 -0
  270. package/dist/src/lineplot/range/aether/index.d.ts.map +1 -0
  271. package/dist/src/{vis/lineplot → lineplot}/range/aether/provider.d.ts +10 -10
  272. package/dist/src/lineplot/range/aether/provider.d.ts.map +1 -0
  273. package/dist/src/lineplot/range/external.d.ts.map +1 -0
  274. package/dist/src/lineplot/range/index.d.ts.map +1 -0
  275. package/dist/src/{vis/lineplot → lineplot}/tooltip/Tooltip.d.ts +1 -1
  276. package/dist/src/lineplot/tooltip/Tooltip.d.ts.map +1 -0
  277. package/dist/src/lineplot/tooltip/aether/index.d.ts.map +1 -0
  278. package/dist/src/{vis/lineplot → lineplot}/tooltip/aether/tooltip.d.ts +4 -4
  279. package/dist/src/lineplot/tooltip/aether/tooltip.d.ts.map +1 -0
  280. package/dist/src/lineplot/tooltip/index.d.ts.map +1 -0
  281. package/dist/src/lineplot/useBoundQuerier.d.ts.map +1 -0
  282. package/dist/src/list/Frame.d.ts +16 -1
  283. package/dist/src/list/Frame.d.ts.map +1 -1
  284. package/dist/src/list/pager.d.ts +7 -1
  285. package/dist/src/list/pager.d.ts.map +1 -1
  286. package/dist/src/list/useCombinedData.d.ts.map +1 -1
  287. package/dist/src/list/useKeysData.d.ts.map +1 -1
  288. package/dist/src/list/useMapData.d.ts.map +1 -1
  289. package/dist/src/list/useStaticData.d.ts.map +1 -1
  290. package/dist/src/{vis/log → log}/Log.d.ts +2 -2
  291. package/dist/src/log/Log.d.ts.map +1 -0
  292. package/dist/src/{vis/log → log}/aether/Log.d.ts +4 -4
  293. package/dist/src/log/aether/Log.d.ts.map +1 -0
  294. package/dist/src/log/aether/index.d.ts.map +1 -0
  295. package/dist/src/log/external.d.ts +3 -0
  296. package/dist/src/log/external.d.ts.map +1 -0
  297. package/dist/src/log/index.d.ts +2 -0
  298. package/dist/src/log/index.d.ts.map +1 -0
  299. package/dist/src/log/queries.d.ts +33 -0
  300. package/dist/src/log/queries.d.ts.map +1 -0
  301. package/dist/src/log/queries.spec.d.ts +2 -0
  302. package/dist/src/log/queries.spec.d.ts.map +1 -0
  303. package/dist/src/menu/ContextMenu.d.ts.map +1 -1
  304. package/dist/src/ontology/aether/index.d.ts +2 -0
  305. package/dist/src/ontology/aether/index.d.ts.map +1 -0
  306. package/dist/src/ontology/aether/queries.d.ts +15 -0
  307. package/dist/src/ontology/aether/queries.d.ts.map +1 -0
  308. package/dist/src/ontology/external.d.ts +1 -0
  309. package/dist/src/ontology/external.d.ts.map +1 -1
  310. package/dist/src/ontology/queries.d.ts +27 -23
  311. package/dist/src/ontology/queries.d.ts.map +1 -1
  312. package/dist/src/pluto/Pluto.d.ts +13 -0
  313. package/dist/src/pluto/Pluto.d.ts.map +1 -1
  314. package/dist/src/pluto/aether/pluto.d.ts.map +1 -1
  315. package/dist/src/ranger/Breadcrumb.d.ts +3 -1
  316. package/dist/src/ranger/Breadcrumb.d.ts.map +1 -1
  317. package/dist/src/ranger/CreateIcon.d.ts +3 -0
  318. package/dist/src/ranger/CreateIcon.d.ts.map +1 -0
  319. package/dist/src/ranger/Select.d.ts +4 -14
  320. package/dist/src/ranger/Select.d.ts.map +1 -1
  321. package/dist/src/ranger/SelectStage.d.ts +7 -0
  322. package/dist/src/ranger/SelectStage.d.ts.map +1 -0
  323. package/dist/src/ranger/StageIcon.d.ts +8 -0
  324. package/dist/src/ranger/StageIcon.d.ts.map +1 -0
  325. package/dist/src/ranger/aether/index.d.ts.map +1 -1
  326. package/dist/src/ranger/aether/queries.d.ts +2 -2
  327. package/dist/src/ranger/aether/queries.d.ts.map +1 -1
  328. package/dist/src/ranger/external.d.ts +5 -1
  329. package/dist/src/ranger/external.d.ts.map +1 -1
  330. package/dist/src/ranger/queries.d.ts +41 -41
  331. package/dist/src/ranger/queries.d.ts.map +1 -1
  332. package/dist/src/ranger/stage.d.ts +20 -0
  333. package/dist/src/ranger/stage.d.ts.map +1 -0
  334. package/dist/src/ranger/stage.spec.d.ts +2 -0
  335. package/dist/src/ranger/stage.spec.d.ts.map +1 -0
  336. package/dist/src/resize/Core.d.ts.map +1 -1
  337. package/dist/src/schematic/Schematic.d.ts +6 -0
  338. package/dist/src/schematic/Schematic.d.ts.map +1 -0
  339. package/dist/src/schematic/edge/Edge.d.ts +15 -0
  340. package/dist/src/schematic/edge/Edge.d.ts.map +1 -0
  341. package/dist/src/schematic/edge/connector/connector.d.ts.map +1 -0
  342. package/dist/src/schematic/edge/connector/connector.spec.d.ts.map +1 -0
  343. package/dist/src/schematic/edge/connector/index.d.ts.map +1 -0
  344. package/dist/src/schematic/edge/index.d.ts +3 -0
  345. package/dist/src/schematic/edge/index.d.ts.map +1 -0
  346. package/dist/src/schematic/edge/paths.d.ts +28 -0
  347. package/dist/src/schematic/edge/paths.d.ts.map +1 -0
  348. package/dist/src/schematic/external.d.ts +3 -0
  349. package/dist/src/schematic/external.d.ts.map +1 -1
  350. package/dist/src/schematic/queries.d.ts +43 -0
  351. package/dist/src/schematic/queries.d.ts.map +1 -0
  352. package/dist/src/schematic/queries.spec.d.ts +2 -0
  353. package/dist/src/schematic/queries.spec.d.ts.map +1 -0
  354. package/dist/src/schematic/symbol/Custom.d.ts.map +1 -1
  355. package/dist/src/schematic/symbol/Forms.d.ts +1 -0
  356. package/dist/src/schematic/symbol/Forms.d.ts.map +1 -1
  357. package/dist/src/schematic/symbol/Primitives.d.ts +1 -1
  358. package/dist/src/schematic/symbol/Primitives.d.ts.map +1 -1
  359. package/dist/src/schematic/symbol/Symbols.d.ts +11 -1
  360. package/dist/src/schematic/symbol/Symbols.d.ts.map +1 -1
  361. package/dist/src/schematic/symbol/queries.d.ts +20 -19
  362. package/dist/src/schematic/symbol/queries.d.ts.map +1 -1
  363. package/dist/src/schematic/symbol/registry.d.ts +2 -1
  364. package/dist/src/schematic/symbol/registry.d.ts.map +1 -1
  365. package/dist/src/select/Dialog.d.ts +1 -1
  366. package/dist/src/select/Dialog.d.ts.map +1 -1
  367. package/dist/src/select/Frame.d.ts +4 -1
  368. package/dist/src/select/Frame.d.ts.map +1 -1
  369. package/dist/src/select/ListItem.d.ts.map +1 -1
  370. package/dist/src/select/MultipleTrigger.d.ts +5 -2
  371. package/dist/src/select/MultipleTrigger.d.ts.map +1 -1
  372. package/dist/src/showcase/DividerShowcase.d.ts.map +1 -1
  373. package/dist/src/showcase/InputShowcase.d.ts +1 -1
  374. package/dist/src/showcase/InputShowcase.d.ts.map +1 -1
  375. package/dist/src/showcase/SelectShowcase.d.ts.map +1 -1
  376. package/dist/src/showcase/TagShowcase.d.ts.map +1 -1
  377. package/dist/src/state/state.d.ts +2 -1
  378. package/dist/src/state/state.d.ts.map +1 -1
  379. package/dist/src/status/CreateIcon.d.ts +1 -0
  380. package/dist/src/status/CreateIcon.d.ts.map +1 -0
  381. package/dist/src/status/Select.d.ts +12 -0
  382. package/dist/src/status/Select.d.ts.map +1 -0
  383. package/dist/src/status/SelectVariant.d.ts +7 -0
  384. package/dist/src/status/SelectVariant.d.ts.map +1 -0
  385. package/dist/src/status/aether/aggregator.d.ts +3 -25
  386. package/dist/src/status/aether/aggregator.d.ts.map +1 -1
  387. package/dist/src/status/aether/errorHandler.d.ts +1 -1
  388. package/dist/src/status/aether/errorHandler.d.ts.map +1 -1
  389. package/dist/src/status/{Aggregator.d.ts → core/Aggregator.d.ts} +4 -4
  390. package/dist/src/status/core/Aggregator.d.ts.map +1 -0
  391. package/dist/src/status/core/Aggregator.spec.d.ts.map +1 -0
  392. package/dist/src/status/core/CreateIcon.d.ts +3 -0
  393. package/dist/src/status/core/CreateIcon.d.ts.map +1 -0
  394. package/dist/src/status/{Indicator.d.ts → core/Indicator.d.ts} +1 -1
  395. package/dist/src/status/core/Indicator.d.ts.map +1 -0
  396. package/dist/src/status/{Notification.d.ts → core/Notification.d.ts} +3 -3
  397. package/dist/src/status/core/Notification.d.ts.map +1 -0
  398. package/dist/src/status/core/Notification.spec.d.ts.map +1 -0
  399. package/dist/src/status/core/SelectVariant.d.ts +7 -0
  400. package/dist/src/status/core/SelectVariant.d.ts.map +1 -0
  401. package/dist/src/status/core/Summary.d.ts +12 -0
  402. package/dist/src/status/core/Summary.d.ts.map +1 -0
  403. package/dist/src/status/core/colors.d.ts.map +1 -0
  404. package/dist/src/status/core/external.d.ts +8 -0
  405. package/dist/src/status/core/external.d.ts.map +1 -0
  406. package/dist/src/status/core/index.d.ts +2 -0
  407. package/dist/src/status/core/index.d.ts.map +1 -0
  408. package/dist/src/status/external.d.ts +3 -5
  409. package/dist/src/status/external.d.ts.map +1 -1
  410. package/dist/src/status/index.d.ts.map +1 -1
  411. package/dist/src/status/queries.d.ts +64 -0
  412. package/dist/src/status/queries.d.ts.map +1 -0
  413. package/dist/src/status/queries.spec.d.ts +2 -0
  414. package/dist/src/status/queries.spec.d.ts.map +1 -0
  415. package/dist/src/synnax/Provider.d.ts +8 -5
  416. package/dist/src/synnax/Provider.d.ts.map +1 -1
  417. package/dist/src/table/external.d.ts +1 -0
  418. package/dist/src/table/external.d.ts.map +1 -1
  419. package/dist/src/table/queries.d.ts +35 -0
  420. package/dist/src/table/queries.d.ts.map +1 -0
  421. package/dist/src/table/queries.spec.d.ts +2 -0
  422. package/dist/src/table/queries.spec.d.ts.map +1 -0
  423. package/dist/src/tag/Tags.d.ts +1 -1
  424. package/dist/src/tag/Tags.d.ts.map +1 -1
  425. package/dist/src/telem/aether/noop.d.ts.map +1 -1
  426. package/dist/src/telem/aether/remote.d.ts +4 -4
  427. package/dist/src/telem/aether/telem.d.ts +1 -1
  428. package/dist/src/telem/aether/telem.d.ts.map +1 -1
  429. package/dist/src/telem/client/streamer.d.ts +1 -0
  430. package/dist/src/telem/client/streamer.d.ts.map +1 -1
  431. package/dist/src/telem/control/Chip.d.ts.map +1 -1
  432. package/dist/src/telem/control/aether/chip.d.ts +9 -32
  433. package/dist/src/telem/control/aether/chip.d.ts.map +1 -1
  434. package/dist/src/telem/control/aether/controller.d.ts.map +1 -1
  435. package/dist/src/telem/control/aether/indicator.d.ts +15 -38
  436. package/dist/src/telem/control/aether/indicator.d.ts.map +1 -1
  437. package/dist/src/telem/external.d.ts +1 -0
  438. package/dist/src/telem/external.d.ts.map +1 -1
  439. package/dist/src/telem/text/TimeRange.d.ts +10 -0
  440. package/dist/src/telem/text/TimeRange.d.ts.map +1 -0
  441. package/dist/src/telem/text/TimeRange.spec.d.ts +2 -0
  442. package/dist/src/telem/text/TimeRange.spec.d.ts.map +1 -0
  443. package/dist/src/telem/text/TimeSpan.d.ts +10 -0
  444. package/dist/src/telem/text/TimeSpan.d.ts.map +1 -0
  445. package/dist/src/telem/text/TimeSpan.spec.d.ts +2 -0
  446. package/dist/src/telem/text/TimeSpan.spec.d.ts.map +1 -0
  447. package/dist/src/telem/text/TimeSpanSince.d.ts +11 -0
  448. package/dist/src/telem/text/TimeSpanSince.d.ts.map +1 -0
  449. package/dist/src/telem/text/TimeStamp.d.ts +12 -0
  450. package/dist/src/telem/text/TimeStamp.d.ts.map +1 -0
  451. package/dist/src/telem/text/TimeStamp.spec.d.ts +2 -0
  452. package/dist/src/telem/text/TimeStamp.spec.d.ts.map +1 -0
  453. package/dist/src/telem/text/external.d.ts +5 -0
  454. package/dist/src/telem/text/external.d.ts.map +1 -0
  455. package/dist/src/telem/text/index.d.ts +2 -0
  456. package/dist/src/telem/text/index.d.ts.map +1 -0
  457. package/dist/src/text/Editable.d.ts.map +1 -1
  458. package/dist/src/text/external.d.ts +0 -1
  459. package/dist/src/text/external.d.ts.map +1 -1
  460. package/dist/src/tooltip/Dialog.d.ts.map +1 -1
  461. package/dist/src/tree/Context.d.ts +13 -0
  462. package/dist/src/tree/Context.d.ts.map +1 -0
  463. package/dist/src/tree/Item.d.ts +2 -3
  464. package/dist/src/tree/Item.d.ts.map +1 -1
  465. package/dist/src/tree/Tree.d.ts +2 -2
  466. package/dist/src/tree/Tree.d.ts.map +1 -1
  467. package/dist/src/tree/core.d.ts +2 -1
  468. package/dist/src/tree/core.d.ts.map +1 -1
  469. package/dist/src/tree/core.spec.d.ts +2 -0
  470. package/dist/src/tree/core.spec.d.ts.map +1 -0
  471. package/dist/src/user/index.d.ts +2 -0
  472. package/dist/src/user/index.d.ts.map +1 -0
  473. package/dist/src/user/queries.d.ts +50 -0
  474. package/dist/src/user/queries.d.ts.map +1 -0
  475. package/dist/src/user/queries.spec.d.ts +2 -0
  476. package/dist/src/user/queries.spec.d.ts.map +1 -0
  477. package/dist/src/viewport/use.d.ts.map +1 -1
  478. package/dist/src/vis/diagram/Diagram.d.ts +16 -4
  479. package/dist/src/vis/diagram/Diagram.d.ts.map +1 -1
  480. package/dist/src/vis/diagram/aether/Diagram.d.ts.map +1 -1
  481. package/dist/src/vis/diagram/aether/types.d.ts +6 -49
  482. package/dist/src/vis/diagram/aether/types.d.ts.map +1 -1
  483. package/dist/src/vis/diagram/external.d.ts +1 -1
  484. package/dist/src/vis/diagram/external.d.ts.map +1 -1
  485. package/dist/src/vis/diagram/useTriggers.d.ts +12 -0
  486. package/dist/src/vis/diagram/useTriggers.d.ts.map +1 -0
  487. package/dist/src/vis/diagram/util.d.ts +2 -0
  488. package/dist/src/vis/diagram/util.d.ts.map +1 -1
  489. package/dist/src/vis/draw2d/canvas.d.ts.map +1 -1
  490. package/dist/src/vis/draw2d/index.d.ts +16 -6
  491. package/dist/src/vis/draw2d/index.d.ts.map +1 -1
  492. package/dist/src/vis/gauge/aether/gauge.d.ts +297 -0
  493. package/dist/src/vis/gauge/aether/gauge.d.ts.map +1 -0
  494. package/dist/src/vis/gauge/aether/index.d.ts +2 -0
  495. package/dist/src/vis/gauge/aether/index.d.ts.map +1 -0
  496. package/dist/src/vis/gauge/index.d.ts +2 -0
  497. package/dist/src/vis/gauge/index.d.ts.map +1 -0
  498. package/dist/src/vis/gauge/use.d.ts +84 -0
  499. package/dist/src/vis/gauge/use.d.ts.map +1 -0
  500. package/dist/src/vis/text/atlas.d.ts.map +1 -1
  501. package/dist/src/vis/value/TelemForm.d.ts.map +1 -1
  502. package/dist/src/workspace/queries.d.ts +37 -4
  503. package/dist/src/workspace/queries.d.ts.map +1 -1
  504. package/dist/tabs.cjs +1 -1
  505. package/dist/tabs.js +1 -1
  506. package/dist/text.cjs +1 -1
  507. package/dist/text.js +2 -2
  508. package/dist/theme.css +1593 -1594
  509. package/dist/theming.cjs +1 -1
  510. package/dist/theming.js +2 -2
  511. package/dist/tree.cjs +1 -1
  512. package/dist/tree.js +1 -1
  513. package/dist/triggers.cjs +1 -1
  514. package/dist/triggers.js +1 -1
  515. package/dist/units-CLbZ5ejs.cjs +1 -0
  516. package/dist/{units-BPvO622s.js → units-WtYBE1br.js} +1 -1
  517. package/dist/useKeysData-DXXVQfXZ.js +18 -0
  518. package/dist/useKeysData-Do63LaI0.cjs +1 -0
  519. package/dist/video.cjs +1 -1
  520. package/dist/video.js +1 -1
  521. package/package.json +20 -20
  522. package/README.md +0 -35
  523. package/dist/Animated-B9bcEALW.js +0 -27
  524. package/dist/Animated-EQN_Zecr.cjs +0 -1
  525. package/dist/LinePlot-82qQ7-BC.js +0 -6263
  526. package/dist/LinePlot-Do2q5AyX.cjs +0 -53
  527. package/dist/css-CmXY6iPo.cjs +0 -8
  528. package/dist/eraser-C1jjA5cv.cjs +0 -63
  529. package/dist/eraser-DXDDmPgV.js +0 -14108
  530. package/dist/external-5DC2xiKR.cjs +0 -1
  531. package/dist/external-65blLb4-.js +0 -42
  532. package/dist/external-B8KPEzPt.cjs +0 -1
  533. package/dist/external-BIykXq97.cjs +0 -1
  534. package/dist/external-Bqmws2bv.cjs +0 -1
  535. package/dist/external-CFsDBQGs.cjs +0 -1
  536. package/dist/external-CJKfUQ-9.cjs +0 -1
  537. package/dist/external-CPW2TrSs.js +0 -124
  538. package/dist/external-CijGOPm7.cjs +0 -1
  539. package/dist/external-DCQ725nK.cjs +0 -1
  540. package/dist/external-DWfn7Yhk.cjs +0 -1
  541. package/dist/external-DcNW5o-8.cjs +0 -1
  542. package/dist/external-Gh_0tAJ0.js +0 -24
  543. package/dist/external-J1Ji-Eku.js +0 -92
  544. package/dist/external-SQa3Pr0s.js +0 -44
  545. package/dist/external-kaUzEm1U.cjs +0 -46
  546. package/dist/external-mOr1FzAd.cjs +0 -1
  547. package/dist/fontString-4EFXWlQp.cjs +0 -1
  548. package/dist/jsx-runtime-CITbqOLs.cjs +0 -22
  549. package/dist/main-2qH2bggR.cjs +0 -92
  550. package/dist/src/flux/core/params.d.ts +0 -31
  551. package/dist/src/flux/core/params.d.ts.map +0 -1
  552. package/dist/src/input/TextArea.d.ts +0 -25
  553. package/dist/src/input/TextArea.d.ts.map +0 -1
  554. package/dist/src/ranger/TimeRangeChip.d.ts +0 -10
  555. package/dist/src/ranger/TimeRangeChip.d.ts.map +0 -1
  556. package/dist/src/status/Aggregator.d.ts.map +0 -1
  557. package/dist/src/status/Aggregator.spec.d.ts.map +0 -1
  558. package/dist/src/status/Indicator.d.ts.map +0 -1
  559. package/dist/src/status/Notification.d.ts.map +0 -1
  560. package/dist/src/status/Notification.spec.d.ts.map +0 -1
  561. package/dist/src/status/Summary.d.ts +0 -8
  562. package/dist/src/status/Summary.d.ts.map +0 -1
  563. package/dist/src/status/colors.d.ts.map +0 -1
  564. package/dist/src/text/DateTime.d.ts +0 -12
  565. package/dist/src/text/DateTime.d.ts.map +0 -1
  566. package/dist/src/vis/diagram/edge/Edge.d.ts +0 -15
  567. package/dist/src/vis/diagram/edge/Edge.d.ts.map +0 -1
  568. package/dist/src/vis/diagram/edge/connector/connector.d.ts.map +0 -1
  569. package/dist/src/vis/diagram/edge/connector/connector.spec.d.ts.map +0 -1
  570. package/dist/src/vis/diagram/edge/connector/index.d.ts.map +0 -1
  571. package/dist/src/vis/diagram/edge/index.d.ts +0 -2
  572. package/dist/src/vis/diagram/edge/index.d.ts.map +0 -1
  573. package/dist/src/vis/diagram/edge/paths.d.ts +0 -18
  574. package/dist/src/vis/diagram/edge/paths.d.ts.map +0 -1
  575. package/dist/src/vis/lineplot/Axis.d.ts.map +0 -1
  576. package/dist/src/vis/lineplot/Legend.d.ts.map +0 -1
  577. package/dist/src/vis/lineplot/Line.d.ts.map +0 -1
  578. package/dist/src/vis/lineplot/LinePlot.d.ts.map +0 -1
  579. package/dist/src/vis/lineplot/Title.d.ts.map +0 -1
  580. package/dist/src/vis/lineplot/Viewport.d.ts.map +0 -1
  581. package/dist/src/vis/lineplot/aether/BoundQuerier.d.ts.map +0 -1
  582. package/dist/src/vis/lineplot/aether/LinePlot.d.ts.map +0 -1
  583. package/dist/src/vis/lineplot/aether/XAxis.d.ts.map +0 -1
  584. package/dist/src/vis/lineplot/aether/YAxis.d.ts.map +0 -1
  585. package/dist/src/vis/lineplot/aether/axis.d.ts.map +0 -1
  586. package/dist/src/vis/lineplot/aether/external.d.ts.map +0 -1
  587. package/dist/src/vis/lineplot/aether/index.d.ts.map +0 -1
  588. package/dist/src/vis/lineplot/external.d.ts.map +0 -1
  589. package/dist/src/vis/lineplot/index.d.ts.map +0 -1
  590. package/dist/src/vis/lineplot/range/Annotation.d.ts.map +0 -1
  591. package/dist/src/vis/lineplot/range/Provider.d.ts.map +0 -1
  592. package/dist/src/vis/lineplot/range/aether/annotation.d.ts.map +0 -1
  593. package/dist/src/vis/lineplot/range/aether/external.d.ts.map +0 -1
  594. package/dist/src/vis/lineplot/range/aether/index.d.ts.map +0 -1
  595. package/dist/src/vis/lineplot/range/aether/provider.d.ts.map +0 -1
  596. package/dist/src/vis/lineplot/range/external.d.ts.map +0 -1
  597. package/dist/src/vis/lineplot/range/index.d.ts.map +0 -1
  598. package/dist/src/vis/lineplot/tooltip/Tooltip.d.ts.map +0 -1
  599. package/dist/src/vis/lineplot/tooltip/aether/index.d.ts.map +0 -1
  600. package/dist/src/vis/lineplot/tooltip/aether/tooltip.d.ts.map +0 -1
  601. package/dist/src/vis/lineplot/tooltip/index.d.ts.map +0 -1
  602. package/dist/src/vis/lineplot/useBoundQuerier.d.ts.map +0 -1
  603. package/dist/src/vis/log/Log.d.ts.map +0 -1
  604. package/dist/src/vis/log/aether/Log.d.ts.map +0 -1
  605. package/dist/src/vis/log/aether/index.d.ts.map +0 -1
  606. package/dist/src/vis/log/index.d.ts +0 -2
  607. package/dist/src/vis/log/index.d.ts.map +0 -1
  608. package/dist/units-DkdMPsxa.cjs +0 -1
  609. package/dist/useKeysData-B1kiZOOw.js +0 -14
  610. package/dist/useKeysData-G9Mk3mA6.cjs +0 -1
  611. /package/dist/src/{vis/lineplot → lineplot}/aether/external.d.ts +0 -0
  612. /package/dist/src/{vis/lineplot → lineplot}/aether/index.d.ts +0 -0
  613. /package/dist/src/{vis/lineplot → lineplot}/index.d.ts +0 -0
  614. /package/dist/src/{vis/lineplot → lineplot}/range/aether/index.d.ts +0 -0
  615. /package/dist/src/{vis/lineplot → lineplot}/range/external.d.ts +0 -0
  616. /package/dist/src/{vis/lineplot → lineplot}/range/index.d.ts +0 -0
  617. /package/dist/src/{vis/lineplot → lineplot}/tooltip/aether/index.d.ts +0 -0
  618. /package/dist/src/{vis/lineplot → lineplot}/tooltip/index.d.ts +0 -0
  619. /package/dist/src/{vis/lineplot → lineplot}/useBoundQuerier.d.ts +0 -0
  620. /package/dist/src/{vis/log → log}/aether/index.d.ts +0 -0
  621. /package/dist/src/{vis/diagram → schematic}/edge/connector/connector.d.ts +0 -0
  622. /package/dist/src/{vis/diagram → schematic}/edge/connector/connector.spec.d.ts +0 -0
  623. /package/dist/src/{vis/diagram → schematic}/edge/connector/index.d.ts +0 -0
  624. /package/dist/src/status/{Aggregator.spec.d.ts → core/Aggregator.spec.d.ts} +0 -0
  625. /package/dist/src/status/{Notification.spec.d.ts → core/Notification.spec.d.ts} +0 -0
  626. /package/dist/src/status/{colors.d.ts → core/colors.d.ts} +0 -0
@@ -1,194 +1,65 @@
1
1
  import { Synnax as Client } from '@synnaxlabs/client';
2
2
  import { Destructor } from '@synnaxlabs/x';
3
- import { flux } from './aether';
4
- import { FetchOptions, Params } from './core/params';
3
+ import { core } from './core';
5
4
  import { Result } from './result';
6
5
  import { state } from '../state';
7
- /**
8
- * Arguments passed to the `retrieve` function when executing a query.
9
- *
10
- * @template RetrieveParams The type of parameters for the retrieve operation
11
- */
12
- export interface RetrieveArgs<RetrieveParams, ScopedStore extends flux.Store> {
13
- /** The Synnax client instance for making requests */
6
+ export interface RetrieveParams<Query extends core.Shape, Store extends core.Store> {
14
7
  client: Client;
15
- /** The parameters for the retrieve operation */
16
- params: RetrieveParams;
17
- /** The store instance for storing data */
18
- store: ScopedStore;
8
+ query: Query;
9
+ store: Store;
19
10
  }
20
- export interface MountListenersArgs<ScopedStore extends flux.Store, RetrieveParams, Data extends state.State> {
21
- store: ScopedStore;
22
- client: Client;
23
- params: RetrieveParams;
24
- onChange: state.Setter<Data>;
11
+ export interface RetrieveMountListenersParams<Query extends core.Shape, Data extends core.Shape, Store extends core.Store> extends RetrieveParams<Query, Store> {
12
+ onChange: state.Setter<Data | undefined>;
25
13
  }
26
- /**
27
- * Configuration arguments for creating a retrieve query.
28
- *
29
- * @template RetrieveParams The type of parameters for the retrieve operation
30
- * @template Data The type of data being retrieved
31
- */
32
- export interface CreateRetrieveArgs<RetrieveParams, Data extends state.State, ScopedStore extends flux.Store> {
33
- /**
34
- * The name of the resource being retrieved. This is used to make pretty messages for
35
- * the various query states. This name should be in a human readable format and
36
- * capitalized as a proper noun.
37
- */
14
+ export interface CreateRetrieveParams<Query extends core.Shape, Data extends core.Shape, Store extends core.Store> {
38
15
  name: string;
39
- /** Function executed when the query is evaluated or the query parameters change. */
40
- retrieve: (args: RetrieveArgs<RetrieveParams, ScopedStore>) => Promise<Data>;
41
- /**
42
- * Listeners to mount to the query. These listeners will be re-mounted when
43
- * the query parameters change and/or the client disconnects/re-connects or clusters
44
- * are switched.
45
- *
46
- * These listeners will NOT be remounted when the identity of the onChange function
47
- * changes, as the onChange function should be static.
48
- */
49
- mountListeners?: (args: MountListenersArgs<ScopedStore, RetrieveParams, Data>) => Destructor | Destructor[];
16
+ retrieve: (Params: RetrieveParams<Query, Store>) => Promise<Data>;
17
+ mountListeners?: (Params: RetrieveMountListenersParams<Query, Data, Store>) => Destructor | Destructor[];
18
+ }
19
+ export interface BeforeRetrieveParams<Query extends core.Shape> {
20
+ query: Query;
50
21
  }
51
- /**
52
- * Arguments for the observable retrieve hook.
53
- *
54
- * @template V The type of data being retrieved
55
- */
56
- export interface UseObservableRetrieveArgs<V extends state.State> {
57
- /** Callback function to handle state changes */
58
- onChange: state.Setter<Result<V>>;
59
- /** The scope to use for the retrieve operation */
22
+ export interface UseObservableBaseRetrieveParams<Query extends core.Shape, Data extends state.State> {
23
+ addStatusOnFailure?: boolean;
24
+ beforeRetrieve?: (Params: BeforeRetrieveParams<Query>) => Data | boolean;
25
+ onChange: (result: state.SetArg<Result<Data>>, query: Query) => void;
60
26
  scope?: string;
61
27
  }
62
- /**
63
- * Return type for the observable retrieve hook.
64
- *
65
- * @template RetrieveParams The type of parameters for the retrieve operation
66
- */
67
- export interface UseObservableRetrieveReturn<RetrieveParams extends Params> {
68
- /** Function to trigger a retrieve operation (fire-and-forget) */
69
- retrieve: (params: state.SetArg<RetrieveParams, Partial<RetrieveParams>>, options?: FetchOptions) => void;
70
- /** Function to trigger a retrieve operation and await the result */
71
- retrieveAsync: (params: state.SetArg<RetrieveParams, Partial<RetrieveParams>>, options?: FetchOptions) => Promise<void>;
28
+ export interface UseRetrieveObservableParams<Query extends core.Shape, Data extends state.State> extends Omit<UseObservableBaseRetrieveParams<Query, Data>, "onChange"> {
29
+ onChange: (result: Result<Data>, query: Query) => void;
72
30
  }
73
- /**
74
- * Return type for the stateful retrieve hook, combining result state with retrieve functions.
75
- *
76
- * @template RetrieveParams The type of parameters for the retrieve operation
77
- * @template Data The type of data being retrieved
78
- */
79
- export type UseStatefulRetrieveReturn<RetrieveParams extends Params, Data extends state.State> = Result<Data> & UseObservableRetrieveReturn<RetrieveParams>;
80
- /**
81
- * Arguments for the direct retrieve hook.
82
- *
83
- * @template RetrieveParams The type of parameters for the retrieve operation
84
- */
85
- export interface UseDirectRetrieveArgs<RetrieveParams extends Params> {
86
- /** Parameters for the retrieve operation */
87
- params: RetrieveParams;
31
+ export interface UseRetrieveObservableReturn<Query extends core.Shape> {
32
+ retrieve: (query: state.SetArg<Query, Partial<Query>>, options?: core.FetchOptions) => void;
33
+ retrieveAsync: (query: state.SetArg<Query, Partial<Query>>, options?: core.FetchOptions) => Promise<void>;
34
+ }
35
+ export type UseRetrieveStatefulReturn<Query extends core.Shape, Data extends state.State> = Result<Data> & UseRetrieveObservableReturn<Query>;
36
+ export interface UseDirectRetrieveParams<Query extends core.Shape, Data extends state.State> extends Pick<UseObservableBaseRetrieveParams<Query, Data>, "scope" | "beforeRetrieve" | "addStatusOnFailure"> {
37
+ query: Query;
88
38
  }
89
- /**
90
- * Return type for the direct retrieve hook.
91
- *
92
- * @template Data The type of data being retrieved
93
- */
94
39
  export type UseDirectRetrieveReturn<Data extends state.State> = Result<Data>;
95
- /**
96
- * Arguments for the effect retrieve hook.
97
- *
98
- * @template RetrieveParams The type of parameters for the retrieve operation
99
- * @template Data The type of data being retrieved
100
- */
101
- export interface UseEffectRetrieveArgs<RetrieveParams extends Params, Data extends state.State> {
40
+ export interface UseRetrieveEffectParams<Query extends core.Shape, Data extends state.State> {
102
41
  scope?: string;
103
- onChange?: (result: Result<Data>) => void;
104
- /** Parameters for the retrieve operation */
105
- params?: RetrieveParams;
42
+ onChange?: (result: Result<Data>, query: Query) => void;
43
+ query?: Query;
44
+ }
45
+ export interface UseRetrieve<Query extends core.Shape, Data extends state.State> {
46
+ (params: Query, opts?: Pick<UseDirectRetrieveParams<Query, Data>, "beforeRetrieve" | "addStatusOnFailure">): UseDirectRetrieveReturn<Data>;
47
+ }
48
+ export interface UseRetrieveEffect<Query extends core.Shape, Data extends state.State> {
49
+ (params: UseRetrieveEffectParams<Query, Data>): void;
50
+ }
51
+ export interface UseRetrieveStateful<Query extends core.Shape, Data extends state.State> {
52
+ (): UseRetrieveStatefulReturn<Query, Data>;
53
+ }
54
+ export interface UseRetrieveObservable<Query extends core.Shape, Data extends state.State> {
55
+ (params: UseRetrieveObservableParams<Query, Data>): UseRetrieveObservableReturn<Query>;
106
56
  }
107
- /**
108
- * Return type for the createRetrieve function.
109
- *
110
- * @template RetrieveParams The type of parameters for the retrieve operation
111
- * @template Data The type of data being retrieved
112
- */
113
- export interface CreateRetrieveReturn<RetrieveParams extends Params, Data extends state.State> {
114
- /**
115
- * Hook that automatically fetches data when parameters change and returns the result state.
116
- * Use this for most cases where you want React to handle the data fetching lifecycle automatically.
117
- * Data is fetched when the component mounts and re-fetched whenever params change.
118
- */
119
- useDirect: (args: UseDirectRetrieveArgs<RetrieveParams>) => UseDirectRetrieveReturn<Data>;
120
- /**
121
- * Hook that triggers data fetching as a side effect when parameters change but returns nothing.
122
- * Use this when you need to trigger data fetching but handle the result state externally
123
- * (e.g., through the onChange callback). Returns void - no state is managed internally.
124
- */
125
- useEffect: (args: UseEffectRetrieveArgs<RetrieveParams, Data>) => void;
126
- /**
127
- * Hook that provides manual control over when data is fetched, with internal state management.
128
- * Use this when you need to trigger data fetching based on user actions or specific events.
129
- * Returns both the current state (data, variant, error) and functions to manually trigger retrieval.
130
- */
131
- useStateful: () => UseStatefulRetrieveReturn<RetrieveParams, Data>;
57
+ export interface CreateRetrieveReturn<Query extends core.Shape, Data extends state.State> {
58
+ useRetrieve: UseRetrieve<Query, Data>;
59
+ useRetrieveEffect: UseRetrieveEffect<Query, Data>;
60
+ useRetrieveStateful: UseRetrieveStateful<Query, Data>;
61
+ useRetrieveObservable: UseRetrieveObservable<Query, Data>;
132
62
  }
133
- /**
134
- * Creates a retrieve query system that provides hooks for fetching data with different control patterns.
135
- *
136
- * This function creates a set of React hooks that handle data retrieval with
137
- * proper loading states, error handling, caching, and real-time updates. It provides
138
- * two hook variants for different use cases:
139
- *
140
- * - `useDirect`: Automatically fetches data when parameters change. Best for most use cases.
141
- * - `useEffect`: Triggers data fetching as a side effect without returning state. Use when handling results externally.
142
- *
143
- * @template RetrieveParams The type of parameters for the retrieve operation
144
- * @template Data The type of data being retrieved
145
- * @param factoryArgs Configuration object containing the retrieve function and resource name
146
- * @returns Object containing hooks for different retrieve patterns
147
- *
148
- * @example
149
- * ```typescript
150
- * interface UserRetrieveParams extends Params {
151
- * userId: number;
152
- * includeProfile?: boolean;
153
- * }
154
- *
155
- * interface User {
156
- * id: number;
157
- * name: string;
158
- * email: string;
159
- * }
160
- *
161
- * const userRetrieve = createRetrieve<UserRetrieveParams, User>({
162
- * name: "User",
163
- * retrieve: async ({ params, client }) => {
164
- * return await client.users.get(params.userId, {
165
- * includeProfile: params.includeProfile
166
- * });
167
- * },
168
- * listeners: [
169
- * {
170
- * channel: "user_updates",
171
- * onChange: ({ changed, params, onChange }) => {
172
- * const updatedUser = changed.get("user_updates");
173
- * if (updatedUser.id === params.userId) {
174
- * onChange(updatedUser);
175
- * }
176
- * }
177
- * }
178
- * ]
179
- * });
180
- *
181
- * // Automatic fetching - data loads when component mounts and when userId changes
182
- * const { data, variant, error } = userRetrieve.useDirect({
183
- * params: { userId: 123, includeProfile: true }
184
- * });
185
- *
186
- * // Side effect only - trigger fetching but handle result elsewhere
187
- * userRetrieve.useEffect({
188
- * params: { userId: 123 },
189
- * onChange: (result) => analyticsService.track('user_loaded', result)
190
- * });
191
- * ```
192
- */
193
- export declare const createRetrieve: <RetrieveParams extends Params, Data extends state.State, ScopedStore extends flux.Store = {}>(factoryArgs: CreateRetrieveArgs<RetrieveParams, Data, ScopedStore>) => CreateRetrieveReturn<RetrieveParams, Data>;
63
+ export declare const useObservableRetrieve: <Query extends core.Shape, Data extends state.State, ScopedStore extends core.Store>({ onChange, ...restParams }: UseRetrieveObservableParams<Query, Data> & CreateRetrieveParams<Query, Data, ScopedStore>) => UseRetrieveObservableReturn<Query>;
64
+ export declare const createRetrieve: <Query extends core.Shape, Data extends state.State, ScopedStore extends core.Store = {}>(createParams: CreateRetrieveParams<Query, Data, ScopedStore>) => CreateRetrieveReturn<Query, Data>;
194
65
  //# sourceMappingURL=retrieve.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"retrieve.d.ts","sourceRoot":"","sources":["../../../src/flux/retrieve.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"retrieve.d.ts","sourceRoot":"","sources":["../../../src/flux/retrieve.ts"],"names":[],"mappings":"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"}
@@ -1,148 +1,59 @@
1
1
  import { Synnax as Client } from '@synnaxlabs/client';
2
- import { FetchOptions, Params } from './core/params';
3
- import { Store } from './core/store';
4
- import { Result } from './result';
2
+ import { Destructor, status } from '@synnaxlabs/x';
3
+ import { default as z } from 'zod';
4
+ import { core } from './core';
5
+ import { InitialStatusDetailsContainer, Result, ResultStatus } from './result';
5
6
  import { state } from '../state';
6
- /**
7
- * Arguments passed to the update function.
8
- *
9
- * @template UpdateParams The type of parameters for the update operation
10
- * @template Data The type of data being updated
11
- */
12
- export interface UpdateArgs<UpdateParams extends Params, Data extends state.State, ScopedStore extends Store = {}> {
13
- /** The data to be updated */
14
- value: Data;
15
- /** Parameters for the update operation */
16
- params: UpdateParams;
17
- /** The Synnax client instance for making requests */
7
+ export interface UpdateParams<Input extends core.Shape, Store extends core.Store, StatusDetails extends z.ZodType = z.ZodNever> {
8
+ data: Input;
18
9
  client: Client;
19
- /** Function to update the form state with new data */
20
- onChange: state.PureSetter<Data>;
21
- /** The store to update */
22
- store: ScopedStore;
10
+ store: Store;
11
+ rollbacks: Destructor[];
12
+ setStatus: (setter: state.SetArg<ResultStatus<StatusDetails>>) => void;
23
13
  }
24
- /**
25
- * Configuration arguments for creating an update query.
26
- *
27
- * @template UpdateParams The type of parameters for the update operation
28
- * @template Data The type of data being updated
29
- */
30
- export interface CreateUpdateArgs<UpdateParams extends Params, Data extends state.State, ScopedStore extends Store = {}> {
31
- /** The name of the resource being updated (used for status messages) */
14
+ export type CreateUpdateParams<Input extends core.Shape, ScopedStore extends core.Store, Output extends core.Shape = Input, StatusDetails extends z.ZodType = z.ZodNever> = {
32
15
  name: string;
33
- /** Function that performs the actual update operation */
34
- update: (args: UpdateArgs<UpdateParams, Data, ScopedStore>) => Promise<void>;
35
- }
36
- /**
37
- * Return type for the observable update hook.
38
- *
39
- * @template Data The type of data being updated
40
- */
41
- export interface UseObservableUpdateReturn<Data extends state.State> {
42
- /** Function to trigger an update (fire-and-forget) */
43
- update: (value: Data, opts?: FetchOptions) => void;
44
- /** Function to trigger an update and await the result */
45
- updateAsync: (value: Data, opts?: FetchOptions) => Promise<boolean>;
46
- }
47
- /**
48
- * Arguments for the observable update hook.
49
- *
50
- * @template UpdateParams The type of parameters for the update operation
51
- * @template Data The type of data being updated
52
- */
53
- export interface UseObservableUpdateArgs<UpdateParams extends Params, Data extends state.State> {
54
- /** Callback function to handle state changes */
55
- onChange: state.Setter<Result<Data | undefined>>;
56
- /** Parameters for the update operation */
57
- params: UpdateParams;
58
- /** The scope to use for the update operation */
16
+ verbs: core.Verbs;
17
+ update: (params: UpdateParams<Input, ScopedStore, StatusDetails>) => Promise<Output | false>;
18
+ } & InitialStatusDetailsContainer<StatusDetails>;
19
+ export interface UseObservableUpdateReturn<Input extends core.Shape> {
20
+ update: (data: Input, opts?: core.FetchOptions) => void;
21
+ updateAsync: (data: Input, opts?: core.FetchOptions) => Promise<boolean>;
22
+ }
23
+ export interface UseObservableUpdateParams<Input extends core.Shape, Output extends core.Shape = Input, StatusDetails extends z.ZodType = z.ZodNever> {
24
+ debounce?: number;
25
+ onChange: state.Setter<Result<Input | undefined, StatusDetails>>;
59
26
  scope?: string;
60
- /** Function to run before the update operation. If the function returns undefined,
61
- * the update will be cancelled. */
62
- beforeUpdate?: (args: BeforeUpdateArgs<Data>) => Promise<Data | boolean>;
63
- /** Function to run after the update operation. */
64
- afterUpdate?: (args: AfterUpdateArgs<Data>) => Promise<void>;
27
+ beforeUpdate?: (params: BeforeUpdateParams<Input>) => Promise<Input | boolean> | Input | boolean;
28
+ afterSuccess?: (params: AfterSuccessParams<Output>) => Promise<void> | void;
29
+ afterFailure?: (params: AfterFailureParams<Input>) => Promise<void> | void;
30
+ }
31
+ export interface BeforeUpdateParams<Data extends core.Shape> {
32
+ rollbacks: Destructor[];
33
+ client: Client;
34
+ data: Data;
65
35
  }
66
- export interface BeforeUpdateArgs<Data extends state.State> {
36
+ export interface AfterSuccessParams<Output extends core.Shape> {
67
37
  client: Client;
68
- value: Data;
38
+ data: Output;
69
39
  }
70
- export interface AfterUpdateArgs<Data extends state.State> {
40
+ export interface AfterFailureParams<Data extends core.Shape> {
71
41
  client: Client;
72
- value: Data;
42
+ status: status.Status<typeof status.exceptionDetailsSchema, "error">;
43
+ data: Data;
44
+ }
45
+ export interface UseDirectUpdateParams<Input extends core.Shape, Output extends core.Shape = Input, StatusDetails extends z.ZodType = z.ZodNever> extends Omit<UseObservableUpdateParams<Input, Output, StatusDetails>, "onChange"> {
46
+ }
47
+ export type UseDirectUpdateReturn<Input extends core.Shape, StatusDetails extends z.ZodType = z.ZodNever> = Result<Input | undefined, StatusDetails> & UseObservableUpdateReturn<Input>;
48
+ export interface UseObservableUpdate<Input extends core.Shape, Output extends core.Shape = Input, StatusDetails extends z.ZodType = z.ZodNever> {
49
+ (args: UseObservableUpdateParams<Input, Output, StatusDetails>): UseObservableUpdateReturn<Input>;
73
50
  }
74
- /**
75
- * Arguments for the direct update hook.
76
- *
77
- * @template UpdateParams The type of parameters for the update operation
78
- */
79
- export interface UseDirectUpdateArgs<UpdateParams extends Params, Data extends state.State> extends Omit<UseObservableUpdateArgs<UpdateParams, Data>, "onChange"> {
51
+ export interface UseUpdate<Input extends core.Shape, Output extends core.Shape = Input, StatusDetails extends z.ZodType = z.ZodNever> {
52
+ (args?: UseDirectUpdateParams<Input, Output, StatusDetails>): UseDirectUpdateReturn<Input, StatusDetails>;
80
53
  }
81
- /**
82
- * Return type for the direct update hook, combining result state with update functions.
83
- *
84
- * @template Data The type of data being updated
85
- */
86
- export type UseDirectUpdateReturn<Data extends state.State> = Result<Data | undefined> & UseObservableUpdateReturn<Data>;
87
- /**
88
- * Return type for the createUpdate function.
89
- *
90
- * @template UpdateParams The type of parameters for the update operation
91
- * @template Data The type of data being updated
92
- */
93
- export interface CreateUpdateReturn<UpdateParams extends Params, Data extends state.State> {
94
- /** Hook that provides update functions with external state management */
95
- useObservable: (args: UseObservableUpdateArgs<UpdateParams, Data>) => UseObservableUpdateReturn<Data>;
96
- /** Hook that provides update functions with internal state management */
97
- useDirect: (args: UseDirectUpdateArgs<UpdateParams, Data>) => UseDirectUpdateReturn<Data>;
54
+ export interface CreateUpdateReturn<Input extends core.Shape, Output extends core.Shape = Input, StatusDetails extends z.ZodType = z.ZodNever> {
55
+ useObservableUpdate: UseObservableUpdate<Input, Output, StatusDetails>;
56
+ useUpdate: UseUpdate<Input, Output, StatusDetails>;
98
57
  }
99
- /**
100
- * Creates an update query system that provides hooks for updating data.
101
- *
102
- * This function creates a set of React hooks that handle data updates with
103
- * proper loading states, error handling, and optimistic updates. It provides
104
- * both observable and direct variants for different use cases.
105
- *
106
- * @template UpdateParams The type of parameters for the update operation
107
- * @template Data The type of data being updated
108
- * @param createArgs Configuration object containing the update function and resource name
109
- * @returns Object containing hooks for different update patterns
110
- *
111
- * @example
112
- * ```typescript
113
- * interface UserUpdateParams extends Params {
114
- * userId: number;
115
- * }
116
- *
117
- * interface User {
118
- * id: number;
119
- * name: string;
120
- * email: string;
121
- * }
122
- *
123
- * const userUpdate = createUpdate<UserUpdateParams, User>({
124
- * name: "user",
125
- * update: async ({ value, params, client }) => {
126
- * await client.users.update(params.userId, value);
127
- * }
128
- * });
129
- *
130
- * // Usage with external state management
131
- * const { update, updateAsync } = userUpdate.useObservable({
132
- * params: { userId: 123 },
133
- * onChange: (result) => {
134
- * console.log("Update result:", result);
135
- * }
136
- * });
137
- *
138
- * // Usage with internal state management
139
- * const { update, updateAsync, variant, error } = userUpdate.useDirect({
140
- * params: { userId: 123 }
141
- * });
142
- *
143
- * // Trigger update
144
- * await updateAsync({ id: 123, name: "John", email: "john@example.com" });
145
- * ```
146
- */
147
- export declare const createUpdate: <UpdateParams extends Params, Data extends state.State, ScopedStore extends Store = {}>(createArgs: CreateUpdateArgs<UpdateParams, Data, ScopedStore>) => CreateUpdateReturn<UpdateParams, Data>;
58
+ export declare const createUpdate: <Input extends core.Shape, ScopedStore extends core.Store, Output extends core.Shape = Input, StatusDetails extends z.ZodType = z.ZodNever>(createParams: CreateUpdateParams<Input, ScopedStore, Output, StatusDetails>) => CreateUpdateReturn<Input, Output, StatusDetails>;
148
59
  //# sourceMappingURL=update.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"update.d.ts","sourceRoot":"","sources":["../../../src/flux/update.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"update.d.ts","sourceRoot":"","sources":["../../../src/flux/update.ts"],"names":[],"mappings":"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"}
@@ -34,6 +34,6 @@ export interface ContextValue<Z extends z.ZodType = z.ZodType> {
34
34
  setCurrentStateAsInitialValues: () => void;
35
35
  getStatuses: () => status.Crude[];
36
36
  }
37
- export declare const Context: import('react').Context<ContextValue<z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>>>;
38
- export declare const useContext: <Z extends z.ZodType = z.ZodType>(override?: ContextValue<Z>) => ContextValue<Z>;
37
+ export declare const Context: import('react').Context<ContextValue<z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>> | null>;
38
+ export declare const useContext: <Z extends z.ZodType = z.ZodType>(override?: ContextValue<Z>, funcName?: string) => ContextValue<Z>;
39
39
  //# sourceMappingURL=Context.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Context.d.ts","sourceRoot":"","sources":["../../../src/form/Context.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,KAAK,UAAU,EAAE,KAAK,MAAM,EAAE,MAAM,eAAe,CAAC;AAE7D,OAAO,EAAE,KAAK,CAAC,EAAE,MAAM,KAAK,CAAC;AAE7B,OAAO,EAAmB,KAAK,KAAK,EAAE,MAAM,cAAc,CAAC;AAE3D,MAAM,WAAW,UAAU;IACzB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;CACtB;AAED,MAAM,WAAW,UAAU;IACzB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AAED,MAAM,WAAW,OAAO;IACtB,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE,UAAU,GAAG,IAAI,CAAC;CAC5D;AAED,MAAM,WAAW,QAAQ;IACvB,IAAI,IAAI,CAAC;CACV;AAED,MAAM,WAAW,QAAQ;IACvB,CAAC,KAAK,EAAE,QAAQ,GAAG,UAAU,CAAC;CAC/B;AAED,MAAM,MAAM,IAAI,GAAG,QAAQ,GAAG,SAAS,CAAC;AACxC,MAAM,WAAW,YAAY,CAAC,CAAC,SAAS,CAAC,CAAC,OAAO,GAAG,CAAC,CAAC,OAAO;IAC3D,IAAI,EAAE,IAAI,CAAC;IACX,IAAI,EAAE,QAAQ,CAAC;IACf,GAAG,EAAE,OAAO,CAAC;IACb,GAAG,EAAE,OAAO,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC;IACrC,KAAK,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC;IACrC,MAAM,EAAE,UAAU,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IACxB,QAAQ,EAAE,CAAC,IAAI,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC;IACrC,aAAa,EAAE,CAAC,IAAI,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;IACnD,GAAG,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC;IAC/B,SAAS,EAAE,OAAO,KAAK,CAAC,SAAS,CAAC,SAAS,CAAC;IAC5C,aAAa,EAAE,MAAM,IAAI,CAAC;IAC1B,8BAA8B,EAAE,MAAM,IAAI,CAAC;IAC3C,WAAW,EAAE,MAAM,MAAM,CAAC,KAAK,EAAE,CAAC;CACnC;AAED,eAAO,MAAM,OAAO,gHAoBlB,CAAC;AAEH,eAAO,MAAM,UAAU,GAAI,CAAC,SAAS,CAAC,CAAC,OAAO,GAAG,CAAC,CAAC,OAAO,EACxD,WAAW,YAAY,CAAC,CAAC,CAAC,KACzB,YAAY,CAAC,CAAC,CAGhB,CAAC"}
1
+ {"version":3,"file":"Context.d.ts","sourceRoot":"","sources":["../../../src/form/Context.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,KAAK,UAAU,EAAE,KAAK,MAAM,EAAE,MAAM,eAAe,CAAC;AAE7D,OAAO,EAAE,KAAK,CAAC,EAAE,MAAM,KAAK,CAAC;AAE7B,OAAO,EAAE,KAAK,KAAK,EAAE,MAAM,cAAc,CAAC;AAE1C,MAAM,WAAW,UAAU;IACzB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;CACtB;AAED,MAAM,WAAW,UAAU;IACzB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AAED,MAAM,WAAW,OAAO;IACtB,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE,UAAU,GAAG,IAAI,CAAC;CAC5D;AAED,MAAM,WAAW,QAAQ;IACvB,IAAI,IAAI,CAAC;CACV;AAED,MAAM,WAAW,QAAQ;IACvB,CAAC,KAAK,EAAE,QAAQ,GAAG,UAAU,CAAC;CAC/B;AAED,MAAM,MAAM,IAAI,GAAG,QAAQ,GAAG,SAAS,CAAC;AACxC,MAAM,WAAW,YAAY,CAAC,CAAC,SAAS,CAAC,CAAC,OAAO,GAAG,CAAC,CAAC,OAAO;IAC3D,IAAI,EAAE,IAAI,CAAC;IACX,IAAI,EAAE,QAAQ,CAAC;IACf,GAAG,EAAE,OAAO,CAAC;IACb,GAAG,EAAE,OAAO,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC;IACrC,KAAK,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC;IACrC,MAAM,EAAE,UAAU,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IACxB,QAAQ,EAAE,CAAC,IAAI,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC;IACrC,aAAa,EAAE,CAAC,IAAI,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;IACnD,GAAG,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC;IAC/B,SAAS,EAAE,OAAO,KAAK,CAAC,SAAS,CAAC,SAAS,CAAC;IAC5C,aAAa,EAAE,MAAM,IAAI,CAAC;IAC1B,8BAA8B,EAAE,MAAM,IAAI,CAAC;IAC3C,WAAW,EAAE,MAAM,MAAM,CAAC,KAAK,EAAE,CAAC;CACnC;AAED,eAAO,MAAM,OAAO,uHAA2C,CAAC;AAEhE,eAAO,MAAM,UAAU,GAAI,CAAC,SAAS,CAAC,CAAC,OAAO,GAAG,CAAC,CAAC,OAAO,EACxD,WAAW,YAAY,CAAC,CAAC,CAAC,EAC1B,WAAU,MAA0B,KACnC,YAAY,CAAC,CAAC,CAKhB,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=Context.spec.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Context.spec.d.ts","sourceRoot":"","sources":["../../../src/form/Context.spec.tsx"],"names":[],"mappings":""}
@@ -1,36 +1,36 @@
1
- import { group, ontology, Synnax } from '@synnaxlabs/client';
1
+ import { group, ontology } from '@synnaxlabs/client';
2
2
  import { Flux } from '../flux';
3
3
  import { Ontology } from '../ontology';
4
4
  export declare const FLUX_STORE_KEY = "groups";
5
- export interface FluxStore extends Flux.UnaryStore<group.Key, group.Payload> {
5
+ export declare const RESOURCE_NAME = "Group";
6
+ export declare const PLURAL_RESOURCE_NAME = "Groups";
7
+ export interface FluxStore extends Flux.UnaryStore<group.Key, group.Group> {
6
8
  }
7
- interface SubStore extends Flux.Store {
9
+ export interface FluxSubStore extends Flux.Store {
8
10
  [FLUX_STORE_KEY]: FluxStore;
9
11
  [Ontology.RELATIONSHIPS_FLUX_STORE_KEY]: Ontology.RelationshipFluxStore;
12
+ [Ontology.RESOURCES_FLUX_STORE_KEY]: Ontology.ResourceFluxStore;
10
13
  }
11
- export declare const FLUX_STORE_CONFIG: Flux.UnaryStoreConfig<SubStore>;
12
- export declare const singleRetrieve: (key: group.Key, client: Synnax, subStore: SubStore) => Promise<group.Payload>;
13
- export interface CreateParams {
14
- key?: group.Key;
14
+ export declare const FLUX_STORE_CONFIG: Flux.UnaryStoreConfig<FluxSubStore>;
15
+ export interface RetrieveQuery {
16
+ key: group.Key;
15
17
  }
16
- export interface CreateValue extends group.Payload {
17
- parent: ontology.ID;
18
+ export declare const retrieveSingle: ({ query: { key }, client, store, }: Flux.RetrieveParams<RetrieveQuery, FluxSubStore>) => Promise<group.Group>;
19
+ export interface CreateParams extends group.CreateArgs {
18
20
  }
19
- export declare const create: Flux.CreateUpdateReturn<CreateParams, CreateValue>;
20
- export interface ListParams {
21
+ export declare const useCreate: Flux.UseUpdate<CreateParams, CreateParams, import('zod').ZodNever>;
22
+ export interface ListQuery {
21
23
  parent?: ontology.ID;
22
24
  searchTerm?: string;
23
25
  offset?: number;
24
26
  limit?: number;
25
27
  }
26
- export declare const useList: Flux.UseList<ListParams, string, group.Payload>;
27
- export interface RenameParams {
28
- key: string;
29
- }
30
- export declare const useRename: (args: Flux.UseDirectUpdateArgs<RenameParams, string>) => Flux.UseDirectUpdateReturn<string>;
28
+ export declare const useList: Flux.UseList<ListQuery, string, group.Group>;
31
29
  export interface DeleteParams {
32
30
  key: string;
33
31
  }
34
- export declare const useDelete: (args: Flux.UseDirectUpdateArgs<DeleteParams, void>) => Flux.UseDirectUpdateReturn<void>;
35
- export {};
32
+ export declare const useDelete: Flux.UseUpdate<DeleteParams, DeleteParams, import('zod').ZodNever>;
33
+ export interface RenameParams extends Pick<group.Group, "key" | "name"> {
34
+ }
35
+ export declare const useRename: Flux.UseUpdate<RenameParams, RenameParams, import('zod').ZodNever>;
36
36
  //# sourceMappingURL=queries.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"queries.d.ts","sourceRoot":"","sources":["../../../src/group/queries.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAElE,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAC9B,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,YAAY,CAAC;AAE3C,eAAO,MAAM,cAAc,WAAW,CAAC;AAEvC,MAAM,WAAW,SAAU,SAAQ,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,GAAG,EAAE,KAAK,CAAC,OAAO,CAAC;CAAG;AAE/E,UAAU,QAAS,SAAQ,IAAI,CAAC,KAAK;IACnC,CAAC,cAAc,CAAC,EAAE,SAAS,CAAC;IAC5B,CAAC,QAAQ,CAAC,4BAA4B,CAAC,EAAE,QAAQ,CAAC,qBAAqB,CAAC;CACzE;AAcD,eAAO,MAAM,iBAAiB,EAAE,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAE7D,CAAC;AAEF,eAAO,MAAM,cAAc,GACzB,KAAK,KAAK,CAAC,GAAG,EACd,QAAQ,MAAM,EACd,UAAU,QAAQ,2BAOnB,CAAC;AAEF,MAAM,WAAW,YAAY;IAC3B,GAAG,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC;CACjB;AAED,MAAM,WAAW,WAAY,SAAQ,KAAK,CAAC,OAAO;IAChD,MAAM,EAAE,QAAQ,CAAC,EAAE,CAAC;CACrB;AAED,eAAO,MAAM,MAAM,oDAQjB,CAAC;AAEH,MAAM,WAAW,UAAU;IACzB,MAAM,CAAC,EAAE,QAAQ,CAAC,EAAE,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,eAAO,MAAM,OAAO,iDAyDlB,CAAC;AAEH,MAAM,WAAW,YAAY;IAC3B,GAAG,EAAE,MAAM,CAAC;CACb;AAED,eAAO,MAAM,SAAS,8FAIV,CAAC;AAEb,MAAM,WAAW,YAAY;IAC3B,GAAG,EAAE,MAAM,CAAC;CACb;AAED,eAAO,MAAM,SAAS,0FAGV,CAAC"}
1
+ {"version":3,"file":"queries.d.ts","sourceRoot":"","sources":["../../../src/group/queries.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAErD,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAC9B,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAEtC,eAAO,MAAM,cAAc,WAAW,CAAC;AACvC,eAAO,MAAM,aAAa,UAAU,CAAC;AACrC,eAAO,MAAM,oBAAoB,WAAW,CAAC;AAE7C,MAAM,WAAW,SAAU,SAAQ,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,GAAG,EAAE,KAAK,CAAC,KAAK,CAAC;CAAG;AAE7E,MAAM,WAAW,YAAa,SAAQ,IAAI,CAAC,KAAK;IAC9C,CAAC,cAAc,CAAC,EAAE,SAAS,CAAC;IAC5B,CAAC,QAAQ,CAAC,4BAA4B,CAAC,EAAE,QAAQ,CAAC,qBAAqB,CAAC;IACxE,CAAC,QAAQ,CAAC,wBAAwB,CAAC,EAAE,QAAQ,CAAC,iBAAiB,CAAC;CACjE;AAcD,eAAO,MAAM,iBAAiB,EAAE,IAAI,CAAC,gBAAgB,CAAC,YAAY,CAEjE,CAAC;AAEF,MAAM,WAAW,aAAa;IAC5B,GAAG,EAAE,KAAK,CAAC,GAAG,CAAC;CAChB;AAED,eAAO,MAAM,cAAc,GAAU,oCAIlC,IAAI,CAAC,cAAc,CAAC,aAAa,EAAE,YAAY,CAAC,yBAMlD,CAAC;AAEF,MAAM,WAAW,YAAa,SAAQ,KAAK,CAAC,UAAU;CAAG;AAEzD,eAAO,MAAmB,SAAS,oEASjC,CAAC;AAEH,MAAM,WAAW,SAAS;IACxB,MAAM,CAAC,EAAE,QAAQ,CAAC,EAAE,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,eAAO,MAAM,OAAO,8CA4DnB,CAAC;AAEF,MAAM,WAAW,YAAY;IAC3B,GAAG,EAAE,MAAM,CAAC;CACb;AAED,eAAO,MAAmB,SAAS,oEAQjC,CAAC;AAEH,MAAM,WAAW,YAAa,SAAQ,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,GAAG,MAAM,CAAC;CAAG;AAE1E,eAAO,MAAmB,SAAS,oEAUjC,CAAC"}
@@ -4,7 +4,7 @@ import { Flux } from '../../flux';
4
4
  import { Device } from '.';
5
5
  import { ListParams } from './queries';
6
6
  import { Select } from '../../select';
7
- export interface SelectSingleProps extends Omit<Select.SingleProps<device.Key, device.Device | undefined>, "resourceName" | "data" | "getItem" | "subscribe" | "children">, Flux.UseListArgs<ListParams, device.Key, device.Device> {
7
+ export interface SelectSingleProps extends Omit<Select.SingleProps<device.Key, device.Device | undefined>, "resourceName" | "data" | "getItem" | "subscribe" | "children">, Flux.UseListParams<ListParams, device.Key, device.Device> {
8
8
  }
9
- export declare const SelectSingle: ({ onChange, value, filter, allowNone, emptyContent, initialParams, disabled, icon, ...rest }: SelectSingleProps) => ReactElement;
9
+ export declare const SelectSingle: ({ onChange, value, filter, allowNone, emptyContent, initialQuery, disabled, icon, ...rest }: SelectSingleProps) => ReactElement;
10
10
  //# sourceMappingURL=Select.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Select.d.ts","sourceRoot":"","sources":["../../../../src/hardware/device/Select.tsx"],"names":[],"mappings":"AASA,OAAO,8BAA8B,CAAC;AAEtC,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,OAAO,CAAC;AAK1C,OAAO,EAAE,KAAK,IAAI,EAAE,MAAM,QAAQ,CAAC;AACnC,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAC3C,OAAO,EAAE,KAAK,UAAU,EAAW,MAAM,2BAA2B,CAAC;AAGrE,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAkClC,MAAM,WAAW,iBACf,SAAQ,IAAI,CACR,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,GAAG,SAAS,CAAC,EACzD,cAAc,GAAG,MAAM,GAAG,SAAS,GAAG,WAAW,GAAG,UAAU,CAC/D,EACD,IAAI,CAAC,WAAW,CAAC,UAAU,EAAE,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,CAAC;CAAG;AAE9D,eAAO,MAAM,YAAY,GAAI,8FAU1B,iBAAiB,KAAG,YAyBtB,CAAC"}
1
+ {"version":3,"file":"Select.d.ts","sourceRoot":"","sources":["../../../../src/hardware/device/Select.tsx"],"names":[],"mappings":"AASA,OAAO,8BAA8B,CAAC;AAEtC,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,OAAO,CAAC;AAK1C,OAAO,EAAE,KAAK,IAAI,EAAE,MAAM,QAAQ,CAAC;AACnC,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAC3C,OAAO,EAAE,KAAK,UAAU,EAAW,MAAM,2BAA2B,CAAC;AAGrE,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAkClC,MAAM,WAAW,iBACf,SAAQ,IAAI,CACR,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,GAAG,SAAS,CAAC,EACzD,cAAc,GAAG,MAAM,GAAG,SAAS,GAAG,WAAW,GAAG,UAAU,CAC/D,EACD,IAAI,CAAC,aAAa,CAAC,UAAU,EAAE,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,CAAC;CAAG;AAEhE,eAAO,MAAM,YAAY,GAAI,6FAU1B,iBAAiB,KAAG,YAyBtB,CAAC"}