@rocicorp/zero 0.26.0-canary.2 → 0.26.0-canary.3

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 (333) hide show
  1. package/README.md +1 -1
  2. package/out/replicache/src/persist/collect-idb-databases.d.ts +4 -4
  3. package/out/replicache/src/persist/collect-idb-databases.d.ts.map +1 -1
  4. package/out/replicache/src/persist/collect-idb-databases.js +22 -19
  5. package/out/replicache/src/persist/collect-idb-databases.js.map +1 -1
  6. package/out/replicache/src/persist/refresh.d.ts.map +1 -1
  7. package/out/replicache/src/persist/refresh.js +0 -8
  8. package/out/replicache/src/persist/refresh.js.map +1 -1
  9. package/out/replicache/src/process-scheduler.d.ts +23 -0
  10. package/out/replicache/src/process-scheduler.d.ts.map +1 -1
  11. package/out/replicache/src/process-scheduler.js +50 -1
  12. package/out/replicache/src/process-scheduler.js.map +1 -1
  13. package/out/replicache/src/replicache-impl.d.ts +8 -0
  14. package/out/replicache/src/replicache-impl.d.ts.map +1 -1
  15. package/out/replicache/src/replicache-impl.js +11 -2
  16. package/out/replicache/src/replicache-impl.js.map +1 -1
  17. package/out/shared/src/falsy.d.ts +3 -0
  18. package/out/shared/src/falsy.d.ts.map +1 -0
  19. package/out/zero/package.json.js +1 -1
  20. package/out/zero/src/adapters/drizzle.js +1 -2
  21. package/out/zero/src/adapters/prisma.d.ts +2 -0
  22. package/out/zero/src/adapters/prisma.d.ts.map +1 -0
  23. package/out/zero/src/adapters/prisma.js +6 -0
  24. package/out/zero/src/adapters/prisma.js.map +1 -0
  25. package/out/zero/src/pg.js +4 -7
  26. package/out/zero/src/react.js +3 -1
  27. package/out/zero/src/react.js.map +1 -1
  28. package/out/zero/src/server.js +5 -8
  29. package/out/zero-cache/src/auth/load-permissions.d.ts +3 -2
  30. package/out/zero-cache/src/auth/load-permissions.d.ts.map +1 -1
  31. package/out/zero-cache/src/auth/load-permissions.js +14 -8
  32. package/out/zero-cache/src/auth/load-permissions.js.map +1 -1
  33. package/out/zero-cache/src/auth/write-authorizer.d.ts +6 -0
  34. package/out/zero-cache/src/auth/write-authorizer.d.ts.map +1 -1
  35. package/out/zero-cache/src/auth/write-authorizer.js +16 -3
  36. package/out/zero-cache/src/auth/write-authorizer.js.map +1 -1
  37. package/out/zero-cache/src/config/zero-config.d.ts +44 -8
  38. package/out/zero-cache/src/config/zero-config.d.ts.map +1 -1
  39. package/out/zero-cache/src/config/zero-config.js +53 -13
  40. package/out/zero-cache/src/config/zero-config.js.map +1 -1
  41. package/out/zero-cache/src/custom/fetch.d.ts +3 -0
  42. package/out/zero-cache/src/custom/fetch.d.ts.map +1 -1
  43. package/out/zero-cache/src/custom/fetch.js +26 -0
  44. package/out/zero-cache/src/custom/fetch.js.map +1 -1
  45. package/out/zero-cache/src/db/lite-tables.js +1 -1
  46. package/out/zero-cache/src/db/lite-tables.js.map +1 -1
  47. package/out/zero-cache/src/db/migration-lite.d.ts.map +1 -1
  48. package/out/zero-cache/src/db/migration-lite.js +9 -3
  49. package/out/zero-cache/src/db/migration-lite.js.map +1 -1
  50. package/out/zero-cache/src/db/migration.d.ts.map +1 -1
  51. package/out/zero-cache/src/db/migration.js +9 -3
  52. package/out/zero-cache/src/db/migration.js.map +1 -1
  53. package/out/zero-cache/src/db/specs.d.ts +4 -3
  54. package/out/zero-cache/src/db/specs.d.ts.map +1 -1
  55. package/out/zero-cache/src/db/specs.js +4 -1
  56. package/out/zero-cache/src/db/specs.js.map +1 -1
  57. package/out/zero-cache/src/db/transaction-pool.d.ts.map +1 -1
  58. package/out/zero-cache/src/db/transaction-pool.js +9 -3
  59. package/out/zero-cache/src/db/transaction-pool.js.map +1 -1
  60. package/out/zero-cache/src/server/inspector-delegate.d.ts +1 -1
  61. package/out/zero-cache/src/server/inspector-delegate.d.ts.map +1 -1
  62. package/out/zero-cache/src/server/inspector-delegate.js +11 -30
  63. package/out/zero-cache/src/server/inspector-delegate.js.map +1 -1
  64. package/out/zero-cache/src/server/main.js +1 -1
  65. package/out/zero-cache/src/server/main.js.map +1 -1
  66. package/out/zero-cache/src/server/priority-op.d.ts +8 -0
  67. package/out/zero-cache/src/server/priority-op.d.ts.map +1 -0
  68. package/out/zero-cache/src/server/priority-op.js +29 -0
  69. package/out/zero-cache/src/server/priority-op.js.map +1 -0
  70. package/out/zero-cache/src/server/syncer.d.ts +0 -1
  71. package/out/zero-cache/src/server/syncer.d.ts.map +1 -1
  72. package/out/zero-cache/src/server/syncer.js +3 -21
  73. package/out/zero-cache/src/server/syncer.js.map +1 -1
  74. package/out/zero-cache/src/services/analyze.js +1 -1
  75. package/out/zero-cache/src/services/analyze.js.map +1 -1
  76. package/out/zero-cache/src/services/change-source/custom/change-source.d.ts.map +1 -1
  77. package/out/zero-cache/src/services/change-source/custom/change-source.js +4 -3
  78. package/out/zero-cache/src/services/change-source/custom/change-source.js.map +1 -1
  79. package/out/zero-cache/src/services/change-source/pg/change-source.d.ts.map +1 -1
  80. package/out/zero-cache/src/services/change-source/pg/change-source.js +68 -13
  81. package/out/zero-cache/src/services/change-source/pg/change-source.js.map +1 -1
  82. package/out/zero-cache/src/services/change-source/pg/initial-sync.d.ts.map +1 -1
  83. package/out/zero-cache/src/services/change-source/pg/initial-sync.js +7 -2
  84. package/out/zero-cache/src/services/change-source/pg/initial-sync.js.map +1 -1
  85. package/out/zero-cache/src/services/change-source/pg/logical-replication/stream.d.ts.map +1 -1
  86. package/out/zero-cache/src/services/change-source/pg/logical-replication/stream.js +7 -4
  87. package/out/zero-cache/src/services/change-source/pg/logical-replication/stream.js.map +1 -1
  88. package/out/zero-cache/src/services/change-source/pg/schema/ddl.d.ts +125 -180
  89. package/out/zero-cache/src/services/change-source/pg/schema/ddl.d.ts.map +1 -1
  90. package/out/zero-cache/src/services/change-source/pg/schema/init.d.ts.map +1 -1
  91. package/out/zero-cache/src/services/change-source/pg/schema/init.js +18 -10
  92. package/out/zero-cache/src/services/change-source/pg/schema/init.js.map +1 -1
  93. package/out/zero-cache/src/services/change-source/pg/schema/published.d.ts +36 -90
  94. package/out/zero-cache/src/services/change-source/pg/schema/published.d.ts.map +1 -1
  95. package/out/zero-cache/src/services/change-source/pg/schema/published.js +51 -14
  96. package/out/zero-cache/src/services/change-source/pg/schema/published.js.map +1 -1
  97. package/out/zero-cache/src/services/change-source/pg/schema/shard.d.ts +31 -36
  98. package/out/zero-cache/src/services/change-source/pg/schema/shard.d.ts.map +1 -1
  99. package/out/zero-cache/src/services/change-source/pg/schema/shard.js +24 -3
  100. package/out/zero-cache/src/services/change-source/pg/schema/shard.js.map +1 -1
  101. package/out/zero-cache/src/services/change-source/pg/schema/validation.d.ts +2 -2
  102. package/out/zero-cache/src/services/change-source/pg/schema/validation.d.ts.map +1 -1
  103. package/out/zero-cache/src/services/change-source/pg/schema/validation.js +2 -4
  104. package/out/zero-cache/src/services/change-source/pg/schema/validation.js.map +1 -1
  105. package/out/zero-cache/src/services/change-source/protocol/current/data.d.ts +158 -53
  106. package/out/zero-cache/src/services/change-source/protocol/current/data.d.ts.map +1 -1
  107. package/out/zero-cache/src/services/change-source/protocol/current/data.js +55 -10
  108. package/out/zero-cache/src/services/change-source/protocol/current/data.js.map +1 -1
  109. package/out/zero-cache/src/services/change-source/protocol/current/downstream.d.ts +210 -72
  110. package/out/zero-cache/src/services/change-source/protocol/current/downstream.d.ts.map +1 -1
  111. package/out/zero-cache/src/services/change-source/protocol/current.js +4 -2
  112. package/out/zero-cache/src/services/change-source/replica-schema.d.ts.map +1 -1
  113. package/out/zero-cache/src/services/change-source/replica-schema.js +19 -10
  114. package/out/zero-cache/src/services/change-source/replica-schema.js.map +1 -1
  115. package/out/zero-cache/src/services/change-streamer/change-streamer-service.js +1 -1
  116. package/out/zero-cache/src/services/change-streamer/change-streamer-service.js.map +1 -1
  117. package/out/zero-cache/src/services/change-streamer/change-streamer.d.ts +71 -25
  118. package/out/zero-cache/src/services/change-streamer/change-streamer.d.ts.map +1 -1
  119. package/out/zero-cache/src/services/change-streamer/change-streamer.js +1 -1
  120. package/out/zero-cache/src/services/change-streamer/change-streamer.js.map +1 -1
  121. package/out/zero-cache/src/services/change-streamer/schema/tables.d.ts +1 -0
  122. package/out/zero-cache/src/services/change-streamer/schema/tables.d.ts.map +1 -1
  123. package/out/zero-cache/src/services/change-streamer/schema/tables.js +6 -5
  124. package/out/zero-cache/src/services/change-streamer/schema/tables.js.map +1 -1
  125. package/out/zero-cache/src/services/change-streamer/storer.js +1 -1
  126. package/out/zero-cache/src/services/change-streamer/storer.js.map +1 -1
  127. package/out/zero-cache/src/services/change-streamer/subscriber.d.ts +2 -0
  128. package/out/zero-cache/src/services/change-streamer/subscriber.d.ts.map +1 -1
  129. package/out/zero-cache/src/services/change-streamer/subscriber.js +14 -1
  130. package/out/zero-cache/src/services/change-streamer/subscriber.js.map +1 -1
  131. package/out/zero-cache/src/services/heapz.d.ts.map +1 -1
  132. package/out/zero-cache/src/services/heapz.js +1 -0
  133. package/out/zero-cache/src/services/heapz.js.map +1 -1
  134. package/out/zero-cache/src/services/mutagen/error.d.ts.map +1 -1
  135. package/out/zero-cache/src/services/mutagen/error.js +4 -1
  136. package/out/zero-cache/src/services/mutagen/error.js.map +1 -1
  137. package/out/zero-cache/src/services/mutagen/mutagen.d.ts.map +1 -1
  138. package/out/zero-cache/src/services/mutagen/mutagen.js +1 -0
  139. package/out/zero-cache/src/services/mutagen/mutagen.js.map +1 -1
  140. package/out/zero-cache/src/services/mutagen/pusher.d.ts +7 -4
  141. package/out/zero-cache/src/services/mutagen/pusher.d.ts.map +1 -1
  142. package/out/zero-cache/src/services/mutagen/pusher.js +80 -8
  143. package/out/zero-cache/src/services/mutagen/pusher.js.map +1 -1
  144. package/out/zero-cache/src/services/replicator/change-processor.d.ts.map +1 -1
  145. package/out/zero-cache/src/services/replicator/change-processor.js +21 -29
  146. package/out/zero-cache/src/services/replicator/change-processor.js.map +1 -1
  147. package/out/zero-cache/src/services/replicator/schema/change-log.d.ts +1 -2
  148. package/out/zero-cache/src/services/replicator/schema/change-log.d.ts.map +1 -1
  149. package/out/zero-cache/src/services/replicator/schema/change-log.js +2 -5
  150. package/out/zero-cache/src/services/replicator/schema/change-log.js.map +1 -1
  151. package/out/zero-cache/src/services/{change-source → replicator/schema}/column-metadata.d.ts +3 -3
  152. package/out/zero-cache/src/services/replicator/schema/column-metadata.d.ts.map +1 -0
  153. package/out/zero-cache/src/services/{change-source → replicator/schema}/column-metadata.js +3 -3
  154. package/out/zero-cache/src/services/replicator/schema/column-metadata.js.map +1 -0
  155. package/out/zero-cache/src/services/replicator/schema/replication-state.d.ts.map +1 -1
  156. package/out/zero-cache/src/services/replicator/schema/replication-state.js +3 -1
  157. package/out/zero-cache/src/services/replicator/schema/replication-state.js.map +1 -1
  158. package/out/zero-cache/src/services/run-ast.js +1 -1
  159. package/out/zero-cache/src/services/run-ast.js.map +1 -1
  160. package/out/zero-cache/src/services/statz.d.ts.map +1 -1
  161. package/out/zero-cache/src/services/statz.js +1 -0
  162. package/out/zero-cache/src/services/statz.js.map +1 -1
  163. package/out/zero-cache/src/services/view-syncer/cvr-store.d.ts +1 -1
  164. package/out/zero-cache/src/services/view-syncer/cvr-store.d.ts.map +1 -1
  165. package/out/zero-cache/src/services/view-syncer/cvr-store.js +59 -40
  166. package/out/zero-cache/src/services/view-syncer/cvr-store.js.map +1 -1
  167. package/out/zero-cache/src/services/view-syncer/cvr.d.ts +0 -1
  168. package/out/zero-cache/src/services/view-syncer/cvr.d.ts.map +1 -1
  169. package/out/zero-cache/src/services/view-syncer/cvr.js +23 -6
  170. package/out/zero-cache/src/services/view-syncer/cvr.js.map +1 -1
  171. package/out/zero-cache/src/services/view-syncer/pipeline-driver.d.ts +13 -14
  172. package/out/zero-cache/src/services/view-syncer/pipeline-driver.d.ts.map +1 -1
  173. package/out/zero-cache/src/services/view-syncer/pipeline-driver.js +44 -56
  174. package/out/zero-cache/src/services/view-syncer/pipeline-driver.js.map +1 -1
  175. package/out/zero-cache/src/services/view-syncer/row-record-cache.d.ts +1 -1
  176. package/out/zero-cache/src/services/view-syncer/row-record-cache.d.ts.map +1 -1
  177. package/out/zero-cache/src/services/view-syncer/row-record-cache.js +22 -11
  178. package/out/zero-cache/src/services/view-syncer/row-record-cache.js.map +1 -1
  179. package/out/zero-cache/src/services/view-syncer/snapshotter.js +1 -1
  180. package/out/zero-cache/src/services/view-syncer/snapshotter.js.map +1 -1
  181. package/out/zero-cache/src/services/view-syncer/view-syncer.d.ts +6 -3
  182. package/out/zero-cache/src/services/view-syncer/view-syncer.d.ts.map +1 -1
  183. package/out/zero-cache/src/services/view-syncer/view-syncer.js +192 -217
  184. package/out/zero-cache/src/services/view-syncer/view-syncer.js.map +1 -1
  185. package/out/zero-cache/src/types/lexi-version.d.ts.map +1 -1
  186. package/out/zero-cache/src/types/lexi-version.js +4 -1
  187. package/out/zero-cache/src/types/lexi-version.js.map +1 -1
  188. package/out/zero-cache/src/types/lite.d.ts.map +1 -1
  189. package/out/zero-cache/src/types/lite.js +8 -2
  190. package/out/zero-cache/src/types/lite.js.map +1 -1
  191. package/out/zero-cache/src/types/shards.js +1 -1
  192. package/out/zero-cache/src/types/shards.js.map +1 -1
  193. package/out/zero-cache/src/types/sql.d.ts +5 -0
  194. package/out/zero-cache/src/types/sql.d.ts.map +1 -1
  195. package/out/zero-cache/src/types/sql.js +5 -1
  196. package/out/zero-cache/src/types/sql.js.map +1 -1
  197. package/out/zero-cache/src/types/subscription.js +1 -1
  198. package/out/zero-cache/src/types/subscription.js.map +1 -1
  199. package/out/zero-cache/src/workers/connect-params.d.ts +1 -0
  200. package/out/zero-cache/src/workers/connect-params.d.ts.map +1 -1
  201. package/out/zero-cache/src/workers/connect-params.js +2 -1
  202. package/out/zero-cache/src/workers/connect-params.js.map +1 -1
  203. package/out/zero-cache/src/workers/syncer-ws-message-handler.d.ts.map +1 -1
  204. package/out/zero-cache/src/workers/syncer-ws-message-handler.js +14 -6
  205. package/out/zero-cache/src/workers/syncer-ws-message-handler.js.map +1 -1
  206. package/out/zero-cache/src/workers/syncer.d.ts.map +1 -1
  207. package/out/zero-cache/src/workers/syncer.js +17 -10
  208. package/out/zero-cache/src/workers/syncer.js.map +1 -1
  209. package/out/zero-client/src/client/connection-manager.d.ts +8 -0
  210. package/out/zero-client/src/client/connection-manager.d.ts.map +1 -1
  211. package/out/zero-client/src/client/connection-manager.js +33 -0
  212. package/out/zero-client/src/client/connection-manager.js.map +1 -1
  213. package/out/zero-client/src/client/connection.d.ts.map +1 -1
  214. package/out/zero-client/src/client/connection.js +6 -3
  215. package/out/zero-client/src/client/connection.js.map +1 -1
  216. package/out/zero-client/src/client/error.js +1 -1
  217. package/out/zero-client/src/client/error.js.map +1 -1
  218. package/out/zero-client/src/client/mutator-proxy.d.ts.map +1 -1
  219. package/out/zero-client/src/client/mutator-proxy.js +15 -1
  220. package/out/zero-client/src/client/mutator-proxy.js.map +1 -1
  221. package/out/zero-client/src/client/options.d.ts +10 -0
  222. package/out/zero-client/src/client/options.d.ts.map +1 -1
  223. package/out/zero-client/src/client/options.js.map +1 -1
  224. package/out/zero-client/src/client/query-manager.d.ts +4 -0
  225. package/out/zero-client/src/client/query-manager.d.ts.map +1 -1
  226. package/out/zero-client/src/client/query-manager.js +7 -0
  227. package/out/zero-client/src/client/query-manager.js.map +1 -1
  228. package/out/zero-client/src/client/version.js +1 -1
  229. package/out/zero-client/src/client/zero.d.ts +3 -1
  230. package/out/zero-client/src/client/zero.d.ts.map +1 -1
  231. package/out/zero-client/src/client/zero.js +52 -7
  232. package/out/zero-client/src/client/zero.js.map +1 -1
  233. package/out/zero-client/src/mod.d.ts +1 -0
  234. package/out/zero-client/src/mod.d.ts.map +1 -1
  235. package/out/zero-protocol/src/connect.d.ts +4 -0
  236. package/out/zero-protocol/src/connect.d.ts.map +1 -1
  237. package/out/zero-protocol/src/connect.js +3 -1
  238. package/out/zero-protocol/src/connect.js.map +1 -1
  239. package/out/zero-protocol/src/protocol-version.d.ts +1 -1
  240. package/out/zero-protocol/src/protocol-version.d.ts.map +1 -1
  241. package/out/zero-protocol/src/protocol-version.js +1 -1
  242. package/out/zero-protocol/src/protocol-version.js.map +1 -1
  243. package/out/zero-protocol/src/push.d.ts +11 -2
  244. package/out/zero-protocol/src/push.d.ts.map +1 -1
  245. package/out/zero-protocol/src/push.js +22 -6
  246. package/out/zero-protocol/src/push.js.map +1 -1
  247. package/out/zero-protocol/src/up.d.ts +2 -0
  248. package/out/zero-protocol/src/up.d.ts.map +1 -1
  249. package/out/zero-react/src/mod.d.ts +3 -1
  250. package/out/zero-react/src/mod.d.ts.map +1 -1
  251. package/out/zero-react/src/paging-reducer.d.ts +61 -0
  252. package/out/zero-react/src/paging-reducer.d.ts.map +1 -0
  253. package/out/zero-react/src/paging-reducer.js +77 -0
  254. package/out/zero-react/src/paging-reducer.js.map +1 -0
  255. package/out/zero-react/src/use-query.d.ts +11 -1
  256. package/out/zero-react/src/use-query.d.ts.map +1 -1
  257. package/out/zero-react/src/use-query.js +13 -11
  258. package/out/zero-react/src/use-query.js.map +1 -1
  259. package/out/zero-react/src/use-rows.d.ts +39 -0
  260. package/out/zero-react/src/use-rows.d.ts.map +1 -0
  261. package/out/zero-react/src/use-rows.js +130 -0
  262. package/out/zero-react/src/use-rows.js.map +1 -0
  263. package/out/zero-react/src/use-zero-virtualizer.d.ts +122 -0
  264. package/out/zero-react/src/use-zero-virtualizer.d.ts.map +1 -0
  265. package/out/zero-react/src/use-zero-virtualizer.js +342 -0
  266. package/out/zero-react/src/use-zero-virtualizer.js.map +1 -0
  267. package/out/zero-react/src/zero-provider.js +1 -1
  268. package/out/zero-react/src/zero-provider.js.map +1 -1
  269. package/out/zero-server/src/adapters/drizzle.d.ts +18 -18
  270. package/out/zero-server/src/adapters/drizzle.d.ts.map +1 -1
  271. package/out/zero-server/src/adapters/drizzle.js +8 -22
  272. package/out/zero-server/src/adapters/drizzle.js.map +1 -1
  273. package/out/zero-server/src/adapters/pg.d.ts +19 -13
  274. package/out/zero-server/src/adapters/pg.d.ts.map +1 -1
  275. package/out/zero-server/src/adapters/pg.js.map +1 -1
  276. package/out/zero-server/src/adapters/postgresjs.d.ts +19 -13
  277. package/out/zero-server/src/adapters/postgresjs.d.ts.map +1 -1
  278. package/out/zero-server/src/adapters/postgresjs.js.map +1 -1
  279. package/out/zero-server/src/adapters/prisma.d.ts +66 -0
  280. package/out/zero-server/src/adapters/prisma.d.ts.map +1 -0
  281. package/out/zero-server/src/adapters/prisma.js +63 -0
  282. package/out/zero-server/src/adapters/prisma.js.map +1 -0
  283. package/out/zero-server/src/custom.js +1 -15
  284. package/out/zero-server/src/custom.js.map +1 -1
  285. package/out/zero-server/src/mod.d.ts +9 -8
  286. package/out/zero-server/src/mod.d.ts.map +1 -1
  287. package/out/zero-server/src/process-mutations.d.ts +2 -2
  288. package/out/zero-server/src/process-mutations.d.ts.map +1 -1
  289. package/out/zero-server/src/process-mutations.js +4 -8
  290. package/out/zero-server/src/process-mutations.js.map +1 -1
  291. package/out/zero-server/src/push-processor.js +1 -1
  292. package/out/zero-server/src/push-processor.js.map +1 -1
  293. package/out/zero-server/src/schema.d.ts.map +1 -1
  294. package/out/zero-server/src/schema.js +4 -1
  295. package/out/zero-server/src/schema.js.map +1 -1
  296. package/out/zero-server/src/zql-database.d.ts.map +1 -1
  297. package/out/zero-server/src/zql-database.js +17 -8
  298. package/out/zero-server/src/zql-database.js.map +1 -1
  299. package/out/zero-solid/src/mod.d.ts +1 -1
  300. package/out/zero-solid/src/mod.d.ts.map +1 -1
  301. package/out/zero-solid/src/use-query.d.ts +10 -1
  302. package/out/zero-solid/src/use-query.d.ts.map +1 -1
  303. package/out/zero-solid/src/use-query.js +21 -5
  304. package/out/zero-solid/src/use-query.js.map +1 -1
  305. package/out/zero-solid/src/use-zero.js +1 -1
  306. package/out/zero-solid/src/use-zero.js.map +1 -1
  307. package/out/zql/src/ivm/constraint.d.ts.map +1 -1
  308. package/out/zql/src/ivm/constraint.js +4 -1
  309. package/out/zql/src/ivm/constraint.js.map +1 -1
  310. package/out/zql/src/ivm/exists.d.ts.map +1 -1
  311. package/out/zql/src/ivm/exists.js +4 -1
  312. package/out/zql/src/ivm/exists.js.map +1 -1
  313. package/out/zql/src/ivm/join-utils.d.ts.map +1 -1
  314. package/out/zql/src/ivm/join-utils.js +8 -2
  315. package/out/zql/src/ivm/join-utils.js.map +1 -1
  316. package/out/zql/src/ivm/memory-source.d.ts.map +1 -1
  317. package/out/zql/src/ivm/memory-source.js +12 -3
  318. package/out/zql/src/ivm/memory-source.js.map +1 -1
  319. package/out/zql/src/ivm/push-accumulated.d.ts.map +1 -1
  320. package/out/zql/src/ivm/push-accumulated.js +25 -2
  321. package/out/zql/src/ivm/push-accumulated.js.map +1 -1
  322. package/out/zql/src/ivm/take.d.ts.map +1 -1
  323. package/out/zql/src/ivm/take.js +24 -6
  324. package/out/zql/src/ivm/take.js.map +1 -1
  325. package/out/zql/src/ivm/union-fan-in.d.ts.map +1 -1
  326. package/out/zql/src/ivm/union-fan-in.js +12 -3
  327. package/out/zql/src/ivm/union-fan-in.js.map +1 -1
  328. package/out/zqlite/src/table-source.d.ts.map +1 -1
  329. package/out/zqlite/src/table-source.js +1 -2
  330. package/out/zqlite/src/table-source.js.map +1 -1
  331. package/package.json +6 -2
  332. package/out/zero-cache/src/services/change-source/column-metadata.d.ts.map +0 -1
  333. package/out/zero-cache/src/services/change-source/column-metadata.js.map +0 -1
