@rocicorp/zero 1.11.0 → 1.11.2

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 (737) hide show
  1. package/out/_virtual/{_@oxc-project_runtime@0.130.0/helpers → _@oxc-project_runtime@0.154.0/helpers/esm}/usingCtx.js +2 -2
  2. package/out/analyze-query/src/analyze-cli.js +2 -1
  3. package/out/analyze-query/src/analyze-cli.js.map +1 -1
  4. package/out/analyze-query/src/bin-analyze.js +5 -3
  5. package/out/analyze-query/src/bin-analyze.js.map +1 -1
  6. package/out/analyze-query/src/bin-transform.js +3 -2
  7. package/out/analyze-query/src/bin-transform.js.map +1 -1
  8. package/out/ast-to-zql/src/ast-to-zql.js.map +1 -1
  9. package/out/ast-to-zql/src/bin.js +3 -2
  10. package/out/ast-to-zql/src/bin.js.map +1 -1
  11. package/out/ast-to-zql/src/format.js.map +1 -1
  12. package/out/datadog/src/datadog-log-sink.js +5 -4
  13. package/out/datadog/src/datadog-log-sink.js.map +1 -1
  14. package/out/otel/src/log-options.js.map +1 -1
  15. package/out/replicache/src/btree/node.js +13 -11
  16. package/out/replicache/src/btree/node.js.map +1 -1
  17. package/out/replicache/src/btree/read.js +4 -2
  18. package/out/replicache/src/btree/read.js.map +1 -1
  19. package/out/replicache/src/btree/splice.js.map +1 -1
  20. package/out/replicache/src/btree/write.js +9 -5
  21. package/out/replicache/src/btree/write.js.map +1 -1
  22. package/out/replicache/src/config.js +1 -2
  23. package/out/replicache/src/connection-loop.js.map +1 -1
  24. package/out/replicache/src/dag/chunk.js +1 -1
  25. package/out/replicache/src/dag/gc.js.map +1 -1
  26. package/out/replicache/src/dag/lazy-store.js +8 -7
  27. package/out/replicache/src/dag/lazy-store.js.map +1 -1
  28. package/out/replicache/src/dag/store-impl.js +1 -1
  29. package/out/replicache/src/dag/store-impl.js.map +1 -1
  30. package/out/replicache/src/dag/visitor.js.map +1 -1
  31. package/out/replicache/src/db/commit.js +5 -3
  32. package/out/replicache/src/db/commit.js.map +1 -1
  33. package/out/replicache/src/db/read.js +1 -1
  34. package/out/replicache/src/db/read.js.map +1 -1
  35. package/out/replicache/src/db/rebase.js.map +1 -1
  36. package/out/replicache/src/db/write.js +5 -2
  37. package/out/replicache/src/db/write.js.map +1 -1
  38. package/out/replicache/src/deleted-clients.js +3 -2
  39. package/out/replicache/src/deleted-clients.js.map +1 -1
  40. package/out/replicache/src/expo-sqlite.js +1 -2
  41. package/out/replicache/src/frozen-json.js +1 -1
  42. package/out/replicache/src/frozen-json.js.map +1 -1
  43. package/out/replicache/src/get-default-puller.js +1 -1
  44. package/out/replicache/src/hash.js +1 -1
  45. package/out/replicache/src/hash.js.map +1 -1
  46. package/out/replicache/src/impl.js +1 -2
  47. package/out/replicache/src/index-defs.js +5 -3
  48. package/out/replicache/src/index-defs.js.map +1 -1
  49. package/out/replicache/src/kv/expo-sqlite/store.js +1 -1
  50. package/out/replicache/src/kv/expo-sqlite/store.js.map +1 -1
  51. package/out/replicache/src/kv/idb-store.js +1 -1
  52. package/out/replicache/src/kv/idb-store.js.map +1 -1
  53. package/out/replicache/src/kv/mem-fallback-store.js +1 -1
  54. package/out/replicache/src/kv/mem-fallback-store.js.map +1 -1
  55. package/out/replicache/src/kv/mem-store.js.map +1 -1
  56. package/out/replicache/src/kv/op-sqlite/store.js.map +1 -1
  57. package/out/replicache/src/kv/op-sqlite/types.js.map +1 -1
  58. package/out/replicache/src/kv/read-impl.js.map +1 -1
  59. package/out/replicache/src/kv/sqlite-store.js +1 -1
  60. package/out/replicache/src/kv/sqlite-store.js.map +1 -1
  61. package/out/replicache/src/kv/write-impl-base.js +4 -1
  62. package/out/replicache/src/kv/write-impl-base.js.map +1 -1
  63. package/out/replicache/src/kv/write-impl.js.map +1 -1
  64. package/out/replicache/src/log-options.js +2 -1
  65. package/out/replicache/src/log-options.js.map +1 -1
  66. package/out/replicache/src/make-idb-name.js +1 -1
  67. package/out/replicache/src/new-client-channel.js +9 -7
  68. package/out/replicache/src/new-client-channel.js.map +1 -1
  69. package/out/replicache/src/on-persist-channel.js +1 -1
  70. package/out/replicache/src/on-persist-channel.js.map +1 -1
  71. package/out/replicache/src/op-sqlite.js +1 -2
  72. package/out/replicache/src/pending-mutations.js +2 -1
  73. package/out/replicache/src/pending-mutations.js.map +1 -1
  74. package/out/replicache/src/persist/client-gc.js +2 -2
  75. package/out/replicache/src/persist/client-gc.js.map +1 -1
  76. package/out/replicache/src/persist/client-group-gc.js +2 -2
  77. package/out/replicache/src/persist/client-group-gc.js.map +1 -1
  78. package/out/replicache/src/persist/client-groups.js +1 -1
  79. package/out/replicache/src/persist/client-groups.js.map +1 -1
  80. package/out/replicache/src/persist/clients.js +1 -1
  81. package/out/replicache/src/persist/clients.js.map +1 -1
  82. package/out/replicache/src/persist/collect-idb-databases.js +5 -4
  83. package/out/replicache/src/persist/collect-idb-databases.js.map +1 -1
  84. package/out/replicache/src/persist/gather-mem-only-visitor.js.map +1 -1
  85. package/out/replicache/src/persist/gather-not-cached-visitor.js.map +1 -1
  86. package/out/replicache/src/persist/heartbeat.js +2 -2
  87. package/out/replicache/src/persist/heartbeat.js.map +1 -1
  88. package/out/replicache/src/persist/idb-databases-store.js +1 -1
  89. package/out/replicache/src/persist/idb-databases-store.js.map +1 -1
  90. package/out/replicache/src/persist/make-client-id.js +1 -1
  91. package/out/replicache/src/persist/make-client-id.js.map +1 -1
  92. package/out/replicache/src/persist/persist.js +3 -2
  93. package/out/replicache/src/persist/persist.js.map +1 -1
  94. package/out/replicache/src/persist/refresh.js +8 -5
  95. package/out/replicache/src/persist/refresh.js.map +1 -1
  96. package/out/replicache/src/process-scheduler.js.map +1 -1
  97. package/out/replicache/src/replicache-impl.js +3 -3
  98. package/out/replicache/src/replicache-impl.js.map +1 -1
  99. package/out/replicache/src/scan-iterator.js.map +1 -1
  100. package/out/replicache/src/scan-options.js +7 -6
  101. package/out/replicache/src/scan-options.js.map +1 -1
  102. package/out/replicache/src/sqlite.js +1 -2
  103. package/out/replicache/src/subscriptions.js +1 -1
  104. package/out/replicache/src/subscriptions.js.map +1 -1
  105. package/out/replicache/src/sync/diff.js +3 -1
  106. package/out/replicache/src/sync/diff.js.map +1 -1
  107. package/out/replicache/src/sync/ids.js.map +1 -1
  108. package/out/replicache/src/sync/patch.js +2 -4
  109. package/out/replicache/src/sync/patch.js.map +1 -1
  110. package/out/replicache/src/sync/pull.js +3 -1
  111. package/out/replicache/src/sync/pull.js.map +1 -1
  112. package/out/replicache/src/sync/push.js.map +1 -1
  113. package/out/replicache/src/sync/request-id.js +1 -1
  114. package/out/replicache/src/sync/request-id.js.map +1 -1
  115. package/out/replicache/src/transactions.js +1 -1
  116. package/out/replicache/src/transactions.js.map +1 -1
  117. package/out/shared/src/arrays.js +4 -1
  118. package/out/shared/src/arrays.js.map +1 -1
  119. package/out/shared/src/asserts.js +1 -1
  120. package/out/shared/src/bigint-json.js.map +1 -1
  121. package/out/shared/src/broadcast-channel.js +1 -1
  122. package/out/shared/src/btree-set.js +11 -8
  123. package/out/shared/src/btree-set.js.map +1 -1
  124. package/out/shared/src/cache.js.map +1 -1
  125. package/out/shared/src/config.js +1 -1
  126. package/out/shared/src/custom-key-map.js.map +1 -1
  127. package/out/shared/src/custom-key-set.js.map +1 -1
  128. package/out/shared/src/deep-clone.js +1 -1
  129. package/out/shared/src/document-visible.js.map +1 -1
  130. package/out/shared/src/dotenv.js.map +1 -1
  131. package/out/shared/src/error.js +1 -1
  132. package/out/shared/src/error.js.map +1 -1
  133. package/out/shared/src/hash.js +2 -2
  134. package/out/shared/src/hash.js.map +1 -1
  135. package/out/shared/src/iterables.js.map +1 -1
  136. package/out/shared/src/json-schema.js.map +1 -1
  137. package/out/shared/src/json.js.map +1 -1
  138. package/out/shared/src/logging-test-utils.js +1 -1
  139. package/out/shared/src/logging.js +1 -1
  140. package/out/shared/src/logging.js.map +1 -1
  141. package/out/shared/src/navigator.js +1 -1
  142. package/out/shared/src/options.js +9 -12
  143. package/out/shared/src/options.js.map +1 -1
  144. package/out/shared/src/promise-race.js.map +1 -1
  145. package/out/shared/src/queue.js.map +1 -1
  146. package/out/shared/src/record-proxy.js.map +1 -1
  147. package/out/shared/src/ring-buffer.js.map +1 -1
  148. package/out/shared/src/size-of-value.js +7 -10
  149. package/out/shared/src/size-of-value.js.map +1 -1
  150. package/out/shared/src/sorted-entries.js.map +1 -1
  151. package/out/shared/src/tdigest-schema.js.map +1 -1
  152. package/out/shared/src/tdigest.js.map +1 -1
  153. package/out/shared/src/valita.js +1 -1
  154. package/out/shared/src/valita.js.map +1 -1
  155. package/out/z2s/src/compiler.js +2 -4
  156. package/out/z2s/src/compiler.js.map +1 -1
  157. package/out/z2s/src/sql.js +1 -1
  158. package/out/z2s/src/sql.js.map +1 -1
  159. package/out/zero/package.js +212 -189
  160. package/out/zero/package.js.map +1 -1
  161. package/out/zero/src/adapters/drizzle.js +1 -2
  162. package/out/zero/src/adapters/kysely.js +1 -2
  163. package/out/zero/src/adapters/pg.js +1 -2
  164. package/out/zero/src/adapters/postgresjs.js +1 -2
  165. package/out/zero/src/adapters/prisma.js +1 -2
  166. package/out/zero/src/analyze.js +1 -2
  167. package/out/zero/src/change-protocol/v0.js +1 -2
  168. package/out/zero/src/expo-sqlite.js +1 -2
  169. package/out/zero/src/op-sqlite.js +1 -2
  170. package/out/zero/src/react-native.js.map +1 -1
  171. package/out/zero/src/sqlite.js +1 -2
  172. package/out/zero/src/zero-cache-dev.js +10 -9
  173. package/out/zero/src/zero-cache-dev.js.map +1 -1
  174. package/out/zero/src/zero-out.js +2 -1
  175. package/out/zero/src/zero-out.js.map +1 -1
  176. package/out/zero-cache/src/auth/auth.js +1 -1
  177. package/out/zero-cache/src/auth/auth.js.map +1 -1
  178. package/out/zero-cache/src/auth/jwt.js +4 -1
  179. package/out/zero-cache/src/auth/jwt.js.map +1 -1
  180. package/out/zero-cache/src/auth/load-permissions.js.map +1 -1
  181. package/out/zero-cache/src/auth/read-authorizer.js +3 -2
  182. package/out/zero-cache/src/auth/read-authorizer.js.map +1 -1
  183. package/out/zero-cache/src/auth/write-authorizer.js +5 -16
  184. package/out/zero-cache/src/auth/write-authorizer.js.map +1 -1
  185. package/out/zero-cache/src/config/network.js +1 -1
  186. package/out/zero-cache/src/config/network.js.map +1 -1
  187. package/out/zero-cache/src/config/server-context.js.map +1 -1
  188. package/out/zero-cache/src/config/zero-config.js +2 -2
  189. package/out/zero-cache/src/config/zero-config.js.map +1 -1
  190. package/out/zero-cache/src/custom/fetch.js +1 -1
  191. package/out/zero-cache/src/custom/fetch.js.map +1 -1
  192. package/out/zero-cache/src/custom-queries/transform-query.js.map +1 -1
  193. package/out/zero-cache/src/db/create.js.map +1 -1
  194. package/out/zero-cache/src/db/index-predicate.js.map +1 -1
  195. package/out/zero-cache/src/db/lite-tables.js.map +1 -1
  196. package/out/zero-cache/src/db/migration-lite.js +1 -1
  197. package/out/zero-cache/src/db/migration-lite.js.map +1 -1
  198. package/out/zero-cache/src/db/migration.js +5 -3
  199. package/out/zero-cache/src/db/migration.js.map +1 -1
  200. package/out/zero-cache/src/db/pg-copy-binary.js +4 -3
  201. package/out/zero-cache/src/db/pg-copy-binary.js.map +1 -1
  202. package/out/zero-cache/src/db/pg-copy.js +0 -1
  203. package/out/zero-cache/src/db/pg-copy.js.map +1 -1
  204. package/out/zero-cache/src/db/pg-to-lite.js +1 -1
  205. package/out/zero-cache/src/db/pg-to-lite.js.map +1 -1
  206. package/out/zero-cache/src/db/run-transaction.js.map +1 -1
  207. package/out/zero-cache/src/db/specs.js +7 -5
  208. package/out/zero-cache/src/db/specs.js.map +1 -1
  209. package/out/zero-cache/src/db/sqlite-corruption.js.map +1 -1
  210. package/out/zero-cache/src/db/transaction-pool.js +5 -3
  211. package/out/zero-cache/src/db/transaction-pool.js.map +1 -1
  212. package/out/zero-cache/src/db/warmup.js.map +1 -1
  213. package/out/zero-cache/src/observability/events.js.map +1 -1
  214. package/out/zero-cache/src/observability/log-throttle.js.map +1 -1
  215. package/out/zero-cache/src/observability/metrics.js.map +1 -1
  216. package/out/zero-cache/src/scripts/deploy-permissions.js +4 -2
  217. package/out/zero-cache/src/scripts/deploy-permissions.js.map +1 -1
  218. package/out/zero-cache/src/scripts/permissions.js.map +1 -1
  219. package/out/zero-cache/src/server/anonymous-otel-start.js +2 -1
  220. package/out/zero-cache/src/server/anonymous-otel-start.js.map +1 -1
  221. package/out/zero-cache/src/server/change-streamer.js.map +1 -1
  222. package/out/zero-cache/src/server/inspector-delegate.js.map +1 -1
  223. package/out/zero-cache/src/server/logging.js +1 -1
  224. package/out/zero-cache/src/server/logging.js.map +1 -1
  225. package/out/zero-cache/src/server/main.js.map +1 -1
  226. package/out/zero-cache/src/server/otel-log-sink.js.map +1 -1
  227. package/out/zero-cache/src/server/otel-start.js.map +1 -1
  228. package/out/zero-cache/src/server/reaper.js +2 -2
  229. package/out/zero-cache/src/server/reaper.js.map +1 -1
  230. package/out/zero-cache/src/server/replicator.js.map +1 -1
  231. package/out/zero-cache/src/server/runner/run-worker.js +2 -1
  232. package/out/zero-cache/src/server/runner/run-worker.js.map +1 -1
  233. package/out/zero-cache/src/server/runner/runtime.js +2 -1
  234. package/out/zero-cache/src/server/runner/runtime.js.map +1 -1
  235. package/out/zero-cache/src/server/runner/zero-dispatcher.js.map +1 -1
  236. package/out/zero-cache/src/server/shadow-syncer.js +1 -1
  237. package/out/zero-cache/src/server/shadow-syncer.js.map +1 -1
  238. package/out/zero-cache/src/server/slot-keeper.js.map +1 -1
  239. package/out/zero-cache/src/server/syncer-assigner.js.map +1 -1
  240. package/out/zero-cache/src/server/syncer.js.map +1 -1
  241. package/out/zero-cache/src/server/worker-dispatcher.js +1 -1
  242. package/out/zero-cache/src/server/worker-dispatcher.js.map +1 -1
  243. package/out/zero-cache/src/server/worker-urls.js.map +1 -1
  244. package/out/zero-cache/src/services/analyze.js +1 -1
  245. package/out/zero-cache/src/services/analyze.js.map +1 -1
  246. package/out/zero-cache/src/services/change-source/common/backfill-manager.js +1 -1
  247. package/out/zero-cache/src/services/change-source/common/backfill-manager.js.map +1 -1
  248. package/out/zero-cache/src/services/change-source/common/change-stream-multiplexer.js.map +1 -1
  249. package/out/zero-cache/src/services/change-source/common/init-cleanup.js.map +1 -1
  250. package/out/zero-cache/src/services/change-source/common/replica-restore.js.map +1 -1
  251. package/out/zero-cache/src/services/change-source/common/replica-schema.js +3 -3
  252. package/out/zero-cache/src/services/change-source/common/replica-schema.js.map +1 -1
  253. package/out/zero-cache/src/services/change-source/custom/change-source.js +1 -1
  254. package/out/zero-cache/src/services/change-source/custom/change-source.js.map +1 -1
  255. package/out/zero-cache/src/services/change-source/pg/backfill-metadata.js.map +1 -1
  256. package/out/zero-cache/src/services/change-source/pg/backfill-stream.js +3 -3
  257. package/out/zero-cache/src/services/change-source/pg/backfill-stream.js.map +1 -1
  258. package/out/zero-cache/src/services/change-source/pg/change-source-init.js +1 -1
  259. package/out/zero-cache/src/services/change-source/pg/change-source-init.js.map +1 -1
  260. package/out/zero-cache/src/services/change-source/pg/change-source.js +4 -6
  261. package/out/zero-cache/src/services/change-source/pg/change-source.js.map +1 -1
  262. package/out/zero-cache/src/services/change-source/pg/decommission.js +2 -1
  263. package/out/zero-cache/src/services/change-source/pg/decommission.js.map +1 -1
  264. package/out/zero-cache/src/services/change-source/pg/initial-sync.js +5 -3
  265. package/out/zero-cache/src/services/change-source/pg/initial-sync.js.map +1 -1
  266. package/out/zero-cache/src/services/change-source/pg/logical-replication/binary-reader.js.map +1 -1
  267. package/out/zero-cache/src/services/change-source/pg/logical-replication/pgoutput-parser.js.map +1 -1
  268. package/out/zero-cache/src/services/change-source/pg/logical-replication/stream.js +3 -2
  269. package/out/zero-cache/src/services/change-source/pg/logical-replication/stream.js.map +1 -1
  270. package/out/zero-cache/src/services/change-source/pg/lsn.js.map +1 -1
  271. package/out/zero-cache/src/services/change-source/pg/replication-slot-cleanup-monitor.js +2 -2
  272. package/out/zero-cache/src/services/change-source/pg/replication-slot-cleanup-monitor.js.map +1 -1
  273. package/out/zero-cache/src/services/change-source/pg/replication-slot-health.js +1 -1
  274. package/out/zero-cache/src/services/change-source/pg/replication-slot-health.js.map +1 -1
  275. package/out/zero-cache/src/services/change-source/pg/replication-slots.js +3 -3
  276. package/out/zero-cache/src/services/change-source/pg/replication-slots.js.map +1 -1
  277. package/out/zero-cache/src/services/change-source/pg/schema/ddl.js +1 -1
  278. package/out/zero-cache/src/services/change-source/pg/schema/ddl.js.map +1 -1
  279. package/out/zero-cache/src/services/change-source/pg/schema/index-predicate.js +13 -12
  280. package/out/zero-cache/src/services/change-source/pg/schema/index-predicate.js.map +1 -1
  281. package/out/zero-cache/src/services/change-source/pg/schema/init.js.map +1 -1
  282. package/out/zero-cache/src/services/change-source/pg/schema/published.js +1 -1
  283. package/out/zero-cache/src/services/change-source/pg/schema/published.js.map +1 -1
  284. package/out/zero-cache/src/services/change-source/pg/schema/replica-stage-enum.js.map +1 -1
  285. package/out/zero-cache/src/services/change-source/pg/schema/shard.js +9 -6
  286. package/out/zero-cache/src/services/change-source/pg/schema/shard.js.map +1 -1
  287. package/out/zero-cache/src/services/change-source/pg/schema/validation.js +1 -1
  288. package/out/zero-cache/src/services/change-source/pg/schema/validation.js.map +1 -1
  289. package/out/zero-cache/src/services/change-source/protocol/backfill-progress.js +1 -1
  290. package/out/zero-cache/src/services/change-source/protocol/backfill-progress.js.map +1 -1
  291. package/out/zero-cache/src/services/change-source/protocol/current/control.js.map +1 -1
  292. package/out/zero-cache/src/services/change-source/protocol/current/data.js.map +1 -1
  293. package/out/zero-cache/src/services/change-source/protocol/current/downstream.js.map +1 -1
  294. package/out/zero-cache/src/services/change-source/protocol/current/status.js.map +1 -1
  295. package/out/zero-cache/src/services/change-source/protocol/current/upstream.js.map +1 -1
  296. package/out/zero-cache/src/services/change-source/protocol/current.js +1 -1
  297. package/out/zero-cache/src/services/change-source/protocol/mod.js +1 -2
  298. package/out/zero-cache/src/services/change-streamer/backfill-state-tracker.js.map +1 -1
  299. package/out/zero-cache/src/services/change-streamer/backfill-state.js +1 -1
  300. package/out/zero-cache/src/services/change-streamer/backfill-state.js.map +1 -1
  301. package/out/zero-cache/src/services/change-streamer/backup-cleanup-monitor-factory.js.map +1 -1
  302. package/out/zero-cache/src/services/change-streamer/backup-monitor.js.map +1 -1
  303. package/out/zero-cache/src/services/change-streamer/broadcast.js +1 -1
  304. package/out/zero-cache/src/services/change-streamer/broadcast.js.map +1 -1
  305. package/out/zero-cache/src/services/change-streamer/change-log-initializer.js +2 -2
  306. package/out/zero-cache/src/services/change-streamer/change-log-initializer.js.map +1 -1
  307. package/out/zero-cache/src/services/change-streamer/change-log-transaction-hash.js.map +1 -1
  308. package/out/zero-cache/src/services/change-streamer/change-streamer-http.js +4 -2
  309. package/out/zero-cache/src/services/change-streamer/change-streamer-http.js.map +1 -1
  310. package/out/zero-cache/src/services/change-streamer/change-streamer-service.js +21 -21
  311. package/out/zero-cache/src/services/change-streamer/change-streamer-service.js.map +1 -1
  312. package/out/zero-cache/src/services/change-streamer/change-streamer.js +1 -1
  313. package/out/zero-cache/src/services/change-streamer/change-streamer.js.map +1 -1
  314. package/out/zero-cache/src/services/change-streamer/drain-tracker.js.map +1 -1
  315. package/out/zero-cache/src/services/change-streamer/forwarder.js +11 -10
  316. package/out/zero-cache/src/services/change-streamer/forwarder.js.map +1 -1
  317. package/out/zero-cache/src/services/change-streamer/litestream-sync-requester.js +1 -1
  318. package/out/zero-cache/src/services/change-streamer/litestream-sync-requester.js.map +1 -1
  319. package/out/zero-cache/src/services/change-streamer/litestream3-prometheus-poller.js +3 -3
  320. package/out/zero-cache/src/services/change-streamer/litestream3-prometheus-poller.js.map +1 -1
  321. package/out/zero-cache/src/services/change-streamer/replica-poller.js +1 -1
  322. package/out/zero-cache/src/services/change-streamer/replica-poller.js.map +1 -1
  323. package/out/zero-cache/src/services/change-streamer/restore-admission.js +12 -1
  324. package/out/zero-cache/src/services/change-streamer/restore-admission.js.map +1 -1
  325. package/out/zero-cache/src/services/change-streamer/schema/init.js +1 -1
  326. package/out/zero-cache/src/services/change-streamer/schema/init.js.map +1 -1
  327. package/out/zero-cache/src/services/change-streamer/schema/tables.js +1 -1
  328. package/out/zero-cache/src/services/change-streamer/schema/tables.js.map +1 -1
  329. package/out/zero-cache/src/services/change-streamer/snapshot-message.js +1 -1
  330. package/out/zero-cache/src/services/change-streamer/snapshot-message.js.map +1 -1
  331. package/out/zero-cache/src/services/change-streamer/snapshot-reservations.js.map +1 -1
  332. package/out/zero-cache/src/services/change-streamer/sqlite-change-log-catchup.js +1 -1
  333. package/out/zero-cache/src/services/change-streamer/sqlite-change-log-catchup.js.map +1 -1
  334. package/out/zero-cache/src/services/change-streamer/sqlite-change-log-comparator.js +1 -1
  335. package/out/zero-cache/src/services/change-streamer/sqlite-change-log-comparator.js.map +1 -1
  336. package/out/zero-cache/src/services/change-streamer/sqlite-change-log-purge-scheduler.js.map +1 -1
  337. package/out/zero-cache/src/services/change-streamer/sqlite-change-log-read-router.js.map +1 -1
  338. package/out/zero-cache/src/services/change-streamer/sqlite-change-log-reader.js +1 -1
  339. package/out/zero-cache/src/services/change-streamer/sqlite-change-log-reader.js.map +1 -1
  340. package/out/zero-cache/src/services/change-streamer/sqlite-change-log-writer.js +1 -3
  341. package/out/zero-cache/src/services/change-streamer/sqlite-change-log-writer.js.map +1 -1
  342. package/out/zero-cache/src/services/change-streamer/storer.js +1 -1
  343. package/out/zero-cache/src/services/change-streamer/storer.js.map +1 -1
  344. package/out/zero-cache/src/services/change-streamer/subscribe.js +1 -1
  345. package/out/zero-cache/src/services/change-streamer/subscribe.js.map +1 -1
  346. package/out/zero-cache/src/services/change-streamer/subscriber.js +2 -2
  347. package/out/zero-cache/src/services/change-streamer/subscriber.js.map +1 -1
  348. package/out/zero-cache/src/services/change-streamer/upstream-acker.js +0 -1
  349. package/out/zero-cache/src/services/change-streamer/upstream-acker.js.map +1 -1
  350. package/out/zero-cache/src/services/heapz.js +2 -1
  351. package/out/zero-cache/src/services/heapz.js.map +1 -1
  352. package/out/zero-cache/src/services/http-service.js.map +1 -1
  353. package/out/zero-cache/src/services/life-cycle.js +1 -1
  354. package/out/zero-cache/src/services/life-cycle.js.map +1 -1
  355. package/out/zero-cache/src/services/limiter/sliding-window-limiter.js +4 -2
  356. package/out/zero-cache/src/services/limiter/sliding-window-limiter.js.map +1 -1
  357. package/out/zero-cache/src/services/litestream/commands.js +1 -1
  358. package/out/zero-cache/src/services/litestream/commands.js.map +1 -1
  359. package/out/zero-cache/src/services/litestream/litestream-checkpointer.js +2 -2
  360. package/out/zero-cache/src/services/litestream/litestream-checkpointer.js.map +1 -1
  361. package/out/zero-cache/src/services/litestream/litestream-controller.js.map +1 -1
  362. package/out/zero-cache/src/services/litestream/metrics.js.map +1 -1
  363. package/out/zero-cache/src/services/litestream/restore-progress.js.map +1 -1
  364. package/out/zero-cache/src/services/mutagen/mutagen.js +1 -1
  365. package/out/zero-cache/src/services/mutagen/mutagen.js.map +1 -1
  366. package/out/zero-cache/src/services/mutagen/pusher.js +3 -2
  367. package/out/zero-cache/src/services/mutagen/pusher.js.map +1 -1
  368. package/out/zero-cache/src/services/plannerz.js +4 -3
  369. package/out/zero-cache/src/services/plannerz.js.map +1 -1
  370. package/out/zero-cache/src/services/profz.js +5 -3
  371. package/out/zero-cache/src/services/profz.js.map +1 -1
  372. package/out/zero-cache/src/services/replicator/change-log-cookies.js.map +1 -1
  373. package/out/zero-cache/src/services/replicator/change-log-db.js +3 -2
  374. package/out/zero-cache/src/services/replicator/change-log-db.js.map +1 -1
  375. package/out/zero-cache/src/services/replicator/change-log-stream-writer.js +1 -1
  376. package/out/zero-cache/src/services/replicator/change-log-stream-writer.js.map +1 -1
  377. package/out/zero-cache/src/services/replicator/change-processor.js.map +1 -1
  378. package/out/zero-cache/src/services/replicator/drain-handler.js.map +1 -1
  379. package/out/zero-cache/src/services/replicator/incremental-sync.js +1 -1
  380. package/out/zero-cache/src/services/replicator/incremental-sync.js.map +1 -1
  381. package/out/zero-cache/src/services/replicator/notifier.js.map +1 -1
  382. package/out/zero-cache/src/services/replicator/replication-status.js +4 -3
  383. package/out/zero-cache/src/services/replicator/replication-status.js.map +1 -1
  384. package/out/zero-cache/src/services/replicator/replicator.js.map +1 -1
  385. package/out/zero-cache/src/services/replicator/reporter/recorder.js +1 -1
  386. package/out/zero-cache/src/services/replicator/reporter/recorder.js.map +1 -1
  387. package/out/zero-cache/src/services/replicator/reporter/report-schema.js +1 -1
  388. package/out/zero-cache/src/services/replicator/reporter/report-schema.js.map +1 -1
  389. package/out/zero-cache/src/services/replicator/schema/backfilling.js +1 -1
  390. package/out/zero-cache/src/services/replicator/schema/backfilling.js.map +1 -1
  391. package/out/zero-cache/src/services/replicator/schema/change-log.js.map +1 -1
  392. package/out/zero-cache/src/services/replicator/schema/column-metadata.js +1 -1
  393. package/out/zero-cache/src/services/replicator/schema/column-metadata.js.map +1 -1
  394. package/out/zero-cache/src/services/replicator/schema/replication-state.js +10 -7
  395. package/out/zero-cache/src/services/replicator/schema/replication-state.js.map +1 -1
  396. package/out/zero-cache/src/services/replicator/schema/table-metadata.js.map +1 -1
  397. package/out/zero-cache/src/services/replicator/sqlite-change-log-observability.js +1 -1
  398. package/out/zero-cache/src/services/replicator/sqlite-change-log-observability.js.map +1 -1
  399. package/out/zero-cache/src/services/replicator/sqlite-change-log-purger.js +1 -1
  400. package/out/zero-cache/src/services/replicator/sqlite-change-log-purger.js.map +1 -1
  401. package/out/zero-cache/src/services/replicator/write-worker-client.js +1 -1
  402. package/out/zero-cache/src/services/replicator/write-worker-client.js.map +1 -1
  403. package/out/zero-cache/src/services/replicator/write-worker.js.map +1 -1
  404. package/out/zero-cache/src/services/run-ast.js.map +1 -1
  405. package/out/zero-cache/src/services/runner.js.map +1 -1
  406. package/out/zero-cache/src/services/running-state.js.map +1 -1
  407. package/out/zero-cache/src/services/shadow-sync/shadow-sync-service.js.map +1 -1
  408. package/out/zero-cache/src/services/statz.js +2 -1
  409. package/out/zero-cache/src/services/statz.js.map +1 -1
  410. package/out/zero-cache/src/services/view-syncer/active-users-gauge.js +2 -2
  411. package/out/zero-cache/src/services/view-syncer/active-users-gauge.js.map +1 -1
  412. package/out/zero-cache/src/services/view-syncer/advancement-metrics.js.map +1 -1
  413. package/out/zero-cache/src/services/view-syncer/batch-pacer.js.map +1 -1
  414. package/out/zero-cache/src/services/view-syncer/client-handler.js +4 -2
  415. package/out/zero-cache/src/services/view-syncer/client-handler.js.map +1 -1
  416. package/out/zero-cache/src/services/view-syncer/client-schema.js.map +1 -1
  417. package/out/zero-cache/src/services/view-syncer/connection-context-manager.js.map +1 -1
  418. package/out/zero-cache/src/services/view-syncer/cvr-purger.js +2 -2
  419. package/out/zero-cache/src/services/view-syncer/cvr-purger.js.map +1 -1
  420. package/out/zero-cache/src/services/view-syncer/cvr-store.js +9 -5
  421. package/out/zero-cache/src/services/view-syncer/cvr-store.js.map +1 -1
  422. package/out/zero-cache/src/services/view-syncer/cvr.js +3 -2
  423. package/out/zero-cache/src/services/view-syncer/cvr.js.map +1 -1
  424. package/out/zero-cache/src/services/view-syncer/deferred-writes-budget.js +1 -1
  425. package/out/zero-cache/src/services/view-syncer/deferred-writes-budget.js.map +1 -1
  426. package/out/zero-cache/src/services/view-syncer/drain-coordinator.js.map +1 -1
  427. package/out/zero-cache/src/services/view-syncer/e2e-serving-lag.js.map +1 -1
  428. package/out/zero-cache/src/services/view-syncer/hydration-budget.js.map +1 -1
  429. package/out/zero-cache/src/services/view-syncer/hydration-circuit-breaker.js +2 -2
  430. package/out/zero-cache/src/services/view-syncer/hydration-circuit-breaker.js.map +1 -1
  431. package/out/zero-cache/src/services/view-syncer/inspect-handler.js +5 -3
  432. package/out/zero-cache/src/services/view-syncer/inspect-handler.js.map +1 -1
  433. package/out/zero-cache/src/services/view-syncer/pipeline-driver.js +6 -4
  434. package/out/zero-cache/src/services/view-syncer/pipeline-driver.js.map +1 -1
  435. package/out/zero-cache/src/services/view-syncer/plan-warnings.js.map +1 -1
  436. package/out/zero-cache/src/services/view-syncer/push-cost.js.map +1 -1
  437. package/out/zero-cache/src/services/view-syncer/push-cutoff.js.map +1 -1
  438. package/out/zero-cache/src/services/view-syncer/query-covering.js.map +1 -1
  439. package/out/zero-cache/src/services/view-syncer/query-shape.js.map +1 -1
  440. package/out/zero-cache/src/services/view-syncer/query-stats.js +1 -1
  441. package/out/zero-cache/src/services/view-syncer/query-stats.js.map +1 -1
  442. package/out/zero-cache/src/services/view-syncer/row-record-cache.js.map +1 -1
  443. package/out/zero-cache/src/services/view-syncer/schema/cvr.js +1 -1
  444. package/out/zero-cache/src/services/view-syncer/schema/types.js +1 -1
  445. package/out/zero-cache/src/services/view-syncer/schema/types.js.map +1 -1
  446. package/out/zero-cache/src/services/view-syncer/snapshot-row-cache.js +7 -1
  447. package/out/zero-cache/src/services/view-syncer/snapshot-row-cache.js.map +1 -1
  448. package/out/zero-cache/src/services/view-syncer/snapshotter.js +3 -2
  449. package/out/zero-cache/src/services/view-syncer/snapshotter.js.map +1 -1
  450. package/out/zero-cache/src/services/view-syncer/ttl-clock.js.map +1 -1
  451. package/out/zero-cache/src/services/view-syncer/view-syncer.js +4 -6
  452. package/out/zero-cache/src/services/view-syncer/view-syncer.js.map +1 -1
  453. package/out/zero-cache/src/types/error-with-level.js.map +1 -1
  454. package/out/zero-cache/src/types/lexi-version.js.map +1 -1
  455. package/out/zero-cache/src/types/lite.js +1 -1
  456. package/out/zero-cache/src/types/lite.js.map +1 -1
  457. package/out/zero-cache/src/types/pg-data-type.js +1 -1
  458. package/out/zero-cache/src/types/pg-data-type.js.map +1 -1
  459. package/out/zero-cache/src/types/pg.js +6 -4
  460. package/out/zero-cache/src/types/pg.js.map +1 -1
  461. package/out/zero-cache/src/types/poke-chunk.js +2 -2
  462. package/out/zero-cache/src/types/poke-chunk.js.map +1 -1
  463. package/out/zero-cache/src/types/processes.js +1 -1
  464. package/out/zero-cache/src/types/processes.js.map +1 -1
  465. package/out/zero-cache/src/types/profiler.js.map +1 -1
  466. package/out/zero-cache/src/types/row-key.js.map +1 -1
  467. package/out/zero-cache/src/types/sql.js.map +1 -1
  468. package/out/zero-cache/src/types/streams.js +10 -9
  469. package/out/zero-cache/src/types/streams.js.map +1 -1
  470. package/out/zero-cache/src/types/strings.js.map +1 -1
  471. package/out/zero-cache/src/types/subscription.js.map +1 -1
  472. package/out/zero-cache/src/types/timeout.js +1 -1
  473. package/out/zero-cache/src/types/websocket-handoff.js +1 -1
  474. package/out/zero-cache/src/types/ws.js +1 -1
  475. package/out/zero-cache/src/workers/connection.js +2 -3
  476. package/out/zero-cache/src/workers/connection.js.map +1 -1
  477. package/out/zero-cache/src/workers/mutator.js.map +1 -1
  478. package/out/zero-cache/src/workers/replicator.js +5 -4
  479. package/out/zero-cache/src/workers/replicator.js.map +1 -1
  480. package/out/zero-cache/src/workers/syncer-ws-message-handler.js.map +1 -1
  481. package/out/zero-cache/src/workers/syncer.js +2 -2
  482. package/out/zero-cache/src/workers/syncer.js.map +1 -1
  483. package/out/zero-client/src/client/active-clients-manager.js +1 -1
  484. package/out/zero-client/src/client/active-clients-manager.js.map +1 -1
  485. package/out/zero-client/src/client/bindings.js +11 -11
  486. package/out/zero-client/src/client/connection-manager.js.map +1 -1
  487. package/out/zero-client/src/client/connection.js +1 -1
  488. package/out/zero-client/src/client/connection.js.map +1 -1
  489. package/out/zero-client/src/client/context.js.map +1 -1
  490. package/out/zero-client/src/client/crud-impl.js +1 -1
  491. package/out/zero-client/src/client/crud-impl.js.map +1 -1
  492. package/out/zero-client/src/client/crud.js +1 -1
  493. package/out/zero-client/src/client/crud.js.map +1 -1
  494. package/out/zero-client/src/client/custom.js +1 -1
  495. package/out/zero-client/src/client/custom.js.map +1 -1
  496. package/out/zero-client/src/client/delete-clients-manager.js.map +1 -1
  497. package/out/zero-client/src/client/enable-analytics.js +1 -1
  498. package/out/zero-client/src/client/enable-analytics.js.map +1 -1
  499. package/out/zero-client/src/client/error.js.map +1 -1
  500. package/out/zero-client/src/client/inspector/client-group.js.map +1 -1
  501. package/out/zero-client/src/client/inspector/client.js.map +1 -1
  502. package/out/zero-client/src/client/inspector/html-dialog-prompt.js +1 -1
  503. package/out/zero-client/src/client/inspector/html-dialog-prompt.js.map +1 -1
  504. package/out/zero-client/src/client/inspector/inspector.js.map +1 -1
  505. package/out/zero-client/src/client/inspector/lazy-inspector.js.map +1 -1
  506. package/out/zero-client/src/client/inspector/query.js.map +1 -1
  507. package/out/zero-client/src/client/ivm-branch.js +1 -3
  508. package/out/zero-client/src/client/ivm-branch.js.map +1 -1
  509. package/out/zero-client/src/client/keys.js +2 -1
  510. package/out/zero-client/src/client/keys.js.map +1 -1
  511. package/out/zero-client/src/client/log-options.js.map +1 -1
  512. package/out/zero-client/src/client/make-replicache-mutators.js +5 -3
  513. package/out/zero-client/src/client/make-replicache-mutators.js.map +1 -1
  514. package/out/zero-client/src/client/metrics.js +3 -5
  515. package/out/zero-client/src/client/metrics.js.map +1 -1
  516. package/out/zero-client/src/client/mutation-tracker.js.map +1 -1
  517. package/out/zero-client/src/client/mutator-proxy.js.map +1 -1
  518. package/out/zero-client/src/client/options.js.map +1 -1
  519. package/out/zero-client/src/client/query-manager.js +2 -2
  520. package/out/zero-client/src/client/query-manager.js.map +1 -1
  521. package/out/zero-client/src/client/reload-error-handler.js +4 -3
  522. package/out/zero-client/src/client/reload-error-handler.js.map +1 -1
  523. package/out/zero-client/src/client/version.js +1 -1
  524. package/out/zero-client/src/client/zero-poke-handler.js +1 -1
  525. package/out/zero-client/src/client/zero-poke-handler.js.map +1 -1
  526. package/out/zero-client/src/client/zero-rep.js.map +1 -1
  527. package/out/zero-client/src/client/zero.js +19 -11
  528. package/out/zero-client/src/client/zero.js.map +1 -1
  529. package/out/zero-client/src/mod.js +23 -23
  530. package/out/zero-client/src/util/nanoid.js.map +1 -1
  531. package/out/zero-permissions/src/permissions.js +3 -2
  532. package/out/zero-permissions/src/permissions.js.map +1 -1
  533. package/out/zero-pg/src/mod.js +9 -9
  534. package/out/zero-protocol/src/analyze-query-result.js +1 -1
  535. package/out/zero-protocol/src/analyze-query-result.js.map +1 -1
  536. package/out/zero-protocol/src/application-error.js.map +1 -1
  537. package/out/zero-protocol/src/ast.js +19 -9
  538. package/out/zero-protocol/src/ast.js.map +1 -1
  539. package/out/zero-protocol/src/change-desired-queries.js.map +1 -1
  540. package/out/zero-protocol/src/client-schema.js +1 -1
  541. package/out/zero-protocol/src/client-schema.js.map +1 -1
  542. package/out/zero-protocol/src/close-connection.js +1 -1
  543. package/out/zero-protocol/src/close-connection.js.map +1 -1
  544. package/out/zero-protocol/src/connect.js +1 -1
  545. package/out/zero-protocol/src/connect.js.map +1 -1
  546. package/out/zero-protocol/src/custom-queries.js +1 -1
  547. package/out/zero-protocol/src/custom-queries.js.map +1 -1
  548. package/out/zero-protocol/src/data.js +4 -2
  549. package/out/zero-protocol/src/data.js.map +1 -1
  550. package/out/zero-protocol/src/delete-clients.js.map +1 -1
  551. package/out/zero-protocol/src/down.js.map +1 -1
  552. package/out/zero-protocol/src/error.js.map +1 -1
  553. package/out/zero-protocol/src/inspect-down.d.ts +81 -81
  554. package/out/zero-protocol/src/inspect-down.js +1 -1
  555. package/out/zero-protocol/src/inspect-down.js.map +1 -1
  556. package/out/zero-protocol/src/inspect-up.js +1 -1
  557. package/out/zero-protocol/src/inspect-up.js.map +1 -1
  558. package/out/zero-protocol/src/mutate-server.js +1 -1
  559. package/out/zero-protocol/src/mutate-server.js.map +1 -1
  560. package/out/zero-protocol/src/mutation-id.js.map +1 -1
  561. package/out/zero-protocol/src/mutation.js +1 -1
  562. package/out/zero-protocol/src/mutation.js.map +1 -1
  563. package/out/zero-protocol/src/mutations-patch.js +1 -1
  564. package/out/zero-protocol/src/mutations-patch.js.map +1 -1
  565. package/out/zero-protocol/src/ping.js +1 -1
  566. package/out/zero-protocol/src/ping.js.map +1 -1
  567. package/out/zero-protocol/src/poke.js +1 -1
  568. package/out/zero-protocol/src/poke.js.map +1 -1
  569. package/out/zero-protocol/src/pong.js +1 -1
  570. package/out/zero-protocol/src/pong.js.map +1 -1
  571. package/out/zero-protocol/src/primary-key.js.map +1 -1
  572. package/out/zero-protocol/src/protocol-version.js +1 -0
  573. package/out/zero-protocol/src/protocol-version.js.map +1 -1
  574. package/out/zero-protocol/src/pull.js +1 -1
  575. package/out/zero-protocol/src/pull.js.map +1 -1
  576. package/out/zero-protocol/src/push.js +1 -1
  577. package/out/zero-protocol/src/push.js.map +1 -1
  578. package/out/zero-protocol/src/queries-patch.js +1 -1
  579. package/out/zero-protocol/src/queries-patch.js.map +1 -1
  580. package/out/zero-protocol/src/query-hash-visitor.js.map +1 -1
  581. package/out/zero-protocol/src/query-hash.js +2 -2
  582. package/out/zero-protocol/src/query-server.js +1 -1
  583. package/out/zero-protocol/src/query-server.js.map +1 -1
  584. package/out/zero-protocol/src/row-patch.js.map +1 -1
  585. package/out/zero-protocol/src/up.js.map +1 -1
  586. package/out/zero-protocol/src/update-auth.js.map +1 -1
  587. package/out/zero-protocol/src/version.js.map +1 -1
  588. package/out/zero-react/src/bindings.js +11 -11
  589. package/out/zero-react/src/mod.js +5 -5
  590. package/out/zero-react/src/use-query.js +1 -1
  591. package/out/zero-react/src/use-query.js.map +1 -1
  592. package/out/zero-react/src/zero-provider.d.ts +1 -1
  593. package/out/zero-react/src/zero-provider.d.ts.map +1 -1
  594. package/out/zero-react/src/zero-provider.js +2 -1
  595. package/out/zero-react/src/zero-provider.js.map +1 -1
  596. package/out/zero-react/src/zero.js +23 -23
  597. package/out/zero-schema/src/builder/schema-builder.js +3 -2
  598. package/out/zero-schema/src/builder/schema-builder.js.map +1 -1
  599. package/out/zero-schema/src/builder/table-builder.js +1 -1
  600. package/out/zero-schema/src/builder/table-builder.js.map +1 -1
  601. package/out/zero-schema/src/compiled-permissions.js.map +1 -1
  602. package/out/zero-schema/src/name-mapper.js +7 -5
  603. package/out/zero-schema/src/name-mapper.js.map +1 -1
  604. package/out/zero-schema/src/schema-config.js +1 -1
  605. package/out/zero-schema/src/schema-config.js.map +1 -1
  606. package/out/zero-server/src/adapters/drizzle.js.map +1 -1
  607. package/out/zero-server/src/adapters/kysely.js.map +1 -1
  608. package/out/zero-server/src/adapters/pg.js.map +1 -1
  609. package/out/zero-server/src/adapters/postgresjs.js.map +1 -1
  610. package/out/zero-server/src/adapters/prisma.js.map +1 -1
  611. package/out/zero-server/src/closable-db-transaction.js.map +1 -1
  612. package/out/zero-server/src/custom.js +1 -1
  613. package/out/zero-server/src/custom.js.map +1 -1
  614. package/out/zero-server/src/mod.js +8 -8
  615. package/out/zero-server/src/process-mutations.js.map +1 -1
  616. package/out/zero-server/src/push-processor.js.map +1 -1
  617. package/out/zero-server/src/queries/process-queries.js +2 -1
  618. package/out/zero-server/src/queries/process-queries.js.map +1 -1
  619. package/out/zero-server/src/schema.js +7 -7
  620. package/out/zero-server/src/schema.js.map +1 -1
  621. package/out/zero-server/src/zql-database.js.map +1 -1
  622. package/out/zero-solid/src/bindings.js +11 -11
  623. package/out/zero-solid/src/mod.js +5 -5
  624. package/out/zero-solid/src/solid-view.js +1 -1
  625. package/out/zero-solid/src/solid-view.js.map +1 -1
  626. package/out/zero-solid/src/use-connection-state.js +2 -1
  627. package/out/zero-solid/src/use-connection-state.js.map +1 -1
  628. package/out/zero-solid/src/use-query.js.map +1 -1
  629. package/out/zero-solid/src/use-zero-online.js +2 -1
  630. package/out/zero-solid/src/use-zero-online.js.map +1 -1
  631. package/out/zero-solid/src/use-zero.js +3 -2
  632. package/out/zero-solid/src/use-zero.js.map +1 -1
  633. package/out/zero-solid/src/zero.js +23 -23
  634. package/out/zero-types/src/name-mapper.js.map +1 -1
  635. package/out/zql/src/builder/builder.js +15 -13
  636. package/out/zql/src/builder/builder.js.map +1 -1
  637. package/out/zql/src/builder/correlated-predicate-pushdown.js.map +1 -1
  638. package/out/zql/src/builder/debug-delegate.js.map +1 -1
  639. package/out/zql/src/builder/like.js +0 -1
  640. package/out/zql/src/builder/like.js.map +1 -1
  641. package/out/zql/src/ivm/array-view.js.map +1 -1
  642. package/out/zql/src/ivm/cap.js.map +1 -1
  643. package/out/zql/src/ivm/constraint.js +1 -1
  644. package/out/zql/src/ivm/constraint.js.map +1 -1
  645. package/out/zql/src/ivm/data.js.map +1 -1
  646. package/out/zql/src/ivm/deferred-input.js.map +1 -1
  647. package/out/zql/src/ivm/exists.js +20 -18
  648. package/out/zql/src/ivm/exists.js.map +1 -1
  649. package/out/zql/src/ivm/fan-in.js.map +1 -1
  650. package/out/zql/src/ivm/fan-out.js.map +1 -1
  651. package/out/zql/src/ivm/filter-operators.js +1 -1
  652. package/out/zql/src/ivm/filter-operators.js.map +1 -1
  653. package/out/zql/src/ivm/filter-push.js.map +1 -1
  654. package/out/zql/src/ivm/filter.js.map +1 -1
  655. package/out/zql/src/ivm/flipped-join.js +1 -3
  656. package/out/zql/src/ivm/flipped-join.js.map +1 -1
  657. package/out/zql/src/ivm/join-index-tap.js.map +1 -1
  658. package/out/zql/src/ivm/join-index.js.map +1 -1
  659. package/out/zql/src/ivm/join-utils.js +11 -13
  660. package/out/zql/src/ivm/join-utils.js.map +1 -1
  661. package/out/zql/src/ivm/join.js.map +1 -1
  662. package/out/zql/src/ivm/maybe-split-and-push-edit-change.js.map +1 -1
  663. package/out/zql/src/ivm/memory-source.js +26 -22
  664. package/out/zql/src/ivm/memory-source.js.map +1 -1
  665. package/out/zql/src/ivm/memory-storage.js.map +1 -1
  666. package/out/zql/src/ivm/operator.js +2 -2
  667. package/out/zql/src/ivm/push-accumulated.js +0 -1
  668. package/out/zql/src/ivm/push-accumulated.js.map +1 -1
  669. package/out/zql/src/ivm/skip-yields.js.map +1 -1
  670. package/out/zql/src/ivm/skip.js.map +1 -1
  671. package/out/zql/src/ivm/take-gate.js.map +1 -1
  672. package/out/zql/src/ivm/take.js +1 -1
  673. package/out/zql/src/ivm/take.js.map +1 -1
  674. package/out/zql/src/ivm/union-fan-in.js +1 -1
  675. package/out/zql/src/ivm/union-fan-in.js.map +1 -1
  676. package/out/zql/src/ivm/union-fan-out.js.map +1 -1
  677. package/out/zql/src/ivm/view-apply-change.js +1 -1
  678. package/out/zql/src/ivm/view-apply-change.js.map +1 -1
  679. package/out/zql/src/mutate/crud.js +3 -2
  680. package/out/zql/src/mutate/crud.js.map +1 -1
  681. package/out/zql/src/planner/planner-builder.js +1 -1
  682. package/out/zql/src/planner/planner-builder.js.map +1 -1
  683. package/out/zql/src/planner/planner-connection.js.map +1 -1
  684. package/out/zql/src/planner/planner-debug.js.map +1 -1
  685. package/out/zql/src/planner/planner-fan-in.js.map +1 -1
  686. package/out/zql/src/planner/planner-fan-out.js.map +1 -1
  687. package/out/zql/src/planner/planner-filter.js.map +1 -1
  688. package/out/zql/src/planner/planner-graph.js +1 -5
  689. package/out/zql/src/planner/planner-graph.js.map +1 -1
  690. package/out/zql/src/planner/planner-join.js +1 -1
  691. package/out/zql/src/planner/planner-join.js.map +1 -1
  692. package/out/zql/src/planner/planner-source.js.map +1 -1
  693. package/out/zql/src/planner/planner-terminus.js.map +1 -1
  694. package/out/zql/src/query/create-builder.js +2 -1
  695. package/out/zql/src/query/create-builder.js.map +1 -1
  696. package/out/zql/src/query/expression.js +1 -1
  697. package/out/zql/src/query/expression.js.map +1 -1
  698. package/out/zql/src/query/measure-push-operator.js.map +1 -1
  699. package/out/zql/src/query/named.js +2 -1
  700. package/out/zql/src/query/named.js.map +1 -1
  701. package/out/zql/src/query/query-delegate-base.js +1 -1
  702. package/out/zql/src/query/query-delegate-base.js.map +1 -1
  703. package/out/zql/src/query/query-impl.js +3 -2
  704. package/out/zql/src/query/query-impl.js.map +1 -1
  705. package/out/zql/src/query/query-registry.js +1 -1
  706. package/out/zql/src/query/query-registry.js.map +1 -1
  707. package/out/zql/src/query/query-transitions.js +1 -1
  708. package/out/zql/src/query/query-transitions.js.map +1 -1
  709. package/out/zql/src/query/runnable-query-impl.js +3 -2
  710. package/out/zql/src/query/runnable-query-impl.js.map +1 -1
  711. package/out/zql/src/query/static-query.js.map +1 -1
  712. package/out/zql/src/query/ttl.js +8 -8
  713. package/out/zql/src/query/ttl.js.map +1 -1
  714. package/out/zql/src/query/validate-input.js.map +1 -1
  715. package/out/zqlite/src/database-storage.js +2 -2
  716. package/out/zqlite/src/database-storage.js.map +1 -1
  717. package/out/zqlite/src/db.js +2 -2
  718. package/out/zqlite/src/db.js.map +1 -1
  719. package/out/zqlite/src/explain-queries.js.map +1 -1
  720. package/out/zqlite/src/index-usage.js.map +1 -1
  721. package/out/zqlite/src/internal/sql-inline.js.map +1 -1
  722. package/out/zqlite/src/internal/sql.js.map +1 -1
  723. package/out/zqlite/src/internal/statement-cache.js +1 -1
  724. package/out/zqlite/src/internal/statement-cache.js.map +1 -1
  725. package/out/zqlite/src/mod.js +5 -5
  726. package/out/zqlite/src/pending-delta.js.map +1 -1
  727. package/out/zqlite/src/query-builder.js +1 -1
  728. package/out/zqlite/src/query-builder.js.map +1 -1
  729. package/out/zqlite/src/query-delegate.js.map +1 -1
  730. package/out/zqlite/src/resolve-scalar-subqueries.js +2 -5
  731. package/out/zqlite/src/resolve-scalar-subqueries.js.map +1 -1
  732. package/out/zqlite/src/sqlite-cost-model.js +3 -2
  733. package/out/zqlite/src/sqlite-cost-model.js.map +1 -1
  734. package/out/zqlite/src/sqlite-stat-fanout.js.map +1 -1
  735. package/out/zqlite/src/table-source.js +1 -1
  736. package/out/zqlite/src/table-source.js.map +1 -1
  737. package/package.json +16 -14
