@rocicorp/zero 0.25.0-canary.0 → 0.25.0-canary.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (337) hide show
  1. package/out/{chunk-BJ2CGCME.js → chunk-55BOUNXO.js} +3 -3
  2. package/out/chunk-55BOUNXO.js.map +7 -0
  3. package/out/{chunk-MXPHMVU7.js → chunk-AIPM77UE.js} +2337 -548
  4. package/out/chunk-AIPM77UE.js.map +7 -0
  5. package/out/{chunk-4RB4OYLQ.js → chunk-TJFNGO7E.js} +3 -2
  6. package/out/{lazy-inspector-2SW772W4.js → lazy-inspector-OXIFYSSQ.js} +2 -2
  7. package/out/react.js +16 -4
  8. package/out/react.js.map +4 -4
  9. package/out/replicache/src/dag/lazy-store.d.ts +1 -1
  10. package/out/replicache/src/dag/lazy-store.d.ts.map +1 -1
  11. package/out/replicache/src/log-options.d.ts +1 -1
  12. package/out/replicache/src/log-options.d.ts.map +1 -1
  13. package/out/replicache/src/persist/collect-idb-databases.d.ts +3 -3
  14. package/out/replicache/src/persist/collect-idb-databases.d.ts.map +1 -1
  15. package/out/replicache/src/replicache-options.d.ts +1 -1
  16. package/out/replicache/src/replicache-options.d.ts.map +1 -1
  17. package/out/shared/src/options.d.ts +1 -1
  18. package/out/shared/src/options.d.ts.map +1 -1
  19. package/out/shared/src/promise-race.d.ts +17 -0
  20. package/out/shared/src/promise-race.d.ts.map +1 -0
  21. package/out/solid.js +19 -6
  22. package/out/solid.js.map +4 -4
  23. package/out/z2s/src/compiler.d.ts +1 -1
  24. package/out/z2s/src/compiler.d.ts.map +1 -1
  25. package/out/z2s/src/compiler.js +1 -1
  26. package/out/z2s/src/compiler.js.map +1 -1
  27. package/out/z2s/src/sql.d.ts.map +1 -1
  28. package/out/z2s/src/sql.js +1 -1
  29. package/out/z2s/src/sql.js.map +1 -1
  30. package/out/zero/package.json +4 -3
  31. package/out/zero-cache/src/config/zero-config.d.ts +12 -0
  32. package/out/zero-cache/src/config/zero-config.d.ts.map +1 -1
  33. package/out/zero-cache/src/config/zero-config.js +36 -0
  34. package/out/zero-cache/src/config/zero-config.js.map +1 -1
  35. package/out/zero-cache/src/custom/fetch.d.ts +3 -1
  36. package/out/zero-cache/src/custom/fetch.d.ts.map +1 -1
  37. package/out/zero-cache/src/custom/fetch.js +101 -24
  38. package/out/zero-cache/src/custom/fetch.js.map +1 -1
  39. package/out/zero-cache/src/custom-queries/transform-query.d.ts +2 -6
  40. package/out/zero-cache/src/custom-queries/transform-query.d.ts.map +1 -1
  41. package/out/zero-cache/src/custom-queries/transform-query.js +42 -41
  42. package/out/zero-cache/src/custom-queries/transform-query.js.map +1 -1
  43. package/out/zero-cache/src/db/create.d.ts +4 -0
  44. package/out/zero-cache/src/db/create.d.ts.map +1 -1
  45. package/out/zero-cache/src/db/create.js +7 -9
  46. package/out/zero-cache/src/db/create.js.map +1 -1
  47. package/out/zero-cache/src/db/lite-tables.js +2 -2
  48. package/out/zero-cache/src/db/lite-tables.js.map +1 -1
  49. package/out/zero-cache/src/db/pg-to-lite.d.ts.map +1 -1
  50. package/out/zero-cache/src/db/pg-to-lite.js +7 -6
  51. package/out/zero-cache/src/db/pg-to-lite.js.map +1 -1
  52. package/out/zero-cache/src/db/specs.d.ts +12 -12
  53. package/out/zero-cache/src/server/change-streamer.d.ts.map +1 -1
  54. package/out/zero-cache/src/server/change-streamer.js +1 -1
  55. package/out/zero-cache/src/server/change-streamer.js.map +1 -1
  56. package/out/zero-cache/src/server/inspector-delegate.d.ts.map +1 -1
  57. package/out/zero-cache/src/server/inspector-delegate.js +5 -1
  58. package/out/zero-cache/src/server/inspector-delegate.js.map +1 -1
  59. package/out/zero-cache/src/server/syncer.d.ts.map +1 -1
  60. package/out/zero-cache/src/server/syncer.js +1 -1
  61. package/out/zero-cache/src/server/syncer.js.map +1 -1
  62. package/out/zero-cache/src/services/change-source/pg/change-source.js +1 -0
  63. package/out/zero-cache/src/services/change-source/pg/change-source.js.map +1 -1
  64. package/out/zero-cache/src/services/change-source/pg/logical-replication/binary-reader.d.ts +1 -1
  65. package/out/zero-cache/src/services/change-source/pg/logical-replication/binary-reader.d.ts.map +1 -1
  66. package/out/zero-cache/src/services/change-source/pg/logical-replication/binary-reader.js +1 -1
  67. package/out/zero-cache/src/services/change-source/pg/logical-replication/binary-reader.js.map +1 -1
  68. package/out/zero-cache/src/services/change-source/pg/schema/ddl.d.ts +25 -25
  69. package/out/zero-cache/src/services/change-source/pg/schema/published.d.ts +10 -10
  70. package/out/zero-cache/src/services/change-source/pg/schema/shard.d.ts +5 -5
  71. package/out/zero-cache/src/services/change-source/protocol/current/data.d.ts +16 -16
  72. package/out/zero-cache/src/services/change-source/protocol/current/downstream.d.ts +24 -24
  73. package/out/zero-cache/src/services/change-streamer/change-streamer-http.d.ts +2 -1
  74. package/out/zero-cache/src/services/change-streamer/change-streamer-http.d.ts.map +1 -1
  75. package/out/zero-cache/src/services/change-streamer/change-streamer-http.js +18 -2
  76. package/out/zero-cache/src/services/change-streamer/change-streamer-http.js.map +1 -1
  77. package/out/zero-cache/src/services/change-streamer/change-streamer.d.ts +8 -8
  78. package/out/zero-cache/src/services/mutagen/mutagen.d.ts.map +1 -1
  79. package/out/zero-cache/src/services/mutagen/mutagen.js +9 -7
  80. package/out/zero-cache/src/services/mutagen/mutagen.js.map +1 -1
  81. package/out/zero-cache/src/services/mutagen/pusher.d.ts +4 -4
  82. package/out/zero-cache/src/services/mutagen/pusher.d.ts.map +1 -1
  83. package/out/zero-cache/src/services/mutagen/pusher.js +74 -56
  84. package/out/zero-cache/src/services/mutagen/pusher.js.map +1 -1
  85. package/out/zero-cache/src/services/view-syncer/client-handler.d.ts +3 -1
  86. package/out/zero-cache/src/services/view-syncer/client-handler.d.ts.map +1 -1
  87. package/out/zero-cache/src/services/view-syncer/client-handler.js +10 -6
  88. package/out/zero-cache/src/services/view-syncer/client-handler.js.map +1 -1
  89. package/out/zero-cache/src/services/view-syncer/client-schema.d.ts.map +1 -1
  90. package/out/zero-cache/src/services/view-syncer/client-schema.js +6 -3
  91. package/out/zero-cache/src/services/view-syncer/client-schema.js.map +1 -1
  92. package/out/zero-cache/src/services/view-syncer/cvr-store.d.ts +4 -4
  93. package/out/zero-cache/src/services/view-syncer/cvr-store.d.ts.map +1 -1
  94. package/out/zero-cache/src/services/view-syncer/cvr-store.js +15 -6
  95. package/out/zero-cache/src/services/view-syncer/cvr-store.js.map +1 -1
  96. package/out/zero-cache/src/services/view-syncer/cvr.d.ts.map +1 -1
  97. package/out/zero-cache/src/services/view-syncer/cvr.js +4 -2
  98. package/out/zero-cache/src/services/view-syncer/cvr.js.map +1 -1
  99. package/out/zero-cache/src/services/view-syncer/key-columns.d.ts.map +1 -1
  100. package/out/zero-cache/src/services/view-syncer/key-columns.js +4 -2
  101. package/out/zero-cache/src/services/view-syncer/key-columns.js.map +1 -1
  102. package/out/zero-cache/src/services/view-syncer/pipeline-driver.d.ts +1 -1
  103. package/out/zero-cache/src/services/view-syncer/pipeline-driver.d.ts.map +1 -1
  104. package/out/zero-cache/src/services/view-syncer/pipeline-driver.js +19 -2
  105. package/out/zero-cache/src/services/view-syncer/pipeline-driver.js.map +1 -1
  106. package/out/zero-cache/src/services/view-syncer/view-syncer.d.ts.map +1 -1
  107. package/out/zero-cache/src/services/view-syncer/view-syncer.js +67 -31
  108. package/out/zero-cache/src/services/view-syncer/view-syncer.js.map +1 -1
  109. package/out/zero-cache/src/types/error-with-level.d.ts +9 -0
  110. package/out/zero-cache/src/types/error-with-level.d.ts.map +1 -0
  111. package/out/zero-cache/src/types/error-with-level.js +24 -0
  112. package/out/zero-cache/src/types/error-with-level.js.map +1 -0
  113. package/out/zero-cache/src/types/lite.d.ts +15 -13
  114. package/out/zero-cache/src/types/lite.d.ts.map +1 -1
  115. package/out/zero-cache/src/types/lite.js +17 -5
  116. package/out/zero-cache/src/types/lite.js.map +1 -1
  117. package/out/zero-cache/src/types/pg-data-type.d.ts +73 -0
  118. package/out/zero-cache/src/types/pg-data-type.d.ts.map +1 -0
  119. package/out/zero-cache/src/types/pg-data-type.js +76 -0
  120. package/out/zero-cache/src/types/pg-data-type.js.map +1 -0
  121. package/out/zero-cache/src/types/pg.d.ts +1 -73
  122. package/out/zero-cache/src/types/pg.d.ts.map +1 -1
  123. package/out/zero-cache/src/types/pg.js +0 -77
  124. package/out/zero-cache/src/types/pg.js.map +1 -1
  125. package/out/zero-cache/src/types/processes.d.ts +1 -1
  126. package/out/zero-cache/src/types/processes.d.ts.map +1 -1
  127. package/out/zero-cache/src/types/processes.js.map +1 -1
  128. package/out/zero-cache/src/types/schema-versions.d.ts +7 -3
  129. package/out/zero-cache/src/types/schema-versions.d.ts.map +1 -1
  130. package/out/zero-cache/src/types/schema-versions.js +7 -5
  131. package/out/zero-cache/src/types/schema-versions.js.map +1 -1
  132. package/out/zero-cache/src/types/subscription.d.ts +1 -1
  133. package/out/zero-cache/src/types/subscription.js +1 -1
  134. package/out/zero-cache/src/types/websocket-handoff.d.ts +3 -3
  135. package/out/zero-cache/src/types/websocket-handoff.d.ts.map +1 -1
  136. package/out/zero-cache/src/types/websocket-handoff.js +6 -4
  137. package/out/zero-cache/src/types/websocket-handoff.js.map +1 -1
  138. package/out/zero-cache/src/workers/connection.d.ts +6 -1
  139. package/out/zero-cache/src/workers/connection.d.ts.map +1 -1
  140. package/out/zero-cache/src/workers/connection.js +26 -9
  141. package/out/zero-cache/src/workers/connection.js.map +1 -1
  142. package/out/zero-cache/src/workers/syncer-ws-message-handler.d.ts.map +1 -1
  143. package/out/zero-cache/src/workers/syncer-ws-message-handler.js +7 -1
  144. package/out/zero-cache/src/workers/syncer-ws-message-handler.js.map +1 -1
  145. package/out/zero-cache/src/workers/syncer.d.ts.map +1 -1
  146. package/out/zero-cache/src/workers/syncer.js +21 -1
  147. package/out/zero-cache/src/workers/syncer.js.map +1 -1
  148. package/out/zero-client/src/client/client-error-kind-enum.d.ts +8 -0
  149. package/out/zero-client/src/client/client-error-kind-enum.d.ts.map +1 -1
  150. package/out/zero-client/src/client/connection-manager.d.ts +65 -13
  151. package/out/zero-client/src/client/connection-manager.d.ts.map +1 -1
  152. package/out/zero-client/src/client/connection-status-enum.d.ts +2 -0
  153. package/out/zero-client/src/client/connection-status-enum.d.ts.map +1 -1
  154. package/out/zero-client/src/client/connection.d.ts +45 -0
  155. package/out/zero-client/src/client/connection.d.ts.map +1 -0
  156. package/out/zero-client/src/client/error.d.ts +178 -23
  157. package/out/zero-client/src/client/error.d.ts.map +1 -1
  158. package/out/zero-client/src/client/ivm-branch.d.ts +2 -2
  159. package/out/zero-client/src/client/ivm-branch.d.ts.map +1 -1
  160. package/out/zero-client/src/client/metrics.d.ts +9 -0
  161. package/out/zero-client/src/client/metrics.d.ts.map +1 -1
  162. package/out/zero-client/src/client/mutation-tracker.d.ts +5 -4
  163. package/out/zero-client/src/client/mutation-tracker.d.ts.map +1 -1
  164. package/out/zero-client/src/client/options.d.ts +6 -2
  165. package/out/zero-client/src/client/options.d.ts.map +1 -1
  166. package/out/zero-client/src/client/query-manager.d.ts +5 -4
  167. package/out/zero-client/src/client/query-manager.d.ts.map +1 -1
  168. package/out/zero-client/src/client/zero-rep.d.ts +1 -1
  169. package/out/zero-client/src/client/zero-rep.d.ts.map +1 -1
  170. package/out/zero-client/src/client/zero.d.ts +27 -5
  171. package/out/zero-client/src/client/zero.d.ts.map +1 -1
  172. package/out/zero-client/src/mod.d.ts +9 -1
  173. package/out/zero-client/src/mod.d.ts.map +1 -1
  174. package/out/zero-protocol/src/custom-queries.d.ts +75 -4
  175. package/out/zero-protocol/src/custom-queries.d.ts.map +1 -1
  176. package/out/zero-protocol/src/custom-queries.js +18 -1
  177. package/out/zero-protocol/src/custom-queries.js.map +1 -1
  178. package/out/zero-protocol/src/down.d.ts +1 -1
  179. package/out/zero-protocol/src/error-kind-enum.d.ts +65 -0
  180. package/out/zero-protocol/src/error-kind-enum.d.ts.map +1 -1
  181. package/out/zero-protocol/src/error-kind-enum.js +2 -0
  182. package/out/zero-protocol/src/error-kind-enum.js.map +1 -1
  183. package/out/zero-protocol/src/error-origin-enum.d.ts +7 -0
  184. package/out/zero-protocol/src/error-origin-enum.d.ts.map +1 -0
  185. package/out/zero-protocol/src/error-origin-enum.js +4 -0
  186. package/out/zero-protocol/src/error-origin-enum.js.map +1 -0
  187. package/out/zero-protocol/src/error-origin.d.ts +5 -0
  188. package/out/zero-protocol/src/error-origin.d.ts.map +1 -0
  189. package/out/zero-protocol/src/error-origin.js +3 -0
  190. package/out/zero-protocol/src/error-origin.js.map +1 -0
  191. package/out/zero-protocol/src/error-reason-enum.d.ts +15 -0
  192. package/out/zero-protocol/src/error-reason-enum.d.ts.map +1 -0
  193. package/out/zero-protocol/src/error-reason-enum.js +8 -0
  194. package/out/zero-protocol/src/error-reason-enum.js.map +1 -0
  195. package/out/zero-protocol/src/error-reason.d.ts +5 -0
  196. package/out/zero-protocol/src/error-reason.d.ts.map +1 -0
  197. package/out/zero-protocol/src/error-reason.js +3 -0
  198. package/out/zero-protocol/src/error-reason.js.map +1 -0
  199. package/out/zero-protocol/src/error.d.ts +139 -1
  200. package/out/zero-protocol/src/error.d.ts.map +1 -1
  201. package/out/zero-protocol/src/error.js +64 -2
  202. package/out/zero-protocol/src/error.js.map +1 -1
  203. package/out/zero-protocol/src/mutation-id.d.ts +7 -0
  204. package/out/zero-protocol/src/mutation-id.d.ts.map +1 -0
  205. package/out/zero-protocol/src/mutation-id.js +6 -0
  206. package/out/zero-protocol/src/mutation-id.js.map +1 -0
  207. package/out/zero-protocol/src/mutations-patch.d.ts +3 -3
  208. package/out/zero-protocol/src/mutations-patch.d.ts.map +1 -1
  209. package/out/zero-protocol/src/mutations-patch.js +2 -1
  210. package/out/zero-protocol/src/mutations-patch.js.map +1 -1
  211. package/out/zero-protocol/src/protocol-version.d.ts +1 -1
  212. package/out/zero-protocol/src/protocol-version.d.ts.map +1 -1
  213. package/out/zero-protocol/src/protocol-version.js +2 -1
  214. package/out/zero-protocol/src/protocol-version.js.map +1 -1
  215. package/out/zero-protocol/src/push.d.ts +138 -13
  216. package/out/zero-protocol/src/push.d.ts.map +1 -1
  217. package/out/zero-protocol/src/push.js +34 -13
  218. package/out/zero-protocol/src/push.js.map +1 -1
  219. package/out/zero-react/src/mod.d.ts +2 -1
  220. package/out/zero-react/src/mod.d.ts.map +1 -1
  221. package/out/zero-react/src/use-zero-connection-state.d.ts +9 -0
  222. package/out/zero-react/src/use-zero-connection-state.d.ts.map +1 -0
  223. package/out/zero-react/src/use-zero-online.d.ts +2 -0
  224. package/out/zero-react/src/use-zero-online.d.ts.map +1 -1
  225. package/out/zero-server/src/process-mutations.d.ts +3 -3
  226. package/out/zero-server/src/process-mutations.d.ts.map +1 -1
  227. package/out/zero-server/src/process-mutations.js.map +1 -1
  228. package/out/zero-server/src/schema.js +1 -1
  229. package/out/zero-server/src/schema.js.map +1 -1
  230. package/out/zero-server/src/zql-database.d.ts +1 -1
  231. package/out/zero-server/src/zql-database.d.ts.map +1 -1
  232. package/out/zero-server/src/zql-database.js.map +1 -1
  233. package/out/zero-solid/src/mod.d.ts +3 -2
  234. package/out/zero-solid/src/mod.d.ts.map +1 -1
  235. package/out/zero-solid/src/use-zero-connection-state.d.ts +10 -0
  236. package/out/zero-solid/src/use-zero-connection-state.d.ts.map +1 -0
  237. package/out/zero-solid/src/use-zero-online.d.ts +1 -7
  238. package/out/zero-solid/src/use-zero-online.d.ts.map +1 -1
  239. package/out/zero.js +13 -3
  240. package/out/zql/src/builder/builder.d.ts +2 -1
  241. package/out/zql/src/builder/builder.d.ts.map +1 -1
  242. package/out/zql/src/builder/builder.js +5 -1
  243. package/out/zql/src/builder/builder.js.map +1 -1
  244. package/out/zql/src/ivm/data.d.ts +1 -1
  245. package/out/zql/src/ivm/data.d.ts.map +1 -1
  246. package/out/zql/src/ivm/data.js.map +1 -1
  247. package/out/zql/src/ivm/filter-push.d.ts +1 -1
  248. package/out/zql/src/ivm/filter-push.d.ts.map +1 -1
  249. package/out/zql/src/ivm/filter-push.js.map +1 -1
  250. package/out/zql/src/ivm/memory-source.d.ts +2 -2
  251. package/out/zql/src/ivm/memory-source.d.ts.map +1 -1
  252. package/out/zql/src/ivm/memory-source.js.map +1 -1
  253. package/out/zql/src/ivm/source.d.ts +1 -1
  254. package/out/zql/src/ivm/source.d.ts.map +1 -1
  255. package/out/zql/src/ivm/take.d.ts +1 -1
  256. package/out/zql/src/ivm/take.d.ts.map +1 -1
  257. package/out/zql/src/ivm/take.js.map +1 -1
  258. package/out/zql/src/planner/planner-builder.d.ts +14 -0
  259. package/out/zql/src/planner/planner-builder.d.ts.map +1 -0
  260. package/out/zql/src/planner/planner-builder.js +180 -0
  261. package/out/zql/src/planner/planner-builder.js.map +1 -0
  262. package/out/zql/src/planner/planner-connection.d.ts +119 -0
  263. package/out/zql/src/planner/planner-connection.d.ts.map +1 -0
  264. package/out/zql/src/planner/planner-connection.js +301 -0
  265. package/out/zql/src/planner/planner-connection.js.map +1 -0
  266. package/out/zql/src/planner/planner-constraint.d.ts +14 -0
  267. package/out/zql/src/planner/planner-constraint.d.ts.map +1 -0
  268. package/out/zql/src/planner/planner-constraint.js +12 -0
  269. package/out/zql/src/planner/planner-constraint.js.map +1 -0
  270. package/out/zql/src/planner/planner-debug.d.ts +118 -0
  271. package/out/zql/src/planner/planner-debug.d.ts.map +1 -0
  272. package/out/zql/src/planner/planner-debug.js +125 -0
  273. package/out/zql/src/planner/planner-debug.js.map +1 -0
  274. package/out/zql/src/planner/planner-fan-in.d.ts +37 -0
  275. package/out/zql/src/planner/planner-fan-in.d.ts.map +1 -0
  276. package/out/zql/src/planner/planner-fan-in.js +149 -0
  277. package/out/zql/src/planner/planner-fan-in.js.map +1 -0
  278. package/out/zql/src/planner/planner-fan-out.d.ts +21 -0
  279. package/out/zql/src/planner/planner-fan-out.d.ts.map +1 -0
  280. package/out/zql/src/planner/planner-fan-out.js +45 -0
  281. package/out/zql/src/planner/planner-fan-out.js.map +1 -0
  282. package/out/zql/src/planner/planner-graph.d.ts +103 -0
  283. package/out/zql/src/planner/planner-graph.d.ts.map +1 -0
  284. package/out/zql/src/planner/planner-graph.js +411 -0
  285. package/out/zql/src/planner/planner-graph.js.map +1 -0
  286. package/out/zql/src/planner/planner-join.d.ts +81 -0
  287. package/out/zql/src/planner/planner-join.d.ts.map +1 -0
  288. package/out/zql/src/planner/planner-join.js +246 -0
  289. package/out/zql/src/planner/planner-join.js.map +1 -0
  290. package/out/zql/src/planner/planner-node.d.ts +21 -0
  291. package/out/zql/src/planner/planner-node.d.ts.map +1 -0
  292. package/out/zql/src/planner/planner-node.js +2 -0
  293. package/out/zql/src/planner/planner-node.js.map +1 -0
  294. package/out/zql/src/planner/planner-source.d.ts +11 -0
  295. package/out/zql/src/planner/planner-source.d.ts.map +1 -0
  296. package/out/zql/src/planner/planner-source.js +13 -0
  297. package/out/zql/src/planner/planner-source.js.map +1 -0
  298. package/out/zql/src/planner/planner-terminus.d.ts +16 -0
  299. package/out/zql/src/planner/planner-terminus.d.ts.map +1 -0
  300. package/out/zql/src/planner/planner-terminus.js +28 -0
  301. package/out/zql/src/planner/planner-terminus.js.map +1 -0
  302. package/out/zql/src/query/expression.d.ts +2 -2
  303. package/out/zql/src/query/expression.d.ts.map +1 -1
  304. package/out/zql/src/query/expression.js.map +1 -1
  305. package/out/zql/src/query/query-delegate.d.ts +3 -3
  306. package/out/zql/src/query/query-delegate.d.ts.map +1 -1
  307. package/out/zql/src/query/query-impl.d.ts +8 -8
  308. package/out/zql/src/query/query-impl.d.ts.map +1 -1
  309. package/out/zql/src/query/query-impl.js.map +1 -1
  310. package/out/zql/src/query/query.d.ts +3 -3
  311. package/out/zql/src/query/query.d.ts.map +1 -1
  312. package/out/zql/src/query/static-query.d.ts +1 -1
  313. package/out/zql/src/query/static-query.d.ts.map +1 -1
  314. package/out/zql/src/query/static-query.js.map +1 -1
  315. package/out/zql/src/query/typed-view.d.ts +1 -1
  316. package/out/zql/src/query/typed-view.d.ts.map +1 -1
  317. package/out/zqlite/src/query-delegate.d.ts +1 -1
  318. package/out/zqlite/src/query-delegate.d.ts.map +1 -1
  319. package/out/zqlite/src/query-delegate.js.map +1 -1
  320. package/out/zqlite/src/sqlite-cost-model.d.ts +17 -0
  321. package/out/zqlite/src/sqlite-cost-model.d.ts.map +1 -0
  322. package/out/zqlite/src/sqlite-cost-model.js +134 -0
  323. package/out/zqlite/src/sqlite-cost-model.js.map +1 -0
  324. package/out/zqlite/src/table-source.d.ts +1 -1
  325. package/out/zqlite/src/table-source.d.ts.map +1 -1
  326. package/out/zqlite/src/table-source.js.map +1 -1
  327. package/package.json +4 -3
  328. package/out/chunk-BJ2CGCME.js.map +0 -7
  329. package/out/chunk-MXPHMVU7.js.map +0 -7
  330. package/out/zero-cache/src/types/error-for-client.d.ts +0 -23
  331. package/out/zero-cache/src/types/error-for-client.d.ts.map +0 -1
  332. package/out/zero-cache/src/types/error-for-client.js +0 -28
  333. package/out/zero-cache/src/types/error-for-client.js.map +0 -1
  334. package/out/zero-client/src/client/ping-result-enum.d.ts +0 -5
  335. package/out/zero-client/src/client/ping-result-enum.d.ts.map +0 -1
  336. /package/out/{chunk-4RB4OYLQ.js.map → chunk-TJFNGO7E.js.map} +0 -0
  337. /package/out/{lazy-inspector-2SW772W4.js.map → lazy-inspector-OXIFYSSQ.js.map} +0 -0
