@rocicorp/zero 0.25.0-canary.7 → 0.25.0-canary.9

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 (1403) hide show
  1. package/out/analyze-query/src/bin-analyze.js +258 -236
  2. package/out/analyze-query/src/bin-analyze.js.map +1 -1
  3. package/out/analyze-query/src/bin-transform.js +31 -23
  4. package/out/analyze-query/src/bin-transform.js.map +1 -1
  5. package/out/analyze-query/src/explain-queries.js +13 -16
  6. package/out/analyze-query/src/explain-queries.js.map +1 -1
  7. package/out/analyze-query/src/run-ast.d.ts +3 -2
  8. package/out/analyze-query/src/run-ast.d.ts.map +1 -1
  9. package/out/analyze-query/src/run-ast.js +79 -73
  10. package/out/analyze-query/src/run-ast.js.map +1 -1
  11. package/out/ast-to-zql/src/ast-to-zql.js +146 -180
  12. package/out/ast-to-zql/src/ast-to-zql.js.map +1 -1
  13. package/out/ast-to-zql/src/bin.js +51 -54
  14. package/out/ast-to-zql/src/bin.js.map +1 -1
  15. package/out/ast-to-zql/src/format.js +15 -14
  16. package/out/ast-to-zql/src/format.js.map +1 -1
  17. package/out/datadog/src/datadog-log-sink.js +223 -0
  18. package/out/datadog/src/datadog-log-sink.js.map +1 -0
  19. package/out/otel/src/enabled.js +15 -15
  20. package/out/otel/src/enabled.js.map +1 -1
  21. package/out/otel/src/log-options.js +36 -31
  22. package/out/otel/src/log-options.js.map +1 -1
  23. package/out/otel/src/maybe-time.js +14 -11
  24. package/out/otel/src/maybe-time.js.map +1 -1
  25. package/out/otel/src/span.js +30 -27
  26. package/out/otel/src/span.js.map +1 -1
  27. package/out/otel/src/test-log-config.js +10 -7
  28. package/out/otel/src/test-log-config.js.map +1 -1
  29. package/out/otel/src/version.js +5 -2
  30. package/out/otel/src/version.js.map +1 -1
  31. package/out/replicache/src/async-iterable-to-array.js +11 -0
  32. package/out/replicache/src/async-iterable-to-array.js.map +1 -0
  33. package/out/replicache/src/bg-interval.js +38 -0
  34. package/out/replicache/src/bg-interval.js.map +1 -0
  35. package/out/replicache/src/btree/diff.js +8 -0
  36. package/out/replicache/src/btree/diff.js.map +1 -0
  37. package/out/replicache/src/btree/node.js +400 -0
  38. package/out/replicache/src/btree/node.js.map +1 -0
  39. package/out/replicache/src/btree/read.d.ts +3 -2
  40. package/out/replicache/src/btree/read.d.ts.map +1 -1
  41. package/out/replicache/src/btree/read.js +266 -0
  42. package/out/replicache/src/btree/read.js.map +1 -0
  43. package/out/replicache/src/btree/splice.js +83 -0
  44. package/out/replicache/src/btree/splice.js.map +1 -0
  45. package/out/replicache/src/btree/write.d.ts +1 -1
  46. package/out/replicache/src/btree/write.d.ts.map +1 -1
  47. package/out/replicache/src/btree/write.js +163 -0
  48. package/out/replicache/src/btree/write.js.map +1 -0
  49. package/out/replicache/src/call-default-fetch.js +34 -0
  50. package/out/replicache/src/call-default-fetch.js.map +1 -0
  51. package/out/replicache/src/connection-loop-delegates.js +34 -0
  52. package/out/replicache/src/connection-loop-delegates.js.map +1 -0
  53. package/out/replicache/src/connection-loop.js +251 -0
  54. package/out/replicache/src/connection-loop.js.map +1 -0
  55. package/out/replicache/src/cookies.js +40 -0
  56. package/out/replicache/src/cookies.js.map +1 -0
  57. package/out/replicache/src/dag/chunk.js +59 -0
  58. package/out/replicache/src/dag/chunk.js.map +1 -0
  59. package/out/replicache/src/dag/gc.js +117 -0
  60. package/out/replicache/src/dag/gc.js.map +1 -0
  61. package/out/replicache/src/dag/key.js +20 -0
  62. package/out/replicache/src/dag/key.js.map +1 -0
  63. package/out/replicache/src/dag/lazy-store.d.ts +2 -1
  64. package/out/replicache/src/dag/lazy-store.d.ts.map +1 -1
  65. package/out/replicache/src/dag/lazy-store.js +515 -0
  66. package/out/replicache/src/dag/lazy-store.js.map +1 -0
  67. package/out/replicache/src/dag/store-impl.js +183 -0
  68. package/out/replicache/src/dag/store-impl.js.map +1 -0
  69. package/out/replicache/src/dag/store.js +27 -0
  70. package/out/replicache/src/dag/store.js.map +1 -0
  71. package/out/replicache/src/dag/visitor.js +22 -0
  72. package/out/replicache/src/dag/visitor.js.map +1 -0
  73. package/out/replicache/src/db/commit.js +358 -0
  74. package/out/replicache/src/db/commit.js.map +1 -0
  75. package/out/replicache/src/db/index-operation-enum.js +7 -0
  76. package/out/replicache/src/db/index-operation-enum.js.map +1 -0
  77. package/out/replicache/src/db/index.js +134 -0
  78. package/out/replicache/src/db/index.js.map +1 -0
  79. package/out/replicache/src/db/meta-type-enum.js +7 -0
  80. package/out/replicache/src/db/meta-type-enum.js.map +1 -0
  81. package/out/replicache/src/db/read.d.ts +3 -2
  82. package/out/replicache/src/db/read.d.ts.map +1 -1
  83. package/out/replicache/src/db/read.js +72 -0
  84. package/out/replicache/src/db/read.js.map +1 -0
  85. package/out/replicache/src/db/rebase.d.ts +2 -2
  86. package/out/replicache/src/db/rebase.d.ts.map +1 -1
  87. package/out/replicache/src/db/rebase.js +85 -0
  88. package/out/replicache/src/db/rebase.js.map +1 -0
  89. package/out/replicache/src/db/write.d.ts +2 -1
  90. package/out/replicache/src/db/write.d.ts.map +1 -1
  91. package/out/replicache/src/db/write.js +296 -0
  92. package/out/replicache/src/db/write.js.map +1 -0
  93. package/out/replicache/src/deleted-clients.js +104 -0
  94. package/out/replicache/src/deleted-clients.js.map +1 -0
  95. package/out/replicache/src/error-responses.js +34 -0
  96. package/out/replicache/src/error-responses.js.map +1 -0
  97. package/out/replicache/src/format-version-enum.js +11 -0
  98. package/out/replicache/src/format-version-enum.js.map +1 -0
  99. package/out/{chunk-EZM3XBAB.js → replicache/src/frozen-json.js} +8 -75
  100. package/out/replicache/src/frozen-json.js.map +1 -0
  101. package/out/replicache/src/get-default-puller.js +61 -0
  102. package/out/replicache/src/get-default-puller.js.map +1 -0
  103. package/out/replicache/src/get-default-pusher.js +39 -0
  104. package/out/replicache/src/get-default-pusher.js.map +1 -0
  105. package/out/replicache/src/get-kv-store-provider.js +23 -0
  106. package/out/replicache/src/get-kv-store-provider.js.map +1 -0
  107. package/out/replicache/src/hash.js +38 -0
  108. package/out/replicache/src/hash.js.map +1 -0
  109. package/out/replicache/src/http-request-info.js +10 -0
  110. package/out/replicache/src/http-request-info.js.map +1 -0
  111. package/out/replicache/src/http-status-unauthorized.js +5 -0
  112. package/out/replicache/src/http-status-unauthorized.js.map +1 -0
  113. package/out/replicache/src/index-defs.js +32 -0
  114. package/out/replicache/src/index-defs.js.map +1 -0
  115. package/out/replicache/src/invoke-kind-enum.js +7 -0
  116. package/out/replicache/src/invoke-kind-enum.js.map +1 -0
  117. package/out/{chunk-HCZQVP5R.js → replicache/src/kv/expo-sqlite/store.js} +8 -16
  118. package/out/replicache/src/kv/expo-sqlite/store.js.map +1 -0
  119. package/out/replicache/src/kv/idb-store-with-mem-fallback.js +80 -0
  120. package/out/replicache/src/kv/idb-store-with-mem-fallback.js.map +1 -0
  121. package/out/replicache/src/kv/idb-store.js +183 -0
  122. package/out/replicache/src/kv/idb-store.js.map +1 -0
  123. package/out/replicache/src/kv/mem-store.js +51 -0
  124. package/out/replicache/src/kv/mem-store.js.map +1 -0
  125. package/out/{op-sqlite.js → replicache/src/kv/op-sqlite/store.js} +7 -18
  126. package/out/replicache/src/kv/op-sqlite/store.js.map +1 -0
  127. package/out/replicache/src/kv/op-sqlite/types.js +6 -0
  128. package/out/replicache/src/kv/op-sqlite/types.js.map +1 -0
  129. package/out/replicache/src/kv/read-impl.js +27 -0
  130. package/out/replicache/src/kv/read-impl.js.map +1 -0
  131. package/out/{chunk-WPAQ4EPM.js → replicache/src/kv/sqlite-store.js} +15 -19
  132. package/out/replicache/src/kv/sqlite-store.js.map +1 -0
  133. package/out/{chunk-ASRS2LFV.js → replicache/src/kv/throw-if-closed.js} +4 -6
  134. package/out/replicache/src/kv/throw-if-closed.js.map +1 -0
  135. package/out/replicache/src/kv/write-impl-base.js +57 -0
  136. package/out/replicache/src/kv/write-impl-base.js.map +1 -0
  137. package/out/replicache/src/kv/write-impl.js +30 -0
  138. package/out/replicache/src/kv/write-impl.js.map +1 -0
  139. package/out/replicache/src/lazy.js +13 -0
  140. package/out/replicache/src/lazy.js.map +1 -0
  141. package/out/replicache/src/log-options.js +9 -0
  142. package/out/replicache/src/log-options.js.map +1 -0
  143. package/out/replicache/src/make-idb-name.js +13 -0
  144. package/out/replicache/src/make-idb-name.js.map +1 -0
  145. package/out/replicache/src/new-client-channel.js +51 -0
  146. package/out/replicache/src/new-client-channel.js.map +1 -0
  147. package/out/replicache/src/on-persist-channel.js +36 -0
  148. package/out/replicache/src/on-persist-channel.js.map +1 -0
  149. package/out/replicache/src/patch-operation.js +42 -0
  150. package/out/replicache/src/patch-operation.js.map +1 -0
  151. package/out/replicache/src/pending-mutations.js +16 -0
  152. package/out/replicache/src/pending-mutations.js.map +1 -0
  153. package/out/replicache/src/persist/client-gc.js +58 -0
  154. package/out/replicache/src/persist/client-gc.js.map +1 -0
  155. package/out/replicache/src/persist/client-group-gc.js +43 -0
  156. package/out/replicache/src/persist/client-group-gc.js.map +1 -0
  157. package/out/replicache/src/persist/client-groups.js +184 -0
  158. package/out/replicache/src/persist/client-groups.js.map +1 -0
  159. package/out/replicache/src/persist/clients.d.ts +3 -2
  160. package/out/replicache/src/persist/clients.d.ts.map +1 -1
  161. package/out/replicache/src/persist/clients.js +353 -0
  162. package/out/replicache/src/persist/clients.js.map +1 -0
  163. package/out/replicache/src/persist/collect-idb-databases.js +188 -0
  164. package/out/replicache/src/persist/collect-idb-databases.js.map +1 -0
  165. package/out/replicache/src/persist/gather-mem-only-visitor.js +27 -0
  166. package/out/replicache/src/persist/gather-mem-only-visitor.js.map +1 -0
  167. package/out/replicache/src/persist/gather-not-cached-visitor.js +37 -0
  168. package/out/replicache/src/persist/gather-not-cached-visitor.js.map +1 -0
  169. package/out/replicache/src/persist/heartbeat.js +48 -0
  170. package/out/replicache/src/persist/heartbeat.js.map +1 -0
  171. package/out/replicache/src/persist/idb-databases-store-db-name.js +14 -0
  172. package/out/replicache/src/persist/idb-databases-store-db-name.js.map +1 -0
  173. package/out/replicache/src/persist/idb-databases-store.js +92 -0
  174. package/out/replicache/src/persist/idb-databases-store.js.map +1 -0
  175. package/out/replicache/src/persist/make-client-id.js +12 -0
  176. package/out/replicache/src/persist/make-client-id.js.map +1 -0
  177. package/out/replicache/src/persist/persist.d.ts +2 -2
  178. package/out/replicache/src/persist/persist.d.ts.map +1 -1
  179. package/out/replicache/src/persist/persist.js +183 -0
  180. package/out/replicache/src/persist/persist.js.map +1 -0
  181. package/out/replicache/src/persist/refresh.d.ts +4 -3
  182. package/out/replicache/src/persist/refresh.d.ts.map +1 -1
  183. package/out/replicache/src/persist/refresh.js +198 -0
  184. package/out/replicache/src/persist/refresh.js.map +1 -0
  185. package/out/replicache/src/process-scheduler.js +96 -0
  186. package/out/replicache/src/process-scheduler.js.map +1 -0
  187. package/out/replicache/src/pusher.js +33 -0
  188. package/out/replicache/src/pusher.js.map +1 -0
  189. package/out/replicache/src/replicache-impl.d.ts +1 -1
  190. package/out/replicache/src/replicache-impl.d.ts.map +1 -1
  191. package/out/replicache/src/replicache-impl.js +1200 -0
  192. package/out/replicache/src/replicache-impl.js.map +1 -0
  193. package/out/replicache/src/report-error.js +6 -0
  194. package/out/replicache/src/report-error.js.map +1 -0
  195. package/out/replicache/src/request-idle.js +13 -0
  196. package/out/replicache/src/request-idle.js.map +1 -0
  197. package/out/replicache/src/scan-iterator.js +146 -0
  198. package/out/replicache/src/scan-iterator.js.map +1 -0
  199. package/out/replicache/src/scan-options.js +45 -0
  200. package/out/replicache/src/scan-options.js.map +1 -0
  201. package/out/replicache/src/set-interval-with-signal.js +12 -0
  202. package/out/replicache/src/set-interval-with-signal.js.map +1 -0
  203. package/out/replicache/src/subscriptions.js +355 -0
  204. package/out/replicache/src/subscriptions.js.map +1 -0
  205. package/out/replicache/src/sync/diff.d.ts +3 -2
  206. package/out/replicache/src/sync/diff.d.ts.map +1 -1
  207. package/out/replicache/src/sync/diff.js +72 -0
  208. package/out/replicache/src/sync/diff.js.map +1 -0
  209. package/out/replicache/src/sync/handle-pull-response-result-type-enum.js +9 -0
  210. package/out/replicache/src/sync/handle-pull-response-result-type-enum.js.map +1 -0
  211. package/out/replicache/src/sync/ids.js +9 -0
  212. package/out/replicache/src/sync/ids.js.map +1 -0
  213. package/out/replicache/src/sync/patch.js +49 -0
  214. package/out/replicache/src/sync/patch.js.map +1 -0
  215. package/out/replicache/src/sync/pull-error.js +16 -0
  216. package/out/replicache/src/sync/pull-error.js.map +1 -0
  217. package/out/replicache/src/sync/pull.d.ts +3 -2
  218. package/out/replicache/src/sync/pull.d.ts.map +1 -1
  219. package/out/replicache/src/sync/pull.js +301 -0
  220. package/out/replicache/src/sync/pull.js.map +1 -0
  221. package/out/replicache/src/sync/push.js +88 -0
  222. package/out/replicache/src/sync/push.js.map +1 -0
  223. package/out/replicache/src/sync/request-id.js +20 -0
  224. package/out/replicache/src/sync/request-id.js.map +1 -0
  225. package/out/replicache/src/sync/sync-head-name.js +5 -0
  226. package/out/replicache/src/sync/sync-head-name.js.map +1 -0
  227. package/out/replicache/src/to-error.js +10 -0
  228. package/out/replicache/src/to-error.js.map +1 -0
  229. package/out/replicache/src/transaction-closed-error.js +19 -0
  230. package/out/replicache/src/transaction-closed-error.js.map +1 -0
  231. package/out/replicache/src/transactions.js +152 -0
  232. package/out/replicache/src/transactions.js.map +1 -0
  233. package/out/replicache/src/version.js +5 -0
  234. package/out/replicache/src/version.js.map +1 -0
  235. package/out/replicache/src/with-transactions.js +28 -0
  236. package/out/replicache/src/with-transactions.js.map +1 -0
  237. package/out/shared/src/abort-error.js +6 -3
  238. package/out/shared/src/abort-error.js.map +1 -1
  239. package/out/shared/src/arrays.js +45 -43
  240. package/out/shared/src/arrays.js.map +1 -1
  241. package/out/shared/src/asserts.js +64 -68
  242. package/out/shared/src/asserts.js.map +1 -1
  243. package/out/shared/src/bigint-json.js +38 -42
  244. package/out/shared/src/bigint-json.js.map +1 -1
  245. package/out/shared/src/binary-search.js +18 -29
  246. package/out/shared/src/binary-search.js.map +1 -1
  247. package/out/shared/src/broadcast-channel.js +24 -0
  248. package/out/shared/src/broadcast-channel.js.map +1 -0
  249. package/out/shared/src/browser-env.js +25 -0
  250. package/out/shared/src/browser-env.js.map +1 -0
  251. package/out/shared/src/btree-set.js +464 -507
  252. package/out/shared/src/btree-set.js.map +1 -1
  253. package/out/shared/src/cache.js +34 -38
  254. package/out/shared/src/cache.js.map +1 -1
  255. package/out/shared/src/centroid.js +24 -24
  256. package/out/shared/src/centroid.js.map +1 -1
  257. package/out/shared/src/config.js +6 -3
  258. package/out/shared/src/config.js.map +1 -1
  259. package/out/shared/src/custom-key-map.js +58 -64
  260. package/out/shared/src/custom-key-map.js.map +1 -1
  261. package/out/shared/src/custom-key-set.js +51 -57
  262. package/out/shared/src/custom-key-set.js.map +1 -1
  263. package/out/shared/src/deep-clone.js +46 -0
  264. package/out/shared/src/deep-clone.js.map +1 -0
  265. package/out/shared/src/deep-merge.d.ts +20 -3
  266. package/out/shared/src/deep-merge.d.ts.map +1 -1
  267. package/out/shared/src/deep-merge.js +27 -0
  268. package/out/shared/src/deep-merge.js.map +1 -0
  269. package/out/shared/src/document-visible.js +74 -0
  270. package/out/shared/src/document-visible.js.map +1 -0
  271. package/out/shared/src/dotenv.js +5 -7
  272. package/out/shared/src/dotenv.js.map +1 -1
  273. package/out/shared/src/error.js +57 -56
  274. package/out/shared/src/error.js.map +1 -1
  275. package/out/shared/src/has-own.js +5 -3
  276. package/out/shared/src/has-own.js.map +1 -1
  277. package/out/shared/src/hash.js +15 -14
  278. package/out/shared/src/hash.js.map +1 -1
  279. package/out/shared/src/iterables.js +71 -73
  280. package/out/shared/src/iterables.js.map +1 -1
  281. package/out/shared/src/json-schema.js +30 -33
  282. package/out/shared/src/json-schema.js.map +1 -1
  283. package/out/shared/src/json.js +128 -143
  284. package/out/shared/src/json.js.map +1 -1
  285. package/out/shared/src/logging-test-utils.js +12 -19
  286. package/out/shared/src/logging-test-utils.js.map +1 -1
  287. package/out/shared/src/logging.d.ts.map +1 -1
  288. package/out/shared/src/logging.js +99 -83
  289. package/out/shared/src/logging.js.map +1 -1
  290. package/out/shared/src/must.js +9 -7
  291. package/out/shared/src/must.js.map +1 -1
  292. package/out/shared/src/navigator.js +5 -0
  293. package/out/shared/src/navigator.js.map +1 -0
  294. package/out/shared/src/object-traversal.d.ts +19 -0
  295. package/out/shared/src/object-traversal.d.ts.map +1 -0
  296. package/out/shared/src/object-traversal.js +27 -0
  297. package/out/shared/src/object-traversal.js.map +1 -0
  298. package/out/shared/src/objects.js +21 -22
  299. package/out/shared/src/objects.js.map +1 -1
  300. package/out/shared/src/options.js +289 -322
  301. package/out/shared/src/options.js.map +1 -1
  302. package/out/shared/src/parse-big-int.js +12 -10
  303. package/out/shared/src/parse-big-int.js.map +1 -1
  304. package/out/shared/src/promise-race.js +20 -0
  305. package/out/shared/src/promise-race.js.map +1 -0
  306. package/out/shared/src/queue.js +119 -122
  307. package/out/shared/src/queue.js.map +1 -1
  308. package/out/shared/src/rand.js +8 -10
  309. package/out/shared/src/rand.js.map +1 -1
  310. package/out/shared/src/random-uint64.js +9 -0
  311. package/out/shared/src/random-uint64.js.map +1 -0
  312. package/out/shared/src/random-values.js +13 -0
  313. package/out/shared/src/random-values.js.map +1 -0
  314. package/out/shared/src/resolved-promises.js +12 -9
  315. package/out/shared/src/resolved-promises.js.map +1 -1
  316. package/out/shared/src/sentinels.js +13 -6
  317. package/out/shared/src/sentinels.js.map +1 -1
  318. package/out/shared/src/set-utils.js +63 -62
  319. package/out/shared/src/set-utils.js.map +1 -1
  320. package/out/shared/src/size-of-value.js +58 -0
  321. package/out/shared/src/size-of-value.js.map +1 -0
  322. package/out/shared/src/sleep.js +45 -53
  323. package/out/shared/src/sleep.js.map +1 -1
  324. package/out/shared/src/string-compare.js +12 -9
  325. package/out/shared/src/string-compare.js.map +1 -1
  326. package/out/shared/src/subscribable.js +34 -0
  327. package/out/shared/src/subscribable.js.map +1 -0
  328. package/out/shared/src/tdigest-schema.js +7 -7
  329. package/out/shared/src/tdigest-schema.js.map +1 -1
  330. package/out/shared/src/tdigest.js +247 -271
  331. package/out/shared/src/tdigest.js.map +1 -1
  332. package/out/shared/src/valita.js +195 -207
  333. package/out/shared/src/valita.js.map +1 -1
  334. package/out/z2s/src/compiler.d.ts.map +1 -1
  335. package/out/z2s/src/compiler.js +437 -310
  336. package/out/z2s/src/compiler.js.map +1 -1
  337. package/out/z2s/src/sql.js +186 -218
  338. package/out/z2s/src/sql.js.map +1 -1
  339. package/out/zero/package.json.js +9 -0
  340. package/out/zero/package.json.js.map +1 -0
  341. package/out/zero/src/adapters/drizzle.js +5 -2
  342. package/out/zero/src/adapters/drizzle.js.map +1 -1
  343. package/out/zero/src/adapters/pg.js +7 -2
  344. package/out/zero/src/adapters/pg.js.map +1 -1
  345. package/out/zero/src/adapters/postgresjs.js +7 -2
  346. package/out/zero/src/adapters/postgresjs.js.map +1 -1
  347. package/out/zero/src/analyze-query.js +1 -1
  348. package/out/zero/src/analyze-query.js.map +1 -1
  349. package/out/zero/src/ast-to-zql.js +1 -1
  350. package/out/zero/src/ast-to-zql.js.map +1 -1
  351. package/out/zero/src/build-schema.js +3 -5
  352. package/out/zero/src/build-schema.js.map +1 -1
  353. package/out/zero/src/change-protocol/v0.js +5 -3
  354. package/out/zero/src/change-protocol/v0.js.map +1 -1
  355. package/out/zero/src/cli.js +2 -2
  356. package/out/zero/src/cli.js.map +1 -1
  357. package/out/zero/src/deploy-permissions.js +1 -1
  358. package/out/zero/src/deploy-permissions.js.map +1 -1
  359. package/out/zero/src/expo-sqlite.js +5 -0
  360. package/out/zero/src/expo-sqlite.js.map +1 -0
  361. package/out/zero/src/op-sqlite.js +5 -0
  362. package/out/zero/src/op-sqlite.js.map +1 -0
  363. package/out/zero/src/pg.js +29 -3
  364. package/out/zero/src/pg.js.map +1 -1
  365. package/out/zero/src/react-native.js +13 -0
  366. package/out/zero/src/react-native.js.map +1 -0
  367. package/out/zero/src/react.js +17 -0
  368. package/out/zero/src/react.js.map +1 -0
  369. package/out/zero/src/server.js +25 -3
  370. package/out/zero/src/server.js.map +1 -1
  371. package/out/zero/src/solid.js +15 -0
  372. package/out/zero/src/solid.js.map +1 -0
  373. package/out/zero/src/sqlite.js +7 -0
  374. package/out/zero/src/sqlite.js.map +1 -0
  375. package/out/zero/src/transform-query.js +1 -1
  376. package/out/zero/src/transform-query.js.map +1 -1
  377. package/out/zero/src/zero-cache-dev.js +135 -126
  378. package/out/zero/src/zero-cache-dev.js.map +1 -1
  379. package/out/zero/src/zero-out.js +6 -6
  380. package/out/zero/src/zero-out.js.map +1 -1
  381. package/out/zero/src/zero.js +71 -0
  382. package/out/zero/src/zero.js.map +1 -0
  383. package/out/zero/src/zqlite.js +11 -3
  384. package/out/zero/src/zqlite.js.map +1 -1
  385. package/out/zero-cache/src/auth/jwt.d.ts +3 -0
  386. package/out/zero-cache/src/auth/jwt.d.ts.map +1 -1
  387. package/out/zero-cache/src/auth/jwt.js +33 -38
  388. package/out/zero-cache/src/auth/jwt.js.map +1 -1
  389. package/out/zero-cache/src/auth/load-permissions.js +61 -45
  390. package/out/zero-cache/src/auth/load-permissions.js.map +1 -1
  391. package/out/zero-cache/src/auth/read-authorizer.js +79 -91
  392. package/out/zero-cache/src/auth/read-authorizer.js.map +1 -1
  393. package/out/zero-cache/src/auth/write-authorizer.d.ts +4 -3
  394. package/out/zero-cache/src/auth/write-authorizer.d.ts.map +1 -1
  395. package/out/zero-cache/src/auth/write-authorizer.js +385 -350
  396. package/out/zero-cache/src/auth/write-authorizer.js.map +1 -1
  397. package/out/zero-cache/src/config/network.js +42 -45
  398. package/out/zero-cache/src/config/network.js.map +1 -1
  399. package/out/zero-cache/src/config/normalize.js +86 -83
  400. package/out/zero-cache/src/config/normalize.js.map +1 -1
  401. package/out/zero-cache/src/config/zero-config.d.ts +27 -0
  402. package/out/zero-cache/src/config/zero-config.d.ts.map +1 -1
  403. package/out/zero-cache/src/config/zero-config.js +704 -682
  404. package/out/zero-cache/src/config/zero-config.js.map +1 -1
  405. package/out/zero-cache/src/custom/fetch.d.ts +5 -5
  406. package/out/zero-cache/src/custom/fetch.d.ts.map +1 -1
  407. package/out/zero-cache/src/custom/fetch.js +170 -163
  408. package/out/zero-cache/src/custom/fetch.js.map +1 -1
  409. package/out/zero-cache/src/custom-queries/transform-query.d.ts +7 -0
  410. package/out/zero-cache/src/custom-queries/transform-query.d.ts.map +1 -1
  411. package/out/zero-cache/src/custom-queries/transform-query.js +99 -106
  412. package/out/zero-cache/src/custom-queries/transform-query.js.map +1 -1
  413. package/out/zero-cache/src/db/create.js +32 -36
  414. package/out/zero-cache/src/db/create.js.map +1 -1
  415. package/out/zero-cache/src/db/delete-lite-db.js +9 -6
  416. package/out/zero-cache/src/db/delete-lite-db.js.map +1 -1
  417. package/out/zero-cache/src/db/lite-tables.d.ts.map +1 -1
  418. package/out/zero-cache/src/db/lite-tables.js +150 -174
  419. package/out/zero-cache/src/db/lite-tables.js.map +1 -1
  420. package/out/zero-cache/src/db/migration-lite.js +170 -165
  421. package/out/zero-cache/src/db/migration-lite.js.map +1 -1
  422. package/out/zero-cache/src/db/migration.js +157 -137
  423. package/out/zero-cache/src/db/migration.js.map +1 -1
  424. package/out/zero-cache/src/db/mode-enum.js +9 -4
  425. package/out/zero-cache/src/db/mode-enum.js.map +1 -1
  426. package/out/zero-cache/src/db/pg-copy.js +51 -90
  427. package/out/zero-cache/src/db/pg-copy.js.map +1 -1
  428. package/out/zero-cache/src/db/pg-to-lite.js +114 -109
  429. package/out/zero-cache/src/db/pg-to-lite.js.map +1 -1
  430. package/out/zero-cache/src/db/pg-type-parser.js +27 -39
  431. package/out/zero-cache/src/db/pg-type-parser.js.map +1 -1
  432. package/out/zero-cache/src/db/postgres-replica-identity-enum.js +11 -6
  433. package/out/zero-cache/src/db/postgres-replica-identity-enum.js.map +1 -1
  434. package/out/zero-cache/src/db/postgres-type-class-enum.js +17 -9
  435. package/out/zero-cache/src/db/postgres-type-class-enum.js.map +1 -1
  436. package/out/zero-cache/src/db/specs.d.ts +1 -7
  437. package/out/zero-cache/src/db/specs.d.ts.map +1 -1
  438. package/out/zero-cache/src/db/specs.js +66 -40
  439. package/out/zero-cache/src/db/specs.js.map +1 -1
  440. package/out/zero-cache/src/db/statements.d.ts +1 -1
  441. package/out/zero-cache/src/db/statements.d.ts.map +1 -1
  442. package/out/zero-cache/src/db/statements.js +59 -52
  443. package/out/zero-cache/src/db/statements.js.map +1 -1
  444. package/out/zero-cache/src/db/transaction-pool.d.ts +1 -1
  445. package/out/zero-cache/src/db/transaction-pool.d.ts.map +1 -1
  446. package/out/zero-cache/src/db/transaction-pool.js +375 -501
  447. package/out/zero-cache/src/db/transaction-pool.js.map +1 -1
  448. package/out/zero-cache/src/db/warmup.js +25 -12
  449. package/out/zero-cache/src/db/warmup.js.map +1 -1
  450. package/out/zero-cache/src/observability/events.js +71 -82
  451. package/out/zero-cache/src/observability/events.js.map +1 -1
  452. package/out/zero-cache/src/observability/metrics.js +54 -32
  453. package/out/zero-cache/src/observability/metrics.js.map +1 -1
  454. package/out/zero-cache/src/scripts/decommission.js +47 -43
  455. package/out/zero-cache/src/scripts/decommission.js.map +1 -1
  456. package/out/zero-cache/src/scripts/deploy-permissions.js +128 -118
  457. package/out/zero-cache/src/scripts/deploy-permissions.js.map +1 -1
  458. package/out/zero-cache/src/scripts/permissions.js +107 -99
  459. package/out/zero-cache/src/scripts/permissions.js.map +1 -1
  460. package/out/zero-cache/src/server/anonymous-otel-start.js +410 -366
  461. package/out/zero-cache/src/server/anonymous-otel-start.js.map +1 -1
  462. package/out/zero-cache/src/server/change-streamer.d.ts.map +1 -1
  463. package/out/zero-cache/src/server/change-streamer.js +104 -60
  464. package/out/zero-cache/src/server/change-streamer.js.map +1 -1
  465. package/out/zero-cache/src/server/inspector-delegate.js +112 -109
  466. package/out/zero-cache/src/server/inspector-delegate.js.map +1 -1
  467. package/out/zero-cache/src/server/logging.d.ts +1 -1
  468. package/out/zero-cache/src/server/logging.d.ts.map +1 -1
  469. package/out/zero-cache/src/server/logging.js +26 -19
  470. package/out/zero-cache/src/server/logging.js.map +1 -1
  471. package/out/zero-cache/src/server/main.d.ts.map +1 -1
  472. package/out/zero-cache/src/server/main.js +137 -120
  473. package/out/zero-cache/src/server/main.js.map +1 -1
  474. package/out/zero-cache/src/server/mutator.js +19 -0
  475. package/out/zero-cache/src/server/mutator.js.map +1 -0
  476. package/out/zero-cache/src/server/otel-diag-logger.d.ts +1 -1
  477. package/out/zero-cache/src/server/otel-diag-logger.d.ts.map +1 -1
  478. package/out/zero-cache/src/server/otel-diag-logger.js +67 -70
  479. package/out/zero-cache/src/server/otel-diag-logger.js.map +1 -1
  480. package/out/zero-cache/src/server/otel-log-sink.js +40 -41
  481. package/out/zero-cache/src/server/otel-log-sink.js.map +1 -1
  482. package/out/zero-cache/src/server/otel-start.d.ts +1 -1
  483. package/out/zero-cache/src/server/otel-start.d.ts.map +1 -1
  484. package/out/zero-cache/src/server/otel-start.js +57 -68
  485. package/out/zero-cache/src/server/otel-start.js.map +1 -1
  486. package/out/zero-cache/src/server/reaper.js +34 -26
  487. package/out/zero-cache/src/server/reaper.js.map +1 -1
  488. package/out/zero-cache/src/server/replicator.js +53 -31
  489. package/out/zero-cache/src/server/replicator.js.map +1 -1
  490. package/out/zero-cache/src/server/runner/main.js +6 -4
  491. package/out/zero-cache/src/server/runner/main.js.map +1 -1
  492. package/out/zero-cache/src/server/runner/run-worker.d.ts.map +1 -1
  493. package/out/zero-cache/src/server/runner/run-worker.js +46 -50
  494. package/out/zero-cache/src/server/runner/run-worker.js.map +1 -1
  495. package/out/zero-cache/src/server/runner/runtime.js +33 -32
  496. package/out/zero-cache/src/server/runner/runtime.js.map +1 -1
  497. package/out/zero-cache/src/server/runner/zero-dispatcher.d.ts.map +1 -1
  498. package/out/zero-cache/src/server/runner/zero-dispatcher.js +28 -22
  499. package/out/zero-cache/src/server/runner/zero-dispatcher.js.map +1 -1
  500. package/out/zero-cache/src/server/syncer.d.ts.map +1 -1
  501. package/out/zero-cache/src/server/syncer.js +124 -63
  502. package/out/zero-cache/src/server/syncer.js.map +1 -1
  503. package/out/zero-cache/src/server/worker-dispatcher.d.ts +1 -1
  504. package/out/zero-cache/src/server/worker-dispatcher.d.ts.map +1 -1
  505. package/out/zero-cache/src/server/worker-dispatcher.js +112 -106
  506. package/out/zero-cache/src/server/worker-dispatcher.js.map +1 -1
  507. package/out/zero-cache/src/server/worker-urls.d.ts +7 -0
  508. package/out/zero-cache/src/server/worker-urls.d.ts.map +1 -0
  509. package/out/zero-cache/src/server/worker-urls.js +21 -0
  510. package/out/zero-cache/src/server/worker-urls.js.map +1 -0
  511. package/out/zero-cache/src/services/analyze.d.ts +3 -4
  512. package/out/zero-cache/src/services/analyze.d.ts.map +1 -1
  513. package/out/zero-cache/src/services/analyze.js +104 -121
  514. package/out/zero-cache/src/services/analyze.js.map +1 -1
  515. package/out/zero-cache/src/services/change-source/column-metadata.js +152 -155
  516. package/out/zero-cache/src/services/change-source/column-metadata.js.map +1 -1
  517. package/out/zero-cache/src/services/change-source/custom/change-source.d.ts +1 -1
  518. package/out/zero-cache/src/services/change-source/custom/change-source.d.ts.map +1 -1
  519. package/out/zero-cache/src/services/change-source/custom/change-source.js +197 -171
  520. package/out/zero-cache/src/services/change-source/custom/change-source.js.map +1 -1
  521. package/out/zero-cache/src/services/change-source/custom/sync-schema.js +11 -3
  522. package/out/zero-cache/src/services/change-source/custom/sync-schema.js.map +1 -1
  523. package/out/zero-cache/src/services/change-source/pg/change-source.d.ts +1 -1
  524. package/out/zero-cache/src/services/change-source/pg/change-source.d.ts.map +1 -1
  525. package/out/zero-cache/src/services/change-source/pg/change-source.js +601 -622
  526. package/out/zero-cache/src/services/change-source/pg/change-source.js.map +1 -1
  527. package/out/zero-cache/src/services/change-source/pg/decommission.js +24 -23
  528. package/out/zero-cache/src/services/change-source/pg/decommission.js.map +1 -1
  529. package/out/zero-cache/src/services/change-source/pg/initial-sync.d.ts +1 -1
  530. package/out/zero-cache/src/services/change-source/pg/initial-sync.d.ts.map +1 -1
  531. package/out/zero-cache/src/services/change-source/pg/initial-sync.js +327 -284
  532. package/out/zero-cache/src/services/change-source/pg/initial-sync.js.map +1 -1
  533. package/out/zero-cache/src/services/change-source/pg/logical-replication/binary-reader.js +61 -69
  534. package/out/zero-cache/src/services/change-source/pg/logical-replication/binary-reader.js.map +1 -1
  535. package/out/zero-cache/src/services/change-source/pg/logical-replication/pgoutput-parser.js +247 -257
  536. package/out/zero-cache/src/services/change-source/pg/logical-replication/pgoutput-parser.js.map +1 -1
  537. package/out/zero-cache/src/services/change-source/pg/logical-replication/stream.js +127 -119
  538. package/out/zero-cache/src/services/change-source/pg/logical-replication/stream.js.map +1 -1
  539. package/out/zero-cache/src/services/change-source/pg/lsn.js +20 -19
  540. package/out/zero-cache/src/services/change-source/pg/lsn.js.map +1 -1
  541. package/out/zero-cache/src/services/change-source/pg/schema/ddl.d.ts +5 -5
  542. package/out/zero-cache/src/services/change-source/pg/schema/ddl.js +96 -119
  543. package/out/zero-cache/src/services/change-source/pg/schema/ddl.js.map +1 -1
  544. package/out/zero-cache/src/services/change-source/pg/schema/init.js +138 -117
  545. package/out/zero-cache/src/services/change-source/pg/schema/init.js.map +1 -1
  546. package/out/zero-cache/src/services/change-source/pg/schema/published.d.ts +2 -2
  547. package/out/zero-cache/src/services/change-source/pg/schema/published.js +67 -74
  548. package/out/zero-cache/src/services/change-source/pg/schema/published.js.map +1 -1
  549. package/out/zero-cache/src/services/change-source/pg/schema/shard.d.ts +1 -1
  550. package/out/zero-cache/src/services/change-source/pg/schema/shard.js +199 -188
  551. package/out/zero-cache/src/services/change-source/pg/schema/shard.js.map +1 -1
  552. package/out/zero-cache/src/services/change-source/pg/schema/validation.js +53 -38
  553. package/out/zero-cache/src/services/change-source/pg/schema/validation.js.map +1 -1
  554. package/out/zero-cache/src/services/change-source/pg/sync-schema.js +11 -3
  555. package/out/zero-cache/src/services/change-source/pg/sync-schema.js.map +1 -1
  556. package/out/zero-cache/src/services/change-source/protocol/current/control.js +9 -19
  557. package/out/zero-cache/src/services/change-source/protocol/current/control.js.map +1 -1
  558. package/out/zero-cache/src/services/change-source/protocol/current/data.js +143 -116
  559. package/out/zero-cache/src/services/change-source/protocol/current/data.js.map +1 -1
  560. package/out/zero-cache/src/services/change-source/protocol/current/downstream.js +29 -19
  561. package/out/zero-cache/src/services/change-source/protocol/current/downstream.js.map +1 -1
  562. package/out/zero-cache/src/services/change-source/protocol/current/path.js +5 -20
  563. package/out/zero-cache/src/services/change-source/protocol/current/path.js.map +1 -1
  564. package/out/zero-cache/src/services/change-source/protocol/current/status.js +12 -13
  565. package/out/zero-cache/src/services/change-source/protocol/current/status.js.map +1 -1
  566. package/out/zero-cache/src/services/change-source/protocol/current/upstream.d.ts +1 -1
  567. package/out/zero-cache/src/services/change-source/protocol/current/upstream.d.ts.map +1 -1
  568. package/out/zero-cache/src/services/change-source/protocol/current/upstream.js +5 -4
  569. package/out/zero-cache/src/services/change-source/protocol/current/upstream.js.map +1 -1
  570. package/out/zero-cache/src/services/change-source/protocol/current.js +35 -7
  571. package/out/zero-cache/src/services/change-source/protocol/current.js.map +1 -1
  572. package/out/zero-cache/src/services/change-source/replica-schema.js +64 -47
  573. package/out/zero-cache/src/services/change-source/replica-schema.js.map +1 -1
  574. package/out/zero-cache/src/services/change-streamer/backup-monitor.js +139 -161
  575. package/out/zero-cache/src/services/change-streamer/backup-monitor.js.map +1 -1
  576. package/out/zero-cache/src/services/change-streamer/change-streamer-http.d.ts +13 -4
  577. package/out/zero-cache/src/services/change-streamer/change-streamer-http.d.ts.map +1 -1
  578. package/out/zero-cache/src/services/change-streamer/change-streamer-http.js +213 -157
  579. package/out/zero-cache/src/services/change-streamer/change-streamer-http.js.map +1 -1
  580. package/out/zero-cache/src/services/change-streamer/change-streamer-service.d.ts +1 -1
  581. package/out/zero-cache/src/services/change-streamer/change-streamer-service.d.ts.map +1 -1
  582. package/out/zero-cache/src/services/change-streamer/change-streamer-service.js +234 -355
  583. package/out/zero-cache/src/services/change-streamer/change-streamer-service.js.map +1 -1
  584. package/out/zero-cache/src/services/change-streamer/change-streamer.js +24 -26
  585. package/out/zero-cache/src/services/change-streamer/change-streamer.js.map +1 -1
  586. package/out/zero-cache/src/services/change-streamer/error-type-enum.js +9 -4
  587. package/out/zero-cache/src/services/change-streamer/error-type-enum.js.map +1 -1
  588. package/out/zero-cache/src/services/change-streamer/forwarder.d.ts +1 -1
  589. package/out/zero-cache/src/services/change-streamer/forwarder.d.ts.map +1 -1
  590. package/out/zero-cache/src/services/change-streamer/forwarder.js +53 -57
  591. package/out/zero-cache/src/services/change-streamer/forwarder.js.map +1 -1
  592. package/out/zero-cache/src/services/change-streamer/replica-monitor.js +40 -44
  593. package/out/zero-cache/src/services/change-streamer/replica-monitor.js.map +1 -1
  594. package/out/zero-cache/src/services/change-streamer/schema/init.js +82 -68
  595. package/out/zero-cache/src/services/change-streamer/schema/init.js.map +1 -1
  596. package/out/zero-cache/src/services/change-streamer/schema/tables.d.ts +2 -2
  597. package/out/zero-cache/src/services/change-streamer/schema/tables.d.ts.map +1 -1
  598. package/out/zero-cache/src/services/change-streamer/schema/tables.js +93 -78
  599. package/out/zero-cache/src/services/change-streamer/schema/tables.js.map +1 -1
  600. package/out/zero-cache/src/services/change-streamer/snapshot.js +28 -37
  601. package/out/zero-cache/src/services/change-streamer/snapshot.js.map +1 -1
  602. package/out/zero-cache/src/services/change-streamer/storer.d.ts +2 -2
  603. package/out/zero-cache/src/services/change-streamer/storer.d.ts.map +1 -1
  604. package/out/zero-cache/src/services/change-streamer/storer.js +309 -372
  605. package/out/zero-cache/src/services/change-streamer/storer.js.map +1 -1
  606. package/out/zero-cache/src/services/change-streamer/subscriber.d.ts +2 -1
  607. package/out/zero-cache/src/services/change-streamer/subscriber.d.ts.map +1 -1
  608. package/out/zero-cache/src/services/change-streamer/subscriber.js +83 -90
  609. package/out/zero-cache/src/services/change-streamer/subscriber.js.map +1 -1
  610. package/out/zero-cache/src/services/heapz.js +21 -25
  611. package/out/zero-cache/src/services/heapz.js.map +1 -1
  612. package/out/zero-cache/src/services/http-service.d.ts +6 -5
  613. package/out/zero-cache/src/services/http-service.d.ts.map +1 -1
  614. package/out/zero-cache/src/services/http-service.js +61 -59
  615. package/out/zero-cache/src/services/http-service.js.map +1 -1
  616. package/out/zero-cache/src/services/life-cycle.d.ts +1 -1
  617. package/out/zero-cache/src/services/life-cycle.d.ts.map +1 -1
  618. package/out/zero-cache/src/services/life-cycle.js +216 -255
  619. package/out/zero-cache/src/services/life-cycle.js.map +1 -1
  620. package/out/zero-cache/src/services/limiter/sliding-window-limiter.js +76 -130
  621. package/out/zero-cache/src/services/limiter/sliding-window-limiter.js.map +1 -1
  622. package/out/zero-cache/src/services/litestream/commands.d.ts +1 -1
  623. package/out/zero-cache/src/services/litestream/commands.d.ts.map +1 -1
  624. package/out/zero-cache/src/services/litestream/commands.js +193 -178
  625. package/out/zero-cache/src/services/litestream/commands.js.map +1 -1
  626. package/out/zero-cache/src/services/mutagen/error.js +11 -6
  627. package/out/zero-cache/src/services/mutagen/error.js.map +1 -1
  628. package/out/zero-cache/src/services/mutagen/mutagen.d.ts +2 -1
  629. package/out/zero-cache/src/services/mutagen/mutagen.d.ts.map +1 -1
  630. package/out/zero-cache/src/services/mutagen/mutagen.js +271 -267
  631. package/out/zero-cache/src/services/mutagen/mutagen.js.map +1 -1
  632. package/out/zero-cache/src/services/mutagen/pusher.d.ts +198 -0
  633. package/out/zero-cache/src/services/mutagen/pusher.d.ts.map +1 -1
  634. package/out/zero-cache/src/services/mutagen/pusher.js +351 -344
  635. package/out/zero-cache/src/services/mutagen/pusher.js.map +1 -1
  636. package/out/zero-cache/src/services/replicator/change-processor.js +483 -530
  637. package/out/zero-cache/src/services/replicator/change-processor.js.map +1 -1
  638. package/out/zero-cache/src/services/replicator/incremental-sync.d.ts +1 -1
  639. package/out/zero-cache/src/services/replicator/incremental-sync.d.ts.map +1 -1
  640. package/out/zero-cache/src/services/replicator/incremental-sync.js +97 -97
  641. package/out/zero-cache/src/services/replicator/incremental-sync.js.map +1 -1
  642. package/out/zero-cache/src/services/replicator/notifier.js +28 -52
  643. package/out/zero-cache/src/services/replicator/notifier.js.map +1 -1
  644. package/out/zero-cache/src/services/replicator/replication-status.js +100 -83
  645. package/out/zero-cache/src/services/replicator/replication-status.js.map +1 -1
  646. package/out/zero-cache/src/services/replicator/replicator.d.ts +1 -1
  647. package/out/zero-cache/src/services/replicator/replicator.d.ts.map +1 -1
  648. package/out/zero-cache/src/services/replicator/replicator.js +33 -26
  649. package/out/zero-cache/src/services/replicator/replicator.js.map +1 -1
  650. package/out/zero-cache/src/services/replicator/schema/change-log.d.ts +1 -1
  651. package/out/zero-cache/src/services/replicator/schema/change-log.d.ts.map +1 -1
  652. package/out/zero-cache/src/services/replicator/schema/change-log.js +74 -86
  653. package/out/zero-cache/src/services/replicator/schema/change-log.js.map +1 -1
  654. package/out/zero-cache/src/services/replicator/schema/constants.js +5 -7
  655. package/out/zero-cache/src/services/replicator/schema/constants.js.map +1 -1
  656. package/out/zero-cache/src/services/replicator/schema/replication-state.d.ts +2 -2
  657. package/out/zero-cache/src/services/replicator/schema/replication-state.d.ts.map +1 -1
  658. package/out/zero-cache/src/services/replicator/schema/replication-state.js +70 -74
  659. package/out/zero-cache/src/services/replicator/schema/replication-state.js.map +1 -1
  660. package/out/zero-cache/src/services/run-ast.d.ts +9 -3
  661. package/out/zero-cache/src/services/run-ast.d.ts.map +1 -1
  662. package/out/zero-cache/src/services/run-ast.js +87 -79
  663. package/out/zero-cache/src/services/run-ast.js.map +1 -1
  664. package/out/zero-cache/src/services/runner.d.ts +1 -1
  665. package/out/zero-cache/src/services/runner.d.ts.map +1 -1
  666. package/out/zero-cache/src/services/runner.js +40 -40
  667. package/out/zero-cache/src/services/runner.js.map +1 -1
  668. package/out/zero-cache/src/services/running-state.d.ts +1 -1
  669. package/out/zero-cache/src/services/running-state.d.ts.map +1 -1
  670. package/out/zero-cache/src/services/running-state.js +122 -119
  671. package/out/zero-cache/src/services/running-state.js.map +1 -1
  672. package/out/zero-cache/src/services/statz.js +184 -162
  673. package/out/zero-cache/src/services/statz.js.map +1 -1
  674. package/out/zero-cache/src/services/view-syncer/active-users-gauge.js +40 -39
  675. package/out/zero-cache/src/services/view-syncer/active-users-gauge.js.map +1 -1
  676. package/out/zero-cache/src/services/view-syncer/client-handler.js +307 -298
  677. package/out/zero-cache/src/services/view-syncer/client-handler.js.map +1 -1
  678. package/out/zero-cache/src/services/view-syncer/client-schema.d.ts.map +1 -1
  679. package/out/zero-cache/src/services/view-syncer/client-schema.js +80 -82
  680. package/out/zero-cache/src/services/view-syncer/client-schema.js.map +1 -1
  681. package/out/zero-cache/src/services/view-syncer/cvr-purger.js +83 -92
  682. package/out/zero-cache/src/services/view-syncer/cvr-purger.js.map +1 -1
  683. package/out/zero-cache/src/services/view-syncer/cvr-store.d.ts +2 -4
  684. package/out/zero-cache/src/services/view-syncer/cvr-store.d.ts.map +1 -1
  685. package/out/zero-cache/src/services/view-syncer/cvr-store.js +628 -616
  686. package/out/zero-cache/src/services/view-syncer/cvr-store.js.map +1 -1
  687. package/out/zero-cache/src/services/view-syncer/cvr.d.ts +1 -1
  688. package/out/zero-cache/src/services/view-syncer/cvr.d.ts.map +1 -1
  689. package/out/zero-cache/src/services/view-syncer/cvr.js +631 -694
  690. package/out/zero-cache/src/services/view-syncer/cvr.js.map +1 -1
  691. package/out/zero-cache/src/services/view-syncer/drain-coordinator.js +38 -60
  692. package/out/zero-cache/src/services/view-syncer/drain-coordinator.js.map +1 -1
  693. package/out/zero-cache/src/services/view-syncer/inspect-handler.d.ts +2 -1
  694. package/out/zero-cache/src/services/view-syncer/inspect-handler.d.ts.map +1 -1
  695. package/out/zero-cache/src/services/view-syncer/inspect-handler.js +169 -158
  696. package/out/zero-cache/src/services/view-syncer/inspect-handler.js.map +1 -1
  697. package/out/zero-cache/src/services/view-syncer/pipeline-driver.d.ts +14 -13
  698. package/out/zero-cache/src/services/view-syncer/pipeline-driver.d.ts.map +1 -1
  699. package/out/zero-cache/src/services/view-syncer/pipeline-driver.js +534 -480
  700. package/out/zero-cache/src/services/view-syncer/pipeline-driver.js.map +1 -1
  701. package/out/zero-cache/src/services/view-syncer/row-record-cache.js +229 -280
  702. package/out/zero-cache/src/services/view-syncer/row-record-cache.js.map +1 -1
  703. package/out/zero-cache/src/services/view-syncer/schema/cvr.js +53 -120
  704. package/out/zero-cache/src/services/view-syncer/schema/cvr.js.map +1 -1
  705. package/out/zero-cache/src/services/view-syncer/schema/init.js +171 -150
  706. package/out/zero-cache/src/services/view-syncer/schema/init.js.map +1 -1
  707. package/out/zero-cache/src/services/view-syncer/schema/types.d.ts +4 -4
  708. package/out/zero-cache/src/services/view-syncer/schema/types.js +265 -257
  709. package/out/zero-cache/src/services/view-syncer/schema/types.js.map +1 -1
  710. package/out/zero-cache/src/services/view-syncer/snapshotter.d.ts +3 -3
  711. package/out/zero-cache/src/services/view-syncer/snapshotter.d.ts.map +1 -1
  712. package/out/zero-cache/src/services/view-syncer/snapshotter.js +295 -338
  713. package/out/zero-cache/src/services/view-syncer/snapshotter.js.map +1 -1
  714. package/out/zero-cache/src/services/view-syncer/ttl-clock.js +13 -7
  715. package/out/zero-cache/src/services/view-syncer/ttl-clock.js.map +1 -1
  716. package/out/zero-cache/src/services/view-syncer/view-syncer.d.ts +3 -3
  717. package/out/zero-cache/src/services/view-syncer/view-syncer.d.ts.map +1 -1
  718. package/out/zero-cache/src/services/view-syncer/view-syncer.js +1508 -1307
  719. package/out/zero-cache/src/services/view-syncer/view-syncer.js.map +1 -1
  720. package/out/zero-cache/src/types/error-with-level.d.ts.map +1 -1
  721. package/out/zero-cache/src/types/error-with-level.js +29 -25
  722. package/out/zero-cache/src/types/error-with-level.js.map +1 -1
  723. package/out/zero-cache/src/types/http.js +27 -14
  724. package/out/zero-cache/src/types/http.js.map +1 -1
  725. package/out/zero-cache/src/types/lexi-version.js +46 -31
  726. package/out/zero-cache/src/types/lexi-version.js.map +1 -1
  727. package/out/zero-cache/src/types/lite.js +118 -125
  728. package/out/zero-cache/src/types/lite.js.map +1 -1
  729. package/out/zero-cache/src/types/names.js +6 -3
  730. package/out/zero-cache/src/types/names.js.map +1 -1
  731. package/out/zero-cache/src/types/pg-data-type.js +74 -68
  732. package/out/zero-cache/src/types/pg-data-type.js.map +1 -1
  733. package/out/zero-cache/src/types/pg-types.js +17 -72
  734. package/out/zero-cache/src/types/pg-types.js.map +1 -1
  735. package/out/zero-cache/src/types/pg.d.ts +1 -1
  736. package/out/zero-cache/src/types/pg.d.ts.map +1 -1
  737. package/out/zero-cache/src/types/pg.js +213 -233
  738. package/out/zero-cache/src/types/pg.js.map +1 -1
  739. package/out/zero-cache/src/types/processes.d.ts +2 -2
  740. package/out/zero-cache/src/types/processes.d.ts.map +1 -1
  741. package/out/zero-cache/src/types/processes.js +95 -143
  742. package/out/zero-cache/src/types/processes.js.map +1 -1
  743. package/out/zero-cache/src/types/profiler.js +29 -30
  744. package/out/zero-cache/src/types/profiler.js.map +1 -1
  745. package/out/zero-cache/src/types/row-key.js +30 -68
  746. package/out/zero-cache/src/types/row-key.js.map +1 -1
  747. package/out/zero-cache/src/types/schema-versions.js +25 -19
  748. package/out/zero-cache/src/types/schema-versions.js.map +1 -1
  749. package/out/zero-cache/src/types/shards.js +50 -36
  750. package/out/zero-cache/src/types/shards.js.map +1 -1
  751. package/out/zero-cache/src/types/sql.js +9 -13
  752. package/out/zero-cache/src/types/sql.js.map +1 -1
  753. package/out/zero-cache/src/types/streams.js +245 -254
  754. package/out/zero-cache/src/types/streams.js.map +1 -1
  755. package/out/zero-cache/src/types/strings.js +14 -11
  756. package/out/zero-cache/src/types/strings.js.map +1 -1
  757. package/out/zero-cache/src/types/subscription.js +200 -259
  758. package/out/zero-cache/src/types/subscription.js.map +1 -1
  759. package/out/zero-cache/src/types/url-params.js +35 -30
  760. package/out/zero-cache/src/types/url-params.js.map +1 -1
  761. package/out/zero-cache/src/types/websocket-handoff.d.ts +3 -2
  762. package/out/zero-cache/src/types/websocket-handoff.d.ts.map +1 -1
  763. package/out/zero-cache/src/types/websocket-handoff.js +68 -76
  764. package/out/zero-cache/src/types/websocket-handoff.js.map +1 -1
  765. package/out/zero-cache/src/types/ws.js +56 -59
  766. package/out/zero-cache/src/types/ws.js.map +1 -1
  767. package/out/zero-cache/src/workers/connect-params.js +44 -40
  768. package/out/zero-cache/src/workers/connect-params.js.map +1 -1
  769. package/out/zero-cache/src/workers/connection.d.ts.map +1 -1
  770. package/out/zero-cache/src/workers/connection.js +282 -243
  771. package/out/zero-cache/src/workers/connection.js.map +1 -1
  772. package/out/zero-cache/src/workers/mutator.js +24 -0
  773. package/out/zero-cache/src/workers/mutator.js.map +1 -0
  774. package/out/zero-cache/src/workers/replicator.d.ts +1 -1
  775. package/out/zero-cache/src/workers/replicator.d.ts.map +1 -1
  776. package/out/zero-cache/src/workers/replicator.js +103 -106
  777. package/out/zero-cache/src/workers/replicator.js.map +1 -1
  778. package/out/zero-cache/src/workers/syncer-ws-message-handler.js +179 -147
  779. package/out/zero-cache/src/workers/syncer-ws-message-handler.js.map +1 -1
  780. package/out/zero-cache/src/workers/syncer.d.ts +3 -3
  781. package/out/zero-cache/src/workers/syncer.d.ts.map +1 -1
  782. package/out/zero-cache/src/workers/syncer.js +192 -169
  783. package/out/zero-cache/src/workers/syncer.js.map +1 -1
  784. package/out/zero-client/src/client/active-clients-manager.js +199 -0
  785. package/out/zero-client/src/client/active-clients-manager.js.map +1 -0
  786. package/out/zero-client/src/client/bindings.d.ts +9 -8
  787. package/out/zero-client/src/client/bindings.d.ts.map +1 -1
  788. package/out/zero-client/src/client/bindings.js +33 -0
  789. package/out/zero-client/src/client/bindings.js.map +1 -0
  790. package/out/zero-client/src/client/client-error-kind-enum.js +29 -0
  791. package/out/zero-client/src/client/client-error-kind-enum.js.map +1 -0
  792. package/out/zero-client/src/client/connection-manager.d.ts +12 -31
  793. package/out/zero-client/src/client/connection-manager.d.ts.map +1 -1
  794. package/out/zero-client/src/client/connection-manager.js +310 -0
  795. package/out/zero-client/src/client/connection-manager.js.map +1 -0
  796. package/out/zero-client/src/client/connection-status-enum.js +15 -0
  797. package/out/zero-client/src/client/connection-status-enum.js.map +1 -0
  798. package/out/zero-client/src/client/connection.d.ts +45 -2
  799. package/out/zero-client/src/client/connection.d.ts.map +1 -1
  800. package/out/zero-client/src/client/connection.js +103 -0
  801. package/out/zero-client/src/client/connection.js.map +1 -0
  802. package/out/zero-client/src/client/context.d.ts +3 -6
  803. package/out/zero-client/src/client/context.d.ts.map +1 -1
  804. package/out/zero-client/src/client/context.js +104 -0
  805. package/out/zero-client/src/client/context.js.map +1 -0
  806. package/out/zero-client/src/client/crud.d.ts +7 -5
  807. package/out/zero-client/src/client/crud.d.ts.map +1 -1
  808. package/out/zero-client/src/client/crud.js +225 -0
  809. package/out/zero-client/src/client/crud.js.map +1 -0
  810. package/out/zero-client/src/client/custom.d.ts +14 -15
  811. package/out/zero-client/src/client/custom.d.ts.map +1 -1
  812. package/out/zero-client/src/client/custom.js +128 -0
  813. package/out/zero-client/src/client/custom.js.map +1 -0
  814. package/out/zero-client/src/client/delete-clients-manager.js +71 -0
  815. package/out/zero-client/src/client/delete-clients-manager.js.map +1 -0
  816. package/out/zero-client/src/client/enable-analytics.js +18 -0
  817. package/out/zero-client/src/client/enable-analytics.js.map +1 -0
  818. package/out/zero-client/src/client/error.d.ts +2 -1
  819. package/out/zero-client/src/client/error.d.ts.map +1 -1
  820. package/out/zero-client/src/client/error.js +148 -0
  821. package/out/zero-client/src/client/error.js.map +1 -0
  822. package/out/zero-client/src/client/http-string.js +11 -0
  823. package/out/zero-client/src/client/http-string.js.map +1 -0
  824. package/out/zero-client/src/client/inspector/client-group.js +27 -0
  825. package/out/zero-client/src/client/inspector/client-group.js.map +1 -0
  826. package/out/zero-client/src/client/inspector/client.js +28 -0
  827. package/out/zero-client/src/client/inspector/client.js.map +1 -0
  828. package/out/zero-client/src/client/inspector/html-dialog-prompt.js +77 -0
  829. package/out/zero-client/src/client/inspector/html-dialog-prompt.js.map +1 -0
  830. package/out/zero-client/src/client/inspector/inspector.d.ts +6 -2
  831. package/out/zero-client/src/client/inspector/inspector.d.ts.map +1 -1
  832. package/out/zero-client/src/client/inspector/inspector.js +54 -0
  833. package/out/zero-client/src/client/inspector/inspector.js.map +1 -0
  834. package/out/zero-client/src/client/inspector/lazy-inspector.d.ts +1 -1
  835. package/out/zero-client/src/client/inspector/lazy-inspector.d.ts.map +1 -1
  836. package/out/zero-client/src/client/inspector/lazy-inspector.js +243 -0
  837. package/out/zero-client/src/client/inspector/lazy-inspector.js.map +1 -0
  838. package/out/zero-client/src/client/inspector/query.d.ts.map +1 -1
  839. package/out/zero-client/src/client/inspector/query.js +82 -0
  840. package/out/zero-client/src/client/inspector/query.js.map +1 -0
  841. package/out/zero-client/src/client/ivm-branch.d.ts +4 -4
  842. package/out/zero-client/src/client/ivm-branch.d.ts.map +1 -1
  843. package/out/zero-client/src/client/ivm-branch.js +149 -0
  844. package/out/zero-client/src/client/ivm-branch.js.map +1 -0
  845. package/out/zero-client/src/client/keys.js +45 -0
  846. package/out/zero-client/src/client/keys.js.map +1 -0
  847. package/out/zero-client/src/client/log-options.js +60 -0
  848. package/out/zero-client/src/client/log-options.js.map +1 -0
  849. package/out/zero-client/src/client/make-mutate-property.d.ts +43 -0
  850. package/out/zero-client/src/client/make-mutate-property.d.ts.map +1 -0
  851. package/out/zero-client/src/client/make-mutate-property.js +38 -0
  852. package/out/zero-client/src/client/make-mutate-property.js.map +1 -0
  853. package/out/zero-client/src/client/make-replicache-mutators.d.ts +34 -0
  854. package/out/zero-client/src/client/make-replicache-mutators.d.ts.map +1 -0
  855. package/out/zero-client/src/client/make-replicache-mutators.js +103 -0
  856. package/out/zero-client/src/client/make-replicache-mutators.js.map +1 -0
  857. package/out/zero-client/src/client/metric-name-enum.js +15 -0
  858. package/out/zero-client/src/client/metric-name-enum.js.map +1 -0
  859. package/out/zero-client/src/client/metrics.d.ts.map +1 -1
  860. package/out/zero-client/src/client/metrics.js +249 -0
  861. package/out/zero-client/src/client/metrics.js.map +1 -0
  862. package/out/zero-client/src/client/mutation-tracker.js +363 -0
  863. package/out/zero-client/src/client/mutation-tracker.js.map +1 -0
  864. package/out/zero-client/src/client/mutator-proxy.d.ts +1 -2
  865. package/out/zero-client/src/client/mutator-proxy.d.ts.map +1 -1
  866. package/out/zero-client/src/client/mutator-proxy.js +132 -0
  867. package/out/zero-client/src/client/mutator-proxy.js.map +1 -0
  868. package/out/zero-client/src/client/options.d.ts +49 -20
  869. package/out/zero-client/src/client/options.d.ts.map +1 -1
  870. package/out/zero-client/src/client/options.js +11 -0
  871. package/out/zero-client/src/client/options.js.map +1 -0
  872. package/out/zero-client/src/client/query-manager.d.ts +4 -4
  873. package/out/zero-client/src/client/query-manager.d.ts.map +1 -1
  874. package/out/zero-client/src/client/query-manager.js +377 -0
  875. package/out/zero-client/src/client/query-manager.js.map +1 -0
  876. package/out/zero-client/src/client/reload-error-handler.d.ts +1 -1
  877. package/out/zero-client/src/client/reload-error-handler.d.ts.map +1 -1
  878. package/out/zero-client/src/client/reload-error-handler.js +114 -0
  879. package/out/zero-client/src/client/reload-error-handler.js.map +1 -0
  880. package/out/zero-client/src/client/server-option.js +64 -0
  881. package/out/zero-client/src/client/server-option.js.map +1 -0
  882. package/out/zero-client/src/client/update-needed-reason-type-enum.js +9 -0
  883. package/out/zero-client/src/client/update-needed-reason-type-enum.js.map +1 -0
  884. package/out/zero-client/src/client/version.js +5 -0
  885. package/out/zero-client/src/client/version.js.map +1 -0
  886. package/out/zero-client/src/client/zero-poke-handler.js +303 -0
  887. package/out/zero-client/src/client/zero-poke-handler.js.map +1 -0
  888. package/out/zero-client/src/client/zero-rep.d.ts +2 -2
  889. package/out/zero-client/src/client/zero-rep.d.ts.map +1 -1
  890. package/out/zero-client/src/client/zero-rep.js +72 -0
  891. package/out/zero-client/src/client/zero-rep.js.map +1 -0
  892. package/out/zero-client/src/client/zero.d.ts +25 -18
  893. package/out/zero-client/src/client/zero.d.ts.map +1 -1
  894. package/out/zero-client/src/client/zero.js +1759 -0
  895. package/out/zero-client/src/client/zero.js.map +1 -0
  896. package/out/zero-client/src/mod.d.ts +13 -16
  897. package/out/zero-client/src/mod.d.ts.map +1 -1
  898. package/out/zero-client/src/util/nanoid.js +21 -0
  899. package/out/zero-client/src/util/nanoid.js.map +1 -0
  900. package/out/zero-client/src/util/socket.js +7 -0
  901. package/out/zero-client/src/util/socket.js.map +1 -0
  902. package/out/zero-protocol/src/analyze-query-result.d.ts +236 -0
  903. package/out/zero-protocol/src/analyze-query-result.d.ts.map +1 -1
  904. package/out/zero-protocol/src/analyze-query-result.js +159 -25
  905. package/out/zero-protocol/src/analyze-query-result.js.map +1 -1
  906. package/out/zero-protocol/src/application-error.js +35 -37
  907. package/out/zero-protocol/src/application-error.js.map +1 -1
  908. package/out/zero-protocol/src/ast.d.ts +2 -2
  909. package/out/zero-protocol/src/ast.js +296 -277
  910. package/out/zero-protocol/src/ast.js.map +1 -1
  911. package/out/zero-protocol/src/change-desired-queries.d.ts +2 -2
  912. package/out/zero-protocol/src/change-desired-queries.js +11 -7
  913. package/out/zero-protocol/src/change-desired-queries.js.map +1 -1
  914. package/out/zero-protocol/src/client-schema.d.ts +2 -2
  915. package/out/zero-protocol/src/client-schema.d.ts.map +1 -1
  916. package/out/zero-protocol/src/client-schema.js +40 -26
  917. package/out/zero-protocol/src/client-schema.js.map +1 -1
  918. package/out/zero-protocol/src/close-connection.js +11 -18
  919. package/out/zero-protocol/src/close-connection.js.map +1 -1
  920. package/out/zero-protocol/src/connect.d.ts +4 -4
  921. package/out/zero-protocol/src/connect.d.ts.map +1 -1
  922. package/out/zero-protocol/src/connect.js +50 -51
  923. package/out/zero-protocol/src/connect.js.map +1 -1
  924. package/out/zero-protocol/src/custom-queries.d.ts +4 -4
  925. package/out/zero-protocol/src/custom-queries.js +61 -39
  926. package/out/zero-protocol/src/custom-queries.js.map +1 -1
  927. package/out/zero-protocol/src/data.js +9 -4
  928. package/out/zero-protocol/src/data.js.map +1 -1
  929. package/out/zero-protocol/src/delete-clients.js +16 -9
  930. package/out/zero-protocol/src/delete-clients.js.map +1 -1
  931. package/out/zero-protocol/src/down.d.ts +105 -6
  932. package/out/zero-protocol/src/down.d.ts.map +1 -1
  933. package/out/zero-protocol/src/down.js +20 -4
  934. package/out/zero-protocol/src/down.js.map +1 -1
  935. package/out/zero-protocol/src/error-kind-enum.js +41 -23
  936. package/out/zero-protocol/src/error-kind-enum.js.map +1 -1
  937. package/out/zero-protocol/src/error-origin-enum.js +9 -4
  938. package/out/zero-protocol/src/error-origin-enum.js.map +1 -1
  939. package/out/zero-protocol/src/error-reason-enum.js +17 -8
  940. package/out/zero-protocol/src/error-reason-enum.js.map +1 -1
  941. package/out/zero-protocol/src/error.d.ts +17 -17
  942. package/out/zero-protocol/src/error.js +151 -89
  943. package/out/zero-protocol/src/error.js.map +1 -1
  944. package/out/zero-protocol/src/inspect-down.d.ts +315 -18
  945. package/out/zero-protocol/src/inspect-down.d.ts.map +1 -1
  946. package/out/zero-protocol/src/inspect-down.js +72 -54
  947. package/out/zero-protocol/src/inspect-down.js.map +1 -1
  948. package/out/zero-protocol/src/inspect-up.d.ts +10 -6
  949. package/out/zero-protocol/src/inspect-up.d.ts.map +1 -1
  950. package/out/zero-protocol/src/inspect-up.js +39 -26
  951. package/out/zero-protocol/src/inspect-up.js.map +1 -1
  952. package/out/zero-protocol/src/mutation-id.js +9 -5
  953. package/out/zero-protocol/src/mutation-id.js.map +1 -1
  954. package/out/zero-protocol/src/mutation-type-enum.js +7 -3
  955. package/out/zero-protocol/src/mutation-type-enum.js.map +1 -1
  956. package/out/zero-protocol/src/mutations-patch.js +16 -17
  957. package/out/zero-protocol/src/mutations-patch.js.map +1 -1
  958. package/out/zero-protocol/src/ping.js +9 -4
  959. package/out/zero-protocol/src/ping.js.map +1 -1
  960. package/out/zero-protocol/src/poke.js +55 -72
  961. package/out/zero-protocol/src/poke.js.map +1 -1
  962. package/out/zero-protocol/src/pong.js +9 -4
  963. package/out/zero-protocol/src/pong.js.map +1 -1
  964. package/out/zero-protocol/src/primary-key.js +19 -5
  965. package/out/zero-protocol/src/primary-key.js.map +1 -1
  966. package/out/zero-protocol/src/protocol-version.d.ts +2 -2
  967. package/out/zero-protocol/src/protocol-version.d.ts.map +1 -1
  968. package/out/zero-protocol/src/protocol-version.js +7 -59
  969. package/out/zero-protocol/src/protocol-version.js.map +1 -1
  970. package/out/zero-protocol/src/pull.js +26 -19
  971. package/out/zero-protocol/src/pull.js.map +1 -1
  972. package/out/zero-protocol/src/push.d.ts +4 -4
  973. package/out/zero-protocol/src/push.js +179 -176
  974. package/out/zero-protocol/src/push.js.map +1 -1
  975. package/out/zero-protocol/src/queries-patch.d.ts +3 -3
  976. package/out/zero-protocol/src/queries-patch.js +29 -22
  977. package/out/zero-protocol/src/queries-patch.js.map +1 -1
  978. package/out/zero-protocol/src/query-hash.js +18 -14
  979. package/out/zero-protocol/src/query-hash.js.map +1 -1
  980. package/out/zero-protocol/src/row-patch.js +29 -20
  981. package/out/zero-protocol/src/row-patch.js.map +1 -1
  982. package/out/zero-protocol/src/up.d.ts +6 -5
  983. package/out/zero-protocol/src/up.d.ts.map +1 -1
  984. package/out/zero-protocol/src/up.js +18 -4
  985. package/out/zero-protocol/src/up.js.map +1 -1
  986. package/out/zero-protocol/src/version.js +9 -4
  987. package/out/zero-protocol/src/version.js.map +1 -1
  988. package/out/zero-react/src/components/inspector.d.ts +3 -2
  989. package/out/zero-react/src/components/inspector.d.ts.map +1 -1
  990. package/out/{inspector-GP3CBZRU.js → zero-react/src/components/inspector.js} +4 -9
  991. package/out/zero-react/src/components/inspector.js.map +1 -0
  992. package/out/{chunk-VZOYWIRW.js → zero-react/src/components/mark-icon.js} +3 -5
  993. package/out/zero-react/src/components/mark-icon.js.map +1 -0
  994. package/out/zero-react/src/components/zero-inspector.d.ts +3 -2
  995. package/out/zero-react/src/components/zero-inspector.d.ts.map +1 -1
  996. package/out/zero-react/src/components/zero-inspector.js +44 -0
  997. package/out/zero-react/src/components/zero-inspector.js.map +1 -0
  998. package/out/zero-react/src/mod.d.ts +1 -3
  999. package/out/zero-react/src/mod.d.ts.map +1 -1
  1000. package/out/zero-react/src/use-query.d.ts +6 -5
  1001. package/out/zero-react/src/use-query.d.ts.map +1 -1
  1002. package/out/{react.js → zero-react/src/use-query.js} +29 -220
  1003. package/out/zero-react/src/use-query.js.map +1 -0
  1004. package/out/zero-react/src/use-zero-connection-state.d.ts +1 -1
  1005. package/out/zero-react/src/use-zero-connection-state.d.ts.map +1 -1
  1006. package/out/zero-react/src/use-zero-connection-state.js +14 -0
  1007. package/out/zero-react/src/use-zero-connection-state.js.map +1 -0
  1008. package/out/zero-react/src/use-zero-online.js +14 -0
  1009. package/out/zero-react/src/use-zero-online.js.map +1 -0
  1010. package/out/zero-react/src/zero-provider.d.ts +5 -4
  1011. package/out/zero-react/src/zero-provider.d.ts.map +1 -1
  1012. package/out/zero-react/src/zero-provider.js +59 -0
  1013. package/out/zero-react/src/zero-provider.js.map +1 -0
  1014. package/out/zero-schema/src/builder/relationship-builder.js +27 -0
  1015. package/out/zero-schema/src/builder/relationship-builder.js.map +1 -0
  1016. package/out/zero-schema/src/builder/schema-builder.js +88 -0
  1017. package/out/zero-schema/src/builder/schema-builder.js.map +1 -0
  1018. package/out/zero-schema/src/builder/table-builder.js +129 -0
  1019. package/out/zero-schema/src/builder/table-builder.js.map +1 -0
  1020. package/out/zero-schema/src/compiled-permissions.js +23 -19
  1021. package/out/zero-schema/src/compiled-permissions.js.map +1 -1
  1022. package/out/zero-schema/src/name-mapper.js +43 -38
  1023. package/out/zero-schema/src/name-mapper.js.map +1 -1
  1024. package/out/zero-schema/src/permissions.d.ts.map +1 -1
  1025. package/out/zero-schema/src/permissions.js +199 -0
  1026. package/out/zero-schema/src/permissions.js.map +1 -0
  1027. package/out/zero-schema/src/schema-config.js +35 -51
  1028. package/out/zero-schema/src/schema-config.js.map +1 -1
  1029. package/out/zero-server/src/adapters/drizzle.d.ts +1 -1
  1030. package/out/zero-server/src/adapters/drizzle.d.ts.map +1 -1
  1031. package/out/zero-server/src/adapters/drizzle.js +83 -100
  1032. package/out/zero-server/src/adapters/drizzle.js.map +1 -1
  1033. package/out/zero-server/src/adapters/pg.d.ts +3 -2
  1034. package/out/zero-server/src/adapters/pg.d.ts.map +1 -1
  1035. package/out/zero-server/src/adapters/pg.js +53 -77
  1036. package/out/zero-server/src/adapters/pg.js.map +1 -1
  1037. package/out/zero-server/src/adapters/postgresjs.d.ts +1 -1
  1038. package/out/zero-server/src/adapters/postgresjs.d.ts.map +1 -1
  1039. package/out/zero-server/src/adapters/postgresjs.js +39 -57
  1040. package/out/zero-server/src/adapters/postgresjs.js.map +1 -1
  1041. package/out/zero-server/src/custom.d.ts +10 -11
  1042. package/out/zero-server/src/custom.d.ts.map +1 -1
  1043. package/out/zero-server/src/custom.js +185 -117
  1044. package/out/zero-server/src/custom.js.map +1 -1
  1045. package/out/zero-server/src/logging.js +7 -4
  1046. package/out/zero-server/src/logging.js.map +1 -1
  1047. package/out/zero-server/src/mod.d.ts +1 -0
  1048. package/out/zero-server/src/mod.d.ts.map +1 -1
  1049. package/out/zero-server/src/pg-query-executor.js +17 -14
  1050. package/out/zero-server/src/pg-query-executor.js.map +1 -1
  1051. package/out/zero-server/src/process-mutations.d.ts +9 -14
  1052. package/out/zero-server/src/process-mutations.d.ts.map +1 -1
  1053. package/out/zero-server/src/process-mutations.js +337 -272
  1054. package/out/zero-server/src/process-mutations.js.map +1 -1
  1055. package/out/zero-server/src/push-processor.d.ts +5 -3
  1056. package/out/zero-server/src/push-processor.d.ts.map +1 -1
  1057. package/out/zero-server/src/push-processor.js +48 -32
  1058. package/out/zero-server/src/push-processor.js.map +1 -1
  1059. package/out/zero-server/src/queries/process-queries.d.ts +63 -2
  1060. package/out/zero-server/src/queries/process-queries.d.ts.map +1 -1
  1061. package/out/zero-server/src/queries/process-queries.js +101 -95
  1062. package/out/zero-server/src/queries/process-queries.js.map +1 -1
  1063. package/out/zero-server/src/schema.js +136 -124
  1064. package/out/zero-server/src/schema.js.map +1 -1
  1065. package/out/zero-server/src/zql-database.d.ts +4 -4
  1066. package/out/zero-server/src/zql-database.d.ts.map +1 -1
  1067. package/out/zero-server/src/zql-database.js +67 -48
  1068. package/out/zero-server/src/zql-database.js.map +1 -1
  1069. package/out/zero-solid/src/mod.d.ts +1 -2
  1070. package/out/zero-solid/src/mod.d.ts.map +1 -1
  1071. package/out/zero-solid/src/solid-view.d.ts +1 -1
  1072. package/out/zero-solid/src/solid-view.d.ts.map +1 -1
  1073. package/out/{solid.js → zero-solid/src/solid-view.js} +42 -196
  1074. package/out/zero-solid/src/solid-view.js.map +1 -0
  1075. package/out/zero-solid/src/use-query.d.ts +3 -3
  1076. package/out/zero-solid/src/use-query.d.ts.map +1 -1
  1077. package/out/zero-solid/src/use-query.js +59 -0
  1078. package/out/zero-solid/src/use-query.js.map +1 -0
  1079. package/out/zero-solid/src/use-zero-connection-state.d.ts +1 -1
  1080. package/out/zero-solid/src/use-zero-connection-state.d.ts.map +1 -1
  1081. package/out/zero-solid/src/use-zero-connection-state.js +17 -0
  1082. package/out/zero-solid/src/use-zero-connection-state.js.map +1 -0
  1083. package/out/zero-solid/src/use-zero-online.d.ts.map +1 -1
  1084. package/out/zero-solid/src/use-zero-online.js +15 -0
  1085. package/out/zero-solid/src/use-zero-online.js.map +1 -0
  1086. package/out/zero-solid/src/use-zero.d.ts +6 -5
  1087. package/out/zero-solid/src/use-zero.d.ts.map +1 -1
  1088. package/out/zero-solid/src/use-zero.js +70 -0
  1089. package/out/zero-solid/src/use-zero.js.map +1 -0
  1090. package/out/zero-types/src/format.js +7 -4
  1091. package/out/zero-types/src/format.js.map +1 -1
  1092. package/out/zero-types/src/name-mapper.js +43 -40
  1093. package/out/zero-types/src/name-mapper.js.map +1 -1
  1094. package/out/zql/src/builder/builder.d.ts +3 -1
  1095. package/out/zql/src/builder/builder.d.ts.map +1 -1
  1096. package/out/zql/src/builder/builder.js +487 -428
  1097. package/out/zql/src/builder/builder.js.map +1 -1
  1098. package/out/zql/src/builder/debug-delegate.js +68 -64
  1099. package/out/zql/src/builder/debug-delegate.js.map +1 -1
  1100. package/out/zql/src/builder/filter.js +132 -138
  1101. package/out/zql/src/builder/filter.js.map +1 -1
  1102. package/out/zql/src/builder/like.js +44 -51
  1103. package/out/zql/src/builder/like.js.map +1 -1
  1104. package/out/zql/src/error.d.ts +5 -0
  1105. package/out/zql/src/error.d.ts.map +1 -1
  1106. package/out/zql/src/error.js +18 -6
  1107. package/out/zql/src/error.js.map +1 -1
  1108. package/out/zql/src/ivm/array-view.js +86 -92
  1109. package/out/zql/src/ivm/array-view.js.map +1 -1
  1110. package/out/zql/src/ivm/constraint.js +74 -127
  1111. package/out/zql/src/ivm/constraint.js.map +1 -1
  1112. package/out/zql/src/ivm/data.js +59 -85
  1113. package/out/zql/src/ivm/data.js.map +1 -1
  1114. package/out/zql/src/ivm/exists.js +236 -243
  1115. package/out/zql/src/ivm/exists.js.map +1 -1
  1116. package/out/zql/src/ivm/fan-in.js +50 -51
  1117. package/out/zql/src/ivm/fan-in.js.map +1 -1
  1118. package/out/zql/src/ivm/fan-out.js +48 -50
  1119. package/out/zql/src/ivm/fan-out.js.map +1 -1
  1120. package/out/zql/src/ivm/filter-operators.js +87 -87
  1121. package/out/zql/src/ivm/filter-operators.js.map +1 -1
  1122. package/out/zql/src/ivm/filter-push.js +26 -23
  1123. package/out/zql/src/ivm/filter-push.js.map +1 -1
  1124. package/out/zql/src/ivm/filter.js +30 -32
  1125. package/out/zql/src/ivm/filter.js.map +1 -1
  1126. package/out/zql/src/ivm/flipped-join.js +343 -326
  1127. package/out/zql/src/ivm/flipped-join.js.map +1 -1
  1128. package/out/zql/src/ivm/join-utils.js +85 -79
  1129. package/out/zql/src/ivm/join-utils.js.map +1 -1
  1130. package/out/zql/src/ivm/join.js +287 -207
  1131. package/out/zql/src/ivm/join.js.map +1 -1
  1132. package/out/zql/src/ivm/maybe-split-and-push-edit-change.js +26 -24
  1133. package/out/zql/src/ivm/maybe-split-and-push-edit-change.js.map +1 -1
  1134. package/out/zql/src/ivm/memory-source.d.ts +2 -2
  1135. package/out/zql/src/ivm/memory-source.d.ts.map +1 -1
  1136. package/out/zql/src/ivm/memory-source.js +471 -489
  1137. package/out/zql/src/ivm/memory-source.js.map +1 -1
  1138. package/out/zql/src/ivm/memory-storage.js +32 -31
  1139. package/out/zql/src/ivm/memory-storage.js.map +1 -1
  1140. package/out/zql/src/ivm/operator.js +8 -9
  1141. package/out/zql/src/ivm/operator.js.map +1 -1
  1142. package/out/zql/src/ivm/push-accumulated.js +236 -305
  1143. package/out/zql/src/ivm/push-accumulated.js.map +1 -1
  1144. package/out/zql/src/ivm/skip.js +92 -106
  1145. package/out/zql/src/ivm/skip.js.map +1 -1
  1146. package/out/zql/src/ivm/source.d.ts +3 -1
  1147. package/out/zql/src/ivm/source.d.ts.map +1 -1
  1148. package/out/zql/src/ivm/stream.js +20 -16
  1149. package/out/zql/src/ivm/stream.js.map +1 -1
  1150. package/out/zql/src/ivm/take.js +502 -456
  1151. package/out/zql/src/ivm/take.js.map +1 -1
  1152. package/out/zql/src/ivm/union-fan-in.js +156 -134
  1153. package/out/zql/src/ivm/union-fan-in.js.map +1 -1
  1154. package/out/zql/src/ivm/union-fan-out.js +46 -45
  1155. package/out/zql/src/ivm/union-fan-out.js.map +1 -1
  1156. package/out/zql/src/ivm/view-apply-change.js +246 -216
  1157. package/out/zql/src/ivm/view-apply-change.js.map +1 -1
  1158. package/out/zql/src/ivm/view.d.ts +2 -2
  1159. package/out/zql/src/ivm/view.d.ts.map +1 -1
  1160. package/out/zql/src/mutate/custom.d.ts +21 -12
  1161. package/out/zql/src/mutate/custom.d.ts.map +1 -1
  1162. package/out/zql/src/mutate/custom.js +15 -7
  1163. package/out/zql/src/mutate/custom.js.map +1 -1
  1164. package/out/zql/src/mutate/mutator-registry.d.ts +142 -0
  1165. package/out/zql/src/mutate/mutator-registry.d.ts.map +1 -0
  1166. package/out/zql/src/mutate/mutator-registry.js +97 -0
  1167. package/out/zql/src/mutate/mutator-registry.js.map +1 -0
  1168. package/out/zql/src/mutate/mutator.d.ts +98 -0
  1169. package/out/zql/src/mutate/mutator.d.ts.map +1 -0
  1170. package/out/zql/src/mutate/mutator.js +35 -0
  1171. package/out/zql/src/mutate/mutator.js.map +1 -0
  1172. package/out/zql/src/planner/planner-builder.js +238 -172
  1173. package/out/zql/src/planner/planner-builder.js.map +1 -1
  1174. package/out/zql/src/planner/planner-connection.d.ts +7 -15
  1175. package/out/zql/src/planner/planner-connection.d.ts.map +1 -1
  1176. package/out/zql/src/planner/planner-connection.js +205 -248
  1177. package/out/zql/src/planner/planner-connection.js.map +1 -1
  1178. package/out/zql/src/planner/planner-constraint.js +8 -11
  1179. package/out/zql/src/planner/planner-constraint.js.map +1 -1
  1180. package/out/zql/src/planner/planner-debug.d.ts +37 -43
  1181. package/out/zql/src/planner/planner-debug.d.ts.map +1 -1
  1182. package/out/zql/src/planner/planner-debug.js +227 -161
  1183. package/out/zql/src/planner/planner-debug.js.map +1 -1
  1184. package/out/zql/src/planner/planner-fan-in.d.ts.map +1 -1
  1185. package/out/zql/src/planner/planner-fan-in.js +157 -164
  1186. package/out/zql/src/planner/planner-fan-in.js.map +1 -1
  1187. package/out/zql/src/planner/planner-fan-out.d.ts.map +1 -1
  1188. package/out/zql/src/planner/planner-fan-out.js +73 -59
  1189. package/out/zql/src/planner/planner-fan-out.js.map +1 -1
  1190. package/out/zql/src/planner/planner-graph.d.ts +6 -6
  1191. package/out/zql/src/planner/planner-graph.d.ts.map +1 -1
  1192. package/out/zql/src/planner/planner-graph.js +322 -337
  1193. package/out/zql/src/planner/planner-graph.js.map +1 -1
  1194. package/out/zql/src/planner/planner-join.d.ts.map +1 -1
  1195. package/out/zql/src/planner/planner-join.js +237 -342
  1196. package/out/zql/src/planner/planner-join.js.map +1 -1
  1197. package/out/zql/src/planner/planner-node.d.ts +4 -0
  1198. package/out/zql/src/planner/planner-node.d.ts.map +1 -1
  1199. package/out/zql/src/planner/planner-node.js +8 -2
  1200. package/out/zql/src/planner/planner-node.js.map +1 -1
  1201. package/out/zql/src/planner/planner-source.js +23 -12
  1202. package/out/zql/src/planner/planner-source.js.map +1 -1
  1203. package/out/zql/src/planner/planner-terminus.js +28 -27
  1204. package/out/zql/src/planner/planner-terminus.js.map +1 -1
  1205. package/out/zql/src/query/complete-ordering.d.ts +5 -0
  1206. package/out/zql/src/query/complete-ordering.d.ts.map +1 -0
  1207. package/out/zql/src/query/complete-ordering.js +71 -0
  1208. package/out/zql/src/query/complete-ordering.js.map +1 -0
  1209. package/out/zql/src/query/create-builder.d.ts +7 -0
  1210. package/out/zql/src/query/create-builder.d.ts.map +1 -0
  1211. package/out/zql/src/query/create-builder.js +44 -0
  1212. package/out/zql/src/query/create-builder.js.map +1 -0
  1213. package/out/zql/src/query/error.js +12 -8
  1214. package/out/zql/src/query/error.js.map +1 -1
  1215. package/out/zql/src/query/escape-like.js +7 -0
  1216. package/out/zql/src/query/escape-like.js.map +1 -0
  1217. package/out/zql/src/query/expression.js +153 -151
  1218. package/out/zql/src/query/expression.js.map +1 -1
  1219. package/out/zql/src/query/measure-push-operator.js +42 -35
  1220. package/out/zql/src/query/measure-push-operator.js.map +1 -1
  1221. package/out/zql/src/query/metrics-delegate.js +9 -5
  1222. package/out/zql/src/query/metrics-delegate.js.map +1 -1
  1223. package/out/zql/src/query/named.d.ts +8 -10
  1224. package/out/zql/src/query/named.d.ts.map +1 -1
  1225. package/out/zql/src/query/named.js +52 -88
  1226. package/out/zql/src/query/named.js.map +1 -1
  1227. package/out/zql/src/query/query-delegate-base.d.ts +6 -14
  1228. package/out/zql/src/query/query-delegate-base.d.ts.map +1 -1
  1229. package/out/zql/src/query/query-delegate-base.js +118 -134
  1230. package/out/zql/src/query/query-delegate-base.js.map +1 -1
  1231. package/out/zql/src/query/query-delegate.d.ts +6 -8
  1232. package/out/zql/src/query/query-delegate.d.ts.map +1 -1
  1233. package/out/zql/src/query/query-impl.d.ts +19 -19
  1234. package/out/zql/src/query/query-impl.d.ts.map +1 -1
  1235. package/out/zql/src/query/query-impl.js +514 -433
  1236. package/out/zql/src/query/query-impl.js.map +1 -1
  1237. package/out/zql/src/query/query-internals.d.ts +11 -13
  1238. package/out/zql/src/query/query-internals.d.ts.map +1 -1
  1239. package/out/zql/src/query/query-internals.js +9 -19
  1240. package/out/zql/src/query/query-internals.js.map +1 -1
  1241. package/out/zql/src/query/query-registry.d.ts +253 -0
  1242. package/out/zql/src/query/query-registry.d.ts.map +1 -0
  1243. package/out/zql/src/query/query-registry.js +131 -0
  1244. package/out/zql/src/query/query-registry.js.map +1 -0
  1245. package/out/zql/src/query/query.d.ts +30 -16
  1246. package/out/zql/src/query/query.d.ts.map +1 -1
  1247. package/out/zql/src/query/schema-query.d.ts +6 -0
  1248. package/out/zql/src/query/schema-query.d.ts.map +1 -0
  1249. package/out/zql/src/query/static-query.d.ts +3 -3
  1250. package/out/zql/src/query/static-query.d.ts.map +1 -1
  1251. package/out/zql/src/query/static-query.js +41 -18
  1252. package/out/zql/src/query/static-query.js.map +1 -1
  1253. package/out/zql/src/query/ttl.js +69 -62
  1254. package/out/zql/src/query/ttl.js.map +1 -1
  1255. package/out/zql/src/query/validate-input.d.ts +15 -0
  1256. package/out/zql/src/query/validate-input.d.ts.map +1 -0
  1257. package/out/zql/src/query/validate-input.js +24 -0
  1258. package/out/zql/src/query/validate-input.js.map +1 -0
  1259. package/out/zqlite/src/database-storage.d.ts +1 -1
  1260. package/out/zqlite/src/database-storage.d.ts.map +1 -1
  1261. package/out/zqlite/src/database-storage.js +99 -102
  1262. package/out/zqlite/src/database-storage.js.map +1 -1
  1263. package/out/zqlite/src/db.js +241 -194
  1264. package/out/zqlite/src/db.js.map +1 -1
  1265. package/out/zqlite/src/explain-queries.js +13 -16
  1266. package/out/zqlite/src/explain-queries.js.map +1 -1
  1267. package/out/zqlite/src/internal/sql.js +15 -10
  1268. package/out/zqlite/src/internal/sql.js.map +1 -1
  1269. package/out/zqlite/src/internal/statement-cache.js +86 -110
  1270. package/out/zqlite/src/internal/statement-cache.js.map +1 -1
  1271. package/out/zqlite/src/query-builder.js +172 -143
  1272. package/out/zqlite/src/query-builder.js.map +1 -1
  1273. package/out/zqlite/src/query-delegate.d.ts +2 -2
  1274. package/out/zqlite/src/query-delegate.d.ts.map +1 -1
  1275. package/out/zqlite/src/query-delegate.js +53 -43
  1276. package/out/zqlite/src/query-delegate.js.map +1 -1
  1277. package/out/zqlite/src/sqlite-cost-model.js +94 -125
  1278. package/out/zqlite/src/sqlite-cost-model.js.map +1 -1
  1279. package/out/zqlite/src/sqlite-stat-fanout.js +277 -353
  1280. package/out/zqlite/src/sqlite-stat-fanout.js.map +1 -1
  1281. package/out/zqlite/src/table-source.d.ts +9 -4
  1282. package/out/zqlite/src/table-source.d.ts.map +1 -1
  1283. package/out/zqlite/src/table-source.js +424 -327
  1284. package/out/zqlite/src/table-source.js.map +1 -1
  1285. package/package.json +23 -25
  1286. package/out/chunk-424PT5DM.js +0 -23
  1287. package/out/chunk-424PT5DM.js.map +0 -7
  1288. package/out/chunk-AFADJQ2O.js +0 -1
  1289. package/out/chunk-AFADJQ2O.js.map +0 -7
  1290. package/out/chunk-ASRS2LFV.js.map +0 -7
  1291. package/out/chunk-EZM3XBAB.js.map +0 -7
  1292. package/out/chunk-FODUNUAD.js +0 -18850
  1293. package/out/chunk-FODUNUAD.js.map +0 -7
  1294. package/out/chunk-HCZQVP5R.js.map +0 -7
  1295. package/out/chunk-S633A55A.js +0 -495
  1296. package/out/chunk-S633A55A.js.map +0 -7
  1297. package/out/chunk-TAUDS4QP.js +0 -4129
  1298. package/out/chunk-TAUDS4QP.js.map +0 -7
  1299. package/out/chunk-VZOYWIRW.js.map +0 -7
  1300. package/out/chunk-WPAQ4EPM.js.map +0 -7
  1301. package/out/expo-sqlite.js +0 -11
  1302. package/out/expo-sqlite.js.map +0 -7
  1303. package/out/inspector-GP3CBZRU.js.map +0 -7
  1304. package/out/lazy-inspector-XLKVABX2.js +0 -575
  1305. package/out/lazy-inspector-XLKVABX2.js.map +0 -7
  1306. package/out/op-sqlite.js.map +0 -7
  1307. package/out/react-native.js +0 -25
  1308. package/out/react-native.js.map +0 -7
  1309. package/out/react.js.map +0 -7
  1310. package/out/shared/src/enum.js +0 -2
  1311. package/out/shared/src/enum.js.map +0 -1
  1312. package/out/shared/src/expand.js +0 -2
  1313. package/out/shared/src/expand.js.map +0 -1
  1314. package/out/shared/src/immutable.js +0 -2
  1315. package/out/shared/src/immutable.js.map +0 -1
  1316. package/out/shared/src/types.js +0 -2
  1317. package/out/shared/src/types.js.map +0 -1
  1318. package/out/shared/src/writable.js +0 -2
  1319. package/out/shared/src/writable.js.map +0 -1
  1320. package/out/solid.js.map +0 -7
  1321. package/out/sqlite.js +0 -15
  1322. package/out/sqlite.js.map +0 -7
  1323. package/out/zero/package.json +0 -195
  1324. package/out/zero/src/server/change-streamer.js +0 -2
  1325. package/out/zero/src/server/change-streamer.js.map +0 -1
  1326. package/out/zero/src/server/main.js +0 -2
  1327. package/out/zero/src/server/main.js.map +0 -1
  1328. package/out/zero/src/server/reaper.js +0 -2
  1329. package/out/zero/src/server/reaper.js.map +0 -1
  1330. package/out/zero/src/server/replicator.js +0 -2
  1331. package/out/zero/src/server/replicator.js.map +0 -1
  1332. package/out/zero/src/server/runner/main.js +0 -2
  1333. package/out/zero/src/server/runner/main.js.map +0 -1
  1334. package/out/zero/src/server/syncer.js +0 -2
  1335. package/out/zero/src/server/syncer.js.map +0 -1
  1336. package/out/zero-cache/src/services/change-source/pg/logical-replication/pgoutput.types.js +0 -4
  1337. package/out/zero-cache/src/services/change-source/pg/logical-replication/pgoutput.types.js.map +0 -1
  1338. package/out/zero-cache/src/services/change-source/protocol/mod.js +0 -5
  1339. package/out/zero-cache/src/services/change-source/protocol/mod.js.map +0 -1
  1340. package/out/zero-cache/src/services/service.js +0 -2
  1341. package/out/zero-cache/src/services/service.js.map +0 -1
  1342. package/out/zero-cache/src/services/view-syncer/key-columns.d.ts +0 -32
  1343. package/out/zero-cache/src/services/view-syncer/key-columns.d.ts.map +0 -1
  1344. package/out/zero-cache/src/services/view-syncer/key-columns.js +0 -75
  1345. package/out/zero-cache/src/services/view-syncer/key-columns.js.map +0 -1
  1346. package/out/zero-cache/src/types/satisfies.js +0 -2
  1347. package/out/zero-cache/src/types/satisfies.js.map +0 -1
  1348. package/out/zero-events/src/index.js +0 -2
  1349. package/out/zero-events/src/index.js.map +0 -1
  1350. package/out/zero-events/src/json.js +0 -2
  1351. package/out/zero-events/src/json.js.map +0 -1
  1352. package/out/zero-events/src/status.js +0 -3
  1353. package/out/zero-events/src/status.js.map +0 -1
  1354. package/out/zero-pg/src/mod.js +0 -6
  1355. package/out/zero-pg/src/mod.js.map +0 -1
  1356. package/out/zero-protocol/src/error-kind.js +0 -3
  1357. package/out/zero-protocol/src/error-kind.js.map +0 -1
  1358. package/out/zero-protocol/src/error-origin.js +0 -3
  1359. package/out/zero-protocol/src/error-origin.js.map +0 -1
  1360. package/out/zero-protocol/src/error-reason.js +0 -3
  1361. package/out/zero-protocol/src/error-reason.js.map +0 -1
  1362. package/out/zero-schema/src/table-schema.js +0 -7
  1363. package/out/zero-schema/src/table-schema.js.map +0 -1
  1364. package/out/zero-server/src/mod.js +0 -8
  1365. package/out/zero-server/src/mod.js.map +0 -1
  1366. package/out/zero-types/src/schema-value.js +0 -2
  1367. package/out/zero-types/src/schema-value.js.map +0 -1
  1368. package/out/zero-types/src/schema.js +0 -2
  1369. package/out/zero-types/src/schema.js.map +0 -1
  1370. package/out/zero-types/src/server-schema.js +0 -2
  1371. package/out/zero-types/src/server-schema.js.map +0 -1
  1372. package/out/zero.js +0 -95
  1373. package/out/zero.js.map +0 -7
  1374. package/out/zql/src/ivm/change.js +0 -2
  1375. package/out/zql/src/ivm/change.js.map +0 -1
  1376. package/out/zql/src/ivm/default-format.js +0 -2
  1377. package/out/zql/src/ivm/default-format.js.map +0 -1
  1378. package/out/zql/src/ivm/schema.js +0 -2
  1379. package/out/zql/src/ivm/schema.js.map +0 -1
  1380. package/out/zql/src/ivm/source.js +0 -2
  1381. package/out/zql/src/ivm/source.js.map +0 -1
  1382. package/out/zql/src/ivm/view.js +0 -2
  1383. package/out/zql/src/ivm/view.js.map +0 -1
  1384. package/out/zql/src/query/chained-query.d.ts +0 -35
  1385. package/out/zql/src/query/chained-query.d.ts.map +0 -1
  1386. package/out/zql/src/query/chained-query.js +0 -66
  1387. package/out/zql/src/query/chained-query.js.map +0 -1
  1388. package/out/zql/src/query/define-query.d.ts +0 -51
  1389. package/out/zql/src/query/define-query.d.ts.map +0 -1
  1390. package/out/zql/src/query/define-query.js +0 -53
  1391. package/out/zql/src/query/define-query.js.map +0 -1
  1392. package/out/zql/src/query/query-delegate.js +0 -2
  1393. package/out/zql/src/query/query-delegate.js.map +0 -1
  1394. package/out/zql/src/query/query.js +0 -8
  1395. package/out/zql/src/query/query.js.map +0 -1
  1396. package/out/zql/src/query/root-named-query.d.ts +0 -33
  1397. package/out/zql/src/query/root-named-query.d.ts.map +0 -1
  1398. package/out/zql/src/query/root-named-query.js +0 -95
  1399. package/out/zql/src/query/root-named-query.js.map +0 -1
  1400. package/out/zql/src/query/typed-view.js +0 -2
  1401. package/out/zql/src/query/typed-view.js.map +0 -1
  1402. package/out/zqlite/src/mod.js +0 -5
  1403. package/out/zqlite/src/mod.js.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"query-registry.js","sources":["../../../../../zql/src/query/query-registry.ts"],"sourcesContent":["// oxlint-disable no-explicit-any\nimport type {StandardSchemaV1} from '@standard-schema/spec';\nimport {deepMerge, type DeepMerge} from '../../../shared/src/deep-merge.ts';\nimport type {ReadonlyJSONValue} from '../../../shared/src/json.ts';\nimport {must} from '../../../shared/src/must.ts';\nimport {getValueAtPath} from '../../../shared/src/object-traversal.ts';\nimport type {Schema} from '../../../zero-types/src/schema.ts';\nimport {asQueryInternals} from './query-internals.ts';\nimport type {Query} from './query.ts';\nimport {validateInput} from './validate-input.ts';\n\nconst customQueryTag = Symbol();\n\n/**\n * CustomQuery is what is returned from defineQueries. It supports a builder\n * pattern where args is set before calling toQuery(context).\n *\n * const queries = defineQueries(...);\n * queries.foo.bar satisfies CustomQuery<...>\n *\n * Usage:\n * queries.foo(args).toQuery(ctx)\n */\nexport type CustomQuery<\n S extends Schema,\n T extends keyof S['tables'] & string,\n R,\n C,\n Args extends ReadonlyJSONValue | undefined,\n HasArgs extends boolean = false,\n> = {\n readonly [customQueryTag]: true;\n} & (HasArgs extends true\n ? unknown\n : undefined extends Args\n ? {\n (): CustomQuery<S, T, R, C, Args, true>;\n (args?: Args): CustomQuery<S, T, R, C, Args, true>;\n }\n : {\n (args: Args): CustomQuery<S, T, R, C, Args, true>;\n }) &\n (HasArgs extends true ? {toQuery(ctx: C): Query<S, T, R>} : unknown);\n\nconst queryRegistryTag = Symbol();\n\nexport function isQueryRegistry<Q extends QueryDefinitions<Schema, any>>(\n obj: unknown,\n): obj is QueryRegistry<Q> {\n return (\n typeof obj === 'object' &&\n obj !== null &&\n (obj as any)[queryRegistryTag] === true\n );\n}\n\ntype SchemaFromQueryDefinitions<QD extends QueryDefinitions<Schema, any>> =\n QD extends QueryDefinitions<infer S, any> ? S : never;\n\nexport type QueryRegistry<QD extends QueryDefinitions<Schema, any>> =\n CustomQueriesInner<QD, SchemaFromQueryDefinitions<QD>>;\n\ntype CustomQueriesInner<\n QD extends QueryDefinitions<Schema, any>,\n S extends Schema,\n> = {\n readonly [K in keyof QD]: QD[K] extends QueryDefinition<\n S,\n infer TTable,\n infer TReturn,\n infer TContext,\n infer TInput,\n any\n >\n ? CustomQuery<S, TTable, TReturn, TContext, TInput>\n : QD[K] extends QueryDefinitions<S, any>\n ? CustomQueriesInner<QD[K], S>\n : never;\n} & {\n [queryRegistryTag]: true;\n};\n\nexport type ContextTypeOfQueryRegistry<CQ> =\n CQ extends QueryRegistry<infer QD>\n ? QD extends QueryDefinitions<Schema, infer C>\n ? C\n : never\n : never;\n\nexport const defineQueryTag = Symbol();\n\ntype QueryDefinitionFunction<\n TSchema extends Schema,\n TTable extends keyof TSchema['tables'] & string,\n TReturn,\n TContext,\n Args extends ReadonlyJSONValue | undefined,\n> = (options: {args: Args; ctx: TContext}) => Query<TSchema, TTable, TReturn>;\n\n/**\n * A query definition is the return type of `defineQuery()`.\n */\nexport type QueryDefinition<\n TSchema extends Schema,\n TTable extends keyof TSchema['tables'] & string,\n TReturn,\n TContext,\n TInput extends ReadonlyJSONValue | undefined,\n TOutput extends ReadonlyJSONValue | undefined,\n> = QueryDefinitionFunction<TSchema, TTable, TReturn, TContext, TOutput> & {\n [defineQueryTag]: true;\n validator: StandardSchemaV1<TInput, TOutput> | undefined;\n};\n\nexport function isQueryDefinition<\n TSchema extends Schema,\n TTable extends keyof TSchema['tables'] & string,\n TReturn,\n TContext,\n TInput extends ReadonlyJSONValue | undefined,\n TOutput extends ReadonlyJSONValue | undefined,\n>(\n f: unknown,\n): f is QueryDefinition<TSchema, TTable, TReturn, TContext, TInput, TOutput> {\n return typeof f === 'function' && (f as any)[defineQueryTag];\n}\n\nexport type QueryDefinitions<S extends Schema, Context> = {\n readonly [key: string]:\n | QueryDefinition<S, any, any, Context, any, any>\n | QueryDefinitions<S, Context>;\n};\n\n/**\n * Defines a query to be used with {@link defineQueries}.\n *\n * The query function receives an object with `args` (the query arguments) and\n * `ctx` (the context). It should return a {@link Query} built using a builder\n * created from {@link createBuilder}.\n *\n * Note: A query defined with `defineQuery` must be passed to\n * {@link defineQueries} to be usable. The query name is derived from its\n * position in the `defineQueries` object.\n *\n * @example\n * ```ts\n * const builder = createBuilder(schema);\n *\n * const queries = defineQueries({\n * // Simple query with no arguments\n * allIssues: defineQuery(() => builder.issue.orderBy('created', 'desc')),\n *\n * // Query with typed arguments\n * issueById: defineQuery(({args}: {args: {id: string}}) =>\n * builder.issue.where('id', args.id).one(),\n * ),\n *\n * // Query with validation using a Standard Schema validator (e.g., Zod)\n * issuesByStatus: defineQuery(\n * z.object({status: z.enum(['open', 'closed'])}),\n * ({args}) => builder.issue.where('status', args.status),\n * ),\n *\n * // Query using context\n * myIssues: defineQuery(({ctx}: {ctx: {userID: string}}) =>\n * builder.issue.where('creatorID', ctx.userID),\n * ),\n * });\n * ```\n *\n * @param queryFn - A function that receives `{args, ctx}` and returns a Query.\n * @returns A {@link QueryDefinition} that can be passed to {@link defineQueries}.\n *\n * @overload\n * @param validator - A Standard Schema validator for the arguments.\n * @param queryFn - A function that receives `{args, ctx}` and returns a Query.\n * @returns A {@link QueryDefinition} with validated arguments.\n */\n// Overload for no validator parameter with default inference for untyped functions\nexport function defineQuery<\n TSchema extends Schema,\n TTable extends keyof TSchema['tables'] & string,\n TReturn,\n TContext,\n TArgs extends ReadonlyJSONValue | undefined,\n>(\n queryFn: QueryDefinitionFunction<TSchema, TTable, TReturn, TContext, TArgs>,\n): QueryDefinition<TSchema, TTable, TReturn, TContext, TArgs, TArgs>;\n\n// Overload for validator parameter - Input and Output can be different\nexport function defineQuery<\n TSchema extends Schema,\n TTable extends keyof TSchema['tables'] & string,\n TReturn,\n TContext,\n TInput extends ReadonlyJSONValue | undefined,\n TOutput extends ReadonlyJSONValue | undefined,\n>(\n validator: StandardSchemaV1<TInput, TOutput>,\n queryFn: QueryDefinitionFunction<TSchema, TTable, TReturn, TContext, TOutput>,\n): QueryDefinition<TSchema, TTable, TReturn, TContext, TInput, TOutput>;\n\n// Implementation\nexport function defineQuery<\n TSchema extends Schema,\n TTable extends keyof TSchema['tables'] & string,\n TReturn,\n TContext,\n TInput extends ReadonlyJSONValue | undefined,\n TOutput extends ReadonlyJSONValue | undefined,\n>(\n validatorOrQueryFn:\n | StandardSchemaV1<TInput, TOutput>\n | QueryDefinitionFunction<TSchema, TTable, TReturn, TContext, TOutput>,\n queryFn?: QueryDefinitionFunction<\n TSchema,\n TTable,\n TReturn,\n TContext,\n TOutput\n >,\n): QueryDefinition<TSchema, TTable, TReturn, TContext, TInput, TOutput> {\n // Handle different parameter patterns\n let validator: StandardSchemaV1<TInput, TOutput> | undefined;\n let actualQueryFn: QueryDefinitionFunction<\n TSchema,\n TTable,\n TReturn,\n TContext,\n TOutput\n >;\n\n if (typeof validatorOrQueryFn === 'function') {\n // defineQuery(queryFn) - no validator\n validator = undefined;\n actualQueryFn = validatorOrQueryFn;\n } else {\n // defineQuery(validator, queryFn) - with validator\n validator = validatorOrQueryFn;\n actualQueryFn = must(queryFn);\n }\n\n // We wrap the function to add the tag and validator and ensure we do not mutate it in place.\n const f = (options: {args: TOutput; ctx: TContext}) => actualQueryFn(options);\n f.validator = validator;\n f[defineQueryTag] = true as const;\n return f;\n}\n\n/**\n * Returns a typed version of {@link defineQuery} with the schema and context\n * types pre-specified. This enables better type inference when defining\n * queries.\n *\n * @example\n * ```ts\n * const builder = createBuilder(schema);\n *\n * // With both Schema and Context types\n * const defineAppQuery = defineQueryWithType<AppSchema, AppContext>();\n * const myQuery = defineAppQuery(({ctx}) =>\n * builder.issue.where('userID', ctx.userID),\n * );\n *\n * // With just Context type (Schema inferred)\n * const defineAppQuery = defineQueryWithType<AppContext>();\n * ```\n *\n * @typeParam S - The Zero schema type.\n * @typeParam C - The context type passed to query functions.\n * @returns A function equivalent to {@link defineQuery} but with types\n * pre-bound.\n */\nexport function defineQueryWithType<\n S extends Schema,\n C = unknown,\n>(): TypedDefineQuery<S, C>;\n\n/**\n * Returns a typed version of {@link defineQuery} with the context type\n * pre-specified.\n *\n * @typeParam C - The context type passed to query functions.\n * @returns A function equivalent to {@link defineQuery} but with the context\n * type pre-bound.\n */\nexport function defineQueryWithType<C>(): TypedDefineQuery<Schema, C>;\n\nexport function defineQueryWithType() {\n return defineQuery;\n}\n\n/**\n * The return type of defineQueryWithType. A function matching the\n * defineQuery overloads but with Schema and Context pre-bound.\n */\ntype TypedDefineQuery<TSchema extends Schema, TContext> = {\n // Without validator\n <\n TTable extends keyof TSchema['tables'] & string,\n TReturn,\n TArgs extends ReadonlyJSONValue | undefined,\n >(\n queryFn: QueryDefinitionFunction<TSchema, TTable, TReturn, TContext, TArgs>,\n ): QueryDefinition<TSchema, TTable, TReturn, TContext, TArgs, TArgs>;\n\n // With validator\n <\n TTable extends keyof TSchema['tables'] & string,\n TReturn,\n TInput extends ReadonlyJSONValue | undefined,\n TOutput extends ReadonlyJSONValue | undefined,\n >(\n validator: StandardSchemaV1<TInput, TOutput>,\n queryFn: QueryDefinitionFunction<\n TSchema,\n TTable,\n TReturn,\n TContext,\n TOutput\n >,\n ): QueryDefinition<TSchema, TTable, TReturn, TContext, TInput, TOutput>;\n};\n\nfunction createCustomQueryBuilder<\n S extends Schema,\n T extends keyof S['tables'] & string,\n R,\n C,\n ArgsInput extends ReadonlyJSONValue | undefined,\n ArgsOutput extends ReadonlyJSONValue | undefined,\n HasArgs extends boolean,\n>(\n queryDef: QueryDefinition<S, T, R, C, ArgsInput, ArgsOutput>,\n name: string,\n inputArgs: ArgsInput,\n validatedArgs: ArgsOutput,\n hasArgs: HasArgs,\n): CustomQuery<S, T, R, C, ArgsInput, HasArgs> {\n const {validator} = queryDef;\n\n // The callable function that sets args\n const builder = (args: ArgsInput) => {\n if (hasArgs) {\n throw new Error('args already set');\n }\n const validated = validateInput(name, args, validator, 'query');\n return createCustomQueryBuilder<S, T, R, C, ArgsInput, ArgsOutput, true>(\n queryDef,\n name,\n args,\n validated,\n true,\n );\n };\n\n // Add create method\n builder.toQuery = (ctx: C) => {\n if (!hasArgs) {\n throw new Error('args not set');\n }\n\n return asQueryInternals(\n queryDef({\n args: validatedArgs,\n ctx,\n }),\n ).nameAndArgs(\n name,\n // TODO(arv): Get rid of the array?\n // Send original input args to server (not transformed output)\n inputArgs === undefined\n ? []\n : [inputArgs as unknown as ReadonlyJSONValue],\n );\n };\n\n // Add the tag\n builder[customQueryTag] = true;\n\n return builder as unknown as CustomQuery<S, T, R, C, ArgsInput, HasArgs>;\n}\n\n/**\n * Converts query definitions created with {@link defineQuery} into callable\n * {@link CustomQuery} objects that can be invoked with arguments and a context.\n *\n * Query definitions can be nested for organization. The resulting query names\n * are dot-separated paths (e.g., `users.byId`).\n *\n * @example\n * ```ts\n * const builder = createBuilder(schema);\n *\n * const queries = defineQueries({\n * issues: defineQuery(() => builder.issue.orderBy('created', 'desc')),\n * users: {\n * byId: defineQuery(({args}: {args: {id: string}}) =>\n * builder.user.where('id', args.id),\n * ),\n * },\n * });\n *\n * // Usage:\n * const q = queries.issues().toQuery(ctx);\n * const q2 = queries.users.byId({id: '123'}).toQuery(ctx);\n * ```\n *\n * @param defs - An object containing query definitions or nested objects of\n * query definitions.\n * @returns An object with the same structure where each query definition is\n * converted to a {@link CustomQuery}.\n */\nexport function defineQueries<QD extends QueryDefinitions<Schema, any>>(\n defs: QD,\n): QueryRegistry<QD>;\n\n/**\n * Extends an existing query registry with additional or overriding query\n * definitions. Properties from overrides replace properties from base with\n * the same key.\n *\n * @param base - An existing query registry to extend.\n * @param overrides - New query definitions to add or override.\n * @returns A merged query registry with all queries from both base and overrides.\n */\nexport function defineQueries<\n TBase extends QueryDefinitions<Schema, any>,\n TOverrides extends QueryDefinitions<Schema, any>,\n>(\n base: QueryRegistry<TBase>,\n overrides: TOverrides,\n): QueryRegistry<DeepMerge<TBase, TOverrides>>;\n\n/**\n * Merges two query definition objects into a single query registry.\n * Properties from the second parameter replace properties from the first\n * with the same key.\n *\n * @param base - The base query definitions to start with.\n * @param overrides - Additional query definitions to merge in, overriding any\n * existing definitions with the same key.\n * @returns A merged query registry with all queries from both parameters.\n */\nexport function defineQueries<\n TBase extends QueryDefinitions<Schema, any>,\n TOverrides extends QueryDefinitions<Schema, any>,\n>(\n base: TBase,\n overrides: TOverrides,\n): QueryRegistry<DeepMerge<TBase, TOverrides>>;\n\nexport function defineQueries<QD extends QueryDefinitions<Schema, any>>(\n defsOrBase: QD | QueryRegistry<QD>,\n overrides?: QueryDefinitions<Schema, unknown>,\n): QueryRegistry<any> {\n function processDefinitions(\n definitions: QueryDefinitions<Schema, unknown>,\n path: string[],\n ): Record<string | symbol, any> {\n const result: Record<string | symbol, any> = {\n [queryRegistryTag]: true,\n };\n\n for (const [key, value] of Object.entries(definitions)) {\n path.push(key);\n const defaultName = path.join('.');\n\n if (isQueryDefinition(value)) {\n result[key] = createCustomQueryBuilder(\n value,\n defaultName,\n undefined,\n undefined,\n false,\n );\n } else {\n // Nested definitions\n result[key] = processDefinitions(\n value as QueryDefinitions<Schema, unknown>,\n path,\n );\n }\n path.pop();\n }\n\n return result;\n }\n\n if (overrides !== undefined) {\n // Merge base and overrides\n\n let base: Record<string | symbol, any>;\n if (!isQueryRegistry(defsOrBase)) {\n base = processDefinitions(defsOrBase as QD, []);\n } else {\n base = defsOrBase;\n }\n\n const processed = processDefinitions(overrides, []);\n\n const merged = deepMerge(base, processed) as QueryRegistry<any>;\n merged[queryRegistryTag] = true;\n return merged;\n }\n\n return processDefinitions(defsOrBase as QD, []) as QueryRegistry<QD>;\n}\n\n/**\n * Returns a typed version of {@link defineQueries} with the schema and context\n * types pre-specified. This enables better type inference when defining\n * queries.\n *\n * @example\n * ```ts\n * const builder = createBuilder(schema);\n *\n * // With both Schema and Context types\n * const defineAppQueries = defineQueriesWithType<AppSchema, AppContext>();\n * const queries = defineAppQueries({\n * issues: defineQuery(({ctx}) => builder.issue.where('userID', ctx.userID)),\n * });\n *\n * // Extend an existing registry\n * const serverQueries = defineAppQueries(queries, {\n * admin: defineQuery(...), // add new query\n * });\n *\n * // With just Context type (Schema inferred)\n * const defineAppQueries = defineQueriesWithType<AppContext>();\n * ```\n *\n * @typeParam S - The Zero schema type.\n * @typeParam C - The context type passed to query functions.\n * @returns A function equivalent to {@link defineQueries} but with types\n * pre-bound.\n */\nexport function defineQueriesWithType<\n S extends Schema,\n C = unknown,\n>(): TypedDefineQueries<S, C>;\n\n/**\n * Returns a typed version of {@link defineQueries} with the context type\n * pre-specified.\n *\n * @typeParam C - The context type passed to query functions.\n * @returns A function equivalent to {@link defineQueries} but with the context\n * type pre-bound.\n */\nexport function defineQueriesWithType<C>(): TypedDefineQueries<Schema, C>;\n\nexport function defineQueriesWithType() {\n return defineQueries;\n}\n\n/**\n * The return type of defineQueriesWithType. A function matching the\n * defineQueries overloads but with Schema and Context pre-bound.\n */\ntype TypedDefineQueries<S extends Schema, C> = {\n <QD extends QueryDefinitions<S, C>>(defs: QD): QueryRegistry<QD>;\n <\n TBase extends QueryDefinitions<S, C>,\n TOverrides extends QueryDefinitions<S, C>,\n >(\n base: QueryRegistry<TBase>,\n overrides: TOverrides,\n ): QueryRegistry<DeepMerge<TBase, TOverrides>>;\n <\n TBase extends QueryDefinitions<S, C>,\n TOverrides extends QueryDefinitions<S, C>,\n >(\n base: TBase,\n overrides: TOverrides,\n ): QueryRegistry<DeepMerge<TBase, TOverrides>>;\n};\n\nexport function getQuery<S extends Schema, QD extends QueryDefinitions<S, any>>(\n queries: QueryRegistry<QD>,\n name: string,\n):\n | CustomQuery<\n S,\n keyof S['tables'] & string,\n unknown, // return\n unknown, // context\n ReadonlyJSONValue | undefined, // ArgsInput\n false\n >\n | undefined {\n return getValueAtPath(queries, name, /[.|]/) as\n | CustomQuery<\n S,\n keyof S['tables'] & string,\n unknown, // return\n unknown, // context\n ReadonlyJSONValue | undefined, // ArgsInput\n false\n >\n | undefined;\n}\n\nexport function mustGetQuery<\n S extends Schema,\n QD extends QueryDefinitions<S, any>,\n>(\n queries: QueryRegistry<QD>,\n name: string,\n): CustomQuery<\n S,\n keyof S['tables'] & string,\n unknown, // return\n unknown, // context\n ReadonlyJSONValue | undefined, // ArgsInput\n false\n> {\n const v = getQuery(queries, name);\n if (!v) {\n throw new Error(`Query not found: ${name}`);\n }\n return v;\n}\n"],"names":[],"mappings":";;;;;AAWA,MAAM,iBAAiB,OAAA;AAiCvB,MAAM,mBAAmB,OAAA;AAElB,SAAS,gBACd,KACyB;AACzB,SACE,OAAO,QAAQ,YACf,QAAQ,QACP,IAAY,gBAAgB,MAAM;AAEvC;AAmCO,MAAM,iBAAiB,OAAA;AAyBvB,SAAS,kBAQd,GAC2E;AAC3E,SAAO,OAAO,MAAM,cAAe,EAAU,cAAc;AAC7D;AA8EO,SAAS,YAQd,oBAGA,SAOsE;AAEtE,MAAI;AACJ,MAAI;AAQJ,MAAI,OAAO,uBAAuB,YAAY;AAE5C,gBAAY;AACZ,oBAAgB;AAAA,EAClB,OAAO;AAEL,gBAAY;AACZ,oBAAgB,KAAK,OAAO;AAAA,EAC9B;AAGA,QAAM,IAAI,CAAC,YAA4C,cAAc,OAAO;AAC5E,IAAE,YAAY;AACd,IAAE,cAAc,IAAI;AACpB,SAAO;AACT;AAyCO,SAAS,sBAAsB;AACpC,SAAO;AACT;AAkCA,SAAS,yBASP,UACA,MACA,WACA,eACA,SAC6C;AAC7C,QAAM,EAAC,cAAa;AAGpB,QAAM,UAAU,CAAC,SAAoB;AACnC,QAAI,SAAS;AACX,YAAM,IAAI,MAAM,kBAAkB;AAAA,IACpC;AACA,UAAM,YAAY,cAAc,MAAM,MAAM,WAAW,OAAO;AAC9D,WAAO;AAAA,MACL;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IAAA;AAAA,EAEJ;AAGA,UAAQ,UAAU,CAAC,QAAW;AAC5B,QAAI,CAAC,SAAS;AACZ,YAAM,IAAI,MAAM,cAAc;AAAA,IAChC;AAEA,WAAO;AAAA,MACL,SAAS;AAAA,QACP,MAAM;AAAA,QACN;AAAA,MAAA,CACD;AAAA,IAAA,EACD;AAAA,MACA;AAAA;AAAA;AAAA,MAGA,cAAc,SACV,CAAA,IACA,CAAC,SAAyC;AAAA,IAAA;AAAA,EAElD;AAGA,UAAQ,cAAc,IAAI;AAE1B,SAAO;AACT;AAuEO,SAAS,cACd,YACA,WACoB;AACpB,WAAS,mBACP,aACA,MAC8B;AAC9B,UAAM,SAAuC;AAAA,MAC3C,CAAC,gBAAgB,GAAG;AAAA,IAAA;AAGtB,eAAW,CAAC,KAAK,KAAK,KAAK,OAAO,QAAQ,WAAW,GAAG;AACtD,WAAK,KAAK,GAAG;AACb,YAAM,cAAc,KAAK,KAAK,GAAG;AAEjC,UAAI,kBAAkB,KAAK,GAAG;AAC5B,eAAO,GAAG,IAAI;AAAA,UACZ;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,QAAA;AAAA,MAEJ,OAAO;AAEL,eAAO,GAAG,IAAI;AAAA,UACZ;AAAA,UACA;AAAA,QAAA;AAAA,MAEJ;AACA,WAAK,IAAA;AAAA,IACP;AAEA,WAAO;AAAA,EACT;AAEA,MAAI,cAAc,QAAW;AAG3B,QAAI;AACJ,QAAI,CAAC,gBAAgB,UAAU,GAAG;AAChC,aAAO,mBAAmB,YAAkB,EAAE;AAAA,IAChD,OAAO;AACL,aAAO;AAAA,IACT;AAEA,UAAM,YAAY,mBAAmB,WAAW,EAAE;AAElD,UAAM,SAAS,UAAU,MAAM,SAAS;AACxC,WAAO,gBAAgB,IAAI;AAC3B,WAAO;AAAA,EACT;AAEA,SAAO,mBAAmB,YAAkB,EAAE;AAChD;AA8CO,SAAS,wBAAwB;AACtC,SAAO;AACT;AAwBO,SAAS,SACd,SACA,MAUY;AACZ,SAAO,eAAe,SAAS,MAAM,MAAM;AAU7C;AAEO,SAAS,aAId,SACA,MAQA;AACA,QAAM,IAAI,SAAS,SAAS,IAAI;AAChC,MAAI,CAAC,GAAG;AACN,UAAM,IAAI,MAAM,oBAAoB,IAAI,EAAE;AAAA,EAC5C;AACA,SAAO;AACT;"}
