@rocicorp/zero 0.23.2025101600 → 0.24.3000-canary.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (681) hide show
  1. package/out/analyze-query/src/bin-analyze.d.ts.map +1 -1
  2. package/out/analyze-query/src/bin-analyze.js +12 -12
  3. package/out/analyze-query/src/bin-analyze.js.map +1 -1
  4. package/out/analyze-query/src/bin-transform.d.ts.map +1 -1
  5. package/out/analyze-query/src/bin-transform.js +3 -2
  6. package/out/analyze-query/src/bin-transform.js.map +1 -1
  7. package/out/analyze-query/src/explain-queries.d.ts +1 -1
  8. package/out/analyze-query/src/explain-queries.d.ts.map +1 -1
  9. package/out/analyze-query/src/run-ast.d.ts +13 -23
  10. package/out/analyze-query/src/run-ast.d.ts.map +1 -1
  11. package/out/analyze-query/src/run-ast.js +41 -20
  12. package/out/analyze-query/src/run-ast.js.map +1 -1
  13. package/out/ast-to-zql/src/ast-to-zql.js +6 -5
  14. package/out/ast-to-zql/src/ast-to-zql.js.map +1 -1
  15. package/out/ast-to-zql/src/bin.js +1 -1
  16. package/out/ast-to-zql/src/format.js +1 -1
  17. package/out/chunk-AFADJQ2O.js +1 -0
  18. package/out/chunk-AFADJQ2O.js.map +7 -0
  19. package/out/chunk-ASRS2LFV.js +35 -0
  20. package/out/chunk-ASRS2LFV.js.map +7 -0
  21. package/out/chunk-ECUMGQGC.js +220 -0
  22. package/out/chunk-ECUMGQGC.js.map +7 -0
  23. package/out/{chunk-SGW2EIVJ.js → chunk-EZM3XBAB.js} +1 -1
  24. package/out/{chunk-SGW2EIVJ.js.map → chunk-EZM3XBAB.js.map} +2 -2
  25. package/out/{chunk-6N4NUSIN.js → chunk-KKQHE37F.js} +16 -9
  26. package/out/chunk-KKQHE37F.js.map +7 -0
  27. package/out/{chunk-WFFZJYGV.js → chunk-O26W3FL4.js} +4870 -442
  28. package/out/chunk-O26W3FL4.js.map +7 -0
  29. package/out/{chunk-G442PJSB.js → chunk-VHLCXJ6Q.js} +1801 -5008
  30. package/out/chunk-VHLCXJ6Q.js.map +7 -0
  31. package/out/{chunk-O7W55FT4.js → chunk-VZOYWIRW.js} +1 -1
  32. package/out/chunk-VZOYWIRW.js.map +7 -0
  33. package/out/chunk-ZZXMKAAG.js +64 -0
  34. package/out/chunk-ZZXMKAAG.js.map +7 -0
  35. package/out/expo-sqlite.js +11 -0
  36. package/out/expo-sqlite.js.map +7 -0
  37. package/out/{inspector-YIRP3TTL.js → inspector-IU2HG74I.js} +2 -2
  38. package/out/lazy-inspector-NCBESZMS.js +574 -0
  39. package/out/lazy-inspector-NCBESZMS.js.map +7 -0
  40. package/out/op-sqlite.js +80 -0
  41. package/out/op-sqlite.js.map +7 -0
  42. package/out/react-native.js +18 -334
  43. package/out/react-native.js.map +4 -4
  44. package/out/react.js +104 -41
  45. package/out/react.js.map +2 -2
  46. package/out/replicache/src/btree/read.d.ts.map +1 -1
  47. package/out/replicache/src/btree/write.d.ts.map +1 -1
  48. package/out/replicache/src/call-default-fetch.d.ts.map +1 -1
  49. package/out/replicache/src/connection-loop.d.ts.map +1 -1
  50. package/out/replicache/src/dag/key-type-enum.d.ts.map +1 -1
  51. package/out/replicache/src/dag/lazy-store.d.ts.map +1 -1
  52. package/out/replicache/src/db/index-operation-enum.d.ts.map +1 -1
  53. package/out/replicache/src/db/meta-type-enum.d.ts.map +1 -1
  54. package/out/replicache/src/deleted-clients.d.ts +17 -10
  55. package/out/replicache/src/deleted-clients.d.ts.map +1 -1
  56. package/out/replicache/src/expo-sqlite.d.ts +2 -0
  57. package/out/replicache/src/expo-sqlite.d.ts.map +1 -0
  58. package/out/replicache/src/format-version-enum.d.ts.map +1 -1
  59. package/out/replicache/src/get-default-puller.d.ts.map +1 -1
  60. package/out/replicache/src/invoke-kind-enum.d.ts.map +1 -1
  61. package/out/replicache/src/kv/expo-sqlite/store.d.ts +11 -0
  62. package/out/replicache/src/kv/expo-sqlite/store.d.ts.map +1 -0
  63. package/out/replicache/src/kv/idb-store.d.ts.map +1 -1
  64. package/out/replicache/src/kv/mem-store.d.ts.map +1 -1
  65. package/out/replicache/src/kv/op-sqlite/store.d.ts +14 -0
  66. package/out/replicache/src/kv/op-sqlite/store.d.ts.map +1 -0
  67. package/out/replicache/src/kv/op-sqlite/types.d.ts +13 -0
  68. package/out/replicache/src/kv/op-sqlite/types.d.ts.map +1 -0
  69. package/out/replicache/src/kv/read-impl.d.ts.map +1 -1
  70. package/out/replicache/src/kv/sqlite-store.d.ts +37 -63
  71. package/out/replicache/src/kv/sqlite-store.d.ts.map +1 -1
  72. package/out/replicache/src/kv/throw-if-closed.d.ts +12 -0
  73. package/out/replicache/src/kv/throw-if-closed.d.ts.map +1 -0
  74. package/out/replicache/src/kv/write-impl-base.d.ts.map +1 -1
  75. package/out/replicache/src/kv/write-impl.d.ts.map +1 -1
  76. package/out/replicache/src/op-sqlite.d.ts +2 -0
  77. package/out/replicache/src/op-sqlite.d.ts.map +1 -0
  78. package/out/replicache/src/persist/client-gc.d.ts.map +1 -1
  79. package/out/replicache/src/persist/client-group-gc.d.ts +2 -3
  80. package/out/replicache/src/persist/client-group-gc.d.ts.map +1 -1
  81. package/out/replicache/src/persist/clients.d.ts +2 -1
  82. package/out/replicache/src/persist/clients.d.ts.map +1 -1
  83. package/out/replicache/src/persist/collect-idb-databases.d.ts.map +1 -1
  84. package/out/replicache/src/persist/gather-not-cached-visitor.d.ts.map +1 -1
  85. package/out/replicache/src/process-scheduler.d.ts.map +1 -1
  86. package/out/replicache/src/replicache-impl.d.ts.map +1 -1
  87. package/out/replicache/src/sqlite.d.ts +3 -0
  88. package/out/replicache/src/sqlite.d.ts.map +1 -0
  89. package/out/replicache/src/sync/handle-pull-response-result-type-enum.d.ts.map +1 -1
  90. package/out/replicache/src/sync/pull.d.ts.map +1 -1
  91. package/out/replicache/src/transactions.d.ts +1 -1
  92. package/out/replicache/src/transactions.d.ts.map +1 -1
  93. package/out/shared/src/bigint-json.d.ts.map +1 -1
  94. package/out/shared/src/bigint-json.js +1 -2
  95. package/out/shared/src/bigint-json.js.map +1 -1
  96. package/out/shared/src/btree-set.js +3 -5
  97. package/out/shared/src/btree-set.js.map +1 -1
  98. package/out/shared/src/config.d.ts.map +1 -1
  99. package/out/shared/src/config.js.map +1 -1
  100. package/out/shared/src/custom-key-map.js +1 -1
  101. package/out/shared/src/custom-key-set.js +1 -1
  102. package/out/shared/src/deep-merge.d.ts +1 -1
  103. package/out/shared/src/deep-merge.d.ts.map +1 -1
  104. package/out/shared/src/json.js +1 -1
  105. package/out/shared/src/logging.d.ts +1 -1
  106. package/out/shared/src/logging.d.ts.map +1 -1
  107. package/out/shared/src/logging.js +2 -2
  108. package/out/shared/src/logging.js.map +1 -1
  109. package/out/shared/src/must.js +1 -1
  110. package/out/shared/src/options.js +1 -1
  111. package/out/shared/src/sentinels.d.ts +2 -0
  112. package/out/shared/src/sentinels.d.ts.map +1 -1
  113. package/out/shared/src/sentinels.js +7 -0
  114. package/out/shared/src/sentinels.js.map +1 -0
  115. package/out/shared/src/size-of-value.d.ts.map +1 -0
  116. package/out/shared/src/valita.d.ts.map +1 -1
  117. package/out/shared/src/valita.js +2 -3
  118. package/out/shared/src/valita.js.map +1 -1
  119. package/out/solid.js +69 -24
  120. package/out/solid.js.map +3 -3
  121. package/out/sqlite.js +15 -0
  122. package/out/sqlite.js.map +7 -0
  123. package/out/z2s/src/compiler.d.ts +1 -1
  124. package/out/z2s/src/compiler.d.ts.map +1 -1
  125. package/out/z2s/src/compiler.js +2 -2
  126. package/out/z2s/src/compiler.js.map +1 -1
  127. package/out/zero/package.json +63 -36
  128. package/out/zero/src/adapters/drizzle.d.ts +2 -0
  129. package/out/zero/src/adapters/drizzle.d.ts.map +1 -0
  130. package/out/zero/src/adapters/drizzle.js +2 -0
  131. package/out/zero/src/adapters/drizzle.js.map +1 -0
  132. package/out/zero/src/adapters/pg.d.ts +2 -0
  133. package/out/zero/src/adapters/pg.d.ts.map +1 -0
  134. package/out/zero/src/adapters/pg.js +2 -0
  135. package/out/zero/src/adapters/pg.js.map +1 -0
  136. package/out/zero/src/build-schema.js +1 -1
  137. package/out/zero/src/change-protocol/v0.js +1 -1
  138. package/out/zero/src/expo-sqlite.d.ts +2 -0
  139. package/out/zero/src/expo-sqlite.d.ts.map +1 -0
  140. package/out/zero/src/op-sqlite.d.ts +2 -0
  141. package/out/zero/src/op-sqlite.d.ts.map +1 -0
  142. package/out/zero/src/pg.js +1 -1
  143. package/out/zero/src/react-native.d.ts +30 -1
  144. package/out/zero/src/react-native.d.ts.map +1 -1
  145. package/out/zero/src/server.js +1 -1
  146. package/out/zero/src/sqlite.d.ts +2 -0
  147. package/out/zero/src/sqlite.d.ts.map +1 -0
  148. package/out/zero/src/zero-cache-dev.d.ts.map +1 -1
  149. package/out/zero/src/zero-cache-dev.js +14 -6
  150. package/out/zero/src/zero-cache-dev.js.map +1 -1
  151. package/out/zero/src/zqlite.js +1 -1
  152. package/out/zero-cache/src/auth/write-authorizer.d.ts.map +1 -1
  153. package/out/zero-cache/src/auth/write-authorizer.js +3 -3
  154. package/out/zero-cache/src/auth/write-authorizer.js.map +1 -1
  155. package/out/zero-cache/src/config/network.d.ts.map +1 -1
  156. package/out/zero-cache/src/config/network.js +1 -2
  157. package/out/zero-cache/src/config/network.js.map +1 -1
  158. package/out/zero-cache/src/config/normalize.d.ts +1 -0
  159. package/out/zero-cache/src/config/normalize.d.ts.map +1 -1
  160. package/out/zero-cache/src/config/normalize.js +6 -0
  161. package/out/zero-cache/src/config/normalize.js.map +1 -1
  162. package/out/zero-cache/src/config/zero-config.d.ts +11 -0
  163. package/out/zero-cache/src/config/zero-config.d.ts.map +1 -1
  164. package/out/zero-cache/src/config/zero-config.js +91 -5
  165. package/out/zero-cache/src/config/zero-config.js.map +1 -1
  166. package/out/zero-cache/src/custom/fetch.d.ts +24 -11
  167. package/out/zero-cache/src/custom/fetch.d.ts.map +1 -1
  168. package/out/zero-cache/src/custom/fetch.js +39 -51
  169. package/out/zero-cache/src/custom/fetch.js.map +1 -1
  170. package/out/zero-cache/src/custom-queries/transform-query.d.ts +3 -2
  171. package/out/zero-cache/src/custom-queries/transform-query.d.ts.map +1 -1
  172. package/out/zero-cache/src/custom-queries/transform-query.js +9 -4
  173. package/out/zero-cache/src/custom-queries/transform-query.js.map +1 -1
  174. package/out/zero-cache/src/db/create.d.ts +4 -4
  175. package/out/zero-cache/src/db/create.d.ts.map +1 -1
  176. package/out/zero-cache/src/db/create.js +14 -11
  177. package/out/zero-cache/src/db/create.js.map +1 -1
  178. package/out/zero-cache/src/db/migration.d.ts +1 -1
  179. package/out/zero-cache/src/db/migration.d.ts.map +1 -1
  180. package/out/zero-cache/src/db/migration.js +2 -0
  181. package/out/zero-cache/src/db/migration.js.map +1 -1
  182. package/out/zero-cache/src/db/pg-copy.d.ts.map +1 -1
  183. package/out/zero-cache/src/db/pg-copy.js +0 -1
  184. package/out/zero-cache/src/db/pg-copy.js.map +1 -1
  185. package/out/zero-cache/src/db/pg-to-lite.d.ts.map +1 -1
  186. package/out/zero-cache/src/db/pg-to-lite.js +5 -2
  187. package/out/zero-cache/src/db/pg-to-lite.js.map +1 -1
  188. package/out/zero-cache/src/db/postgres-replica-identity-enum.d.ts.map +1 -1
  189. package/out/zero-cache/src/db/postgres-replica-identity-enum.js +0 -1
  190. package/out/zero-cache/src/db/postgres-replica-identity-enum.js.map +1 -1
  191. package/out/zero-cache/src/db/postgres-type-class-enum.d.ts.map +1 -1
  192. package/out/zero-cache/src/db/postgres-type-class-enum.js +0 -1
  193. package/out/zero-cache/src/db/postgres-type-class-enum.js.map +1 -1
  194. package/out/zero-cache/src/db/statements.js +2 -2
  195. package/out/zero-cache/src/db/transaction-pool.d.ts +1 -1
  196. package/out/zero-cache/src/db/transaction-pool.d.ts.map +1 -1
  197. package/out/zero-cache/src/db/transaction-pool.js +3 -1
  198. package/out/zero-cache/src/db/transaction-pool.js.map +1 -1
  199. package/out/zero-cache/src/scripts/deploy-permissions.d.ts.map +1 -1
  200. package/out/zero-cache/src/scripts/deploy-permissions.js +2 -2
  201. package/out/zero-cache/src/scripts/deploy-permissions.js.map +1 -1
  202. package/out/zero-cache/src/server/anonymous-otel-start.d.ts +2 -0
  203. package/out/zero-cache/src/server/anonymous-otel-start.d.ts.map +1 -1
  204. package/out/zero-cache/src/server/anonymous-otel-start.js +59 -2
  205. package/out/zero-cache/src/server/anonymous-otel-start.js.map +1 -1
  206. package/out/zero-cache/src/server/inspector-delegate.d.ts +19 -0
  207. package/out/zero-cache/src/server/inspector-delegate.d.ts.map +1 -1
  208. package/out/zero-cache/src/server/inspector-delegate.js +52 -0
  209. package/out/zero-cache/src/server/inspector-delegate.js.map +1 -1
  210. package/out/zero-cache/src/server/otel-diag-logger.d.ts +16 -0
  211. package/out/zero-cache/src/server/otel-diag-logger.d.ts.map +1 -0
  212. package/out/zero-cache/src/server/otel-diag-logger.js +76 -0
  213. package/out/zero-cache/src/server/otel-diag-logger.js.map +1 -0
  214. package/out/zero-cache/src/server/otel-start.d.ts.map +1 -1
  215. package/out/zero-cache/src/server/otel-start.js +13 -13
  216. package/out/zero-cache/src/server/otel-start.js.map +1 -1
  217. package/out/zero-cache/src/server/reaper.d.ts.map +1 -1
  218. package/out/zero-cache/src/server/reaper.js +13 -1
  219. package/out/zero-cache/src/server/reaper.js.map +1 -1
  220. package/out/zero-cache/src/server/runner/main.d.ts.map +1 -1
  221. package/out/zero-cache/src/server/runner/main.js.map +1 -1
  222. package/out/zero-cache/src/server/runner/run-worker.d.ts.map +1 -1
  223. package/out/zero-cache/src/server/runner/run-worker.js +1 -1
  224. package/out/zero-cache/src/server/runner/run-worker.js.map +1 -1
  225. package/out/zero-cache/src/server/syncer.d.ts.map +1 -1
  226. package/out/zero-cache/src/server/syncer.js +8 -3
  227. package/out/zero-cache/src/server/syncer.js.map +1 -1
  228. package/out/zero-cache/src/services/analyze.d.ts +9 -1
  229. package/out/zero-cache/src/services/analyze.d.ts.map +1 -1
  230. package/out/zero-cache/src/services/analyze.js +110 -40
  231. package/out/zero-cache/src/services/analyze.js.map +1 -1
  232. package/out/zero-cache/src/services/change-source/pg/change-source.d.ts.map +1 -1
  233. package/out/zero-cache/src/services/change-source/pg/change-source.js +2 -2
  234. package/out/zero-cache/src/services/change-source/pg/change-source.js.map +1 -1
  235. package/out/zero-cache/src/services/change-source/pg/initial-sync.d.ts.map +1 -1
  236. package/out/zero-cache/src/services/change-source/pg/initial-sync.js +6 -5
  237. package/out/zero-cache/src/services/change-source/pg/initial-sync.js.map +1 -1
  238. package/out/zero-cache/src/services/change-source/pg/logical-replication/binary-reader.d.ts.map +1 -1
  239. package/out/zero-cache/src/services/change-source/pg/logical-replication/binary-reader.js +0 -1
  240. package/out/zero-cache/src/services/change-source/pg/logical-replication/binary-reader.js.map +1 -1
  241. package/out/zero-cache/src/services/change-source/pg/logical-replication/pgoutput-parser.js +1 -1
  242. package/out/zero-cache/src/services/change-source/pg/logical-replication/pgoutput.types.js +1 -1
  243. package/out/zero-cache/src/services/change-source/pg/logical-replication/stream.d.ts.map +1 -1
  244. package/out/zero-cache/src/services/change-source/pg/logical-replication/stream.js +25 -17
  245. package/out/zero-cache/src/services/change-source/pg/logical-replication/stream.js.map +1 -1
  246. package/out/zero-cache/src/services/change-source/pg/schema/shard.d.ts +1 -1
  247. package/out/zero-cache/src/services/change-source/pg/schema/shard.d.ts.map +1 -1
  248. package/out/zero-cache/src/services/change-source/pg/schema/shard.js +5 -1
  249. package/out/zero-cache/src/services/change-source/pg/schema/shard.js.map +1 -1
  250. package/out/zero-cache/src/services/change-source/pg/schema/validation.js +1 -1
  251. package/out/zero-cache/src/services/change-source/pg/schema/validation.js.map +1 -1
  252. package/out/zero-cache/src/services/change-source/protocol/current/data.d.ts +1 -1
  253. package/out/zero-cache/src/services/change-source/protocol/current/data.d.ts.map +1 -1
  254. package/out/zero-cache/src/services/change-source/protocol/current/data.js +1 -1
  255. package/out/zero-cache/src/services/change-source/protocol/current/data.js.map +1 -1
  256. package/out/zero-cache/src/services/change-streamer/change-streamer-service.js +6 -5
  257. package/out/zero-cache/src/services/change-streamer/change-streamer-service.js.map +1 -1
  258. package/out/zero-cache/src/services/change-streamer/error-type-enum.d.ts.map +1 -1
  259. package/out/zero-cache/src/services/change-streamer/error-type-enum.js +0 -1
  260. package/out/zero-cache/src/services/change-streamer/error-type-enum.js.map +1 -1
  261. package/out/zero-cache/src/services/change-streamer/schema/init.d.ts.map +1 -1
  262. package/out/zero-cache/src/services/change-streamer/schema/init.js +1 -0
  263. package/out/zero-cache/src/services/change-streamer/schema/init.js.map +1 -1
  264. package/out/zero-cache/src/services/change-streamer/schema/tables.d.ts +1 -1
  265. package/out/zero-cache/src/services/change-streamer/schema/tables.d.ts.map +1 -1
  266. package/out/zero-cache/src/services/change-streamer/schema/tables.js +2 -0
  267. package/out/zero-cache/src/services/change-streamer/schema/tables.js.map +1 -1
  268. package/out/zero-cache/src/services/change-streamer/storer.d.ts +2 -2
  269. package/out/zero-cache/src/services/change-streamer/storer.d.ts.map +1 -1
  270. package/out/zero-cache/src/services/change-streamer/storer.js +28 -22
  271. package/out/zero-cache/src/services/change-streamer/storer.js.map +1 -1
  272. package/out/zero-cache/src/services/heapz.d.ts +1 -1
  273. package/out/zero-cache/src/services/heapz.d.ts.map +1 -1
  274. package/out/zero-cache/src/services/heapz.js +2 -2
  275. package/out/zero-cache/src/services/heapz.js.map +1 -1
  276. package/out/zero-cache/src/services/life-cycle.js +2 -2
  277. package/out/zero-cache/src/services/mutagen/error.d.ts +4 -0
  278. package/out/zero-cache/src/services/mutagen/error.d.ts.map +1 -0
  279. package/out/zero-cache/src/services/mutagen/error.js +8 -0
  280. package/out/zero-cache/src/services/mutagen/error.js.map +1 -0
  281. package/out/zero-cache/src/services/mutagen/mutagen.d.ts +0 -3
  282. package/out/zero-cache/src/services/mutagen/mutagen.d.ts.map +1 -1
  283. package/out/zero-cache/src/services/mutagen/mutagen.js +1 -6
  284. package/out/zero-cache/src/services/mutagen/mutagen.js.map +1 -1
  285. package/out/zero-cache/src/services/mutagen/pusher.d.ts +90 -39
  286. package/out/zero-cache/src/services/mutagen/pusher.d.ts.map +1 -1
  287. package/out/zero-cache/src/services/mutagen/pusher.js +29 -8
  288. package/out/zero-cache/src/services/mutagen/pusher.js.map +1 -1
  289. package/out/zero-cache/src/services/replicator/change-processor.js +7 -7
  290. package/out/zero-cache/src/services/replicator/change-processor.js.map +1 -1
  291. package/out/zero-cache/src/services/replicator/incremental-sync.js +2 -2
  292. package/out/zero-cache/src/services/replicator/incremental-sync.js.map +1 -1
  293. package/out/zero-cache/src/services/replicator/replication-status.d.ts.map +1 -1
  294. package/out/zero-cache/src/services/replicator/replication-status.js +10 -8
  295. package/out/zero-cache/src/services/replicator/replication-status.js.map +1 -1
  296. package/out/zero-cache/src/services/replicator/schema/constants.d.ts +7 -0
  297. package/out/zero-cache/src/services/replicator/schema/constants.d.ts.map +1 -0
  298. package/out/zero-cache/src/services/replicator/schema/constants.js +7 -0
  299. package/out/zero-cache/src/services/replicator/schema/constants.js.map +1 -0
  300. package/out/zero-cache/src/services/replicator/schema/replication-state.d.ts +2 -2
  301. package/out/zero-cache/src/services/replicator/schema/replication-state.d.ts.map +1 -1
  302. package/out/zero-cache/src/services/replicator/schema/replication-state.js +2 -1
  303. package/out/zero-cache/src/services/replicator/schema/replication-state.js.map +1 -1
  304. package/out/zero-cache/src/services/run-ast.d.ts +21 -0
  305. package/out/zero-cache/src/services/run-ast.d.ts.map +1 -0
  306. package/out/zero-cache/src/services/run-ast.js +93 -0
  307. package/out/zero-cache/src/services/run-ast.js.map +1 -0
  308. package/out/zero-cache/src/services/statz.d.ts +1 -1
  309. package/out/zero-cache/src/services/statz.d.ts.map +1 -1
  310. package/out/zero-cache/src/services/statz.js +3 -3
  311. package/out/zero-cache/src/services/statz.js.map +1 -1
  312. package/out/zero-cache/src/services/view-syncer/active-users-gauge.d.ts +16 -0
  313. package/out/zero-cache/src/services/view-syncer/active-users-gauge.d.ts.map +1 -0
  314. package/out/zero-cache/src/services/view-syncer/active-users-gauge.js +50 -0
  315. package/out/zero-cache/src/services/view-syncer/active-users-gauge.js.map +1 -0
  316. package/out/zero-cache/src/services/view-syncer/client-schema.js +2 -2
  317. package/out/zero-cache/src/services/view-syncer/client-schema.js.map +1 -1
  318. package/out/zero-cache/src/services/view-syncer/cvr-purger.d.ts +8 -2
  319. package/out/zero-cache/src/services/view-syncer/cvr-purger.d.ts.map +1 -1
  320. package/out/zero-cache/src/services/view-syncer/cvr-purger.js +40 -13
  321. package/out/zero-cache/src/services/view-syncer/cvr-purger.js.map +1 -1
  322. package/out/zero-cache/src/services/view-syncer/cvr-store.d.ts +0 -1
  323. package/out/zero-cache/src/services/view-syncer/cvr-store.d.ts.map +1 -1
  324. package/out/zero-cache/src/services/view-syncer/cvr-store.js +6 -19
  325. package/out/zero-cache/src/services/view-syncer/cvr-store.js.map +1 -1
  326. package/out/zero-cache/src/services/view-syncer/cvr.d.ts +0 -1
  327. package/out/zero-cache/src/services/view-syncer/cvr.d.ts.map +1 -1
  328. package/out/zero-cache/src/services/view-syncer/cvr.js +19 -8
  329. package/out/zero-cache/src/services/view-syncer/cvr.js.map +1 -1
  330. package/out/zero-cache/src/services/view-syncer/inspect-handler.d.ts +10 -0
  331. package/out/zero-cache/src/services/view-syncer/inspect-handler.d.ts.map +1 -0
  332. package/out/zero-cache/src/services/view-syncer/inspect-handler.js +95 -0
  333. package/out/zero-cache/src/services/view-syncer/inspect-handler.js.map +1 -0
  334. package/out/zero-cache/src/services/view-syncer/pipeline-driver.d.ts +1 -1
  335. package/out/zero-cache/src/services/view-syncer/pipeline-driver.d.ts.map +1 -1
  336. package/out/zero-cache/src/services/view-syncer/pipeline-driver.js +1 -0
  337. package/out/zero-cache/src/services/view-syncer/pipeline-driver.js.map +1 -1
  338. package/out/zero-cache/src/services/view-syncer/row-record-cache.d.ts +1 -1
  339. package/out/zero-cache/src/services/view-syncer/row-record-cache.d.ts.map +1 -1
  340. package/out/zero-cache/src/services/view-syncer/row-record-cache.js +3 -1
  341. package/out/zero-cache/src/services/view-syncer/row-record-cache.js.map +1 -1
  342. package/out/zero-cache/src/services/view-syncer/snapshotter.d.ts +1 -1
  343. package/out/zero-cache/src/services/view-syncer/snapshotter.d.ts.map +1 -1
  344. package/out/zero-cache/src/services/view-syncer/snapshotter.js +4 -4
  345. package/out/zero-cache/src/services/view-syncer/snapshotter.js.map +1 -1
  346. package/out/zero-cache/src/services/view-syncer/view-syncer.d.ts +4 -3
  347. package/out/zero-cache/src/services/view-syncer/view-syncer.d.ts.map +1 -1
  348. package/out/zero-cache/src/services/view-syncer/view-syncer.js +36 -64
  349. package/out/zero-cache/src/services/view-syncer/view-syncer.js.map +1 -1
  350. package/out/zero-cache/src/types/lite.d.ts +11 -5
  351. package/out/zero-cache/src/types/lite.d.ts.map +1 -1
  352. package/out/zero-cache/src/types/lite.js +2 -5
  353. package/out/zero-cache/src/types/lite.js.map +1 -1
  354. package/out/zero-cache/src/types/pg.d.ts +12 -0
  355. package/out/zero-cache/src/types/pg.d.ts.map +1 -1
  356. package/out/zero-cache/src/types/pg.js +15 -13
  357. package/out/zero-cache/src/types/pg.js.map +1 -1
  358. package/out/zero-cache/src/workers/replicator.d.ts.map +1 -1
  359. package/out/zero-cache/src/workers/replicator.js +0 -2
  360. package/out/zero-cache/src/workers/replicator.js.map +1 -1
  361. package/out/zero-cache/src/workers/syncer-ws-message-handler.js +1 -1
  362. package/out/zero-cache/src/workers/syncer-ws-message-handler.js.map +1 -1
  363. package/out/zero-client/src/client/active-clients-manager.d.ts +2 -1
  364. package/out/zero-client/src/client/active-clients-manager.d.ts.map +1 -1
  365. package/out/zero-client/src/client/connection-state-enum.d.ts.map +1 -1
  366. package/out/zero-client/src/client/crud.d.ts +1 -1
  367. package/out/zero-client/src/client/crud.d.ts.map +1 -1
  368. package/out/zero-client/src/client/custom.d.ts.map +1 -1
  369. package/out/zero-client/src/client/delete-clients-manager.d.ts +3 -3
  370. package/out/zero-client/src/client/delete-clients-manager.d.ts.map +1 -1
  371. package/out/zero-client/src/client/inspector/client-group.d.ts +12 -0
  372. package/out/zero-client/src/client/inspector/client-group.d.ts.map +1 -0
  373. package/out/zero-client/src/client/inspector/client.d.ts +15 -0
  374. package/out/zero-client/src/client/inspector/client.d.ts.map +1 -0
  375. package/out/zero-client/src/client/inspector/html-dialog-prompt.d.ts +5 -0
  376. package/out/zero-client/src/client/inspector/html-dialog-prompt.d.ts.map +1 -0
  377. package/out/zero-client/src/client/inspector/inspector.d.ts +18 -18
  378. package/out/zero-client/src/client/inspector/inspector.d.ts.map +1 -1
  379. package/out/zero-client/src/client/inspector/lazy-inspector.d.ts +52 -0
  380. package/out/zero-client/src/client/inspector/lazy-inspector.d.ts.map +1 -0
  381. package/out/zero-client/src/client/inspector/query.d.ts +31 -0
  382. package/out/zero-client/src/client/inspector/query.d.ts.map +1 -0
  383. package/out/zero-client/src/client/metric-name-enum.d.ts.map +1 -1
  384. package/out/zero-client/src/client/options.d.ts +16 -16
  385. package/out/zero-client/src/client/options.d.ts.map +1 -1
  386. package/out/zero-client/src/client/ping-result-enum.d.ts.map +1 -1
  387. package/out/zero-client/src/client/query-manager.d.ts +2 -0
  388. package/out/zero-client/src/client/query-manager.d.ts.map +1 -1
  389. package/out/zero-client/src/client/update-needed-reason-type-enum.d.ts.map +1 -1
  390. package/out/zero-client/src/client/zero-log-context.d.ts.map +1 -1
  391. package/out/zero-client/src/client/zero.d.ts +10 -11
  392. package/out/zero-client/src/client/zero.d.ts.map +1 -1
  393. package/out/zero-client/src/mod.d.ts +5 -2
  394. package/out/zero-client/src/mod.d.ts.map +1 -1
  395. package/out/zero-events/src/index.d.ts +4 -6
  396. package/out/zero-events/src/index.d.ts.map +1 -1
  397. package/out/zero-events/src/index.js +1 -27
  398. package/out/zero-events/src/index.js.map +1 -1
  399. package/out/zero-events/src/json.d.ts +20 -0
  400. package/out/zero-events/src/json.d.ts.map +1 -0
  401. package/out/zero-events/src/json.js +2 -0
  402. package/out/zero-events/src/json.js.map +1 -0
  403. package/out/zero-events/src/status.d.ts +45 -87
  404. package/out/zero-events/src/status.d.ts.map +1 -1
  405. package/out/zero-events/src/status.js +2 -68
  406. package/out/zero-events/src/status.js.map +1 -1
  407. package/out/zero-pg/src/mod.d.ts.map +1 -1
  408. package/out/zero-pg/src/mod.js +1 -1
  409. package/out/zero-pg/src/mod.js.map +1 -1
  410. package/out/zero-protocol/src/analyze-query-result.d.ts +29 -0
  411. package/out/zero-protocol/src/analyze-query-result.d.ts.map +1 -0
  412. package/out/zero-protocol/src/analyze-query-result.js +25 -0
  413. package/out/zero-protocol/src/analyze-query-result.js.map +1 -0
  414. package/out/zero-protocol/src/ast.d.ts +3 -1
  415. package/out/zero-protocol/src/ast.d.ts.map +1 -1
  416. package/out/zero-protocol/src/ast.js +2 -0
  417. package/out/zero-protocol/src/ast.js.map +1 -1
  418. package/out/zero-protocol/src/connect.d.ts +4 -32
  419. package/out/zero-protocol/src/connect.d.ts.map +1 -1
  420. package/out/zero-protocol/src/connect.js +2 -17
  421. package/out/zero-protocol/src/connect.js.map +1 -1
  422. package/out/zero-protocol/src/down.d.ts +29 -0
  423. package/out/zero-protocol/src/down.d.ts.map +1 -1
  424. package/out/zero-protocol/src/error-kind-enum.d.ts.map +1 -1
  425. package/out/zero-protocol/src/error-kind-enum.js +0 -1
  426. package/out/zero-protocol/src/error-kind-enum.js.map +1 -1
  427. package/out/zero-protocol/src/inspect-down.d.ts +93 -0
  428. package/out/zero-protocol/src/inspect-down.d.ts.map +1 -1
  429. package/out/zero-protocol/src/inspect-down.js +14 -1
  430. package/out/zero-protocol/src/inspect-down.js.map +1 -1
  431. package/out/zero-protocol/src/inspect-up.d.ts +85 -10
  432. package/out/zero-protocol/src/inspect-up.d.ts.map +1 -1
  433. package/out/zero-protocol/src/inspect-up.js +25 -3
  434. package/out/zero-protocol/src/inspect-up.js.map +1 -1
  435. package/out/zero-protocol/src/mutation-type-enum.d.ts.map +1 -1
  436. package/out/zero-protocol/src/mutation-type-enum.js +0 -1
  437. package/out/zero-protocol/src/mutation-type-enum.js.map +1 -1
  438. package/out/zero-protocol/src/protocol-version.d.ts +1 -1
  439. package/out/zero-protocol/src/protocol-version.d.ts.map +1 -1
  440. package/out/zero-protocol/src/protocol-version.js +8 -1
  441. package/out/zero-protocol/src/protocol-version.js.map +1 -1
  442. package/out/zero-protocol/src/push.d.ts +1 -1
  443. package/out/zero-protocol/src/push.d.ts.map +1 -1
  444. package/out/zero-protocol/src/up.d.ts +24 -9
  445. package/out/zero-protocol/src/up.d.ts.map +1 -1
  446. package/out/zero-react/src/components/mark-icon.d.ts.map +1 -1
  447. package/out/zero-react/src/components/zero-inspector.d.ts.map +1 -1
  448. package/out/zero-react/src/use-query.d.ts +20 -3
  449. package/out/zero-react/src/use-query.d.ts.map +1 -1
  450. package/out/zero-react/src/zero-provider.d.ts +2 -2
  451. package/out/zero-react/src/zero-provider.d.ts.map +1 -1
  452. package/out/zero-schema/src/builder/schema-builder.d.ts +3 -25
  453. package/out/zero-schema/src/builder/schema-builder.d.ts.map +1 -1
  454. package/out/zero-schema/src/builder/schema-builder.js +1 -1
  455. package/out/zero-schema/src/builder/schema-builder.js.map +1 -1
  456. package/out/zero-schema/src/builder/table-builder.js +1 -1
  457. package/out/zero-schema/src/name-mapper.d.ts +2 -19
  458. package/out/zero-schema/src/name-mapper.d.ts.map +1 -1
  459. package/out/zero-schema/src/name-mapper.js +2 -44
  460. package/out/zero-schema/src/name-mapper.js.map +1 -1
  461. package/out/zero-schema/src/permissions.d.ts +1 -0
  462. package/out/zero-schema/src/permissions.d.ts.map +1 -1
  463. package/out/zero-schema/src/schema-config.d.ts +1 -1
  464. package/out/zero-schema/src/schema-config.js +2 -2
  465. package/out/zero-schema/src/table-schema.d.ts +3 -55
  466. package/out/zero-schema/src/table-schema.d.ts.map +1 -1
  467. package/out/zero-schema/src/table-schema.js +0 -6
  468. package/out/zero-schema/src/table-schema.js.map +1 -1
  469. package/out/zero-server/src/adapters/drizzle.d.ts +60 -0
  470. package/out/zero-server/src/adapters/drizzle.d.ts.map +1 -0
  471. package/out/zero-server/src/adapters/drizzle.js +111 -0
  472. package/out/zero-server/src/adapters/drizzle.js.map +1 -0
  473. package/out/zero-server/src/adapters/pg.d.ts +53 -0
  474. package/out/zero-server/src/adapters/pg.d.ts.map +1 -0
  475. package/out/zero-server/src/adapters/pg.js +79 -0
  476. package/out/zero-server/src/adapters/pg.js.map +1 -0
  477. package/out/zero-server/src/adapters/postgresjs.d.ts +41 -12
  478. package/out/zero-server/src/adapters/postgresjs.d.ts.map +1 -1
  479. package/out/zero-server/src/adapters/postgresjs.js +27 -10
  480. package/out/zero-server/src/adapters/postgresjs.js.map +1 -1
  481. package/out/zero-server/src/custom.d.ts +1 -1
  482. package/out/zero-server/src/custom.d.ts.map +1 -1
  483. package/out/zero-server/src/custom.js +1 -1
  484. package/out/zero-server/src/custom.js.map +1 -1
  485. package/out/zero-server/src/process-mutations.d.ts +3 -3
  486. package/out/zero-server/src/process-mutations.d.ts.map +1 -1
  487. package/out/zero-server/src/process-mutations.js +5 -5
  488. package/out/zero-server/src/process-mutations.js.map +1 -1
  489. package/out/zero-server/src/query.d.ts +2 -2
  490. package/out/zero-server/src/query.d.ts.map +1 -1
  491. package/out/zero-server/src/query.js +2 -1
  492. package/out/zero-server/src/query.js.map +1 -1
  493. package/out/zero-server/src/zql-database.d.ts +1 -1
  494. package/out/zero-server/src/zql-database.d.ts.map +1 -1
  495. package/out/zero-server/src/zql-database.js +10 -0
  496. package/out/zero-server/src/zql-database.js.map +1 -1
  497. package/out/zero-solid/src/solid-view.d.ts +24 -5
  498. package/out/zero-solid/src/solid-view.d.ts.map +1 -1
  499. package/out/zero-solid/src/use-query.d.ts +3 -1
  500. package/out/zero-solid/src/use-query.d.ts.map +1 -1
  501. package/out/zero-solid/src/use-zero.d.ts +4 -1
  502. package/out/zero-solid/src/use-zero.d.ts.map +1 -1
  503. package/out/zero-types/src/format.d.ts +11 -0
  504. package/out/zero-types/src/format.d.ts.map +1 -0
  505. package/out/zero-types/src/format.js +5 -0
  506. package/out/zero-types/src/format.js.map +1 -0
  507. package/out/zero-types/src/name-mapper.d.ts +19 -0
  508. package/out/zero-types/src/name-mapper.d.ts.map +1 -0
  509. package/out/zero-types/src/name-mapper.js +45 -0
  510. package/out/zero-types/src/name-mapper.js.map +1 -0
  511. package/out/zero-types/src/schema-value.d.ts +36 -0
  512. package/out/zero-types/src/schema-value.d.ts.map +1 -0
  513. package/out/zero-types/src/schema-value.js +2 -0
  514. package/out/zero-types/src/schema-value.js.map +1 -0
  515. package/out/zero-types/src/schema.d.ts +54 -0
  516. package/out/zero-types/src/schema.d.ts.map +1 -0
  517. package/out/zero-types/src/schema.js +2 -0
  518. package/out/zero-types/src/schema.js.map +1 -0
  519. package/out/zero.js +6 -7
  520. package/out/zql/src/builder/builder.d.ts +14 -0
  521. package/out/zql/src/builder/builder.d.ts.map +1 -1
  522. package/out/zql/src/builder/builder.js +143 -23
  523. package/out/zql/src/builder/builder.js.map +1 -1
  524. package/out/zql/src/builder/debug-delegate.d.ts +2 -5
  525. package/out/zql/src/builder/debug-delegate.d.ts.map +1 -1
  526. package/out/zql/src/builder/debug-delegate.js +1 -0
  527. package/out/zql/src/builder/debug-delegate.js.map +1 -1
  528. package/out/zql/src/ivm/array-view.d.ts +2 -1
  529. package/out/zql/src/ivm/array-view.d.ts.map +1 -1
  530. package/out/zql/src/ivm/array-view.js +16 -5
  531. package/out/zql/src/ivm/array-view.js.map +1 -1
  532. package/out/zql/src/ivm/constraint.d.ts +7 -0
  533. package/out/zql/src/ivm/constraint.d.ts.map +1 -1
  534. package/out/zql/src/ivm/constraint.js +18 -2
  535. package/out/zql/src/ivm/constraint.js.map +1 -1
  536. package/out/zql/src/ivm/data.js +1 -1
  537. package/out/zql/src/ivm/default-format.d.ts +2 -0
  538. package/out/zql/src/ivm/default-format.d.ts.map +1 -0
  539. package/out/zql/src/ivm/default-format.js +2 -0
  540. package/out/zql/src/ivm/default-format.js.map +1 -0
  541. package/out/zql/src/ivm/exists.d.ts.map +1 -1
  542. package/out/zql/src/ivm/exists.js +5 -5
  543. package/out/zql/src/ivm/exists.js.map +1 -1
  544. package/out/zql/src/ivm/fan-in.d.ts.map +1 -1
  545. package/out/zql/src/ivm/fan-in.js +3 -92
  546. package/out/zql/src/ivm/fan-in.js.map +1 -1
  547. package/out/zql/src/ivm/fan-out.js +3 -3
  548. package/out/zql/src/ivm/fan-out.js.map +1 -1
  549. package/out/zql/src/ivm/filter-operators.js +2 -2
  550. package/out/zql/src/ivm/filter-operators.js.map +1 -1
  551. package/out/zql/src/ivm/filter-push.d.ts +2 -2
  552. package/out/zql/src/ivm/filter-push.d.ts.map +1 -1
  553. package/out/zql/src/ivm/filter-push.js +5 -5
  554. package/out/zql/src/ivm/filter-push.js.map +1 -1
  555. package/out/zql/src/ivm/filter.js +1 -1
  556. package/out/zql/src/ivm/filter.js.map +1 -1
  557. package/out/zql/src/ivm/flipped-join.d.ts +33 -0
  558. package/out/zql/src/ivm/flipped-join.d.ts.map +1 -0
  559. package/out/zql/src/ivm/flipped-join.js +349 -0
  560. package/out/zql/src/ivm/flipped-join.js.map +1 -0
  561. package/out/zql/src/ivm/join-utils.d.ts +14 -0
  562. package/out/zql/src/ivm/join-utils.d.ts.map +1 -0
  563. package/out/zql/src/ivm/join-utils.js +94 -0
  564. package/out/zql/src/ivm/join-utils.js.map +1 -0
  565. package/out/zql/src/ivm/join.d.ts +1 -1
  566. package/out/zql/src/ivm/join.d.ts.map +1 -1
  567. package/out/zql/src/ivm/join.js +8 -106
  568. package/out/zql/src/ivm/join.js.map +1 -1
  569. package/out/zql/src/ivm/maybe-split-and-push-edit-change.d.ts +2 -2
  570. package/out/zql/src/ivm/maybe-split-and-push-edit-change.d.ts.map +1 -1
  571. package/out/zql/src/ivm/maybe-split-and-push-edit-change.js +4 -4
  572. package/out/zql/src/ivm/maybe-split-and-push-edit-change.js.map +1 -1
  573. package/out/zql/src/ivm/memory-source.d.ts +4 -4
  574. package/out/zql/src/ivm/memory-source.d.ts.map +1 -1
  575. package/out/zql/src/ivm/memory-source.js +71 -71
  576. package/out/zql/src/ivm/memory-source.js.map +1 -1
  577. package/out/zql/src/ivm/operator.d.ts +1 -1
  578. package/out/zql/src/ivm/operator.d.ts.map +1 -1
  579. package/out/zql/src/ivm/push-accumulated.d.ts +88 -0
  580. package/out/zql/src/ivm/push-accumulated.d.ts.map +1 -0
  581. package/out/zql/src/ivm/push-accumulated.js +326 -0
  582. package/out/zql/src/ivm/push-accumulated.js.map +1 -0
  583. package/out/zql/src/ivm/schema.d.ts +1 -1
  584. package/out/zql/src/ivm/schema.d.ts.map +1 -1
  585. package/out/zql/src/ivm/skip.js +2 -2
  586. package/out/zql/src/ivm/skip.js.map +1 -1
  587. package/out/zql/src/ivm/take.d.ts.map +1 -1
  588. package/out/zql/src/ivm/take.js +27 -27
  589. package/out/zql/src/ivm/take.js.map +1 -1
  590. package/out/zql/src/ivm/union-fan-in.d.ts +19 -0
  591. package/out/zql/src/ivm/union-fan-in.d.ts.map +1 -0
  592. package/out/zql/src/ivm/union-fan-in.js +146 -0
  593. package/out/zql/src/ivm/union-fan-in.js.map +1 -0
  594. package/out/zql/src/ivm/union-fan-out.d.ts +18 -0
  595. package/out/zql/src/ivm/union-fan-out.d.ts.map +1 -0
  596. package/out/zql/src/ivm/union-fan-out.js +48 -0
  597. package/out/zql/src/ivm/union-fan-out.js.map +1 -0
  598. package/out/zql/src/ivm/view.d.ts +5 -6
  599. package/out/zql/src/ivm/view.d.ts.map +1 -1
  600. package/out/zql/src/mutate/custom.d.ts +2 -2
  601. package/out/zql/src/mutate/custom.d.ts.map +1 -1
  602. package/out/zql/src/mutate/custom.js.map +1 -1
  603. package/out/zql/src/query/expression.d.ts +4 -4
  604. package/out/zql/src/query/expression.d.ts.map +1 -1
  605. package/out/zql/src/query/expression.js +2 -2
  606. package/out/zql/src/query/expression.js.map +1 -1
  607. package/out/zql/src/query/measure-push-operator.js +1 -1
  608. package/out/zql/src/query/measure-push-operator.js.map +1 -1
  609. package/out/zql/src/query/named.d.ts +1 -1
  610. package/out/zql/src/query/named.d.ts.map +1 -1
  611. package/out/zql/src/query/query-delegate.d.ts +3 -2
  612. package/out/zql/src/query/query-delegate.d.ts.map +1 -1
  613. package/out/zql/src/query/query-impl.d.ts +6 -13
  614. package/out/zql/src/query/query-impl.d.ts.map +1 -1
  615. package/out/zql/src/query/query-impl.js +43 -38
  616. package/out/zql/src/query/query-impl.js.map +1 -1
  617. package/out/zql/src/query/query.d.ts +14 -9
  618. package/out/zql/src/query/query.d.ts.map +1 -1
  619. package/out/zql/src/query/query.js.map +1 -1
  620. package/out/zql/src/query/static-query.d.ts +1 -1
  621. package/out/zql/src/query/static-query.d.ts.map +1 -1
  622. package/out/zql/src/query/static-query.js +2 -1
  623. package/out/zql/src/query/static-query.js.map +1 -1
  624. package/out/zql/src/query/typed-view.d.ts +3 -2
  625. package/out/zql/src/query/typed-view.d.ts.map +1 -1
  626. package/out/{zero-cache/src/services/view-syncer → zqlite/src}/database-storage.d.ts +2 -2
  627. package/out/zqlite/src/database-storage.d.ts.map +1 -0
  628. package/out/{zero-cache/src/services/view-syncer → zqlite/src}/database-storage.js +1 -1
  629. package/out/zqlite/src/database-storage.js.map +1 -0
  630. package/out/zqlite/src/db.d.ts +2 -1
  631. package/out/zqlite/src/db.d.ts.map +1 -1
  632. package/out/zqlite/src/db.js +12 -20
  633. package/out/zqlite/src/db.js.map +1 -1
  634. package/out/zqlite/src/explain-queries.d.ts +4 -0
  635. package/out/zqlite/src/explain-queries.d.ts.map +1 -0
  636. package/out/zqlite/src/explain-queries.js +18 -0
  637. package/out/zqlite/src/explain-queries.js.map +1 -0
  638. package/out/zqlite/src/mod.d.ts +2 -1
  639. package/out/zqlite/src/mod.d.ts.map +1 -1
  640. package/out/zqlite/src/mod.js +2 -1
  641. package/out/zqlite/src/mod.js.map +1 -1
  642. package/out/zqlite/src/query-builder.d.ts +22 -0
  643. package/out/zqlite/src/query-builder.d.ts.map +1 -0
  644. package/out/zqlite/src/query-builder.js +162 -0
  645. package/out/zqlite/src/query-builder.js.map +1 -0
  646. package/out/zqlite/src/table-source.d.ts +2 -16
  647. package/out/zqlite/src/table-source.d.ts.map +1 -1
  648. package/out/zqlite/src/table-source.js +26 -177
  649. package/out/zqlite/src/table-source.js.map +1 -1
  650. package/package.json +63 -36
  651. package/out/chunk-6N4NUSIN.js.map +0 -7
  652. package/out/chunk-G442PJSB.js.map +0 -7
  653. package/out/chunk-MKB4RXL3.js +0 -15
  654. package/out/chunk-MKB4RXL3.js.map +0 -7
  655. package/out/chunk-O7W55FT4.js.map +0 -7
  656. package/out/chunk-WFFZJYGV.js.map +0 -7
  657. package/out/inspector-4ALIZXAU.js +0 -488
  658. package/out/inspector-4ALIZXAU.js.map +0 -7
  659. package/out/replicache/src/expo/store.d.ts +0 -4
  660. package/out/replicache/src/expo/store.d.ts.map +0 -1
  661. package/out/replicache/src/size-of-value.d.ts.map +0 -1
  662. package/out/zero/src/adapters/drizzle-pg.d.ts +0 -2
  663. package/out/zero/src/adapters/drizzle-pg.d.ts.map +0 -1
  664. package/out/zero/src/adapters/drizzle-pg.js +0 -2
  665. package/out/zero/src/adapters/drizzle-pg.js.map +0 -1
  666. package/out/zero-cache/src/services/view-syncer/database-storage.d.ts.map +0 -1
  667. package/out/zero-cache/src/services/view-syncer/database-storage.js.map +0 -1
  668. package/out/zero-client/src/client/inspector/types.d.ts +0 -50
  669. package/out/zero-client/src/client/inspector/types.d.ts.map +0 -1
  670. package/out/zero-react-native/src/mod.d.ts +0 -3
  671. package/out/zero-react-native/src/mod.d.ts.map +0 -1
  672. package/out/zero-server/src/adapters/drizzle-pg.d.ts +0 -22
  673. package/out/zero-server/src/adapters/drizzle-pg.d.ts.map +0 -1
  674. package/out/zero-server/src/adapters/drizzle-pg.js +0 -39
  675. package/out/zero-server/src/adapters/drizzle-pg.js.map +0 -1
  676. package/out/zql/src/query/assert-no-not-exists.d.ts +0 -17
  677. package/out/zql/src/query/assert-no-not-exists.d.ts.map +0 -1
  678. package/out/zql/src/query/assert-no-not-exists.js +0 -40
  679. package/out/zql/src/query/assert-no-not-exists.js.map +0 -1
  680. /package/out/{inspector-YIRP3TTL.js.map → inspector-IU2HG74I.js.map} +0 -0
  681. /package/out/{replicache → shared}/src/size-of-value.d.ts +0 -0