@@ -0,0 +1,5 @@
1
+ import type { Enum } from '../../shared/src/enum.ts';
2
+ import * as ErrorReasonEnum from './error-reason-enum.ts';
3
+ export { ErrorReasonEnum as ErrorReason };
4
+ export type ErrorReason = Enum<typeof ErrorReasonEnum>;
5
+ //# sourceMappingURL=error-reason.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"error-reason.d.ts","sourceRoot":"","sources":["../../../../zero-protocol/src/error-reason.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,IAAI,EAAC,MAAM,0BAA0B,CAAC;AACnD,OAAO,KAAK,eAAe,MAAM,wBAAwB,CAAC;AAE1D,OAAO,EAAC,eAAe,IAAI,WAAW,EAAC,CAAC;AACxC,MAAM,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,eAAe,CAAC,CAAC"}
@@ -0,0 +1,3 @@
1
+ import * as ErrorReasonEnum from "./error-reason-enum.js";
2
+ export { ErrorReasonEnum as ErrorReason };
3
+ //# sourceMappingURL=error-reason.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"error-reason.js","sourceRoot":"","sources":["../../../../zero-protocol/src/error-reason.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,eAAe,MAAM,wBAAwB,CAAC;AAE1D,OAAO,EAAC,eAAe,IAAI,WAAW,EAAC,CAAC"}
@@ -6,21 +6,159 @@ declare const backoffBodySchema: v.ObjectType<{
6
6
  minBackoffMs: v.Optional<number>;
7
7
  maxBackoffMs: v.Optional<number>;
8
8
  reconnectParams: v.Optional<Record<string, string>>;
9
+ origin: v.Optional<"zeroCache">;
9
10
  }, undefined>;
