@rocicorp/zero 1.10.0-canary.23 → 1.10.0-canary.25

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 (485) hide show
  1. package/out/analyze-query/src/bin-analyze.js +1 -1
  2. package/out/analyze-query/src/bin-analyze.js.map +1 -1
  3. package/out/replicache/src/btree/read.d.ts +1 -12
  4. package/out/replicache/src/btree/read.d.ts.map +1 -1
  5. package/out/replicache/src/btree/read.js +12 -24
  6. package/out/replicache/src/btree/read.js.map +1 -1
  7. package/out/replicache/src/dag/gc.d.ts.map +1 -1
  8. package/out/replicache/src/dag/gc.js +1 -2
  9. package/out/replicache/src/dag/gc.js.map +1 -1
  10. package/out/replicache/src/dag/store-impl.d.ts +2 -12
  11. package/out/replicache/src/dag/store-impl.d.ts.map +1 -1
  12. package/out/replicache/src/dag/store-impl.js +8 -22
  13. package/out/replicache/src/dag/store-impl.js.map +1 -1
  14. package/out/replicache/src/db/rebase.d.ts +2 -14
  15. package/out/replicache/src/db/rebase.d.ts.map +1 -1
  16. package/out/replicache/src/db/rebase.js +5 -27
  17. package/out/replicache/src/db/rebase.js.map +1 -1
  18. package/out/replicache/src/db/write.js.map +1 -1
  19. package/out/replicache/src/kv/expo-sqlite/store.d.ts.map +1 -1
  20. package/out/replicache/src/kv/expo-sqlite/store.js +5 -28
  21. package/out/replicache/src/kv/expo-sqlite/store.js.map +1 -1
  22. package/out/replicache/src/kv/idb-store-with-mem-fallback.d.ts +5 -15
  23. package/out/replicache/src/kv/idb-store-with-mem-fallback.d.ts.map +1 -1
  24. package/out/replicache/src/kv/idb-store-with-mem-fallback.js +25 -25
  25. package/out/replicache/src/kv/idb-store-with-mem-fallback.js.map +1 -1
  26. package/out/replicache/src/kv/idb-store.d.ts +0 -9
  27. package/out/replicache/src/kv/idb-store.d.ts.map +1 -1
  28. package/out/replicache/src/kv/idb-store.js +2 -14
  29. package/out/replicache/src/kv/idb-store.js.map +1 -1
  30. package/out/replicache/src/kv/mem-store.d.ts +0 -1
  31. package/out/replicache/src/kv/mem-store.d.ts.map +1 -1
  32. package/out/replicache/src/kv/mem-store.js +0 -3
  33. package/out/replicache/src/kv/mem-store.js.map +1 -1
  34. package/out/replicache/src/kv/op-sqlite/store.d.ts.map +1 -1
  35. package/out/replicache/src/kv/op-sqlite/store.js +1 -1
  36. package/out/replicache/src/kv/op-sqlite/store.js.map +1 -1
  37. package/out/replicache/src/kv/sqlite-store.d.ts +1 -13
  38. package/out/replicache/src/kv/sqlite-store.d.ts.map +1 -1
  39. package/out/replicache/src/kv/sqlite-store.js +4 -49
  40. package/out/replicache/src/kv/sqlite-store.js.map +1 -1
  41. package/out/replicache/src/kv/store.d.ts +0 -6
  42. package/out/replicache/src/kv/store.d.ts.map +1 -1
  43. package/out/replicache/src/persist/collect-idb-databases.d.ts +5 -10
  44. package/out/replicache/src/persist/collect-idb-databases.d.ts.map +1 -1
  45. package/out/replicache/src/persist/collect-idb-databases.js +9 -16
  46. package/out/replicache/src/persist/collect-idb-databases.js.map +1 -1
  47. package/out/replicache/src/persist/persist.d.ts.map +1 -1
  48. package/out/replicache/src/persist/persist.js +5 -12
  49. package/out/replicache/src/persist/persist.js.map +1 -1
  50. package/out/replicache/src/persist/refresh.js +2 -6
  51. package/out/replicache/src/persist/refresh.js.map +1 -1
  52. package/out/replicache/src/replicache-impl.d.ts +3 -14
  53. package/out/replicache/src/replicache-impl.d.ts.map +1 -1
  54. package/out/replicache/src/replicache-impl.js +11 -118
  55. package/out/replicache/src/replicache-impl.js.map +1 -1
  56. package/out/replicache/src/replicache-options.d.ts +0 -9
  57. package/out/replicache/src/replicache-options.d.ts.map +1 -1
  58. package/out/replicache/src/transactions.d.ts.map +1 -1
  59. package/out/replicache/src/transactions.js +1 -1
  60. package/out/replicache/src/transactions.js.map +1 -1
  61. package/out/shared/src/arrays.js +15 -1
  62. package/out/shared/src/arrays.js.map +1 -1
  63. package/out/shared/src/base64.d.ts +19 -0
  64. package/out/shared/src/base64.d.ts.map +1 -0
  65. package/out/shared/src/base64.js +40 -0
  66. package/out/shared/src/base64.js.map +1 -0
  67. package/out/shared/src/error.d.ts +0 -11
  68. package/out/shared/src/error.d.ts.map +1 -1
  69. package/out/shared/src/error.js +1 -35
  70. package/out/shared/src/error.js.map +1 -1
  71. package/out/shared/src/hash.d.ts +0 -1
  72. package/out/shared/src/hash.d.ts.map +1 -1
  73. package/out/shared/src/hash.js +10 -87
  74. package/out/shared/src/hash.js.map +1 -1
  75. package/out/shared/src/iterables.d.ts +0 -2
  76. package/out/shared/src/iterables.d.ts.map +1 -1
  77. package/out/shared/src/iterables.js +1 -18
  78. package/out/shared/src/iterables.js.map +1 -1
  79. package/out/shared/src/json.d.ts.map +1 -1
  80. package/out/shared/src/json.js +2 -2
  81. package/out/shared/src/json.js.map +1 -1
  82. package/out/shared/src/map.d.ts +2 -7
  83. package/out/shared/src/map.d.ts.map +1 -1
  84. package/out/shared/src/map.js.map +1 -1
  85. package/out/shared/src/packed-boolean-map.d.ts +7 -0
  86. package/out/shared/src/packed-boolean-map.d.ts.map +1 -0
  87. package/out/shared/src/packed-boolean-map.js +36 -0
  88. package/out/shared/src/packed-boolean-map.js.map +1 -0
  89. package/out/shared/src/ring-buffer.d.ts +0 -8
  90. package/out/shared/src/ring-buffer.d.ts.map +1 -1
  91. package/out/shared/src/ring-buffer.js +1 -22
  92. package/out/shared/src/ring-buffer.js.map +1 -1
  93. package/out/z2s/src/compiler.js +1 -1
  94. package/out/zero/package.js +3 -2
  95. package/out/zero/package.js.map +1 -1
  96. package/out/zero-cache/src/auth/read-authorizer.js +1 -1
  97. package/out/zero-cache/src/config/zero-config.d.ts +2 -27
  98. package/out/zero-cache/src/config/zero-config.d.ts.map +1 -1
  99. package/out/zero-cache/src/config/zero-config.js +28 -114
  100. package/out/zero-cache/src/config/zero-config.js.map +1 -1
  101. package/out/zero-cache/src/custom-queries/transform-query.js +1 -1
  102. package/out/zero-cache/src/db/create.d.ts.map +1 -1
  103. package/out/zero-cache/src/db/create.js +1 -4
  104. package/out/zero-cache/src/db/create.js.map +1 -1
  105. package/out/zero-cache/src/db/lite-tables.d.ts +2 -10
  106. package/out/zero-cache/src/db/lite-tables.d.ts.map +1 -1
  107. package/out/zero-cache/src/db/lite-tables.js +3 -8
  108. package/out/zero-cache/src/db/lite-tables.js.map +1 -1
  109. package/out/zero-cache/src/db/specs.d.ts +0 -41
  110. package/out/zero-cache/src/db/specs.d.ts.map +1 -1
  111. package/out/zero-cache/src/db/specs.js +3 -30
  112. package/out/zero-cache/src/db/specs.js.map +1 -1
  113. package/out/zero-cache/src/server/change-streamer.d.ts.map +1 -1
  114. package/out/zero-cache/src/server/change-streamer.js +4 -13
  115. package/out/zero-cache/src/server/change-streamer.js.map +1 -1
  116. package/out/zero-cache/src/server/inspector-delegate.d.ts +2 -18
  117. package/out/zero-cache/src/server/inspector-delegate.d.ts.map +1 -1
  118. package/out/zero-cache/src/server/inspector-delegate.js +9 -23
  119. package/out/zero-cache/src/server/inspector-delegate.js.map +1 -1
  120. package/out/zero-cache/src/server/main.d.ts.map +1 -1
  121. package/out/zero-cache/src/server/main.js +1 -8
  122. package/out/zero-cache/src/server/main.js.map +1 -1
  123. package/out/zero-cache/src/server/mutator.js +0 -2
  124. package/out/zero-cache/src/server/mutator.js.map +1 -1
  125. package/out/zero-cache/src/server/reaper.d.ts.map +1 -1
  126. package/out/zero-cache/src/server/reaper.js +0 -2
  127. package/out/zero-cache/src/server/reaper.js.map +1 -1
  128. package/out/zero-cache/src/server/replicator.d.ts.map +1 -1
  129. package/out/zero-cache/src/server/replicator.js +2 -8
  130. package/out/zero-cache/src/server/replicator.js.map +1 -1
  131. package/out/zero-cache/src/server/runner/zero-dispatcher.d.ts.map +1 -1
  132. package/out/zero-cache/src/server/runner/zero-dispatcher.js +0 -3
  133. package/out/zero-cache/src/server/runner/zero-dispatcher.js.map +1 -1
  134. package/out/zero-cache/src/server/syncer.d.ts.map +1 -1
  135. package/out/zero-cache/src/server/syncer.js +0 -2
  136. package/out/zero-cache/src/server/syncer.js.map +1 -1
  137. package/out/zero-cache/src/services/analyze.d.ts.map +1 -1
  138. package/out/zero-cache/src/services/analyze.js +2 -3
  139. package/out/zero-cache/src/services/analyze.js.map +1 -1
  140. package/out/zero-cache/src/services/change-source/common/backfill-manager.d.ts.map +1 -1
  141. package/out/zero-cache/src/services/change-source/common/backfill-manager.js +1 -14
  142. package/out/zero-cache/src/services/change-source/common/backfill-manager.js.map +1 -1
  143. package/out/zero-cache/src/services/change-source/common/change-stream-multiplexer.d.ts.map +1 -1
  144. package/out/zero-cache/src/services/change-source/common/change-stream-multiplexer.js +3 -15
  145. package/out/zero-cache/src/services/change-source/common/change-stream-multiplexer.js.map +1 -1
  146. package/out/zero-cache/src/services/change-source/pg/change-source.d.ts +1 -11
  147. package/out/zero-cache/src/services/change-source/pg/change-source.d.ts.map +1 -1
  148. package/out/zero-cache/src/services/change-source/pg/change-source.js +2 -21
  149. package/out/zero-cache/src/services/change-source/pg/change-source.js.map +1 -1
  150. package/out/zero-cache/src/services/change-source/pg/initial-sync.d.ts +0 -1
  151. package/out/zero-cache/src/services/change-source/pg/initial-sync.d.ts.map +1 -1
  152. package/out/zero-cache/src/services/change-source/pg/initial-sync.js +7 -8
  153. package/out/zero-cache/src/services/change-source/pg/initial-sync.js.map +1 -1
  154. package/out/zero-cache/src/services/change-source/pg/schema/ddl.d.ts +229 -1513
  155. package/out/zero-cache/src/services/change-source/pg/schema/ddl.d.ts.map +1 -1
  156. package/out/zero-cache/src/services/change-source/pg/schema/ddl.js +2 -2
  157. package/out/zero-cache/src/services/change-source/pg/schema/ddl.js.map +1 -1
  158. package/out/zero-cache/src/services/change-source/pg/schema/init.d.ts +1 -1
  159. package/out/zero-cache/src/services/change-source/pg/schema/init.d.ts.map +1 -1
  160. package/out/zero-cache/src/services/change-source/pg/schema/init.js +6 -15
  161. package/out/zero-cache/src/services/change-source/pg/schema/init.js.map +1 -1
  162. package/out/zero-cache/src/services/change-source/pg/schema/published.d.ts +20 -137
  163. package/out/zero-cache/src/services/change-source/pg/schema/published.d.ts.map +1 -1
  164. package/out/zero-cache/src/services/change-source/pg/schema/published.js +13 -82
  165. package/out/zero-cache/src/services/change-source/pg/schema/published.js.map +1 -1
  166. package/out/zero-cache/src/services/change-source/pg/schema/shard.d.ts +21 -128
  167. package/out/zero-cache/src/services/change-source/pg/schema/shard.d.ts.map +1 -1
  168. package/out/zero-cache/src/services/change-source/pg/schema/shard.js +5 -5
  169. package/out/zero-cache/src/services/change-source/pg/schema/shard.js.map +1 -1
  170. package/out/zero-cache/src/services/change-source/protocol/current/data.d.ts +0 -2
  171. package/out/zero-cache/src/services/change-source/protocol/current/data.d.ts.map +1 -1
  172. package/out/zero-cache/src/services/change-source/protocol/current/downstream.d.ts +0 -3
  173. package/out/zero-cache/src/services/change-source/protocol/current/downstream.d.ts.map +1 -1
  174. package/out/zero-cache/src/services/change-streamer/change-streamer-http.d.ts +0 -3
  175. package/out/zero-cache/src/services/change-streamer/change-streamer-http.d.ts.map +1 -1
  176. package/out/zero-cache/src/services/change-streamer/change-streamer-http.js +1 -3
  177. package/out/zero-cache/src/services/change-streamer/change-streamer-http.js.map +1 -1
  178. package/out/zero-cache/src/services/change-streamer/change-streamer.d.ts +0 -1
  179. package/out/zero-cache/src/services/change-streamer/change-streamer.d.ts.map +1 -1
  180. package/out/zero-cache/src/services/litestream/commands.d.ts.map +1 -1
  181. package/out/zero-cache/src/services/litestream/commands.js +3 -8
  182. package/out/zero-cache/src/services/litestream/commands.js.map +1 -1
  183. package/out/zero-cache/src/services/litestream/config-v5.yml +1 -15
  184. package/out/zero-cache/src/services/mutagen/mutagen.d.ts +0 -5
  185. package/out/zero-cache/src/services/mutagen/mutagen.d.ts.map +1 -1
  186. package/out/zero-cache/src/services/mutagen/mutagen.js +1 -7
  187. package/out/zero-cache/src/services/mutagen/mutagen.js.map +1 -1
  188. package/out/zero-cache/src/services/mutagen/pusher.d.ts +87 -87
  189. package/out/zero-cache/src/services/mutagen/pusher.js +2 -3
  190. package/out/zero-cache/src/services/mutagen/pusher.js.map +1 -1
  191. package/out/zero-cache/src/services/replicator/change-processor.d.ts.map +1 -1
  192. package/out/zero-cache/src/services/replicator/change-processor.js +16 -16
  193. package/out/zero-cache/src/services/replicator/change-processor.js.map +1 -1
  194. package/out/zero-cache/src/services/replicator/incremental-sync.d.ts.map +1 -1
  195. package/out/zero-cache/src/services/replicator/incremental-sync.js +0 -1
  196. package/out/zero-cache/src/services/replicator/incremental-sync.js.map +1 -1
  197. package/out/zero-cache/src/services/replicator/write-worker-client.d.ts +2 -27
  198. package/out/zero-cache/src/services/replicator/write-worker-client.d.ts.map +1 -1
  199. package/out/zero-cache/src/services/replicator/write-worker-client.js +2 -3
  200. package/out/zero-cache/src/services/replicator/write-worker-client.js.map +1 -1
  201. package/out/zero-cache/src/services/replicator/write-worker.js +5 -24
  202. package/out/zero-cache/src/services/replicator/write-worker.js.map +1 -1
  203. package/out/zero-cache/src/services/run-ast.d.ts +0 -12
  204. package/out/zero-cache/src/services/run-ast.d.ts.map +1 -1
  205. package/out/zero-cache/src/services/run-ast.js +15 -27
  206. package/out/zero-cache/src/services/run-ast.js.map +1 -1
  207. package/out/zero-cache/src/services/runner.d.ts.map +1 -1
  208. package/out/zero-cache/src/services/runner.js +1 -1
  209. package/out/zero-cache/src/services/runner.js.map +1 -1
  210. package/out/zero-cache/src/services/view-syncer/cvr.d.ts +0 -45
  211. package/out/zero-cache/src/services/view-syncer/cvr.d.ts.map +1 -1
  212. package/out/zero-cache/src/services/view-syncer/cvr.js +1 -133
  213. package/out/zero-cache/src/services/view-syncer/cvr.js.map +1 -1
  214. package/out/zero-cache/src/services/view-syncer/drain-coordinator.d.ts +1 -14
  215. package/out/zero-cache/src/services/view-syncer/drain-coordinator.d.ts.map +1 -1
  216. package/out/zero-cache/src/services/view-syncer/drain-coordinator.js +4 -30
  217. package/out/zero-cache/src/services/view-syncer/drain-coordinator.js.map +1 -1
  218. package/out/zero-cache/src/services/view-syncer/inspect-handler.d.ts +1 -1
  219. package/out/zero-cache/src/services/view-syncer/inspect-handler.d.ts.map +1 -1
  220. package/out/zero-cache/src/services/view-syncer/inspect-handler.js +2 -2
  221. package/out/zero-cache/src/services/view-syncer/inspect-handler.js.map +1 -1
  222. package/out/zero-cache/src/services/view-syncer/pipeline-driver.d.ts +1 -2
  223. package/out/zero-cache/src/services/view-syncer/pipeline-driver.d.ts.map +1 -1
  224. package/out/zero-cache/src/services/view-syncer/pipeline-driver.js +18 -33
  225. package/out/zero-cache/src/services/view-syncer/pipeline-driver.js.map +1 -1
  226. package/out/zero-cache/src/services/view-syncer/query-covering.d.ts.map +1 -1
  227. package/out/zero-cache/src/services/view-syncer/query-covering.js.map +1 -1
  228. package/out/zero-cache/src/services/view-syncer/snapshotter.d.ts +1 -4
  229. package/out/zero-cache/src/services/view-syncer/snapshotter.d.ts.map +1 -1
  230. package/out/zero-cache/src/services/view-syncer/snapshotter.js +3 -9
  231. package/out/zero-cache/src/services/view-syncer/snapshotter.js.map +1 -1
  232. package/out/zero-cache/src/services/view-syncer/view-syncer.d.ts +1 -11
  233. package/out/zero-cache/src/services/view-syncer/view-syncer.d.ts.map +1 -1
  234. package/out/zero-cache/src/services/view-syncer/view-syncer.js +90 -470
  235. package/out/zero-cache/src/services/view-syncer/view-syncer.js.map +1 -1
  236. package/out/zero-cache/src/types/processes.d.ts +0 -32
  237. package/out/zero-cache/src/types/processes.d.ts.map +1 -1
  238. package/out/zero-cache/src/types/processes.js +4 -43
  239. package/out/zero-cache/src/types/processes.js.map +1 -1
  240. package/out/zero-cache/src/types/profiler.d.ts +0 -12
  241. package/out/zero-cache/src/types/profiler.d.ts.map +1 -1
  242. package/out/zero-cache/src/types/profiler.js +1 -46
  243. package/out/zero-cache/src/types/profiler.js.map +1 -1
  244. package/out/zero-cache/src/workers/connect-params.d.ts +17 -1
  245. package/out/zero-cache/src/workers/connect-params.d.ts.map +1 -1
  246. package/out/zero-cache/src/workers/connect-params.js +21 -1
  247. package/out/zero-cache/src/workers/connect-params.js.map +1 -1
  248. package/out/zero-cache/src/workers/connection.d.ts +4 -4
  249. package/out/zero-cache/src/workers/connection.d.ts.map +1 -1
  250. package/out/zero-cache/src/workers/connection.js +8 -8
  251. package/out/zero-cache/src/workers/connection.js.map +1 -1
  252. package/out/zero-cache/src/workers/replicator.d.ts +0 -1
  253. package/out/zero-cache/src/workers/replicator.d.ts.map +1 -1
  254. package/out/zero-cache/src/workers/replicator.js +2 -4
  255. package/out/zero-cache/src/workers/replicator.js.map +1 -1
  256. package/out/zero-cache/src/workers/syncer-ws-message-handler.d.ts.map +1 -1
  257. package/out/zero-cache/src/workers/syncer-ws-message-handler.js +16 -21
  258. package/out/zero-cache/src/workers/syncer-ws-message-handler.js.map +1 -1
  259. package/out/zero-cache/src/workers/syncer.d.ts.map +1 -1
  260. package/out/zero-cache/src/workers/syncer.js +1 -10
  261. package/out/zero-cache/src/workers/syncer.js.map +1 -1
  262. package/out/zero-client/src/client/connection-manager.d.ts +0 -20
  263. package/out/zero-client/src/client/connection-manager.d.ts.map +1 -1
  264. package/out/zero-client/src/client/connection-manager.js +13 -77
  265. package/out/zero-client/src/client/connection-manager.js.map +1 -1
  266. package/out/zero-client/src/client/connection-status-enum.d.ts +0 -2
  267. package/out/zero-client/src/client/connection-status-enum.d.ts.map +1 -1
  268. package/out/zero-client/src/client/connection-status-enum.js +1 -3
  269. package/out/zero-client/src/client/connection-status-enum.js.map +1 -1
  270. package/out/zero-client/src/client/connection.d.ts +0 -6
  271. package/out/zero-client/src/client/connection.d.ts.map +1 -1
  272. package/out/zero-client/src/client/connection.js +1 -2
  273. package/out/zero-client/src/client/connection.js.map +1 -1
  274. package/out/zero-client/src/client/context.d.ts +2 -27
  275. package/out/zero-client/src/client/context.d.ts.map +1 -1
  276. package/out/zero-client/src/client/context.js +1 -112
  277. package/out/zero-client/src/client/context.js.map +1 -1
  278. package/out/zero-client/src/client/custom.js +2 -2
  279. package/out/zero-client/src/client/custom.js.map +1 -1
  280. package/out/zero-client/src/client/error.js +1 -1
  281. package/out/zero-client/src/client/inspector/lazy-inspector.js +2 -2
  282. package/out/zero-client/src/client/inspector/lazy-inspector.js.map +1 -1
  283. package/out/zero-client/src/client/ivm-branch.d.ts.map +1 -1
  284. package/out/zero-client/src/client/ivm-branch.js +3 -20
  285. package/out/zero-client/src/client/ivm-branch.js.map +1 -1
  286. package/out/zero-client/src/client/mutation-tracker.d.ts.map +1 -1
  287. package/out/zero-client/src/client/mutation-tracker.js +1 -1
  288. package/out/zero-client/src/client/mutation-tracker.js.map +1 -1
  289. package/out/zero-client/src/client/mutator-proxy.d.ts.map +1 -1
  290. package/out/zero-client/src/client/mutator-proxy.js +1 -2
  291. package/out/zero-client/src/client/mutator-proxy.js.map +1 -1
  292. package/out/zero-client/src/client/options.d.ts +0 -3
  293. package/out/zero-client/src/client/options.d.ts.map +1 -1
  294. package/out/zero-client/src/client/options.js.map +1 -1
  295. package/out/zero-client/src/client/query-manager.d.ts +0 -2
  296. package/out/zero-client/src/client/query-manager.d.ts.map +1 -1
  297. package/out/zero-client/src/client/query-manager.js +9 -48
  298. package/out/zero-client/src/client/query-manager.js.map +1 -1
  299. package/out/zero-client/src/client/version.js +1 -1
  300. package/out/zero-client/src/client/zero-rep.d.ts +0 -1
  301. package/out/zero-client/src/client/zero-rep.d.ts.map +1 -1
  302. package/out/zero-client/src/client/zero-rep.js +6 -9
  303. package/out/zero-client/src/client/zero-rep.js.map +1 -1
  304. package/out/zero-client/src/client/zero.d.ts +3 -18
  305. package/out/zero-client/src/client/zero.d.ts.map +1 -1
  306. package/out/zero-client/src/client/zero.js +36 -123
  307. package/out/zero-client/src/client/zero.js.map +1 -1
  308. package/out/zero-client/src/types/query-result.d.ts +0 -2
  309. package/out/zero-client/src/types/query-result.d.ts.map +1 -1
  310. package/out/zero-protocol/src/ast.d.ts +1 -64
  311. package/out/zero-protocol/src/ast.d.ts.map +1 -1
  312. package/out/zero-protocol/src/ast.js +51 -223
  313. package/out/zero-protocol/src/ast.js.map +1 -1
  314. package/out/zero-protocol/src/connect.d.ts +16 -0
  315. package/out/zero-protocol/src/connect.d.ts.map +1 -1
  316. package/out/zero-protocol/src/connect.js +27 -1
  317. package/out/zero-protocol/src/connect.js.map +1 -1
  318. package/out/zero-protocol/src/error.d.ts +1 -1
  319. package/out/zero-protocol/src/feature-flag-enum.d.ts +7 -0
  320. package/out/zero-protocol/src/feature-flag-enum.d.ts.map +1 -0
  321. package/out/zero-protocol/src/feature-flag-enum.js +7 -0
  322. package/out/zero-protocol/src/feature-flag-enum.js.map +1 -0
  323. package/out/zero-protocol/src/feature-flag.d.ts +5 -0
  324. package/out/zero-protocol/src/feature-flag.d.ts.map +1 -0
  325. package/out/zero-protocol/src/poke.d.ts +11 -4
  326. package/out/zero-protocol/src/poke.d.ts.map +1 -1
  327. package/out/zero-protocol/src/poke.js +3 -2
  328. package/out/zero-protocol/src/poke.js.map +1 -1
  329. package/out/zero-protocol/src/protocol-version.d.ts +30 -6
  330. package/out/zero-protocol/src/protocol-version.d.ts.map +1 -1
  331. package/out/zero-protocol/src/protocol-version.js +1 -1
  332. package/out/zero-protocol/src/protocol-version.js.map +1 -1
  333. package/out/zero-protocol/src/query-hash.d.ts +2 -7
  334. package/out/zero-protocol/src/query-hash.d.ts.map +1 -1
  335. package/out/zero-protocol/src/query-hash.js +9 -12
  336. package/out/zero-protocol/src/query-hash.js.map +1 -1
  337. package/out/zero-react/src/use-query.d.ts +4 -5
  338. package/out/zero-react/src/use-query.d.ts.map +1 -1
  339. package/out/zero-react/src/use-query.js +9 -86
  340. package/out/zero-react/src/use-query.js.map +1 -1
  341. package/out/zero-solid/src/solid-view.d.ts +0 -17
  342. package/out/zero-solid/src/solid-view.d.ts.map +1 -1
  343. package/out/zero-solid/src/solid-view.js +1 -39
  344. package/out/zero-solid/src/solid-view.js.map +1 -1
  345. package/out/zero-solid/src/use-query.js +3 -5
  346. package/out/zero-solid/src/use-query.js.map +1 -1
  347. package/out/zql/src/builder/debug-delegate.d.ts +1 -6
  348. package/out/zql/src/builder/debug-delegate.d.ts.map +1 -1
  349. package/out/zql/src/builder/debug-delegate.js +2 -14
  350. package/out/zql/src/builder/debug-delegate.js.map +1 -1
  351. package/out/zql/src/ivm/array-view.d.ts +0 -29
  352. package/out/zql/src/ivm/array-view.d.ts.map +1 -1
  353. package/out/zql/src/ivm/array-view.js +12 -63
  354. package/out/zql/src/ivm/array-view.js.map +1 -1
  355. package/out/zql/src/ivm/cap.d.ts.map +1 -1
  356. package/out/zql/src/ivm/cap.js +3 -5
  357. package/out/zql/src/ivm/cap.js.map +1 -1
  358. package/out/zql/src/ivm/data.d.ts.map +1 -1
  359. package/out/zql/src/ivm/data.js +3 -8
  360. package/out/zql/src/ivm/data.js.map +1 -1
  361. package/out/zql/src/ivm/exists.d.ts +1 -1
  362. package/out/zql/src/ivm/exists.d.ts.map +1 -1
  363. package/out/zql/src/ivm/exists.js +1 -1
  364. package/out/zql/src/ivm/exists.js.map +1 -1
  365. package/out/zql/src/ivm/fan-in.d.ts +2 -2
  366. package/out/zql/src/ivm/fan-in.d.ts.map +1 -1
  367. package/out/zql/src/ivm/fan-in.js +5 -6
  368. package/out/zql/src/ivm/fan-in.js.map +1 -1
  369. package/out/zql/src/ivm/fan-out.d.ts +2 -2
  370. package/out/zql/src/ivm/fan-out.d.ts.map +1 -1
  371. package/out/zql/src/ivm/fan-out.js.map +1 -1
  372. package/out/zql/src/ivm/filter-operators.d.ts +4 -4
  373. package/out/zql/src/ivm/filter-operators.d.ts.map +1 -1
  374. package/out/zql/src/ivm/filter-operators.js +8 -10
  375. package/out/zql/src/ivm/filter-operators.js.map +1 -1
  376. package/out/zql/src/ivm/filter.d.ts +2 -2
  377. package/out/zql/src/ivm/filter.d.ts.map +1 -1
  378. package/out/zql/src/ivm/filter.js +4 -7
  379. package/out/zql/src/ivm/filter.js.map +1 -1
  380. package/out/zql/src/ivm/flipped-join.js +2 -2
  381. package/out/zql/src/ivm/flipped-join.js.map +1 -1
  382. package/out/zql/src/ivm/maybe-split-and-push-edit-change.d.ts +1 -1
  383. package/out/zql/src/ivm/maybe-split-and-push-edit-change.d.ts.map +1 -1
  384. package/out/zql/src/ivm/maybe-split-and-push-edit-change.js +4 -6
  385. package/out/zql/src/ivm/maybe-split-and-push-edit-change.js.map +1 -1
  386. package/out/zql/src/ivm/memory-source.d.ts +3 -15
  387. package/out/zql/src/ivm/memory-source.d.ts.map +1 -1
  388. package/out/zql/src/ivm/memory-source.js +19 -40
  389. package/out/zql/src/ivm/memory-source.js.map +1 -1
  390. package/out/zql/src/ivm/take.d.ts.map +1 -1
  391. package/out/zql/src/ivm/take.js +4 -3
  392. package/out/zql/src/ivm/take.js.map +1 -1
  393. package/out/zql/src/ivm/union-fan-in.d.ts.map +1 -1
  394. package/out/zql/src/ivm/union-fan-in.js +7 -9
  395. package/out/zql/src/ivm/union-fan-in.js.map +1 -1
  396. package/out/zql/src/ivm/view-apply-change.d.ts.map +1 -1
  397. package/out/zql/src/ivm/view-apply-change.js +4 -9
  398. package/out/zql/src/ivm/view-apply-change.js.map +1 -1
  399. package/out/zql/src/ivm/view.d.ts +0 -15
  400. package/out/zql/src/ivm/view.d.ts.map +1 -1
  401. package/out/zql/src/mutate/mutator-registry.d.ts.map +1 -1
  402. package/out/zql/src/mutate/mutator-registry.js +2 -2
  403. package/out/zql/src/mutate/mutator-registry.js.map +1 -1
  404. package/out/zql/src/query/query-delegate-base.d.ts +1 -9
  405. package/out/zql/src/query/query-delegate-base.d.ts.map +1 -1
  406. package/out/zql/src/query/query-delegate-base.js +36 -132
  407. package/out/zql/src/query/query-delegate-base.js.map +1 -1
  408. package/out/zql/src/query/query-delegate.d.ts +1 -50
  409. package/out/zql/src/query/query-delegate.d.ts.map +1 -1
  410. package/out/zql/src/query/query-impl.d.ts +14 -25
  411. package/out/zql/src/query/query-impl.d.ts.map +1 -1
  412. package/out/zql/src/query/query-impl.js +94 -414
  413. package/out/zql/src/query/query-impl.js.map +1 -1
  414. package/out/zql/src/query/query-internals.d.ts +11 -21
  415. package/out/zql/src/query/query-internals.d.ts.map +1 -1
  416. package/out/zql/src/query/query-internals.js.map +1 -1
  417. package/out/zql/src/query/query.d.ts +2 -11
  418. package/out/zql/src/query/query.d.ts.map +1 -1
  419. package/out/zql/src/query/runnable-query-impl.d.ts +2 -3
  420. package/out/zql/src/query/runnable-query-impl.d.ts.map +1 -1
  421. package/out/zql/src/query/runnable-query-impl.js +2 -23
  422. package/out/zql/src/query/runnable-query-impl.js.map +1 -1
  423. package/out/zql/src/query/typed-view.d.ts +1 -1
  424. package/out/zql/src/query/typed-view.d.ts.map +1 -1
  425. package/out/zqlite/src/db.d.ts +1 -9
  426. package/out/zqlite/src/db.d.ts.map +1 -1
  427. package/out/zqlite/src/db.js +2 -8
  428. package/out/zqlite/src/db.js.map +1 -1
  429. package/out/zqlite/src/query-builder.d.ts.map +1 -1
  430. package/out/zqlite/src/query-builder.js +1 -2
  431. package/out/zqlite/src/query-builder.js.map +1 -1
  432. package/out/zqlite/src/sqlite-stat-fanout.d.ts.map +1 -1
  433. package/out/zqlite/src/sqlite-stat-fanout.js +0 -1
  434. package/out/zqlite/src/sqlite-stat-fanout.js.map +1 -1
  435. package/out/zqlite/src/table-source.d.ts +1 -2
  436. package/out/zqlite/src/table-source.d.ts.map +1 -1
  437. package/out/zqlite/src/table-source.js +6 -12
  438. package/out/zqlite/src/table-source.js.map +1 -1
  439. package/package.json +3 -2
  440. package/out/replicache/src/dag/invalid-ref-count-error.d.ts +0 -12
  441. package/out/replicache/src/dag/invalid-ref-count-error.d.ts.map +0 -1
  442. package/out/replicache/src/dag/invalid-ref-count-error.js +0 -19
  443. package/out/replicache/src/dag/invalid-ref-count-error.js.map +0 -1
  444. package/out/shared/src/xxhash32.d.ts +0 -36
  445. package/out/shared/src/xxhash32.d.ts.map +0 -1
  446. package/out/shared/src/xxhash32.js +0 -51
  447. package/out/shared/src/xxhash32.js.map +0 -1
  448. package/out/zero-cache/src/db/index-predicate.d.ts +0 -4
  449. package/out/zero-cache/src/db/index-predicate.d.ts.map +0 -1
  450. package/out/zero-cache/src/db/index-predicate.js +0 -46
  451. package/out/zero-cache/src/db/index-predicate.js.map +0 -1
  452. package/out/zero-cache/src/services/change-source/pg/schema/index-predicate.d.ts +0 -19
  453. package/out/zero-cache/src/services/change-source/pg/schema/index-predicate.d.ts.map +0 -1
  454. package/out/zero-cache/src/services/change-source/pg/schema/index-predicate.js +0 -581
  455. package/out/zero-cache/src/services/change-source/pg/schema/index-predicate.js.map +0 -1
  456. package/out/zero-cache/src/services/litestream/litestream-checkpointer.js +0 -131
  457. package/out/zero-cache/src/services/litestream/litestream-checkpointer.js.map +0 -1
  458. package/out/zero-cache/src/services/litestream/litestream-controller.d.ts +0 -70
  459. package/out/zero-cache/src/services/litestream/litestream-controller.d.ts.map +0 -1
  460. package/out/zero-cache/src/services/litestream/litestream-controller.js +0 -101
  461. package/out/zero-cache/src/services/litestream/litestream-controller.js.map +0 -1
  462. package/out/zero-cache/src/services/profz.d.ts +0 -7
  463. package/out/zero-cache/src/services/profz.d.ts.map +0 -1
  464. package/out/zero-cache/src/services/profz.js +0 -103
  465. package/out/zero-cache/src/services/profz.js.map +0 -1
  466. package/out/zero-cache/src/services/view-syncer/hydration-budget.d.ts +0 -33
  467. package/out/zero-cache/src/services/view-syncer/hydration-budget.d.ts.map +0 -1
  468. package/out/zero-cache/src/services/view-syncer/hydration-budget.js +0 -62
  469. package/out/zero-cache/src/services/view-syncer/hydration-budget.js.map +0 -1
  470. package/out/zero-cache/src/services/view-syncer/hydration-circuit-breaker.d.ts +0 -51
  471. package/out/zero-cache/src/services/view-syncer/hydration-circuit-breaker.d.ts.map +0 -1
  472. package/out/zero-cache/src/services/view-syncer/hydration-circuit-breaker.js +0 -78
  473. package/out/zero-cache/src/services/view-syncer/hydration-circuit-breaker.js.map +0 -1
  474. package/out/zero-protocol/src/query-hash-visitor.d.ts +0 -81
  475. package/out/zero-protocol/src/query-hash-visitor.d.ts.map +0 -1
  476. package/out/zero-protocol/src/query-hash-visitor.js +0 -324
  477. package/out/zero-protocol/src/query-hash-visitor.js.map +0 -1
  478. package/out/zql/src/ivm/deferred-input.d.ts +0 -44
  479. package/out/zql/src/ivm/deferred-input.d.ts.map +0 -1
  480. package/out/zql/src/ivm/deferred-input.js +0 -89
  481. package/out/zql/src/ivm/deferred-input.js.map +0 -1
  482. package/out/zql/src/query/query-transitions.d.ts +0 -171
  483. package/out/zql/src/query/query-transitions.d.ts.map +0 -1
  484. package/out/zql/src/query/query-transitions.js +0 -207
  485. package/out/zql/src/query/query-transitions.js.map +0 -1
