@synnaxlabs/client 0.56.1 → 0.57.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 (741) hide show
  1. package/dist/client-B08VDLSA.js +14463 -0
  2. package/dist/client-B08VDLSA.js.map +1 -0
  3. package/dist/client.js +1128 -14876
  4. package/dist/client.js.map +1 -0
  5. package/dist/src/access/client.d.ts +10 -1
  6. package/dist/src/access/client.d.ts.map +1 -1
  7. package/dist/src/access/enforce.d.ts.map +1 -1
  8. package/dist/src/access/external.d.ts +1 -0
  9. package/dist/src/access/external.d.ts.map +1 -1
  10. package/dist/src/access/granted.d.ts +39 -0
  11. package/dist/src/access/granted.d.ts.map +1 -0
  12. package/dist/src/access/policy/client.d.ts +136 -147
  13. package/dist/src/access/policy/client.d.ts.map +1 -1
  14. package/dist/src/access/policy/types.gen.d.ts +15 -68
  15. package/dist/src/access/policy/types.gen.d.ts.map +1 -1
  16. package/dist/src/access/role/client.d.ts +77 -58
  17. package/dist/src/access/role/client.d.ts.map +1 -1
  18. package/dist/src/access/role/types.gen.d.ts +8 -14
  19. package/dist/src/access/role/types.gen.d.ts.map +1 -1
  20. package/dist/src/actions/actions.d.ts +5 -6
  21. package/dist/src/actions/actions.d.ts.map +1 -1
  22. package/dist/src/actions/controller.d.ts +194 -0
  23. package/dist/src/actions/controller.d.ts.map +1 -0
  24. package/dist/src/actions/external.d.ts +1 -0
  25. package/dist/src/actions/external.d.ts.map +1 -1
  26. package/dist/src/arc/actions.d.ts +575 -0
  27. package/dist/src/arc/actions.d.ts.map +1 -0
  28. package/dist/src/arc/actions.gen.d.ts +1439 -0
  29. package/dist/src/arc/actions.gen.d.ts.map +1 -0
  30. package/dist/src/arc/client.d.ts +97 -13
  31. package/dist/src/arc/client.d.ts.map +1 -1
  32. package/dist/src/arc/compiler/types.gen.d.ts +3 -3
  33. package/dist/src/arc/compiler/types.gen.d.ts.map +1 -1
  34. package/dist/src/arc/external.d.ts +2 -0
  35. package/dist/src/arc/external.d.ts.map +1 -1
  36. package/dist/src/arc/graph/types.gen.d.ts +45 -597
  37. package/dist/src/arc/graph/types.gen.d.ts.map +1 -1
  38. package/dist/src/arc/ir/index.d.ts +1 -1
  39. package/dist/src/arc/ir/index.d.ts.map +1 -1
  40. package/dist/src/arc/ir/ir.d.ts +2 -0
  41. package/dist/src/arc/ir/ir.d.ts.map +1 -0
  42. package/dist/src/arc/ir/types.gen.d.ts +58 -2807
  43. package/dist/src/arc/ir/types.gen.d.ts.map +1 -1
  44. package/dist/src/arc/module/types.gen.d.ts +18 -1090
  45. package/dist/src/arc/module/types.gen.d.ts.map +1 -1
  46. package/dist/src/arc/program/types.gen.d.ts +18 -1090
  47. package/dist/src/arc/program/types.gen.d.ts.map +1 -1
  48. package/dist/src/arc/text/types.gen.d.ts +54 -1
  49. package/dist/src/arc/text/types.gen.d.ts.map +1 -1
  50. package/dist/src/arc/types/types.gen.d.ts +35 -153
  51. package/dist/src/arc/types/types.gen.d.ts.map +1 -1
  52. package/dist/src/arc/types.gen.d.ts +98 -2278
  53. package/dist/src/arc/types.gen.d.ts.map +1 -1
  54. package/dist/src/auth/auth.d.ts +14 -2
  55. package/dist/src/auth/auth.d.ts.map +1 -1
  56. package/dist/src/channel/client.d.ts +113 -75
  57. package/dist/src/channel/client.d.ts.map +1 -1
  58. package/dist/src/channel/external.d.ts +0 -1
  59. package/dist/src/channel/external.d.ts.map +1 -1
  60. package/dist/src/channel/payload.d.ts +65 -56
  61. package/dist/src/channel/payload.d.ts.map +1 -1
  62. package/dist/src/channel/types.gen.d.ts +26 -73
  63. package/dist/src/channel/types.gen.d.ts.map +1 -1
  64. package/dist/src/channel/writer.d.ts +1 -3
  65. package/dist/src/channel/writer.d.ts.map +1 -1
  66. package/dist/src/client.d.ts +55 -27
  67. package/dist/src/client.d.ts.map +1 -1
  68. package/dist/src/connection/client.d.ts +146 -0
  69. package/dist/src/connection/client.d.ts.map +1 -0
  70. package/dist/src/connection/external.d.ts +3 -0
  71. package/dist/src/connection/external.d.ts.map +1 -0
  72. package/dist/src/connection/index.d.ts +1 -1
  73. package/dist/src/connection/index.d.ts.map +1 -1
  74. package/dist/src/connection/status.d.ts +252 -0
  75. package/dist/src/connection/status.d.ts.map +1 -0
  76. package/dist/src/control/client.d.ts +31 -7
  77. package/dist/src/control/client.d.ts.map +1 -1
  78. package/dist/src/control/state.d.ts +47 -16
  79. package/dist/src/control/state.d.ts.map +1 -1
  80. package/dist/src/device/client.d.ts +59 -17
  81. package/dist/src/device/client.d.ts.map +1 -1
  82. package/dist/src/device/types.gen.d.ts +17 -67
  83. package/dist/src/device/types.gen.d.ts.map +1 -1
  84. package/dist/src/errors.d.ts +17 -20
  85. package/dist/src/errors.d.ts.map +1 -1
  86. package/dist/src/ethercat/external.d.ts +2 -0
  87. package/dist/src/ethercat/external.d.ts.map +1 -0
  88. package/dist/src/ethercat/index.d.ts +2 -0
  89. package/dist/src/ethercat/index.d.ts.map +1 -0
  90. package/dist/src/ethercat/types.gen.d.ts +243 -0
  91. package/dist/src/ethercat/types.gen.d.ts.map +1 -0
  92. package/dist/src/framer/adapter.d.ts +8 -5
  93. package/dist/src/framer/adapter.d.ts.map +1 -1
  94. package/dist/src/framer/benchutil.d.ts +19 -0
  95. package/dist/src/framer/benchutil.d.ts.map +1 -0
  96. package/dist/src/framer/cache/cache.d.ts +38 -0
  97. package/dist/src/framer/cache/cache.d.ts.map +1 -0
  98. package/dist/src/framer/cache/dynamic.d.ts +71 -0
  99. package/dist/src/framer/cache/dynamic.d.ts.map +1 -0
  100. package/dist/src/framer/cache/reader.d.ts +43 -0
  101. package/dist/src/framer/cache/reader.d.ts.map +1 -0
  102. package/dist/src/framer/cache/static.d.ts +66 -0
  103. package/dist/src/framer/cache/static.d.ts.map +1 -0
  104. package/dist/src/framer/cache/streamer.d.ts +86 -0
  105. package/dist/src/framer/cache/streamer.d.ts.map +1 -0
  106. package/dist/src/framer/cache/transform.d.ts +18 -0
  107. package/dist/src/framer/cache/transform.d.ts.map +1 -0
  108. package/dist/src/framer/cache/unary.d.ts +37 -0
  109. package/dist/src/framer/cache/unary.d.ts.map +1 -0
  110. package/dist/src/framer/client.d.ts +35 -14
  111. package/dist/src/framer/client.d.ts.map +1 -1
  112. package/dist/src/framer/codec.d.ts.map +1 -1
  113. package/dist/src/framer/deleter.d.ts +3 -2
  114. package/dist/src/framer/deleter.d.ts.map +1 -1
  115. package/dist/src/framer/external.d.ts +6 -0
  116. package/dist/src/framer/external.d.ts.map +1 -1
  117. package/dist/src/framer/feed.d.ts +40 -0
  118. package/dist/src/framer/feed.d.ts.map +1 -0
  119. package/dist/src/framer/frame.d.ts +16 -20
  120. package/dist/src/framer/frame.d.ts.map +1 -1
  121. package/dist/src/framer/hardened.d.ts +70 -0
  122. package/dist/src/framer/hardened.d.ts.map +1 -0
  123. package/dist/src/framer/iterator.d.ts +36 -43
  124. package/dist/src/framer/iterator.d.ts.map +1 -1
  125. package/dist/src/framer/reader.d.ts +3 -2
  126. package/dist/src/framer/reader.d.ts.map +1 -1
  127. package/dist/src/framer/streamer.d.ts +132 -205
  128. package/dist/src/framer/streamer.d.ts.map +1 -1
  129. package/dist/src/framer/writer.d.ts +130 -161
  130. package/dist/src/framer/writer.d.ts.map +1 -1
  131. package/dist/src/group/client.d.ts +66 -9
  132. package/dist/src/group/client.d.ts.map +1 -1
  133. package/dist/src/group/types.gen.d.ts +2 -2
  134. package/dist/src/http/external.d.ts +2 -0
  135. package/dist/src/http/external.d.ts.map +1 -0
  136. package/dist/src/http/index.d.ts +2 -0
  137. package/dist/src/http/index.d.ts.map +1 -0
  138. package/dist/src/http/types.gen.d.ts +451 -0
  139. package/dist/src/http/types.gen.d.ts.map +1 -0
  140. package/dist/src/imex/client.d.ts +88 -0
  141. package/dist/src/imex/client.d.ts.map +1 -0
  142. package/dist/src/imex/index.d.ts +2 -0
  143. package/dist/src/imex/index.d.ts.map +1 -0
  144. package/dist/src/index.d.ts +18 -5
  145. package/dist/src/index.d.ts.map +1 -1
  146. package/dist/src/label/client.d.ts +55 -36
  147. package/dist/src/label/client.d.ts.map +1 -1
  148. package/dist/src/label/external.d.ts +2 -0
  149. package/dist/src/label/external.d.ts.map +1 -1
  150. package/dist/src/label/payload.d.ts +4 -46
  151. package/dist/src/label/payload.d.ts.map +1 -1
  152. package/dist/src/label/store.d.ts +8 -0
  153. package/dist/src/label/store.d.ts.map +1 -0
  154. package/dist/src/label/types.gen.d.ts +45 -0
  155. package/dist/src/label/types.gen.d.ts.map +1 -0
  156. package/dist/src/labjack/external.d.ts +2 -0
  157. package/dist/src/labjack/external.d.ts.map +1 -0
  158. package/dist/src/labjack/index.d.ts +2 -0
  159. package/dist/src/labjack/index.d.ts.map +1 -0
  160. package/dist/src/labjack/types.gen.d.ts +442 -0
  161. package/dist/src/labjack/types.gen.d.ts.map +1 -0
  162. package/dist/src/lineplot/actions.d.ts +914 -0
  163. package/dist/src/lineplot/actions.d.ts.map +1 -0
  164. package/dist/src/lineplot/actions.gen.d.ts +4208 -0
  165. package/dist/src/lineplot/actions.gen.d.ts.map +1 -0
  166. package/dist/src/lineplot/client.d.ts +66 -16
  167. package/dist/src/lineplot/client.d.ts.map +1 -1
  168. package/dist/src/lineplot/external.d.ts +3 -0
  169. package/dist/src/lineplot/external.d.ts.map +1 -1
  170. package/dist/src/lineplot/line.d.ts +16 -0
  171. package/dist/src/lineplot/line.d.ts.map +1 -0
  172. package/dist/src/lineplot/types.gen.d.ts +837 -14
  173. package/dist/src/lineplot/types.gen.d.ts.map +1 -1
  174. package/dist/src/log/actions.d.ts +271 -0
  175. package/dist/src/log/actions.d.ts.map +1 -0
  176. package/dist/src/log/actions.gen.d.ts +1529 -0
  177. package/dist/src/log/actions.gen.d.ts.map +1 -0
  178. package/dist/src/log/client.d.ts +66 -16
  179. package/dist/src/log/client.d.ts.map +1 -1
  180. package/dist/src/log/external.d.ts +2 -0
  181. package/dist/src/log/external.d.ts.map +1 -1
  182. package/dist/src/log/types.gen.d.ts +139 -14
  183. package/dist/src/log/types.gen.d.ts.map +1 -1
  184. package/dist/src/modbus/external.d.ts +2 -0
  185. package/dist/src/modbus/external.d.ts.map +1 -0
  186. package/dist/src/modbus/index.d.ts +2 -0
  187. package/dist/src/modbus/index.d.ts.map +1 -0
  188. package/dist/src/modbus/types.gen.d.ts +280 -0
  189. package/dist/src/modbus/types.gen.d.ts.map +1 -0
  190. package/dist/src/ni/external.d.ts +2 -0
  191. package/dist/src/ni/external.d.ts.map +1 -0
  192. package/dist/src/ni/index.d.ts +2 -0
  193. package/dist/src/ni/index.d.ts.map +1 -0
  194. package/dist/src/ni/types.gen.d.ts +21029 -0
  195. package/dist/src/ni/types.gen.d.ts.map +1 -0
  196. package/dist/src/node/index.d.ts +2 -0
  197. package/dist/src/node/index.d.ts.map +1 -0
  198. package/dist/src/node/types.gen.d.ts +4 -0
  199. package/dist/src/node/types.gen.d.ts.map +1 -0
  200. package/dist/src/ontology/client.d.ts +314 -67
  201. package/dist/src/ontology/client.d.ts.map +1 -1
  202. package/dist/src/ontology/external.d.ts +1 -0
  203. package/dist/src/ontology/external.d.ts.map +1 -1
  204. package/dist/src/ontology/payload.d.ts +60 -18
  205. package/dist/src/ontology/payload.d.ts.map +1 -1
  206. package/dist/src/ontology/store.d.ts +32 -0
  207. package/dist/src/ontology/store.d.ts.map +1 -0
  208. package/dist/src/ontology/types.gen.d.ts +3 -2
  209. package/dist/src/ontology/types.gen.d.ts.map +1 -1
  210. package/dist/src/ontology/writer.d.ts +16 -10
  211. package/dist/src/ontology/writer.d.ts.map +1 -1
  212. package/dist/src/opcua/external.d.ts +2 -0
  213. package/dist/src/opcua/external.d.ts.map +1 -0
  214. package/dist/src/opcua/index.d.ts +2 -0
  215. package/dist/src/opcua/index.d.ts.map +1 -0
  216. package/dist/src/opcua/types.gen.d.ts +82 -0
  217. package/dist/src/opcua/types.gen.d.ts.map +1 -0
  218. package/dist/src/pagerduty/external.d.ts +2 -0
  219. package/dist/src/pagerduty/external.d.ts.map +1 -0
  220. package/dist/src/pagerduty/index.d.ts +2 -0
  221. package/dist/src/pagerduty/index.d.ts.map +1 -0
  222. package/dist/src/pagerduty/types.gen.d.ts +30 -0
  223. package/dist/src/pagerduty/types.gen.d.ts.map +1 -0
  224. package/dist/src/panel/actions.d.ts +273 -0
  225. package/dist/src/panel/actions.d.ts.map +1 -0
  226. package/dist/src/panel/actions.gen.d.ts +1255 -0
  227. package/dist/src/panel/actions.gen.d.ts.map +1 -0
  228. package/dist/src/panel/client.d.ts +148 -0
  229. package/dist/src/panel/client.d.ts.map +1 -0
  230. package/dist/src/panel/external.d.ts +6 -0
  231. package/dist/src/panel/external.d.ts.map +1 -0
  232. package/dist/src/panel/index.d.ts +2 -0
  233. package/dist/src/panel/index.d.ts.map +1 -0
  234. package/dist/src/panel/tree.d.ts +50 -0
  235. package/dist/src/panel/tree.d.ts.map +1 -0
  236. package/dist/src/panel/types.gen.d.ts +370 -0
  237. package/dist/src/panel/types.gen.d.ts.map +1 -0
  238. package/dist/src/project/client.d.ts +89 -0
  239. package/dist/src/project/client.d.ts.map +1 -0
  240. package/dist/src/project/external.d.ts.map +1 -0
  241. package/dist/src/project/index.d.ts +2 -0
  242. package/dist/src/project/index.d.ts.map +1 -0
  243. package/dist/src/project/types.gen.d.ts +27 -0
  244. package/dist/src/project/types.gen.d.ts.map +1 -0
  245. package/dist/src/query/cache.d.ts +132 -0
  246. package/dist/src/query/cache.d.ts.map +1 -0
  247. package/dist/src/query/deleted.d.ts +20 -0
  248. package/dist/src/query/deleted.d.ts.map +1 -0
  249. package/dist/src/query/derived.d.ts +33 -0
  250. package/dist/src/query/derived.d.ts.map +1 -0
  251. package/dist/src/query/external.d.ts +10 -0
  252. package/dist/src/query/external.d.ts.map +1 -0
  253. package/dist/src/query/index.d.ts +2 -0
  254. package/dist/src/query/index.d.ts.map +1 -0
  255. package/dist/src/query/query.d.ts +235 -0
  256. package/dist/src/query/query.d.ts.map +1 -0
  257. package/dist/src/query/retriever.d.ts +135 -0
  258. package/dist/src/query/retriever.d.ts.map +1 -0
  259. package/dist/src/query/streamer.d.ts +67 -0
  260. package/dist/src/query/streamer.d.ts.map +1 -0
  261. package/dist/src/query/table.d.ts +219 -0
  262. package/dist/src/query/table.d.ts.map +1 -0
  263. package/dist/src/query/types.d.ts +35 -0
  264. package/dist/src/query/types.d.ts.map +1 -0
  265. package/dist/src/query/write.d.ts +21 -0
  266. package/dist/src/query/write.d.ts.map +1 -0
  267. package/dist/src/rack/client.d.ts +58 -20
  268. package/dist/src/rack/client.d.ts.map +1 -1
  269. package/dist/src/rack/types.gen.d.ts +11 -12
  270. package/dist/src/rack/types.gen.d.ts.map +1 -1
  271. package/dist/src/range/alias/types.gen.d.ts +2 -3
  272. package/dist/src/range/alias/types.gen.d.ts.map +1 -1
  273. package/dist/src/ranger/client.d.ts +138 -27
  274. package/dist/src/ranger/client.d.ts.map +1 -1
  275. package/dist/src/ranger/kv/client.d.ts +7 -4
  276. package/dist/src/ranger/kv/client.d.ts.map +1 -1
  277. package/dist/src/ranger/payload.d.ts +3 -0
  278. package/dist/src/ranger/payload.d.ts.map +1 -1
  279. package/dist/src/ranger/types.gen.d.ts +45 -101
  280. package/dist/src/ranger/types.gen.d.ts.map +1 -1
  281. package/dist/src/ranger/writer.d.ts +2 -74
  282. package/dist/src/ranger/writer.d.ts.map +1 -1
  283. package/dist/src/schematic/actions.d.ts +90 -33
  284. package/dist/src/schematic/actions.d.ts.map +1 -1
  285. package/dist/src/schematic/actions.gen.d.ts +207 -114
  286. package/dist/src/schematic/actions.gen.d.ts.map +1 -1
  287. package/dist/src/schematic/client.d.ts +70 -68
  288. package/dist/src/schematic/client.d.ts.map +1 -1
  289. package/dist/src/schematic/symbol/client.d.ts +133 -27
  290. package/dist/src/schematic/symbol/client.d.ts.map +1 -1
  291. package/dist/src/schematic/symbol/types.gen.d.ts +258 -153
  292. package/dist/src/schematic/symbol/types.gen.d.ts.map +1 -1
  293. package/dist/src/schematic/types.gen.d.ts +17 -96
  294. package/dist/src/schematic/types.gen.d.ts.map +1 -1
  295. package/dist/src/status/client.d.ts +69 -14
  296. package/dist/src/status/client.d.ts.map +1 -1
  297. package/dist/src/status/external.d.ts +2 -0
  298. package/dist/src/status/external.d.ts.map +1 -1
  299. package/dist/src/status/payload.d.ts +2 -36
  300. package/dist/src/status/payload.d.ts.map +1 -1
  301. package/dist/src/status/status.d.ts +65 -0
  302. package/dist/src/status/status.d.ts.map +1 -0
  303. package/dist/src/status/types.gen.d.ts +58 -0
  304. package/dist/src/status/types.gen.d.ts.map +1 -0
  305. package/dist/src/table/actions.d.ts +72 -13
  306. package/dist/src/table/actions.d.ts.map +1 -1
  307. package/dist/src/table/actions.gen.d.ts +221 -137
  308. package/dist/src/table/actions.gen.d.ts.map +1 -1
  309. package/dist/src/table/client.d.ts +64 -40
  310. package/dist/src/table/client.d.ts.map +1 -1
  311. package/dist/src/table/types.gen.d.ts +20 -55
  312. package/dist/src/table/types.gen.d.ts.map +1 -1
  313. package/dist/src/task/client.d.ts +149 -28
  314. package/dist/src/task/client.d.ts.map +1 -1
  315. package/dist/src/task/types.gen.d.ts +71 -89
  316. package/dist/src/task/types.gen.d.ts.map +1 -1
  317. package/dist/src/testutil/access.d.ts +27 -1
  318. package/dist/src/testutil/access.d.ts.map +1 -1
  319. package/dist/src/testutil/channels.d.ts +2 -0
  320. package/dist/src/testutil/channels.d.ts.map +1 -1
  321. package/dist/src/testutil/client.d.ts +5 -0
  322. package/dist/src/testutil/client.d.ts.map +1 -1
  323. package/dist/src/testutil/connection.d.ts +10 -0
  324. package/dist/src/testutil/connection.d.ts.map +1 -0
  325. package/dist/src/testutil/index.d.ts +9 -0
  326. package/dist/src/testutil/index.d.ts.map +1 -0
  327. package/dist/src/testutil/panels.d.ts +8 -0
  328. package/dist/src/testutil/panels.d.ts.map +1 -0
  329. package/dist/src/testutil/proxy.d.ts +29 -0
  330. package/dist/src/testutil/proxy.d.ts.map +1 -0
  331. package/dist/src/testutil/query.d.ts +7 -0
  332. package/dist/src/testutil/query.d.ts.map +1 -0
  333. package/dist/src/testutil/telem.d.ts +4 -0
  334. package/dist/src/testutil/telem.d.ts.map +1 -1
  335. package/dist/src/transport.d.ts +10 -4
  336. package/dist/src/transport.d.ts.map +1 -1
  337. package/dist/src/user/client.d.ts +29 -28
  338. package/dist/src/user/client.d.ts.map +1 -1
  339. package/dist/src/user/external.d.ts +1 -1
  340. package/dist/src/user/external.d.ts.map +1 -1
  341. package/dist/src/user/types.gen.d.ts +4 -4
  342. package/dist/src/util/retrieve.d.ts +2 -2
  343. package/dist/src/util/retrieve.d.ts.map +1 -1
  344. package/dist/src/util/telem.d.ts.map +1 -1
  345. package/dist/src/view/client.d.ts +30 -14
  346. package/dist/src/view/client.d.ts.map +1 -1
  347. package/dist/src/view/types.gen.d.ts +7 -15
  348. package/dist/src/view/types.gen.d.ts.map +1 -1
  349. package/dist/testutil.js +189 -0
  350. package/dist/testutil.js.map +1 -0
  351. package/package.json +40 -17
  352. package/src/access/client.ts +14 -3
  353. package/src/access/enforce.ts +0 -3
  354. package/src/access/external.ts +1 -0
  355. package/src/access/granted.ts +114 -0
  356. package/src/access/policy/client.ts +135 -43
  357. package/src/access/policy/types.gen.ts +9 -11
  358. package/src/access/role/client.ts +160 -38
  359. package/src/access/role/types.gen.ts +8 -12
  360. package/src/actions/actions.ts +5 -6
  361. package/src/actions/controller.ts +626 -0
  362. package/src/actions/external.ts +11 -0
  363. package/src/arc/actions.gen.ts +313 -0
  364. package/src/arc/actions.ts +192 -0
  365. package/src/arc/client.ts +424 -41
  366. package/src/arc/compiler/types.gen.ts +5 -6
  367. package/src/arc/external.ts +2 -0
  368. package/src/arc/graph/types.gen.ts +24 -22
  369. package/src/arc/ir/index.ts +1 -1
  370. package/{eslint.config.ts → src/arc/ir/ir.ts} +1 -4
  371. package/src/arc/ir/types.gen.ts +42 -41
  372. package/src/arc/text/types.gen.ts +21 -2
  373. package/src/arc/types/types.gen.ts +40 -32
  374. package/src/arc/types.gen.ts +31 -29
  375. package/src/auth/auth.ts +40 -8
  376. package/src/channel/client.ts +529 -132
  377. package/src/channel/external.ts +0 -1
  378. package/src/channel/payload.ts +30 -3
  379. package/src/channel/types.gen.ts +37 -48
  380. package/src/channel/writer.ts +2 -11
  381. package/src/client.ts +215 -91
  382. package/src/connection/client.ts +495 -0
  383. package/src/connection/external.ts +34 -0
  384. package/src/connection/index.ts +1 -1
  385. package/src/connection/status.ts +442 -0
  386. package/src/control/client.ts +84 -12
  387. package/src/control/state.ts +17 -36
  388. package/src/device/client.ts +293 -41
  389. package/src/device/types.gen.ts +15 -26
  390. package/src/errors.ts +45 -22
  391. package/src/{workspace → ethercat}/external.ts +1 -2
  392. package/src/{workspace → ethercat}/index.ts +1 -1
  393. package/src/ethercat/types.gen.ts +151 -0
  394. package/src/framer/adapter.ts +60 -37
  395. package/src/framer/benchutil.ts +67 -0
  396. package/src/framer/cache/cache.ts +115 -0
  397. package/src/framer/cache/dynamic.ts +279 -0
  398. package/src/framer/cache/reader.ts +160 -0
  399. package/src/framer/cache/static.ts +215 -0
  400. package/src/framer/cache/streamer.ts +391 -0
  401. package/src/framer/cache/transform.ts +31 -0
  402. package/src/framer/cache/unary.ts +104 -0
  403. package/src/framer/client.ts +71 -43
  404. package/src/framer/codec.ts +55 -18
  405. package/src/framer/deleter.ts +4 -6
  406. package/src/framer/external.ts +10 -0
  407. package/src/framer/feed.ts +108 -0
  408. package/src/framer/frame.ts +13 -23
  409. package/src/framer/hardened.ts +283 -0
  410. package/src/framer/iterator.ts +31 -42
  411. package/src/framer/reader.ts +11 -11
  412. package/src/framer/streamer.ts +18 -178
  413. package/src/framer/writer.ts +39 -59
  414. package/src/group/client.ts +158 -23
  415. package/src/http/external.ts +10 -0
  416. package/src/{cluster → http}/index.ts +1 -1
  417. package/src/http/types.gen.ts +245 -0
  418. package/src/imex/client.ts +125 -0
  419. package/src/imex/index.ts +10 -0
  420. package/src/index.ts +18 -6
  421. package/src/label/client.ts +193 -54
  422. package/src/label/external.ts +2 -0
  423. package/src/label/payload.ts +4 -9
  424. package/src/label/store.ts +28 -0
  425. package/src/label/types.gen.ts +31 -0
  426. package/src/labjack/external.ts +10 -0
  427. package/src/labjack/index.ts +10 -0
  428. package/src/labjack/types.gen.ts +251 -0
  429. package/src/lineplot/actions.gen.ts +880 -0
  430. package/src/lineplot/actions.ts +535 -0
  431. package/src/lineplot/client.ts +224 -52
  432. package/src/lineplot/external.ts +3 -0
  433. package/src/lineplot/line.ts +80 -0
  434. package/src/lineplot/types.gen.ts +225 -12
  435. package/src/log/actions.gen.ts +474 -0
  436. package/src/log/actions.ts +242 -0
  437. package/src/log/client.ts +223 -52
  438. package/src/log/external.ts +2 -0
  439. package/src/log/types.gen.ts +45 -14
  440. package/src/modbus/external.ts +10 -0
  441. package/src/modbus/index.ts +10 -0
  442. package/src/modbus/types.gen.ts +185 -0
  443. package/src/ni/external.ts +10 -0
  444. package/src/ni/index.ts +10 -0
  445. package/src/ni/types.gen.ts +1632 -0
  446. package/src/node/index.ts +10 -0
  447. package/src/{cluster → node}/types.gen.ts +2 -2
  448. package/src/ontology/client.ts +408 -99
  449. package/src/ontology/external.ts +7 -0
  450. package/src/ontology/payload.ts +48 -7
  451. package/src/ontology/store.ts +83 -0
  452. package/src/ontology/types.gen.ts +2 -1
  453. package/src/ontology/writer.ts +1 -0
  454. package/src/opcua/external.ts +10 -0
  455. package/src/opcua/index.ts +10 -0
  456. package/src/opcua/types.gen.ts +65 -0
  457. package/src/pagerduty/external.ts +10 -0
  458. package/src/pagerduty/index.ts +10 -0
  459. package/src/pagerduty/types.gen.ts +41 -0
  460. package/src/panel/actions.gen.ts +267 -0
  461. package/src/panel/actions.ts +357 -0
  462. package/src/panel/client.ts +327 -0
  463. package/src/panel/external.ts +14 -0
  464. package/src/panel/index.ts +10 -0
  465. package/src/panel/tree.ts +163 -0
  466. package/src/panel/types.gen.ts +164 -0
  467. package/src/project/client.ts +273 -0
  468. package/src/project/external.ts +11 -0
  469. package/src/project/index.ts +10 -0
  470. package/src/project/types.gen.ts +40 -0
  471. package/src/query/cache.ts +326 -0
  472. package/src/query/deleted.ts +38 -0
  473. package/src/query/derived.ts +101 -0
  474. package/src/query/external.ts +51 -0
  475. package/src/query/index.ts +10 -0
  476. package/src/query/query.ts +865 -0
  477. package/src/query/retriever.ts +308 -0
  478. package/src/query/streamer.ts +207 -0
  479. package/src/query/table.ts +625 -0
  480. package/src/query/types.ts +54 -0
  481. package/src/query/write.ts +42 -0
  482. package/src/rack/client.ts +233 -45
  483. package/src/rack/types.gen.ts +15 -16
  484. package/src/range/alias/types.gen.ts +2 -3
  485. package/src/ranger/client.ts +581 -70
  486. package/src/ranger/kv/client.ts +52 -21
  487. package/src/ranger/payload.ts +3 -0
  488. package/src/ranger/types.gen.ts +21 -23
  489. package/src/ranger/writer.ts +4 -8
  490. package/src/schematic/actions.gen.ts +62 -53
  491. package/src/schematic/actions.ts +44 -42
  492. package/src/schematic/client.ts +226 -70
  493. package/src/schematic/symbol/client.ts +277 -48
  494. package/src/schematic/symbol/types.gen.ts +22 -34
  495. package/src/schematic/types.gen.ts +22 -29
  496. package/src/status/client.ts +321 -44
  497. package/src/status/external.ts +2 -0
  498. package/src/status/payload.ts +1 -23
  499. package/src/status/status.ts +241 -0
  500. package/src/status/types.gen.ts +108 -0
  501. package/src/table/actions.gen.ts +96 -63
  502. package/src/table/actions.ts +44 -19
  503. package/src/table/client.ts +220 -56
  504. package/src/table/types.gen.ts +24 -31
  505. package/src/task/client.ts +580 -101
  506. package/src/task/types.gen.ts +68 -75
  507. package/src/testutil/access.ts +102 -6
  508. package/src/testutil/channels.ts +29 -0
  509. package/src/testutil/client.ts +27 -2
  510. package/src/testutil/connection.ts +47 -0
  511. package/src/testutil/index.ts +17 -0
  512. package/src/testutil/panels.ts +26 -0
  513. package/src/testutil/proxy.ts +106 -0
  514. package/src/testutil/query.ts +28 -0
  515. package/src/testutil/telem.ts +17 -1
  516. package/src/transport.ts +18 -7
  517. package/src/user/client.ts +165 -64
  518. package/src/user/external.ts +1 -1
  519. package/src/user/types.gen.ts +5 -5
  520. package/src/util/retrieve.ts +4 -4
  521. package/src/util/telem.ts +0 -1
  522. package/src/view/client.ts +120 -37
  523. package/src/view/types.gen.ts +8 -11
  524. package/.turbo/turbo-build.log +0 -20
  525. package/.vscode/settings.json +0 -3
  526. package/CONTRIBUTING.md +0 -47
  527. package/dist/client.cjs +0 -118
  528. package/dist/eslint.config.d.ts +0 -4
  529. package/dist/eslint.config.d.ts.map +0 -1
  530. package/dist/src/access/enforce.spec.d.ts +0 -2
  531. package/dist/src/access/enforce.spec.d.ts.map +0 -1
  532. package/dist/src/access/policy/access.spec.d.ts +0 -2
  533. package/dist/src/access/policy/access.spec.d.ts.map +0 -1
  534. package/dist/src/access/role/role.spec.d.ts +0 -2
  535. package/dist/src/access/role/role.spec.d.ts.map +0 -1
  536. package/dist/src/actions/actions.spec.d.ts +0 -2
  537. package/dist/src/actions/actions.spec.d.ts.map +0 -1
  538. package/dist/src/arc/access.spec.d.ts +0 -2
  539. package/dist/src/arc/access.spec.d.ts.map +0 -1
  540. package/dist/src/arc/arc.spec.d.ts +0 -2
  541. package/dist/src/arc/arc.spec.d.ts.map +0 -1
  542. package/dist/src/arc/lsp.spec.d.ts +0 -2
  543. package/dist/src/arc/lsp.spec.d.ts.map +0 -1
  544. package/dist/src/auth/auth.spec.d.ts +0 -2
  545. package/dist/src/auth/auth.spec.d.ts.map +0 -1
  546. package/dist/src/channel/access.spec.d.ts +0 -2
  547. package/dist/src/channel/access.spec.d.ts.map +0 -1
  548. package/dist/src/channel/batchRetriever.spec.d.ts +0 -2
  549. package/dist/src/channel/batchRetriever.spec.d.ts.map +0 -1
  550. package/dist/src/channel/channel.spec.d.ts +0 -2
  551. package/dist/src/channel/channel.spec.d.ts.map +0 -1
  552. package/dist/src/channel/payload.spec.d.ts +0 -2
  553. package/dist/src/channel/payload.spec.d.ts.map +0 -1
  554. package/dist/src/channel/retriever.d.ts +0 -64
  555. package/dist/src/channel/retriever.d.ts.map +0 -1
  556. package/dist/src/cluster/index.d.ts +0 -2
  557. package/dist/src/cluster/index.d.ts.map +0 -1
  558. package/dist/src/cluster/types.gen.d.ts +0 -4
  559. package/dist/src/cluster/types.gen.d.ts.map +0 -1
  560. package/dist/src/connection/checker.d.ts +0 -86
  561. package/dist/src/connection/checker.d.ts.map +0 -1
  562. package/dist/src/connection/connection.spec.d.ts +0 -2
  563. package/dist/src/connection/connection.spec.d.ts.map +0 -1
  564. package/dist/src/connection.spec.d.ts +0 -2
  565. package/dist/src/connection.spec.d.ts.map +0 -1
  566. package/dist/src/control/state.spec.d.ts +0 -2
  567. package/dist/src/control/state.spec.d.ts.map +0 -1
  568. package/dist/src/device/access.spec.d.ts +0 -2
  569. package/dist/src/device/access.spec.d.ts.map +0 -1
  570. package/dist/src/device/device.spec.d.ts +0 -2
  571. package/dist/src/device/device.spec.d.ts.map +0 -1
  572. package/dist/src/device/payload.spec.d.ts +0 -2
  573. package/dist/src/device/payload.spec.d.ts.map +0 -1
  574. package/dist/src/errors.spec.d.ts +0 -2
  575. package/dist/src/errors.spec.d.ts.map +0 -1
  576. package/dist/src/framer/adapter.spec.d.ts +0 -2
  577. package/dist/src/framer/adapter.spec.d.ts.map +0 -1
  578. package/dist/src/framer/client.spec.d.ts +0 -2
  579. package/dist/src/framer/client.spec.d.ts.map +0 -1
  580. package/dist/src/framer/codec.spec.d.ts +0 -2
  581. package/dist/src/framer/codec.spec.d.ts.map +0 -1
  582. package/dist/src/framer/deleter.spec.d.ts +0 -2
  583. package/dist/src/framer/deleter.spec.d.ts.map +0 -1
  584. package/dist/src/framer/frame.spec.d.ts +0 -2
  585. package/dist/src/framer/frame.spec.d.ts.map +0 -1
  586. package/dist/src/framer/iterator.spec.d.ts +0 -2
  587. package/dist/src/framer/iterator.spec.d.ts.map +0 -1
  588. package/dist/src/framer/reader.spec.d.ts +0 -2
  589. package/dist/src/framer/reader.spec.d.ts.map +0 -1
  590. package/dist/src/framer/streamer.spec.d.ts +0 -2
  591. package/dist/src/framer/streamer.spec.d.ts.map +0 -1
  592. package/dist/src/framer/writer.spec.d.ts +0 -2
  593. package/dist/src/framer/writer.spec.d.ts.map +0 -1
  594. package/dist/src/group/access.spec.d.ts +0 -2
  595. package/dist/src/group/access.spec.d.ts.map +0 -1
  596. package/dist/src/group/group.spec.d.ts +0 -2
  597. package/dist/src/group/group.spec.d.ts.map +0 -1
  598. package/dist/src/label/access.spec.d.ts +0 -2
  599. package/dist/src/label/access.spec.d.ts.map +0 -1
  600. package/dist/src/label/label.spec.d.ts +0 -2
  601. package/dist/src/label/label.spec.d.ts.map +0 -1
  602. package/dist/src/lineplot/access.spec.d.ts +0 -2
  603. package/dist/src/lineplot/access.spec.d.ts.map +0 -1
  604. package/dist/src/lineplot/lineplot.spec.d.ts +0 -2
  605. package/dist/src/lineplot/lineplot.spec.d.ts.map +0 -1
  606. package/dist/src/log/access.spec.d.ts +0 -2
  607. package/dist/src/log/access.spec.d.ts.map +0 -1
  608. package/dist/src/log/log.spec.d.ts +0 -2
  609. package/dist/src/log/log.spec.d.ts.map +0 -1
  610. package/dist/src/ontology/ontology.spec.d.ts +0 -2
  611. package/dist/src/ontology/ontology.spec.d.ts.map +0 -1
  612. package/dist/src/rack/access.spec.d.ts +0 -2
  613. package/dist/src/rack/access.spec.d.ts.map +0 -1
  614. package/dist/src/rack/rack.spec.d.ts +0 -2
  615. package/dist/src/rack/rack.spec.d.ts.map +0 -1
  616. package/dist/src/ranger/access.spec.d.ts +0 -2
  617. package/dist/src/ranger/access.spec.d.ts.map +0 -1
  618. package/dist/src/ranger/alias/payload.spec.d.ts +0 -2
  619. package/dist/src/ranger/alias/payload.spec.d.ts.map +0 -1
  620. package/dist/src/ranger/ranger.spec.d.ts +0 -2
  621. package/dist/src/ranger/ranger.spec.d.ts.map +0 -1
  622. package/dist/src/schematic/access.spec.d.ts +0 -2
  623. package/dist/src/schematic/access.spec.d.ts.map +0 -1
  624. package/dist/src/schematic/actions.spec.d.ts +0 -2
  625. package/dist/src/schematic/actions.spec.d.ts.map +0 -1
  626. package/dist/src/schematic/schematic.spec.d.ts +0 -2
  627. package/dist/src/schematic/schematic.spec.d.ts.map +0 -1
  628. package/dist/src/schematic/symbol/access.spec.d.ts +0 -2
  629. package/dist/src/schematic/symbol/access.spec.d.ts.map +0 -1
  630. package/dist/src/schematic/symbol/client.spec.d.ts +0 -2
  631. package/dist/src/schematic/symbol/client.spec.d.ts.map +0 -1
  632. package/dist/src/status/access.spec.d.ts +0 -2
  633. package/dist/src/status/access.spec.d.ts.map +0 -1
  634. package/dist/src/status/status.spec.d.ts +0 -2
  635. package/dist/src/status/status.spec.d.ts.map +0 -1
  636. package/dist/src/table/access.spec.d.ts +0 -2
  637. package/dist/src/table/access.spec.d.ts.map +0 -1
  638. package/dist/src/table/table.spec.d.ts +0 -2
  639. package/dist/src/table/table.spec.d.ts.map +0 -1
  640. package/dist/src/task/access.spec.d.ts +0 -2
  641. package/dist/src/task/access.spec.d.ts.map +0 -1
  642. package/dist/src/task/payload.spec.d.ts +0 -2
  643. package/dist/src/task/payload.spec.d.ts.map +0 -1
  644. package/dist/src/task/task.spec.d.ts +0 -2
  645. package/dist/src/task/task.spec.d.ts.map +0 -1
  646. package/dist/src/user/access.spec.d.ts +0 -2
  647. package/dist/src/user/access.spec.d.ts.map +0 -1
  648. package/dist/src/user/user.spec.d.ts +0 -2
  649. package/dist/src/user/user.spec.d.ts.map +0 -1
  650. package/dist/src/util/retrieve.spec.d.ts +0 -2
  651. package/dist/src/util/retrieve.spec.d.ts.map +0 -1
  652. package/dist/src/view/view.spec.d.ts +0 -2
  653. package/dist/src/view/view.spec.d.ts.map +0 -1
  654. package/dist/src/workspace/access.spec.d.ts +0 -2
  655. package/dist/src/workspace/access.spec.d.ts.map +0 -1
  656. package/dist/src/workspace/client.d.ts +0 -36
  657. package/dist/src/workspace/client.d.ts.map +0 -1
  658. package/dist/src/workspace/external.d.ts.map +0 -1
  659. package/dist/src/workspace/index.d.ts +0 -2
  660. package/dist/src/workspace/index.d.ts.map +0 -1
  661. package/dist/src/workspace/types.gen.d.ts +0 -34
  662. package/dist/src/workspace/types.gen.d.ts.map +0 -1
  663. package/dist/src/workspace/workspace.spec.d.ts +0 -2
  664. package/dist/src/workspace/workspace.spec.d.ts.map +0 -1
  665. package/examples/node/basicReadWrite.js +0 -86
  666. package/examples/node/createChannels.js +0 -50
  667. package/examples/node/createRange.js +0 -67
  668. package/examples/node/package-lock.json +0 -133
  669. package/examples/node/package.json +0 -17
  670. package/examples/node/readLatest.js +0 -76
  671. package/examples/node/seriesAndFrames.js +0 -173
  672. package/examples/node/streamRead.js +0 -50
  673. package/examples/node/streamWrite.js +0 -87
  674. package/src/access/enforce.spec.ts +0 -188
  675. package/src/access/policy/access.spec.ts +0 -147
  676. package/src/access/role/role.spec.ts +0 -95
  677. package/src/actions/actions.spec.ts +0 -229
  678. package/src/arc/access.spec.ts +0 -149
  679. package/src/arc/arc.spec.ts +0 -44
  680. package/src/arc/lsp.spec.ts +0 -717
  681. package/src/auth/auth.spec.ts +0 -101
  682. package/src/channel/access.spec.ts +0 -116
  683. package/src/channel/batchRetriever.spec.ts +0 -115
  684. package/src/channel/channel.spec.ts +0 -352
  685. package/src/channel/payload.spec.ts +0 -117
  686. package/src/channel/retriever.ts +0 -252
  687. package/src/connection/checker.ts +0 -203
  688. package/src/connection/connection.spec.ts +0 -152
  689. package/src/connection.spec.ts +0 -145
  690. package/src/control/state.spec.ts +0 -22
  691. package/src/device/access.spec.ts +0 -159
  692. package/src/device/device.spec.ts +0 -461
  693. package/src/device/payload.spec.ts +0 -142
  694. package/src/errors.spec.ts +0 -71
  695. package/src/framer/adapter.spec.ts +0 -620
  696. package/src/framer/client.spec.ts +0 -180
  697. package/src/framer/codec.spec.ts +0 -383
  698. package/src/framer/deleter.spec.ts +0 -103
  699. package/src/framer/frame.spec.ts +0 -973
  700. package/src/framer/iterator.spec.ts +0 -169
  701. package/src/framer/reader.spec.ts +0 -865
  702. package/src/framer/streamer.spec.ts +0 -871
  703. package/src/framer/writer.spec.ts +0 -486
  704. package/src/group/access.spec.ts +0 -77
  705. package/src/group/group.spec.ts +0 -65
  706. package/src/label/access.spec.ts +0 -109
  707. package/src/label/label.spec.ts +0 -83
  708. package/src/lineplot/access.spec.ts +0 -134
  709. package/src/lineplot/lineplot.spec.ts +0 -120
  710. package/src/log/access.spec.ts +0 -132
  711. package/src/log/log.spec.ts +0 -106
  712. package/src/ontology/ontology.spec.ts +0 -521
  713. package/src/rack/access.spec.ts +0 -102
  714. package/src/rack/rack.spec.ts +0 -171
  715. package/src/ranger/access.spec.ts +0 -115
  716. package/src/ranger/alias/payload.spec.ts +0 -52
  717. package/src/ranger/ranger.spec.ts +0 -343
  718. package/src/schematic/access.spec.ts +0 -134
  719. package/src/schematic/actions.spec.ts +0 -699
  720. package/src/schematic/schematic.spec.ts +0 -340
  721. package/src/schematic/symbol/access.spec.ts +0 -172
  722. package/src/schematic/symbol/client.spec.ts +0 -160
  723. package/src/status/access.spec.ts +0 -129
  724. package/src/status/status.spec.ts +0 -448
  725. package/src/table/access.spec.ts +0 -128
  726. package/src/table/table.spec.ts +0 -651
  727. package/src/task/access.spec.ts +0 -131
  728. package/src/task/payload.spec.ts +0 -113
  729. package/src/task/task.spec.ts +0 -657
  730. package/src/user/access.spec.ts +0 -107
  731. package/src/user/user.spec.ts +0 -290
  732. package/src/util/retrieve.spec.ts +0 -49
  733. package/src/view/view.spec.ts +0 -165
  734. package/src/workspace/access.spec.ts +0 -108
  735. package/src/workspace/client.ts +0 -112
  736. package/src/workspace/types.gen.ts +0 -46
  737. package/src/workspace/workspace.spec.ts +0 -111
  738. package/tsconfig.json +0 -5
  739. package/tsconfig.vite.json +0 -4
  740. package/vite.config.ts +0 -29
  741. /package/dist/src/{workspace → project}/external.d.ts +0 -0