10
11
  export declare const errorKindSchema: v.Type<ErrorKind>;
12
+ export declare const pushFailedBodySchema: v.UnionType<[v.ObjectType<Omit<{
13
+ kind: v.Type<"PushFailed">;
14
+ details: v.Optional<import("../../shared/src/json.ts").ReadonlyJSONValue>;
15
+ mutationIDs: v.ArrayType<v.ObjectType<{
16
+ id: v.Type<number>;
17
+ clientID: v.Type<string>;
18
+ }, undefined>>;
19
+ message: v.Type<string>;
20
+ }, "origin" | "reason"> & {
21
+ origin: v.Type<"server">;
22
+ reason: v.Type<"database" | "parse" | "oooMutation" | "unsupportedPushVersion" | "internal">;
23
+ }, undefined>, v.ObjectType<Omit<{
24
+ kind: v.Type<"PushFailed">;
25
+ details: v.Optional<import("../../shared/src/json.ts").ReadonlyJSONValue>;
26
+ mutationIDs: v.ArrayType<v.ObjectType<{
27
+ id: v.Type<number>;
28
+ clientID: v.Type<string>;
29
+ }, undefined>>;
30
+ message: v.Type<string>;
31
+ }, "status" | "origin" | "reason" | "bodyPreview"> & {
32
+ origin: v.Type<"zeroCache">;
33
+ reason: v.Type<"http">;
34
+ status: v.Type<number>;
35
+ bodyPreview: v.Optional<string>;
36
+ }, undefined>, v.ObjectType<Omit<{
37
+ kind: v.Type<"PushFailed">;
38
+ details: v.Optional<import("../../shared/src/json.ts").ReadonlyJSONValue>;
39
+ mutationIDs: v.ArrayType<v.ObjectType<{
40
+ id: v.Type<number>;
41
+ clientID: v.Type<string>;
42
+ }, undefined>>;
43
+ message: v.Type<string>;
44
+ }, "origin" | "reason"> & {
45
+ origin: v.Type<"zeroCache">;
46
+ reason: v.Type<"parse" | "internal" | "timeout">;
47
+ }, undefined>]>;
48
+ export declare const transformFailedBodySchema: v.UnionType<[v.ObjectType<Omit<{
49
+ kind: v.Type<"TransformFailed">;
50
+ details: v.Optional<import("../../shared/src/json.ts").ReadonlyJSONValue>;
51
+ queryIDs: v.ArrayType<v.Type<string>>;
52
+ message: v.Type<string>;
53
+ }, "origin" | "reason"> & {
54
+ origin: v.Type<"server">;
55
+ reason: v.Type<"database" | "parse" | "internal">;
56
+ }, undefined>, v.ObjectType<Omit<{
57
+ kind: v.Type<"TransformFailed">;
58
+ details: v.Optional<import("../../shared/src/json.ts").ReadonlyJSONValue>;
59
+ queryIDs: v.ArrayType<v.Type<string>>;
60
+ message: v.Type<string>;
61
+ }, "status" | "origin" | "reason" | "bodyPreview"> & {
62
+ origin: v.Type<"zeroCache">;
63
+ reason: v.Type<"http">;
64
+ status: v.Type<number>;
65
+ bodyPreview: v.Optional<string>;
66
+ }, undefined>, v.ObjectType<Omit<{
67
+ kind: v.Type<"TransformFailed">;
68
+ details: v.Optional<import("../../shared/src/json.ts").ReadonlyJSONValue>;
69
+ queryIDs: v.ArrayType<v.Type<string>>;
70
+ message: v.Type<string>;
71
+ }, "origin" | "reason"> & {
72
+ origin: v.Type<"zeroCache">;
73
+ reason: v.Type<"parse" | "internal" | "timeout">;
74
+ }, undefined>]>;
11
75
  export declare const errorBodySchema: v.UnionType<[v.ObjectType<{
12
76
  kind: v.Type<"VersionNotSupported" | "AuthInvalidated" | "ClientNotFound" | "InvalidConnectionRequest" | "InvalidConnectionRequestBaseCookie" | "InvalidConnectionRequestLastMutationID" | "InvalidConnectionRequestClientDeleted" | "InvalidMessage" | "InvalidPush" | "MutationFailed" | "MutationRateLimited" | "Unauthorized" | "SchemaVersionNotSupported" | "Internal">;
13
77
  message: v.Type<string>;
78
+ origin: v.Optional<"server" | "zeroCache">;
14
79
  }, undefined>, v.ObjectType<{
15
80
  kind: v.Type<"Rebalance" | "Rehome" | "ServerOverloaded">;
16
81
  message: v.Type<string>;
17
82
  minBackoffMs: v.Optional<number>;
18
83
  maxBackoffMs: v.Optional<number>;
19
84
  reconnectParams: v.Optional<Record<string, string>>;
20
- }, undefined>]>;
85
+ origin: v.Optional<"zeroCache">;
86
+ }, undefined>, v.UnionType<[v.ObjectType<Omit<{
87
+ kind: v.Type<"PushFailed">;
88
+ details: v.Optional<import("../../shared/src/json.ts").ReadonlyJSONValue>;
89
+ mutationIDs: v.ArrayType<v.ObjectType<{
90
+ id: v.Type<number>;
91
+ clientID: v.Type<string>;
92
+ }, undefined>>;
93
+ message: v.Type<string>;
94
+ }, "origin" | "reason"> & {
95
+ origin: v.Type<"server">;
96
+ reason: v.Type<"database" | "parse" | "oooMutation" | "unsupportedPushVersion" | "internal">;
97
+ }, undefined>, v.ObjectType<Omit<{
98
+ kind: v.Type<"PushFailed">;
99
+ details: v.Optional<import("../../shared/src/json.ts").ReadonlyJSONValue>;
100
+ mutationIDs: v.ArrayType<v.ObjectType<{
101
+ id: v.Type<number>;
102
+ clientID: v.Type<string>;
103
+ }, undefined>>;
104
+ message: v.Type<string>;
105
+ }, "status" | "origin" | "reason" | "bodyPreview"> & {
106
+ origin: v.Type<"zeroCache">;
107
+ reason: v.Type<"http">;
108
+ status: v.Type<number>;
109
+ bodyPreview: v.Optional<string>;
110
+ }, undefined>, v.ObjectType<Omit<{
111
+ kind: v.Type<"PushFailed">;
112
+ details: v.Optional<import("../../shared/src/json.ts").ReadonlyJSONValue>;
113
+ mutationIDs: v.ArrayType<v.ObjectType<{
114
+ id: v.Type<number>;
115
+ clientID: v.Type<string>;
116
+ }, undefined>>;
117
+ message: v.Type<string>;
118
+ }, "origin" | "reason"> & {
119
+ origin: v.Type<"zeroCache">;
120
+ reason: v.Type<"parse" | "internal" | "timeout">;
121
+ }, undefined>]>, v.UnionType<[v.ObjectType<Omit<{
122
+ kind: v.Type<"TransformFailed">;
123
+ details: v.Optional<import("../../shared/src/json.ts").ReadonlyJSONValue>;
124
+ queryIDs: v.ArrayType<v.Type<string>>;
125
+ message: v.Type<string>;
126
+ }, "origin" | "reason"> & {
127
+ origin: v.Type<"server">;
128
+ reason: v.Type<"database" | "parse" | "internal">;
129
+ }, undefined>, v.ObjectType<Omit<{
130
+ kind: v.Type<"TransformFailed">;
131
+ details: v.Optional<import("../../shared/src/json.ts").ReadonlyJSONValue>;
132
+ queryIDs: v.ArrayType<v.Type<string>>;
133
+ message: v.Type<string>;
134
+ }, "status" | "origin" | "reason" | "bodyPreview"> & {
135
+ origin: v.Type<"zeroCache">;
136
+ reason: v.Type<"http">;
137
+ status: v.Type<number>;
138
+ bodyPreview: v.Optional<string>;
139
+ }, undefined>, v.ObjectType<Omit<{
140
+ kind: v.Type<"TransformFailed">;
141
+ details: v.Optional<import("../../shared/src/json.ts").ReadonlyJSONValue>;
142
+ queryIDs: v.ArrayType<v.Type<string>>;
143
+ message: v.Type<string>;
144
+ }, "origin" | "reason"> & {
145
+ origin: v.Type<"zeroCache">;
146
+ reason: v.Type<"parse" | "internal" | "timeout">;
147
+ }, undefined>]>]>;
21
148
  export type BackoffBody = v.Infer<typeof backoffBodySchema>;