@@ -35,6 +35,6 @@ var transformFailedMessageSchema = valita_exports.tuple([valita_exports.literal(
35
35
  var transformOkMessageSchema = valita_exports.tuple([valita_exports.literal("transformed"), transformResponseBodySchema]);
36
36
  var transformResponseMessageSchema = valita_exports.union(transformOkMessageSchema, transformFailedMessageSchema);
37
37
  //#endregion
38
- export { erroredQuerySchema, transformErrorMessageSchema, transformRequestMessageSchema, transformResponseMessageSchema, transformedQuerySchema };
38
+ export { appErroredQuerySchema, erroredQuerySchema, parseErroredQuerySchema, transformErrorMessageSchema, transformRequestBodySchema, transformRequestMessageSchema, transformResponseBodySchema, transformResponseMessageSchema, transformedQuerySchema };
39
39
 
40
40
  //# sourceMappingURL=custom-queries.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"custom-queries.js","names":[],"sources":["../../../../zero-protocol/src/custom-queries.ts"],"sourcesContent":["import {jsonSchema} from '../../shared/src/json-schema.ts';\nimport * as v from '../../shared/src/valita.ts';\nimport {astSchema} from './ast.ts';\nimport {transformFailedBodySchema} from './error.ts';\n\nexport const transformRequestBodySchema = v.array(\n v.object({\n id: v.string(),\n name: v.string(),\n args: v.readonly(v.array(jsonSchema)),\n }),\n);\nexport type TransformRequestBody = v.Infer<typeof transformRequestBodySchema>;\n\nexport const transformedQuerySchema = v.object({\n id: v.string(),\n name: v.string(),\n ast: astSchema,\n});\n\nexport const appErroredQuerySchema = v.object({\n error: v.literal('app'),\n id: v.string(),\n name: v.string(),\n // optional for backwards compatibility\n message: v.string().optional(),\n details: jsonSchema.optional(),\n});\nexport const parseErroredQuerySchema = v.object({\n error: v.literal('parse'),\n id: v.string(),\n name: v.string(),\n message: v.string(),\n details: jsonSchema.optional(),\n});\nexport const erroredQuerySchema = v.union(\n appErroredQuerySchema,\n parseErroredQuerySchema,\n);\nexport type ErroredQuery = v.Infer<typeof erroredQuerySchema>;\n\nexport const transformResponseBodySchema = v.array(\n v.union(transformedQuerySchema, erroredQuerySchema),\n);\nexport type TransformResponseBody = v.Infer<typeof transformResponseBodySchema>;\n\nexport const transformRequestMessageSchema = v.tuple([\n v.literal('transform'),\n transformRequestBodySchema,\n]);\nexport type TransformRequestMessage = v.Infer<\n typeof transformRequestMessageSchema\n>;\nexport const transformErrorMessageSchema = v.tuple([\n v.literal('transformError'),\n v.array(erroredQuerySchema),\n]);\nexport type TransformErrorMessage = v.Infer<typeof transformErrorMessageSchema>;\n\nconst transformFailedMessageSchema = v.tuple([\n v.literal('transformFailed'),\n transformFailedBodySchema,\n]);\nconst transformOkMessageSchema = v.tuple([\n v.literal('transformed'),\n transformResponseBodySchema,\n]);\n\nexport const transformResponseMessageSchema = v.union(\n transformOkMessageSchema,\n transformFailedMessageSchema,\n);\nexport type TransformResponseMessage = v.Infer<\n typeof transformResponseMessageSchema\n>;\n"],"mappings":";;;;;AAKA,IAAa,6BAA6B,eAAE,MAC1C,eAAE,OAAO;CACP,IAAI,eAAE,OAAO;CACb,MAAM,eAAE,OAAO;CACf,MAAM,SAAW,eAAE,MAAM,UAAU,CAAC;AACtC,CAAC,CACH;AAGA,IAAa,yBAAyB,eAAE,OAAO;CAC7C,IAAI,eAAE,OAAO;CACb,MAAM,eAAE,OAAO;CACf,KAAK;AACP,CAAC;AAED,IAAa,wBAAwB,eAAE,OAAO;CAC5C,OAAO,eAAE,QAAQ,KAAK;CACtB,IAAI,eAAE,OAAO;CACb,MAAM,eAAE,OAAO;CAEf,SAAS,eAAE,OAAO,EAAE,SAAS;CAC7B,SAAS,WAAW,SAAS;AAC/B,CAAC;AACD,IAAa,0BAA0B,eAAE,OAAO;CAC9C,OAAO,eAAE,QAAQ,OAAO;CACxB,IAAI,eAAE,OAAO;CACb,MAAM,eAAE,OAAO;CACf,SAAS,eAAE,OAAO;CAClB,SAAS,WAAW,SAAS;AAC/B,CAAC;AACD,IAAa,qBAAqB,eAAE,MAClC,uBACA,uBACF;AAGA,IAAa,8BAA8B,eAAE,MAC3C,eAAE,MAAM,wBAAwB,kBAAkB,CACpD;AAGA,IAAa,gCAAgC,eAAE,MAAM,CACnD,eAAE,QAAQ,WAAW,GACrB,0BACF,CAAC;AAID,IAAa,8BAA8B,eAAE,MAAM,CACjD,eAAE,QAAQ,gBAAgB,GAC1B,eAAE,MAAM,kBAAkB,CAC5B,CAAC;AAGD,IAAM,+BAA+B,eAAE,MAAM,CAC3C,eAAE,QAAQ,iBAAiB,GAC3B,yBACF,CAAC;AACD,IAAM,2BAA2B,eAAE,MAAM,CACvC,eAAE,QAAQ,aAAa,GACvB,2BACF,CAAC;AAED,IAAa,iCAAiC,eAAE,MAC9C,0BACA,4BACF"}
1
+ {"version":3,"file":"custom-queries.js","names":["v","v.readonly"],"sources":["../../../../zero-protocol/src/custom-queries.ts"],"sourcesContent":["import {jsonSchema} from '../../shared/src/json-schema.ts';\nimport * as v from '../../shared/src/valita.ts';\nimport {astSchema} from './ast.ts';\nimport {transformFailedBodySchema} from './error.ts';\n\nexport const transformRequestBodySchema = v.array(\n v.object({\n id: v.string(),\n name: v.string(),\n args: v.readonly(v.array(jsonSchema)),\n }),\n);\nexport type TransformRequestBody = v.Infer<typeof transformRequestBodySchema>;\n\nexport const transformedQuerySchema = v.object({\n id: v.string(),\n name: v.string(),\n ast: astSchema,\n});\n\nexport const appErroredQuerySchema = v.object({\n error: v.literal('app'),\n id: v.string(),\n name: v.string(),\n // optional for backwards compatibility\n message: v.string().optional(),\n details: jsonSchema.optional(),\n});\nexport const parseErroredQuerySchema = v.object({\n error: v.literal('parse'),\n id: v.string(),\n name: v.string(),\n message: v.string(),\n details: jsonSchema.optional(),\n});\nexport const erroredQuerySchema = v.union(\n appErroredQuerySchema,\n parseErroredQuerySchema,\n);\nexport type ErroredQuery = v.Infer<typeof erroredQuerySchema>;\n\nexport const transformResponseBodySchema = v.array(\n v.union(transformedQuerySchema, erroredQuerySchema),\n);\nexport type TransformResponseBody = v.Infer<typeof transformResponseBodySchema>;\n\nexport const transformRequestMessageSchema = v.tuple([\n v.literal('transform'),\n transformRequestBodySchema,\n]);\nexport type TransformRequestMessage = v.Infer<\n typeof transformRequestMessageSchema\n>;\nexport const transformErrorMessageSchema = v.tuple([\n v.literal('transformError'),\n v.array(erroredQuerySchema),\n]);\nexport type TransformErrorMessage = v.Infer<typeof transformErrorMessageSchema>;\n\nconst transformFailedMessageSchema = v.tuple([\n v.literal('transformFailed'),\n transformFailedBodySchema,\n]);\nconst transformOkMessageSchema = v.tuple([\n v.literal('transformed'),\n transformResponseBodySchema,\n]);\n\nexport const transformResponseMessageSchema = v.union(\n transformOkMessageSchema,\n transformFailedMessageSchema,\n);\nexport type TransformResponseMessage = v.Infer<\n typeof transformResponseMessageSchema\n>;\n"],"mappings":";;;;;AAKA,IAAa,6BAA6BA,eAAE,MAC1CA,eAAE,OAAO;CACP,IAAIA,eAAE,OAAO;CACb,MAAMA,eAAE,OAAO;CACf,MAAMC,SAAWD,eAAE,MAAM,UAAU,CAAC;AACtC,CAAC,CACH;AAGA,IAAa,yBAAyBA,eAAE,OAAO;CAC7C,IAAIA,eAAE,OAAO;CACb,MAAMA,eAAE,OAAO;CACf,KAAK;AACP,CAAC;AAED,IAAa,wBAAwBA,eAAE,OAAO;CAC5C,OAAOA,eAAE,QAAQ,KAAK;CACtB,IAAIA,eAAE,OAAO;CACb,MAAMA,eAAE,OAAO;CAEf,SAASA,eAAE,OAAO,CAAC,CAAC,SAAS;CAC7B,SAAS,WAAW,SAAS;AAC/B,CAAC;AACD,IAAa,0BAA0BA,eAAE,OAAO;CAC9C,OAAOA,eAAE,QAAQ,OAAO;CACxB,IAAIA,eAAE,OAAO;CACb,MAAMA,eAAE,OAAO;CACf,SAASA,eAAE,OAAO;CAClB,SAAS,WAAW,SAAS;AAC/B,CAAC;AACD,IAAa,qBAAqBA,eAAE,MAClC,uBACA,uBACF;AAGA,IAAa,8BAA8BA,eAAE,MAC3CA,eAAE,MAAM,wBAAwB,kBAAkB,CACpD;AAGA,IAAa,gCAAgCA,eAAE,MAAM,CACnDA,eAAE,QAAQ,WAAW,GACrB,0BACF,CAAC;AAID,IAAa,8BAA8BA,eAAE,MAAM,CACjDA,eAAE,QAAQ,gBAAgB,GAC1BA,eAAE,MAAM,kBAAkB,CAC5B,CAAC;AAGD,IAAM,+BAA+BA,eAAE,MAAM,CAC3CA,eAAE,QAAQ,iBAAiB,GAC3B,yBACF,CAAC;AACD,IAAM,2BAA2BA,eAAE,MAAM,CACvCA,eAAE,QAAQ,aAAa,GACvB,2BACF,CAAC;AAED,IAAa,iCAAiCA,eAAE,MAC9C,0BACA,4BACF"}
@@ -1,7 +1,9 @@
1
1
  import { readonlyRecord, valita_exports } from "../../shared/src/valita.js";
2
2
  import { jsonSchema } from "../../shared/src/json-schema.js";
3
- var rowSchema = readonlyRecord(valita_exports.union(jsonSchema, valita_exports.undefined()));
3
+ //#region ../zero-protocol/src/data.ts
4
+ var valueSchema = valita_exports.union(jsonSchema, valita_exports.undefined());
5
+ var rowSchema = readonlyRecord(valueSchema);
4
6
  //#endregion
5
- export { rowSchema };
7
+ export { rowSchema, valueSchema };
6
8
 
7
9
  //# sourceMappingURL=data.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"data.js","names":[],"sources":["../../../../zero-protocol/src/data.ts"],"sourcesContent":["import {jsonSchema} from '../../shared/src/json-schema.ts';\nimport type {ReadonlyJSONValue} from '../../shared/src/json.ts';\nimport * as v from '../../shared/src/valita.ts';\n\n/**\n * The data types that Zero can represent are limited by two things:\n *\n * 1. The underlying Replicache sync layer currently can only represent JSON\n * types. This could possibly be expanded in the future, but we do want to be\n * careful of adding encoding overhead. By using JSON, we are taking\n * advantage of IndexedDB’s fast native JSValue [de]serialization which has\n * historically been a perf advantage for us.\n *\n * 2. IDs in Zero need to be comparable because we use them for sorting and row\n * identity. We could expand the set of allowed value types (to include,\n * i.e., Objects) but we would then need to restrict IDs to only comparable\n * types.\n *\n * These two facts leave us with the following allowed types. Zero's replication\n * layer must convert other types into these for tables to be used with Zero.\n *\n * For developer convenience we also allow `undefined`, which we treat\n * equivalently to `null`.\n */\nexport type Value = ReadonlyJSONValue | undefined;\n\nexport const valueSchema: v.Type<Value> = v.union(jsonSchema, v.undefined());\n\n/**\n * A Row is represented as a JS Object.\n *\n * We do everything in IVM as loosely typed values because these pipelines are\n * going to be constructed at runtime by other code, so type-safety can't buy us\n * anything.\n *\n * Also since the calling code on the client ultimately wants objects to work\n * with we end up with a lot less copies by using objects throughout.\n */\nexport type Row = Readonly<Record<string, Value>>;\n\nexport const rowSchema: v.Type<Row> = v.readonlyRecord(valueSchema);\n"],"mappings":";;AAwCA,IAAa,YAAyB,eAdI,eAAE,MAAM,YAAY,eAAE,UAAU,CAcnB,CAAW"}
1
+ {"version":3,"file":"data.js","names":["v","v.readonlyRecord"],"sources":["../../../../zero-protocol/src/data.ts"],"sourcesContent":["import {jsonSchema} from '../../shared/src/json-schema.ts';\nimport type {ReadonlyJSONValue} from '../../shared/src/json.ts';\nimport * as v from '../../shared/src/valita.ts';\n\n/**\n * The data types that Zero can represent are limited by two things:\n *\n * 1. The underlying Replicache sync layer currently can only represent JSON\n * types. This could possibly be expanded in the future, but we do want to be\n * careful of adding encoding overhead. By using JSON, we are taking\n * advantage of IndexedDB’s fast native JSValue [de]serialization which has\n * historically been a perf advantage for us.\n *\n * 2. IDs in Zero need to be comparable because we use them for sorting and row\n * identity. We could expand the set of allowed value types (to include,\n * i.e., Objects) but we would then need to restrict IDs to only comparable\n * types.\n *\n * These two facts leave us with the following allowed types. Zero's replication\n * layer must convert other types into these for tables to be used with Zero.\n *\n * For developer convenience we also allow `undefined`, which we treat\n * equivalently to `null`.\n */\nexport type Value = ReadonlyJSONValue | undefined;\n\nexport const valueSchema: v.Type<Value> = v.union(jsonSchema, v.undefined());\n\n/**\n * A Row is represented as a JS Object.\n *\n * We do everything in IVM as loosely typed values because these pipelines are\n * going to be constructed at runtime by other code, so type-safety can't buy us\n * anything.\n *\n * Also since the calling code on the client ultimately wants objects to work\n * with we end up with a lot less copies by using objects throughout.\n */\nexport type Row = Readonly<Record<string, Value>>;\n\nexport const rowSchema: v.Type<Row> = v.readonlyRecord(valueSchema);\n"],"mappings":";;;AA0BA,IAAa,cAA6BA,eAAE,MAAM,YAAYA,eAAE,UAAU,CAAC;AAc3E,IAAa,YAAyBC,eAAiB,WAAW"}
@@ -1 +1 @@
1
- {"version":3,"file":"delete-clients.js","names":[],"sources":["../../../../zero-protocol/src/delete-clients.ts"],"sourcesContent":["import * as v from '../../shared/src/valita.ts';\n\nexport const deleteClientsBodySchema = v.union(\n v.readonlyObject({\n clientIDs: v.readonlyArray(v.string()).optional(),\n clientGroupIDs: v.readonlyArray(v.string()).optional(),\n }),\n);\n\nexport const deleteClientsMessageSchema = v.tuple([\n v.literal('deleteClients'),\n deleteClientsBodySchema,\n]);\n\nexport type DeleteClientsBody = v.Infer<typeof deleteClientsBodySchema>;\nexport type DeleteClientsMessage = v.Infer<typeof deleteClientsMessageSchema>;\n"],"mappings":";;AAEA,IAAa,0BAA0B,eAAE,MACvC,eAAiB;CACf,WAAW,cAAgB,eAAE,OAAO,CAAC,EAAE,SAAS;CAChD,gBAAgB,cAAgB,eAAE,OAAO,CAAC,EAAE,SAAS;AACvD,CAAC,CACH;AAEA,IAAa,6BAA6B,eAAE,MAAM,CAChD,eAAE,QAAQ,eAAe,GACzB,uBACF,CAAC"}
1
+ {"version":3,"file":"delete-clients.js","names":["v","v.readonlyObject","v.readonlyArray"],"sources":["../../../../zero-protocol/src/delete-clients.ts"],"sourcesContent":["import * as v from '../../shared/src/valita.ts';\n\nexport const deleteClientsBodySchema = v.union(\n v.readonlyObject({\n clientIDs: v.readonlyArray(v.string()).optional(),\n clientGroupIDs: v.readonlyArray(v.string()).optional(),\n }),\n);\n\nexport const deleteClientsMessageSchema = v.tuple([\n v.literal('deleteClients'),\n deleteClientsBodySchema,\n]);\n\nexport type DeleteClientsBody = v.Infer<typeof deleteClientsBodySchema>;\nexport type DeleteClientsMessage = v.Infer<typeof deleteClientsMessageSchema>;\n"],"mappings":";;AAEA,IAAa,0BAA0BA,eAAE,MACvCC,eAAiB;CACf,WAAWC,cAAgBF,eAAE,OAAO,CAAC,CAAC,CAAC,SAAS;CAChD,gBAAgBE,cAAgBF,eAAE,OAAO,CAAC,CAAC,CAAC,SAAS;AACvD,CAAC,CACH;AAEA,IAAa,6BAA6BA,eAAE,MAAM,CAChDA,eAAE,QAAQ,eAAe,GACzB,uBACF,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"down.js","names":[],"sources":["../../../../zero-protocol/src/down.ts"],"sourcesContent":["import * as v from '../../shared/src/valita.ts';\nimport {connectedMessageSchema} from './connect.ts';\nimport {transformErrorMessageSchema} from './custom-queries.ts';\nimport {deleteClientsMessageSchema} from './delete-clients.ts';\nimport {errorMessageSchema} from './error.ts';\nimport {inspectDownMessageSchema} from './inspect-down.ts';\nimport {\n pokeEndMessageSchema,\n pokePartMessageSchema,\n pokeStartMessageSchema,\n} from './poke.ts';\nimport {pongMessageSchema} from './pong.ts';\nimport {pullResponseMessageSchema} from './pull.ts';\nimport {pushResponseMessageSchema} from './push.ts';\n\nexport const downstreamSchema = v.union(\n connectedMessageSchema,\n errorMessageSchema,\n pongMessageSchema,\n pokeStartMessageSchema,\n pokePartMessageSchema,\n pokeEndMessageSchema,\n pullResponseMessageSchema,\n deleteClientsMessageSchema,\n pushResponseMessageSchema,\n inspectDownMessageSchema,\n transformErrorMessageSchema,\n);\n\nexport type Downstream = v.Infer<typeof downstreamSchema>;\n"],"mappings":";;;;;;;;;;;AAeA,IAAa,mBAAmB,eAAE,MAChC,wBACA,oBACA,mBACA,wBACA,uBACA,sBACA,2BACA,4BACA,2BACA,0BACA,2BACF"}
1
+ {"version":3,"file":"down.js","names":["v"],"sources":["../../../../zero-protocol/src/down.ts"],"sourcesContent":["import * as v from '../../shared/src/valita.ts';\nimport {connectedMessageSchema} from './connect.ts';\nimport {transformErrorMessageSchema} from './custom-queries.ts';\nimport {deleteClientsMessageSchema} from './delete-clients.ts';\nimport {errorMessageSchema} from './error.ts';\nimport {inspectDownMessageSchema} from './inspect-down.ts';\nimport {\n pokeEndMessageSchema,\n pokePartMessageSchema,\n pokeStartMessageSchema,\n} from './poke.ts';\nimport {pongMessageSchema} from './pong.ts';\nimport {pullResponseMessageSchema} from './pull.ts';\nimport {pushResponseMessageSchema} from './push.ts';\n\nexport const downstreamSchema = v.union(\n connectedMessageSchema,\n errorMessageSchema,\n pongMessageSchema,\n pokeStartMessageSchema,\n pokePartMessageSchema,\n pokeEndMessageSchema,\n pullResponseMessageSchema,\n deleteClientsMessageSchema,\n pushResponseMessageSchema,\n inspectDownMessageSchema,\n transformErrorMessageSchema,\n);\n\nexport type Downstream = v.Infer<typeof downstreamSchema>;\n"],"mappings":";;;;;;;;;;;AAeA,IAAa,mBAAmBA,eAAE,MAChC,wBACA,oBACA,mBACA,wBACA,uBACA,sBACA,2BACA,4BACA,2BACA,0BACA,2BACF"}
@@ -1 +1 @@
1
- {"version":3,"file":"error.js","names":[],"sources":["../../../../zero-protocol/src/error.ts"],"sourcesContent":["import {jsonSchema} from '../../shared/src/json-schema.ts';\nimport * as v from '../../shared/src/valita.ts';\nimport {ErrorKind} from './error-kind.ts';\nimport {ErrorOrigin} from './error-origin.ts';\nimport {ErrorReason} from './error-reason.ts';\nimport {mutationIDSchema} from './mutation-id.ts';\n\nconst basicErrorKindSchema = v.literalUnion(\n ErrorKind.AuthInvalidated,\n ErrorKind.ClientNotFound,\n ErrorKind.InvalidConnectionRequest,\n ErrorKind.InvalidConnectionRequestBaseCookie,\n ErrorKind.InvalidConnectionRequestLastMutationID,\n ErrorKind.InvalidConnectionRequestClientDeleted,\n ErrorKind.InvalidMessage,\n ErrorKind.InvalidPush,\n ErrorKind.MutationRateLimited,\n ErrorKind.MutationFailed,\n ErrorKind.Unauthorized,\n ErrorKind.VersionNotSupported,\n ErrorKind.SchemaVersionNotSupported,\n ErrorKind.Internal,\n);\n\nconst basicErrorBodySchema = v.object({\n kind: basicErrorKindSchema,\n message: v.string(),\n // this is optional for backwards compatibility\n origin: v.literalUnion(ErrorOrigin.Server, ErrorOrigin.ZeroCache).optional(),\n});\n\nconst backoffErrorKindSchema = v.literalUnion(\n ErrorKind.Rebalance,\n ErrorKind.Rehome,\n ErrorKind.ServerOverloaded,\n);\n\nconst backoffBodySchema = v.object({\n kind: backoffErrorKindSchema,\n message: v.string(),\n minBackoffMs: v.number().optional(),\n maxBackoffMs: v.number().optional(),\n // Query parameters to send in the next reconnect. In the event of\n // a conflict, these will be overridden by the parameters used by\n // the client; it is the responsibility of the server to avoid\n // parameter name conflicts.\n //\n // The parameters will only be added to the immediately following\n // reconnect, and not after that.\n reconnectParams: v.record(v.string()).optional(),\n origin: v.literal(ErrorOrigin.ZeroCache).optional(),\n});\n\nconst pushFailedErrorKindSchema = v.literal(ErrorKind.PushFailed);\nconst transformFailedErrorKindSchema = v.literal(ErrorKind.TransformFailed);\n\nexport const errorKindSchema: v.Type<ErrorKind> = v.union(\n basicErrorKindSchema,\n backoffErrorKindSchema,\n pushFailedErrorKindSchema,\n transformFailedErrorKindSchema,\n);\n\nconst pushFailedBaseSchema = v.object({\n kind: pushFailedErrorKindSchema,\n details: jsonSchema.optional(),\n /**\n * The mutationIDs of the mutations that failed to process.\n * This can be a subset of the mutationIDs in the request.\n */\n mutationIDs: v.array(mutationIDSchema),\n message: v.string(),\n});\n\nexport const pushFailedBodySchema = v.union(\n pushFailedBaseSchema.extend({\n origin: v.literal(ErrorOrigin.Server),\n reason: v.literalUnion(\n ErrorReason.Database,\n ErrorReason.Parse,\n ErrorReason.OutOfOrderMutation,\n ErrorReason.UnsupportedPushVersion,\n ErrorReason.Internal,\n ),\n }),\n pushFailedBaseSchema.extend({\n origin: v.literal(ErrorOrigin.ZeroCache),\n reason: v.literal(ErrorReason.HTTP),\n status: v.number(),\n bodyPreview: v.string().optional(),\n }),\n pushFailedBaseSchema.extend({\n origin: v.literal(ErrorOrigin.ZeroCache),\n reason: v.literalUnion(\n ErrorReason.Timeout,\n ErrorReason.Parse,\n ErrorReason.Internal,\n ),\n }),\n);\n\nconst transformFailedBaseSchema = v.object({\n kind: transformFailedErrorKindSchema,\n details: jsonSchema.optional(),\n /**\n * The queryIDs of the queries that failed to transform.\n */\n queryIDs: v.array(v.string()),\n message: v.string(),\n});\n\nexport const transformFailedBodySchema = v.union(\n transformFailedBaseSchema.extend({\n origin: v.literal(ErrorOrigin.Server),\n reason: v.literalUnion(\n ErrorReason.Database,\n ErrorReason.Parse,\n ErrorReason.Internal,\n ),\n }),\n transformFailedBaseSchema.extend({\n origin: v.literal(ErrorOrigin.ZeroCache),\n reason: v.literal(ErrorReason.HTTP),\n status: v.number(),\n bodyPreview: v.string().optional(),\n }),\n transformFailedBaseSchema.extend({\n origin: v.literal(ErrorOrigin.ZeroCache),\n reason: v.literalUnion(\n ErrorReason.Timeout,\n ErrorReason.Parse,\n ErrorReason.Internal,\n ),\n }),\n);\n\nexport const errorBodySchema = v.union(\n basicErrorBodySchema,\n backoffBodySchema,\n pushFailedBodySchema,\n transformFailedBodySchema,\n);\n\nexport type BackoffBody = v.Infer<typeof backoffBodySchema>;\nexport type PushFailedBody = v.Infer<typeof pushFailedBodySchema>;\nexport type TransformFailedBody = v.Infer<typeof transformFailedBodySchema>;\nexport type ErrorBody = v.Infer<typeof errorBodySchema>;\n\nexport const errorMessageSchema: v.Type<ErrorMessage> = v.tuple([\n v.literal('error'),\n errorBodySchema,\n]);\n\nexport type ErrorMessage = ['error', ErrorBody];\n\n/**\n * Represents an error used across zero-client, zero-cache, and zero-server.\n */\nexport class ProtocolError<\n const T extends ErrorBody = ErrorBody,\n> extends Error {\n readonly errorBody: T;\n\n constructor(errorBody: T, options?: ErrorOptions) {\n super(errorBody.message, options);\n this.name = 'ProtocolError';\n this.errorBody = errorBody;\n }\n\n get kind(): T['kind'] {\n return this.errorBody.kind;\n }\n}\n\nexport function isProtocolError(error: unknown): error is ProtocolError {\n return error instanceof ProtocolError;\n}\n"],"mappings":";;;;;;;AAOA,IAAM,uBAAuB,aAC3B,iBACA,gBACA,0BACA,oCACA,wCACA,uCACA,gBACA,aACA,qBACA,gBACA,cACA,qBACA,2BACA,QACF;AAEA,IAAM,uBAAuB,eAAE,OAAO;CACpC,MAAM;CACN,SAAS,eAAE,OAAO;CAElB,QAAQ,aAAe,QAAoB,SAAqB,EAAE,SAAS;AAC7E,CAAC;AAED,IAAM,yBAAyB,aAC7B,WACA,QACA,gBACF;AAEA,IAAM,oBAAoB,eAAE,OAAO;CACjC,MAAM;CACN,SAAS,eAAE,OAAO;CAClB,cAAc,eAAE,OAAO,EAAE,SAAS;CAClC,cAAc,eAAE,OAAO,EAAE,SAAS;CAQlC,iBAAiB,eAAE,OAAO,eAAE,OAAO,CAAC,EAAE,SAAS;CAC/C,QAAQ,eAAE,QAAQ,SAAqB,EAAE,SAAS;AACpD,CAAC;AAED,IAAM,4BAA4B,eAAE,QAAQ,UAAoB;AAChE,IAAM,iCAAiC,eAAE,QAAQ,eAAyB;AAE1E,IAAa,kBAAqC,eAAE,MAClD,sBACA,wBACA,2BACA,8BACF;AAEA,IAAM,uBAAuB,eAAE,OAAO;CACpC,MAAM;CACN,SAAS,WAAW,SAAS;;;;;CAK7B,aAAa,eAAE,MAAM,gBAAgB;CACrC,SAAS,eAAE,OAAO;AACpB,CAAC;AAED,IAAa,uBAAuB,eAAE,MACpC,qBAAqB,OAAO;CAC1B,QAAQ,eAAE,QAAQ,MAAkB;CACpC,QAAQ,aACN,UACA,OACA,oBACA,wBACA,UACF;AACF,CAAC,GACD,qBAAqB,OAAO;CAC1B,QAAQ,eAAE,QAAQ,SAAqB;CACvC,QAAQ,eAAE,QAAQ,IAAgB;CAClC,QAAQ,eAAE,OAAO;CACjB,aAAa,eAAE,OAAO,EAAE,SAAS;AACnC,CAAC,GACD,qBAAqB,OAAO;CAC1B,QAAQ,eAAE,QAAQ,SAAqB;CACvC,QAAQ,aACN,SACA,OACA,UACF;AACF,CAAC,CACH;AAEA,IAAM,4BAA4B,eAAE,OAAO;CACzC,MAAM;CACN,SAAS,WAAW,SAAS;;;;CAI7B,UAAU,eAAE,MAAM,eAAE,OAAO,CAAC;CAC5B,SAAS,eAAE,OAAO;AACpB,CAAC;AAED,IAAa,4BAA4B,eAAE,MACzC,0BAA0B,OAAO;CAC/B,QAAQ,eAAE,QAAQ,MAAkB;CACpC,QAAQ,aACN,UACA,OACA,UACF;AACF,CAAC,GACD,0BAA0B,OAAO;CAC/B,QAAQ,eAAE,QAAQ,SAAqB;CACvC,QAAQ,eAAE,QAAQ,IAAgB;CAClC,QAAQ,eAAE,OAAO;CACjB,aAAa,eAAE,OAAO,EAAE,SAAS;AACnC,CAAC,GACD,0BAA0B,OAAO;CAC/B,QAAQ,eAAE,QAAQ,SAAqB;CACvC,QAAQ,aACN,SACA,OACA,UACF;AACF,CAAC,CACH;AAEA,IAAa,kBAAkB,eAAE,MAC/B,sBACA,mBACA,sBACA,yBACF;AAOA,IAAa,qBAA2C,eAAE,MAAM,CAC9D,eAAE,QAAQ,OAAO,GACjB,eACF,CAAC;;;;AAOD,IAAa,gBAAb,cAEU,MAAM;CACd;CAEA,YAAY,WAAc,SAAwB;EAChD,MAAM,UAAU,SAAS,OAAO;EAChC,KAAK,OAAO;EACZ,KAAK,YAAY;CACnB;CAEA,IAAI,OAAkB;EACpB,OAAO,KAAK,UAAU;CACxB;AACF;AAEA,SAAgB,gBAAgB,OAAwC;CACtE,OAAO,iBAAiB;AAC1B"}
1
+ {"version":3,"file":"error.js","names":["v.literalUnion","ErrorKind.AuthInvalidated","ErrorKind.ClientNotFound","ErrorKind.InvalidConnectionRequest","ErrorKind.InvalidConnectionRequestBaseCookie","ErrorKind.InvalidConnectionRequestLastMutationID","ErrorKind.InvalidConnectionRequestClientDeleted","ErrorKind.InvalidMessage","ErrorKind.InvalidPush","ErrorKind.MutationRateLimited","ErrorKind.MutationFailed","ErrorKind.Unauthorized","ErrorKind.VersionNotSupported","ErrorKind.SchemaVersionNotSupported","ErrorKind.Internal","v","ErrorOrigin.Server","ErrorOrigin.ZeroCache","ErrorKind.Rebalance","ErrorKind.Rehome","ErrorKind.ServerOverloaded","ErrorKind.PushFailed","ErrorKind.TransformFailed","ErrorReason.Database","ErrorReason.Parse","ErrorReason.OutOfOrderMutation","ErrorReason.UnsupportedPushVersion","ErrorReason.Internal","ErrorReason.HTTP","ErrorReason.Timeout"],"sources":["../../../../zero-protocol/src/error.ts"],"sourcesContent":["import {jsonSchema} from '../../shared/src/json-schema.ts';\nimport * as v from '../../shared/src/valita.ts';\nimport {ErrorKind} from './error-kind.ts';\nimport {ErrorOrigin} from './error-origin.ts';\nimport {ErrorReason} from './error-reason.ts';\nimport {mutationIDSchema} from './mutation-id.ts';\n\nconst basicErrorKindSchema = v.literalUnion(\n ErrorKind.AuthInvalidated,\n ErrorKind.ClientNotFound,\n ErrorKind.InvalidConnectionRequest,\n ErrorKind.InvalidConnectionRequestBaseCookie,\n ErrorKind.InvalidConnectionRequestLastMutationID,\n ErrorKind.InvalidConnectionRequestClientDeleted,\n ErrorKind.InvalidMessage,\n ErrorKind.InvalidPush,\n ErrorKind.MutationRateLimited,\n ErrorKind.MutationFailed,\n ErrorKind.Unauthorized,\n ErrorKind.VersionNotSupported,\n ErrorKind.SchemaVersionNotSupported,\n ErrorKind.Internal,\n);\n\nconst basicErrorBodySchema = v.object({\n kind: basicErrorKindSchema,\n message: v.string(),\n // this is optional for backwards compatibility\n origin: v.literalUnion(ErrorOrigin.Server, ErrorOrigin.ZeroCache).optional(),\n});\n\nconst backoffErrorKindSchema = v.literalUnion(\n ErrorKind.Rebalance,\n ErrorKind.Rehome,\n ErrorKind.ServerOverloaded,\n);\n\nconst backoffBodySchema = v.object({\n kind: backoffErrorKindSchema,\n message: v.string(),\n minBackoffMs: v.number().optional(),\n maxBackoffMs: v.number().optional(),\n // Query parameters to send in the next reconnect. In the event of\n // a conflict, these will be overridden by the parameters used by\n // the client; it is the responsibility of the server to avoid\n // parameter name conflicts.\n //\n // The parameters will only be added to the immediately following\n // reconnect, and not after that.\n reconnectParams: v.record(v.string()).optional(),\n origin: v.literal(ErrorOrigin.ZeroCache).optional(),\n});\n\nconst pushFailedErrorKindSchema = v.literal(ErrorKind.PushFailed);\nconst transformFailedErrorKindSchema = v.literal(ErrorKind.TransformFailed);\n\nexport const errorKindSchema: v.Type<ErrorKind> = v.union(\n basicErrorKindSchema,\n backoffErrorKindSchema,\n pushFailedErrorKindSchema,\n transformFailedErrorKindSchema,\n);\n\nconst pushFailedBaseSchema = v.object({\n kind: pushFailedErrorKindSchema,\n details: jsonSchema.optional(),\n /**\n * The mutationIDs of the mutations that failed to process.\n * This can be a subset of the mutationIDs in the request.\n */\n mutationIDs: v.array(mutationIDSchema),\n message: v.string(),\n});\n\nexport const pushFailedBodySchema = v.union(\n pushFailedBaseSchema.extend({\n origin: v.literal(ErrorOrigin.Server),\n reason: v.literalUnion(\n ErrorReason.Database,\n ErrorReason.Parse,\n ErrorReason.OutOfOrderMutation,\n ErrorReason.UnsupportedPushVersion,\n ErrorReason.Internal,\n ),\n }),\n pushFailedBaseSchema.extend({\n origin: v.literal(ErrorOrigin.ZeroCache),\n reason: v.literal(ErrorReason.HTTP),\n status: v.number(),\n bodyPreview: v.string().optional(),\n }),\n pushFailedBaseSchema.extend({\n origin: v.literal(ErrorOrigin.ZeroCache),\n reason: v.literalUnion(\n ErrorReason.Timeout,\n ErrorReason.Parse,\n ErrorReason.Internal,\n ),\n }),\n);\n\nconst transformFailedBaseSchema = v.object({\n kind: transformFailedErrorKindSchema,\n details: jsonSchema.optional(),\n /**\n * The queryIDs of the queries that failed to transform.\n */\n queryIDs: v.array(v.string()),\n message: v.string(),\n});\n\nexport const transformFailedBodySchema = v.union(\n transformFailedBaseSchema.extend({\n origin: v.literal(ErrorOrigin.Server),\n reason: v.literalUnion(\n ErrorReason.Database,\n ErrorReason.Parse,\n ErrorReason.Internal,\n ),\n }),\n transformFailedBaseSchema.extend({\n origin: v.literal(ErrorOrigin.ZeroCache),\n reason: v.literal(ErrorReason.HTTP),\n status: v.number(),\n bodyPreview: v.string().optional(),\n }),\n transformFailedBaseSchema.extend({\n origin: v.literal(ErrorOrigin.ZeroCache),\n reason: v.literalUnion(\n ErrorReason.Timeout,\n ErrorReason.Parse,\n ErrorReason.Internal,\n ),\n }),\n);\n\nexport const errorBodySchema = v.union(\n basicErrorBodySchema,\n backoffBodySchema,\n pushFailedBodySchema,\n transformFailedBodySchema,\n);\n\nexport type BackoffBody = v.Infer<typeof backoffBodySchema>;\nexport type PushFailedBody = v.Infer<typeof pushFailedBodySchema>;\nexport type TransformFailedBody = v.Infer<typeof transformFailedBodySchema>;\nexport type ErrorBody = v.Infer<typeof errorBodySchema>;\n\nexport const errorMessageSchema: v.Type<ErrorMessage> = v.tuple([\n v.literal('error'),\n errorBodySchema,\n]);\n\nexport type ErrorMessage = ['error', ErrorBody];\n\n/**\n * Represents an error used across zero-client, zero-cache, and zero-server.\n */\nexport class ProtocolError<\n const T extends ErrorBody = ErrorBody,\n> extends Error {\n readonly errorBody: T;\n\n constructor(errorBody: T, options?: ErrorOptions) {\n super(errorBody.message, options);\n this.name = 'ProtocolError';\n this.errorBody = errorBody;\n }\n\n get kind(): T['kind'] {\n return this.errorBody.kind;\n }\n}\n\nexport function isProtocolError(error: unknown): error is ProtocolError {\n return error instanceof ProtocolError;\n}\n"],"mappings":";;;;;;;AAOA,IAAM,uBAAuBA,aAC3BC,iBACAC,gBACAC,0BACAC,oCACAC,wCACAC,uCACAC,gBACAC,aACAC,qBACAC,gBACAC,cACAC,qBACAC,2BACAC,QACF;AAEA,IAAM,uBAAuBC,eAAE,OAAO;CACpC,MAAM;CACN,SAASA,eAAE,OAAO;CAElB,QAAQf,aAAegB,QAAoBC,SAAqB,CAAC,CAAC,SAAS;AAC7E,CAAC;AAED,IAAM,yBAAyBjB,aAC7BkB,WACAC,QACAC,gBACF;AAEA,IAAM,oBAAoBL,eAAE,OAAO;CACjC,MAAM;CACN,SAASA,eAAE,OAAO;CAClB,cAAcA,eAAE,OAAO,CAAC,CAAC,SAAS;CAClC,cAAcA,eAAE,OAAO,CAAC,CAAC,SAAS;CAQlC,iBAAiBA,eAAE,OAAOA,eAAE,OAAO,CAAC,CAAC,CAAC,SAAS;CAC/C,QAAQA,eAAE,QAAQE,SAAqB,CAAC,CAAC,SAAS;AACpD,CAAC;AAED,IAAM,4BAA4BF,eAAE,QAAQM,UAAoB;AAChE,IAAM,iCAAiCN,eAAE,QAAQO,eAAyB;AAE1E,IAAa,kBAAqCP,eAAE,MAClD,sBACA,wBACA,2BACA,8BACF;AAEA,IAAM,uBAAuBA,eAAE,OAAO;CACpC,MAAM;CACN,SAAS,WAAW,SAAS;;;;;CAK7B,aAAaA,eAAE,MAAM,gBAAgB;CACrC,SAASA,eAAE,OAAO;AACpB,CAAC;AAED,IAAa,uBAAuBA,eAAE,MACpC,qBAAqB,OAAO;CAC1B,QAAQA,eAAE,QAAQC,MAAkB;CACpC,QAAQhB,aACNuB,UACAC,OACAC,oBACAC,wBACAC,UACF;AACF,CAAC,GACD,qBAAqB,OAAO;CAC1B,QAAQZ,eAAE,QAAQE,SAAqB;CACvC,QAAQF,eAAE,QAAQa,IAAgB;CAClC,QAAQb,eAAE,OAAO;CACjB,aAAaA,eAAE,OAAO,CAAC,CAAC,SAAS;AACnC,CAAC,GACD,qBAAqB,OAAO;CAC1B,QAAQA,eAAE,QAAQE,SAAqB;CACvC,QAAQjB,aACN6B,SACAL,OACAG,UACF;AACF,CAAC,CACH;AAEA,IAAM,4BAA4BZ,eAAE,OAAO;CACzC,MAAM;CACN,SAAS,WAAW,SAAS;;;;CAI7B,UAAUA,eAAE,MAAMA,eAAE,OAAO,CAAC;CAC5B,SAASA,eAAE,OAAO;AACpB,CAAC;AAED,IAAa,4BAA4BA,eAAE,MACzC,0BAA0B,OAAO;CAC/B,QAAQA,eAAE,QAAQC,MAAkB;CACpC,QAAQhB,aACNuB,UACAC,OACAG,UACF;AACF,CAAC,GACD,0BAA0B,OAAO;CAC/B,QAAQZ,eAAE,QAAQE,SAAqB;CACvC,QAAQF,eAAE,QAAQa,IAAgB;CAClC,QAAQb,eAAE,OAAO;CACjB,aAAaA,eAAE,OAAO,CAAC,CAAC,SAAS;AACnC,CAAC,GACD,0BAA0B,OAAO;CAC/B,QAAQA,eAAE,QAAQE,SAAqB;CACvC,QAAQjB,aACN6B,SACAL,OACAG,UACF;AACF,CAAC,CACH;AAEA,IAAa,kBAAkBZ,eAAE,MAC/B,sBACA,mBACA,sBACA,yBACF;AAOA,IAAa,qBAA2CA,eAAE,MAAM,CAC9DA,eAAE,QAAQ,OAAO,GACjB,eACF,CAAC;;;;AAOD,IAAa,gBAAb,cAEU,MAAM;CACd;CAEA,YAAY,WAAc,SAAwB;EAChD,MAAM,UAAU,SAAS,OAAO;EAChC,KAAK,OAAO;EACZ,KAAK,YAAY;CACnB;CAEA,IAAI,OAAkB;EACpB,OAAO,KAAK,UAAU;CACxB;AACF;AAEA,SAAgB,gBAAgB,OAAwC;CACtE,OAAO,iBAAiB;AAC1B"}
@@ -100,33 +100,6 @@ export declare const inspectAnalyzeQueryDownSchema: v.ObjectType<Omit<{
100
100
  type: "attempt-start";
101
101
  attemptNumber: number;
102
102
  totalAttempts: number;
103
- } | {
104
- type: "connection-selected";
105
- attemptNumber: number;
106
- connection: string;
107
- cost: number;
108
- isRoot: boolean;
109
- } | {
110
- type: "plan-failed";
111
- attemptNumber: number;
112
- reason: string;
113
- } | {
114
- type: "best-plan-selected";
115
- bestAttemptNumber: number;
116
- totalCost: number;
117
- flipPattern: number;
118
- joinStates: {
119
- join: string;
120
- type: "flipped" | "semi" | "unflippable" | v.Unrecognized<string>;
121
- }[];
122
- } | {
123
- type: "node-constraint";
124
- attemptNumber?: number | undefined;
125
- nodeType: "connection" | "fan-in" | "fan-out" | "filter" | "join" | "terminus" | v.Unrecognized<string>;
126
- node: string;
127
- branchPattern: number[];
128
- constraint?: Record<string, unknown> | null | undefined;
129
- from: string;
130
103
  } | {
131
104
  type: "connection-costs";
132
105
  attemptNumber: number;
@@ -152,6 +125,12 @@ export declare const inspectAnalyzeQueryDownSchema: v.ObjectType<Omit<{
152
125
  limit?: number | undefined;
153
126
  }>;
154
127
  }[];
128
+ } | {
129
+ type: "connection-selected";
130
+ attemptNumber: number;
131
+ connection: string;
132
+ cost: number;
133
+ isRoot: boolean;
155
134
  } | {
156
135
  type: "constraints-propagated";
157
136
  attemptNumber: number;
@@ -176,6 +155,19 @@ export declare const inspectAnalyzeQueryDownSchema: v.ObjectType<Omit<{
176
155
  join: string;
177
156
  type: "flipped" | "semi" | "unflippable" | v.Unrecognized<string>;
178
157
  }[];
158
+ } | {
159
+ type: "plan-failed";
160
+ attemptNumber: number;
161
+ reason: string;
162
+ } | {
163
+ type: "best-plan-selected";
164
+ bestAttemptNumber: number;
165
+ totalCost: number;
166
+ flipPattern: number;
167
+ joinStates: {
168
+ join: string;
169
+ type: "flipped" | "semi" | "unflippable" | v.Unrecognized<string>;
170
+ }[];
179
171
  } | {
180
172
  type: "node-cost";
181
173
  attemptNumber?: number | undefined;
@@ -194,6 +186,14 @@ export declare const inspectAnalyzeQueryDownSchema: v.ObjectType<Omit<{
194
186
  filters?: import("./ast.ts").Condition | undefined;
195
187
  ordering?: readonly (readonly [string, "asc" | "desc"])[] | undefined;
196
188
  joinType?: "flipped" | "semi" | "unflippable" | v.Unrecognized<string> | undefined;
189
+ } | {
190
+ type: "node-constraint";
191
+ attemptNumber?: number | undefined;
192
+ nodeType: "connection" | "fan-in" | "fan-out" | "filter" | "join" | "terminus" | v.Unrecognized<string>;
193
+ node: string;
194
+ branchPattern: number[];
195
+ constraint?: Record<string, unknown> | null | undefined;
196
+ from: string;
197
197
  })[]>;
198
198
  }, undefined>;
199
199
  }, undefined>;
@@ -266,33 +266,6 @@ export declare const inspectDownBodySchema: v.UnionType<[v.ObjectType<Omit<{
266
266
  type: "attempt-start";
267
267
  attemptNumber: number;
268
268
  totalAttempts: number;
269
- } | {
270
- type: "connection-selected";
271
- attemptNumber: number;
272
- connection: string;
273
- cost: number;
274
- isRoot: boolean;
275
- } | {
276
- type: "plan-failed";
277
- attemptNumber: number;
278
- reason: string;
279
- } | {
280
- type: "best-plan-selected";
281
- bestAttemptNumber: number;
282
- totalCost: number;
283
- flipPattern: number;
284
- joinStates: {
285
- join: string;
286
- type: "flipped" | "semi" | "unflippable" | v.Unrecognized<string>;
287
- }[];
288
- } | {
289
- type: "node-constraint";
290
- attemptNumber?: number | undefined;
291
- nodeType: "connection" | "fan-in" | "fan-out" | "filter" | "join" | "terminus" | v.Unrecognized<string>;
292
- node: string;
293
- branchPattern: number[];
294
- constraint?: Record<string, unknown> | null | undefined;
295
- from: string;
296
269
  } | {
297
270
  type: "connection-costs";
298
271
  attemptNumber: number;
@@ -318,6 +291,12 @@ export declare const inspectDownBodySchema: v.UnionType<[v.ObjectType<Omit<{
318
291
  limit?: number | undefined;
319
292
  }>;
320
293
  }[];
294
+ } | {
295
+ type: "connection-selected";
296
+ attemptNumber: number;
297
+ connection: string;
298
+ cost: number;
299
+ isRoot: boolean;
321
300
  } | {
322
301
  type: "constraints-propagated";
323
302
  attemptNumber: number;
@@ -342,6 +321,19 @@ export declare const inspectDownBodySchema: v.UnionType<[v.ObjectType<Omit<{
342
321
  join: string;
343
322
  type: "flipped" | "semi" | "unflippable" | v.Unrecognized<string>;
344
323
  }[];
324
+ } | {
325
+ type: "plan-failed";
326
+ attemptNumber: number;
327
+ reason: string;
328
+ } | {
329
+ type: "best-plan-selected";
330
+ bestAttemptNumber: number;
331
+ totalCost: number;
332
+ flipPattern: number;
333
+ joinStates: {
334
+ join: string;
335
+ type: "flipped" | "semi" | "unflippable" | v.Unrecognized<string>;
336
+ }[];
345
337
  } | {
346
338
  type: "node-cost";
347
339
  attemptNumber?: number | undefined;
@@ -360,6 +352,14 @@ export declare const inspectDownBodySchema: v.UnionType<[v.ObjectType<Omit<{
360
352
  filters?: import("./ast.ts").Condition | undefined;
361
353
  ordering?: readonly (readonly [string, "asc" | "desc"])[] | undefined;
362
354
  joinType?: "flipped" | "semi" | "unflippable" | v.Unrecognized<string> | undefined;
355
+ } | {
356
+ type: "node-constraint";
357
+ attemptNumber?: number | undefined;
358
+ nodeType: "connection" | "fan-in" | "fan-out" | "filter" | "join" | "terminus" | v.Unrecognized<string>;
359
+ node: string;
360
+ branchPattern: number[];
361
+ constraint?: Record<string, unknown> | null | undefined;
362
+ from: string;
363
363
  })[]>;
364
364
  }, undefined>;
365
365
  }, undefined>, v.ObjectType<Omit<{
@@ -429,33 +429,6 @@ export declare const inspectDownMessageSchema: v.TupleType<[v.Type<"inspect">, v
429
429
  type: "attempt-start";
430
430
  attemptNumber: number;
431
431
  totalAttempts: number;
432
- } | {
433
- type: "connection-selected";
434
- attemptNumber: number;
435
- connection: string;
436
- cost: number;
437
- isRoot: boolean;
438
- } | {
439
- type: "plan-failed";
440
- attemptNumber: number;
441
- reason: string;
442
- } | {
443
- type: "best-plan-selected";
444
- bestAttemptNumber: number;
445
- totalCost: number;
446
- flipPattern: number;
447
- joinStates: {
448
- join: string;
449
- type: "flipped" | "semi" | "unflippable" | v.Unrecognized<string>;
450
- }[];
451
- } | {
452
- type: "node-constraint";
453
- attemptNumber?: number | undefined;
454
- nodeType: "connection" | "fan-in" | "fan-out" | "filter" | "join" | "terminus" | v.Unrecognized<string>;
455
- node: string;
456
- branchPattern: number[];
457
- constraint?: Record<string, unknown> | null | undefined;
458
- from: string;
459
432
  } | {
460
433
  type: "connection-costs";
461
434
  attemptNumber: number;
@@ -481,6 +454,12 @@ export declare const inspectDownMessageSchema: v.TupleType<[v.Type<"inspect">, v
481
454
  limit?: number | undefined;
482
455
  }>;
483
456
  }[];
457
+ } | {
458
+ type: "connection-selected";
459
+ attemptNumber: number;
460
+ connection: string;
461
+ cost: number;
462
+ isRoot: boolean;
484
463
  } | {
485
464
  type: "constraints-propagated";
486
465
  attemptNumber: number;
@@ -505,6 +484,19 @@ export declare const inspectDownMessageSchema: v.TupleType<[v.Type<"inspect">, v
505
484
  join: string;
506
485
  type: "flipped" | "semi" | "unflippable" | v.Unrecognized<string>;
507
486
  }[];
487
+ } | {
488
+ type: "plan-failed";
489
+ attemptNumber: number;
490
+ reason: string;
491
+ } | {
492
+ type: "best-plan-selected";
493
+ bestAttemptNumber: number;
494
+ totalCost: number;
495
+ flipPattern: number;
496
+ joinStates: {
497
+ join: string;
498
+ type: "flipped" | "semi" | "unflippable" | v.Unrecognized<string>;
499
+ }[];
508
500
  } | {
509
501
  type: "node-cost";
510
502
  attemptNumber?: number | undefined;
@@ -523,6 +515,14 @@ export declare const inspectDownMessageSchema: v.TupleType<[v.Type<"inspect">, v
523
515
  filters?: import("./ast.ts").Condition | undefined;
524
516
  ordering?: readonly (readonly [string, "asc" | "desc"])[] | undefined;
525
517
  joinType?: "flipped" | "semi" | "unflippable" | v.Unrecognized<string> | undefined;
518
+ } | {
519
+ type: "node-constraint";
520
+ attemptNumber?: number | undefined;
521
+ nodeType: "connection" | "fan-in" | "fan-out" | "filter" | "join" | "terminus" | v.Unrecognized<string>;
522
+ node: string;
523
+ branchPattern: number[];
524
+ constraint?: Record<string, unknown> | null | undefined;
525
+ from: string;
526
526
  })[]>;
527
527
  }, undefined>;
528
528
  }, undefined>, v.ObjectType<Omit<{
@@ -59,6 +59,6 @@ var inspectErrorDownSchema = inspectBaseDownSchema.extend({
59
59
  var inspectDownBodySchema = valita_exports.union(inspectQueriesDownSchema, inspectMetricsDownSchema, inspectVersionDownSchema, inspectAuthenticatedDownSchema, inspectAnalyzeQueryDownSchema, inspectErrorDownSchema);
60
60
  var inspectDownMessageSchema = valita_exports.tuple([valita_exports.literal("inspect"), inspectDownBodySchema]);
61
61
  //#endregion
62
- export { inspectAnalyzeQueryDownSchema, inspectAuthenticatedDownSchema, inspectDownMessageSchema, inspectErrorDownSchema, inspectMetricsDownSchema, inspectQueriesDownSchema, inspectVersionDownSchema };
62
+ export { inspectAnalyzeQueryDownSchema, inspectAuthenticatedDownSchema, inspectDownBodySchema, inspectDownMessageSchema, inspectErrorDownSchema, inspectMetricsDownSchema, inspectQueriesDownSchema, inspectVersionDownSchema };
63
63
 
64
64
  //# sourceMappingURL=inspect-down.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"inspect-down.js","names":[],"sources":["../../../../zero-protocol/src/inspect-down.ts"],"sourcesContent":["import {jsonSchema} from '../../shared/src/json-schema.ts';\nimport {tdigestSchema} from '../../shared/src/tdigest-schema.ts';\nimport * as v from '../../shared/src/valita.ts';\nimport {analyzeQueryResultSchema} from './analyze-query-result.ts';\nimport {astSchema} from './ast.ts';\n\nconst serverMetricsSchema = v.object({\n 'query-materialization-server': tdigestSchema,\n 'query-update-server': tdigestSchema,\n});\n\nexport type ServerMetrics = v.Infer<typeof serverMetricsSchema>;\n\n/**\n * Per-query server metrics sent with each query row in the inspector protocol.\n * `query-hydration-server-ms` is a plain number (milliseconds) since each\n * query is typically hydrated only once. `query-update-server` is a TDigest\n * histogram since queries receive many incremental updates.\n */\nconst queryServerMetricsSchema = v.object({\n 'query-hydration-server-ms': v.number().optional(),\n 'query-update-server': tdigestSchema,\n});\n\nexport type QueryServerMetrics = v.Infer<typeof queryServerMetricsSchema>;\n\nconst inspectQueryRowSchema = v.object({\n clientID: v.string(),\n queryID: v.string(),\n // This is the server return AST for custom queries\n // TODO: Return server generated AST\n ast: astSchema.nullable(),\n // not null for custom queries\n name: v.string().nullable(),\n // not null for custom queries\n args: v.readonlyArray(jsonSchema).nullable(),\n got: v.boolean(),\n deleted: v.boolean(),\n ttl: v.number(),\n inactivatedAt: v.number().nullable(),\n rowCount: v.number(),\n metrics: queryServerMetricsSchema.nullable().optional(),\n});\n\nexport type InspectQueryRow = v.Infer<typeof inspectQueryRowSchema>;\n\nconst inspectBaseDownSchema = v.object({\n id: v.string(),\n});\n\nexport const inspectQueriesDownSchema = inspectBaseDownSchema.extend({\n op: v.literal('queries'),\n value: v.array(inspectQueryRowSchema),\n});\n\nexport type InspectQueriesDown = v.Infer<typeof inspectQueriesDownSchema>;\n\nexport const inspectMetricsDownSchema = inspectBaseDownSchema.extend({\n op: v.literal('metrics'),\n value: serverMetricsSchema,\n});\n\nexport type InspectMetricsDown = v.Infer<typeof inspectMetricsDownSchema>;\n\nexport const inspectVersionDownSchema = inspectBaseDownSchema.extend({\n op: v.literal('version'),\n value: v.string(),\n});\n\nexport const inspectAuthenticatedDownSchema = inspectBaseDownSchema.extend({\n op: v.literal('authenticated'),\n value: v.boolean(),\n});\n\nexport type InspectAuthenticatedDown = v.Infer<\n typeof inspectAuthenticatedDownSchema\n>;\n\nexport const inspectAnalyzeQueryDownSchema = inspectBaseDownSchema.extend({\n op: v.literal('analyze-query'),\n value: analyzeQueryResultSchema,\n});\n\nexport type InspectAnalyzeQueryDown = v.Infer<\n typeof inspectAnalyzeQueryDownSchema\n>;\n\nexport const inspectErrorDownSchema = inspectBaseDownSchema.extend({\n op: v.literal('error'),\n value: v.string(),\n});\n\nexport type InspectErrorDown = v.Infer<typeof inspectErrorDownSchema>;\n\nexport const inspectDownBodySchema = v.union(\n inspectQueriesDownSchema,\n inspectMetricsDownSchema,\n inspectVersionDownSchema,\n inspectAuthenticatedDownSchema,\n inspectAnalyzeQueryDownSchema,\n inspectErrorDownSchema,\n);\n\nexport const inspectDownMessageSchema = v.tuple([\n v.literal('inspect'),\n inspectDownBodySchema,\n]);\n\nexport type InspectDownMessage = v.Infer<typeof inspectDownMessageSchema>;\n\nexport type InspectDownBody = v.Infer<typeof inspectDownBodySchema>;\n"],"mappings":";;;;;;AAMA,IAAM,sBAAsB,eAAE,OAAO;CACnC,gCAAgC;CAChC,uBAAuB;AACzB,CAAC;;;;;;;AAUD,IAAM,2BAA2B,eAAE,OAAO;CACxC,6BAA6B,eAAE,OAAO,EAAE,SAAS;CACjD,uBAAuB;AACzB,CAAC;AAID,IAAM,wBAAwB,eAAE,OAAO;CACrC,UAAU,eAAE,OAAO;CACnB,SAAS,eAAE,OAAO;CAGlB,KAAK,UAAU,SAAS;CAExB,MAAM,eAAE,OAAO,EAAE,SAAS;CAE1B,MAAM,cAAgB,UAAU,EAAE,SAAS;CAC3C,KAAK,eAAE,QAAQ;CACf,SAAS,eAAE,QAAQ;CACnB,KAAK,eAAE,OAAO;CACd,eAAe,eAAE,OAAO,EAAE,SAAS;CACnC,UAAU,eAAE,OAAO;CACnB,SAAS,yBAAyB,SAAS,EAAE,SAAS;AACxD,CAAC;AAID,IAAM,wBAAwB,eAAE,OAAO,EACrC,IAAI,eAAE,OAAO,EACf,CAAC;AAED,IAAa,2BAA2B,sBAAsB,OAAO;CACnE,IAAI,eAAE,QAAQ,SAAS;CACvB,OAAO,eAAE,MAAM,qBAAqB;AACtC,CAAC;AAID,IAAa,2BAA2B,sBAAsB,OAAO;CACnE,IAAI,eAAE,QAAQ,SAAS;CACvB,OAAO;AACT,CAAC;AAID,IAAa,2BAA2B,sBAAsB,OAAO;CACnE,IAAI,eAAE,QAAQ,SAAS;CACvB,OAAO,eAAE,OAAO;AAClB,CAAC;AAED,IAAa,iCAAiC,sBAAsB,OAAO;CACzE,IAAI,eAAE,QAAQ,eAAe;CAC7B,OAAO,eAAE,QAAQ;AACnB,CAAC;AAMD,IAAa,gCAAgC,sBAAsB,OAAO;CACxE,IAAI,eAAE,QAAQ,eAAe;CAC7B,OAAO;AACT,CAAC;AAMD,IAAa,yBAAyB,sBAAsB,OAAO;CACjE,IAAI,eAAE,QAAQ,OAAO;CACrB,OAAO,eAAE,OAAO;AAClB,CAAC;AAID,IAAa,wBAAwB,eAAE,MACrC,0BACA,0BACA,0BACA,gCACA,+BACA,sBACF;AAEA,IAAa,2BAA2B,eAAE,MAAM,CAC9C,eAAE,QAAQ,SAAS,GACnB,qBACF,CAAC"}
1
+ {"version":3,"file":"inspect-down.js","names":["v","v.readonlyArray"],"sources":["../../../../zero-protocol/src/inspect-down.ts"],"sourcesContent":["import {jsonSchema} from '../../shared/src/json-schema.ts';\nimport {tdigestSchema} from '../../shared/src/tdigest-schema.ts';\nimport * as v from '../../shared/src/valita.ts';\nimport {analyzeQueryResultSchema} from './analyze-query-result.ts';\nimport {astSchema} from './ast.ts';\n\nconst serverMetricsSchema = v.object({\n 'query-materialization-server': tdigestSchema,\n 'query-update-server': tdigestSchema,\n});\n\nexport type ServerMetrics = v.Infer<typeof serverMetricsSchema>;\n\n/**\n * Per-query server metrics sent with each query row in the inspector protocol.\n * `query-hydration-server-ms` is a plain number (milliseconds) since each\n * query is typically hydrated only once. `query-update-server` is a TDigest\n * histogram since queries receive many incremental updates.\n */\nconst queryServerMetricsSchema = v.object({\n 'query-hydration-server-ms': v.number().optional(),\n 'query-update-server': tdigestSchema,\n});\n\nexport type QueryServerMetrics = v.Infer<typeof queryServerMetricsSchema>;\n\nconst inspectQueryRowSchema = v.object({\n clientID: v.string(),\n queryID: v.string(),\n // This is the server return AST for custom queries\n // TODO: Return server generated AST\n ast: astSchema.nullable(),\n // not null for custom queries\n name: v.string().nullable(),\n // not null for custom queries\n args: v.readonlyArray(jsonSchema).nullable(),\n got: v.boolean(),\n deleted: v.boolean(),\n ttl: v.number(),\n inactivatedAt: v.number().nullable(),\n rowCount: v.number(),\n metrics: queryServerMetricsSchema.nullable().optional(),\n});\n\nexport type InspectQueryRow = v.Infer<typeof inspectQueryRowSchema>;\n\nconst inspectBaseDownSchema = v.object({\n id: v.string(),\n});\n\nexport const inspectQueriesDownSchema = inspectBaseDownSchema.extend({\n op: v.literal('queries'),\n value: v.array(inspectQueryRowSchema),\n});\n\nexport type InspectQueriesDown = v.Infer<typeof inspectQueriesDownSchema>;\n\nexport const inspectMetricsDownSchema = inspectBaseDownSchema.extend({\n op: v.literal('metrics'),\n value: serverMetricsSchema,\n});\n\nexport type InspectMetricsDown = v.Infer<typeof inspectMetricsDownSchema>;\n\nexport const inspectVersionDownSchema = inspectBaseDownSchema.extend({\n op: v.literal('version'),\n value: v.string(),\n});\n\nexport const inspectAuthenticatedDownSchema = inspectBaseDownSchema.extend({\n op: v.literal('authenticated'),\n value: v.boolean(),\n});\n\nexport type InspectAuthenticatedDown = v.Infer<\n typeof inspectAuthenticatedDownSchema\n>;\n\nexport const inspectAnalyzeQueryDownSchema = inspectBaseDownSchema.extend({\n op: v.literal('analyze-query'),\n value: analyzeQueryResultSchema,\n});\n\nexport type InspectAnalyzeQueryDown = v.Infer<\n typeof inspectAnalyzeQueryDownSchema\n>;\n\nexport const inspectErrorDownSchema = inspectBaseDownSchema.extend({\n op: v.literal('error'),\n value: v.string(),\n});\n\nexport type InspectErrorDown = v.Infer<typeof inspectErrorDownSchema>;\n\nexport const inspectDownBodySchema = v.union(\n inspectQueriesDownSchema,\n inspectMetricsDownSchema,\n inspectVersionDownSchema,\n inspectAuthenticatedDownSchema,\n inspectAnalyzeQueryDownSchema,\n inspectErrorDownSchema,\n);\n\nexport const inspectDownMessageSchema = v.tuple([\n v.literal('inspect'),\n inspectDownBodySchema,\n]);\n\nexport type InspectDownMessage = v.Infer<typeof inspectDownMessageSchema>;\n\nexport type InspectDownBody = v.Infer<typeof inspectDownBodySchema>;\n"],"mappings":";;;;;;AAMA,IAAM,sBAAsBA,eAAE,OAAO;CACnC,gCAAgC;CAChC,uBAAuB;AACzB,CAAC;;;;;;;AAUD,IAAM,2BAA2BA,eAAE,OAAO;CACxC,6BAA6BA,eAAE,OAAO,CAAC,CAAC,SAAS;CACjD,uBAAuB;AACzB,CAAC;AAID,IAAM,wBAAwBA,eAAE,OAAO;CACrC,UAAUA,eAAE,OAAO;CACnB,SAASA,eAAE,OAAO;CAGlB,KAAK,UAAU,SAAS;CAExB,MAAMA,eAAE,OAAO,CAAC,CAAC,SAAS;CAE1B,MAAMC,cAAgB,UAAU,CAAC,CAAC,SAAS;CAC3C,KAAKD,eAAE,QAAQ;CACf,SAASA,eAAE,QAAQ;CACnB,KAAKA,eAAE,OAAO;CACd,eAAeA,eAAE,OAAO,CAAC,CAAC,SAAS;CACnC,UAAUA,eAAE,OAAO;CACnB,SAAS,yBAAyB,SAAS,CAAC,CAAC,SAAS;AACxD,CAAC;AAID,IAAM,wBAAwBA,eAAE,OAAO,EACrC,IAAIA,eAAE,OAAO,EACf,CAAC;AAED,IAAa,2BAA2B,sBAAsB,OAAO;CACnE,IAAIA,eAAE,QAAQ,SAAS;CACvB,OAAOA,eAAE,MAAM,qBAAqB;AACtC,CAAC;AAID,IAAa,2BAA2B,sBAAsB,OAAO;CACnE,IAAIA,eAAE,QAAQ,SAAS;CACvB,OAAO;AACT,CAAC;AAID,IAAa,2BAA2B,sBAAsB,OAAO;CACnE,IAAIA,eAAE,QAAQ,SAAS;CACvB,OAAOA,eAAE,OAAO;AAClB,CAAC;AAED,IAAa,iCAAiC,sBAAsB,OAAO;CACzE,IAAIA,eAAE,QAAQ,eAAe;CAC7B,OAAOA,eAAE,QAAQ;AACnB,CAAC;AAMD,IAAa,gCAAgC,sBAAsB,OAAO;CACxE,IAAIA,eAAE,QAAQ,eAAe;CAC7B,OAAO;AACT,CAAC;AAMD,IAAa,yBAAyB,sBAAsB,OAAO;CACjE,IAAIA,eAAE,QAAQ,OAAO;CACrB,OAAOA,eAAE,OAAO;AAClB,CAAC;AAID,IAAa,wBAAwBA,eAAE,MACrC,0BACA,0BACA,0BACA,gCACA,+BACA,sBACF;AAEA,IAAa,2BAA2BA,eAAE,MAAM,CAC9CA,eAAE,QAAQ,SAAS,GACnB,qBACF,CAAC"}
@@ -47,6 +47,6 @@ var unparsedInspectUpBodySchema = taggedObjectUnion("op", [
47
47
  ], { open: true });
48
48
  var unparsedInspectUpMessageSchema = valita_exports.tuple([valita_exports.literal("inspect"), unparsedInspectUpBodySchema]);
49
49
  //#endregion
50
- export { inspectAnalyzeQueryUpSchema, inspectUpMessageSchema, unparsedInspectUpBodySchema, unparsedInspectUpMessageSchema };
50
+ export { inspectAnalyzeQueryUpSchema, inspectAuthenticateUpSchema, inspectUpMessageSchema, unparsedInspectUpBodySchema, unparsedInspectUpMessageSchema };
51
51
 
52
52
  //# sourceMappingURL=inspect-up.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"inspect-up.js","names":[],"sources":["../../../../zero-protocol/src/inspect-up.ts"],"sourcesContent":["import {jsonSchema} from '../../shared/src/json-schema.ts';\nimport * as v from '../../shared/src/valita.ts';\nimport {strictASTSchema} from './ast.ts';\n\nconst inspectUpBase = v.object({\n id: v.string(),\n});\n\nconst inspectQueriesUpBodySchema = inspectUpBase.extend({\n op: v.literal('queries'),\n clientID: v.string().optional(),\n});\n\nexport type InspectQueriesUpBody = v.Infer<typeof inspectQueriesUpBodySchema>;\n\nconst inspectMetricsUpSchema = inspectUpBase.extend({\n op: v.literal('metrics'),\n});\n\nexport type InspectMetricsUpBody = v.Infer<typeof inspectMetricsUpSchema>;\n\nconst inspectVersionUpSchema = inspectUpBase.extend({\n op: v.literal('version'),\n});\n\nexport type InspectVersionUpBody = v.Infer<typeof inspectVersionUpSchema>;\n\nexport const inspectAuthenticateUpSchema = inspectUpBase.extend({\n op: v.literal('authenticate'),\n value: v.string(),\n});\n\nexport type InspectAuthenticateUpBody = v.Infer<\n typeof inspectAuthenticateUpSchema\n>;\n\nconst analyzeQueryOptionsSchema = v.object({\n vendedRows: v.boolean().optional(),\n syncedRows: v.boolean().optional(),\n joinPlans: v.boolean().optional(),\n});\n\nexport type AnalyzeQueryOptions = v.Infer<typeof analyzeQueryOptionsSchema>;\n\nexport const inspectAnalyzeQueryUpSchema = inspectUpBase.extend({\n op: v.literal('analyze-query'),\n /** @deprecated Use {@link ast} instead */\n value: strictASTSchema.optional(),\n options: analyzeQueryOptionsSchema.optional(),\n ast: strictASTSchema.optional(),\n name: v.string().optional(),\n args: v.readonlyArray(jsonSchema).optional(),\n});\n\nconst unparsedInspectAnalyzeQueryUpSchema = inspectUpBase.extend({\n op: v.literal('analyze-query'),\n /** @deprecated Use {@link ast} instead */\n value: v.unknown().optional(),\n options: analyzeQueryOptionsSchema.optional(),\n ast: v.unknown().optional(),\n name: v.string().optional(),\n args: v.readonlyArray(jsonSchema).optional(),\n});\n\nexport type InspectAnalyzeQueryUpBody = v.Infer<\n typeof inspectAnalyzeQueryUpSchema\n>;\n\nconst inspectUpBodySchema = v.union(\n inspectQueriesUpBodySchema,\n inspectMetricsUpSchema,\n inspectVersionUpSchema,\n inspectAuthenticateUpSchema,\n inspectAnalyzeQueryUpSchema,\n);\n\nexport const inspectUpMessageSchema = v.tuple([\n v.literal('inspect'),\n inspectUpBodySchema,\n]);\n\n// zero-cache answers an op from a newer client with an error for that request\n// instead of closing the connection.\nexport const unparsedInspectUpBodySchema = v.taggedObjectUnion(\n 'op',\n [\n inspectQueriesUpBodySchema,\n inspectMetricsUpSchema,\n inspectVersionUpSchema,\n inspectAuthenticateUpSchema,\n unparsedInspectAnalyzeQueryUpSchema,\n ],\n {open: true},\n);\n\nexport const unparsedInspectUpMessageSchema = v.tuple([\n v.literal('inspect'),\n unparsedInspectUpBodySchema,\n]);\n\nexport type InspectUpMessage = v.Infer<typeof inspectUpMessageSchema>;\n\nexport type InspectUpBody = v.Infer<typeof inspectUpBodySchema>;\n\nexport type UnparsedInspectUpMessage = v.Infer<\n typeof unparsedInspectUpMessageSchema\n>;\n\n/** An inspect request with an op this build knows. */\nexport type UnparsedInspectUpBody = Exclude<\n v.Infer<typeof unparsedInspectUpBodySchema>,\n v.UnrecognizedObject<'op'>\n>;\n"],"mappings":";;;;AAIA,IAAM,gBAAgB,eAAE,OAAO,EAC7B,IAAI,eAAE,OAAO,EACf,CAAC;AAED,IAAM,6BAA6B,cAAc,OAAO;CACtD,IAAI,eAAE,QAAQ,SAAS;CACvB,UAAU,eAAE,OAAO,EAAE,SAAS;AAChC,CAAC;AAID,IAAM,yBAAyB,cAAc,OAAO,EAClD,IAAI,eAAE,QAAQ,SAAS,EACzB,CAAC;AAID,IAAM,yBAAyB,cAAc,OAAO,EAClD,IAAI,eAAE,QAAQ,SAAS,EACzB,CAAC;AAID,IAAa,8BAA8B,cAAc,OAAO;CAC9D,IAAI,eAAE,QAAQ,cAAc;CAC5B,OAAO,eAAE,OAAO;AAClB,CAAC;AAMD,IAAM,4BAA4B,eAAE,OAAO;CACzC,YAAY,eAAE,QAAQ,EAAE,SAAS;CACjC,YAAY,eAAE,QAAQ,EAAE,SAAS;CACjC,WAAW,eAAE,QAAQ,EAAE,SAAS;AAClC,CAAC;AAID,IAAa,8BAA8B,cAAc,OAAO;CAC9D,IAAI,eAAE,QAAQ,eAAe;;CAE7B,OAAO,gBAAgB,SAAS;CAChC,SAAS,0BAA0B,SAAS;CAC5C,KAAK,gBAAgB,SAAS;CAC9B,MAAM,eAAE,OAAO,EAAE,SAAS;CAC1B,MAAM,cAAgB,UAAU,EAAE,SAAS;AAC7C,CAAC;AAED,IAAM,sCAAsC,cAAc,OAAO;CAC/D,IAAI,eAAE,QAAQ,eAAe;;CAE7B,OAAO,eAAE,QAAQ,EAAE,SAAS;CAC5B,SAAS,0BAA0B,SAAS;CAC5C,KAAK,eAAE,QAAQ,EAAE,SAAS;CAC1B,MAAM,eAAE,OAAO,EAAE,SAAS;CAC1B,MAAM,cAAgB,UAAU,EAAE,SAAS;AAC7C,CAAC;AAMD,IAAM,sBAAsB,eAAE,MAC5B,4BACA,wBACA,wBACA,6BACA,2BACF;AAEA,IAAa,yBAAyB,eAAE,MAAM,CAC5C,eAAE,QAAQ,SAAS,GACnB,mBACF,CAAC;AAID,IAAa,8BAA8B,kBACzC,MACA;CACE;CACA;CACA;CACA;CACA;AACF,GACA,EAAC,MAAM,KAAI,CACb;AAEA,IAAa,iCAAiC,eAAE,MAAM,CACpD,eAAE,QAAQ,SAAS,GACnB,2BACF,CAAC"}
1
+ {"version":3,"file":"inspect-up.js","names":["v","v.readonlyArray","v.taggedObjectUnion"],"sources":["../../../../zero-protocol/src/inspect-up.ts"],"sourcesContent":["import {jsonSchema} from '../../shared/src/json-schema.ts';\nimport * as v from '../../shared/src/valita.ts';\nimport {strictASTSchema} from './ast.ts';\n\nconst inspectUpBase = v.object({\n id: v.string(),\n});\n\nconst inspectQueriesUpBodySchema = inspectUpBase.extend({\n op: v.literal('queries'),\n clientID: v.string().optional(),\n});\n\nexport type InspectQueriesUpBody = v.Infer<typeof inspectQueriesUpBodySchema>;\n\nconst inspectMetricsUpSchema = inspectUpBase.extend({\n op: v.literal('metrics'),\n});\n\nexport type InspectMetricsUpBody = v.Infer<typeof inspectMetricsUpSchema>;\n\nconst inspectVersionUpSchema = inspectUpBase.extend({\n op: v.literal('version'),\n});\n\nexport type InspectVersionUpBody = v.Infer<typeof inspectVersionUpSchema>;\n\nexport const inspectAuthenticateUpSchema = inspectUpBase.extend({\n op: v.literal('authenticate'),\n value: v.string(),\n});\n\nexport type InspectAuthenticateUpBody = v.Infer<\n typeof inspectAuthenticateUpSchema\n>;\n\nconst analyzeQueryOptionsSchema = v.object({\n vendedRows: v.boolean().optional(),\n syncedRows: v.boolean().optional(),\n joinPlans: v.boolean().optional(),\n});\n\nexport type AnalyzeQueryOptions = v.Infer<typeof analyzeQueryOptionsSchema>;\n\nexport const inspectAnalyzeQueryUpSchema = inspectUpBase.extend({\n op: v.literal('analyze-query'),\n /** @deprecated Use {@link ast} instead */\n value: strictASTSchema.optional(),\n options: analyzeQueryOptionsSchema.optional(),\n ast: strictASTSchema.optional(),\n name: v.string().optional(),\n args: v.readonlyArray(jsonSchema).optional(),\n});\n\nconst unparsedInspectAnalyzeQueryUpSchema = inspectUpBase.extend({\n op: v.literal('analyze-query'),\n /** @deprecated Use {@link ast} instead */\n value: v.unknown().optional(),\n options: analyzeQueryOptionsSchema.optional(),\n ast: v.unknown().optional(),\n name: v.string().optional(),\n args: v.readonlyArray(jsonSchema).optional(),\n});\n\nexport type InspectAnalyzeQueryUpBody = v.Infer<\n typeof inspectAnalyzeQueryUpSchema\n>;\n\nconst inspectUpBodySchema = v.union(\n inspectQueriesUpBodySchema,\n inspectMetricsUpSchema,\n inspectVersionUpSchema,\n inspectAuthenticateUpSchema,\n inspectAnalyzeQueryUpSchema,\n);\n\nexport const inspectUpMessageSchema = v.tuple([\n v.literal('inspect'),\n inspectUpBodySchema,\n]);\n\n// zero-cache answers an op from a newer client with an error for that request\n// instead of closing the connection.\nexport const unparsedInspectUpBodySchema = v.taggedObjectUnion(\n 'op',\n [\n inspectQueriesUpBodySchema,\n inspectMetricsUpSchema,\n inspectVersionUpSchema,\n inspectAuthenticateUpSchema,\n unparsedInspectAnalyzeQueryUpSchema,\n ],\n {open: true},\n);\n\nexport const unparsedInspectUpMessageSchema = v.tuple([\n v.literal('inspect'),\n unparsedInspectUpBodySchema,\n]);\n\nexport type InspectUpMessage = v.Infer<typeof inspectUpMessageSchema>;\n\nexport type InspectUpBody = v.Infer<typeof inspectUpBodySchema>;\n\nexport type UnparsedInspectUpMessage = v.Infer<\n typeof unparsedInspectUpMessageSchema\n>;\n\n/** An inspect request with an op this build knows. */\nexport type UnparsedInspectUpBody = Exclude<\n v.Infer<typeof unparsedInspectUpBodySchema>,\n v.UnrecognizedObject<'op'>\n>;\n"],"mappings":";;;;AAIA,IAAM,gBAAgBA,eAAE,OAAO,EAC7B,IAAIA,eAAE,OAAO,EACf,CAAC;AAED,IAAM,6BAA6B,cAAc,OAAO;CACtD,IAAIA,eAAE,QAAQ,SAAS;CACvB,UAAUA,eAAE,OAAO,CAAC,CAAC,SAAS;AAChC,CAAC;AAID,IAAM,yBAAyB,cAAc,OAAO,EAClD,IAAIA,eAAE,QAAQ,SAAS,EACzB,CAAC;AAID,IAAM,yBAAyB,cAAc,OAAO,EAClD,IAAIA,eAAE,QAAQ,SAAS,EACzB,CAAC;AAID,IAAa,8BAA8B,cAAc,OAAO;CAC9D,IAAIA,eAAE,QAAQ,cAAc;CAC5B,OAAOA,eAAE,OAAO;AAClB,CAAC;AAMD,IAAM,4BAA4BA,eAAE,OAAO;CACzC,YAAYA,eAAE,QAAQ,CAAC,CAAC,SAAS;CACjC,YAAYA,eAAE,QAAQ,CAAC,CAAC,SAAS;CACjC,WAAWA,eAAE,QAAQ,CAAC,CAAC,SAAS;AAClC,CAAC;AAID,IAAa,8BAA8B,cAAc,OAAO;CAC9D,IAAIA,eAAE,QAAQ,eAAe;;CAE7B,OAAO,gBAAgB,SAAS;CAChC,SAAS,0BAA0B,SAAS;CAC5C,KAAK,gBAAgB,SAAS;CAC9B,MAAMA,eAAE,OAAO,CAAC,CAAC,SAAS;CAC1B,MAAMC,cAAgB,UAAU,CAAC,CAAC,SAAS;AAC7C,CAAC;AAED,IAAM,sCAAsC,cAAc,OAAO;CAC/D,IAAID,eAAE,QAAQ,eAAe;;CAE7B,OAAOA,eAAE,QAAQ,CAAC,CAAC,SAAS;CAC5B,SAAS,0BAA0B,SAAS;CAC5C,KAAKA,eAAE,QAAQ,CAAC,CAAC,SAAS;CAC1B,MAAMA,eAAE,OAAO,CAAC,CAAC,SAAS;CAC1B,MAAMC,cAAgB,UAAU,CAAC,CAAC,SAAS;AAC7C,CAAC;AAMD,IAAM,sBAAsBD,eAAE,MAC5B,4BACA,wBACA,wBACA,6BACA,2BACF;AAEA,IAAa,yBAAyBA,eAAE,MAAM,CAC5CA,eAAE,QAAQ,SAAS,GACnB,mBACF,CAAC;AAID,IAAa,8BAA8BE,kBACzC,MACA;CACE;CACA;CACA;CACA;CACA;AACF,GACA,EAAC,MAAM,KAAI,CACb;AAEA,IAAa,iCAAiCF,eAAE,MAAM,CACpDA,eAAE,QAAQ,SAAS,GACnB,2BACF,CAAC"}
@@ -19,6 +19,6 @@ var mutateParamsSchema = valita_exports.object({
19
19
  appID: valita_exports.string()
20
20
  });
21
21
  //#endregion
22
- export { mutateParamsSchema, mutateResponseSchema };
22
+ export { mutateParamsSchema, mutateResponseSchema, mutateSuccessSchema };
23
23
 
24
24
  //# sourceMappingURL=mutate-server.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"mutate-server.js","names":[],"sources":["../../../../zero-protocol/src/mutate-server.ts"],"sourcesContent":["import * as v from '../../shared/src/valita.ts';\nimport {pushFailedBodySchema} from './error.ts';\nimport {mutationResponseSchema} from './mutation.ts';\nimport {pushErrorSchema} from './push.ts';\n\nconst legacyPushSuccessSchema = v.object({\n mutations: v.array(mutationResponseSchema),\n});\n\nconst legacyPushResponseSchema = v.union(\n legacyPushSuccessSchema,\n pushErrorSchema,\n pushFailedBodySchema,\n);\n\nexport const mutateSuccessSchema = v.object({\n kind: v.literal('MutateResponse'),\n userID: v.string().nullable().optional(),\n mutations: v.array(mutationResponseSchema),\n});\nexport type MutateSuccess = v.Infer<typeof mutateSuccessSchema>;\n\nexport const mutateResponseSchema = v.union(\n mutateSuccessSchema,\n pushFailedBodySchema,\n // for backwards compatibility\n legacyPushResponseSchema,\n);\nexport type MutateResponse = v.Infer<typeof mutateResponseSchema>;\n\n/**\n * The schema for the querystring parameters of the custom mutate endpoint.\n */\nexport const mutateParamsSchema = v.object({\n schema: v.string(),\n appID: v.string(),\n});\n"],"mappings":";;;;;AAKA,IAAM,0BAA0B,eAAE,OAAO,EACvC,WAAW,eAAE,MAAM,sBAAsB,EAC3C,CAAC;AAED,IAAM,2BAA2B,eAAE,MACjC,yBACA,iBACA,oBACF;AAEA,IAAa,sBAAsB,eAAE,OAAO;CAC1C,MAAM,eAAE,QAAQ,gBAAgB;CAChC,QAAQ,eAAE,OAAO,EAAE,SAAS,EAAE,SAAS;CACvC,WAAW,eAAE,MAAM,sBAAsB;AAC3C,CAAC;AAGD,IAAa,uBAAuB,eAAE,MACpC,qBACA,sBAEA,wBACF;;;;AAMA,IAAa,qBAAqB,eAAE,OAAO;CACzC,QAAQ,eAAE,OAAO;CACjB,OAAO,eAAE,OAAO;AAClB,CAAC"}
1
+ {"version":3,"file":"mutate-server.js","names":["v"],"sources":["../../../../zero-protocol/src/mutate-server.ts"],"sourcesContent":["import * as v from '../../shared/src/valita.ts';\nimport {pushFailedBodySchema} from './error.ts';\nimport {mutationResponseSchema} from './mutation.ts';\nimport {pushErrorSchema} from './push.ts';\n\nconst legacyPushSuccessSchema = v.object({\n mutations: v.array(mutationResponseSchema),\n});\n\nconst legacyPushResponseSchema = v.union(\n legacyPushSuccessSchema,\n pushErrorSchema,\n pushFailedBodySchema,\n);\n\nexport const mutateSuccessSchema = v.object({\n kind: v.literal('MutateResponse'),\n userID: v.string().nullable().optional(),\n mutations: v.array(mutationResponseSchema),\n});\nexport type MutateSuccess = v.Infer<typeof mutateSuccessSchema>;\n\nexport const mutateResponseSchema = v.union(\n mutateSuccessSchema,\n pushFailedBodySchema,\n // for backwards compatibility\n legacyPushResponseSchema,\n);\nexport type MutateResponse = v.Infer<typeof mutateResponseSchema>;\n\n/**\n * The schema for the querystring parameters of the custom mutate endpoint.\n */\nexport const mutateParamsSchema = v.object({\n schema: v.string(),\n appID: v.string(),\n});\n"],"mappings":";;;;;AAKA,IAAM,0BAA0BA,eAAE,OAAO,EACvC,WAAWA,eAAE,MAAM,sBAAsB,EAC3C,CAAC;AAED,IAAM,2BAA2BA,eAAE,MACjC,yBACA,iBACA,oBACF;AAEA,IAAa,sBAAsBA,eAAE,OAAO;CAC1C,MAAMA,eAAE,QAAQ,gBAAgB;CAChC,QAAQA,eAAE,OAAO,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CACvC,WAAWA,eAAE,MAAM,sBAAsB;AAC3C,CAAC;AAGD,IAAa,uBAAuBA,eAAE,MACpC,qBACA,sBAEA,wBACF;;;;AAMA,IAAa,qBAAqBA,eAAE,OAAO;CACzC,QAAQA,eAAE,OAAO;CACjB,OAAOA,eAAE,OAAO;AAClB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"mutation-id.js","names":[],"sources":["../../../../zero-protocol/src/mutation-id.ts"],"sourcesContent":["import * as v from '../../shared/src/valita.ts';\n\nexport const mutationIDSchema = v.object({\n id: v.number(),\n clientID: v.string(),\n});\n\nexport type MutationID = v.Infer<typeof mutationIDSchema>;\n"],"mappings":";;AAEA,IAAa,mBAAmB,eAAE,OAAO;CACvC,IAAI,eAAE,OAAO;CACb,UAAU,eAAE,OAAO;AACrB,CAAC"}
1
+ {"version":3,"file":"mutation-id.js","names":["v"],"sources":["../../../../zero-protocol/src/mutation-id.ts"],"sourcesContent":["import * as v from '../../shared/src/valita.ts';\n\nexport const mutationIDSchema = v.object({\n id: v.number(),\n clientID: v.string(),\n});\n\nexport type MutationID = v.Infer<typeof mutationIDSchema>;\n"],"mappings":";;AAEA,IAAa,mBAAmBA,eAAE,OAAO;CACvC,IAAIA,eAAE,OAAO;CACb,UAAUA,eAAE,OAAO;AACrB,CAAC"}
@@ -107,6 +107,6 @@ function mapCRUD(arg, map) {
107
107
  })) };
108
108
  }