@@ -7,40 +7,56 @@ declare const begin: v.TupleType<[v.Type<"begin">, v.ObjectType<{
7
7
  }, undefined>]>;
8
8
  declare const data: v.TupleType<[v.Type<"data">, v.UnionType<[v.ObjectType<{
9
9
  tag: v.Type<"insert">;
10
- relation: v.ObjectType<{
11
- schema: v.Type<string>;
12
- name: v.Type<string>;
13
- keyColumns: v.ArrayType<v.Type<string>>;
14
- replicaIdentity: v.Optional<"default" | "nothing" | "full" | "index">;
15
- }, undefined>;
10
+ relation: v.Type<{
11
+ rowKey: {
12
+ type?: "default" | "nothing" | "full" | "index" | undefined;
13
+ columns: string[];
14
+ };
15
+ keyColumns?: string[] | undefined;
16
+ replicaIdentity?: "default" | "nothing" | "full" | "index" | undefined;
17
+ schema: string;
18
+ name: string;
19
+ }>;
16
20
  new: v.Type<Record<string, import("../../../../../../shared/src/bigint-json.ts").JSONValue>>;
17
21
  }, undefined>, v.ObjectType<{
18
22
  tag: v.Type<"update">;
19
- relation: v.ObjectType<{
20
- schema: v.Type<string>;
21
- name: v.Type<string>;
22
- keyColumns: v.ArrayType<v.Type<string>>;
23
- replicaIdentity: v.Optional<"default" | "nothing" | "full" | "index">;
24
- }, undefined>;
23
+ relation: v.Type<{
24
+ rowKey: {
25
+ type?: "default" | "nothing" | "full" | "index" | undefined;
26
+ columns: string[];
27
+ };
28
+ keyColumns?: string[] | undefined;
29
+ replicaIdentity?: "default" | "nothing" | "full" | "index" | undefined;
30
+ schema: string;
31
+ name: string;
32
+ }>;
25
33
  key: v.Type<Record<string, import("../../../../../../shared/src/bigint-json.ts").JSONValue> | null>;
26
34
  new: v.Type<Record<string, import("../../../../../../shared/src/bigint-json.ts").JSONValue>>;
27
35
  }, undefined>, v.ObjectType<{
28
36
  tag: v.Type<"delete">;
29
- relation: v.ObjectType<{
30
- schema: v.Type<string>;
31
- name: v.Type<string>;
32
- keyColumns: v.ArrayType<v.Type<string>>;
33
- replicaIdentity: v.Optional<"default" | "nothing" | "full" | "index">;
34
- }, undefined>;
37
+ relation: v.Type<{
38
+ rowKey: {
39
+ type?: "default" | "nothing" | "full" | "index" | undefined;
40
+ columns: string[];
41
+ };
42
+ keyColumns?: string[] | undefined;
43
+ replicaIdentity?: "default" | "nothing" | "full" | "index" | undefined;
44
+ schema: string;
45
+ name: string;
46
+ }>;
35
47
  key: v.Type<Record<string, import("../../../../../../shared/src/bigint-json.ts").JSONValue>>;
36
48
  }, undefined>, v.ObjectType<{
37
49
  tag: v.Type<"truncate">;
38
- relations: v.ArrayType<v.ObjectType<{
39
- schema: v.Type<string>;
40
- name: v.Type<string>;
41
- keyColumns: v.ArrayType<v.Type<string>>;
42
- replicaIdentity: v.Optional<"default" | "nothing" | "full" | "index">;
43
- }, undefined>>;
50
+ relations: v.ArrayType<v.Type<{
51
+ rowKey: {
52
+ type?: "default" | "nothing" | "full" | "index" | undefined;
53
+ columns: string[];
54
+ };
55
+ keyColumns?: string[] | undefined;
56
+ replicaIdentity?: "default" | "nothing" | "full" | "index" | undefined;
57
+ schema: string;
58
+ name: string;
59
+ }>>;
44
60
  }, undefined>, v.ObjectType<{
45
61
  tag: v.Type<"create-table">;
46
62
  spec: v.ObjectType<Omit<{
@@ -58,6 +74,12 @@ declare const data: v.TupleType<[v.Type<"data">, v.UnionType<[v.ObjectType<{
58
74
  }, "schema"> & {
59
75
  schema: v.Type<string>;
60
76
  }, undefined>;
77
+ metadata: v.Optional<{
78
+ rowKey: {
79
+ type?: "default" | "nothing" | "full" | "index" | undefined;
80
+ columns: string[];
81
+ };
82
+ }>;
61
83
  }, undefined>, v.ObjectType<{
62
84
  tag: v.Type<"rename-table">;
63
85
  old: v.ObjectType<{
@@ -68,6 +90,24 @@ declare const data: v.TupleType<[v.Type<"data">, v.UnionType<[v.ObjectType<{
68
90
  schema: v.Type<string>;
69
91
  name: v.Type<string>;
70
92
  }, undefined>;
93
+ }, undefined>, v.ObjectType<{
94
+ tag: v.Type<"update-table-metadata">;
95
+ table: v.ObjectType<{
96
+ schema: v.Type<string>;
97
+ name: v.Type<string>;
98
+ }, undefined>;
99
+ old: v.ObjectType<{
100
+ rowKey: v.ObjectType<{
101
+ columns: v.ArrayType<v.Type<string>>;
102
+ type: v.Optional<"default" | "nothing" | "full" | "index">;
103
+ }, undefined>;
104
+ }, undefined>;
105
+ new: v.ObjectType<{
106
+ rowKey: v.ObjectType<{
107
+ columns: v.ArrayType<v.Type<string>>;
108
+ type: v.Optional<"default" | "nothing" | "full" | "index">;
109
+ }, undefined>;
110
+ }, undefined>;
71
111
  }, undefined>, v.ObjectType<{
72
112
  tag: v.Type<"add-column">;
73
113
  table: v.ObjectType<{
@@ -86,6 +126,12 @@ declare const data: v.TupleType<[v.Type<"data">, v.UnionType<[v.ObjectType<{
86
126
  dflt: v.Optional<string | null>;
87
127
  }, undefined>;
88
128
  }, undefined>;
129
+ tableMetadata: v.Optional<{
130
+ rowKey: {
131
+ type?: "default" | "nothing" | "full" | "index" | undefined;
132
+ columns: string[];
133
+ };
134
+ }>;
89
135
  }, undefined>, v.ObjectType<{
90
136
  tag: v.Type<"update-column">;
91
137
  table: v.ObjectType<{
@@ -165,40 +211,56 @@ export declare const changeStreamDataSchema: v.UnionType<[v.TupleType<[v.Type<"b
165
211
  commitWatermark: v.Type<string>;
166
212
  }, undefined>]>, v.TupleType<[v.Type<"data">, v.UnionType<[v.ObjectType<{
167
213
  tag: v.Type<"insert">;
168
- relation: v.ObjectType<{
169
- schema: v.Type<string>;
170
- name: v.Type<string>;
171
- keyColumns: v.ArrayType<v.Type<string>>;
172
- replicaIdentity: v.Optional<"default" | "nothing" | "full" | "index">;
173
- }, undefined>;
214
+ relation: v.Type<{
215
+ rowKey: {
216
+ type?: "default" | "nothing" | "full" | "index" | undefined;
217
+ columns: string[];
218
+ };
219
+ keyColumns?: string[] | undefined;
220
+ replicaIdentity?: "default" | "nothing" | "full" | "index" | undefined;
221
+ schema: string;
222
+ name: string;
223
+ }>;
174
224
  new: v.Type<Record<string, import("../../../../../../shared/src/bigint-json.ts").JSONValue>>;
175
225
  }, undefined>, v.ObjectType<{
176
226
  tag: v.Type<"update">;
177
- relation: v.ObjectType<{
178
- schema: v.Type<string>;
179
- name: v.Type<string>;
180
- keyColumns: v.ArrayType<v.Type<string>>;
181
- replicaIdentity: v.Optional<"default" | "nothing" | "full" | "index">;
182
- }, undefined>;
227
+ relation: v.Type<{
228
+ rowKey: {
229
+ type?: "default" | "nothing" | "full" | "index" | undefined;
230
+ columns: string[];
231
+ };
232
+ keyColumns?: string[] | undefined;
233
+ replicaIdentity?: "default" | "nothing" | "full" | "index" | undefined;
234
+ schema: string;
235
+ name: string;
236
+ }>;
183
237
  key: v.Type<Record<string, import("../../../../../../shared/src/bigint-json.ts").JSONValue> | null>;
184
238
  new: v.Type<Record<string, import("../../../../../../shared/src/bigint-json.ts").JSONValue>>;
185
239
  }, undefined>, v.ObjectType<{
186
240
  tag: v.Type<"delete">;
187
- relation: v.ObjectType<{
188
- schema: v.Type<string>;
189
- name: v.Type<string>;
190
- keyColumns: v.ArrayType<v.Type<string>>;
191
- replicaIdentity: v.Optional<"default" | "nothing" | "full" | "index">;
192
- }, undefined>;
241
+ relation: v.Type<{
242
+ rowKey: {
243
+ type?: "default" | "nothing" | "full" | "index" | undefined;
244
+ columns: string[];
245
+ };
246
+ keyColumns?: string[] | undefined;
247
+ replicaIdentity?: "default" | "nothing" | "full" | "index" | undefined;
248
+ schema: string;
249
+ name: string;
250
+ }>;
193
251
  key: v.Type<Record<string, import("../../../../../../shared/src/bigint-json.ts").JSONValue>>;
194
252
  }, undefined>, v.ObjectType<{
195
253
  tag: v.Type<"truncate">;
196
- relations: v.ArrayType<v.ObjectType<{
197
- schema: v.Type<string>;
198
- name: v.Type<string>;
199
- keyColumns: v.ArrayType<v.Type<string>>;
200
- replicaIdentity: v.Optional<"default" | "nothing" | "full" | "index">;
201
- }, undefined>>;
254
+ relations: v.ArrayType<v.Type<{
255
+ rowKey: {
256
+ type?: "default" | "nothing" | "full" | "index" | undefined;
257
+ columns: string[];
258
+ };
259
+ keyColumns?: string[] | undefined;
260
+ replicaIdentity?: "default" | "nothing" | "full" | "index" | undefined;
261
+ schema: string;
262
+ name: string;
263
+ }>>;
202
264
  }, undefined>, v.ObjectType<{
203
265
  tag: v.Type<"create-table">;
204
266
  spec: v.ObjectType<Omit<{
@@ -216,6 +278,12 @@ export declare const changeStreamDataSchema: v.UnionType<[v.TupleType<[v.Type<"b
216
278
  }, "schema"> & {
217
279
  schema: v.Type<string>;
218
280
  }, undefined>;
281
+ metadata: v.Optional<{
282
+ rowKey: {
283
+ type?: "default" | "nothing" | "full" | "index" | undefined;
284
+ columns: string[];
285
+ };
286
+ }>;
219
287
  }, undefined>, v.ObjectType<{
220
288
  tag: v.Type<"rename-table">;
221
289
  old: v.ObjectType<{
@@ -226,6 +294,24 @@ export declare const changeStreamDataSchema: v.UnionType<[v.TupleType<[v.Type<"b
226
294
  schema: v.Type<string>;
227
295
  name: v.Type<string>;
228
296
  }, undefined>;
297
+ }, undefined>, v.ObjectType<{
298
+ tag: v.Type<"update-table-metadata">;
299
+ table: v.ObjectType<{
300
+ schema: v.Type<string>;
301
+ name: v.Type<string>;
302
+ }, undefined>;
303
+ old: v.ObjectType<{
304
+ rowKey: v.ObjectType<{
305
+ columns: v.ArrayType<v.Type<string>>;
306
+ type: v.Optional<"default" | "nothing" | "full" | "index">;
307
+ }, undefined>;
308
+ }, undefined>;
309
+ new: v.ObjectType<{
310
+ rowKey: v.ObjectType<{
311
+ columns: v.ArrayType<v.Type<string>>;
312
+ type: v.Optional<"default" | "nothing" | "full" | "index">;
313
+ }, undefined>;
314
+ }, undefined>;
229
315
  }, undefined>, v.ObjectType<{
230
316
  tag: v.Type<"add-column">;
231
317
  table: v.ObjectType<{
@@ -244,6 +330,12 @@ export declare const changeStreamDataSchema: v.UnionType<[v.TupleType<[v.Type<"b
244
330
  dflt: v.Optional<string | null>;
245
331
  }, undefined>;
246
332
  }, undefined>;
333
+ tableMetadata: v.Optional<{
334
+ rowKey: {
335
+ type?: "default" | "nothing" | "full" | "index" | undefined;
336
+ columns: string[];
337
+ };
338
+ }>;
247
339
  }, undefined>, v.ObjectType<{
248
340
  tag: v.Type<"update-column">;
249
341
  table: v.ObjectType<{
@@ -325,40 +417,56 @@ export declare const changeStreamMessageSchema: v.UnionType<[v.UnionType<[v.Tupl
325
417
  commitWatermark: v.Type<string>;
326
418
  }, undefined>]>, v.TupleType<[v.Type<"data">, v.UnionType<[v.ObjectType<{
327
419
  tag: v.Type<"insert">;
328
- relation: v.ObjectType<{
329
- schema: v.Type<string>;
330
- name: v.Type<string>;
331
- keyColumns: v.ArrayType<v.Type<string>>;
332
- replicaIdentity: v.Optional<"default" | "nothing" | "full" | "index">;
333
- }, undefined>;
420
+ relation: v.Type<{
421
+ rowKey: {
422
+ type?: "default" | "nothing" | "full" | "index" | undefined;
423
+ columns: string[];
424
+ };
425
+ keyColumns?: string[] | undefined;
426
+ replicaIdentity?: "default" | "nothing" | "full" | "index" | undefined;
427
+ schema: string;
428
+ name: string;
429
+ }>;
334
430
  new: v.Type<Record<string, import("../../../../../../shared/src/bigint-json.ts").JSONValue>>;
335
431
  }, undefined>, v.ObjectType<{
336
432
  tag: v.Type<"update">;
337
- relation: v.ObjectType<{
338
- schema: v.Type<string>;
339
- name: v.Type<string>;
340
- keyColumns: v.ArrayType<v.Type<string>>;
341
- replicaIdentity: v.Optional<"default" | "nothing" | "full" | "index">;
342
- }, undefined>;
433
+ relation: v.Type<{
434
+ rowKey: {
435
+ type?: "default" | "nothing" | "full" | "index" | undefined;
436
+ columns: string[];
437
+ };
438
+ keyColumns?: string[] | undefined;
439
+ replicaIdentity?: "default" | "nothing" | "full" | "index" | undefined;
440
+ schema: string;
441
+ name: string;
442
+ }>;
343
443
  key: v.Type<Record<string, import("../../../../../../shared/src/bigint-json.ts").JSONValue> | null>;
344
444
  new: v.Type<Record<string, import("../../../../../../shared/src/bigint-json.ts").JSONValue>>;
345
445
  }, undefined>, v.ObjectType<{
346
446
  tag: v.Type<"delete">;
347
- relation: v.ObjectType<{
348
- schema: v.Type<string>;
349
- name: v.Type<string>;
350
- keyColumns: v.ArrayType<v.Type<string>>;
351
- replicaIdentity: v.Optional<"default" | "nothing" | "full" | "index">;
352
- }, undefined>;
447
+ relation: v.Type<{
448
+ rowKey: {
449
+ type?: "default" | "nothing" | "full" | "index" | undefined;
450
+ columns: string[];
451
+ };
452
+ keyColumns?: string[] | undefined;
453
+ replicaIdentity?: "default" | "nothing" | "full" | "index" | undefined;
454
+ schema: string;
455
+ name: string;
456
+ }>;
353
457
  key: v.Type<Record<string, import("../../../../../../shared/src/bigint-json.ts").JSONValue>>;
354
458
  }, undefined>, v.ObjectType<{
355
459
  tag: v.Type<"truncate">;
356
- relations: v.ArrayType<v.ObjectType<{
357
- schema: v.Type<string>;
358
- name: v.Type<string>;
359
- keyColumns: v.ArrayType<v.Type<string>>;
360
- replicaIdentity: v.Optional<"default" | "nothing" | "full" | "index">;
361
- }, undefined>>;
460
+ relations: v.ArrayType<v.Type<{
461
+ rowKey: {
462
+ type?: "default" | "nothing" | "full" | "index" | undefined;
463
+ columns: string[];
464
+ };
465
+ keyColumns?: string[] | undefined;
466
+ replicaIdentity?: "default" | "nothing" | "full" | "index" | undefined;
467
+ schema: string;
468
+ name: string;
469
+ }>>;
362
470
  }, undefined>, v.ObjectType<{
363
471
  tag: v.Type<"create-table">;
364
472
  spec: v.ObjectType<Omit<{
@@ -376,6 +484,12 @@ export declare const changeStreamMessageSchema: v.UnionType<[v.UnionType<[v.Tupl
376
484
  }, "schema"> & {
377
485
  schema: v.Type<string>;
378
486
  }, undefined>;
487
+ metadata: v.Optional<{
488
+ rowKey: {
489
+ type?: "default" | "nothing" | "full" | "index" | undefined;
490
+ columns: string[];
491
+ };
492
+ }>;
379
493
  }, undefined>, v.ObjectType<{
380
494
  tag: v.Type<"rename-table">;
381
495
  old: v.ObjectType<{
@@ -386,6 +500,24 @@ export declare const changeStreamMessageSchema: v.UnionType<[v.UnionType<[v.Tupl
386
500
  schema: v.Type<string>;
387
501
  name: v.Type<string>;
388
502
  }, undefined>;
503
+ }, undefined>, v.ObjectType<{
504
+ tag: v.Type<"update-table-metadata">;
505
+ table: v.ObjectType<{
506
+ schema: v.Type<string>;
507
+ name: v.Type<string>;
508
+ }, undefined>;
509
+ old: v.ObjectType<{
510
+ rowKey: v.ObjectType<{
511
+ columns: v.ArrayType<v.Type<string>>;
512
+ type: v.Optional<"default" | "nothing" | "full" | "index">;
513
+ }, undefined>;
514
+ }, undefined>;
515
+ new: v.ObjectType<{
516
+ rowKey: v.ObjectType<{
517
+ columns: v.ArrayType<v.Type<string>>;
518
+ type: v.Optional<"default" | "nothing" | "full" | "index">;
519
+ }, undefined>;
520
+ }, undefined>;
389
521
  }, undefined>, v.ObjectType<{
390
522
  tag: v.Type<"add-column">;
391
523
  table: v.ObjectType<{
@@ -404,6 +536,12 @@ export declare const changeStreamMessageSchema: v.UnionType<[v.UnionType<[v.Tupl
404
536
  dflt: v.Optional<string | null>;
405
537
  }, undefined>;
406
538
  }, undefined>;
539
+ tableMetadata: v.Optional<{
540
+ rowKey: {
541
+ type?: "default" | "nothing" | "full" | "index" | undefined;
542
+ columns: string[];
543
+ };
544
+ }>;
407
545
  }, undefined>, v.ObjectType<{
408
546
  tag: v.Type<"update-column">;
409
547
  table: v.ObjectType<{
@@ -1 +1 @@
1
- {"version":3,"file":"downstream.d.ts","sourceRoot":"","sources":["../../../../../../../../zero-cache/src/services/change-source/protocol/current/downstream.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,wCAAwC,CAAC;AAU5D,QAAA,MAAM,KAAK;;;;;eAIT,CAAC;AACH,QAAA,MAAM,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAAiD,CAAC;AAC5D,QAAA,MAAM,MAAM;;;;eAIV,CAAC;AACH,QAAA,MAAM,QAAQ;;eAAmD,CAAC;AAElE,MAAM,MAAM,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,KAAK,CAAC,CAAC;AAC1C,MAAM,MAAM,IAAI,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,IAAI,CAAC,CAAC;AACxC,MAAM,MAAM,MAAM,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,MAAM,CAAC,CAAC;AAC5C,MAAM,MAAM,QAAQ,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,QAAQ,CAAC,CAAC;AAEhD,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAAyC,CAAC;AAC7E,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC;AAEtE,eAAO,MAAM,yBAAyB;;;;eAGpC,CAAC;AACH,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAC;AAE5E,4EAA4E;AAC5E,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAIrC,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAC"}
1
+ {"version":3,"file":"downstream.d.ts","sourceRoot":"","sources":["../../../../../../../../zero-cache/src/services/change-source/protocol/current/downstream.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,wCAAwC,CAAC;AAU5D,QAAA,MAAM,KAAK;;;;;eAIT,CAAC;AACH,QAAA,MAAM,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAAiD,CAAC;AAC5D,QAAA,MAAM,MAAM;;;;eAIV,CAAC;AACH,QAAA,MAAM,QAAQ;;eAAmD,CAAC;AAElE,MAAM,MAAM,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,KAAK,CAAC,CAAC;AAC1C,MAAM,MAAM,IAAI,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,IAAI,CAAC,CAAC;AACxC,MAAM,MAAM,MAAM,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,MAAM,CAAC,CAAC;AAC5C,MAAM,MAAM,QAAQ,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,QAAQ,CAAC,CAAC;AAEhD,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAAyC,CAAC;AAC7E,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC;AAEtE,eAAO,MAAM,yBAAyB;;;;eAGpC,CAAC;AACH,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAC;AAE5E,4EAA4E;AAC5E,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAIrC,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import { resetRequiredSchema } from "./current/control.js";
2
- import { addColumnSchema, beginSchema, commitSchema, createIndexSchema, createTableSchema, dataChangeSchema, deleteSchema, dropColumnSchema, dropIndexSchema, dropTableSchema, insertSchema, relationSchema, renameTableSchema, rollbackSchema, rowSchema, truncateSchema, updateColumnSchema, updateSchema } from "./current/data.js";
2
+ import { addColumnSchema, beginSchema, commitSchema, createIndexSchema, createTableSchema, dataChangeSchema, deleteSchema, dropColumnSchema, dropIndexSchema, dropTableSchema, insertSchema, relationSchema, renameTableSchema, rollbackSchema, rowSchema, tableMetadataSchema, truncateSchema, updateColumnSchema, updateSchema, updateTableMetadataSchema } from "./current/data.js";
3
3
  import { changeStreamControlSchema, changeStreamDataSchema, changeStreamMessageSchema } from "./current/downstream.js";
4
4
  import { jsonObjectSchema, jsonValueSchema } from "./current/json.js";
5
5
  import { CHANGE_SOURCE_PATH } from "./current/path.js";
@@ -31,8 +31,10 @@ export {
31
31
  rowSchema,
32
32
  statusMessageSchema,
33
33
  statusSchema,
34
+ tableMetadataSchema,
34
35
  truncateSchema,
35
36
  updateColumnSchema,
36
- updateSchema
37
+ updateSchema,
38
+ updateTableMetadataSchema
37
39
  };
38
40
  //# sourceMappingURL=current.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"replica-schema.d.ts","sourceRoot":"","sources":["../../../../../../zero-cache/src/services/change-source/replica-schema.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,kBAAkB,CAAC;AAGjD,OAAO,KAAK,EAAC,QAAQ,EAAC,MAAM,8BAA8B,CAAC;AAE3D,OAAO,EAEL,KAAK,uBAAuB,EAE7B,MAAM,4BAA4B,CAAC;AAYpC,wBAAsB,WAAW,CAC/B,GAAG,EAAE,UAAU,EACf,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,CAAC,EAAE,EAAE,UAAU,EAAE,EAAE,EAAE,QAAQ,KAAK,OAAO,CAAC,IAAI,CAAC,GAC3D,OAAO,CAAC,IAAI,CAAC,CAoBf;AAED,wBAAsB,cAAc,CAClC,GAAG,EAAE,UAAU,EACf,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,iBAgBf;AAED,eAAO,MAAM,yBAAyB,EAAE,uBAsCvC,CAAC"}
1
+ {"version":3,"file":"replica-schema.d.ts","sourceRoot":"","sources":["../../../../../../zero-cache/src/services/change-source/replica-schema.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,kBAAkB,CAAC;AAGjD,OAAO,KAAK,EAAC,QAAQ,EAAC,MAAM,8BAA8B,CAAC;AAE3D,OAAO,EAEL,KAAK,uBAAuB,EAE7B,MAAM,4BAA4B,CAAC;AAYpC,wBAAsB,WAAW,CAC/B,GAAG,EAAE,UAAU,EACf,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,CAAC,EAAE,EAAE,UAAU,EAAE,EAAE,EAAE,QAAQ,KAAK,OAAO,CAAC,IAAI,CAAC,GAC3D,OAAO,CAAC,IAAI,CAAC,CAoBf;AAED,wBAAsB,cAAc,CAClC,GAAG,EAAE,UAAU,EACf,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,iBAgBf;AAED,eAAO,MAAM,yBAAyB,EAAE,uBAiDvC,CAAC"}
@@ -3,9 +3,9 @@ import { must } from "../../../../shared/src/must.js";
3
3
  import { listTables } from "../../db/lite-tables.js";
4
4
  import { runSchemaMigrations } from "../../db/migration-lite.js";
5
5
  import { AutoResetSignal } from "../change-streamer/schema/tables.js";
6
- import { initChangeLog } from "../replicator/schema/change-log.js";
6
+ import { CREATE_CHANGELOG_SCHEMA } from "../replicator/schema/change-log.js";
7
+ import { ColumnMetadataStore, CREATE_COLUMN_METADATA_TABLE } from "../replicator/schema/column-metadata.js";
7
8
  import { recordEvent, CREATE_RUNTIME_EVENTS_TABLE } from "../replicator/schema/replication-state.js";
8
- import { ColumnMetadataStore, CREATE_COLUMN_METADATA_TABLE } from "./column-metadata.js";
9
9
  async function initReplica(log, debugName, dbPath, initialSync) {
10
10
  const setupMigration = {
11
11
  migrateSchema: (log2, tx) => initialSync(log2, tx),
@@ -58,21 +58,30 @@ const schemaVersionMigrationMap = {
58
58
  recordEvent(db, "upgrade");
59
59
  }
60
60
  },
61
- 6: {
61
+ // Revised in the migration to v8 because the v6 code was incomplete.
62
+ 6: {},
63
+ 7: {
64
+ migrateSchema: (_, db) => {
65
+ db.exec(`DELETE FROM "_zero.changeLog"`);
66
+ db.exec(CREATE_CHANGELOG_SCHEMA);
67
+ }
68
+ },
69
+ 8: {
62
70
  migrateSchema: (_, db) => {
63
- db.exec(CREATE_COLUMN_METADATA_TABLE);
71
+ let store = ColumnMetadataStore.getInstance(db);
72
+ if (!store) {
73
+ db.exec(CREATE_COLUMN_METADATA_TABLE);
74
+ }
64
75
  },
65
76
  migrateData: (_, db) => {
77
+ db.exec(
78
+ /*sql*/
79
+ `DELETE FROM "_zero.column_metadata"`
80
+ );
66
81
  const store = ColumnMetadataStore.getInstance(db);
67
82
  const tables = listTables(db);
68
83
  must(store).populateFromExistingTables(tables);
69
84
  }
70
- },
71
- 7: {
72
- migrateSchema: (_, db) => {
73
- db.exec(`DELETE FROM "_zero.changeLog"`);
74
- initChangeLog(db);
75
- }
76
85
  }
77
86
  };
78
87
  export {
@@ -1 +1 @@
1
- {"version":3,"file":"replica-schema.js","sources":["../../../../../../zero-cache/src/services/change-source/replica-schema.ts"],"sourcesContent":["import type {LogContext} from '@rocicorp/logger';\nimport {SqliteError} from '@rocicorp/zero-sqlite3';\nimport {must} from '../../../../shared/src/must.ts';\nimport type {Database} from '../../../../zqlite/src/db.ts';\nimport {listTables} from '../../db/lite-tables.ts';\nimport {\n runSchemaMigrations,\n type IncrementalMigrationMap,\n type Migration,\n} from '../../db/migration-lite.ts';\nimport {AutoResetSignal} from '../change-streamer/schema/tables.ts';\nimport {initChangeLog} from '../replicator/schema/change-log.ts';\nimport {\n CREATE_RUNTIME_EVENTS_TABLE,\n recordEvent,\n} from '../replicator/schema/replication-state.ts';\nimport {\n ColumnMetadataStore,\n CREATE_COLUMN_METADATA_TABLE,\n} from './column-metadata.ts';\n\nexport async function initReplica(\n log: LogContext,\n debugName: string,\n dbPath: string,\n initialSync: (lc: LogContext, tx: Database) => Promise<void>,\n): Promise<void> {\n const setupMigration: Migration = {\n migrateSchema: (log, tx) => initialSync(log, tx),\n minSafeVersion: 1,\n };\n\n try {\n await runSchemaMigrations(\n log,\n debugName,\n dbPath,\n setupMigration,\n schemaVersionMigrationMap,\n );\n } catch (e) {\n if (e instanceof SqliteError && e.code === 'SQLITE_CORRUPT') {\n throw new AutoResetSignal(e.message);\n }\n throw e;\n }\n}\n\nexport async function upgradeReplica(\n log: LogContext,\n debugName: string,\n dbPath: string,\n) {\n await runSchemaMigrations(\n log,\n debugName,\n dbPath,\n // setupMigration should never be invoked\n {\n migrateSchema: () => {\n throw new Error(\n 'This should only be called for already synced replicas',\n );\n },\n },\n schemaVersionMigrationMap,\n );\n}\n\nexport const schemaVersionMigrationMap: IncrementalMigrationMap = {\n // There's no incremental migration from v1. Just reset the replica.\n 4: {\n migrateSchema: () => {\n throw new AutoResetSignal('upgrading replica to new schema');\n },\n minSafeVersion: 3,\n },\n\n 5: {\n migrateSchema: (_, db) => {\n db.exec(CREATE_RUNTIME_EVENTS_TABLE);\n },\n migrateData: (_, db) => {\n recordEvent(db, 'upgrade');\n },\n },\n\n 6: {\n migrateSchema: (_, db) => {\n db.exec(CREATE_COLUMN_METADATA_TABLE);\n },\n migrateData: (_, db) => {\n const store = ColumnMetadataStore.getInstance(db);\n const tables = listTables(db);\n must(store).populateFromExistingTables(tables);\n },\n },\n\n 7: {\n migrateSchema: (_, db) => {\n // Note: The original \"changeLog\" table is kept so that the replica file\n // is compatible with older zero-caches. However, it is truncated for\n // space savings (since historic changes were never read).\n db.exec(`DELETE FROM \"_zero.changeLog\"`);\n initChangeLog(db); // Creates _zero.changeLog2\n },\n },\n};\n"],"names":["log"],"mappings":";;;;;;;;AAqBA,eAAsB,YACpB,KACA,WACA,QACA,aACe;AACf,QAAM,iBAA4B;AAAA,IAChC,eAAe,CAACA,MAAK,OAAO,YAAYA,MAAK,EAAE;AAAA,IAC/C,gBAAgB;AAAA,EAAA;AAGlB,MAAI;AACF,UAAM;AAAA,MACJ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IAAA;AAAA,EAEJ,SAAS,GAAG;AACV,QAAI,aAAa,eAAe,EAAE,SAAS,kBAAkB;AAC3D,YAAM,IAAI,gBAAgB,EAAE,OAAO;AAAA,IACrC;AACA,UAAM;AAAA,EACR;AACF;AAEA,eAAsB,eACpB,KACA,WACA,QACA;AACA,QAAM;AAAA,IACJ;AAAA,IACA;AAAA,IACA;AAAA;AAAA,IAEA;AAAA,MACE,eAAe,MAAM;AACnB,cAAM,IAAI;AAAA,UACR;AAAA,QAAA;AAAA,MAEJ;AAAA,IAAA;AAAA,IAEF;AAAA,EAAA;AAEJ;AAEO,MAAM,4BAAqD;AAAA;AAAA,EAEhE,GAAG;AAAA,IACD,eAAe,MAAM;AACnB,YAAM,IAAI,gBAAgB,iCAAiC;AAAA,IAC7D;AAAA,IACA,gBAAgB;AAAA,EAAA;AAAA,EAGlB,GAAG;AAAA,IACD,eAAe,CAAC,GAAG,OAAO;AACxB,SAAG,KAAK,2BAA2B;AAAA,IACrC;AAAA,IACA,aAAa,CAAC,GAAG,OAAO;AACtB,kBAAY,IAAI,SAAS;AAAA,IAC3B;AAAA,EAAA;AAAA,EAGF,GAAG;AAAA,IACD,eAAe,CAAC,GAAG,OAAO;AACxB,SAAG,KAAK,4BAA4B;AAAA,IACtC;AAAA,IACA,aAAa,CAAC,GAAG,OAAO;AACtB,YAAM,QAAQ,oBAAoB,YAAY,EAAE;AAChD,YAAM,SAAS,WAAW,EAAE;AAC5B,WAAK,KAAK,EAAE,2BAA2B,MAAM;AAAA,IAC/C;AAAA,EAAA;AAAA,EAGF,GAAG;AAAA,IACD,eAAe,CAAC,GAAG,OAAO;AAIxB,SAAG,KAAK,+BAA+B;AACvC,oBAAc,EAAE;AAAA,IAClB;AAAA,EAAA;AAEJ;"}
1
+ {"version":3,"file":"replica-schema.js","sources":["../../../../../../zero-cache/src/services/change-source/replica-schema.ts"],"sourcesContent":["import type {LogContext} from '@rocicorp/logger';\nimport {SqliteError} from '@rocicorp/zero-sqlite3';\nimport {must} from '../../../../shared/src/must.ts';\nimport type {Database} from '../../../../zqlite/src/db.ts';\nimport {listTables} from '../../db/lite-tables.ts';\nimport {\n runSchemaMigrations,\n type IncrementalMigrationMap,\n type Migration,\n} from '../../db/migration-lite.ts';\nimport {AutoResetSignal} from '../change-streamer/schema/tables.ts';\nimport {CREATE_CHANGELOG_SCHEMA} from '../replicator/schema/change-log.ts';\nimport {\n ColumnMetadataStore,\n CREATE_COLUMN_METADATA_TABLE,\n} from '../replicator/schema/column-metadata.ts';\nimport {\n CREATE_RUNTIME_EVENTS_TABLE,\n recordEvent,\n} from '../replicator/schema/replication-state.ts';\n\nexport async function initReplica(\n log: LogContext,\n debugName: string,\n dbPath: string,\n initialSync: (lc: LogContext, tx: Database) => Promise<void>,\n): Promise<void> {\n const setupMigration: Migration = {\n migrateSchema: (log, tx) => initialSync(log, tx),\n minSafeVersion: 1,\n };\n\n try {\n await runSchemaMigrations(\n log,\n debugName,\n dbPath,\n setupMigration,\n schemaVersionMigrationMap,\n );\n } catch (e) {\n if (e instanceof SqliteError && e.code === 'SQLITE_CORRUPT') {\n throw new AutoResetSignal(e.message);\n }\n throw e;\n }\n}\n\nexport async function upgradeReplica(\n log: LogContext,\n debugName: string,\n dbPath: string,\n) {\n await runSchemaMigrations(\n log,\n debugName,\n dbPath,\n // setupMigration should never be invoked\n {\n migrateSchema: () => {\n throw new Error(\n 'This should only be called for already synced replicas',\n );\n },\n },\n schemaVersionMigrationMap,\n );\n}\n\nexport const schemaVersionMigrationMap: IncrementalMigrationMap = {\n // There's no incremental migration from v1. Just reset the replica.\n 4: {\n migrateSchema: () => {\n throw new AutoResetSignal('upgrading replica to new schema');\n },\n minSafeVersion: 3,\n },\n\n 5: {\n migrateSchema: (_, db) => {\n db.exec(CREATE_RUNTIME_EVENTS_TABLE);\n },\n migrateData: (_, db) => {\n recordEvent(db, 'upgrade');\n },\n },\n\n // Revised in the migration to v8 because the v6 code was incomplete.\n 6: {},\n\n 7: {\n migrateSchema: (_, db) => {\n // Note: The original \"changeLog\" table is kept so that the replica file\n // is compatible with older zero-caches. However, it is truncated for\n // space savings (since historic changes were never read).\n db.exec(`DELETE FROM \"_zero.changeLog\"`);\n db.exec(CREATE_CHANGELOG_SCHEMA); // Creates _zero.changeLog2\n },\n },\n\n 8: {\n migrateSchema: (_, db) => {\n let store = ColumnMetadataStore.getInstance(db);\n if (!store) {\n db.exec(CREATE_COLUMN_METADATA_TABLE);\n }\n },\n migrateData: (_, db) => {\n // Re-populate the ColumnMetadataStore; the original migration\n // at v6 was incomplete, as covered replicas migrated from earlier\n // versions but did not initialize the table for new replicas.\n db.exec(/*sql*/ `DELETE FROM \"_zero.column_metadata\"`);\n\n const store = ColumnMetadataStore.getInstance(db);\n const tables = listTables(db);\n must(store).populateFromExistingTables(tables);\n },\n },\n};\n"],"names":["log"],"mappings":";;;;;;;;AAqBA,eAAsB,YACpB,KACA,WACA,QACA,aACe;AACf,QAAM,iBAA4B;AAAA,IAChC,eAAe,CAACA,MAAK,OAAO,YAAYA,MAAK,EAAE;AAAA,IAC/C,gBAAgB;AAAA,EAAA;AAGlB,MAAI;AACF,UAAM;AAAA,MACJ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IAAA;AAAA,EAEJ,SAAS,GAAG;AACV,QAAI,aAAa,eAAe,EAAE,SAAS,kBAAkB;AAC3D,YAAM,IAAI,gBAAgB,EAAE,OAAO;AAAA,IACrC;AACA,UAAM;AAAA,EACR;AACF;AAEA,eAAsB,eACpB,KACA,WACA,QACA;AACA,QAAM;AAAA,IACJ;AAAA,IACA;AAAA,IACA;AAAA;AAAA,IAEA;AAAA,MACE,eAAe,MAAM;AACnB,cAAM,IAAI;AAAA,UACR;AAAA,QAAA;AAAA,MAEJ;AAAA,IAAA;AAAA,IAEF;AAAA,EAAA;AAEJ;AAEO,MAAM,4BAAqD;AAAA;AAAA,EAEhE,GAAG;AAAA,IACD,eAAe,MAAM;AACnB,YAAM,IAAI,gBAAgB,iCAAiC;AAAA,IAC7D;AAAA,IACA,gBAAgB;AAAA,EAAA;AAAA,EAGlB,GAAG;AAAA,IACD,eAAe,CAAC,GAAG,OAAO;AACxB,SAAG,KAAK,2BAA2B;AAAA,IACrC;AAAA,IACA,aAAa,CAAC,GAAG,OAAO;AACtB,kBAAY,IAAI,SAAS;AAAA,IAC3B;AAAA,EAAA;AAAA;AAAA,EAIF,GAAG,CAAA;AAAA,EAEH,GAAG;AAAA,IACD,eAAe,CAAC,GAAG,OAAO;AAIxB,SAAG,KAAK,+BAA+B;AACvC,SAAG,KAAK,uBAAuB;AAAA,IACjC;AAAA,EAAA;AAAA,EAGF,GAAG;AAAA,IACD,eAAe,CAAC,GAAG,OAAO;AACxB,UAAI,QAAQ,oBAAoB,YAAY,EAAE;AAC9C,UAAI,CAAC,OAAO;AACV,WAAG,KAAK,4BAA4B;AAAA,MACtC;AAAA,IACF;AAAA,IACA,aAAa,CAAC,GAAG,OAAO;AAItB,SAAG;AAAA;AAAA,QAAa;AAAA,MAAA;AAEhB,YAAM,QAAQ,oBAAoB,YAAY,EAAE;AAChD,YAAM,SAAS,WAAW,EAAE;AAC5B,WAAK,KAAK,EAAE,2BAA2B,MAAM;AAAA,IAC/C;AAAA,EAAA;AAEJ;"}
@@ -131,7 +131,7 @@ class ChangeStreamerImpl {
131
131
  }
132
132
  this.#storer.store([watermark, change]);
133
133
  this.#forwarder.forward([watermark, change]);
134
- if (type === "commit") {
134
+ if (type === "commit" || type === "rollback") {
135
135
  watermark = null;
136
136
  }
137
137
  const readyForMore = this.#storer.readyForMore();