@rocicorp/zero 0.26.1 → 0.26.2-canary.1

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 (1086) hide show
  1. package/out/_virtual/_@oxc-project_runtime@0.115.0/helpers/usingCtx.js +57 -0
  2. package/out/_virtual/_rolldown/runtime.js +27 -0
  3. package/out/analyze-query/src/bin-analyze.js +195 -283
  4. package/out/analyze-query/src/bin-analyze.js.map +1 -1
  5. package/out/analyze-query/src/bin-transform.js +35 -40
  6. package/out/analyze-query/src/bin-transform.js.map +1 -1
  7. package/out/analyze-query/src/explain-queries.js +11 -13
  8. package/out/analyze-query/src/explain-queries.js.map +1 -1
  9. package/out/analyze-query/src/run-ast.js +68 -103
  10. package/out/analyze-query/src/run-ast.js.map +1 -1
  11. package/out/ast-to-zql/src/ast-to-zql.js +105 -153
  12. package/out/ast-to-zql/src/ast-to-zql.js.map +1 -1
  13. package/out/ast-to-zql/src/bin.js +57 -62
  14. package/out/ast-to-zql/src/bin.js.map +1 -1
  15. package/out/ast-to-zql/src/format.js +14 -13
  16. package/out/ast-to-zql/src/format.js.map +1 -1
  17. package/out/datadog/src/datadog-log-sink.js +148 -213
  18. package/out/datadog/src/datadog-log-sink.js.map +1 -1
  19. package/out/otel/src/enabled.js +9 -11
  20. package/out/otel/src/enabled.js.map +1 -1
  21. package/out/otel/src/log-options.js +25 -35
  22. package/out/otel/src/log-options.js.map +1 -1
  23. package/out/otel/src/maybe-time.js +13 -14
  24. package/out/otel/src/maybe-time.js.map +1 -1
  25. package/out/otel/src/span.js +23 -26
  26. package/out/otel/src/span.js.map +1 -1
  27. package/out/otel/src/test-log-config.js +11 -10
  28. package/out/otel/src/test-log-config.js.map +1 -1
  29. package/out/otel/src/version.js +6 -5
  30. package/out/otel/src/version.js.map +1 -1
  31. package/out/replicache/src/async-iterable-to-array.js +8 -9
  32. package/out/replicache/src/async-iterable-to-array.js.map +1 -1
  33. package/out/replicache/src/bg-interval.js +28 -35
  34. package/out/replicache/src/bg-interval.js.map +1 -1
  35. package/out/replicache/src/btree/diff.js +6 -5
  36. package/out/replicache/src/btree/diff.js.map +1 -1
  37. package/out/replicache/src/btree/node.js +281 -372
  38. package/out/replicache/src/btree/node.js.map +1 -1
  39. package/out/replicache/src/btree/read.js +155 -256
  40. package/out/replicache/src/btree/read.js.map +1 -1
  41. package/out/replicache/src/btree/splice.js +60 -80
  42. package/out/replicache/src/btree/splice.js.map +1 -1
  43. package/out/replicache/src/btree/write.js +134 -158
  44. package/out/replicache/src/btree/write.js.map +1 -1
  45. package/out/replicache/src/call-default-fetch.js +28 -32
  46. package/out/replicache/src/call-default-fetch.js.map +1 -1
  47. package/out/replicache/src/config.js +2 -0
  48. package/out/replicache/src/connection-loop-delegates.js +31 -33
  49. package/out/replicache/src/connection-loop-delegates.js.map +1 -1
  50. package/out/replicache/src/connection-loop.js +174 -240
  51. package/out/replicache/src/connection-loop.js.map +1 -1
  52. package/out/replicache/src/cookies.js +22 -32
  53. package/out/replicache/src/cookies.js.map +1 -1
  54. package/out/replicache/src/dag/chunk.js +44 -50
  55. package/out/replicache/src/dag/chunk.js.map +1 -1
  56. package/out/replicache/src/dag/gc.js +94 -114
  57. package/out/replicache/src/dag/gc.js.map +1 -1
  58. package/out/replicache/src/dag/key.js +9 -11
  59. package/out/replicache/src/dag/key.js.map +1 -1
  60. package/out/replicache/src/dag/lazy-store.js +458 -510
  61. package/out/replicache/src/dag/lazy-store.js.map +1 -1
  62. package/out/replicache/src/dag/store-impl.js +147 -178
  63. package/out/replicache/src/dag/store-impl.js.map +1 -1
  64. package/out/replicache/src/dag/store.js +19 -22
  65. package/out/replicache/src/dag/store.js.map +1 -1
  66. package/out/replicache/src/dag/visitor.js +23 -21
  67. package/out/replicache/src/dag/visitor.js.map +1 -1
  68. package/out/replicache/src/db/commit.js +209 -283
  69. package/out/replicache/src/db/commit.js.map +1 -1
  70. package/out/replicache/src/db/index.js +79 -122
  71. package/out/replicache/src/db/index.js.map +1 -1
  72. package/out/replicache/src/db/read.js +44 -60
  73. package/out/replicache/src/db/read.js.map +1 -1
  74. package/out/replicache/src/db/rebase.js +22 -77
  75. package/out/replicache/src/db/rebase.js.map +1 -1
  76. package/out/replicache/src/db/write.js +162 -296
  77. package/out/replicache/src/db/write.js.map +1 -1
  78. package/out/replicache/src/deleted-clients.js +59 -87
  79. package/out/replicache/src/deleted-clients.js.map +1 -1
  80. package/out/replicache/src/error-responses.js +18 -26
  81. package/out/replicache/src/error-responses.js.map +1 -1
  82. package/out/replicache/src/expo-sqlite.js +2 -0
  83. package/out/replicache/src/frozen-json.js +74 -108
  84. package/out/replicache/src/frozen-json.js.map +1 -1
  85. package/out/replicache/src/get-default-puller.js +34 -46
  86. package/out/replicache/src/get-default-puller.js.map +1 -1
  87. package/out/replicache/src/get-default-pusher.js +25 -33
  88. package/out/replicache/src/get-default-pusher.js.map +1 -1
  89. package/out/replicache/src/get-kv-store-provider.js +18 -20
  90. package/out/replicache/src/get-kv-store-provider.js.map +1 -1
  91. package/out/replicache/src/hash.js +29 -29
  92. package/out/replicache/src/hash.js.map +1 -1
  93. package/out/replicache/src/http-request-info.js +9 -8
  94. package/out/replicache/src/http-request-info.js.map +1 -1
  95. package/out/replicache/src/impl.js +2 -0
  96. package/out/replicache/src/index-defs.js +17 -28
  97. package/out/replicache/src/index-defs.js.map +1 -1
  98. package/out/replicache/src/kv/expo-sqlite/store.js +52 -50
  99. package/out/replicache/src/kv/expo-sqlite/store.js.map +1 -1
  100. package/out/replicache/src/kv/idb-store-with-mem-fallback.js +71 -68
  101. package/out/replicache/src/kv/idb-store-with-mem-fallback.js.map +1 -1
  102. package/out/replicache/src/kv/idb-store.js +144 -168
  103. package/out/replicache/src/kv/idb-store.js.map +1 -1
  104. package/out/replicache/src/kv/mem-store.js +57 -45
  105. package/out/replicache/src/kv/mem-store.js.map +1 -1
  106. package/out/replicache/src/kv/op-sqlite/store.js +56 -62
  107. package/out/replicache/src/kv/op-sqlite/store.js.map +1 -1
  108. package/out/replicache/src/kv/op-sqlite/types.d.ts.map +1 -1
  109. package/out/replicache/src/kv/op-sqlite/types.js +7 -6
  110. package/out/replicache/src/kv/op-sqlite/types.js.map +1 -1
  111. package/out/replicache/src/kv/read-impl.js +26 -25
  112. package/out/replicache/src/kv/read-impl.js.map +1 -1
  113. package/out/replicache/src/kv/sqlite-store.js +194 -207
  114. package/out/replicache/src/kv/sqlite-store.js.map +1 -1
  115. package/out/replicache/src/kv/throw-if-closed.js +12 -19
  116. package/out/replicache/src/kv/throw-if-closed.js.map +1 -1
  117. package/out/replicache/src/kv/write-impl-base.js +44 -56
  118. package/out/replicache/src/kv/write-impl-base.js.map +1 -1
  119. package/out/replicache/src/kv/write-impl.js +22 -26
  120. package/out/replicache/src/kv/write-impl.js.map +1 -1
  121. package/out/replicache/src/lazy.js +10 -11
  122. package/out/replicache/src/lazy.js.map +1 -1
  123. package/out/replicache/src/log-options.js +14 -7
  124. package/out/replicache/src/log-options.js.map +1 -1
  125. package/out/replicache/src/make-idb-name.js +14 -9
  126. package/out/replicache/src/make-idb-name.js.map +1 -1
  127. package/out/replicache/src/mutation-recovery.js +12 -0
  128. package/out/replicache/src/mutation-recovery.js.map +1 -0
  129. package/out/replicache/src/new-client-channel.js +34 -42
  130. package/out/replicache/src/new-client-channel.js.map +1 -1
  131. package/out/replicache/src/on-persist-channel.js +26 -29
  132. package/out/replicache/src/on-persist-channel.js.map +1 -1
  133. package/out/replicache/src/op-sqlite.js +2 -0
  134. package/out/replicache/src/patch-operation.js +27 -36
  135. package/out/replicache/src/patch-operation.js.map +1 -1
  136. package/out/replicache/src/pending-mutations.js +14 -12
  137. package/out/replicache/src/pending-mutations.js.map +1 -1
  138. package/out/replicache/src/persist/client-gc.js +36 -51
  139. package/out/replicache/src/persist/client-gc.js.map +1 -1
  140. package/out/replicache/src/persist/client-group-gc.js +29 -36
  141. package/out/replicache/src/persist/client-group-gc.js.map +1 -1
  142. package/out/replicache/src/persist/client-groups.js +80 -154
  143. package/out/replicache/src/persist/client-groups.js.map +1 -1
  144. package/out/replicache/src/persist/clients.js +212 -307
  145. package/out/replicache/src/persist/clients.js.map +1 -1
  146. package/out/replicache/src/persist/collect-idb-databases.js +109 -171
  147. package/out/replicache/src/persist/collect-idb-databases.js.map +1 -1
  148. package/out/replicache/src/persist/gather-mem-only-visitor.js +23 -24
  149. package/out/replicache/src/persist/gather-mem-only-visitor.js.map +1 -1
  150. package/out/replicache/src/persist/gather-not-cached-visitor.js +35 -33
  151. package/out/replicache/src/persist/gather-not-cached-visitor.js.map +1 -1
  152. package/out/replicache/src/persist/heartbeat.js +31 -41
  153. package/out/replicache/src/persist/heartbeat.js.map +1 -1
  154. package/out/replicache/src/persist/idb-databases-store-db-name.js +9 -12
  155. package/out/replicache/src/persist/idb-databases-store-db-name.js.map +1 -1
  156. package/out/replicache/src/persist/idb-databases-store.js +78 -97
  157. package/out/replicache/src/persist/idb-databases-store.js.map +1 -1
  158. package/out/replicache/src/persist/make-client-id.js +13 -9
  159. package/out/replicache/src/persist/make-client-id.js.map +1 -1
  160. package/out/replicache/src/persist/persist.js +113 -174
  161. package/out/replicache/src/persist/persist.js.map +1 -1
  162. package/out/replicache/src/persist/refresh.js +94 -183
  163. package/out/replicache/src/persist/refresh.js.map +1 -1
  164. package/out/replicache/src/process-scheduler.js +122 -143
  165. package/out/replicache/src/process-scheduler.js.map +1 -1
  166. package/out/replicache/src/pusher.js +21 -26
  167. package/out/replicache/src/pusher.js.map +1 -1
  168. package/out/replicache/src/replicache-impl.js +844 -1184
  169. package/out/replicache/src/replicache-impl.js.map +1 -1
  170. package/out/replicache/src/report-error.js +9 -6
  171. package/out/replicache/src/report-error.js.map +1 -1
  172. package/out/replicache/src/request-idle.js +13 -11
  173. package/out/replicache/src/request-idle.js.map +1 -1
  174. package/out/replicache/src/scan-iterator.d.ts.map +1 -1
  175. package/out/replicache/src/scan-iterator.js +108 -135
  176. package/out/replicache/src/scan-iterator.js.map +1 -1
  177. package/out/replicache/src/scan-options.js +33 -39
  178. package/out/replicache/src/scan-options.js.map +1 -1
  179. package/out/replicache/src/set-interval-with-signal.js +11 -10
  180. package/out/replicache/src/set-interval-with-signal.js.map +1 -1
  181. package/out/replicache/src/sqlite.js +2 -0
  182. package/out/replicache/src/subscriptions.js +222 -338
  183. package/out/replicache/src/subscriptions.js.map +1 -1
  184. package/out/replicache/src/sync/diff.js +52 -65
  185. package/out/replicache/src/sync/diff.js.map +1 -1
  186. package/out/replicache/src/sync/ids.js +8 -9
  187. package/out/replicache/src/sync/ids.js.map +1 -1
  188. package/out/replicache/src/sync/patch.js +34 -45
  189. package/out/replicache/src/sync/patch.js.map +1 -1
  190. package/out/replicache/src/sync/pull-error.js +15 -15
  191. package/out/replicache/src/sync/pull-error.js.map +1 -1
  192. package/out/replicache/src/sync/pull.js +145 -283
  193. package/out/replicache/src/sync/pull.js.map +1 -1
  194. package/out/replicache/src/sync/push.js +64 -79
  195. package/out/replicache/src/sync/push.js.map +1 -1
  196. package/out/replicache/src/sync/request-id.js +23 -15
  197. package/out/replicache/src/sync/request-id.js.map +1 -1
  198. package/out/replicache/src/sync/sync-head-name.js +6 -5
  199. package/out/replicache/src/sync/sync-head-name.js.map +1 -1
  200. package/out/replicache/src/to-error.js +7 -8
  201. package/out/replicache/src/to-error.js.map +1 -1
  202. package/out/replicache/src/transaction-closed-error.js +15 -15
  203. package/out/replicache/src/transaction-closed-error.js.map +1 -1
  204. package/out/replicache/src/transactions.js +120 -140
  205. package/out/replicache/src/transactions.js.map +1 -1
  206. package/out/replicache/src/version.js +9 -5
  207. package/out/replicache/src/version.js.map +1 -1
  208. package/out/replicache/src/with-transactions.js +23 -20
  209. package/out/replicache/src/with-transactions.js.map +1 -1
  210. package/out/shared/src/abort-error.js +7 -6
  211. package/out/shared/src/abort-error.js.map +1 -1
  212. package/out/shared/src/arrays.js +35 -42
  213. package/out/shared/src/arrays.js.map +1 -1
  214. package/out/shared/src/asserts.js +21 -45
  215. package/out/shared/src/asserts.js.map +1 -1
  216. package/out/shared/src/bigint-json.js +42 -38
  217. package/out/shared/src/bigint-json.js.map +1 -1
  218. package/out/shared/src/binary-search.js +27 -18
  219. package/out/shared/src/binary-search.js.map +1 -1
  220. package/out/shared/src/broadcast-channel.js +20 -23
  221. package/out/shared/src/broadcast-channel.js.map +1 -1
  222. package/out/shared/src/browser-env.js +11 -17
  223. package/out/shared/src/browser-env.js.map +1 -1
  224. package/out/shared/src/btree-set.js +419 -481
  225. package/out/shared/src/btree-set.js.map +1 -1
  226. package/out/shared/src/cache.js +43 -36
  227. package/out/shared/src/cache.js.map +1 -1
  228. package/out/shared/src/centroid.js +24 -26
  229. package/out/shared/src/centroid.js.map +1 -1
  230. package/out/shared/src/config.js +6 -6
  231. package/out/shared/src/config.js.map +1 -1
  232. package/out/shared/src/custom-key-map.js +54 -58
  233. package/out/shared/src/custom-key-map.js.map +1 -1
  234. package/out/shared/src/custom-key-set.js +53 -51
  235. package/out/shared/src/custom-key-set.js.map +1 -1
  236. package/out/shared/src/deep-clone.js +30 -41
  237. package/out/shared/src/deep-clone.js.map +1 -1
  238. package/out/shared/src/deep-merge.js +25 -24
  239. package/out/shared/src/deep-merge.js.map +1 -1
  240. package/out/shared/src/document-visible.js +63 -70
  241. package/out/shared/src/document-visible.js.map +1 -1
  242. package/out/shared/src/dotenv.js +7 -3
  243. package/out/shared/src/dotenv.js.map +1 -1
  244. package/out/shared/src/error.js +43 -64
  245. package/out/shared/src/error.js.map +1 -1
  246. package/out/shared/src/has-own.js +6 -5
  247. package/out/shared/src/has-own.js.map +1 -1
  248. package/out/shared/src/hash.js +15 -14
  249. package/out/shared/src/hash.js.map +1 -1
  250. package/out/shared/src/iterables.js +34 -47
  251. package/out/shared/src/iterables.js.map +1 -1
  252. package/out/shared/src/json-schema.js +25 -30
  253. package/out/shared/src/json-schema.js.map +1 -1
  254. package/out/shared/src/json.js +90 -129
  255. package/out/shared/src/json.js.map +1 -1
  256. package/out/shared/src/logging-test-utils.js +9 -11
  257. package/out/shared/src/logging-test-utils.js.map +1 -1
  258. package/out/shared/src/logging.js +75 -95
  259. package/out/shared/src/logging.js.map +1 -1
  260. package/out/shared/src/must.js +7 -8
  261. package/out/shared/src/must.js.map +1 -1
  262. package/out/shared/src/navigator.js +6 -5
  263. package/out/shared/src/navigator.js.map +1 -1
  264. package/out/shared/src/object-traversal.js +23 -23
  265. package/out/shared/src/object-traversal.js.map +1 -1
  266. package/out/shared/src/objects.js +15 -18
  267. package/out/shared/src/objects.js.map +1 -1
  268. package/out/shared/src/options.js +225 -302
  269. package/out/shared/src/options.js.map +1 -1
  270. package/out/shared/src/parse-big-int.js +12 -11
  271. package/out/shared/src/parse-big-int.js.map +1 -1
  272. package/out/shared/src/promise-race.js +21 -17
  273. package/out/shared/src/promise-race.js.map +1 -1
  274. package/out/shared/src/queue.js +124 -124
  275. package/out/shared/src/queue.js.map +1 -1
  276. package/out/shared/src/rand.js +13 -7
  277. package/out/shared/src/rand.js.map +1 -1
  278. package/out/shared/src/random-uint64.js +8 -7
  279. package/out/shared/src/random-uint64.js.map +1 -1
  280. package/out/shared/src/random-values.js +8 -11
  281. package/out/shared/src/random-values.js.map +1 -1
  282. package/out/shared/src/record-proxy.js +68 -57
  283. package/out/shared/src/record-proxy.js.map +1 -1
  284. package/out/shared/src/resolved-promises.js +9 -11
  285. package/out/shared/src/resolved-promises.js.map +1 -1
  286. package/out/shared/src/sentinels.js +9 -12
  287. package/out/shared/src/sentinels.js.map +1 -1
  288. package/out/shared/src/set-utils.js +41 -63
  289. package/out/shared/src/set-utils.js.map +1 -1
  290. package/out/shared/src/size-of-value.js +55 -51
  291. package/out/shared/src/size-of-value.js.map +1 -1
  292. package/out/shared/src/sleep.js +50 -45
  293. package/out/shared/src/sleep.js.map +1 -1
  294. package/out/shared/src/string-compare.js +8 -11
  295. package/out/shared/src/string-compare.js.map +1 -1
  296. package/out/shared/src/subscribable.js +34 -33
  297. package/out/shared/src/subscribable.js.map +1 -1
  298. package/out/shared/src/tdigest-schema.js +11 -7
  299. package/out/shared/src/tdigest-schema.js.map +1 -1
  300. package/out/shared/src/tdigest.js +197 -270
  301. package/out/shared/src/tdigest.js.map +1 -1
  302. package/out/shared/src/valita.js +145 -174
  303. package/out/shared/src/valita.js.map +1 -1
  304. package/out/z2s/src/compiler.d.ts.map +1 -1
  305. package/out/z2s/src/compiler.js +238 -468
  306. package/out/z2s/src/compiler.js.map +1 -1
  307. package/out/z2s/src/sql.d.ts +0 -1
  308. package/out/z2s/src/sql.d.ts.map +1 -1
  309. package/out/z2s/src/sql.js +149 -194
  310. package/out/z2s/src/sql.js.map +1 -1
  311. package/out/zero/package.js +193 -0
  312. package/out/zero/package.js.map +1 -0
  313. package/out/zero/src/adapters/drizzle.js +1 -6
  314. package/out/zero/src/adapters/pg.js +1 -6
  315. package/out/zero/src/adapters/postgresjs.js +1 -6
  316. package/out/zero/src/adapters/prisma.js +1 -5
  317. package/out/zero/src/analyze-query.js +1 -1
  318. package/out/zero/src/ast-to-zql.js +1 -1
  319. package/out/zero/src/bindings.js +6 -21
  320. package/out/zero/src/build-schema.js +5 -1
  321. package/out/zero/src/build-schema.js.map +1 -1
  322. package/out/zero/src/change-protocol/v0.js +3 -5
  323. package/out/zero/src/cli.js +2 -2
  324. package/out/zero/src/deploy-permissions.js +1 -1
  325. package/out/zero/src/expo-sqlite.js +2 -4
  326. package/out/zero/src/op-sqlite.js +2 -4
  327. package/out/zero/src/pg.js +2 -20
  328. package/out/zero/src/react-native.js +16 -12
  329. package/out/zero/src/react-native.js.map +1 -1
  330. package/out/zero/src/react.js +3 -12
  331. package/out/zero/src/server/runner/main.js +2 -0
  332. package/out/zero/src/server.js +2 -17
  333. package/out/zero/src/solid.js +3 -12
  334. package/out/zero/src/sqlite.js +2 -6
  335. package/out/zero/src/transform-query.js +1 -1
  336. package/out/zero/src/zero-cache-dev.js +124 -151
  337. package/out/zero/src/zero-cache-dev.js.map +1 -1
  338. package/out/zero/src/zero-out.js +9 -6
  339. package/out/zero/src/zero-out.js.map +1 -1
  340. package/out/zero/src/zero.js +6 -55
  341. package/out/zero/src/zqlite.js +2 -7
  342. package/out/zero-cache/src/auth/auth.js +138 -172
  343. package/out/zero-cache/src/auth/auth.js.map +1 -1
  344. package/out/zero-cache/src/auth/jwt.js +25 -33
  345. package/out/zero-cache/src/auth/jwt.js.map +1 -1
  346. package/out/zero-cache/src/auth/load-permissions.js +54 -62
  347. package/out/zero-cache/src/auth/load-permissions.js.map +1 -1
  348. package/out/zero-cache/src/auth/read-authorizer.js +70 -80
  349. package/out/zero-cache/src/auth/read-authorizer.js.map +1 -1
  350. package/out/zero-cache/src/auth/write-authorizer.js +284 -432
  351. package/out/zero-cache/src/auth/write-authorizer.js.map +1 -1
  352. package/out/zero-cache/src/config/network.js +31 -45
  353. package/out/zero-cache/src/config/network.js.map +1 -1
  354. package/out/zero-cache/src/config/normalize.js +81 -83
  355. package/out/zero-cache/src/config/normalize.js.map +1 -1
  356. package/out/zero-cache/src/config/server-context.js +32 -29
  357. package/out/zero-cache/src/config/server-context.js.map +1 -1
  358. package/out/zero-cache/src/config/zero-config.js +753 -833
  359. package/out/zero-cache/src/config/zero-config.js.map +1 -1
  360. package/out/zero-cache/src/custom/fetch.js +183 -230
  361. package/out/zero-cache/src/custom/fetch.js.map +1 -1
  362. package/out/zero-cache/src/custom-queries/transform-query.js +93 -99
  363. package/out/zero-cache/src/custom-queries/transform-query.js.map +1 -1
  364. package/out/zero-cache/src/db/create.js +27 -29
  365. package/out/zero-cache/src/db/create.js.map +1 -1
  366. package/out/zero-cache/src/db/delete-lite-db.js +11 -7
  367. package/out/zero-cache/src/db/delete-lite-db.js.map +1 -1
  368. package/out/zero-cache/src/db/lite-tables.js +118 -158
  369. package/out/zero-cache/src/db/lite-tables.js.map +1 -1
  370. package/out/zero-cache/src/db/migration-lite.js +110 -178
  371. package/out/zero-cache/src/db/migration-lite.js.map +1 -1
  372. package/out/zero-cache/src/db/migration.js +82 -151
  373. package/out/zero-cache/src/db/migration.js.map +1 -1
  374. package/out/zero-cache/src/db/mode-enum.js +8 -9
  375. package/out/zero-cache/src/db/mode-enum.js.map +1 -1
  376. package/out/zero-cache/src/db/pg-copy.js +56 -54
  377. package/out/zero-cache/src/db/pg-copy.js.map +1 -1
  378. package/out/zero-cache/src/db/pg-to-lite.js +74 -110
  379. package/out/zero-cache/src/db/pg-to-lite.js.map +1 -1
  380. package/out/zero-cache/src/db/pg-type-parser.js +19 -36
  381. package/out/zero-cache/src/db/pg-type-parser.js.map +1 -1
  382. package/out/zero-cache/src/db/run-transaction.js +19 -20
  383. package/out/zero-cache/src/db/run-transaction.js.map +1 -1
  384. package/out/zero-cache/src/db/specs.js +42 -78
  385. package/out/zero-cache/src/db/specs.js.map +1 -1
  386. package/out/zero-cache/src/db/statements.js +52 -59
  387. package/out/zero-cache/src/db/statements.js.map +1 -1
  388. package/out/zero-cache/src/db/transaction-pool.js +376 -400
  389. package/out/zero-cache/src/db/transaction-pool.js.map +1 -1
  390. package/out/zero-cache/src/db/warmup.js +13 -24
  391. package/out/zero-cache/src/db/warmup.js.map +1 -1
  392. package/out/zero-cache/src/observability/events.js +89 -99
  393. package/out/zero-cache/src/observability/events.js.map +1 -1
  394. package/out/zero-cache/src/observability/metrics.js +30 -54
  395. package/out/zero-cache/src/observability/metrics.js.map +1 -1
  396. package/out/zero-cache/src/scripts/decommission.js +42 -47
  397. package/out/zero-cache/src/scripts/decommission.js.map +1 -1
  398. package/out/zero-cache/src/scripts/deploy-permissions.js +106 -144
  399. package/out/zero-cache/src/scripts/deploy-permissions.js.map +1 -1
  400. package/out/zero-cache/src/scripts/permissions.js +86 -107
  401. package/out/zero-cache/src/scripts/permissions.js.map +1 -1
  402. package/out/zero-cache/src/server/anonymous-otel-start.js +306 -440
  403. package/out/zero-cache/src/server/anonymous-otel-start.js.map +1 -1
  404. package/out/zero-cache/src/server/change-streamer.d.ts.map +1 -1
  405. package/out/zero-cache/src/server/change-streamer.js +57 -130
  406. package/out/zero-cache/src/server/change-streamer.js.map +1 -1
  407. package/out/zero-cache/src/server/inspector-delegate.js +89 -100
  408. package/out/zero-cache/src/server/inspector-delegate.js.map +1 -1
  409. package/out/zero-cache/src/server/logging.js +18 -26
  410. package/out/zero-cache/src/server/logging.js.map +1 -1
  411. package/out/zero-cache/src/server/main.js +85 -142
  412. package/out/zero-cache/src/server/main.js.map +1 -1
  413. package/out/zero-cache/src/server/mutator.js +16 -13
  414. package/out/zero-cache/src/server/mutator.js.map +1 -1
  415. package/out/zero-cache/src/server/otel-diag-logger.js +42 -49
  416. package/out/zero-cache/src/server/otel-diag-logger.js.map +1 -1
  417. package/out/zero-cache/src/server/otel-log-sink.js +34 -44
  418. package/out/zero-cache/src/server/otel-log-sink.js.map +1 -1
  419. package/out/zero-cache/src/server/otel-start.js +43 -51
  420. package/out/zero-cache/src/server/otel-start.js.map +1 -1
  421. package/out/zero-cache/src/server/priority-op.js +27 -25
  422. package/out/zero-cache/src/server/priority-op.js.map +1 -1
  423. package/out/zero-cache/src/server/reaper.js +32 -43
  424. package/out/zero-cache/src/server/reaper.js.map +1 -1
  425. package/out/zero-cache/src/server/replicator.d.ts.map +1 -1
  426. package/out/zero-cache/src/server/replicator.js +41 -57
  427. package/out/zero-cache/src/server/replicator.js.map +1 -1
  428. package/out/zero-cache/src/server/runner/main.js +7 -8
  429. package/out/zero-cache/src/server/runner/main.js.map +1 -1
  430. package/out/zero-cache/src/server/runner/run-worker.js +56 -52
  431. package/out/zero-cache/src/server/runner/run-worker.js.map +1 -1
  432. package/out/zero-cache/src/server/runner/runtime.js +26 -32
  433. package/out/zero-cache/src/server/runner/runtime.js.map +1 -1
  434. package/out/zero-cache/src/server/runner/zero-dispatcher.js +22 -27
  435. package/out/zero-cache/src/server/runner/zero-dispatcher.js.map +1 -1
  436. package/out/zero-cache/src/server/syncer.js +79 -148
  437. package/out/zero-cache/src/server/syncer.js.map +1 -1
  438. package/out/zero-cache/src/server/worker-dispatcher.js +84 -113
  439. package/out/zero-cache/src/server/worker-dispatcher.js.map +1 -1
  440. package/out/zero-cache/src/server/worker-urls.d.ts +2 -1
  441. package/out/zero-cache/src/server/worker-urls.d.ts.map +1 -1
  442. package/out/zero-cache/src/server/worker-urls.js +14 -18
  443. package/out/zero-cache/src/server/worker-urls.js.map +1 -1
  444. package/out/zero-cache/src/server/write-worker.js +2 -0
  445. package/out/zero-cache/src/services/analyze.js +61 -130
  446. package/out/zero-cache/src/services/analyze.js.map +1 -1
  447. package/out/zero-cache/src/services/change-source/common/backfill-manager.js +420 -419
  448. package/out/zero-cache/src/services/change-source/common/backfill-manager.js.map +1 -1
  449. package/out/zero-cache/src/services/change-source/common/change-stream-multiplexer.js +111 -114
  450. package/out/zero-cache/src/services/change-source/common/change-stream-multiplexer.js.map +1 -1
  451. package/out/zero-cache/src/services/change-source/common/replica-schema.js +80 -148
  452. package/out/zero-cache/src/services/change-source/common/replica-schema.js.map +1 -1
  453. package/out/zero-cache/src/services/change-source/custom/change-source.js +154 -216
  454. package/out/zero-cache/src/services/change-source/custom/change-source.js.map +1 -1
  455. package/out/zero-cache/src/services/change-source/pg/backfill-metadata.js +11 -14
  456. package/out/zero-cache/src/services/change-source/pg/backfill-metadata.js.map +1 -1
  457. package/out/zero-cache/src/services/change-source/pg/backfill-stream.js +168 -212
  458. package/out/zero-cache/src/services/change-source/pg/backfill-stream.js.map +1 -1
  459. package/out/zero-cache/src/services/change-source/pg/change-source.js +672 -892
  460. package/out/zero-cache/src/services/change-source/pg/change-source.js.map +1 -1
  461. package/out/zero-cache/src/services/change-source/pg/decommission.js +19 -23
  462. package/out/zero-cache/src/services/change-source/pg/decommission.js.map +1 -1
  463. package/out/zero-cache/src/services/change-source/pg/initial-sync.js +258 -411
  464. package/out/zero-cache/src/services/change-source/pg/initial-sync.js.map +1 -1
  465. package/out/zero-cache/src/services/change-source/pg/logical-replication/binary-reader.js +59 -65
  466. package/out/zero-cache/src/services/change-source/pg/logical-replication/binary-reader.js.map +1 -1
  467. package/out/zero-cache/src/services/change-source/pg/logical-replication/pgoutput-parser.js +218 -247
  468. package/out/zero-cache/src/services/change-source/pg/logical-replication/pgoutput-parser.js.map +1 -1
  469. package/out/zero-cache/src/services/change-source/pg/logical-replication/stream.js +100 -142
  470. package/out/zero-cache/src/services/change-source/pg/logical-replication/stream.js.map +1 -1
  471. package/out/zero-cache/src/services/change-source/pg/lsn.js +17 -19
  472. package/out/zero-cache/src/services/change-source/pg/lsn.js.map +1 -1
  473. package/out/zero-cache/src/services/change-source/pg/schema/ddl.js +88 -98
  474. package/out/zero-cache/src/services/change-source/pg/schema/ddl.js.map +1 -1
  475. package/out/zero-cache/src/services/change-source/pg/schema/init.js +96 -177
  476. package/out/zero-cache/src/services/change-source/pg/schema/init.js.map +1 -1
  477. package/out/zero-cache/src/services/change-source/pg/schema/published.js +69 -107
  478. package/out/zero-cache/src/services/change-source/pg/schema/published.js.map +1 -1
  479. package/out/zero-cache/src/services/change-source/pg/schema/shard.js +151 -212
  480. package/out/zero-cache/src/services/change-source/pg/schema/shard.js.map +1 -1
  481. package/out/zero-cache/src/services/change-source/pg/schema/validation.js +22 -53
  482. package/out/zero-cache/src/services/change-source/pg/schema/validation.js.map +1 -1
  483. package/out/zero-cache/src/services/change-source/protocol/current/control.js +24 -12
  484. package/out/zero-cache/src/services/change-source/protocol/current/control.js.map +1 -1
  485. package/out/zero-cache/src/services/change-source/protocol/current/data.js +180 -290
  486. package/out/zero-cache/src/services/change-source/protocol/current/data.js.map +1 -1
  487. package/out/zero-cache/src/services/change-source/protocol/current/downstream.js +21 -33
  488. package/out/zero-cache/src/services/change-source/protocol/current/downstream.js.map +1 -1
  489. package/out/zero-cache/src/services/change-source/protocol/current/json.js +7 -18
  490. package/out/zero-cache/src/services/change-source/protocol/current/json.js.map +1 -1
  491. package/out/zero-cache/src/services/change-source/protocol/current/path.js +24 -5
  492. package/out/zero-cache/src/services/change-source/protocol/current/path.js.map +1 -1
  493. package/out/zero-cache/src/services/change-source/protocol/current/status.js +25 -19
  494. package/out/zero-cache/src/services/change-source/protocol/current/status.js.map +1 -1
  495. package/out/zero-cache/src/services/change-source/protocol/current/upstream.js +24 -16
  496. package/out/zero-cache/src/services/change-source/protocol/current/upstream.js.map +1 -1
  497. package/out/zero-cache/src/services/change-source/protocol/current.js +51 -46
  498. package/out/zero-cache/src/services/change-source/protocol/current.js.map +1 -1
  499. package/out/zero-cache/src/services/change-source/protocol/mod.js +2 -0
  500. package/out/zero-cache/src/services/change-streamer/backup-monitor.js +165 -171
  501. package/out/zero-cache/src/services/change-streamer/backup-monitor.js.map +1 -1
  502. package/out/zero-cache/src/services/change-streamer/broadcast.js +163 -169
  503. package/out/zero-cache/src/services/change-streamer/broadcast.js.map +1 -1
  504. package/out/zero-cache/src/services/change-streamer/change-streamer-http.js +154 -221
  505. package/out/zero-cache/src/services/change-streamer/change-streamer-http.js.map +1 -1
  506. package/out/zero-cache/src/services/change-streamer/change-streamer-service.d.ts.map +1 -1
  507. package/out/zero-cache/src/services/change-streamer/change-streamer-service.js +340 -299
  508. package/out/zero-cache/src/services/change-streamer/change-streamer-service.js.map +1 -1
  509. package/out/zero-cache/src/services/change-streamer/change-streamer.js +17 -24
  510. package/out/zero-cache/src/services/change-streamer/change-streamer.js.map +1 -1
  511. package/out/zero-cache/src/services/change-streamer/forwarder.js +84 -103
  512. package/out/zero-cache/src/services/change-streamer/forwarder.js.map +1 -1
  513. package/out/zero-cache/src/services/change-streamer/replica-monitor.js +49 -43
  514. package/out/zero-cache/src/services/change-streamer/replica-monitor.js.map +1 -1
  515. package/out/zero-cache/src/services/change-streamer/schema/init.js +61 -89
  516. package/out/zero-cache/src/services/change-streamer/schema/init.js.map +1 -1
  517. package/out/zero-cache/src/services/change-streamer/schema/tables.d.ts +20 -1
  518. package/out/zero-cache/src/services/change-streamer/schema/tables.d.ts.map +1 -1
  519. package/out/zero-cache/src/services/change-streamer/schema/tables.js +131 -109
  520. package/out/zero-cache/src/services/change-streamer/schema/tables.js.map +1 -1
  521. package/out/zero-cache/src/services/change-streamer/snapshot.js +26 -28
  522. package/out/zero-cache/src/services/change-streamer/snapshot.js.map +1 -1
  523. package/out/zero-cache/src/services/change-streamer/storer.js +434 -513
  524. package/out/zero-cache/src/services/change-streamer/storer.js.map +1 -1
  525. package/out/zero-cache/src/services/change-streamer/subscriber.js +142 -155
  526. package/out/zero-cache/src/services/change-streamer/subscriber.js.map +1 -1
  527. package/out/zero-cache/src/services/heapz.js +18 -20
  528. package/out/zero-cache/src/services/heapz.js.map +1 -1
  529. package/out/zero-cache/src/services/http-service.js +59 -57
  530. package/out/zero-cache/src/services/http-service.js.map +1 -1
  531. package/out/zero-cache/src/services/life-cycle.js +182 -214
  532. package/out/zero-cache/src/services/life-cycle.js.map +1 -1
  533. package/out/zero-cache/src/services/limiter/sliding-window-limiter.js +102 -81
  534. package/out/zero-cache/src/services/limiter/sliding-window-limiter.js.map +1 -1
  535. package/out/zero-cache/src/services/litestream/commands.js +144 -205
  536. package/out/zero-cache/src/services/litestream/commands.js.map +1 -1
  537. package/out/zero-cache/src/services/mutagen/error.js +10 -14
  538. package/out/zero-cache/src/services/mutagen/error.js.map +1 -1
  539. package/out/zero-cache/src/services/mutagen/mutagen.js +166 -264
  540. package/out/zero-cache/src/services/mutagen/mutagen.js.map +1 -1
  541. package/out/zero-cache/src/services/mutagen/pusher.js +372 -487
  542. package/out/zero-cache/src/services/mutagen/pusher.js.map +1 -1
  543. package/out/zero-cache/src/services/replicator/change-processor.js +483 -592
  544. package/out/zero-cache/src/services/replicator/change-processor.js.map +1 -1
  545. package/out/zero-cache/src/services/replicator/incremental-sync.d.ts +4 -2
  546. package/out/zero-cache/src/services/replicator/incremental-sync.d.ts.map +1 -1
  547. package/out/zero-cache/src/services/replicator/incremental-sync.js +118 -143
  548. package/out/zero-cache/src/services/replicator/incremental-sync.js.map +1 -1
  549. package/out/zero-cache/src/services/replicator/notifier.js +52 -28
  550. package/out/zero-cache/src/services/replicator/notifier.js.map +1 -1
  551. package/out/zero-cache/src/services/replicator/replication-status.js +105 -128
  552. package/out/zero-cache/src/services/replicator/replication-status.js.map +1 -1
  553. package/out/zero-cache/src/services/replicator/replicator.d.ts +2 -1
  554. package/out/zero-cache/src/services/replicator/replicator.d.ts.map +1 -1
  555. package/out/zero-cache/src/services/replicator/replicator.js +32 -34
  556. package/out/zero-cache/src/services/replicator/replicator.js.map +1 -1
  557. package/out/zero-cache/src/services/replicator/schema/change-log.js +101 -133
  558. package/out/zero-cache/src/services/replicator/schema/change-log.js.map +1 -1
  559. package/out/zero-cache/src/services/replicator/schema/column-metadata.js +145 -174
  560. package/out/zero-cache/src/services/replicator/schema/column-metadata.js.map +1 -1
  561. package/out/zero-cache/src/services/replicator/schema/constants.js +11 -5
  562. package/out/zero-cache/src/services/replicator/schema/constants.js.map +1 -1
  563. package/out/zero-cache/src/services/replicator/schema/replication-state.js +56 -107
  564. package/out/zero-cache/src/services/replicator/schema/replication-state.js.map +1 -1
  565. package/out/zero-cache/src/services/replicator/schema/table-metadata.js +81 -66
  566. package/out/zero-cache/src/services/replicator/schema/table-metadata.js.map +1 -1
  567. package/out/zero-cache/src/services/replicator/write-worker-client.d.ts +69 -0
  568. package/out/zero-cache/src/services/replicator/write-worker-client.d.ts.map +1 -0
  569. package/out/zero-cache/src/services/replicator/write-worker-client.js +96 -0
  570. package/out/zero-cache/src/services/replicator/write-worker-client.js.map +1 -0
  571. package/out/zero-cache/src/services/replicator/write-worker.js +68 -0
  572. package/out/zero-cache/src/services/replicator/write-worker.js.map +1 -0
  573. package/out/zero-cache/src/services/run-ast.js +79 -120
  574. package/out/zero-cache/src/services/run-ast.js.map +1 -1
  575. package/out/zero-cache/src/services/runner.js +39 -41
  576. package/out/zero-cache/src/services/runner.js.map +1 -1
  577. package/out/zero-cache/src/services/running-state.js +129 -134
  578. package/out/zero-cache/src/services/running-state.js.map +1 -1
  579. package/out/zero-cache/src/services/statz.js +139 -200
  580. package/out/zero-cache/src/services/statz.js.map +1 -1
  581. package/out/zero-cache/src/services/view-syncer/active-users-gauge.js +46 -49
  582. package/out/zero-cache/src/services/view-syncer/active-users-gauge.js.map +1 -1
  583. package/out/zero-cache/src/services/view-syncer/client-handler.js +257 -299
  584. package/out/zero-cache/src/services/view-syncer/client-handler.js.map +1 -1
  585. package/out/zero-cache/src/services/view-syncer/client-schema.js +52 -82
  586. package/out/zero-cache/src/services/view-syncer/client-schema.js.map +1 -1
  587. package/out/zero-cache/src/services/view-syncer/cvr-purger.js +85 -107
  588. package/out/zero-cache/src/services/view-syncer/cvr-purger.js.map +1 -1
  589. package/out/zero-cache/src/services/view-syncer/cvr-store.js +604 -757
  590. package/out/zero-cache/src/services/view-syncer/cvr-store.js.map +1 -1
  591. package/out/zero-cache/src/services/view-syncer/cvr.js +631 -739
  592. package/out/zero-cache/src/services/view-syncer/cvr.js.map +1 -1
  593. package/out/zero-cache/src/services/view-syncer/drain-coordinator.js +60 -40
  594. package/out/zero-cache/src/services/view-syncer/drain-coordinator.js.map +1 -1
  595. package/out/zero-cache/src/services/view-syncer/inspect-handler.js +95 -178
  596. package/out/zero-cache/src/services/view-syncer/inspect-handler.js.map +1 -1
  597. package/out/zero-cache/src/services/view-syncer/pipeline-driver.d.ts.map +1 -1
  598. package/out/zero-cache/src/services/view-syncer/pipeline-driver.js +572 -722
  599. package/out/zero-cache/src/services/view-syncer/pipeline-driver.js.map +1 -1
  600. package/out/zero-cache/src/services/view-syncer/row-record-cache.d.ts.map +1 -1
  601. package/out/zero-cache/src/services/view-syncer/row-record-cache.js +246 -257
  602. package/out/zero-cache/src/services/view-syncer/row-record-cache.js.map +1 -1
  603. package/out/zero-cache/src/services/view-syncer/schema/cvr.js +59 -45
  604. package/out/zero-cache/src/services/view-syncer/schema/cvr.js.map +1 -1
  605. package/out/zero-cache/src/services/view-syncer/schema/init.js +121 -189
  606. package/out/zero-cache/src/services/view-syncer/schema/init.js.map +1 -1
  607. package/out/zero-cache/src/services/view-syncer/schema/types.js +138 -263
  608. package/out/zero-cache/src/services/view-syncer/schema/types.js.map +1 -1
  609. package/out/zero-cache/src/services/view-syncer/snapshotter.js +322 -335
  610. package/out/zero-cache/src/services/view-syncer/snapshotter.js.map +1 -1
  611. package/out/zero-cache/src/services/view-syncer/tracer.js +7 -6
  612. package/out/zero-cache/src/services/view-syncer/tracer.js.map +1 -1
  613. package/out/zero-cache/src/services/view-syncer/ttl-clock.js +9 -11
  614. package/out/zero-cache/src/services/view-syncer/ttl-clock.js.map +1 -1
  615. package/out/zero-cache/src/services/view-syncer/view-syncer.js +1067 -1603
  616. package/out/zero-cache/src/services/view-syncer/view-syncer.js.map +1 -1
  617. package/out/zero-cache/src/types/error-with-level.js +19 -25
  618. package/out/zero-cache/src/types/error-with-level.js.map +1 -1
  619. package/out/zero-cache/src/types/http.js +17 -26
  620. package/out/zero-cache/src/types/http.js.map +1 -1
  621. package/out/zero-cache/src/types/lexi-version.js +28 -42
  622. package/out/zero-cache/src/types/lexi-version.js.map +1 -1
  623. package/out/zero-cache/src/types/lite.js +101 -121
  624. package/out/zero-cache/src/types/lite.js.map +1 -1
  625. package/out/zero-cache/src/types/names.js +6 -5
  626. package/out/zero-cache/src/types/names.js.map +1 -1
  627. package/out/zero-cache/src/types/pg-data-type.d.ts +1 -0
  628. package/out/zero-cache/src/types/pg-data-type.d.ts.map +1 -1
  629. package/out/zero-cache/src/types/pg-data-type.js +58 -73
  630. package/out/zero-cache/src/types/pg-data-type.js.map +1 -1
  631. package/out/zero-cache/src/types/pg-types.js +12 -19
  632. package/out/zero-cache/src/types/pg-types.js.map +1 -1
  633. package/out/zero-cache/src/types/pg.js +144 -218
  634. package/out/zero-cache/src/types/pg.js.map +1 -1
  635. package/out/zero-cache/src/types/processes.js +95 -90
  636. package/out/zero-cache/src/types/processes.js.map +1 -1
  637. package/out/zero-cache/src/types/profiler.js +32 -27
  638. package/out/zero-cache/src/types/profiler.js.map +1 -1
  639. package/out/zero-cache/src/types/row-key.js +42 -30
  640. package/out/zero-cache/src/types/row-key.js.map +1 -1
  641. package/out/zero-cache/src/types/shards.js +36 -45
  642. package/out/zero-cache/src/types/shards.js.map +1 -1
  643. package/out/zero-cache/src/types/sql.js +20 -9
  644. package/out/zero-cache/src/types/sql.js.map +1 -1
  645. package/out/zero-cache/src/types/state-version.js +17 -23
  646. package/out/zero-cache/src/types/state-version.js.map +1 -1
  647. package/out/zero-cache/src/types/streams.js +234 -270
  648. package/out/zero-cache/src/types/streams.js.map +1 -1
  649. package/out/zero-cache/src/types/strings.js +10 -13
  650. package/out/zero-cache/src/types/strings.js.map +1 -1
  651. package/out/zero-cache/src/types/subscription.js +266 -226
  652. package/out/zero-cache/src/types/subscription.js.map +1 -1
  653. package/out/zero-cache/src/types/url-params.js +30 -39
  654. package/out/zero-cache/src/types/url-params.js.map +1 -1
  655. package/out/zero-cache/src/types/websocket-handoff.js +62 -75
  656. package/out/zero-cache/src/types/websocket-handoff.js.map +1 -1
  657. package/out/zero-cache/src/types/ws.js +43 -53
  658. package/out/zero-cache/src/types/ws.js.map +1 -1
  659. package/out/zero-cache/src/workers/connect-params.js +42 -43
  660. package/out/zero-cache/src/workers/connect-params.js.map +1 -1
  661. package/out/zero-cache/src/workers/connection.js +213 -282
  662. package/out/zero-cache/src/workers/connection.js.map +1 -1
  663. package/out/zero-cache/src/workers/mutator.js +22 -21
  664. package/out/zero-cache/src/workers/mutator.js.map +1 -1
  665. package/out/zero-cache/src/workers/replicator.d.ts +7 -0
  666. package/out/zero-cache/src/workers/replicator.d.ts.map +1 -1
  667. package/out/zero-cache/src/workers/replicator.js +92 -97
  668. package/out/zero-cache/src/workers/replicator.js.map +1 -1
  669. package/out/zero-cache/src/workers/syncer-ws-message-handler.js +121 -203
  670. package/out/zero-cache/src/workers/syncer-ws-message-handler.js.map +1 -1
  671. package/out/zero-cache/src/workers/syncer.js +147 -201
  672. package/out/zero-cache/src/workers/syncer.js.map +1 -1
  673. package/out/zero-client/src/client/active-clients-manager.js +178 -187
  674. package/out/zero-client/src/client/active-clients-manager.js.map +1 -1
  675. package/out/zero-client/src/client/bindings.js +11 -0
  676. package/out/zero-client/src/client/client-error-kind-enum.js +18 -29
  677. package/out/zero-client/src/client/client-error-kind-enum.js.map +1 -1
  678. package/out/zero-client/src/client/connection-manager.js +291 -346
  679. package/out/zero-client/src/client/connection-manager.js.map +1 -1
  680. package/out/zero-client/src/client/connection-status-enum.js +20 -15
  681. package/out/zero-client/src/client/connection-status-enum.js.map +1 -1
  682. package/out/zero-client/src/client/connection.js +92 -110
  683. package/out/zero-client/src/client/connection.js.map +1 -1
  684. package/out/zero-client/src/client/context.js +84 -100
  685. package/out/zero-client/src/client/context.js.map +1 -1
  686. package/out/zero-client/src/client/crud-impl.js +56 -88
  687. package/out/zero-client/src/client/crud-impl.js.map +1 -1
  688. package/out/zero-client/src/client/crud.js +127 -129
  689. package/out/zero-client/src/client/crud.js.map +1 -1
  690. package/out/zero-client/src/client/custom.d.ts.map +1 -1
  691. package/out/zero-client/src/client/custom.js +50 -74
  692. package/out/zero-client/src/client/custom.js.map +1 -1
  693. package/out/zero-client/src/client/delete-clients-manager.js +72 -93
  694. package/out/zero-client/src/client/delete-clients-manager.js.map +1 -1
  695. package/out/zero-client/src/client/enable-analytics.js +8 -16
  696. package/out/zero-client/src/client/enable-analytics.js.map +1 -1
  697. package/out/zero-client/src/client/error.js +118 -133
  698. package/out/zero-client/src/client/error.js.map +1 -1
  699. package/out/zero-client/src/client/http-string.js +7 -7
  700. package/out/zero-client/src/client/http-string.js.map +1 -1
  701. package/out/zero-client/src/client/inspector/client-group.js +21 -26
  702. package/out/zero-client/src/client/inspector/client-group.js.map +1 -1
  703. package/out/zero-client/src/client/inspector/client.js +23 -26
  704. package/out/zero-client/src/client/inspector/client.js.map +1 -1
  705. package/out/zero-client/src/client/inspector/html-dialog-prompt.js +72 -73
  706. package/out/zero-client/src/client/inspector/html-dialog-prompt.js.map +1 -1
  707. package/out/zero-client/src/client/inspector/inspector.js +46 -51
  708. package/out/zero-client/src/client/inspector/inspector.js.map +1 -1
  709. package/out/zero-client/src/client/inspector/lazy-inspector.js +132 -192
  710. package/out/zero-client/src/client/inspector/lazy-inspector.js.map +1 -1
  711. package/out/zero-client/src/client/inspector/query.js +72 -77
  712. package/out/zero-client/src/client/inspector/query.js.map +1 -1
  713. package/out/zero-client/src/client/ivm-branch.js +118 -145
  714. package/out/zero-client/src/client/ivm-branch.js.map +1 -1
  715. package/out/zero-client/src/client/keys.js +15 -31
  716. package/out/zero-client/src/client/keys.js.map +1 -1
  717. package/out/zero-client/src/client/log-options.js +43 -57
  718. package/out/zero-client/src/client/log-options.js.map +1 -1
  719. package/out/zero-client/src/client/make-mutate-property.js +46 -29
  720. package/out/zero-client/src/client/make-mutate-property.js.map +1 -1
  721. package/out/zero-client/src/client/make-replicache-mutators.js +80 -96
  722. package/out/zero-client/src/client/make-replicache-mutators.js.map +1 -1
  723. package/out/zero-client/src/client/metric-name-enum.js +11 -15
  724. package/out/zero-client/src/client/metric-name-enum.js.map +1 -1
  725. package/out/zero-client/src/client/metrics.js +210 -237
  726. package/out/zero-client/src/client/metrics.js.map +1 -1
  727. package/out/zero-client/src/client/mutation-tracker.js +264 -354
  728. package/out/zero-client/src/client/mutation-tracker.js.map +1 -1
  729. package/out/zero-client/src/client/mutator-proxy.js +122 -151
  730. package/out/zero-client/src/client/mutator-proxy.js.map +1 -1
  731. package/out/zero-client/src/client/options.js +7 -10
  732. package/out/zero-client/src/client/options.js.map +1 -1
  733. package/out/zero-client/src/client/query-manager.js +305 -373
  734. package/out/zero-client/src/client/query-manager.js.map +1 -1
  735. package/out/zero-client/src/client/reload-error-handler.js +80 -101
  736. package/out/zero-client/src/client/reload-error-handler.js.map +1 -1
  737. package/out/zero-client/src/client/server-option.js +30 -59
  738. package/out/zero-client/src/client/server-option.js.map +1 -1
  739. package/out/zero-client/src/client/update-needed-reason-type-enum.js +27 -9
  740. package/out/zero-client/src/client/update-needed-reason-type-enum.js.map +1 -1
  741. package/out/zero-client/src/client/version.js +9 -5
  742. package/out/zero-client/src/client/version.js.map +1 -1
  743. package/out/zero-client/src/client/zero-poke-handler.d.ts +1 -1
  744. package/out/zero-client/src/client/zero-poke-handler.d.ts.map +1 -1
  745. package/out/zero-client/src/client/zero-poke-handler.js +205 -293
  746. package/out/zero-client/src/client/zero-poke-handler.js.map +1 -1
  747. package/out/zero-client/src/client/zero-rep.js +61 -68
  748. package/out/zero-client/src/client/zero-rep.js.map +1 -1
  749. package/out/zero-client/src/client/zero.d.ts.map +1 -1
  750. package/out/zero-client/src/client/zero.js +1367 -1834
  751. package/out/zero-client/src/client/zero.js.map +1 -1
  752. package/out/zero-client/src/mod.js +21 -0
  753. package/out/zero-client/src/util/nanoid.js +13 -18
  754. package/out/zero-client/src/util/nanoid.js.map +1 -1
  755. package/out/zero-client/src/util/socket.js +6 -5
  756. package/out/zero-client/src/util/socket.js.map +1 -1
  757. package/out/zero-pg/src/mod.js +10 -0
  758. package/out/zero-protocol/src/analyze-query-result.js +108 -148
  759. package/out/zero-protocol/src/analyze-query-result.js.map +1 -1
  760. package/out/zero-protocol/src/application-error.js +36 -34
  761. package/out/zero-protocol/src/application-error.js.map +1 -1
  762. package/out/zero-protocol/src/ast.js +236 -309
  763. package/out/zero-protocol/src/ast.js.map +1 -1
  764. package/out/zero-protocol/src/change-desired-queries.js +8 -13
  765. package/out/zero-protocol/src/change-desired-queries.js.map +1 -1
  766. package/out/zero-protocol/src/client-schema.js +21 -42
  767. package/out/zero-protocol/src/client-schema.js.map +1 -1
  768. package/out/zero-protocol/src/close-connection.js +20 -12
  769. package/out/zero-protocol/src/close-connection.js.map +1 -1
  770. package/out/zero-protocol/src/connect.js +37 -52
  771. package/out/zero-protocol/src/connect.js.map +1 -1
  772. package/out/zero-protocol/src/custom-queries.js +34 -65
  773. package/out/zero-protocol/src/custom-queries.js.map +1 -1
  774. package/out/zero-protocol/src/data.js +6 -9
  775. package/out/zero-protocol/src/data.js.map +1 -1
  776. package/out/zero-protocol/src/delete-clients.js +11 -17
  777. package/out/zero-protocol/src/delete-clients.js.map +1 -1
  778. package/out/zero-protocol/src/down.js +11 -23
  779. package/out/zero-protocol/src/down.js.map +1 -1
  780. package/out/zero-protocol/src/error-kind-enum.js +24 -41
  781. package/out/zero-protocol/src/error-kind-enum.js.map +1 -1
  782. package/out/zero-protocol/src/error-origin-enum.js +8 -9
  783. package/out/zero-protocol/src/error-origin-enum.js.map +1 -1
  784. package/out/zero-protocol/src/error-reason-enum.js +12 -17
  785. package/out/zero-protocol/src/error-reason-enum.js.map +1 -1
  786. package/out/zero-protocol/src/error.js +76 -152
  787. package/out/zero-protocol/src/error.js.map +1 -1
  788. package/out/zero-protocol/src/inspect-down.js +51 -74
  789. package/out/zero-protocol/src/inspect-down.js.map +1 -1
  790. package/out/zero-protocol/src/inspect-up.js +28 -46
  791. package/out/zero-protocol/src/inspect-up.js.map +1 -1
  792. package/out/zero-protocol/src/mutation-id.js +9 -9
  793. package/out/zero-protocol/src/mutation-id.js.map +1 -1
  794. package/out/zero-protocol/src/mutation-type-enum.js +7 -7
  795. package/out/zero-protocol/src/mutation-type-enum.js.map +1 -1
  796. package/out/zero-protocol/src/mutations-patch.js +21 -16
  797. package/out/zero-protocol/src/mutations-patch.js.map +1 -1
  798. package/out/zero-protocol/src/ping.js +8 -9
  799. package/out/zero-protocol/src/ping.js.map +1 -1
  800. package/out/zero-protocol/src/poke.js +53 -59
  801. package/out/zero-protocol/src/poke.js.map +1 -1
  802. package/out/zero-protocol/src/pong.js +8 -9
  803. package/out/zero-protocol/src/pong.js.map +1 -1
  804. package/out/zero-protocol/src/primary-key.js +9 -19
  805. package/out/zero-protocol/src/primary-key.js.map +1 -1
  806. package/out/zero-protocol/src/protocol-version.js +5 -11
  807. package/out/zero-protocol/src/protocol-version.js.map +1 -1
  808. package/out/zero-protocol/src/pull.js +16 -28
  809. package/out/zero-protocol/src/pull.js.map +1 -1
  810. package/out/zero-protocol/src/push.js +162 -209
  811. package/out/zero-protocol/src/push.js.map +1 -1
  812. package/out/zero-protocol/src/queries-patch.js +22 -30
  813. package/out/zero-protocol/src/queries-patch.js.map +1 -1
  814. package/out/zero-protocol/src/query-hash.js +14 -17
  815. package/out/zero-protocol/src/query-hash.js.map +1 -1
  816. package/out/zero-protocol/src/row-patch.js +23 -30
  817. package/out/zero-protocol/src/row-patch.js.map +1 -1
  818. package/out/zero-protocol/src/up.js +11 -22
  819. package/out/zero-protocol/src/up.js.map +1 -1
  820. package/out/zero-protocol/src/update-auth.js +8 -13
  821. package/out/zero-protocol/src/update-auth.js.map +1 -1
  822. package/out/zero-protocol/src/version.js +8 -9
  823. package/out/zero-protocol/src/version.js.map +1 -1
  824. package/out/zero-react/src/bindings.js +12 -0
  825. package/out/zero-react/src/mod.js +5 -0
  826. package/out/zero-react/src/use-connection-state.js +14 -11
  827. package/out/zero-react/src/use-connection-state.js.map +1 -1
  828. package/out/zero-react/src/use-query.js +283 -281
  829. package/out/zero-react/src/use-query.js.map +1 -1
  830. package/out/zero-react/src/use-zero-online.js +17 -11
  831. package/out/zero-react/src/use-zero-online.js.map +1 -1
  832. package/out/zero-react/src/zero-provider.js +53 -69
  833. package/out/zero-react/src/zero-provider.js.map +1 -1
  834. package/out/zero-react/src/zero.js +22 -0
  835. package/out/zero-schema/src/builder/relationship-builder.js +25 -21
  836. package/out/zero-schema/src/builder/relationship-builder.js.map +1 -1
  837. package/out/zero-schema/src/builder/schema-builder.js +51 -79
  838. package/out/zero-schema/src/builder/schema-builder.js.map +1 -1
  839. package/out/zero-schema/src/builder/table-builder.js +99 -116
  840. package/out/zero-schema/src/builder/table-builder.js.map +1 -1
  841. package/out/zero-schema/src/compiled-permissions.js +21 -25
  842. package/out/zero-schema/src/compiled-permissions.js.map +1 -1
  843. package/out/zero-schema/src/name-mapper.js +31 -47
  844. package/out/zero-schema/src/name-mapper.js.map +1 -1
  845. package/out/zero-schema/src/permissions.js +94 -181
  846. package/out/zero-schema/src/permissions.js.map +1 -1
  847. package/out/zero-schema/src/schema-config.js +26 -32
  848. package/out/zero-schema/src/schema-config.js.map +1 -1
  849. package/out/zero-server/src/adapters/drizzle.d.ts.map +1 -1
  850. package/out/zero-server/src/adapters/drizzle.js +79 -76
  851. package/out/zero-server/src/adapters/drizzle.js.map +1 -1
  852. package/out/zero-server/src/adapters/pg.d.ts.map +1 -1
  853. package/out/zero-server/src/adapters/pg.js +79 -55
  854. package/out/zero-server/src/adapters/pg.js.map +1 -1
  855. package/out/zero-server/src/adapters/postgresjs.d.ts.map +1 -1
  856. package/out/zero-server/src/adapters/postgresjs.js +66 -40
  857. package/out/zero-server/src/adapters/postgresjs.js.map +1 -1
  858. package/out/zero-server/src/adapters/prisma.d.ts.map +1 -1
  859. package/out/zero-server/src/adapters/prisma.js +75 -55
  860. package/out/zero-server/src/adapters/prisma.js.map +1 -1
  861. package/out/zero-server/src/custom.d.ts.map +1 -1
  862. package/out/zero-server/src/custom.js +188 -265
  863. package/out/zero-server/src/custom.js.map +1 -1
  864. package/out/zero-server/src/logging.js +6 -5
  865. package/out/zero-server/src/logging.js.map +1 -1
  866. package/out/zero-server/src/mod.js +8 -0
  867. package/out/zero-server/src/pg-query-executor.js +14 -17
  868. package/out/zero-server/src/pg-query-executor.js.map +1 -1
  869. package/out/zero-server/src/process-mutations.js +293 -365
  870. package/out/zero-server/src/process-mutations.js.map +1 -1
  871. package/out/zero-server/src/push-processor.js +33 -49
  872. package/out/zero-server/src/push-processor.js.map +1 -1
  873. package/out/zero-server/src/queries/process-queries.js +106 -96
  874. package/out/zero-server/src/queries/process-queries.js.map +1 -1
  875. package/out/zero-server/src/schema.js +98 -144
  876. package/out/zero-server/src/schema.js.map +1 -1
  877. package/out/zero-server/src/zql-database.d.ts.map +1 -1
  878. package/out/zero-server/src/zql-database.js +54 -69
  879. package/out/zero-server/src/zql-database.js.map +1 -1
  880. package/out/zero-solid/src/bindings.js +12 -0
  881. package/out/zero-solid/src/mod.js +5 -0
  882. package/out/zero-solid/src/solid-view.js +135 -227
  883. package/out/zero-solid/src/solid-view.js.map +1 -1
  884. package/out/zero-solid/src/use-connection-state.js +18 -14
  885. package/out/zero-solid/src/use-connection-state.js.map +1 -1
  886. package/out/zero-solid/src/use-query.js +55 -100
  887. package/out/zero-solid/src/use-query.js.map +1 -1
  888. package/out/zero-solid/src/use-zero-online.js +18 -12
  889. package/out/zero-solid/src/use-zero-online.js.map +1 -1
  890. package/out/zero-solid/src/use-zero.js +65 -77
  891. package/out/zero-solid/src/use-zero.js.map +1 -1
  892. package/out/zero-solid/src/zero.js +22 -0
  893. package/out/zero-types/src/format.js +8 -7
  894. package/out/zero-types/src/format.js.map +1 -1
  895. package/out/zero-types/src/name-mapper.js +34 -47
  896. package/out/zero-types/src/name-mapper.js.map +1 -1
  897. package/out/zql/src/builder/builder.d.ts.map +1 -1
  898. package/out/zql/src/builder/builder.js +315 -476
  899. package/out/zql/src/builder/builder.js.map +1 -1
  900. package/out/zql/src/builder/debug-delegate.js +69 -74
  901. package/out/zql/src/builder/debug-delegate.js.map +1 -1
  902. package/out/zql/src/builder/filter.js +116 -140
  903. package/out/zql/src/builder/filter.js.map +1 -1
  904. package/out/zql/src/builder/like.js +41 -46
  905. package/out/zql/src/builder/like.js.map +1 -1
  906. package/out/zql/src/error.js +10 -9
  907. package/out/zql/src/error.js.map +1 -1
  908. package/out/zql/src/ivm/array-view.js +89 -91
  909. package/out/zql/src/ivm/array-view.js.map +1 -1
  910. package/out/zql/src/ivm/constraint.js +65 -74
  911. package/out/zql/src/ivm/constraint.js.map +1 -1
  912. package/out/zql/src/ivm/data.js +61 -48
  913. package/out/zql/src/ivm/data.js.map +1 -1
  914. package/out/zql/src/ivm/exists.js +164 -213
  915. package/out/zql/src/ivm/exists.js.map +1 -1
  916. package/out/zql/src/ivm/fan-in.js +62 -59
  917. package/out/zql/src/ivm/fan-in.js.map +1 -1
  918. package/out/zql/src/ivm/fan-out.js +52 -61
  919. package/out/zql/src/ivm/fan-out.js.map +1 -1
  920. package/out/zql/src/ivm/filter-operators.js +91 -96
  921. package/out/zql/src/ivm/filter-operators.js.map +1 -1
  922. package/out/zql/src/ivm/filter-push.js +22 -26
  923. package/out/zql/src/ivm/filter-push.js.map +1 -1
  924. package/out/zql/src/ivm/filter.js +41 -35
  925. package/out/zql/src/ivm/filter.js.map +1 -1
  926. package/out/zql/src/ivm/flipped-join.js +282 -391
  927. package/out/zql/src/ivm/flipped-join.js.map +1 -1
  928. package/out/zql/src/ivm/join-utils.js +85 -115
  929. package/out/zql/src/ivm/join-utils.js.map +1 -1
  930. package/out/zql/src/ivm/join.js +162 -231
  931. package/out/zql/src/ivm/join.js.map +1 -1
  932. package/out/zql/src/ivm/maybe-split-and-push-edit-change.js +21 -25
  933. package/out/zql/src/ivm/maybe-split-and-push-edit-change.js.map +1 -1
  934. package/out/zql/src/ivm/memory-source.js +364 -503
  935. package/out/zql/src/ivm/memory-source.js.map +1 -1
  936. package/out/zql/src/ivm/memory-storage.js +33 -34
  937. package/out/zql/src/ivm/memory-storage.js.map +1 -1
  938. package/out/zql/src/ivm/operator.js +13 -15
  939. package/out/zql/src/ivm/operator.js.map +1 -1
  940. package/out/zql/src/ivm/push-accumulated.js +267 -270
  941. package/out/zql/src/ivm/push-accumulated.js.map +1 -1
  942. package/out/zql/src/ivm/skip.js +91 -104
  943. package/out/zql/src/ivm/skip.js.map +1 -1
  944. package/out/zql/src/ivm/stream.js +10 -10
  945. package/out/zql/src/ivm/stream.js.map +1 -1
  946. package/out/zql/src/ivm/take.js +422 -569
  947. package/out/zql/src/ivm/take.js.map +1 -1
  948. package/out/zql/src/ivm/union-fan-in.js +157 -231
  949. package/out/zql/src/ivm/union-fan-in.js.map +1 -1
  950. package/out/zql/src/ivm/union-fan-out.js +38 -43
  951. package/out/zql/src/ivm/union-fan-out.js.map +1 -1
  952. package/out/zql/src/ivm/view-apply-change.js +166 -255
  953. package/out/zql/src/ivm/view-apply-change.js.map +1 -1
  954. package/out/zql/src/mutate/crud.js +35 -34
  955. package/out/zql/src/mutate/crud.js.map +1 -1
  956. package/out/zql/src/mutate/custom.d.ts.map +1 -1
  957. package/out/zql/src/mutate/custom.js +7 -11
  958. package/out/zql/src/mutate/custom.js.map +1 -1
  959. package/out/zql/src/mutate/mutator-registry.js +67 -71
  960. package/out/zql/src/mutate/mutator-registry.js.map +1 -1
  961. package/out/zql/src/mutate/mutator.js +26 -25
  962. package/out/zql/src/mutate/mutator.js.map +1 -1
  963. package/out/zql/src/planner/planner-builder.js +134 -239
  964. package/out/zql/src/planner/planner-builder.js.map +1 -1
  965. package/out/zql/src/planner/planner-connection.js +222 -212
  966. package/out/zql/src/planner/planner-connection.js.map +1 -1
  967. package/out/zql/src/planner/planner-constraint.js +15 -7
  968. package/out/zql/src/planner/planner-constraint.js.map +1 -1
  969. package/out/zql/src/planner/planner-debug.js +199 -224
  970. package/out/zql/src/planner/planner-debug.js.map +1 -1
  971. package/out/zql/src/planner/planner-fan-in.js +146 -162
  972. package/out/zql/src/planner/planner-fan-in.js.map +1 -1
  973. package/out/zql/src/planner/planner-fan-out.js +62 -74
  974. package/out/zql/src/planner/planner-fan-out.js.map +1 -1
  975. package/out/zql/src/planner/planner-graph.js +302 -334
  976. package/out/zql/src/planner/planner-graph.js.map +1 -1
  977. package/out/zql/src/planner/planner-join.js +255 -240
  978. package/out/zql/src/planner/planner-join.js.map +1 -1
  979. package/out/zql/src/planner/planner-node.js +10 -6
  980. package/out/zql/src/planner/planner-node.js.map +1 -1
  981. package/out/zql/src/planner/planner-source.js +15 -22
  982. package/out/zql/src/planner/planner-source.js.map +1 -1
  983. package/out/zql/src/planner/planner-terminus.js +28 -28
  984. package/out/zql/src/planner/planner-terminus.js.map +1 -1
  985. package/out/zql/src/query/complete-ordering.js +37 -61
  986. package/out/zql/src/query/complete-ordering.js.map +1 -1
  987. package/out/zql/src/query/create-builder.js +14 -22
  988. package/out/zql/src/query/create-builder.js.map +1 -1
  989. package/out/zql/src/query/error.js +10 -12
  990. package/out/zql/src/query/error.js.map +1 -1
  991. package/out/zql/src/query/escape-like.js +6 -5
  992. package/out/zql/src/query/escape-like.js.map +1 -1
  993. package/out/zql/src/query/expression.js +138 -157
  994. package/out/zql/src/query/expression.js.map +1 -1
  995. package/out/zql/src/query/measure-push-operator.js +35 -38
  996. package/out/zql/src/query/measure-push-operator.js.map +1 -1
  997. package/out/zql/src/query/metrics-delegate.js +7 -7
  998. package/out/zql/src/query/metrics-delegate.js.map +1 -1
  999. package/out/zql/src/query/named.js +52 -51
  1000. package/out/zql/src/query/named.js.map +1 -1
  1001. package/out/zql/src/query/query-delegate-base.js +190 -238
  1002. package/out/zql/src/query/query-delegate-base.js.map +1 -1
  1003. package/out/zql/src/query/query-impl.d.ts.map +1 -1
  1004. package/out/zql/src/query/query-impl.js +271 -405
  1005. package/out/zql/src/query/query-impl.js.map +1 -1
  1006. package/out/zql/src/query/query-internals.js +16 -8
  1007. package/out/zql/src/query/query-internals.js.map +1 -1
  1008. package/out/zql/src/query/query-registry.js +83 -98
  1009. package/out/zql/src/query/query-registry.js.map +1 -1
  1010. package/out/zql/src/query/query.d.ts.map +1 -1
  1011. package/out/zql/src/query/query.js +2 -0
  1012. package/out/zql/src/query/runnable-query-impl.d.ts.map +1 -1
  1013. package/out/zql/src/query/runnable-query-impl.js +30 -55
  1014. package/out/zql/src/query/runnable-query-impl.js.map +1 -1
  1015. package/out/zql/src/query/static-query.js +7 -14
  1016. package/out/zql/src/query/static-query.js.map +1 -1
  1017. package/out/zql/src/query/ttl.js +45 -67
  1018. package/out/zql/src/query/ttl.js.map +1 -1
  1019. package/out/zql/src/query/validate-input.js +23 -20
  1020. package/out/zql/src/query/validate-input.js.map +1 -1
  1021. package/out/zqlite/src/database-storage.js +99 -103
  1022. package/out/zqlite/src/database-storage.js.map +1 -1
  1023. package/out/zqlite/src/db.js +206 -249
  1024. package/out/zqlite/src/db.js.map +1 -1
  1025. package/out/zqlite/src/explain-queries.js +11 -13
  1026. package/out/zqlite/src/explain-queries.js.map +1 -1
  1027. package/out/zqlite/src/internal/sql-inline.js +54 -37
  1028. package/out/zqlite/src/internal/sql-inline.js.map +1 -1
  1029. package/out/zqlite/src/internal/sql.js +17 -15
  1030. package/out/zqlite/src/internal/sql.js.map +1 -1
  1031. package/out/zqlite/src/internal/statement-cache.js +117 -92
  1032. package/out/zqlite/src/internal/statement-cache.js.map +1 -1
  1033. package/out/zqlite/src/mod.js +5 -0
  1034. package/out/zqlite/src/query-builder.js +81 -172
  1035. package/out/zqlite/src/query-builder.js.map +1 -1
  1036. package/out/zqlite/src/query-delegate.js +45 -55
  1037. package/out/zqlite/src/query-delegate.js.map +1 -1
  1038. package/out/zqlite/src/resolve-scalar-subqueries.js +134 -124
  1039. package/out/zqlite/src/resolve-scalar-subqueries.js.map +1 -1
  1040. package/out/zqlite/src/sqlite-cost-model.js +92 -97
  1041. package/out/zqlite/src/sqlite-cost-model.js.map +1 -1
  1042. package/out/zqlite/src/sqlite-stat-fanout.js +304 -286
  1043. package/out/zqlite/src/sqlite-stat-fanout.js.map +1 -1
  1044. package/out/zqlite/src/table-source.js +281 -455
  1045. package/out/zqlite/src/table-source.js.map +1 -1
  1046. package/package.json +7 -7
  1047. package/out/replicache/src/db/index-operation-enum.js +0 -7
  1048. package/out/replicache/src/db/index-operation-enum.js.map +0 -1
  1049. package/out/replicache/src/db/meta-type-enum.js +0 -7
  1050. package/out/replicache/src/db/meta-type-enum.js.map +0 -1
  1051. package/out/replicache/src/format-version-enum.js +0 -11
  1052. package/out/replicache/src/format-version-enum.js.map +0 -1
  1053. package/out/replicache/src/http-status-unauthorized.js +0 -5
  1054. package/out/replicache/src/http-status-unauthorized.js.map +0 -1
  1055. package/out/replicache/src/invoke-kind-enum.js +0 -7
  1056. package/out/replicache/src/invoke-kind-enum.js.map +0 -1
  1057. package/out/replicache/src/sync/handle-pull-response-result-type-enum.js +0 -9
  1058. package/out/replicache/src/sync/handle-pull-response-result-type-enum.js.map +0 -1
  1059. package/out/zero/package.json.js +0 -9
  1060. package/out/zero/package.json.js.map +0 -1
  1061. package/out/zero/src/adapters/drizzle.js.map +0 -1
  1062. package/out/zero/src/adapters/pg.js.map +0 -1
  1063. package/out/zero/src/adapters/postgresjs.js.map +0 -1
  1064. package/out/zero/src/adapters/prisma.js.map +0 -1
  1065. package/out/zero/src/analyze-query.js.map +0 -1
  1066. package/out/zero/src/ast-to-zql.js.map +0 -1
  1067. package/out/zero/src/bindings.js.map +0 -1
  1068. package/out/zero/src/change-protocol/v0.js.map +0 -1
  1069. package/out/zero/src/cli.js.map +0 -1
  1070. package/out/zero/src/deploy-permissions.js.map +0 -1
  1071. package/out/zero/src/expo-sqlite.js.map +0 -1
  1072. package/out/zero/src/op-sqlite.js.map +0 -1
  1073. package/out/zero/src/pg.js.map +0 -1
  1074. package/out/zero/src/react.js.map +0 -1
  1075. package/out/zero/src/server.js.map +0 -1
  1076. package/out/zero/src/solid.js.map +0 -1
  1077. package/out/zero/src/sqlite.js.map +0 -1
  1078. package/out/zero/src/transform-query.js.map +0 -1
  1079. package/out/zero/src/zero.js.map +0 -1
  1080. package/out/zero/src/zqlite.js.map +0 -1
  1081. package/out/zero-cache/src/db/postgres-replica-identity-enum.js +0 -11
  1082. package/out/zero-cache/src/db/postgres-replica-identity-enum.js.map +0 -1
  1083. package/out/zero-cache/src/db/postgres-type-class-enum.js +0 -17
  1084. package/out/zero-cache/src/db/postgres-type-class-enum.js.map +0 -1
  1085. package/out/zero-cache/src/services/change-streamer/error-type-enum.js +0 -9
  1086. package/out/zero-cache/src/services/change-streamer/error-type-enum.js.map +0 -1