149
+ export type PushFailedBody = v.Infer<typeof pushFailedBodySchema>;
150
+ export type TransformFailedBody = v.Infer<typeof transformFailedBodySchema>;
22
151
  export type ErrorBody = v.Infer<typeof errorBodySchema>;
23
152
  export declare const errorMessageSchema: v.Type<ErrorMessage>;
24
153
  export type ErrorMessage = ['error', ErrorBody];
154
+ /**
155
+ * Represents an error used across zero-client, zero-cache, and zero-server.
156
+ */
157
+ export declare class ProtocolError<const T extends ErrorBody = ErrorBody> extends Error {
158
+ readonly errorBody: T;
159
+ constructor(errorBody: T, options?: ErrorOptions);
160
+ get kind(): T['kind'];
161
+ }
162
+ export declare function isProtocolError(error: unknown): error is ProtocolError;
25
163
  export {};
26
164
  //# sourceMappingURL=error.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"error.d.ts","sourceRoot":"","sources":["../../../../zero-protocol/src/error.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,4BAA4B,CAAC;AAChD,OAAO,EAAC,SAAS,EAAC,MAAM,iBAAiB,CAAC;AA8B1C,QAAA,MAAM,iBAAiB;;;;;;aAarB,CAAC;AAEH,eAAO,MAAM,eAAe,EAAE,CAAC,CAAC,IAAI,CAAC,SAAS,CAG7C,CAAC;AAEF,eAAO,MAAM,eAAe;;;;;;;;;eAAmD,CAAC;AAEhF,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAE5D,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAC;AAExD,eAAO,MAAM,kBAAkB,EAAE,CAAC,CAAC,IAAI,CAAC,YAAY,CAGlD,CAAC;AAEH,MAAM,MAAM,YAAY,GAAG,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC"}