@@ -1,7 +1,7 @@
1
1
  import type { Expand, ExpandRecursive } from '../../../shared/src/expand.ts';
2
2
  import { type SimpleOperator } from '../../../zero-protocol/src/ast.ts';
3
- import type { Schema, Schema as ZeroSchema, LastInTuple, TableSchema } from '../../../zero-types/src/schema.ts';
4
3
  import type { SchemaValueToTSType, SchemaValueWithCustomType } from '../../../zero-types/src/schema-value.ts';
4
+ import type { LastInTuple, Schema, TableSchema, Schema as ZeroSchema } from '../../../zero-types/src/schema.ts';
5
5
  import type { ExpressionFactory, ParameterReference } from './expression.ts';
6
6
  import type { TTL } from './ttl.ts';
7
7
  type Selector<E extends TableSchema> = keyof E['columns'];
@@ -14,7 +14,7 @@ type JsonSelectors<E extends TableSchema> = {
14
14
  type ArraySelectors<E extends TableSchema> = {
15
15
  [K in keyof E['columns']]: E['columns'][K] extends SchemaValueWithCustomType<any[]> ? K : never;
16
16
  }[keyof E['columns']];
17
- export type QueryReturn<Q> = Q extends Query<any, any, infer R, any> ? R : never;
17
+ export type QueryReturn<Q> = Q extends Query<any, any, infer R> ? R : never;
18
18
  export type QueryTable<Q> = Q extends Query<any, infer T, any> ? T : never;
19
19
  export type ExistsOptions = {
20
20
  flip: boolean;
@@ -66,22 +66,21 @@ export type QueryResultType<Q> = Q extends Query<ZeroSchema, string, any> | ((..
66
66
  * @typeParam TSchema The database schema type extending ZeroSchema
67
67
  * @typeParam TTable The name of the table being queried, must be a key of TSchema['tables']
68
68
  * @typeParam TReturn The return type of the query, defaults to PullRow<TTable, TSchema>
69
- * @typeParam TContext The context type required for named queries, defaults to unknown
70
69
  */
71
- export interface Query<TSchema extends ZeroSchema, TTable extends keyof TSchema['tables'] & string, TReturn = PullRow<TTable, TSchema>, TContext = unknown> {
72
- related<TRelationship extends AvailableRelationships<TTable, TSchema>>(relationship: TRelationship): Query<TSchema, TTable, AddSubreturn<TReturn, DestRow<TTable, TSchema, TRelationship>, TRelationship>, TContext>;
73
- related<TRelationship extends AvailableRelationships<TTable, TSchema>, TSub extends Query<TSchema, string, any>>(relationship: TRelationship, cb: (q: Query<TSchema, DestTableName<TTable, TSchema, TRelationship>, DestRow<TTable, TSchema, TRelationship>>) => TSub): Query<TSchema, TTable, AddSubreturn<TReturn, TSub extends Query<TSchema, string, infer TSubReturn> ? TSubReturn : never, TRelationship>, TContext>;
74
- where<TSelector extends NoCompoundTypeSelector<PullTableSchema<TTable, TSchema>>, TOperator extends SimpleOperator>(field: TSelector, op: TOperator, value: GetFilterType<PullTableSchema<TTable, TSchema>, TSelector, TOperator> | ParameterReference): Query<TSchema, TTable, TReturn, TContext>;
75
- where<TSelector extends NoCompoundTypeSelector<PullTableSchema<TTable, TSchema>>>(field: TSelector, value: GetFilterType<PullTableSchema<TTable, TSchema>, TSelector, '='> | ParameterReference): Query<TSchema, TTable, TReturn, TContext>;
76
- where(expressionFactory: ExpressionFactory<TSchema, TTable>): Query<TSchema, TTable, TReturn, TContext>;
77
- whereExists(relationship: AvailableRelationships<TTable, TSchema>, options?: ExistsOptions): Query<TSchema, TTable, TReturn, TContext>;
78
- whereExists<TRelationship extends AvailableRelationships<TTable, TSchema>>(relationship: TRelationship, cb: (q: Query<TSchema, DestTableName<TTable, TSchema, TRelationship>>) => Query<TSchema, string>, options?: ExistsOptions): Query<TSchema, TTable, TReturn, TContext>;
70
+ export interface Query<TSchema extends ZeroSchema, TTable extends keyof TSchema['tables'] & string, TReturn = PullRow<TTable, TSchema>> extends ToQuery<TSchema, TTable, TReturn, unknown> {
71
+ related<TRelationship extends AvailableRelationships<TTable, TSchema>>(relationship: TRelationship): Query<TSchema, TTable, AddSubreturn<TReturn, DestRow<TTable, TSchema, TRelationship>, TRelationship>>;
72
+ related<TRelationship extends AvailableRelationships<TTable, TSchema>, TSub extends Query<TSchema, string, any>>(relationship: TRelationship, cb: (q: Query<TSchema, DestTableName<TTable, TSchema, TRelationship>, DestRow<TTable, TSchema, TRelationship>>) => TSub): Query<TSchema, TTable, AddSubreturn<TReturn, TSub extends Query<TSchema, string, infer TSubReturn> ? TSubReturn : never, TRelationship>>;
73
+ where<TSelector extends NoCompoundTypeSelector<PullTableSchema<TTable, TSchema>>, TOperator extends SimpleOperator>(field: TSelector, op: TOperator, value: GetFilterType<PullTableSchema<TTable, TSchema>, TSelector, TOperator> | ParameterReference): Query<TSchema, TTable, TReturn>;
74
+ where<TSelector extends NoCompoundTypeSelector<PullTableSchema<TTable, TSchema>>>(field: TSelector, value: GetFilterType<PullTableSchema<TTable, TSchema>, TSelector, '='> | ParameterReference): Query<TSchema, TTable, TReturn>;
75
+ where(expressionFactory: ExpressionFactory<TSchema, TTable>): Query<TSchema, TTable, TReturn>;
76
+ whereExists(relationship: AvailableRelationships<TTable, TSchema>, options?: ExistsOptions): Query<TSchema, TTable, TReturn>;
77
+ whereExists<TRelationship extends AvailableRelationships<TTable, TSchema>>(relationship: TRelationship, cb: (q: Query<TSchema, DestTableName<TTable, TSchema, TRelationship>>) => Query<TSchema, string>, options?: ExistsOptions): Query<TSchema, TTable, TReturn>;
79
78
  start(row: Partial<PullRow<TTable, TSchema>>, opts?: {
80
79
  inclusive: boolean;
81
- }): Query<TSchema, TTable, TReturn, TContext>;
82
- limit(limit: number): Query<TSchema, TTable, TReturn, TContext>;
83
- orderBy<TSelector extends Selector<PullTableSchema<TTable, TSchema>>>(field: TSelector, direction: 'asc' | 'desc'): Query<TSchema, TTable, TReturn, TContext>;
84
- one(): Query<TSchema, TTable, TReturn | undefined, TContext>;
80
+ }): Query<TSchema, TTable, TReturn>;
81
+ limit(limit: number): Query<TSchema, TTable, TReturn>;
82
+ orderBy<TSelector extends Selector<PullTableSchema<TTable, TSchema>>>(field: TSelector, direction: 'asc' | 'desc'): Query<TSchema, TTable, TReturn>;
83
+ one(): Query<TSchema, TTable, TReturn | undefined>;
85
84
  }
86
85
  export type PreloadOptions = {
87
86
  /**
@@ -125,6 +124,21 @@ export declare const DEFAULT_RUN_OPTIONS_UNKNOWN: {
125
124
  export declare const DEFAULT_RUN_OPTIONS_COMPLETE: {
126
125
  readonly type: "complete";
127
126
  };
128
- export type AnyQuery = Query<Schema, string, any, any>;
127
+ export type AnyQuery = Query<Schema, string, any>;
128
+ /**
129
+ * An interface for objects that can be converted to a {@link Query}.
130
+ *
131
+ * This is useful for creating lazy or deferred queries that are only
132
+ * materialized when needed, allowing the query to be constructed with
133
+ * runtime context.
134
+ *
135
+ * @template S - The schema type
136
+ * @template T - The table name (must be a key of S['tables'])
137
+ * @template R - The return type of the query
138
+ * @template C - The context type passed to {@link toQuery}
139
+ */
140
+ export interface ToQuery<S extends Schema, T extends keyof S['tables'] & string, R, C> {
141
+ toQuery(context: C): Query<S, T, R>;
142
+ }
129
143
  export {};
130
144
  //# sourceMappingURL=query.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"query.d.ts","sourceRoot":"","sources":["../../../../../zql/src/query/query.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"query.d.ts","sourceRoot":"","sources":["../../../../../zql/src/query/query.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ import type { Schema } from '../../../zero-types/src/schema.ts';
2
+ import type { Query } from './query.ts';
3
+ export type SchemaQuery<S extends Schema> = {
4
+ readonly [K in keyof S['tables'] & string]: Query<S, K>;
5
+ };
6
+ //# sourceMappingURL=schema-query.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schema-query.d.ts","sourceRoot":"","sources":["../../../../../zql/src/query/schema-query.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,MAAM,EAAC,MAAM,mCAAmC,CAAC;AAC9D,OAAO,KAAK,EAAC,KAAK,EAAC,MAAM,YAAY,CAAC;AAEtC,MAAM,MAAM,WAAW,CAAC,CAAC,SAAS,MAAM,IAAI;IAK1C,QAAQ,EAAE,CAAC,IAAI,MAAM,CAAC,CAAC,QAAQ,CAAC,GAAG,MAAM,GAAG,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC;CACxD,CAAC"}
@@ -5,14 +5,14 @@ import { ExpressionBuilder } from './expression.ts';
5
5
  import type { CustomQueryID } from './named.ts';
6
6
  import { AbstractQuery } from './query-impl.ts';
7
7
  import type { PullRow, Query } from './query.ts';
8
- export declare function staticQuery<TSchema extends Schema, TTable extends keyof TSchema['tables'] & string, TReturn = PullRow<TTable, TSchema>, TContext = unknown>(schema: TSchema, tableName: TTable): Query<TSchema, TTable, TReturn, TContext>;
8
+ export declare function staticQuery<TSchema extends Schema, TTable extends keyof TSchema['tables'] & string, TReturn = PullRow<TTable, TSchema>>(schema: TSchema, tableName: TTable): Query<TSchema, TTable, TReturn>;
9
9
  /**
10
10
  * A query that cannot be run.
11
11
  * Only serves to generate ASTs.
12
12
  */
13
- export declare class StaticQuery<TSchema extends Schema, TTable extends keyof TSchema['tables'] & string, TReturn = PullRow<TTable, TSchema>, TContext = unknown> extends AbstractQuery<TSchema, TTable, TReturn, TContext> {
13
+ export declare class StaticQuery<TSchema extends Schema, TTable extends keyof TSchema['tables'] & string, TReturn = PullRow<TTable, TSchema>> extends AbstractQuery<TSchema, TTable, TReturn> {
14
14
  constructor(schema: TSchema, tableName: TTable, ast: AST, format: Format, system?: System, customQueryID?: CustomQueryID, currentJunction?: string);
15
15
  expressionBuilder(): ExpressionBuilder<Schema, string>;
16
16
  }
17
- export declare function asStaticQuery<TSchema extends Schema, TTable extends keyof TSchema['tables'] & string, TReturn, TContext>(q: Query<TSchema, TTable, TReturn, TContext>): StaticQuery<TSchema, TTable, TReturn, TContext>;
17
+ export declare function asStaticQuery<TSchema extends Schema, TTable extends keyof TSchema['tables'] & string, TReturn>(q: Query<TSchema, TTable, TReturn>): StaticQuery<TSchema, TTable, TReturn>;
18
18
  //# sourceMappingURL=static-query.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"static-query.d.ts","sourceRoot":"","sources":["../../../../../zql/src/query/static-query.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAC,GAAG,EAAE,MAAM,EAAC,MAAM,mCAAmC,CAAC;AACnE,OAAO,KAAK,EAAC,MAAM,EAAC,MAAM,mCAAmC,CAAC;AAE9D,OAAO,KAAK,EAAC,MAAM,EAAC,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAC,iBAAiB,EAAC,MAAM,iBAAiB,CAAC;AAClD,OAAO,KAAK,EAAC,aAAa,EAAC,MAAM,YAAY,CAAC;AAC9C,OAAO,EAAC,aAAa,EAAC,MAAM,iBAAiB,CAAC;AAC9C,OAAO,KAAK,EAAC,OAAO,EAAE,KAAK,EAAC,MAAM,YAAY,CAAC;AAE/C,wBAAgB,WAAW,CACzB,OAAO,SAAS,MAAM,EACtB,MAAM,SAAS,MAAM,OAAO,CAAC,QAAQ,CAAC,GAAG,MAAM,EAC/C,OAAO,GAAG,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,EAClC,QAAQ,GAAG,OAAO,EAElB,MAAM,EAAE,OAAO,EACf,SAAS,EAAE,MAAM,GAChB,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,CAAC,CAO3C;AAED;;;GAGG;AACH,qBAAa,WAAW,CACtB,OAAO,SAAS,MAAM,EACtB,MAAM,SAAS,MAAM,OAAO,CAAC,QAAQ,CAAC,GAAG,MAAM,EAC/C,OAAO,GAAG,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,EAClC,QAAQ,GAAG,OAAO,CAClB,SAAQ,aAAa,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,CAAC;gBAEvD,MAAM,EAAE,OAAO,EACf,SAAS,EAAE,MAAM,EACjB,GAAG,EAAE,GAAG,EACR,MAAM,EAAE,MAAM,EACd,MAAM,GAAE,MAAsB,EAC9B,aAAa,CAAC,EAAE,aAAa,EAC7B,eAAe,CAAC,EAAE,MAAM;IAuB1B,iBAAiB;CAGlB;AAED,wBAAgB,aAAa,CAC3B,OAAO,SAAS,MAAM,EACtB,MAAM,SAAS,MAAM,OAAO,CAAC,QAAQ,CAAC,GAAG,MAAM,EAC/C,OAAO,EACP,QAAQ,EAER,CAAC,EAAE,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,CAAC,GAC3C,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,CAAC,CAGjD"}
1
+ {"version":3,"file":"static-query.d.ts","sourceRoot":"","sources":["../../../../../zql/src/query/static-query.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAC,GAAG,EAAE,MAAM,EAAC,MAAM,mCAAmC,CAAC;AACnE,OAAO,KAAK,EAAC,MAAM,EAAC,MAAM,mCAAmC,CAAC;AAE9D,OAAO,KAAK,EAAC,MAAM,EAAC,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAC,iBAAiB,EAAC,MAAM,iBAAiB,CAAC;AAClD,OAAO,KAAK,EAAC,aAAa,EAAC,MAAM,YAAY,CAAC;AAC9C,OAAO,EAAC,aAAa,EAAC,MAAM,iBAAiB,CAAC;AAC9C,OAAO,KAAK,EAAC,OAAO,EAAE,KAAK,EAAC,MAAM,YAAY,CAAC;AAE/C,wBAAgB,WAAW,CACzB,OAAO,SAAS,MAAM,EACtB,MAAM,SAAS,MAAM,OAAO,CAAC,QAAQ,CAAC,GAAG,MAAM,EAC/C,OAAO,GAAG,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,EAClC,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,GAAG,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,CAOrE;AAED;;;GAGG;AACH,qBAAa,WAAW,CACtB,OAAO,SAAS,MAAM,EACtB,MAAM,SAAS,MAAM,OAAO,CAAC,QAAQ,CAAC,GAAG,MAAM,EAC/C,OAAO,GAAG,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,CAClC,SAAQ,aAAa,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC;gBAE7C,MAAM,EAAE,OAAO,EACf,SAAS,EAAE,MAAM,EACjB,GAAG,EAAE,GAAG,EACR,MAAM,EAAE,MAAM,EACd,MAAM,GAAE,MAAsB,EAC9B,aAAa,CAAC,EAAE,aAAa,EAC7B,eAAe,CAAC,EAAE,MAAM;IAuB1B,iBAAiB;CAGlB;AAED,wBAAgB,aAAa,CAC3B,OAAO,SAAS,MAAM,EACtB,MAAM,SAAS,MAAM,OAAO,CAAC,QAAQ,CAAC,GAAG,MAAM,EAC/C,OAAO,EACP,CAAC,EAAE,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,GAAG,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,CAG3E"}
@@ -1,24 +1,47 @@
1
1
  import { assert } from "../../../shared/src/asserts.js";
2
- import { defaultFormat } from "../ivm/default-format.js";
2
+ import { defaultFormat } from "../../../zero-types/src/format.js";
3
3
  import { ExpressionBuilder } from "./expression.js";
4
4
  import { AbstractQuery } from "./query-impl.js";
5
- export function staticQuery(schema, tableName) {
6
- return new StaticQuery(schema, tableName, { table: tableName }, defaultFormat);
5
+ function staticQuery(schema, tableName) {
6
+ return new StaticQuery(
7
+ schema,
8
+ tableName,
9
+ { table: tableName },
10
+ defaultFormat
11
+ );
7
12
  }
8
- /**
9
- * A query that cannot be run.
10
- * Only serves to generate ASTs.
11
- */
12
- export class StaticQuery extends AbstractQuery {
13
- constructor(schema, tableName, ast, format, system = 'permissions', customQueryID, currentJunction) {
14
- super(schema, tableName, ast, format, system, customQueryID, currentJunction, (tableName, ast, format, _customQueryID, _currentJunction) => new StaticQuery(schema, tableName, ast, format, system, customQueryID, currentJunction));
15
- }
16
- expressionBuilder() {
17
- return new ExpressionBuilder(this._exists);
18
- }
13
+ class StaticQuery extends AbstractQuery {
14
+ constructor(schema, tableName, ast, format, system = "permissions", customQueryID, currentJunction) {
15
+ super(
16
+ schema,
17
+ tableName,
18
+ ast,
19
+ format,
20
+ system,
21
+ customQueryID,
22
+ currentJunction,
23
+ (tableName2, ast2, format2, _customQueryID, _currentJunction) => new StaticQuery(
24
+ schema,
25
+ tableName2,
26
+ ast2,
27
+ format2,
28
+ system,
29
+ customQueryID,
30
+ currentJunction
31
+ )
32
+ );
33
+ }
34
+ expressionBuilder() {
35
+ return new ExpressionBuilder(this._exists);
36
+ }
19
37
  }
20
- export function asStaticQuery(q) {
21
- assert(q instanceof StaticQuery);
22
- return q;
38
+ function asStaticQuery(q) {
39
+ assert(q instanceof StaticQuery);
40
+ return q;
23
41
  }
24
- //# sourceMappingURL=static-query.js.map
42
+ export {
43
+ StaticQuery,
44
+ asStaticQuery,
45
+ staticQuery
46
+ };
47
+ //# sourceMappingURL=static-query.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"static-query.js","sourceRoot":"","sources":["../../../../../zql/src/query/static-query.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,MAAM,EAAC,MAAM,gCAAgC,CAAC;AAGtD,OAAO,EAAC,aAAa,EAAC,MAAM,0BAA0B,CAAC;AAEvD,OAAO,EAAC,iBAAiB,EAAC,MAAM,iBAAiB,CAAC;AAElD,OAAO,EAAC,aAAa,EAAC,MAAM,iBAAiB,CAAC;AAG9C,MAAM,UAAU,WAAW,CAMzB,MAAe,EACf,SAAiB;IAEjB,OAAO,IAAI,WAAW,CACpB,MAAM,EACN,SAAS,EACT,EAAC,KAAK,EAAE,SAAS,EAAC,EAClB,aAAa,CACd,CAAC;AACJ,CAAC;AAED;;;GAGG;AACH,MAAM,OAAO,WAKX,SAAQ,aAAiD;IACzD,YACE,MAAe,EACf,SAAiB,EACjB,GAAQ,EACR,MAAc,EACd,SAAiB,aAAa,EAC9B,aAA6B,EAC7B,eAAwB;QAExB,KAAK,CACH,MAAM,EACN,SAAS,EACT,GAAG,EACH,MAAM,EACN,MAAM,EACN,aAAa,EACb,eAAe,EACf,CAAC,SAAS,EAAE,GAAG,EAAE,MAAM,EAAE,cAAc,EAAE,gBAAgB,EAAE,EAAE,CAC3D,IAAI,WAAW,CACb,MAAM,EACN,SAAS,EACT,GAAG,EACH,MAAM,EACN,MAAM,EACN,aAAa,EACb,eAAe,CAChB,CACJ,CAAC;IACJ,CAAC;IAED,iBAAiB;QACf,OAAO,IAAI,iBAAiB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAC7C,CAAC;CACF;AAED,MAAM,UAAU,aAAa,CAM3B,CAA4C;IAE5C,MAAM,CAAC,CAAC,YAAY,WAAW,CAAC,CAAC;IACjC,OAAO,CAAC,CAAC;AACX,CAAC"}
1
+ {"version":3,"file":"static-query.js","sources":["../../../../../zql/src/query/static-query.ts"],"sourcesContent":["import {assert} from '../../../shared/src/asserts.ts';\nimport type {AST, System} from '../../../zero-protocol/src/ast.ts';\nimport type {Schema} from '../../../zero-types/src/schema.ts';\nimport {defaultFormat} from '../ivm/default-format.ts';\nimport type {Format} from '../ivm/view.ts';\nimport {ExpressionBuilder} from './expression.ts';\nimport type {CustomQueryID} from './named.ts';\nimport {AbstractQuery} from './query-impl.ts';\nimport type {PullRow, Query} from './query.ts';\n\nexport function staticQuery<\n TSchema extends Schema,\n TTable extends keyof TSchema['tables'] & string,\n TReturn = PullRow<TTable, TSchema>,\n>(schema: TSchema, tableName: TTable): Query<TSchema, TTable, TReturn> {\n return new StaticQuery<TSchema, TTable, TReturn>(\n schema,\n tableName,\n {table: tableName},\n defaultFormat,\n );\n}\n\n/**\n * A query that cannot be run.\n * Only serves to generate ASTs.\n */\nexport class StaticQuery<\n TSchema extends Schema,\n TTable extends keyof TSchema['tables'] & string,\n TReturn = PullRow<TTable, TSchema>,\n> extends AbstractQuery<TSchema, TTable, TReturn> {\n constructor(\n schema: TSchema,\n tableName: TTable,\n ast: AST,\n format: Format,\n system: System = 'permissions',\n customQueryID?: CustomQueryID,\n currentJunction?: string,\n ) {\n super(\n schema,\n tableName,\n ast,\n format,\n system,\n customQueryID,\n currentJunction,\n (tableName, ast, format, _customQueryID, _currentJunction) =>\n new StaticQuery(\n schema,\n tableName,\n ast,\n format,\n system,\n customQueryID,\n currentJunction,\n ),\n );\n }\n\n expressionBuilder() {\n return new ExpressionBuilder(this._exists);\n }\n}\n\nexport function asStaticQuery<\n TSchema extends Schema,\n TTable extends keyof TSchema['tables'] & string,\n TReturn,\n>(q: Query<TSchema, TTable, TReturn>): StaticQuery<TSchema, TTable, TReturn> {\n assert(q instanceof StaticQuery);\n return q;\n}\n"],"names":["tableName","ast","format"],"mappings":";;;;AAUO,SAAS,YAId,QAAiB,WAAoD;AACrE,SAAO,IAAI;AAAA,IACT;AAAA,IACA;AAAA,IACA,EAAC,OAAO,UAAA;AAAA,IACR;AAAA,EAAA;AAEJ;AAMO,MAAM,oBAIH,cAAwC;AAAA,EAChD,YACE,QACA,WACA,KACA,QACA,SAAiB,eACjB,eACA,iBACA;AACA;AAAA,MACE;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA,CAACA,YAAWC,MAAKC,SAAQ,gBAAgB,qBACvC,IAAI;AAAA,QACF;AAAA,QACAF;AAAAA,QACAC;AAAAA,QACAC;AAAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,MAAA;AAAA,IACF;AAAA,EAEN;AAAA,EAEA,oBAAoB;AAClB,WAAO,IAAI,kBAAkB,KAAK,OAAO;AAAA,EAC3C;AACF;AAEO,SAAS,cAId,GAA2E;AAC3E,SAAO,aAAa,WAAW;AAC/B,SAAO;AACT;"}
@@ -1,69 +1,76 @@
1
- export const DEFAULT_TTL = '5m';
2
- export const DEFAULT_TTL_MS = 1_000 * 60 * 5;
3
- export const DEFAULT_PRELOAD_TTL = 'none';
4
- export const DEFAULT_PRELOAD_TTL_MS = 0;
5
- export const MAX_TTL = '10m';
6
- export const MAX_TTL_MS = 1_000 * 60 * 10;
1
+ const DEFAULT_TTL_MS = 1e3 * 60 * 5;
2
+ const DEFAULT_PRELOAD_TTL_MS = 0;
3
+ const MAX_TTL = "10m";
4
+ const MAX_TTL_MS = 1e3 * 60 * 10;
7
5
  const multiplier = {
8
- s: 1000,
9
- m: 60 * 1000,
10
- h: 60 * 60 * 1000,
11
- d: 24 * 60 * 60 * 1000,
12
- y: 365 * 24 * 60 * 60 * 1000,
6
+ s: 1e3,
7
+ m: 60 * 1e3,
8
+ h: 60 * 60 * 1e3,
9
+ d: 24 * 60 * 60 * 1e3,
10
+ y: 365 * 24 * 60 * 60 * 1e3
13
11
  };
14
- export function parseTTL(ttl) {
15
- if (typeof ttl === 'number') {
16
- return Number.isNaN(ttl) ? 0 : !Number.isFinite(ttl) || ttl < 0 ? -1 : ttl;
17
- }
18
- if (ttl === 'none') {
19
- return 0;
20
- }
21
- if (ttl === 'forever') {
22
- return -1;
23
- }
24
- const multi = multiplier[ttl[ttl.length - 1]];
25
- return Number(ttl.slice(0, -1)) * multi;
12
+ function parseTTL(ttl) {
13
+ if (typeof ttl === "number") {
14
+ return Number.isNaN(ttl) ? 0 : !Number.isFinite(ttl) || ttl < 0 ? -1 : ttl;
15
+ }
16
+ if (ttl === "none") {
17
+ return 0;
18
+ }
19
+ if (ttl === "forever") {
20
+ return -1;
21
+ }
22
+ const multi = multiplier[ttl[ttl.length - 1]];
23
+ return Number(ttl.slice(0, -1)) * multi;
26
24
  }
27
- export function compareTTL(a, b) {
28
- const ap = parseTTL(a);
29
- const bp = parseTTL(b);
30
- if (ap === -1 && bp !== -1) {
31
- return 1;
32
- }
33
- if (ap !== -1 && bp === -1) {
34
- return -1;
35
- }
36
- return ap - bp;
25
+ function compareTTL(a, b) {
26
+ const ap = parseTTL(a);
27
+ const bp = parseTTL(b);
28
+ if (ap === -1 && bp !== -1) {
29
+ return 1;
30
+ }
31
+ if (ap !== -1 && bp === -1) {
32
+ return -1;
33
+ }
34
+ return ap - bp;
37
35
  }
38
- export function normalizeTTL(ttl) {
39
- if (typeof ttl === 'string') {
40
- return ttl;
36
+ function normalizeTTL(ttl) {
37
+ if (typeof ttl === "string") {
38
+ return ttl;
39
+ }
40
+ if (ttl < 0) {
41
+ return "forever";
42
+ }
43
+ if (ttl === 0) {
44
+ return "none";
45
+ }
46
+ let shortest = ttl.toString();
47
+ const lengthOfNumber = shortest.length;
48
+ for (const unit of ["y", "d", "h", "m", "s"]) {
49
+ const multi = multiplier[unit];
50
+ const value = ttl / multi;
51
+ const candidate = `${value}${unit}`;
52
+ if (candidate.length < shortest.length) {
53
+ shortest = candidate;
41
54
  }
42
- if (ttl < 0) {
43
- return 'forever';
44
- }
45
- if (ttl === 0) {
46
- return 'none';
47
- }
48
- let shortest = ttl.toString();
49
- const lengthOfNumber = shortest.length;
50
- for (const unit of ['y', 'd', 'h', 'm', 's']) {
51
- const multi = multiplier[unit];
52
- const value = ttl / multi;
53
- const candidate = `${value}${unit}`;
54
- if (candidate.length < shortest.length) {
55
- shortest = candidate;
56
- }
57
- }
58
- return (shortest.length < lengthOfNumber ? shortest : ttl);
55
+ }
56
+ return shortest.length < lengthOfNumber ? shortest : ttl;
59
57
  }
60
- export function clampTTL(ttl, lc) {
61
- const parsedTTL = parseTTL(ttl);
62
- if (parsedTTL === -1 || parsedTTL > 10 * 60 * 1000) {
63
- // 10 minutes in milliseconds
64
- lc?.warn?.(`TTL (${ttl}) is too high, clamping to ${MAX_TTL}`);
65
- return parseTTL(MAX_TTL);
66
- }
67
- return parsedTTL;
58
+ function clampTTL(ttl, lc) {
59
+ const parsedTTL = parseTTL(ttl);
60
+ if (parsedTTL === -1 || parsedTTL > 10 * 60 * 1e3) {
61
+ lc?.warn?.(`TTL (${ttl}) is too high, clamping to ${MAX_TTL}`);
62
+ return parseTTL(MAX_TTL);
63
+ }
64
+ return parsedTTL;
68
65
  }
69
- //# sourceMappingURL=ttl.js.map
66
+ export {
67
+ DEFAULT_PRELOAD_TTL_MS,
68
+ DEFAULT_TTL_MS,
69
+ MAX_TTL,
70
+ MAX_TTL_MS,
71
+ clampTTL,
72
+ compareTTL,
73
+ normalizeTTL,
74
+ parseTTL
75
+ };
76
+ //# sourceMappingURL=ttl.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ttl.js","sourceRoot":"","sources":["../../../../../zql/src/query/ttl.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ttl.js","sources":["../../../../../zql/src/query/ttl.ts"],"sourcesContent":["import type {LogContext} from '@rocicorp/logger';\n\nexport type TimeUnit = 's' | 'm' | 'h' | 'd' | 'y';\n\n/**\n * Time To Live. This is used for query expiration.\n * - `forever` means the query will never expire.\n * - `none` means the query will expire immediately.\n * - A number means the query will expire after that many milliseconds.\n * - A negative number means the query will never expire, this is same as 'forever'.\n * - A string like `1s` means the query will expire after that many seconds.\n * - A string like `1m` means the query will expire after that many minutes.\n * - A string like `1h` means the query will expire after that many hours.\n * - A string like `1d` means the query will expire after that many days.\n * - A string like `1y` means the query will expire after that many years.\n */\nexport type TTL = `${number}${TimeUnit}` | 'forever' | 'none' | number;\n\nexport const DEFAULT_TTL: TTL = '5m';\nexport const DEFAULT_TTL_MS = 1_000 * 60 * 5;\n\nexport const DEFAULT_PRELOAD_TTL: TTL = 'none';\nexport const DEFAULT_PRELOAD_TTL_MS = 0;\n\nexport const MAX_TTL: TTL = '10m';\nexport const MAX_TTL_MS = 1_000 * 60 * 10;\n\nconst multiplier = {\n s: 1000,\n m: 60 * 1000,\n h: 60 * 60 * 1000,\n d: 24 * 60 * 60 * 1000,\n y: 365 * 24 * 60 * 60 * 1000,\n} as const;\n\nexport function parseTTL(ttl: TTL): number {\n if (typeof ttl === 'number') {\n return Number.isNaN(ttl) ? 0 : !Number.isFinite(ttl) || ttl < 0 ? -1 : ttl;\n }\n if (ttl === 'none') {\n return 0;\n }\n if (ttl === 'forever') {\n return -1;\n }\n const multi = multiplier[ttl[ttl.length - 1] as TimeUnit];\n return Number(ttl.slice(0, -1)) * multi;\n}\n\nexport function compareTTL(a: TTL, b: TTL): number {\n const ap = parseTTL(a);\n const bp = parseTTL(b);\n if (ap === -1 && bp !== -1) {\n return 1;\n }\n if (ap !== -1 && bp === -1) {\n return -1;\n }\n return ap - bp;\n}\n\nexport function normalizeTTL(ttl: TTL): TTL {\n if (typeof ttl === 'string') {\n return ttl;\n }\n\n if (ttl < 0) {\n return 'forever';\n }\n\n if (ttl === 0) {\n return 'none';\n }\n\n let shortest = ttl.toString();\n const lengthOfNumber = shortest.length;\n for (const unit of ['y', 'd', 'h', 'm', 's'] as const) {\n const multi = multiplier[unit];\n const value = ttl / multi;\n const candidate = `${value}${unit}`;\n if (candidate.length < shortest.length) {\n shortest = candidate;\n }\n }\n\n return (shortest.length < lengthOfNumber ? shortest : ttl) as TTL;\n}\n\nexport function clampTTL(ttl: TTL, lc?: Pick<LogContext, 'warn'>): number {\n const parsedTTL = parseTTL(ttl);\n if (parsedTTL === -1 || parsedTTL > 10 * 60 * 1000) {\n // 10 minutes in milliseconds\n lc?.warn?.(`TTL (${ttl}) is too high, clamping to ${MAX_TTL}`);\n return parseTTL(MAX_TTL);\n }\n return parsedTTL;\n}\n"],"names":[],"mappings":"AAmBO,MAAM,iBAAiB,MAAQ,KAAK;AAGpC,MAAM,yBAAyB;AAE/B,MAAM,UAAe;AACrB,MAAM,aAAa,MAAQ,KAAK;AAEvC,MAAM,aAAa;AAAA,EACjB,GAAG;AAAA,EACH,GAAG,KAAK;AAAA,EACR,GAAG,KAAK,KAAK;AAAA,EACb,GAAG,KAAK,KAAK,KAAK;AAAA,EAClB,GAAG,MAAM,KAAK,KAAK,KAAK;AAC1B;AAEO,SAAS,SAAS,KAAkB;AACzC,MAAI,OAAO,QAAQ,UAAU;AAC3B,WAAO,OAAO,MAAM,GAAG,IAAI,IAAI,CAAC,OAAO,SAAS,GAAG,KAAK,MAAM,IAAI,KAAK;AAAA,EACzE;AACA,MAAI,QAAQ,QAAQ;AAClB,WAAO;AAAA,EACT;AACA,MAAI,QAAQ,WAAW;AACrB,WAAO;AAAA,EACT;AACA,QAAM,QAAQ,WAAW,IAAI,IAAI,SAAS,CAAC,CAAa;AACxD,SAAO,OAAO,IAAI,MAAM,GAAG,EAAE,CAAC,IAAI;AACpC;AAEO,SAAS,WAAW,GAAQ,GAAgB;AACjD,QAAM,KAAK,SAAS,CAAC;AACrB,QAAM,KAAK,SAAS,CAAC;AACrB,MAAI,OAAO,MAAM,OAAO,IAAI;AAC1B,WAAO;AAAA,EACT;AACA,MAAI,OAAO,MAAM,OAAO,IAAI;AAC1B,WAAO;AAAA,EACT;AACA,SAAO,KAAK;AACd;AAEO,SAAS,aAAa,KAAe;AAC1C,MAAI,OAAO,QAAQ,UAAU;AAC3B,WAAO;AAAA,EACT;AAEA,MAAI,MAAM,GAAG;AACX,WAAO;AAAA,EACT;AAEA,MAAI,QAAQ,GAAG;AACb,WAAO;AAAA,EACT;AAEA,MAAI,WAAW,IAAI,SAAA;AACnB,QAAM,iBAAiB,SAAS;AAChC,aAAW,QAAQ,CAAC,KAAK,KAAK,KAAK,KAAK,GAAG,GAAY;AACrD,UAAM,QAAQ,WAAW,IAAI;AAC7B,UAAM,QAAQ,MAAM;AACpB,UAAM,YAAY,GAAG,KAAK,GAAG,IAAI;AACjC,QAAI,UAAU,SAAS,SAAS,QAAQ;AACtC,iBAAW;AAAA,IACb;AAAA,EACF;AAEA,SAAQ,SAAS,SAAS,iBAAiB,WAAW;AACxD;AAEO,SAAS,SAAS,KAAU,IAAuC;AACxE,QAAM,YAAY,SAAS,GAAG;AAC9B,MAAI,cAAc,MAAM,YAAY,KAAK,KAAK,KAAM;AAElD,QAAI,OAAO,QAAQ,GAAG,8BAA8B,OAAO,EAAE;AAC7D,WAAO,SAAS,OAAO;AAAA,EACzB;AACA,SAAO;AACT;"}
@@ -0,0 +1,15 @@
1
+ import type { StandardSchemaV1 } from '@standard-schema/spec';
2
+ /**
3
+ * Validates input using a StandardSchema validator if provided.
4
+ * This is shared validation logic used by both defineQuery and defineMutator.
5
+ *
6
+ * @param name - The name of the query or mutator (for error messages)
7
+ * @param input - The input value to validate
8
+ * @param validator - Optional StandardSchema validator
9
+ * @param kind - Type of definition ('query' or 'mutator') for error messages
10
+ * @returns The validated output (either transformed by validator or input as-is)
11
+ * @throws Error if validation fails or if an async validator is used
12
+ * @internal
13
+ */
14
+ export declare function validateInput<TInput, TOutput>(name: string, input: TInput, validator: StandardSchemaV1<TInput, TOutput> | undefined, kind: 'query' | 'mutator'): TOutput;
15
+ //# sourceMappingURL=validate-input.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"validate-input.d.ts","sourceRoot":"","sources":["../../../../../zql/src/query/validate-input.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,gBAAgB,EAAC,MAAM,uBAAuB,CAAC;AAE5D;;;;;;;;;;;GAWG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE,OAAO,EAC3C,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,MAAM,EACb,SAAS,EAAE,gBAAgB,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,EACxD,IAAI,EAAE,OAAO,GAAG,SAAS,GACxB,OAAO,CAoBT"}
@@ -0,0 +1,24 @@
1
+ function validateInput(name, input, validator, kind) {
2
+ if (!validator) {
3
+ return input;
4
+ }
5
+ const result = validator["~standard"].validate(input);
6
+ if (result instanceof Promise) {
7
+ throw new Error(
8
+ `Async validators are not supported. ${titleCase(kind)} name ${name}`
9
+ );
10
+ }
11
+ if (result.issues) {
12
+ throw new Error(
13
+ `Validation failed for ${kind} ${name}: ${result.issues.map((issue) => issue.message).join(", ")}`
14
+ );
15
+ }
16
+ return result.value;
17
+ }
18
+ function titleCase(kind) {
19
+ return kind.charAt(0).toUpperCase() + kind.slice(1);
20
+ }
21
+ export {
22
+ validateInput
23
+ };
24
+ //# sourceMappingURL=validate-input.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"validate-input.js","sources":["../../../../../zql/src/query/validate-input.ts"],"sourcesContent":["import type {StandardSchemaV1} from '@standard-schema/spec';\n\n/**\n * Validates input using a StandardSchema validator if provided.\n * This is shared validation logic used by both defineQuery and defineMutator.\n *\n * @param name - The name of the query or mutator (for error messages)\n * @param input - The input value to validate\n * @param validator - Optional StandardSchema validator\n * @param kind - Type of definition ('query' or 'mutator') for error messages\n * @returns The validated output (either transformed by validator or input as-is)\n * @throws Error if validation fails or if an async validator is used\n * @internal\n */\nexport function validateInput<TInput, TOutput>(\n name: string,\n input: TInput,\n validator: StandardSchemaV1<TInput, TOutput> | undefined,\n kind: 'query' | 'mutator',\n): TOutput {\n if (!validator) {\n // No validator, so input and output are the same\n return input as unknown as TOutput;\n }\n\n const result = validator['~standard'].validate(input);\n if (result instanceof Promise) {\n throw new Error(\n `Async validators are not supported. ${titleCase(kind)} name ${name}`,\n );\n }\n if (result.issues) {\n throw new Error(\n `Validation failed for ${kind} ${name}: ${result.issues\n .map(issue => issue.message)\n .join(', ')}`,\n );\n }\n return result.value;\n}\n\nfunction titleCase(kind: string): string {\n return kind.charAt(0).toUpperCase() + kind.slice(1);\n}\n"],"names":[],"mappings":"AAcO,SAAS,cACd,MACA,OACA,WACA,MACS;AACT,MAAI,CAAC,WAAW;AAEd,WAAO;AAAA,EACT;AAEA,QAAM,SAAS,UAAU,WAAW,EAAE,SAAS,KAAK;AACpD,MAAI,kBAAkB,SAAS;AAC7B,UAAM,IAAI;AAAA,MACR,uCAAuC,UAAU,IAAI,CAAC,SAAS,IAAI;AAAA,IAAA;AAAA,EAEvE;AACA,MAAI,OAAO,QAAQ;AACjB,UAAM,IAAI;AAAA,MACR,yBAAyB,IAAI,IAAI,IAAI,KAAK,OAAO,OAC9C,IAAI,CAAA,UAAS,MAAM,OAAO,EAC1B,KAAK,IAAI,CAAC;AAAA,IAAA;AAAA,EAEjB;AACA,SAAO,OAAO;AAChB;AAEA,SAAS,UAAU,MAAsB;AACvC,SAAO,KAAK,OAAO,CAAC,EAAE,gBAAgB,KAAK,MAAM,CAAC;AACpD;"}
@@ -1,4 +1,4 @@
1
- import { LogContext } from '@rocicorp/logger';
1
+ import type { LogContext } from '@rocicorp/logger';
2
2
  import type { Storage } from '../../zql/src/ivm/operator.ts';
3
3
  import { Database } from './db.ts';
4
4
  export interface ClientGroupStorage {
@@ -1 +1 @@
1
- {"version":3,"file":"database-storage.d.ts","sourceRoot":"","sources":["../../../../zqlite/src/database-storage.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,UAAU,EAAC,MAAM,kBAAkB,CAAC;AAE5C,OAAO,KAAK,EAAC,OAAO,EAAC,MAAM,+BAA+B,CAAC;AAE3D,OAAO,EAAC,QAAQ,EAAY,MAAM,SAAS,CAAC;AAE5C,MAAM,WAAW,kBAAkB;IACjC,gEAAgE;IAChE,aAAa,IAAI,OAAO,CAAC;IAEzB,gDAAgD;IAChD,OAAO,IAAI,IAAI,CAAC;CACjB;AAaD,eAAO,MAAM,oBAAoB,wJAQ9B,CAAC;AAOJ,qBAAa,eAAe;;IAC1B,MAAM,CAAC,MAAM,CACX,EAAE,EAAE,UAAU,EACd,IAAI,EAAE,MAAM,EACZ,OAAO;;;KAAiB,GACvB,eAAe;gBAwBN,EAAE,EAAE,QAAQ,EAAE,OAAO;;;KAAiB;IAgClD,KAAK;IA6DL,wBAAwB,CAAC,IAAI,EAAE,MAAM,GAAG,kBAAkB;CAuB3D"}
1
+ {"version":3,"file":"database-storage.d.ts","sourceRoot":"","sources":["../../../../zqlite/src/database-storage.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,kBAAkB,CAAC;AAEjD,OAAO,KAAK,EAAC,OAAO,EAAC,MAAM,+BAA+B,CAAC;AAG3D,OAAO,EAAC,QAAQ,EAAC,MAAM,SAAS,CAAC;AAEjC,MAAM,WAAW,kBAAkB;IACjC,gEAAgE;IAChE,aAAa,IAAI,OAAO,CAAC;IAEzB,gDAAgD;IAChD,OAAO,IAAI,IAAI,CAAC;CACjB;AAaD,eAAO,MAAM,oBAAoB,wJAQ9B,CAAC;AAOJ,qBAAa,eAAe;;IAC1B,MAAM,CAAC,MAAM,CACX,EAAE,EAAE,UAAU,EACd,IAAI,EAAE,MAAM,EACZ,OAAO;;;KAAiB,GACvB,eAAe;gBAwBN,EAAE,EAAE,QAAQ,EAAE,OAAO;;;KAAiB;IAgClD,KAAK;IA6DL,wBAAwB,CAAC,IAAI,EAAE,MAAM,GAAG,kBAAkB;CAuB3D"}