@@ -1,84 +1,69 @@
1
- const pgToZqlNumericTypeMap = Object.freeze({
2
- "smallint": "number",
3
- "integer": "number",
4
- "int": "number",
5
- "int2": "number",
6
- "int4": "number",
7
- "int8": "number",
8
- "bigint": "number",
9
- "smallserial": "number",
10
- "serial": "number",
11
- "serial2": "number",
12
- "serial4": "number",
13
- "serial8": "number",
14
- "bigserial": "number",
15
- "decimal": "number",
16
- "numeric": "number",
17
- "real": "number",
18
- "double precision": "number",
19
- "float": "number",
20
- "float4": "number",
21
- "float8": "number"
1
+ //#region ../zero-cache/src/types/pg-data-type.ts
2
+ var pgToZqlNumericTypeMap = Object.freeze({
3
+ "smallint": "number",
4
+ "integer": "number",
5
+ "int": "number",
6
+ "int2": "number",
7
+ "int4": "number",
8
+ "int8": "number",
9
+ "bigint": "number",
10
+ "smallserial": "number",
11
+ "serial": "number",
12
+ "serial2": "number",
13
+ "serial4": "number",
14
+ "serial8": "number",
15
+ "bigserial": "number",
16
+ "decimal": "number",
17
+ "numeric": "number",
18
+ "real": "number",
19
+ "double precision": "number",
20
+ "float": "number",
21
+ "float4": "number",
22
+ "float8": "number"
22
23
  });
23
24
  function isPgNumberType(pgType) {
24
- return Object.hasOwn(pgToZqlNumericTypeMap, formatTypeForLookup(pgType));
25
+ return Object.hasOwn(pgToZqlNumericTypeMap, formatTypeForLookup(pgType));
25
26
  }
26
- const pgToZqlStringTypeMap = Object.freeze({
27
- "bpchar": "string",
28
- "character": "string",
29
- "character varying": "string",
30
- "text": "string",
31
- "uuid": "string",
32
- "varchar": "string"
27
+ var pgToZqlStringTypeMap = Object.freeze({
28
+ "bpchar": "string",
29
+ "character": "string",
30
+ "character varying": "string",
31
+ "text": "string",
32
+ "uuid": "string",
33
+ "varchar": "string"
33
34
  });
34
35
  function isPgStringType(pgType) {
35
- return Object.hasOwn(pgToZqlStringTypeMap, formatTypeForLookup(pgType));
36
+ return Object.hasOwn(pgToZqlStringTypeMap, formatTypeForLookup(pgType));
36
37
  }
37
- const pgToZqlTypeMap = Object.freeze({
38
- // Numeric types
39
- ...pgToZqlNumericTypeMap,
40
- // Date/Time types
41
- "date": "number",
42
- "time": "number",
43
- "time with time zone": "number",
44
- "time without time zone": "number",
45
- "timestamp": "number",
46
- "timestamptz": "number",
47
- "timestamp with time zone": "number",
48
- "timestamp without time zone": "number",
49
- // String types
50
- ...pgToZqlStringTypeMap,
51
- // Boolean types
52
- "bool": "boolean",
53
- "boolean": "boolean",
54
- "json": "json",
55
- "jsonb": "json"
56
- // TODO: Add support for these.
57
- // 'bytea':
38
+ var pgToZqlTypeMap = Object.freeze({
39
+ ...pgToZqlNumericTypeMap,
40
+ "date": "number",
41
+ "time": "number",
42
+ "timetz": "number",
43
+ "time with time zone": "number",
44
+ "time without time zone": "number",
45
+ "timestamp": "number",
46
+ "timestamptz": "number",
47
+ "timestamp with time zone": "number",
48
+ "timestamp without time zone": "number",
49
+ ...pgToZqlStringTypeMap,
50
+ "bool": "boolean",
51
+ "boolean": "boolean",
52
+ "json": "json",
53
+ "jsonb": "json"
58
54
  });
59
55
  function dataTypeToZqlValueType(pgType, isEnum, isArray) {
60
- if (isArray) {
61
- return "json";
62
- }
63
- const valueType = pgToZqlTypeMap[formatTypeForLookup(pgType)];
64
- if (valueType === void 0 && isEnum) {
65
- return "string";
66
- }
67
- return valueType;
56
+ if (isArray) return "json";
57
+ const valueType = pgToZqlTypeMap[formatTypeForLookup(pgType)];
58
+ if (valueType === void 0 && isEnum) return "string";
59
+ return valueType;
68
60
  }
69
61
  function formatTypeForLookup(pgType) {
70
- const startOfArgs = pgType.indexOf("(");
71
- if (startOfArgs === -1) {
72
- return pgType.toLocaleLowerCase();
73
- }
74
- return pgType.toLocaleLowerCase().substring(0, startOfArgs);
62
+ const startOfArgs = pgType.indexOf("(");
63
+ if (startOfArgs === -1) return pgType.toLocaleLowerCase();
64
+ return pgType.toLocaleLowerCase().substring(0, startOfArgs);
75
65
  }
76
- export {
77
- dataTypeToZqlValueType,
78
- isPgNumberType,
79
- isPgStringType,
80
- pgToZqlNumericTypeMap,
81
- pgToZqlStringTypeMap,
82
- pgToZqlTypeMap
83
- };
84
- //# sourceMappingURL=pg-data-type.js.map
66
+ //#endregion
67
+ export { dataTypeToZqlValueType, isPgNumberType, isPgStringType };
68
+
69
+ //# sourceMappingURL=pg-data-type.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"pg-data-type.js","sources":["../../../../../zero-cache/src/types/pg-data-type.ts"],"sourcesContent":["import type {ValueType} from '../../../zero-protocol/src/client-schema.ts';\n\nexport const pgToZqlNumericTypeMap = Object.freeze({\n 'smallint': 'number',\n 'integer': 'number',\n 'int': 'number',\n 'int2': 'number',\n 'int4': 'number',\n 'int8': 'number',\n 'bigint': 'number',\n 'smallserial': 'number',\n 'serial': 'number',\n 'serial2': 'number',\n 'serial4': 'number',\n 'serial8': 'number',\n 'bigserial': 'number',\n 'decimal': 'number',\n 'numeric': 'number',\n 'real': 'number',\n 'double precision': 'number',\n 'float': 'number',\n 'float4': 'number',\n 'float8': 'number',\n});\n\nexport function isPgNumberType(pgType: string): boolean {\n return Object.hasOwn(pgToZqlNumericTypeMap, formatTypeForLookup(pgType));\n}\n\nexport const pgToZqlStringTypeMap = Object.freeze({\n 'bpchar': 'string',\n 'character': 'string',\n 'character varying': 'string',\n 'text': 'string',\n 'uuid': 'string',\n 'varchar': 'string',\n});\n\nexport function isPgStringType(pgType: string): boolean {\n return Object.hasOwn(pgToZqlStringTypeMap, formatTypeForLookup(pgType));\n}\n\nexport const pgToZqlTypeMap = Object.freeze({\n // Numeric types\n ...pgToZqlNumericTypeMap,\n\n // Date/Time types\n 'date': 'number',\n 'time': 'number',\n 'time with time zone': 'number',\n 'time without time zone': 'number',\n 'timestamp': 'number',\n 'timestamptz': 'number',\n 'timestamp with time zone': 'number',\n 'timestamp without time zone': 'number',\n\n // String types\n ...pgToZqlStringTypeMap,\n\n // Boolean types\n 'bool': 'boolean',\n 'boolean': 'boolean',\n\n 'json': 'json',\n 'jsonb': 'json',\n\n // TODO: Add support for these.\n // 'bytea':\n});\n\nexport function dataTypeToZqlValueType(\n pgType: string,\n isEnum: boolean,\n isArray: boolean,\n): ValueType | undefined {\n // We treat pg arrays as JSON values.\n if (isArray) {\n return 'json';\n }\n\n const valueType = (pgToZqlTypeMap as Record<string, ValueType>)[\n formatTypeForLookup(pgType)\n ];\n if (valueType === undefined && isEnum) {\n return 'string';\n }\n return valueType;\n}\n\n// Strips args (i.e. (32) in char(32)) and lowercases.\nfunction formatTypeForLookup(pgType: string): string {\n const startOfArgs = pgType.indexOf('(');\n if (startOfArgs === -1) {\n return pgType.toLocaleLowerCase();\n }\n return pgType.toLocaleLowerCase().substring(0, startOfArgs);\n}\n"],"names":[],"mappings":"AAEO,MAAM,wBAAwB,OAAO,OAAO;AAAA,EACjD,YAAY;AAAA,EACZ,WAAW;AAAA,EACX,OAAO;AAAA,EACP,QAAQ;AAAA,EACR,QAAQ;AAAA,EACR,QAAQ;AAAA,EACR,UAAU;AAAA,EACV,eAAe;AAAA,EACf,UAAU;AAAA,EACV,WAAW;AAAA,EACX,WAAW;AAAA,EACX,WAAW;AAAA,EACX,aAAa;AAAA,EACb,WAAW;AAAA,EACX,WAAW;AAAA,EACX,QAAQ;AAAA,EACR,oBAAoB;AAAA,EACpB,SAAS;AAAA,EACT,UAAU;AAAA,EACV,UAAU;AACZ,CAAC;AAEM,SAAS,eAAe,QAAyB;AACtD,SAAO,OAAO,OAAO,uBAAuB,oBAAoB,MAAM,CAAC;AACzE;AAEO,MAAM,uBAAuB,OAAO,OAAO;AAAA,EAChD,UAAU;AAAA,EACV,aAAa;AAAA,EACb,qBAAqB;AAAA,EACrB,QAAQ;AAAA,EACR,QAAQ;AAAA,EACR,WAAW;AACb,CAAC;AAEM,SAAS,eAAe,QAAyB;AACtD,SAAO,OAAO,OAAO,sBAAsB,oBAAoB,MAAM,CAAC;AACxE;AAEO,MAAM,iBAAiB,OAAO,OAAO;AAAA;AAAA,EAE1C,GAAG;AAAA;AAAA,EAGH,QAAQ;AAAA,EACR,QAAQ;AAAA,EACR,uBAAuB;AAAA,EACvB,0BAA0B;AAAA,EAC1B,aAAa;AAAA,EACb,eAAe;AAAA,EACf,4BAA4B;AAAA,EAC5B,+BAA+B;AAAA;AAAA,EAG/B,GAAG;AAAA;AAAA,EAGH,QAAQ;AAAA,EACR,WAAW;AAAA,EAEX,QAAQ;AAAA,EACR,SAAS;AAAA;AAAA;AAIX,CAAC;AAEM,SAAS,uBACd,QACA,QACA,SACuB;AAEvB,MAAI,SAAS;AACX,WAAO;AAAA,EACT;AAEA,QAAM,YAAa,eACjB,oBAAoB,MAAM,CAC5B;AACA,MAAI,cAAc,UAAa,QAAQ;AACrC,WAAO;AAAA,EACT;AACA,SAAO;AACT;AAGA,SAAS,oBAAoB,QAAwB;AACnD,QAAM,cAAc,OAAO,QAAQ,GAAG;AACtC,MAAI,gBAAgB,IAAI;AACtB,WAAO,OAAO,kBAAA;AAAA,EAChB;AACA,SAAO,OAAO,kBAAA,EAAoB,UAAU,GAAG,WAAW;AAC5D;"}
1
+ {"version":3,"file":"pg-data-type.js","names":[],"sources":["../../../../../zero-cache/src/types/pg-data-type.ts"],"sourcesContent":["import type {ValueType} from '../../../zero-protocol/src/client-schema.ts';\n\nexport const pgToZqlNumericTypeMap = Object.freeze({\n 'smallint': 'number',\n 'integer': 'number',\n 'int': 'number',\n 'int2': 'number',\n 'int4': 'number',\n 'int8': 'number',\n 'bigint': 'number',\n 'smallserial': 'number',\n 'serial': 'number',\n 'serial2': 'number',\n 'serial4': 'number',\n 'serial8': 'number',\n 'bigserial': 'number',\n 'decimal': 'number',\n 'numeric': 'number',\n 'real': 'number',\n 'double precision': 'number',\n 'float': 'number',\n 'float4': 'number',\n 'float8': 'number',\n});\n\nexport function isPgNumberType(pgType: string): boolean {\n return Object.hasOwn(pgToZqlNumericTypeMap, formatTypeForLookup(pgType));\n}\n\nexport const pgToZqlStringTypeMap = Object.freeze({\n 'bpchar': 'string',\n 'character': 'string',\n 'character varying': 'string',\n 'text': 'string',\n 'uuid': 'string',\n 'varchar': 'string',\n});\n\nexport function isPgStringType(pgType: string): boolean {\n return Object.hasOwn(pgToZqlStringTypeMap, formatTypeForLookup(pgType));\n}\n\nexport const pgToZqlTypeMap = Object.freeze({\n // Numeric types\n ...pgToZqlNumericTypeMap,\n\n // Date/Time types\n 'date': 'number',\n 'time': 'number',\n 'timetz': 'number',\n 'time with time zone': 'number',\n 'time without time zone': 'number',\n 'timestamp': 'number',\n 'timestamptz': 'number',\n 'timestamp with time zone': 'number',\n 'timestamp without time zone': 'number',\n\n // String types\n ...pgToZqlStringTypeMap,\n\n // Boolean types\n 'bool': 'boolean',\n 'boolean': 'boolean',\n\n 'json': 'json',\n 'jsonb': 'json',\n\n // TODO: Add support for these.\n // 'bytea':\n});\n\nexport function dataTypeToZqlValueType(\n pgType: string,\n isEnum: boolean,\n isArray: boolean,\n): ValueType | undefined {\n // We treat pg arrays as JSON values.\n if (isArray) {\n return 'json';\n }\n\n const valueType = (pgToZqlTypeMap as Record<string, ValueType>)[\n formatTypeForLookup(pgType)\n ];\n if (valueType === undefined && isEnum) {\n return 'string';\n }\n return valueType;\n}\n\n// Strips args (i.e. (32) in char(32)) and lowercases.\nfunction formatTypeForLookup(pgType: string): string {\n const startOfArgs = pgType.indexOf('(');\n if (startOfArgs === -1) {\n return pgType.toLocaleLowerCase();\n }\n return pgType.toLocaleLowerCase().substring(0, startOfArgs);\n}\n"],"mappings":";AAEA,IAAa,wBAAwB,OAAO,OAAO;CACjD,YAAY;CACZ,WAAW;CACX,OAAO;CACP,QAAQ;CACR,QAAQ;CACR,QAAQ;CACR,UAAU;CACV,eAAe;CACf,UAAU;CACV,WAAW;CACX,WAAW;CACX,WAAW;CACX,aAAa;CACb,WAAW;CACX,WAAW;CACX,QAAQ;CACR,oBAAoB;CACpB,SAAS;CACT,UAAU;CACV,UAAU;CACX,CAAC;AAEF,SAAgB,eAAe,QAAyB;AACtD,QAAO,OAAO,OAAO,uBAAuB,oBAAoB,OAAO,CAAC;;AAG1E,IAAa,uBAAuB,OAAO,OAAO;CAChD,UAAU;CACV,aAAa;CACb,qBAAqB;CACrB,QAAQ;CACR,QAAQ;CACR,WAAW;CACZ,CAAC;AAEF,SAAgB,eAAe,QAAyB;AACtD,QAAO,OAAO,OAAO,sBAAsB,oBAAoB,OAAO,CAAC;;AAGzE,IAAa,iBAAiB,OAAO,OAAO;CAE1C,GAAG;CAGH,QAAQ;CACR,QAAQ;CACR,UAAU;CACV,uBAAuB;CACvB,0BAA0B;CAC1B,aAAa;CACb,eAAe;CACf,4BAA4B;CAC5B,+BAA+B;CAG/B,GAAG;CAGH,QAAQ;CACR,WAAW;CAEX,QAAQ;CACR,SAAS;CAIV,CAAC;AAEF,SAAgB,uBACd,QACA,QACA,SACuB;AAEvB,KAAI,QACF,QAAO;CAGT,MAAM,YAAa,eACjB,oBAAoB,OAAO;AAE7B,KAAI,cAAc,KAAA,KAAa,OAC7B,QAAO;AAET,QAAO;;AAIT,SAAS,oBAAoB,QAAwB;CACnD,MAAM,cAAc,OAAO,QAAQ,IAAI;AACvC,KAAI,gBAAgB,GAClB,QAAO,OAAO,mBAAmB;AAEnC,QAAO,OAAO,mBAAmB,CAAC,UAAU,GAAG,YAAY"}
@@ -1,19 +1,12 @@
1
- const JSON = 114;
2
- const DATE = 1082;
3
- const TIME = 1083;
4
- const TIMESTAMP = 1114;
5
- const TIMESTAMPTZ = 1184;
6
- const TIMETZ = 1266;
7
- const NUMERIC = 1700;
8
- const JSONB = 3802;
9
- export {
10
- DATE,
11
- JSON,
12
- JSONB,
13
- NUMERIC,
14
- TIME,
15
- TIMESTAMP,
16
- TIMESTAMPTZ,
17
- TIMETZ
18
- };
19
- //# sourceMappingURL=pg-types.js.map
1
+ //#region ../zero-cache/src/types/pg-types.ts
2
+ var DATE = 1082;
3
+ var TIME = 1083;
4
+ var TIMESTAMP = 1114;
5
+ var TIMESTAMPTZ = 1184;
6
+ var TIMETZ = 1266;
7
+ var NUMERIC = 1700;
8
+ var JSONB = 3802;
9
+ //#endregion
10
+ export { DATE, JSONB, NUMERIC, TIME, TIMESTAMP, TIMESTAMPTZ, TIMETZ };
11
+
12
+ //# sourceMappingURL=pg-types.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"pg-types.js","sources":["../../../../../zero-cache/src/types/pg-types.ts"],"sourcesContent":["// Forked from https=//github.com/brianc/node-pg-types/blob/5b26b826466cff4a9092b8c9e31960fe293ef3d9/lib/builtins.js\n\n/**\n * Following query was used to generate this file=\n\n SELECT json_object_agg(UPPER(PT.typname), PT.oid==int4 ORDER BY pt.oid)\n FROM pg_type PT\n WHERE typnamespace = (SELECT pgn.oid FROM pg_namespace pgn WHERE nspname = 'pg_catalog') -- Take only builting Postgres types with stable OID (extension types are not guaranted to be stable)\n AND typtype = 'b' -- Only basic types\n AND typelem = 0 -- Ignore aliases\n AND typisdefined -- Ignore undefined types\n */\n\nexport const BOOL = 16;\nexport const BYTEA = 17;\nexport const CHAR = 18;\nexport const INT8 = 20;\nexport const INT2 = 21;\nexport const INT4 = 23;\nexport const REGPROC = 24;\nexport const TEXT = 25;\nexport const OID = 26;\nexport const TID = 27;\nexport const XID = 28;\nexport const CID = 29;\nexport const JSON = 114;\nexport const XML = 142;\nexport const PG_NODE_TREE = 194;\nexport const SMGR = 210;\nexport const PATH = 602;\nexport const POLYGON = 604;\nexport const CIDR = 650;\nexport const FLOAT4 = 700;\nexport const FLOAT8 = 701;\nexport const ABSTIME = 702;\nexport const RELTIME = 703;\nexport const TINTERVAL = 704;\nexport const CIRCLE = 718;\nexport const MACADDR8 = 774;\nexport const MONEY = 790;\nexport const MACADDR = 829;\nexport const INET = 869;\nexport const ACLITEM = 1033;\nexport const BPCHAR = 1042;\nexport const VARCHAR = 1043;\nexport const DATE = 1082;\nexport const TIME = 1083;\nexport const TIMESTAMP = 1114;\nexport const TIMESTAMPTZ = 1184;\nexport const INTERVAL = 1186;\nexport const TIMETZ = 1266;\nexport const BIT = 1560;\nexport const VARBIT = 1562;\nexport const NUMERIC = 1700;\nexport const REFCURSOR = 1790;\nexport const REGPROCEDURE = 2202;\nexport const REGOPER = 2203;\nexport const REGOPERATOR = 2204;\nexport const REGCLASS = 2205;\nexport const REGTYPE = 2206;\nexport const UUID = 2950;\nexport const TXID_SNAPSHOT = 2970;\nexport const PG_LSN = 3220;\nexport const PG_NDISTINCT = 3361;\nexport const PG_DEPENDENCIES = 3402;\nexport const TSVECTOR = 3614;\nexport const TSQUERY = 3615;\nexport const GTSVECTOR = 3642;\nexport const REGCONFIG = 3734;\nexport const REGDICTIONARY = 3769;\nexport const JSONB = 3802;\nexport const REGNAMESPACE = 4089;\nexport const REGROLE = 4096;\n"],"names":[],"mappings":"AAyBO,MAAM,OAAO;AAoBb,MAAM,OAAO;AACb,MAAM,OAAO;AACb,MAAM,YAAY;AAClB,MAAM,cAAc;AAEpB,MAAM,SAAS;AAGf,MAAM,UAAU;AAiBhB,MAAM,QAAQ;"}
1
+ {"version":3,"file":"pg-types.js","names":[],"sources":["../../../../../zero-cache/src/types/pg-types.ts"],"sourcesContent":["// Forked from https=//github.com/brianc/node-pg-types/blob/5b26b826466cff4a9092b8c9e31960fe293ef3d9/lib/builtins.js\n\n/**\n * Following query was used to generate this file=\n\n SELECT json_object_agg(UPPER(PT.typname), PT.oid==int4 ORDER BY pt.oid)\n FROM pg_type PT\n WHERE typnamespace = (SELECT pgn.oid FROM pg_namespace pgn WHERE nspname = 'pg_catalog') -- Take only builting Postgres types with stable OID (extension types are not guaranted to be stable)\n AND typtype = 'b' -- Only basic types\n AND typelem = 0 -- Ignore aliases\n AND typisdefined -- Ignore undefined types\n */\n\nexport const BOOL = 16;\nexport const BYTEA = 17;\nexport const CHAR = 18;\nexport const INT8 = 20;\nexport const INT2 = 21;\nexport const INT4 = 23;\nexport const REGPROC = 24;\nexport const TEXT = 25;\nexport const OID = 26;\nexport const TID = 27;\nexport const XID = 28;\nexport const CID = 29;\nexport const JSON = 114;\nexport const XML = 142;\nexport const PG_NODE_TREE = 194;\nexport const SMGR = 210;\nexport const PATH = 602;\nexport const POLYGON = 604;\nexport const CIDR = 650;\nexport const FLOAT4 = 700;\nexport const FLOAT8 = 701;\nexport const ABSTIME = 702;\nexport const RELTIME = 703;\nexport const TINTERVAL = 704;\nexport const CIRCLE = 718;\nexport const MACADDR8 = 774;\nexport const MONEY = 790;\nexport const MACADDR = 829;\nexport const INET = 869;\nexport const ACLITEM = 1033;\nexport const BPCHAR = 1042;\nexport const VARCHAR = 1043;\nexport const DATE = 1082;\nexport const TIME = 1083;\nexport const TIMESTAMP = 1114;\nexport const TIMESTAMPTZ = 1184;\nexport const INTERVAL = 1186;\nexport const TIMETZ = 1266;\nexport const BIT = 1560;\nexport const VARBIT = 1562;\nexport const NUMERIC = 1700;\nexport const REFCURSOR = 1790;\nexport const REGPROCEDURE = 2202;\nexport const REGOPER = 2203;\nexport const REGOPERATOR = 2204;\nexport const REGCLASS = 2205;\nexport const REGTYPE = 2206;\nexport const UUID = 2950;\nexport const TXID_SNAPSHOT = 2970;\nexport const PG_LSN = 3220;\nexport const PG_NDISTINCT = 3361;\nexport const PG_DEPENDENCIES = 3402;\nexport const TSVECTOR = 3614;\nexport const TSQUERY = 3615;\nexport const GTSVECTOR = 3642;\nexport const REGCONFIG = 3734;\nexport const REGDICTIONARY = 3769;\nexport const JSONB = 3802;\nexport const REGNAMESPACE = 4089;\nexport const REGROLE = 4096;\n"],"mappings":";AA6CA,IAAa,OAAO;AACpB,IAAa,OAAO;AACpB,IAAa,YAAY;AACzB,IAAa,cAAc;AAE3B,IAAa,SAAS;AAGtB,IAAa,UAAU;AAiBvB,IAAa,QAAQ"}
@@ -1,232 +1,158 @@
1
- import { PreciseDate } from "@google-cloud/precise-date";
2
- import { OID } from "@postgresql-typed/oids";
3
- import postgres from "postgres";
4
1
  import { BigIntJSON } from "../../../shared/src/bigint-json.js";
5
2
  import { randInt } from "../../../shared/src/rand.js";
6
- import { NUMERIC, DATE, TIME, TIMETZ, TIMESTAMP, TIMESTAMPTZ, JSON, JSONB } from "./pg-types.js";
3
+ import { DATE, JSONB, NUMERIC, TIME, TIMESTAMP, TIMESTAMPTZ, TIMETZ } from "./pg-types.js";
4
+ import postgres from "postgres";
5
+ import { PreciseDate } from "@google-cloud/precise-date";
6
+ import { OID } from "@postgresql-typed/oids";
7
+ //#region ../zero-cache/src/types/pg.ts
7
8
  function timestampToFpMillis(timestamp) {
8
- timestamp = timestamp.replace(" ", "T");
9
- const positiveOffset = timestamp.includes("+");
10
- const tzSplitIndex = positiveOffset ? timestamp.lastIndexOf("+") : timestamp.indexOf("-", timestamp.indexOf("T"));
11
- const timezoneOffset = tzSplitIndex === -1 ? void 0 : timestamp.substring(tzSplitIndex);
12
- const tsWithoutTimezone = (tzSplitIndex === -1 ? timestamp : timestamp.substring(0, tzSplitIndex)) + "Z";
13
- try {
14
- const fullTime = new PreciseDate(tsWithoutTimezone).getFullTime();
15
- const millis = Number(fullTime / 1000000n);
16
- const nanos = Number(fullTime % 1000000n);
17
- const ret = millis + nanos * 1e-6;
18
- if (timezoneOffset) {
19
- const [hours, minutes] = timezoneOffset.split(":");
20
- const offset = Math.abs(Number(hours)) * 60 + (minutes ? Number(minutes) : 0);
21
- const offsetMillis = offset * 60 * 1e3;
22
- return positiveOffset ? ret - offsetMillis : ret + offsetMillis;
23
- }
24
- return ret;
25
- } catch (e) {
26
- throw new Error(`Error parsing ${timestamp}`, { cause: e });
27
- }
9
+ timestamp = timestamp.replace(" ", "T");
10
+ const positiveOffset = timestamp.includes("+");
11
+ const tzSplitIndex = positiveOffset ? timestamp.lastIndexOf("+") : timestamp.indexOf("-", timestamp.indexOf("T"));
12
+ const timezoneOffset = tzSplitIndex === -1 ? void 0 : timestamp.substring(tzSplitIndex);
13
+ const tsWithoutTimezone = (tzSplitIndex === -1 ? timestamp : timestamp.substring(0, tzSplitIndex)) + "Z";
14
+ try {
15
+ const fullTime = new PreciseDate(tsWithoutTimezone).getFullTime();
16
+ const ret = Number(fullTime / 1000000n) + Number(fullTime % 1000000n) * 1e-6;
17
+ if (timezoneOffset) {
18
+ const [hours, minutes] = timezoneOffset.split(":");
19
+ const offsetMillis = (Math.abs(Number(hours)) * 60 + (minutes ? Number(minutes) : 0)) * 60 * 1e3;
20
+ return positiveOffset ? ret - offsetMillis : ret + offsetMillis;
21
+ }
22
+ return ret;
23
+ } catch (e) {
24
+ throw new Error(`Error parsing ${timestamp}`, { cause: e });
25
+ }
28
26
  }
29
27
  function serializeTimestamp(val) {
30
- switch (typeof val) {
31
- case "string":
32
- return val;
33
- // Let Postgres parse it
34
- case "number": {
35
- if (Number.isInteger(val)) {
36
- return new PreciseDate(val).toISOString();
37
- }
38
- const nanoseconds = 1000000n * BigInt(Math.trunc(val)) + BigInt(Math.trunc(val % 1 * 1e6));
39
- return new PreciseDate(nanoseconds).toISOString();
40
- }
41
- // Note: Don't support bigint inputs until we decide what the semantics are (e.g. micros vs nanos)
42
- // case 'bigint':
43
- // return new PreciseDate(val).toISOString();
44
- default:
45
- if (val instanceof Date) {
46
- return val.toISOString();
47
- }
48
- }
49
- throw new Error(`Unsupported type "${typeof val}" for timestamp: ${val}`);
28
+ switch (typeof val) {
29
+ case "string": return val;
30
+ case "number":
31
+ if (Number.isInteger(val)) return new PreciseDate(val).toISOString();
32
+ return new PreciseDate(1000000n * BigInt(Math.trunc(val)) + BigInt(Math.trunc(val % 1 * 1e6))).toISOString();
33
+ default: if (val instanceof Date) return val.toISOString();
34
+ }
35
+ throw new Error(`Unsupported type "${typeof val}" for timestamp: ${val}`);
50
36
  }
51
- const MILLISECONDS_PER_DAY = 24 * 60 * 60 * 1e3;
37
+ var MILLISECONDS_PER_DAY = 1440 * 60 * 1e3;
52
38
  function millisecondsToPostgresTime(milliseconds) {
53
- if (milliseconds < 0) {
54
- throw new Error("Milliseconds cannot be negative");
55
- }
56
- if (milliseconds >= MILLISECONDS_PER_DAY) {
57
- throw new Error(
58
- `Milliseconds cannot exceed 24 hours (${MILLISECONDS_PER_DAY}ms)`
59
- );
60
- }
61
- milliseconds = Math.floor(milliseconds);
62
- const totalSeconds = Math.floor(milliseconds / 1e3);
63
- const hours = Math.floor(totalSeconds / 3600);
64
- const minutes = Math.floor(totalSeconds % 3600 / 60);
65
- const seconds = totalSeconds % 60;
66
- const ms = milliseconds % 1e3;
67
- return `${hours.toString().padStart(2, "0")}:${minutes.toString().padStart(2, "0")}:${seconds.toString().padStart(2, "0")}.${ms.toString().padStart(3, "0")}+00`;
39
+ if (milliseconds < 0) throw new Error("Milliseconds cannot be negative");
40
+ if (milliseconds >= MILLISECONDS_PER_DAY) throw new Error(`Milliseconds cannot exceed 24 hours (${MILLISECONDS_PER_DAY}ms)`);
41
+ milliseconds = Math.floor(milliseconds);
42
+ const totalSeconds = Math.floor(milliseconds / 1e3);
43
+ const hours = Math.floor(totalSeconds / 3600);
44
+ const minutes = Math.floor(totalSeconds % 3600 / 60);
45
+ const seconds = totalSeconds % 60;
46
+ const ms = milliseconds % 1e3;
47
+ return `${hours.toString().padStart(2, "0")}:${minutes.toString().padStart(2, "0")}:${seconds.toString().padStart(2, "0")}.${ms.toString().padStart(3, "0")}+00`;
68
48
  }
69
49
  function postgresTimeToMilliseconds(timeString) {
70
- if (!timeString || typeof timeString !== "string") {
71
- throw new Error("Invalid time string: must be a non-empty string");
72
- }
73
- const timeRegex = /^(\d{1,2}):(\d{2}):(\d{2})(?:\.(\d{1,6}))?(?:([+-])(\d{1,2})(?::(\d{2}))?)?$/;
74
- const match = timeString.match(timeRegex);
75
- if (!match) {
76
- throw new Error(
77
- `Invalid time format: "${timeString}". Expected HH:MM:SS[.mmm][+|-HH[:MM]]`
78
- );
79
- }
80
- const hours = parseInt(match[1], 10);
81
- const minutes = parseInt(match[2], 10);
82
- const seconds = parseInt(match[3], 10);
83
- let milliseconds = 0;
84
- if (match[4]) {
85
- const msString = match[4].padEnd(6, "0");
86
- milliseconds = parseInt(msString.slice(0, 3), 10);
87
- }
88
- if (hours < 0 || hours > 24) {
89
- throw new Error(
90
- `Invalid hours: ${hours}. Must be between 0 and 24 (24 means end of day)`
91
- );
92
- }
93
- if (minutes < 0 || minutes >= 60) {
94
- throw new Error(`Invalid minutes: ${minutes}. Must be between 0 and 59`);
95
- }
96
- if (seconds < 0 || seconds >= 60) {
97
- throw new Error(`Invalid seconds: ${seconds}. Must be between 0 and 59`);
98
- }
99
- if (milliseconds < 0 || milliseconds >= 1e3) {
100
- throw new Error(
101
- `Invalid milliseconds: ${milliseconds}. Must be between 0 and 999`
102
- );
103
- }
104
- if (hours === 24 && (minutes !== 0 || seconds !== 0 || milliseconds !== 0)) {
105
- throw new Error(
106
- "Invalid time: when hours is 24, minutes, seconds, and milliseconds must be 0"
107
- );
108
- }
109
- let totalMs = hours * 36e5 + minutes * 6e4 + seconds * 1e3 + milliseconds;
110
- if (match[5]) {
111
- const sign = match[5] === "+" ? 1 : -1;
112
- const tzHours = parseInt(match[6], 10);
113
- const tzMinutes = match[7] ? parseInt(match[7], 10) : 0;
114
- const offsetMs = sign * (tzHours * 36e5 + tzMinutes * 6e4);
115
- totalMs -= offsetMs;
116
- }
117
- if (totalMs > MILLISECONDS_PER_DAY || totalMs < 0) {
118
- return (totalMs % MILLISECONDS_PER_DAY + MILLISECONDS_PER_DAY) % MILLISECONDS_PER_DAY;
119
- }
120
- return totalMs;
50
+ if (!timeString || typeof timeString !== "string") throw new Error("Invalid time string: must be a non-empty string");
51
+ const match = timeString.match(/^(\d{1,2}):(\d{2}):(\d{2})(?:\.(\d{1,6}))?(?:([+-])(\d{1,2})(?::(\d{2}))?)?$/);
52
+ if (!match) throw new Error(`Invalid time format: "${timeString}". Expected HH:MM:SS[.mmm][+|-HH[:MM]]`);
53
+ const hours = parseInt(match[1], 10);
54
+ const minutes = parseInt(match[2], 10);
55
+ const seconds = parseInt(match[3], 10);
56
+ let milliseconds = 0;
57
+ if (match[4]) {
58
+ const msString = match[4].padEnd(6, "0");
59
+ milliseconds = parseInt(msString.slice(0, 3), 10);
60
+ }
61
+ if (hours < 0 || hours > 24) throw new Error(`Invalid hours: ${hours}. Must be between 0 and 24 (24 means end of day)`);
62
+ if (minutes < 0 || minutes >= 60) throw new Error(`Invalid minutes: ${minutes}. Must be between 0 and 59`);
63
+ if (seconds < 0 || seconds >= 60) throw new Error(`Invalid seconds: ${seconds}. Must be between 0 and 59`);
64
+ if (milliseconds < 0 || milliseconds >= 1e3) throw new Error(`Invalid milliseconds: ${milliseconds}. Must be between 0 and 999`);
65
+ if (hours === 24 && (minutes !== 0 || seconds !== 0 || milliseconds !== 0)) throw new Error("Invalid time: when hours is 24, minutes, seconds, and milliseconds must be 0");
66
+ let totalMs = hours * 36e5 + minutes * 6e4 + seconds * 1e3 + milliseconds;
67
+ if (match[5]) {
68
+ const sign = match[5] === "+" ? 1 : -1;
69
+ const tzHours = parseInt(match[6], 10);
70
+ const tzMinutes = match[7] ? parseInt(match[7], 10) : 0;
71
+ const offsetMs = sign * (tzHours * 36e5 + tzMinutes * 6e4);
72
+ totalMs -= offsetMs;
73
+ }
74
+ if (totalMs > MILLISECONDS_PER_DAY || totalMs < 0) return (totalMs % MILLISECONDS_PER_DAY + MILLISECONDS_PER_DAY) % MILLISECONDS_PER_DAY;
75
+ return totalMs;
121
76
  }
122
77
  function dateToUTCMidnight(date) {
123
- const d = new Date(date);
124
- return Date.UTC(d.getUTCFullYear(), d.getUTCMonth(), d.getUTCDate());
78
+ const d = new Date(date);
79
+ return Date.UTC(d.getUTCFullYear(), d.getUTCMonth(), d.getUTCDate());
125
80
  }
126
- const postgresTypeConfig = ({ sendStringAsJson } = {}) => ({
127
- // Type the type IDs as `number` so that Typescript doesn't complain about
128
- // referencing external types during type inference.
129
- types: {
130
- bigint: postgres.BigInt,
131
- json: {
132
- to: JSON,
133
- from: [JSON, JSONB],
134
- serialize: sendStringAsJson ? (x) => typeof x === "string" ? x : BigIntJSON.stringify(x) : BigIntJSON.stringify,
135
- parse: BigIntJSON.parse
136
- },
137
- // Timestamps are converted to PreciseDate objects.
138
- timestamp: {
139
- to: TIMESTAMP,
140
- from: [TIMESTAMP, TIMESTAMPTZ],
141
- serialize: serializeTimestamp,
142
- parse: timestampToFpMillis
143
- },
144
- // Times are converted as strings
145
- time: {
146
- to: TIME,
147
- from: [TIME, TIMETZ],
148
- serialize: (x) => {
149
- switch (typeof x) {
150
- case "string":
151
- return x;
152
- // Let Postgres parse it
153
- case "number":
154
- return millisecondsToPostgresTime(x);
155
- }
156
- throw new Error(`Unsupported type "${typeof x}" for time: ${x}`);
157
- },
158
- parse: postgresTimeToMilliseconds
159
- },
160
- // The DATE type is stored directly as the PG normalized date string.
161
- date: {
162
- to: DATE,
163
- from: [DATE],
164
- serialize: (x) => (x instanceof Date ? x : new Date(x)).toISOString(),
165
- parse: dateToUTCMidnight
166
- },
167
- // Returns a `js` number which can lose precision for large numbers.
168
- // JS number is 53 bits so this should generally not occur.
169
- // An API will be provided for users to override this type.
170
- numeric: {
171
- to: NUMERIC,
172
- from: [NUMERIC],
173
- serialize: (x) => String(x),
174
- // pg expects a string
175
- parse: (x) => Number(x)
176
- }
177
- }
178
- });
81
+ /**
82
+ * Configures types for the Postgres.js client library (`postgres`).
83
+ *
84
+ * @param jsonAsString Keep JSON / JSONB values as strings instead of parsing.
85
+ */
86
+ var postgresTypeConfig = ({ sendStringAsJson } = {}) => ({ types: {
87
+ bigint: postgres.BigInt,
88
+ json: {
89
+ to: 114,
90
+ from: [114, JSONB],
91
+ serialize: sendStringAsJson ? (x) => typeof x === "string" ? x : BigIntJSON.stringify(x) : BigIntJSON.stringify,
92
+ parse: BigIntJSON.parse
93
+ },
94
+ timestamp: {
95
+ to: TIMESTAMP,
96
+ from: [TIMESTAMP, TIMESTAMPTZ],
97
+ serialize: serializeTimestamp,
98
+ parse: timestampToFpMillis
99
+ },
100
+ time: {
101
+ to: TIME,
102
+ from: [TIME, TIMETZ],
103
+ serialize: (x) => {
104
+ switch (typeof x) {
105
+ case "string": return x;
106
+ case "number": return millisecondsToPostgresTime(x);
107
+ }
108
+ throw new Error(`Unsupported type "${typeof x}" for time: ${x}`);
109
+ },
110
+ parse: postgresTimeToMilliseconds
111
+ },
112
+ date: {
113
+ to: DATE,
114
+ from: [DATE],
115
+ serialize: (x) => (x instanceof Date ? x : new Date(x)).toISOString(),
116
+ parse: dateToUTCMidnight
117
+ },
118
+ numeric: {
119
+ to: NUMERIC,
120
+ from: [NUMERIC],
121
+ serialize: (x) => String(x),
122
+ parse: (x) => Number(x)
123
+ }
124
+ } });
179
125
  function pgClient(lc, connectionURI, options, opts) {
180
- const onnotice = (n) => {
181
- switch (n.severity) {
182
- case "NOTICE":
183
- return;
184
- // silenced
185
- case "DEBUG":
186
- lc.debug?.(n);
187
- return;
188
- case "WARNING":
189
- case "EXCEPTION":
190
- lc.error?.(n);
191
- return;
192
- case "LOG":
193
- case "INFO":
194
- default:
195
- lc.info?.(n);
196
- }
197
- };
198
- const url = new URL(connectionURI);
199
- const sslFlag = url.searchParams.get("ssl") ?? url.searchParams.get("sslmode") ?? "prefer";
200
- let ssl;
201
- if (sslFlag === "disable" || sslFlag === "false") {
202
- ssl = false;
203
- } else if (sslFlag === "no-verify") {
204
- ssl = { rejectUnauthorized: false };
205
- } else {
206
- ssl = sslFlag;
207
- }
208
- const maxLifetimeSeconds = randInt(5 * 60, 10 * 60);
209
- return postgres(connectionURI, {
210
- ...postgresTypeConfig(opts),
211
- onnotice,
212
- ["max_lifetime"]: maxLifetimeSeconds,
213
- ssl,
214
- ...options
215
- });
126
+ const onnotice = (n) => {
127
+ switch (n.severity) {
128
+ case "NOTICE": return;
129
+ case "DEBUG":
130
+ lc.debug?.(n);
131
+ return;
132
+ case "WARNING":
133
+ case "EXCEPTION":
134
+ lc.error?.(n);
135
+ return;
136
+ default: lc.info?.(n);
137
+ }
138
+ };
139
+ const url = new URL(connectionURI);
140
+ const sslFlag = url.searchParams.get("ssl") ?? url.searchParams.get("sslmode") ?? "prefer";
141
+ let ssl;
142
+ if (sslFlag === "disable" || sslFlag === "false") ssl = false;
143
+ else if (sslFlag === "no-verify") ssl = { rejectUnauthorized: false };
144
+ else ssl = sslFlag;
145
+ const maxLifetimeSeconds = randInt(300, 600);
146
+ return postgres(connectionURI, {
147
+ ...postgresTypeConfig(opts),
148
+ onnotice,
149
+ ["max_lifetime"]: maxLifetimeSeconds,
150
+ ssl,
151
+ ...options
152
+ });
216
153
  }
217
- Object.freeze(
218
- Object.fromEntries(
219
- Object.entries(OID).map(([name, oid]) => [
220
- oid,
221
- name.startsWith("_") ? `${name.substring(1)}[]` : name
222
- ])
223
- )
224
- );
225
- export {
226
- millisecondsToPostgresTime,
227
- pgClient,
228
- postgresTimeToMilliseconds,
229
- postgresTypeConfig,
230
- timestampToFpMillis
231
- };
232
- //# sourceMappingURL=pg.js.map
154
+ Object.freeze(Object.fromEntries(Object.entries(OID).map(([name, oid]) => [oid, name.startsWith("_") ? `${name.substring(1)}[]` : name])));
155
+ //#endregion
156
+ export { pgClient };
157
+
158
+ //# sourceMappingURL=pg.js.map