109
109
  //#endregion
110
- export { CLEANUP_RESULTS_MUTATION_NAME, CRUD_MUTATION_NAME, cleanupResultsArgSchema, mapCRUD, mutationResponseSchema, mutationResultSchema, mutationSchema };
110
+ export { CLEANUP_RESULTS_MUTATION_NAME, CRUD_MUTATION_NAME, cleanupResultsArgSchema, crudMutationSchema, customMutationSchema, mapCRUD, mutationResponseSchema, mutationResultSchema, mutationSchema };
111
111
 
112
112
  //# sourceMappingURL=mutation.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"mutation.js","names":[],"sources":["../../../../zero-protocol/src/mutation.ts"],"sourcesContent":["import {jsonSchema} from '../../shared/src/json-schema.ts';\nimport * as v from '../../shared/src/valita.ts';\nimport type {NameMapper} from '../../zero-types/src/name-mapper.ts';\nimport {rowSchema} from './data.ts';\nimport {mutationIDSchema} from './mutation-id.ts';\nimport * as MutationType from './mutation-type-enum.ts';\nimport {primaryKeySchema, primaryKeyValueRecordSchema} from './primary-key.ts';\n\n// NOTE! If you change this name you must also change the\n// string in `replicache-impl.ts` But CRUD mutators are being\n// deleted soon so this should not happen.\nexport const CRUD_MUTATION_NAME = '_zero_crud';\n\n// Internal mutation name for cleaning up mutation results.\n// This mutation is sent from zero-cache to zero-server to delete\n// acknowledged mutation results from the upstream database.\nexport const CLEANUP_RESULTS_MUTATION_NAME = '_zero_cleanupResults';\n\nexport const cleanupResultsArgSchema = v.union(\n // Legacy format (no type field) - treat as single\n v.object({\n clientGroupID: v.string(),\n clientID: v.string(),\n upToMutationID: v.number(),\n }),\n // Explicit single: delete up to a specific mutation ID for one client\n v.object({\n type: v.literal('single'),\n clientGroupID: v.string(),\n clientID: v.string(),\n upToMutationID: v.number(),\n }),\n // Bulk: delete all mutations for multiple clients\n v.object({\n type: v.literal('bulk'),\n clientGroupID: v.string(),\n // oxlint-disable-next-line e18e/prefer-spread-syntax\n clientIDs: v.tuple([v.string()]).concat(v.array(v.string())),\n }),\n);\n\n/**\n * Inserts if entity with id does not already exist.\n */\nconst insertOpSchema = v.object({\n op: v.literal('insert'),\n tableName: v.string(),\n primaryKey: primaryKeySchema,\n value: rowSchema,\n});\n\n/**\n * Upsert semantics. Inserts if entity with id does not already exist,\n * otherwise updates existing entity with id.\n */\nconst upsertOpSchema = v.object({\n op: v.literal('upsert'),\n tableName: v.string(),\n primaryKey: primaryKeySchema,\n value: rowSchema,\n});\n\n/**\n * Updates if entity with id exists, otherwise does nothing.\n */\nconst updateOpSchema = v.object({\n op: v.literal('update'),\n tableName: v.string(),\n primaryKey: primaryKeySchema,\n // Partial value with at least the primary key fields\n value: rowSchema,\n});\n\n/**\n * Deletes entity with id if it exists, otherwise does nothing.\n */\nconst deleteOpSchema = v.object({\n op: v.literal('delete'),\n tableName: v.string(),\n primaryKey: primaryKeySchema,\n // Partial value representing the primary key\n value: primaryKeyValueRecordSchema,\n});\n\nconst crudOpSchema = v.union(\n insertOpSchema,\n upsertOpSchema,\n updateOpSchema,\n deleteOpSchema,\n);\n\nconst crudArgSchema = v.object({\n ops: v.array(crudOpSchema),\n});\n\nconst crudArgsSchema = v.tuple([crudArgSchema]);\n\nexport const crudMutationSchema = v.object({\n type: v.literal(MutationType.CRUD),\n id: v.number(),\n clientID: v.string(),\n name: v.literal(CRUD_MUTATION_NAME),\n args: crudArgsSchema,\n timestamp: v.number(),\n});\n\nexport const customMutationSchema = v.object({\n type: v.literal(MutationType.Custom),\n id: v.number(),\n clientID: v.string(),\n name: v.string(),\n args: v.array(jsonSchema),\n timestamp: v.number(),\n});\n\nexport const mutationSchema = v.union(crudMutationSchema, customMutationSchema);\n\nconst appErrorSchema = v.object({\n error: v.literal('app'),\n // The user can return any additional data here\n message: v.string().optional(),\n details: jsonSchema.optional(),\n});\nconst zeroErrorSchema = v.object({\n error: v.union(\n /** @deprecated push oooMutation errors are now represented as ['error', { ... }] messages */\n v.literal('oooMutation'),\n v.literal('alreadyProcessed'),\n ),\n details: jsonSchema.optional(),\n});\n\nconst mutationOkSchema = v.object({\n // The user can return any additional data here\n data: jsonSchema.optional(),\n});\nconst mutationErrorSchema = v.union(appErrorSchema, zeroErrorSchema);\n\nexport const mutationResultSchema = v.union(\n mutationOkSchema,\n mutationErrorSchema,\n);\n\nexport const mutationResponseSchema = v.object({\n id: mutationIDSchema,\n result: mutationResultSchema,\n});\n\nexport type InsertOp = v.Infer<typeof insertOpSchema>;\nexport type UpsertOp = v.Infer<typeof upsertOpSchema>;\nexport type UpdateOp = v.Infer<typeof updateOpSchema>;\nexport type DeleteOp = v.Infer<typeof deleteOpSchema>;\nexport type CRUDOp = v.Infer<typeof crudOpSchema>;\nexport type CRUDOpKind = CRUDOp['op'];\nexport type CRUDMutationArg = v.Infer<typeof crudArgSchema>;\nexport type CRUDMutation = v.Infer<typeof crudMutationSchema>;\nexport type CustomMutation = v.Infer<typeof customMutationSchema>;\nexport type Mutation = v.Infer<typeof mutationSchema>;\n\nexport type MutationResponse = v.Infer<typeof mutationResponseSchema>;\nexport type MutationOk = v.Infer<typeof mutationOkSchema>;\nexport type MutationError = v.Infer<typeof mutationErrorSchema>;\nexport type MutationResult = v.Infer<typeof mutationResultSchema>;\nexport type CleanupResultsArg = v.Infer<typeof cleanupResultsArgSchema>;\n\nexport function mapCRUD(\n arg: CRUDMutationArg,\n map: NameMapper,\n): CRUDMutationArg {\n return {\n ops: arg.ops.map(\n ({op, tableName, primaryKey, value}) =>\n ({\n op,\n tableName: map.tableName(tableName),\n primaryKey: map.columns(tableName, primaryKey),\n value: map.row(tableName, value),\n // The cast is necessary because ts objects to the `value` field\n // for \"delete\" ops being different.\n }) as unknown as CRUDOp,\n ),\n };\n}\n"],"mappings":";;;;;;;AAWA,IAAa,qBAAqB;AAKlC,IAAa,gCAAgC;AAE7C,IAAa,0BAA0B,eAAE,MAEvC,eAAE,OAAO;CACP,eAAe,eAAE,OAAO;CACxB,UAAU,eAAE,OAAO;CACnB,gBAAgB,eAAE,OAAO;AAC3B,CAAC,GAED,eAAE,OAAO;CACP,MAAM,eAAE,QAAQ,QAAQ;CACxB,eAAe,eAAE,OAAO;CACxB,UAAU,eAAE,OAAO;CACnB,gBAAgB,eAAE,OAAO;AAC3B,CAAC,GAED,eAAE,OAAO;CACP,MAAM,eAAE,QAAQ,MAAM;CACtB,eAAe,eAAE,OAAO;CAExB,WAAW,eAAE,MAAM,CAAC,eAAE,OAAO,CAAC,CAAC,EAAE,OAAO,eAAE,MAAM,eAAE,OAAO,CAAC,CAAC;AAC7D,CAAC,CACH;;;;AAKA,IAAM,iBAAiB,eAAE,OAAO;CAC9B,IAAI,eAAE,QAAQ,QAAQ;CACtB,WAAW,eAAE,OAAO;CACpB,YAAY;CACZ,OAAO;AACT,CAAC;;;;;AAMD,IAAM,iBAAiB,eAAE,OAAO;CAC9B,IAAI,eAAE,QAAQ,QAAQ;CACtB,WAAW,eAAE,OAAO;CACpB,YAAY;CACZ,OAAO;AACT,CAAC;;;;AAKD,IAAM,iBAAiB,eAAE,OAAO;CAC9B,IAAI,eAAE,QAAQ,QAAQ;CACtB,WAAW,eAAE,OAAO;CACpB,YAAY;CAEZ,OAAO;AACT,CAAC;;;;AAKD,IAAM,iBAAiB,eAAE,OAAO;CAC9B,IAAI,eAAE,QAAQ,QAAQ;CACtB,WAAW,eAAE,OAAO;CACpB,YAAY;CAEZ,OAAO;AACT,CAAC;AAED,IAAM,eAAe,eAAE,MACrB,gBACA,gBACA,gBACA,cACF;AAEA,IAAM,gBAAgB,eAAE,OAAO,EAC7B,KAAK,eAAE,MAAM,YAAY,EAC3B,CAAC;AAED,IAAM,iBAAiB,eAAE,MAAM,CAAC,aAAa,CAAC;AAE9C,IAAa,qBAAqB,eAAE,OAAO;CACzC,MAAM,eAAE,QAAQ,IAAiB;CACjC,IAAI,eAAE,OAAO;CACb,UAAU,eAAE,OAAO;CACnB,MAAM,eAAE,QAAQ,kBAAkB;CAClC,MAAM;CACN,WAAW,eAAE,OAAO;AACtB,CAAC;AAED,IAAa,uBAAuB,eAAE,OAAO;CAC3C,MAAM,eAAE,QAAQ,MAAmB;CACnC,IAAI,eAAE,OAAO;CACb,UAAU,eAAE,OAAO;CACnB,MAAM,eAAE,OAAO;CACf,MAAM,eAAE,MAAM,UAAU;CACxB,WAAW,eAAE,OAAO;AACtB,CAAC;AAED,IAAa,iBAAiB,eAAE,MAAM,oBAAoB,oBAAoB;AAE9E,IAAM,iBAAiB,eAAE,OAAO;CAC9B,OAAO,eAAE,QAAQ,KAAK;CAEtB,SAAS,eAAE,OAAO,EAAE,SAAS;CAC7B,SAAS,WAAW,SAAS;AAC/B,CAAC;AACD,IAAM,kBAAkB,eAAE,OAAO;CAC/B,OAAO,eAAE;;EAEP,eAAE,QAAQ,aAAa;EACvB,eAAE,QAAQ,kBAAkB;CAC9B;CACA,SAAS,WAAW,SAAS;AAC/B,CAAC;AAED,IAAM,mBAAmB,eAAE,OAAO,EAEhC,MAAM,WAAW,SAAS,EAC5B,CAAC;AACD,IAAM,sBAAsB,eAAE,MAAM,gBAAgB,eAAe;AAEnE,IAAa,uBAAuB,eAAE,MACpC,kBACA,mBACF;AAEA,IAAa,yBAAyB,eAAE,OAAO;CAC7C,IAAI;CACJ,QAAQ;AACV,CAAC;AAmBD,SAAgB,QACd,KACA,KACiB;CACjB,OAAO,EACL,KAAK,IAAI,IAAI,KACV,EAAC,IAAI,WAAW,YAAY,aAC1B;EACC;EACA,WAAW,IAAI,UAAU,SAAS;EAClC,YAAY,IAAI,QAAQ,WAAW,UAAU;EAC7C,OAAO,IAAI,IAAI,WAAW,KAAK;CAGjC,EACJ,EACF;AACF"}