1
+ {"version":3,"file":"error.d.ts","sourceRoot":"","sources":["../../../../zero-protocol/src/error.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,CAAC,MAAM,4BAA4B,CAAC;AAEhD,OAAO,EAAC,SAAS,EAAC,MAAM,iBAAiB,CAAC;AAkC1C,QAAA,MAAM,iBAAiB;;;;;;;aAcrB,CAAC;AAKH,eAAO,MAAM,eAAe,EAAE,CAAC,CAAC,IAAI,CAAC,SAAS,CAK7C,CAAC;AASF,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;eAyBhC,CAAC;AASF,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;;;;;;;;eAuBrC,CAAC;AAEF,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAK3B,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAC5D,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAClE,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAC;AAC5E,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAC;AAExD,eAAO,MAAM,kBAAkB,EAAE,CAAC,CAAC,IAAI,CAAC,YAAY,CAGlD,CAAC;AAEH,MAAM,MAAM,YAAY,GAAG,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;AAEhD;;GAEG;AACH,qBAAa,aAAa,CACxB,KAAK,CAAC,CAAC,SAAS,SAAS,GAAG,SAAS,CACrC,SAAQ,KAAK;IACb,QAAQ,CAAC,SAAS,EAAE,CAAC,CAAC;gBAEV,SAAS,EAAE,CAAC,EAAE,OAAO,CAAC,EAAE,YAAY;IAMhD,IAAI,IAAI,IAAI,CAAC,CAAC,MAAM,CAAC,CAEpB;CACF;AAED,wBAAgB,eAAe,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,aAAa,CAEtE"}
@@ -1,9 +1,15 @@
1
+ import { jsonSchema } from "../../shared/src/json-schema.js";
1
2
  import * as v from "../../shared/src/valita.js";
3
+ import { mutationIDSchema } from "./mutation-id.js";
2
4
  import { ErrorKind } from "./error-kind.js";
5
+ import { ErrorOrigin } from "./error-origin.js";
6
+ import { ErrorReason } from "./error-reason.js";
3
7
  const basicErrorKindSchema = 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);