@@ -63,7 +63,7 @@ export interface Output {
63
63
  * - Only add rows which do not already exist (by deep equality).
64
64
  * - Only remove rows which do exist (by deep equality).
65
65
  */
66
- push(change: Change): void;
66
+ push(change: Change, pusher: InputBase): void;
67
67
  }
68
68
  /**
69
69
  * An implementation of Output that throws if pushed to. It is used as the
@@ -1 +1 @@
1
- {"version":3,"file":"operator.d.ts","sourceRoot":"","sources":["../../../../../zql/src/ivm/operator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,6BAA6B,CAAC;AAC3D,OAAO,KAAK,EAAC,GAAG,EAAC,MAAM,oCAAoC,CAAC;AAC5D,OAAO,KAAK,EAAC,MAAM,EAAC,MAAM,aAAa,CAAC;AACxC,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,iBAAiB,CAAC;AAChD,OAAO,KAAK,EAAC,IAAI,EAAC,MAAM,WAAW,CAAC;AACpC,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,aAAa,CAAC;AAC9C,OAAO,KAAK,EAAC,MAAM,EAAC,MAAM,aAAa,CAAC;AAExC;;GAEG;AACH,MAAM,WAAW,SAAS;IACxB,iDAAiD;IACjD,SAAS,IAAI,YAAY,CAAC;IAE1B;;;;OAIG;IACH,OAAO,IAAI,IAAI,CAAC;CACjB;AAED,MAAM,WAAW,KAAM,SAAQ,SAAS;IACtC,+CAA+C;IAC/C,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IAEhC;;;OAGG;IACH,KAAK,CAAC,GAAG,EAAE,YAAY,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;IAEvC;;;;;;;;;;OAUG;IACH,OAAO,CAAC,GAAG,EAAE,YAAY,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;CAC1C;AAED,MAAM,MAAM,YAAY,GAAG;IACzB,QAAQ,CAAC,UAAU,CAAC,EAAE,UAAU,GAAG,SAAS,CAAC;IAC7C,kFAAkF;IAClF,QAAQ,CAAC,KAAK,CAAC,EAAE,KAAK,GAAG,SAAS,CAAC;IAEnC,oEAAoE;IACpE,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;CACxC,CAAC;AAEF,MAAM,MAAM,KAAK,GAAG;IAClB,QAAQ,CAAC,GAAG,EAAE,GAAG,CAAC;IAClB,QAAQ,CAAC,KAAK,EAAE,IAAI,GAAG,OAAO,CAAC;CAChC,CAAC;AAEF;;;GAGG;AACH,MAAM,WAAW,MAAM;IACrB;;;;;;;OAOG;IACH,IAAI,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;CAC5B;AAED;;;GAGG;AACH,eAAO,MAAM,WAAW,EAAE,MAIzB,CAAC;AAEF;;;;;GAKG;AACH,MAAM,WAAW,QAAS,SAAQ,KAAK,EAAE,MAAM;CAAG;AAElD;;;GAGG;AACH,MAAM,WAAW,OAAO;IACtB,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,GAAG,IAAI,CAAC;IACzC,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,SAAS,GAAG,SAAS,GAAG,SAAS,CAAC;IACzD;;OAEG;IACH,IAAI,CAAC,OAAO,CAAC,EAAE;QAAC,MAAM,EAAE,MAAM,CAAA;KAAC,GAAG,MAAM,CAAC,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC,CAAC;IAC9D,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;CACxB"}
1
+ {"version":3,"file":"operator.d.ts","sourceRoot":"","sources":["../../../../../zql/src/ivm/operator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,6BAA6B,CAAC;AAC3D,OAAO,KAAK,EAAC,GAAG,EAAC,MAAM,oCAAoC,CAAC;AAC5D,OAAO,KAAK,EAAC,MAAM,EAAC,MAAM,aAAa,CAAC;AACxC,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,iBAAiB,CAAC;AAChD,OAAO,KAAK,EAAC,IAAI,EAAC,MAAM,WAAW,CAAC;AACpC,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,aAAa,CAAC;AAC9C,OAAO,KAAK,EAAC,MAAM,EAAC,MAAM,aAAa,CAAC;AAExC;;GAEG;AACH,MAAM,WAAW,SAAS;IACxB,iDAAiD;IACjD,SAAS,IAAI,YAAY,CAAC;IAE1B;;;;OAIG;IACH,OAAO,IAAI,IAAI,CAAC;CACjB;AAED,MAAM,WAAW,KAAM,SAAQ,SAAS;IACtC,+CAA+C;IAC/C,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IAEhC;;;OAGG;IACH,KAAK,CAAC,GAAG,EAAE,YAAY,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;IAEvC;;;;;;;;;;OAUG;IACH,OAAO,CAAC,GAAG,EAAE,YAAY,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;CAC1C;AAED,MAAM,MAAM,YAAY,GAAG;IACzB,QAAQ,CAAC,UAAU,CAAC,EAAE,UAAU,GAAG,SAAS,CAAC;IAC7C,kFAAkF;IAClF,QAAQ,CAAC,KAAK,CAAC,EAAE,KAAK,GAAG,SAAS,CAAC;IAEnC,oEAAoE;IACpE,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;CACxC,CAAC;AAEF,MAAM,MAAM,KAAK,GAAG;IAClB,QAAQ,CAAC,GAAG,EAAE,GAAG,CAAC;IAClB,QAAQ,CAAC,KAAK,EAAE,IAAI,GAAG,OAAO,CAAC;CAChC,CAAC;AAEF;;;GAGG;AACH,MAAM,WAAW,MAAM;IACrB;;;;;;;OAOG;IACH,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,GAAG,IAAI,CAAC;CAC/C;AAED;;;GAGG;AACH,eAAO,MAAM,WAAW,EAAE,MAIzB,CAAC;AAEF;;;;;GAKG;AACH,MAAM,WAAW,QAAS,SAAQ,KAAK,EAAE,MAAM;CAAG;AAElD;;;GAGG;AACH,MAAM,WAAW,OAAO;IACtB,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,GAAG,IAAI,CAAC;IACzC,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,SAAS,GAAG,SAAS,GAAG,SAAS,CAAC;IACzD;;OAEG;IACH,IAAI,CAAC,OAAO,CAAC,EAAE;QAAC,MAAM,EAAE,MAAM,CAAA;KAAC,GAAG,MAAM,CAAC,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC,CAAC;IAC9D,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;CACxB"}
@@ -0,0 +1,88 @@
1
+ import type { Change } from './change.ts';
2
+ import type { Node } from './data.ts';
3
+ import type { InputBase, Output } from './operator.ts';
4
+ import type { SourceSchema } from './schema.ts';
5
+ import type { Stream } from './stream.ts';
6
+ /**
7
+ * # pushAccumulatedChanges
8
+ *
9
+ * Pushes the changes that were accumulated by
10
+ * [fan-out, fan-in] or [ufo, ufi] sub-graphs.
11
+ *
12
+ * This function is called at the end of the sub-graph.
13
+ *
14
+ * The sub-graphs represents `OR`s.
15
+ *
16
+ * Changes that can enter the subgraphs:
17
+ * 1. child (due to exist joins being above the sub-graph)
18
+ * 2. add
19
+ * 3. remove
20
+ * 4. edit
21
+ *
22
+ * # Changes that can exit into `pushAccumulatedChanges`:
23
+ *
24
+ * ## Child
25
+ * If a `child` change enters a sub-graph, it will flow to all branches.
26
+ * Each branch will either:
27
+ * - preserve the `child` change
28
+ * - stop the `child` change (e.g., filter)
29
+ * - convert it to an `add` or `remove` (e.g., exists filter)
30
+ *
31
+ * ## Add
32
+ * If an `add` change enters a sub-graph, it will flow to all branches.
33
+ * Each branch will either:
34
+ * - preserve the `add` change
35
+ * - hide the change (e.g., filter)
36
+ *
37
+ * ## Remove
38
+ * If a `remove` change enters a sub-graph, it will flow to all branches.
39
+ * Each branch will either:
40
+ * - preserve the `remove` change
41
+ * - hide the change (e.g., filter)
42
+ *
43
+ * ## Edit
44
+ * If an `edit` change enters a sub-graph, it will flow to all branches.
45
+ * Each branch will either:
46
+ * - preserve the `edit` change
47
+ * - convert it to an `add` (e.g., filter where old didn't match but new does)
48
+ * - convert it to a `remove` (e.g., filter where old matched but new doesn't)
49
+ *
50
+ * This results in some invariants:
51
+ * - an add coming in will only create adds coming out
52
+ * - a remove coming in will only create removes coming out
53
+ * - an edit coming in can create adds, removes, and edits coming out
54
+ * - a child coming in can create adds, removes, and children coming out
55
+ *
56
+ * # Return of `pushAccumulatedChanges`
57
+ *
58
+ * This function will only push a single change.
59
+ * Given the above invariants, how is this possible?
60
+ *
61
+ * An add that becomes many `adds` results in a single add
62
+ * as the `add` is the same row across all adds. Branches do not change the row.
63
+ *
64
+ * A remove that becomes many `removes` results in a single remove
65
+ * for the same reason.
66
+ *
67
+ * If a child enters and exits, it takes precedence over all other changes.
68
+ * If a child enters and is converted only to add and remove it exits as an edit.
69
+ * If a child enters and is converted to only add or only remove, it exits as that change.
70
+ *
71
+ * If an edit enters and is converted to add and remove it exits as an edit.
72
+ * If an edit enters and is converted to only add or only remove, it exits as that change.
73
+ * If an edit enters and exits as edits only, it exits as a single edit.
74
+ */
75
+ export declare function pushAccumulatedChanges(accumulatedPushes: Change[], output: Output, pusher: InputBase, fanOutChangeType: Change['type'], mergeRelationships: (existing: Change, incoming: Change) => Change, addEmptyRelationships: (change: Change) => Change): void;
76
+ /**
77
+ * Puts relationships from `right` into `left` if they don't already exist in `left`.
78
+ */
79
+ export declare function mergeRelationships(left: Change, right: Change): Change;
80
+ export declare function makeAddEmptyRelationships(schema: SourceSchema): (change: Change) => Change;
81
+ /**
82
+ * For each relationship in `schema` that does not exist
83
+ * in `relationships`, add it with an empty stream.
84
+ *
85
+ * This modifies the `relationships` object in place.
86
+ */
87
+ export declare function mergeEmpty(relationships: Record<string, () => Stream<Node>>, relationshipNames: string[]): void;
88
+ //# sourceMappingURL=push-accumulated.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"push-accumulated.d.ts","sourceRoot":"","sources":["../../../../../zql/src/ivm/push-accumulated.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAC,MAAM,EAAC,MAAM,aAAa,CAAC;AACxC,OAAO,KAAK,EAAC,IAAI,EAAC,MAAM,WAAW,CAAC;AACpC,OAAO,KAAK,EAAC,SAAS,EAAE,MAAM,EAAC,MAAM,eAAe,CAAC;AACrD,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,aAAa,CAAC;AAC9C,OAAO,KAAK,EAAC,MAAM,EAAC,MAAM,aAAa,CAAC;AAExC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoEG;AACH,wBAAgB,sBAAsB,CACpC,iBAAiB,EAAE,MAAM,EAAE,EAC3B,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,SAAS,EACjB,gBAAgB,EAAE,MAAM,CAAC,MAAM,CAAC,EAChC,kBAAkB,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,KAAK,MAAM,EAClE,qBAAqB,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,MAAM,QAgKlD;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAsFtE;AAED,wBAAgB,yBAAyB,CACvC,MAAM,EAAE,YAAY,GACnB,CAAC,MAAM,EAAE,MAAM,KAAK,MAAM,CAoD5B;AAED;;;;;GAKG;AACH,wBAAgB,UAAU,CACxB,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,MAAM,CAAC,IAAI,CAAC,CAAC,EACjD,iBAAiB,EAAE,MAAM,EAAE,QAO5B"}
@@ -0,0 +1,326 @@
1
+ import { assert, unreachable } from "../../../shared/src/asserts.js";
2
+ import { must } from "../../../shared/src/must.js";
3
+ import { emptyArray } from "../../../shared/src/sentinels.js";
4
+ /**
5
+ * # pushAccumulatedChanges
6
+ *
7
+ * Pushes the changes that were accumulated by
8
+ * [fan-out, fan-in] or [ufo, ufi] sub-graphs.
9
+ *
10
+ * This function is called at the end of the sub-graph.
11
+ *
12
+ * The sub-graphs represents `OR`s.
13
+ *
14
+ * Changes that can enter the subgraphs:
15
+ * 1. child (due to exist joins being above the sub-graph)
16
+ * 2. add
17
+ * 3. remove
18
+ * 4. edit
19
+ *
20
+ * # Changes that can exit into `pushAccumulatedChanges`:
21
+ *
22
+ * ## Child
23
+ * If a `child` change enters a sub-graph, it will flow to all branches.
24
+ * Each branch will either:
25
+ * - preserve the `child` change
26
+ * - stop the `child` change (e.g., filter)
27
+ * - convert it to an `add` or `remove` (e.g., exists filter)
28
+ *
29
+ * ## Add
30
+ * If an `add` change enters a sub-graph, it will flow to all branches.
31
+ * Each branch will either:
32
+ * - preserve the `add` change
33
+ * - hide the change (e.g., filter)
34
+ *
35
+ * ## Remove
36
+ * If a `remove` change enters a sub-graph, it will flow to all branches.
37
+ * Each branch will either:
38
+ * - preserve the `remove` change
39
+ * - hide the change (e.g., filter)
40
+ *
41
+ * ## Edit
42
+ * If an `edit` change enters a sub-graph, it will flow to all branches.
43
+ * Each branch will either:
44
+ * - preserve the `edit` change
45
+ * - convert it to an `add` (e.g., filter where old didn't match but new does)
46
+ * - convert it to a `remove` (e.g., filter where old matched but new doesn't)
47
+ *
48
+ * This results in some invariants:
49
+ * - an add coming in will only create adds coming out
50
+ * - a remove coming in will only create removes coming out
51
+ * - an edit coming in can create adds, removes, and edits coming out
52
+ * - a child coming in can create adds, removes, and children coming out
53
+ *
54
+ * # Return of `pushAccumulatedChanges`
55
+ *
56
+ * This function will only push a single change.
57
+ * Given the above invariants, how is this possible?
58
+ *
59
+ * An add that becomes many `adds` results in a single add
60
+ * as the `add` is the same row across all adds. Branches do not change the row.
61
+ *
62
+ * A remove that becomes many `removes` results in a single remove
63
+ * for the same reason.
64
+ *
65
+ * If a child enters and exits, it takes precedence over all other changes.
66
+ * If a child enters and is converted only to add and remove it exits as an edit.
67
+ * If a child enters and is converted to only add or only remove, it exits as that change.
68
+ *
69
+ * If an edit enters and is converted to add and remove it exits as an edit.
70
+ * If an edit enters and is converted to only add or only remove, it exits as that change.
71
+ * If an edit enters and exits as edits only, it exits as a single edit.
72
+ */
73
+ export function pushAccumulatedChanges(accumulatedPushes, output, pusher, fanOutChangeType, mergeRelationships, addEmptyRelationships) {
74
+ if (accumulatedPushes.length === 0) {
75
+ // It is possible for no forks to pass along the push.
76
+ // E.g., if no filters match in any fork.
77
+ return;
78
+ }
79
+ // collapse down to a single change per type
80
+ const candidatesToPush = new Map();
81
+ for (const change of accumulatedPushes) {
82
+ if (fanOutChangeType === 'child' && change.type !== 'child') {
83
+ assert(candidatesToPush.has(change.type) === false, () => `Fan-in:child expected at most one ${change.type} when fan-out is of type child`);
84
+ }
85
+ const existing = candidatesToPush.get(change.type);
86
+ let mergedChange = change;
87
+ if (existing) {
88
+ // merge in relationships
89
+ mergedChange = mergeRelationships(existing, change);
90
+ }
91
+ candidatesToPush.set(change.type, mergedChange);
92
+ }
93
+ accumulatedPushes.length = 0;
94
+ const types = [...candidatesToPush.keys()];
95
+ /**
96
+ * Based on the received `fanOutChangeType` only certain output types are valid.
97
+ *
98
+ * - remove must result in all removes
99
+ * - add must result in all adds
100
+ * - edit must result in add or removes or edits
101
+ * - child must result in a single add or single remove or many child changes
102
+ * - Single add or remove because the relationship will be unique to one exist check within the fan-out,fan-in sub-graph
103
+ * - Many child changes because other operators may preserve the child change
104
+ */
105
+ switch (fanOutChangeType) {
106
+ case 'remove':
107
+ assert(types.length === 1 && types[0] === 'remove', 'Fan-in:remove expected all removes');
108
+ output.push(addEmptyRelationships(must(candidatesToPush.get('remove'))), pusher);
109
+ return;
110
+ case 'add':
111
+ assert(types.length === 1 && types[0] === 'add', 'Fan-in:add expected all adds');
112
+ output.push(addEmptyRelationships(must(candidatesToPush.get('add'))), pusher);
113
+ return;
114
+ case 'edit': {
115
+ assert(types.every(type => type === 'add' || type === 'remove' || type === 'edit'), 'Fan-in:edit expected all adds, removes, or edits');
116
+ const addChange = candidatesToPush.get('add');
117
+ const removeChange = candidatesToPush.get('remove');
118
+ let editChange = candidatesToPush.get('edit');
119
+ // If an `edit` is present, it supersedes `add` and `remove`
120
+ // as it semantically represents both.
121
+ if (editChange) {
122
+ if (addChange) {
123
+ editChange = mergeRelationships(editChange, addChange);
124
+ }
125
+ if (removeChange) {
126
+ editChange = mergeRelationships(editChange, removeChange);
127
+ }
128
+ output.push(addEmptyRelationships(editChange), pusher);
129
+ return;
130
+ }
131
+ // If `edit` didn't make it through but both `add` and `remove` did,
132
+ // convert back to an edit.
133
+ //
134
+ // When can this happen?
135
+ //
136
+ // EDIT old: a=1, new: a=2
137
+ // |
138
+ // FanOut
139
+ // / \
140
+ // a=1 a=2
141
+ // | |
142
+ // remove add
143
+ // \ /
144
+ // FanIn
145
+ //
146
+ // The left filter converts the edit into a remove.
147
+ // The right filter converts the edit into an add.
148
+ if (addChange && removeChange) {
149
+ output.push(addEmptyRelationships({
150
+ type: 'edit',
151
+ node: addChange.node,
152
+ oldNode: removeChange.node,
153
+ }), pusher);
154
+ return;
155
+ }
156
+ output.push(addEmptyRelationships(must(addChange ?? removeChange)), pusher);
157
+ return;
158
+ }
159
+ case 'child': {
160
+ assert(types.every(type => type === 'add' || // exists can change child to add or remove
161
+ type === 'remove' || // exists can change child to add or remove
162
+ type === 'child'), 'Fan-in:child expected all adds, removes, or children');
163
+ assert(types.length <= 2, 'Fan-in:child expected at most 2 types on a child change from fan-out');
164
+ // If any branch preserved the original child change, that takes precedence over all other changes.
165
+ const childChange = candidatesToPush.get('child');
166
+ if (childChange) {
167
+ output.push(childChange, pusher);
168
+ return;
169
+ }
170
+ const addChange = candidatesToPush.get('add');
171
+ const removeChange = candidatesToPush.get('remove');
172
+ assert(addChange === undefined || removeChange === undefined, 'Fan-in:child expected either add or remove, not both');
173
+ output.push(addEmptyRelationships(must(addChange ?? removeChange)), pusher);
174
+ return;
175
+ }
176
+ default:
177
+ fanOutChangeType;
178
+ }
179
+ }
180
+ /**
181
+ * Puts relationships from `right` into `left` if they don't already exist in `left`.
182
+ */
183
+ export function mergeRelationships(left, right) {
184
+ // change types will always match
185
+ // unless we have an edit on the left
186
+ // then the right could be edit, add, or remove
187
+ if (left.type === right.type) {
188
+ switch (left.type) {
189
+ case 'add': {
190
+ return {
191
+ type: 'add',
192
+ node: {
193
+ row: left.node.row,
194
+ relationships: {
195
+ ...right.node.relationships,
196
+ ...left.node.relationships,
197
+ },
198
+ },
199
+ };
200
+ }
201
+ case 'remove': {
202
+ return {
203
+ type: 'remove',
204
+ node: {
205
+ row: left.node.row,
206
+ relationships: {
207
+ ...right.node.relationships,
208
+ ...left.node.relationships,
209
+ },
210
+ },
211
+ };
212
+ }
213
+ case 'edit': {
214
+ assert(right.type === 'edit');
215
+ // merge edits into a single edit
216
+ return {
217
+ type: 'edit',
218
+ node: {
219
+ row: left.node.row,
220
+ relationships: {
221
+ ...right.node.relationships,
222
+ ...left.node.relationships,
223
+ },
224
+ },
225
+ oldNode: {
226
+ row: left.oldNode.row,
227
+ relationships: {
228
+ ...right.oldNode.relationships,
229
+ ...left.oldNode.relationships,
230
+ },
231
+ },
232
+ };
233
+ }
234
+ }
235
+ }
236
+ // left is always an edit here
237
+ assert(left.type === 'edit');
238
+ switch (right.type) {
239
+ case 'add': {
240
+ return {
241
+ type: 'edit',
242
+ node: {
243
+ ...left.node,
244
+ relationships: {
245
+ ...right.node.relationships,
246
+ ...left.node.relationships,
247
+ },
248
+ },
249
+ oldNode: left.oldNode,
250
+ };
251
+ }
252
+ case 'remove': {
253
+ return {
254
+ type: 'edit',
255
+ node: left.node,
256
+ oldNode: {
257
+ ...left.oldNode,
258
+ relationships: {
259
+ ...right.node.relationships,
260
+ ...left.oldNode.relationships,
261
+ },
262
+ },
263
+ };
264
+ }
265
+ }
266
+ unreachable();
267
+ }
268
+ export function makeAddEmptyRelationships(schema) {
269
+ return (change) => {
270
+ if (Object.keys(schema.relationships).length === 0) {
271
+ return change;
272
+ }
273
+ switch (change.type) {
274
+ case 'add':
275
+ case 'remove': {
276
+ const ret = {
277
+ ...change,
278
+ node: {
279
+ ...change.node,
280
+ relationships: {
281
+ ...change.node.relationships,
282
+ },
283
+ },
284
+ };
285
+ mergeEmpty(ret.node.relationships, Object.keys(schema.relationships));
286
+ return ret;
287
+ }
288
+ case 'edit': {
289
+ const ret = {
290
+ ...change,
291
+ node: {
292
+ ...change.node,
293
+ relationships: {
294
+ ...change.node.relationships,
295
+ },
296
+ },
297
+ oldNode: {
298
+ ...change.oldNode,
299
+ relationships: {
300
+ ...change.oldNode.relationships,
301
+ },
302
+ },
303
+ };
304
+ mergeEmpty(ret.node.relationships, Object.keys(schema.relationships));
305
+ mergeEmpty(ret.oldNode.relationships, Object.keys(schema.relationships));
306
+ return ret;
307
+ }
308
+ case 'child':
309
+ return change; // children only have relationships along the path to the change
310
+ }
311
+ };
312
+ }
313
+ /**
314
+ * For each relationship in `schema` that does not exist
315
+ * in `relationships`, add it with an empty stream.
316
+ *
317
+ * This modifies the `relationships` object in place.
318
+ */
319
+ export function mergeEmpty(relationships, relationshipNames) {
320
+ for (const relName of relationshipNames) {
321
+ if (relationships[relName] === undefined) {
322
+ relationships[relName] = () => emptyArray;
323
+ }
324
+ }
325
+ }
326
+ //# sourceMappingURL=push-accumulated.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"push-accumulated.js","sourceRoot":"","sources":["../../../../../zql/src/ivm/push-accumulated.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import type { Ordering, System } from '../../../zero-protocol/src/ast.ts';
2
2
  import type { PrimaryKey } from '../../../zero-protocol/src/primary-key.ts';