@@ -4,13 +4,14 @@ import { AbortError } from "../../../shared/src/abort-error.js";
4
4
  import { sleep, sleepWithAbort } from "../../../shared/src/sleep.js";
5
5
  import { parse } from "../../../shared/src/valita.js";
6
6
  import "../../../replicache/src/deleted-clients.js";
7
+ import { localNavigator } from "../../../shared/src/navigator.js";
7
8
  import { getKVStoreProvider } from "../../../replicache/src/get-kv-store-provider.js";
8
9
  import { IDBDatabasesStore } from "../../../replicache/src/persist/idb-databases-store.js";
9
10
  import { dropDatabase } from "../../../replicache/src/persist/collect-idb-databases.js";
10
11
  import { must } from "../../../shared/src/must.js";
11
12
  import { clientToServer } from "../../../zero-schema/src/name-mapper.js";
12
13
  import { h64 } from "../../../shared/src/hash.js";
13
- import { getErrorCauses, getErrorMessage } from "../../../shared/src/error.js";
14
+ import { getErrorMessage } from "../../../shared/src/error.js";
14
15
  import { ClientNotFound, InvalidMessage } from "../../../zero-protocol/src/error-kind-enum.js";
15
16
  import { ProtocolError } from "../../../zero-protocol/src/error.js";