1
+ {"version":3,"file":"mutation.js","names":["v","MutationType.CRUD","MutationType.Custom"],"sources":["../../../../zero-protocol/src/mutation.ts"],"sourcesContent":["import {jsonSchema} from '../../shared/src/json-schema.ts';\nimport * as v from '../../shared/src/valita.ts';\nimport type {NameMapper} from '../../zero-types/src/name-mapper.ts';\nimport {rowSchema} from './data.ts';\nimport {mutationIDSchema} from './mutation-id.ts';\nimport * as MutationType from './mutation-type-enum.ts';\nimport {primaryKeySchema, primaryKeyValueRecordSchema} from './primary-key.ts';\n\n// NOTE! If you change this name you must also change the\n// string in `replicache-impl.ts` But CRUD mutators are being\n// deleted soon so this should not happen.\nexport const CRUD_MUTATION_NAME = '_zero_crud';\n\n// Internal mutation name for cleaning up mutation results.\n// This mutation is sent from zero-cache to zero-server to delete\n// acknowledged mutation results from the upstream database.\nexport const CLEANUP_RESULTS_MUTATION_NAME = '_zero_cleanupResults';\n\nexport const cleanupResultsArgSchema = v.union(\n // Legacy format (no type field) - treat as single\n v.object({\n clientGroupID: v.string(),\n clientID: v.string(),\n upToMutationID: v.number(),\n }),\n // Explicit single: delete up to a specific mutation ID for one client\n v.object({\n type: v.literal('single'),\n clientGroupID: v.string(),\n clientID: v.string(),\n upToMutationID: v.number(),\n }),\n // Bulk: delete all mutations for multiple clients\n v.object({\n type: v.literal('bulk'),\n clientGroupID: v.string(),\n // oxlint-disable-next-line e18e/prefer-spread-syntax\n clientIDs: v.tuple([v.string()]).concat(v.array(v.string())),\n }),\n);\n\n/**\n * Inserts if entity with id does not already exist.\n */\nconst insertOpSchema = v.object({\n op: v.literal('insert'),\n tableName: v.string(),\n primaryKey: primaryKeySchema,\n value: rowSchema,\n});\n\n/**\n * Upsert semantics. Inserts if entity with id does not already exist,\n * otherwise updates existing entity with id.\n */\nconst upsertOpSchema = v.object({\n op: v.literal('upsert'),\n tableName: v.string(),\n primaryKey: primaryKeySchema,\n value: rowSchema,\n});\n\n/**\n * Updates if entity with id exists, otherwise does nothing.\n */\nconst updateOpSchema = v.object({\n op: v.literal('update'),\n tableName: v.string(),\n primaryKey: primaryKeySchema,\n // Partial value with at least the primary key fields\n value: rowSchema,\n});\n\n/**\n * Deletes entity with id if it exists, otherwise does nothing.\n */\nconst deleteOpSchema = v.object({\n op: v.literal('delete'),\n tableName: v.string(),\n primaryKey: primaryKeySchema,\n // Partial value representing the primary key\n value: primaryKeyValueRecordSchema,\n});\n\nconst crudOpSchema = v.union(\n insertOpSchema,\n upsertOpSchema,\n updateOpSchema,\n deleteOpSchema,\n);\n\nconst crudArgSchema = v.object({\n ops: v.array(crudOpSchema),\n});\n\nconst crudArgsSchema = v.tuple([crudArgSchema]);\n\nexport const crudMutationSchema = v.object({\n type: v.literal(MutationType.CRUD),\n id: v.number(),\n clientID: v.string(),\n name: v.literal(CRUD_MUTATION_NAME),\n args: crudArgsSchema,\n timestamp: v.number(),\n});\n\nexport const customMutationSchema = v.object({\n type: v.literal(MutationType.Custom),\n id: v.number(),\n clientID: v.string(),\n name: v.string(),\n args: v.array(jsonSchema),\n timestamp: v.number(),\n});\n\nexport const mutationSchema = v.union(crudMutationSchema, customMutationSchema);\n\nconst appErrorSchema = v.object({\n error: v.literal('app'),\n // The user can return any additional data here\n message: v.string().optional(),\n details: jsonSchema.optional(),\n});\nconst zeroErrorSchema = v.object({\n error: v.union(\n /** @deprecated push oooMutation errors are now represented as ['error', { ... }] messages */\n v.literal('oooMutation'),\n v.literal('alreadyProcessed'),\n ),\n details: jsonSchema.optional(),\n});\n\nconst mutationOkSchema = v.object({\n // The user can return any additional data here\n data: jsonSchema.optional(),\n});\nconst mutationErrorSchema = v.union(appErrorSchema, zeroErrorSchema);\n\nexport const mutationResultSchema = v.union(\n mutationOkSchema,\n mutationErrorSchema,\n);\n\nexport const mutationResponseSchema = v.object({\n id: mutationIDSchema,\n result: mutationResultSchema,\n});\n\nexport type InsertOp = v.Infer<typeof insertOpSchema>;\nexport type UpsertOp = v.Infer<typeof upsertOpSchema>;\nexport type UpdateOp = v.Infer<typeof updateOpSchema>;\nexport type DeleteOp = v.Infer<typeof deleteOpSchema>;\nexport type CRUDOp = v.Infer<typeof crudOpSchema>;\nexport type CRUDOpKind = CRUDOp['op'];\nexport type CRUDMutationArg = v.Infer<typeof crudArgSchema>;\nexport type CRUDMutation = v.Infer<typeof crudMutationSchema>;\nexport type CustomMutation = v.Infer<typeof customMutationSchema>;\nexport type Mutation = v.Infer<typeof mutationSchema>;\n\nexport type MutationResponse = v.Infer<typeof mutationResponseSchema>;\nexport type MutationOk = v.Infer<typeof mutationOkSchema>;\nexport type MutationError = v.Infer<typeof mutationErrorSchema>;\nexport type MutationResult = v.Infer<typeof mutationResultSchema>;\nexport type CleanupResultsArg = v.Infer<typeof cleanupResultsArgSchema>;\n\nexport function mapCRUD(\n arg: CRUDMutationArg,\n map: NameMapper,\n): CRUDMutationArg {\n return {\n ops: arg.ops.map(\n ({op, tableName, primaryKey, value}) =>\n ({\n op,\n tableName: map.tableName(tableName),\n primaryKey: map.columns(tableName, primaryKey),\n value: map.row(tableName, value),\n // The cast is necessary because ts objects to the `value` field\n // for \"delete\" ops being different.\n }) as unknown as CRUDOp,\n ),\n };\n}\n"],"mappings":";;;;;;;AAWA,IAAa,qBAAqB;AAKlC,IAAa,gCAAgC;AAE7C,IAAa,0BAA0BA,eAAE,MAEvCA,eAAE,OAAO;CACP,eAAeA,eAAE,OAAO;CACxB,UAAUA,eAAE,OAAO;CACnB,gBAAgBA,eAAE,OAAO;AAC3B,CAAC,GAEDA,eAAE,OAAO;CACP,MAAMA,eAAE,QAAQ,QAAQ;CACxB,eAAeA,eAAE,OAAO;CACxB,UAAUA,eAAE,OAAO;CACnB,gBAAgBA,eAAE,OAAO;AAC3B,CAAC,GAEDA,eAAE,OAAO;CACP,MAAMA,eAAE,QAAQ,MAAM;CACtB,eAAeA,eAAE,OAAO;CAExB,WAAWA,eAAE,MAAM,CAACA,eAAE,OAAO,CAAC,CAAC,CAAC,CAAC,OAAOA,eAAE,MAAMA,eAAE,OAAO,CAAC,CAAC;AAC7D,CAAC,CACH;;;;AAKA,IAAM,iBAAiBA,eAAE,OAAO;CAC9B,IAAIA,eAAE,QAAQ,QAAQ;CACtB,WAAWA,eAAE,OAAO;CACpB,YAAY;CACZ,OAAO;AACT,CAAC;;;;;AAMD,IAAM,iBAAiBA,eAAE,OAAO;CAC9B,IAAIA,eAAE,QAAQ,QAAQ;CACtB,WAAWA,eAAE,OAAO;CACpB,YAAY;CACZ,OAAO;AACT,CAAC;;;;AAKD,IAAM,iBAAiBA,eAAE,OAAO;CAC9B,IAAIA,eAAE,QAAQ,QAAQ;CACtB,WAAWA,eAAE,OAAO;CACpB,YAAY;CAEZ,OAAO;AACT,CAAC;;;;AAKD,IAAM,iBAAiBA,eAAE,OAAO;CAC9B,IAAIA,eAAE,QAAQ,QAAQ;CACtB,WAAWA,eAAE,OAAO;CACpB,YAAY;CAEZ,OAAO;AACT,CAAC;AAED,IAAM,eAAeA,eAAE,MACrB,gBACA,gBACA,gBACA,cACF;AAEA,IAAM,gBAAgBA,eAAE,OAAO,EAC7B,KAAKA,eAAE,MAAM,YAAY,EAC3B,CAAC;AAED,IAAM,iBAAiBA,eAAE,MAAM,CAAC,aAAa,CAAC;AAE9C,IAAa,qBAAqBA,eAAE,OAAO;CACzC,MAAMA,eAAE,QAAQC,IAAiB;CACjC,IAAID,eAAE,OAAO;CACb,UAAUA,eAAE,OAAO;CACnB,MAAMA,eAAE,QAAQ,kBAAkB;CAClC,MAAM;CACN,WAAWA,eAAE,OAAO;AACtB,CAAC;AAED,IAAa,uBAAuBA,eAAE,OAAO;CAC3C,MAAMA,eAAE,QAAQE,MAAmB;CACnC,IAAIF,eAAE,OAAO;CACb,UAAUA,eAAE,OAAO;CACnB,MAAMA,eAAE,OAAO;CACf,MAAMA,eAAE,MAAM,UAAU;CACxB,WAAWA,eAAE,OAAO;AACtB,CAAC;AAED,IAAa,iBAAiBA,eAAE,MAAM,oBAAoB,oBAAoB;AAE9E,IAAM,iBAAiBA,eAAE,OAAO;CAC9B,OAAOA,eAAE,QAAQ,KAAK;CAEtB,SAASA,eAAE,OAAO,CAAC,CAAC,SAAS;CAC7B,SAAS,WAAW,SAAS;AAC/B,CAAC;AACD,IAAM,kBAAkBA,eAAE,OAAO;CAC/B,OAAOA,eAAE;;EAEPA,eAAE,QAAQ,aAAa;EACvBA,eAAE,QAAQ,kBAAkB;CAC9B;CACA,SAAS,WAAW,SAAS;AAC/B,CAAC;AAED,IAAM,mBAAmBA,eAAE,OAAO,EAEhC,MAAM,WAAW,SAAS,EAC5B,CAAC;AACD,IAAM,sBAAsBA,eAAE,MAAM,gBAAgB,eAAe;AAEnE,IAAa,uBAAuBA,eAAE,MACpC,kBACA,mBACF;AAEA,IAAa,yBAAyBA,eAAE,OAAO;CAC7C,IAAI;CACJ,QAAQ;AACV,CAAC;AAmBD,SAAgB,QACd,KACA,KACiB;CACjB,OAAO,EACL,KAAK,IAAI,IAAI,KACV,EAAC,IAAI,WAAW,YAAY,aAC1B;EACC;EACA,WAAW,IAAI,UAAU,SAAS;EAClC,YAAY,IAAI,QAAQ,WAAW,UAAU;EAC7C,OAAO,IAAI,IAAI,WAAW,KAAK;CAGjC,EACJ,EACF;AACF"}
@@ -20,6 +20,6 @@ var delOpSchema = valita_exports.object({
20
20
  var patchOpSchema = valita_exports.union(putOpSchema, delOpSchema);
21
21
  var mutationsPatchSchema = valita_exports.array(patchOpSchema);
22
22
  //#endregion
23
- export { mutationsPatchSchema };
23
+ export { delOpSchema, mutationsPatchSchema, putOpSchema };
24
24
 
25
25
  //# sourceMappingURL=mutations-patch.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"mutations-patch.js","names":[],"sources":["../../../../zero-protocol/src/mutations-patch.ts"],"sourcesContent":["import * as v from '../../shared/src/valita.ts';\nimport {mutationIDSchema} from './mutation-id.ts';\nimport {mutationResponseSchema} from './mutation.ts';\n\n/**\n * Mutation results are stored ephemerally in the client\n * hence why we only have the `put` operation.\n *\n * On put the mutation promise is resolved/rejected\n * and reference released.\n */\nexport const putOpSchema = v.object({\n op: v.literal('put'),\n mutation: mutationResponseSchema,\n});\nexport const delOpSchema = v.object({\n op: v.literal('del'),\n id: mutationIDSchema,\n});\n\nconst patchOpSchema = v.union(putOpSchema, delOpSchema);\nexport const mutationsPatchSchema = v.array(patchOpSchema);\nexport type MutationPatch = v.Infer<typeof patchOpSchema>;\n"],"mappings":";;;;;;;;;;;AAWA,IAAa,cAAc,eAAE,OAAO;CAClC,IAAI,eAAE,QAAQ,KAAK;CACnB,UAAU;AACZ,CAAC;AACD,IAAa,cAAc,eAAE,OAAO;CAClC,IAAI,eAAE,QAAQ,KAAK;CACnB,IAAI;AACN,CAAC;AAED,IAAM,gBAAgB,eAAE,MAAM,aAAa,WAAW;AACtD,IAAa,uBAAuB,eAAE,MAAM,aAAa"}
1
+ {"version":3,"file":"mutations-patch.js","names":["v"],"sources":["../../../../zero-protocol/src/mutations-patch.ts"],"sourcesContent":["import * as v from '../../shared/src/valita.ts';\nimport {mutationIDSchema} from './mutation-id.ts';\nimport {mutationResponseSchema} from './mutation.ts';\n\n/**\n * Mutation results are stored ephemerally in the client\n * hence why we only have the `put` operation.\n *\n * On put the mutation promise is resolved/rejected\n * and reference released.\n */\nexport const putOpSchema = v.object({\n op: v.literal('put'),\n mutation: mutationResponseSchema,\n});\nexport const delOpSchema = v.object({\n op: v.literal('del'),\n id: mutationIDSchema,\n});\n\nconst patchOpSchema = v.union(putOpSchema, delOpSchema);\nexport const mutationsPatchSchema = v.array(patchOpSchema);\nexport type MutationPatch = v.Infer<typeof patchOpSchema>;\n"],"mappings":";;;;;;;;;;;AAWA,IAAa,cAAcA,eAAE,OAAO;CAClC,IAAIA,eAAE,QAAQ,KAAK;CACnB,UAAU;AACZ,CAAC;AACD,IAAa,cAAcA,eAAE,OAAO;CAClC,IAAIA,eAAE,QAAQ,KAAK;CACnB,IAAI;AACN,CAAC;AAED,IAAM,gBAAgBA,eAAE,MAAM,aAAa,WAAW;AACtD,IAAa,uBAAuBA,eAAE,MAAM,aAAa"}
@@ -3,6 +3,6 @@ import { valita_exports } from "../../shared/src/valita.js";
3
3
  var pingBodySchema = valita_exports.object({});
4
4
  var pingMessageSchema = valita_exports.tuple([valita_exports.literal("ping"), pingBodySchema]);
5
5
  //#endregion
6
- export { pingMessageSchema };
6
+ export { pingBodySchema, pingMessageSchema };
7
7
 
8
8
  //# sourceMappingURL=ping.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ping.js","names":[],"sources":["../../../../zero-protocol/src/ping.ts"],"sourcesContent":["import * as v from '../../shared/src/valita.ts';\n\nexport const pingBodySchema = v.object({});\nexport const pingMessageSchema = v.tuple([v.literal('ping'), pingBodySchema]);\n\nexport type PingBody = v.Infer<typeof pingBodySchema>;\nexport type PingMessage = v.Infer<typeof pingMessageSchema>;\n"],"mappings":";;AAEA,IAAa,iBAAiB,eAAE,OAAO,CAAC,CAAC;AACzC,IAAa,oBAAoB,eAAE,MAAM,CAAC,eAAE,QAAQ,MAAM,GAAG,cAAc,CAAC"}
1
+ {"version":3,"file":"ping.js","names":["v"],"sources":["../../../../zero-protocol/src/ping.ts"],"sourcesContent":["import * as v from '../../shared/src/valita.ts';\n\nexport const pingBodySchema = v.object({});\nexport const pingMessageSchema = v.tuple([v.literal('ping'), pingBodySchema]);\n\nexport type PingBody = v.Infer<typeof pingBodySchema>;\nexport type PingMessage = v.Infer<typeof pingMessageSchema>;\n"],"mappings":";;AAEA,IAAa,iBAAiBA,eAAE,OAAO,CAAC,CAAC;AACzC,IAAa,oBAAoBA,eAAE,MAAM,CAACA,eAAE,QAAQ,MAAM,GAAG,cAAc,CAAC"}
@@ -66,6 +66,6 @@ var pokeStartMessageSchema = valita_exports.tuple([valita_exports.literal("pokeS
66
66
  var pokePartMessageSchema = valita_exports.tuple([valita_exports.literal("pokePart"), pokePartBodySchema]);
67
67
  var pokeEndMessageSchema = valita_exports.tuple([valita_exports.literal("pokeEnd"), pokeEndBodySchema]);
68
68
  //#endregion
69
- export { pokeEndMessageSchema, pokePartMessageSchema, pokePartsSchema, pokeStartMessageSchema };
69
+ export { pokeEndBodySchema, pokeEndMessageSchema, pokePartBodySchema, pokePartMessageSchema, pokePartsSchema, pokeStartBodySchema, pokeStartMessageSchema };
70
70
 
71
71
  //# sourceMappingURL=poke.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"poke.js","names":[],"sources":["../../../../zero-protocol/src/poke.ts"],"sourcesContent":["import * as v from '../../shared/src/valita.ts';\nimport {mutationsPatchSchema} from './mutations-patch.ts';\nimport {queriesPatchSchema} from './queries-patch.ts';\nimport {rowsPatchSchema} from './row-patch.ts';\nimport {nullableVersionSchema, versionSchema} from './version.ts';\n\n/**\n * Pokes use a multi-part format. Pokes send entity data to the client and can\n * be multiple mega-bytes in size. Using a multi-part format allows the server\n * to avoid having to have the full poke in memory at one time.\n *\n * Each poke is assigned a `pokeID`, a unique id (within the context of the\n * connection) for identifying the poke. All messages for a poke will have the\n * same `pokeID`.\n *\n * A poke begins with a `poke-start` message which contains the `baseCookie`\n * the poke is updating from and the `cookie` the poke is updating to.\n *\n * Through protocol version 51, the poke continues with zero to many\n * `poke-part` JSON messages. Starting in version 52, it continues with zero to\n * many binary `pokeChunk` messages. Each binary message starts with a message\n * type byte. Concatenating and decoding the payload after that byte produces a\n * PokePartBody array. pokeChunk boundaries have no semantic meaning.\n *\n * Finally, the poke ends with a `poke-end` message. The decoded patches can\n * now be applied as a whole to update from `baseCookie` to `cookie`.\n *\n * Poke messages can be intermingled with other `down` messages, but cannot be\n * intermingled with poke messages for a different `pokeID`. If this is\n * observed it is an unexpected error; the client should ignore both pokes,\n * disconnect, and reconnect.\n */\n\nexport const pokeStartBodySchema = v.object({\n pokeID: v.string(),\n // We always specify a Version as our cookie, but Replicache starts clients\n // with initial cookie `null`, before the first request. So we have to be\n // able to send a base cookie with value `null` to match that state.\n baseCookie: nullableVersionSchema,\n /**\n * This field is always set if the poke contains a `rowsPatch`.\n * It may be absent for patches that only update clients and queries.\n */\n schemaVersions: v\n .object({\n minSupportedVersion: v.number(),\n maxSupportedVersion: v.number(),\n })\n .optional(),\n timestamp: v.number().optional(),\n});\n\nexport const pokePartBodySchema = v.object({\n // Changes to last mutation id by client id.\n lastMutationIDChanges: v.record(v.number()).optional(),\n // Patches to the desired query sets by client id.\n desiredQueriesPatches: v.record(queriesPatchSchema).optional(),\n // Patches to the set of queries for which entities are sync'd in\n // rowsPatch.\n gotQueriesPatch: queriesPatchSchema.optional(),\n // Patches to the rows set.\n rowsPatch: rowsPatchSchema.optional(),\n // Mutation results patch\n mutationsPatch: mutationsPatchSchema.optional(),\n pokeID: v.string(),\n});\n\n/**\n * The logical payload carried by binary poke chunks. Chunk boundaries are\n * arbitrary; concatenating and decoding all chunks for a poke produces this\n * array.\n */\nexport const pokePartsSchema = v.array(pokePartBodySchema);\n\nexport const pokeEndBodySchema = v.object({\n pokeID: v.string(),\n // Note: This should be ignored (and may be empty) if cancel === `true`.\n cookie: versionSchema,\n // If `true`, the poke with id `pokeID` should be discarded without\n // applying it.\n cancel: v.boolean().optional(),\n});\n\nexport const pokeStartMessageSchema = v.tuple([\n v.literal('pokeStart'),\n pokeStartBodySchema,\n]);\nexport const pokePartMessageSchema = v.tuple([\n v.literal('pokePart'),\n pokePartBodySchema,\n]);\nexport const pokeEndMessageSchema = v.tuple([\n v.literal('pokeEnd'),\n pokeEndBodySchema,\n]);\n\nexport type PokeStartBody = v.Infer<typeof pokeStartBodySchema>;\nexport type PokePartBody = v.Infer<typeof pokePartBodySchema>;\nexport type PokeParts = v.Infer<typeof pokePartsSchema>;\nexport type PokeEndBody = v.Infer<typeof pokeEndBodySchema>;\n\n/** The first byte identifying a binary WebSocket message as a poke chunk. */\nexport const POKE_CHUNK_MESSAGE_TYPE = 0x00;\n\n/** The first protocol version that receives binary poke chunks. */\nexport const POKE_CHUNK_PROTOCOL_VERSION = 52;\n\n/** The last protocol version that receives JSON pokePart messages. */\nexport const LAST_POKE_PART_PROTOCOL_VERSION = 51;\n\n/** A tagged binary poke chunk WebSocket message. */\nexport type PokeChunk = Uint8Array;\n\nexport type PokeStartMessage = v.Infer<typeof pokeStartMessageSchema>;\nexport type PokePartMessage = v.Infer<typeof pokePartMessageSchema>;\nexport type PokeEndMessage = v.Infer<typeof pokeEndMessageSchema>;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAiCA,IAAa,sBAAsB,eAAE,OAAO;CAC1C,QAAQ,eAAE,OAAO;CAIjB,YAAY;;;;;CAKZ,gBAAgB,eACb,OAAO;EACN,qBAAqB,eAAE,OAAO;EAC9B,qBAAqB,eAAE,OAAO;CAChC,CAAC,EACA,SAAS;CACZ,WAAW,eAAE,OAAO,EAAE,SAAS;AACjC,CAAC;AAED,IAAa,qBAAqB,eAAE,OAAO;CAEzC,uBAAuB,eAAE,OAAO,eAAE,OAAO,CAAC,EAAE,SAAS;CAErD,uBAAuB,eAAE,OAAO,kBAAkB,EAAE,SAAS;CAG7D,iBAAiB,mBAAmB,SAAS;CAE7C,WAAW,gBAAgB,SAAS;CAEpC,gBAAgB,qBAAqB,SAAS;CAC9C,QAAQ,eAAE,OAAO;AACnB,CAAC;;;;;;AAOD,IAAa,kBAAkB,eAAE,MAAM,kBAAkB;AAEzD,IAAa,oBAAoB,eAAE,OAAO;CACxC,QAAQ,eAAE,OAAO;CAEjB,QAAQ;CAGR,QAAQ,eAAE,QAAQ,EAAE,SAAS;AAC/B,CAAC;AAED,IAAa,yBAAyB,eAAE,MAAM,CAC5C,eAAE,QAAQ,WAAW,GACrB,mBACF,CAAC;AACD,IAAa,wBAAwB,eAAE,MAAM,CAC3C,eAAE,QAAQ,UAAU,GACpB,kBACF,CAAC;AACD,IAAa,uBAAuB,eAAE,MAAM,CAC1C,eAAE,QAAQ,SAAS,GACnB,iBACF,CAAC"}
1
+ {"version":3,"file":"poke.js","names":["v"],"sources":["../../../../zero-protocol/src/poke.ts"],"sourcesContent":["import * as v from '../../shared/src/valita.ts';\nimport {mutationsPatchSchema} from './mutations-patch.ts';\nimport {queriesPatchSchema} from './queries-patch.ts';\nimport {rowsPatchSchema} from './row-patch.ts';\nimport {nullableVersionSchema, versionSchema} from './version.ts';\n\n/**\n * Pokes use a multi-part format. Pokes send entity data to the client and can\n * be multiple mega-bytes in size. Using a multi-part format allows the server\n * to avoid having to have the full poke in memory at one time.\n *\n * Each poke is assigned a `pokeID`, a unique id (within the context of the\n * connection) for identifying the poke. All messages for a poke will have the\n * same `pokeID`.\n *\n * A poke begins with a `poke-start` message which contains the `baseCookie`\n * the poke is updating from and the `cookie` the poke is updating to.\n *\n * Through protocol version 51, the poke continues with zero to many\n * `poke-part` JSON messages. Starting in version 52, it continues with zero to\n * many binary `pokeChunk` messages. Each binary message starts with a message\n * type byte. Concatenating and decoding the payload after that byte produces a\n * PokePartBody array. pokeChunk boundaries have no semantic meaning.\n *\n * Finally, the poke ends with a `poke-end` message. The decoded patches can\n * now be applied as a whole to update from `baseCookie` to `cookie`.\n *\n * Poke messages can be intermingled with other `down` messages, but cannot be\n * intermingled with poke messages for a different `pokeID`. If this is\n * observed it is an unexpected error; the client should ignore both pokes,\n * disconnect, and reconnect.\n */\n\nexport const pokeStartBodySchema = v.object({\n pokeID: v.string(),\n // We always specify a Version as our cookie, but Replicache starts clients\n // with initial cookie `null`, before the first request. So we have to be\n // able to send a base cookie with value `null` to match that state.\n baseCookie: nullableVersionSchema,\n /**\n * This field is always set if the poke contains a `rowsPatch`.\n * It may be absent for patches that only update clients and queries.\n */\n schemaVersions: v\n .object({\n minSupportedVersion: v.number(),\n maxSupportedVersion: v.number(),\n })\n .optional(),\n timestamp: v.number().optional(),\n});\n\nexport const pokePartBodySchema = v.object({\n // Changes to last mutation id by client id.\n lastMutationIDChanges: v.record(v.number()).optional(),\n // Patches to the desired query sets by client id.\n desiredQueriesPatches: v.record(queriesPatchSchema).optional(),\n // Patches to the set of queries for which entities are sync'd in\n // rowsPatch.\n gotQueriesPatch: queriesPatchSchema.optional(),\n // Patches to the rows set.\n rowsPatch: rowsPatchSchema.optional(),\n // Mutation results patch\n mutationsPatch: mutationsPatchSchema.optional(),\n pokeID: v.string(),\n});\n\n/**\n * The logical payload carried by binary poke chunks. Chunk boundaries are\n * arbitrary; concatenating and decoding all chunks for a poke produces this\n * array.\n */\nexport const pokePartsSchema = v.array(pokePartBodySchema);\n\nexport const pokeEndBodySchema = v.object({\n pokeID: v.string(),\n // Note: This should be ignored (and may be empty) if cancel === `true`.\n cookie: versionSchema,\n // If `true`, the poke with id `pokeID` should be discarded without\n // applying it.\n cancel: v.boolean().optional(),\n});\n\nexport const pokeStartMessageSchema = v.tuple([\n v.literal('pokeStart'),\n pokeStartBodySchema,\n]);\nexport const pokePartMessageSchema = v.tuple([\n v.literal('pokePart'),\n pokePartBodySchema,\n]);\nexport const pokeEndMessageSchema = v.tuple([\n v.literal('pokeEnd'),\n pokeEndBodySchema,\n]);\n\nexport type PokeStartBody = v.Infer<typeof pokeStartBodySchema>;\nexport type PokePartBody = v.Infer<typeof pokePartBodySchema>;\nexport type PokeParts = v.Infer<typeof pokePartsSchema>;\nexport type PokeEndBody = v.Infer<typeof pokeEndBodySchema>;\n\n/** The first byte identifying a binary WebSocket message as a poke chunk. */\nexport const POKE_CHUNK_MESSAGE_TYPE = 0x00;\n\n/** The first protocol version that receives binary poke chunks. */\nexport const POKE_CHUNK_PROTOCOL_VERSION = 52;\n\n/** The last protocol version that receives JSON pokePart messages. */\nexport const LAST_POKE_PART_PROTOCOL_VERSION = 51;\n\n/** A tagged binary poke chunk WebSocket message. */\nexport type PokeChunk = Uint8Array;\n\nexport type PokeStartMessage = v.Infer<typeof pokeStartMessageSchema>;\nexport type PokePartMessage = v.Infer<typeof pokePartMessageSchema>;\nexport type PokeEndMessage = v.Infer<typeof pokeEndMessageSchema>;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAiCA,IAAa,sBAAsBA,eAAE,OAAO;CAC1C,QAAQA,eAAE,OAAO;CAIjB,YAAY;;;;;CAKZ,gBAAgBA,eACb,OAAO;EACN,qBAAqBA,eAAE,OAAO;EAC9B,qBAAqBA,eAAE,OAAO;CAChC,CAAC,CAAC,CACD,SAAS;CACZ,WAAWA,eAAE,OAAO,CAAC,CAAC,SAAS;AACjC,CAAC;AAED,IAAa,qBAAqBA,eAAE,OAAO;CAEzC,uBAAuBA,eAAE,OAAOA,eAAE,OAAO,CAAC,CAAC,CAAC,SAAS;CAErD,uBAAuBA,eAAE,OAAO,kBAAkB,CAAC,CAAC,SAAS;CAG7D,iBAAiB,mBAAmB,SAAS;CAE7C,WAAW,gBAAgB,SAAS;CAEpC,gBAAgB,qBAAqB,SAAS;CAC9C,QAAQA,eAAE,OAAO;AACnB,CAAC;;;;;;AAOD,IAAa,kBAAkBA,eAAE,MAAM,kBAAkB;AAEzD,IAAa,oBAAoBA,eAAE,OAAO;CACxC,QAAQA,eAAE,OAAO;CAEjB,QAAQ;CAGR,QAAQA,eAAE,QAAQ,CAAC,CAAC,SAAS;AAC/B,CAAC;AAED,IAAa,yBAAyBA,eAAE,MAAM,CAC5CA,eAAE,QAAQ,WAAW,GACrB,mBACF,CAAC;AACD,IAAa,wBAAwBA,eAAE,MAAM,CAC3CA,eAAE,QAAQ,UAAU,GACpB,kBACF,CAAC;AACD,IAAa,uBAAuBA,eAAE,MAAM,CAC1CA,eAAE,QAAQ,SAAS,GACnB,iBACF,CAAC"}
@@ -3,6 +3,6 @@ import { valita_exports } from "../../shared/src/valita.js";
3
3
  var pongBodySchema = valita_exports.object({});
4
4
  var pongMessageSchema = valita_exports.tuple([valita_exports.literal("pong"), pongBodySchema]);
5
5
  //#endregion
6
- export { pongMessageSchema };
6
+ export { pongBodySchema, pongMessageSchema };
7
7
 
8
8
  //# sourceMappingURL=pong.js.map