@@ -0,0 +1,252 @@
1
+ import { CrudeTimeSpan, destructor, TimeSpan, TimeStamp } from '@synnaxlabs/x';
2
+ import { z } from 'zod';
3
+ import { status } from '../status';
4
+ export declare const REASONS: readonly ["unreachable", "auth", "incompatible"];
5
+ export declare const reasonZ: z.ZodEnum<{
6
+ auth: "auth";
7
+ unreachable: "unreachable";
8
+ incompatible: "incompatible";
9
+ }>;
10
+ /** Why the connection is in the error variant. */
11
+ export type Reason = z.infer<typeof reasonZ>;
12
+ /** The fact vector beneath the connection's status variant. */
13
+ export declare const statusDetailsZ: z.ZodObject<{
14
+ error: z.ZodOptional<z.ZodCustom<Error, Error>>;
15
+ authenticated: z.ZodBoolean;
16
+ streamLive: z.ZodBoolean;
17
+ streamDenied: z.ZodBoolean;
18
+ epoch: z.ZodNumber;
19
+ clusterKey: z.ZodString;
20
+ clientVersion: z.ZodString;
21
+ nodeVersion: z.ZodOptional<z.ZodString>;
22
+ clientServerCompatible: z.ZodBoolean;
23
+ clockSkew: z.ZodUnion<readonly [z.ZodPipe<z.ZodObject<{
24
+ value: z.ZodBigInt;
25
+ }, z.core.$strip>, z.ZodTransform<TimeSpan, {
26
+ value: bigint;
27
+ }>>, z.ZodPipe<z.ZodString, z.ZodTransform<TimeSpan, string>>, z.ZodPipe<z.ZodNumber, z.ZodTransform<TimeSpan, number>>, z.ZodPipe<z.ZodBigInt, z.ZodTransform<TimeSpan, bigint>>, z.ZodCustom<TimeSpan, TimeSpan>, z.ZodPipe<z.ZodCustom<TimeStamp, TimeStamp>, z.ZodTransform<TimeSpan, TimeStamp>>, z.ZodPipe<z.ZodCustom<import('@synnaxlabs/x').Rate, import('@synnaxlabs/x').Rate>, z.ZodTransform<TimeSpan, import('@synnaxlabs/x').Rate>>]>;
28
+ clockSkewExceeded: z.ZodBoolean;
29
+ retry: z.ZodNullable<z.ZodObject<{
30
+ attempt: z.ZodNumber;
31
+ nextAt: z.ZodUnion<readonly [z.ZodCustom<TimeStamp, TimeStamp>, z.ZodPipe<z.ZodObject<{
32
+ value: z.ZodBigInt;
33
+ }, z.core.$strip>, z.ZodTransform<TimeStamp, {
34
+ value: bigint;
35
+ }>>, z.ZodPipe<z.ZodString, z.ZodTransform<TimeStamp, string>>, z.ZodPipe<z.ZodNumber, z.ZodTransform<TimeStamp, number>>, z.ZodPipe<z.ZodBigInt, z.ZodTransform<TimeStamp, bigint>>, z.ZodPipe<z.ZodDate, z.ZodTransform<TimeStamp, Date>>, z.ZodPipe<z.ZodCustom<TimeSpan, TimeSpan>, z.ZodTransform<TimeStamp, TimeSpan>>, z.ZodPipe<z.ZodUnion<readonly [z.ZodTuple<[z.ZodInt], null>, z.ZodTuple<[z.ZodInt, z.ZodInt], null>, z.ZodTuple<[z.ZodInt, z.ZodInt, z.ZodInt], null>]>, z.ZodTransform<TimeStamp, [number, number, number] | [number, number] | [number]>>]>;
36
+ }, z.core.$strip>>;
37
+ checking: z.ZodBoolean;
38
+ }, z.core.$strip>;
39
+ export interface StatusDetails extends z.infer<typeof statusDetailsZ> {
40
+ }
41
+ /** Error-variant details: the same facts plus the reason the connection failed. */
42
+ export declare const errorStatusDetailsZ: z.ZodObject<{
43
+ error: z.ZodOptional<z.ZodCustom<Error, Error>>;
44
+ authenticated: z.ZodBoolean;
45
+ streamLive: z.ZodBoolean;
46
+ streamDenied: z.ZodBoolean;
47
+ epoch: z.ZodNumber;
48
+ clusterKey: z.ZodString;
49
+ clientVersion: z.ZodString;
50
+ nodeVersion: z.ZodOptional<z.ZodString>;
51
+ clientServerCompatible: z.ZodBoolean;
52
+ clockSkew: z.ZodUnion<readonly [z.ZodPipe<z.ZodObject<{
53
+ value: z.ZodBigInt;
54
+ }, z.core.$strip>, z.ZodTransform<TimeSpan, {
55
+ value: bigint;
56
+ }>>, z.ZodPipe<z.ZodString, z.ZodTransform<TimeSpan, string>>, z.ZodPipe<z.ZodNumber, z.ZodTransform<TimeSpan, number>>, z.ZodPipe<z.ZodBigInt, z.ZodTransform<TimeSpan, bigint>>, z.ZodCustom<TimeSpan, TimeSpan>, z.ZodPipe<z.ZodCustom<TimeStamp, TimeStamp>, z.ZodTransform<TimeSpan, TimeStamp>>, z.ZodPipe<z.ZodCustom<import('@synnaxlabs/x').Rate, import('@synnaxlabs/x').Rate>, z.ZodTransform<TimeSpan, import('@synnaxlabs/x').Rate>>]>;
57
+ clockSkewExceeded: z.ZodBoolean;
58
+ retry: z.ZodNullable<z.ZodObject<{
59
+ attempt: z.ZodNumber;
60
+ nextAt: z.ZodUnion<readonly [z.ZodCustom<TimeStamp, TimeStamp>, z.ZodPipe<z.ZodObject<{
61
+ value: z.ZodBigInt;
62
+ }, z.core.$strip>, z.ZodTransform<TimeStamp, {
63
+ value: bigint;
64
+ }>>, z.ZodPipe<z.ZodString, z.ZodTransform<TimeStamp, string>>, z.ZodPipe<z.ZodNumber, z.ZodTransform<TimeStamp, number>>, z.ZodPipe<z.ZodBigInt, z.ZodTransform<TimeStamp, bigint>>, z.ZodPipe<z.ZodDate, z.ZodTransform<TimeStamp, Date>>, z.ZodPipe<z.ZodCustom<TimeSpan, TimeSpan>, z.ZodTransform<TimeStamp, TimeSpan>>, z.ZodPipe<z.ZodUnion<readonly [z.ZodTuple<[z.ZodInt], null>, z.ZodTuple<[z.ZodInt, z.ZodInt], null>, z.ZodTuple<[z.ZodInt, z.ZodInt, z.ZodInt], null>]>, z.ZodTransform<TimeStamp, [number, number, number] | [number, number] | [number]>>]>;
65
+ }, z.core.$strip>>;
66
+ checking: z.ZodBoolean;
67
+ reason: z.ZodEnum<{
68
+ auth: "auth";
69
+ unreachable: "unreachable";
70
+ incompatible: "incompatible";
71
+ }>;
72
+ }, z.core.$strip>;
73
+ export interface ErrorStatusDetails extends z.infer<typeof errorStatusDetailsZ> {
74
+ }
75
+ export declare const nonErrorVariantZ: z.ZodEnum<{
76
+ success: "success";
77
+ info: "info";
78
+ warning: "warning";
79
+ loading: "loading";
80
+ disabled: "disabled";
81
+ }>;
82
+ /**
83
+ * The connection status: a standard status whose details carry the connection's
84
+ * facts. Renders anywhere a status does, with no translation. Discriminated on
85
+ * variant: `reason` exists only on the error member.
86
+ */
87
+ export declare const statusZ: z.ZodDiscriminatedUnion<[status.StatusZodObject<z.ZodObject<{
88
+ error: z.ZodOptional<z.ZodCustom<Error, Error>>;
89
+ authenticated: z.ZodBoolean;
90
+ streamLive: z.ZodBoolean;
91
+ streamDenied: z.ZodBoolean;
92
+ epoch: z.ZodNumber;
93
+ clusterKey: z.ZodString;
94
+ clientVersion: z.ZodString;
95
+ nodeVersion: z.ZodOptional<z.ZodString>;
96
+ clientServerCompatible: z.ZodBoolean;
97
+ clockSkew: z.ZodUnion<readonly [z.ZodPipe<z.ZodObject<{
98
+ value: z.ZodBigInt;
99
+ }, z.core.$strip>, z.ZodTransform<TimeSpan, {
100
+ value: bigint;
101
+ }>>, z.ZodPipe<z.ZodString, z.ZodTransform<TimeSpan, string>>, z.ZodPipe<z.ZodNumber, z.ZodTransform<TimeSpan, number>>, z.ZodPipe<z.ZodBigInt, z.ZodTransform<TimeSpan, bigint>>, z.ZodCustom<TimeSpan, TimeSpan>, z.ZodPipe<z.ZodCustom<TimeStamp, TimeStamp>, z.ZodTransform<TimeSpan, TimeStamp>>, z.ZodPipe<z.ZodCustom<import('@synnaxlabs/x').Rate, import('@synnaxlabs/x').Rate>, z.ZodTransform<TimeSpan, import('@synnaxlabs/x').Rate>>]>;
102
+ clockSkewExceeded: z.ZodBoolean;
103
+ retry: z.ZodNullable<z.ZodObject<{
104
+ attempt: z.ZodNumber;
105
+ nextAt: z.ZodUnion<readonly [z.ZodCustom<TimeStamp, TimeStamp>, z.ZodPipe<z.ZodObject<{
106
+ value: z.ZodBigInt;
107
+ }, z.core.$strip>, z.ZodTransform<TimeStamp, {
108
+ value: bigint;
109
+ }>>, z.ZodPipe<z.ZodString, z.ZodTransform<TimeStamp, string>>, z.ZodPipe<z.ZodNumber, z.ZodTransform<TimeStamp, number>>, z.ZodPipe<z.ZodBigInt, z.ZodTransform<TimeStamp, bigint>>, z.ZodPipe<z.ZodDate, z.ZodTransform<TimeStamp, Date>>, z.ZodPipe<z.ZodCustom<TimeSpan, TimeSpan>, z.ZodTransform<TimeStamp, TimeSpan>>, z.ZodPipe<z.ZodUnion<readonly [z.ZodTuple<[z.ZodInt], null>, z.ZodTuple<[z.ZodInt, z.ZodInt], null>, z.ZodTuple<[z.ZodInt, z.ZodInt, z.ZodInt], null>]>, z.ZodTransform<TimeStamp, [number, number, number] | [number, number] | [number]>>]>;
110
+ }, z.core.$strip>>;
111
+ checking: z.ZodBoolean;
112
+ reason: z.ZodEnum<{
113
+ auth: "auth";
114
+ unreachable: "unreachable";
115
+ incompatible: "incompatible";
116
+ }>;
117
+ }, z.core.$strip>, z.ZodLiteral<"error">>, status.StatusZodObject<z.ZodObject<{
118
+ error: z.ZodOptional<z.ZodCustom<Error, Error>>;
119
+ authenticated: z.ZodBoolean;
120
+ streamLive: z.ZodBoolean;
121
+ streamDenied: z.ZodBoolean;
122
+ epoch: z.ZodNumber;
123
+ clusterKey: z.ZodString;
124
+ clientVersion: z.ZodString;
125
+ nodeVersion: z.ZodOptional<z.ZodString>;
126
+ clientServerCompatible: z.ZodBoolean;
127
+ clockSkew: z.ZodUnion<readonly [z.ZodPipe<z.ZodObject<{
128
+ value: z.ZodBigInt;
129
+ }, z.core.$strip>, z.ZodTransform<TimeSpan, {
130
+ value: bigint;
131
+ }>>, z.ZodPipe<z.ZodString, z.ZodTransform<TimeSpan, string>>, z.ZodPipe<z.ZodNumber, z.ZodTransform<TimeSpan, number>>, z.ZodPipe<z.ZodBigInt, z.ZodTransform<TimeSpan, bigint>>, z.ZodCustom<TimeSpan, TimeSpan>, z.ZodPipe<z.ZodCustom<TimeStamp, TimeStamp>, z.ZodTransform<TimeSpan, TimeStamp>>, z.ZodPipe<z.ZodCustom<import('@synnaxlabs/x').Rate, import('@synnaxlabs/x').Rate>, z.ZodTransform<TimeSpan, import('@synnaxlabs/x').Rate>>]>;
132
+ clockSkewExceeded: z.ZodBoolean;
133
+ retry: z.ZodNullable<z.ZodObject<{
134
+ attempt: z.ZodNumber;
135
+ nextAt: z.ZodUnion<readonly [z.ZodCustom<TimeStamp, TimeStamp>, z.ZodPipe<z.ZodObject<{
136
+ value: z.ZodBigInt;
137
+ }, z.core.$strip>, z.ZodTransform<TimeStamp, {
138
+ value: bigint;
139
+ }>>, z.ZodPipe<z.ZodString, z.ZodTransform<TimeStamp, string>>, z.ZodPipe<z.ZodNumber, z.ZodTransform<TimeStamp, number>>, z.ZodPipe<z.ZodBigInt, z.ZodTransform<TimeStamp, bigint>>, z.ZodPipe<z.ZodDate, z.ZodTransform<TimeStamp, Date>>, z.ZodPipe<z.ZodCustom<TimeSpan, TimeSpan>, z.ZodTransform<TimeStamp, TimeSpan>>, z.ZodPipe<z.ZodUnion<readonly [z.ZodTuple<[z.ZodInt], null>, z.ZodTuple<[z.ZodInt, z.ZodInt], null>, z.ZodTuple<[z.ZodInt, z.ZodInt, z.ZodInt], null>]>, z.ZodTransform<TimeStamp, [number, number, number] | [number, number] | [number]>>]>;
140
+ }, z.core.$strip>>;
141
+ checking: z.ZodBoolean;
142
+ }, z.core.$strip>, z.ZodEnum<{
143
+ success: "success";
144
+ info: "info";
145
+ warning: "warning";
146
+ loading: "loading";
147
+ disabled: "disabled";
148
+ }>>], "variant">;
149
+ export type ErrorStatus = status.Status<typeof errorStatusDetailsZ, typeof status.errorVariantZ>;
150
+ export type NonErrorStatus = status.Status<typeof statusDetailsZ, typeof nonErrorVariantZ>;
151
+ export type Status = ErrorStatus | NonErrorStatus;
152
+ /** The status of a client that does not exist. */
153
+ export declare const DEFAULT_STATUS: Status;
154
+ /** Consecutive check failures before escalating to error(unreachable). */
155
+ export declare const DEFAULT_ESCALATE_AFTER = 4;
156
+ export interface Config {
157
+ clientVersion: string;
158
+ /** Human-readable cluster name for status messages. */
159
+ name?: string;
160
+ escalateAfter: number;
161
+ clockSkewThreshold: TimeSpan;
162
+ /** Whether success requires a live change stream. */
163
+ requiresStream: boolean;
164
+ }
165
+ /**
166
+ * The consumer-facing view of a client's connection. Read {@link Handle.status}
167
+ * or subscribe via {@link Handle.onChange}; the client owns every transition.
168
+ */
169
+ export interface Handle {
170
+ /** The current connection status. */
171
+ readonly status: Status;
172
+ /** Subscribes to status changes. Returns a destructor that unsubscribes. */
173
+ onChange: (callback: (status: Status) => void) => destructor.Destructor;
174
+ /**
175
+ * Resets the retry backoff and checks immediately. Auth and incompatibility
176
+ * errors are not cleared: those rest until the user supplies something new.
177
+ */
178
+ retryNow: () => void;
179
+ }
180
+ /**
181
+ * Resolves once the connection is usable: success, or warning when the cluster
182
+ * refuses live updates. Rejects with the stored failure when it settles on an
183
+ * error variant or is closed. The current status is evaluated first, so an
184
+ * already-connected handle resolves without waiting.
185
+ * @throws {Error} if the timeout elapses first.
186
+ */
187
+ export declare const awaitConnected: (handle: Handle, timeout?: CrudeTimeSpan) => Promise<Status>;
188
+ /** The facts a single connectivity check yields. */
189
+ export interface Info {
190
+ clusterKey: string;
191
+ nodeVersion: string;
192
+ /** Skew measured across the check's round trip. */
193
+ clockSkew: TimeSpan;
194
+ }
195
+ /**
196
+ * Everything that can move the connection status. The client is the only
197
+ * producer: check and retry events come from its own loop, the rest arrive as
198
+ * outside facts through its notify inbox.
199
+ */
200
+ export type Event = {
201
+ type: "check.started";
202
+ } | {
203
+ type: "check.success";
204
+ info: Info;
205
+ } | {
206
+ type: "check.failure";
207
+ error: Error;
208
+ attempt: number;
209
+ } | {
210
+ type: "stream.live";
211
+ } | {
212
+ type: "stream.drop";
213
+ error?: Error;
214
+ } | {
215
+ type: "stream.denied";
216
+ error?: Error;
217
+ } | {
218
+ type: "auth.success";
219
+ } | {
220
+ type: "auth.failure";
221
+ error: Error;
222
+ } | {
223
+ type: "epoch.advanced";
224
+ epoch: number;
225
+ } | {
226
+ type: "retry.scheduled";
227
+ attempt: number;
228
+ nextAt: TimeStamp;
229
+ } | {
230
+ type: "retry.exhausted";
231
+ } | {
232
+ type: "retry.requested";
233
+ } | {
234
+ type: "credentials.replaced";
235
+ } | {
236
+ type: "closed";
237
+ };
238
+ /** The status a freshly constructed client starts in. */
239
+ export declare const createInitialStatus: (config: Config) => Status;
240
+ /**
241
+ * Folds an event into the connection status. Pure: every transition in the
242
+ * lifecycle lives here and nowhere else. `disabled` is terminal.
243
+ */
244
+ export declare const reduce: (prev: Status, event: Event, config: Config) => Status;
245
+ /** Whether the change is worth notifying observers about. */
246
+ export declare const materialChange: (prev: Status, next: Status) => boolean;
247
+ /**
248
+ * Folds the event and stamps the status time when the result is worth publishing.
249
+ * @returns the next status and whether observers should be notified.
250
+ */
251
+ export declare const advance: (prev: Status, event: Event, config: Config) => [Status, boolean];
252
+ //# sourceMappingURL=status.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"status.d.ts","sourceRoot":"","sources":["../../../src/connection/status.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,33 @@
1
- import { StateTracker } from './state';
2
- import { framer } from '../framer';
3
- export declare const CONTROL_STATE_CHANNEL_NAME = "sy_node_1_control";
4
- export declare class Client {
5
- private readonly framer;
6
- constructor(framer: framer.Client);
7
- openStateTracker(): Promise<StateTracker>;
1
+ import { UnaryClient } from '@synnaxlabs/freighter';
2
+ import { z } from 'zod';
3
+ import { channel } from '../channel';
4
+ import { KeyedState } from './state';
5
+ import { query } from '../query';
6
+ declare const retrieveRequestZ: z.ZodObject<{
7
+ keys: z.ZodOptional<z.ZodArray<z.ZodUnion<[z.ZodUInt32, z.ZodPipe<z.ZodString, z.ZodTransform<number, string>>]>>>;
8
+ }, z.core.$strip>;
9
+ declare const retrieveMultiParamsZ: z.ZodUnion<[z.ZodObject<{
10
+ keys: z.ZodOptional<z.ZodArray<z.ZodUnion<[z.ZodUInt32, z.ZodPipe<z.ZodString, z.ZodTransform<number, string>>]>>>;
11
+ }, z.core.$strip>, z.ZodPipe<z.ZodArray<z.ZodUnion<[z.ZodUInt32, z.ZodPipe<z.ZodString, z.ZodTransform<number, string>>]>>, z.ZodTransform<{
12
+ keys: number[];
13
+ }, number[]>>]>;
14
+ export type RetrieveMultipleParams = z.input<typeof retrieveRequestZ>;
15
+ export interface ClientConfig {
16
+ unary: UnaryClient;
17
+ cache: query.Cache;
8
18
  }
19
+ /**
20
+ * Reads the control state of channels across the cluster. A channel is in the table
21
+ * exactly while a subject holds it, so absence is the uncontrolled state: a release
22
+ * deletes the entry instead of storing a sentinel.
23
+ */
24
+ export declare class Client extends query.Retriever<typeof retrieveMultiParamsZ, channel.Key, KeyedState> {
25
+ readonly type: string;
26
+ /** The control state table, keyed by the channel under control. */
27
+ readonly store: query.Table<channel.Key, KeyedState>;
28
+ private readonly cfg;
29
+ constructor(cfg: ClientConfig);
30
+ private execRetrieve;
31
+ }
32
+ export {};
9
33
  //# sourceMappingURL=client.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../../src/control/client.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAElC,eAAO,MAAM,0BAA0B,sBAAsB,CAAC;AAE9D,qBAAa,MAAM;IACjB,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAgB;gBAE3B,MAAM,EAAE,MAAM,CAAC,MAAM;IAI3B,gBAAgB,IAAI,OAAO,CAAC,YAAY,CAAC;CAOhD"}
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../../src/control/client.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,KAAK,OAAO,EAAE,MAAM,WAAW,CAAC;AAEzC,OAAO,EAAE,KAAK,UAAU,EAAwB,MAAM,iBAAiB,CAAC;AACxE,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAOhC,QAAA,MAAM,gBAAgB;;iBAA8C,CAAC;AACrE,QAAA,MAAM,oBAAoB;;;;eAA4C,CAAC;AAGvE,MAAM,MAAM,sBAAsB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAItE,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,WAAW,CAAC;IACnB,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC;CACpB;AAED;;;;GAIG;AACH,qBAAa,MAAO,SAAQ,KAAK,CAAC,SAAS,CACzC,OAAO,oBAAoB,EAC3B,OAAO,CAAC,GAAG,EACX,UAAU,CACX;IACC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAa;IAClC,mEAAmE;IACnE,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC;IACrD,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAe;gBAEvB,GAAG,EAAE,YAAY;YAmBf,YAAY;CAW3B"}
@@ -1,32 +1,71 @@
1
- import { control, observe } from '@synnaxlabs/x';
1
+ import { control } from '@synnaxlabs/x';
2
2
  import { z } from 'zod';
3
3
  import { channel } from '../channel';
4
- import { framer } from '../framer';
4
+ /** How strongly a writer claims a channel. The highest authority holds control. */
5
5
  export type Authority = control.Authority;
6
+ /** The highest authority. A writer holding it cannot be displaced. */
6
7
  export declare const ABSOLUTE_AUTHORITY: number;
8
+ /** The lowest authority. Any other writer displaces it. */
7
9
  export declare const ZERO_AUTHORITY: number;
10
+ /** Control of one channel moving between writers, or being released. */
8
11
  export type Transfer = control.Transfer<typeof channel.keyZ>;
12
+ /** Who holds control of a channel, and at what authority. */
9
13
  export interface State extends control.State<typeof channel.keyZ> {
10
14
  }
15
+ /** A named party that can hold control. */
11
16
  export interface Subject extends control.Subject {
12
17
  }
18
+ /** Zod schema for {@link State}. */
13
19
  export declare const stateZ: z.ZodObject<{
14
20
  subject: z.ZodObject<{
15
21
  key: z.ZodString;
16
22
  name: z.ZodString;
17
- group: z.ZodOptional<z.ZodUInt32>;
23
+ group: z.ZodDefault<z.ZodUInt32>;
18
24
  }, z.core.$strip>;
19
25
  resource: z.ZodNumber;
20
26
  authority: z.ZodInt;
21
27
  }, z.core.$strip>;
28
+ /**
29
+ * A control state stored under the channel it controls, which is how the client caches
30
+ * it.
31
+ */
32
+ export declare const keyedStateZ: z.ZodPipe<z.ZodObject<{
33
+ subject: z.ZodObject<{
34
+ key: z.ZodString;
35
+ name: z.ZodString;
36
+ group: z.ZodDefault<z.ZodUInt32>;
37
+ }, z.core.$strip>;
38
+ resource: z.ZodNumber;
39
+ authority: z.ZodInt;
40
+ }, z.core.$strip>, z.ZodTransform<{
41
+ subject: {
42
+ key: string;
43
+ name: string;
44
+ group: number;
45
+ };
46
+ resource: number;
47
+ authority: number;
48
+ key: number;
49
+ }, {
50
+ subject: {
51
+ key: string;
52
+ name: string;
53
+ group: number;
54
+ };
55
+ resource: number;
56
+ authority: number;
57
+ }>>;
58
+ export interface KeyedState extends z.infer<typeof keyedStateZ> {
59
+ }
60
+ /** Renders a {@link Transfer} as readable text, for logs and status messages. */
22
61
  export declare const transferString: (t: Transfer) => string;
23
- declare const updateZ: z.ZodObject<{
62
+ export declare const updateZ: z.ZodObject<{
24
63
  transfers: z.ZodArray<z.ZodUnion<readonly [z.ZodObject<{
25
64
  from: z.ZodObject<{
26
65
  subject: z.ZodObject<{
27
66
  key: z.ZodString;
28
67
  name: z.ZodString;
29
- group: z.ZodOptional<z.ZodUInt32>;
68
+ group: z.ZodDefault<z.ZodUInt32>;
30
69
  }, z.core.$strip>;
31
70
  resource: z.ZodUnion<[z.ZodUInt32, z.ZodPipe<z.ZodString, z.ZodTransform<number, string>>]>;
32
71
  authority: z.ZodInt;
@@ -38,7 +77,7 @@ declare const updateZ: z.ZodObject<{
38
77
  subject: z.ZodObject<{
39
78
  key: z.ZodString;
40
79
  name: z.ZodString;
41
- group: z.ZodOptional<z.ZodUInt32>;
80
+ group: z.ZodDefault<z.ZodUInt32>;
42
81
  }, z.core.$strip>;
43
82
  resource: z.ZodUnion<[z.ZodUInt32, z.ZodPipe<z.ZodString, z.ZodTransform<number, string>>]>;
44
83
  authority: z.ZodInt;
@@ -48,7 +87,7 @@ declare const updateZ: z.ZodObject<{
48
87
  subject: z.ZodObject<{
49
88
  key: z.ZodString;
50
89
  name: z.ZodString;
51
- group: z.ZodOptional<z.ZodUInt32>;
90
+ group: z.ZodDefault<z.ZodUInt32>;
52
91
  }, z.core.$strip>;
53
92
  resource: z.ZodUnion<[z.ZodUInt32, z.ZodPipe<z.ZodString, z.ZodTransform<number, string>>]>;
54
93
  authority: z.ZodInt;
@@ -57,7 +96,7 @@ declare const updateZ: z.ZodObject<{
57
96
  subject: z.ZodObject<{
58
97
  key: z.ZodString;
59
98
  name: z.ZodString;
60
- group: z.ZodOptional<z.ZodUInt32>;
99
+ group: z.ZodDefault<z.ZodUInt32>;
61
100
  }, z.core.$strip>;
62
101
  resource: z.ZodUnion<[z.ZodUInt32, z.ZodPipe<z.ZodString, z.ZodTransform<number, string>>]>;
63
102
  authority: z.ZodInt;
@@ -66,12 +105,4 @@ declare const updateZ: z.ZodObject<{
66
105
  }, z.core.$strip>;
67
106
  export interface Update extends z.infer<typeof updateZ> {
68
107
  }
69
- export declare class StateTracker extends framer.ObservableStreamer<Transfer[]> implements observe.ObservableAsyncCloseable<Transfer[]> {
70
- readonly states: Map<channel.Key, State>;
71
- private readonly codec;
72
- constructor(streamer: framer.Streamer);
73
- subjects(): Subject[];
74
- private merge;
75
- }
76
- export {};
77
108
  //# sourceMappingURL=state.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"state.d.ts","sourceRoot":"","sources":["../../../src/control/state.ts"],"names":[],"mappings":"AASA,OAAO,EAAU,OAAO,EAAE,KAAK,OAAO,EAAE,MAAM,eAAe,CAAC;AAC9D,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,KAAK,OAAO,EAAE,MAAM,WAAW,CAAC;AAEzC,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAElC,MAAM,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC;AAC1C,eAAO,MAAM,kBAAkB,QAA6B,CAAC;AAC7D,eAAO,MAAM,cAAc,QAAyB,CAAC;AACrD,MAAM,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC,OAAO,OAAO,CAAC,IAAI,CAAC,CAAC;AAC7D,MAAM,WAAW,KAAM,SAAQ,OAAO,CAAC,KAAK,CAAC,OAAO,OAAO,CAAC,IAAI,CAAC;CAAG;AACpE,MAAM,WAAW,OAAQ,SAAQ,OAAO,CAAC,OAAO;CAAG;AACnD,eAAO,MAAM,MAAM;;;;;;;;iBAA6B,CAAC;AAEjD,eAAO,MAAM,cAAc,GAAI,GAAG,QAAQ,KAAG,MAW5C,CAAC;AAEF,QAAA,MAAM,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAEX,CAAC;AAEH,MAAM,WAAW,MAAO,SAAQ,CAAC,CAAC,KAAK,CAAC,OAAO,OAAO,CAAC;CAAG;AAE1D,qBAAa,YACX,SAAQ,MAAM,CAAC,kBAAkB,CAAC,QAAQ,EAAE,CAC5C,YAAW,OAAO,CAAC,wBAAwB,CAAC,QAAQ,EAAE,CAAC;IAEvD,QAAQ,CAAC,MAAM,EAAE,GAAG,CAAC,OAAO,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;IACzC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAmB;gBAE7B,QAAQ,EAAE,MAAM,CAAC,QAAQ;IAWrC,QAAQ,IAAI,OAAO,EAAE;IAMrB,OAAO,CAAC,KAAK;CAOd"}
1
+ {"version":3,"file":"state.d.ts","sourceRoot":"","sources":["../../../src/control/state.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AACxC,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,KAAK,OAAO,EAAE,MAAM,WAAW,CAAC;AAGzC,mFAAmF;AACnF,MAAM,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC;AAC1C,sEAAsE;AACtE,eAAO,MAAM,kBAAkB,QAA6B,CAAC;AAC7D,2DAA2D;AAC3D,eAAO,MAAM,cAAc,QAAyB,CAAC;AACrD,wEAAwE;AACxE,MAAM,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC,OAAO,OAAO,CAAC,IAAI,CAAC,CAAC;AAC7D,6DAA6D;AAC7D,MAAM,WAAW,KAAM,SAAQ,OAAO,CAAC,KAAK,CAAC,OAAO,OAAO,CAAC,IAAI,CAAC;CAAG;AACpE,2CAA2C;AAC3C,MAAM,WAAW,OAAQ,SAAQ,OAAO,CAAC,OAAO;CAAG;AACnD,oCAAoC;AACpC,eAAO,MAAM,MAAM;;;;;;;;iBAA6B,CAAC;AAEjD;;;GAGG;AACH,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;GAAuD,CAAC;AAChF,MAAM,WAAW,UAAW,SAAQ,CAAC,CAAC,KAAK,CAAC,OAAO,WAAW,CAAC;CAAG;AAElE,iFAAiF;AACjF,eAAO,MAAM,cAAc,GAAI,GAAG,QAAQ,KAAG,MAW5C,CAAC;AAEF,eAAO,MAAM,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAElB,CAAC;AAEH,MAAM,WAAW,MAAO,SAAQ,CAAC,CAAC,KAAK,CAAC,OAAO,OAAO,CAAC;CAAG"}
@@ -1,7 +1,10 @@
1
1
  import { UnaryClient } from '@synnaxlabs/freighter';
2
- import { record } from '@synnaxlabs/x';
2
+ import { destructor, record } from '@synnaxlabs/x';
3
3
  import { z } from 'zod';
4
4
  import { Device, DeviceSchemas, Key, New } from './types.gen';
5
+ import { ontology } from '../ontology';
6
+ import { query } from '../query';
7
+ import { status } from '../status';
5
8
  export declare const SET_CHANNEL_NAME = "sy_device_set";
6
9
  export declare const DELETE_CHANNEL_NAME = "sy_device_delete";
7
10
  declare const retrieveRequestZ: z.ZodObject<{
@@ -17,7 +20,22 @@ declare const retrieveRequestZ: z.ZodObject<{
17
20
  includeStatus: z.ZodOptional<z.ZodBoolean>;
18
21
  includeParent: z.ZodOptional<z.ZodBoolean>;
19
22
  }, z.core.$strip>;
20
- declare const singleRetrieveArgsZ: z.ZodPipe<z.ZodObject<{
23
+ declare const retrieveMultiParamsZ: z.ZodUnion<[z.ZodObject<{
24
+ keys: z.ZodOptional<z.ZodArray<z.ZodString>>;
25
+ names: z.ZodOptional<z.ZodArray<z.ZodString>>;
26
+ makes: z.ZodOptional<z.ZodArray<z.ZodString>>;
27
+ models: z.ZodOptional<z.ZodArray<z.ZodString>>;
28
+ locations: z.ZodOptional<z.ZodArray<z.ZodString>>;
29
+ racks: z.ZodOptional<z.ZodArray<z.ZodUInt32>>;
30
+ searchTerm: z.ZodOptional<z.ZodString>;
31
+ limit: z.ZodOptional<z.ZodInt>;
32
+ offset: z.ZodOptional<z.ZodInt>;
33
+ includeStatus: z.ZodOptional<z.ZodBoolean>;
34
+ includeParent: z.ZodOptional<z.ZodBoolean>;
35
+ }, z.core.$strip>, z.ZodPipe<z.ZodArray<z.ZodString>, z.ZodTransform<{
36
+ keys: string[];
37
+ }, string[]>>]>;
38
+ declare const singleRetrieveParamsZ: z.ZodPipe<z.ZodObject<{
21
39
  key: z.ZodString;
22
40
  includeStatus: z.ZodOptional<z.ZodBoolean>;
23
41
  }, z.core.$strip>, z.ZodTransform<{
@@ -27,9 +45,9 @@ declare const singleRetrieveArgsZ: z.ZodPipe<z.ZodObject<{
27
45
  key: string;
28
46
  includeStatus?: boolean | undefined;
29
47
  }>>;
30
- export type RetrieveSingleParams = z.input<typeof singleRetrieveArgsZ>;
48
+ export type RetrieveSingleParams = z.input<typeof singleRetrieveParamsZ>;
31
49
  export type RetrieveMultipleParams = z.input<typeof retrieveRequestZ>;
32
- declare const retrieveArgsZ: z.ZodUnion<readonly [z.ZodPipe<z.ZodObject<{
50
+ declare const retrieveParamsZ: z.ZodUnion<readonly [z.ZodPipe<z.ZodObject<{
33
51
  key: z.ZodString;
34
52
  includeStatus: z.ZodOptional<z.ZodBoolean>;
35
53
  }, z.core.$strip>, z.ZodTransform<{
@@ -51,24 +69,48 @@ declare const retrieveArgsZ: z.ZodUnion<readonly [z.ZodPipe<z.ZodObject<{
51
69
  includeStatus: z.ZodOptional<z.ZodBoolean>;
52
70
  includeParent: z.ZodOptional<z.ZodBoolean>;
53
71
  }, z.core.$strip>]>;
54
- export type RetrieveArgs = z.input<typeof retrieveArgsZ>;
72
+ export type RetrieveParams = z.input<typeof retrieveParamsZ>;
73
+ type SingleQuery = {
74
+ key: Key;
75
+ includeStatus?: boolean;
76
+ };
55
77
  type RetrieveSchemas<Properties extends z.ZodType<record.Unknown>, Make extends z.ZodType<string>, Model extends z.ZodType<string>> = {
56
78
  schemas: DeviceSchemas<Properties, Make, Model>;
57
79
  };
58
- export declare class Client {
59
- private readonly client;
60
- constructor(client: UnaryClient);
61
- retrieve<Properties extends z.ZodType<record.Unknown>, Make extends z.ZodType<string>, Model extends z.ZodType<string>>(args: RetrieveSingleParams & RetrieveSchemas<Properties, Make, Model>): Promise<Device<Properties, Make, Model>>;
62
- retrieve(args: RetrieveSingleParams): Promise<Device>;
63
- retrieve<Properties extends z.ZodType<record.Unknown>, Make extends z.ZodType<string>, Model extends z.ZodType<string>>(args: RetrieveMultipleParams & RetrieveSchemas<Properties, Make, Model>): Promise<Array<Device<Properties, Make, Model>>>;
64
- retrieve(args: RetrieveMultipleParams): Promise<Array<Device>>;
80
+ export interface ClientConfig {
81
+ unary: UnaryClient;
82
+ cache: query.Cache;
83
+ statusStore: query.Table<status.Key, status.Status>;
84
+ ontology: ontology.Client;
85
+ }
86
+ export declare class Client extends query.Retriever<typeof retrieveMultiParamsZ, Key, Omit<Device, "status">, Device, RetrieveSingleParams, SingleQuery> {
87
+ private readonly cfg;
88
+ private readonly store;
89
+ constructor(cfg: ClientConfig);
90
+ retrieve<Properties extends z.ZodType<record.Unknown>, Make extends z.ZodType<string>, Model extends z.ZodType<string>>(params: RetrieveSingleParams & RetrieveSchemas<Properties, Make, Model>): Promise<Device<Properties, Make, Model>>;
91
+ retrieve(params: Key | RetrieveSingleParams): Promise<Device>;
92
+ retrieve<Properties extends z.ZodType<record.Unknown>, Make extends z.ZodType<string>, Model extends z.ZodType<string>>(params: RetrieveMultipleParams & RetrieveSchemas<Properties, Make, Model>): Promise<Array<Device<Properties, Make, Model>>>;
93
+ retrieve(params: RetrieveMultipleParams): Promise<Array<Device>>;
65
94
  create(device: New): Promise<Device>;
66
95
  create(devices: New[]): Promise<Device[]>;
67
- create<Properties extends z.ZodType<record.Unknown>, Make extends z.ZodType<string>, Model extends z.ZodType<string>>(device: New<Properties, Make, Model>, schemas: DeviceSchemas<Properties, Make, Model>): Promise<Device<Properties, Make, Model>>;
68
- create(device: New, schemas?: DeviceSchemas): Promise<Device>;
69
- create<Properties extends z.ZodType<record.Unknown>, Make extends z.ZodType<string>, Model extends z.ZodType<string>>(devices: New<Properties, Make, Model>[], schemas: DeviceSchemas<Properties, Make, Model>): Promise<Device<Properties, Make, Model>[]>;
70
- create(devices: New[], schemas?: DeviceSchemas): Promise<Device[]>;
71
- delete(keys: Key | Key[]): Promise<void>;
96
+ create<Properties extends z.ZodType<record.Unknown>, Make extends z.ZodType<string>, Model extends z.ZodType<string>>(device: New<Properties, Make, Model>, schemas: DeviceSchemas<Properties, Make, Model>, opts?: query.WriteOptions): Promise<Device<Properties, Make, Model>>;
97
+ create(device: New, schemas?: DeviceSchemas, opts?: query.WriteOptions): Promise<Device>;
98
+ create<Properties extends z.ZodType<record.Unknown>, Make extends z.ZodType<string>, Model extends z.ZodType<string>>(devices: New<Properties, Make, Model>[], schemas: DeviceSchemas<Properties, Make, Model>, opts?: query.WriteOptions): Promise<Device<Properties, Make, Model>[]>;
99
+ create(devices: New[], schemas?: DeviceSchemas, opts?: query.WriteOptions): Promise<Device[]>;
100
+ delete(keys: Key | Key[], opts?: query.WriteOptions): Promise<void>;
101
+ rename(key: Key, name: string, opts?: query.WriteOptions): Promise<void>;
102
+ /** Subscribes to every device set delivered to the cache. Statuses excluded. */
103
+ onSet(handler: (device: Omit<Device, "status">) => void): destructor.Destructor;
104
+ /** Subscribes to every device delete delivered to the cache. */
105
+ onDelete(handler: (key: Key) => void): destructor.Destructor;
106
+ /** Rebuilds a cached device, attaching its cached status when requested. */
107
+ private compose;
108
+ /** Writes fetched devices and their included statuses. */
109
+ private writeThrough;
110
+ private execRetrieve;
111
+ /** Fetches devices and writes their included statuses through the caches. */
112
+ private fetchThrough;
113
+ private fetchSingle;
72
114
  }
73
115
  export declare const statusKey: (key: Key) => string;
74
116
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../../src/device/client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../../src/device/client.ts"],"names":[],"mappings":"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"}