16
17
  import "../../../zero-protocol/src/client-schema.js";
@@ -19,15 +20,14 @@ import { isMutatorRegistry, iterateMutators } from "../../../zql/src/mutate/muta
19
20
  import { createRunnableBuilder } from "../../../zql/src/query/create-builder.js";
20
21
  import "../../../zql/src/query/query.js";
21
22
  import { addContextToQuery } from "../../../zql/src/query/query-registry.js";
22
- import { Closed, Connected, Connecting, Disconnected, Error as Error$1, Initializing, NeedsAuth } from "./connection-status-enum.js";
23
+ import { Closed, Connected, Connecting, Disconnected, Error as Error$1, NeedsAuth } from "./connection-status-enum.js";
23
24
  import { getDocumentVisibilityWatcher } from "../../../shared/src/document-visible.js";
24
25
  import { ReplicacheImpl } from "../../../replicache/src/replicache-impl.js";
25
26
  import "../../../replicache/src/impl.js";
26
- import { localNavigator } from "../../../shared/src/navigator.js";
27
27
  import { promiseRace } from "../../../shared/src/promise-race.js";
28
28
  import { emptyFunction } from "../../../shared/src/sentinels.js";
29
29
  import { Subscribable } from "../../../shared/src/subscribable.js";
30
- import { encodeSecProtocols } from "../../../zero-protocol/src/connect.js";
30
+ import { encodeSecProtocols, setFeatureFlags } from "../../../zero-protocol/src/connect.js";
31
31
  import { CRUD, Custom } from "../../../zero-protocol/src/mutation-type-enum.js";