3
- import type { SchemaValue } from '../../../zero-schema/src/table-schema.ts';
3
+ import type { SchemaValue } from '../../../zero-types/src/schema-value.ts';
4
4
  import type { Comparator } from './data.ts';
5
5
  /**
6
6
  * Information about the nodes output by an operator.
@@ -1 +1 @@
1
- {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../../../../zql/src/ivm/schema.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,QAAQ,EAAE,MAAM,EAAC,MAAM,mCAAmC,CAAC;AACxE,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,2CAA2C,CAAC;AAC1E,OAAO,KAAK,EAAC,WAAW,EAAC,MAAM,0CAA0C,CAAC;AAC1E,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,WAAW,CAAC;AAE1C;;GAEG;AACH,MAAM,MAAM,YAAY,GAAG;IACzB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;IAC9C,QAAQ,CAAC,UAAU,EAAE,UAAU,CAAC;IAChC,QAAQ,CAAC,aAAa,EAAE;QAAC,CAAC,GAAG,EAAE,MAAM,GAAG,YAAY,CAAA;KAAC,CAAC;IACtD,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;IAQ3B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,WAAW,EAAE,UAAU,CAAC;IACjC,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC;CACzB,CAAC"}
1
+ {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../../../../zql/src/ivm/schema.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,QAAQ,EAAE,MAAM,EAAC,MAAM,mCAAmC,CAAC;AACxE,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,2CAA2C,CAAC;AAC1E,OAAO,KAAK,EAAC,WAAW,EAAC,MAAM,yCAAyC,CAAC;AACzE,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,WAAW,CAAC;AAE1C;;GAEG;AACH,MAAM,MAAM,YAAY,GAAG;IACzB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;IAC9C,QAAQ,CAAC,UAAU,EAAE,UAAU,CAAC;IAChC,QAAQ,CAAC,aAAa,EAAE;QAAC,CAAC,GAAG,EAAE,MAAM,GAAG,YAAY,CAAA;KAAC,CAAC;IACtD,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;IAQ3B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,WAAW,EAAE,UAAU,CAAC;IACjC,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC;CACzB,CAAC"}
@@ -54,12 +54,12 @@ export class Skip {
54
54
  push(change) {
55
55
  const shouldBePresent = (row) => this.#shouldBePresent(row);
56
56
  if (change.type === 'edit') {
57
- maybeSplitAndPushEditChange(change, shouldBePresent, this.#output);
57
+ maybeSplitAndPushEditChange(change, shouldBePresent, this.#output, this);
58
58
  return;
59
59
  }
60
60
  change;
61
61
  if (shouldBePresent(change.node.row)) {
62
- this.#output.push(change);
62
+ this.#output.push(change, this);
63
63
  }
64
64
  }
65
65
  #getStart(req) {
@@ -1 +1 @@
1
- {"version":3,"file":"skip.js","sourceRoot":"","sources":["../../../../../zql/src/ivm/skip.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"skip.js","sourceRoot":"","sources":["../../../../../zql/src/ivm/skip.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"take.d.ts","sourceRoot":"","sources":["../../../../../zql/src/ivm/take.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,2CAA2C,CAAC;AAE1E,OAAO,EAAC,KAAK,MAAM,EAAqC,MAAM,aAAa,CAAC;AAE5E,OAAO,EAAiC,KAAK,IAAI,EAAC,MAAM,WAAW,CAAC;AACpE,OAAO,EAEL,KAAK,YAAY,EACjB,KAAK,KAAK,EACV,KAAK,QAAQ,EACb,KAAK,MAAM,EACX,KAAK,OAAO,EACb,MAAM,eAAe,CAAC;AACvB,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,aAAa,CAAC;AAC9C,OAAO,EAAc,KAAK,MAAM,EAAC,MAAM,aAAa,CAAC;AAiBrD,MAAM,MAAM,YAAY,GAAG,UAAU,CAAC;AAEtC;;;;;;;;;;GAUG;AACH,qBAAa,IAAK,YAAW,QAAQ;;gBAYjC,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,OAAO,EAChB,KAAK,EAAE,MAAM,EACb,YAAY,CAAC,EAAE,YAAY,GAAG,SAAS;IAgBzC,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAI/B,SAAS,IAAI,YAAY;IAIxB,KAAK,CAAC,GAAG,EAAE,YAAY,GAAG,MAAM,CAAC,IAAI,CAAC;IA0GtC,OAAO,CAAC,GAAG,EAAE,YAAY,GAAG,MAAM,CAAC,IAAI,CAAC;IA4CzC,IAAI,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAiZ1B,OAAO,IAAI,IAAI;CAGhB"}
1
+ {"version":3,"file":"take.d.ts","sourceRoot":"","sources":["../../../../../zql/src/ivm/take.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,2CAA2C,CAAC;AAE1E,OAAO,EAAC,KAAK,MAAM,EAAqC,MAAM,aAAa,CAAC;AAE5E,OAAO,EAAiC,KAAK,IAAI,EAAC,MAAM,WAAW,CAAC;AACpE,OAAO,EAEL,KAAK,YAAY,EACjB,KAAK,KAAK,EACV,KAAK,QAAQ,EACb,KAAK,MAAM,EACX,KAAK,OAAO,EACb,MAAM,eAAe,CAAC;AACvB,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,aAAa,CAAC;AAC9C,OAAO,EAAc,KAAK,MAAM,EAAC,MAAM,aAAa,CAAC;AAiBrD,MAAM,MAAM,YAAY,GAAG,UAAU,CAAC;AAEtC;;;;;;;;;;GAUG;AACH,qBAAa,IAAK,YAAW,QAAQ;;gBAYjC,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,OAAO,EAChB,KAAK,EAAE,MAAM,EACb,YAAY,CAAC,EAAE,YAAY,GAAG,SAAS;IAgBzC,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAI/B,SAAS,IAAI,YAAY;IAIxB,KAAK,CAAC,GAAG,EAAE,YAAY,GAAG,MAAM,CAAC,IAAI,CAAC;IAgHtC,OAAO,CAAC,GAAG,EAAE,YAAY,GAAG,MAAM,CAAC,IAAI,CAAC;IA+CzC,IAAI,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAsa1B,OAAO,IAAI,IAAI;CAGhB"}