4
8
  const basicErrorBodySchema = v.object({
5
9
  kind: basicErrorKindSchema,
6
10
  message: v.string(),
11
+ // this is optional for backwards compatibility
12
+ origin: v.literalUnion(ErrorOrigin.Server, ErrorOrigin.ZeroCache).optional(),
7
13
  });
8
14
  const backoffErrorKindSchema = v.literalUnion(ErrorKind.Rebalance, ErrorKind.Rehome, ErrorKind.ServerOverloaded);
9
15
  const backoffBodySchema = v.object({
@@ -19,11 +25,67 @@ const backoffBodySchema = v.object({
19
25
  // The parameters will only be added to the immediately following
20
26
  // reconnect, and not after that.
21
27
  reconnectParams: v.record(v.string()).optional(),
28
+ origin: v.literal(ErrorOrigin.ZeroCache).optional(),
22
29
  });
23
- export const errorKindSchema = v.union(basicErrorKindSchema, backoffErrorKindSchema);
24
- export const errorBodySchema = v.union(basicErrorBodySchema, backoffBodySchema);
30
+ const pushFailedErrorKindSchema = v.literal(ErrorKind.PushFailed);
31
+ const transformFailedErrorKindSchema = v.literal(ErrorKind.TransformFailed);
32
+ export const errorKindSchema = v.union(basicErrorKindSchema, backoffErrorKindSchema, pushFailedErrorKindSchema, transformFailedErrorKindSchema);
33
+ const pushFailedBaseSchema = v.object({
34
+ kind: pushFailedErrorKindSchema,
35
+ details: jsonSchema.optional(),
36
+ mutationIDs: v.array(mutationIDSchema),
37
+ message: v.string(),
38
+ });
39
+ export const pushFailedBodySchema = v.union(pushFailedBaseSchema.extend({
40
+ origin: v.literal(ErrorOrigin.Server),
41
+ reason: v.literalUnion(ErrorReason.Database, ErrorReason.Parse, ErrorReason.OutOfOrderMutation, ErrorReason.UnsupportedPushVersion, ErrorReason.Internal),
42
+ }), pushFailedBaseSchema.extend({
43
+ origin: v.literal(ErrorOrigin.ZeroCache),
44
+ reason: v.literal(ErrorReason.HTTP),
45
+ status: v.number(),
46
+ bodyPreview: v.string().optional(),
47
+ }), pushFailedBaseSchema.extend({
48
+ origin: v.literal(ErrorOrigin.ZeroCache),
49
+ reason: v.literalUnion(ErrorReason.Timeout, ErrorReason.Parse, ErrorReason.Internal),
50
+ }));
51
+ const transformFailedBaseSchema = v.object({
52
+ kind: transformFailedErrorKindSchema,
53
+ details: jsonSchema.optional(),
54
+ queryIDs: v.array(v.string()),
55
+ message: v.string(),
56
+ });
57
+ export const transformFailedBodySchema = v.union(transformFailedBaseSchema.extend({
58
+ origin: v.literal(ErrorOrigin.Server),
59
+ reason: v.literalUnion(ErrorReason.Database, ErrorReason.Parse, ErrorReason.Internal),
60
+ }), transformFailedBaseSchema.extend({
61
+ origin: v.literal(ErrorOrigin.ZeroCache),
62
+ reason: v.literal(ErrorReason.HTTP),
63
+ status: v.number(),
64
+ bodyPreview: v.string().optional(),
65
+ }), transformFailedBaseSchema.extend({
66
+ origin: v.literal(ErrorOrigin.ZeroCache),
67
+ reason: v.literalUnion(ErrorReason.Timeout, ErrorReason.Parse, ErrorReason.Internal),
68
+ }));
69
+ export const errorBodySchema = v.union(basicErrorBodySchema, backoffBodySchema, pushFailedBodySchema, transformFailedBodySchema);
25
70
  export const errorMessageSchema = v.tuple([
26
71
  v.literal('error'),
27
72
  errorBodySchema,
28
73
  ]);
74
+ /**
75
+ * Represents an error used across zero-client, zero-cache, and zero-server.
76
+ */
77
+ export class ProtocolError extends Error {
78
+ errorBody;
79
+ constructor(errorBody, options) {
80
+ super(errorBody.message, options);
81
+ this.name = 'ProtocolError';
82
+ this.errorBody = errorBody;
83
+ }
84
+ get kind() {
85
+ return this.errorBody.kind;
86
+ }
87
+ }
88
+ export function isProtocolError(error) {
89
+ return error instanceof ProtocolError;
90
+ }
29
91
  //# sourceMappingURL=error.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"error.js","sourceRoot":"","sources":["../../../../zero-protocol/src/error.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,4BAA4B,CAAC;AAChD,OAAO,EAAC,SAAS,EAAC,MAAM,iBAAiB,CAAC;AAE1C,MAAM,oBAAoB,GAAG,CAAC,CAAC,YAAY,CACzC,SAAS,CAAC,eAAe,EACzB,SAAS,CAAC,cAAc,EACxB,SAAS,CAAC,wBAAwB,EAClC,SAAS,CAAC,kCAAkC,EAC5C,SAAS,CAAC,sCAAsC,EAChD,SAAS,CAAC,qCAAqC,EAC/C,SAAS,CAAC,cAAc,EACxB,SAAS,CAAC,WAAW,EACrB,SAAS,CAAC,mBAAmB,EAC7B,SAAS,CAAC,cAAc,EACxB,SAAS,CAAC,YAAY,EACtB,SAAS,CAAC,mBAAmB,EAC7B,SAAS,CAAC,yBAAyB,EACnC,SAAS,CAAC,QAAQ,CACnB,CAAC;AAEF,MAAM,oBAAoB,GAAG,CAAC,CAAC,MAAM,CAAC;IACpC,IAAI,EAAE,oBAAoB;IAC1B,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE;CACpB,CAAC,CAAC;AAEH,MAAM,sBAAsB,GAAG,CAAC,CAAC,YAAY,CAC3C,SAAS,CAAC,SAAS,EACnB,SAAS,CAAC,MAAM,EAChB,SAAS,CAAC,gBAAgB,CAC3B,CAAC;AAEF,MAAM,iBAAiB,GAAG,CAAC,CAAC,MAAM,CAAC;IACjC,IAAI,EAAE,sBAAsB;IAC5B,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE;IACnB,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACnC,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACnC,kEAAkE;IAClE,iEAAiE;IACjE,8DAA8D;IAC9D,4BAA4B;IAC5B,EAAE;IACF,iEAAiE;IACjE,iCAAiC;IACjC,eAAe,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE;CACjD,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,eAAe,GAAsB,CAAC,CAAC,KAAK,CACvD,oBAAoB,EACpB,sBAAsB,CACvB,CAAC;AAEF,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,oBAAoB,EAAE,iBAAiB,CAAC,CAAC;AAMhF,MAAM,CAAC,MAAM,kBAAkB,GAAyB,CAAC,CAAC,KAAK,CAAC;IAC9D,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC;IAClB,eAAe;CAChB,CAAC,CAAC"}
1
+ {"version":3,"file":"error.js","sourceRoot":"","sources":["../../../../zero-protocol/src/error.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ import * as v from '../../shared/src/valita.ts';
2
+ export declare const mutationIDSchema: v.ObjectType<{
3
+ id: v.Type<number>;
4
+ clientID: v.Type<string>;
5
+ }, undefined>;
6
+ export type MutationID = v.Infer<typeof mutationIDSchema>;
7
+ //# sourceMappingURL=mutation-id.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mutation-id.d.ts","sourceRoot":"","sources":["../../../../zero-protocol/src/mutation-id.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,4BAA4B,CAAC;AAEhD,eAAO,MAAM,gBAAgB;;;aAG3B,CAAC;AAEH,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC"}
@@ -0,0 +1,6 @@
1
+ import * as v from "../../shared/src/valita.js";
2
+ export const mutationIDSchema = v.object({
3
+ id: v.number(),
4
+ clientID: v.string(),
5
+ });
6
+ //# sourceMappingURL=mutation-id.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mutation-id.js","sourceRoot":"","sources":["../../../../zero-protocol/src/mutation-id.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,4BAA4B,CAAC;AAEhD,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,CAAC,MAAM,CAAC;IACvC,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE;IACd,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE;CACrB,CAAC,CAAC"}
@@ -19,7 +19,7 @@ export declare const putOpSchema: v.ObjectType<{
19
19
  error: v.Type<"app">;
20
20
  details: v.Optional<import("../../shared/src/json.ts").ReadonlyJSONValue>;
21
21
  }, undefined>, v.ObjectType<{
22
- error: v.Type<"oooMutation" | "alreadyProcessed">;
22
+ error: v.UnionType<[v.Type<"oooMutation">, v.Type<"alreadyProcessed">]>;
23
23
  details: v.Optional<import("../../shared/src/json.ts").ReadonlyJSONValue>;
24
24
  }, undefined>]>]>;
25
25
  }, undefined>;
@@ -44,7 +44,7 @@ declare const patchOpSchema: v.UnionType<[v.ObjectType<{
44
44
  error: v.Type<"app">;
45
45
  details: v.Optional<import("../../shared/src/json.ts").ReadonlyJSONValue>;
46
46
  }, undefined>, v.ObjectType<{
47
- error: v.Type<"oooMutation" | "alreadyProcessed">;
47
+ error: v.UnionType<[v.Type<"oooMutation">, v.Type<"alreadyProcessed">]>;
48
48
  details: v.Optional<import("../../shared/src/json.ts").ReadonlyJSONValue>;
49
49
  }, undefined>]>]>;