32
32
  import { mapCRUD } from "../../../zero-protocol/src/mutation.js";
33
33
  import { nullableVersionSchema } from "../../../zero-protocol/src/version.js";
@@ -38,7 +38,7 @@ import { isClientMetric } from "../../../zql/src/query/metrics-delegate.js";
38
38
  import { nanoid } from "../util/nanoid.js";
39
39
  import { ActiveClientsManager } from "./active-clients-manager.js";
40
40
  import { AbruptClose, CleanClose, ClientClosed, ConnectTimeout, Hidden, Internal, InvalidMessage as InvalidMessage$1, NoSocketOrigin, PingTimeout, PullTimeout, UnexpectedBaseCookie } from "./client-error-kind-enum.js";
41
- import { ClientError, NO_STATUS_TRANSITION, getBackoffParams, getErrorConnectionTransition, isClientError, isServerError, isZeroError } from "./error.js";
41
+ import { ClientError, NO_STATUS_TRANSITION, getBackoffParams, getErrorConnectionTransition, isAuthError, isClientError, isServerError, isZeroError } from "./error.js";
42
42
  import { ConnectionManager, throwIfConnectionError } from "./connection-manager.js";
43
43
  import { ConnectionImpl } from "./connection.js";
44
44
  import { IVMSourceBranch } from "./ivm-branch.js";
@@ -90,11 +90,6 @@ var DEFAULT_DISCONNECT_TIMEOUT_MS = 60 * 1e3;
90
90
  * consider it timed out.
91
91
  */
92
92
  var CONNECT_TIMEOUT_MS = 1e4;
93
- /**
94
- * Setting up active-client tracking blocks the first connect attempt. Above
95
- * this, say so.
96
- */
97
- var SLOW_ACTIVE_CLIENTS_THRESHOLD_MS = 50;
98
93
  var CHECK_CONNECTIVITY_ON_ERROR_FREQUENCY = 6;
99
94
  var DEFAULT_QUERY_CHANGE_THROTTLE_MS = 10;
100
95
  function convertOnUpdateNeededReason(reason) {
@@ -122,7 +117,7 @@ var serverAheadReloadReason = `Server reported that client is ahead of server. T
122
117
  function onClientStateNotFoundServerReason(serverErrMsg) {
123
118
  return `Server could not find state needed to synchronize this client. ${serverErrMsg}`;
124
119
  }
125
- var ON_CLIENT_STATE_NOT_FOUND_REASON_CLIENT = "The local persistent state needed to synchronize this client has been garbage collected or was found to be corrupt.";
120
+ var ON_CLIENT_STATE_NOT_FOUND_REASON_CLIENT = "The local persistent state needed to synchronize this client has been garbage collected.";
126
121
  var CLOSE_CODE_NORMAL = 1e3;
127
122
  var Zero = class Zero {
128
123
  version = version;
@@ -286,7 +281,7 @@ var Zero = class Zero {
286
281
  })).toString(36);
287
282
  const storageScopedUserID = userID ?? "__anonymous__";
288
283
  const replicacheOptions = {
289
- schemaVersion: `52.${hash}`,
284
+ schemaVersion: `51.${hash}`,
290
285
  logLevel: logOptions.logLevel,
291
286
  logSinks: [logOptions.logSink],
292
287
  mutators: replicacheMutators,
@@ -301,13 +296,12 @@ var Zero = class Zero {
301
296
  licenseKey: "zero-client-static-key",
302
297
  kvStore
303
298
  };
304
- this.#visibilityWatcher = getDocumentVisibilityWatcher(getBrowserGlobal("document"), hiddenTabDisconnectDelay, this.#closeAbortController.signal);
305
299
  this.#zeroContext = new ZeroContext(lc, this.#ivmMain, (ast, ttl, gotCallback) => {
306
300
  if (enableLegacyQueries) return this.#queryManager.addLegacy(ast, ttl, gotCallback);
307
301
  return emptyFunction;
308
302
  }, (ast, customQueryID, ttl, gotCallback) => this.#queryManager.addCustom(ast, customQueryID, ttl, gotCallback), (ast, ttl) => {
309
303
  if (enableLegacyQueries) this.#queryManager.updateLegacy(ast, ttl);
310
- }, (customQueryID, ttl) => this.#queryManager.updateCustom(customQueryID, ttl), () => this.#queryManager.flushBatch(), batchViewUpdates, this.#addMetric, assertValidRunOptions, this.#visibilityWatcher);
304
+ }, (customQueryID, ttl) => this.#queryManager.updateCustom(customQueryID, ttl), () => this.#queryManager.flushBatch(), batchViewUpdates, this.#addMetric, assertValidRunOptions);
311
305
  this.query = createRunnableBuilder(this.#zeroContext, schema);
312
306
  const rep = new ReplicacheImpl(replicacheOptions, {
313
307
  enableClientGroupForking: false,
@@ -327,7 +321,7 @@ var Zero = class Zero {
327
321
  this.#activeClientsManager = makeActiveClientsManager(rep.clientGroupID, this.clientID, this.#closeAbortController.signal, (clientID, clientGroupID) => this.#deleteClientsManager.onClientsDeleted([{
328
322
  clientGroupID,
329
323
  clientID
330
- }]), this.#lc);
324
+ }]));
331
325
  const onUpdateNeededCallback = (reason) => {
332
326
  if (onUpdateNeeded) onUpdateNeeded(reason);
333
327
  else reloadWithReason(this.#lc, this.#reload, reason.type, updateNeededReloadReasonMessage(reason));
@@ -378,15 +372,15 @@ var Zero = class Zero {
378
372
  });
379
373
  this.#metrics.tags.push(`version:${this.version}`);
380
374
  this.#pokeHandler = new PokeHandler(async (poke) => {
381
- const socket = this.#socket;
382
375
  await this.#rep.poke(poke);
383
- if (socket !== void 0 && this.#socket === socket) this.#queryManager.markGotQueriesAuthoritative();
376
+ this.#queryManager.markGotQueriesAuthoritative();
384
377
  }, (e) => this.#onPokeError(e), rep.clientID, schema, this.#lc, this.#mutationTracker);
378
+ this.#visibilityWatcher = getDocumentVisibilityWatcher(getBrowserGlobal("document"), hiddenTabDisconnectDelay, this.#closeAbortController.signal);
385
379
  this.#runLoop();
386
380
  this.#expose();
387
381
  }
388
382
  #enableRefresh() {
389
- return this.#forceEnableRefresh || !this.#connectionManager.is("connected") && !this.#connectionManager.is("connecting") && !this.#connectionManager.is("initializing");
383
+ return this.#forceEnableRefresh || !this.#connectionManager.is("connected") && !this.#connectionManager.is("connecting");
390
384
  }
391
385
  #expose() {
392
386
  const g = globalThis;
@@ -437,11 +431,8 @@ var Zero = class Zero {
437
431
  * This function is useful when you want to populate the cache ahead of time,
438
432
  * for example after login, to avoid a flash of loading screen on the next page.
439
433
  *
440
- * Returns an object with three properties:
441
- * - `complete`: a Promise that resolves when the server has confirmed the
442
- * data on this connection
443
- * - `cached`: a Promise that resolves as soon as the store holds a
444
- * server-confirmed result, from this connection or a previous one
434
+ * Returns an object with two properties:
435
+ * - `complete`: a Promise that resolves when the data is loaded
445
436
  * - `cleanup`: a function that can be called to cancel the preload
446
437
  *
447
438
  * @example
@@ -458,9 +449,7 @@ var Zero = class Zero {
458
449
  * Executes a query once and returns the results.
459
450
  *
460
451
  * By default, runs immediately with whatever data is available locally.
461
- * Use `{type: 'complete'}` to wait for fresh results from the server, or
462
- * `{type: 'cached'}` to accept a result the server confirmed on a previous
463
- * connection when the store holds one.
452
+ * Use `{type: 'complete'}` to wait for fresh results from the server.
464
453
  *
465
454
  * @param query - The query to execute
466
455
  * @param runOptions - Options controlling query execution
@@ -505,16 +494,6 @@ var Zero = class Zero {
505
494
  return this.#rep.idbName;
506
495
  }
507
496
  /**
508
- * The KV store backing this instance of Zero. Its `kind` is the storage
509
- * currently in use: `'idb'`, `'mem'`, `'op-sqlite'`, `'expo-sqlite'`, or
510
- * whatever a custom store reports. An IndexedDB store that fails to open
511
- * falls back to memory, so `kind` can change from `'idb'` to `'mem'` after
512
- * the first read or write.
513
- */
514
- get kvStore() {
515
- return this.#rep.kvStore;
516
- }
517
- /**
518
497
  * The schema version of the data understood by this application.
519
498
  * See [[ZeroOptions.schemaVersion]].
520
499
  */
@@ -934,11 +913,11 @@ var Zero = class Zero {
934
913
  const clientGroupID = await this.clientGroupID;
935
914
  this.#addConnectEvent(lc, attempt, "initializing active clients");
936
915
  const activeClientsManager = await this.#activeClientsManager;
937
- if (signal.aborted) throw attempt.abortReason ?? signal.reason;
916
+ if (signal.aborted) throw signal.reason;
938
917
  const [ws, initConnectionQueries, deletedClients] = await createSocket(this.#rep, this.#queryManager, this.#deleteClientsManager, socketOrigin, connectCookie, this.clientID, clientGroupID, this.#clientSchema, this.userID, fromReplicacheAuthToken(this.#rep.auth), this.#lastMutationIDReceived, wsid, this.#options.logLevel === "debug", lc, this.#options.mutateURL, this.#options.mutateHeaders, this.#options.queryURL ?? this.#options.getQueriesURL, this.#options.queryHeaders, additionalConnectParams, activeClientsManager, this.#options.maxHeaderLength, (event) => this.#addConnectEvent(lc, attempt, event));
939
918
  if (signal.aborted) {
940
919
  ws.close();
941
- throw attempt.abortReason ?? signal.reason;
920
+ throw signal.reason;
942
921
  }
943
922
  if (this.closed) {
944
923
  ws.close();
@@ -954,52 +933,17 @@ var Zero = class Zero {
954
933
  this.#socketResolver.resolve(ws);
955
934
  this.#addConnectEvent(lc, attempt, "waiting for the server acknowledgement");
956
935
  lc.debug?.("Waiting for connection to be acknowledged");
957
- attempt.clearTimeout?.();
958
- attempt.clearTimeout = this.#armConnectTimeout(lc, attempt, "ack");
959
936
  await attempt.connected.promise;
960
- if (signal.aborted) throw attempt.abortReason ?? signal.reason;
937
+ if (signal.aborted) throw signal.reason;
961
938
  this.#mutationTracker.onConnected(this.#lastMutationIDReceived);
962
939
  this.#rep.push().catch(() => {});
963
940
  }
964
- /**
965
- * Starts the deadline for one phase of a connection attempt, and returns a
966
- * function that cancels it.
967
- *
968
- * The two phases are measured separately because they fail for unrelated
969
- * reasons. `setup` covers local work — reading the cookie, the client group
970
- * ID and the active clients from IDB, then preparing and opening the socket
971
- * — whose duration says nothing about whether the server is reachable.
972
- * `ack` covers the wait for the server's response. Running them on one
973
- * budget meant a slow cold boot spent the server's time before the socket
974
- * existed, and reported a healthy server as unreachable.
975
- */
976
- #armConnectTimeout(lc, attempt, phase) {
977
- const { signal } = attempt.controller;
978
- if (signal.aborted) return () => {};
979
- const timeoutID = setTimeout(() => {
980
- lc.debug?.("Connection attempt timed out");
981
- this.#disconnect(lc, new ClientError({
982
- kind: ConnectTimeout,
983
- message: (phase === "setup" ? `Connection setup timed out after ${CONNECT_TIMEOUT_MS / 1e3} seconds. ` : `Server did not acknowledge the connection within ${CONNECT_TIMEOUT_MS / 1e3} seconds. `) + `Connect events: ${JSON.stringify(attempt.events)}`
984
- }));
985
- }, CONNECT_TIMEOUT_MS);
986
- const clear = () => {
987
- clearTimeout(timeoutID);
988
- signal.removeEventListener("abort", clear);
989
- };
990
- signal.addEventListener("abort", clear, { once: true });
991
- return clear;
992
- }
993
941
  #addConnectEvent(lc, attempt, event) {
994
942
  attempt.events.push([/* @__PURE__ */ new Date(), event]);
995
943
  lc.debug?.("Connect event", event);
996
944
  }
997
945
  #disconnect(lc, reason, closeCode) {
998
- const attempt = this.#currentConnectAttempt;
999
- if (attempt) {
1000
- attempt.abortReason = reason;
1001
- attempt.controller.abort(reason);
1002
- }
946
+ this.#currentConnectAttempt?.controller.abort(reason);
1003
947
  if (shouldReportConnectError(reason)) {
1004
948
  this.#connectErrorCount++;
1005
949
  this.#metrics.lastConnectError.set(getLastConnectErrorValue(reason));
@@ -1026,7 +970,6 @@ var Zero = class Zero {
1026
970
  case Closed:
1027
971
  lc.debug?.("disconnect() called while closed");
1028
972
  return;
1029
- case Initializing:
1030
973
  case Disconnected:
1031
974
  case Connecting:
1032
975
  case NeedsAuth:
@@ -1170,26 +1113,6 @@ var Zero = class Zero {
1170
1113
  };
1171
1114
  const { auth } = this.#options;
1172
1115
  this.#setAuth(auth);
1173
- const { signal: closeSignal } = this.#closeAbortController;
1174
- const closed = resolver();
1175
- const onClose = () => closed.resolve();
1176
- closeSignal.addEventListener("abort", onClose, { once: true });
1177
- try {
1178
- if ((await promiseRace({
1179
- initialized: Promise.all([
1180
- this.#rep.cookie,
1181
- this.clientGroupID,
1182
- this.#activeClientsManager
1183
- ]),
1184
- closed: closed.promise
1185
- })).key === "closed") {
1186
- this.#lc.debug?.("Closed while initializing, not connecting");
1187
- return;
1188
- }
1189
- } catch {} finally {
1190
- closeSignal.removeEventListener("abort", onClose);
1191
- }
1192
- this.#connectionManager.initialized();
1193
1116
  let backoffMs;
1194
1117
  let additionalConnectParams;
1195
1118
  while (this.#connectionManager.shouldContinueRunLoop()) {
@@ -1223,10 +1146,16 @@ var Zero = class Zero {
1223
1146
  };
1224
1147
  this.#currentConnectAttempt = attempt;
1225
1148
  this.#addConnectEvent(lc, attempt, "starting the connection");
1226
- attempt.clearTimeout = this.#armConnectTimeout(lc, attempt, "setup");
1227
1149
  const canceled = resolver();
1228
- const abortHandler = () => canceled.reject(attempt.abortReason ?? attempt.controller.signal.reason);
1150
+ const abortHandler = () => canceled.reject(attempt.controller.signal.reason);
1229
1151
  attempt.controller.signal.addEventListener("abort", abortHandler, { once: true });
1152
+ const timeoutID = setTimeout(() => {
1153
+ lc.debug?.("Connection attempt timed out");
1154
+ this.#disconnect(lc, new ClientError({
1155
+ kind: ConnectTimeout,
1156
+ message: `Connection attempt timed out after ${CONNECT_TIMEOUT_MS / 1e3} seconds. Connect events: ${JSON.stringify(attempt.events)}`
1157
+ }));
1158
+ }, CONNECT_TIMEOUT_MS);
1230
1159
  try {
1231
1160
  try {
1232
1161
  await Promise.race([this.#connectAttempt(lc, additionalConnectParams, attempt), canceled.promise]);
@@ -1243,7 +1172,7 @@ var Zero = class Zero {
1243
1172
  ready.resolve();
1244
1173
  additionalConnectParams = void 0;
1245
1174
  } finally {
1246
- attempt.clearTimeout?.();
1175
+ clearTimeout(timeoutID);
1247
1176
  attempt.controller.signal.removeEventListener("abort", abortHandler);
1248
1177
  if (this.#currentConnectAttempt === attempt) this.#currentConnectAttempt = void 0;
1249
1178
  }
@@ -1296,38 +1225,27 @@ var Zero = class Zero {
1296
1225
  })).key === "connectRequest") this.#connectionManager.resumeFromConnectRequest();
1297
1226
  break;
1298
1227
  case Error$1:
1299
- lc.info?.(`Run loop paused in error state. Call zero.connection.connect() to resume.`, currentState.reason, ...getErrorCauses(currentState.reason));
1228
+ lc.info?.(`Run loop paused in error state. Call zero.connection.connect() to resume.`, currentState.reason);
1300
1229
  if ((await promiseRace({
1301
1230
  connectRequest: this.#connectionManager.waitForConnectRequest(),
1302
1231
  stateChange: this.#connectionManager.waitForStateChange()
1303
1232
  })).key === "connectRequest") this.#connectionManager.resumeFromConnectRequest();
1304
1233
  break;
1305
1234
  case Closed: break;
1306
- case Initializing: unreachable();
1307
1235
  default: unreachable(currentState);
1308
1236
  }
1309
1237
  } catch (ex) {
1310
1238
  const isClientClosedError = isClientError(ex) && ex.kind === "ClientClosed";
1311
- const transition = getErrorConnectionTransition(ex);
1312
1239
  if (!this.#connectionManager.is("connected") && !isClientClosedError) {
1313
- let level;
1314
- switch (transition.status) {
1315
- case Error$1:
1316
- level = "error";
1317
- break;
1318
- case Disconnected:
1319
- case Closed:
1320
- level = "info";
1321
- break;
1322
- default: level = "warn";
1323
- }
1240
+ const level = isAuthError(ex) ? "warn" : "error";
1324
1241
  const kind = isServerError(ex) ? ex.kind : "Unknown Error";
1325
- lc[level]?.("Failed to connect", ex, ...getErrorCauses(ex), kind, {
1242
+ lc[level]?.("Failed to connect", ex, kind, {
1326
1243
  lmid: this.#lastMutationIDReceived,
1327
1244
  baseCookie: this.#connectCookie
1328
1245
  });
1329
1246
  }
1330
1247
  lc.debug?.("Got an exception in the run loop", "state:", this.#connectionManager.state, "exception:", ex);
1248
+ const transition = getErrorConnectionTransition(ex);
1331
1249
  let sleepMs = void 0;
1332
1250
  switch (transition.status) {
1333
1251
  case NO_STATUS_TRANSITION: {
@@ -1586,7 +1504,7 @@ async function createSocket(rep, queryManager, deleteClientsManager, socketOrigi
1586
1504
  ];
1587
1505
  }
1588
1506
  async function createConnectionURL(socketOrigin, clientID, clientGroupID, userID, baseCookie, lmid, wsid, rep, debugPerf, additionalConnectParams, lc) {
1589
- const url = new URL(appendPath(socketOrigin, `/sync/v52/connect`));
1507
+ const url = new URL(appendPath(socketOrigin, `/sync/v51/connect`));
1590
1508
  const { searchParams } = url;
1591
1509
  searchParams.set("clientID", clientID);
1592
1510
  searchParams.set("clientGroupID", clientGroupID);
@@ -1597,6 +1515,7 @@ async function createConnectionURL(socketOrigin, clientID, clientGroupID, userID
1597
1515
  searchParams.set("wsid", wsid);
1598
1516
  searchParams.set("profileID", await rep.profileID);
1599
1517
  if (debugPerf) searchParams.set("debugPerf", true.toString());
1518
+ setFeatureFlags(searchParams);
1600
1519
  if (additionalConnectParams) for (const k in additionalConnectParams) if (searchParams.has(k)) lc.warn?.(`skipping conflicting parameter ${k}`);
1601
1520
  else searchParams.set(k, additionalConnectParams[k]);
1602
1521
  lc.info?.("Connecting to", url.toString());
@@ -1631,14 +1550,8 @@ function addWebSocketIDToLogContext(wsid, lc) {
1631
1550
  return lc.withContext("wsid", wsid);
1632
1551
  }
1633
1552
  function assertValidRunOptions(_options) {}
1634
- async function makeActiveClientsManager(clientGroupID, clientID, signal, onDelete, lc) {
1635
- const groupID = await clientGroupID;
1636
- const start = performance.now();
1637
- const manager = await ActiveClientsManager.create(groupID, clientID, signal);
1638
- const elapsed = performance.now() - start;
1639
- const locks = getBrowserGlobal("navigator")?.locks ? "native" : "fallback";
1640
- if (elapsed > SLOW_ACTIVE_CLIENTS_THRESHOLD_MS) lc.warn?.(`Initializing active clients took ${Math.round(elapsed)}ms`, { locks });
1641
- else lc.debug?.("Initialized active clients in", Math.round(elapsed), "ms", { locks });
1553
+ async function makeActiveClientsManager(clientGroupID, clientID, signal, onDelete) {
1554
+ const manager = await ActiveClientsManager.create(await clientGroupID, clientID, signal);
1642
1555
  manager.onDelete = onDelete;
1643
1556
  return manager;
1644
1557
  }