50
50
  }, undefined>;
@@ -68,7 +68,7 @@ export declare const mutationsPatchSchema: v.ArrayType<v.UnionType<[v.ObjectType
68
68
  error: v.Type<"app">;
69
69
  details: v.Optional<import("../../shared/src/json.ts").ReadonlyJSONValue>;
70
70
  }, undefined>, v.ObjectType<{
71
- error: v.Type<"oooMutation" | "alreadyProcessed">;
71
+ error: v.UnionType<[v.Type<"oooMutation">, v.Type<"alreadyProcessed">]>;
72
72
  details: v.Optional<import("../../shared/src/json.ts").ReadonlyJSONValue>;
73
73
  }, undefined>]>]>;
74
74
  }, undefined>;
@@ -1 +1 @@
1
- {"version":3,"file":"mutations-patch.d.ts","sourceRoot":"","sources":["../../../../zero-protocol/src/mutations-patch.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,4BAA4B,CAAC;AAGhD;;;;;;GAMG;AACH,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;;aAGtB,CAAC;AACH,eAAO,MAAM,WAAW;;;;;;aAGtB,CAAC;AAEH,QAAA,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;eAAoC,CAAC;AACxD,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;gBAAyB,CAAC;AAC3D,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,aAAa,CAAC,CAAC"}
1
+ {"version":3,"file":"mutations-patch.d.ts","sourceRoot":"","sources":["../../../../zero-protocol/src/mutations-patch.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,4BAA4B,CAAC;AAIhD;;;;;;GAMG;AACH,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;;aAGtB,CAAC;AACH,eAAO,MAAM,WAAW;;;;;;aAGtB,CAAC;AAEH,QAAA,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;eAAoC,CAAC;AACxD,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;gBAAyB,CAAC;AAC3D,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,aAAa,CAAC,CAAC"}
@@ -1,5 +1,6 @@
1
1
  import * as v from "../../shared/src/valita.js";
2
- import { mutationIDSchema, mutationResponseSchema } from "./push.js";
2
+ import { mutationIDSchema } from "./mutation-id.js";
3
+ import { mutationResponseSchema } from "./push.js";
3
4
  /**
4
5
  * Mutation results are stored ephemerally in the client
5
6
  * hence why we only have the `put` operation.
@@ -1 +1 @@
1
- {"version":3,"file":"mutations-patch.js","sourceRoot":"","sources":["../../../../zero-protocol/src/mutations-patch.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,4BAA4B,CAAC;AAChD,OAAO,EAAC,gBAAgB,EAAE,sBAAsB,EAAC,MAAM,WAAW,CAAC;AAEnE;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,CAAC,MAAM,CAAC;IAClC,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC;IACpB,QAAQ,EAAE,sBAAsB;CACjC,CAAC,CAAC;AACH,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,CAAC,MAAM,CAAC;IAClC,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC;IACpB,EAAE,EAAE,gBAAgB;CACrB,CAAC,CAAC;AAEH,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;AACxD,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC"}
1
+ {"version":3,"file":"mutations-patch.js","sourceRoot":"","sources":["../../../../zero-protocol/src/mutations-patch.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,4BAA4B,CAAC;AAChD,OAAO,EAAC,gBAAgB,EAAC,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAC,sBAAsB,EAAC,MAAM,WAAW,CAAC;AAEjD;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,CAAC,MAAM,CAAC;IAClC,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC;IACpB,QAAQ,EAAE,sBAAsB;CACjC,CAAC,CAAC;AACH,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,CAAC,MAAM,CAAC;IAClC,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC;IACpB,EAAE,EAAE,gBAAgB;CACrB,CAAC,CAAC;AAEH,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;AACxD,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC"}
@@ -10,7 +10,7 @@
10
10
  * release. The server (`zero-cache`) must be deployed before clients start
11
11
  * running the new code.
12
12
  */
13
- export declare const PROTOCOL_VERSION = 37;
13
+ export declare const PROTOCOL_VERSION = 38;
14
14
  /**
15
15
  * The minimum server-supported sync protocol version (i.e. the version
16
16
  * declared in the "/sync/v{#}/connect" URL). The contract for
@@ -1 +1 @@
1
- {"version":3,"file":"protocol-version.d.ts","sourceRoot":"","sources":["../../../../zero-protocol/src/protocol-version.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;GAWG;AAgCH,eAAO,MAAM,gBAAgB,KAAK,CAAC;AAEnC;;;;;;;;;GASG;AACH,eAAO,MAAM,kCAAkC,KAAK,CAAC"}
1
+ {"version":3,"file":"protocol-version.d.ts","sourceRoot":"","sources":["../../../../zero-protocol/src/protocol-version.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;GAWG;AAiCH,eAAO,MAAM,gBAAgB,KAAK,CAAC;AAEnC;;;;;;;;;GASG;AACH,eAAO,MAAM,kCAAkC,KAAK,CAAC"}
@@ -42,7 +42,8 @@ import { assert } from "../../shared/src/asserts.js";
42
42
  // -- version 35 adds `readRows`, `readRowCountsByQuery` and `readRowCount` to analyze-query result (0.25)
43
43
  // -- version 36 changes inspector analyze-query and adds error response to RPC (0.25)
44
44
  // -- version 37 adds `elapsed` to AnalyzeQueryResult (0.25)
45
- export const PROTOCOL_VERSION = 37;
45
+ // -- version 38 adds structured push/transform error responses (0.25)
46
+ export const PROTOCOL_VERSION = 38;
46
47
  /**
47
48
  * The minimum server-supported sync protocol version (i.e. the version
48
49
  * declared in the "/sync/v{#}/connect" URL). The contract for
@@ -1 +1 @@
1
- {"version":3,"file":"protocol-version.js","sourceRoot":"","sources":["../../../../zero-protocol/src/protocol-version.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,MAAM,EAAC,MAAM,6BAA6B,CAAC;AAEnD;;;;;;;;;;;GAWG;AACH,WAAW;AACX,yDAAyD;AACzD,yDAAyD;AACzD,wEAAwE;AACxE,mDAAmD;AACnD,6CAA6C;AAC7C,uHAAuH;AACvH,6FAA6F;AAC7F,yEAAyE;AACzE,sFAAsF;AACtF,4FAA4F;AAC5F,8EAA8E;AAC9E,6EAA6E;AAC7E,sDAAsD;AACtD,oIAAoI;AACpI,oFAAoF;AACpF,qDAAqD;AACrD,8DAA8D;AAC9D,4EAA4E;AAC5E,8EAA8E;AAC9E,4CAA4C;AAC5C,iDAAiD;AACjD,+DAA+D;AAC/D,uEAAuE;AACvE,iFAAiF;AACjF,qEAAqE;AACrE,yDAAyD;AACzD,2FAA2F;AAC3F,0GAA0G;AAC1G,sFAAsF;AACtF,4DAA4D;AAC5D,MAAM,CAAC,MAAM,gBAAgB,GAAG,EAAE,CAAC;AAEnC;;;;;;;;;GASG;AACH,MAAM,CAAC,MAAM,kCAAkC,GAAG,EAAE,CAAC;AAErD,MAAM,CAAC,kCAAkC,GAAG,gBAAgB,CAAC,CAAC"}
1
+ {"version":3,"file":"protocol-version.js","sourceRoot":"","sources":["../../../../zero-protocol/src/protocol-version.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,MAAM,EAAC,MAAM,6BAA6B,CAAC;AAEnD;;;;;;;;;;;GAWG;AACH,WAAW;AACX,yDAAyD;AACzD,yDAAyD;AACzD,wEAAwE;AACxE,mDAAmD;AACnD,6CAA6C;AAC7C,uHAAuH;AACvH,6FAA6F;AAC7F,yEAAyE;AACzE,sFAAsF;AACtF,4FAA4F;AAC5F,8EAA8E;AAC9E,6EAA6E;AAC7E,sDAAsD;AACtD,oIAAoI;AACpI,oFAAoF;AACpF,qDAAqD;AACrD,8DAA8D;AAC9D,4EAA4E;AAC5E,8EAA8E;AAC9E,4CAA4C;AAC5C,iDAAiD;AACjD,+DAA+D;AAC/D,uEAAuE;AACvE,iFAAiF;AACjF,qEAAqE;AACrE,yDAAyD;AACzD,2FAA2F;AAC3F,0GAA0G;AAC1G,sFAAsF;AACtF,4DAA4D;AAC5D,sEAAsE;AACtE,MAAM,CAAC,MAAM,gBAAgB,GAAG,EAAE,CAAC;AAEnC;;;;;;;;;GASG;AACH,MAAM,CAAC,MAAM,kCAAkC,GAAG,EAAE,CAAC;AAErD,MAAM,CAAC,kCAAkC,GAAG,gBAAgB,CAAC,CAAC"}